/* Variant C — Clean Modern Referral */
:root{
  --blue:#1668b4; --blue-dark:#0d4d8a; --navy-ink:#10314f;
  --orange:#f2760a; --orange-dark:#d96408; --orange-soft:#fff3e6;
  --ink:#2b3a46; --muted:#64798a;
  --bg:#f7fafc; --panel:#eef5fa; --line:#e2ebf2;
  --amber-bg:#fff9ec; --amber-line:#f0cd7e;
  --radius:20px; --shadow:0 18px 40px rgba(16,49,79,.09);
  --shadow-sm:0 8px 22px rgba(16,49,79,.07);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.7;font-size:17px}
img{max-width:100%;display:block}
a{color:var(--blue)}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
h1,h2,h3,h4{font-family:'Poppins',sans-serif;color:var(--navy-ink);line-height:1.2;font-weight:700}
h2{font-size:clamp(1.8rem,3.4vw,2.5rem);letter-spacing:-.015em}
.section{padding:88px 0}
.eyebrow{font-family:'Poppins',sans-serif;font-weight:600;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.eyebrow-amber{color:#b97e10}
.section-lede{max-width:720px;color:var(--muted);margin-top:14px;font-size:1.05rem}
.body-p{color:var(--muted);margin-top:14px}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:'Poppins',sans-serif;font-weight:600;border-radius:999px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.btn svg{width:20px;height:20px}
.btn-call{background:var(--orange);color:#fff;padding:14px 28px;box-shadow:0 12px 26px rgba(242,118,10,.28)}
.btn-call:hover{background:var(--orange-dark);transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.75);color:#fff;padding:12.5px 26px;backdrop-filter:blur(4px)}
.btn-ghost:hover{background:rgba(255,255,255,.25)}
.btn-lg{font-size:1.1rem;padding:16px 34px}
.rv{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-header.scrolled{box-shadow:0 10px 30px rgba(16,49,79,.08)}
.header-in{display:flex;align-items:center;gap:26px;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,var(--blue),#2f8fdd);display:flex;align-items:center;justify-content:center;flex:none}
.brand-mark svg{width:23px;height:23px}
.brand-text{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.08rem;color:var(--navy-ink);line-height:1.1}
.brand-text em{font-style:normal;color:var(--orange)}
.main-nav{display:flex;gap:26px;margin-left:auto;align-items:center}
.main-nav a{font-weight:500;font-size:.98rem;color:var(--ink);text-decoration:none}
.main-nav a:hover{color:var(--blue)}
.main-nav .nav-cta{color:var(--blue);font-weight:600}
.header-call{display:inline-flex;align-items:center;gap:9px;background:var(--navy-ink);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;padding:11px 20px;border-radius:999px;text-decoration:none;transition:background .18s ease}
.header-call:hover{background:var(--blue-dark)}
.header-call svg{width:17px;height:17px;color:#ffb066}
.nav-toggle{display:none;margin-left:auto;background:none;border:0;cursor:pointer;padding:8px}
.nav-toggle span{display:block;width:25px;height:3px;background:var(--navy-ink);border-radius:2px;margin:5px 0}

/* hero */
.hero{position:relative;padding:110px 0 130px;overflow:hidden;background:var(--navy-ink)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,32,56,.9) 22%,rgba(10,42,72,.62) 55%,rgba(10,42,72,.25) 100%)}
.hero-in{position:relative;max-width:680px}
.hero-eyebrow{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;padding:7px 15px;border-radius:999px;margin-bottom:22px}
.hero h1{color:#fff;font-size:clamp(2.4rem,5vw,3.7rem);font-weight:700;letter-spacing:-.02em;margin-bottom:18px}
.hero-sub{color:#dbe8f3;font-size:1.14rem;max-width:580px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.hero-note{margin-top:20px;color:#aec6da;font-size:.93rem;font-weight:500}

/* situations */
.situations{padding:76px 0 30px;background:linear-gradient(180deg,#fff,var(--bg))}
.sit-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;flex-wrap:wrap}
.sit-head-p{color:var(--muted);max-width:420px}
.sit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.sit-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}
.sit-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.sit-card img{height:160px;width:100%;object-fit:cover}
.sit-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:7px;flex:1}
.sit-body strong{font-family:'Poppins',sans-serif;font-size:1.08rem;color:var(--navy-ink)}
.sit-body span{color:var(--muted);font-size:.95rem}
.sit-go{margin-top:auto;font-family:'Poppins',sans-serif;font-weight:600;color:var(--orange);font-size:.95rem}
.short-answer{margin-top:26px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:26px 30px}
.sa-tag{font-family:'Poppins',sans-serif;font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);display:block;margin-bottom:8px}
.short-answer p{color:#3c4d59}

/* services */
.services{background:var(--bg);padding-top:70px}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.svc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}
.svc-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.svc-card>img{height:185px;width:100%;object-fit:cover}
.svc-body{padding:24px 26px 26px;display:flex;flex-direction:column;gap:9px;flex:1}
.svc-body h3{font-size:1.18rem}
.svc-body p{color:var(--muted);font-size:.97rem}
.svc-body a{margin-top:auto;font-family:'Poppins',sans-serif;font-weight:600;color:var(--orange);text-decoration:none}
.svc-body a:hover{text-decoration:underline}
.svc-call{background:linear-gradient(150deg,#fdf3e7,#ffe9d2);border:1px dashed #f2b183;align-items:flex-start;justify-content:center}
.svc-call .svc-body{justify-content:center}
.svc-call .btn{align-self:flex-start;margin-top:8px}

/* signs */
.signs-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:start}
.signs-watch{font-weight:600;color:var(--navy-ink);font-family:'Poppins',sans-serif;margin-top:20px}
.check-list{list-style:none;margin-top:12px;display:grid;gap:11px}
.check-list li{position:relative;padding-left:32px;font-weight:500}
.check-list li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--orange-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.8 10 17.5 19 7' fill='none' stroke='%23f2760a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.example-box{margin-top:22px;background:var(--panel);border:1px solid #d5e5f0;border-radius:16px;padding:18px 22px;font-size:.97rem;color:#33505f}
.signs-fig img{border-radius:var(--radius);box-shadow:var(--shadow)}
.signs-fig figcaption{color:var(--muted);font-size:.92rem;margin-top:12px}
.cats-h{font-size:1.35rem;margin:54px 0 18px}
.cats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 26px;box-shadow:var(--shadow-sm)}
.cat-dot{width:14px;height:14px;border-radius:50%;display:block;margin-bottom:12px}
.cat-1{background:#39b5c4}.cat-2{background:#e8a13a}.cat-3{background:#c8452c}
.cat-card h4{font-size:1.05rem;margin-bottom:7px}
.cat-card p{color:var(--muted);font-size:.96rem}
.cats-note{color:var(--muted);margin-top:16px;max-width:820px}

/* process stepper */
.process{background:var(--bg)}
.stepper{list-style:none;margin-top:44px;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;position:relative}
.stepper::before{content:"";position:absolute;top:27px;left:9%;right:9%;height:2px;background:repeating-linear-gradient(90deg,#bcd6ea 0 8px,transparent 8px 16px)}
.stepper li{position:relative;text-align:left;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 20px;box-shadow:var(--shadow-sm)}
.step-n{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#fff;border:2px solid #bcd6ea;color:var(--blue);font-family:'Poppins',sans-serif;font-weight:700;font-size:1.02rem;position:relative;z-index:2;margin-bottom:14px}
.stepper h3{font-size:1.05rem;margin-bottom:6px}
.stepper p{color:var(--muted);font-size:.92rem;line-height:1.6}
.dry-band{margin-top:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr;box-shadow:var(--shadow-sm)}
.dry-band img{height:100%;min-height:280px;width:100%;object-fit:cover}
.dry-band-tx{padding:30px 34px}
.dry-band-tx h3{font-size:1.25rem;margin-bottom:14px}
.equip-chips{list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}
.equip-chips li{background:var(--panel);border:1px solid #d5e5f0;color:var(--navy-ink);font-weight:600;font-size:.9rem;padding:7px 14px;border-radius:999px}
.dry-band-tx p{color:var(--muted)}
.why-wait{margin-top:24px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--orange);border-radius:18px;padding:26px 30px;box-shadow:var(--shadow-sm)}
.why-wait h3{font-size:1.2rem;margin-bottom:8px}
.why-wait p{color:var(--muted)}

/* guides */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.guide-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}
.guide-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.guide-card img{height:200px;width:100%;object-fit:cover}
.guide-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.guide-tag{align-self:flex-start;background:#e9f3fb;color:var(--blue-dark);font-family:'Poppins',sans-serif;font-weight:600;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 11px;border-radius:999px}
.guide-card h3{font-size:1.1rem;line-height:1.35}
.guide-card p{color:var(--muted);font-size:.95rem}
.guide-go{margin-top:auto;padding-top:10px;font-family:'Poppins',sans-serif;font-weight:600;color:var(--orange)}

/* safety */
.safety{padding-top:20px}
.safety-card{background:var(--amber-bg);border:1px solid var(--amber-line);border-radius:var(--radius);display:grid;grid-template-columns:.75fr 1.25fr;overflow:hidden}
.safety-card>img{height:100%;min-height:320px;width:100%;object-fit:cover}
.safety-tx{padding:34px 38px}
.safety-tx p{color:#5c5136;margin-top:11px}
.safety-stop-h{font-family:'Poppins',sans-serif;font-weight:600;color:var(--navy-ink)}
.stop-list{list-style:none;margin-top:10px;display:grid;gap:9px}
.stop-list li{position:relative;padding-left:30px;font-weight:600;color:#4a3f22;font-size:.98rem}
.stop-list li::before{content:"";position:absolute;left:0;top:3px;width:19px;height:19px;border-radius:50%;background:#fdeeda url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v8M12 16.8v.4' fill='none' stroke='%23c8452c' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/11px no-repeat}

/* how it works */
.how{background:var(--panel)}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.how-step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 26px;box-shadow:var(--shadow-sm)}
.how-step span{width:42px;height:42px;border-radius:50%;background:var(--blue);color:#fff;font-family:'Poppins',sans-serif;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.how-step h3{font-size:1.08rem;margin-bottom:6px}
.how-step p{color:var(--muted);font-size:.96rem}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;align-items:start}
.how-copy{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 30px;box-shadow:var(--shadow-sm)}
.how-copy p{color:var(--muted);margin-bottom:20px}
.ask-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 30px;box-shadow:var(--shadow-sm)}
.ask-card h3{font-size:1.18rem;margin-bottom:6px}
.ask-intro{color:var(--muted);font-size:.95rem;margin-bottom:14px}
.ask-list{list-style:none;display:grid;gap:11px}
.ask-list li{position:relative;padding-left:30px;font-size:.96rem}
.ask-list li::before{content:"";position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;background:#e6f6ec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.8 10 17.5 19 7' fill='none' stroke='%232fae5f' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.ask-note{margin-top:14px;color:var(--muted);font-size:.92rem;border-top:1px solid var(--line);padding-top:12px}

/* areas */
.zip-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.zip-chips li{background:#fff;border:1.5px solid #c8dcee;color:var(--navy-ink);font-family:'Poppins',sans-serif;font-weight:600;padding:9px 19px;border-radius:999px}
.areas-imgs{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.areas-imgs img{border-radius:var(--radius);height:250px;width:100%;object-fit:cover}
.prep{margin-top:24px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:18px;padding:24px 28px;box-shadow:var(--shadow-sm)}
.prep h3{font-size:1.15rem;margin-bottom:7px}
.prep p{color:var(--muted);font-size:.97rem}

/* faq */
.faq{background:var(--bg)}
.faq-wrap{max-width:860px}
.faq-list{margin-top:32px;display:grid;gap:11px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.faq-q{width:100%;background:none;border:0;cursor:pointer;text-align:left;font-family:'Poppins',sans-serif;font-weight:600;font-size:1.03rem;color:var(--navy-ink);padding:19px 23px;display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq-chev{width:11px;height:11px;flex:none;border-right:2.5px solid var(--orange);border-bottom:2.5px solid var(--orange);transform:rotate(45deg);transition:transform .25s ease}
.faq-item.open .faq-chev{transform:rotate(225deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-a p{padding:0 23px 20px;color:var(--muted);font-size:.97rem}
.faq-a a{color:var(--orange);font-weight:600}

/* closing */
.closing{padding:20px 0 90px;background:var(--bg)}
.closing-card{background:var(--navy-ink);border-radius:26px;overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr;box-shadow:var(--shadow)}
.closing-card img{height:100%;min-height:320px;width:100%;object-fit:cover}
.closing-tx{padding:46px 46px;display:flex;flex-direction:column;justify-content:center;gap:16px;align-items:flex-start}
.closing-tx h2{color:#fff}
.closing-tx p{color:#c3d6e8}

/* footer */
.site-footer{background:#fff;border-top:1px solid var(--line);color:var(--muted);padding:64px 0 0}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:42px;padding-bottom:44px}
.footer-brand p{margin-top:15px;font-size:.96rem;max-width:420px}
.footer-addr{font-weight:600;color:var(--navy-ink)}
.footer-call{display:inline-block;margin-top:9px;font-family:'Poppins',sans-serif;font-weight:700;font-size:1.28rem;color:var(--orange);text-decoration:none}
.footer-col h3{color:var(--navy-ink);font-size:1rem;margin-bottom:14px}
.footer-col a{display:block;color:var(--muted);text-decoration:none;padding:5px 0;font-size:.96rem}
.footer-col a:hover{color:var(--blue)}
.footer-bottom{border-top:1px solid var(--line);padding:19px 22px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.89rem}

/* floating + mobile bar */
.float-call{position:fixed;right:22px;bottom:24px;z-index:70;width:58px;height:58px;border-radius:50%;background:var(--orange);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(242,118,10,.45);animation:pulse 2.2s infinite}
.float-call svg{width:26px;height:26px}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(242,118,10,.4)}70%{box-shadow:0 0 0 15px rgba(242,118,10,0)}100%{box-shadow:0 0 0 0 rgba(242,118,10,0)}}
.mobile-bar{display:none}

/* responsive */
@media (max-width:1020px){
  .sit-grid,.svc-grid,.guide-grid{grid-template-columns:1fr 1fr}
  .stepper{grid-template-columns:repeat(3,1fr)}
  .stepper::before{display:none}
  .how-steps,.how-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  body{padding-bottom:62px}
  .section{padding:60px 0}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 24px 18px;gap:2px;box-shadow:0 20px 30px rgba(16,49,79,.12)}
  .main-nav.open{display:flex}
  .main-nav a{padding:10px 0;border-bottom:1px solid var(--line)}
  .nav-toggle{display:block}
  .header-call{display:none}
  .hero{padding:70px 0 84px}
  .sit-grid,.svc-grid,.guide-grid,.cats-grid,.signs-grid,.dry-band,.safety-card,.closing-card,.areas-imgs{grid-template-columns:1fr}
  .stepper{grid-template-columns:1fr}
  .dry-band img{min-height:220px}
  .safety-card>img{min-height:220px}
  .safety-tx,.closing-tx{padding:28px 24px}
  .footer-grid{grid-template-columns:1fr}
  .float-call{display:none}
  .mobile-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--orange);box-shadow:0 -6px 20px rgba(16,49,79,.2)}
  .mobile-bar a{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:1.03rem;text-decoration:none;padding:15px}
  .mobile-bar svg{width:21px;height:21px}
}
