/*
Theme Name: Hyperion Hospitality
Theme URI: https://hyperionhospitality.co.uk
Author: Hyperion Hospitality
Description: Premium corporate hospitality — the craft of the occasion.
Version: 1.0
License: Private
*/


/* PAGE WRAPPER — only active page visible */
.HH { display:none !important; }
.HH.ON { display:block !important; }
/* Ensure experiences tabs work — hidden class must exist */
.hidden { display:none !important; }

.f-linkedin { display:inline-flex; align-items:center; color:rgba(154,138,122,0.4); transition:color 0.3s; }
.f-linkedin:hover { color:var(--gold); }
.f-linkedin svg { display:block; }



*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--burg:#3B1A1A;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}

nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a:hover,.nav-links a.active{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}

/* HERO — video ready */
.hero{height:100vh;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:0 4rem 7rem}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.45;z-index:0}
.hero-placeholder{position:absolute;inset:0;background:radial-gradient(ellipse at 65% 35%,rgba(59,26,26,0.55) 0%,transparent 55%),radial-gradient(ellipse at 20% 75%,rgba(92,58,46,0.25) 0%,transparent 50%),linear-gradient(155deg,#1A0F0F 0%,#2A1515 45%,#1A0F0F 100%);z-index:0}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(18,9,9,0.88) 0%,rgba(18,9,9,0.4) 50%,rgba(18,9,9,0.55) 100%);z-index:1}
.hero-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px);z-index:2;pointer-events:none}
.hero-vline{position:absolute;top:0;bottom:0;right:36%;width:0.5px;background:linear-gradient(to bottom,transparent,rgba(191,168,130,0.1) 25%,rgba(191,168,130,0.2) 55%,rgba(191,168,130,0.1) 75%,transparent);z-index:2}
.hero-letter{position:absolute;right:3rem;top:50%;transform:translateY(-52%);font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.18);user-select:none;pointer-events:none;line-height:1;z-index:2}
.hero-content{position:relative;z-index:3}
.hero-eyebrow{font-family:var(--sans);font-size:0.6rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem;opacity:0;animation:fadeUp 1.2s ease 0.4s forwards}
.hero-eyebrow::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(3.8rem,7.5vw,7rem);line-height:0.95;color:var(--cream);opacity:0;animation:fadeUp 1.4s ease 0.6s forwards}
.hero-title em{font-style:italic;color:var(--gold)}
.hero-tagline{margin-top:2.8rem;font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:2.0;letter-spacing:0.05em;max-width:30rem;opacity:0;animation:fadeUp 1.4s ease 0.9s forwards}
.hero-actions{margin-top:4rem;display:flex;align-items:center;gap:3.5rem;opacity:0;animation:fadeUp 1.4s ease 1.1s forwards}
.btn-gold{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--deep);background:var(--gold);border:none;padding:1.1rem 2.8rem;cursor:pointer;text-decoration:none;display:inline-block;transition:all 0.4s}
.btn-gold:hover{background:var(--cream)}
.btn-line{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;display:flex;align-items:center;gap:1rem;transition:color 0.4s;cursor:pointer;background:none;border:none}
.btn-line::after{content:"";display:inline-block;width:2.5rem;height:0.5px;background:currentColor;transition:width 0.4s}
.btn-line:hover{color:var(--cream)}
.btn-line:hover::after{width:3.5rem}

/* OUR POSITION — original two-column layout, new copy */
.positioning{padding:9rem 4rem;display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center;background:var(--deep)}
.section-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem}
.section-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.pos-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3rem);line-height:1.1;color:var(--cream);margin-bottom:2.5rem}
.pos-title em{font-style:italic;color:var(--gold)}
.pos-body{font-family:var(--sans);font-size:0.74rem;line-height:2.1;color:var(--muted);letter-spacing:0.03em;margin-bottom:1.4rem}
.pillars{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.13);padding:3rem}
.pillar{padding:1.6rem 0;border-bottom:0.5px solid rgba(191,168,130,0.08)}
.pillar:last-child{border-bottom:none;padding-bottom:0}
.pillar:first-child{padding-top:0}
.pillar-n{font-family:var(--serif);font-size:0.65rem;color:var(--gold);opacity:0.5;letter-spacing:0.12em;margin-bottom:0.3rem}
.pillar-t{font-family:var(--serif);font-size:1.25rem;font-weight:300;color:var(--cream);margin-bottom:0.3rem}
.pillar-d{font-family:var(--sans);font-size:0.68rem;color:var(--muted);line-height:1.85;letter-spacing:0.03em}

/* SERVICES */
.services{padding:7rem 0;background:var(--surface)}
.services-inner{padding:0 4rem}
.services-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:4rem}
.svc-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3rem);color:var(--cream);line-height:1.05}
.svc-title em{font-style:italic;color:var(--gold)}
.svc-note{font-family:var(--sans);font-size:0.7rem;color:var(--muted);max-width:22rem;line-height:1.95;letter-spacing:0.03em}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border:0.5px solid rgba(191,168,130,0.1)}
.svc-card{padding:3rem 2.5rem;border-right:0.5px solid rgba(191,168,130,0.1);transition:background 0.5s}
.svc-card:last-child{border-right:none}
.svc-card:hover{background:rgba(59,26,26,0.35)}
.svc-dash{width:2rem;height:0.5px;background:var(--gold);opacity:0.45;margin-bottom:2rem}
.svc-name{font-family:var(--serif);font-size:1.45rem;font-weight:300;color:var(--cream);margin-bottom:0.9rem;line-height:1.2}
.svc-name em{font-style:italic;color:var(--gold)}
.svc-desc{font-family:var(--sans);font-size:0.68rem;color:var(--muted);line-height:1.95;letter-spacing:0.03em}

/* STATEMENT */
.statement{padding:9rem 4rem;background:var(--deep);text-align:center;position:relative;overflow:hidden}
.statement::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(59,26,26,0.28) 0%,transparent 70%);pointer-events:none}
.stmt-eyebrow{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2rem;position:relative;z-index:1}
.stmt-headline{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,5vw,5.5rem);line-height:1.0;color:var(--cream);position:relative;z-index:1;margin-bottom:1.5rem}
.stmt-headline em{font-style:italic;color:var(--gold)}
.stmt-sub{font-family:var(--sans);font-size:0.75rem;color:var(--muted);letter-spacing:0.06em;line-height:1.9;position:relative;z-index:1;max-width:32rem;margin:0 auto 3rem}
.stmt-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto;position:relative;z-index:1}

/* ENQUIRE */
.enquire-strip{padding:5.5rem 4rem;background:var(--surface);display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid rgba(191,168,130,0.08)}
.eq-title{font-family:var(--serif);font-weight:300;font-size:2.2rem;color:var(--cream);margin-bottom:0.6rem}
.eq-title em{font-style:italic;color:var(--gold)}
.eq-sub{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.9;letter-spacing:0.04em}

footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--deep);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:1;transform:translateY(0);transition:opacity 0.9s ease,transform 0.9s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:0.12s}
.reveal-d2{transition-delay:0.24s}

.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}



*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a:hover{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}
.page-header{padding:13rem 4rem 6rem;position:relative;overflow:hidden;background:linear-gradient(155deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.page-header::after{content:"E";position:absolute;right:3rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.14);user-select:none;line-height:1;pointer-events:none}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(3rem,6vw,5.5rem);line-height:0.95;color:var(--cream);position:relative;z-index:2}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2.5rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:30rem;position:relative;z-index:2}
.cat-nav{background:rgba(18,9,9,0.96);border-bottom:0.5px solid rgba(191,168,130,0.1);padding:0 4rem;display:flex;gap:0;position:sticky;top:72px;z-index:100}
.cat-btn{font-family:var(--sans);font-size:0.6rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--muted);background:none;border:none;border-bottom:1.5px solid transparent;padding:1.2rem 2rem;cursor:pointer;transition:all 0.3s}
.cat-btn:hover{color:var(--cream)}
.cat-btn.active{color:var(--gold);border-bottom-color:var(--gold)}
.section-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;display:flex;align-items:center;gap:1.5rem}
.section-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.exp-intro{padding:5rem 4rem 3.5rem;background:var(--surface)}
.exp-intro-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:4rem}
.exp-section-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3rem);color:var(--cream);line-height:1.05}
.exp-section-title em{font-style:italic;color:var(--gold)}
.exp-section-note{font-family:var(--sans);font-size:0.7rem;color:var(--muted);max-width:24rem;line-height:2.0;letter-spacing:0.04em}
.sports-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:var(--surface);padding:0 0 3px}
.sport-tile{position:relative;aspect-ratio:4/3;overflow:hidden;cursor:default}
.sport-tile-inner{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94)}
.sport-tile:hover .sport-tile-inner{transform:scale(1.06)}
.tile-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,5,5,0.92) 0%,rgba(10,5,5,0.35) 45%,rgba(10,5,5,0.1) 100%);transition:all 0.5s}
.sport-tile:hover .tile-overlay{background:linear-gradient(to top,rgba(10,5,5,0.96) 0%,rgba(10,5,5,0.5) 55%,rgba(10,5,5,0.2) 100%)}
.tile-content{position:absolute;bottom:0;left:0;right:0;padding:2rem;z-index:2}
.tile-name{font-family:var(--serif);font-size:1.6rem;font-weight:300;color:var(--cream);line-height:1.1;margin-bottom:0.4rem;transform:translateY(6px);transition:transform 0.4s ease}
.sport-tile:hover .tile-name{transform:translateY(0)}
.tile-detail{font-family:var(--sans);font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);opacity:0;transform:translateY(5px);transition:opacity 0.4s 0.05s,transform 0.4s 0.05s}
.sport-tile:hover .tile-detail{opacity:1;transform:translateY(0)}
.music-grid{display:grid;grid-template-columns:2fr 1fr;gap:3px;background:var(--surface);padding:0 0 3px}
.music-main{position:relative;overflow:hidden;cursor:default;min-height:560px}
.music-sub{display:grid;grid-template-rows:1fr 1fr;gap:3px}
.music-item{position:relative;overflow:hidden;cursor:default}
.music-item-inner{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94)}
.music-item:hover .music-item-inner{transform:scale(1.06)}
.music-main-inner{position:absolute;inset:0;background-size:cover;transition:transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94)}
.music-main:hover .music-main-inner{transform:scale(1.04)}
.music-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,5,5,0.88) 0%,rgba(10,5,5,0.2) 55%,transparent 100%);transition:all 0.5s}
.music-main:hover .music-overlay,.music-item:hover .music-overlay{background:linear-gradient(to top,rgba(10,5,5,0.95) 0%,rgba(10,5,5,0.35) 60%,rgba(10,5,5,0.1) 100%)}
.music-label{position:absolute;bottom:0;left:0;right:0;padding:2.5rem;z-index:2}
.music-cat{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem}
.music-name{font-family:var(--serif);font-size:2rem;font-weight:300;color:var(--cream);line-height:1.05}
.music-name em{font-style:italic}
.music-name-sm{font-family:var(--serif);font-size:1.35rem;font-weight:300;color:var(--cream);line-height:1.05}
.music-name-sm em{font-style:italic}
.culture-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;background:var(--surface);padding:0 0 3px}
.culture-tile{position:relative;aspect-ratio:3/4;overflow:hidden;cursor:pointer}
.culture-tile-inner{position:absolute;inset:0;transition:transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94)}
.culture-tile:hover .culture-tile-inner{transform:scale(1.06)}
.culture-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,5,5,0.78) 0%,rgba(10,5,5,0.08) 45%,transparent 100%);transition:all 0.5s}
.culture-tile:hover .culture-overlay{background:linear-gradient(to top,rgba(10,5,5,0.9) 0%,rgba(10,5,5,0.2) 55%,transparent 100%)}
.tile-content{position:absolute;bottom:0;left:0;right:0;padding:1.8rem;z-index:2}
.tile-name{font-family:var(--serif);font-size:1.4rem;font-weight:300;color:var(--cream);line-height:1.1;margin-bottom:0.3rem}
.tile-sub-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem}
.culture-hover-detail{font-family:var(--sans);font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);opacity:0;transform:translateY(5px);transition:opacity 0.4s 0.05s,transform 0.4s 0.05s}
.culture-tile:hover .culture-hover-detail{opacity:1;transform:translateY(0)}
.enquire-strip{padding:5rem 4rem;background:var(--deep);display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid rgba(191,168,130,0.08)}
.eq-title{font-family:var(--serif);font-weight:300;font-size:2rem;color:var(--cream);margin-bottom:0.6rem}
.eq-title em{font-style:italic;color:var(--gold)}
.eq-sub{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.9;letter-spacing:0.04em}
.btn-gold{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--deep);background:var(--gold);border:none;padding:1.1rem 2.8rem;cursor:pointer;transition:all 0.4s}
.btn-gold:hover{background:var(--cream)}
footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--surface);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}
.reveal{opacity:1;transform:translateY(0);transition:opacity 0.85s ease,transform 0.85s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.hidden{display:none}

.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}



*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--burg:#2E1414;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a.active,.nav-links a:hover{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}
.section-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;display:flex;align-items:center;gap:1.5rem}
.section-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.btn-gold{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--deep);background:var(--gold);border:none;padding:1.1rem 2.8rem;cursor:pointer;transition:all 0.4s}
.btn-gold:hover{background:var(--cream)}
.page-header{padding:14rem 4rem 7rem;position:relative;overflow:hidden}
.ph-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(59,26,26,0.4) 0%,transparent 60%),linear-gradient(160deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.ph-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px)}
.ph-letter{position:absolute;right:4rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.14);user-select:none;line-height:1}
.ph-content{position:relative;z-index:2;max-width:42rem}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem;opacity:0;animation:fadeUp 1.2s ease 0.4s forwards}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(3rem,6vw,5.5rem);line-height:0.95;color:var(--cream);opacity:0;animation:fadeUp 1.2s ease 0.6s forwards}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2.5rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:32rem;opacity:0;animation:fadeUp 1.2s ease 0.85s forwards}
.highlights{padding:8rem 4rem;background:var(--surface)}
.highlights-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:5rem}
.highlights-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3rem);color:var(--cream);line-height:1.05}
.highlights-title em{font-style:italic;color:var(--gold)}
.highlights-note{font-family:var(--sans);font-size:0.7rem;color:var(--muted);max-width:20rem;line-height:1.95;letter-spacing:0.03em}
.highlights-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(191,168,130,0.08)}
.hl-tile{padding:3rem 2.5rem;background:var(--surface);position:relative;transition:background 0.5s;cursor:default;overflow:hidden}
.hl-tile:hover{background:rgba(59,26,26,0.5)}
.hl-num{font-family:var(--serif);font-size:3.5rem;font-weight:300;color:rgba(191,168,130,0.07);line-height:1;position:absolute;top:1.5rem;right:1.5rem}
.hl-month{font-family:var(--sans);font-size:0.55rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.7;margin-bottom:1rem}
.hl-event{font-family:var(--serif);font-size:1.3rem;font-weight:300;color:var(--cream);line-height:1.2;margin-bottom:0.6rem}
.hl-venue{font-family:var(--sans);font-size:0.62rem;color:var(--muted);letter-spacing:0.05em}
.month-nav{position:sticky;top:72px;z-index:100;background:rgba(18,9,9,0.97);border-bottom:0.5px solid rgba(191,168,130,0.1);padding:0 4rem;display:flex;overflow-x:auto;backdrop-filter:blur(8px)}
.month-nav::-webkit-scrollbar{display:none}
.mnav-link{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:1.1rem 1.4rem;border-bottom:1.5px solid transparent;white-space:nowrap;transition:all 0.3s;display:block}
.mnav-link:hover{color:var(--cream)}
.mnav-link.active{color:var(--gold);border-bottom-color:var(--gold)}
.season-body{padding:5rem 4rem 8rem;background:var(--deep)}
.season-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:4rem;display:flex;align-items:center;gap:1.5rem}
.season-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.month-block{margin-bottom:6rem;padding-bottom:6rem;border-bottom:0.5px solid rgba(191,168,130,0.06)}
.month-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.month-name{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,5vw,4.5rem);color:var(--cream);margin-bottom:2.5rem;line-height:1}
.month-name em{font-style:italic;color:var(--gold)}
.featured-card{background:linear-gradient(135deg,var(--burg) 0%,#3a1818 100%);border:0.5px solid rgba(191,168,130,0.18);padding:3rem 3.5rem;margin-bottom:3px;display:flex;justify-content:space-between;align-items:center;transition:border-color 0.4s;position:relative;overflow:hidden}
.featured-card::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(191,168,130,0.3),transparent)}
.featured-card:hover{border-color:rgba(191,168,130,0.35)}
.feat-label{font-family:var(--sans);font-size:0.55rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.7;margin-bottom:0.8rem}
.feat-event{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:300;color:var(--cream);line-height:1.1;margin-bottom:0.5rem}
.feat-venue{font-family:var(--sans);font-size:0.68rem;color:var(--muted);letter-spacing:0.06em}
.feat-enquire{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity 0.3s;flex-shrink:0;margin-left:3rem}
.featured-card:hover .feat-enquire{opacity:1}
.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.event-card{padding:2rem;background:var(--surface);transition:background 0.4s}
.event-card:hover{background:rgba(59,26,26,0.45)}
.ev-cat{font-family:var(--sans);font-size:0.55rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.55;margin-bottom:0.6rem}
.ev-name{font-family:var(--serif);font-size:1.1rem;font-weight:300;color:var(--cream);line-height:1.25;margin-bottom:0.35rem}
.ev-detail{font-family:var(--sans);font-size:0.62rem;color:var(--muted);letter-spacing:0.04em}
.bespoke{padding:8rem 4rem;background:var(--surface);text-align:center;position:relative;overflow:hidden}
.bespoke::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50vw;height:50vw;border-radius:50%;background:radial-gradient(circle,rgba(59,26,26,0.25) 0%,transparent 70%);pointer-events:none}
.bsp-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4vw,3.5rem);color:var(--cream);line-height:1.1;margin-bottom:1.5rem;position:relative;z-index:1}
.bsp-title em{font-style:italic;color:var(--gold)}
.bsp-body{font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:36rem;margin:0 auto 3rem;position:relative;z-index:1}
.enquire-strip{padding:5.5rem 4rem;background:var(--deep);display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid rgba(191,168,130,0.08)}
.eq-title{font-family:var(--serif);font-weight:300;font-size:2.2rem;color:var(--cream);margin-bottom:0.6rem}
.eq-title em{font-style:italic;color:var(--gold)}
.eq-sub{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.9;letter-spacing:0.04em}
footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--surface);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}
.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}
.reveal{opacity:1;transform:translateY(0);transition:opacity 0.9s ease,transform 0.9s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}



*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--burg:#3B1A1A;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a:hover,.nav-links a.active{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}
.section-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;display:flex;align-items:center;gap:1.5rem}
.section-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.btn-gold{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--deep);background:var(--gold);border:none;padding:1.1rem 2.8rem;cursor:pointer;text-decoration:none;display:inline-block;transition:all 0.4s;white-space:nowrap}
.btn-gold:hover{background:var(--cream)}
.reveal{opacity:1;transform:translateY(0);transition:opacity 0.9s ease,transform 0.9s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:0.12s}
.reveal-d2{transition-delay:0.24s}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--surface);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}


.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}

.page-header{padding:14rem 4rem 7rem;position:relative;overflow:hidden}
.ph-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(59,26,26,0.4) 0%,transparent 60%),linear-gradient(160deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.ph-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px)}
.ph-letter{position:absolute;right:4rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.14);user-select:none;line-height:1}
.ph-content{position:relative;z-index:2;max-width:40rem}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem;opacity:0;animation:fadeUp 1.2s ease 0.4s forwards}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(3rem,6vw,5.5rem);line-height:0.95;color:var(--cream);opacity:0;animation:fadeUp 1.2s ease 0.6s forwards}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2.5rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:28rem;opacity:0;animation:fadeUp 1.2s ease 0.85s forwards}

/* WHO WE ARE split */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:60vh}
.split-text{padding:7rem 5rem 7rem 4rem;display:flex;flex-direction:column;justify-content:center;background:var(--surface)}
.split-img{position:relative;overflow:hidden;background:var(--burg);display:flex;align-items:center;justify-content:center}
.split-img-letter{font-family:var(--serif);font-size:12rem;font-weight:300;font-style:italic;color:rgba(242,237,230,0.05);user-select:none}
.split-img-accent{position:absolute;top:-1.5rem;right:-1.5rem;width:55%;height:55%;border:0.5px solid rgba(191,168,130,0.15)}
.split-img-cap{position:absolute;bottom:2rem;left:2rem;right:2rem;font-family:var(--sans);font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;color:rgba(191,168,130,0.45)}
.block-title{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,3vw,2.8rem);color:var(--cream);line-height:1.1;margin-bottom:2rem}
.block-title em{font-style:italic;color:var(--gold)}
.block-body{font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1.3rem}

/* IN PRACTICE */
.in-practice{padding:8rem 4rem;background:var(--deep)}
.ip-grid{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:start;margin-top:4rem}
.ip-events{font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1.3rem}
.ip-statement{font-family:var(--serif);font-weight:300;font-size:clamp(1.5rem,2.5vw,2.2rem);color:var(--cream);line-height:1.2}
.ip-statement em{font-style:italic;color:var(--gold)}

/* APPROACH split reversed */
.split-r{display:grid;grid-template-columns:1fr 1fr;min-height:55vh}
.split-r-img{position:relative;overflow:hidden;background:var(--burg);display:flex;align-items:center;justify-content:center;order:1}
.split-r-text{padding:7rem 4rem 7rem 5rem;display:flex;flex-direction:column;justify-content:center;background:var(--surface);order:2}

/* HERITAGE */
.heritage{padding:8rem 4rem;background:var(--deep)}
.heritage-inner{max-width:54rem}
.heritage-body{font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1.3rem}

/* DETAILS STRIP */
.details-strip{padding:4rem 4rem;border-top:0.5px solid rgba(191,168,130,0.1);background:var(--surface);display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.adi{padding:0 3rem;border-right:0.5px solid rgba(191,168,130,0.1)}
.adi:first-child{padding-left:0}
.adi:last-child{border-right:none}
.adi-l{font-family:var(--sans);font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.6;margin-bottom:0.7rem}
.adi-v{font-family:var(--serif);font-size:1rem;font-weight:300;color:var(--muted);line-height:1.6}

.enquire-strip{padding:5.5rem 4rem;background:var(--deep);display:flex;justify-content:space-between;align-items:center;border-top:0.5px solid rgba(191,168,130,0.08)}
.eq-title{font-family:var(--serif);font-weight:300;font-size:2.2rem;color:var(--cream);margin-bottom:0.6rem}
.eq-title em{font-style:italic;color:var(--gold)}
.eq-sub{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.9;letter-spacing:0.04em}


*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}

nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a.active,.nav-links a:hover{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}

/* PAGE HEADER */
.page-header{padding:14rem 4rem 7rem;position:relative;overflow:hidden}
.ph-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 40%,rgba(59,26,26,0.4) 0%,transparent 60%),linear-gradient(160deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.ph-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px)}
.ph-letter{position:absolute;right:4rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.14);user-select:none;line-height:1}
.ph-content{position:relative;z-index:2;max-width:40rem}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem;opacity:0;animation:fadeUp 1.2s ease 0.4s forwards}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(3.5rem,7vw,6.5rem);line-height:0.9;color:var(--cream);opacity:0;animation:fadeUp 1.2s ease 0.6s forwards}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2.8rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:26rem;opacity:0;animation:fadeUp 1.2s ease 0.85s forwards}

/* CONTACT SECTION — tonal split */
.contact-section{display:grid;grid-template-columns:1fr 1fr;min-height:70vh}

/* LEFT — darker tonal panel */
.contact-left{background:var(--surface);padding:7rem 5rem 7rem 4rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.contact-left::after{content:"";position:absolute;top:0;right:0;width:0.5px;height:100%;background:linear-gradient(to bottom,transparent,rgba(191,168,130,0.12) 20%,rgba(191,168,130,0.12) 80%,transparent)}
.cl-top{}
.section-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2rem;display:flex;align-items:center;gap:1.5rem}
.section-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.contact-heading{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,4vw,3.8rem);color:var(--cream);line-height:1.0;margin-bottom:2.5rem}
.contact-heading em{font-style:italic;color:var(--gold)}
.contact-body{font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1.3rem;max-width:26rem}

/* Contact details — more breathing room */
.cl-bottom{margin-top:4rem}
.ci-item{display:flex;gap:2rem;margin-bottom:2rem;align-items:flex-start;padding-bottom:2rem;border-bottom:0.5px solid rgba(191,168,130,0.07)}
.ci-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.ci-l{font-family:var(--sans);font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.6;min-width:5rem;padding-top:0.2rem;flex-shrink:0}
.ci-v{font-family:var(--serif);font-size:1.05rem;font-weight:300;color:var(--muted);line-height:1.7}

/* RIGHT — form panel */
.contact-right{background:var(--deep);padding:7rem 4rem 7rem 5rem;display:flex;flex-direction:column;justify-content:center}
.form-statement{font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,2.5vw,2rem);color:var(--cream);line-height:1.2;margin-bottom:3.5rem}
.form-statement em{font-style:italic;color:var(--gold)}
.form-g{margin-bottom:2.2rem}
.form-l{display:block;font-family:var(--sans);font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.6;margin-bottom:0.8rem}
.form-i{width:100%;background:transparent;border:none;border-bottom:0.5px solid rgba(191,168,130,0.18);padding:0.8rem 0;font-family:var(--serif);font-size:1.05rem;font-weight:300;color:var(--cream);outline:none;transition:border-color 0.4s}
.form-i::placeholder{color:rgba(154,138,122,0.25);font-family:var(--serif);font-style:italic}
.form-i:focus{border-bottom-color:var(--gold)}
textarea.form-i{resize:none;height:5rem}
.form-submit{margin-top:3rem;font-family:var(--sans);font-size:0.63rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--deep);background:var(--gold);border:none;padding:1.2rem 0;cursor:pointer;width:100%;transition:all 0.4s}
.form-submit:hover{background:var(--cream)}

/* PORTAL */
.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}

footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--surface);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}

.reveal{opacity:1;transform:translateY(0);transition:opacity 0.9s ease,transform 0.9s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-d1{transition-delay:0.15s}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}


*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a:hover{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}
.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}
.page-header{padding:13rem 4rem 6rem;position:relative;overflow:hidden}
.ph-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(59,26,26,0.35) 0%,transparent 60%),linear-gradient(160deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.ph-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px)}
.ph-letter{position:absolute;right:4rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.12);user-select:none;line-height:1}
.ph-content{position:relative;z-index:2;max-width:42rem}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem,5.5vw,5rem);line-height:0.95;color:var(--cream)}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:28rem}

/* DOCUMENT LAYOUT — fixed two-column with proper min-widths */
.doc-wrap{display:flex;gap:0;align-items:flex-start;background:var(--surface)}
.doc-sidebar{width:220px;flex-shrink:0;padding:5rem 0 5rem 4rem;position:sticky;top:100px}
.doc-sidebar-title{font-family:var(--sans);font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.6;margin-bottom:1.5rem}
.doc-sidebar a{display:block;font-family:var(--sans);font-size:0.63rem;letter-spacing:0.08em;color:var(--muted);text-decoration:none;padding:0.55rem 0;border-bottom:0.5px solid rgba(191,168,130,0.07);transition:color 0.3s}
.doc-sidebar a:hover{color:var(--cream)}
.doc-sidebar a:last-child{border-bottom:none}
.doc-main{flex:1;min-width:0;padding:5rem 4rem 7rem 4rem;border-left:0.5px solid rgba(191,168,130,0.07)}
.doc-updated{font-family:var(--sans);font-size:0.62rem;color:rgba(154,138,122,0.45);letter-spacing:0.1em;margin-bottom:3rem;padding-bottom:3rem;border-bottom:0.5px solid rgba(191,168,130,0.07)}
.doc-section{margin-bottom:3.5rem;padding-bottom:3.5rem;border-bottom:0.5px solid rgba(191,168,130,0.07)}
.doc-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.doc-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,2.2vw,2rem);color:var(--cream);line-height:1.1;margin-bottom:1.5rem}
.doc-h em{font-style:italic;color:var(--gold)}
.doc-p{font-family:var(--sans);font-size:0.72rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1rem}
.doc-p:last-child{margin-bottom:0}
.doc-p a{color:var(--gold);text-decoration:none}
.doc-p a:hover{text-decoration:underline}
.doc-p strong{color:rgba(242,237,230,0.75);font-weight:400}
.doc-num{font-family:var(--sans);font-size:0.72rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:0.7rem;padding-left:1.2rem;position:relative}
.doc-num::before{content:"";position:absolute;left:0;top:0.9em;width:0.4rem;height:0.5px;background:var(--gold);opacity:0.4}

footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--deep);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}


*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--deep:#1A0F0F;--surface:#120909;--cream:#F2EDE6;--gold:#BFA882;--muted:#9A8A7A;--serif:"Cormorant Garamond",serif;--sans:"Didact Gothic",sans-serif}
html{scroll-behavior:smooth}
body{background:var(--deep);color:var(--cream);font-family:var(--serif);overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:space-between;align-items:center;padding:1.8rem 4rem}
nav::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,9,9,0.97) 0%,transparent 100%);pointer-events:none}
.nav-brand{position:relative;z-index:1}
.nav-logo{font-family:var(--serif);font-weight:300;font-size:1.05rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--cream)}
.nav-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold);opacity:0.65;margin-top:2px}
.nav-links{display:flex;gap:2.2rem;list-style:none;position:relative;z-index:1}
.nav-links a{font-family:var(--sans);font-size:0.63rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color 0.3s}
.nav-links a:hover{color:var(--cream)}
.nav-portal{position:relative;z-index:1;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);border:0.5px solid rgba(191,168,130,0.4);padding:0.55rem 1.3rem;transition:all 0.4s;cursor:pointer;background:none}
.nav-portal:hover{color:var(--deep);background:var(--gold)}
.portal-overlay{position:fixed;inset:0;background:rgba(18,9,9,0.92);z-index:500;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.portal-overlay.open{display:flex}
.portal-box{background:linear-gradient(135deg,#221010 0%,#2e1414 100%);border:0.5px solid rgba(191,168,130,0.2);padding:4rem;max-width:30rem;width:90%;text-align:center;position:relative}
.portal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);transition:color 0.3s}
.portal-close:hover{color:var(--cream)}
.portal-logo{margin-bottom:1.5rem}
.portal-title{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--cream);line-height:1.1;margin-bottom:1rem}
.portal-title em{font-style:italic;color:var(--gold)}
.portal-body{font-family:var(--sans);font-size:0.7rem;color:var(--muted);line-height:1.95;letter-spacing:0.04em;margin-bottom:1rem}
.portal-rule{width:3rem;height:0.5px;background:var(--gold);opacity:0.3;margin:0 auto}
.page-header{padding:13rem 4rem 6rem;position:relative;overflow:hidden}
.ph-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(59,26,26,0.35) 0%,transparent 60%),linear-gradient(160deg,#1A0F0F 0%,#231212 50%,#1A0F0F 100%)}
.ph-scan{position:absolute;inset:0;opacity:0.02;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(242,237,230,1) 3px,rgba(242,237,230,1) 4px)}
.ph-letter{position:absolute;right:4rem;bottom:-1rem;font-family:var(--serif);font-size:22vw;font-weight:300;font-style:italic;color:rgba(59,26,26,0.12);user-select:none;line-height:1}
.ph-content{position:relative;z-index:2;max-width:42rem}
.ph-label{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;gap:1.5rem}
.ph-label::before{content:"";display:inline-block;width:2rem;height:0.5px;background:var(--gold)}
.ph-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem,5.5vw,5rem);line-height:0.95;color:var(--cream)}
.ph-title em{font-style:italic;color:var(--gold)}
.ph-body{margin-top:2rem;font-family:var(--sans);font-size:0.73rem;color:var(--muted);line-height:2.0;letter-spacing:0.04em;max-width:28rem}

/* DOCUMENT LAYOUT — fixed two-column with proper min-widths */
.doc-wrap{display:flex;gap:0;align-items:flex-start;background:var(--surface)}
.doc-sidebar{width:220px;flex-shrink:0;padding:5rem 0 5rem 4rem;position:sticky;top:100px}
.doc-sidebar-title{font-family:var(--sans);font-size:0.56rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);opacity:0.6;margin-bottom:1.5rem}
.doc-sidebar a{display:block;font-family:var(--sans);font-size:0.63rem;letter-spacing:0.08em;color:var(--muted);text-decoration:none;padding:0.55rem 0;border-bottom:0.5px solid rgba(191,168,130,0.07);transition:color 0.3s}
.doc-sidebar a:hover{color:var(--cream)}
.doc-sidebar a:last-child{border-bottom:none}
.doc-main{flex:1;min-width:0;padding:5rem 4rem 7rem 4rem;border-left:0.5px solid rgba(191,168,130,0.07)}
.doc-updated{font-family:var(--sans);font-size:0.62rem;color:rgba(154,138,122,0.45);letter-spacing:0.1em;margin-bottom:3rem;padding-bottom:3rem;border-bottom:0.5px solid rgba(191,168,130,0.07)}
.doc-section{margin-bottom:3.5rem;padding-bottom:3.5rem;border-bottom:0.5px solid rgba(191,168,130,0.07)}
.doc-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.doc-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,2.2vw,2rem);color:var(--cream);line-height:1.1;margin-bottom:1.5rem}
.doc-h em{font-style:italic;color:var(--gold)}
.doc-p{font-family:var(--sans);font-size:0.72rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:1rem}
.doc-p:last-child{margin-bottom:0}
.doc-p a{color:var(--gold);text-decoration:none}
.doc-p a:hover{text-decoration:underline}
.doc-p strong{color:rgba(242,237,230,0.75);font-weight:400}
.doc-num{font-family:var(--sans);font-size:0.72rem;color:var(--muted);line-height:2.1;letter-spacing:0.035em;margin-bottom:0.7rem;padding-left:1.2rem;position:relative}
.doc-num::before{content:"";position:absolute;left:0;top:0.9em;width:0.4rem;height:0.5px;background:var(--gold);opacity:0.4}

footer{padding:2.8rem 4rem;border-top:0.5px solid rgba(191,168,130,0.08);background:var(--deep);display:flex;justify-content:space-between;align-items:center}
.f-logo{font-family:var(--serif);font-weight:300;font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted)}
.f-sub{font-family:var(--sans);font-size:0.5rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);opacity:0.5;margin-top:2px}
.f-links{display:flex;gap:2.5rem;list-style:none}
.f-links a{font-family:var(--sans);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(154,138,122,0.4);text-decoration:none;transition:color 0.3s}
.f-links a:hover{color:var(--gold)}
.f-copy{font-family:var(--sans);font-size:0.58rem;color:rgba(154,138,122,0.3)}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
