/* Complete review, October 2026. Preserve established cream and teal identity. */
.hero-service-area{font-size:13px;font-weight:600;margin:-6px 0 20px;max-width:400px;line-height:1.5}
.hero-photo>img{object-position:center 58%}
.service-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.service-card figure{margin:0}.service-card .service-image{display:block;aspect-ratio:4/3}
.service-card figure>figcaption{font-size:11px;color:var(--muted);padding:12px 20px 0;line-height:1.5}
.service-card-copy{padding:23px 20px 26px}.service-card h3{font-size:23px;line-height:1.2}
.service-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.service-card:nth-child(4) .service-image img{object-position:center 72%}
.ice-feature{background:var(--ink-deep);color:var(--paper)}
.ice-feature .eyebrow{color:var(--accent)}.ice-feature .section-heading>p{color:#cbd5cd;max-width:460px}
.ice-videos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:760px;margin:40px auto}
.ice-film{min-width:0}.ice-film video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#091e1c}
.ice-film figcaption{margin-top:15px;font-size:14px}.ice-film figcaption p{font-size:13px;color:#cbd5cd;margin-top:6px}
.ice-film figcaption span{display:block;font-size:11px;color:#b6c6bd;margin-top:7px}
.ice-stills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px;margin-top:45px}
.ice-stills .gallery-image{height:auto;aspect-ratio:4/3}.ice-stills .gallery-image img{object-fit:contain;background:#0c2523}
.ice-stills .project-photo figcaption p{color:#cbd5cd;font-size:12px}
.ice-action{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:40px;border-top:1px solid #49615c;padding-top:30px}
.ice-action>p{flex:1 1 100%;font-size:clamp(23px,2.5vw,34px);line-height:1.3;letter-spacing:-.025em;max-width:800px}
.ice-action .text-link{color:var(--paper)}
.project-row .gallery-image img{object-fit:contain;background:#dbe1d5}
.project-heading h2{font-size:clamp(28px,3vw,42px)}.story-link{margin-top:24px}
.project-row{align-items:start}.project-photo figcaption p{overflow-wrap:break-word}
.progress-heading{font-size:24px;margin:35px 0 20px}
.about{align-items:start}.about-media{grid-template-columns:1fr 1fr;padding-top:65px}
.about-media img{object-position:center}.about-media figure:nth-child(2) img{object-position:center 65%}
.team-placeholder{grid-column:1/-1;display:flex;align-items:center;gap:28px;margin:0 var(--pad) 65px;padding:32px;border:1px dashed #82978c;background:#1d4441}
.team-placeholder-mark{display:grid;place-items:center;flex:none;aspect-ratio:1;width:100px;border:1px solid #82978c;font-family:Georgia,serif;font-size:38px;color:var(--accent)}
.team-placeholder h3{font-size:27px;margin:12px 0}.team-placeholder p:not(.eyebrow){font-size:14px;color:#cbd5cd}
.region-band figure{position:relative;min-width:0}.region-band figure img{width:100%;height:100%;object-fit:cover;min-height:400px}
.region-band figcaption{position:absolute;bottom:20px;left:20px;background:var(--paper);padding:6px 12px;font-size:12px}
.extra-example{margin:0 0 25px;font-size:13px}.extra-example summary{padding:12px 0;text-decoration:underline;text-underline-offset:4px}
.extra-example figure{max-width:300px;margin:15px 0}.extra-example img{max-height:330px;width:auto}.extra-example figcaption{margin-top:10px;color:var(--muted)}
.footer-service-links{display:flex;flex-wrap:wrap;gap:15px 30px;font-size:12px;margin:0 0 25px;color:#d9e1d9}
.footer-service-links a:hover{text-decoration:underline;text-underline-offset:4px}
.breadcrumbs{padding:26px var(--pad) 0;display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted)}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.interior-hero{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;padding-top:55px;padding-bottom:65px}
.interior-hero h1,.project-page-intro h1{font-size:clamp(43px,5.4vw,78px);line-height:1.07;letter-spacing:-.055em;margin:24px 0}
.interior-lead{font-size:18px;color:var(--muted);max-width:650px}
.interior-hero .button{margin-top:28px}.interior-hero figure{min-width:0}
.interior-hero img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--soft)}
.interior-hero figcaption{font-size:12px;color:var(--muted);margin-top:12px}
.service-detail{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:8vw;padding-top:30px}
.prose{max-width:760px}.prose section+section{margin-top:36px}.prose h2{font-size:30px;letter-spacing:-.035em;margin-bottom:15px;line-height:1.2}
.prose p{font-size:16px;color:var(--muted);line-height:1.8}
.contact-aside{align-self:start;background:var(--soft);padding:30px;min-width:0}.contact-aside h2{font-size:31px;margin:22px 0;letter-spacing:-.035em}
.contact-aside p:not(.eyebrow){font-size:14px;color:var(--muted);margin:16px 0}.contact-aside .button{margin:12px 0;width:100%;gap:10px}
.aside-phone{display:block;font-size:25px;letter-spacing:-.035em;margin-top:10px}
.related-projects{background:var(--soft)}.related-projects>h2{font-size:42px;margin:20px 0 35px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.related-grid>a{min-width:0;display:block}
.related-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#dbe1d5}
.related-grid h3{font-size:23px;margin:20px 0 12px}.related-grid p{font-size:14px;color:var(--muted);margin-bottom:15px}
.related-grid>a:hover h3{text-decoration:underline;text-underline-offset:5px}
.service-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:7vw}.service-faq>h2{font-size:42px}
.seasonal-outlook{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;background:var(--soft)}
.seasonal-outlook img{width:100%;height:auto}.seasonal-outlook figcaption{font-size:12px;color:var(--muted);margin-top:12px}
.seasonal-outlook h2{font-size:45px;margin:24px 0}.seasonal-outlook p:not(.eyebrow){font-size:16px;color:var(--muted);margin:20px 0}
.project-page-intro{padding-top:50px;padding-bottom:50px;max-width:1150px}.project-page-intro>p:last-child{font-size:21px;color:var(--muted);max-width:800px}
.project-narrative{padding-top:0;padding-bottom:65px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.project-narrative h2{font-size:27px;letter-spacing:-.025em;line-height:1.2;margin-bottom:20px}
.project-narrative p{font-size:15px;color:var(--muted);line-height:1.8}
.project-full .project-story{border:0;margin:0;padding:0}.project-full .detail-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.project-full .detail-row .gallery-image{aspect-ratio:4/3}
.project-next{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.project-next>div{flex:1 1 440px}.project-next h2{font-size:39px;margin:20px 0}.project-next p{font-size:15px;color:var(--muted)}
.interior-error{min-height:50vh}.interior-error h1{font-size:54px;margin:20px 0}.interior-error p{margin-bottom:30px}
.lightbox-info p{max-width:730px}.gallery-card:focus-visible .gallery-image{outline:3px solid var(--accent);outline-offset:-3px}
@media(max-width:1150px){.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card h3{font-size:27px}.service-card-copy{padding:25px}.service-card figure>figcaption{padding-left:25px;padding-right:25px}.service-detail{gap:4vw}.contact-aside{padding:25px}.contact-aside .button{font-size:12px}.aside-phone{font-size:23px}}
@media(max-width:760px){
 .hero-service-area{font-size:12px;margin:0 0 18px}.hero-photo{aspect-ratio:4/5}.hero-photo>img{object-position:center}
 .service-cards{grid-template-columns:1fr}.service-card .service-image{aspect-ratio:3/2}
 .ice-videos{gap:25px;grid-template-columns:1fr;max-width:330px;margin:32px auto}.ice-film figcaption{font-size:15px}
 .ice-stills{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}.ice-action{gap:22px}.ice-action>p{font-size:25px}
 .about{display:grid;grid-template-columns:1fr}.about-copy{grid-row:1}.about-media{grid-row:2;padding:15px 25px 35px}.team-placeholder{grid-row:3;margin:0 25px 45px;gap:18px;padding:24px;align-items:flex-start}.team-placeholder-mark{width:58px;font-size:25px}.team-placeholder h3{font-size:23px}.team-placeholder .eyebrow{font-size:8px}
 .region-band figure img{min-height:0;height:auto;aspect-ratio:4/3}.footer-service-links{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:11px}
 .breadcrumbs{padding:25px 25px 0;font-size:11px}.interior-hero{grid-template-columns:1fr;gap:30px;padding-top:30px;padding-bottom:40px}.interior-hero h1,.project-page-intro h1{font-size:46px;overflow-wrap:break-word}.interior-lead{font-size:17px}.interior-hero .button{margin-top:22px}
 .service-detail{grid-template-columns:1fr;gap:35px;padding-top:15px}.prose h2{font-size:27px}.prose p{font-size:15px}.contact-aside{padding:27px}.contact-aside .button{width:auto}.aside-phone{font-size:30px}
 .related-grid{grid-template-columns:1fr;gap:35px}.related-projects>h2{font-size:36px}.related-grid h3{font-size:25px}
 .service-faq{grid-template-columns:1fr;gap:30px}.service-faq>h2{font-size:37px}.seasonal-outlook{grid-template-columns:1fr;gap:30px}.seasonal-outlook h2{font-size:39px}
 .project-page-intro{padding-top:30px;padding-bottom:30px}.project-page-intro>p:last-child{font-size:18px}.project-narrative{grid-template-columns:1fr;gap:28px;padding-top:0;padding-bottom:40px}.project-narrative h2{font-size:26px;margin-bottom:14px}
 .project-full .detail-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.project-full .detail-row .gallery-image{aspect-ratio:3/4}.project-heading h2{font-size:30px}.progress-heading{font-size:24px}.project-next>div{flex-basis:100%}.project-next h2{font-size:35px}
 .lightbox-info{flex-wrap:wrap}.lightbox-controls{margin-left:auto}.interior-error h1{font-size:42px}
}
@media(max-width:360px){.hero h1{font-size:57px}.team-placeholder{flex-direction:column}.footer-service-links{grid-template-columns:1fr}.project-full .detail-row{grid-template-columns:1fr}.hero-secondary{margin-left:0;display:flex;width:max-content}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Owner interview: project voice, winter protection and family history. */
.story-feature{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.6fr);gap:25px;align-items:start;margin-top:28px;padding:26px 30px;background:var(--soft);border-left:3px solid var(--ink)}
.story-feature h4{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:400;line-height:1.25;letter-spacing:-.02em}.story-feature p{font-size:14px;color:var(--muted)}
.winter-note{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:50px;margin-top:55px;padding:38px;border:1px solid #62786e;background:#193c38}
.winter-note h3{font-size:clamp(32px,3vw,46px);line-height:1.13;margin-top:18px;letter-spacing:-.04em}.winter-note p:not(.eyebrow){font-size:15px;color:#d7e1d8}.winter-note p+p{margin-top:15px}.winter-note .text-link{display:inline-block;color:var(--paper);margin-top:22px;line-height:1.6}.winter-note .winter-reference{font-size:11px!important;margin-top:23px;color:#b6c6bd!important}.winter-reference a{text-decoration:underline;text-underline-offset:3px}
.about-values{border-top:1px solid #628078;margin-top:28px;padding-top:25px}.about-values h3{font-size:25px;color:var(--paper);margin-bottom:12px}.about-copy .about-values p{margin:0}.about-copy .about-lead{line-height:1.5}
@media(max-width:760px){.story-feature{grid-template-columns:1fr;gap:12px;padding:23px;margin-top:25px}.story-feature h4{font-size:27px}.winter-note{grid-template-columns:1fr;gap:25px;padding:25px 22px;margin-top:40px}.winter-note h3{font-size:35px}.winter-note .text-link{font-size:14px}.about-values{margin-top:25px}.about-values h3{font-size:25px}}

/* Review fixes: visible call numbers beside the text actions. */
.nav-contact{display:flex;align-items:center;gap:14px}.nav-phone,.hero-phone{font-weight:600;white-space:nowrap}.nav-phone{font-size:13px}.hero-contact{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:29px}.hero-contact .button{margin-top:0}.hero-phone{font-size:16px}
@media(min-width:761px) and (max-width:1280px){.site-header nav{gap:18px}.nav-contact{flex-direction:column;gap:5px}.nav-phone{font-size:12px}}
@media(max-width:760px){.nav-contact{flex-direction:column;align-items:stretch;gap:8px}.nav-phone{padding:10px 0;font-size:16px}.hero-contact{margin-top:24px;gap:16px}.hero .hero-contact .button{margin-top:0}.hero-phone{font-size:15px}}

/* Service promise, team and winter-work copy. */
.service-promise,.winter-work{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:7vw;align-items:start}
.service-promise{background:var(--paper);padding-top:45px;padding-bottom:45px}.winter-work h2{font-size:clamp(36px,4vw,58px);line-height:1.13;letter-spacing:-.045em;margin:23px 0}.service-promise h2{font-size:30px;font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:14px 0;max-width:380px;text-wrap:balance}.service-promise .eyebrow{font-weight:500;letter-spacing:.08em;color:var(--muted)}.promise-lead{font-size:15px;line-height:1.65;max-width:400px;color:var(--muted)}
.promise-copy,.winter-work-copy{max-width:640px}.promise-copy p,.winter-work-copy p{font-size:15px;line-height:1.8;color:var(--muted)}.promise-copy p+p,.winter-work-copy p+p{margin-top:17px}.promise-copy .text-link{margin-top:24px}
.winter-work{background:#e3e7dc}.winter-work-lead{font-size:20px;line-height:1.55;max-width:440px}.winter-work .button{margin-top:30px}.winter-phone{display:block;width:max-content;font-weight:600;margin-top:16px}.winter-work-copy h3{font-size:31px;line-height:1.2;margin:28px 0 17px}.winter-work-copy .winter-close{color:var(--ink);font-size:24px;line-height:1.3;font-family:Georgia,serif;margin-top:25px}
.about-values p{font-size:14px;line-height:1.75;color:#cbd5cd}.about-values p+p{margin-top:17px!important}.about-values h3{line-height:1.25}.ice-stills{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:761px) and (max-width:1400px){.site-header nav{gap:14px}.site-header nav>a{font-size:12px}.nav-contact{flex-direction:column;gap:5px}.nav-phone{font-size:12px}.nav-cta{padding:10px 13px;gap:12px}}
@media(max-width:760px){.service-promise,.winter-work{grid-template-columns:1fr;gap:30px}.service-promise{padding-top:35px;padding-bottom:35px;gap:22px}.service-promise h2{font-size:27px}.winter-work h2{font-size:40px;margin-top:18px}.winter-work-lead{font-size:18px}.winter-work-copy h3{font-size:29px}.ice-stills{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:360px){.winter-work h2{font-size:35px}}

/* Keep the local-crew message within the team story, below the project work. */
.about-local{margin-top:28px;padding-top:25px;border-top:1px solid #628078}.about-local h3{font-size:20px;font-weight:400;line-height:1.4;letter-spacing:0;color:var(--paper);margin-bottom:10px}.about-copy .about-local p{font-size:14px;line-height:1.75;color:#cbd5cd;margin:0}.about-copy .about-local p+p{margin-top:12px}
