/* YES SR — coastal architecture, editorial composition. */
html{scroll-padding-top:28px}body{padding-bottom:0;background:var(--paper)}
.header{position:relative;top:auto;margin:0;max-width:none;height:94px;padding:19px 5%;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--paper);z-index:10;gap:30px}
.header .brand{width:175px}.header nav{border:0;background:none;padding:0;gap:26px;border-radius:0}.header nav a{padding:9px 0;border-radius:0;font-size:15px;position:relative}.header nav a:after{content:'';position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--ink);transition:right .25s}.header nav a:hover{background:none;box-shadow:none}.header nav a:hover:after{right:0}.head-actions{gap:20px}.header .button{border-radius:3px;background:transparent;color:var(--ink);box-shadow:none;border-color:#20262330;padding:11px 15px}.header .button span{background:none;border:0;width:auto;height:auto}.header .button:hover{background:#202623;color:var(--paper)}.lang{border:0;width:auto;height:auto;padding:8px}.menu-toggle{display:none}
.hero.immersive-hero{position:relative;display:block;min-height:720px;height:min(780px,82vh);margin:0 18px;background:#202623;border-radius:8px;overflow:hidden}.immersive-hero .hero-photo{position:absolute;inset:0;min-height:0;border-radius:0;z-index:0}.immersive-hero .hero-photo img{object-position:50% 53%;height:100%;width:100%;object-fit:cover}.immersive-hero .hero-photo:after{inset:0;background:linear-gradient(90deg,#101b15cc 0%,#14221985 40%,#14221905 76%),linear-gradient(0deg,#12201855,transparent 45%)}
.immersive-hero .hero-copy{position:relative;z-index:1;background:transparent;border:0;border-radius:0;color:#f5f5ef;padding:92px 5.3% 48px;max-width:850px;height:100%;display:flex;flex-direction:column;align-items:flex-start;overflow:visible}.immersive-hero .hero-copy:before,.immersive-hero .hero-copy:after{display:none}.immersive-hero .eyebrow{font-size:13px;letter-spacing:2.3px;color:#e1e6dc}.immersive-hero .dot{background:#abef38;box-shadow:none;width:4px;height:4px}.immersive-hero .hero-statement{font-size:clamp(58px,6.8vw,104px);line-height:.98;letter-spacing:-5px;font-weight:400;margin:35px 0 28px;max-width:760px}.immersive-hero .hero-statement em{font-weight:400;letter-spacing:-4px}.immersive-hero .lead{color:#e1e5dc;max-width:370px;font-size:18px;line-height:1.85;margin-bottom:29px}.immersive-hero .button{background:var(--paper);color:var(--ink);border:0;box-shadow:none;border-radius:3px;padding:15px 20px;font-size:16px}.immersive-hero .button span{border-color:#20262325;background:transparent}.immersive-hero .button:hover{background:#fff}.immersive-hero .text-link{color:#f5f5efc4;font-size:14px;margin-top:20px}.immersive-hero .hero-bottom{margin-top:auto;width:100%;max-width:360px;color:#dce2d6;font-size:12px;letter-spacing:1.8px;padding-top:28px}.hero-image-caption{position:absolute;bottom:28px;right:30px;font-size:12px;color:#f5f5efb3;letter-spacing:.7px;z-index:2}
.brand-mark{display:block;width:64px;height:64px;flex-shrink:0}.brand-intro{display:flex;align-items:center;justify-content:space-between;gap:42px;padding:69px 7%;border-bottom:1px solid var(--line)}.intro-mark{width:100px;height:100px}.brand-intro>div{flex:1}.brand-intro p{font-size:clamp(21px,2.2vw,32px);line-height:1.45;letter-spacing:-.8px;margin:14px 0 0}.brand-intro em{font-size:1.1em}.intro-link{border-bottom:1px solid #20262350;padding-bottom:9px;font-size:15px;white-space:nowrap}.intro-link span{margin-left:25px}
.section{padding:95px 6%}.brand-intro.section{padding:64px 7%}.section-heading{margin-bottom:44px}.section-heading h2{font-size:clamp(39px,4.5vw,67px);font-weight:400;line-height:1.03}.section-heading>p{font-size:17px;max-width:345px}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:stretch}.detail-photo{margin:0;position:relative;min-height:690px;overflow:hidden;border-radius:4px}.detail-photo>img{width:100%;height:100%;object-fit:cover;object-position:72% center;position:absolute}.detail-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#16251ce0)}.detail-photo figcaption{position:absolute;left:28px;right:28px;bottom:28px;z-index:1;color:var(--paper);display:flex;flex-direction:column;gap:12px}.detail-photo figcaption>span{font-size:26px;letter-spacing:-.7px;line-height:1.15}.detail-photo figcaption small{font-size:12px;letter-spacing:.6px;color:#f5f5efaa}
.service-grid{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.service{position:relative;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0;background:transparent;padding:29px 0 27px 48px!important;box-shadow:none!important;transform:none!important;min-height:170px}.service-top{position:absolute;left:0;top:32px;margin:0;display:block}.service-top>span{font-size:13px;letter-spacing:1px}.service-top svg{display:none}.service h3{font-size:26px;letter-spacing:-.6px;margin:0 0 12px}.service p{min-height:0!important;margin-bottom:15px;font-size:16px;line-height:1.75;max-width:390px}.service>a{justify-content:flex-start;gap:15px;font-weight:500;font-size:14px}.service>a span{width:auto;height:auto;border:0}
.properties{background:#eeefe8;position:relative;padding-top:85px;padding-bottom:60px}.photo-properties{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-property{min-width:0;display:flex;flex-direction:column}.property-photo{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:3px}.property-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.photo-property:first-child img{object-position:62% center}.photo-property:nth-child(2) img{object-position:74% center}.photo-property:nth-child(3) img{object-position:47% center}.property-photo:hover img{transform:scale(1.035)}.property-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#15251ba1)}.property-photo>span{position:absolute;bottom:20px;left:20px;z-index:1;color:white;font-size:12px;letter-spacing:2px}.property-content{padding:24px 1px 0;display:flex;flex-direction:column;flex:1}.property-content h3{font-size:23px;font-weight:400;letter-spacing:-.6px;line-height:1.2;margin:0 0 15px}.property-content p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 23px}.property-content>a{border-top:1px solid var(--line);padding-top:15px;margin-top:auto;font-size:14px;display:flex;justify-content:space-between}.property-caption{font-size:13px;max-width:700px;line-height:1.8;margin-top:30px;color:#747c6e}
.approach{position:relative;overflow:hidden;margin:0;border-radius:0;padding:90px 6%;background:var(--ink);gap:13%}.approach-title,.steps{position:relative;z-index:1}.approach-watermark{position:absolute;left:-70px;bottom:-150px;width:620px;height:620px;opacity:.045;filter:grayscale(1) brightness(0) invert(1);pointer-events:none}.approach h2{font-size:54px;letter-spacing:-2.5px;line-height:1.1}.approach h2 em{color:#e4e9dc}.approach-title>p{font-size:17px}.steps h3{font-size:22px;font-weight:400}.steps article{padding:28px 0}.steps p{font-size:16px}.steps article>span{font-size:14px;color:#abef3899}.partners{padding-top:72px;padding-bottom:72px;border-bottom:1px solid var(--line)}.partner-line h2{font-size:43px}.partner-line>p{font-size:16px}.circle-link{border-radius:0;width:60px;height:60px}.faq{padding-top:75px;padding-bottom:80px}.faq .section-heading h2{font-size:48px}.faq-list details{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;margin:0}.faq-list{border-top:1px solid var(--line)}.faq-list summary{padding:24px 36px 24px 0;font-size:17px}.faq-list p{font-size:16px}
.contact{margin:0;border-radius:0;gap:12%;padding:80px 6%;background:#e9ece2}.contact-mark{width:75px;height:75px;margin-bottom:30px}.contact h2{font-size:61px;line-height:1.05}.contact-copy>p{max-width:330px;font-size:17px}.person{margin-top:26px}.person-line{display:none}.person strong{font-size:19px}.person a{font-size:16px}.full-row{grid-template-columns:1fr}.form-extras{margin:0 0 25px}.form-extras>summary{font-size:14px;color:#697163;cursor:pointer;padding:4px 0 12px}.form-extras[open]>summary{margin-bottom:12px}.form-extras label:last-child{margin-bottom:10px}.contact .button{border-radius:3px;font-size:16px;box-shadow:none;padding:15px 19px}.form-note{line-height:1.7;font-size:14px;max-width:370px}.footer-mark{width:35px;height:35px}footer .brand{width:120px}footer{gap:25px}
@media(min-width:1600px){.hero.immersive-hero{min-height:820px}.immersive-hero .hero-copy{padding-top:110px}}
@media(max-width:1050px){.header{padding:16px 4%;gap:18px}.header .brand{width:145px}.header nav{gap:17px}.header nav a{font-size:14px}.head-actions{gap:12px}.hero.immersive-hero{height:680px;min-height:0}.immersive-hero .hero-copy{padding:76px 6% 35px}.immersive-hero .hero-statement{font-size:73px}.services-layout{gap:32px}.detail-photo{min-height:670px}.service{padding-left:36px!important}.photo-properties{gap:18px}.property-content h3{font-size:21px}.approach{gap:8%}.approach h2{font-size:46px}.brand-intro{gap:25px}.intro-mark{width:80px;height:80px}.contact h2{font-size:51px}}
@media(max-width:740px){
html{scroll-padding-top:22px}.header{position:relative;top:auto;margin:0;padding:17px 6%;height:auto;min-height:78px;display:flex;flex-wrap:wrap;border:0;border-radius:0;background:var(--paper);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;gap:0;justify-content:space-between}.header .brand{width:155px}.head-actions{gap:20px}.header .head-actions>.button{display:none}.lang{font-size:14px;width:auto;height:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:0;width:28px;height:32px;padding:2px;cursor:pointer}.menu-toggle span{height:1px;width:24px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;order:3;flex-basis:100%;width:100%;padding:18px 0 5px;margin-top:16px;border-top:1px solid var(--line);background:none;border-radius:0;gap:0}.header.nav-open nav{display:grid;grid-template-columns:1fr 1fr;gap:6px 25px}.header nav a{font-size:16px;padding:10px 0;text-align:left;border-radius:0;flex:none}.header nav a:after{display:none}
.hero.immersive-hero{margin:0 10px;height:auto;min-height:0;border-radius:5px;display:flex;flex-direction:column;background:var(--ink)}.immersive-hero .hero-photo{position:relative;inset:auto;order:0;height:auto;aspect-ratio:4/3;min-height:0;flex-shrink:0}.immersive-hero .hero-photo img{position:absolute;object-position:center center}.immersive-hero .hero-photo:after{background:linear-gradient(0deg,#2026232b,transparent 30%)}.immersive-hero .hero-copy{order:1;padding:32px 24px 26px;height:auto;max-width:none;background:var(--ink)}.immersive-hero .hero-copy .eyebrow{font-size:11px;letter-spacing:1.5px;color:#cad4c4}.immersive-hero .hero-statement{font-size:clamp(41px,10vw,66px);line-height:1.03;letter-spacing:-2.3px;margin:23px 0 21px}.immersive-hero .hero-statement em{letter-spacing:-2px}.immersive-hero .lead{font-size:16px;line-height:1.85;max-width:100%;margin-bottom:25px;color:#cad2c4}.immersive-hero .button{padding:12px 15px;font-size:15px;gap:20px;border-radius:3px}.immersive-hero .button span{width:24px;height:24px}.immersive-hero .text-link{font-size:14px;margin-top:19px}.immersive-hero .hero-bottom{padding-top:0;margin-top:28px;width:100%;max-width:100%;font-size:11px;letter-spacing:1px;color:#b7c2b0}.hero-image-caption{top:12px;bottom:auto;right:12px;background:#20262378;padding:5px 7px;border-radius:2px;font-size:10px;color:#f5f5efdd;letter-spacing:.3px}
.brand-intro.section{padding:43px 6%;display:grid;grid-template-columns:50px 1fr;gap:20px}.intro-mark{width:50px;height:50px;align-self:start;margin-top:5px}.brand-intro .eyebrow{font-size:11px;letter-spacing:1.3px}.brand-intro p{font-size:20px;letter-spacing:-.4px;line-height:1.45;margin-top:10px}.intro-link{grid-column:2;font-size:14px;justify-self:start;padding-bottom:7px}.section{padding:57px 6%}.section-heading{margin-bottom:30px}.section-heading h2{font-size:42px;letter-spacing:-1.7px;line-height:1.06}.section-heading>p{font-size:16px;line-height:1.85;margin-top:21px;max-width:100%}.services-layout{grid-template-columns:1fr;gap:25px}.detail-photo{min-height:0;aspect-ratio:4/3}.detail-photo>img{object-position:center center}.detail-photo figcaption{left:19px;right:19px;bottom:19px;gap:9px}.detail-photo figcaption>span{font-size:22px;max-width:230px}.detail-photo figcaption small{font-size:11px}.service-grid{display:flex;gap:0}.service,.service:first-child,.service:nth-child(2),.service:nth-child(3),.service:last-child{padding:23px 0 23px 33px!important;min-height:0;border-radius:0}.service-top{top:26px}.service h3{font-size:24px;margin-bottom:10px}.service p{font-size:16px;max-width:100%;min-height:0!important}.service>a{font-size:14px}.service-top>span{font-size:12px}
.properties{padding-top:55px;padding-bottom:37px}.photo-properties{display:flex;flex-direction:column;gap:36px}.property-photo{aspect-ratio:4/3}.property-photo img,.photo-property:first-child img,.photo-property:nth-child(2) img,.photo-property:nth-child(3) img{object-position:center center}.property-photo>span{font-size:11px;letter-spacing:1.5px;left:18px;bottom:18px}.property-content{padding-top:19px}.property-content h3{font-size:25px;letter-spacing:-.7px;margin-bottom:11px}.property-content p{font-size:16px;margin-bottom:18px}.property-content>a{font-size:14px;padding-top:12px}.property-caption{font-size:12px;margin-top:26px}.approach{margin:0;padding:53px 6%;border-radius:0;gap:30px}.approach h2{font-size:39px;letter-spacing:-1.7px}.approach-title>p{font-size:16px;max-width:100%}.approach-watermark{width:400px;height:400px;left:-70px;bottom:-90px;opacity:.04}.steps{padding-top:0}.steps article{gap:21px;padding:24px 0}.steps h3{font-size:21px}.steps p{font-size:16px}.partners{padding-top:51px;padding-bottom:51px}.partner-line{gap:18px}.partner-line h2{font-size:36px}.partner-line>p{font-size:16px}.circle-link{width:44px;height:44px;font-size:21px}.faq{padding:51px 6%}.faq .section-heading h2{font-size:36px}.faq-list summary{font-size:16px;padding:21px 28px 21px 0;line-height:1.7}.faq-list p{font-size:15px;margin-right:0}.contact{margin:0;padding:46px 6%;gap:36px;border-radius:0}.contact-mark{width:54px;height:54px;margin-bottom:23px}.contact h2{font-size:46px;line-height:1.05}.contact-copy>p{font-size:16px;max-width:100%}.person{margin-top:22px;gap:8px}.person strong{font-size:18px}.form-row{gap:16px}.full-row{grid-template-columns:1fr}.form-extras .form-row{grid-template-columns:1fr}input,select,textarea{font-size:20px}label{font-size:14px;margin-bottom:20px}form .button{width:100%;justify-content:space-between}.form-note{font-size:13px;max-width:100%}.form-extras>summary{font-size:14px}.footer-mark{width:30px;height:30px}footer{padding:29px 6%;display:grid;grid-template-columns:30px 1fr;gap:16px 18px}footer .brand{width:125px}footer p{grid-column:2;font-size:14px}footer>span{grid-column:2;font-size:13px}footer>a:last-child{grid-column:2;font-size:14px}body{padding-bottom:0}.mobile-estimate{display:none!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Active navigation and a more prominent estimate area. */
.header nav{gap:5px}.header nav a{padding:11px 16px;border-radius:4px;transition:background .22s,color .22s,transform .22s}.header nav a:after{display:none}.header nav a:hover,.header nav a:focus-visible{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.header nav a:active{background:#3d483e;transform:translateY(0)}
.materials{padding-top:20px;padding-bottom:80px}.materials-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px}.materials-grid article{min-width:0}.materials-grid figure{margin:0;aspect-ratio:3/2;overflow:hidden;border-radius:3px}.materials-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.materials-grid article:hover img{transform:scale(1.025)}.materials-grid article>div{position:relative;padding:23px 50px 0 0}.materials-grid h3{font-size:25px;letter-spacing:-.8px;font-weight:400;margin:0 0 11px}.materials-grid article p{font-size:16px;line-height:1.8;color:var(--muted);margin:0;max-width:400px}.materials-grid article a{position:absolute;right:0;top:24px;border:1px solid var(--line);width:37px;height:37px;border-radius:50%;display:grid;place-items:center;transition:background .2s,color .2s}.materials-grid article a:hover{background:var(--ink);color:var(--paper)}
.contact{background:var(--ink);color:var(--paper);align-items:start;padding:80px 6%;gap:8%}.contact-copy>.eyebrow{color:#a6b597}.contact-copy>p{color:#bfcab8}.contact-mark{background:var(--paper);padding:10px;width:82px;height:82px;border-radius:6px}.contact .person span{color:#adbba3}.contact .person a{color:var(--paper)}.form-panel{background:#f5f5ef;color:var(--ink);border-top:3px solid #9fb884;padding:35px 33px;border-radius:8px;box-shadow:0 24px 70px #00000024}.form-heading{padding-bottom:25px;margin-bottom:27px;border-bottom:1px solid #20262318}.form-heading>span{font-size:12px;letter-spacing:1.6px;color:#66735b}.form-heading h3{font-size:29px;font-weight:400;letter-spacing:-1px;margin:13px 0 10px}.form-heading p{font-size:15px;color:var(--muted);margin:0}.form-panel label{color:#535d4c;font-weight:500}.form-panel input,.form-panel select,.form-panel textarea{background:#fff;border:1px solid #d9dfd2;border-radius:5px;box-shadow:0 2px 3px #20262302}.form-panel label:focus-within{color:#36511c}.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{background:#f9fcf3;border-color:#93af6b;outline:3px solid #abef381c;outline-offset:0}.form-panel label.filled input,.form-panel label.filled select,.form-panel label.filled textarea{border-color:#a5b594}.form-panel .button{width:100%;background:#202623;color:var(--paper);justify-content:space-between}.form-panel .button:hover{background:#405136}.form-extras{padding:12px 14px;background:#e9eee1;border-radius:5px}.form-extras>summary{color:#536544;padding-bottom:4px}.form-extras[open]>summary{padding-bottom:10px}.form-note{color:#687260}
@media(max-width:1050px){.header nav a{padding:10px 12px}.form-panel{padding:28px 24px}.contact{gap:6%}}
@media(max-width:740px){.header{position:relative!important;top:auto!important}.header nav{gap:8px}.header nav a{padding:11px 12px;background:#e9ece3;border-radius:4px;transition:background .2s,color .2s}.header nav a:hover,.header nav a:focus-visible{background:var(--ink);color:var(--paper);transform:none}.materials{padding-top:12px;padding-bottom:48px}.materials-grid{grid-template-columns:1fr;gap:31px}.materials-grid article>div{padding-top:19px}.materials-grid h3{font-size:23px}.materials-grid article p{font-size:16px}.contact{padding:46px 6%;gap:32px}.contact-mark{width:67px;height:67px;padding:8px}.form-panel{padding:26px 20px;border-radius:7px}.form-heading{padding-bottom:21px;margin-bottom:23px}.form-heading h3{font-size:27px}.form-heading p{font-size:14px}.form-panel .form-row{grid-template-columns:1fr;gap:0}.form-panel input,.form-panel select,.form-panel textarea{font-size:20px}.form-panel .button{font-size:16px}.form-extras{padding:12px}.form-note{font-size:13px}.contact .contact-copy>p{color:#bfcab8}}

@media(max-width:740px){footer{grid-template-columns:1fr;gap:18px}footer p,footer>span,footer>a:last-child{grid-column:1}}

@media(max-width:740px){.immersive-hero .hero-photo{aspect-ratio:1672/941}.immersive-hero .hero-photo img{object-fit:contain;object-position:center}}

.reviews{background:#eceee6;border-top:1px solid #20262312}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.review-card{background:var(--paper);padding:30px;border:1px solid #20262314;border-radius:6px;display:flex;flex-direction:column}.review-card:first-child{grid-row:span 2}.review-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;color:#72786f}.review-stars{color:#887032;font-size:19px;letter-spacing:3px}.review-card blockquote{margin:25px 0 30px;font-size:18px;line-height:1.85;color:var(--ink);font-weight:400}.review-card:first-child blockquote{font-size:21px;line-height:1.9}.review-author{margin-top:auto;display:flex;align-items:center;gap:12px}.review-initial{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#e1e6d8;font-size:16px}.review-author strong{font-size:16px;font-weight:500}.reviews-note{font-size:14px;line-height:1.7;color:#6a7166;margin-top:24px;max-width:680px}.reviews>.text-link{display:inline-block;margin-top:22px;color:var(--ink);font-size:16px}@media(max-width:1050px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card:first-child{grid-row:auto;grid-column:1/-1}.review-card:first-child blockquote{font-size:19px}}@media(max-width:740px){.reviews{padding:52px 6%}.reviews-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:16px;scrollbar-width:thin;scrollbar-color:#8e9985 transparent}.review-card{flex:0 0 90%;min-width:0;scroll-snap-align:start;padding:24px}.review-card blockquote,.review-card:first-child blockquote{font-size:17px;line-height:1.85}.review-top{font-size:12px}.review-stars{font-size:17px}.reviews-note{font-size:13px}}

.blog-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.blog-cards .card>a{display:block;text-decoration:none}.blog-cards img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px}.blog-cards .label{font-size:13px;letter-spacing:2px;margin:20px 0 14px;color:#697163}.blog-cards h2{font-size:25px;line-height:1.2;letter-spacing:-.5px;font-weight:400}.blog-cards p{font-size:16px;line-height:1.8;margin:15px 0;color:#697163}.blog-cards span{font-size:15px}.blog-cards a:hover h2{text-decoration:underline}.blog-preview>.text-link{display:inline-block;margin-top:32px;font-size:16px}@media(max-width:740px){.blog-cards{grid-template-columns:1fr;gap:35px}.blog-cards h2{font-size:25px}}

/* Keep the two service-detail photographs compact and equally sized. */
.materials-grid figure{position:relative;height:clamp(220px,24vw,300px);aspect-ratio:auto;min-height:0}
.materials-grid figure>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:100%;object-fit:cover;object-position:center}
@media(max-width:740px){.materials-grid figure{height:clamp(170px,48vw,220px)}.materials-grid{gap:27px}.materials-grid article>div{padding-top:16px}.materials-grid article a{top:17px}}

footer{flex-wrap:wrap}footer .image-disclosure{flex:0 0 100%;width:100%;grid-column:1/-1;font-size:14px;line-height:1.6;color:#697163;font-weight:400;margin-top:12px}

/* Clear estimate panel and primary submission control */
#estimate.form-panel{background:#f5f5ef;color:#202623;border:1px solid #d9dfd2;border-top:4px solid #abef38;box-shadow:0 18px 48px #00000024}
#estimate label{color:#303a32;font-size:17px;font-weight:600}
#estimate input,#estimate select,#estimate textarea{color:#202623;background:#fff;border:1px solid #9ba69b;min-height:48px;padding:13px 14px}
#estimate input::placeholder,#estimate textarea::placeholder{color:#626b63;opacity:1}
#estimate .form-heading>span,#estimate .form-heading p,#estimate .form-note{color:#515d52}
#estimate .form-heading p,#estimate .form-note{font-size:16px;line-height:1.7}
#estimate .form-extras>summary{color:#34452e;font-size:16px}
#estimate button[type="submit"]{display:flex;width:100%;min-height:58px;margin-top:12px;padding:18px 24px;border:2px solid #202623;border-radius:8px;background:#202623;color:#fff;font-size:20px;font-weight:700;justify-content:center;box-shadow:0 5px 0 #111713;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}
#estimate button[type="submit"]:hover{background:#354b2f;transform:translateY(-2px);box-shadow:0 7px 0 #111713}
#estimate button[type="submit"]:active{transform:translateY(3px);box-shadow:0 2px 0 #111713}
#estimate button[type="submit"]:focus-visible{outline:3px solid #abef38;outline-offset:4px}
@media(prefers-reduced-motion:reduce){#estimate button[type="submit"]{transition:none}}

/* Readable brand and navigation for older visitors. */
.header{height:auto;min-height:104px;gap:22px}.header .brand{width:200px;flex-shrink:0}.header nav{flex-wrap:wrap;justify-content:center;gap:12px 22px}.header nav a{line-height:1.5}.lang{min-width:44px;min-height:44px}.contact .contact-mark{display:block;background:none;padding:0;border-radius:0;width:92px;height:auto;box-shadow:none}.contact-copy>.eyebrow{color:#cad4c4}.contact-copy>p{color:#dde3d8}footer .brand{width:200px}footer{align-items:center}footer>span{overflow-wrap:anywhere}
@media(max-width:1050px){.header{flex-wrap:wrap}.header nav{order:3;width:100%}}
@media(max-width:740px){.header{height:auto;min-height:0;grid-template-columns:minmax(0,1fr) auto;gap:12px}.header .brand{width:180px;max-width:100%}.head-actions{gap:6px}.header .button.small{max-width:150px;white-space:normal;line-height:1.4}.header nav{gap:6px;justify-content:flex-start}.header nav a{flex:0 1 auto;white-space:normal}.contact .contact-mark{width:84px;height:auto}footer{grid-template-columns:1fr;gap:16px}footer .brand,footer p,footer>span,footer>a{grid-column:1}.immersive-hero .hero-copy .eyebrow{line-height:1.8}.hero-bottom{flex-wrap:wrap;gap:12px}}

/* Descriptive primary heading; retain the original display typography. */
.immersive-hero .hero-service-title{font-family:inherit;font-size:clamp(20px,1.7vw,26px);font-weight:400;line-height:1.35;letter-spacing:0;margin:0;max-width:670px;color:#f5f5ef}
.immersive-hero .lead{max-width:650px;line-height:1.6}
.immersive-hero .hero-copy{padding-top:48px}
@media(max-width:740px){.immersive-hero .hero-copy{padding-top:30px}.immersive-hero .hero-service-title{font-size:20px}.immersive-hero .lead{font-size:18px}}

.footer-policy-links{display:flex;flex-wrap:wrap;gap:20px;grid-column:1/-1;font-size:16px}.footer-policy-links a,.email-note a,.faq .reviews-note a{text-decoration:underline;text-underline-offset:3px}.service p{overflow-wrap:break-word}.service h3{max-width:100%;overflow-wrap:break-word}

/* Integrate the approved artwork into the dark contact background. */
.contact .contact-mark{mix-blend-mode:lighten;object-fit:contain;filter:none;image-rendering:auto}
