/* WAQAR / AIRFLOW EDITION — unified visual system */
:root{color-scheme:light;--paper:#F6F7F1;--ink:#214C3A;--muted:#52665B;--panel:#E5ECE5;--line:#D4DCD2;--accent:#D6B54F;--cool:#D9E8EA;--soft:#FCFCF8;--button:#214C3A;--buttontext:#F8F8F1;--navy:#17364B;--lime:#DCEB83;--page:min(1360px,calc(100% - 88px));--radius:8px;--ease:cubic-bezier(.2,.72,.22,1)}
html{scroll-behavior:auto;scroll-padding-top:100px;overflow-x:clip}body{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:clip}h1,h2,h3,.hero h1,.page-hero h1,.section-intro h2,.section-heading h2,.process-band h2,.proof-copy h2,.contact-banner h2,.detail-copy h2,.pricing-lead h2,.reviews-note h2,.about-intro h2,.notice-band h2{font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;font-weight:500;letter-spacing:-.055em}a{transition:color .2s ease}::selection{background:var(--lime);color:var(--ink)}
.topline{background:var(--ink);color:#E9EFE6;border-bottom:0;padding:9px max(28px,calc((100vw - 1360px)/2));font-size:9px;letter-spacing:.14em}.topline a{color:#F7F6EF}.topline-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:9px}.topline-sep{opacity:.5;margin:0 8px}.site-header{padding:15px max(28px,calc((100vw - 1360px)/2));background:rgba(248,249,244,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(33,76,58,.1)}.brand{font-size:12px;letter-spacing:.035em}.brand b{color:#BA9A3D;font-weight:600}.brand-mark{border-radius:50% 50% 50% 8px;background:var(--cool);border:1px solid rgba(33,76,58,.15)}.nav-link{font-size:12px}.nav-contact{border-radius:3px;background:var(--ink);color:#F8F8F1;padding:12px 17px;position:relative;overflow:hidden;transition:background .22s ease,transform .22s var(--ease)}.nav-contact:hover{background:#173A2C;transform:translateY(-2px)}.menu-toggle{border-radius:4px}
.section-pad{padding-left:max(28px,calc((100vw - 1360px)/2));padding-right:max(28px,calc((100vw - 1360px)/2))}.micro-label{font-size:9px;letter-spacing:.14em}.status-dot{background:var(--accent)}
.hero-unified{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(36px,5.2vw,86px);min-height:0;padding-top:clamp(58px,7vw,100px);padding-bottom:clamp(58px,7vw,90px);align-items:center}.hero-unified .hero-copy{position:relative;z-index:2;max-width:620px}.hero-unified h1{font-size:clamp(3.35rem,6.5vw,6.5rem);line-height:.92;letter-spacing:-.07em;margin:25px 0 24px;max-width:720px}.hero-unified h1 em{font-style:italic;color:#6B7D6F;font-weight:400}.hero-unified .hero-lede{max-width:520px;font-size:clamp(16px,1.35vw,18px);color:#506257;line-height:1.72}.hero-unified .hero-actions{margin-top:26px}.button{position:relative;min-height:50px;padding:14px 18px;border-radius:3px;font-size:12px;gap:16px;overflow:hidden;transition:transform .22s var(--ease),background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.button:before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.11);transform:translateX(-105%);transition:transform .35s var(--ease);pointer-events:none}.button:hover:before{transform:translateX(0)}.button-primary{background:var(--ink);border-color:var(--ink);box-shadow:0 4px 0 rgba(21,54,40,.08)}.button-primary:hover{background:#173A2C;box-shadow:0 8px 22px rgba(25,59,44,.14)}.button-quiet{background:transparent;border-color:#9DAEA0}.button-quiet:hover{background:#E9EEE7;border-color:var(--ink)}.button-light{background:#F8F7EF;border-color:#F8F7EF;color:var(--ink)}.button-arrow{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.12);transition:transform .22s var(--ease)}.button:hover .button-arrow{transform:translate(2px,-2px)}.hero-rating{display:flex;align-items:center;gap:14px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);max-width:410px}.rating-stars{color:#B59332;letter-spacing:.13em;font-size:14px;white-space:nowrap}.hero-rating>span{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--muted)}.hero-rating strong{color:var(--ink);font-size:12px}.hero-rating a{border-bottom:1px solid rgba(33,76,58,.3);padding-bottom:2px}.hero-footnote{margin-top:30px;font-size:9px;letter-spacing:.12em}.foot-line{background:var(--accent)}
.hero-art{position:relative;min-width:0;margin:0 18px 22px 0;overflow:visible}.hero-main-photo{position:relative;z-index:1;width:100%;aspect-ratio:1.46;min-height:350px;max-height:585px;overflow:hidden;border-radius:26px 26px 76px 26px;background:var(--panel);box-shadow:0 22px 55px rgba(31,58,43,.11)}.hero-main-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 51%;filter:saturate(.9);transition:transform .8s var(--ease)}.hero-main-photo:hover>img{transform:scale(1.025)}.photo-chip{position:absolute;left:17px;bottom:17px;display:flex;gap:8px;align-items:center;padding:10px 12px;background:rgba(248,248,241,.95);color:var(--ink);font:8px var(--mono);letter-spacing:.1em}.photo-chip .status-dot{width:5px;height:5px}.hero-image-index{position:absolute;right:17px;top:17px;padding:9px 10px;border:1px solid rgba(255,255,255,.48);color:#fff;background:rgba(20,45,35,.25);font:10px var(--mono);letter-spacing:.1em;backdrop-filter:blur(5px)}.hero-image-index i{font-style:normal;opacity:.6;margin:0 6px}.photo-float{position:absolute;z-index:3;width:clamp(124px,14vw,186px);padding:7px;background:#FBFBF7;box-shadow:0 12px 30px rgba(20,47,35,.18);border:1px solid rgba(33,76,58,.09)}.photo-float img{width:100%;height:clamp(96px,11vw,144px);object-fit:cover;display:block}.photo-float span{display:block;padding:8px 3px 3px;font:8px var(--mono);letter-spacing:.08em;color:var(--muted)}.photo-float-one{top:-22px;right:-24px;transform:rotate(2.5deg);animation:float-one 6.4s ease-in-out infinite}.photo-float-two{left:-37px;bottom:38px;transform:rotate(-3deg);animation:float-two 7.2s ease-in-out -1.3s infinite}.photo-float-three{right:4px;bottom:-51px;transform:rotate(2deg);animation:float-three 6.8s ease-in-out -2.1s infinite}.airflow-doodle{position:absolute;z-index:2;right:-56px;top:41%;width:100px;height:55px;fill:none;stroke:#C6A348;stroke-width:1.2;opacity:.9;overflow:visible}.hero-art::before{content:"";position:absolute;z-index:0;width:200px;height:200px;border:1px solid rgba(33,76,58,.12);border-radius:50%;right:14%;top:-11%;pointer-events:none}.hero-art::after{content:"";position:absolute;z-index:0;width:95px;height:95px;background:var(--cool);border-radius:50%;right:5%;bottom:-36px;opacity:.85;pointer-events:none}@keyframes float-one{0%,100%{transform:translate3d(0,0,0) rotate(2.5deg)}50%{transform:translate3d(0,-15px,0) rotate(1deg)}}@keyframes float-two{0%,100%{transform:translate3d(0,0,0) rotate(-3deg)}50%{transform:translate3d(0,12px,0) rotate(-1.2deg)}}@keyframes float-three{0%,100%{transform:translate3d(0,0,0) rotate(2deg)}50%{transform:translate3d(0,-12px,0) rotate(3.2deg)}}
.service-ribbon-unified{padding:18px max(28px,calc((100vw - 1360px)/2));background:var(--ink);justify-content:space-between;gap:18px;color:#F1F3EA;font-size:9px;letter-spacing:.12em}.service-ribbon-unified a{color:#E9D58A;border-bottom:1px solid rgba(233,213,138,.6);padding-bottom:3px}.service-ribbon-unified .ribbon-dot{background:var(--accent)}
.story-section{background:#FBFBF7}.intro-left{max-width:1000px;text-align:left;margin:0 0 48px}.intro-left .micro-label{justify-content:flex-start}.intro-left h2{font-size:clamp(2.8rem,5.3vw,5rem);max-width:850px;margin:18px 0}.intro-left h2 em,.section-heading h2 em,.visual-chapter h2 em,.reviews-home h2 em,.location-copy h2 em,.estimate-intro h2 em{color:#718776;font-weight:400}.intro-left p{max-width:690px;margin:0;color:var(--muted);font-size:16px;line-height:1.8}.story-grid-unified{grid-template-columns:minmax(0,1.05fr) minmax(0,.78fr);gap:clamp(38px,7vw,110px);max-width:1240px}.story-visual{top:112px}.story-image-frame{height:min(64vh,620px);min-height:380px;border-radius:22px 22px 78px 22px;overflow:hidden;box-shadow:0 20px 50px rgba(30,58,42,.08)}.story-image{opacity:0;transform:translateY(3px);clip-path:none;transition:opacity .24s ease,transform .24s ease;will-change:opacity}.story-image.is-current{opacity:1;transform:translateY(0);clip-path:none}.story-step{min-height:42vh;opacity:.56;padding:32px 0;transition:opacity .24s ease}.story-step.is-current{opacity:1}.story-step h3{font-size:clamp(2rem,3.1vw,3.4rem);letter-spacing:-.055em;margin:17px 0 12px}.story-step p{font-size:14px;line-height:1.8;max-width:430px}.story-step-image{border-radius:14px;object-position:center 45%}.story-side-note{font-size:8px;letter-spacing:.13em}.image-stamp,.image-caption{font-size:8px;letter-spacing:.1em;border-radius:2px}.text-link{position:relative;width:max-content;max-width:100%;margin-top:21px;padding-bottom:7px;font-size:12px}.text-link:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ease)}.text-link:hover:after{transform:scaleX(1)}.text-link span{transition:transform .25s var(--ease)}.text-link:hover span{transform:translate(3px,-2px)}
.services-section{background:#EEF2EB}.services-ledger{position:relative}.section-heading{margin-bottom:36px}.section-heading h2,.process-band h2{font-size:clamp(2.7rem,5vw,4.8rem)}.section-heading>p{font-size:14px;line-height:1.8}.service-list{border-top:1px solid #C8D4C9}.service-row{grid-template-columns:65px minmax(0,1fr) 36px;gap:18px;padding:27px 7px;border-bottom:1px solid #C8D4C9;transition:padding .25s var(--ease),background .2s ease}.service-row:hover{padding-left:18px;padding-right:18px;background:rgba(255,255,255,.42)}.service-num{font-size:10px;color:#77877C}.service-main strong{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(1.6rem,2.8vw,2.5rem);letter-spacing:-.045em}.service-main small{max-width:720px;font-size:13px;line-height:1.7;color:#516659}.service-arrow{display:grid;place-items:center;width:32px;height:32px;border:1px solid #BAC8BC;border-radius:50%;transition:background .2s ease,color .2s ease,transform .2s var(--ease)}.service-row:hover .service-arrow{background:var(--ink);color:#fff;transform:translate(2px,-2px)}.ledger-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:12px}.ledger-bottom .text-link{margin-top:12px}
.visual-chapter{background:#FBFBF7;padding-top:30px;padding-bottom:30px}.visual-chapter-photo{height:clamp(500px,58vw,740px);position:relative;overflow:hidden;border-radius:20px 20px 90px 20px;background:#16352A}.visual-chapter-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.83);transform:scale(1.015)}.chapter-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,35,27,.91) 0%,rgba(13,35,27,.7) 38%,rgba(13,35,27,.08) 76%),linear-gradient(0deg,rgba(13,35,27,.25),transparent 55%)}.chapter-note{position:absolute;top:50%;left:clamp(26px,6vw,85px);transform:translateY(-50%);width:min(520px,55%);color:#F6F6EF}.micro-on-dark{color:#D4DFD5}.chapter-note h2{font-size:clamp(3rem,5.5vw,5.4rem);line-height:.94;margin:24px 0 19px;color:#F6F6EF;letter-spacing:-.065em}.chapter-note h2 em{color:#D7C47C}.chapter-note p{max-width:400px;color:#D8E2D9;line-height:1.8;font-size:15px;margin:0 0 25px}.chapter-coordinate{position:absolute;bottom:19px;right:22px;color:rgba(255,255,255,.75);font:8px var(--mono);letter-spacing:.12em}
.reviews-home{background:#F6F7F1}.reviews-home-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}.reviews-home h2{font-size:clamp(2.8rem,5vw,4.6rem);margin:18px 0 10px;letter-spacing:-.06em}.reviews-home-head p{max-width:510px;color:var(--muted);margin:0;line-height:1.75;font-size:14px}.rating-tile{flex:none;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:15px;row-gap:4px;padding:19px 22px;background:var(--navy);color:#F5F6EF;border-radius:4px;min-width:200px}.rating-tile .rating-stars{grid-column:1/-1;color:#E4CA74;font-size:13px}.rating-tile strong{font-size:36px;font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}.rating-tile strong span{font-size:15px;opacity:.7}.rating-tile>a{font-size:10px;color:#D8E3DD;text-decoration:underline;text-underline-offset:3px}.review-carousel{overflow:visible}.review-track{display:grid;grid-auto-columns:minmax(280px,1fr);grid-auto-flow:column;gap:14px;overflow-x:auto;padding:4px 1px 18px;scroll-snap-type:x mandatory;scroll-padding:4px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#C4CDBF transparent}.review-track::-webkit-scrollbar{height:5px}.review-track::-webkit-scrollbar-thumb{background:#C4CDBF;border-radius:4px}.review-card{min-height:250px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:24px;background:#FFFFFF;border:1px solid #DEE3D9;border-radius:4px;scroll-snap-align:start;transition:transform .22s var(--ease),box-shadow .22s ease,border-color .22s ease}.review-card:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(25,59,44,.09);border-color:#BCCBBC}.review-card-accent{background:#E5EEE5}.review-card-dark{background:#173E32;color:#F7F8F1;border-color:#173E32}.review-source{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font:8px var(--mono);letter-spacing:.1em;color:var(--muted)}.review-card-dark .review-source{color:#DBE5DB}.google-g{display:inline-grid;place-items:center;width:24px;height:24px;background:#fff;border:1px solid #e2e4df;border-radius:50%;font:700 14px Arial,sans-serif;color:#4285F4;letter-spacing:0}.review-stars{color:#B4943A;letter-spacing:.08em;margin-left:auto;font-size:11px}.review-card blockquote{margin:0;font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(1.45rem,2vw,1.9rem);line-height:1.19;letter-spacing:-.035em}.review-link{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid rgba(60,86,68,.22);font-size:11px}.review-card-dark .review-link{border-color:rgba(255,255,255,.25)}.review-link b{font-size:18px;font-weight:400;transition:transform .2s ease}.review-card:hover .review-link b{transform:translate(2px,-2px)}.carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.carousel-controls>div{display:flex;gap:8px}.carousel-button{width:42px;height:42px;border:1px solid #BDCCBE;background:transparent;border-radius:50%;color:var(--ink);cursor:pointer;font-size:18px;transition:background .2s,color .2s,transform .2s}.carousel-button:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.review-disclaimer{font-size:10px;color:#77857B;margin-top:14px;line-height:1.6}
.location-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(35px,7vw,100px);align-items:center;background:var(--cool)}.location-copy h2{font-size:clamp(3rem,5.4vw,5.4rem);line-height:.96;margin:20px 0}.location-copy>p{max-width:490px;color:#425B60;line-height:1.8;font-size:14px}.location-details{display:flex;align-items:start;gap:12px;margin-top:24px;max-width:430px}.location-pin{display:grid;place-items:center;width:34px;height:34px;border:1px solid #9EB7B8;border-radius:50%;flex:none}.location-details p{font-size:12px;line-height:1.7;margin:3px 0}.location-photo{position:relative;height:clamp(340px,39vw,480px);overflow:hidden;border-radius:20px 20px 80px 20px}.location-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.location-photo .photo-caption{font-size:8px}
.footer-cta{display:flex;align-items:end;justify-content:space-between;gap:35px;padding:clamp(48px,7vw,85px) max(28px,calc((100vw - 1360px)/2));background:#E9EBCB}.footer-cta-copy{max-width:670px}.footer-cta h2{font:500 clamp(2.6rem,5vw,4.5rem)/.98 "Iowan Old Style",Baskerville,Georgia,serif;letter-spacing:-.06em;margin:19px 0 13px;color:var(--ink)}.footer-cta p{max-width:500px;font-size:14px;line-height:1.7;color:#4D6555;margin:0}.footer-cta-actions{display:flex;flex-wrap:wrap;gap:10px}.site-footer{background:#16392D;color:#F1F4EC;padding:65px max(28px,calc((100vw - 1360px)/2)) 22px}.site-footer .brand{color:#F5F6EF}.site-footer .brand-mark{background:transparent;border-color:#728B7C}.site-footer .brand-mark i{background:#F5F6EF}.footer-main{grid-template-columns:1.25fr .7fr .95fr;gap:clamp(30px,7vw,100px);padding-bottom:48px}.footer-brand>p,.footer-col p{font-size:12px;line-height:1.75;color:#C6D3C9;max-width:360px}.footer-profile-link{display:inline-flex;align-items:center;min-height:48px;margin-top:14px;color:#F3F5EF;font-size:11px;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:4px}.footer-profile-link:hover{color:#E1CD77}.footer-col .micro-label{color:#B5C5B8;margin-bottom:8px}.footer-col>a{font-size:12px;color:#F3F5EF;display:block;padding:6px 0}.footer-col>a:hover{color:#E1CD77}.hours-note{font-size:10px!important;color:#B5C5B8!important}.footer-bottom{border-color:rgba(255,255,255,.17);color:#B5C5B8;font-size:10px}.footer-bottom a{color:#EEF2E9;text-decoration:underline;text-underline-offset:3px}
.quick-contact{position:fixed;z-index:80;right:18px;bottom:18px;display:flex;gap:7px;align-items:center;padding:7px;border-radius:4px;background:rgba(250,251,245,.96);border:1px solid rgba(33,76,58,.12);box-shadow:0 8px 30px rgba(20,43,32,.16);backdrop-filter:blur(8px)}.quick-contact a{display:flex;align-items:center;gap:8px;padding:10px 13px;font-size:11px;font-weight:650;transition:background .2s ease,transform .2s var(--ease);border-radius:2px}.quick-contact .quick-call{color:var(--ink)}.quick-contact .quick-wa{background:var(--ink);color:#fff}.quick-contact a:hover{transform:translateY(-2px)}.quick-icon{display:grid;place-items:center;width:20px;height:20px;border:1px solid currentColor;border-radius:50%}.wa-mark{font:700 14px Georgia,serif;border:1px solid currentColor;width:20px;height:20px;border-radius:50%;display:grid;place-items:center}.mobile-contact-bar{display:none}
/* Interior pages share the same color, image, and spacing logic. */
.page-hero{gap:clamp(34px,6vw,90px);min-height:0;padding-top:clamp(55px,7vw,95px);padding-bottom:clamp(58px,7vw,90px)}.page-hero h1{font-size:clamp(3rem,5.8vw,5.7rem);line-height:.94;letter-spacing:-.067em}.page-hero-photo{height:clamp(320px,40vw,520px);overflow:hidden;border-radius:22px 22px 76px 22px}.page-hero-photo img{width:100%;height:100%;object-fit:cover}.page-hero .hero-lede{font-size:16px;line-height:1.75;color:var(--muted)}.service-detail{gap:clamp(35px,7vw,95px);padding-top:75px;padding-bottom:75px}.detail-image{height:clamp(350px,41vw,540px);overflow:hidden;border-radius:20px 20px 80px 20px}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-copy h2{font-size:clamp(2.6rem,4.2vw,4.4rem)}.detail-copy p{font-size:14px;line-height:1.85}.process-detail-list{padding-top:10px;padding-bottom:75px}.process-detail{grid-template-columns:130px 1fr;gap:28px;padding:32px 0}.process-detail h2{font-size:clamp(1.9rem,3vw,3rem)}.notice-band{background:var(--ink);color:#F5F5EC}.notice-band .micro-label,.notice-band p{color:#D7E0D6}.notice-band h2{font-size:clamp(2.7rem,4.8vw,4.6rem)}.notice-band .button{margin-top:12px}.estimate-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(35px,8vw,110px);align-items:start;background:#F0F2E7}.estimate-intro{position:sticky;top:125px}.estimate-intro h2{font-size:clamp(2.7rem,4.8vw,4.6rem);line-height:.98;margin:18px 0}.estimate-intro p{color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:23px}.estimate-factors{border-top:1px solid #D4DCCB}.estimate-factors article{display:grid;grid-template-columns:34px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid #D4DCCB}.estimate-factors article>span{font:10px var(--mono);color:#758477;padding-top:5px}.estimate-factors h3{font:500 24px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;margin:0 0 6px;letter-spacing:-.03em}.estimate-factors p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.review-scoreboard{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:clamp(35px,7vw,100px);align-items:start}.review-score-main{position:sticky;top:125px;padding:32px;background:var(--navy);color:#F4F6EE;border-radius:4px}.review-score-main .micro-label{color:#CEDCD7}.review-big-number{font:400 clamp(4rem,7vw,6.6rem)/.92 Georgia,serif;letter-spacing:-.07em;margin:23px 0 10px}.review-big-number span{font-size:20px;opacity:.7;letter-spacing:0}.review-score-main p{color:#C8D8D2;font-size:12px}.review-score-main .rating-stars{font-size:15px;color:#E5CC73}.review-score-main .text-link{color:#F4F6EE;border-color:rgba(255,255,255,.36)}.review-score-main .review-disclaimer{font-size:10px;color:#C0D0C6;margin-top:25px}.review-cards-stack{display:grid;grid-template-columns:1fr 1fr;gap:13px}.review-cards-stack .review-card:last-child{grid-column:1/-1;min-height:200px}.review-context{display:grid;grid-template-columns:.85fr 1fr;gap:clamp(30px,7vw,90px);background:#EAF0E8}.review-context h2{font:500 clamp(2.6rem,4.4vw,4.1rem)/.98 Georgia,serif;letter-spacing:-.06em;margin:18px 0}.review-context-list{border-top:1px solid #C8D4C8}.review-context-list article{display:grid;grid-template-columns:35px 1fr;gap:17px;padding:23px 0;border-bottom:1px solid #C8D4C8}.review-context-list article>span{font:10px var(--mono);padding-top:5px;color:#718276}.review-context-list h3{font:500 25px/1.1 Georgia,serif;margin:0 0 8px}.review-context-list p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}.map-section{background:#EAF0E8}.map-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}.map-heading h2,.privacy-note h2{font:500 clamp(2.5rem,4vw,4rem)/1 Georgia,serif;letter-spacing:-.05em;margin:16px 0}.map-heading p,.privacy-note p{font-size:13px;line-height:1.75;color:var(--muted);max-width:650px}.map-frame{height:clamp(300px,43vw,520px);overflow:hidden;border-radius:14px;background:#DAE3DA;border:1px solid #CAD5C9}.map-frame iframe{width:100%;height:100%;border:0;filter:saturate(.75)}.map-note{font-size:10px;color:#687B6D;margin-top:10px}.privacy-note{background:#F8F8F2}.privacy-note h2{font-size:clamp(2.4rem,4vw,3.8rem)}.privacy-note p{max-width:780px}.contact-layout{gap:clamp(35px,7vw,100px)}.contact-big-link{font-family:Georgia,serif;letter-spacing:-.05em}.contact-address{border-color:var(--line)}.message-form{border:1px solid #DDE2D8;border-radius:5px;background:#FBFCF7;box-shadow:0 10px 35px rgba(29,60,43,.045)}.message-form input,.message-form select,.message-form textarea{border-radius:3px;border-color:#C7D2C7;background:#fff}.message-form input:focus,.message-form select:focus,.message-form textarea:focus{outline:2px solid #A5BA9B;outline-offset:1px}.message-form .button{border-radius:3px}.about-address{background:#E8EEE6;border-radius:4px}.about-address h3{font-size:30px}
/* Small, once-only reveals. No scroll hijacking, video decode, WebGL, or heavy animation library. */
html.has-reveal [data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s var(--ease)}html.has-reveal [data-reveal].is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1120px){.hero-unified{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:36px}.hero-unified h1{font-size:clamp(3rem,6.5vw,5.4rem)}.photo-float-one{right:-12px}.photo-float-two{left:-18px}.photo-float-three{right:-1px}.airflow-doodle{display:none}.service-ribbon-unified{flex-wrap:wrap}.quick-contact{right:12px;bottom:12px}}
@media(max-width:860px){.primary-nav{gap:12px}.nav-link{font-size:11px}.nav-contact{padding:11px 12px}.hero-unified{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}.hero-unified h1{font-size:clamp(2.8rem,6vw,4.6rem)}.hero-main-photo{min-height:340px;border-radius:20px 20px 55px 20px}.photo-float-one,.photo-float-two,.photo-float-three{width:120px}.photo-float img{height:92px}.story-grid-unified{gap:35px}.review-scoreboard{gap:30px}.review-cards-stack{grid-template-columns:1fr}.review-cards-stack .review-card:last-child{grid-column:auto}.reviews-home-head{align-items:start}}
@media(max-width:720px){html{scroll-padding-top:82px}.topline{padding:8px 16px}.topline>span{font-size:8px;max-width:60%}.topline a{font-size:8px}.site-header{padding:13px 16px}.brand{font-size:11px}.brand-logo{width:40px;height:40px}.brand-footer .brand-logo{width:72px;height:72px}.primary-nav{top:100%;left:0;right:0}.section-pad{padding-left:18px;padding-right:18px}.hero-unified{grid-template-columns:1fr;gap:30px;padding-top:44px;padding-bottom:54px}.hero-unified h1{font-size:clamp(3.35rem,13.7vw,5rem);line-height:.92;margin:20px 0}.hero-unified .hero-lede{font-size:15px}.hero-unified .hero-rating{margin-top:22px}.hero-art{margin:0 8px 25px 0}.hero-main-photo{aspect-ratio:1.12;min-height:320px;max-height:470px;border-radius:18px 18px 55px 18px}.hero-main-photo>img{object-position:55% center}.photo-float{width:clamp(105px,30vw,140px);padding:5px}.photo-float img{height:clamp(78px,22vw,105px)}.photo-float span{font-size:7px;padding:6px 2px 2px}.photo-float-one{top:-18px;right:-7px}.photo-float-two{left:-8px;bottom:27px}.photo-float-three{right:2px;bottom:-40px}.hero-art::before{width:120px;height:120px;right:12%;top:-8%}.hero-art::after{width:70px;height:70px;bottom:-25px}.service-ribbon-unified{padding:17px 18px;justify-content:flex-start;gap:10px;font-size:8px}.service-ribbon-unified .ribbon-dot:nth-of-type(2){display:none}.service-ribbon-unified a{width:100%;margin-top:2px}.intro-left{margin-bottom:35px}.intro-left h2{font-size:clamp(2.75rem,11vw,4rem)}.intro-left p{font-size:14px}.story-grid-unified{grid-template-columns:1fr;gap:10px}.story-visual{display:none}.story-step{min-height:0;opacity:1;padding:25px 0 30px}.story-step-image{display:block;width:100%;height:clamp(230px,67vw,380px);margin-bottom:19px;object-fit:cover;border-radius:14px 14px 45px 14px;opacity:1;transform:none}.story-step h3{font-size:clamp(2.1rem,9vw,3rem);margin:13px 0 10px}.story-step p{font-size:14px}.story-copy .text-link{margin-top:17px}.section-heading{display:block;margin-bottom:25px}.section-heading h2,.process-band h2{font-size:clamp(2.5rem,10vw,3.65rem)}.section-heading>p{margin-top:12px}.service-row{grid-template-columns:30px minmax(0,1fr) 28px;gap:9px;padding:22px 0}.service-row:hover{padding-left:5px;padding-right:5px}.service-main strong{font-size:1.55rem}.service-main small{font-size:12px}.ledger-bottom{align-items:flex-start;flex-direction:column;gap:0;padding-top:20px}.visual-chapter{padding-top:14px;padding-bottom:14px}.visual-chapter-photo{height:clamp(540px,140vw,700px);border-radius:16px 16px 55px 16px}.visual-chapter-photo>img{object-position:60% center}.chapter-vignette{background:linear-gradient(90deg,rgba(13,35,27,.86),rgba(13,35,27,.46) 65%,rgba(13,35,27,.2)),linear-gradient(0deg,rgba(13,35,27,.34),transparent 80%)}.chapter-note{left:23px;right:23px;top:auto;bottom:36px;transform:none;width:auto}.chapter-note h2{font-size:clamp(3.1rem,12vw,4.6rem)}.chapter-note p{font-size:14px}.chapter-coordinate{right:14px;bottom:13px;font-size:7px}.reviews-home-head{display:block}.reviews-home h2{font-size:clamp(2.65rem,11vw,4rem)}.rating-tile{margin-top:22px;max-width:280px}.review-track{grid-auto-columns:minmax(78vw,1fr);gap:12px}.review-card{min-height:250px;padding:21px}.review-card blockquote{font-size:1.55rem}.carousel-controls{gap:12px}.carousel-controls>.micro-label{max-width:220px;font-size:8px}.location-band{grid-template-columns:1fr;gap:27px}.location-copy h2{font-size:clamp(3rem,12vw,4.2rem)}.location-photo{height:clamp(310px,90vw,440px);max-width:580px;width:100%;margin-left:auto}.footer-cta{display:block;padding:48px 20px}.footer-cta h2{font-size:clamp(2.65rem,10vw,4rem)}.footer-cta-actions{margin-top:23px}.site-footer{padding:48px 20px 95px}.footer-main{grid-template-columns:1fr 1fr;gap:26px 18px}.footer-brand{grid-column:1/-1}.footer-col .micro-label{font-size:8px}.footer-col>a{font-size:11px}.quick-contact{display:none}.mobile-contact-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;gap:8px;bottom:0;left:0;right:0;padding:9px 12px max(9px,env(safe-area-inset-bottom));z-index:100;background:rgba(248,249,244,.94);backdrop-filter:blur(12px);border-top:1px solid #D9E1D7}.mobile-contact-bar a{height:46px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:3px;background:var(--ink);color:#F5F6EF;font-size:12px;font-weight:650}.mobile-contact-bar a:first-child{background:transparent;color:var(--ink);border:1px solid #9DAF9F}.page-hero{grid-template-columns:1fr;gap:26px;padding-top:40px;padding-bottom:48px}.page-hero h1{font-size:clamp(3rem,12vw,4.5rem);margin:19px 0}.page-hero .hero-lede{font-size:15px}.page-hero-photo{height:clamp(280px,82vw,440px);max-width:560px;width:100%;margin-left:auto}.service-detail,.service-detail:nth-child(even){grid-template-columns:1fr;gap:25px;padding-top:40px;padding-bottom:40px}.service-detail:nth-child(even) .detail-image{order:0}.detail-image{height:clamp(280px,88vw,440px);max-width:580px;width:100%;margin-left:auto}.detail-copy h2{font-size:clamp(2.6rem,10vw,3.8rem)}.process-detail{grid-template-columns:45px 1fr;gap:12px;padding:25px 0}.process-number{font-size:2.6rem}.estimate-section{grid-template-columns:1fr;gap:26px}.estimate-intro{position:static}.estimate-intro h2{font-size:clamp(2.8rem,10vw,4rem)}.review-scoreboard{grid-template-columns:1fr;gap:24px}.review-score-main{position:static;padding:27px}.review-cards-stack{grid-template-columns:1fr}.review-cards-stack .review-card:last-child{grid-column:auto}.review-context{grid-template-columns:1fr;gap:20px}.review-context h2{font-size:clamp(2.6rem,10vw,3.7rem)}.map-heading{display:block}.map-heading .button{margin-top:13px}.map-frame{height:360px}.contact-layout{grid-template-columns:1fr}.contact-big-link{font-size:clamp(1.5rem,7vw,2.3rem)}.message-form{padding:24px 18px}.about-layout{grid-template-columns:1fr}.about-address{padding:25px}.pricing-layout,.reviews-layout{grid-template-columns:1fr}.privacy-content article{padding:23px 0}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom span:nth-child(2){max-width:270px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.photo-float{transform:none!important}.button:hover,.review-card:hover{transform:none!important}html.has-reveal [data-reveal]{opacity:1;transform:none}}

/* Requested refinement pass: keep the existing system; change only the hero, photo story, Google review routing, and call accent. */
.hero-photo-bg{
  position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(255px,330px);gap:clamp(32px,7vw,105px);align-items:center;
  min-height:clamp(640px,79vh,830px);padding-top:clamp(70px,8vw,112px);padding-bottom:clamp(72px,7vw,100px);overflow:hidden;background:#1b3d2e;color:#F7F8F1;
}
.hero-photo-bg .hero-bg-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:54% 49%;display:block;filter:saturate(.89);}
.hero-photo-bg::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,43,31,.92) 0%,rgba(19,49,36,.80) 32%,rgba(24,52,39,.36) 59%,rgba(15,39,29,.08) 100%),linear-gradient(0deg,rgba(12,34,25,.45) 0%,transparent 34%);pointer-events:none;}
.hero-photo-bg .hero-copy{position:relative;z-index:1;max-width:790px;padding:0;}
.hero-photo-bg .micro-label{color:#E8EFD9;}
.hero-photo-bg .hero-copy .status-dot{background:#DBEAA1;box-shadow:0 0 0 4px rgba(219,234,161,.12)}
.hero-photo-bg h1{max-width:850px;margin:25px 0 26px;font-size:clamp(3.6rem,7.2vw,7.2rem);line-height:.88;letter-spacing:-.075em;color:#F7F8F1;text-wrap:balance;}
.hero-photo-bg h1 em{color:#DDE9A6;font-style:italic;font-weight:400;}
.hero-photo-bg .hero-lede{max-width:560px;color:rgba(248,249,241,.86);font-size:clamp(16px,1.35vw,18px);line-height:1.75;}
.hero-photo-bg .hero-footnote{display:flex;align-items:center;gap:12px;margin-top:34px;color:#E5ECDD;font:9px var(--mono);letter-spacing:.13em;}
.hero-photo-bg .foot-line{width:34px;height:1px;background:#DDE9A6;flex:none;}
.hero-contact-panel{position:relative;z-index:2;align-self:center;justify-self:end;width:100%;max-width:345px;padding:22px;background:rgba(23,54,40,.77);border:1px solid rgba(247,248,241,.24);border-radius:3px 3px 34px 3px;box-shadow:0 22px 55px rgba(6,24,16,.16);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);}
.hero-panel-label{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#ECF0E2!important;}
.hero-panel-label .status-dot{width:6px;height:6px;background:#DDE9A6;}
.hero-panel-button{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:54px;padding:14px 15px;}
.hero-photo-bg .button-primary{background:#F7F7EF;color:#214C3A;border-color:#F7F7EF;box-shadow:none;}
.hero-photo-bg .button-primary:hover{background:#E9EED6;border-color:#E9EED6;box-shadow:0 9px 24px rgba(5,25,15,.16);}
.hero-photo-bg .button-primary .button-arrow{background:#DDE9A6;color:#214C3A;}
.button-call{background:#DDE8A0;border:1px solid #DDE8A0;color:#214C3A;box-shadow:none;font-weight:650;}
.button-call:hover{background:#D1E18A;border-color:#D1E18A;box-shadow:0 8px 22px rgba(12,34,23,.12);transform:translateY(-2px);}
.button-call .button-arrow{background:rgba(33,76,58,.09);color:#214C3A;}
.button-call:before{background:rgba(255,255,255,.17);}
.hero-panel-rule{height:1px;background:rgba(242,246,235,.23);margin:9px 0 3px;}
.hero-google-link{display:grid;grid-template-columns:31px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:10px 0 2px;color:#F7F8F1;}
.hero-google-link .google-g{width:29px;height:29px;}
.hero-google-link strong,.hero-google-link small{display:block;}
.hero-google-link strong{font-size:12px;font-weight:650;letter-spacing:.01em;}
.hero-google-link small{font-size:10px;line-height:1.5;margin-top:4px;color:rgba(247,248,241,.72);}
.hero-google-arrow{font-size:18px;color:#DDE9A6;transition:transform .22s var(--ease);}
.hero-google-link:hover .hero-google-arrow{transform:translate(3px,-3px);}
.hero-bottom-note{position:absolute;bottom:23px;left:max(28px,calc((100vw - 1360px)/2));right:max(28px,calc((100vw - 1360px)/2));display:flex;justify-content:space-between;gap:15px;color:rgba(248,249,241,.75);font:8px var(--mono);letter-spacing:.13em;}
.hero-bottom-note i{color:#DDE9A6;font-style:normal;margin-left:7px;}

/* Seamless, transform-only ribbon; native page scrolling is unchanged. */
.service-ribbon-unified{display:flex;align-items:center;min-width:0;gap:22px;padding:0 max(28px,calc((100vw - 1360px)/2));min-height:58px;overflow:hidden;background:var(--ink);color:#F1F3EA;}
.ribbon-viewport{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);}
.ribbon-track{display:flex;width:max-content;animation:ribbon-travel 34s linear infinite;will-change:transform;}
.ribbon-sequence{display:flex;flex:none;align-items:center;gap:25px;padding-right:25px;white-space:nowrap;font:9px var(--mono);letter-spacing:.13em;}
.ribbon-sequence .ribbon-dot{width:4px;height:4px;flex:none;background:var(--lime);border-radius:50%;}
.ribbon-profile{flex:none;color:var(--lime);font:9px var(--mono);letter-spacing:.11em;white-space:nowrap;padding:8px 0;border-bottom:1px solid rgba(220,235,131,.45);}
.service-ribbon-unified:hover .ribbon-track{animation-play-state:paused;}
@keyframes ribbon-travel{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

/* Four-image service deck. All frames are local, preloaded lightweight WebP files; scrolling only changes transforms and opacity. */
.photo-deck-section{position:relative;background:#E8EEE7;padding-top:clamp(70px,8vw,112px);padding-bottom:clamp(75px,8vw,115px);overflow:clip;}
.photo-deck-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.62fr);align-items:end;gap:clamp(26px,6vw,95px);margin-bottom:clamp(38px,5vw,64px);}
.photo-deck-heading .micro-label{grid-column:1/-1;margin-bottom:-12px;color:#52665B;}
.photo-deck-heading h2{font:500 clamp(2.9rem,5.7vw,5.7rem)/.94 "Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;letter-spacing:-.065em;margin:0;color:#214C3A;}
.photo-deck-heading h2 em{color:#718776;font-weight:400;}
.photo-deck-heading p{max-width:450px;margin:0;color:#52665B;font-size:14px;line-height:1.8;}
.photo-deck-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.78fr);gap:clamp(42px,8vw,118px);align-items:start;max-width:1240px;margin:0 auto;}
.photo-deck-visual{position:sticky;top:112px;align-self:start;min-width:0;padding:10px 12px 14px 0;}
.photo-deck-stack{position:relative;height:clamp(480px,49vw,650px);max-height:680px;min-width:0;isolation:isolate;}
.photo-deck-card{position:absolute;top:0;left:0;display:block;width:calc(100% - 74px);height:100%;overflow:hidden;background:#C9D6CD;border:7px solid #F8F8F1;border-radius:19px 19px 65px 19px;box-shadow:0 22px 55px rgba(24,54,39,.15);transform-origin:center center;transition:transform .58s cubic-bezier(.2,.76,.18,1),opacity .35s ease,box-shadow .4s ease;will-change:transform,opacity;}
.photo-deck-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 46%;transform:scale(1.001);}
.photo-deck-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,35,25,.66),transparent 32%,transparent 72%,rgba(12,35,25,.1));pointer-events:none;}
.photo-deck-card.is-active{z-index:10;transform:translate3d(0,0,0) rotate(-.7deg) scale(1);opacity:1;box-shadow:0 26px 62px rgba(24,54,39,.2);pointer-events:auto;}
.photo-deck-card.is-next{z-index:9;transform:translate3d(36px,12px,0) rotate(2deg) scale(.965);opacity:.96;pointer-events:none;}
.photo-deck-card.is-third{z-index:8;transform:translate3d(68px,25px,0) rotate(3.5deg) scale(.93);opacity:.84;pointer-events:none;}
.photo-deck-card.is-back{z-index:7;transform:translate3d(95px,39px,0) rotate(4.5deg) scale(.895);opacity:.68;pointer-events:none;}
.deck-photo-index{position:absolute;top:16px;right:15px;z-index:2;padding:8px 9px;background:rgba(20,51,37,.62);color:#F7F8F1;font:10px var(--mono);letter-spacing:.08em;}
.deck-photo-index i{font-style:normal;color:#DDE9A6;}
.deck-photo-label{position:absolute;z-index:2;left:19px;bottom:20px;color:#F9FAF4;font:9px var(--mono);letter-spacing:.13em;}
.photo-deck-progress{display:flex;align-items:center;gap:12px;padding:20px 20px 0 0;color:#52665B;font:9px var(--mono);letter-spacing:.12em;}
.photo-deck-progress b{font-size:12px;color:#214C3A;}
.deck-progress-track{height:2px;background:#CCD8CC;flex:1;overflow:hidden;}
.deck-progress-track i{display:block;width:25%;height:100%;background:#214C3A;transform-origin:left;transition:width .36s ease;}
.photo-deck-side-label{position:absolute;left:-26px;top:42%;writing-mode:vertical-rl;transform:rotate(180deg);font:8px var(--mono);letter-spacing:.18em;color:#708174;}
.photo-deck-copy{border-top:1px solid #C8D5C9;}
.deck-chapter{min-height:clamp(345px,41vh,470px);display:flex;flex-direction:column;justify-content:center;padding:32px 0;border-bottom:1px solid #C8D5C9;opacity:.48;transition:opacity .28s ease;}
.deck-chapter.is-active{opacity:1;}
.deck-chapter .story-index{font:9px var(--mono);letter-spacing:.13em;color:#718776;}
.deck-chapter h3{max-width:510px;font:500 clamp(2.15rem,3.45vw,3.55rem)/1.03 "Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;letter-spacing:-.055em;margin:18px 0 15px;color:#214C3A;}
.deck-chapter p{max-width:445px;margin:0;color:#52665B;font-size:14px;line-height:1.85;}
.deck-chapter .text-link{margin-top:20px;color:#214C3A;}
.review-detail-line{font-size:11px;line-height:1.65;color:var(--muted);}
.review-card-dark .review-detail-line{color:#E0E7DF;}

/* Keep Google review information truthful: current ratings and individual review text are read on Google, not copied into the static site. */
.rating-tile{min-width:240px;grid-template-columns:auto auto;align-items:center;}
.rating-tile>.rating-stars{font:bold 22px Arial,sans-serif;color:#4285F4;}
.rating-tile strong{font:500 27px/1.1 "Iowan Old Style",Baskerville,Georgia,serif;letter-spacing:-.04em;}
.rating-tile strong span{font-size:15px;}
.review-big-word{font:500 clamp(2.7rem,5vw,4rem)/1 "Iowan Old Style",Baskerville,Georgia,serif;letter-spacing:-.055em;color:var(--ink);margin:15px 0 8px;}
.review-big-word span{font-size:.44em;color:var(--muted);letter-spacing:-.02em;}
.review-profile-name{font:500 24px/1.15 "Iowan Old Style",Baskerville,Georgia,serif;margin:14px 0 8px;letter-spacing:-.03em;}
.review-profile-board .review-score-main>p:not(.review-disclaimer){max-width:380px;font-size:13px;line-height:1.75;color:var(--muted);}
.review-profile-board .review-cards-stack .review-card blockquote{font-size:clamp(1.5rem,2vw,1.9rem);}

@media(max-width:960px){
 .hero-photo-bg{grid-template-columns:minmax(0,1fr) minmax(235px,290px);gap:30px;min-height:660px;}
 .hero-photo-bg h1{font-size:clamp(3.6rem,7.5vw,6rem);}
 .hero-contact-panel{padding:18px;}
 .photo-deck-layout{gap:48px;}
 .photo-deck-stack{height:560px;}
 .photo-deck-card{width:calc(100% - 50px);}
 .photo-deck-card.is-next{transform:translate3d(27px,10px,0) rotate(2deg) scale(.965);}
 .photo-deck-card.is-third{transform:translate3d(51px,20px,0) rotate(3.5deg) scale(.93);}
 .photo-deck-card.is-back{transform:translate3d(72px,30px,0) rotate(4.5deg) scale(.895);}
}
@media(max-width:720px){
 .hero-photo-bg{grid-template-columns:1fr;gap:28px;min-height:0;padding-top:64px;padding-bottom:70px;}
 .hero-photo-bg .hero-bg-image{object-position:55% center;}
 .hero-photo-bg::before{background:linear-gradient(90deg,rgba(15,43,31,.84),rgba(19,49,36,.55) 68%,rgba(15,39,29,.26)),linear-gradient(0deg,rgba(12,34,25,.55),rgba(12,34,25,.08) 75%);}
 .hero-photo-bg h1{font-size:clamp(3.25rem,13vw,5.4rem);max-width:620px;}
 .hero-photo-bg .hero-lede{max-width:540px;font-size:15px;}
 .hero-contact-panel{justify-self:start;max-width:480px;width:100%;padding:18px;background:rgba(22,52,38,.82);}
 .hero-bottom-note{bottom:20px;left:18px;right:18px;font-size:7px;}
 .service-ribbon-unified{min-height:55px;padding:0 16px;gap:14px;}
 .ribbon-profile{font-size:8px;letter-spacing:.06em;}
 .ribbon-sequence{gap:16px;padding-right:16px;font-size:8px;}
 .photo-deck-section{padding-top:65px;padding-bottom:72px;}
 .photo-deck-heading{grid-template-columns:1fr;gap:17px;margin-bottom:32px;}
 .photo-deck-heading .micro-label{grid-column:auto;margin-bottom:0;}
 .photo-deck-heading h2{font-size:clamp(2.8rem,11vw,4rem);}
 .photo-deck-heading p{font-size:13px;}
 .photo-deck-layout{grid-template-columns:1fr;gap:14px;}
 .photo-deck-visual{position:sticky;top:86px;padding:0 10px 12px 0;}
 .photo-deck-stack{height:clamp(390px,112vw,530px);max-height:530px;}
 .photo-deck-card{width:calc(100% - 45px);border-width:5px;border-radius:14px 14px 46px 14px;}
 .photo-deck-card.is-next{transform:translate3d(23px,9px,0) rotate(2deg) scale(.965);}
 .photo-deck-card.is-third{transform:translate3d(44px,17px,0) rotate(3.2deg) scale(.93);}
 .photo-deck-card.is-back{transform:translate3d(62px,25px,0) rotate(4.3deg) scale(.895);}
 .deck-photo-label{left:13px;bottom:15px;font-size:8px;}
 .photo-deck-side-label{left:-19px;font-size:7px;}
 .photo-deck-progress{padding:14px 8px 0 0;}
 .photo-deck-copy{border-top:0;}
 .deck-chapter{min-height:300px;padding:30px 0;opacity:.58;}
 .deck-chapter h3{font-size:clamp(2.1rem,9.3vw,3.15rem);}
 .deck-chapter p{font-size:14px;}
 .reviews-home-head{align-items:flex-start;}
 .rating-tile{min-width:190px;padding:15px;}
 .ribbon-viewport{mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%);}
}
@media(max-width:480px){
 .service-ribbon-unified{gap:10px;}
 .ribbon-profile{font-size:7px;max-width:68px;white-space:normal;line-height:1.5;}
 .hero-contact-panel{padding:16px;}
 .hero-panel-button{min-height:50px;}
 .hero-photo-bg .hero-footnote{font-size:8px;}
 .photo-deck-stack{height:clamp(360px,108vw,450px);}
 .photo-deck-card{width:calc(100% - 36px);}
 .photo-deck-card.is-next{transform:translate3d(18px,8px,0) rotate(2deg) scale(.965);}
 .photo-deck-card.is-third{transform:translate3d(34px,15px,0) rotate(3deg) scale(.93);}
 .photo-deck-card.is-back{transform:translate3d(48px,22px,0) rotate(4deg) scale(.895);}
 .reviews-home-head{display:block;}
 .rating-tile{margin-top:20px;width:max-content;max-width:100%;}
}
@media(prefers-reduced-motion:reduce){
 .ribbon-track{animation:none;}
 .photo-deck-card,.deck-chapter,.deck-progress-track i{transition:none!important;}
}
/* Keep the full-bleed photo, but align hero copy and contact panel to the site's page grid. */
.hero-photo-bg{padding-left:max(28px,calc((100vw - 1360px)/2));padding-right:max(28px,calc((100vw - 1360px)/2));}

/* Focused homepage refinement: three separate, high-visibility moving contact links. */
.hero-photo-bg{grid-template-columns:minmax(0,1fr);}
.hero-photo-bg::before{background:linear-gradient(90deg,rgba(17,43,31,.53) 0%,rgba(17,43,31,.30) 43%,rgba(17,43,31,.04) 78%),linear-gradient(0deg,rgba(12,34,25,.16),transparent 30%);}
.hero-photo-bg .hero-copy{max-width:920px;width:100%;}
.hero-photo-bg h1{max-width:920px;text-shadow:0 2px 22px rgba(13,35,25,.12);}
.hero-floating-actions{width:100%;margin-top:28px;display:flex;flex-direction:column;gap:13px;position:relative;z-index:3;}
.hero-action-lane{width:100%;overflow:visible;min-height:54px;display:flex;align-items:center;}
.hero-float-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;padding:13px 19px;border-radius:5px;font-size:13px;font-weight:700;letter-spacing:.005em;white-space:nowrap;box-shadow:0 12px 30px rgba(7,25,16,.2);will-change:transform;transition:box-shadow .2s ease,filter .2s ease;}
.hero-float-button:hover{filter:brightness(1.045);box-shadow:0 16px 35px rgba(7,25,16,.25);}
.hero-float-button>span:last-child{font-size:17px;transition:transform .2s ease;}
.hero-float-button:hover>span:last-child{transform:translate(3px,-2px);}
.hero-float-whatsapp{background:#214C3A;color:#F8F8F1;border:1px solid rgba(255,255,255,.72);animation:hero-drift-right 8.4s ease-in-out infinite alternate;}
.hero-float-call{background:#DDE8A0;color:#214C3A;border:1px solid #F4F6D7;animation:hero-drift-left 9.2s ease-in-out infinite alternate;}
.hero-float-maps{background:#F8F8F1;color:#214C3A;border:1px solid rgba(33,76,58,.2);animation:hero-drift-right 10s ease-in-out -1.5s infinite alternate;}
.hero-float-maps .google-g{display:inline-grid;place-items:center;width:25px;height:25px;background:#fff;border-radius:50%;font-weight:800;color:#4285F4;box-shadow:0 1px 5px #214c3a20;}
@keyframes hero-drift-right{from{transform:translateX(0)}to{transform:translateX(min(30vw,340px))}}
@keyframes hero-drift-left{from{transform:translateX(min(30vw,340px))}to{transform:translateX(0)}}
@media(max-width:720px){.hero-photo-bg{grid-template-columns:minmax(0,1fr);padding-top:56px;padding-bottom:66px;gap:0}.hero-photo-bg::before{background:linear-gradient(90deg,rgba(17,43,31,.58),rgba(17,43,31,.23) 85%),linear-gradient(0deg,rgba(12,34,25,.18),transparent 45%)}.hero-floating-actions{margin-top:25px;gap:10px}.hero-action-lane{min-height:49px}.hero-float-button{min-height:46px;padding:11px 14px;font-size:12px;gap:11px;box-shadow:0 8px 22px rgba(7,25,16,.2)}@keyframes hero-drift-right{from{transform:translateX(0)}to{transform:translateX(min(18vw,105px))}}@keyframes hero-drift-left{from{transform:translateX(min(18vw,105px))}to{transform:translateX(0)}}}
@media(prefers-reduced-motion:reduce){.hero-float-button{animation:none!important;transform:none!important}}

/* User-requested header-only change: remove the colored utility strip and keep the brand area white. */
.site-header{background:#fff!important;backdrop-filter:none;-webkit-backdrop-filter:none;}

/* User-requested homepage-only behavior: let the cream-white brand header scroll away. */
.unified-home .site-header{position:static;}

/* Review routing: keep five individual review cards in a consistent two-column grid. */
.review-link-stack .review-card:last-child{grid-column:auto;min-height:250px;}
