/* Photographic layers and tactile surfaces for the service-page family. */
.inner-page{background-color:#f4f2eb;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.035' filter='url(%23grain)'/%3E%3C/svg%3E")}.inner-page header{position:absolute;background:linear-gradient(#161515d9,#16151540);border-bottom:1px solid #ffffff29;z-index:30}.inner-page header.scrolled{position:fixed;background:#1b1a19ed;backdrop-filter:blur(18px);box-shadow:0 10px 35px #0e0d0d22}.inner-page .button{box-shadow:0 10px 25px #0002}.inner-page .section{max-width:1600px}.inner-page main{overflow:clip}.inner-page .breadcrumbs{position:static;padding:0;background:none;flex-direction:row}
/* The directory opens inside a finished space rather than a coloured box. */
.service-index-hero{position:relative;isolation:isolate;min-height:830px;display:flex;align-items:center;color:#fff;overflow:hidden}.directory-hero-photo{position:absolute;inset:0;margin:0;z-index:-2}.directory-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center 52%}.service-index-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#191817ee 0%,#191817b8 30%,#1b1a1929 65%,#1b1a1908),linear-gradient(0deg,#191817aa,transparent 35%,#16151522)}.directory-hero-copy{padding:145px 7% 120px;width:100%;max-width:1500px;margin:auto}.directory-hero-copy .breadcrumbs{margin-bottom:42px}.directory-hero-copy h1{font:400 clamp(45px,4.65vw,78px)/1.08 var(--serif);letter-spacing:-.04em;max-width:850px;margin:0 0 26px}.directory-hero-copy h1 em{color:#f3c19e}.directory-hero-copy>.eyebrow{color:#eae4de;font-size:10px}.directory-hero-copy>p:not(.eyebrow){max-width:480px;color:#eae3dd;font-size:16px;line-height:1.85;margin:0 0 29px}.directory-hero-copy .button{gap:50px}.hero-photo-note{position:absolute;right:7%;bottom:90px;padding:28px 30px;background:#f4f0e4ef;color:#32302e;transform:rotate(3deg);box-shadow:0 20px 65px #1a181750;border:1px solid #ffffffad;width:260px}.hero-photo-note>span:first-child{font-size:8px;font-weight:600;letter-spacing:.15em}.hero-photo-note p{font:italic 30px/1.2 var(--serif);margin:14px 0 22px;letter-spacing:-.03em}.colour-samples{display:flex;gap:7px}.colour-samples i{display:block;width:38px;height:28px;background:#d9d4bd;border:3px solid white;box-shadow:0 2px 4px #0001}.colour-samples i:nth-child(2){background:#a5a09c}.colour-samples i:nth-child(3){background:#645f5b}.colour-samples i:nth-child(4){background:#d49c74}.directory-intro-band{position:relative;z-index:2;background:#fdfbf4;display:grid;grid-template-columns:1.15fr 1fr 1fr;width:86%;max-width:1375px;margin:-34px auto 0;padding:30px 38px;box-shadow:0 18px 50px #2f2c2a15;border:1px solid #fff;gap:36px}.directory-intro-band>p{font:400 23px/1.45 var(--serif);margin:0;color:#32302e}.directory-intro-band>p em{color:#5b5753}.directory-intro-band>a{border-left:1px solid #dcd1c8;padding:4px 0 4px 30px;align-self:center;font-size:14px;position:relative}.directory-intro-band>a>span{display:block;font-size:8px;letter-spacing:.17em;color:#795b39;margin-bottom:10px}.directory-intro-band b{position:absolute;right:0;top:50%;font-weight:400;color:#946345}.service-directory.section{padding-top:110px;padding-bottom:100px}.service-directory .section-caption{margin-bottom:40px;max-width:700px}.service-directory .section-caption h2{font-size:clamp(36px,3.5vw,54px);max-width:640px;margin-bottom:16px}.service-directory .related-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:27px}.service-directory .related-card{grid-column:span 6;position:relative;overflow:hidden;min-height:410px;box-shadow:0 14px 32px #2d2b2a1a;background:#312f2d}.service-directory .related-card:nth-child(4n+1){grid-column:span 7}.service-directory .related-card:nth-child(4n+2){grid-column:span 5}.service-directory .related-card:nth-child(4n+3){grid-column:span 5}.service-directory .related-card:nth-child(4n+4){grid-column:span 7}.service-directory .related-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s}.service-directory .related-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#181716ed,transparent 80%)}.service-directory .related-card>div{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:32px 34px;color:#fff;border:none;align-items:flex-end}.service-directory .related-card h3{font:400 clamp(25px,2.4vw,37px)/1.15 var(--serif);letter-spacing:-.03em;max-width:550px}.card-description{font-size:13px;line-height:1.7;color:#e6dfd9;max-width:380px;margin:11px 0 0}.service-directory .related-card>div>span{width:43px;height:43px;flex-shrink:0;border:1px solid #ffffff66;border-radius:50%;display:grid;place-items:center;color:#ffceb0;font-size:24px;background:#1c1a1933;backdrop-filter:blur(5px)}.service-directory .related-card:hover>img{transform:scale(1.035);filter:brightness(1.05)}.service-directory .related-card:nth-child(2){margin-top:35px}.service-directory .related-card:nth-child(3){margin-bottom:35px}.service-directory .related-card:nth-child(6){margin-top:35px}#renovation-services{border-top:1px solid #c9c6c3;padding-top:90px}#renovation-services .related-card:last-child{grid-column:span 12;min-height:340px}#renovation-services .related-card:last-child>img{object-position:center 60%}
/* Individual services use full-bleed imagery, not a half-width flat panel. */
.service-hero{position:relative;isolation:isolate;display:block;min-height:800px;background:#252322}.service-hero-copy{position:relative;z-index:2;padding:145px 7% 90px;max-width:1600px;margin:auto;min-height:800px;justify-content:center;pointer-events:none}.service-hero-copy>*{pointer-events:auto}.service-hero-copy .breadcrumbs{margin-bottom:40px}.service-hero h1{font-size:clamp(45px,4.8vw,78px);max-width:780px}.service-hero .hero-description{max-width:500px;color:#e8e1da}.service-hero-image{position:absolute;inset:0;min-height:0;z-index:-1;overflow:hidden}.service-hero-image>img{object-position:65% center}.service-hero-image:after{inset:0;background:linear-gradient(90deg,#1b1a19f2,#1c1a19ba 33%,#19181718 76%),linear-gradient(0deg,#18171690,transparent 36%)}.service-hero-image figcaption{left:auto;right:5%;bottom:60px;display:block;text-align:right;color:#fff}.service-hero-image figcaption span{display:block;margin-bottom:10px}.service-ribbon{position:relative;z-index:2;width:86%;max-width:1375px;margin:-28px auto 0;background:#fffcf2;border:1px solid #fff;box-shadow:0 18px 45px #312e2c17;gap:20px;padding:27px 30px}.service-overview{background:none}.scope-card{background:none;border:none;position:relative;padding-bottom:8px}.scope-card>img{aspect-ratio:1.25;box-shadow:0 15px 40px #413e3c1a}.scope-card>div{position:relative;background:#fffdf7;z-index:1;margin:-36px 14px 0;padding:26px 25px;min-height:246px;box-shadow:0 12px 28px #2a282713;border-top:2px solid #cda685}.scope-card:nth-child(2){padding-top:38px}.scope-card h3{font-size:26px}.scope-card p{font-size:14px}.scope-number{color:#946442}.scope-section .scope-grid{align-items:start;gap:25px}.service-feature{display:flex;align-items:center;justify-content:flex-end;position:relative;isolation:isolate;min-height:790px;padding:65px 7%;background:#312f2d}.service-feature figure{position:absolute;inset:0;min-height:0;z-index:-2}.service-feature img{object-position:center}.service-feature:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#24222055);z-index:-1}.feature-copy{width:47%;max-width:670px;background:#252321ed;padding:55px;box-shadow:0 25px 75px #1a181766;border:1px solid #bcb8b54d;backdrop-filter:blur(16px);align-self:auto}.feature-copy .eyebrow{color:#e8cdb2}.feature-copy h2{font-size:46px}.feature-copy>p:not(.eyebrow){color:#ddd3cb}.feature-copy ul{margin-bottom:20px}.feature-copy .text-link{color:#ffd1ad}.process-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:0}.process-photo{margin:0;position:relative;height:540px;box-shadow:0 18px 50px #2b292718}.process-photo img{height:100%;width:100%;object-fit:cover;object-position:36% center}.process-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#1f1d1cbd)}.process-photo figcaption{position:absolute;bottom:30px;left:30px;z-index:1;font:italic 26px var(--serif);color:white}.process-layout .process-grid{grid-template-columns:1fr 1fr;gap:35px;background:#fffdf8;box-shadow:0 16px 60px #2d2b2a18;padding:42px;margin-left:-35px;position:relative;z-index:1}.process-grid article{padding-top:15px}.process-grid article>span{font-size:35px;color:#ae8e68}.process-grid h3{margin:10px 0}.service-faq.section{background:radial-gradient(ellipse at 0% 30%,#ddd3cb66,transparent 65%);border-top:1px solid #ddd3ca;border-bottom:1px solid #ddd3ca;max-width:1600px}.service-faq details{background:#fffef9;box-shadow:0 7px 22px #34312f10;padding:23px 25px;border:1px solid #e2e2d5;margin:0 0 12px}.service-faq details:first-child{border-top:1px solid #e2e2d5}.related-section .related-card{position:relative;padding-bottom:9px}.related-section .related-card>img{box-shadow:0 12px 28px #2b292820}.related-section .related-card>div{background:#fffdf7;box-shadow:0 8px 24px #2a282710;position:relative;margin:-25px 12px 0;padding:22px 20px;border:0}.related-section .related-card h3{font-size:17px}.service-reach.section{max-width:none;background:#e6dfd9;display:flex;justify-content:flex-end;padding:90px 7%;text-align:left;border:0;position:relative}.reach-copy{width:48%;max-width:635px;background:#faf7ecf5;padding:50px;box-shadow:0 24px 60px #1b191840;transform:rotate(-1deg)}.reach-copy .eyebrow{justify-content:flex-start}.reach-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#625d59;margin:23px 0}.reach-copy h2{font-size:44px}.inner-page .estimate{max-width:none;position:relative;background:#222120;gap:8%;padding-top:110px;padding-bottom:110px}.inner-page .estimate form{background:#262423d6;padding:40px;border:1px solid #dacfc630;box-shadow:0 20px 60px #11101066;backdrop-filter:blur(16px)}.inner-page .estimate-intro{align-self:center}.inner-page .estimate h2{font-size:clamp(50px,5vw,78px)}.inner-page footer{background:radial-gradient(ellipse at top left,#353230,#161515 70%)}
@media(min-width:1800px){.directory-hero-copy{max-width:1600px}.service-index-hero,.service-hero,.service-hero-copy{min-height:900px}.service-hero-copy{max-width:1750px}.service-hero h1{max-width:880px}}
@media(max-width:1150px){.hero-photo-note{width:210px;right:5%;padding:24px}.hero-photo-note p{font-size:25px}.directory-hero-copy h1{font-size:58px;max-width:670px}.directory-intro-band{width:90%;gap:24px;padding:28px}.directory-intro-band>p{font-size:20px}.directory-intro-band>a{padding-left:20px;font-size:12px}.service-directory .related-card{min-height:360px}.service-directory .related-card>div{padding:26px}.service-hero h1{max-width:690px;font-size:60px}.feature-copy{width:54%;padding:38px}.feature-copy h2{font-size:39px}.process-layout .process-grid{padding:30px;gap:28px}.process-photo{height:570px}.reach-copy{width:55%;padding:40px}.reach-copy h2{font-size:38px}.inner-page .estimate form{padding:30px}}
@media(max-width:899px){.service-index-hero{min-height:760px}.directory-hero-copy{padding:125px 6% 105px}.directory-hero-copy h1{font-size:55px;max-width:670px}.directory-hero-copy>p:not(.eyebrow){max-width:390px}.hero-photo-note{right:5%;bottom:80px;width:175px;padding:20px;transform:rotate(3deg)}.hero-photo-note p{font-size:22px}.hero-photo-note>span:first-child{font-size:7px}.colour-samples i{width:25px;height:23px}.directory-intro-band{grid-template-columns:1fr 1fr}.directory-intro-band>p{grid-column:span 2;border-bottom:1px solid #dcd1c8;padding-bottom:15px;display:flex;justify-content:space-between;gap:15px}.directory-intro-band>p br{display:none}.directory-intro-band>a{border:0;padding:0}.directory-intro-band b{right:10px}.service-directory.section{padding-top:80px}.service-directory .related-card{min-height:340px}.service-directory .related-card h3{font-size:29px}.service-directory .related-grid{gap:20px}.service-directory .related-card:nth-child(n){margin:0;grid-column:span 6}.service-directory .related-card>div{padding:23px}.card-description{font-size:12px}.service-hero,.service-hero-copy{min-height:770px}.service-hero-copy{padding:130px 6% 90px}.service-hero h1{font-size:58px;max-width:640px}.service-hero-image{min-height:0}.service-hero-image>img{object-position:65% center}.service-hero-image:after{background:linear-gradient(90deg,#1b1a19e6,#1b1a19a6 58%,#1b1a1944)}.service-hero-image figcaption{bottom:48px;font-size:14px}.service-hero-image figcaption span{display:none}.service-ribbon{width:90%;padding:23px;gap:12px}.scope-card>div{margin:-20px 7px 0;padding:20px;min-height:320px}.scope-card h3{font-size:23px}.scope-card:nth-child(2){padding-top:0}.scope-section .scope-grid{gap:14px}.service-feature{min-height:820px;padding:220px 6% 50px}.service-feature figure{height:100%}.feature-copy{width:75%;max-width:600px}.process-layout{grid-template-columns:1fr}.process-photo{height:350px}.process-layout .process-grid{margin:-35px 25px 0;padding:35px;gap:30px}.reach-copy{width:70%;max-width:590px}.service-reach.section{padding:150px 6% 55px}.inner-page .estimate{padding-top:70px;padding-bottom:70px}.inner-page .estimate-intro{margin-bottom:40px}.inner-page .estimate form{padding:30px}}
@media(max-width:599px){.service-index-hero{min-height:770px;align-items:flex-start}.directory-hero-copy{padding:110px 6% 135px}.directory-hero-copy .breadcrumbs{margin-bottom:35px}.directory-hero-copy h1{font-size:43px;max-width:370px}.directory-hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.75;max-width:310px}.directory-hero-copy>.eyebrow{font-size:8px;letter-spacing:.11em}.directory-hero-photo img{object-position:61% center}.service-index-hero:after{background:linear-gradient(90deg,#191817ed,#191817a3 62%,#19181769),linear-gradient(0deg,#191817b5,transparent 70%)}.hero-photo-note{display:none}.directory-intro-band{width:88%;margin-top:-58px;padding:24px;gap:24px 18px}.directory-intro-band>p{display:block;line-height:1.5;font-size:22px;padding-bottom:18px}.directory-intro-band>p em{display:block}.directory-intro-band>a{font-size:12px;line-height:1.5;padding-right:15px}.directory-intro-band>a>span{font-size:7px;letter-spacing:.1em}.directory-intro-band b{right:-4px;font-size:17px}.service-directory.section{padding-top:62px;padding-bottom:58px}.service-directory .section-caption{margin-bottom:28px}.service-directory .section-caption h2{font-size:36px}.service-directory .related-grid{display:grid;grid-template-columns:1fr;gap:22px}.service-directory .related-card:nth-child(n){grid-column:auto;min-height:350px}.service-directory .related-card>div{padding:25px 23px}.service-directory .related-card h3{font-size:30px}.card-description{font-size:13px;max-width:230px}.service-directory .related-card>div>span{width:34px;height:34px;font-size:19px}.service-directory .related-card:after{background:linear-gradient(0deg,#1a1817f5,#1a181766 35%,transparent 90%)}#renovation-services{padding-top:58px}#renovation-services .related-card:last-child{grid-column:auto;min-height:350px}.service-hero,.service-hero-copy{min-height:760px}.service-hero-copy{padding:110px 6% 95px}.service-hero-copy .breadcrumbs{margin-bottom:30px}.service-hero h1{font-size:45px;max-width:360px}.service-hero .hero-description{font-size:15px;max-width:330px}.service-hero-image>img{object-position:67% center}.service-hero-image:after{background:linear-gradient(90deg,#201e1def,#201e1dbc 62%,#211f1e66),linear-gradient(0deg,#201e1d80,transparent 60%)}.service-hero-image figcaption{font-size:13px;bottom:50px;right:7%;opacity:.8}.service-ribbon{width:88%;padding:21px;margin-top:-25px;display:grid;gap:10px;justify-content:start}.service-overview.section{padding-top:65px}.scope-card>img{aspect-ratio:1.25}.scope-card>div{margin:-30px 13px 0;padding:26px;min-height:0}.scope-card h3{font-size:26px}.scope-section .scope-grid{gap:30px}.service-feature{padding:235px 5% 38px;min-height:0}.feature-copy{width:100%;padding:32px 26px}.feature-copy h2{font-size:36px}.feature-copy li{font-size:13px}.service-feature figure img{object-position:38% center}.process-photo{height:350px}.process-photo figcaption{font-size:24px;left:24px;bottom:60px}.process-layout .process-grid{margin:-34px 10px 0;padding:25px 21px;gap:26px 20px}.process-grid h3{font-size:15px}.process-grid p{font-size:13px}.service-faq.section{padding-top:55px;padding-bottom:45px}.service-faq details{padding:20px}.service-faq summary{font-size:14px;padding:0;line-height:1.55}.service-faq details p{margin-right:0;font-size:14px}.service-reach.section{padding:220px 5% 45px;background-position:33% center}.reach-copy{width:100%;padding:32px 26px;transform:rotate(-1deg)}.reach-copy h2{font-size:34px}.reach-copy>p:not(.eyebrow){font-size:14px}.inner-page .estimate{padding:60px 6%}.inner-page .estimate form{padding:25px 20px;margin:0 -7px}.inner-page .estimate h2{font-size:57px}.related-section .related-card>div{padding:23px 20px}.related-section .related-grid{gap:25px}}
@media(prefers-reduced-motion:reduce){.service-directory .related-card>img{transition:none}.service-directory .related-card:hover>img{transform:none}}
/* Keep the fixed navigation opaque immediately when it passes over light photography. */
.inner-page header{transition:box-shadow .2s ease}
