/* Clean Fresh Co. site theme (version 2: navy, brand yellow, plain bold Inter).
   Loaded after each page's own <style>, so it restyles every inner page from one place.
   The home page carries the same look inline. */

:root{
  --navy:#101A4A;
  --navy-deep:#0A1236;
  --navy-2:#18246A;
  --gold:#FFD639;
  --gold-hover:#F2C21F;
  --gold-text:#8A6B14;
  --cream:#FAF8F3;
  --paper-2:#F3EFE5;
  --ink:#1A2140;
  --muted:#565E80;
  --edge:#E7E2D6;
  --sky:#FFD639;          /* small labels on navy now use the brand yellow */
  --blue:#101A4A;         /* former bright-blue accents become navy */
  --tint:#FFFFFF;
  --tint-line:#E7E2D6;
  --shadow:0 1px 2px rgba(16,26,74,0.04),0 12px 30px rgba(16,26,74,0.07);
}

/* ---------- type: one plain, readable family ---------- */
body,body *{font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif !important;}
body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-weight:700;letter-spacing:-0.02em;}
em,i{font-style:normal;}
.mono{font-variant-numeric:tabular-nums;}
.kicker,.gc-kicker,.res-label{letter-spacing:0.18em !important;font-size:0.74rem !important;font-weight:600;text-transform:uppercase;}
.gc-kicker{color:var(--gold-text);}
.gc-script{font-style:normal !important;font-weight:600 !important;color:var(--gold-text) !important;font-size:1.1rem !important;}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}

/* ---------- menu ---------- */
nav{background:var(--navy-deep) !important;border-bottom:1px solid rgba(255,255,255,0.14);box-shadow:none !important;}
.nav-links a{color:rgba(244,241,232,0.82);opacity:1;font-size:0.9rem;font-weight:500;border-bottom:2px solid transparent;}
.nav-links a:hover{color:#fff;border-bottom-color:var(--gold);}
.nav-links a.active{color:#fff;border-bottom-color:var(--gold);}
@media (min-width:821px){ .nav-links a{padding:6px 0;} }
@media (min-width:821px) and (max-width:1080px){ .nav-links{gap:16px;} .nav-links a{font-size:0.84rem;} }
@media (min-width:821px) and (max-width:900px){ .nav-links{gap:11px;} .nav-links a{font-size:0.79rem;} .nav-right .btn-gold{padding:9px 14px;font-size:0.8rem;} }
@media (max-width:820px){
  .nav-links{background:var(--navy-deep) !important;}
  .nav-links a{border-bottom:1px solid rgba(255,255,255,0.14);}
  .nav-links a:hover,.nav-links a.active{border-bottom-color:rgba(255,255,255,0.14);color:var(--gold);}
}

/* ---------- buttons ---------- */
.btn{border-radius:999px;font-weight:600;transform:none !important;box-shadow:none !important;}
.btn-gold,.quote-btn{background:var(--gold) !important;color:var(--navy-deep) !important;}
.btn-gold:hover,.quote-btn:hover{background:var(--gold-hover) !important;transform:none !important;box-shadow:none !important;}
.btn-gold::after{display:none !important;}
.alt-links a{color:var(--navy) !important;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px;text-decoration-thickness:2px;}
.alt-links a:hover{color:var(--gold-text) !important;}

/* ---------- page header ---------- */
.faq-hero{
  background:radial-gradient(120% 140% at 12% 0%,var(--navy-2) 0%,var(--navy) 45%,var(--navy-deep) 100%) !important;
  color:#F4F1E8;padding:72px 0 64px !important;
}
.faq-hero .kicker{color:var(--gold) !important;}
.faq-hero h1{font-size:clamp(2rem,4.6vw,2.8rem) !important;color:#fff;line-height:1.15;}
.faq-hero p{color:rgba(244,241,232,0.82);opacity:1;}
.hero-actions .pill{background:transparent !important;border:1px solid rgba(255,255,255,0.35) !important;color:#fff !important;transform:none !important;}
.hero-actions .pill:hover{border-color:var(--gold) !important;color:var(--gold) !important;}
@media (max-width:820px){ .faq-hero{padding:48px 0 44px !important;} }

/* ---------- cards: one consistent look ---------- */
.price-table,.scope-card,details.faq-item,.calc-card,.res-item,.res-totals,.inc-card,.step,.item-row{
  background:#fff !important;border-color:var(--edge) !important;box-shadow:var(--shadow);
}
.price-table{border-radius:0 0 16px 16px;}
.price-table caption{background:#FCFBF7 !important;color:var(--navy);font-weight:700;border-bottom:1px solid var(--edge);}
.price-table td:last-child{font-variant-numeric:tabular-nums;color:var(--navy);font-weight:700;}
.price-tab{border-color:var(--edge) !important;color:var(--navy);}
.price-tab.active{background:var(--navy) !important;border-color:var(--navy) !important;color:var(--gold) !important;}
.price-note,.min-note{background:#FFF9E0 !important;border-color:#F1E3A6 !important;color:#5E4E10 !important;}
.fine{background:#fff !important;border-color:var(--edge) !important;}
.fine.sop{background:var(--paper-2) !important;border-color:var(--edge) !important;color:var(--ink) !important;}
.item-row{background:#FCFBF7 !important;box-shadow:none;}
details.faq-item[open]{border-color:#D9D3C3 !important;}
.faq-num{background:var(--navy) !important;color:var(--gold) !important;}

/* deep / general cleaning pieces */
.gc-h2{color:var(--navy);letter-spacing:-0.02em;}
.gc-lead,.gc-sub{color:var(--muted) !important;}
.gc-trust{background:#fff !important;color:var(--navy) !important;border:1px solid var(--edge);font-weight:600 !important;}
.sig{background:radial-gradient(120% 140% at 85% 0%,var(--navy-2) 0%,var(--navy) 50%,var(--navy-deep) 100%) !important;border-radius:20px;}
.sig .gc-kicker{color:var(--gold) !important;}
.sig .gc-h2{color:#fff !important;}
.ico{background:var(--navy) !important;color:var(--gold) !important;}
.ico.gold{background:var(--gold) !important;color:var(--navy-deep) !important;}
.ico.soft{background:#fff !important;color:var(--navy) !important;}
.ico.red{background:#C2453F !important;color:#fff !important;}
.ico.amber{background:#D79A1E !important;color:#fff !important;}
.step::before{background:var(--navy) !important;color:var(--gold) !important;}
.steps-strip span{color:var(--navy);}
.gcs-frame{border:0 !important;border-radius:14px !important;}
.ba-frame{border:0 !important;border-radius:14px !important;}
.ba-tag.a{background:var(--gold) !important;color:var(--navy-deep) !important;}
.ba-tag.b{background:rgba(10,18,54,0.8) !important;}
.dc-video video{border-radius:14px;}

/* savings calculator */
.res-hero{background:radial-gradient(120% 140% at 15% 0%,var(--navy-2) 0%,var(--navy) 45%,var(--navy-deep) 100%) !important;}
.res-label{color:var(--gold) !important;}
.res-big{font-weight:800 !important;letter-spacing:-0.02em;}
.btn-add{border-color:#CFC8B4 !important;}
.btn-copy{border-color:var(--navy) !important;}

/* ---------- footer (same as home) ---------- */
footer{background:var(--navy-deep) !important;color:#F4F1E8;padding:56px 0 30px !important;border-top:1px solid rgba(255,255,255,0.14);margin-top:0 !important;}
footer .wrap{display:block !important;}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;flex-wrap:wrap;}
.foot-brand{font-size:1.25rem;font-weight:700;color:#fff !important;}
.foot-brand small{display:block;font-size:0.72rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);margin-top:6px;font-weight:600;}
.foot-links{display:flex;flex-wrap:wrap;gap:4px 26px !important;font-size:0.9rem !important;max-width:620px;opacity:1 !important;justify-content:flex-start !important;}
.foot-links a{color:rgba(244,241,232,0.75);display:inline-block;padding:10px 0;}
.foot-links a:hover{color:var(--gold);}
.foot-bottom{margin-top:30px !important;padding-top:22px;border-top:1px solid rgba(255,255,255,0.14);font-size:0.82rem !important;color:rgba(244,241,232,0.55);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;text-align:left !important;opacity:1 !important;}
.foot-bottom a{color:rgba(244,241,232,0.75);text-decoration:underline;text-underline-offset:2px;}
footer .socials{display:flex;gap:14px;margin-top:18px;}
.social{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,0.14);display:flex;align-items:center;justify-content:center;color:#F4F1E8;}
.social:hover{border-color:var(--gold);color:var(--gold);}
.social svg{width:20px;height:20px;fill:currentColor;}

/* phone booking bar: same as home */
.mbar .m-msg{background:var(--gold) !important;}

/* readable sub-lines inside navy panels */
.sig .gc-sub,.sig p{color:rgba(244,241,232,0.82) !important;}
.sig .sig-free{color:#F4F1E8 !important;}

/* ---------- compact service pages ---------- */
.steps-strip small{display:block;font-size:0.85rem;color:var(--muted);line-height:1.4;margin-top:-2px;}
.free-line{text-align:center;margin-top:16px;font-size:0.92rem;color:var(--muted);}
.free-line strong{color:var(--navy);}
.compact-prices{max-width:620px;margin:0 auto;border-radius:16px !important;overflow:hidden;}
.price-foot{text-align:center;margin-top:14px;font-size:0.9rem;color:var(--muted);}
.center-btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px;}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;border:1.5px solid var(--navy);color:var(--navy);font-weight:600;background:transparent;}
.btn-outline:hover{background:var(--navy);color:#fff;}
.gtk{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.gtk details{background:#fff;border:1px solid var(--edge);border-radius:14px;box-shadow:var(--shadow);}
.gtk summary{list-style:none;cursor:pointer;padding:18px 54px 18px 20px;font-weight:700;color:var(--navy);position:relative;min-height:56px;display:flex;align-items:center;}
.gtk summary::-webkit-details-marker{display:none;}
.gtk summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:500;color:var(--navy);}
.gtk details[open] summary::after{content:"–";}
.gtk details[open] summary{border-bottom:1px solid var(--edge);}
.gtk ul,.gtk p{padding:16px 20px 18px 20px;color:#3A4166;font-size:0.94rem;line-height:1.6;}
.gtk ul{padding-left:38px;display:flex;flex-direction:column;gap:8px;}
.gtk strong{color:var(--navy);}
@media (max-width:640px){ .center-btns .btn-outline{width:100%;} }

/* logo size on phones (same as home) */
@media (max-width:480px){ .brand img{height:42px !important;} }

/* ---------- commercial cleaning page ---------- */
.hero-cta{margin-top:22px;display:flex;justify-content:center;}
.hero-cta .btn{min-height:50px;padding:0 28px;font-size:0.98rem;}
.biz-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.biz-card{background:#fff;border:1px solid var(--edge);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);}
.biz-card h3{font-size:1rem;color:var(--navy);margin-bottom:4px;}
.biz-card p{font-size:0.9rem;color:var(--muted);line-height:1.45;}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.work-grid figure{margin:0;}
.work-grid img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:12px;box-shadow:var(--shadow);}
.work-grid figcaption{font-size:0.84rem;color:var(--muted);margin-top:8px;font-weight:500;}
.sig.offer{text-align:center;}
.sig.offer .gc-h2{font-size:clamp(1.3rem,3.2vw,1.7rem);line-height:1.3;}
.quote-list{max-width:520px;margin:6px auto 0;background:#fff;border:1px solid var(--edge);border-radius:14px;padding:18px 20px 18px 40px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px;color:var(--ink);font-size:0.95rem;}
@media (max-width:700px){ .work-grid{grid-template-columns:repeat(2,1fr);gap:12px;} }
@media (max-width:380px){ .biz-grid{grid-template-columns:1fr;} }

/* room for 'Commercial Cleaning' in the menu on narrow laptops */
@media (min-width:821px) and (max-width:900px){
  .nav-links{gap:9px !important;} .nav-links a{font-size:0.74rem !important;}
  .brand img{height:42px !important;}
  .nav-right .btn-gold{padding:8px 12px !important;font-size:0.76rem !important;}
}

/* links inside price tables and notes */
.pt-link,.gtk a{color:var(--navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;text-decoration-thickness:2px;}
.price-table td.pt-note,.disclaimer{font-style:normal !important;}
.biz-card.more{grid-column:1 / -1;background:var(--paper-2);}
