@font-face{font-family:Text;src:url('assets/Dioptrice-Text-Regular.woff2');font-display:swap}@font-face{font-family:Display;src:url('assets/Dioptrice-Display-Regular.woff2');font-display:swap}:root{--bone:#e7ded0;--ink:#171615;--copper:#c77e57;--line:#e7ded036}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:55px}body{margin:0;background:var(--ink);color:var(--bone);font:18px/1.65 Text,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:transparent;border:0}button:focus-visible,a:focus-visible{outline:2px solid var(--copper);outline-offset:7px}p{margin:0 0 1em}h1,h2,h3{font-family:Display,Arial,sans-serif;font-weight:400;line-height:1.08;margin:0;letter-spacing:-.025em}h1{font-size:clamp(76px,10.5vw,154px)}h2{font-size:clamp(44px,5.2vw,76px)}h3{font-size:clamp(29px,2.7vw,39px)}.wrap{max-width:1260px;width:calc(100% - 112px);margin-left:auto;margin-right:auto}.eyebrow,.detail,figcaption,.stocks-visual>span{font:11px/1.6 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}.eyebrow{color:var(--copper);margin-bottom:34px}.skip{position:fixed;top:-100px;padding:12px;background:var(--bone);color:var(--ink);z-index:20}.skip:focus{top:0}header{height:120px;display:flex;align-items:center;justify-content:center;position:relative}.wordmark img{width:250px;display:block}.menu-toggle{position:absolute;right:4vw;top:40px;padding:12px;z-index:6}.menu-toggle img{width:49px;display:block}#page-menu{position:absolute;right:5vw;top:105px;background:var(--bone);color:var(--ink);padding:26px;z-index:5;box-shadow:0 8px 35px #0004}#page-menu a{display:block;margin:9px 0}#page-menu[hidden]{display:none}.intro{padding-top:85px;padding-bottom:75px}.intro-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;margin-top:58px;align-items:end}.intro-bottom>div{max-width:450px}.large-copy{font-size:clamp(24px,2.3vw,33px);line-height:1.35;margin:0}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:15px 0 12px;font-size:15px}.text-link span{color:var(--copper)}.wide-image{margin-top:0;margin-bottom:0}.wide-image img{display:block;width:100%;aspect-ratio:2.45;object-fit:cover;object-position:50% 41%;border-radius:3px}.wide-image figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:17px;font-size:10px;color:#b9b0a4}.journey{padding-top:125px}.section-heading{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;padding-bottom:70px;align-items:start}.section-heading .eyebrow{max-width:210px;padding-top:9px}.step{display:grid;grid-template-columns:.32fr .88fr 1fr;gap:50px;border-top:1px solid var(--line);padding:54px 0 58px}.number{font:34px Display;color:var(--copper);line-height:1.15}.step p{font-size:18px;line-height:1.65;color:#d8d0c4}.detail{display:block;color:var(--copper);font-size:9px;margin-top:26px;letter-spacing:.1em}.pause-image{position:relative;margin:18px 0 65px;overflow:hidden;border-radius:3px}.pause-image img{display:block;width:100%;aspect-ratio:2.65;object-fit:cover}.pause-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080c0bdd,transparent 90%)}.pause-image p{position:absolute;left:5%;top:50%;transform:translateY(-50%);z-index:1;font:clamp(26px,3vw,44px)/1.17 Display;margin:0;color:#f2e9dd}.stocks{margin-top:60px;padding:65px;background:var(--bone);color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:70px;border-radius:3px}.stocks .eyebrow{color:#8d4d30}.stocks h2{font-size:clamp(70px,7.5vw,110px);margin-bottom:35px}.stocks .lead{font-size:29px;line-height:1.2;margin-bottom:28px}.stocks-copy>p:not(.eyebrow):not(.lead){font-size:17px}.stocks-visual{align-self:center}.stocks-visual img{display:block;width:100%;aspect-ratio:.86;object-fit:cover;object-position:58% 50%;border-radius:50% 0 0 50%}.stock-colors{display:flex;height:15px;margin-top:25px}.stock-colors i{flex:1;background:#12181b}.stock-colors i:nth-child(2){background:#254252}.stock-colors i:nth-child(3){background:#b47244}.stock-colors i:nth-child(4){background:#d5b293}.stocks-visual>span{display:block;margin-top:14px;font-size:9px;letter-spacing:.08em}.existing-look{grid-column:1/-1;border-top:1px solid #17161544;display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:38px}.existing-look h3{font-size:32px}.existing-look p{font-size:17px;margin:0}.closing{padding:125px 0 110px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:80px;align-items:end}.closing>.eyebrow{grid-column:1/-1}.closing h2{font-size:clamp(60px,7vw,100px)}.closing>div{padding-bottom:5px}.contact-preview{display:flex;justify-content:space-between;gap:40px;padding:15px 0;border-bottom:1px solid var(--copper);width:100%;text-align:left}.contact-preview span{color:var(--copper)}footer{padding:50px 0 28px;border-top:1px solid var(--line);text-align:center}.footer-icon{display:block;width:36px;margin:0 auto 20px}.footer-wordmark{display:block;width:225px;margin:0 auto 55px}footer>div{display:flex;justify-content:space-between;font:10px Arial;letter-spacing:.08em}dialog{background:var(--bone);color:var(--ink);border:0;width:min(540px,calc(100% - 40px));padding:55px;border-radius:4px}dialog::backdrop{background:#080808b8;backdrop-filter:blur(8px)}dialog h2{font-size:45px;margin-bottom:28px}dialog .eyebrow{color:#8d4d30}dialog p{font-size:17px}.dialog-close{position:absolute;right:15px;top:10px;font-size:30px}.dialog-done{border-bottom:1px solid var(--ink);font-size:15px;padding:10px 0}
@media(max-width:760px){body{font-size:17px}.wrap{width:calc(100% - 40px)}header{height:94px}.wordmark img{width:180px}.menu-toggle{right:12px;top:23px;padding:12px 0}.menu-toggle img{width:30px}.intro{padding-top:45px;padding-bottom:45px}h1{font-size:clamp(67px,16.8vw,112px)}.eyebrow{font-size:9px;margin-bottom:25px}.intro-bottom{grid-template-columns:1fr;gap:28px;margin-top:35px}.large-copy{font-size:25px}.intro-bottom>div{max-width:none}.wide-image img{aspect-ratio:1.2;object-position:58% 50%}figcaption span:last-child{max-width:150px;text-align:right}.journey{padding-top:75px}.section-heading{grid-template-columns:1fr;gap:0;padding-bottom:42px}.section-heading h2{font-size:44px}.section-heading .eyebrow{max-width:none}.step{grid-template-columns:42px 1fr;gap:18px;padding:32px 0 38px}.number{font-size:25px}.step h3{font-size:32px}.step>div{grid-column:2}.step p{font-size:16px;line-height:1.7}.detail{font-size:8px}.pause-image{margin:0 0 38px}.pause-image img{aspect-ratio:1;object-position:55% 50%}.pause-image p{left:7%;font-size:32px}.stocks{padding:30px 25px;grid-template-columns:1fr;gap:32px;margin-top:25px}.stocks h2{font-size:75px;margin-bottom:25px}.stocks .lead{font-size:27px}.stocks-visual{max-width:370px;width:100%;margin:0 auto}.stocks-visual img{aspect-ratio:1.1}.existing-look{grid-template-columns:1fr;gap:20px;padding-top:30px}.existing-look h3{font-size:31px}.closing{padding:75px 0 65px;grid-template-columns:1fr;gap:28px}.closing>.eyebrow{margin-bottom:0}.closing h2{font-size:64px}.closing p br{display:none}.closing p{max-width:300px}footer{padding-top:35px}.footer-wordmark{width:190px;margin-bottom:35px}.footer-icon{width:29px}dialog{padding:45px 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Let the interlude still stand on its own. */
.pause-image:after{display:none}

/* Review pass: headings followed immediately by their supporting lines. */
.intro>h1+.eyebrow{margin:24px 0 0}.section-heading{display:block}.section-heading>.eyebrow{max-width:none;margin:22px 0 0;padding:0}.step-heading .detail{margin:17px 0 0}.stocks h2{margin-bottom:22px}.stocks h2+.eyebrow{margin-bottom:30px}.closing h2{grid-column:1;grid-row:1}.closing>.eyebrow{grid-column:1;grid-row:2;margin:20px 0 0}.closing>div{grid-column:2;grid-row:1/3}
@media(max-width:760px){.intro h1{font-size:clamp(48px,12vw,86px)}.section-heading h2{font-size:clamp(36px,9vw,48px)}.step h3{font-size:clamp(22px,5.6vw,32px)}.step .step-heading,.step .step-copy{grid-column:2}.step-heading .detail{font-size:8px;line-height:1.6;margin-top:12px}.stocks h2{font-size:clamp(52px,13vw,75px)}.existing-look h3{font-size:clamp(24px,6vw,31px)}.closing h2{font-size:clamp(45px,11vw,64px)}.closing>.eyebrow{margin:0;grid-row:2}.closing>div{grid-column:1;grid-row:3}}

@media(max-width:360px){.step h3{font-size:20px}.closing h2{font-size:36px}}

/* Clear contact actions, with the floating link yielding to the closing section. */
.contact-preview{background:var(--bone);color:var(--ink);border:1px solid var(--bone);border-radius:4px;padding:18px 24px;box-shadow:0 5px 20px #0002;transition:background .2s,transform .2s}.contact-preview:hover{background:#f4ebde;transform:translateY(-2px)}.contact-preview span{color:var(--ink)}
.floating-contact{position:fixed;left:max(32px,calc((100vw - 1370px)/2));bottom:38px;z-index:7;display:flex;align-items:center;gap:18px;padding:13px 21px;border:1px solid #e7ded050;border-radius:30px;background:#e7ded0ed;color:var(--ink);box-shadow:0 5px 20px #0004;font-size:15px;transition:opacity .35s,visibility .35s}.floating-contact svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.floating-contact.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
@media(max-width:760px){.floating-contact{left:24px;bottom:26px;padding:11px 17px;font-size:14px}.closing h2{font-size:clamp(36px,9vw,60px)}}
@media(prefers-reduced-motion:reduce){.floating-contact,.contact-preview{transition:none}}

/* Keep the revised opening heading to two lines on narrow phones. */
@media(max-width:760px){.intro h1{font-size:clamp(36px,9vw,68px)}}

.menu-toggle{position:fixed;z-index:20}#page-menu{position:fixed;z-index:19;top:0;right:0;height:100dvh;width:min(420px,88vw);padding:125px 38px 45px;box-shadow:-20px 0 70px #0005}#page-menu a{font-size:25px;padding:10px 0}body.menu-open .menu-toggle img{filter:brightness(.15)}
.still-link{display:block;position:relative}.view-project{position:absolute;right:22px;bottom:20px;padding:8px 12px;background:#171615b8;border-radius:20px;font-size:12px;color:var(--bone)}.work-link{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 0;margin:10px 0 40px;font-size:18px}.work-link span{color:var(--copper)}
.work-page{padding-top:65px;padding-bottom:55px}.work-heading{margin-bottom:55px}.work-heading h1{font-size:clamp(64px,8vw,112px)}.work-heading .eyebrow{margin:20px 0}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.work-image{aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:#242320}.work-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s}.work-card:hover img,.work-card:focus-visible img{transform:scale(1.035)}.work-card h2{font:20px/1.25 Display,Arial,sans-serif;text-transform:uppercase;margin:16px 0 6px;letter-spacing:.015em}.work-card p{font:10px/1.5 Arial,sans-serif;letter-spacing:.1em;color:var(--copper);margin:0}.work-page>.work-link{margin-top:65px}
@media(min-width:1600px){.work-page{max-width:1500px}.work-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.work-page{padding-top:30px}.work-heading{margin-bottom:32px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.work-card h2{font-size:14px;margin-top:12px}.work-card p{font-size:8px}.work-image{border-radius:7px}.view-project{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){.work-image img{transition:none}}

.journey>.work-link{padding:19px 25px;border:1px solid transparent;border-radius:16px;background:linear-gradient(125deg,#e7ded024,#e7ded008) padding-box,linear-gradient(135deg,#fff7e878,#fff7e808 45%,#fff7e832) border-box;backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);box-shadow:inset 0 1px 1px #ffffff25,0 8px 24px #0003}.journey>.work-link:hover{box-shadow:inset 0 1px 1px #ffffff45,0 8px 28px #0005}
.still-link,.work-image{position:relative;overflow:hidden}.preview-lens{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;border-radius:inherit}.view-project{z-index:2}.work-card:hover img,.work-card:focus-visible img{transform:none}.gallery-options{display:flex;gap:24px;margin:0 0 28px;font-size:14px}.gallery-options a{padding:8px 0;color:#e7ded088}.gallery-options a[aria-current]{color:var(--bone);border-bottom:1px solid var(--copper)}.tight-gallery .work-grid{gap:12px}.tight-gallery .work-heading{margin-bottom:25px}.tight-gallery .work-image{border-radius:8px}@media(max-width:760px){.tight-gallery .work-grid{gap:8px}.tight-gallery .work-image{border-radius:6px}}

/* Glass surface: no filled gradient beneath the border, including interactive states. */
.journey>.work-link,.journey>.work-link:hover,.journey>.work-link:focus-visible,.journey>.work-link:active{position:relative;isolation:isolate;background:rgb(231 222 208 / 3%);border:1px solid rgb(231 222 208 / 18%);box-shadow:inset 0 1px 0 rgb(255 255 255 / 14%),inset 0 -1px 0 rgb(255 255 255 / 5%),0 8px 24px #0002;backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1)}
.journey>.work-link::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(125deg,#fff7e870,#fff7e808 45%,#fff7e838);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}

/* Persistent enquiry form within the navigation sidebar. */
body.menu-open{overflow:hidden}#page-menu{overflow-y:auto;overscroll-behavior:contain;width:min(550px,92vw);padding:95px 36px 40px}#page-menu>a{font-size:23px}#page-menu .sidebar-close{position:absolute;top:30px;left:36px;font-size:14px;padding:8px 0}#page-menu .contact{border-top:1px solid #17161530;margin-top:26px;padding-top:30px;scroll-margin-top:25px}#page-menu .contact h3{font-size:35px;margin-bottom:28px}#page-menu label{display:block;font-size:15px;margin:18px 0}#page-menu input,#page-menu textarea{display:block;width:100%;border:0;border-bottom:1px solid #17161560;background:transparent;border-radius:0;padding:12px 0;color:var(--ink);font:16px/1.5 Text,Arial,sans-serif}#page-menu textarea{resize:vertical}#page-menu .send{display:flex;justify-content:space-between;width:100%;padding:15px 0;border-bottom:1px solid #171615;font-size:14px}#page-menu .send:disabled{opacity:.5}#page-menu .form-note,#form-status{font-size:12px;line-height:1.6;margin-top:18px}#page-menu .form-note a{display:inline;font-size:inherit;padding:0;text-decoration:underline}.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.enquiry-result{z-index:30}.enquiry-result button{display:block;margin-top:24px;padding:10px 20px;background:var(--ink);color:var(--bone);border-radius:24px}.enquiry-result a{font-size:15px;text-decoration:underline}@media(max-width:760px){#page-menu{padding-left:25px;padding-right:25px}#page-menu .sidebar-close{left:25px}#page-menu .contact h3{font-size:29px}}

.sidebar-backdrop{position:fixed;inset:0;z-index:18;background:rgb(0 0 0 / 18%);touch-action:manipulation}.sidebar-backdrop[hidden]{display:none}

/* Two-column Work gallery on mobile and desktop. */
.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
