/* Rapid — action-oriented home, matched to the IMG_0135 mockup. Uses brand.css fonts/.ico. */
:root{ --navy:#0d3f5e; --navy2:#17618f; --blue:#1a7bb6; --sky:#38a7e0;
  --red:#e0a52e; --red-dark:#c88f1f; --gold-a:#f4c85c; --gold-b:#e0a52e; --gold-hi:#f7d06e; --gold-lo:#d1971f;
  --ink:#16303f; --mut:#5a7183; --line:#dfe6ec; --wash:#eef4f8; }
body{background:#fff;color:var(--ink);line-height:1.55}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}

/* top bar */
.topbar{background:var(--navy);color:#cfe3f0;font-size:.82rem}
.topbar .wrap{display:flex;justify-content:flex-end;align-items:center;gap:22px;padding:8px 22px}
.topbar a{color:#cfe3f0;text-decoration:none}
.topbar a:hover{color:#fff}

/* header */
header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 14px rgba(13,63,94,.09);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand img{height:74px;width:auto}
.brand .wm{font-family:'Saira Condensed',sans-serif;font-weight:800;font-style:italic;font-size:2.05rem;line-height:1;color:var(--navy);letter-spacing:.3px;text-transform:uppercase}
.brand .wm b{color:var(--blue);font-weight:800}
.nav{display:flex;align-items:center;gap:26px}
.nav a{color:#33475a;text-decoration:none;font-weight:600;font-size:.95rem}
.nav a:hover,.nav a.active{color:var(--blue)}
.btn-red{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(160deg,var(--gold-a),var(--gold-b));color:var(--navy);text-decoration:none;font-weight:800;font-size:.88rem;padding:12px 22px;border-radius:8px;text-transform:uppercase;letter-spacing:.4px;box-shadow:0 5px 15px rgba(224,165,46,.32)}
.btn-red:hover{background:linear-gradient(160deg,var(--gold-hi),var(--gold-lo))}
@media(max-width:920px){ .nav .navlink{display:none} }

/* HERO */
.hero{position:relative;color:#fff;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:0;
  background:linear-gradient(100deg,rgba(9,36,54,.9) 0%,rgba(9,36,54,.66) 48%,rgba(9,36,54,.5) 100%),
  url(/assets/photos/hero-junk.jpg) center/cover no-repeat}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.12fr .88fr;gap:44px;align-items:center;padding:60px 22px}
.hc .eyebrow{font-size:.82rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#8fd0f4}
.hc h1{font-family:'Sora',sans-serif;font-size:clamp(2.1rem,5.3vw,3.5rem);font-weight:800;line-height:1.05;margin:14px 0 0;letter-spacing:-.5px}
.hc h1 .b{color:#8fd0f4}
.hc p{margin:16px 0 22px;font-size:1.06rem;color:#e2edf4;max-width:520px}
.hc .row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:var(--blue);color:#fff;text-decoration:none;font-weight:800;padding:14px 26px;border-radius:10px;font-size:1rem}
.btn-ghost:hover{background:#1668a0}
.nocalls{display:inline-flex;align-items:center;gap:8px;color:#bcd9ec;font-size:.9rem;font-weight:600}
.nocalls .ico{width:17px;height:17px;color:#8fd0f4}

/* quote card */
.qcard{background:#fff;border-radius:16px;box-shadow:0 26px 60px rgba(0,0,0,.4);overflow:hidden;color:var(--ink)}
.qcard .qh{background:var(--blue);color:#fff;padding:16px 22px}
.qcard .qh b{font-family:'Sora',sans-serif;font-size:1.3rem;font-weight:800;display:block}
.qcard .qh span{font-size:.85rem;color:#dceefa}
.qcard form{padding:18px 22px 22px}
.qcard input,.qcard textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:9px;font-size:.98rem;margin-bottom:11px;font-family:inherit;color:var(--ink);background:#fdfefe}
.qcard textarea{min-height:70px;resize:vertical}
.qcard input:focus,.qcard textarea:focus{outline:2px solid var(--blue);border-color:var(--blue)}
.qphoto{display:block;border:2px dashed var(--blue);background:var(--wash);border-radius:10px;padding:12px;text-align:center;cursor:pointer;font-weight:700;color:var(--blue);font-size:.9rem;margin-bottom:12px}
.qphoto .ico{width:18px;height:18px;vertical-align:-.2em;margin-right:5px}
.qphoto input{display:none}
.qphoto small{display:block;font-weight:500;color:var(--mut);margin-top:3px}
#thumbs{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px;justify-content:center}
#thumbs img{width:48px;height:48px;object-fit:cover;border-radius:7px;border:1px solid var(--line)}
.qsub{width:100%;background:linear-gradient(160deg,var(--gold-a),var(--gold-b));color:var(--navy);border:none;font-weight:800;font-size:1.05rem;padding:14px;border-radius:10px;cursor:pointer;text-transform:uppercase;letter-spacing:.4px}
.qsub:hover{background:linear-gradient(160deg,var(--gold-hi),var(--gold-lo))} .qsub:disabled{opacity:.6;cursor:wait}
.qfine{font-size:.75rem;color:var(--mut);text-align:center;margin-top:9px}
.qok{display:none;background:#e9f6ee;border:1px solid #9ec8ad;color:#2c4a37;border-radius:9px;padding:12px;margin-top:10px;font-weight:600;font-size:.9rem}
.qerr{display:none;background:#fdeceb;border:1px solid #e3aba4;color:#983b30;border-radius:9px;padding:11px;margin-top:10px;font-weight:600;font-size:.9rem}

/* section base */
section{padding:56px 0}
.band{background:var(--wash)}
h2{font-family:'Sora',sans-serif;font-size:clamp(1.5rem,3.6vw,2.2rem);font-weight:800;color:var(--navy);text-align:center;letter-spacing:-.02em}
.sub{color:var(--mut);text-align:center;max-width:620px;margin:10px auto 0;font-size:1.05rem}

/* service photo cards */
.svc-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:38px}
.svc-photo{position:relative;height:300px;border-radius:14px;overflow:hidden;display:block;text-decoration:none;box-shadow:0 10px 28px rgba(13,63,94,.14)}
.svc-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.svc-photo:hover img{transform:scale(1.06)}
.svc-photo .cap{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(to top,rgba(9,36,54,.94) 6%,rgba(9,36,54,.2) 55%,transparent);padding:22px}
.svc-photo .cap b{font-family:'Sora',sans-serif;color:#fff;font-weight:800;font-size:1.35rem;text-transform:uppercase;letter-spacing:.3px;line-height:1.1}
.svc-photo .cap span{color:#a9d4ef;font-size:.9rem;font-weight:600;margin-top:5px;display:inline-flex;align-items:center;gap:6px}
.svc-photo .cap span .ico{width:15px;height:15px}
.svc-photo .tag{position:absolute;top:14px;right:14px;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;background:var(--red);color:var(--navy);padding:5px 10px;border-radius:999px}
.svc-photo .tag.soon{background:rgba(255,255,255,.92);color:var(--navy)}

/* how it works */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:38px}
.step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
.step .n{width:40px;height:40px;border-radius:11px;background:var(--blue);color:#fff;font-family:'Sora',sans-serif;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:1.15rem;margin-bottom:14px}
.step b{font-family:'Sora',sans-serif;color:var(--navy);font-size:1.15rem;display:block;margin-bottom:6px}
.step p{color:var(--mut);font-size:.95rem}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:38px}
.review{background:#fff;border:2px dashed var(--line);border-radius:14px;padding:26px;text-align:center;color:var(--mut);font-weight:600;display:flex;align-items:center;justify-content:center;gap:9px;min-height:120px}
.review .ico{color:#f5a623;width:19px;height:19px}

/* cta band */
.cta-band{background:linear-gradient(160deg,var(--navy),var(--navy2));color:#fff;text-align:center}
.cta-band h2{color:#fff}
.cta-band p{color:#cfe3f0;max-width:560px;margin:12px auto 24px;font-size:1.08rem}

/* footer */
footer.rf{background:var(--ink);color:#9fb3bf;padding:44px 0 30px;font-size:.9rem}
footer.rf .wrap{display:flex;flex-wrap:wrap;gap:24px 60px;align-items:flex-start}
footer.rf .wm{font-family:'Saira Condensed',sans-serif;font-weight:800;font-style:italic;font-size:1.9rem;text-transform:uppercase;letter-spacing:.3px;color:#fff;margin-bottom:6px}
footer.rf a{color:#8fd0f4;text-decoration:none}
footer.rf .legal{width:100%;border-top:1px solid rgba(255,255,255,.1);margin-top:14px;padding-top:16px;font-size:.8rem;color:#7d94a1}
.foot-contact{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:8px}
.foot-contact span{display:inline-flex;align-items:center;gap:7px}

/* ── flagship cleanout feature ── */
.flagship{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin-top:36px}
.flagship .fimg{height:440px;border-radius:16px;overflow:hidden;box-shadow:0 18px 44px rgba(13,63,94,.2)}
.flagship .fimg img{width:100%;height:100%;object-fit:cover}
.flagship h3{font-family:'Sora',sans-serif;font-size:1.7rem;color:var(--navy);font-weight:800;margin:0 0 6px}
.flagship .fl-lead{color:var(--mut);font-size:1.05rem;margin:0 0 8px}
.ctypes{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin:22px 0 26px}
.ctype{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:var(--ink);font-size:1rem}
.ctype .dot{width:8px;height:8px;border-radius:50%;background:var(--red);margin-top:8px;flex:none}
.also{margin-top:46px;background:var(--wash);border:1px solid var(--line);border-radius:14px;padding:20px 26px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.also .txt b{font-family:'Sora',sans-serif;color:var(--navy)}
.also .txt span{color:var(--mut);font-size:.98rem}
.also a{color:var(--blue);font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.4px;font-size:.88rem;white-space:nowrap;display:inline-flex;align-items:center;gap:7px}
.also a .ico{width:15px;height:15px}
@media(max-width:820px){ .flagship{grid-template-columns:1fr;gap:26px} .flagship h3,.flagship .fl-lead{text-align:center} .ctypes{grid-template-columns:1fr} }

/* ── for-businesses / commercial band ── */
.bizband{background:linear-gradient(158deg,#0d3f5e 0%,#17618f 100%);color:#fff;padding:60px 0}
.bizband .wrap{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
.bizband .eyebrow{color:#8fd0f4;font-size:.82rem;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.bizband h2{color:#fff;text-align:left;margin-top:12px}
.bizband p{color:#cfe3f0;font-size:1.06rem;margin:16px 0 24px;max-width:520px}
.bizlist{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bizlist .bi{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:11px;padding:15px 16px;font-weight:600;font-size:.97rem}
.bizlist .bi b{display:block;color:#8fd0f4;font-family:'Sora',sans-serif;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
@media(max-width:820px){ .bizband .wrap{grid-template-columns:1fr;gap:28px} .bizlist{grid-template-columns:1fr} }

/* ── inner page shared styles ── */
.pagehero{background:linear-gradient(155deg,var(--navy),var(--navy2));color:#fff;text-align:center;padding:60px 0}
.pagehero .eyebrow{color:#8fd0f4;font-size:.82rem;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.pagehero h1{font-family:'Sora',sans-serif;font-size:clamp(2rem,4.6vw,3rem);font-weight:800;margin:12px 0 0;color:#fff}
.pagehero p{color:#cfe3f0;max-width:600px;margin:14px auto 0;font-size:1.08rem}
.prose{max-width:760px;margin:0 auto}
.prose p{color:var(--ink);font-size:1.05rem;margin:0 0 16px;line-height:1.7}
.srow{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin:0 auto 40px;max-width:1000px}
.srow.rev .simg{order:2}
.srow .simg{height:300px;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(13,63,94,.14)}
.srow .simg img{width:100%;height:100%;object-fit:cover}
.srow h3{font-family:'Sora',sans-serif;font-size:1.6rem;color:var(--navy);font-weight:800;margin:0 0 10px}
.srow p{color:var(--mut);font-size:1.02rem;margin:0 0 14px}
.srow .go{color:var(--blue);font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.4px;font-size:.9rem}
.srow .go .ico{width:15px;height:15px}
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:40px}
.price{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 8px 24px rgba(13,63,94,.07)}
.price h3{font-family:'Sora',sans-serif;color:var(--navy);font-size:1.2rem;margin:0}
.price .amt{font-family:'Sora',sans-serif;font-size:2rem;font-weight:800;color:var(--blue);margin:8px 0}
.price p{color:var(--mut);font-size:.95rem;margin:0}
.price.feature{background:var(--navy);color:#fff}
.price.feature h3,.price.feature .amt{color:#fff}.price.feature .amt{color:#8fd0f4}.price.feature p{color:#cfe3f0}
.areagrid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:36px}
.areagrid .area{background:#fff;border:1px solid var(--line);border-radius:999px;padding:12px 24px;font-weight:700;color:var(--navy)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;max-width:1000px;margin:40px auto 0;align-items:start}
.contact-info .ci{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px}
.contact-info .ci .ico{width:22px;height:22px;color:var(--blue);flex:none;margin-top:2px}
.contact-info b{display:block;color:var(--navy)}
.contact-info span{color:var(--mut);font-size:.95rem}
@media(max-width:820px){ .srow,.srow.rev .simg{grid-template-columns:1fr;order:0} .contact-grid{grid-template-columns:1fr} }

/* mobile */
@media(max-width:860px){
  .hero .wrap{grid-template-columns:1fr;gap:26px;padding:44px 22px}
  section{padding:44px 0}
  .brand .wm{font-size:1.3rem}
}
