
:root{
  --bg:#0b0d12;
  --bg2:#10141b;
  --panel:#121821;
  --panel2:#171f2a;
  --text:#ffffff;
  --muted:#c8ced8;
  --soft:#8e98a8;
  --line:#242c39;
  --orange:#f56b08;
  --orange2:#ff8a14;
  --orange3:#ffb05a;
  --navy:#131d31;
  --white:#ffffff;
  --shadow:0 24px 60px rgba(0,0,0,.35);
  --radius:24px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at top right, rgba(245,107,8,.14), transparent 18%),
    radial-gradient(circle at left center, rgba(19,29,49,.45), transparent 26%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg2) 100%);
  line-height:1.55;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{width:min(var(--max), calc(100% - 32px));margin:0 auto}

.site-header{
  position:sticky;top:0;z-index:100;
  backdrop-filter:blur(14px);
  background:rgba(8,10,14,.78);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px}
.brand-mark{width:132px;height:auto}
.brand-text{display:flex;flex-direction:column;line-height:1.05}
.brand-kicker{color:var(--orange3);font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.brand-name{font-size:1rem;font-weight:900;letter-spacing:.04em}
.site-nav{display:flex;gap:26px;align-items:center}
.site-nav a{font-weight:800;color:#edf0f6;position:relative;padding:8px 0}
.site-nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--orange),var(--orange2));transition:.18s ease}
.site-nav a:hover::after,.site-nav a.active::after{width:100%}
.header-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:999px;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;font-weight:900;box-shadow:0 14px 34px rgba(245,107,8,.24)}
.header-action:hover{transform:translateY(-1px)}

.hero{padding:72px 0 56px}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:38px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--orange3);font-size:.82rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px}
.eyebrow::before{content:"";width:34px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--orange),transparent)}
h1{margin:0 0 18px;font-size:clamp(2.9rem,5.4vw,5.7rem);line-height:.92;letter-spacing:-.055em;max-width:9.8ch}
h2{margin:0 0 12px;font-size:clamp(2rem,2.6vw,3.2rem);line-height:1.02;letter-spacing:-.04em}
h3{margin:0 0 10px;font-size:1.2rem}
.lead,.muted,.info-card p,.service-card p,.size-copy p,.contact-copy,.faq-item p,.stat p{color:var(--muted)}
.hero-copy .lead{font-size:1.08rem;max-width:58ch}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 20px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;font-weight:900;border:2px solid transparent;transition:.18s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;box-shadow:0 16px 36px rgba(245,107,8,.24)}
.btn-secondary{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#fff}
.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.point-chip{padding:12px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#f5f7fb;font-weight:800;text-align:center}

.hero-visual{position:relative;min-height:590px}
.hero-shell{position:absolute;inset:0;border-radius:34px;overflow:hidden;background:linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow)}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.02) contrast(1.02)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,12,17,.12) 0%, rgba(10,12,17,.42) 50%, rgba(10,12,17,.92) 100%)}
.hero-stripe{position:absolute;right:-80px;top:34px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle, rgba(245,107,8,.28) 0%, rgba(245,107,8,0) 66%)}
.logo-plaque{position:absolute;left:28px;top:28px;width:min(62%, 330px);background:#fff;border-radius:22px;padding:16px 18px;box-shadow:0 18px 42px rgba(0,0,0,.24)}
.logo-plaque img{width:100%;height:auto}
.hero-callout{position:absolute;left:28px;right:28px;bottom:28px;padding:24px;border-radius:26px;background:rgba(14,18,26,.88);border:1px solid rgba(255,255,255,.08)}
.hero-callout h3{font-size:1.28rem}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 16px}
.pill{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:rgba(245,107,8,.12);border:1px solid rgba(245,107,8,.34);color:#fff;font-weight:800}
.highlight-line{margin:0;color:#fff;font-weight:700}

.section{padding:92px 0}
.section-alt{background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.01) 100%);border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
.section-heading{margin-bottom:30px}
.orange-bar{width:84px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--orange),var(--orange2));margin-bottom:16px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}

.info-card,.service-card,.size-card,.contact-panel,.faq-item,.page-hero-card,.stat{background:linear-gradient(180deg,var(--panel) 0%, var(--panel2) 100%);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);box-shadow:var(--shadow)}
.info-card,.service-card,.contact-panel,.faq-item,.stat{padding:28px}
.service-card{position:relative;overflow:hidden}
.service-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--orange),var(--orange2))}
.service-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--orange),var(--orange2));display:grid;place-items:center;color:#fff;font-size:1.15rem;font-weight:900;margin-bottom:16px}
.stat{text-align:center;padding:24px 18px}
.stat strong{display:block;font-size:2rem;line-height:1;font-weight:900;margin-bottom:8px;color:#fff}
.photo-banner{border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#111;box-shadow:var(--shadow)}
.photo-banner img{width:100%;height:420px;object-fit:cover}

.page-hero{padding:54px 0 24px}
.page-hero-card{padding:34px;background:radial-gradient(circle at top right, rgba(245,107,8,.14), transparent 18%),linear-gradient(180deg,var(--panel) 0%, var(--panel2) 100%)}
.page-hero-card .lead{max-width:64ch}

.size-card{overflow:hidden}
.size-image{border-bottom:1px solid rgba(255,255,255,.08);background:#111}
.size-image img{width:100%;height:245px;object-fit:cover}
.size-copy{padding:22px}
.size{font-size:1.16rem;font-weight:900;margin:0 0 10px}
.price{font-size:2.2rem;font-weight:900;margin:0 0 10px}
.tag{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(245,107,8,.12);border:1px solid rgba(245,107,8,.34);color:#fff;font-weight:800}

.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}
.feature-list{margin:0;padding-left:18px}
.feature-list li{margin-bottom:12px;color:var(--muted)}
.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.quote-form label{display:grid;gap:8px;font-weight:800}
.quote-form .full{grid-column:1/-1}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#0d121a;color:#fff;font:inherit}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid rgba(245,107,8,.2);border-color:var(--orange)}
.hp-field{position:absolute !important;left:-9999px !important;opacity:0 !important;pointer-events:none !important}

.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.faq-item h3{font-size:1.08rem}

.footer{padding:26px 0 40px;border-top:1px solid rgba(255,255,255,.05);background:#0a0c10}
.footer-wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-mini-logo{width:112px;height:auto}
.small{font-size:.95rem;color:var(--soft)}

@media (max-width:1080px){
  .hero-grid,.grid-4,.grid-3,.grid-2,.contact-layout,.faq-grid,.hero-points{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .site-nav{display:none}
  .brand-mark{width:110px}
  .hero-grid,.grid-4,.grid-3,.grid-2,.contact-layout,.faq-grid,.hero-points{grid-template-columns:1fr}
  .hero-visual{min-height:520px}
  .footer-wrap{flex-direction:column;align-items:flex-start}
}
@media (max-width:640px){
  .header-action{display:none}
  .hero{padding-top:44px}
  .logo-plaque{left:18px;right:18px;width:auto}
  .hero-callout{left:18px;right:18px;bottom:18px}
  .quote-form{grid-template-columns:1fr}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .btn{width:100%}
  .brand-mark{width:96px}
}
