/* ==========================================================================
   That Decade · shared house style
   Base: the live thatdecade.co.uk site (The Mordaunt Inheritance) — gothic,
   candlelit, Bodoni Moda + Cormorant Garamond, #040706 / #c6a15b.
   Accents: the 1920s art deco campaign posters — gold sunburst, diamond
   dividers, stepped-corner frames, teal velvet, pearls, champagne tower.
   Gothic is the base; deco appears "at times", never everywhere.
   ========================================================================== */

/* ---------- fonts: self-hosted (SIL Open Font Licence, see fonts/OFL-*.txt). No Google request, no third-party IP sharing ---------- */
@font-face{font-family:'Bodoni Moda';src:url(fonts/BodoniModa.woff2) format('woff2');font-weight:400 900;font-style:normal;font-display:swap;}
@font-face{font-family:'Bodoni Moda';src:url(fonts/BodoniModa-Italic.woff2) format('woff2');font-weight:400 900;font-style:italic;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url(fonts/CormorantGaramond.woff2) format('woff2');font-weight:300 700;font-style:normal;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url(fonts/CormorantGaramond-Italic.woff2) format('woff2');font-weight:300 700;font-style:italic;font-display:swap;}
@font-face{font-family:'Courier Prime';src:url(fonts/CourierPrime-Regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap;}

/* ---------- base (identical to the live site) ---------- */
@media (max-width:640px){body{zoom:1.14;}} @media (max-width:400px){body{zoom:1.18;}}
html{scroll-behavior:smooth;}
body{margin:0;background:#040706;-webkit-font-smoothing:antialiased;font-family:'Cormorant Garamond',serif;color:#efe6d2;font-variant-numeric:lining-nums;}
a{color:#c6a15b;text-decoration:none;} a:hover{color:#e6cf98;}
::selection{background:#c6a15b;color:#0b120e;}
img{display:block;max-width:100%;}
h1,h2,h3,p{margin:0;}
*,*::before,*::after{box-sizing:border-box;}
:focus-visible{outline:2px solid #e6cf98;outline-offset:3px;}

/* ---------- layout ---------- */
.pad{padding:clamp(72px,12vw,170px) clamp(20px,5vw,72px);}
.inner{position:relative;max-width:1296px;margin:0 auto;}
.stack{display:flex;flex-direction:column;}
.center{align-items:center;text-align:center;}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:clamp(48px,6vw,110px);align-items:center;}
.pic{position:relative;overflow:hidden;}
.pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* ---------- type ---------- */
.eyebrow{font-family:'Bodoni Moda',serif;font-size:13px;letter-spacing:0.34em;color:#c6a15b;}
.label{font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.32em;color:#c6a15b;}
.it{font-style:italic;color:#c6a15b;}
.h2{font-weight:300;font-size:clamp(44px,5.4vw,80px);line-height:1;color:#efe6d2;text-wrap:balance;}
.h3{font-weight:400;font-size:clamp(28px,2.6vw,36px);line-height:1.2;color:#efe6d2;}
.lead{font-style:italic;font-size:clamp(23px,2.2vw,30px);line-height:1.35;color:#e3d9c3;text-wrap:pretty;}
.body{font-size:21px;line-height:1.55;color:#cfc6b3;text-wrap:pretty;}
.muted{font-size:20px;line-height:1.5;color:#a39c8c;}
.mono{font-family:'Courier Prime',monospace;letter-spacing:0.18em;}
.rule{width:72px;height:1px;background:#c6a15b;}

/* ---------- textures ---------- */
.grain{position:absolute;inset:0;background-image:url(assets/grain.png);mix-blend-mode:overlay;opacity:0.55;pointer-events:none;}
.inset{position:absolute;inset:clamp(10px,1.6vw,24px);border:1px solid rgba(198,161,91,0.25);pointer-events:none;}
.paper-tex{position:absolute;inset:0;background-image:url(assets/paper.jpg);background-size:420px;mix-blend-mode:multiply;pointer-events:none;}

/* ---------- buttons ---------- */
.btn-gold{display:inline-block;padding:18px clamp(16px,4vw,34px);background:#c6a15b;font-family:'Bodoni Moda',serif;font-size:13px;letter-spacing:clamp(0.16em,0.8vw,0.28em);color:#0b120e;white-space:nowrap;text-align:center;}
.btn-gold:hover{background:#e0c07e;color:#0b120e;}
.btn-line{display:inline-block;font-family:'Bodoni Moda',serif;font-size:12px;letter-spacing:0.28em;color:#e6cf98;border:1px solid rgba(198,161,91,0.6);padding:12px 20px;text-align:center;}
.btn-line:hover{background:#c6a15b;color:#0b120e;}
.btn-dark{display:inline-block;align-self:flex-start;padding:20px clamp(16px,4vw,38px);background:#0d1f17;font-family:'Bodoni Moda',serif;font-size:13px;letter-spacing:clamp(0.16em,0.8vw,0.28em);color:#ece2c8;white-space:nowrap;text-align:center;}
.btn-dark:hover{background:#1f3328;color:#ece2c8;}

/* ---------- header ---------- */
.site-head{position:absolute;top:0;left:0;right:0;z-index:5;padding:clamp(20px,3vw,40px) clamp(20px,5vw,72px);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.wordmark{font-family:'Bodoni Moda',serif;font-size:15px;font-weight:500;letter-spacing:0.5em;color:#c6a15b;}
.nav-wide{display:none;flex-wrap:wrap;gap:clamp(16px,2.6vw,36px);align-items:center;font-family:'Bodoni Moda',serif;font-size:12px;letter-spacing:0.28em;}
.nav-wide a{color:#cfc6b3;} .nav-wide a:hover{color:#e6cf98;}
.nav-wide a.btn-line{color:#e6cf98;} .nav-wide a.btn-line:hover{color:#0b120e;}
.nav-narrow{font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.26em;color:#e6cf98;border:1px solid rgba(198,161,91,0.6);padding:11px 14px;}
@media (min-width:820px){.nav-wide{display:flex;} .nav-narrow{display:none;}}

/* ---------- hero (live-site pattern) ---------- */
.hero{position:relative;min-height:max(760px,100vh);display:flex;align-items:flex-end;overflow:hidden;background:#040706;}
.hero-img{position:absolute;top:0;right:0;width:max(min(64%,900px),420px);height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 90%,transparent 100%);}
.hero-shade-b{position:absolute;inset:0;background:linear-gradient(0deg,#040706 0%,rgba(4,7,6,0.8) 34%,rgba(4,7,6,0) 62%);}
.hero-shade-l{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,7,6,0.88) 0%,rgba(4,7,6,0.5) 40%,rgba(4,7,6,0) 62%);}
.hero-shade-t{position:absolute;left:0;right:0;top:0;height:260px;background:linear-gradient(180deg,rgba(4,7,6,0.92) 0%,rgba(4,7,6,0) 100%);}
.hero-content{position:relative;width:100%;max-width:1440px;margin:0 auto;padding:180px clamp(20px,5vw,72px) clamp(64px,8vw,112px);display:flex;flex-direction:column;gap:clamp(24px,3vw,36px);}
.hero h1{font-weight:300;font-size:clamp(52px,8.4vw,128px);line-height:0.92;letter-spacing:-0.01em;max-width:980px;overflow-wrap:break-word;}
.hero h1 .pre{display:block;font-style:italic;font-size:0.42em;line-height:1.15;color:#c6a15b;margin-bottom:0.2em;}
.hero .lead{max-width:640px;font-size:clamp(24px,2.4vw,34px);line-height:1.3;}
.hero-facts{display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,56px);align-items:flex-end;margin-top:12px;}
.hero-facts .lines{display:flex;flex-direction:column;gap:6px;font-size:clamp(19px,1.6vw,23px);line-height:1.4;color:#e3d9c3;}
.hero-facts .price{font-size:1.12em;font-weight:500;color:#efe6d2;margin-top:8px;}

/* ---------- key facts strip ---------- */
.facts{background:#040706;padding:0 clamp(20px,5vw,72px);}
.facts .row{max-width:1296px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));border-top:1px solid rgba(198,161,91,0.3);border-bottom:1px solid rgba(198,161,91,0.3);}
.fact{padding:32px 20px 32px 0;display:flex;flex-direction:column;gap:10px;}
.fact .v{font-size:22px;line-height:1.3;color:#efe6d2;}
.fact .s{font-size:18px;color:#a39c8c;}

/* ---------- gothic: claret / green / paper sections ---------- */
.claret{position:relative;background:#3d0d10;}
.claret .inset{border-color:rgba(214,180,112,0.35);}
.claret .eyebrow,.claret .it,.claret .label{color:#e0c07e;}
.claret .h2{color:#f2e6cc;}
.claret .body,.claret .lead{color:#ecdcc0;}
.green{position:relative;background:#0d1f17;overflow:hidden;}
.paper{position:relative;background:#ece2c8;color:#0d1f17;}
.paper .inset{border-color:rgba(13,31,23,0.35);}
.paper .h2{color:#0d1f17;}
.paper .it{color:#6e4d1f;}
.paper .eyebrow,.paper .label{color:#6e4d1f;}
.paper .body{color:#1f3328;}

/* rubber stamp */
.stamp{display:flex;align-items:center;justify-content:center;padding:14px 24px;border:3px solid #7a1a20;outline:1px solid #7a1a20;outline-offset:4px;color:#7a1a20;font-family:'Bodoni Moda',serif;font-weight:500;letter-spacing:0.3em;white-space:nowrap;opacity:0.85;mix-blend-mode:multiply;-webkit-mask-image:url(assets/wear.png);mask-image:url(assets/wear.png);-webkit-mask-size:320px;mask-size:320px;}

/* numbered / ruled lists */
.parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));border-top:1px solid rgba(214,180,112,0.4);}
.parts > div{padding:36px 28px 36px 0;display:flex;flex-direction:column;gap:14px;border-bottom:1px solid rgba(214,180,112,0.25);}
.numeral{font-family:'Bodoni Moda',serif;font-style:italic;font-size:22px;color:#e0c07e;}
.parts .t{font-size:28px;color:#f2e6cc;}
.parts .d{font-size:20px;line-height:1.5;color:#ecdcc0;}
.dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1px;background:rgba(198,161,91,0.3);border:1px solid rgba(198,161,91,0.3);}
.dates > div{background:#0d1f17;padding:28px;display:flex;flex-direction:column;gap:8px;}
.dates .v{font-size:21px;line-height:1.4;color:#efe6d2;}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));column-gap:clamp(40px,5vw,80px);}
.step{display:grid;grid-template-columns:64px 1fr;gap:16px;padding:30px 0;border-top:1px solid rgba(198,161,91,0.3);}
.step .n{font-size:48px;font-weight:300;line-height:1;color:#c6a15b;}
.step .t{font-size:27px;color:#efe6d2;}
.step .d{font-size:20px;line-height:1.5;color:#cfc6b3;}
.incl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));column-gap:clamp(40px,5vw,80px);}
.incl > div{display:flex;flex-direction:column;gap:10px;padding:30px 0;border-top:1px solid rgba(198,161,91,0.3);}
.incl .t{font-size:28px;color:#efe6d2;}
.incl .d{font-size:20px;line-height:1.5;color:#cfc6b3;}
.checklist{display:flex;flex-direction:column;border-top:1px solid rgba(13,31,23,0.35);}
.checklist > div{display:grid;grid-template-columns:52px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid rgba(13,31,23,0.2);}
.checklist .n{font-family:'Bodoni Moda',serif;font-style:italic;font-size:20px;color:#6e4d1f;}
.checklist .t{font-size:22px;line-height:1.4;color:#0d1f17;}

/* sealed envelope with wax seal */
.envelope{position:relative;width:min(100%,500px);aspect-ratio:1.55;transform:rotate(-3deg);}
.envelope .env{position:absolute;inset:0;background:#e6dbc1;box-shadow:0 34px 60px rgba(0,0,0,0.55),0 6px 12px rgba(0,0,0,0.3);overflow:hidden;}
.envelope .fold-l{position:absolute;inset:0;clip-path:polygon(0 0,50% 56%,0 100%);background:linear-gradient(90deg,rgba(0,0,0,0.05),rgba(0,0,0,0.1));}
.envelope .fold-r{position:absolute;inset:0;clip-path:polygon(100% 0,50% 56%,100% 100%);background:linear-gradient(270deg,rgba(0,0,0,0.04),rgba(0,0,0,0.12));}
.envelope .fold-b{position:absolute;inset:0;clip-path:polygon(0 100%,50% 50%,100% 100%);background:linear-gradient(0deg,rgba(255,255,255,0.12),rgba(0,0,0,0.03));}
.envelope .flap{position:absolute;left:0;right:0;top:0;height:58%;filter:drop-shadow(0 5px 5px rgba(0,0,0,0.3));}
.envelope .flap > div{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(180deg,#eee4cc 0%,#d9cbab 100%);}
.envelope .seal{position:absolute;left:50%;top:58%;width:clamp(96px,26%,132px);transform:translate(-50%,-50%) rotate(-10deg);filter:drop-shadow(0 8px 10px rgba(0,0,0,0.45)) drop-shadow(0 2px 2px rgba(0,0,0,0.35));}
.envelope .addr{position:absolute;left:8%;bottom:11%;font-family:'Courier Prime',monospace;font-size:clamp(11px,1.2vw,14px);letter-spacing:0.18em;color:#3a2a1d;opacity:0.8;}
.envelope .stamp-pos{position:absolute;right:7%;bottom:9%;}

/* pinned polaroid prints */
.cards3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(48px,5vw,72px);padding-top:12px;}
.polaroid{position:relative;background:#ece2c8;padding:14px 14px 46px;box-shadow:0 22px 36px rgba(0,0,0,0.6),0 3px 6px rgba(0,0,0,0.4);}
.polaroid .ph{position:relative;aspect-ratio:1;overflow:hidden;}
.polaroid .ph img{width:100%;height:100%;object-fit:cover;}
.polaroid .ph::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 18px rgba(0,0,0,0.35);}
.pin{position:absolute;left:50%;top:-11px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fbeabb 0%,#c9a15a 35%,#7a5a26 75%,#4a3414 100%);box-shadow:0 7px 8px rgba(0,0,0,0.55),inset -2px -3px 4px rgba(0,0,0,0.35);}
.card-title{font-size:36px;font-weight:300;color:#efe6d2;}

/* FAQ accordion (native details, styled like the live site) */
.faq{border-top:1px solid rgba(214,180,112,0.4);}
.faq details{border-bottom:1px solid rgba(214,180,112,0.3);}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;cursor:pointer;color:#f2e6cc;font-size:clamp(22px,2vw,27px);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary:hover{color:#e0c07e;}
.faq summary::after{content:"+";flex:none;font-family:'Bodoni Moda',serif;font-size:22px;color:#e0c07e;}
.faq details[open] summary::after{content:"\2212";}
.faq .a{padding:0 clamp(0px,4vw,48px) 30px 0;font-size:20px;line-height:1.55;color:#ecdcc0;text-wrap:pretty;}

/* ---------- gothic arch (pointed lancet) frame — shared by both worlds ---------- */
.arch{position:relative;aspect-ratio:0.72;}
.arch .arch-img{position:absolute;inset:0;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 140V58C0 24 26 6 50 0C74 6 100 24 100 58V140Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 140V58C0 24 26 6 50 0C74 6 100 24 100 58V140Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;}
.arch .arch-img img{width:100%;height:100%;object-fit:cover;}
.arch svg.arch-line{position:absolute;inset:-10px;width:calc(100% + 20px);height:calc(100% + 10px);overflow:visible;pointer-events:none;}

/* ---------- art deco accents (from the campaign posters) ---------- */
.deco-sun{display:block;width:clamp(150px,22vw,240px);height:auto;margin:0 auto;filter:drop-shadow(0 6px 12px rgba(0,0,0,0.5));}
.deco-sun.small{width:clamp(110px,14vw,160px);}
.deco-rule{display:block;width:min(100%,420px);height:auto;}
.deco-rule.center{margin:0 auto;}
.foil{background:linear-gradient(180deg,#f6de96 0%,#d6ac5c 42%,#fae6a8 64%,#b2863a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.deco-title{font-family:'Bodoni Moda',serif;font-weight:400;text-transform:uppercase;letter-spacing:0.14em;font-size:clamp(30px,3.6vw,48px);line-height:1.1;}

/* double gold frame with stepped corners and corner diamonds (poster frame) */
.deco-frame{position:absolute;inset:clamp(10px,1.6vw,24px);border:1px solid rgba(198,161,91,0.55);pointer-events:none;}
.deco-frame::before{content:"";position:absolute;inset:8px;border:1px solid rgba(198,161,91,0.28);}
.deco-frame i{position:absolute;width:56px;height:56px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%23c6a15b' stroke-width='1.4'%3E%3Cpath d='M8 54V8h46'/%3E%3Cpath d='M14 40V20h6v-6h20'/%3E%3C/g%3E%3Cpath fill='%23c6a15b' d='M22 16l4 4-4 4-4-4z'/%3E%3C/svg%3E") no-repeat;}
.deco-frame i:nth-child(1){top:-1px;left:-1px;}
.deco-frame i:nth-child(2){top:-1px;right:-1px;transform:scaleX(-1);}
.deco-frame i:nth-child(3){bottom:-1px;left:-1px;transform:scaleY(-1);}
.deco-frame i:nth-child(4){bottom:-1px;right:-1px;transform:scale(-1,-1);}

/* teal velvet stage with side curtains and hanging pearls (poster look) */
.velvet{--cw:clamp(18px,7vw,120px);position:relative;overflow:hidden;background:radial-gradient(70% 60% at 50% 45%,#12241f 0%,#071110 60%,#040706 100%);}
.velvet::before,.velvet::after{content:"";position:absolute;top:0;bottom:0;width:var(--cw);
  background:repeating-linear-gradient(90deg,#062c31 0px,#0e5058 14px,#1b6c74 22px,#0b434a 34px,#04252a 48px),#0e5058;
  box-shadow:0 0 50px 12px rgba(0,0,0,0.65);pointer-events:none;}
.velvet::before{left:0;} .velvet::after{right:0;transform:scaleX(-1);}
.velvet .pearls{position:absolute;top:0;width:14px;height:auto;max-height:300px;pointer-events:none;}
.velvet .pearls.l{left:calc(var(--cw) + 12px);} .velvet .pearls.l2{left:calc(var(--cw) + 30px);max-height:220px;}
.velvet .pearls.r{right:calc(var(--cw) + 12px);} .velvet .pearls.r2{right:calc(var(--cw) + 30px);max-height:220px;}
.velvet .glow{position:absolute;left:50%;bottom:4%;width:70%;height:55%;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(255,190,90,0.28),rgba(255,190,90,0));pointer-events:none;}

/* setting chooser: gothic panel | deco panel */
.settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(20px,2.4vw,32px);}
.setting{position:relative;overflow:hidden;padding:clamp(48px,6vw,80px) clamp(28px,5vw,64px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;min-height:100%;}
.setting > *{position:relative;}
.setting > .grain,.setting > .inset,.setting > .deco-frame,.setting > .pearls,.setting > .glow{position:absolute;}
.setting.velvet{--cw:clamp(14px,3.4vw,40px);padding-left:calc(var(--cw) + clamp(44px,5vw,64px));padding-right:calc(var(--cw) + clamp(44px,5vw,64px));}
.setting .tag{font-family:'Courier Prime',monospace;font-size:13px;letter-spacing:0.18em;color:#cfc6b3;opacity:0.85;}

/* small screens: keep the frame to one line and the top corners clear of the header, as on the live site */
@media (max-width:640px){
  .deco-frame::before{display:none;}
  .deco-frame i{width:38px;height:38px;background-size:100% 100%;}
  .hero .deco-frame i:nth-child(1),.hero .deco-frame i:nth-child(2){display:none;}
  .velvet .pearls{max-height:150px;} .velvet .pearls.l2,.velvet .pearls.r2{max-height:100px;}
}

/* ---------- footer ---------- */
.site-foot{background:#040706;padding:72px clamp(20px,5vw,72px) 56px;}
.site-foot .row1{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;}
.site-foot .row2{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:28px;border-top:1px solid rgba(198,161,91,0.2);font-size:16px;color:#958e80;}
.foot-links{display:flex;flex-wrap:wrap;gap:28px;font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.3em;}
.foot-links a{color:#cfc6b3;} .foot-links a:hover{color:#e6cf98;}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;} *,*::before,*::after{transition:none !important;animation:none !important;}}

/* ==========================================================================
   Usability & accessibility layer (td.js)
   ========================================================================== */
.sr-only{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.skip-link{position:absolute;left:12px;top:-60px;z-index:100;padding:12px 18px;background:#c6a15b;color:#0b120e;font-family:'Bodoni Moda',serif;font-size:13px;letter-spacing:0.2em;transition:top .15s;}
.skip-link:focus{top:12px;color:#0b120e;}
main:focus{outline:none;}

/* phone menu: the section links, opened from a MENU button */
.head-actions{display:flex;gap:10px;align-items:center;}
.menu-btn{font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.26em;color:#e6cf98;background:rgba(4,7,6,0.55);border:1px solid rgba(198,161,91,0.6);padding:11px 14px;cursor:pointer;min-height:44px;}
.menu-btn:hover{background:#c6a15b;color:#0b120e;}
.nav-narrow{min-height:44px;display:inline-flex;align-items:center;}
@media (max-width:819px){
  .nav-wide.open{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;left:clamp(10px,3vw,24px);right:clamp(10px,3vw,24px);top:calc(100% - 6px);
    background:rgba(4,7,6,0.97);border:1px solid rgba(198,161,91,0.45);padding:8px 18px;box-shadow:0 24px 40px rgba(0,0,0,0.6);}
  .nav-wide.open a{padding:16px 0;border-bottom:1px solid rgba(198,161,91,0.18);font-size:13px;}
  .nav-wide.open a:last-child{border-bottom:none;margin:12px 0 8px;text-align:center;}
}
@media (min-width:820px){.menu-btn{display:none;}}

/* share / secondary actions */
.btn-share{display:inline-flex;align-items:center;gap:10px;background:none;border:none;border-bottom:1px solid rgba(198,161,91,0.6);padding:6px 0;cursor:pointer;font-family:'Bodoni Moda',serif;font-size:12px;letter-spacing:0.28em;color:#e6cf98;min-height:44px;}
.btn-share:hover{color:#f2e6cc;border-color:#f2e6cc;}
.paper .btn-share{color:#6e4d1f;border-color:rgba(110,77,31,0.6);}
.paper .btn-share:hover{color:#0d1f17;border-color:#0d1f17;}
.actions-row{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;}
.btn-line.on-paper{color:#0d1f17;border-color:rgba(13,31,23,0.55);}
.btn-line.on-paper:hover{background:#0d1f17;color:#ece2c8;}

/* toast */
.td-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:90;transform:translate(-50%,20px);opacity:0;pointer-events:none;
  max-width:min(92vw,520px);padding:16px 22px;background:#0d1f17;border:1px solid rgba(198,161,91,0.6);color:#efe6d2;font-size:19px;line-height:1.4;text-align:center;
  box-shadow:0 18px 40px rgba(0,0,0,0.6);transition:opacity .2s,transform .2s;}
.td-toast.show{opacity:1;transform:translate(-50%,0);}

/* phone action bar */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;gap:12px;align-items:center;justify-content:space-between;
  padding:12px clamp(14px,4vw,24px) calc(12px + env(safe-area-inset-bottom));background:rgba(4,7,6,0.94);border-top:1px solid rgba(198,161,91,0.45);
  transform:translateY(110%);transition:transform .25s;}
.mbar.show{transform:none;}
.mbar .mbar-info{font-size:17px;line-height:1.25;color:#e3d9c3;}
.mbar .mbar-info b{font-weight:500;color:#efe6d2;}
.mbar .btn-gold{padding:14px 18px;font-size:12px;}
@media (max-width:819px){.mbar{display:flex;}}

/* countdown */
.countdown{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;}
.countdown .label{color:inherit;}
.countdown [data-countdown-text]{font-style:italic;font-size:1.05em;color:#efe6d2;}
.paper .countdown [data-countdown-text]{color:#0d1f17;}
.countdown.closed [data-countdown-text]{color:#e0c07e;}

/* price calculator */
.calc{display:flex;flex-direction:column;gap:18px;padding:26px 24px;border:1px solid rgba(13,31,23,0.35);background:rgba(255,255,255,0.18);}
.calc .label{color:#6e4d1f;}
.calc-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;}
.stepper{display:inline-flex;align-items:stretch;border:1px solid #0d1f17;}
.stepper button{width:52px;min-height:52px;border:none;background:#0d1f17;color:#ece2c8;font-size:26px;line-height:1;cursor:pointer;}
.stepper button:hover{background:#1f3328;}
.stepper input{width:72px;border:none;background:transparent;text-align:center;font-family:'Cormorant Garamond',serif;font-size:30px;color:#0d1f17;-moz-appearance:textfield;}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.calc-total{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:54px;line-height:1;color:#0d1f17;font-variant-numeric:lining-nums;}
.calc-detail{font-size:19px;line-height:1.4;color:#1f3328;}
.calc .btn-dark{white-space:normal;}

/* lining figures for prices and dates everywhere (Cormorant defaults to old-style, which makes £149 read oddly) */
.fact .v,.hero-facts .price,.h2,.incl .t,.step .d,.calc-detail,.dates .v,.lk-note,.mbar-info{font-variant-numeric:lining-nums;}


/* ==========================================================================
   Events business components
   ========================================================================== */
/* occasions */
.occasions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1px;background:rgba(198,161,91,0.3);border:1px solid rgba(198,161,91,0.3);}
.occasions > *{background:#070706;padding:28px 26px;display:flex;flex-direction:column;gap:8px;}
.occasions .t{font-size:27px;line-height:1.2;color:#efe6d2;}
.occasions .d{font-size:19px;line-height:1.45;color:#cfc6b3;}
.occasions a.seasonal{background:#160b0c;outline:1px solid rgba(224,192,126,0.5);outline-offset:-1px;}
.occasions a.seasonal:hover .t{color:#e6cf98;}

/* packages */
.pkgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:clamp(18px,2vw,28px);align-items:stretch;}
.pkg{position:relative;display:flex;flex-direction:column;gap:16px;padding:34px 28px 30px;border:1px solid rgba(198,161,91,0.45);background:rgba(4,7,6,0.55);}
.pkg::after{content:"";position:absolute;inset:6px;border:1px solid rgba(198,161,91,0.16);pointer-events:none;}
.pkg.feature{background:#0d1f17;border-color:#c6a15b;}
.pkg .name{font-family:'Bodoni Moda',serif;font-size:14px;letter-spacing:0.3em;color:#c6a15b;}
.pkg .price{font-weight:500;font-size:54px;line-height:1;color:#efe6d2;}
.pkg .price small{font-size:20px;font-weight:400;font-style:italic;color:#c6a15b;margin-left:6px;}
.pkg .for{font-style:italic;font-size:20px;line-height:1.35;color:#e3d9c3;}
.pkg ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;flex:1;}
.pkg li{position:relative;padding-left:22px;font-size:19px;line-height:1.4;color:#cfc6b3;}
.pkg li::before{content:"";position:absolute;left:2px;top:0.55em;width:7px;height:7px;background:#c6a15b;transform:rotate(45deg);}
.pkg .btn-gold,.pkg .btn-line{display:block;margin-top:6px;white-space:normal;}
.pkg .tag{position:absolute;top:-13px;left:24px;background:#c6a15b;color:#0b120e;font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.24em;padding:5px 10px;}

/* coming-soon decades */
.soon{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;}
.soon > div{border:1px dashed rgba(198,161,91,0.45);padding:24px;display:flex;flex-direction:column;gap:6px;text-align:center;}
.soon .t{font-size:34px;font-weight:300;color:#efe6d2;}
.soon .d{font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.3em;color:#c6a15b;}
.decade-now{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;}

/* events list */
.event-row{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr) auto;gap:20px 32px;align-items:center;padding:28px 0;border-top:1px solid rgba(198,161,91,0.3);}
.event-row:last-child{border-bottom:1px solid rgba(198,161,91,0.3);}
.event-row .when{font-family:'Bodoni Moda',serif;font-size:12px;letter-spacing:0.28em;color:#c6a15b;}
.event-row .t{font-size:30px;line-height:1.15;color:#efe6d2;}
.event-row .d{font-size:19px;line-height:1.45;color:#cfc6b3;margin-top:6px;}
@media (max-width:719px){.event-row{grid-template-columns:minmax(0,1fr);}}

/* forms (on paper) */
.form{display:flex;flex-direction:column;gap:24px;}
.form .row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field > label,.field > .lab{font-family:'Bodoni Moda',serif;font-size:12px;letter-spacing:0.24em;color:#1f3328;}
.field .opt{font-family:'Cormorant Garamond',serif;font-style:italic;letter-spacing:0;font-size:16px;color:#5b5240;text-transform:none;}
.field input,.field select,.field textarea{font:inherit;font-size:22px;color:#0d1f17;background:rgba(255,255,255,0.35);border:none;border-bottom:1px solid #0d1f17;border-radius:0;padding:10px 4px;min-height:48px;width:100%;}
.field textarea{min-height:140px;resize:vertical;border:1px solid rgba(13,31,23,0.5);}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #6e4d1f;outline-offset:2px;background:rgba(255,255,255,0.6);}
.field .hint{font-size:17px;line-height:1.4;color:#5b5240;}
.field [aria-invalid="true"]{border-color:#7a1a20;background:rgba(122,26,32,0.06);}
.field .err{font-size:18px;color:#7a1a20;}
.check{display:flex;gap:14px;align-items:flex-start;font-size:19px;line-height:1.45;color:#1f3328;}
.check input{flex:none;width:22px;height:22px;margin:4px 0 0;accent-color:#0d1f17;}
.form-status{font-size:20px;line-height:1.45;padding:16px 18px;border:1px solid #0d1f17;}
.form-status.ok{background:rgba(13,31,23,0.06);}
.form-status.bad{border-color:#7a1a20;color:#7a1a20;}
.hp{position:absolute !important;left:-10000px;width:1px;height:1px;overflow:hidden;}
button.btn-dark{border:none;cursor:pointer;font:inherit;font-family:'Bodoni Moda',serif;font-size:13px;}
button.btn-dark[disabled]{opacity:0.6;cursor:wait;}

/* legal pages */
.legal{max-width:820px;margin:0 auto;}
.legal h1{font-weight:300;font-size:clamp(44px,6vw,76px);line-height:1;color:#efe6d2;margin:0 0 12px;}
.legal .sub{font-style:italic;font-size:20px;color:#a39c8c;margin-bottom:36px;}
.legal h2{font-weight:500;font-size:28px;color:#e6cf98;margin:44px 0 12px;}
.legal h3{font-weight:500;font-size:22px;color:#efe6d2;margin:28px 0 8px;}
.legal p,.legal li{font-size:20px;line-height:1.6;color:#d9d2c1;}
.legal p{margin:0 0 14px;}
.legal ul{padding-left:1.2em;margin:0 0 14px;}
.legal li{margin:6px 0;}
.legal li::marker{color:#c6a15b;}
.legal a{border-bottom:1px solid rgba(198,161,91,0.5);}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:8px 0 18px;}
.legal table{width:100%;min-width:640px;border-collapse:collapse;margin:0;font-size:18px;color:#d9d2c1;}
.legal th,.legal td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid rgba(198,161,91,0.25);}
@media (max-width:719px){
  .table-scroll{border-bottom:1px solid rgba(198,161,91,0.3);}
  .table-scroll table{min-width:600px;}
}
.legal th{font-family:'Bodoni Moda',serif;font-weight:400;font-size:11px;letter-spacing:0.24em;color:#c6a15b;}
.legal .note{border-left:2px solid #c6a15b;padding:6px 0 6px 16px;font-style:italic;color:#e3d9c3;}
.simple-head{position:relative;}
.page-top{padding:150px clamp(20px,5vw,72px) clamp(72px,10vw,140px);}

.site-head.solid{position:relative;background:#040706;border-bottom:1px solid rgba(198,161,91,0.3);}

/* ---------- mystery bar: every mystery we offer, one themed segment each ---------- */
.mystery-bar{position:relative;background:#040706;padding:clamp(18px,2.4vw,30px) clamp(12px,3vw,48px);border-bottom:1px solid rgba(198,161,91,0.3);}
.mystery-bar .mb-head{max-width:1440px;margin:0 auto 14px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:0 4px;}
.mystery-bar .mb-head .hint{font-style:italic;font-size:17px;color:#a39c8c;}
.mb-row{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid rgba(198,161,91,0.5);outline:1px solid rgba(198,161,91,0.2);outline-offset:4px;}
.mb-seg{position:relative;display:flex;flex-direction:column;gap:8px;min-height:230px;padding:22px 20px 20px;overflow:hidden;color:#efe6d2;border-right:1px solid rgba(198,161,91,0.35);isolation:isolate;transition:transform .2s,box-shadow .2s;}
.mb-seg:last-child{border-right:none;}
.mb-seg::before{content:"";position:absolute;inset:0;z-index:-2;}
.mb-seg::after{content:"";position:absolute;inset:0;z-index:-1;background-image:url(assets/grain.png);mix-blend-mode:overlay;opacity:0.5;}
.mb-seg{padding-top:112px !important;}
.mb-seg .art{position:absolute;top:18px;left:20px;height:76px;width:auto;z-index:0;pointer-events:none;}
.mb-seg div.art{height:auto;}
.mb-seg .k{font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.28em;color:#e0c07e;}
.mb-seg .t{font-size:clamp(24px,1.9vw,30px);line-height:1.05;font-weight:400;color:#f2e6cc;max-width:85%;}
.mb-seg .d{font-style:italic;font-size:18px;line-height:1.35;color:#e3d9c3;max-width:78%;}
.mb-seg .go{margin-top:auto;font-family:'Bodoni Moda',serif;font-size:11px;letter-spacing:0.26em;color:#e6cf98;display:inline-flex;gap:8px;align-items:center;}
.mb-seg .go::after{content:"→";font-family:'Cormorant Garamond',serif;font-size:20px;letter-spacing:0;transition:transform .2s;}
.mb-seg:hover,.mb-seg:focus-visible{transform:translateY(-3px);box-shadow:0 18px 30px rgba(0,0,0,0.5);z-index:2;color:#efe6d2;}
.mb-seg:hover .go::after,.mb-seg:focus-visible .go::after{transform:translateX(5px);}
.mb-seg:focus-visible{outline:2px solid #e6cf98;outline-offset:-4px;}
/* themes */
.mb-deco::before{background:radial-gradient(80% 70% at 70% 100%,rgba(255,190,90,0.18),rgba(255,190,90,0) 70%),repeating-linear-gradient(90deg,rgba(14,80,88,0.55) 0 10px,rgba(6,44,49,0.55) 10px 22px),#0a2a2e;}
.mb-deco .t{font-family:'Bodoni Moda',serif;font-weight:500;font-variation-settings:"opsz" 20;font-size:clamp(20px,1.6vw,26px);letter-spacing:0.08em;text-transform:uppercase;
  background:linear-gradient(180deg,#f6de96 0%,#d6ac5c 45%,#fae6a8 70%,#b2863a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.mb-gothic::before{background:radial-gradient(70% 60% at 85% 90%,rgba(255,180,90,0.14),rgba(255,180,90,0) 70%),#3d0d10;}
.mb-seal::before{background:radial-gradient(70% 60% at 80% 85%,rgba(198,161,91,0.14),rgba(198,161,91,0) 70%),#0b1110;}
.mb-green::before{background:#0d1f17;}
.mb-season::before{background:linear-gradient(160deg,#1a0a0c 0%,#070706 70%);}
.mb-season .badge{position:absolute;top:14px;right:14px;font-family:'Bodoni Moda',serif;font-size:10px;letter-spacing:0.2em;color:#0b120e;background:#e0c07e;padding:4px 8px;}
.mb-arch{width:56px;aspect-ratio:0.72;position:relative !important;top:auto !important;left:auto !important;}
@media (max-width:1100px){
  .mb-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;outline:none;}
  .mb-seg{flex:0 0 min(78%,300px);scroll-snap-align:start;}
  .mb-seg:hover,.mb-seg:focus-visible{transform:none;}
}

@media (min-width:820px){.nav-narrow{display:none;}}

.mb-seg img.art{height:76px !important;width:auto !important;max-width:150px;object-fit:contain;}
.mb-seg div.art{width:56px;height:78px;}
.mb-seg div.art .mb-arch{width:56px;height:78px;aspect-ratio:auto;display:block;}

/* enquiry routes (Instagram / Jotform) */
.enq-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px 26px;border:1px solid rgba(13,31,23,0.4);background:rgba(255,255,255,0.22);}
.enq-card::after{content:"";position:absolute;inset:5px;border:1px solid rgba(13,31,23,0.14);pointer-events:none;}
.enq-card .btn-dark{white-space:normal;}

/* plain links on cream paper use the dark bronze (gold is too faint on paper) */
.paper a:not([class]){color:#6e4d1f;}
.paper a:not([class]):hover{color:#0d1f17;}