/* =====================================================================
   Solar Cleaning Professionals — design system
   Dark, premium, high-contrast. Blue primary, yellow as a hint.
   Fonts: Saira Condensed (headings) + Inter (body).
   ===================================================================== */

:root{
  --blue:#0B85F2; --blue-2:#2A97FF; --blue-dk:#075CB0;
  /* Brand green sampled from the SCP badge (the "C" and "CLEANING").
     10.7:1 on black — used for confirmation, savings and growth signals. */
  --green:#8CCC00; --green-2:#A3E619; --green-dk:#6FA300;
  --green-12:rgba(140,204,0,0.12); --green-35:rgba(140,204,0,0.35); --green-55:rgba(140,204,0,0.55);
  --yellow:#F0C634;
  --bg:#000000; --bg-2:#050506; --panel-a:#0C0C0E; --panel-b:#060607;
  --ink:#FFFFFF; --muted:#B7BCC4; --muted-2:#9AA0A8; --dim:#8A9099; --dim-2:#6A7078;
  --line:rgba(255,255,255,0.08); --line-2:rgba(255,255,255,0.10); --line-3:rgba(255,255,255,0.16);
  --blue-30:rgba(11,133,242,0.30); --blue-35:rgba(11,133,242,0.35); --blue-55:rgba(11,133,242,0.55);
  --maxw:1240px;
  --head:'Saira Condensed',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;
}

*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{ font-family:var(--body); color:var(--ink); background:var(--bg); -webkit-font-smoothing:antialiased; line-height:1.55; overflow-x:hidden; }
h1,h2,h3,h4{ font-family:var(--head); line-height:0.98; letter-spacing:-0.005em; }
a{ color:var(--blue); text-decoration:none; transition:color .2s ease; }
a:hover{ color:#3AA0FF; }
img{ max-width:100%; display:block; }
::selection{ background:var(--blue); color:#fff; }
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{ opacity:0.3; }

@keyframes scp-spin{ to{ transform:translate(-50%,-50%) rotate(360deg); } }
@keyframes scp-glow{ 0%,100%{ opacity:.5; transform:translateX(-50%) scale(1); } 50%{ opacity:.85; transform:translateX(-50%) scale(1.08); } }
@keyframes scp-twinkle{ 0%,100%{ opacity:0; transform:scale(0.4) rotate(0deg); } 45%,55%{ opacity:1; transform:scale(1) rotate(35deg); } }
@keyframes scp-rise{ from{ opacity:0; transform:translateY(22px); } to{ opacity:1; transform:translateY(0); } }

/* ---------- layout ---------- */
.container{ max-width:var(--maxw); margin:0 auto; padding:0 22px; }
.section{ padding:clamp(64px,9vw,120px) 0; }
.section--tight{ padding:clamp(48px,7vw,88px) 0; }
.section--alt{ background:var(--bg-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.narrow{ max-width:920px; }
.eyebrow{ color:var(--blue); font-weight:700; letter-spacing:0.16em; text-transform:uppercase; font-size:13px; margin-bottom:16px; }
.sec-head{ text-align:center; max-width:660px; margin:0 auto clamp(38px,5vw,56px); }
.sec-head p.lead{ font-size:17px; color:var(--muted); text-wrap:pretty; }
h2.title{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:clamp(34px,5.5vw,60px); margin-bottom:16px; text-wrap:balance; }
.i-blue{ font-style:italic; color:var(--blue); }
.lead{ font-size:17px; color:var(--muted); text-wrap:pretty; }

/* ---------- header ---------- */
.site-header{ position:sticky; top:0; z-index:100; background:rgba(0,0,0,0.72); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid var(--line); }
.site-header .bar{ max-width:var(--maxw); margin:0 auto; padding:0 22px; height:96px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.brand{ display:flex; align-items:center; gap:12px; color:inherit; }
.brand img{ height:82px; width:auto; border-radius:10px; }
.nav{ display:flex; align-items:center; gap:32px; }
.nav a{ color:#CFD3D9; font-weight:600; font-size:15px; }
.nav a:hover, .nav a.active{ color:#fff; }
.nav a.active{ position:relative; }
.nav a.active::after{ content:""; position:absolute; left:0; right:0; bottom:-36px; height:2px; background:var(--blue); border-radius:2px; }
.header-actions{ display:flex; align-items:center; gap:11px; }
.callbtn{ display:inline-flex; align-items:center; gap:8px; padding:11px 17px; border-radius:11px; border:1.5px solid rgba(255,255,255,0.25); color:#fff; font-weight:700; font-size:14px; transition:border-color .2s ease, background .2s ease; }
.callbtn:hover{ border-color:#fff; background:rgba(255,255,255,0.06); color:#fff; }
.header-cta{ display:inline-flex; align-items:center; padding:11px 19px; border-radius:11px; background:var(--blue); color:#fff; font-weight:700; font-size:14px; box-shadow:0 6px 22px rgba(11,133,242,0.45); transition:background .2s ease; }
.header-cta:hover{ background:var(--blue-2); color:#fff; }
/* place-items centers the icon on BOTH axes — `margin:0 auto` only centered
   it horizontally, leaving the bars sitting high in the square. */
.burger{ display:none; place-items:center; width:46px; height:46px; padding:0; border:1.5px solid rgba(255,255,255,0.2); border-radius:11px; background:rgba(255,255,255,0.04); cursor:pointer; line-height:0; }
.burger svg{ display:block; }
.mobile-nav{ display:none; border-top:1px solid var(--line); background:#050505; padding:12px 22px 20px; }
.mobile-nav .inner{ display:flex; flex-direction:column; gap:2px; max-width:var(--maxw); margin:0 auto; }
.mobile-nav a{ padding:14px 6px; color:#CFD3D9; font-weight:600; border-bottom:1px solid rgba(255,255,255,0.07); }
.mobile-nav a:last-child{ border-bottom:none; }
.mobile-nav a.cta{ margin-top:12px; text-align:center; padding:14px; border-radius:11px; background:var(--blue); color:#fff; border:none; }

/* ---------- buttons ---------- */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; font-weight:700; font-size:16px; border-radius:13px; padding:15px 26px; border:1.5px solid transparent; cursor:pointer; transition:background .2s ease, border-color .2s ease, transform .2s ease; text-align:center; }
.btn--lg{ font-size:17px; padding:17px 30px; border-radius:14px; }
.btn--primary{ background:var(--blue); color:#fff; box-shadow:0 12px 32px rgba(11,133,242,0.4); }
.btn--primary:hover{ background:var(--blue-2); color:#fff; transform:translateY(-2px); }
.btn--outline{ background:transparent; border-color:rgba(255,255,255,0.28); color:#fff; }
.btn--outline:hover{ border-color:#fff; background:rgba(255,255,255,0.05); color:#fff; }
.btn--block{ width:100%; }

/* ---------- pills / badges ---------- */
.pill{ display:inline-flex; align-items:center; gap:7px; padding:9px 15px; border-radius:100px; background:rgba(255,255,255,0.05); border:1px solid var(--line-2); color:#D5D9DF; font-weight:600; font-size:13px; }
.pill--blue{ padding:11px 18px; background:rgba(11,133,242,0.1); border:1px solid var(--blue-30); color:#fff; font-size:15px; }
.badge-live{ display:inline-flex; align-items:center; gap:9px; padding:8px 16px; border-radius:100px; background:rgba(11,133,242,0.12); border:1px solid var(--blue-35); color:#8FC4FF; font-weight:600; font-size:13px; letter-spacing:0.02em; }
.badge-live .dot{ width:7px; height:7px; border-radius:50%; background:var(--yellow); box-shadow:0 0 10px var(--yellow); }

/* ---------- hero ---------- */
.hero{ position:relative; overflow:hidden; background:#000; display:flex; align-items:center; }
.hero--tall{ min-height:calc(100vh - 96px); }
.hero--page{ padding:clamp(56px,8vw,96px) 0 clamp(40px,6vw,72px); }
.hero--photo{ background-size:cover; background-position:center 30%; background-repeat:no-repeat; }
.hero__scrim{ position:absolute; inset:0; pointer-events:none; z-index:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.80) 0%, rgba(0,0,0,0.52) 44%, rgba(5,5,6,0.94) 100%),
             radial-gradient(ellipse 72% 62% at 50% 42%, transparent 30%, rgba(0,0,0,0.5)); }
.hero__grid{ position:absolute; inset:0; background-image:linear-gradient(rgba(11,133,242,0.09) 1px, transparent 1px), linear-gradient(90deg, rgba(11,133,242,0.09) 1px, transparent 1px); background-size:54px 54px; -webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 40%, #000 30%, transparent 78%); mask-image:radial-gradient(ellipse 90% 80% at 50% 40%, #000 30%, transparent 78%); pointer-events:none; }
.hero__conic{ position:absolute; top:8%; left:50%; width:1500px; height:1500px; transform:translate(-50%,-50%); border-radius:50%; animation:scp-spin 160s linear infinite; pointer-events:none;
  background:conic-gradient(from 0deg, rgba(240,198,52,0.10) 0deg, transparent 12deg, rgba(11,133,242,0.10) 24deg, transparent 36deg, rgba(240,198,52,0.10) 48deg, transparent 60deg, rgba(11,133,242,0.10) 72deg, transparent 84deg, rgba(240,198,52,0.10) 96deg, transparent 108deg, rgba(11,133,242,0.10) 120deg, transparent 132deg, rgba(240,198,52,0.10) 144deg, transparent 156deg, rgba(11,133,242,0.10) 168deg, transparent 180deg, rgba(240,198,52,0.10) 192deg, transparent 204deg, rgba(11,133,242,0.10) 216deg, transparent 228deg, rgba(240,198,52,0.10) 240deg, transparent 252deg, rgba(11,133,242,0.10) 264deg, transparent 276deg, rgba(240,198,52,0.10) 288deg, transparent 300deg, rgba(11,133,242,0.10) 312deg, transparent 324deg, rgba(240,198,52,0.10) 336deg, transparent 348deg); }
.hero__sun{ position:absolute; top:-160px; left:50%; width:640px; height:640px; border-radius:50%; animation:scp-glow 7s ease-in-out infinite; pointer-events:none; background:radial-gradient(circle, rgba(240,198,52,0.22), rgba(240,198,52,0.06) 40%, transparent 66%); }
.hero__blue{ position:absolute; bottom:-260px; left:50%; width:900px; height:600px; transform:translateX(-50%); border-radius:50%; pointer-events:none; background:radial-gradient(ellipse, rgba(11,133,242,0.22), transparent 68%); }
.hero__sparkle{ position:absolute; filter:drop-shadow(0 0 8px rgba(240,198,52,0.7)); opacity:0; pointer-events:none; z-index:1; }
.hero__inner{ position:relative; z-index:2; width:100%; padding-top:clamp(40px,6vw,64px); padding-bottom:clamp(40px,6vw,64px); text-align:center; }
.hero h1{ font-weight:900; font-size:clamp(46px,9vw,104px); text-transform:uppercase; letter-spacing:-0.01em; margin:22px 0 24px; text-wrap:balance; animation:scp-rise .7s ease both; }
.hero h1 .i-blue{ text-shadow:0 0 40px rgba(11,133,242,0.55); }
.hero__sub{ font-size:clamp(17px,2.4vw,22px); color:var(--muted); max-width:660px; margin:0 auto 34px; text-wrap:pretty; animation:scp-rise .8s ease both; }
.hero__ctas{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-bottom:40px; animation:scp-rise .9s ease both; }
.hero__badges{ display:flex; gap:10px 12px; justify-content:center; flex-wrap:wrap; animation:scp-rise 1s ease both; }
.hero__media{ position:relative; z-index:1; margin-top:clamp(36px,5vw,56px); border-radius:20px; overflow:hidden; border:1px solid var(--blue-30); box-shadow:0 30px 80px rgba(0,0,0,0.6); }
.hero__media img{ width:100%; height:auto; display:block; }

/* page hero (interior pages) */
.page-hero{ text-align:center; }
.page-hero h1{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:clamp(40px,7vw,84px); letter-spacing:-0.01em; margin:14px 0 18px; text-wrap:balance; }
.page-hero p{ font-size:clamp(17px,2vw,20px); color:var(--muted); max-width:640px; margin:0 auto; text-wrap:pretty; }

/* ---------- cards grid + service cards ---------- */
.grid{ display:grid; gap:20px; }
.grid--services{ grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); }
.grid--3{ grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.grid--2{ grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.service-card{ position:relative; overflow:hidden; background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid rgba(255,255,255,0.09); border-radius:18px; transition:border-color .35s ease, box-shadow .35s ease, transform .35s ease; display:flex; flex-direction:column; }
a.service-card{ color:inherit; }
.service-card:hover{ border-color:var(--blue-55); box-shadow:0 18px 44px rgba(11,133,242,0.18); transform:translateY(-4px); }
.service-card__media{ position:relative; aspect-ratio:16/10; overflow:hidden; background:#0A0A0C; }
.service-card__media img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.service-card:hover .service-card__media img{ transform:scale(1.05); }
.service-card__media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 52%, rgba(6,6,7,0.9)); }
.service-card__body{ position:relative; padding:34px 24px 26px; display:flex; flex-direction:column; flex:1; }
.service-card .sparkle{ position:absolute; top:14px; right:14px; width:20px; height:20px; opacity:0; transition:opacity .35s ease; filter:drop-shadow(0 0 8px rgba(240,198,52,0.8)); z-index:2; }
.service-card:hover .sparkle{ opacity:1; }
.service-card__icon{ width:50px; height:50px; border-radius:13px; background:rgba(11,133,242,0.18); border:1px solid var(--blue-30); display:grid; place-items:center; color:#fff; flex-shrink:0; position:absolute; top:-25px; left:24px; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); box-shadow:0 8px 20px rgba(0,0,0,0.4); }
.service-card h3{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:22px; letter-spacing:0.01em; margin-bottom:10px; }
.service-card p{ color:var(--muted-2); font-size:15px; text-wrap:pretty; }
.service-card .more{ margin-top:16px; color:var(--blue); font-weight:700; font-size:14px; display:inline-flex; align-items:center; gap:6px; }
.service-card:hover .more{ color:#3AA0FF; }

/* ---------- media / images ---------- */
.media{ border-radius:20px; overflow:hidden; border:1px solid var(--line-2); background:#0A0A0C; }
.media img{ width:100%; height:100%; object-fit:cover; display:block; }
.media--4x3{ aspect-ratio:4/3; }
.media--16x9{ aspect-ratio:16/9; }
.media--portrait{ aspect-ratio:4/5; }
.figcap{ font-size:12px; color:var(--dim-2); margin-top:8px; font-family:ui-monospace,monospace; }
.beforeafter{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ba-item{ position:relative; }
.ba-item .tag{ position:absolute; top:12px; left:12px; padding:5px 12px; border-radius:100px; font-weight:800; font-size:12px; letter-spacing:0.06em; text-transform:uppercase; }
.ba-item .tag--before{ background:rgba(0,0,0,0.7); color:#fff; border:1px solid rgba(255,255,255,0.2); }
.ba-item .tag--after{ background:var(--blue); color:#fff; }

/* ---------- two-column feature ---------- */
.split{ display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:clamp(36px,5vw,64px); align-items:center; }
.split--top{ align-items:start; }
.prose p{ font-size:17px; color:var(--muted); margin-bottom:18px; text-wrap:pretty; }
.prose p:last-child{ margin-bottom:0; }
.prose strong{ color:#fff; }
.hl-yellow{ color:var(--yellow); font-weight:700; }

/* ---------- stat cards ---------- */
.stat-wrap{ display:grid; gap:16px; }
.stat-big{ background:linear-gradient(160deg,rgba(11,133,242,0.16),rgba(11,133,242,0.04)); border:1px solid rgba(11,133,242,0.4); border-radius:18px; padding:30px 28px; box-shadow:0 0 60px rgba(11,133,242,0.15) inset; }
.stat-big .num{ font-family:var(--head); font-weight:900; font-size:clamp(56px,10vw,84px); line-height:0.9; color:var(--blue); text-shadow:0 0 40px rgba(11,133,242,0.55); }
.stat-big .lbl{ color:#D5D9DF; font-size:16px; font-weight:500; margin-top:8px; }
.stat-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.stat-sm{ background:var(--panel-a); border:1px solid var(--line-2); border-radius:16px; padding:22px; }
.stat-sm .num{ font-family:var(--head); font-weight:900; font-size:34px; line-height:1; }
.stat-sm .lbl{ color:var(--muted-2); font-size:14px; margin-top:8px; }

/* ---------- calculator ---------- */
.calc{ position:relative; overflow:hidden; background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:22px; padding:clamp(24px,4vw,44px); box-shadow:0 30px 80px rgba(0,0,0,0.6); }
.calc__glow{ position:absolute; top:-140px; left:50%; transform:translateX(-50%); width:520px; height:280px; background:radial-gradient(ellipse, rgba(11,133,242,0.16), transparent 70%); pointer-events:none; }
.tabs{ position:relative; display:inline-flex; padding:5px; background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.09); border-radius:12px; }
.tab{ padding:10px 22px; border-radius:9px; border:none; cursor:pointer; font-family:var(--body); font-weight:700; font-size:14px; transition:all .2s; background:transparent; color:var(--dim); }
.tab.is-active{ background:var(--blue); color:#fff; box-shadow:0 4px 16px rgba(11,133,242,0.4); }
.calc label{ display:block; font-weight:600; color:#fff; margin-bottom:10px; font-size:15px; }
.calc__field{ position:relative; max-width:340px; }
.calc__prefix{ position:absolute; left:18px; top:50%; transform:translateY(-50%); font-size:22px; font-weight:700; color:var(--dim-2); }
.calc input{ width:100%; padding:16px 18px; font-size:22px; font-weight:700; font-family:var(--body); color:#fff; background:#000; border:1.5px solid var(--line-3); border-radius:13px; outline:none; }
.calc input.has-prefix{ padding-left:38px; }
.calc input:focus{ border-color:var(--blue-55); }
.calc__hint{ font-size:13px; color:var(--dim-2); margin-top:8px; }
.calc__results{ position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:18px; margin-top:32px; }
.result{ background:#000; border:1px solid var(--blue-35); border-radius:18px; padding:26px; text-align:center; }
.result--hi{ border-color:var(--blue-55); box-shadow:0 0 40px rgba(11,133,242,0.2); }
.result .cap{ font-size:12px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:#8FC4FF; margin-bottom:10px; }
.result .num{ font-family:var(--head); font-weight:900; font-size:clamp(40px,7vw,60px); color:var(--blue); line-height:1; text-shadow:0 0 34px rgba(11,133,242,0.7); }
.result--hi .num{ text-shadow:0 0 44px rgba(11,133,242,0.9); }
.calc__note{ position:relative; font-size:13px; color:var(--dim-2); margin-top:24px; text-wrap:pretty; }
.calc__note strong{ color:var(--muted-2); }

/* ---------- pricing ---------- */
.price-block{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:22px; padding:clamp(22px,3vw,36px); margin-bottom:22px; }
.price-block__head{ display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; margin-bottom:24px; }
.price-block__head h3{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:26px; }
.price-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(118px,1fr)); gap:12px; }
.price-cell{ border:1px solid var(--line-2); border-radius:13px; padding:16px 12px; text-align:center; background:#000; }
.price-cell .range{ font-size:12px; font-weight:600; color:var(--dim); margin-bottom:7px; }
.price-cell .amt{ font-family:var(--head); font-weight:800; font-size:24px; color:var(--blue); }
.fineprint{ font-size:13px; color:var(--dim-2); margin-top:16px; }
.svc-price{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:18px; padding:26px; }
.svc-price h4{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:20px; color:var(--blue); margin-bottom:18px; }
.price-lines{ display:flex; flex-direction:column; gap:12px; }
.price-line{ display:flex; justify-content:space-between; gap:12px; align-items:baseline; border-bottom:1px dashed rgba(255,255,255,0.12); padding-bottom:11px; }
.price-line span:first-child{ color:var(--muted); font-size:15px; }
.price-line span:last-child{ font-family:var(--head); font-weight:800; color:#fff; font-size:18px; white-space:nowrap; }
.bundle{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:18px; padding:28px; }
.bundle h4{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:20px; margin-bottom:6px; }
.bundle p.sub{ color:var(--muted-2); font-size:14px; margin-bottom:18px; }
.bundle__rows{ display:flex; flex-direction:column; gap:12px; }
.bundle__row{ display:flex; justify-content:space-between; align-items:center; padding:14px 16px; background:#000; border:1px solid var(--line-2); border-radius:12px; }
.bundle__row span:first-child{ color:#CFD3D9; font-weight:600; }
.bundle__row .save{ font-family:var(--head); font-weight:900; font-size:18px; color:var(--blue); }
.bundle__row--best{ background:rgba(240,198,52,0.08); border-color:rgba(240,198,52,0.35); }
.bundle__row--best span:first-child{ color:#fff; font-weight:700; }
.bundle__row--best .save{ color:var(--yellow); }
.maintenance{ position:relative; overflow:hidden; background:linear-gradient(160deg,var(--blue),var(--blue-dk)); border-radius:18px; padding:30px 28px; box-shadow:0 20px 60px rgba(11,133,242,0.4); }
.maintenance__glow{ position:absolute; top:-90px; right:-90px; width:260px; height:260px; background:radial-gradient(circle, rgba(240,198,52,0.4), transparent 65%); border-radius:50%; pointer-events:none; }
.maintenance__spark{ position:absolute; top:20px; right:20px; width:24px; height:24px; filter:drop-shadow(0 0 8px rgba(255,255,255,0.9)); }
.chip-pop{ position:relative; display:inline-block; padding:6px 14px; border-radius:100px; background:var(--yellow); color:#000; font-weight:800; font-size:12px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:18px; }
.maintenance h4{ position:relative; font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:28px; color:#fff; margin-bottom:8px; }
.maintenance p.sub{ position:relative; color:#DDEBFB; font-size:15px; margin-bottom:22px; text-wrap:pretty; }
.maintenance__list{ position:relative; display:flex; flex-direction:column; gap:12px; margin-bottom:26px; }
.maintenance__list .li{ display:flex; gap:10px; align-items:center; color:#fff; font-size:15px; font-weight:500; }
.maintenance .cta{ position:relative; display:block; text-align:center; padding:15px; border-radius:12px; background:#000; color:#fff; font-weight:700; font-size:16px; transition:background .2s ease; }
.maintenance .cta:hover{ background:#111; color:#fff; }

/* ---------- about / owner ---------- */
.about-badges{ display:flex; gap:12px; margin-top:16px; flex-wrap:wrap; }
.about-badges span{ flex:1; min-width:130px; text-align:center; border-radius:12px; padding:15px 10px; font-weight:700; font-size:14px; }
.about-badges .b1{ background:var(--blue); color:#fff; }
.about-badges .b2{ background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.14); color:#fff; }
.owner-meta{ color:var(--dim); font-weight:600; margin-bottom:24px; font-size:15px; }
.mission{ border-left:3px solid var(--yellow); padding:18px 24px; background:rgba(240,198,52,0.06); border-radius:0 12px 12px 0; margin-top:26px; }
.mission h3{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:18px; color:var(--yellow); margin-bottom:10px; }
.mission p{ font-size:16px; color:#CFD3D9; text-wrap:pretty; }

/* ---------- service area ---------- */
.map-wrap{ position:relative; aspect-ratio:1/1; max-width:440px; width:100%; margin:0 auto; border-radius:20px; overflow:hidden; background:#000; border:1px solid var(--blue-30); box-shadow:0 0 60px rgba(11,133,242,0.15) inset; }
.map-wrap .grid-bg{ position:absolute; inset:0; background-image:linear-gradient(rgba(11,133,242,0.12) 1px,transparent 1px),linear-gradient(90deg,rgba(11,133,242,0.12) 1px,transparent 1px); background-size:40px 40px; }
.map-wrap .cap{ position:absolute; bottom:14px; left:50%; transform:translateX(-50%); font-family:ui-monospace,monospace; font-size:11px; color:rgba(255,255,255,0.45); background:#000; padding:6px 12px; border-radius:8px; white-space:nowrap; }
.city-pills{ display:flex; gap:10px; flex-wrap:wrap; }

/* ---------- reviews ---------- */
.reviews{ text-align:center; }
.stars{ font-size:38px; letter-spacing:8px; color:var(--yellow); margin-bottom:22px; filter:drop-shadow(0 0 12px rgba(240,198,52,0.5)); }
.review-btns{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ---------- contact ---------- */
.contact-card{ display:flex; align-items:center; gap:16px; border-radius:16px; padding:22px 24px; transition:background .2s ease, border-color .2s ease; }
.contact-card--call{ background:var(--blue); box-shadow:0 14px 38px rgba(11,133,242,0.4); margin-bottom:16px; }
.contact-card--call:hover{ background:var(--blue-2); }
.contact-card--email{ background:var(--panel-a); border:1px solid var(--line-2); }
.contact-card--email:hover{ border-color:rgba(11,133,242,0.5); }
.contact-card .ico{ display:grid; place-items:center; width:48px; height:48px; border-radius:12px; flex-shrink:0; }
.contact-card--call .ico{ background:rgba(0,0,0,0.25); }
.contact-card--email .ico{ background:rgba(11,133,242,0.12); border:1px solid var(--blue-30); }
.contact-card .k{ display:block; font-size:13px; font-weight:600; }
.contact-card--call .k{ color:rgba(255,255,255,0.8); }
.contact-card--email .k{ color:var(--dim); }
.contact-card--call .v{ display:block; color:#fff; font-size:24px; font-weight:900; font-family:var(--head); }
.contact-card--email .v{ display:block; color:#fff; font-size:17px; font-weight:700; word-break:break-all; }
.form-card{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:22px; padding:clamp(24px,4vw,38px); box-shadow:0 30px 80px rgba(0,0,0,0.6); }
.form-row{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px; margin-bottom:14px; }
.field{ margin-bottom:14px; }
.field label, .form-row label{ display:block; font-weight:600; color:#fff; font-size:13px; margin-bottom:6px; }
.field input, .field select, .field textarea, .form-row input, .form-row select{ width:100%; padding:13px 14px; font-size:15px; font-family:var(--body); color:#fff; background:#000; border:1.5px solid var(--line-3); border-radius:11px; outline:none; }
.field textarea{ resize:vertical; }
.field input:focus, .field select:focus, .field textarea:focus, .form-row input:focus, .form-row select:focus{ border-color:var(--blue-55); }
.form-note{ font-size:12px; color:var(--dim-2); margin-top:12px; text-align:center; }
.form-err{ display:none; background:rgba(255,80,80,0.1); border:1px solid rgba(255,80,80,0.4); color:#ffb3b3; font-size:13px; padding:12px 14px; border-radius:11px; margin-bottom:14px; }
.thankyou{ display:none; text-align:center; padding:34px 10px; }
.thankyou .check{ width:66px; height:66px; border-radius:50%; background:rgba(11,133,242,0.14); border:1px solid rgba(11,133,242,0.4); display:grid; place-items:center; margin:0 auto 22px; }
.thankyou h3{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:28px; margin-bottom:12px; }
.thankyou p{ color:var(--muted); font-size:16px; }

/* ---------- CTA band ---------- */
.cta-band{ position:relative; overflow:hidden; background:linear-gradient(160deg,var(--blue),var(--blue-dk)); }
.cta-band__glow{ position:absolute; top:-120px; right:-80px; width:360px; height:360px; background:radial-gradient(circle, rgba(240,198,52,0.35), transparent 65%); border-radius:50%; pointer-events:none; }
.cta-band .inner{ position:relative; text-align:center; max-width:720px; margin:0 auto; }
.cta-band h2{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:clamp(32px,5vw,56px); color:#fff; margin-bottom:14px; text-wrap:balance; }
.cta-band p{ color:#DDEBFB; font-size:18px; margin-bottom:28px; text-wrap:pretty; }
.cta-band .btn--primary{ background:#000; box-shadow:0 12px 32px rgba(0,0,0,0.4); }
.cta-band .btn--primary:hover{ background:#111; }
.cta-band .btn--outline{ border-color:rgba(255,255,255,0.5); }
.cta-band .btn--outline:hover{ border-color:#fff; background:rgba(255,255,255,0.1); }

/* ---------- footer ---------- */
.site-footer{ background:#000; border-top:1px solid var(--line); }
.site-footer .cols{ max-width:var(--maxw); margin:0 auto; padding:clamp(48px,6vw,72px) 24px 40px; display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:40px; }
.site-footer img{ height:60px; width:auto; border-radius:8px; margin-bottom:16px; }
.site-footer .about{ font-size:14px; color:var(--dim); max-width:280px; text-wrap:pretty; }
.site-footer h4{ color:#fff; font-size:13px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; font-family:var(--body); margin-bottom:16px; }
.site-footer .fcol{ display:flex; flex-direction:column; gap:11px; font-size:15px; }
.site-footer .fcol a{ color:#CFD3D9; }
.site-footer .fcol a:hover{ color:#fff; }
.site-footer .fcol .name{ color:#fff; font-weight:700; }
.site-footer .fcol.muted span{ color:var(--dim); }
.site-footer .legal{ border-top:1px solid rgba(255,255,255,0.07); }
.site-footer .legal .inner{ max-width:var(--maxw); margin:0 auto; padding:22px 24px; display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; font-size:13px; color:var(--dim-2); }
.site-footer .legal .inner .r{ color:var(--dim); }

/* ---------- California map ---------- */
.ca-map{ position:relative; max-width:400px; width:100%; margin:0 auto; }
.ca-map svg{ width:100%; height:auto; display:block; filter:drop-shadow(0 0 26px rgba(11,133,242,0.3)); }
.ca-map__cap{ text-align:center; font-family:ui-monospace,monospace; font-size:11px; color:rgba(255,255,255,0.45); margin-top:14px; }

/* ---------- gallery / feature ---------- */
.gallery{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:14px; }
.gallery .media{ aspect-ratio:4/3; }
.feature-media{ position:relative; border-radius:20px; overflow:hidden; border:1px solid var(--line-2); }
.feature-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.feature-media .badge-float{ position:absolute; left:18px; bottom:18px; display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:100px; background:rgba(0,0,0,0.6); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border:1px solid rgba(255,255,255,0.15); font-weight:700; font-size:14px; color:#fff; }

/* ---------- how it works ---------- */
.steps{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; }
.step{ position:relative; background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:16px; padding:26px 24px; }
.step__n{ font-family:var(--head); font-weight:900; font-size:42px; color:var(--blue); line-height:1; text-shadow:0 0 24px rgba(11,133,242,0.5); }
.step h3{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:19px; margin:12px 0 8px; }
.step p{ color:var(--muted-2); font-size:14px; text-wrap:pretty; }

/* ---------- responsive ---------- */
@media (max-width:899px){
  .nav{ display:none; }
  .burger{ display:grid; }
  .header-cta{ display:none; }
  .callbtn .lbl{ display:none; }
  .callbtn{ width:46px; height:46px; padding:0; gap:0; justify-content:center; background:rgba(255,255,255,0.04); border-color:rgba(255,255,255,0.2); }
  .callbtn svg{ width:20px; height:20px; }
  .nav a.active::after{ display:none; }
  /* compact header on phones so the sticky bar doesn't eat the viewport */
  .site-header .bar{ height:78px; padding:0 16px; }
  .brand img{ height:62px; }
  .hero--tall{ min-height:calc(100vh - 78px); }
}
@media (max-width:640px){
  .beforeafter{ grid-template-columns:1fr; }
  .stat-row{ grid-template-columns:1fr; }
  .hero__ctas .btn{ width:100%; }
}
@media (prefers-reduced-motion:reduce){
  .hero__conic, .hero__sun, .hero__sparkle{ animation:none !important; }
  *{ scroll-behavior:auto !important; }
}

/* =====================================================================
   v3 — real job photos, video hero, RO/DI, before/after, gallery
   ===================================================================== */

/* ---------- video hero ---------- */
.hero--video .hero__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; pointer-events:none; }
.hero--video .hero__scrim{ z-index:1; }
.hero--video .hero__grid,.hero--video .hero__conic,.hero--video .hero__sun,.hero--video .hero__blue,.hero--video .hero__sparkle{ z-index:2; }
.hero--video .hero__inner{ z-index:3; }
@media (prefers-reduced-motion:reduce){ .hero--video .hero__video{ display:none; } }

/* ---------- branded photo placeholders (window washing) ---------- */
.service-card__media--ph,.feature-media--ph{
  display:grid; place-items:center; gap:8px; align-content:center;
  background:
    radial-gradient(ellipse at 50% 40%, rgba(11,133,242,0.18), transparent 70%),
    linear-gradient(160deg,#0C0C0E,#060607);
  border:1px dashed rgba(11,133,242,0.4);
}
.service-card__media--ph .ph-ico{ color:var(--blue); opacity:.9; }
.service-card__media--ph .ph-txt,.feature-media--ph .ph-txt-lg{
  font-family:ui-monospace,monospace; font-size:11.5px; letter-spacing:.04em; color:var(--dim);
}
.feature-media--ph{ border-radius:20px; }
.feature-media--ph .ph-txt-lg{ font-size:13px; margin-top:10px; }

/* ---------- RO/DI card ---------- */
.rodi-card{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:22px; padding:clamp(22px,3vw,32px); box-shadow:0 30px 80px rgba(0,0,0,0.5); }
.rodi-card__cap{ font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#8FC4FF; margin-bottom:18px; }
.rodi-stages{ display:flex; flex-direction:column; gap:10px; }
.rodi-stage{ display:flex; align-items:center; gap:14px; padding:13px 15px; background:#000; border:1px solid var(--line-2); border-radius:13px; position:relative; }
.rodi-stage__n{ display:grid; place-items:center; width:30px; height:30px; flex-shrink:0; border-radius:9px; background:rgba(11,133,242,0.14); border:1px solid var(--blue-30); color:var(--blue); font-family:var(--head); font-weight:900; font-size:16px; }
.rodi-stage__t{ font-weight:700; font-size:15px; color:#fff; }
.rodi-stage__s{ font-size:13px; color:var(--dim); }
.rodi-out{ margin-top:16px; display:flex; align-items:center; gap:16px; padding:18px 20px; border-radius:14px; background:linear-gradient(160deg,rgba(11,133,242,0.18),rgba(11,133,242,0.05)); border:1px solid rgba(11,133,242,0.4); }
.rodi-out__v{ font-family:var(--head); font-weight:900; font-size:40px; line-height:1; color:var(--blue); text-shadow:0 0 30px rgba(11,133,242,0.6); }
.rodi-out__l{ font-size:14px; color:#D5D9DF; font-weight:500; }

/* ---------- before / after slider ---------- */
.ba-slider{ position:relative; max-width:900px; margin:0 auto; border-radius:20px; overflow:hidden; border:1px solid var(--line-2); box-shadow:0 30px 80px rgba(0,0,0,0.55); line-height:0; user-select:none; }
.ba-slider .ba-img{ width:100%; height:auto; display:block; }
.ba-clip{ position:absolute; inset:0; overflow:hidden; clip-path:inset(0 50% 0 0); }
.ba-clip .ba-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ba-handle{ position:absolute; top:0; bottom:0; left:50%; width:3px; background:#fff; transform:translateX(-50%); box-shadow:0 0 18px rgba(0,0,0,.6); pointer-events:none; z-index:3; }
.ba-handle__grip{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:44px; height:44px; border-radius:50%; background:var(--blue); border:2px solid #fff; box-shadow:0 6px 22px rgba(0,0,0,.5); }
.ba-handle__grip::before,.ba-handle__grip::after{ content:""; position:absolute; top:50%; width:0; height:0; border-top:6px solid transparent; border-bottom:6px solid transparent; }
.ba-handle__grip::before{ left:9px; transform:translateY(-50%); border-right:8px solid #fff; }
.ba-handle__grip::after{ right:9px; transform:translateY(-50%); border-left:8px solid #fff; }
.ba-range{ position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:ew-resize; z-index:4; margin:0; }
.ba-tag{ position:absolute; top:14px; padding:6px 13px; border-radius:100px; font-weight:800; font-size:12px; letter-spacing:.06em; text-transform:uppercase; z-index:3; line-height:1.4; }
.ba-tag--before{ left:14px; background:rgba(0,0,0,.72); color:#fff; border:1px solid rgba(255,255,255,.25); }
.ba-tag--after{ right:14px; background:var(--blue); color:#fff; }

/* ---------- gallery ---------- */
.gallery{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; }
.gal-item{ position:relative; padding:0; border:1px solid var(--line-2); border-radius:16px; overflow:hidden; background:#0A0A0C; cursor:zoom-in; aspect-ratio:4/3; transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.gal-item img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease; }
.gal-item:hover{ border-color:var(--blue-55); box-shadow:0 16px 40px rgba(11,133,242,0.18); transform:translateY(-3px); }
.gal-item:hover img{ transform:scale(1.05); }
.gal-item:focus-visible{ outline:2px solid var(--blue); outline-offset:2px; }
.gal-cat{ position:absolute; left:10px; bottom:10px; padding:5px 11px; border-radius:100px; background:rgba(0,0,0,.7); border:1px solid rgba(255,255,255,.18); color:#fff; font-size:11.5px; font-weight:700; letter-spacing:.04em; }

/* ---------- lightbox ---------- */
.lightbox{ position:fixed; inset:0; z-index:200; background:rgba(0,0,0,.94); display:grid; place-items:center; padding:24px; }
.lightbox[hidden]{ display:none; }
.lb-fig{ max-width:min(1100px,92vw); max-height:86vh; display:flex; flex-direction:column; align-items:center; gap:12px; margin:0; }
.lb-fig img{ max-width:100%; max-height:76vh; width:auto; height:auto; border-radius:14px; box-shadow:0 30px 90px rgba(0,0,0,.7); }
.lb-fig figcaption{ color:var(--muted); font-size:14px; text-align:center; max-width:70ch; }
.lb-btn{ position:absolute; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.2); color:#fff; width:48px; height:48px; border-radius:50%; font-size:26px; line-height:1; cursor:pointer; display:grid; place-items:center; transition:background .2s ease; }
.lb-btn:hover{ background:rgba(255,255,255,.18); }
.lb-close{ top:20px; right:20px; }
.lb-prev{ left:16px; top:50%; transform:translateY(-50%); }
.lb-next{ right:16px; top:50%; transform:translateY(-50%); }
@media (max-width:640px){
  .lb-prev{ left:10px; } .lb-next{ right:10px; }
  .lb-btn{ width:42px; height:42px; font-size:22px; }
  .gallery{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; }
}

/* ---------- mobile polish (tap targets + density) ---------- */
@media (max-width:640px){
  /* comfortable tap targets for footer + inline links */
  .site-footer .fcol a{ padding:6px 0; display:inline-block; }
  .site-footer .cols{ gap:28px; }
  /* toggles reach the 44px touch guideline */
  .tab{ min-height:44px; padding:11px 18px; }
  /* keep the before/after handle easy to grab on touch */
  .ba-handle__grip{ width:52px; height:52px; }
  /* tighten oversized display type on small screens */
  .rodi-out__v{ font-size:34px; }
  .stat-big .num{ line-height:0.95; }
  /* section rhythm: a touch tighter so pages aren't endless */
  .section{ padding:clamp(52px,11vw,72px) 0; }
  .sec-head{ margin-bottom:28px; }
}

/* ---------- production chart (measured +13% result) ---------- */
.prodchart{ background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:22px; padding:clamp(20px,3vw,30px); box-shadow:0 30px 80px rgba(0,0,0,0.55); }
.prodchart__head{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; justify-content:space-between; margin-bottom:18px; }
.prodchart__legend{ display:flex; flex-wrap:wrap; gap:18px; }
.prodchart__legend .lg{ display:inline-flex; align-items:center; gap:8px; color:var(--muted); font-size:14px; font-weight:600; }
.prodchart__legend .sw{ width:14px; height:14px; border-radius:4px; display:inline-block; }
.prodchart__legend .sw--before{ background:#3A4048; }
.prodchart__legend .sw--after{ background:linear-gradient(180deg,#3AA0FF,#0B85F2); box-shadow:0 0 12px rgba(11,133,242,0.7); }
.prodchart__badge{ display:inline-flex; align-items:center; gap:7px; padding:9px 16px; border-radius:100px; background:rgba(240,198,52,0.12); border:1px solid rgba(240,198,52,0.42); color:var(--yellow); font-weight:800; font-size:14px; letter-spacing:0.02em; white-space:nowrap; }
.prodchart svg{ display:block; overflow:visible; }
.prodchart__foot{ font-size:13px; color:var(--dim-2); margin-top:16px; text-wrap:pretty; }
.prodchart__foot strong{ color:var(--muted-2); }

/* calculator: measured-uplift line under each figure */
.result__up{ font-size:12.5px; color:var(--dim-2); margin-top:10px; line-height:1.45; text-wrap:pretty; }
.result__up strong{ color:#fff; font-weight:700; }
.result__up .up-tag{ color:var(--yellow); font-weight:800; white-space:nowrap; }

@media (max-width:640px){
  .prodchart__head{ gap:10px; }
  .prodchart__legend{ gap:14px; }
  .prodchart__legend .lg{ font-size:13px; }
  .prodchart__badge{ font-size:13px; padding:8px 14px; }
}

/* ---------- brand green accents ---------- */
.i-green{ font-style:italic; color:var(--green); }
.hl-green{ color:var(--green); font-weight:700; }
/* savings read green (money kept), actions stay blue */
.bundle__row .save{ color:var(--green); }
.prodchart__badge{ background:var(--green-12); border-color:var(--green-35); color:var(--green); }
.prodchart__legend .sw--after{ background:linear-gradient(180deg,var(--blue-2),var(--blue)); }
.result__up .up-tag{ color:var(--green); }
.badge-live .dot{ background:var(--green); box-shadow:0 0 10px var(--green); }
.rodi-out__v{ color:var(--green); }

/* ---------- military / veteran / senior discount ---------- */
.discount{ display:flex; gap:18px; align-items:flex-start; background:linear-gradient(160deg,rgba(140,204,0,0.13),rgba(140,204,0,0.03)); border:1px solid var(--green-35); border-radius:18px; padding:24px 26px; box-shadow:0 0 60px rgba(140,204,0,0.10) inset; }
.discount__ico{ display:grid; place-items:center; width:54px; height:54px; border-radius:14px; background:rgba(140,204,0,0.12); border:1px solid var(--green-35); flex-shrink:0; }
.discount__h{ font-family:var(--head); font-weight:900; text-transform:uppercase; font-size:22px; letter-spacing:0.01em; margin-bottom:8px; color:#fff; }
.discount__pct{ color:var(--green); }
.discount__b{ color:var(--muted); font-size:15.5px; text-wrap:pretty; }
.discount__n{ color:var(--dim-2); font-size:12.5px; margin-top:8px; }

/* ---------- our businesses ---------- */
.biz-banner{ border-radius:20px; overflow:hidden; border:1px solid var(--line-2); background:#000; box-shadow:0 24px 60px rgba(0,0,0,0.55); }
.biz-banner img{ width:100%; height:auto; display:block; }
.biz-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; margin-top:22px; }
.biz{ display:flex; flex-direction:column; gap:7px; background:linear-gradient(180deg,var(--panel-a),var(--panel-b)); border:1px solid var(--line-2); border-radius:16px; padding:22px 20px; color:inherit; transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.biz:hover{ border-color:var(--green-55); transform:translateY(-3px); box-shadow:0 16px 40px rgba(140,204,0,0.14); color:inherit; }
.biz--current{ border-color:var(--blue-35); background:linear-gradient(180deg,rgba(11,133,242,0.10),rgba(11,133,242,0.02)); }
.biz--current:hover{ border-color:var(--blue-55); box-shadow:0 16px 40px rgba(11,133,242,0.16); }
.biz__name{ font-family:var(--head); font-weight:800; text-transform:uppercase; font-size:19px; color:#fff; line-height:1.05; }
.biz__tag{ display:inline-block; margin-left:6px; padding:3px 9px; border-radius:100px; background:rgba(11,133,242,0.18); border:1px solid var(--blue-35); color:#8FC4FF; font-family:var(--body); font-size:10.5px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; vertical-align:middle; }
.biz__desc{ color:var(--muted-2); font-size:14px; text-wrap:pretty; }
.biz__tel{ display:inline-flex; align-items:center; gap:8px; margin-top:4px; color:var(--green); font-weight:800; font-size:17px; font-family:var(--head); letter-spacing:0.02em; }
.biz--current .biz__tel{ color:var(--blue); }
.biz-tagline{ text-align:center; margin-top:24px; font-family:var(--head); font-weight:800; text-transform:uppercase; letter-spacing:0.18em; font-size:14px; color:var(--dim); }

@media (max-width:640px){
  .discount{ flex-direction:column; gap:14px; padding:20px; }
  .discount__h{ font-size:19px; }
  .biz-grid{ gap:12px; }
  .biz{ padding:18px; }
}
.site-footer .foot-discount{ display:flex; align-items:center; gap:9px; margin-top:14px; color:var(--green); font-size:13.5px; font-weight:700; }
