:root{--ink:#242127;--muted:#666069;--paper:#fff;--soft:#f7f2ee;--cream:#fffaf3;--berry:#a3265c;--berry-dark:#74183e;--teal:#146b67;--gold:#d79b25;--line:#e6ded8;--shadow:0 18px 50px rgba(36,33,39,.12);--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--wrap:min(1180px,calc(100% - 40px));--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.no-scroll{overflow:hidden}img{display:block;max-width:100%;object-fit:cover}a{color:inherit}button,input,textarea{font:inherit}.wrap{width:var(--wrap);margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--ink);color:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 .8rem;color:var(--berry);font-size:.78rem;font-weight:800;letter-spacing:.16em;line-height:1.3;text-transform:uppercase}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;margin-top:0}h1{font-size:clamp(2.8rem,6.8vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.8rem);letter-spacing:-.035em}h3{font-size:clamp(1.35rem,2vw,1.75rem)}p{margin-top:0}.lead{font-size:1.22rem}.center{text-align:center}.fine-print{color:var(--muted);font-size:.84rem}
.site-header{position:relative;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(36,33,39,.08)}.header-inner{display:flex;min-height:90px;align-items:center;justify-content:space-between;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none}.brand-mark{display:grid;width:44px;height:44px;place-items:center;background:linear-gradient(145deg,var(--berry),var(--berry-dark));border-radius:50%;color:#fff;font-family:var(--serif);font-size:1.65rem;box-shadow:0 7px 22px rgba(163,38,92,.22)}.brand strong,.brand small{display:block;line-height:1.08}.brand strong{font-family:var(--serif);font-size:1.25rem;font-weight:500}.brand small{margin-top:.25rem;color:var(--muted);font-size:.69rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.site-nav ul{display:flex;align-items:center;gap:1.2rem;margin:0;padding:0;list-style:none}.site-nav a{position:relative;text-decoration:none;font-size:.83rem;font-weight:700;white-space:nowrap}.site-nav a:not(.nav-contact)::after{position:absolute;right:0;bottom:-.45rem;left:0;height:2px;background:var(--berry);content:"";transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-nav a:hover::after,.site-nav a[aria-current=page]::after{transform:scaleX(1)}.nav-language a{border-left:1px solid var(--line);padding-left:1.2rem;color:var(--berry)}.nav-contact{display:inline-flex;padding:.7rem 1rem;background:var(--ink);color:#fff;border-radius:2px}.menu-toggle{display:none;border:0;background:transparent;color:var(--ink);font-weight:700}
.hero{position:relative;display:grid;min-height:630px;align-items:end;overflow:hidden;background:#453f46;color:#fff}.hero--inner{min-height:510px}.hero__slide,.hero__veil{position:absolute;inset:0}.hero__slide{background-position:center;background-size:cover;opacity:0;transform:scale(1.05);transition:opacity 1.6s ease}.hero__slide.is-active{opacity:1;animation:kenburns 12s ease-out both}.hero__veil{background:linear-gradient(90deg,rgba(29,22,29,.82) 0%,rgba(29,22,29,.56) 48%,rgba(29,22,29,.15) 100%)}.hero__content{position:relative;z-index:2;padding-block:clamp(5rem,10vw,8.2rem);text-shadow:0 2px 28px rgba(0,0,0,.25)}.hero__content .eyebrow{color:#fff3cc}.hero__content h1{max-width:900px;margin-bottom:1.4rem}.hero__content>p:not(.eyebrow){max-width:680px;margin-bottom:2rem;font-size:clamp(1.05rem,1.8vw,1.28rem)}.hero__actions,.direction-buttons,.social-actions,.cookie-actions,.dialog-actions{display:flex;flex-wrap:wrap;gap:.8rem}.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:2px;padding:.78rem 1.25rem;cursor:pointer;font-weight:800;line-height:1.2;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--berry);color:#fff}.btn--primary:hover{background:var(--berry-dark)}.btn--ghost{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(8px)}.btn--outline{border-color:var(--ink);background:transparent;color:var(--ink)}.btn--outline:hover{background:var(--ink);color:#fff}.btn--light{background:#fff;color:var(--berry-dark)}.btn--text{background:transparent;text-decoration:underline}.text-link{display:inline-flex;align-items:center;gap:.6rem;color:var(--berry-dark);font-weight:800;text-decoration:none}.text-link span{font-size:1.4rem;transition:transform .2s}.text-link:hover span{transform:translateX(5px)}
.intro-band{padding:3.8rem 0;border-bottom:1px solid var(--line);background:var(--cream)}.split-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:clamp(2rem,7vw,7rem)}.split-intro h2{margin-bottom:0}.split-intro>p{margin-bottom:.5rem;font-size:1.16rem}.section{padding-block:clamp(5rem,9vw,8.5rem)}.section--soft{background:var(--soft)}.section--colour{background:linear-gradient(135deg,var(--berry-dark),var(--berry) 62%,#c94d68);color:#fff}.section-heading{max-width:760px;margin-bottom:3rem}.section-heading>p:not(.eyebrow){font-size:1.1rem}.section-heading--light .eyebrow{color:#ffe0a1}.feature-grid{display:grid;gap:1.4rem}.feature-grid--3{grid-template-columns:repeat(3,1fr)}.feature-grid--4{grid-template-columns:repeat(4,1fr)}.image-card{background:#fff;box-shadow:0 10px 38px rgba(36,33,39,.07)}.image-card__image{display:block;overflow:hidden}.image-card img{width:100%;aspect-ratio:5/4;transition:transform .55s}.image-card:hover img{transform:scale(1.035)}.image-card__body{padding:1.6rem}.image-card__body h3{margin-bottom:.7rem}.image-card__body p{color:var(--muted)}.mini-feature img{width:100%;aspect-ratio:1;margin-bottom:1.25rem}.mini-feature h3{margin-bottom:.45rem}.mini-feature p{color:var(--muted)}.split-content{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:clamp(2.5rem,8vw,8rem)}.split-content>img{width:100%;height:min(670px,65vw)}.split-content>div p:not(.eyebrow){font-size:1.1rem}.location-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:3rem 0}.location-cards article{padding:clamp(1.6rem,4vw,3rem);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(7px)}.location-cards .eyebrow{color:#ffe0a1}.location-address{font-weight:800}.social-callout{display:flex;align-items:center;justify-content:space-between;gap:3rem}.social-callout h2{margin-bottom:.7rem}.social-callout p{margin-bottom:0}.process .section-heading{max-width:840px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:3.5rem 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.process-grid li{position:relative;padding:2rem 1.8rem 0 0}.process-grid li::before{position:absolute;top:-5px;left:0;width:9px;height:9px;background:var(--berry);border-radius:50%;content:""}.process-grid span,.editorial-list span{color:var(--berry);font-size:.8rem;font-weight:900;letter-spacing:.14em}.process-grid h3{margin:.8rem 0}.process-grid p{color:var(--muted)}
.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:220px;gap:1rem}.gallery-grid__item{grid-column:span 4;margin:0;overflow:hidden}.gallery-grid__item:nth-child(1){grid-column:span 7;grid-row:span 2}.gallery-grid__item:nth-child(2){grid-column:span 5}.gallery-grid__item:nth-child(3){grid-column:span 5}.gallery-grid__item:nth-child(n+4){grid-column:span 4}.gallery-grid img{width:100%;height:100%;transition:transform .6s}.gallery-grid figure:hover img{transform:scale(1.035)}.faq-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,8rem)}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{display:flex;justify-content:space-between;gap:2rem;padding:1.35rem 0;cursor:pointer;font-family:var(--serif);font-size:1.25rem;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{color:var(--berry);font-family:var(--sans);font-size:1.4rem;transition:transform .2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{max-width:750px;padding:0 2rem 1.5rem 0;color:var(--muted)}.editorial-list{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.editorial-list span{color:#ffe0a1}.editorial-list h2{margin:.9rem 0;font-size:clamp(1.7rem,3vw,2.6rem)}.story-layout{display:grid;grid-template-columns:.7fr 1.3fr;align-items:start;gap:clamp(3rem,9vw,9rem)}.story-year{position:sticky;top:2rem;color:var(--berry);font-family:var(--serif);font-size:clamp(5rem,15vw,12rem);line-height:.8;letter-spacing:-.08em}.story-layout>div:last-child{max-width:720px}.locations-full{display:grid;gap:4rem}.location-full{display:grid;grid-template-columns:1.05fr .95fr;box-shadow:var(--shadow)}.location-full>img{width:100%;height:100%;min-height:600px}.location-full__content{padding:clamp(2rem,5vw,4.5rem);background:#fff}.location-full dl{margin:2rem 0}.location-full dl div{display:grid;grid-template-columns:120px 1fr;padding:.75rem 0;border-top:1px solid var(--line)}.location-full dt{font-weight:800}.location-full dd{margin:0}.location-full a:not(.btn){color:var(--berry-dark)}
.contact-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,9vw,8rem)}.contact-aside{padding-right:2rem}.contact-phone{display:inline-block;margin:1.5rem 0;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.6rem);text-decoration:none}.contact-social{display:flex;gap:1rem}.contact-social a{font-weight:800}.contact-form{padding:clamp(1.5rem,4vw,3rem);background:var(--soft)}.contact-form label{display:grid;gap:.4rem;margin-bottom:1.1rem;font-size:.9rem;font-weight:800}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;border:1px solid #cabfba;border-radius:2px;background:#fff;padding:.85rem;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid rgba(163,38,92,.2);border-color:var(--berry)}.consent-check{grid-template-columns:auto 1fr!important;align-items:start;font-weight:500!important}.consent-check input{width:18px;height:18px;margin-top:.25rem}.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important}.form-status{margin:1rem 0 0;font-weight:700}.form-status.is-success{color:var(--teal)}.form-status.is-error{color:#a2212e}.legal-layout{display:grid;grid-template-columns:250px 1fr;gap:clamp(3rem,8vw,8rem)}.legal aside{position:relative}.legal aside nav{position:sticky;top:2rem;display:grid;border-left:2px solid var(--line)}.legal aside a{padding:.5rem 1rem;text-decoration:none}.legal-copy{max-width:800px}.legal-copy--single{margin-inline:auto}.legal-copy h2{margin-top:3rem;font-size:clamp(1.6rem,3vw,2.5rem)}.updated{color:var(--muted);font-size:.9rem}
.site-footer{padding-top:5rem;background:#252027;color:#fff}.footer-grid{display:grid;grid-template-columns:1.3fr .9fr .8fr .9fr;gap:clamp(2rem,5vw,5rem)}.brand--footer{margin-bottom:1.4rem}.brand--footer small{color:#bdb5bd}.footer-grid>div:first-child>p{max-width:390px;color:#d6cfd5}.footer-grid h2{font-family:var(--sans);font-size:.8rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.footer-grid>div:not(:first-child)>a,.footer-button{display:block;margin:.55rem 0;color:#ded7dd;background:0;border:0;padding:0;text-align:left;text-decoration:none}.footer-grid a:hover,.footer-button:hover{color:#fff;text-decoration:underline}.footer-social{display:flex;gap:1rem}.footer-social a{font-weight:800}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;margin-top:4rem;padding:1.4rem 0;border-top:1px solid rgba(255,255,255,.13);color:#bdb5bd;font-size:.82rem}.footer-bottom p{margin:0}.cookie-banner{position:fixed;right:1rem;bottom:1rem;left:1rem;z-index:500;display:flex;max-width:1120px;align-items:center;justify-content:space-between;gap:2rem;margin-inline:auto;padding:1.35rem 1.5rem;background:#fff;border:1px solid var(--line);box-shadow:0 18px 60px rgba(0,0,0,.22)}.cookie-banner[hidden]{display:none}.cookie-banner h2{margin-bottom:.35rem;font-family:var(--sans);font-size:1.05rem;font-weight:900}.cookie-banner p{max-width:670px;margin:0;font-size:.9rem;line-height:1.5}.cookie-dialog{max-width:620px;border:0;padding:0;box-shadow:0 20px 80px rgba(0,0,0,.3)}.cookie-dialog::backdrop{background:rgba(20,16,20,.65)}.cookie-dialog form{position:relative;padding:2rem}.dialog-close{position:absolute;top:1rem;right:1rem;border:0;background:transparent;font-size:2rem;cursor:pointer}.cookie-option{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.15rem 0;border-top:1px solid var(--line)}.cookie-option p{margin:.25rem 0 0;color:var(--muted);font-size:.9rem}.cookie-option input{width:22px;height:22px;accent-color:var(--berry)}.language-gateway{display:grid;min-height:100vh;place-items:center;background:var(--soft);text-align:center}.language-gateway .brand-mark{margin:0 auto 1rem}.language-gateway h1{font-size:3rem}.language-gateway a{color:var(--berry-dark);font-weight:800}
@keyframes kenburns{from{transform:scale(1.04)}to{transform:scale(1.12)}}
@media(max-width:1100px){.menu-toggle{display:flex;align-items:center;gap:.7rem}.menu-toggle i,.menu-toggle i::before,.menu-toggle i::after{display:block;width:23px;height:2px;background:currentColor;content:"";transition:.25s}.menu-toggle i{position:relative}.menu-toggle i::before{position:absolute;top:-7px}.menu-toggle i::after{position:absolute;top:7px}.menu-toggle[aria-expanded=true] i{background:transparent}.menu-toggle[aria-expanded=true] i::before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] i::after{top:0;transform:rotate(-45deg)}.site-nav{position:absolute;top:100%;right:0;left:0;display:none;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 30px rgba(0,0,0,.08)}.site-nav.is-open{display:block}.site-nav ul{display:grid;width:var(--wrap);margin:auto;padding:1.2rem 0 1.8rem;gap:0}.site-nav li{border-bottom:1px solid var(--line)}.site-nav a{display:block;padding:.85rem 0}.nav-language a{border:0;padding-left:0}.nav-contact{margin-top:.8rem;text-align:center}.feature-grid--4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){:root{--wrap:min(100% - 28px,1180px)}h1{font-size:clamp(2.55rem,13vw,4.5rem)}.header-inner{min-height:74px}.brand-mark{width:38px;height:38px}.brand strong{font-size:1.05rem}.hero{min-height:650px}.hero--inner{min-height:560px}.hero__veil{background:linear-gradient(0deg,rgba(29,22,29,.85),rgba(29,22,29,.28))}.hero__content{padding-block:5rem}.hero__actions .btn{width:100%}.split-intro,.feature-grid--3,.feature-grid--4,.split-content,.faq-layout,.story-layout,.location-full,.contact-layout,.legal-layout{grid-template-columns:1fr}.feature-grid{gap:2rem}.split-content>img{height:430px}.section--soft .split-content>img{order:0}.section--soft .split-content>div{order:1}.process-grid{grid-template-columns:1fr;border-top:0}.process-grid li{padding:1rem 0 1.5rem 2rem;border-left:1px solid var(--line)}.process-grid li::before{top:1.7rem;left:-5px}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.gallery-grid__item,.gallery-grid__item:nth-child(n){grid-column:span 1;grid-row:span 1}.gallery-grid__item:first-child{grid-column:span 2;grid-row:span 2}.location-cards,.editorial-list{grid-template-columns:1fr}.social-callout{display:grid}.story-year{position:static;font-size:7rem}.location-full>img{min-height:0;height:340px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom,.cookie-banner{align-items:stretch;flex-direction:column}.cookie-actions .btn{flex:1}.legal aside{display:none}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.gallery-grid{display:block}.gallery-grid figure{margin-bottom:1rem}.gallery-grid img{aspect-ratio:4/3}.cookie-actions{display:grid}.cookie-actions .btn{width:100%}.location-full dl div{grid-template-columns:1fr}.location-full dd{margin-top:.25rem}.direction-buttons .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero__slide:not(:first-child){display:none}}
.brand-logo{width:48px;height:48px;object-fit:contain;flex:0 0 auto}.brand--footer .brand-logo{filter:drop-shadow(0 6px 14px rgba(0,0,0,.18))}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
