/* ===== v7 ZEN LIGHT THEME (see BRAND_ZEN.md) ===== */
:root{--mist:#F4F8FB;--ice:#E6F0F7;--sky:#CFE0EE;--surface:#FFFFFF;--line:#D3DEE8;--slate:#22344A;--ink:#1E3A5F;--gray:#526375;--accent:#2B5D8C;--accent-dk:#1E4570;--soft:#4F7CA8;--flag:#8A5A00;--flag-bg:#FFF3D6}
html{scroll-behavior:smooth}
body,.v3{background:var(--mist);color:var(--slate)}
header{background:rgba(244,248,251,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.logo{color:var(--ink)}nav a{color:var(--gray)}nav a:hover{color:var(--accent)}
.v3 section{padding:120px 0}.wrap{max-width:1100px}
.v3 h2{color:var(--ink);font-weight:300}.v3 .sub,.sub{color:var(--gray)}.zen-line{font-style:italic;letter-spacing:.06em;color:var(--accent)!important;margin-bottom:4px}
.v3 .dark2{background:var(--ice)}.v3 #services,.v3 #experience,.v3 #estimator,.v3 #reviews{background:var(--mist)}
.hero3{background:linear-gradient(120deg,#EAF2F9,#F7FAFD 40%,#DCEAF5 70%,#F1F6FA);background-size:300% 300%;animation:drift 40s ease-in-out infinite alternate}
@keyframes drift{from{background-position:0% 40%}to{background-position:100% 60%}}
.hero3 .hero-h1{font-weight:300;font-size:2.7rem;letter-spacing:.02em;text-transform:none;color:var(--ink);margin:.6em 0 .2em}
.hero3 .subline{color:var(--accent)!important;font-size:1.25rem;letter-spacing:.04em}
.tagline,.hero3 .tagline{color:var(--gray)!important}.hero3 .lede{color:var(--slate)}
.hero3-logo{width:300px}
.btn{background:var(--accent);color:#fff;border-radius:999px;transition:background .6s ease-in-out}.btn:hover{background:var(--accent-dk)}
.btn.alt,.v3 .btn.alt{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.v3 .note,.note,.hero a:not(.btn){color:var(--gray)}
.toggle button{color:var(--gray);border-color:var(--line);background:var(--surface)}.toggle button[aria-selected=true]{background:var(--accent);color:#fff;border-color:var(--accent)}
.toggle button:focus-visible,.v3 summary:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.side li,.v4 .side li{border-bottom-color:var(--line)}.v4 .col h3{color:var(--gray)}.v4 .col.us h3{color:var(--accent)}.v4 .side.them li{color:var(--gray)}.v4 .side.them .bi{opacity:.45}
.svc details{background:var(--surface);border-color:var(--line);border-radius:14px;transition:border-color .8s ease-in-out,box-shadow .8s ease-in-out}.svc details:hover,.svc details[open]{border-color:var(--soft);box-shadow:0 8px 30px rgba(30,58,95,.07)}
.svc summary{color:var(--ink)}.svc summary:after{color:var(--soft)}.svc p{color:var(--gray)}.svc a{color:var(--accent)}
.promise{border-left-color:var(--sky)}.promise li:before{border-color:var(--soft);background:var(--ice)}.promise li.in:after{color:var(--accent)}.promise h3{color:var(--ink)}.promise p{color:var(--gray)}
.chips span{border-color:var(--line);color:var(--slate);background:var(--surface);border-radius:999px}
.tl-line{background:var(--line)}.tl-line i{background:linear-gradient(var(--accent),var(--sky))}.tl-item:before{background:var(--soft)}.tl-item b{color:var(--ink)}.tl-item p{color:var(--gray)}
.statband{background:linear-gradient(90deg,var(--ice),var(--sky),var(--ice))!important}.stats .num,.stats .plus{color:var(--ink)}.stats p{color:var(--gray)}.stats em{color:var(--flag)}
.est label{color:var(--slate)}.est input,.est select{background:var(--surface);color:var(--slate);border-color:var(--line)}
.est-out .card{background:var(--surface);border-color:var(--line);color:var(--slate)}.est-out h3{color:var(--ink)}
.sline{background:var(--line)}.sline i{background:var(--soft);transition:width 2.6s ease-in-out}.st b{background:var(--surface);border-color:var(--soft);color:var(--ink)}.st h3{color:var(--ink)}.st p{color:var(--gray)}
.story{background:var(--surface);border-color:var(--sky);border-radius:14px}.sample-flag{background:var(--flag-bg);color:var(--flag)}.story-logo{border-color:var(--line);color:var(--gray)}.story h3{color:var(--ink)}.story .who{color:var(--gray)}
.paid>div{border-top-color:var(--sky)}.paid h3{color:var(--ink)}.paid p{color:var(--gray)}
.v3 .cta,.cta{background:var(--ice);color:var(--slate)}.cta h2{color:var(--ink)}
footer,.v3 footer{background:var(--ink);color:#D6E2EE;border-top:0}footer a{color:#fff}.foot-slogan{font-style:italic;color:#fff;letter-spacing:.06em;margin:0 0 10px}
.v4 .dr{color:var(--gray)}.v4 .exp-head b{color:var(--ink)}
.v4 .texture{background:linear-gradient(var(--mist),var(--ice))}.v4 .texture canvas{opacity:.5}
.rv{transform:translateY(10px);transition:opacity 1.4s ease-in-out,transform 1.4s ease-in-out}
.compare .side,.v4 .pane{animation:fade 1s ease-in-out}
#chat-btn{background:var(--accent);border:0;border-radius:999px;color:#fff}#chat{border-radius:16px}#chat .hd{background:var(--ink)}.me{background:var(--accent)}.bot{background:var(--ice);color:var(--slate)}#chat form button{background:var(--accent)}
.disc{background:var(--ice);border-color:var(--line);color:var(--slate)}legend{color:var(--ink)}input,select,textarea{border-color:#B8C7D6;border-radius:8px}.small{background:var(--ice)}th{background:var(--ice)}.badge{background:var(--sky);color:var(--ink)}
a{color:var(--accent)}h1,h2,h3{color:var(--ink)}
@media(max-width:600px){.hero3-logo{width:210px}.hero3 .hero-h1{font-size:1.85rem}header .logo{letter-spacing:.08em;font-size:.8rem;gap:8px;white-space:nowrap}header .logo img{height:32px}nav a{letter-spacing:.06em;font-size:.68rem;white-space:nowrap}.v3 section{padding:80px 0}}
@media(prefers-reduced-motion:reduce){.hero3{animation:none}.rv{transition:none;opacity:1;transform:none}.sline i,.btn,.svc details{transition:none}html{scroll-behavior:auto}}
