:root{
  --navy:#0e2a47;
  --navy-dark:#0a1f36;
  --amber:#f2a33c;
  --amber-dark:#d98a1f;
  --paper:#fdfbf7;
  --ink:#1c2b3a;
  --muted:#5b6b7c;
  --line:#e4ddcd;
  --card:#ffffff;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);background:var(--paper);line-height:1.65;font-size:1.02rem;
}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.25rem}
.wrap.narrow{max-width:760px}

/* Header */
.site-header{background:var(--navy-dark);color:#fff;position:sticky;top:0;z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1.25rem}
.brand{display:flex;align-items:center;gap:.55rem;font-weight:700;letter-spacing:.02em}
.brand-mark{background:var(--amber);color:var(--navy-dark);width:2.1rem;height:2.1rem;display:grid;place-items:center;border-radius:.5rem;font-size:1.2rem}
.brand-name em{font-style:normal;font-weight:400;opacity:.85}

/* Buttons */
.btn{display:inline-block;text-decoration:none;border-radius:.55rem;padding:.75rem 1.35rem;font-weight:700;cursor:pointer;border:2px solid transparent}
.btn-call{background:var(--amber);color:var(--navy-dark);padding:.55rem 1.05rem}
.btn-call:hover{background:var(--amber-dark)}
.btn-primary{background:var(--amber);color:var(--navy-dark)}
.btn-primary:hover{background:var(--amber-dark)}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
form .btn-primary{width:100%;font-size:1.05rem}

/* Hero */
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-dark) 70%);color:#fff;padding:3rem 0}
.hero-grid{display:grid;gap:2rem;align-items:center}
.kicker{color:var(--amber);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;margin-bottom:.6rem}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:1.2;margin-bottom:1rem}
.lede{font-size:1.12rem;color:#d9e2ec;max-width:34rem}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.4rem 0 1rem}
.hero-note{font-size:.88rem;color:#9fb0c2}
.hero-fig img{width:100%;height:auto;border-radius:.9rem;border:4px solid rgba(242,163,60,.35);display:block}
.hero-fig figcaption{font-size:.85rem;color:#9fb0c2;margin-top:.5rem;text-align:center}

/* Sections */
.section{padding:3rem 0}
.section-alt{background:#f4efe3}
h2{font-family:Georgia,"Times New Roman",serif;font-size:1.75rem;color:var(--navy);margin-bottom:1rem;border-bottom:3px solid var(--amber);display:inline-block;padding-bottom:.25rem}
.section p{margin-bottom:1rem;max-width:46rem}
h3{color:var(--navy);margin:1.1rem 0 .35rem}

.check-grid{display:grid;gap:1.1rem;margin-top:1.6rem}
.check-card{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--amber);border-radius:.7rem;padding:1.2rem 1.25rem}
.check-card h3{margin-top:0;font-size:1.12rem}
.check-card p{margin-bottom:0;font-size:.97rem;color:var(--muted)}

.two-col{display:grid;gap:0 2rem}
.two-col h3:first-child{margin-top:0}

.steps{list-style:none;counter-reset:step;margin-top:1.2rem;display:grid;gap:1rem}
.steps li{background:var(--card);border:1px solid var(--line);border-radius:.7rem;padding:1.1rem 1.2rem 1.1rem 4rem;position:relative;counter-increment:step}
.steps li::before{content:counter(step);position:absolute;left:1.2rem;top:1.1rem;background:var(--navy);color:var(--amber);font-weight:800;width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center}
.steps li strong{color:var(--navy)}

/* FAQ */
details{background:var(--card);border:1px solid var(--line);border-radius:.6rem;margin-bottom:.7rem;padding:.9rem 1.1rem}
summary{font-weight:700;color:var(--navy);cursor:pointer}
details p{margin:.6rem 0 0;color:var(--muted)}

/* Areas */
.area-list{list-style:none;display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}
.area-list li{background:var(--navy);color:#fff;padding:.55rem 1.1rem;border-radius:2rem;font-weight:600;font-size:.95rem}

/* Company card */
.company-card{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--amber);border-radius:.7rem;padding:1.4rem 1.5rem}
.company-card p{margin-bottom:.5rem}
.fine{font-size:.88rem;color:var(--muted)}

/* Form */
form{background:var(--card);border:1px solid var(--line);border-radius:.8rem;padding:1.6rem;margin-top:1.2rem}
.field{margin-bottom:1.05rem}
.field label{display:block;font-weight:700;margin-bottom:.35rem;color:var(--navy)}
.field input,.field textarea{width:100%;padding:.7rem .85rem;border:1.5px solid var(--line);border-radius:.5rem;font-size:1rem;font-family:inherit;background:#fffdf8}
.field input:focus,.field textarea:focus{outline:2px solid var(--amber);border-color:var(--amber)}

/* Footer */
footer{background:var(--navy-dark);color:#c9d4e0;padding:1.8rem 0;margin-top:1rem}
footer a{color:var(--amber)}
footer p{margin-bottom:.3rem;font-size:.95rem}

/* Sticky call */
.sticky-call{display:none;position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:60;background:var(--amber);color:var(--navy-dark);text-align:center;font-weight:800;font-size:1.15rem;padding:.9rem;border-radius:.7rem;text-decoration:none;box-shadow:0 4px 18px rgba(0,0,0,.35)}

@media(min-width:860px){
  .hero-grid{grid-template-columns:1.05fr .95fr}
  .hero h1{font-size:2.7rem}
  .check-grid{grid-template-columns:repeat(3,1fr)}
  .two-col{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
}
@media(max-width:859px){
  .sticky-call{display:block}
  body{padding-bottom:4.5rem}
}
