:root{--ink:#151616;--paper:#fff;--muted:#606462;--line:#d9ddda;--soft:#f4f5f3;--gutter:clamp(24px,4.5vw,72px);--space:clamp(72px,8vw,120px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:400}h1{line-height:1.08;letter-spacing:-.055em}h2{font-size:clamp(2.5rem,4.25vw,4.15rem);line-height:1.12;letter-spacing:-.05em}h3{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em}p{color:var(--muted)}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}a,button{touch-action:manipulation}button,a,summary,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #3979b4;outline-offset:5px}[hidden]{display:none!important}.page-width{width:min(1280px,calc(100% - var(--gutter)*2));margin-inline:auto}.section-space{padding-block:var(--space)}.eyebrow{font-size:.875rem;line-height:1.5;letter-spacing:.11em;text-transform:uppercase;font-weight:500;margin-bottom:22px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:48px}.section-description{max-width:360px;font-size:1rem}.text-link{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid #9ca39e;padding:7px 0;font-size:.875rem;line-height:1.5}.text-link:hover{border-color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:15px 24px;border:1px solid transparent;font-size:.875rem;line-height:1.5;font-weight:500;transition:background .2s,color .2s}.button.dark{background:var(--ink);color:#fff}.button.light{background:#fff;color:var(--ink)}.button.outline{border-color:#9ca39e;background:transparent}.button:hover{background:#353a37;color:#fff}.number{display:block;color:var(--muted);font-size:.875rem;margin-bottom:25px}.skip-link{position:fixed;top:-100px;left:20px;z-index:20;background:#fff;color:#111;padding:12px}.skip-link:focus{top:12px}

/* A quiet masthead, with the brand and a single enquiry action. */
.header{background:#050505;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-inline:var(--gutter);min-height:94px}.brand{display:block;width:104px;flex:0 0 104px}.brand img{height:94px;object-fit:contain}.header nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 26px}.header nav a{display:flex;align-items:center;min-height:44px;font-size:.875rem;color:#c6ccc8}.header nav a:hover{color:#fff}.header-contact{display:flex;align-items:center;gap:28px;min-height:44px;border-bottom:1px solid #69716b;font-size:.875rem;white-space:nowrap}.menu-toggle{display:none;background:none;border:0;color:inherit;font-size:.875rem;padding:12px 0;min-height:44px}.menu-toggle span{margin-left:10px}

/* The photograph leads; typography stays on a clear white field. */
.hero{display:grid;grid-template-columns:44% 56%;background:var(--paper);color:var(--ink)}.hero-copy{padding:72px 40px 72px var(--gutter);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.hero .eyebrow{max-width:340px;color:#626965}.hero h1{font-size:clamp(3.15rem,5.15vw,5.3rem);margin-bottom:28px}.hero-intro{font-size:1.0625rem;line-height:1.85;max-width:390px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 25px;margin-top:32px}.hero-work-link{font-size:.875rem;border-bottom:1px solid #9ca39e;padding:7px 0}.hero-note{font-size:.875rem;max-width:360px;margin-top:42px;line-height:1.6}.hero-socials{display:flex;gap:4px 23px;flex-wrap:wrap;margin-top:6px}.hero-socials a{display:flex;align-items:center;min-height:44px;font-size:.875rem;color:#535b55}.hero-socials a:hover{text-decoration:underline;text-underline-offset:5px}.hero-photo{position:relative;overflow:hidden;background:#e8eae7;min-height:670px}.hero-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.photo-label{position:absolute;left:28px;bottom:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 20px;background:#fffffff2;color:var(--ink);font-size:.875rem;backdrop-filter:blur(8px);max-width:330px}.photo-label:hover{background:#fff}.hero-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px var(--gutter);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.875rem;color:var(--muted)}.hero-foot>a{display:grid;place-items:center;min-width:44px;min-height:32px;font-size:1.2rem}
.trust-strip{background:var(--soft);border-bottom:1px solid var(--line)}.trust-strip>.page-width{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px;align-items:center;padding-block:26px}.trust-strip a{display:grid;grid-template-columns:auto 1fr;gap:2px 14px}.trust-strip a>span{font-size:.875rem;letter-spacing:2px}.trust-strip small{grid-column:1/-1;font-size:.8125rem;color:var(--muted)}.trust-strip strong{color:var(--ink);font-size:.875rem;font-weight:500}.trust-strip p{font-size:.875rem;line-height:1.6}
.intro{display:grid;grid-template-columns:.85fr 1.4fr;gap:60px;padding-block:var(--space);border-bottom:1px solid var(--line)}.intro>.eyebrow{padding-top:10px}.intro h2{margin-bottom:30px}.intro p:not(.eyebrow){font-size:1.0625rem;max-width:660px;margin-bottom:20px}.intro .text-link{margin-top:7px}

/* Larger, paired project photographs and short captions. */
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.project{min-width:0}.project-open{display:block}.project-image-wrap{position:relative;overflow:hidden;background:var(--soft)}.project-image{aspect-ratio:4/5;object-fit:cover;transition:transform .5s}.project-open:hover .project-image{transform:scale(1.02)}.project-photo-count{position:absolute;right:16px;bottom:16px;padding:6px 12px;background:#fffffff0;color:var(--ink);font-size:.8125rem}.project-info{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;padding-top:21px}.project-info h3{font-size:1.4rem;line-height:1.3}.project-info p{font-size:.875rem;margin-top:7px}.project-arrow{font-size:1.35rem}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:38px;padding-top:28px}.gallery-controls p{font-size:.875rem}.project-stories{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:60px;padding-top:38px;border-top:1px solid var(--line)}.project-story .eyebrow{font-size:.8125rem;margin-bottom:18px}.project-story h3{font-size:1.7rem;margin-bottom:18px}.project-story>p:not(.eyebrow){font-size:1rem;max-width:520px}.project-story .text-link{margin-top:19px}
.fine-details{border-top:1px solid var(--line)}.details-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.detail-card{min-width:0}.detail-card>a{display:block;height:100%}.detail-image-wrap{position:relative;overflow:hidden;background:var(--soft)}.detail-image-wrap img{aspect-ratio:1;object-fit:cover;transition:transform .5s}.detail-card a:hover img{transform:scale(1.02)}.detail-image-wrap>span{position:absolute;right:12px;bottom:12px;background:#fffffff0;padding:6px 11px;font-size:.8125rem}.detail-copy{padding-top:25px}.preparation-stage{font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;line-height:1.5;margin-bottom:13px;color:#566159}.detail-copy h3{font-size:1.45rem;margin-bottom:15px}.detail-copy>p:last-child{font-size:1rem}.details-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:40px;padding-top:25px;border-top:1px solid var(--line)}.details-footer p{font-size:1rem}

.longevity{background:var(--soft)}.longevity .section-description{max-width:380px}.longevity-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:45px 0 65px}.longevity-values article{border-top:1px solid #c5ccc7;padding-top:25px}.longevity-values h3{font-size:1.5rem;margin-bottom:16px}.longevity-values p{font-size:1rem}.preparation-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:30px}.preparation-heading h3{font-size:2rem;margin-bottom:10px}.preparation-heading>span{font-size:.875rem;color:var(--muted)}.preparation-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 30px}.preparation-card{min-width:0}.preparation-open{display:block;height:100%}.preparation-image-wrap{position:relative;overflow:hidden;background:#dce1dd}.preparation-image-wrap img{aspect-ratio:4/5;object-fit:cover;transition:transform .5s}.preparation-open:hover img{transform:scale(1.02)}.preparation-image-wrap>span{position:absolute;right:12px;bottom:12px;padding:6px 11px;background:#fffffff0;font-size:.8125rem}.preparation-copy{padding-top:23px}.preparation-copy h3{font-size:1.45rem;margin-bottom:14px}.preparation-copy>p:last-child{font-size:1rem}.longevity-footer{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid #c5ccc7;margin-top:42px;padding-top:30px}.longevity-footer strong{font-weight:500;color:var(--ink)}

/* Customer words without decorative card chrome. */
.review-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:80px;margin-bottom:42px}.review-heading .eyebrow{grid-column:1/-1}.review-heading h2{grid-row:2/4}.review-heading p:not(.eyebrow){max-width:440px;margin-bottom:23px}.review-destinations{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.rating{display:flex;align-items:center;gap:23px;border-top:1px solid var(--line);padding-top:30px;margin-bottom:40px}.rating>strong{font-size:3.3rem;font-weight:400;letter-spacing:-.055em;line-height:1.1}.rating>div{font-size:.875rem}.stars{letter-spacing:3px;font-size:1rem}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 60px;margin-bottom:35px}.review-card{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line);padding-top:25px}.review-type{font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:19px}.review-text{font-family:'Manrope',Arial,sans-serif;font-size:1.3rem;line-height:1.65;letter-spacing:-.02em;color:var(--ink);margin-bottom:22px}.review-person{font-size:.875rem;margin-top:auto}.review-card>a{font-size:.875rem;text-decoration:underline;text-underline-offset:5px;margin-top:12px}.review-source{font-size:.8125rem}.review-source a{text-decoration:underline;text-underline-offset:4px}
.services{border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}.service-grid article{border-top:1px solid var(--line);padding-top:22px}.service-grid h3{margin-bottom:17px}.service-grid p{font-size:1rem}.films{background:#171a18;color:#fff}.films .eyebrow,.films .section-description{color:#bbc2bc}.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.film-poster{aspect-ratio:9/12;position:relative;overflow:hidden;background:#303630}.film-poster>img{height:100%;object-fit:cover}.play-film{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:linear-gradient(transparent,#0006);color:#fff;font-size:.875rem}.play-circle{display:grid;place-items:center;width:64px;height:64px;border:1px solid #fff9;border-radius:50%;background:#1115;backdrop-filter:blur(5px);font-size:1.2rem}.play-film:hover .play-circle{background:#fff;color:#111}.film-poster iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}.film-info{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-top:22px}.film-info h3{font-size:1.2rem;line-height:1.4}.film-info p{font-size:.8125rem;margin-top:8px;color:#bac3bc}.film-info>a{font-size:.875rem;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}.embed-note{font-size:.8125rem;color:#b4beb6;margin-top:30px}
.approach{border-bottom:1px solid var(--line)}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px}.process-grid article{padding-top:24px;border-top:1px solid var(--line)}.process-grid h3{font-size:1.45rem;margin-bottom:17px}.process-grid p{font-size:1rem}
.social{background:var(--soft)}.social-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #c7cfca;border-bottom:1px solid #c7cfca}.social-links>a{display:grid;grid-template-columns:1fr auto;gap:25px;padding:28px;border-right:1px solid #c7cfca}.social-links>a:first-child{padding-left:0}.social-links>a:last-child{border-right:0;padding-right:0}.social-links span:first-child{grid-column:1/-1;font-size:.875rem;color:var(--muted)}.social-links strong{font-family:'Manrope',Arial,sans-serif;font-weight:400;font-size:1.5rem;letter-spacing:-.025em;line-height:1.35}.social-links>a:hover strong{text-decoration:underline;text-underline-offset:7px}.archive{margin-top:38px;border-bottom:1px solid #c7cfca}.archive>summary{display:flex;align-items:center;justify-content:space-between;gap:30px;list-style:none;padding:12px 0 22px;cursor:pointer;font-size:1rem}.archive>summary::-webkit-details-marker{display:none}.archive[open]>summary span{transform:rotate(45deg)}.archive-body{padding-bottom:30px}.archive-note{max-width:680px;font-size:1rem}.archive-tools{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:25px}.archive-tools label{display:flex;align-items:center;gap:16px;font-size:.875rem}.archive-tools select{border:1px solid #adb6af;border-radius:0;background:#fff;padding:11px 30px 11px 12px;font-size:1rem;max-width:100%}#post-count{font-size:.875rem;color:var(--muted)}.post-list{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-bottom:25px}.post-link{display:block;border-top:1px solid #c7cfca;padding:19px 0}.post-link span{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:6px}.post-link strong{font-size:1rem;font-weight:500}.post-link:hover strong{text-decoration:underline}
.questions{display:grid;grid-template-columns:.85fr 1.3fr;gap:80px;border-bottom:1px solid var(--line)}.questions>div>p:not(.eyebrow){margin-top:25px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;padding:23px 35px 23px 0;list-style:none;cursor:pointer;font-size:1rem;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:2px;top:19px;font-size:1.4rem;font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding-bottom:24px;font-size:1rem}.faq-list details a{text-decoration:underline;text-underline-offset:5px}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact h2{margin-bottom:26px}.contact p{max-width:440px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:35px}.contact-phone{font-family:'Manrope',Arial,sans-serif;font-size:2.1rem;letter-spacing:-.035em;line-height:1.4}.contact-email{font-size:1rem;overflow-wrap:anywhere;border-bottom:1px solid #9ca39e}.contact-details p{font-size:.875rem}.enquiry{background:var(--soft);padding:40px}.enquiry h3{font-size:1.65rem;margin-bottom:28px}.enquiry label{display:flex;flex-direction:column;gap:8px;font-size:.875rem;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquiry input,.enquiry select,.enquiry textarea{width:100%;min-width:0;min-height:48px;padding:12px;background:#fff;border:1px solid #bfc8c1;border-radius:0;color:var(--ink);font-size:1rem}.enquiry textarea{resize:vertical}.enquiry .button{width:100%}.enquiry button:disabled{opacity:.5;cursor:not-allowed}.copy-enquiry{display:block;min-height:44px;margin:12px auto 0;padding:10px;border:0;background:none;text-decoration:underline;text-underline-offset:5px;color:var(--ink);font-size:.875rem}.enquiry .form-note,.enquiry #enquiry-status{font-size:.875rem;margin-top:15px}.project-context{padding:12px 15px;border-left:2px solid #596b5e;background:#e4e9e5;margin-bottom:20px;font-size:.875rem}#draft-fallback{margin-top:24px}#draft-fallback textarea{font-size:.875rem}
.footer{background:#050505;color:#fff}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:30px}.footer-main img{width:140px;height:140px;object-fit:contain}.footer-main p{font-size:1rem;color:#b7c0b9}.footer .text-link{border-color:#69716b}.footer-socials{display:flex;align-items:center;flex-wrap:wrap;gap:10px 30px;padding-bottom:26px}.footer-socials span{margin-right:auto;font-size:.875rem;color:#b7c0b9}.footer-socials a{display:flex;align-items:center;min-height:44px;font-size:.875rem;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#69716b}.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;border-top:1px solid #363e37;padding-block:25px;font-size:.8125rem;color:#b7c0b9}.footer details{max-width:310px}.footer summary{cursor:pointer}.footer details p{color:#b7c0b9;font-size:.875rem;padding-top:16px}.mobile-contact{display:none}noscript>p{padding-block:20px}

/* The same uncluttered photo viewer for projects and preparation. */
.dialog-open{overflow:hidden}.project-dialog{border:0;padding:0;width:min(1120px,calc(100% - 48px));max-height:90vh;max-height:90dvh;color:var(--ink);background:#fff}.project-dialog::backdrop{background:#080d09de;backdrop-filter:blur(5px)}.project-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line)}.project-toolbar>span{font-size:.875rem;color:var(--muted)}.project-toolbar>div{display:flex;gap:8px}.project-toolbar button{display:grid;place-items:center;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);width:44px;height:44px;font-size:1.3rem}.project-toolbar .close-dialog{background:var(--ink);color:#fff;border-color:var(--ink);font-size:1.6rem}#project-detail{display:grid;grid-template-columns:1.05fr 1fr}.project-detail-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#171c18;padding:20px 0}.project-detail-image{width:100%;height:auto;max-height:720px;object-fit:contain}.project-detail-photo>a{color:#fff;font-size:.875rem;margin-top:17px;text-decoration:underline;text-underline-offset:5px}.project-detail-copy{padding:40px}.project-detail-copy h2{font-size:2.6rem;margin-bottom:25px}.project-detail-copy>p:not(.eyebrow){font-size:1rem;margin-bottom:22px}.project-detail-copy ul{padding-left:20px;font-size:1rem;color:var(--muted)}.project-views{margin-top:27px}.project-views h3{font-size:1rem;letter-spacing:0;margin-bottom:15px}.project-photo-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-photo-options a{display:block;padding:3px;border:2px solid transparent}.project-photo-options a[aria-current=true]{border-color:var(--ink)}.project-photo-options img{aspect-ratio:3/4;object-fit:cover}.project-photo-options span{display:block;text-align:center;font-size:.8125rem;color:var(--muted);margin-top:5px}.project-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px;margin:27px 0}.project-actions .button{font-size:.875rem;gap:15px}.project-detail-copy .project-provenance{font-size:.8125rem!important;margin-top:30px}

@media(min-width:1600px){.hero-copy{padding-left:max(var(--gutter),calc((100vw - 1280px)/2))}.hero-photo{min-height:750px}.hero{grid-template-columns:46% 54%}}
@media(max-width:1100px){.header{gap:20px}.header nav{gap:3px 18px}.header-contact{gap:15px}.hero-copy{padding-right:28px;padding-block:55px}.hero-photo{min-height:630px}.hero h1{font-size:clamp(3rem,5.4vw,4.5rem)}.hero-actions{gap:18px}.hero-note{margin-top:30px}.intro{gap:45px}.service-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.details-gallery,.preparation-gallery{gap:35px 24px}.review-heading,.contact{gap:40px}.questions{gap:45px}.enquiry{padding:30px}.film-info{flex-direction:column;gap:10px}.social-links>a{padding:24px 20px}.project-detail-copy{padding:35px 28px}.project-detail-copy h2{font-size:2.25rem}}
@media(max-width:800px){
 .header{flex-wrap:wrap;gap:0 25px;min-height:84px}.brand{width:92px;flex-basis:92px;margin-right:auto}.brand img{height:84px}.header-contact{order:1}.menu-toggle{display:inline-flex;order:2;align-items:center}.header nav{order:3;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;padding-block:8px 18px}.header nav a{justify-content:center}.header.menu-ready nav{display:none}.header.menu-ready.nav-open nav{display:grid}.hero{grid-template-columns:1fr}.hero-copy{padding:48px var(--gutter)}.hero h1{font-size:3.15rem}.hero .eyebrow{font-size:.8125rem}.hero-intro{font-size:1rem}.hero-photo{height:580px;min-height:0}.hero-actions .button{padding-inline:18px}.hero-foot span:nth-child(2){display:none}.trust-strip>.page-width{grid-template-columns:1fr 1fr;gap:20px}.trust-strip a{grid-column:1/-1}.trust-strip small{grid-column:2}.intro{grid-template-columns:.65fr 1.35fr;gap:30px}.details-gallery{grid-template-columns:1fr;gap:38px}.detail-card>a{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.detail-copy{padding:0}.detail-image-wrap img{aspect-ratio:4/5}.preparation-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.longevity-values{gap:25px}.longevity-values h3{font-size:1.35rem}.review-grid{gap:32px}.review-text{font-size:1.2rem}.contact{grid-template-columns:1fr;gap:40px}.contact>div>p{max-width:600px}.enquiry{padding:36px}.project-dialog{width:calc(100% - 28px)}#project-detail{grid-template-columns:1fr}.project-detail-photo .project-detail-image{max-height:65vh;max-height:65dvh}.project-detail-copy{padding:32px}.project-detail-copy h2{font-size:2.4rem}
}
@media(max-width:600px){
 :root{--gutter:24px;--space:68px}.header{gap:0 20px}.header-contact{font-size:.8125rem;gap:16px}.hero{grid-template-columns:1fr}.hero-copy{padding:48px var(--gutter) 32px}.hero h1{font-size:clamp(3rem,11vw,4.2rem);margin-bottom:22px}.hero .eyebrow{max-width:none;margin-bottom:22px}.hero-intro{max-width:430px}.hero-actions{margin-top:27px;gap:18px 22px}.hero-note{margin-top:29px}.hero-socials{gap:4px 25px}.hero-photo{min-height:0;height:460px;height:clamp(360px,112vw,540px)}.hero-photo>img{object-position:center 58%}.photo-label{left:20px;right:20px;bottom:20px;max-width:none;padding:13px 17px}.hero-foot{padding:14px var(--gutter);font-size:.8125rem}.trust-strip>.page-width{padding-block:24px;gap:20px}.trust-strip small{grid-column:1/-1}.trust-strip a{column-gap:12px}.trust-strip strong{font-size:.875rem}.trust-strip p{font-size:.8125rem}.intro{grid-template-columns:1fr;gap:14px}.intro>.eyebrow{padding:0;margin:0}.intro h2{margin-top:8px;margin-bottom:24px}.intro p:not(.eyebrow){font-size:1rem}.section-head{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:34px}.section-description{max-width:none}.eyebrow{font-size:.8125rem;margin-bottom:18px}.gallery{grid-template-columns:1fr;gap:36px}.project-image{aspect-ratio:4/5}.project-info{padding-top:17px;gap:18px}.project-info h3{font-size:1.3rem}.project-info p{font-size:.875rem}.gallery-controls{flex-direction:column;align-items:flex-start;gap:18px;padding-top:24px}.gallery-controls .button{width:100%}.project-stories{grid-template-columns:1fr;gap:34px;margin-top:40px;padding-top:30px}.project-story h3{font-size:1.6rem}.detail-card>a{display:block}.detail-image-wrap img{aspect-ratio:1}.detail-copy{padding-top:22px}.detail-copy h3{font-size:1.6rem}.details-footer{flex-direction:column;align-items:flex-start;gap:14px;margin-top:32px}.longevity-values{grid-template-columns:1fr;gap:27px;margin:32px 0 46px}.longevity-values .number{margin-bottom:15px}.longevity-values h3{font-size:1.5rem}.preparation-heading{flex-direction:column;align-items:flex-start;gap:13px}.preparation-heading h3{font-size:1.8rem}.preparation-gallery{grid-template-columns:1fr;gap:36px}.preparation-image-wrap img{aspect-ratio:4/5}.preparation-copy{padding-top:21px}.preparation-copy h3{font-size:1.55rem}.longevity-footer{flex-direction:column;align-items:flex-start;gap:19px}.review-heading{display:block;margin-bottom:33px}.review-heading h2{margin-bottom:25px}.review-heading p:not(.eyebrow){margin-bottom:20px}.review-grid{grid-template-columns:1fr;gap:28px}.rating{padding-top:25px;margin-bottom:30px}.review-text{font-size:1.2rem}.service-grid{gap:30px 24px}.service-grid h3{font-size:1.4rem}.service-grid p{font-size:1rem}.number{margin-bottom:18px}.film-grid{grid-template-columns:1fr;gap:35px}.film-poster{aspect-ratio:9/12;max-height:590px}.film-info{flex-direction:row;gap:20px}.film-info h3{font-size:1.25rem}.embed-note{font-size:.875rem}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid h3{font-size:1.5rem}.social-links{grid-template-columns:1fr}.social-links>a:nth-child(n){padding:24px 0;border-right:0;border-bottom:1px solid #c7cfca;gap:13px}.social-links>a:last-child{border-bottom:0}.social-links strong{font-size:1.6rem}.archive-tools{flex-direction:column;align-items:flex-start;gap:16px}.post-list{grid-template-columns:1fr}.questions{grid-template-columns:1fr;gap:36px}.faq-list summary{padding-block:22px}.contact{gap:35px}.contact-phone{font-size:2rem}.enquiry{padding:26px}.form-row{grid-template-columns:1fr;gap:0}.enquiry h3{font-size:1.5rem}.footer{padding-bottom:87px}.footer-main{flex-wrap:wrap;gap:20px;padding-block:26px}.footer-main img{width:115px;height:115px}.footer-main p{font-size:.875rem}.footer-main .text-link{font-size:.875rem}.footer-socials{gap:6px 24px;padding-bottom:23px}.footer-socials span{width:100%;margin:0}.footer-bottom{flex-wrap:wrap;gap:16px}.footer-bottom details{width:100%;max-width:none}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:5;display:grid;grid-template-columns:.8fr 1.2fr;gap:10px;padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(10px);border-top:1px solid var(--line)}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:46px;text-align:center;padding:9px 7px;border:1px solid var(--ink);font-size:.875rem;line-height:1.5}.mobile-contact a:last-child{background:var(--ink);color:#fff}.project-toolbar{padding:10px 12px}.project-toolbar>span{font-size:.8125rem}.project-detail-copy{padding:28px 24px}.project-detail-copy h2{font-size:2.15rem}.project-photo-options{gap:8px}.project-actions .button{width:100%}.project-detail-photo{padding:15px 0}
}
@media(max-width:380px){:root{--gutter:20px}.header{gap:0 14px}.header-contact span{display:none}.header nav{grid-template-columns:1fr 1fr}.hero-copy{padding-top:38px}.hero h1{font-size:2.9rem}.hero-actions{gap:15px}.hero-socials{gap:4px 20px}.service-grid{grid-template-columns:1fr}.trust-strip>.page-width{grid-template-columns:1fr}.trust-strip a{grid-template-columns:1fr}.trust-strip small{grid-column:1}.footer-socials{gap:5px 20px}.enquiry{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Launch refinements: immediate contact, room photography and comfortable touch targets. */
.project-archive{margin-top:48px;border-block:1px solid var(--line)}
.project-archive>summary{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:28px;cursor:pointer;list-style:none}
.project-archive>summary::-webkit-details-marker{display:none}
.project-archive summary .eyebrow{display:block;margin-bottom:9px}
.project-archive summary strong{display:block;font-family:'Manrope',Arial,sans-serif;font-size:1.6rem;font-weight:400;line-height:1.35;letter-spacing:-.025em}
.archive-summary-note{display:block;font-size:.875rem;color:var(--muted);margin-top:8px}
.archive-plus{font-size:2rem;font-weight:400;width:44px;text-align:center;flex:none}
.project-archive[open] .archive-plus{transform:rotate(45deg)}
.project-archive-body{padding-bottom:32px}
.project-archive-body>p{max-width:700px;font-size:1rem;margin-bottom:30px}
.earlier-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-bottom:30px}
.earlier-project-open{display:block}
.earlier-project img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--soft)}
.earlier-project .eyebrow{font-size:.875rem;letter-spacing:.06em;margin-block:19px 12px}
.earlier-project h3{font-size:1.35rem;margin-bottom:14px}
.earlier-project p{font-size:1rem}
.earlier-project .text-link{margin-top:15px}
@media(max-width:800px){.earlier-projects{grid-template-columns:1fr;gap:28px}.earlier-project-open{display:grid;grid-template-columns:minmax(100px,160px) 1fr;gap:24px;align-items:start}.earlier-project .eyebrow{margin-top:0}.project-archive summary strong{font-size:1.45rem}}
@media(max-width:440px){.earlier-project-open{grid-template-columns:1fr}.earlier-project img{width:100%;max-height:360px;aspect-ratio:4/5;object-fit:contain;background:#171c18}.earlier-project h3{font-size:1.5rem}}
html{scroll-padding-bottom:100px}
.earlier-projects{grid-template-columns:1fr 1fr;gap:32px}
.earlier-project-open{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:start}
.earlier-project img{width:120px;height:213px;aspect-ratio:auto;object-fit:contain}
.earlier-project .eyebrow{margin-top:0}
.earlier-project h3{font-size:1.35rem}
.archive-film{display:flex;justify-content:space-between;align-items:center;gap:30px;border-block:1px solid var(--line);padding-block:25px;margin-bottom:22px}
.archive-film .eyebrow{margin-bottom:9px}
.archive-film h3{margin-bottom:12px}
.archive-film p{font-size:1rem}
.archive-film>a{flex-shrink:0}
.archive-dialog .project-detail-image{width:auto;max-width:100%;max-height:284px}
@media(max-width:1000px){.earlier-projects{grid-template-columns:1fr}.archive-film{align-items:flex-start;flex-direction:column;gap:15px}}
@media(max-width:440px){.earlier-project-open{grid-template-columns:100px 1fr;gap:16px}.earlier-project img{width:100px;height:178px}.earlier-project h3{font-size:1.15rem}.earlier-project p{font-size:.9375rem}.earlier-project .eyebrow{font-size:.8125rem;letter-spacing:.03em}.earlier-project .text-link{font-size:.875rem}}
.hero-copy{padding-block:54px}
.hero h1{max-width:600px}
.hero-photo>img{object-position:center 46%}
.hero-socials{margin-top:4px}
.whatsapp-link{margin-block:6px 8px;min-width:220px}
#whatsapp-enquiry{margin-top:12px}
.project-photo-options a:focus-visible{outline-offset:1px}
.project-dialog{overscroll-behavior:contain}
.project:focus-within .project-image{transform:scale(1.02)}
.review-source{max-width:650px}
.menu-toggle{min-width:60px}
.hero-foot>a{min-height:44px}
@media(max-width:800px){
 .hero-photo{grid-row:1;height:clamp(290px,62vw,440px)}
 .hero-copy{grid-row:2;padding-block:34px}
 .hero-foot{grid-row:3}
 .hero h1{font-size:clamp(2.7rem,7.4vw,4rem);margin-bottom:20px}
 .hero .eyebrow{margin-bottom:18px}
 .hero-photo>img{object-position:center 45%}
 .hero-note{margin-top:23px}
 .hero-socials{display:none}
 .hero-actions{margin-top:24px}
 .hero-intro{max-width:560px}
}
@media(max-width:600px){
 .hero-photo{height:330px;height:clamp(290px,82vw,380px)}
 .hero-photo>img{object-position:center 46%}
 .hero-copy{padding:29px var(--gutter) 30px}
 .hero h1{font-size:clamp(2.6rem,10.2vw,3.75rem)}
 .hero .eyebrow{font-size:.875rem;letter-spacing:.07em;margin-bottom:15px}
 .hero-note{font-size:.875rem;margin-top:20px}
 .photo-label{max-width:none;left:18px;right:18px;bottom:18px;font-size:.875rem}
 .project,.faq-list details,.enquiry input,.enquiry textarea{scroll-margin-bottom:100px}
 .mobile-contact{grid-template-columns:1fr 1.2fr}
 .enquiry #whatsapp-enquiry{padding-inline:16px}
 .header nav a,.hero-work-link,.photo-label,.hero-socials a{min-height:44px}
}
