.page-content{grid-template-columns:minmax(0,1fr) 280px;gap:8%;padding-bottom:50px}.page-content h2{font-size:32px}.page-content article{margin-bottom:42px;scroll-margin-top:120px}.page-content aside{align-self:start}.page-content aside h2{font:500 20px var(--display);margin:0}.page-content aside>a{padding:10px 0}.page-content aside>.primary{padding:20px;margin-top:10px}.article-image{margin:0 0 45px}.article-image img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.article-image figcaption{font-size:12px;color:#adb4a3;margin-top:12px}.project-gallery,.page-directory,.blog-list,.contact-map-section{padding:65px 6% 85px}.project-gallery{background:#20261c}.project-gallery h2,.page-directory>h2,.blog-list>h2,.contact-map-section>h2{font:500 clamp(30px,4vw,52px)/1.2 var(--display);margin:0 0 28px}.project-gallery .wide-heading p{max-width:45ch;font-size:14px}.project-slide{margin:0}.project-slide>img{display:block;width:100%;height:clamp(260px,45vw,550px);object-fit:cover}.project-slide figcaption{padding:24px 0 0;display:flex;justify-content:space-between;gap:30px}.project-slide h3{font:500 28px var(--display);margin:0}.project-slide p{font-size:15px;line-height:1.7;max-width:50ch;margin:0;color:#bec5b4}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}.directory-item{padding:30px 0;border-top:1px solid #66705a}.directory-item h3{font:500 26px var(--display);margin:0 0 15px}.directory-item p,.blog-card p{font-size:15px;line-height:1.75;color:#bec5b4}.directory-item span,.blog-card span{display:block;margin-top:25px;color:#e3a17c}.directory-item:hover h3,.blog-card:hover h3{color:#e3a17c}.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.blog-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.blog-card h3{font:500 32px/1.3 var(--display);margin:25px 0 15px}.contact-map-section{background:#dedacc;color:#242b20}.contact-map-section iframe{display:block;width:100%;height:460px;border:0}.map-awaiting{min-height:320px;background:#cdcdbf;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;color:#4a563d}.map-awaiting h3{font:500 28px var(--display);margin:18px 0 8px}.map-awaiting p{max-width:48ch;line-height:1.7}.contact-map-section>a{display:inline-block;padding:14px 0;text-decoration:underline}
@media(max-width:700px){.page-content{grid-template-columns:1fr;gap:30px}.page-content h2{font-size:27px}.project-gallery,.page-directory,.blog-list,.contact-map-section{padding:45px 24px}.directory-grid,.blog-grid{grid-template-columns:1fr;gap:24px}.project-slide figcaption{display:block}.project-slide h3{margin-bottom:12px}.project-slide>img{height:240px}.contact-map-section iframe{height:340px}}
.blog-illustration{position:relative;aspect-ratio:3/2;overflow:hidden;background:#dedacc}
.blog-illustration img{position:absolute;width:204%;max-width:none;height:auto;aspect-ratio:auto;top:50%;transform:translateY(-50%);left:0}
.illustration-right img{left:-104%}
.product-view{padding:10px 0 0;border-bottom:0}.product-view-scene{overflow:hidden;min-height:200px;display:grid;place-items:center}.product-view img{display:block;width:100%;height:190px;object-fit:contain;transition:transform .18s ease-out}.product-view label{display:block;margin:12px 0;font-size:13px}.product-view input{width:100%;accent-color:#d27c52}.product-view button{margin-top:12px;padding:10px 12px;min-height:44px;background:none;color:#dcded3;border:1px solid #657254;font:inherit}.reading-progress{display:none}.reading-progress span{display:block;width:100%;height:100%;background:#d27c52;transform:scaleX(0);transform-origin:left}.page-content aside .reading-current{color:#edaf88;border-color:#d27c52}.page-content article{transition:opacity .25s}.page-content article.reading-active h2{color:#edaf88}.contact-direct{display:flex;flex-wrap:wrap;gap:18px 30px;margin-bottom:35px;padding-bottom:25px;border-bottom:1px solid #657254}.contact-direct a{font-size:clamp(18px,2vw,26px);text-decoration:underline;text-underline-offset:6px}
@media(min-width:1101px){.page-content aside{position:sticky;top:calc(var(--header-height,90px) + 16px);max-height:calc(100svh - var(--header-height,90px) - 32px);overflow:auto;scrollbar-width:thin;padding-right:12px}}
@media(max-width:700px){.page-content:has(.product-view) aside{grid-row:1}.page-content:has(.product-view) .product-view-scene{min-height:170px}.page-content:has(.product-view) aside>h2,.page-content:has(.product-view) aside>a[href^="#section-"]{display:none}.product-view img{height:170px}}
@media(prefers-reduced-motion:reduce){.product-view img,.page-content article{transition:none}}
.inner-page main{overflow:clip}
@media(min-width:1101px){.page-content aside:has(.product-view){position:static;align-self:stretch;max-height:none;overflow:visible}.page-content aside .product-view{position:sticky;top:calc(var(--header-height,90px) + 16px);z-index:1;background:#151715}}
.project-slide{overflow:hidden}
/* Gallery and enquiry share one continuous surface; spacing marks the next step. */
.inner-page .project-gallery{background:#22271d;padding-bottom:48px}
.inner-page .project-gallery + .contact-section{background:#22271d;padding-top:48px}
.project-slider{padding:42px 0;border-top:1px solid #536048}.project-slider:first-of-type{margin-top:35px}.project-name{font:500 clamp(22px,3vw,34px)/1.2 var(--display);margin:0 0 20px;color:#edaf88}.project-slider .project-slide h4{font:500 24px var(--display);margin:0}.project-slider .carousel-controls{margin-top:10px}
.project-image{cursor:zoom-in}.photo-preview{padding:0;background:#11140f;border:1px solid #657254;max-width:min(1360px,96vw);max-height:94svh;overflow:hidden}.photo-preview::backdrop{background:#060806ed;backdrop-filter:blur(10px)}.photo-preview-top{height:64px;padding:0 14px 0 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #3c4437;background:linear-gradient(90deg,#1c211a,#11140f)}.photo-preview-label{font:500 14px var(--display);color:#edaf88;letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:auto}.photo-preview-tools{display:flex;border:1px solid #657254}.photo-preview-tools button,.photo-preview .close-dialog{min-width:42px;min-height:42px;border:0;border-left:1px solid #657254;background:transparent;color:#e8e5d9;font:500 14px Geist,sans-serif;padding:8px 12px}.photo-preview-tools button:first-child{border-left:0}.photo-preview-tools button:hover,.photo-preview .close-dialog:hover{background:#30372a}.photo-preview .close-dialog{border:1px solid #657254}.photo-preview-stage{width:min(1320px,96vw);height:min(78svh,820px);display:grid;place-items:center;overflow:hidden;touch-action:none;background:radial-gradient(circle at center,#242a21,#0e100d 68%)}.photo-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;transition:transform .12s ease-out;user-select:none}.photo-preview-stage:has(img[style*="scale(1)"]){cursor:zoom-in}.photo-preview-stage:not(:has(img[style*="scale(1)"])){cursor:grab}@media(max-width:700px){.photo-preview{max-width:100vw;width:100vw;border-inline:0}.photo-preview-top{height:58px;padding-inline:12px}.photo-preview-label{font-size:13px}.photo-preview-tools button,.photo-preview .close-dialog{min-width:38px;min-height:38px;padding-inline:9px}.photo-preview-stage{width:100vw;height:calc(100svh - 58px)}}@media(prefers-reduced-motion:reduce){.photo-preview img{transition:none}}
.gallery-thumbnails{display:flex;gap:10px;overflow:auto;padding:18px 0 4px}.gallery-thumbnails button{flex:0 0 88px;width:88px;height:62px;padding:0;border:1px solid #536048;background:#151715;opacity:.62}.gallery-thumbnails button[aria-selected=true]{opacity:1;border-color:#df895a;box-shadow:inset 0 0 0 1px #df895a}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover;display:block}.gallery-thumbnails button:focus-visible{outline-offset:3px}
@media(max-width:700px){.inner-page .project-gallery{padding-bottom:32px}.inner-page .project-gallery + .contact-section{padding-top:32px}}
@media(max-width:700px){.gallery-thumbnails button{flex-basis:76px;width:76px;height:54px}}
.photo-open{overflow:hidden}
.photo-preview[open]{display:flex;flex-direction:column;width:min(1360px,96vw);height:94dvh;max-height:94dvh;margin:auto;color:var(--paper)}
.photo-preview-top{flex:none}.photo-preview-stage{position:relative;flex:1;min-height:0;min-width:0;width:100%;height:auto;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0;overscroll-behavior:contain}
.photo-preview img{transition:none;touch-action:none;-webkit-user-drag:none;object-fit:contain;object-position:center;width:auto;min-width:0;height:auto;max-width:none;max-height:none;flex:0 0 auto}
.photo-preview-stage.is-dragging{cursor:grabbing}
.photo-preview-hint{flex:none;margin:0;padding:10px 16px;font-size:12px;line-height:1.5;color:var(--paper);border-top:1px solid var(--line)}
.photo-preview-tools button,.photo-preview .close-dialog{min-width:44px;min-height:44px}
.photo-preview-tools button:disabled{opacity:.4;cursor:default}
@media(max-width:700px){.photo-preview[open]{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0}.photo-preview-top{height:auto;min-height:100px;display:grid;grid-template-columns:1fr auto;padding:8px 12px;gap:8px}.photo-preview-label{grid-column:1/-1;max-width:100%}.photo-preview-tools{justify-self:start}.photo-preview .close-dialog{position:static}.photo-preview-hint{padding-bottom:max(10px,env(safe-area-inset-bottom))}.project-slider .project-slide h4{font-size:20px}.gallery-thumbnails{overscroll-behavior-x:contain}.contact-direct a{overflow-wrap:anywhere}}

.gallery-thumbnails{scrollbar-width:none}.gallery-thumbnails::-webkit-scrollbar{display:none}
.photo-preview-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:none;padding:6px 16px;border-top:1px solid var(--line)}.photo-preview-nav button{width:48px;height:44px;background:transparent;border:1px solid #657254;color:var(--paper);font:20px var(--font)}.photo-preview-nav span{min-width:70px;text-align:center;font-variant-numeric:tabular-nums}.photo-preview-nav button:hover{background:#30372a}
