/* V06 proposal identity. Selective textures: hero / proof / one accent card only. */
.brand-mark{background:none;border-radius:0;width:49px;height:49px}.brand-mark svg{display:block;width:100%;height:100%}.brand-name{letter-spacing:-.025em}.hero{border-bottom:1px solid var(--line)}.hero-copy{position:relative;z-index:1}.hero:before{pointer-events:none}.proof{position:relative}.proof>.wrap{position:relative}.service-card{box-shadow:0 3px 15px #102d3704}.hero-media img{transition:transform 1s}.hero-media:hover img{transform:scale(1.025)}.site-header{border-top:3px solid var(--ink)}
@media(max-width:760px){.brand-mark{width:41px;height:41px}.brand-name{font-size:17px}.brand-small{font-size:7px}.nav{min-height:70px}.hero-media:hover img{transform:none}}
@media(max-width:360px){.brand-mark{width:34px;height:34px}.brand-name{font-size:15px}.brand-small{font-size:6px}.brand{gap:7px}}
@media(prefers-reduced-motion:reduce){.hero-media img{transition:none}.hero-media:hover img{transform:none}}
/* FROSTLINE: air currents, quiet icy gradients, rounded engineering. */
body{font-family:"Avenir Next","Segoe UI",Arial,sans-serif;background:var(--paper)}h1,h2,.brand-name{font-family:"Trebuchet MS","Avenir Next",sans-serif}h1{font-weight:700;letter-spacing:-.06em}h2{font-weight:700;letter-spacing:-.045em}.hero{background:#092f3a}.hero:before{background:url('texture.svg') right center/900px auto no-repeat,radial-gradient(ellipse at 18% 5%,#26677880,transparent 63%),linear-gradient(125deg,#123e4a,#08242d)}.hero-inner{min-height:610px}.hero-copy{padding-block:68px}.hero-media{border-radius:90px 0 0 0;border-left:1px solid #75c3d942}.hero-media:after{background:linear-gradient(0deg,#062734ef,transparent 55%)}.hero-actions .btn:first-child{box-shadow:0 0 0 5px #7ce9ed0b}.btn{border-radius:12px}.btn-dark{background:#0f4854;color:#c6fbff}.nav-links a:hover{color:#166c7d}.brand-small{color:#446e77}.proof{background:radial-gradient(ellipse at 0% 100%,#d6f0f4,transparent 60%),var(--tint)}.proof:before{content:"";position:absolute;inset:0;background:url('texture.svg') right 55%/600px no-repeat;opacity:.55;pointer-events:none}.service-card{border-radius:25px}.service-icon{background:#e1f3f6;color:#165d6c}.compact-card:last-child{background:linear-gradient(120deg,#fff 10%,#f0fafb)}.contact-info{box-shadow:0 12px 40px #19475708;border-radius:25px}.kicker:before{border-radius:2px;transform:rotate(45deg);background:#28849b}.service-note{border-left-color:#3f9daf}.photo-label .tag{background:#0c3a4680}.footer{background:#092f3a}
@media(max-width:760px){.hero-inner{min-height:unset}.hero-copy{padding-block:40px 35px}.hero-media{border-radius:36px 0 0 0;border-left:0}.hero:before{background-position:60% 0%;background-size:800px auto}.proof:before{opacity:.25}}

/* V07 shared depth system: solid fallbacks first, glass only on small reading surfaces. */
.site-header{background:var(--fx-header-solid);border-bottom-color:var(--fx-rim);box-shadow:0 4px 18px var(--fx-shadow-soft);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero-media{box-shadow:-18px 12px 48px var(--fx-media-shadow)}
.hero-media:before{content:"";position:absolute;inset:0;z-index:1;border:1px solid rgba(255,255,255,.18);border-radius:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.13);pointer-events:none}
.photo-label .tag{background:rgba(10,31,37,.86);border-color:rgba(255,255,255,.35);box-shadow:0 5px 16px rgba(0,0,0,.16);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero-media figcaption{display:table;max-width:100%;padding:7px 10px;border:1px solid rgba(255,255,255,.2);border-radius:var(--fx-chip-radius);background:rgba(9,25,31,.86);color:#f5fbff;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.service-card{box-shadow:0 2px 4px var(--fx-shadow-soft),0 12px 28px var(--fx-shadow-soft);border-color:var(--fx-card-rim);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.service-card:hover{transform:none;box-shadow:0 2px 4px var(--fx-shadow-soft),0 12px 28px var(--fx-shadow-soft)}
.service-icon{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 8px var(--fx-shadow-soft)}
.service-photo figcaption{position:relative}
.reviews{gap:18px}
.review,.review:last-child{padding:22px;border:1px solid var(--fx-card-rim);border-radius:var(--fx-review-radius);background:var(--fx-review-solid);box-shadow:0 2px 3px var(--fx-shadow-soft),0 10px 24px var(--fx-shadow-soft)}
.contact-info{box-shadow:0 2px 4px var(--fx-shadow-soft),0 18px 38px var(--fx-shadow-soft)}
.btn{box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 5px 14px var(--fx-button-shadow)}
.hero-actions .btn:first-child{animation:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 6px 20px var(--fx-button-shadow),0 0 0 4px var(--fx-accent-wash)}
.btn:hover{transform:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 5px 14px var(--fx-button-shadow)}
.hero .btn-outline{background:var(--fx-outline-solid);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 12px var(--fx-shadow-soft)}
.mobile-bar{background:var(--fx-header-solid);box-shadow:0 -5px 24px var(--fx-shadow-soft);-webkit-backdrop-filter:none;backdrop-filter:none}
.reveal{transition:opacity .48s ease,transform .48s ease}
html.motion .reveal.is-waiting{transform:translateY(10px)}
.hero-copy{animation-duration:.5s}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .site-header,.mobile-bar{background:var(--fx-header-glass);-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}
 .photo-label .tag{background:var(--fx-tag-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
 .hero-media figcaption{background:rgba(9,25,31,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
 .review,.review:last-child{background:var(--fx-review-glass);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
 .hero .btn-outline{background:var(--fx-outline-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
}
@media(hover:hover) and (pointer:fine){
 .service-card:hover{transform:translateY(-3px);border-color:var(--fx-hover-rim);box-shadow:0 4px 8px var(--fx-shadow-soft),0 18px 36px var(--fx-shadow-lift)}
 .btn:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 9px 22px var(--fx-button-shadow)}
 .hero-actions .btn:first-child:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 10px 24px var(--fx-button-shadow),0 0 0 4px var(--fx-accent-wash)}
}
@media(max-width:760px){
 .review,.review:last-child{padding:20px}.reviews{gap:14px}
 .hero-media{box-shadow:0 10px 28px var(--fx-media-shadow)}
 .hero-media figcaption{max-width:100%;font-size:9px;line-height:1.55}
 .hero-media:hover img{transform:none}
}
@media(prefers-reduced-transparency:reduce){
 .site-header,.mobile-bar{background:var(--fx-header-solid);-webkit-backdrop-filter:none;backdrop-filter:none}
 .review,.review:last-child{background:var(--fx-review-solid);-webkit-backdrop-filter:none;backdrop-filter:none}
 .photo-label .tag,.hero-media figcaption{background:#102c35;-webkit-backdrop-filter:none;backdrop-filter:none}
 .hero .btn-outline{background:var(--fx-outline-solid);-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce){
 .hero-copy,.hero-actions .btn:first-child{animation:none!important}
 .service-card,.btn,.reveal,.hero-media img{transition:none!important}
 .service-card:hover,.btn:hover,.hero-media:hover img,.reveal,html.motion .reveal.is-waiting{transform:none!important}
}

/* V07 Frostline: cool frost, cyan edge light, clear ice-chip captions. */
body{--fx-header-solid:#f4fbfc;--fx-header-glass:rgba(244,251,252,.88);--fx-rim:rgba(125,186,200,.4);--fx-card-rim:rgba(143,183,195,.42);--fx-hover-rim:#6aaebd;--fx-shadow-soft:rgba(15,63,79,.055);--fx-shadow-lift:rgba(15,63,79,.1);--fx-media-shadow:rgba(0,13,24,.32);--fx-button-shadow:rgba(25,135,151,.2);--fx-accent-wash:rgba(124,233,237,.075);--fx-review-solid:#f8fdff;--fx-review-glass:rgba(250,254,255,.72);--fx-review-radius:20px;--fx-chip-radius:12px;--fx-tag-glass:rgba(10,47,59,.68);--fx-outline-solid:#164552;--fx-outline-glass:rgba(181,240,248,.07)}
.hero{box-shadow:inset 0 -1px 0 rgba(124,233,237,.18)}
.hero h1 em{text-shadow:0 2px 26px rgba(124,233,237,.14)}
.hero .btn-outline{border-color:rgba(190,235,243,.44)}
.service-card{background:linear-gradient(145deg,#fff 55%,#f5fbfc)}
.review{border-top-color:rgba(255,255,255,.95)}
.contact-info{background:linear-gradient(135deg,#fff,#f1fafb)}
@media(hover:hover) and (pointer:fine){.hero-media:hover img{transform:scale(1.015)}}

/* V08 Frostline / ice-crystal frost; visible local grain, bounded highlights. */
body{--pop-grain:url('frost.svg');--pop-header-solid:#f4fbfc;--pop-header-glass:rgba(244,251,252,.9);--pop-review-solid:#f6fcff;--pop-review-glass:rgba(246,252,255,.86);--pop-contact-solid:#eff9fb;--pop-contact-glass:rgba(239,249,251,.9);--pop-chip-solid:#123e4b;--pop-chip-glass:rgba(12,42,53,.86);--pop-primary-solid:#9aecef;--pop-primary-glass:rgba(154,236,239,.94);--pop-primary-ink:#092f3a;--pop-dark-solid:#124653;--pop-dark-glass:rgba(18,70,83,.96);--pop-dark-ink:#e1fcff;--pop-nav-solid:#9aecef;--pop-nav-glass:rgba(154,236,239,.94);--pop-nav-ink:#092f3a;--pop-outline-solid:#123d49;--pop-outline-glass:rgba(18,61,73,.94);--pop-outline-ink:#f2fcff;--pop-shadow-near:rgba(9,49,66,.19);--pop-shadow-far:rgba(10,74,93,.28);--pop-media-shadow:rgba(0,15,30,.58);--pop-button-shadow:rgba(4,104,126,.38);--pop-rim:rgba(90,158,178,.45);--pop-highlight:rgba(255,255,255,.85);--pop-button-rim:rgba(191,246,255,.5);--pop-grain-size:128px 128px;--pop-sheen:linear-gradient(125deg,rgba(255,255,255,.16),rgba(215,248,255,.03) 48%,rgba(125,208,230,.08));--pop-button-sheen:linear-gradient(125deg,rgba(255,255,255,.08),rgba(255,255,255,0) 44%,rgba(35,126,152,.04));--pop-muted:#344f59;--pop-link:#164552;--pop-chip-sheen:linear-gradient(125deg,rgba(255,255,255,.06),rgba(255,255,255,0) 50%,rgba(0,0,0,.04));}

/* V08 POP + FROST: stronger grounded depth; local grain is painted behind text. */
.site-header,.mobile-bar{background:var(--pop-header-solid);-webkit-backdrop-filter:none;backdrop-filter:none}
.review,.review:last-child{background:var(--pop-review-solid)}
.contact-info{background:var(--pop-contact-solid)}
.photo-label .tag,.hero-media figcaption{background:var(--pop-chip-solid);color:#f5fbff}
.site-header,.mobile-bar,.review,.review:last-child,.contact-info,.photo-label .tag,.hero-media figcaption{background-image:var(--pop-grain),var(--pop-sheen);background-size:var(--pop-grain-size),100% 100%;background-repeat:repeat,no-repeat;-webkit-backdrop-filter:none;backdrop-filter:none}
.photo-label .tag,.hero-media figcaption{background-image:var(--pop-grain),var(--pop-chip-sheen)}
.site-header{box-shadow:0 3px 7px var(--pop-shadow-near),0 14px 32px -8px var(--pop-shadow-far);border-bottom-color:var(--pop-rim)}
.hero-media{box-shadow:-12px 3px 14px var(--pop-shadow-near),-26px 22px 58px -8px var(--pop-media-shadow)}
.service-card,.service-card:hover{box-shadow:inset 0 1px 0 var(--pop-highlight),0 4px 8px -2px var(--pop-shadow-near),0 18px 32px -9px var(--pop-shadow-far);border-color:var(--pop-rim)}
.review,.review:last-child{box-shadow:inset 0 1px 0 var(--pop-highlight),0 3px 7px -2px var(--pop-shadow-near),0 16px 28px -9px var(--pop-shadow-far);border-color:var(--pop-rim)}
.contact-info{box-shadow:inset 0 1px 0 var(--pop-highlight),0 5px 10px -3px var(--pop-shadow-near),0 24px 42px -12px var(--pop-shadow-far)}
.photo-label .tag,.hero-media figcaption{box-shadow:inset 0 1px 0 rgba(255,255,255,.23),0 3px 7px rgba(0,0,0,.2),0 10px 20px -7px rgba(0,0,0,.4);border-color:rgba(225,249,255,.45)}
.mobile-bar{box-shadow:0 -3px 8px var(--pop-shadow-near),0 -18px 38px -10px var(--pop-shadow-far)}
.brand-small,.review-credit a,.contact-info address,.contact-info .address-note,.contact-info .hours span,.contact-info p{color:var(--pop-muted)}
.contact-info .text-link{color:var(--pop-link)}
.service-icon,.mini-story img{box-shadow:0 4px 8px -2px var(--pop-shadow-near),0 12px 22px -7px var(--pop-shadow-far)}
/* All CTA variants receive physical frost, including primary and dark buttons. */
.btn{--button-solid:var(--pop-primary-solid);--button-glass:var(--pop-primary-glass);--button-ink:var(--pop-primary-ink)}
.btn.btn-dark{--button-solid:var(--pop-dark-solid);--button-glass:var(--pop-dark-glass);--button-ink:var(--pop-dark-ink)}
.nav .btn{--button-solid:var(--pop-nav-solid);--button-glass:var(--pop-nav-glass);--button-ink:var(--pop-nav-ink)}
.btn.btn-outline,.hero .btn-outline{--button-solid:var(--pop-outline-solid);--button-glass:var(--pop-outline-glass);--button-ink:var(--pop-outline-ink)}
.btn,.nav .btn,.hero .btn,.hero-actions .btn:first-child,.mobile-bar .btn{background:var(--button-solid);background-image:var(--pop-grain),var(--pop-button-sheen);background-size:var(--pop-grain-size),100% 100%;background-repeat:repeat,no-repeat;color:var(--button-ink);border:1px solid var(--pop-button-rim);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -1px 0 rgba(0,0,0,.12),0 4px 7px -2px var(--pop-shadow-near),0 12px 24px -5px var(--pop-button-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero-actions .btn:first-child{animation:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(0,0,0,.12),0 5px 10px -3px var(--pop-shadow-near),0 16px 30px -6px var(--pop-button-shadow),0 0 0 4px var(--fx-accent-wash)}
.btn:hover{transform:none}
/* Solid surfaces above remain readable even when backdrop filtering is unavailable. */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .site-header,.mobile-bar{background-color:var(--pop-header-glass);-webkit-backdrop-filter:blur(28px) saturate(130%);backdrop-filter:blur(28px) saturate(130%)}
 .review,.review:last-child{background-color:var(--pop-review-glass);-webkit-backdrop-filter:blur(20px) saturate(115%);backdrop-filter:blur(20px) saturate(115%)}
 .contact-info{background-color:var(--pop-contact-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
 .photo-label .tag,.hero-media figcaption{background-color:var(--pop-chip-glass);-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%)}
 .btn,.nav .btn,.hero .btn,.hero-actions .btn:first-child,.mobile-bar .btn{background-color:var(--button-glass);-webkit-backdrop-filter:blur(24px) saturate(125%);backdrop-filter:blur(24px) saturate(125%)}
}
@media(hover:hover) and (pointer:fine){
 .service-card:hover{transform:translateY(-3px);box-shadow:inset 0 1px 0 var(--pop-highlight),0 6px 12px -3px var(--pop-shadow-near),0 25px 42px -10px var(--pop-shadow-far)}
 .btn:hover,.hero-actions .btn:first-child:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 6px 12px -3px var(--pop-shadow-near),0 20px 32px -7px var(--pop-button-shadow)}
}
@media(max-width:760px){
 .hero-media{box-shadow:0 6px 12px var(--pop-shadow-near),0 22px 42px -10px var(--pop-media-shadow)}
 .hero-media:hover img{transform:none}
}
/* Either preference gets an opaque, untextured surface; movement is also removed below. */
@media(prefers-reduced-transparency:reduce),(prefers-reduced-motion:reduce){
 .site-header,.mobile-bar{background:var(--pop-header-solid)}
 .review,.review:last-child{background:var(--pop-review-solid)}
 .contact-info{background:var(--pop-contact-solid)}
 .photo-label .tag,.hero-media figcaption{background:var(--pop-chip-solid)}
 .btn,.nav .btn,.hero .btn,.hero-actions .btn:first-child,.mobile-bar .btn{background:var(--button-solid)}
 .site-header,.mobile-bar,.review,.review:last-child,.contact-info,.photo-label .tag,.hero-media figcaption,.btn,.nav .btn,.hero .btn,.hero-actions .btn:first-child,.mobile-bar .btn{background-image:none;-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media(prefers-reduced-motion:reduce){
 .hero-copy,.hero-actions .btn:first-child{animation:none!important}
 .service-card,.btn,.reveal,.hero-media img{transition:none!important}
 .service-card:hover,.btn:hover,.hero-media:hover img,.reveal,html.motion .reveal.is-waiting{transform:none!important}
}
