:root{
  --navy:#0f2a44;
  --navy-dark:#0f2233;
  --gold:#c08a3e;
  --cream:#f4f0e8;
  --cream-2:#faf8f4;
  --border:#e6e2d8;
  --text-muted:#6b7280;
  --text-body:#4a5063;
  --text-dark:#33394a;
}
*{box-sizing:border-box;}
body{margin:0;background:#f7f4ee;font-family:'Public Sans',sans-serif;}
a{color:var(--navy);text-decoration:none;}
a:hover{color:var(--gold);}
.accent{color:var(--gold);}
.page{max-width:1400px;margin:0 auto;background:#fff;position:relative;border-left:1px solid var(--border);border-right:1px solid var(--border);overflow:hidden;}

/* HEADER */
.header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:18px clamp(20px,4vw,32px);background:rgba(255,255,255,0.88);backdrop-filter:blur(6px);position:relative;z-index:5;}
.logo{font-size:19px;font-weight:700;color:var(--navy);letter-spacing:-0.2px;text-decoration:none;}
.logo:hover{color:var(--navy);}
.logo:hover .accent{color:var(--gold);}
.logo.light{color:#fff;}
.menu-btn{display:none;background:none;border:none;padding:8px;cursor:pointer;}
.nav-desktop{display:flex;gap:24px;align-items:center;flex-wrap:wrap;}
.nav-desktop a{font-size:15px;font-weight:500;color:var(--text-dark);}
.nav-mobile{display:none;flex-direction:column;background:#fff;border-top:1px solid #ece7dc;padding:16px clamp(20px,4vw,32px) 20px;position:relative;z-index:5;gap:4px;}
.nav-mobile.open{display:flex;}
.nav-mobile a{font-size:15px;font-weight:500;color:var(--text-dark);padding:10px 0;}
.btn{display:flex;align-items:center;gap:8px;padding:12px 22px;border-radius:8px;font-size:14px;font-weight:600;border:none;cursor:pointer;}
.btn-dark,.btn-dark:hover{background:var(--navy);color:#fff;}
.btn-shadow{box-shadow:0 4px 16px rgba(0,0,0,0.35),0 0 0 1px rgba(255,255,255,0.15);}
.btn-block{justify-content:center;width:100%;margin-top:8px;}

/* HERO */
.hero{display:flex;flex-direction:column;position:relative;z-index:3;background:var(--cream);}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));flex:1;}
.hero-copy{padding:clamp(32px,6vw,64px) clamp(24px,5vw,40px);display:flex;flex-direction:column;justify-content:center;gap:20px;position:relative;z-index:2;min-height:clamp(420px,50vw,560px);}
.hero-mask-bg{position:absolute;inset:0;background:var(--cream);z-index:-2;}
.hero-mask{position:absolute;inset:0;background:var(--cream);z-index:-1;
  -webkit-mask-image:radial-gradient(ellipse 46% 85% at 8% 0%,#000 30%,transparent 78%),radial-gradient(ellipse 46% 85% at 8% 100%,#000 30%,transparent 78%),radial-gradient(ellipse 40% 60% at 4% 50%,#000 30%,transparent 78%);
  mask-image:radial-gradient(ellipse 46% 85% at 8% 0%,#000 30%,transparent 78%),radial-gradient(ellipse 46% 85% at 8% 100%,#000 30%,transparent 78%),radial-gradient(ellipse 40% 60% at 4% 50%,#000 30%,transparent 78%);
}
.eyebrow{font-size:12px;letter-spacing:1.6px;font-weight:700;color:#9a9280;}
.eyebrow.center{text-align:center;margin-bottom:10px;}
.eyebrow.light{color:#fff;opacity:0.85;margin-bottom:14px;font-size:11px;}
.h1{font-family:'Source Serif 4',serif;font-size:clamp(34px,5.5vw,52px);line-height:1.05;color:var(--navy);margin:0;font-weight:700;}
.lead{font-size:16px;line-height:1.6;color:var(--text-body);margin:0;max-width:440px;}
.cta-row{display:flex;align-items:center;gap:24px;margin-top:6px;flex-wrap:wrap;}
.link-strong{font-size:15px;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:6px;}
.chips{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px;}
.chip{display:flex;align-items:flex-start;gap:10px;max-width:150px;}
.chip b{display:block;font-size:13px;color:var(--navy);}
.chip span{display:block;font-size:12px;color:var(--text-muted);}
.hero-image{position:relative;min-height:clamp(220px,45vw,320px);background-image:url('img/hero.jpg');background-size:cover;background-position:center;}
.hero-image::before{content:"";position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(var(--cream),rgba(244,240,232,0));z-index:1;}

/* STEPS */
.steps{padding:64px clamp(20px,5vw,32px);text-align:center;background:var(--cream-2);}
.h2{font-family:'Source Serif 4',serif;font-size:30px;color:var(--navy);margin:0 0 8px;}
.h2.left{text-align:left;}
.sub{color:var(--text-muted);font-size:15px;margin:0 0 44px;}
.sub.left{text-align:left;margin-bottom:8px;}
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px 20px;max-width:1160px;margin:0 auto;}
.step{display:flex;flex-direction:column;align-items:center;}
.step-num{width:56px;height:56px;border-radius:50%;background:#eadfc9;color:var(--navy);font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.step svg{margin-bottom:8px;}
.step b{font-weight:700;color:var(--navy);font-size:16px;margin-bottom:6px;}
.step p{font-size:13px;color:var(--text-muted);line-height:1.5;margin:0;}

/* DIFFERENTIATOR */
.diff{padding:72px clamp(20px,5vw,32px);background:#fff;}
.diff-head{text-align:center;max-width:640px;margin:0 auto 48px;}
.diff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:920px;margin:0 auto;border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.diff-col{padding:36px 32px;display:flex;flex-direction:column;gap:16px;}
.diff-col-light{background:var(--cream-2);}
.diff-col-dark{background:var(--navy);}
.diff-label{font-size:13px;font-weight:700;color:#9a9280;letter-spacing:0.5px;margin-bottom:4px;}
.diff-logo{font-size:17px;font-weight:700;color:#fff;letter-spacing:-0.2px;margin-bottom:4px;}
.diff-item{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;}
.diff-col-light .diff-item{color:var(--text-dark);}
.diff-col-dark .diff-item{color:#fff;}
.diff-item .x{color:#b5aa8f;font-size:15px;}
.diff-item .check{color:var(--gold);font-size:15px;}

/* SPLIT / FORM */
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:stretch;}
.split-image{position:relative;min-height:420px;background-image:url('img/living-room.jpg');background-size:cover;background-position:center;}
.split-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,35,0.55),rgba(10,20,35,0.05));pointer-events:none;}
.split-caption-top{position:absolute;top:44px;left:36px;right:36px;color:#fff;pointer-events:none;}
.split-title{font-family:'Source Serif 4',serif;font-size:28px;line-height:1.25;}
.split-caption-bottom{position:absolute;bottom:36px;left:36px;color:#fff;pointer-events:none;max-width:260px;}
.split-caption-bottom p{font-size:13px;line-height:1.5;margin:0;}
.rule{width:36px;height:1px;background:#fff;opacity:0.7;margin-bottom:10px;}
.split-form{padding:clamp(32px,5vw,48px) clamp(24px,5vw,40px);display:flex;flex-direction:column;gap:16px;justify-content:center;}
.field-label{font-size:12px;font-weight:700;letter-spacing:0.5px;color:#9a9280;margin-top:4px;}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;}
.input{display:flex;align-items:center;gap:8px;border:1px solid #e2e4e8;border-radius:8px;padding:12px 14px;}
.input-textarea{align-items:flex-start;}
.input input,.input textarea{border:none;outline:none;font-size:14px;width:100%;color:var(--text-dark);font-family:inherit;}
.input textarea{height:44px;resize:none;}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:#5a5f6b;line-height:1.5;cursor:pointer;}
.consent input{margin-top:2px;width:15px;height:15px;flex-shrink:0;}
.btn-submit{padding:15px;justify-content:center;font-size:15px;}
.form-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:#9aa0a8;text-align:center;}

/* FEATURES */
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;padding:36px clamp(20px,5vw,32px);background:var(--cream-2);border-top:1px solid #ece7dc;border-bottom:1px solid #ece7dc;}
.feature{display:flex;align-items:flex-start;gap:12px;}
.feature b{display:block;font-weight:700;font-size:14px;color:var(--navy);}
.feature span{display:block;font-size:12px;color:var(--text-muted);}

/* FAQ */
.faq{padding:64px clamp(20px,5vw,32px);text-align:center;}
.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;text-align:left;}
.faq-item{border:1px solid var(--border);border-radius:10px;padding:0 20px;}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;font-family:inherit;font-weight:700;color:var(--navy);font-size:15px;background:none;border:none;cursor:pointer;padding:20px 0;}
.faq-q span{color:#c9c2b0;transition:transform 0.2s ease;flex-shrink:0;}
.faq-item.open .faq-q span{transform:rotate(180deg);}
.faq-a{font-size:13px;color:var(--text-muted);line-height:1.5;max-height:0;overflow:hidden;opacity:0;transition:max-height 0.25s ease,opacity 0.2s ease,margin 0.25s ease;}
.faq-item.open .faq-a{max-height:400px;opacity:1;margin:0 0 20px;}

/* FOOTER */
.footer{background:var(--navy-dark);color:#fff;padding:44px clamp(20px,5vw,32px) 28px;}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;}
.footer-claim{font-size:15px;font-weight:600;margin-top:12px;}
.footer-sub{font-size:13px;color:#a7afc0;margin-top:4px;}
.footer-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap;}
.footer-links a{font-size:14px;color:#cdd2de;}

@media (max-width:859px){
  .nav-desktop{display:none;}
  .menu-btn{display:flex;}
}
