@font-face{font-family:Manrope;src:url(/build/assets/Manrope400-C50XbeK_.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(/build/assets/Manrope600-BB0R2IvX.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Cormorant;src:url(/build/assets/Cormorant500-BsLzYtQ0.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Cormorant;src:url(/build/assets/CormorantItalic500-DnYkGKH5.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}:root{--paper:#f2ede4;--ink:#263d4b;--muted:#4e6875;--line:#ccc8be;--sand:#bd9c76;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;--gutter:clamp(24px,5vw,88px) }*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:34px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.03}h1,h2{font-family:var(--serif)}h1{font-size:clamp(3.6rem,6.6vw,7.5rem);letter-spacing:-.035em}h2{font-size:clamp(2.8rem,4.7vw,5.1rem);letter-spacing:-.025em}h3{font-size:1.35rem;line-height:1.3}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}button,a,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a96752;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}em{font-family:var(--serif);font-weight:500}::selection{color:var(--paper);background:var(--ink)}.wrap{padding-inline:var(--gutter);max-width:1800px;margin:auto}.eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;line-height:1.5}.muted{color:var(--muted)}.small{font-size:.875rem}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:112px;border-bottom:1px solid var(--line)}.brand{display:block;width:184px;flex-shrink:0}.brand img{display:block;width:100%;height:auto}.header nav{display:flex;gap:32px;align-items:center;font-size:.875rem}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}.text-link:hover{text-decoration:none;color:var(--muted)}.header .location{margin-right:auto;max-width:155px;line-height:1.4;font-size:.75rem}.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid;padding-block:10px;font-size:.875rem;font-weight:600}.arrow{font-family:Arial,sans-serif;font-size:1.4rem;font-weight:400}.button{display:inline-flex;gap:40px;justify-content:space-between;align-items:center;min-height:54px;padding:14px 24px;color:var(--paper);background:var(--ink);font-size:.875rem;font-weight:600;border:1px solid var(--ink);transition:background .2s}.button:hover{background:#192c36}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.section{padding-block:100px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.section-head .eyebrow{margin-bottom:20px}.section-head>p{max-width:340px}.photo{overflow:hidden;background:#d8d0c4;position:relative;display:block;border:0;padding:0;width:100%;text-align:left}.photo img{transition:transform .6s}.photo:hover img{transform:scale(1.025)}.photo:after{content:"↗";position:absolute;bottom:16px;right:16px;width:34px;height:34px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border-radius:50%}.caption{display:flex;justify-content:space-between;gap:16px;font-size:.875rem;margin-top:16px}.caption span:last-child{color:var(--muted)}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.three .photo{aspect-ratio:4/5}.three figure:nth-child(2){margin-top:72px}.intro-text{font-family:var(--serif);font-size:clamp(2rem,3.3vw,3.9rem);line-height:1.14;max-width:950px}.service-list{border-top:1px solid var(--line)}.service-list>a,.service-list>div{display:grid;grid-template-columns:50px 1fr 1fr 30px;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.service-list h3{font-family:var(--serif);font-size:2rem}.service-list p{font-size:.875rem;max-width:330px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps h3{margin:25px 0 16px}.steps p{font-size:.875rem;max-width:320px}.contact{border-top:1px solid var(--line);padding-block:90px 36px}.contact--compact{padding-top:28px}.contact--compact .footer-line{margin-top:0}.contact .contact-top{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:end}.contact h2{font-size:clamp(3.5rem,5.6vw,6.5rem)}.contact p{max-width:360px;margin-bottom:24px}.contact .eyebrow{margin-bottom:24px}.footer-line{display:flex;justify-content:space-between;gap:24px;margin-top:85px;padding-top:24px;border-top:1px solid var(--line);font-size:.75rem}.skip{position:fixed;top:-80px;left:20px;z-index:100;padding:12px;background:var(--paper)}.skip:focus{top:12px}dialog{border:0;padding:0;max-width:min(1000px,92vw);max-height:90dvh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#111b22d9}dialog img{width:100%;height:72dvh;object-fit:contain;background:#192c36}dialog .dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px}dialog button{border:1px solid var(--line);background:transparent;padding:8px 18px}.empty-hidden{display:none}.reveal{animation:appear .7s ease both}@keyframes appear{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.materials{--paper:#f2ede4 }.materials .header{border-bottom:0}.material-hero{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);margin-top:25px}.material-hero .material-intro{padding:clamp(28px,4vw,66px);display:flex;flex-direction:column;align-items:start;justify-content:center}.material-intro h1{font-size:clamp(3.8rem,5.8vw,6.7rem);margin:26px 0}.material-intro p{max-width:390px}.material-intro .button{margin-top:28px}.material-hero>img{min-height:610px}.material-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:24px;padding-block:20px;border-bottom:1px solid var(--line);gap:30px;font-size:.875rem}.material-facts span{display:block;font-size:.75rem;letter-spacing:.08em;margin-bottom:4px;color:var(--muted)}.material-tool{display:grid;grid-template-columns:1fr 1.2fr;gap:6vw;align-items:start}.material-tool h2{margin-bottom:22px}.material-tool .material-lead{max-width:390px;margin-bottom:36px}.material-options{border-top:1px solid var(--line)}.material-option{display:flex;align-items:center;text-align:left;gap:18px;border:0;border-bottom:1px solid var(--line);background:transparent;padding:20px 16px;width:100%;transition:background .2s}.material-option[aria-pressed=true]{background:#263d4b;color:#f2ede4}.material-option>img{height:48px;width:48px;flex-shrink:0}.material-option>span{flex:1}.material-option b{font-weight:600;font-size:.875rem;display:block}.material-option small{font-size:.75rem}.material-option .arrow{flex:0}.material-display{position:sticky;top:28px}.material-display>img{height:580px}.material-display h3{font:500 2rem var(--serif);margin-top:24px}.material-display p{max-width:530px;margin-top:12px;font-size:.875rem}.material-display .material-label{position:absolute;top:20px;left:20px;padding:9px 15px;background:var(--paper);font-size:.75rem}.materials .process-section{background:#263d4b;color:#f2ede4;--line:#52616a }.materials .process-section .section-head>p{color:#c3cdd0}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:6vw}.faq h2{margin-top:20px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:24px 35px 24px 0;position:relative;font-weight:600;font-size:.875rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:0;font-size:1.5rem;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{font-size:.875rem;padding:0 35px 25px 0;max-width:620px}.materials .contact{background:#e6d6c3}.small-jobs{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,6vw,90px);align-items:center;padding:clamp(28px,4vw,56px);margin:24px 0 60px;scroll-margin-top:24px}.small-jobs>*{min-width:0}.small-jobs-label{font:600 .75rem/1.5 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-bottom:22px}.small-jobs h2{font:500 clamp(2.7rem,4.2vw,4.8rem)/1.04 var(--serif);letter-spacing:-.025em;margin-bottom:24px;text-wrap:balance}.small-jobs-copy>p:not(.small-jobs-label){max-width:550px;font-size:1rem;line-height:1.65}.small-jobs-examples{padding:0;margin:28px 0 0;list-style:none;display:grid;gap:20px;font-size:.875rem;max-width:550px}.small-jobs-examples strong{display:block;font-weight:600;margin-bottom:5px}.small-jobs-action h3{font:500 2rem/1.1 var(--serif);letter-spacing:-.015em;margin-bottom:18px}.small-jobs-action p{font-size:1rem;line-height:1.65;max-width:440px;margin-bottom:24px}.small-jobs .button{gap:24px;line-height:1.5}.small-jobs-action .small-jobs-note{font-size:.8125rem;line-height:1.6;margin:16px 0 0;color:var(--muted)}.small-jobs-email{display:block;font-size:.875rem;margin-top:12px;color:var(--muted)}.materials .small-jobs{padding:48px 0;background:none;border-bottom:1px solid var(--line);gap:6vw;align-items:start}.materials .small-jobs-label{color:var(--muted)}.materials .small-jobs h2{font-size:clamp(2.8rem,4.3vw,4.9rem)}.materials .small-jobs-examples{counter-reset:material-step;gap:20px}.materials .small-jobs-examples li{counter-increment:material-step;border-top:1px solid var(--line);padding:18px 0 0 42px;position:relative}.materials .small-jobs-examples li:before{content:"0" counter(material-step);position:absolute;top:19px;left:0;font-size:.75rem;color:var(--muted)}.materials .small-jobs-action{padding:clamp(24px,3.5vw,48px);background:#fcfaf6;border:1px solid var(--line);border-top:4px solid var(--sand);align-self:center}.materials .small-jobs-action h3{font-size:clamp(2rem,3vw,3rem)}.materials .small-jobs-action .button{width:100%;margin-top:8px}.materials .small-jobs-action .small-jobs-note{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.gallery-page{--gallery-line:var(--line);--gallery-muted:var(--muted) }.gallery-header .gallery-home{font-size:.875rem;margin-left:auto;border-bottom:1px solid;padding-block:8px}.gallery-heading{padding:65px 0 45px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:end}.gallery-heading h1{font-size:clamp(3.5rem,6.5vw,7rem);margin-top:20px}.gallery-heading p{max-width:380px;color:var(--gallery-muted);font-size:1rem}.gallery-heading .eyebrow{color:var(--gallery-muted)}.gallery-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 0;border-top:1px solid var(--gallery-line);border-bottom:1px solid var(--gallery-line);margin-bottom:40px}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.gallery-filter{border:1px solid transparent;background:transparent;padding:10px 18px;min-height:44px;font-size:.875rem;line-height:1.4}.gallery-filter[aria-pressed=true]{background:var(--ink);color:var(--paper)}.gallery-filter:hover{border-color:var(--gallery-line)}.gallery-count{font-size:.875rem;white-space:nowrap;color:var(--gallery-muted)}.gallery-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;align-items:start;margin-bottom:80px}.work-card{min-width:0;break-inside:avoid;position:relative}.work-card[hidden]{display:none!important}.work-link{display:block}.work-picture{position:relative;overflow:hidden;background:#d8d0c4;aspect-ratio:4/5}.work-picture img{transition:transform .45s;object-fit:cover;object-position:center}.work-link:hover .work-picture img{transform:scale(1.025)}.work-open{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f2ede4;color:#263d4b;font:400 1.3rem Arial}.work-caption{display:flex;gap:20px;justify-content:space-between;padding-top:16px;align-items:start}.work-caption h2{font:500 1.9rem/1.1 var(--serif);letter-spacing:-.02em;margin-bottom:6px}.work-caption p{font-size:.8125rem;color:var(--gallery-muted)}.work-index{font-size:.75rem;color:var(--gallery-muted);padding-top:5px}.work-description{font-size:.875rem;line-height:1.65;max-width:500px;color:var(--gallery-muted);margin-top:14px;display:none}.gallery-empty{padding:40px 0}.gallery-empty[hidden]{display:none}.gallery-end{padding:45px 0 60px;border-top:1px solid var(--gallery-line);display:flex;justify-content:space-between;align-items:center;gap:40px}.gallery-end h2{font-size:clamp(2.3rem,3.3vw,3.7rem);margin-bottom:12px}.gallery-end p{font-size:.875rem;max-width:470px;color:var(--gallery-muted)}.gallery-footnote{font-size:.75rem;color:var(--gallery-muted);padding:22px 0;border-top:1px solid var(--gallery-line)}.gallery-back{margin-right:auto}.catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:45px;align-items:start}.gallery-materials .gallery-toolbar{position:sticky;top:24px;display:block;margin-bottom:0;padding-block:25px}.gallery-materials .gallery-filters{display:grid;gap:6px;margin-block:22px}.gallery-materials .gallery-filter{text-align:left;padding-inline:14px}.gallery-materials .gallery-count{display:block;margin-top:26px}.gallery-materials .gallery-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.gallery-materials .work-card{background:#fcfaf6;border:1px solid var(--line)}.gallery-materials .work-picture{aspect-ratio:5/4}.gallery-materials .work-caption{padding:22px}.gallery-materials .work-caption h2{font-size:2rem}.gallery-materials .work-description{display:block;padding:0 22px 24px;margin:0;font-size:.875rem}.gallery-materials .catalog-help{font-size:.875rem;color:var(--gallery-muted);padding-top:24px;border-top:1px solid var(--line)}.gallery-materials .catalog-help a{display:inline-block;border-bottom:1px solid;margin-top:10px}.work-viewer{width:min(1250px,94vw);max-width:94vw;max-height:92dvh;background:var(--paper);color:var(--ink);padding:0;border:1px solid var(--gallery-line)}.work-viewer::backdrop{background:#111c24dc}.viewer-top{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--gallery-line);gap:20px}.work-viewer button{background:transparent;color:inherit;border:1px solid var(--gallery-line);padding:9px 14px;min-height:44px}.viewer-body{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr)}.work-viewer .viewer-image{width:100%;height:65dvh;object-fit:contain;background:#14232b}.viewer-copy{padding:30px;display:flex;flex-direction:column;align-items:start}.viewer-copy h2{font:500 2.7rem/1.08 var(--serif);margin:18px 0 22px;letter-spacing:-.03em}.viewer-copy p{font-size:.875rem;margin-bottom:24px}.viewer-copy .viewer-disclosure{font-size:.75rem;color:var(--gallery-muted);margin-top:auto;padding-top:20px}.viewer-copy .button{margin-top:10px}.viewer-controls{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:14px 24px;border-top:1px solid var(--gallery-line)}.work-viewer button:disabled{opacity:.4;cursor:default}.gallery-structure .viewer-copy h2{font-family:var(--sans);font-size:2rem}[hidden]{display:none!important}.header button.text-link,.work-detail button.text-link{background:none;border:0;border-bottom:1px solid;padding-inline:0}.header [aria-current=page]{text-decoration:underline;text-underline-offset:6px}.material-kicker{margin-bottom:22px}.catalog-link{margin-top:22px}.contact-email{display:block;margin-top:22px;font-size:.875rem}.gallery-filter[aria-current=page]{background:var(--ink);color:var(--paper)}.gallery-heading{padding-block:38px 32px}.gallery-heading h1{font-size:clamp(3.2rem,5.3vw,5.5rem);line-height:1.02}.contacts-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;align-items:end;padding-block:62px 74px}.contacts-hero .eyebrow{margin-bottom:22px}.contacts-hero h1{font-size:clamp(3.7rem,6.2vw,6.8rem);line-height:.94}.contacts-hero>p{max-width:390px;margin:0 0 8px}.contacts-layout{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--line)}.contacts-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;padding:42px 0 58px}.contacts-details article{display:flex;flex-direction:column;align-items:flex-start}.contacts-details .eyebrow{margin-bottom:38px}.contacts-details a,.contacts-details h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.8rem,2.8vw,2.9rem);line-height:1;letter-spacing:-.035em}.contacts-details a{border-bottom:1px solid currentColor;white-space:nowrap}.contacts-details p{max-width:260px;margin:24px 0 0;font-size:.875rem}.contacts-note{display:grid;grid-template-columns:1.6fr 1fr;gap:70px;padding:28px 0 84px;border-top:1px solid var(--line)}.contacts-note p{max-width:390px;margin:0}.gallery-empty{grid-column:1/-1;padding:50px 0 80px;min-height:360px}.gallery-empty h2{font-size:3rem;margin:20px 0}.gallery-empty p{max-width:470px}.gallery-empty .text-link{margin:24px 24px 0 0}.pagination{display:flex;align-items:center;justify-content:center;gap:30px;padding-bottom:60px}.image-placeholder{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;font:500 2rem var(--serif);text-align:center}.image-placeholder small{font:400 .75rem var(--sans);padding:10px}.work-detail{padding-top:24px}.preserve-lines{white-space:pre-line}.work-detail .gallery-heading p{max-width:none}.work-detail .gallery-heading .text-link{margin-top:24px}.work-detail .work-heading-compact{grid-template-columns:minmax(0,1fr) auto;gap:24px}.work-detail .work-heading-compact .text-link{margin-top:0}.work-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px;padding-bottom:80px}.work-images figure:first-child{grid-column:1/-1}.work-images a{display:block;position:relative;background:#e6dfd4}.work-images img{width:100%;max-height:80vh;height:auto;object-fit:contain}.work-images-single{grid-template-columns:minmax(0,1fr)}.work-images figcaption{font-size:.875rem;color:var(--muted);margin-top:12px}.viewer-caption{padding:0 24px 24px}.work-viewer .viewer-image{height:65dvh}.legal-page{max-width:1040px;padding-block:60px 90px;overflow-wrap:anywhere}.legal-page h1{font-size:clamp(2.5rem,5vw,4.7rem);margin-bottom:32px}.legal-page h2{font:600 1.2rem/1.4 var(--sans);letter-spacing:0;margin:36px 0 16px}.legal-page p,.legal-page ul,.legal-page ol{margin-block:16px}.legal-page a,.checkbox a,.cookie-consent a{text-decoration:underline;text-underline-offset:3px}.legal-page li{margin-block:10px}.services-list{border-top:1px solid var(--line);margin:25px 0 70px}.services-list article{display:grid;grid-template-columns:40px 1fr 1fr auto;gap:30px;align-items:start;padding:40px 0;border-bottom:1px solid var(--line)}.services-list h2{font-size:2.6rem}.services-list p{font-size:.875rem;max-width:410px}.services-list .text-link{padding-top:0;white-space:nowrap}.services-list button.text-link{border:0;border-bottom:1px solid currentColor;background:transparent}.error-page{padding-block:90px}.error-page h1{margin:25px 0}.error-page .button{margin-top:30px}input,textarea,select{width:100%;font:inherit;color:var(--ink);border:1px solid #9babae;border-radius:0;background:#fcfaf6;padding:12px 14px;min-width:0}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #82613f;outline-offset:3px}textarea{resize:vertical}label{display:block;font-size:.875rem;margin:20px 0 8px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);flex-shrink:0;margin-top:3px}.checkbox{display:flex;gap:12px;align-items:flex-start;line-height:1.6}.checkbox small{display:block;color:var(--muted)}fieldset{border:0;padding:0;margin:28px 0 0}legend{font-weight:600;font-size:.875rem}button:disabled{opacity:.55;cursor:wait}.enquiry-dialog{width:620px;padding:28px 36px 36px;overflow:auto;border:1px solid var(--line)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-heading button{font-size:1.5rem;min-height:44px;min-width:44px;padding:0}.enquiry-dialog h2{font-size:3rem;margin:20px 0}.enquiry-dialog p{font-size:.875rem}.enquiry-dialog .button{background:var(--ink);color:var(--paper);padding:14px 24px;width:100%;margin-top:18px}.enquiry-dialog .checkbox,.enquiry-dialog input[type=file]{font-size:.75rem}body:has(dialog[open]){overflow:hidden}#enquiry-status{padding:14px;margin-top:20px;background:#e5e8de;border:1px solid #bcc4b5}#enquiry-status[data-error=true]{background:#f3e4dc;border-color:#b07a66}.cookie-consent{position:fixed;bottom:18px;left:var(--gutter);right:var(--gutter);max-width:650px;margin-left:auto;z-index:20;display:flex;gap:24px;align-items:center;padding:18px 22px;background:#263d4b;color:#f2ede4;border:1px solid #4e6875;font-size:.75rem;box-shadow:0 4px 28px #192c361a}.cookie-consent button{border:1px solid #bd9c76;color:inherit;background:transparent;min-height:44px;padding:8px 18px}.calculator-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw;margin:20px 0 80px;align-items:start}.calculator-form{border-top:1px solid var(--line);padding-top:12px}.calculator-select{position:relative}.calculator-select select{display:none}.calculator-select-trigger{position:relative;display:flex;width:100%;min-height:58px;align-items:center;padding:15px 58px 15px 18px;border:1px solid var(--ink);border-radius:0;background:#fcfaf6;box-shadow:inset 0 -2px 0 var(--sand);text-align:left;transition:border-color .2s,background-color .2s,box-shadow .2s}.calculator-select-trigger:after{position:absolute;right:20px;width:11px;height:11px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);content:"";transform:translateY(-3px) rotate(45deg);transition:transform .2s}.calculator-select-trigger:hover,.calculator-select[data-open=true] .calculator-select-trigger{background:#f8f3eb;border-color:#82613f}.calculator-select-trigger:focus-visible{outline:2px solid #82613f;outline-offset:3px;box-shadow:inset 0 -2px 0 var(--sand),0 0 0 4px #bd9c7640}.calculator-select[data-open=true] .calculator-select-trigger:after{transform:translateY(3px) rotate(225deg)}.calculator-select-options{position:absolute;z-index:5;top:calc(100% + 8px);left:0;right:0;overflow:hidden;border:1px solid var(--ink);background:#fcfaf6;box-shadow:0 16px 30px #263d4b1f}.calculator-select-option{display:block;width:100%;padding:14px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-size:.875rem;line-height:1.45}.calculator-select-option:last-child{border-bottom:0}.calculator-select-option:hover,.calculator-select-option:focus-visible{background:#e6ddd0;outline:0}.calculator-select-option[aria-selected=true]{background:var(--ink);color:var(--paper)}.estimate-card{padding:36px;background:#fcfaf6;border:1px solid var(--line);border-top:4px solid var(--sand);position:sticky;top:30px}.estimate-card h2{font-size:3.7rem;margin:24px 0}.estimate-card ul{padding:0;list-style:none}.estimate-card li{border-bottom:1px solid var(--line);padding:12px 0;font-size:.875rem}.estimate-card p{font-size:.8125rem;color:var(--muted);margin:24px 0}.estimate-card .button{width:100%}@media (max-width:1150px){.header .header-cta,.header .location{display:none}.header nav{margin-left:auto}}@media (max-width:1000px){.material-intro h1{font-size:4.4rem}.material-hero>img{min-height:560px}.material-display>img{height:500px}.catalog-layout{grid-template-columns:180px minmax(0,1fr);gap:24px}.gallery-materials .work-caption{padding:16px}.gallery-materials .work-description{padding:0 16px 20px}.services-list article{grid-template-columns:30px 1fr 1fr}.services-list .text-link{grid-column:3;justify-self:start}.contact .contact-top{gap:35px}.contacts-hero,.contacts-layout,.contacts-note{gap:40px}.contacts-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}@media (max-width:850px){.small-jobs{grid-template-columns:minmax(0,1fr);gap:32px}.small-jobs-action p{max-width:550px}.calculator-layout{gap:30px}}@media (max-width:700px){:root{--gutter:24px }.header{flex-wrap:wrap;gap:8px;padding-block:15px;min-height:100px}.header nav{flex-basis:100%;flex-wrap:wrap;gap:8px 22px;margin:0;font-size:.8125rem}.header nav a{min-height:36px;display:inline-flex;align-items:center}.header nav a.optional{display:none}.brand{width:146px}.brand img{width:100%}.section{padding-block:55px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:25px}.steps{grid-template-columns:1fr;gap:28px;margin-top:32px}.steps h3{margin:18px 0 12px}.steps p{max-width:none}.contact{padding-block:55px 24px}.contact .contact-top{grid-template-columns:1fr;gap:30px}.contacts-hero,.contacts-layout,.contacts-note{grid-template-columns:1fr;gap:26px}.contacts-hero{padding-block:42px 52px}.contacts-hero>p{margin:0}.contacts-details{grid-template-columns:1fr;padding:30px 0;gap:34px}.contacts-details .eyebrow{margin-bottom:22px}.contacts-note{padding:26px 0 55px}.contact h2,.materials .contact h2{font-size:3.5rem}.footer-line{margin-top:45px;flex-wrap:wrap;gap:16px 24px}.material-hero{grid-template-columns:1fr;margin-top:18px}.material-intro h1{font-size:3.8rem}.material-hero>img{min-height:0;height:350px}.material-facts{grid-template-columns:1fr;gap:15px;font-size:.875rem}.material-facts div{display:flex;gap:15px;align-items:baseline}.material-facts span{min-width:98px}.material-tool{grid-template-columns:1fr;gap:28px}.material-display{position:relative;top:0}.material-display>img{height:400px}.material-options{display:grid;grid-template-columns:1fr 1fr}.material-option{padding:14px 8px;gap:10px}.material-option>img{height:32px;width:32px}.material-option small,.material-option .arrow{display:none}.material-option b{font-size:.75rem}.faq{grid-template-columns:1fr;gap:28px}.small-jobs{margin-block:18px 40px}.materials .small-jobs{padding:32px 0}.materials .small-jobs h2{font-size:clamp(2.6rem,9vw,3.6rem)}.small-jobs h2 br{display:none}.small-jobs h2 em{display:block}.small-jobs .button{padding:13px 16px;gap:15px}.small-jobs .button .arrow{flex-shrink:0}.gallery-heading,.work-detail .work-heading-compact{grid-template-columns:1fr;padding-block:32px 26px;gap:18px}.gallery-heading h1{font-size:3.3rem}.gallery-heading p{max-width:100%}.catalog-layout{grid-template-columns:1fr;gap:24px}.gallery-materials .gallery-toolbar{position:static;padding-block:16px}.gallery-materials .gallery-filters{display:flex;margin-block:16px;gap:6px}.gallery-filter{padding:9px 12px;font-size:.8125rem}.gallery-materials .gallery-count{margin-top:16px}.gallery-materials .catalog-help{display:none}.gallery-materials .gallery-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px;margin-bottom:45px}.gallery-materials .work-caption{padding:14px}.gallery-materials .work-caption h2{font-size:1.45rem;overflow-wrap:anywhere}.work-caption p{font-size:.75rem}.gallery-materials .work-description,.work-index{display:none}.work-open{width:28px;height:28px;right:8px;bottom:8px}.gallery-end{display:block;padding-block:30px 40px}.gallery-end .button{margin-top:24px}.work-images{grid-template-columns:1fr;gap:28px}.work-viewer .viewer-image{height:55dvh}.viewer-controls{padding:12px}.viewer-controls button{font-size:.8125rem;padding:8px}.services-list article{grid-template-columns:24px 1fr;gap:18px}.services-list h2{font-size:2.3rem}.services-list p,.services-list .text-link{grid-column:2}.services-list p{max-width:none}.calculator-layout{grid-template-columns:1fr;margin-bottom:55px}.estimate-card{position:static;padding:24px}.estimate-card h2{font-size:3.3rem}.enquiry-dialog{padding:20px;max-width:calc(100vw - 24px);max-height:94dvh}.enquiry-dialog h2{font-size:2.5rem}.cookie-consent{left:12px;right:12px;bottom:12px;padding:12px;gap:14px}.legal-page{padding-block:35px 60px}.gallery-empty{min-height:280px;padding:20px 0 45px}.gallery-empty h2{font-size:2.5rem}}@media (max-width:359px){.gallery-materials .gallery-board{grid-template-columns:1fr}.material-intro h1{font-size:3.2rem}.material-facts div{display:block}.material-option>img{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.work-viewer .viewer-copy .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}.viewer-copy .text-link{margin-top:18px}@media (max-width:700px){.viewer-body{grid-template-columns:1fr}.viewer-body .viewer-image{height:42dvh}.viewer-copy{padding:22px}.viewer-copy h2{font-size:2rem;margin:12px 0}.viewer-top{padding:12px 16px}}
