
    :root{
      color-scheme:dark;
      --bg:#08090b;--surface:#101216;--surface-2:#181a20;--ink:#f8f4e9;--muted:#d8d2c4;
      --gold:#d4a548;--gold-bright:#edc66d;--gold-pale:#f6db9c;--line:rgba(255,255,255,.14);
      --night:#07080a;--night-2:#111216;--white:#fbf8f0;--shadow:0 30px 90px rgba(0,0,0,.65);
      --display:"Bodoni Moda",Georgia,serif;--sans:"DM Sans",sans-serif;
    }
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);overflow-x:hidden}a{color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.skip{position:fixed;z-index:100;left:1rem;top:1rem;padding:.75rem 1rem;background:var(--white);color:#111;transform:translateY(-180%)}.skip:focus{transform:none}
    .nav{position:absolute;z-index:20;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:1.6rem;padding:1.2rem clamp(1.1rem,4vw,4.5rem);color:white;text-shadow:0 2px 12px #000}.nav a{text-decoration:none;text-transform:uppercase;font-size:.7rem;font-weight:800;letter-spacing:.13em}.nav a:hover,.nav a:focus-visible{color:var(--gold-pale)}.nav .book{border:1px solid rgba(255,255,255,.6);padding:.72rem .95rem;background:rgba(5,5,5,.35);backdrop-filter:blur(5px)}.brand{display:inline-flex;align-items:center;text-transform:none!important;letter-spacing:0!important}.brand img{height:76px;width:auto;display:block;filter:drop-shadow(0 0 22px rgba(212,175,55,.55)) drop-shadow(0 2px 10px rgba(0,0,0,.8))}.footer-logo{height:104px;width:auto;display:block;margin:0 0 .9rem;filter:drop-shadow(0 0 22px rgba(212,175,55,.25))}
    .hero{min-height:100svh;position:relative;overflow:hidden;background:#050608;color:white;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 77% 42%,rgba(232,180,90,.22),transparent 29%),radial-gradient(circle at 89% 24%,rgba(200,120,40,.16),transparent 22%),linear-gradient(107deg,rgba(5,6,8,.70) 0%,rgba(5,6,8,.46) 38%,rgba(5,6,8,.22) 62%,rgba(5,6,8,.08) 85%);z-index:1}.hero:after{content:"";position:absolute;z-index:3;inset:auto 0 0;height:30%;background:linear-gradient(0deg,#050608,transparent);pointer-events:none}.hero .overline{animation:wordmark-in .8s ease-out both}.hero h1{animation:headline-glow 5s ease-in-out infinite}.hero-visual:after{content:"";position:absolute;inset:-15%;background:linear-gradient(115deg,transparent 35%,rgba(237,198,109,.1) 48%,transparent 61%);animation:haze-drift 12s ease-in-out infinite;pointer-events:none}.hero-visual{position:absolute;inset:0 0 0 32%;z-index:0}.hero-visual>picture:first-child{position:absolute;inset:0}.hero-visual>picture:first-child>img{width:100%;height:100%;object-fit:cover;object-position:42% center;filter:saturate(.78) contrast(1.12) brightness(.84)}.hero-visual .crowd-picture{position:absolute;right:3%;bottom:5%;width:31%;height:31%}.hero-visual .crowd-slice{width:100%;height:100%;object-fit:cover;object-position:center 30%;border:1px solid rgba(239,200,111,.6);box-shadow:0 24px 70px #000;filter:saturate(1.05) contrast(1.1)}.hero-visual .edge{position:absolute;inset:9% 3% 5% auto;width:31%;border:1px solid rgba(239,200,111,.35);transform:translate(14px,-14px);z-index:-1}.hero-inner{position:relative;z-index:4;width:min(1420px,100%);min-height:100svh;margin:auto;padding:clamp(8rem,14vh,10rem) clamp(1.2rem,5vw,5.5rem) clamp(3.3rem,7vh,5rem);display:flex;align-items:flex-end}.hero-copy{width:min(700px,55vw)}.overline{display:flex;align-items:center;gap:.85rem;color:var(--gold-pale);font-size:.69rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
    .brand-seal{width:58px;height:58px;border-radius:50%;border:1px solid rgba(212,175,55,.7);box-shadow:0 0 28px rgba(212,175,55,.4),0 4px 14px rgba(0,0,0,.6);flex:0 0 auto;object-fit:cover}.overline:before{content:"";width:38px;height:1px;background:currentColor}.hero h1{font-family:var(--display);font-size:clamp(4rem,8vw,8.3rem);font-weight:600;line-height:.82;letter-spacing:-.065em;margin:.8rem 0 1.45rem;max-width:100%;text-wrap:balance;background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.9) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(180deg,#fff7d9 0%,#fbe9ac 18%,#f0c463 34%,#d99e35 48%,#fff4c2 57%,#e7b154 68%,#fff9df 80%,#cf9a2f 90%,#f4d67f 100%);background-size:260% 100%,100% 100%;background-position:130% 0,0 0;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(88,60,16,.55);text-shadow:0 2px 0 rgba(24,14,2,.9), 0 10px 24px rgba(0,0,0,.85), 0 0 30px rgba(240,214,150,.22);filter:none;animation:h1-sheen 7s ease-in-out infinite,headline-glow 5s ease-in-out infinite}.hero h1 em{display:block;color:var(--gold-pale);font-weight:500}.hero .tagline{font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold-pale);font-size:clamp(1.25rem,2.4vw,1.8rem);letter-spacing:.01em;margin:0 0 1.15rem;text-shadow:0 2px 16px #000}.hero .lead{max-width:630px;color:#e1ddd4;font-size:clamp(1rem,1.6vw,1.23rem);line-height:1.7;text-shadow:0 2px 12px #000;border-left:2px solid rgba(212,175,55,.75);padding-left:1.2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.2rem;border:1px solid transparent;text-decoration:none;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.12em;cursor:pointer}.btn-primary{background:linear-gradient(135deg,#d9b45c,#a1761a);color:#111;box-shadow:inset 0 1px 0 rgba(255,244,214,.28),0 6px 18px rgba(60,38,0,.32)}.btn-primary:hover{filter:brightness(1.1)}.btn-ghost{border-color:rgba(255,255,255,.5);color:white;background:rgba(0,0,0,.2)}.btn-ghost:hover{border-color:white;background:rgba(255,255,255,.08)}.hero-meta{display:flex;gap:1.5rem;margin-top:2.2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.28);width:min(540px,100%)}.hero-meta strong{font-family:var(--display);font-size:1.6rem;color:var(--gold-pale)}.hero-meta span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#bfb9af;line-height:1.5}
    .proof-strip{background:#0b0c0f;color:white;border-top:1px solid rgba(232,189,96,.38);border-bottom:1px solid rgba(232,189,96,.38);padding:1.15rem clamp(1.2rem,5vw,5.5rem)}.proof-track{width:min(1260px,100%);margin:auto;display:flex;flex-wrap:wrap;gap:.75rem 1.4rem;justify-content:center}.proof-track span{font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#d8d2c7}.proof-track span:not(:last-child):after{content:"◆";color:#d9ab4c;margin-left:1.4rem;font-size:.5rem}.section{padding:clamp(4.8rem,9vw,8.5rem) clamp(1.2rem,5vw,5.5rem)}.inner{width:min(1260px,100%);margin:auto}.kicker{display:flex;align-items:center;gap:.75rem;color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.kicker:before{content:"";width:32px;height:1px;background:currentColor}.section h2{font-family:var(--display);font-weight:600;font-size:clamp(2.7rem,6vw,5.8rem);line-height:.94;letter-spacing:-.05em;margin:.8rem 0 1.5rem;max-width:11ch}.section h2:after{content:"";display:block;width:clamp(70px,9vw,130px);height:2px;margin-top:.32em;background:linear-gradient(90deg,var(--gold-bright),transparent);transform-origin:left;animation:underline-sweep 1.2s ease-out both}.lead{font-size:clamp(1.06rem,1.7vw,1.28rem);line-height:1.75;color:#c9c2b4;font-weight:500}
    .about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(2.5rem,7vw,7rem);align-items:center}.portrait-stack{position:relative;min-height:670px}.portrait-stack .main{position:absolute;inset:0 12% 9% 0;width:88%;height:91%;object-fit:cover;object-position:45% center;box-shadow:var(--shadow);filter:saturate(.84) contrast(1.08)}.portrait-stack .inset{position:absolute;right:0;bottom:0;width:44%;height:42%;object-fit:cover;border:7px solid var(--bg);box-shadow:var(--shadow)}.portrait-stack:before{content:"";position:absolute;inset:-18px 17% 16% -18px;border:1px solid var(--gold);opacity:.7}.year-stamp{position:absolute;right:2%;top:5%;width:122px;aspect-ratio:1;border:1px solid #d9ac50;border-radius:50%;display:grid;place-content:center;text-align:center;color:#fff;background:rgba(6,7,9,.82);box-shadow:0 0 0 6px rgba(213,168,79,.13)}.year-stamp b{font-family:var(--display);font-size:1.65rem;color:#efca79}.year-stamp span{font-size:.54rem;letter-spacing:.15em;text-transform:uppercase}.about-copy blockquote{position:relative;font-family:var(--display);font-size:clamp(2rem,4.1vw,4.4rem);line-height:1.07;letter-spacing:-.04em;margin:0 0 1.6rem}
    .about-copy blockquote:before{content:"\201C";position:absolute;left:-.18em;top:-.52em;font-family:var(--display);font-size:2.6em;line-height:1;color:rgba(212,175,55,.16);pointer-events:none}.about-copy blockquote em{color:var(--gold);font-weight:500}.about-copy p{color:var(--muted);font-size:1.04rem;line-height:1.78}.credentials{margin-top:2rem;border-top:1px solid var(--line)}.credential{display:grid;grid-template-columns:120px 1fr;gap:1rem;padding:1.05rem 0;border-bottom:1px solid var(--line)}.credential b{font-size:.68rem;color:var(--gold);text-transform:uppercase;letter-spacing:.12em}.credential span{font-weight:650}
    .services{position:relative;background:var(--surface);overflow:hidden}.services:before{content:"LIVE";position:absolute;right:-.05em;top:-.18em;color:var(--line);font-family:var(--display);font-size:min(33vw,29rem);font-weight:700;line-height:1;opacity:.45}.section-head{position:relative;display:flex;align-items:end;justify-content:space-between;gap:3rem}.section-head .lead{max-width:520px}.service-grid{position:relative;margin-top:3.2rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem}.service-card{position:relative;min-height:460px;background:#111;color:white;overflow:hidden}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,4,6,.98),rgba(3,4,6,.08) 72%)}.service-card:hover img{transform:scale(1.025)}.service-info{position:absolute;z-index:2;inset:auto 0 0;padding:1.5rem}.service-info small{color:#efca79;font-weight:800;letter-spacing:.15em}.service-info h3{font-family:var(--display);font-size:clamp(2rem,3vw,3rem);margin:.25rem 0 .45rem}.service-info p{margin:0;color:#d5d0c6;line-height:1.6;max-width:55ch}.service-card.night img{object-position:center 70%}.service-card.private img{object-position:center 65%}.production{margin-top:.9rem;background:#090a0d;color:white;display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem;padding:clamp(1.5rem,4vw,3.5rem);align-items:start}.production h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.8rem);line-height:1;margin:.5rem 0}.production p{color:#aaa49a;line-height:1.65}.add-ons{display:grid;grid-template-columns:repeat(2,1fr);gap:0 2.5rem}.add-ons details{border-top:1px solid rgba(255,255,255,.16)}.add-ons details:nth-last-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}.add-ons summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem .1rem;font-weight:700;color:#fff}.add-ons summary::-webkit-details-marker{display:none}.add-ons summary:focus-visible{outline:2px solid #e8bd60;outline-offset:4px}.add-ons .addon-name:before{content:"+";color:#e8bd60;margin-right:.7rem;display:inline-block;transition:transform .25s ease}.add-ons details[open] .addon-name:before{transform:rotate(45deg)}.add-ons .addon-price{color:#f6db9c;font-weight:800;white-space:nowrap;font-size:.92rem}.add-ons .addon-price small{font-weight:600;color:#aaa49a;font-size:.78rem}.add-ons .addon-body{padding:.1rem .1rem 1.25rem;color:#aaa49a;font-size:.93rem;line-height:1.65}.add-ons .addon-body p{margin:0 0 .7rem}.add-ons .addon-body a{color:#f6db9c;font-weight:700;text-decoration:none}.add-ons .addon-body a:hover{text-decoration:underline}
    .private-pricing{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--line)}.private-pricing-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}.private-pricing-head h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.8rem);margin:.5rem 0}.private-pricing-head p{max-width:520px;color:var(--muted);line-height:1.65}.private-pricing-grid{margin-top:1.5rem}.party-card{padding:clamp(1.4rem,3vw,2rem);background:var(--surface);border-top:2px solid var(--gold)}.party-card h4{font-family:var(--display);font-size:2rem;margin:.35rem 0}.party-card .price{font-family:var(--display);font-size:1.65rem;color:var(--gold);font-weight:600}.party-features{margin:1.2rem 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.party-features span{padding:.55rem 0;border-top:1px solid var(--line);font-weight:650}.party-features span:before{content:"+";color:var(--gold);margin-right:.55rem}.party-rates{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.party-rates span{padding:.58rem .7rem;background:var(--surface-2);font-size:.82rem;font-weight:750}.energy{background:#090a0d;color:white;padding:clamp(3.5rem,7vw,6rem) clamp(1.2rem,5vw,5.5rem)}.energy-grid{width:min(1260px,100%);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:center}.energy .section-cta .btn{color:white}.energy h2{font-family:var(--display);font-size:clamp(2.8rem,6vw,5.8rem);line-height:.92;letter-spacing:-.05em;margin:.7rem 0 1.2rem}.energy p{color:#bdb7ad;line-height:1.7}.reel-slot{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(231,190,99,.48);box-shadow:0 26px 70px #000;background:#060709}.reel-slot picture,.reel-slot img,.reel-slot iframe{width:100%;height:100%}.reel-slot img{object-fit:cover;filter:saturate(1.15) contrast(1.1) brightness(.65);transition:transform .7s ease,filter .7s ease}.reel-slot:hover img{transform:scale(1.025);filter:saturate(1.18) contrast(1.1) brightness(.74)}.reel-slot iframe{position:absolute;inset:0;border:0;background:#000}.reel-label{position:absolute;left:1rem;bottom:1rem;color:#fff;font-size:.65rem;font-weight:800;letter-spacing:.13em;background:rgba(0,0,0,.72);padding:.55rem .7rem;text-transform:uppercase}.reel-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);border:0;color:#f1d18b;background:transparent;display:grid;justify-items:center;gap:.65rem;cursor:pointer}.reel-play .play-ring{width:76px;aspect-ratio:1;border:1px solid #e7bd60;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.62);box-shadow:0 0 0 10px rgba(231,189,96,.08);font-size:1.35rem;transition:transform .25s ease,background .25s ease}.reel-play b{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 2px 12px #000}.reel-play:not(:disabled):hover .play-ring{transform:scale(1.06);background:rgba(231,189,96,.18)}.reel-play:disabled{cursor:default}.reel-play:disabled .play-ring{opacity:.72}.reel-play:focus-visible{outline:2px solid #f1d18b;outline-offset:8px}.packages{background:var(--bg)}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.package{padding:2rem;background:var(--surface);border-top:2px solid var(--gold);box-shadow:0 16px 46px rgba(21,14,2,.1);display:flex;flex-direction:column}.package.featured{background:#0b0c0f;color:white;transform:translateY(-1rem);box-shadow:var(--shadow);border:1px solid var(--gold-bright);border-top-width:3px;position:relative}.package-badge{position:absolute;right:1rem;top:1rem;background:var(--gold-bright);color:#111;padding:.4rem .55rem;font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.package-tag{font-family:var(--display);font-style:italic;font-size:1.12rem;color:var(--gold-pale);margin:.2rem 0 .55rem;line-height:1.4}
    .addon-menu{margin-top:3.2rem;padding-top:2.6rem;border-top:1px solid var(--line)}
    .addon-menu-head h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.4rem);margin:.5rem 0;line-height:1}
    .addon-menu-head p{color:var(--muted);line-height:1.65;max-width:60ch}
    .addon-menu-grid{margin-top:1.6rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
    .addon-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1.2rem;padding:1.3rem 1.4rem;background:var(--surface)}
    .addon-item strong{display:block;font-size:.95rem;letter-spacing:.02em;margin-bottom:.4rem}
    .addon-item span{display:block;font-size:.86rem;color:var(--muted);line-height:1.6}
    .addon-item em{font-family:var(--display);font-style:normal;font-size:1.35rem;font-weight:600;color:var(--gold);white-space:nowrap}
    .addon-menu .section-cta{margin-top:1.8rem}
    @media(max-width:900px){.addon-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
    @media(max-width:620px){.addon-menu-grid{grid-template-columns:1fr}}
    .package .tier{display:flex;align-items:center;gap:.7rem;font-size:.68rem;color:var(--gold);font-weight:800;letter-spacing:.14em;text-transform:uppercase}
    .package .tier:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(212,175,55,.7),transparent)}.package h3{font-family:var(--display);font-size:2.25rem;margin:.45rem 0 .35rem}.package .price{font-family:var(--display);font-size:2rem;color:var(--gold);margin-bottom:.75rem}.package.featured .price{color:var(--gold-pale)}.package p{color:var(--muted);line-height:1.6}.package.featured p{color:#bfb8ad}.package ul{list-style:none;padding:0;margin:1rem 0 1.5rem}.package li{padding:.7rem 0;border-top:1px solid var(--line);font-weight:650}.package.featured li{border-color:rgba(255,255,255,.16)}.package li:before{content:"+";color:var(--gold-bright);margin-right:.6rem}.package .btn{margin-top:auto;border-color:var(--gold);color:inherit}.retainer{margin:1.4rem 0 0;text-align:center;font-family:var(--display);font-size:clamp(1.25rem,2.5vw,1.8rem);font-weight:600;color:var(--gold)}
    .retainer-sub{display:block;margin-top:.6rem;font-family:var(--sans);font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#e8dfc9}.package-media{margin-top:3.5rem;padding:clamp(1.3rem,3vw,2rem);background:#0a0b0e;color:white;display:grid;grid-template-columns:.68fr 1.32fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.package-media h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.8rem);line-height:1;margin:.55rem 0 1rem}.package-media p{color:#bdb7ad;line-height:1.65}.package-media .reel-slot{box-shadow:none}.package-media .section-cta .btn{color:white}.addon-menu{margin-top:3.5rem;display:grid;grid-template-columns:.7fr 1.3fr;gap:3rem;padding-top:2.5rem;border-top:1px solid var(--line)}.addon-menu h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.6rem);margin:.5rem 0}.addon-list{display:grid;grid-template-columns:1fr 1fr}.addon{padding:1rem;border-top:1px solid var(--line)}.addon b{display:block}.addon span{display:block;color:var(--muted);font-size:.86rem;margin-top:.3rem;line-height:1.5}.residencies{background:#07080a;color:white;position:relative;overflow:hidden}.residencies:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 16%,rgba(200,120,40,.2),transparent 25%),radial-gradient(circle at 83% 75%,rgba(232,180,90,.18),transparent 28%)}.residencies .inner{position:relative}.residencies .lead{color:#c1bbb0;max-width:570px}.residency-list{margin-top:3rem;border-top:1px solid rgba(255,255,255,.2)}.residency{display:grid;grid-template-columns:70px 1fr auto;gap:1.3rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.2)}.residency .day{color:#e8bd60;font-size:.69rem;font-weight:800;letter-spacing:.13em}.residency h3{font-family:var(--display);font-size:clamp(1.55rem,3.3vw,3rem);font-weight:500;margin:0}.residency p{margin:.25rem 0 0;color:#99938a}.residency time{font-weight:700;color:#f2eee5;white-space:nowrap}
    .gallery-head{display:flex;align-items:end;justify-content:space-between;gap:3rem}.gallery-head .lead{max-width:460px}.gallery{margin-top:3rem;display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:310px 270px;gap:.8rem}.gallery figure{margin:0;position:relative;overflow:hidden;background:#111}.gallery figure:first-child{grid-row:1/3}.gallery figure:nth-child(4){grid-column:2/4}.gallery a,.gallery picture{display:block;width:100%;height:100%}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.gallery figure:hover img{transform:scale(1.03)}.gallery figcaption{position:absolute;left:.75rem;bottom:.75rem;padding:.45rem .6rem;background:rgba(0,0,0,.72);color:white;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
    .booking{background:linear-gradient(135deg,#e3bb5f,#ac7117);color:#111;position:relative;overflow:hidden}.booking:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 41px,rgba(255,255,255,.1) 42px 43px)}.booking-grid{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,5vw,5rem);align-items:start}.booking h2{font-size:clamp(3.2rem,7vw,7rem);max-width:8ch;font-weight:700;letter-spacing:-.02em;line-height:.9;margin:0 0 1.3rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E"),linear-gradient(177deg,#57400e 0%,#8a6a1c 12%,#3a2b07 28%,#6e5314 42%,#2a1e04 56%,#59400f 70%,#201503 84%,#463307 100%);background-size:220px 220px,100% 100%;background-blend-mode:soft-light;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(28,18,2,.7);text-shadow:0 1px 0 rgba(255,243,208,.65), 0 10px 22px rgba(52,32,0,.55), 0 3px 6px rgba(52,32,0,.6);filter:none;}.booking-copy p{font-size:1.1rem;line-height:1.7;max-width:520px}.contact-quick{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(0,0,0,.25)}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.contact-action{min-height:48px;display:flex;align-items:center;padding:.75rem .9rem;border:1px solid rgba(0,0,0,.3);background:rgba(255,255,255,.12);text-decoration:none;font-weight:800;line-height:1.25}.contact-action.call{grid-column:1/-1;background:#0b0c0f;color:white;border-color:#0b0c0f;font-size:1.05rem}.contact-action:hover,.contact-action:focus-visible{background:#fff4d5;color:#111}.contact-quick>span{display:block;margin-top:.8rem}.inquiry-form{background:#0b0c0f;color:white;padding:clamp(1.25rem,3.5vw,2.5rem);box-shadow:0 28px 70px rgba(46,27,0,.3)}.intake-step{border:0;border-top:1px solid rgba(255,255,255,.18);padding:1.35rem 0 1.5rem;margin:0}.intake-step:first-child{border-top:0;padding-top:0}.intake-step legend{width:100%;padding:0 0 1rem;font-family:var(--display);font-size:1.35rem;color:#fff}.step-number{display:inline-grid;place-items:center;width:1.85rem;height:1.85rem;margin-right:.65rem;border:1px solid #d9ab4c;border-radius:50%;font-family:var(--sans);font-size:.66rem;font-weight:900;color:#efca79;vertical-align:middle}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:grid;gap:.42rem;min-width:0}.field.full{grid-column:1/-1}.field label,.choice-label{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:#d9c491;font-weight:800}.field input:not([type="checkbox"]):not([type="radio"]),.field select,.field textarea{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.27);background:#15171c;color:white;border-radius:0;padding:.86rem;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#efca79;box-shadow:0 0 0 2px rgba(239,202,121,.18)}.field textarea{min-height:108px;resize:vertical}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.choice{position:relative;display:flex;align-items:center;gap:.7rem;min-height:50px;padding:.72rem .8rem;border:1px solid rgba(255,255,255,.23);background:#15171c;color:#f3efe6;font-size:.88rem;line-height:1.3;cursor:pointer}.choice input{width:1.15rem;height:1.15rem;flex:0 0 auto;accent-color:#d9ab4c}.choice:has(input:checked){border-color:#e8bd60;background:#211b10}.conditional-fields{margin-top:1rem;padding:1rem;border-left:2px solid #d9ab4c;background:#111318}.conditional-fields[hidden]{display:none}.inquiry-form .btn{margin-top:.4rem;width:100%}.form-note{margin:.8rem 0 0;color:#aaa49a;font-size:.78rem;line-height:1.5}.form-status{min-height:1.2em;margin:.6rem 0 0;color:#f1d18b;font-size:.82rem}.form-status.error{color:#ffb4a6}
    footer{background:#060709;color:white;padding:2.5rem clamp(1.2rem,5vw,5.5rem)}.footer-inner{width:min(1260px,100%);margin:auto;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end}.footer-lead strong{font-family:var(--display);font-size:1.7rem;font-weight:500}.footer-lead span{display:block;color:#aaa49a;margin-top:.35rem}.footer-meta{text-align:right;color:#aaa49a;font-size:.85rem;line-height:1.75}.footer-meta a{color:white;text-decoration:none}.footer-meta a:hover{text-decoration:underline}.socials{color:#e4bb60!important}.ig-links{display:flex;gap:1.1rem;justify-content:flex-end;margin-top:.45rem;flex-wrap:wrap}.ig-link{display:inline-flex;align-items:center;gap:.45rem;color:#e4bb60!important;text-decoration:none;font-weight:700;font-size:.9rem;min-height:44px}.ig-link svg{width:20px;height:20px;flex:0 0 auto}.ig-link:hover{text-decoration:underline}.territory{margin-top:.5rem}.section-cta{margin-top:2.2rem}.section-cta .btn{background:transparent;color:var(--ink);border-color:var(--gold)}.residencies .section-cta .btn{color:white}.mobile-cta{display:none;position:fixed;z-index:60;transition:transform .35s ease,opacity .35s ease;left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,#fffdf0 0%,#ffedb8 16%,#f7d270 38%,#e3ac3d 60%,#cf9430 80%,#dca93c 100%);color:#201303;text-shadow:0 1px 0 rgba(255,246,214,.75);box-shadow:inset 0 2px 3px rgba(255,255,255,.85),inset 0 -4px 10px rgba(90,52,6,.45),0 14px 40px rgba(0,0,0,.5),0 0 38px rgba(232,195,108,.45);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:900;text-align:center;padding:1rem;box-shadow:0 14px 40px rgba(0,0,0,.5)}.mobile-cta.cta-hidden{transform:translateY(140%);opacity:0;pointer-events:none}.faq{margin-top:2rem;border-top:1px solid rgba(0,0,0,.25);padding-top:1.2rem}.faq h3{font-family:var(--display);font-size:1.45rem;margin:0 0 .7rem}.faq details{border-top:1px solid rgba(0,0,0,.18);padding:.75rem 0}.faq summary{font-weight:800;cursor:pointer}.faq p{font-size:.88rem;line-height:1.55;margin:.5rem 0 0}.kind-words{background:#0a0b0e;color:white}.quotes{display:grid;grid-template-columns:1.35fr .65fr;gap:1rem;margin-top:2.5rem}.quote{position:relative;overflow:hidden;margin:0;padding:clamp(1.5rem,3vw,2.4rem);background:#121419;border-top:2px solid var(--gold);box-shadow:0 20px 60px #000}
    .quote:before{content:"\201C";position:absolute;right:.05em;top:-.34em;font-family:var(--display);font-size:7rem;line-height:1;color:rgba(212,175,55,.13);pointer-events:none}.quote p{font-family:var(--display);font-size:clamp(1.35rem,2.4vw,2.25rem);line-height:1.3;margin:0 0 1.5rem}.quote cite{font-style:normal;color:#d0c9bd;font-size:.83rem;line-height:1.6}.review-more{color:#9f998e;margin:1.4rem 0 0;font-size:.84rem}.kind-words .section-cta .btn{color:white}
    @media(max-width:900px){.nav a:not(.book):not(.brand):not(.nav-call):not(.nav-text){display:none}.brand img{height:58px}.hero-copy{width:min(650px,72vw)}.energy-grid,.quotes,.package-media{grid-template-columns:1fr}.private-pricing-head{display:block}.package-grid{grid-template-columns:1fr}.package.featured{transform:none}.addon-menu{grid-template-columns:1fr}.about-grid,.booking-grid{grid-template-columns:1fr}.portrait-stack{min-height:560px;order:2}.section-head,.gallery-head{display:block}.production{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:330px 230px 250px}.gallery figure:first-child{grid-column:1/3;grid-row:auto}.gallery figure:nth-child(4){grid-column:1/3}.footer-inner{grid-template-columns:1fr}.footer-meta{text-align:left}.ig-links{justify-content:flex-start}}
    @media(max-width:620px){.brand-seal{width:46px;height:46px}body{padding-bottom:5.4rem}.mobile-cta{display:block}.nav{padding:1rem}.hero{min-height:auto;padding-top:0}.hero:before{background:linear-gradient(0deg,#050608 9%,rgba(5,6,8,.22) 61%,rgba(5,6,8,.04))}.hero:after{height:45%}.hero-visual{position:relative;inset:auto;width:100%;height:64svh}.hero-visual>picture:first-child>img{object-position:43% center}.hero-visual .crowd-picture{width:38%;height:25%;right:5%;bottom:3%}.hero-visual .edge{display:none}.hero-inner{min-height:auto;margin-top:-11rem;padding:2rem 1.1rem 3rem;align-items:flex-end}.hero-copy{width:100%}.hero h1{font-size:clamp(3.4rem,16vw,4.6rem);max-width:100%}.hero h1 em{font-size:clamp(2.7rem,13.2vw,3.5rem)}.hero .lead{font-size:1rem}.hero-actions .btn{width:100%}.hero-meta{gap:.8rem}.hero-meta strong{font-size:1.35rem}.section{padding-inline:1.1rem}.portrait-stack{min-height:440px}.portrait-stack .main{inset:0 7% 9% 0;width:93%;height:91%}.portrait-stack .inset{width:48%;height:39%;border-width:5px}.year-stamp{width:92px;right:0}.year-stamp b{font-size:1.2rem}.credential{grid-template-columns:1fr;gap:.25rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:410px}.proof-track{display:flex;overflow-x:visible;scroll-snap-type:none}.proof-track span{display:inline-block;padding:.45rem 0;white-space:nowrap}.proof-track span:after{display:inline}.add-ons,.addon-list{grid-template-columns:1fr}.add-ons details:nth-last-child(-n+2){border-bottom:0}.add-ons details:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.residency{grid-template-columns:55px 1fr}.residency time{grid-column:2}.gallery{grid-template-columns:1fr;grid-template-rows:none}.gallery figure,.gallery figure:first-child,.gallery figure:nth-child(4){grid-column:auto;height:270px}.contact-actions{grid-template-columns:1fr}.contact-action.call{grid-column:auto;min-height:58px;justify-content:center;font-size:1.12rem}.form-grid,.form-grid.three,.choice-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.choice{min-height:54px}.footer-lead strong{font-size:1.45rem}}
    @keyframes haze-drift{0%,100%{transform:translate3d(-4%,0,0)}50%{transform:translate3d(5%,2%,0)}}@keyframes headline-glow{0%,100%{filter:drop-shadow(0 2px 0 rgba(24,14,2,.9)) drop-shadow(0 10px 24px rgba(0,0,0,.85)) drop-shadow(0 0 30px rgba(240,214,150,.22))}50%{filter:drop-shadow(0 2px 0 rgba(24,14,2,.9)) drop-shadow(0 10px 24px rgba(0,0,0,.85)) drop-shadow(0 0 48px rgba(240,214,150,.45))}}@keyframes h1-sheen{0%,55%{background-position:130% 0,0 0}90%,100%{background-position:-130% 0,0 0}}@keyframes wordmark-in{from{opacity:0;letter-spacing:.28em}to{opacity:1;letter-spacing:.19em}}@keyframes underline-sweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}/* 6. Metallic pricing typography — layered metal, never flat */.packages .section-head h2,.private-pricing-head h3{background:linear-gradient(180deg,#ffffff 0%,#f6efdd 30%,#d9cba6 48%,#fbf5e6 58%,#e6d9b8 72%,#fffdf4 88%,#d5c69c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(88,60,16,.5);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 8px 22px rgba(0,0,0,.7), 0 0 28px rgba(240,214,150,.20);filter:none;}.package h3,.party-card h4{background:linear-gradient(174deg,#fffbe8 0%,#fdf0c0 22%,#f4d47c 40%,#eab84e 52%,#fff6d2 64%,#f0c85e 78%,#ffedb8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(70,44,8,.45);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 6px 18px rgba(0,0,0,.7), 0 0 30px rgba(255,220,130,.45);filter:none;font-weight:700;}.package .price,.party-card .price{background:linear-gradient(174deg,#fffbe8 0%,#ffedb0 25%,#f7d67e 42%,#f2c14e 54%,#fff8dc 66%,#f5cf6a 80%,#ffeaa6 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(70,44,8,.4);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 6px 16px rgba(0,0,0,.7), 0 0 34px rgba(255,222,130,.55);filter:none;font-weight:800;}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card img,.gallery img{transition:none}.hero .overline,.hero h1,.hero-visual:after,.section h2:after{animation:none}}
  
/* ---- Black-or-white setup choice ---- */
.setup-choice{margin:2.6rem 0 0;padding:2.2rem;border:1px solid rgba(214,166,63,.28);border-radius:10px;background:linear-gradient(180deg,rgba(214,166,63,.07),rgba(214,166,63,.015) 60%,transparent)}
.setup-choice-head .kicker{display:block;font-size:.72rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase;color:#e8c86e;margin-bottom:.6rem}
.setup-choice-head h3{margin:0 0 .7rem;font-size:clamp(1.6rem,3.4vw,2.2rem);color:#f6efdd}
.setup-choice-head p{margin:0;max-width:60ch;color:#cfc6ae}
.setup-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.4rem}
.setup-card{margin:0;position:relative;overflow:hidden;border-radius:8px;border:1px solid rgba(214,166,63,.25);background:#0d0e12}
.setup-card img{width:100%;height:380px;object-fit:cover;display:block}
.setup-card figcaption{padding:1rem 1.1rem;background:rgba(0,0,0,.78)}
.setup-card figcaption strong{display:block;color:#f3d98b;letter-spacing:.06em;margin-bottom:.25rem}
.setup-card figcaption span{color:#cfc6ae;font-size:.92rem}
@media(max-width:900px){.setup-cards{grid-template-columns:1fr}.setup-card img{height:300px}.setup-choice{padding:1.4rem}}
/* ============ v17 Layered Detail Typography System ============ */
/* Barry directive 2026-09-19: EVERY letter layered — metal, depth, glow, bevel. Nothing flat. */
/* A. Remaining display heads → ivory metal */
.setup-choice-head h3,.addon-menu-head h3,.faq h3,.service-info h3,.residency h3{background:linear-gradient(180deg,#ffffff 0%,#f6efdd 30%,#d9cba6 48%,#fbf5e6 58%,#e6d9b8 72%,#fffdf4 88%,#d5c69c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(88,60,16,.5);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 8px 22px rgba(0,0,0,.7), 0 0 28px rgba(240,214,150,.20);filter:none;}
/* B. Booking section (gold ground) → embossed dark bronze */
.booking h2{background:linear-gradient(180deg,#4a320b 0%,#7a5518 38%,#2e2006 62%,#5c3f0e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,242,205,.55), 0 4px 12px rgba(60,35,0,.4);filter:none;}
.booking .kicker{background:linear-gradient(180deg,#3a2708 0%,#6b4a12 60%,#2e2006 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,242,205,.5);filter:none;}
.booking .kicker:before{background:#4a3208}
.booking .kicker:after{background:linear-gradient(90deg,#4a3208,transparent)}
.booking .kicker .sec-no{background:linear-gradient(180deg,#3a2708,#6b4a12);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,242,205,.5);filter:none;}
.booking-copy>p{text-shadow:0 1px 0 rgba(255,242,205,.45)}
.faq summary{text-shadow:0 1px 0 rgba(255,242,205,.45)}
.faq details p{text-shadow:0 1px 0 rgba(255,242,205,.35)}
.contact-action{background:linear-gradient(180deg,#3d2a08 0%,#241a05 100%);border:1px solid rgba(46,32,6,.9);color:#ffe9a8;text-shadow:0 0 12px rgba(232,195,108,.5),0 1px 2px rgba(0,0,0,.7);box-shadow:inset 0 1px 0 rgba(255,235,180,.35),inset 0 -3px 6px rgba(0,0,0,.5),0 4px 14px rgba(60,35,0,.35);transition:transform .25s cubic-bezier(.2,.7,.25,1.15),box-shadow .25s ease,filter .25s ease}
.contact-action:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:inset 0 1px 0 rgba(255,235,180,.45),inset 0 -3px 6px rgba(0,0,0,.5),0 8px 20px rgba(60,35,0,.45),0 0 26px rgba(232,195,108,.35)}
/* C. Kickers → gold foil (dark grounds) */
.kicker{background:linear-gradient(180deg,#ffedb8 0%,#f0cd6d 38%,#c9962e 60%,#c08d2e 82%,#e8bd60 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.78), 0 0 14px rgba(232,195,108,.30);filter:none;}
.kicker:before{background:linear-gradient(90deg,#8a6a1f,#f0cd6d)}
.kicker:after{background:linear-gradient(90deg,#e8bd60,transparent)}
.sec-no{background:linear-gradient(174deg,#fff8d6 0%,#e7b84e 45%,#c9962e 70%,#f6d47c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.8), 0 0 10px rgba(232,195,108,.35);filter:none;}
/* D. Eyebrows, tiers, labels → foil */
.tier{background:linear-gradient(180deg,#ffedb8 0%,#f0cd6d 45%,#c9962e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.75), 0 0 10px rgba(232,195,108,.3);filter:none;}
.service-info small,.credential b,.package-badge{background:linear-gradient(180deg,#ffedb8 0%,#e8bd60 55%,#c9962e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.75);filter:none;}
.package-badge{filter:drop-shadow(0 1px 0 rgba(0,0,0,.6))}
/* E. Buttons — layered metal */
.btn-primary{position:relative;overflow:hidden;background:linear-gradient(180deg,#fffdf0 0%,#ffedb8 16%,#f7d270 38%,#e3ac3d 60%,#cf9430 80%,#dca93c 100%);color:#201303;text-shadow:0 1px 0 rgba(255,246,214,.75);border:1px solid rgba(74,50,8,.9);box-shadow:0 0 0 1px rgba(24,14,2,.9),inset 0 2px 3px rgba(255,255,255,.85),inset 0 -4px 10px rgba(90,52,6,.45),inset 2px 0 4px rgba(255,255,255,.25),inset -2px 0 4px rgba(60,35,0,.3),0 10px 26px rgba(0,0,0,.55),0 0 38px rgba(232,195,108,.45);transition:transform .25s cubic-bezier(.2,.7,.25,1.15),box-shadow .25s ease,filter .25s ease}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 0 0 1px rgba(24,14,2,.9),inset 0 2px 3px rgba(255,255,255,.9),inset 0 -4px 10px rgba(90,52,6,.45),0 14px 34px rgba(0,0,0,.6),0 0 60px rgba(232,195,108,.65)}.btn-primary:before{content:"";position:absolute;inset:1px;border-radius:inherit;pointer-events:none;background:radial-gradient(120% 95% at 50% 0%,rgba(255,255,255,.8),rgba(255,255,255,0) 68%)}.btn-primary:after{content:"";position:absolute;top:-20%;bottom:-20%;left:-70%;width:45%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-18deg);transition:left .65s ease}.btn-primary:hover:after{left:140%}
.btn-ghost,.btn:not(.btn-primary):not(.btn-ghost){border:1px solid rgba(232,195,108,.65);background:linear-gradient(180deg,rgba(232,195,108,.16),rgba(232,195,108,.04));color:#ffe9a8;text-shadow:0 0 14px rgba(232,195,108,.5),0 1px 3px rgba(0,0,0,.85);box-shadow:inset 0 1px 0 rgba(255,235,180,.28),0 4px 16px rgba(0,0,0,.5);transition:transform .25s cubic-bezier(.2,.7,.25,1.15),box-shadow .25s ease,background .25s ease}
.btn-ghost:hover,.btn:not(.btn-primary):not(.btn-ghost):hover{transform:translateY(-2px);background:linear-gradient(180deg,rgba(232,195,108,.3),rgba(232,195,108,.1));box-shadow:inset 0 1px 0 rgba(255,235,180,.4),0 8px 22px rgba(0,0,0,.55),0 0 30px rgba(232,195,108,.45)}
.nav a.book{background:linear-gradient(180deg,#ffedb8 0%,#f0cd6d 35%,#c9962e 70%,#c9962e 100%);color:#201303!important;text-shadow:0 1px 0 rgba(255,246,214,.65);border:1px solid rgba(74,50,8,.9);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 5px rgba(74,42,4,.45),0 4px 14px rgba(0,0,0,.55),0 0 20px rgba(232,195,108,.3);transition:transform .25s cubic-bezier(.2,.7,.25,1.15),box-shadow .25s ease,filter .25s ease}
.nav a.book:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 8px 20px rgba(0,0,0,.6),0 0 34px rgba(232,195,108,.55)}
/* F. Nav links → luminous on hover */
.nav a:not(.brand):not(.book){color:#f4ead0;text-shadow:0 1px 3px rgba(0,0,0,.85);transition:filter .25s ease}
.nav a:not(.brand):not(.book):hover{background:linear-gradient(180deg,#ffedb8 0%,#e8bd60 55%,#c9962e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 0 12px rgba(232,195,108,.65);filter:none;}
/* G. Prices everywhere → struck gold */
.addon-price{background:linear-gradient(174deg,#ffe9a8 0%,#f3cd6d 35%,#c9962e 58%,#e8bd60 78%,#fff0bd 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(70,44,8,.5);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 0 18px rgba(232,195,108,.4);filter:none;}
/* H. Captions → luminous engraved gold */
.shot figcaption,.nights-grid figcaption,.setup-card figcaption span{color:#ffe9a8;text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 14px rgba(232,195,108,.4)}
.setup-card figcaption strong{background:linear-gradient(180deg,#ffedb8,#c9962e 70%,#c08d2e);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.8);filter:none;}
/* I. Body copy depth */
main p{text-shadow:0 1px 3px rgba(0,0,0,.5)}
.package li{text-shadow:0 1px 2px rgba(0,0,0,.6)}
/* J. Testimonial quotes → ivory metal */
.quote p{background:linear-gradient(180deg,#fffdf4 0%,#f6efdd 45%,#d9cba6 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 2px 0 rgba(0,0,0,.85), 0 8px 20px rgba(0,0,0,.6);filter:none;}
.quote cite{color:var(--gold-pale);text-shadow:0 0 12px rgba(232,195,108,.45),0 1px 3px rgba(0,0,0,.85)}
/* K. Reel play + misc luminous type */
.reel-play b{color:#ffe9a8;text-shadow:0 0 14px rgba(232,195,108,.6),0 1px 3px rgba(0,0,0,.9)}
.play-ring{box-shadow:0 0 0 1px rgba(232,195,108,.7),0 0 26px rgba(232,195,108,.5),inset 0 0 14px rgba(232,195,108,.3)}
.review-more{color:var(--gold-pale);text-shadow:0 0 10px rgba(232,195,108,.4)}
.photo-credit{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#ffe9a8;text-shadow:0 0 12px rgba(232,195,108,.45),0 1px 3px rgba(0,0,0,.85);margin-top:.4rem}
.day{background:linear-gradient(180deg,#ffedb8,#c9962e 60%,#c9962e);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.8), 0 0 10px rgba(232,195,108,.35);filter:none;}
/* L. Hero drama — richer light, back-glow, deeper vignette */
.hero:before{background:radial-gradient(circle at 74% 38%,rgba(232,195,108,.16),transparent 30%),radial-gradient(circle at 77% 42%,rgba(232,180,90,.24),transparent 29%),radial-gradient(circle at 89% 24%,rgba(200,120,40,.18),transparent 22%),radial-gradient(ellipse at 20% 90%,rgba(232,195,108,.08),transparent 45%),linear-gradient(107deg,rgba(5,6,8,.70) 0%,rgba(5,6,8,.46) 38%,rgba(5,6,8,.22) 62%,rgba(5,6,8,.08) 85%)}
.hero-copy{position:relative}
.hero-copy:before{content:"";position:absolute;inset:-10% -18% -10% -28%;background:radial-gradient(ellipse at 32% 58%,rgba(232,195,108,.15),transparent 62%);pointer-events:none;z-index:-1}
.hero-visual .crowd-slice{box-shadow:0 24px 70px #000,0 0 48px rgba(232,195,108,.38)}
/* M. Weighted motion — everything moves like it has mass */
.package,.service-card,.shot,.setup-card,.residency{transition:transform .3s cubic-bezier(.16,.8,.3,1),box-shadow .3s ease,border-color .3s ease}
.package:hover,.service-card:hover{transform:translateY(-6px)}
.package:hover{box-shadow:0 26px 60px rgba(0,0,0,.65),0 0 44px rgba(232,195,108,.22)}
.shot:hover,.setup-card:hover{transform:translateY(-4px) scale(1.012)}
.residency:hover{transform:translateY(-4px)}
/* N. Banner + footer type */
.uc-banner{color:#ffe9a8;text-shadow:0 0 14px rgba(232,195,108,.55)}
.footer-lead strong{background:linear-gradient(180deg,#ffedb8 0%,#e8bd60 55%,#c9962e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(0,0,0,.8), 0 0 12px rgba(232,195,108,.3);filter:none;}
.footer-lead span{color:#e8ddc2;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.footer-meta a{color:var(--gold-pale);text-shadow:0 0 12px rgba(232,195,108,.5)}
/* O. Form depth */
.booking label{color:#3a2708;text-shadow:0 1px 0 rgba(255,242,205,.5);font-weight:800}
.booking input,.booking textarea,.booking select{background:rgba(255,253,244,.94);border:1px solid rgba(74,50,8,.55);box-shadow:inset 0 2px 7px rgba(60,35,0,.28),0 1px 0 rgba(255,242,205,.5)}
/* P. Fallback for browsers without background-clip:text — every v17 metal selector gets a flat safe color */
@supports not ((background-clip:text) or (-webkit-background-clip:text)){
.setup-choice-head h3,.addon-menu-head h3,.faq h3,.service-info h3,.residency h3,.kicker,.kicker .sec-no,.tier,.service-info small,.credential b,.package-badge,.addon-price,.quote p,.day,.footer-lead strong,.setup-card figcaption strong,.section-head h2,.energy h2,.section.services h2,.section.residencies h2,#nights-title,#kind-words-title,.section.areas h2,.section.how h2,.package-media h3,.wz-title,.wz-launch-title{background:none!important;color:#f0d68a!important;-webkit-text-fill-color:#f0d68a!important;-webkit-text-stroke:0!important;filter:none!important}
.booking h2,.booking .kicker,.booking .kicker .sec-no{background:none!important;color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;-webkit-text-stroke:0!important;filter:none!important}
.nav a:not(.brand):not(.book):hover{background:none!important;color:#ffe9a8!important;-webkit-text-fill-color:#ffe9a8!important;filter:none!important}
}
/* ---- Overnight polish: cinematic grain, editorial numbers, layered frames, marquee proof ---- */
.grain{position:fixed;inset:-50%;z-index:40;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E")}
.kicker .sec-no{font-family:var(--display);font-style:italic;font-weight:500;font-size:1.15rem;letter-spacing:.02em;color:var(--gold-pale);text-transform:none}
.kicker:after{content:"";flex:1;min-width:28px;height:1px;background:linear-gradient(90deg,currentColor,transparent);opacity:.35}
.brand-seal{width:72px;height:72px}
.package{position:relative}
.package-photo{margin:-.4rem -.4rem 1.1rem;border:1px solid rgba(212,175,55,.45);border-radius:8px;overflow:hidden;position:relative;box-shadow:0 14px 34px rgba(0,0,0,.5),inset 0 0 0 1px rgba(0,0,0,.6)}
.package-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.package-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.6rem .9rem .7rem;font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#f3dfa4;background:linear-gradient(180deg,transparent,rgba(8,5,1,.82) 70%);text-shadow:0 2px 6px rgba(0,0,0,.8)}
.package-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,240,200,.10),transparent 30%);mix-blend-mode:screen}
.package:after{content:"";position:absolute;inset:8px;border:1px solid rgba(212,175,55,.20);pointer-events:none}
.package.featured:after{border-color:rgba(237,198,109,.42);inset:10px}
.party-card{position:relative}
.party-card:after{content:"";position:absolute;inset:8px;border:1px solid rgba(212,175,55,.20);pointer-events:none}
.quote:after{content:"";position:absolute;inset:8px;border:1px solid rgba(212,175,55,.16);pointer-events:none}
.proof-strip{overflow:hidden}
.proof-track{width:max-content;animation:proof-marquee 30s linear infinite}
.proof-track span{white-space:nowrap}
@keyframes proof-marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.proof-track{animation:none;width:auto}}
/* ---- Nights Like These gallery ---- */
.nights{background:#07080a;color:#fbf8f0;padding:clamp(3.5rem,7vw,6rem) clamp(1.2rem,5vw,5.5rem);position:relative;overflow:hidden}
.nights:before{content:"";position:absolute;inset:0;background:radial-gradient(60% 42% at 50% 0%,rgba(214,166,63,.14),transparent 70%);pointer-events:none}
.nights .inner{position:relative;width:min(1260px,100%);margin:auto}
.nights .kicker{color:#d6a63f}
.nights h2{font-family:var(--display);font-size:clamp(2rem,4.6vw,3.2rem);margin:.7rem 0 0;color:#fff;letter-spacing:.01em}
.nights .lead{color:rgba(251,248,240,.72)}
.nights-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem 2.5rem;flex-wrap:wrap}
.nights-head .lead{max-width:480px;margin:0}
.nights-tabs{display:flex;gap:.6rem;margin:2.2rem 0 1.6rem;flex-wrap:wrap}
.nights-tab{background:transparent;border:1px solid rgba(214,166,63,.45);color:#f1cf83;font-family:var(--sans);font-weight:800;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;padding:.85rem 1.7rem;border-radius:999px;cursor:pointer;transition:border-color .25s ease,color .25s ease,background .25s ease,box-shadow .25s ease}
.nights-tab:hover{border-color:#d6a63f;color:#fff}
.nights-tab.is-active{background:linear-gradient(135deg,#d6a63f,#9a6814);color:#0a0a0a;border-color:transparent;box-shadow:0 8px 30px rgba(214,166,63,.35)}
.nights-grid[hidden]{display:none!important}.nights-grid{display:grid;gap:1rem}
.nights-grid.is-reels{grid-template-columns:repeat(4,1fr)}
.nights-grid.is-clips{grid-template-columns:repeat(2,1fr)}
.nights-grid.is-photos{grid-template-columns:repeat(4,1fr)}
.nights-grid .shot{margin:0;position:relative;overflow:hidden;background:#0d0e12;border:1px solid rgba(214,166,63,.22);border-radius:6px}
.is-reels .shot{aspect-ratio:9/16}
.is-clips .shot{aspect-ratio:auto}
.is-clips .shot video{height:auto}
.is-photos .shot{aspect-ratio:4/3}
.nights-grid .shot video,.nights-grid .shot img{width:100%;height:100%;object-fit:cover;display:block;background:#000}
.shot-badge{position:absolute;top:.7rem;left:.7rem;background:linear-gradient(135deg,#d6a63f,#9a6814);color:#0a0a0a;font-family:var(--sans);font-weight:800;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;padding:.5rem .8rem;border-radius:3px;z-index:2}
.nights-grid .shot figcaption{position:absolute;left:0;right:0;bottom:0;padding:1.8rem .9rem .8rem;background:linear-gradient(transparent,rgba(0,0,0,.88));color:#fff;font-size:.78rem;font-weight:600;pointer-events:none}
.nights .section-cta{margin-top:2.2rem}
@media (max-width:900px){
  .nights-grid.is-reels{grid-template-columns:repeat(2,1fr)}
  .nights-grid.is-photos{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .nights-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.8rem;padding:.2rem .2rem .8rem;scrollbar-width:thin}
  .nights-grid .shot{flex:0 0 68%;scroll-snap-align:start}
  .nights-grid.is-clips .shot{flex-basis:82%}
  .nights-grid.is-photos .shot{flex-basis:62%}
}
@media (prefers-reduced-motion:reduce){
  .nights-tab{transition:none}
}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.trustbar{background:#0a0b0e;border-top:1px solid rgba(237,198,109,.25);border-bottom:1px solid rgba(237,198,109,.25)}
.trustbar-inner{width:min(1420px,100%);margin:auto;padding:1rem clamp(1.2rem,5vw,5.5rem);display:flex;flex-wrap:wrap;gap:.8rem 2.2rem;justify-content:center;text-align:center;color:#cfc9b8;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}
.trustbar-inner strong{color:var(--gold)}
.trustbar-asof{font-style:normal;font-size:.72em;opacity:.75;letter-spacing:.04em}
.trustbar-inner a{color:#f0d68a;text-underline-offset:3px}
.how-steps{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.how-steps li{background:rgba(255,255,255,.03);border:1px solid rgba(237,198,109,.22);border-radius:14px;padding:1.6rem 1.4rem}
.how-num{display:block;font-size:2.2rem;font-weight:800;color:transparent;-webkit-text-stroke:1px var(--gold);letter-spacing:.05em;margin-bottom:.8rem}
.how-steps h3{margin:.2rem 0 .6rem;font-size:1.05rem;color:#fff}
.how-steps p{color:#cfc9b8;font-size:.92rem;line-height:1.65;margin:0}
.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem}
.area-grid>div{background:rgba(255,255,255,.03);border:1px solid rgba(237,198,109,.22);border-radius:14px;padding:1.6rem}
.area-grid h3{color:var(--gold);margin:0 0 .6rem;font-size:1rem;letter-spacing:.08em;text-transform:uppercase}
.area-grid p{color:#cfc9b8;font-size:.9rem;line-height:1.7;margin:0 0 .6rem}
.area-rooms{font-size:.82rem!important;color:#a89f88!important}
.checklist{margin-top:1.2rem;border:1px solid rgba(237,198,109,.25);border-radius:12px;padding:1rem 1.2rem;background:rgba(255,255,255,.02)}
.checklist summary{cursor:pointer;color:#fff;font-weight:700}
.checklist ol{margin:1rem 0 0;padding-left:1.3rem;color:#cfc9b8;font-size:.92rem;line-height:1.7}
.checklist li{margin-bottom:.5rem}
.checklist li strong{color:var(--gold)}
a.reel-play{text-decoration:none}
@media (max-width:900px){.how-steps{grid-template-columns:1fr 1fr}.area-grid{grid-template-columns:1fr}}
@media (max-width:560px){.how-steps{grid-template-columns:1fr}.trustbar-inner{gap:.6rem 1.2rem;font-size:.72rem}}


/* ===== Flyer-grade cinematic layering (v2) ===== */
/* 1. Film grain over everything — static, cheap */
body::after{content:"";position:fixed;inset:0;z-index:120;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");}
/* 2. Hero atmosphere: gold bokeh, haze, violet club glow on the visual layer */
.hero-visual:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 16% 80%,rgba(214,166,63,.17),transparent 26%),radial-gradient(circle at 9% 24%,rgba(214,166,63,.11),transparent 20%),radial-gradient(circle at 64% 6%,rgba(232,180,90,.13),transparent 26%),radial-gradient(circle,rgba(233,200,111,.30) 1.2px,transparent 1.9px);background-size:auto,auto,auto,120px 120px;}
/* 3. Metallic gold headline treatment (flyer serif) */
.hero h1 em{display:block;font-weight:500;background:linear-gradient(174deg,#fff8d6 0%,#f9e5a8 18%,#e7b84e 34%,#c9962e 48%,#c9962e 55%,#f6d47c 64%,#fff3c0 78%,#b57f1d 92%,#e9c86e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(70,44,8,.6)}
.energy h2,.residencies h2,.nights h2,.kind-words h2{background:linear-gradient(178deg,#f6e2a4 0%,#e3bd60 35%,#c9962e 65%,#eed188 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 3px 12px rgba(0,0,0,.8);filter:none;}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.hero h1{background:none;color:#fff;-webkit-text-fill-color:#fff;filter:none;animation:none}.hero h1 em,.energy h2,.residencies h2,.nights h2,.kind-words h2{color:var(--gold-pale);-webkit-text-fill-color:var(--gold-pale);background:none;filter:none;}.packages .section-head h2,.private-pricing-head h3,.package h3,.party-card h4,.package .price,.party-card .price{background:none;color:#f3e9d2;-webkit-text-fill-color:#f3e9d2;-webkit-text-stroke:0;filter:none;}}
/* 4. Gold hairline separators between sections (flyer panel rhythm) */
body>section{box-shadow:inset 0 1px 0 rgba(214,166,63,.30);}
/* 5. Kicker diamond ornament */
.kicker:after{content:"";width:6px;height:6px;background:linear-gradient(135deg,#f1cf83,#9a6814);transform:rotate(45deg);box-shadow:0 0 8px rgba(214,166,63,.8);flex:0 0 auto;}
/* 6. Glass sheen + deeper shadows on cards */
.package,.how-steps li,.area-grid>div,.quote,.party-card{box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 22px 55px rgba(0,0,0,.30);background-image:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 32%);}
/* 7. Featured package: double gold frame + glow */
.package.featured{outline:1px solid rgba(237,198,109,.55);outline-offset:7px;box-shadow:0 0 70px rgba(214,166,63,.30),0 30px 90px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.12);}
/* 8. Button sheen sweep + richer metal */



/* 9. Booking section vignette */
.booking::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 95% at 50% 8%,transparent 52%,rgba(43,24,0,.38));pointer-events:none;}
/* 10. Nights gallery cinematic vignette per shot */
.nights-grid .shot::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 55px rgba(0,0,0,.62),inset 0 1px 0 rgba(233,200,111,.28);pointer-events:none;}
/* 11. Service cards: gold hairline frame */
.service-card{border:1px solid rgba(214,166,63,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 26px 70px rgba(0,0,0,.5);}
/* 12. Residency row hover glow */
.residency{transition:background .25s ease,box-shadow .25s ease;}
.residency:hover{background:rgba(214,166,63,.06);box-shadow:inset 3px 0 0 #d6a63f;}
/* 13. Crowd-slice medallion glow */
.hero-visual .crowd-slice{box-shadow:0 24px 70px #000,0 0 44px rgba(214,166,63,.22);}
/* 14. Reel slot gold frame lift */
.reel-slot{box-shadow:0 26px 70px #000,0 0 50px rgba(214,166,63,.12),inset 0 1px 0 rgba(255,255,255,.08);}
@media (prefers-reduced-motion:reduce){.btn-primary::after{transition:none;}}

/* Barry directive 2026-09-20: construction banner removed — site is live. */
/* ============ v18 Graphic-Intensity Pass ============ */
/* Barry directive 2026-09-19 ~5:36 AM EDT: "More graphic more defined more rich sharper." 1.5x push. Design only — content, copy, prices, structure untouched. */
/* --- SHARPER: crisper type rendering --- */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* --- MORE DEFINED: engraved double-rule between every section --- */
body>section{box-shadow:inset 0 1px 0 rgba(232,195,108,.55),inset 0 3px 0 rgba(0,0,0,.65),inset 0 4px 0 rgba(232,195,108,.14)}
/* --- MORE GRAPHIC: distinct section grounds with depth --- */
.packages{background:radial-gradient(90% 34% at 50% 0%,rgba(214,166,63,.07),transparent 70%),var(--bg)}
.kind-words{background:radial-gradient(70% 30% at 50% 0%,rgba(214,166,63,.05),transparent 70%),#0a0b0e}
#areas{background:linear-gradient(180deg,#0b0c10 0%,#08090b 100%)}
#how{background:radial-gradient(60% 45% at 85% 20%,rgba(232,180,90,.06),transparent 60%),#08090b}
/* --- MORE GRAPHIC: h2 underline becomes engraved double rule with glow --- */
.section h2:after{height:5px;background:linear-gradient(90deg,var(--gold-bright) 0%,rgba(232,195,108,.55) 55%,transparent 90%) 0 0/100% 2px no-repeat,linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,0) 80%) 0 3px/100% 1px no-repeat,linear-gradient(90deg,rgba(232,195,108,.35),transparent 70%) 0 4px/100% 1px no-repeat;filter:drop-shadow(0 0 8px rgba(232,195,108,.35))}
/* --- MORE RICH: package cards — metal crown plate + deeper glass --- */
.package:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:linear-gradient(180deg,#fff3c0 0%,#f0cd6d 28%,#c9962e 48%,#c08d2e 62%,#d9a83f 82%,#f6db9c 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 0 -2px 3px rgba(60,35,0,.5),0 2px 8px rgba(0,0,0,.5);z-index:3;pointer-events:none}
.package{background-image:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0) 26%),radial-gradient(120% 60% at 50% 0%,rgba(232,195,108,.06),transparent 60%)}
/* --- MORE DEFINED: addon menu — gold hairline grid, defined cells --- */
.addon-menu-grid{background:rgba(212,175,55,.4);box-shadow:0 0 0 1px rgba(0,0,0,.6),0 20px 50px rgba(0,0,0,.4)}
.addon-item{background:linear-gradient(180deg,#14161b,#101216);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
/* --- MORE GRAPHIC: service cards get inset gold frame --- */
.service-card:before{content:"";position:absolute;inset:12px;border:1px solid rgba(232,195,108,.4);box-shadow:inset 0 0 0 1px rgba(0,0,0,.55),0 0 18px rgba(232,195,108,.12);z-index:1;pointer-events:none}
/* --- MORE RICH: hero — stronger gold wash, double-framed crowd slice --- */
.hero:before{background:radial-gradient(circle at 72% 36%,rgba(232,195,108,.22),transparent 30%),radial-gradient(circle at 77% 42%,rgba(232,180,90,.26),transparent 29%),radial-gradient(circle at 89% 24%,rgba(200,120,40,.2),transparent 22%),radial-gradient(ellipse at 18% 92%,rgba(232,195,108,.12),transparent 45%),linear-gradient(107deg,#050608 0 40%,rgba(5,6,8,.8) 55%,rgba(5,6,8,.12) 83%)}
.hero-visual .crowd-slice{border:1px solid #e8bd60;outline:1px solid rgba(232,195,108,.4);outline-offset:6px;box-shadow:0 24px 70px #000,0 0 54px rgba(232,195,108,.45)}
.hero-visual .edge{border-color:rgba(239,200,111,.55)}
/* --- MORE RICH: buttons — deeper bevel, dark outer ring --- */


/* --- MORE DEFINED: residency day plates --- */
.residency .day{border:1px solid rgba(232,195,108,.55);padding:.45rem .5rem;background:linear-gradient(180deg,rgba(232,195,108,.14),rgba(232,195,108,.03));box-shadow:inset 0 1px 0 rgba(255,235,180,.25),0 2px 8px rgba(0,0,0,.5);text-align:center;color:#f0d68a;-webkit-text-fill-color:#f0d68a}
/* --- MORE GRAPHIC: retainer flanking rules --- */
.retainer:before,.retainer:after{content:"";display:inline-block;width:clamp(36px,7vw,100px);height:2px;margin:0 1.1rem;vertical-align:middle;background:linear-gradient(90deg,transparent,#d4a548)}
.retainer:after{background:linear-gradient(90deg,#d4a548,transparent)}
@media(max-width:620px){.retainer:before,.retainer:after{display:none}}
/* --- MORE RICH: quotes — deeper ground, glowing top bar --- */
.quote{border-top:3px solid var(--gold);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 0 34px rgba(212,175,55,.14),0 20px 60px #000;background-image:linear-gradient(180deg,rgba(232,195,108,.05),rgba(255,255,255,0) 30%)}
/* --- MORE GRAPHIC: inquiry form double frame --- */
.inquiry-form{outline:1px solid rgba(232,195,108,.45);outline-offset:7px;box-shadow:0 0 44px rgba(212,175,55,.18),0 28px 70px rgba(46,27,0,.3)}
/* --- MORE DEFINED: trustbar metallic band + proof strip bevel --- */
.trustbar{background:linear-gradient(180deg,#15171c 0%,#0a0b0e 55%,#060709 100%);box-shadow:inset 0 1px 0 rgba(255,235,180,.22),inset 0 -1px 0 rgba(0,0,0,.7)}
.trustbar-inner strong{filter:drop-shadow(0 0 10px rgba(232,195,108,.4))}
.proof-strip{box-shadow:inset 0 1px 0 rgba(255,235,180,.18),inset 0 -1px 0 rgba(0,0,0,.6)}
/* --- MORE RICH: nights gallery shots --- */
.nights-grid .shot{border-color:rgba(232,195,108,.38);box-shadow:0 18px 45px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,235,180,.14)}
/* --- MORE DEFINED: about portrait stack --- */
.portrait-stack .main{outline:1px solid rgba(212,175,55,.45);outline-offset:-1px}
.portrait-stack:before{border:1px solid var(--gold);opacity:.9;box-shadow:0 0 24px rgba(212,175,55,.18)}
/* --- MORE GRAPHIC: kicker diamond ring --- */
.kicker:after{box-shadow:0 0 0 2px rgba(20,12,2,.85),0 0 10px rgba(214,166,63,.9)}
/* --- MORE RICH: step/area/addon cards deeper --- */
.how-steps li,.area-grid>div{background-image:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 30%);border-color:rgba(237,198,109,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 22px 55px rgba(0,0,0,.35)}
/* --- MORE DEFINED: nav hairline --- */
.nav{border-bottom:1px solid rgba(232,195,108,.22);box-shadow:0 1px 0 rgba(0,0,0,.5)}
/* --- MORE RICH: booking gold ground, deeper light --- */
.booking{background:radial-gradient(130% 70% at 50% 0%,#f4d47c 0%,#e3bb5f 34%,#ac7117 78%,#8a5a10 100%)}
/* --- MORE GRAPHIC: section CTA buttons get presence --- */
.section-cta .btn{box-shadow:inset 0 1px 0 rgba(255,235,180,.3),0 6px 20px rgba(0,0,0,.5),0 0 22px rgba(232,195,108,.22)}
/* --- SHARPER: image micro-contrast --- */
.service-card img{filter:saturate(1.05) contrast(1.08)}
.nights-grid .shot img{filter:saturate(1.06) contrast(1.07)}
/* v18: no new background-clip:text selectors — v17 @supports fallback set stands unchanged */
/* ============ v19a Gallery + Copy Integration (lead) ============ */
/* Barry directive 2026-09-19 ~5:45 AM EDT: gallery battle plan placements 2/8/12/14 + copy upgrades. New structural classes only; no changes to earlier rules. */
.packages .section-head{align-items:center}
.suit-anchor{margin:0;flex:0 0 clamp(200px,20vw,290px);position:relative;border:1px solid rgba(212,175,55,.6);box-shadow:0 0 0 4px #0b0a08,0 0 0 5px rgba(212,175,55,.32),0 24px 60px rgba(0,0,0,.6)}
.suit-anchor img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(1.06) contrast(1.06)}
.suit-anchor figcaption{position:absolute;left:0;right:0;bottom:0;padding:.75rem .9rem;background:linear-gradient(0deg,rgba(0,0,0,.88),transparent);color:#f3e9d2;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.portrait-duo{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
.portrait-solo{display:grid;grid-template-columns:minmax(0,420px);justify-content:center;gap:1rem;margin-top:2rem}
.portrait-frame{margin:0;position:relative;border:1px solid rgba(212,175,55,.5);box-shadow:0 0 0 3px #0b0a08,0 0 0 4px rgba(212,175,55,.28),0 20px 50px rgba(0,0,0,.55);overflow:hidden}
.portrait-frame img{display:block;width:100%;height:340px;object-fit:cover;filter:saturate(1.05) contrast(1.04)}
.portrait-frame figcaption{position:absolute;left:0;right:0;bottom:0;padding:.85rem 1rem;background:linear-gradient(0deg,rgba(0,0,0,.9),transparent);color:#f3e9d2;font-size:.78rem;font-weight:700;line-height:1.5}
.barry-vow{margin:1.8rem 0 0;padding:1.25rem 1.4rem;border-left:2px solid var(--gold);background:rgba(212,175,55,.06);font-family:var(--display);font-size:1.18rem;line-height:1.5;color:#f3e9d2}
.barry-vow cite{display:block;margin-top:.65rem;font-family:var(--sans);font-style:normal;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#d9c491}
.roster{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.5rem}.roster-kicker{display:block;font-size:.68rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem}.roster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.roster-card{display:flex;align-items:center;gap:1.05rem;padding:1.05rem 1.2rem;border:1px solid rgba(212,175,55,.38);background:linear-gradient(180deg,rgba(212,175,55,.08),rgba(212,175,55,.02));box-shadow:0 14px 34px rgba(0,0,0,.42)}.roster-mono{flex:none;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:1.2rem;color:#141005;background:radial-gradient(circle at 35% 30%,#ffedb8,#d4a017 58%,#8a6410);box-shadow:0 0 0 2px rgba(212,175,55,.55),0 0 22px rgba(212,175,55,.25)}.roster-card b{display:block;font-size:1.04rem;color:#f6f1e4;letter-spacing:.01em}.roster-card small{display:block;margin-top:.25rem;font-size:.83rem;line-height:1.5;color:var(--muted)}.roster-note{margin:1.1rem 0 0;font-size:.93rem;font-style:italic;color:var(--muted)}.roster-mono.roster-photo{padding:0;overflow:hidden}.roster-mono.roster-photo img{width:100%;height:100%;object-fit:cover;display:block}
.kind-words-layout{display:grid;grid-template-columns:1fr 300px;gap:clamp(1.5rem,4vw,3rem);align-items:start;margin-top:2.5rem}
.kind-words-layout .quotes{margin-top:0}
.testimonial-side{margin:0;position:relative;border:1px solid rgba(212,175,55,.5);box-shadow:0 0 0 3px #0a0b0e,0 0 0 4px rgba(212,175,55,.28),0 20px 50px #000;overflow:hidden}
.testimonial-side img{display:block;width:100%;height:430px;object-fit:cover;filter:saturate(1.08) contrast(1.05)}
.testimonial-side figcaption{position:absolute;left:0;right:0;bottom:0;padding:.85rem 1rem;background:linear-gradient(0deg,rgba(0,0,0,.9),transparent);color:#f3e9d2;font-size:.78rem;font-weight:700;line-height:1.5}
.owner-direct{font-weight:800;font-size:1.05rem;margin:1rem 0 0}
.live-audition{margin:2rem 0 0;font-family:var(--display);font-size:clamp(1.3rem,2.6vw,2rem);color:#f3e9d2}
.brand-divider{display:flex;justify-content:center;margin:0 0 1.5rem}
.brand-divider img{width:96px;height:96px;filter:drop-shadow(0 0 18px rgba(212,175,55,.45))}
.booking-reassure{margin:1.6rem 0 0;position:relative;border:1px solid rgba(0,0,0,.4);box-shadow:0 0 0 3px rgba(255,255,255,.14),0 20px 50px rgba(0,0,0,.35);overflow:hidden}
.booking-reassure img{display:block;width:100%;height:220px;object-fit:cover;filter:saturate(1.05)}
.booking-reassure figcaption{position:absolute;left:0;right:0;bottom:0;padding:.7rem 1rem;background:linear-gradient(0deg,rgba(0,0,0,.88),transparent);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.booking-proof{margin:1.4rem 0 0}
@media(max-width:900px){.suit-anchor{flex:0 0 auto;width:min(320px,80vw);margin-top:1.75rem}.kind-words-layout{grid-template-columns:1fr}.testimonial-side img{height:360px}.portrait-frame img{height:300px}}
  /* ===== v19b Check-Your-Date wizard ===== */
/* ===== Check-Your-Date wizard (v19 drop-in) ===== */
.wz-dialog{padding:0;border:1px solid rgba(232,195,108,.55);background:#0b0c0f;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.8),0 0 60px rgba(212,175,55,.18);width:min(940px,calc(100vw - 2rem));max-height:calc(100dvh - 3rem)}
.wz-dialog::backdrop{background:rgba(4,5,7,.82);backdrop-filter:blur(6px)}
.wz-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 3rem)}
.wz-head{position:relative;padding:1.4rem 1.6rem 1rem;border-bottom:1px solid rgba(232,195,108,.3)}
.wz-meta{margin:0 0 .6rem;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e8c86e}
.wz-progress{height:4px;background:rgba(255,255,255,.12);margin-bottom:.9rem}
.wz-progress-fill{display:block;height:100%;width:25%;background:linear-gradient(90deg,#e8bd60,#f6db9c);transition:width .35s ease}
.wz-title{font-family:var(--display);font-weight:600;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.02em;margin:0;padding-right:2.6rem;color:#fff}
.wz-close{position:absolute;top:1.1rem;right:1.1rem;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:1rem;cursor:pointer;line-height:1}
.wz-close:hover{border-color:#e8bd60;color:#e8bd60}
.wz-body{padding:1.4rem 1.6rem;overflow-y:auto;-webkit-overflow-scrolling:touch}
.wz-step{animation:wz-in .3s ease}
@keyframes wz-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wz-foot{display:flex;gap:.8rem;justify-content:space-between;padding:1.1rem 1.6rem 1.4rem;border-top:1px solid rgba(232,195,108,.3);background:#0b0c0f}
.wz-foot .btn{flex:1}
.wz-foot .wz-back{flex:0 0 auto;min-width:120px}
.wz-foot .btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}
.wz-opt{color:#99938a;text-transform:none;letter-spacing:0;font-weight:500}
/* date result */
.wz-date-result{margin-top:1rem;padding:1rem 1.1rem;border:1px solid rgba(232,195,108,.55);background:rgba(232,195,108,.07)}
.wz-date-result p{margin:0 0 .9rem;line-height:1.6;font-size:.94rem;color:#f3efe6}
.wz-date-result.is-booked{border-color:rgba(255,170,150,.6);background:rgba(150,60,40,.12)}
.wz-date-result.is-past{border-color:rgba(255,200,120,.55);background:rgba(150,110,40,.10)}
.wz-result-btns{display:flex;gap:.6rem;flex-wrap:wrap}
.wz-result-btns .btn{flex:1 1 140px;min-height:48px;white-space:nowrap}
/* tier cards */
.wz-sec-h{font-family:var(--display);font-weight:600;font-size:1.4rem;margin:0 0 .6rem;color:#fff}
.wz-tiers{display:grid;grid-template-columns:1fr 1fr;gap:.9rem .7rem;margin:.9rem 0 1.6rem}
.wz-tier{position:relative;display:grid;align-content:start;gap:.45rem;padding:1rem 1.05rem .95rem;border:1px solid rgba(255,255,255,.22);background:#15171c;cursor:pointer;min-width:0}
.wz-tier input{position:absolute;opacity:0;pointer-events:none}
.wz-tier:hover{border-color:rgba(232,195,108,.6)}
.wz-tier:has(input:checked){border-color:#e8bd60;background:#211b10;box-shadow:0 0 24px rgba(232,195,108,.18)}
.wz-tier:has(input:focus-visible){outline:2px solid #f1d18b;outline-offset:2px}
.wz-tier:has(input:disabled){opacity:.45;cursor:not-allowed}
.wz-tier-top{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem}
.wz-tier-name{font-family:var(--display);font-size:1.5rem;color:#fff;min-width:0}
.wz-tier-price{font-family:var(--display);font-size:1.35rem;color:#f0cd6d;white-space:nowrap}
.wz-tier-tag{font-family:var(--display);font-style:italic;color:#f6db9c;font-size:.95rem}
.wz-tier-badge{position:absolute;top:-.72rem;right:.8rem;background:linear-gradient(135deg,#e8c36c,#b47a18);color:#111;font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;padding:.35rem .5rem;white-space:nowrap}
.wz-tier-desc{font-size:.85rem;color:#bdb6a9;line-height:1.55;margin:0}
.wz-tier-facts{display:grid;gap:.3rem;margin-top:.25rem}
.wz-tier-facts span{font-size:.8rem;font-weight:700;color:#e8dfc9}
.wz-tier-facts span:before{content:"+";color:#e8bd60;margin-right:.5rem}
/* add-ons */
.wz-addons{display:grid;gap:.6rem;margin:.9rem 0 1.6rem}
.wz-addons .choice b{color:#f0cd6d;white-space:nowrap}
.wz-addons .choice>span{flex:1;display:flex;justify-content:space-between;align-items:center;gap:.6rem;min-width:0}
.wz-stepper{display:flex;justify-content:space-between;align-items:center}
.wz-stepper-label{font-size:.88rem}
.wz-stepper-label b{color:#f0cd6d;margin-left:.5rem;white-space:nowrap}
.wz-stepper-ctl{display:flex;align-items:center;gap:.7rem;flex:0 0 auto}
.wz-stepper-ctl button{width:44px;height:44px;border:1px solid rgba(232,195,108,.6);background:transparent;color:#f6db9c;font-size:1.3rem;cursor:pointer;line-height:1}
.wz-stepper-ctl button:hover{background:rgba(232,195,108,.12)}
#wz-hrs-count{font-weight:800;min-width:1.5rem;text-align:center;color:#fff}
/* estimate panel — pins above the footer while scrolling on mobile */
.wz-estimate{position:sticky;bottom:0;margin:1.6rem -1.6rem -1.4rem;padding:1.2rem 1.6rem 1.6rem;background:#08090b;border-top:2px solid #d4a548}
.wz-lines{list-style:none;margin:0 0 .8rem;padding:0}
.wz-lines li{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-top:1px solid rgba(255,255,255,.12);font-size:.9rem}
.wz-lines li span:last-child{color:#f0cd6d;font-weight:800;white-space:nowrap}
.wz-total-row{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;padding:.6rem 0;border-top:1px solid rgba(232,195,108,.5)}
.wz-total-row strong{font-family:var(--display);font-size:2rem;color:#f6db9c;white-space:nowrap}
.wz-retainer-row{font-size:.92rem;color:#e8dfc9;margin-bottom:.3rem}
.wz-retainer-row strong{color:#f6db9c}
.wz-balance-row{font-size:.85rem;color:#bdb6a9}
.wz-trust{margin:1rem 0 .4rem;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#e8c86e;line-height:1.7}
.wz-disclaim{margin:0;font-size:.78rem;color:#99938a;font-style:italic}
/* step 4 */
.wz-submit-row{display:grid;gap:.6rem;margin:1.2rem 0 .4rem}
.wz-status{min-height:1.4em;font-size:.85rem;color:#f1d18b;margin:.4rem 0 0}
.wz-textbtn{background:none;border:0;color:#e8c86e;text-decoration:underline;cursor:pointer;font-size:.85rem;padding:.5rem 0}
/* confirmation */
.wz-confirm-lead{font-family:var(--display);font-size:clamp(1.4rem,3.4vw,1.9rem);line-height:1.35;color:#fff;margin:0 0 1rem}
.wz-next-list{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;gap:.75rem;counter-reset:wzn}
.wz-next-list li{position:relative;padding-left:2.5rem;line-height:1.6;color:#e8dfc9;font-size:.94rem}
.wz-next-list li:before{counter-increment:wzn;content:counter(wzn);position:absolute;left:0;top:.05rem;width:1.7rem;height:1.7rem;border:1px solid #d9ab4c;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:900;color:#efca79}
.wz-source{margin:0 0 1.4rem}
.wz-source p{margin:0 0 .6rem;color:#e8dfc9;font-size:.9rem}
.wz-source-row{display:flex;flex-wrap:wrap;gap:.5rem}
.wz-source-row button{border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;padding:.65rem .95rem;font-size:.8rem;font-weight:700;cursor:pointer}
.wz-source-row button.is-on{border-color:#e8bd60;background:rgba(232,195,108,.14);color:#f6db9c}
.wz-source-thanks{font-size:.8rem;color:#e8c86e;min-height:1.2em;margin:.5rem 0 0!important}
/* launch panel */
.wz-launch-kicker{font-size:.7rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#e8c86e}
.wz-launch-title{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,4vw,2.6rem);margin:.6rem 0 .6rem;color:#fff;letter-spacing:-.02em}
.wz-launch-sub{color:#bdb6a9;line-height:1.65;margin:0 0 1.1rem}
.wz-launch-steps{list-style:none;margin:0 0 1.3rem;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}
.wz-launch-steps li{font-size:.78rem;font-weight:700;color:#e8dfc9;border-top:1px solid rgba(232,195,108,.45);padding-top:.5rem;line-height:1.45}
.wz-launch-steps strong{display:block;font-family:var(--display);color:#f6db9c;font-size:1.1rem;margin-bottom:.15rem}
.wz-launch .btn{width:100%}
.wz-launch-note{margin-top:1rem!important;color:#f6db9c!important;font-weight:700}
/* visible focus everywhere in the wizard */
.wz-dialog :is(button,.btn,input,select,textarea,a):focus-visible{outline:2px solid #f1d18b;outline-offset:2px}
@media(max-width:640px){
  .wz-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0}
  .wz-shell{max-height:100dvh;height:100dvh}
  .wz-head{padding:1.1rem 1.1rem .9rem}
  .wz-body{padding:1.1rem}
  .wz-foot{padding:1rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom))}
  .wz-tiers{grid-template-columns:1fr}
  .wz-launch-steps{grid-template-columns:1fr 1fr}
  .wz-estimate{margin:1.4rem -1.1rem -1.1rem;padding:1.1rem 1.1rem calc(1.3rem + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){
  .wz-dialog *{transition:none!important;animation:none!important}
}.wz-seal{width:150px;height:auto;display:block;margin:0 0 1rem;filter:drop-shadow(0 0 18px rgba(212,175,55,.35))}
  /* ===== v19c masterwork ornamental block (1,000-hour pass) ===== */
/* ============================================================================
   PROUD ENTERTAINMENT — v19 "1,000-HOUR WEBSITE" MASTERWORK BLOCK
   Ornamental CSS: multi-layer borders · art-deco corners · engraved dividers ·
   layered textures · enriched headers · living ambient motion
   ----------------------------------------------------------------------------
   PASTE: directly after the v18 block, before the style close tag. Append-only overrides —
   later-cascade specificity wins; nothing upstream is edited, removed, or
   reordered. No markup / copy / pricing / font / layout-order changes.
   Asset base is relative to deploy/public/:  assets/v19-ornaments/<file>
   ----------------------------------------------------------------------------
   PSEUDO-ELEMENT CONFLICT MAP (checked against the full v16–v18 stylesheet —
   every rule below uses a FREE pseudo or extends an existing one in place):
   body::after=FIXED GRAIN(used)      body::before=FREE → v19 grain wash
   .hero::before/::after=USED         → drift layered on, background untouched
   .services::before="LIVE"(used)     .services::after=FREE → texture
   .packages ::before/::after FREE    → crown plaque + damask
   .booking::before/::after=USED       → textures via background stack + grid
   footer ::before/::after FREE       → grain wash
   .package::before=crown plate(used) .package::after=inset frame(used) → rings on element
   .package.featured::after=inset frame(used) → EXTENDED with 4 deco corners
   .service-card::before=inset frame(used)  ::after=gradient(used) → rings + border-image
   .quote::before=giant quote(used)   .quote::after=inset frame(used) → EXTENDED w/ corners
   .shot::after=vignette(used)        .shot::before=FREE → 4 deco corners
   .setup-card/inquiry-form/trustbar/section-cta/nights-head/section-head/
   .booking-copy/residencies-inner/kind-words-inner ::before/::after FREE
   .btn-primary::after=sheen(used)    → bevel layered on, sheen untouched
   .kicker::before/::after=USED       .sec-no::before/::after=FREE → diamond inlays
   .section h2::after=underline(used) .section h2::before=FREE → inline diamond
   NEVER apply .pe-alive-shimmer/.pe-alive-btn/.pe-alive-grain to:
   .btn-primary, .service-card, .quote, .shot (::after already taken).
   ============================================================================ */

/* ================= A. V19 TOKENS ================= */
:root{
  --v19-gold-hi:#f6db9c;
  --v19-gold:#d4a548;
  --v19-gold-deep:#c08d2e;
  --v19-bronze:#9a6814;
  /* Triple-nested frame rings, painted inside the element box-shadow stack:
     1px bright-gold hairline / 3px dark recess / 1px bronze line at 3px
     offset / 1px inner hairline. Inset rings follow border-radius, so rounded
     cards (shot, setup-card) get automatic corner compensation. */
  --v19-rings:
    inset 0 0 0 1px rgba(246,219,156,.78),
    inset 0 0 0 4px rgba(22,13,2,.88),
    inset 0 0 0 5px rgba(154,104,20,.85),
    inset 0 0 0 6px rgba(246,219,156,.30);
  /* Soft variant for stacked rows (residency / credential) so adjacent
     frames don't double up harshly. */
  --v19-rings-soft:
    inset 0 0 0 1px rgba(246,219,156,.30),
    inset 0 0 0 4px rgba(22,13,2,.55),
    inset 0 0 0 5px rgba(154,104,20,.38);
  --v19-diamond:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='3.5' y='3.5' width='9' height='9' transform='rotate(45 8 8)' fill='%23e8bd60' stroke='%233a2408'/%3E%3C/svg%3E");
  --v19-diamond-dark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='3.5' y='3.5' width='9' height='9' transform='rotate(45 8 8)' fill='%233a2408' stroke='%23ffe9a8'/%3E%3C/svg%3E");
}

/* ================= B. TRIPLE-NESTED GOLD/BRONZE BORDERS ================= */
/* Rings ride on the element box-shadow so the existing ::before/::after
   treatments (crown plates, inset frames, vignettes) layer untouched. */
.package{box-shadow:var(--v19-rings),0 22px 55px rgba(0,0,0,.32)}
.package:hover{box-shadow:var(--v19-rings),0 26px 60px rgba(0,0,0,.65),0 0 44px rgba(232,195,108,.22)}
.package.featured{box-shadow:var(--v19-rings),0 0 70px rgba(214,166,63,.30),0 30px 90px rgba(0,0,0,.65)}
.package.featured:hover{box-shadow:var(--v19-rings),0 0 90px rgba(214,166,63,.42),0 34px 96px rgba(0,0,0,.70)}
.service-card{
  border:1px solid;
  border-image:linear-gradient(165deg,#f6db9c 0%,#c08d2e 28%,#e8bd60 52%,#5c3f0e 76%,#f6db9c 100%) 1;
  box-shadow:var(--v19-rings),0 26px 70px rgba(0,0,0,.5);
}
.quote{box-shadow:var(--v19-rings),0 0 34px rgba(212,175,55,.14),0 20px 60px #000}
.nights-grid .shot{
  border:1px solid #c9962e; /* solid, not border-image: radius:6px would clip a border-image square */
  box-shadow:var(--v19-rings),0 18px 45px rgba(0,0,0,.55);
}
.addon-item{box-shadow:var(--v19-rings),0 14px 34px rgba(0,0,0,.40)}
.party-card{box-shadow:var(--v19-rings),0 22px 55px rgba(0,0,0,.30)}
.residency{box-shadow:var(--v19-rings-soft)}
.residency:hover{box-shadow:inset 3px 0 0 #d6a63f,var(--v19-rings-soft);background:rgba(214,166,63,.06)}
.credential{box-shadow:var(--v19-rings-soft)}
/* Buttons — beveled gold frame: 1px bright-gold outer hairline, dark bronze
   inner ring, deep bevel, incised (engraved) label type. ::after sheen kept. */
.btn-primary{
  border:1px solid var(--v19-gold-hi);
  box-shadow:
    0 0 0 1px rgba(24,14,2,.95),
    inset 0 0 0 1px rgba(120,70,0,.60),
    inset 0 2px 0 rgba(255,255,255,.70),
    inset 0 -4px 8px rgba(74,42,4,.50),
    inset 2px 0 3px rgba(255,255,255,.18),
    inset -2px 0 3px rgba(60,35,0,.30),
    0 14px 36px rgba(180,122,24,.50),
    0 0 34px rgba(232,195,108,.40);
  text-shadow:0 -1px 0 rgba(60,35,0,.55),0 1px 0 rgba(255,246,214,.55);
}
.btn-primary:hover{
  box-shadow:
    0 0 0 1px rgba(24,14,2,.95),
    inset 0 0 0 1px rgba(120,70,0,.60),
    inset 0 2px 0 rgba(255,255,255,.80),
    inset 0 -4px 8px rgba(74,42,4,.50),
    0 18px 44px rgba(180,122,24,.55),
    0 0 54px rgba(232,195,108,.60);
}

/* ================= C. ART-DECO CORNER DETAILING & INLAYS ================= */
/* corner-stepped-deco pre-mirrored variants (-tr/-bl/-br) were generated from
   the TL master so all four corners land correctly with zero transforms. */
/* Featured package — deco corners layered onto the existing inset frame */
.package.featured::after{
  border-color:rgba(237,198,109,.42);
  background:
    url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left top/92px 92px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right top/92px 92px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left bottom/92px 92px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right bottom/92px 92px no-repeat;
}
/* Testimonial quotes — deco corners onto the existing inset frame */
.quote::after{
  border-color:rgba(212,175,55,.30);
  background:
    url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left top/84px 84px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right top/84px 84px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left bottom/84px 84px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right bottom/84px 84px no-repeat;
}
/* Gallery shots — free ::before carries all four corners above the vignette */
.nights-grid .shot::before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left 7px top 7px/88px 88px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right 7px top 7px/88px 88px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left 7px bottom 7px/88px 88px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right 7px bottom 7px/88px 88px no-repeat;
}
/* Inquiry form — top pair on ::before, bottom pair on ::after */
.inquiry-form{position:relative}
.inquiry-form::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left 12px top 12px/110px 110px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right 12px top 12px/110px 110px no-repeat;
}
.inquiry-form::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left 12px bottom 12px/110px 110px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right 12px bottom 12px/110px 110px no-repeat;
}
/* Setup cards — full double-hairline luxe frame with diamond accents */
.setup-card::before{
  content:"";position:absolute;inset:10px;z-index:2;pointer-events:none;opacity:.92;
  background:url("/assets/v19-ornaments/corner-hairline-luxe@2x.png") center/100% 100% no-repeat;
}
/* Diamond inlays flanking section numbers (kicker/sec-no pairs) */
.section:not(.booking) .kicker .sec-no::before,
.section:not(.booking) .kicker .sec-no::after{
  content:"";display:inline-block;width:7px;height:7px;margin:0 .6rem;
  background:var(--v19-diamond) center/contain no-repeat;vertical-align:baseline;
  filter:drop-shadow(0 0 6px rgba(214,166,63,.8));
}
.booking .kicker .sec-no::before,
.booking .kicker .sec-no::after{
  content:"";display:inline-block;width:7px;height:7px;margin:0 .6rem;
  background:var(--v19-diamond-dark) center/contain no-repeat;vertical-align:baseline;
}
/* Inline diamond opening every dark-ground section h2 */
.section:not(.booking) h2::before{
  content:"";display:inline-block;width:.30em;height:.30em;margin-right:.5em;
  background:linear-gradient(135deg,#f6db9c,#c08d2e);transform:rotate(45deg);
  box-shadow:0 0 10px rgba(214,166,63,.65);vertical-align:baseline;
}

/* ================= D. TRIPLE-LINE ENGRAVED DIVIDERS ================= */
/* Trustbar — divider strips straddling its top/bottom edges (absolute: zero
   layout shift, zero horizontal overflow). */
.trustbar{position:relative}
.trustbar::before,.trustbar::after{
  content:"";position:absolute;left:50%;transform:translateX(-50%);
  width:min(1000px,86%);height:48px;pointer-events:none;z-index:5;
  background:url("/assets/v19-ornaments/divider-triple-rule.svg") center/contain no-repeat;
}
.trustbar::before{top:-24px}
.trustbar::after{bottom:-24px}
/* Section CTAs — engraved divider above every CTA button (intentional rhythm) */
.section-cta::before{
  content:"";display:block;max-width:1000px;height:52px;margin:0 auto 1.2rem;
  background:url("/assets/v19-ornaments/divider-triple-rule.svg") center/contain no-repeat;
  opacity:.9;
}
/* Nights header — divider floating beneath the head, above the tabs */
.nights-head{position:relative}
.nights-head::after{
  content:"";position:absolute;left:0;right:0;bottom:-16px;max-width:980px;height:40px;
  margin:0 auto;pointer-events:none;opacity:.85;
  background:url("/assets/v19-ornaments/divider-triple-rule.svg") center/contain no-repeat;
}
/* Manual medallion divider — the lead drops <div class="pe-v19-divider-medallion">
   between sections. pe-alive-rule pulse compatible: no animation is set here,
   so adding class="pe-alive-rule" just works (keyframes ship in Part 2). */
.pe-v19-divider-medallion{
  display:block;max-width:900px;height:120px;margin:2.2rem auto;
  background:url("/assets/v19-ornaments/divider-medallion.svg") center/contain no-repeat;
}

/* ================= E. LAYERED TEXTURES ================= */
/* Body — film grain wash under the fixed SVG grain (z 119 < 120) */
body::before{
  content:"";position:fixed;inset:0;z-index:119;pointer-events:none;opacity:.03;
  background:url("/assets/v19-ornaments/tex-grain-256.png") repeat,url("/assets/v19-ornaments/tex-brushed-256.png") repeat;
}
/* Services — grain over the LIVE watermark + cards (::after is free) */
.services::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;
  background:url("/assets/v19-ornaments/tex-grain-256.png") repeat;
}
/* Packages — damask at 5% over the whole section */
.packages{position:relative}
.packages::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;
  background:url("/assets/v19-ornaments/tex-damask-256.png") repeat;
}
/* Velvet light pools + vignette falloff on dark grounds */
.packages{
  background:
    radial-gradient(55% 40% at 10% 6%,rgba(232,195,108,.09),transparent 70%),
    radial-gradient(50% 42% at 90% 94%,rgba(80,45,8,.30),transparent 70%),
    radial-gradient(120% 105% at 50% 42%,transparent 60%,rgba(0,0,0,.42)),
    radial-gradient(90% 34% at 50% 0%,rgba(214,166,63,.07),transparent 70%),
    var(--bg);
}
.kind-words{
  background:
    radial-gradient(55% 40% at 12% 8%,rgba(232,195,108,.07),transparent 70%),
    radial-gradient(50% 42% at 88% 92%,rgba(120,70,20,.12),transparent 70%),
    radial-gradient(120% 100% at 50% 45%,transparent 62%,rgba(0,0,0,.45)),
    radial-gradient(70% 30% at 50% 0%,rgba(214,166,63,.05),transparent 70%),
    #0a0b0e;
}
.kind-words .inner{position:relative}
.kind-words .inner::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;
  background:url("/assets/v19-ornaments/tex-damask-256.png") repeat;
}
.hero{
  background:
    radial-gradient(70% 55% at 82% 18%,rgba(232,195,108,.07),transparent 70%),
    #050608;
}
/* Booking (gold ground) — light pools baked into the gradient stack; grain
   rides on the grid wrapper so the diagonal-line ::before is untouched */
.booking{
  background:
    radial-gradient(45% 35% at 12% 8%,rgba(255,248,220,.50),transparent 70%),
    radial-gradient(45% 35% at 88% 92%,rgba(70,40,5,.40),transparent 70%),
    radial-gradient(130% 70% at 50% 0%,#f4d47c 0%,#e3bb5f 34%,#ac7117 78%,#8a5a10 100%);
}
.booking-grid::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.04;
  background:url("/assets/v19-ornaments/tex-grain-256.png") repeat;
}
/* Footer — grain wash + warm pool */
footer{position:relative;background:radial-gradient(70% 60% at 20% 0%,rgba(232,195,108,.06),transparent 70%),#060709}
footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;
  background:url("/assets/v19-ornaments/tex-grain-256.png") repeat;
}
/* Residencies / areas / how — faint damask over dark grounds */
.residencies::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;
  background:url("/assets/v19-ornaments/tex-damask-256.png") repeat;
}
#areas,#how{position:relative}
#areas::before,#how::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.03;
  background:url("/assets/v19-ornaments/tex-damask-256.png") repeat;
}
/* Card backings — cross-hatch + grain tiled under the glass gradients */
.package{background-image:url("/assets/v19-ornaments/tex-hatch-256.png"),url("/assets/v19-ornaments/tex-grain-256.png"),linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0) 26%),radial-gradient(120% 60% at 50% 0%,rgba(232,195,108,.06),transparent 60%)}
.service-card::after{
  background:url("/assets/v19-ornaments/tex-hatch-256.png") repeat,linear-gradient(0deg,rgba(3,4,6,.98),rgba(3,4,6,.08) 72%);
}
.quote{background-image:url("/assets/v19-ornaments/tex-grain-256.png"),linear-gradient(180deg,rgba(232,195,108,.05),rgba(255,255,255,0) 30%)}

/* ================= F. PRICING HEADER — FILL THE DEAD ZONE ================= */
/* (copy + layout order untouched; decoration only) */
/* Gold plaque trim straddling the section's top edge, above the h2 zone */
.packages::before{
  content:"";position:absolute;top:-21px;left:50%;transform:translateX(-50%);
  width:min(620px,72%);height:42px;pointer-events:none;z-index:5;
  background:url("/assets/v19-ornaments/crown-bar-2000@2x.png") center/contain no-repeat;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.6));
}
/* Faint oversized monogram watermark behind the head (overrides the generic
   section-head ::after diamonds — higher specificity wins, no conflict) */
.packages .section-head::after{
  content:"";position:absolute;left:auto;bottom:auto;top:50%;right:-2%;
  transform:translateY(-50%);
  width:min(440px,42%);aspect-ratio:1/1;pointer-events:none;opacity:.09;
  background:url("/assets/v19-ornaments/emblem-pe-monogram@2x.png") center/contain no-repeat;
}
/* Small ornament row under the lead */
.packages .section-head .lead::after{
  content:"";display:block;width:min(400px,75%);height:30px;margin-top:1.1rem;
  background:url("/assets/v19-ornaments/divider-deco-diamond.svg") left center/contain no-repeat;
  opacity:.9;
}

/* ================= G. VISUAL ANCHORS IN EVERY HEADER ZONE ================= */
/* Services + packages heads — hairline frame with diamond corner inlays */
.section-head::before{
  content:"";position:absolute;inset:-14px -12px;pointer-events:none;
  border:1px solid rgba(232,195,108,.22);
  background:
    var(--v19-diamond) left 8px top 8px/14px 14px no-repeat,
    var(--v19-diamond) right 8px top 8px/14px 14px no-repeat;
}
.section-head::after{
  content:"";position:absolute;inset:-14px -12px;pointer-events:none;
  background:
    var(--v19-diamond) left 8px bottom 8px/14px 14px no-repeat,
    var(--v19-diamond) right 8px bottom 8px/14px 14px no-repeat;
}
/* Residencies — hex sigil top-right of the header zone (padding-safe: text
   is left-anchored, sigil floats in the empty right field) */
.residencies .inner::before{
  content:"";position:absolute;top:-6px;right:-8px;width:200px;height:200px;
  pointer-events:none;opacity:.35;
  background:url("/assets/v19-ornaments/emblem-hex@2x.png") center/contain no-repeat;
}
.residencies .inner>*{position:relative;z-index:1}
/* Gallery nights-head — hex sigil + divider (sigil behind text, text raised) */
.nights-head::before{
  content:"";position:absolute;top:-10px;right:0;width:170px;height:170px;
  pointer-events:none;opacity:.4;
  background:url("/assets/v19-ornaments/emblem-hex@2x.png") center/contain no-repeat;
}
.nights-head>*{position:relative;z-index:1}
/* Booking copy — dark-bronze hairline plaque frame with dark diamonds
   (reads on the gold ground where gold diamonds would vanish) */
.booking-copy{position:relative}
.booking-copy::before{
  content:"";position:absolute;inset:-16px -14px;pointer-events:none;
  border:1px solid rgba(58,39,8,.55);
  background:
    var(--v19-diamond-dark) left 8px top 8px/14px 14px no-repeat,
    var(--v19-diamond-dark) right 8px top 8px/14px 14px no-repeat;
}
.booking-copy::after{
  content:"";position:absolute;inset:-16px -14px;pointer-events:none;
  background:
    var(--v19-diamond-dark) left 8px bottom 8px/14px 14px no-repeat,
    var(--v19-diamond-dark) right 8px bottom 8px/14px 14px no-repeat;
}
@media(max-width:900px){
  .residencies .inner::before{width:130px;height:130px;top:0;right:0}
  .nights-head::before{width:120px;height:120px}
}

/* ================= H. LIVING MOTION (pure CSS — no HTML changes) ================= */
/* GPU-only keyframes (opacity / transform). Heavy treatments gated to
   desktop; mobile keeps breathe + rule pulse (per the motion spec). */
.package.featured{animation:pe-v19-breathe 7s ease-in-out infinite}
@keyframes pe-v19-breathe{0%,100%{opacity:1}50%{opacity:.955}}
@media(min-width:768px){
  /* Slow drifting light on the existing hero atmosphere layer — background
     untouched, overscan added so the drift never exposes an edge. */
  .hero::before{inset:-14%;animation:pe-v19-hero-drift 18s ease-in-out infinite alternate;will-change:transform}
  @keyframes pe-v19-hero-drift{
    from{transform:translate3d(-2.5%,-1.5%,0)}
    to{transform:translate3d(2.5%,1.5%,0)}
  }
  /* Shimmer-safe slow sheen on the package badge (::after is free there) */
  .package-badge{overflow:hidden}
  .package-badge::after{
    content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:45%;
    pointer-events:none;
    background:linear-gradient(100deg,transparent,rgba(255,222,140,.55),transparent);
    transform:translateX(-160%) skewX(-18deg);
    animation:pe-v19-badge-sheen 7s ease-in-out infinite;
    will-change:transform,opacity;
  }
  @keyframes pe-v19-badge-sheen{
    0%{transform:translateX(-160%) skewX(-18deg);opacity:0}
    12%{opacity:.55}
    40%,100%{transform:translateX(170%) skewX(-18deg);opacity:0}
  }
}

/* ================= I. REDUCED MOTION — v19 additions ================= */
/* The motion spec's own reduced-motion block follows verbatim in Part 2 and
   stays LAST; this block kills only the v19 additions above it. */
@media (prefers-reduced-motion:reduce){
  .package.featured,.hero::before{animation:none}
  .hero::before{inset:0}
  .package-badge::after{display:none}
}

/* ================= J. v19 AMBIENT MOTION SPEC (VERBATIM — DO NOT EDIT) ================= */
/* ============================================================================
   PROUD ENTERTAINMENT — v19 "living breathing beautiful monster"
   AMBIENT MOTION SYSTEM · namespace: pe-alive-
   ----------------------------------------------------------------------------
   DROP-IN: append this entire file AFTER all other CSS in <style>.
   Do not rename classes. Do not edit keyframes.

   DESIGN CONTRACT
   - Keyframes animate ONLY opacity and transform (GPU-composited). No layout,
     no paint-per-frame. 60fps safe.
   - Heavy treatments (shimmer / wash / grain / deep breathing) are gated to
     @media (min-width:768px). Mobile keeps: breathe, rule pulse, reveals,
     hover physics.
   - EVERYTHING is killed under prefers-reduced-motion (see bottom block).
   - Scroll reveals need the tiny IntersectionObserver snippet (pasted as a
     comment at the bottom of this file). Without the JS, reveal elements stay
     hidden — the snippet is mandatory if you use .pe-alive-reveal*.

   CONFLICT RULES (read before applying)
   - .pe-alive-shimmer, .pe-alive-btn and .pe-alive-grain each use ::after.
     Only ONE of them per element, and the element must not already use ::after
     for something else.
   - .pe-alive-wash uses ::before (painted BEHIND content via z-index:-1 inside
     an isolated stacking context). Safe alongside the ::after users above.
   - Do NOT combine .pe-alive-breathe-deep with .pe-alive-lift on the same
     element (both drive transform; hover would fight the loop). Pair
     .pe-alive-breathe (opacity-only) with .pe-alive-lift instead.
   ============================================================================ */

:root{
  --pe-alive-sheen: rgba(255, 222, 140, .55);   /* sheen sweep color */
  --pe-alive-warm:  rgba(255, 166, 77, .14);    /* drifting warm light */
  --pe-alive-gold:  rgba(212, 175, 55, .10);    /* drifting gold light */
  --pe-alive-ease:  cubic-bezier(.22, 1, .36, 1); /* weighted ease-out */
}

/* ================= 1. BREATHING GLOWS (global, cheap) ================= */
/* Slow luminosity pulse. Apply ON TOP of elements that already carry a
   text-shadow / box-shadow glow — the pulse reads as the glow breathing. */

@keyframes pe-breathe{
  0%, 100%{ opacity: 1; }
  50%{ opacity: .94; }
}
/* Gold headlines, CTA buttons, crown plates (mobile), badges */
.pe-alive-breathe{
  animation: pe-breathe 6s ease-in-out infinite;
}

/* Thinner elements: engraved dividers, hairline rules, flanking rules */
@keyframes pe-rule-pulse{
  0%, 100%{ opacity: 1; }
  50%{ opacity: .8; }
}
.pe-alive-rule{
  animation: pe-rule-pulse 5s ease-in-out infinite;
}

/* ============ 2-4. HEAVY AMBIENT (desktop only, min-width:768px) ============ */
@media (min-width: 768px){

  /* ---- 2a. DEEP BREATH: opacity + micro-scale (crown plates, hero emblem) ---- */
  @keyframes pe-breathe-deep{
    0%, 100%{ opacity: 1;   transform: scale(1); }
    50%{      opacity: .93; transform: scale(1.018); }
  }
  .pe-alive-breathe-deep{
    animation: pe-breathe-deep 8s ease-in-out infinite;
    will-change: transform, opacity;
  }

  /* ---- 2b. SHIMMER SWEEP: slow sheen across metallic type / gold frames ----
     Requires: element has ::after free. Host gets position:relative +
     overflow:hidden automatically from this class. */
  .pe-alive-shimmer{
    position: relative;
    overflow: hidden;
  }
  .pe-alive-shimmer::after{
    content: "";
    position: absolute;
    top: -10%; bottom: -10%; left: 0;
    width: 45%;
    border-radius: inherit;      /* respects rounded cards/frames */
    pointer-events: none;
    background: linear-gradient(100deg,
      transparent 0%,
      var(--pe-alive-sheen) 50%,
      transparent 100%);
    opacity: 0;
    transform: translateX(-160%) skewX(-18deg);
    animation: pe-sheen 8s ease-in-out infinite;
    will-change: transform, opacity;
  }
  /* Sweep happens in the first ~3s; the rest of the 8s cycle is a rest pause. */
  @keyframes pe-sheen{
    0%{   transform: translateX(-160%) skewX(-18deg); opacity: 0; }
    10%{  opacity: .5; }
    38%{  transform: translateX(170%) skewX(-18deg);  opacity: 0; }
    100%{ transform: translateX(170%) skewX(-18deg);  opacity: 0; }
  }

  /* ---- 3a. DRIFTING WARM LIGHT WASH (dark section backgrounds) ----
     ::before painted BEHIND content (z-index:-1 + isolation). Two warm
     radial pools drift on a 14s alternate loop — the darkness feels alive. */
  .pe-alive-wash{
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }
  .pe-alive-wash::before{
    content: "";
    position: absolute;
    inset: -18%;                 /* overscan so drift never exposes an edge */
    z-index: -1;
    pointer-events: none;
    background:
      radial-gradient(ellipse 55% 42% at 28% 18%,
        var(--pe-alive-warm), transparent 70%),
      radial-gradient(ellipse 48% 38% at 74% 82%,
        var(--pe-alive-gold), transparent 70%);
    animation: pe-wash-drift 14s ease-in-out infinite alternate;
    will-change: transform, opacity;
  }
  @keyframes pe-wash-drift{
    from{ transform: translate3d(-3%, -2%, 0) scale(1);    opacity: .75; }
    to{   transform: translate3d( 3%,  2%, 0) scale(1.07);  opacity: 1; }
  }

  /* ---- 3b. ANIMATED FILM GRAIN (hero / darkest zones only) ----
     Tiny 160px SVG-noise tile, stepped transform = film-grain flicker.
     Layer sits ABOVE content at 6% opacity — subtle by design. */
  .pe-alive-grain{
    position: relative;
    overflow: hidden;
  }
  .pe-alive-grain::after{
    content: "";
    position: absolute;
    inset: -12%;                 /* overscan for the translate jitter */
    z-index: 1;
    pointer-events: none;
    opacity: .06;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 160px 160px;
    animation: pe-grain-shift 1s steps(6) infinite;
    will-change: transform;
  }
  @keyframes pe-grain-shift{
    0%{   transform: translate(0, 0); }
    20%{  transform: translate(-4%, 3%); }
    40%{  transform: translate(3%, -4%); }
    60%{  transform: translate(-3%, -2%); }
    80%{  transform: translate(4%, 2%); }
    100%{ transform: translate(0, 0); }
  }
}

/* ================= 5. SCROLL REVEALS (global) ================= */
/* Initial state is HIDDEN — the JS snippet at the bottom of this file adds
   .is-in via IntersectionObserver. Stagger children with --pe-i on a
   .pe-alive-stagger parent (delay = index × 90ms) or set --pe-delay directly. */
.pe-alive-reveal,
.pe-alive-reveal-left,
.pe-alive-reveal-right,
.pe-alive-reveal-scale{
  opacity: 0;
  transition: opacity .7s ease,
              transform .7s var(--pe-alive-ease);
  transition-delay: var(--pe-delay, 0ms);
}
.pe-alive-reveal{       transform: translateY(26px); }
.pe-alive-reveal-left{  transform: translateX(-34px); }
.pe-alive-reveal-right{ transform: translateX(34px); }
.pe-alive-reveal-scale{ transform: scale(.94); }

.pe-alive-reveal.is-in,
.pe-alive-reveal-left.is-in,
.pe-alive-reveal-right.is-in,
.pe-alive-reveal-scale.is-in{
  opacity: 1;
  transform: none;
}

/* Stagger helper: parent gets .pe-alive-stagger; each animated child sets
   style="--pe-i:0" … style="--pe-i:5" (and carries its own reveal class). */
.pe-alive-stagger > *{
  transition-delay: calc(var(--pe-i, 0) * 90ms);
}

/* ================= 6. HOVER PHYSICS (global, 250–300ms weighted) ================= */
.pe-alive-lift{
  transition: transform 280ms var(--pe-alive-ease);
}
.pe-alive-lift:hover{
  transform: translateY(-5px) scale(1.012);
}

.pe-alive-press{
  transition: transform 180ms cubic-bezier(.34, 1.56, .64, 1);
}
.pe-alive-press:active{
  transform: scale(.965);
}

/* Button: hover lift + a sheen that sweeps once per hover. */
.pe-alive-btn{
  position: relative;
  overflow: hidden;
  transition: transform 260ms var(--pe-alive-ease);
}
.pe-alive-btn:hover{
  transform: translateY(-2px);
}
.pe-alive-btn::after{
  content: "";
  position: absolute;
  top: -10%; bottom: -10%; left: 0;
  width: 45%;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(100deg,
    transparent 0%,
    rgba(255, 222, 140, .6) 50%,
    transparent 100%);
  opacity: 0;
  transform: translateX(-160%) skewX(-18deg);
}
.pe-alive-btn:hover::after{
  animation: pe-sheen-hover .9s ease;
}
@keyframes pe-sheen-hover{
  0%{   transform: translateX(-160%) skewX(-18deg); opacity: 0; }
  25%{  opacity: .65; }
  100%{ transform: translateX(170%) skewX(-18deg);  opacity: 0; }
}

/* ================= REDUCED MOTION: kill everything ================= */
/* Must stay the LAST block in this file. Reveal elements are forced visible
   so no-JS / reduced-motion users never see hidden content. */
@media (prefers-reduced-motion: reduce){
  .pe-alive-breathe,
  .pe-alive-breathe-deep,
  .pe-alive-rule,
  .pe-alive-shimmer, .pe-alive-shimmer::after,
  .pe-alive-wash,    .pe-alive-wash::before,
  .pe-alive-grain,   .pe-alive-grain::after,
  .pe-alive-btn,     .pe-alive-btn::after,
  .pe-alive-lift,
  .pe-alive-press{
    animation: none !important;
    transition: none !important;
  }
  .pe-alive-shimmer::after,
  .pe-alive-wash::before,
  .pe-alive-grain::after,
  .pe-alive-btn::after{
    display: none !important;
  }
  .pe-alive-reveal,
  .pe-alive-reveal-left,
  .pe-alive-reveal-right,
  .pe-alive-reveal-scale{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* ============================================================================
   REQUIRED JS — paste once before <script src="/assets/js/pe-letterforms.js" defer></script>
</body> (enables .pe-alive-reveal*).
   <script>
   (function(){
     var els = document.querySelectorAll(
       '.pe-alive-reveal,.pe-alive-reveal-left,.pe-alive-reveal-right,.pe-alive-reveal-scale');
     if(!('IntersectionObserver' in window)){
       els.forEach(function(e){ e.classList.add('is-in'); });
       return;
     }
     var io = new IntersectionObserver(function(entries){
       entries.forEach(function(en){
         if(en.isIntersecting){ en.target.classList.add('is-in'); io.unobserve(en.target); }
       });
     }, { threshold: 0.15, rootMargin: '0px 0px -8% 0px' });
     els.forEach(function(e){ io.observe(e); });
   })();
   </script>
   ============================================================================ */

/* ===== END v19 masterwork block ===== */

/* ===== v19d no-JS safety: scroll reveals stay visible when JS never runs ===== */
.pe-alive-reveal,.pe-alive-reveal-left,.pe-alive-reveal-right,.pe-alive-reveal-scale{opacity:1;transform:none}
html.js .pe-alive-reveal,html.js .pe-alive-reveal-left,html.js .pe-alive-reveal-right,html.js .pe-alive-reveal-scale{opacity:0}
html.js .pe-alive-reveal{transform:translateY(26px)}
html.js .pe-alive-reveal-left{transform:translateX(-34px)}
html.js .pe-alive-reveal-right{transform:translateX(34px)}
html.js .pe-alive-reveal-scale{transform:scale(.94)}
html.js .pe-alive-reveal.is-in,html.js .pe-alive-reveal-left.is-in,html.js .pe-alive-reveal-right.is-in,html.js .pe-alive-reveal-scale.is-in{opacity:1;transform:none}
/* ===== v19e fix: suit-anchor img height attr defeats aspect-ratio — force auto ===== */
.suit-anchor img{height:auto}
  /* ===== v19e — booking: wizard-launch panel as sticky conversion card (punchlist #7) ===== */
@media(min-width:901px){
  .booking-grid>.wz-launch{position:sticky;top:calc(44px + 76px);align-self:start}
}
/* punchlist #8 — mobile wizard-panel corners overlap content: shrink + clear */
@media(max-width:900px){
  .inquiry-form::before,.inquiry-form::after{background-size:68px 68px,68px 68px}
  .booking-grid>.inquiry-form{padding-bottom:100px}
}
/* punchlist #14 — 4 confirmed add-ons read best as 2x2 (was 3-col, orphaned 4th card) */
.addon-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
/* v19f — that 2-col rule sits later in the cascade with equal specificity, so it was
   overriding the phone 1-col rule → add-on cards crushed 2-across on mobile, text a
   word per line, prices clipped. Re-assert single column on phones + roomier cards. */
@media(max-width:620px){
  .addon-menu-grid{grid-template-columns:1fr}
  .addon-item{padding:1.6rem 1.5rem;gap:1.1rem}
  .addon-item strong{font-size:1.05rem}
  .addon-item em{font-size:1.65rem}
}

/* v19g — mobile menu. Barry 2026-09-19: "Menu needs work" — on phones the nav links
   were simply hidden with no menu at all. Floating gold-framed panel with
   staggered luxury list rows + full-width gold CTA. */
.nav-actions{display:inline-flex;align-items:center;gap:.7rem}
.nav-contact{display:inline-flex;align-items:center;gap:.55rem}
.nav .nav-call{font-size:.72rem;letter-spacing:.05em;text-transform:none;color:#f4ead0;text-shadow:0 1px 3px rgba(0,0,0,.85);white-space:nowrap}
.nav .nav-call:hover{color:var(--gold-pale)}
.nav a.nav-text{border:1px solid rgba(237,198,109,.65);padding:.72rem .95rem;background:rgba(5,5,5,.35);color:#f6db9c!important;border-radius:6px;text-shadow:none;white-space:nowrap}
.nav a.nav-text:hover{border-color:var(--gold-pale);box-shadow:0 0 18px rgba(232,195,108,.35)}
@media(max-width:900px){.nav-contact{gap:.45rem}.nav a.nav-text{padding:.6rem .7rem}.nav .nav-call{display:none!important}}
.footer-links{display:flex;gap:1.3rem;justify-content:flex-end;flex-wrap:wrap;margin:0 0 .7rem}
.footer-links a{color:#f4ead0!important;text-decoration:none;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.footer-local{width:min(1260px,100%);margin:1.8rem auto 0;padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:.6rem}.footer-local .fl-row{display:flex;flex-wrap:wrap;gap:.2rem .85rem;align-items:baseline}.footer-local .fl-label{font-size:.62rem;font-weight:900;letter-spacing:.24em;text-transform:uppercase;color:#e4bb60;margin-right:.35rem;white-space:nowrap}.footer-local a{color:#b7b0a1!important;text-decoration:none;font-size:.74rem;letter-spacing:.05em}.footer-local a:hover{color:#fff!important;text-decoration:underline}
.footer-links a:hover{color:var(--gold-pale);text-decoration:none}
.link-arrow{color:var(--gold-pale);text-decoration:none;font-weight:800;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid rgba(237,198,109,.5);padding-bottom:2px}
.link-arrow:hover{color:#fff;border-color:#fff}
.mobile-menu .text-row{color:#f6db9c!important;font-weight:700}
.menu-toggle{display:none}
.mobile-menu{display:none}
@media(max-width:900px){
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:48px;height:48px;flex:0 0 auto;background:rgba(5,5,5,.5);border:1px solid rgba(232,195,108,.55);border-radius:10px;cursor:pointer;backdrop-filter:blur(6px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 18px rgba(0,0,0,.5);padding:0}
  .menu-toggle span{display:block;width:22px;height:2px;border-radius:2px;background:linear-gradient(90deg,#f6db9c,#c9962e);transition:transform .3s ease,opacity .25s ease}
  .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mobile-menu{display:block;position:fixed;top:calc(0px + 92px);left:.8rem;right:.8rem;z-index:90;background:linear-gradient(180deg,#131519,#0a0b0e);border:1px solid rgba(232,195,108,.42);border-radius:14px;box-shadow:var(--v19-rings),0 30px 80px rgba(0,0,0,.7),0 0 44px rgba(212,175,55,.14);padding:.6rem .9rem 1.1rem;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.985);transform-origin:top center;transition:opacity .32s ease,transform .32s ease,visibility .32s}
  .mobile-menu.open{opacity:1;visibility:visible;transform:none}
  .mobile-menu a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem .9rem;text-decoration:none;color:#f4ead0;font-family:var(--display);font-size:1.4rem;letter-spacing:.02em;border-bottom:1px solid rgba(232,195,108,.14);text-transform:none;opacity:0;transform:translateY(12px);transition:opacity .38s ease,transform .38s ease}
  .mobile-menu.open a{opacity:1;transform:none}
  .mobile-menu.open a:nth-child(1){transition-delay:.05s}
  .mobile-menu.open a:nth-child(2){transition-delay:.11s}
  .mobile-menu.open a:nth-child(3){transition-delay:.17s}
  .mobile-menu.open a:nth-child(4){transition-delay:.23s}
  .mobile-menu.open a:nth-child(5){transition-delay:.29s}
  .mobile-menu a:after{content:"›";font-family:var(--sans);font-size:1.5rem;color:#d6a63f;line-height:1}
  .mobile-menu a.book{justify-content:center;margin-top:.9rem;padding:1.15rem 1rem;border-bottom:0;border-radius:999px;font-family:var(--sans);font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#201303!important;background:linear-gradient(180deg,#ffedb8 0%,#f0cd6d 35%,#c9962e 70%,#c9962e 100%);border:1px solid rgba(74,50,8,.9);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 5px rgba(74,42,4,.45),0 10px 26px rgba(0,0,0,.6),0 0 28px rgba(232,195,108,.35)}
  .mobile-menu a.book:after{content:none}
}
@media(max-width:620px){
  .nav .book{padding:.65rem .7rem;font-size:.62rem}
}

/* v19h — "Before you book" FAQ: Barry 2026-09-19 "needs to pop more and look more
   detailed rich layered and textured". Black-lacquer plaques with gold hardware on
   the gold booking panel; engraved bronze headline; foil checklist card. */
.faq{border-top:0;padding-top:1.7rem}
.faq h3{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,5.4vw,2.7rem);color:#231503;
  text-shadow:0 1px 0 rgba(255,243,208,.6),0 3px 10px rgba(90,55,5,.35);
  margin:0 0 1.25rem;display:flex;align-items:center;gap:1rem}
.faq h3:after{content:"";flex:1;height:2px;border-radius:2px;
  background:linear-gradient(90deg,rgba(58,34,6,.6),rgba(58,34,6,0))}
.faq details{position:relative;overflow:hidden;margin:0 0 .75rem;padding:0;
  border:1px solid rgba(74,50,8,.7);border-radius:12px;
  background:linear-gradient(180deg,#1b1d24 0%,#111318 55%,#0b0c0f 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),inset 0 -2px 6px rgba(0,0,0,.55),
    0 16px 36px rgba(62,36,2,.38),0 2px 6px rgba(62,36,2,.3)}
.faq details:before{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(115deg,transparent 42%,rgba(237,198,109,.08) 50%,transparent 58%),
    radial-gradient(120% 90% at 50% 0%,rgba(237,198,109,.10),transparent 55%)}
.faq details[open]{border-color:rgba(237,198,109,.75);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 44px rgba(62,36,2,.45),0 0 26px rgba(237,198,109,.18)}
.faq summary{position:relative;list-style:none;display:flex;align-items:center;gap:.95rem;
  padding:1.05rem 1.15rem;cursor:pointer;font-weight:800;font-size:.98rem;color:#f4ead0;line-height:1.35}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;
  font-size:1.2rem;font-weight:400;line-height:1;color:#221503;
  background:linear-gradient(180deg,#ffedb8 0%,#eec964 55%,#c9962e 100%);
  border:1px solid rgba(74,50,8,.85);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -2px 4px rgba(90,55,5,.35),0 4px 12px rgba(0,0,0,.5);
  transition:transform .35s ease}
.faq details[open] summary::before{content:"–";transform:rotate(180deg)}
.faq details p{position:relative;margin:0;padding:.95rem 1.2rem 1.25rem 4.35rem;
  border-top:1px solid rgba(237,198,109,.18);
  font-size:.9rem;line-height:1.65;color:#d3ccbc}
details.checklist{margin-top:1.1rem;overflow:hidden;border:1px solid rgba(74,50,8,.75);border-radius:12px;
  background:linear-gradient(180deg,#ffedB8 0%,#f2cf70 38%,#ddab3f 72%,#b57e1c 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -3px 8px rgba(90,55,5,.35),
    0 18px 44px rgba(62,36,2,.42),0 0 30px rgba(255,220,130,.25)}
details.checklist summary{list-style:none;display:flex;align-items:center;gap:.9rem;
  padding:1.1rem 1.25rem;cursor:pointer;color:#231503;font-size:.96rem;font-weight:600}
details.checklist summary::-webkit-details-marker{display:none}
details.checklist summary::before{content:"✓";flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;
  font-size:1rem;color:#f6db9c;background:linear-gradient(180deg,#2a2c33,#101216);
  border:1px solid rgba(74,50,8,.8);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 12px rgba(62,36,2,.4)}
details.checklist ol{margin:0;padding:0 1.4rem 1.3rem 3.6rem;color:#3a2708;font-size:.88rem;line-height:1.6;
  border-top:1px solid rgba(90,55,5,.3);padding-top:1rem}
details.checklist li{margin-bottom:.55rem}
details.checklist li strong{color:#1d1204}
/* punchlist #16 — email button full-width on its own row; DMs pair evenly below */
.contact-actions>.contact-action:first-child{grid-column:1/-1;justify-content:center}
/* punchlist #10 — fixed mobile CTA bar overlaps hero price at load: pull hero-inner up */
@media(max-width:900px){
  .hero-inner{margin-top:-15rem}
}
/* ===== end v19e ===== */

/* ===== v19f — Barry 2026-09-19: Kind Words + Nights header touch-up =====
   - deco corners no longer touch the quote text (padding clears them)
   - layered card texture: film grain + gold crown vignette + diagonal sheen + floor shadow
   - gold-foil giant quote mark; key phrase set in dimensional gold type
   - attribution gets its own divider + breathing room                        */
.kind-words .quote{
  padding:clamp(4rem,8vw,5rem) clamp(2.75rem,6vw,4.5rem) clamp(3rem,6.5vw,4rem);
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E"),
    radial-gradient(115% 70% at 50% 0%, rgba(232,195,108,.13), rgba(232,195,108,0) 55%),
    linear-gradient(112deg, rgba(255,244,214,.05) 0%, rgba(255,244,214,0) 34%),
    radial-gradient(90% 55% at 50% 112%, rgba(0,0,0,.62), rgba(0,0,0,0) 70%),
    linear-gradient(180deg,#14161c 0%,#0d0f14 100%);
  box-shadow:var(--v19-rings), 0 0 48px rgba(212,175,55,.16), 0 24px 70px rgba(0,0,0,.65);
}
.kind-words .quote::after{
  background:
    url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left 10px top 10px/72px 72px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right 10px top 10px/72px 72px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left 10px bottom 10px/72px 72px no-repeat,
    url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right 10px bottom 10px/72px 72px no-repeat;
}
.kind-words .quote::before{
  content:"\201C";
  position:absolute;left:.16em;top:-.46em;right:auto;
  font-family:var(--display);font-size:9.5rem;line-height:1;
  background:linear-gradient(175deg,#f9e7ae 0%,#ddb04e 42%,#7c5410 76%,#eecb7d 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  opacity:.38;pointer-events:none;
  text-shadow:0 5px 12px rgba(0,0,0,.65);filter:none;
}
.kind-words .quote p{
  position:relative;z-index:1;
  color:#f7f0dd;
  text-shadow:0 2px 16px rgba(0,0,0,.75), 0 1px 0 rgba(0,0,0,.55);
}
.kind-words .quote p strong{
  background:linear-gradient(178deg,#faf0b8 0%,#e6c065 38%,#a1761c 66%,#f2d78c 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-fill-color:transparent;text-shadow:none;
  text-shadow:0 2px 7px rgba(0,0,0,.75), 0 0 18px rgba(232,195,108,.28);filter:none;
}
.kind-words .quote cite{
  display:block;position:relative;z-index:1;
  margin:1.7rem 0 0;padding-top:1.15rem;
  border-top:1px solid rgba(212,175,55,.26);
  color:#d3c9b6;font-size:.87rem;line-height:1.75;letter-spacing:.02em;
}
.kind-words .quote cite::before{
  content:"";position:absolute;top:-1px;left:0;width:72px;height:2px;
  background:linear-gradient(90deg,#f0cd77,rgba(240,205,119,0));
}
@media(max-width:480px){
  .kind-words .quote::after{
    background:
      url("/assets/v19-ornaments/corner-stepped-deco@2x.png") left 8px top 8px/56px 56px no-repeat,
      url("/assets/v19-ornaments/corner-stepped-deco-tr@2x.png") right 8px top 8px/56px 56px no-repeat,
      url("/assets/v19-ornaments/corner-stepped-deco-bl@2x.png") left 8px bottom 8px/56px 56px no-repeat,
      url("/assets/v19-ornaments/corner-stepped-deco-br@2x.png") right 8px bottom 8px/56px 56px no-repeat;
  }
  .kind-words .quote::before{font-size:7.5rem}
}
/* Nights header — sigil floats clear of the headline (was muddying it on mobile),
   hairline divider grounds the header row */
.nights-head{position:relative}
.nights-head::before{
  top:-14px;right:0;width:170px;height:170px;opacity:.30;
}
.nights-head::after{
  content:"";position:absolute;left:0;right:0;bottom:-1.4rem;height:1px;
  background:linear-gradient(90deg,rgba(214,166,63,.55),rgba(214,166,63,.12) 55%,transparent);
  pointer-events:none;
}
.nights-tabs{margin-top:3rem}
@media(max-width:640px){
  .nights-head::before{width:104px;height:104px;top:-4px;right:-6px;opacity:.20}
  .nights-head>div:first-child{padding-right:96px}
}
/* ===== end v19f ===== */
/* ============ v21b Definitive texture pass — Barry 2026-09-19 ============ */
/* "The text itself is just too simple. Texture layers on everything!"      */
/* "A little less glare gold on the buttons."                               */
/* Final-order overrides: these win over all earlier version layers.       */
/* A. Plain ivory section headlines → champagne metal with grain + bevel    */
.section.about h2,.section.services h2,.section.areas h2,.section.how h2{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E"),linear-gradient(178deg,#fffdf6 0%,#f4ead2 26%,#ddcba1 44%,#fffaf0 54%,#d3bf94 66%,#faf1dc 80%,#c4ad7f 100%);background-size:200px 200px,100% 100%;background-blend-mode:overlay;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(70,50,14,.4);text-shadow:0 2px 0 rgba(0,0,0,.85), 0 12px 28px rgba(0,0,0,.7), 0 0 36px rgba(240,214,150,.16);filter:none;}
/* B. Booking headline → chiseled bronze, grain inside the letterforms      */
.booking h2{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E"),linear-gradient(177deg,#57400e 0%,#8a6a1c 12%,#3a2b07 28%,#6e5314 42%,#2a1e04 56%,#59400f 70%,#201503 84%,#463307 100%);background-size:220px 220px,100% 100%;background-blend-mode:soft-light;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(28,18,2,.7);text-shadow:0 1px 0 rgba(255,243,208,.65), 0 10px 22px rgba(52,32,0,.55), 0 3px 6px rgba(52,32,0,.6);filter:none;}
/* C. Buttons → satin gold: narrower tonal range, no white top sheen, no sweep */
.btn-primary{background:linear-gradient(180deg,#d3a94e 0%,#bd8f32 45%,#96701a 100%);color:#201303;text-shadow:0 1px 0 rgba(255,246,214,.35);border:1px solid rgba(74,50,8,.9);box-shadow:0 0 0 1px rgba(24,14,2,.9),inset 0 -3px 8px rgba(74,42,4,.45),0 10px 26px rgba(0,0,0,.55),0 0 26px rgba(232,195,108,.22)}
.btn-primary::after{display:none}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 0 0 1px rgba(24,14,2,.95),inset 0 -3px 8px rgba(74,42,4,.45),0 14px 32px rgba(0,0,0,.6),0 0 40px rgba(232,195,108,.35)}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.section.about h2,.section.services h2,.section.areas h2,.section.how h2,.booking h2{background:none;color:#f3e9d2;-webkit-text-fill-color:#f3e9d2;-webkit-text-stroke:0;filter:none}}
/* ===== end v21b ===== */
/* ============ v23 Dimensional luxury type system — Barry 2026-09-20 ============ */
/* Research: research_notes/luxury-typography-detail-20260920/report.md              */
/* Order: hero(1) -> headline system(3) -> eyebrows(6) -> numerals(5) -> accents(2)  */
/* -> ghost numerals(4) -> buttons(7). Global grain already live (body::after).      */
/* Final-order overrides: these win over all earlier version layers.                */
:root{--v23-metal:linear-gradient(178deg,#7a5a16 0%,#c99b33 20%,#f4d47c 36%,#fffbe9 46%,#eec96f 55%,#a87c1e 72%,#6b4e12 100%);
--v23-metal-soft:linear-gradient(178deg,#a87c1e 0%,#f4d47c 38%,#fffbe9 52%,#d4af37 66%,#7a5a16 100%);
--v23-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.16'/%3E%3C/svg%3E")}
/* warm the ground: charcoal, never black */
:root{--bg:#131009;--surface:#171310;--surface-2:#1e1813;--night:#131009;--night-2:#1a1510}
/* 1 · hero headline: 7-stop champagne + grain inside the letters + 1px bevel + dark halo/gold aura + slow sheen */
.hero h1{font-family:'Cinzel',serif;font-weight:800;letter-spacing:-.02em;
background-image:var(--v23-grain),linear-gradient(105deg,rgba(255,251,233,0) 42%,rgba(255,251,233,0) 46%,rgba(255,251,233,.9) 50%,rgba(255,251,233,0) 54%,rgba(255,251,233,0) 58%),var(--v23-metal);
background-size:160px 160px,230% 100%,100% 100%;background-position:0 0,125% 0,0 0;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;
text-shadow:0 -1px 0 rgba(255,251,233,.55), 0 1px 1px rgba(20,10,0,.85), 0 6px 14px rgba(0,0,0,.6), 0 0 26px rgba(212,175,55,.35);filter:none;animation:v23-sheen 8s ease-in-out infinite}
@keyframes v23-sheen{0%,100%{background-position:0 0,125% 0,0 0}50%{background-position:0 0,-25% 0,0 0}}
@media (prefers-reduced-motion:reduce){.hero h1{animation:none}}
.hero h1 em{display:block;font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:.72em;letter-spacing:.005em;line-height:1.08;margin-top:.14em;
background-image:var(--v23-metal-soft);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;
text-shadow:0 -1px 0 rgba(255,251,233,.45), 0 1px 1px rgba(20,10,0,.8), 0 5px 14px rgba(0,0,0,.6);filter:none;}
.hero .overline{font-size:.69rem;letter-spacing:.3em;color:var(--gold-bright)}
/* 3 · section headline system: metallic Cinzel + grain + bevel + hairline rules */
.section:not(.booking) h2,.energy h2{font-family:'Cinzel',serif;font-weight:700;letter-spacing:-.015em;line-height:1.04;
background-image:var(--v23-grain),var(--v23-metal);background-size:150px 150px,100% 100%;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;filter:none;
text-shadow:0 -1px 0 rgba(255,251,233,.5), 0 1px 1px rgba(20,10,0,.85), 0 4px 12px rgba(0,0,0,.55);filter:none;
padding-top:.22em;border-top:1px solid rgba(201,162,39,.5);max-width:12.5ch}
.section:not(.booking) h2:after,.energy h2:after{height:1px;background:linear-gradient(90deg,rgba(201,162,39,.9),rgba(201,162,39,.28) 55%,transparent);animation:none}
/* booking keeps its chiseled-bronze identity — Cinzel cut only */
.booking h2{font-family:'Cinzel',serif;font-weight:800;letter-spacing:-.01em;font-size:clamp(2.2rem,4.6vw,4.2rem);max-width:13ch}
/* tertiary headlines join the display system */
.package h3,.party-card h4,.private-pricing-head h3,.addon-menu h3,.production h3,.residency h3,.faq h3{font-family:'Cinzel',serif;font-weight:700;letter-spacing:.01em}
/* 6 · eyebrows: tiny-vs-giant tension */
.kicker{font-size:.69rem;letter-spacing:.3em;color:var(--gold-bright)}
/* 5 · oversized metallic numerals */
.package .price,.party-card .price{font-family:'Cinzel',serif;font-weight:800;font-size:clamp(2.7rem,5vw,4rem);line-height:1;
background-image:var(--v23-grain),linear-gradient(178deg,#e8c76a 12%,#fff7dd 44%,#a8822a 68%,#6b4e12 100%);background-size:150px 150px,100% 100%;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;filter:none;
text-shadow:0 2px 0 rgba(20,10,0,.6), 0 8px 18px rgba(0,0,0,.5);filter:none;}
.addon-price{font-family:'Cinzel',serif;font-weight:700;font-size:1.45rem;background-image:var(--v23-metal-soft);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.hero-meta strong{font-family:'Cinzel',serif;font-weight:800;font-size:1.85rem;background-image:var(--v23-metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.year-stamp b{background-image:var(--v23-metal-soft);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.how-num{font-family:'Cinzel',serif;font-weight:800;background-image:var(--v23-metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
/* 2 · italic accent-word mixing: Cormorant gold inside Cinzel headlines */
em.acc,.about-copy blockquote em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;letter-spacing:0;padding-right:.07em;
background-image:var(--v23-metal-soft);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
text-shadow:0 -1px 0 rgba(255,251,233,.4), 0 2px 6px rgba(0,0,0,.5);filter:none;}
.hero .tagline em.acc{font-size:1.08em}
/* 4 · ghost numerals behind sections */
#about,#packages,#book{position:relative}
#about:before,#packages:before,#book:before{position:absolute;top:1.2rem;right:clamp(1rem,4vw,3.5rem);font-family:'Cinzel',serif;font-weight:800;font-size:clamp(7rem,15vw,12.5rem);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(201,162,39,.16);pointer-events:none;user-select:none;z-index:0}
#about:before{content:"01"}#packages:before{content:"06"}#book:before{content:"09"}
#about .inner,#packages .inner,#book .inner{position:relative;z-index:1}
/* v23b mobile fix — Barry 2026-09-25: ghost numerals + kicker hairlines
   overlap body text on phones. Decorative layers stand down on mobile. */
@media(max-width:900px){
#about:before,#packages:before,#book:before{display:none!important}
.pe-kicker:before,.pe-kicker:after{display:none!important}
/* (specificity bump: pe-letterforms.css loads after pe-main.css) */
.kicker.pe-kicker:before,.kicker.pe-kicker:after{display:none!important}
}
/* 7 · buttons: satin gold kept, labels engraved (pressed-in, never glowing) */
.btn-primary{background:linear-gradient(180deg,#d3a94e 0%,#bd8f32 45%,#96701a 100%);color:#2a1d05;border:1px solid rgba(74,50,8,.9);
text-shadow:0 1px 0 rgba(255,246,214,.6),0 -1px 1px rgba(60,38,0,.4);
box-shadow:0 0 0 1px rgba(24,14,2,.9),inset 0 -3px 8px rgba(74,42,4,.45),0 10px 26px rgba(0,0,0,.55),0 0 26px rgba(232,195,108,.22)}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.06)}
.mobile-cta{text-shadow:0 1px 0 rgba(255,246,214,.5)}
/* ===== end v23 ===== */
/* ============ v21c NJ residency map — Barry 2026-09-19 ============ */
.residency-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.nj-map{margin:0;position:relative;padding:1.15rem 1.05rem 1.8rem;background:linear-gradient(180deg,rgba(24,19,9,.94),rgba(8,7,5,.96));border:1px solid rgba(216,178,74,.6);box-shadow:0 0 0 3px #0b0a08,0 0 0 4px rgba(216,178,74,.28),0 26px 60px rgba(0,0,0,.62),0 0 44px rgba(216,178,74,.12)}
.nj-map:before{content:"";position:absolute;inset:7px;border:1px solid rgba(216,178,74,.3);pointer-events:none}
.nj-map svg{display:block;width:100%;height:auto;position:relative}
.nj-map figcaption{margin-top:1rem;text-align:center;position:relative}
.nj-map figcaption strong{display:block;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:#f2d98c;font-weight:600}
.nj-map figcaption span{display:block;margin-top:.35rem;font-size:.84rem;font-style:italic;color:rgba(243,232,200,.72)}
@media(max-width:900px){.residency-grid{grid-template-columns:1fr}.nj-map{max-width:300px;margin-inline:auto}}
/* ===== end v21c ===== */
/* ============ v21d About fixes — Barry 2026-09-20 ============ */
/* 1. Credential labels sit INSIDE the gold frame, never on the border line. */
.credential{padding-left:1.15rem;padding-right:1.15rem}
@media(max-width:620px){.credential{padding:1.5rem 1.15rem 1.25rem}}
/* 2. The vow's giant decorative quote-mark was bleeding upward over the NOW
   credential row — the vow already opens with a literal quote character. */
.about-copy blockquote.barry-vow:before{display:none}
/* ===== end v21d ===== */
/* ============ v21k Fresh Drop — weekly rotation spotlight (Barry 2026-09-20) ============ */
.fresh-drop{margin:1.5rem 0 2rem;padding:1.5rem;border:1px solid rgba(212,175,55,.35);border-radius:14px;background:linear-gradient(160deg,rgba(212,175,55,.08),rgba(0,0,0,.25));position:relative;overflow:hidden}
.fresh-drop-head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem}
.fresh-badge{display:inline-flex;align-items:center;gap:.5rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:#f5d67b}
.fresh-pulse{width:.6rem;height:.6rem;border-radius:50%;background:#f5d67b;box-shadow:0 0 10px #f5d67b;animation:freshPulse 1.8s ease-in-out infinite}
@keyframes freshPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.55}}
.fresh-note{margin:0;color:rgba(245,245,240,.65);font-size:.9rem}
.fresh-drop-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.fresh-drop-grid .shot{margin:0}
@media(max-width:700px){.fresh-drop-grid{grid-template-columns:1fr}}
/* ===== end v21k ===== */
  /* Fresh Drop anti-stretch (2026-09-20): spotlight media always keeps its proportions, never distorts */
  .fresh-drop-grid .shot.fresh-clip video{width:100%;height:auto;display:block;background:#000}
  .fresh-drop-grid .shot.fresh-photo img{width:100%;height:auto;display:block;background:#0d0e12}
/* ============ v26b Gallery video framing — Barry 2026-09-20 ============ */
/* Clips + reels are portrait-native: give them 9:16 frames and show the FULL
   frame with object-fit:contain — never cover-cropped, never stretched.
   (Beats the older 4/3 + cover layers that cropped portrait clips.) */
.nights-grid.is-clips .shot,.nights-grid.is-reels .shot{aspect-ratio:9/16}
.nights-grid.is-clips .shot video,.nights-grid.is-reels .shot video{width:100%;height:100%;object-fit:contain;background:#000}
/* ===== end v26b ===== */
/* ============ v26c Section-headline detail pass — Barry 2026-09-20 ============ */
/* "Make the text graphics more high quality detailed." Replaces the v21b rule A
   treatment with a richer cast-metal build: specular top-edge light, fine grain,
   large-scale patina mottling, and an 11-stop polished champagne gradient, with a
   true bevel (light catchlight above, chisel shadow below), deep lift, and gold
   ambience. Final-order: beats all earlier headline layers. */
.section.about h2,.section.services h2,.section.areas h2,.section.how h2{background:linear-gradient(180deg,rgba(255,255,255,.9) 0%,rgba(255,250,235,.45) 7%,rgba(255,255,255,0) 16%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.02' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23m)' opacity='0.5'/%3E%3C/svg%3E"),linear-gradient(176deg,#fffef9 0%,#fbf3dd 10%,#e6d3a4 22%,#fffbef 30%,#c8aa70 40%,#f8eed4 48%,#d8be87 56%,#fffdf4 64%,#b6985e 74%,#f3e4be 84%,#a78d50 100%);background-size:100% 100%,140px 140px,300px 300px,100% 100%;background-blend-mode:screen,overlay,soft-light,normal;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(64,42,10,.55);text-shadow:0 -1px 1px rgba(255,251,235,.55), 0 2px 0 rgba(18,10,1,.92), 0 14px 30px rgba(0,0,0,.65), 0 0 44px rgba(240,214,150,.22);filter:none;}
/* ===== end v26c ===== */
/* ============ v26d Hero "Entertainment." texture — Barry 2026-09-20 ============ */
/* "More texture inside the lettering, keep the shimmer." Cast-metal build for the
   italic hero em: specular top-edge light, fine grain + large patina mottling
   inside the letterforms, 11-stop champagne gradient, true bevel — with the slow
   sheen sweep preserved. Final-order: beats the v23 hero em rule. */
.hero h1 em{background-image:linear-gradient(180deg,rgba(255,255,255,.85) 0%,rgba(255,250,235,.4) 8%,rgba(255,255,255,0) 18%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.02' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23m)' opacity='0.5'/%3E%3C/svg%3E"),linear-gradient(105deg,rgba(255,251,233,0) 42%,rgba(255,251,233,0) 46%,rgba(255,251,233,.9) 50%,rgba(255,251,233,0) 54%,rgba(255,251,233,0) 58%),linear-gradient(176deg,#fffef9 0%,#fbf3dd 10%,#e6d3a4 22%,#fffbef 30%,#c8aa70 40%,#f8eed4 48%,#d8be87 56%,#fffdf4 64%,#b6985e 74%,#f3e4be 84%,#a78d50 100%);background-size:100% 100%,140px 140px,300px 300px,230% 100%,100% 100%;background-position:0 0,0 0,0 0,125% 0,0 0;background-blend-mode:screen,overlay,soft-light,screen,normal;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;text-shadow:0 -1px 1px rgba(255,251,235,.5), 0 2px 0 rgba(18,10,1,.9), 0 10px 26px rgba(0,0,0,.65), 0 0 34px rgba(240,214,150,.28);filter:none;animation:v26d-sheen 8s ease-in-out infinite}
@keyframes v26d-sheen{0%,100%{background-position:0 0,0 0,0 0,125% 0,0 0}50%{background-position:0 0,0 0,0 0,-25% 0,0 0}}
@media (prefers-reduced-motion:reduce){.hero h1 em{animation:none}}
/* ===== end v26d ===== */

/* ============ v27 "nightlife wedding monster" bars & clubs CTA — Barry 2026-09-20 ============ */
.club-monster{position:relative;margin:2.2rem 0 0;padding:clamp(2.2rem,5vw,3.6rem) clamp(1.2rem,4vw,3rem);text-align:center;border:1px solid rgba(216,178,74,.38);border-radius:20px;background:radial-gradient(120% 140% at 50% 0%,rgba(255,45,120,.14) 0%,rgba(0,0,0,0) 46%),radial-gradient(130% 160% at 50% 112%,rgba(232,182,76,.14) 0%,rgba(0,0,0,0) 52%),linear-gradient(180deg,#0d0805 0%,#17100a 60%,#0d0805 100%);overflow:hidden}
.club-monster::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(115deg,rgba(255,45,120,.055) 0 2px,transparent 2px 10px);opacity:.65}
.club-monster-title{position:relative;margin:0 0 .7rem;font-size:clamp(3rem,9.5vw,6.8rem);line-height:.95;font-weight:900;text-transform:uppercase;letter-spacing:.02em;background-image:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,250,235,.38) 10%,rgba(255,255,255,0) 22%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E"),linear-gradient(176deg,#fffef9 0%,#fbf3dd 12%,#e6d3a4 24%,#fffbef 32%,#c8aa70 42%,#f8eed4 52%,#d8be87 60%,#fffdf4 68%,#b6985e 80%,#f3e4be 90%,#a78d50 100%);background-size:100% 100%,140px 140px,100% 100%;background-blend-mode:screen,overlay,normal;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 -1px 1px rgba(255,251,235,.55), 0 3px 0 rgba(18,10,1,.92), 0 0 22px rgba(255,45,120,.5), 0 0 46px rgba(232,182,76,.3);filter:none;}
.club-monster-title span{font-size:.55em;vertical-align:.12em}
.club-monster-copy{position:relative;max-width:46rem;margin:0 auto 1.5rem;color:#f3ead6;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}
.club-monster-btn{position:relative;display:inline-block;font-size:clamp(1.1rem,2.6vw,1.4rem);font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:1.05rem 2.8rem;border-radius:999px;color:#1a1005 !important;background:linear-gradient(180deg,#ffe9a8,#e8b64c 55%,#c9962e);box-shadow:0 0 0 1px rgba(255,233,168,.7) inset,0 6px 18px rgba(0,0,0,.55),0 0 28px rgba(255,45,120,.45),0 0 60px rgba(232,182,76,.35);animation:monster-pulse 2.6s ease-in-out infinite}
@keyframes monster-pulse{0%,100%{box-shadow:0 0 0 1px rgba(255,233,168,.7) inset,0 6px 18px rgba(0,0,0,.55),0 0 28px rgba(255,45,120,.45),0 0 60px rgba(232,182,76,.35)}50%{box-shadow:0 0 0 1px rgba(255,233,168,.95) inset,0 6px 18px rgba(0,0,0,.55),0 0 46px rgba(255,45,120,.7),0 0 95px rgba(232,182,76,.55)}}
@media (prefers-reduced-motion:reduce){.club-monster-btn{animation:none}}
/* ===== end v27 ===== */
/* ============ v31 "Proud" wordmark — MAX DETAIL pass — Barry 2026-09-21 ============ */
/* "Can we get even more details then that?" — push-hard pass on top of the v30
   9-layer stack. Now 15 layers: 3rd faceted cut-light (finer facets), 2nd finer
   brushed-metal pass at a crossed angle, deeper valley patina, micro-pitting /
   granulation for cast-metal realism, faint verdigris dusting in the crevices,
   stronger engraved stroke + crest edge wear, crisper specular streaks.
   Detail without mud — v30's 24k gradient, warm aura, and the glimmer/shine
   sweep stay untouched. "Entertainment." unchanged. Final-order: beats v30.
   (.hero h1 em keeps its v26d identity.) */
.hero h1{font-size:clamp(4.4rem,9.2vw,9.5rem);
background-image:linear-gradient(180deg,rgba(255,255,255,1) 0%,rgba(255,250,235,.62) 6%,rgba(255,255,255,0) 15%),repeating-linear-gradient(88deg,rgba(255,255,255,.14) 0 1px,rgba(255,255,255,0) 1px 8px),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.75'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110' height='110'%3E%3Cfilter id='pit'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.62' numOctaves='2' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23pit)' opacity='0.38'/%3E%3C/svg%3E"),repeating-linear-gradient(90deg,rgba(255,255,255,.14) 0 1px,rgba(255,255,255,0) 1px 3px,rgba(20,10,0,.16) 3px 4px,rgba(0,0,0,0) 4px 8px),repeating-linear-gradient(38deg,rgba(255,250,230,.10) 0 1px,rgba(255,255,255,0) 1px 2px,rgba(30,15,0,.14) 2px 3px,rgba(0,0,0,0) 3px 5px),linear-gradient(115deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 24%,rgba(40,20,0,.28) 52%,rgba(255,255,255,0) 76%,rgba(255,240,200,.16) 100%),linear-gradient(135deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 28%,rgba(40,20,0,.26) 55%,rgba(255,255,255,0) 78%,rgba(255,240,200,.14) 100%),linear-gradient(28deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,0) 20%,rgba(50,25,0,.24) 44%,rgba(255,255,255,0) 66%,rgba(255,240,190,.14) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.012 0.02' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23m)' opacity='0.62'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Cfilter id='p2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.008 0.014' numOctaves='3' seed='23' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p2)' opacity='0.5'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='560'%3E%3Cfilter id='vd'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.005 0.009' numOctaves='3' seed='37' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23vd)' opacity='0.6'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='v'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.03' numOctaves='2' seed='41' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 0.22 0 0 0 0 0.40 0 0 0 0 0.34 0 0 0 -1.0 0.22'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23v)'/%3E%3C/svg%3E"),linear-gradient(105deg,rgba(255,250,220,0) 42%,rgba(255,250,220,0) 46%,rgba(255,250,220,1) 50%,rgba(255,250,220,0) 54%,rgba(255,250,220,0) 58%),linear-gradient(176deg,#ffffff 0%,#fff3b8 6%,#ffd24e 12%,#fffbef 19%,#f5a81e 27%,#ffc93a 35%,#c47a12 43%,#fff0b0 51%,#a05f08 60%,#f0a51f 68%,#8a5008 76%,#f7b92c 85%,#66400a 100%);
background-size:100% 100%,100% 100%,140px 140px,110px 110px,8px 100%,5px 100%,100% 100%,100% 100%,100% 100%,300px 300px,420px 420px,560px 560px,260px 260px,230% 100%,100% 100%;
background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,125% 0,0 0;
background-blend-mode:screen,screen,overlay,overlay,overlay,overlay,soft-light,soft-light,soft-light,soft-light,soft-light,soft-light,soft-light,screen,normal;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
-webkit-text-stroke:1.5px rgba(46,28,8,.8);
text-shadow:0 -2px 1px rgba(255,251,235,.85), 0 -1px 0 rgba(255,255,255,.5), 0 3px 0 rgba(10,5,0,.98), 0 18px 38px rgba(0,0,0,.75), 0 0 96px rgba(255,190,64,.6);filter:none;
animation:v31-sheen 9s ease-in-out infinite}
@keyframes v31-sheen{0%,100%{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,125% 0,0 0}50%{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,-25% 0,0 0}}
@media (prefers-reduced-motion:reduce){.hero h1{animation:none}}
/* Mobile guard: keep the presence proportional on phones (final-order) */
@media(max-width:620px){.hero h1{font-size:clamp(3.9rem,18.4vw,5.3rem)}}
/* ===== end v31 ===== */


/* ================= V6 MILLION-DOLLAR PASS =================
   Warm cinematic grade everywhere · v4 cover art as hero backdrop · metal type on every title */
/* v4 cover art: full-bleed cinematic hero backdrop (sits behind video + scrims) */
.hero{background-image:url("/assets/brand/facebook-cover-v4.png");background-size:cover;background-position:30% 42%;background-repeat:no-repeat}
/* warm the hero video hard: kills the blue uplighting, pushes everything to candlelight gold */
.hero-video{filter:sepia(.45) saturate(1.3) hue-rotate(-28deg) brightness(.96) contrast(1.06)}
/* let the re-graded warm reel imagery read clearly through the slot */
.reel-slot img{filter:saturate(1.12) contrast(1.08) brightness(.82)}
.reel-slot:hover img{filter:saturate(1.15) contrast(1.08) brightness(.9)}
/* every title gets the metal treatment: platinum gold, beveled, glowing */
.section-head h2,.energy h2,.section.services h2,.section.residencies h2,#nights-title,#kind-words-title,.section.areas h2,.section.how h2,.package-media h3,.footer-lead strong,.wz-title,.wz-launch-title{background:linear-gradient(180deg,#ffffff 0%,#f6efdd 30%,#d9cba6 48%,#fbf5e6 58%,#e6d9b8 72%,#fffdf4 88%,#d5c69c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(88,60,16,.5);text-shadow:0 2px 0 rgba(20,12,2,.85), 0 8px 22px rgba(0,0,0,.7), 0 0 28px rgba(240,214,150,.20);filter:none;}
/* small caps labels: rich embossed gold — flat for legibility, never cheap */
.kicker,.tier,.credential b,.service-info small,.day{color:#f3d98c!important;text-shadow:0 1px 0 rgba(0,0,0,.85),0 0 16px rgba(232,195,108,.35)}
/* =============== END V6 =============== */
/* ============ PACKAGE TYPOGRAPHY UPGRADE (2026-09-22) — hero-grade metal ============ */
/* The "Pick your production." header — outranks the V6 neutralize above (!important) */
.packages .section-head h2{font-size:clamp(3rem,6.4vw,6.4rem)!important;letter-spacing:-.02em;
background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.95) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(180deg,#ffffff 0%,#f6efdd 28%,#d9cba6 46%,#fbf5e6 56%,#e6d9b8 70%,#fffdf4 86%,#d5c69c 100%)!important;
background-size:260% 100%,100% 100%!important;background-position:130% 0,0 0!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(88,60,16,.55)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 12px 28px rgba(0,0,0,.8), 0 0 40px rgba(240,214,150,.32)!important;filter:none!important;
animation:pk-sheen 8s ease-in-out infinite}
/* Tier names — bigger, cast-metal, sheened */
.package h3{font-size:2.9rem!important;letter-spacing:-.01em;
background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.9) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(174deg,#fff8d6 0%,#f9e5a8 20%,#e7b84e 36%,#c9962e 50%,#c9962e 58%,#f6d47c 68%,#fff3c0 82%,#b57f1d 94%,#e9c86e 100%);
background-size:260% 100%,100% 100%;background-position:130% 0,0 0;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
-webkit-text-stroke:1px rgba(70,44,8,.6);
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 24px rgba(0,0,0,.75), 0 0 32px rgba(232,195,108,.42);filter:none;
animation:pk-sheen 8s ease-in-out infinite}
/* Prices — bright platinum-gold, deep emboss */
.package .price,.party-card .price{font-size:2.5rem!important;font-weight:700;
background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.9) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(174deg,#ffe9a8 0%,#f3cd6d 28%,#c9962e 50%,#e8bd60 60%,#fff0bd 76%,#c08a1e 100%);
background-size:260% 100%,100% 100%;background-position:130% 0,0 0;
-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
-webkit-text-stroke:1px rgba(70,44,8,.55);
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 20px rgba(0,0,0,.75), 0 0 30px rgba(232,195,108,.45);filter:none;
animation:pk-sheen 9s ease-in-out infinite}
/* "The Party" head — same metal as the tier names */
.private-pricing-head h3{font-size:clamp(2.6rem,5vw,4.6rem)!important;
background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.9) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(174deg,#fff8d6 0%,#f9e5a8 20%,#e7b84e 36%,#c9962e 50%,#c9962e 58%,#f6d47c 68%,#fff3c0 82%,#b57f1d 94%,#e9c86e 100%)!important;
background-size:260% 100%,100% 100%!important;background-position:130% 0,0 0!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(70,44,8,.6)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 24px rgba(0,0,0,.75), 0 0 32px rgba(232,195,108,.42)!important;filter:none!important;
animation:pk-sheen 8s ease-in-out infinite}
.party-card h4{font-size:1.5rem}
/* Tier eyebrows — dimensional foil, outranks the V6 neutralize */
.package .tier,.party-card .tier{background:linear-gradient(180deg,#ffedb8 0%,#f0cd6d 45%,#c9962e 100%)!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
text-shadow:0 1px 0 rgba(0,0,0,.85), 0 0 14px rgba(232,195,108,.45)!important;filter:none!important;font-size:.78rem!important}
@keyframes pk-sheen{0%,55%{background-position:130% 0,0 0}90%,100%{background-position:-130% 0,0 0}}
@media(prefers-reduced-motion:reduce){.packages .section-head h2,.package h3,.package .price,.party-card .price,.private-pricing-head h3{animation:none!important}}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.packages .section-head h2,.package h3,.package .price,.party-card .price,.private-pricing-head h3,.package .tier,.party-card .tier{background:none!important;color:#f3e9d2!important;-webkit-text-fill-color:#f3e9d2!important;-webkit-text-stroke:0!important;filter:none!important;animation:none!important}}
/* ============ END PACKAGE TYPOGRAPHY UPGRADE ============ */
/* ======== FULL-SITE TYPOGRAPHY ELEVATION (2026-09-22) — "4k high-def" ======== */
/* A. Crisp rendering everywhere */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
p,li{letter-spacing:.003em}
.lead{color:#d8d1c1!important;text-shadow:0 2px 12px rgba(0,0,0,.65)}
/* B. Every headline — dimensional million-dollar metal (outranks V6 neutralize) */
.section-head h2,.section h2,.energy h2,.section.services h2,.section.residencies h2,#nights-title,#kind-words-title,.section.areas h2,.section.how h2{background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.95) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(180deg,#ffffff 0%,#f6efdd 28%,#d9cba6 46%,#fbf5e6 56%,#e6d9b8 70%,#fffdf4 86%,#d5c69c 100%)!important;background-size:260% 100%,100% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:1px rgba(88,60,16,.55)!important;text-shadow:0 2px 0 rgba(20,12,2,.9), 0 10px 26px rgba(0,0,0,.8), 0 0 36px rgba(240,214,150,.30)!important;filter:none!important;animation:pk-sheen 9s ease-in-out infinite}
/* C. Sub-heads — cast-metal gold */
.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.faq h3,.area-grid h3,.wz-title,.wz-launch-title{background:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.9) 50%,rgba(255,252,240,0) 55%,transparent 58%),linear-gradient(174deg,#fff8d6 0%,#f9e5a8 20%,#e7b84e 36%,#c9962e 50%,#c9962e 58%,#f6d47c 68%,#fff3c0 82%,#b57f1d 94%,#e9c86e 100%)!important;background-size:260% 100%,100% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:1px rgba(70,44,8,.55)!important;text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 22px rgba(0,0,0,.75), 0 0 30px rgba(232,195,108,.38)!important;filter:none!important;animation:pk-sheen 10s ease-in-out infinite}
.footer-lead strong{background:linear-gradient(174deg,#fff8d6 0%,#f9e5a8 25%,#e7b84e 45%,#c9962e 60%,#f6d47c 78%,#b57f1d 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;text-shadow:0 2px 0 rgba(20,12,2,.9), 0 0 26px rgba(232,195,108,.4)!important;filter:none!important;}
/* D. Quotes — luminous gold serif */
.about-copy blockquote,.quote p{background:linear-gradient(174deg,#fff3d0 0%,#f0d68a 35%,#c9962e 55%,#f6d47c 75%,#fff3c0 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;text-shadow:0 2px 0 rgba(20,12,2,.85), 0 8px 24px rgba(0,0,0,.7), 0 0 30px rgba(232,195,108,.35)!important;filter:none!important;}
/* E. Labels & eyebrows — embossed jewel gold (keeps currentColor kicker lines intact) */
.kicker,.kicker .sec-no,.credential b,.service-info small,.day,.addon-price,.package-badge,.setup-card figcaption strong,.residency .day{color:#f6dc93!important;text-shadow:0 1px 0 rgba(0,0,0,.9),0 2px 10px rgba(0,0,0,.65),0 0 20px rgba(232,195,108,.55)!important;filter:none!important}
/* F. Body text depth on dark */
.about-copy p,.production p,.service-info p,.package p,.party-card p,.addon-body p,.faq p{text-shadow:0 1px 4px rgba(0,0,0,.6)}
@media(prefers-reduced-motion:reduce){.section-head h2,.section h2,.energy h2,.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.faq h3,.area-grid h3,.wz-title,.wz-launch-title{animation:none!important}}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.section-head h2,.section h2,.energy h2,.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.faq h3,.area-grid h3,.wz-title,.wz-launch-title,.footer-lead strong,.about-copy blockquote,.quote p{background:none!important;color:#f3e9d2!important;-webkit-text-fill-color:#f3e9d2!important;-webkit-text-stroke:0!important;filter:none!important;animation:none!important}}
/* ======== END FULL-SITE TYPOGRAPHY ELEVATION ======== */
/* ======== RITZ TYPOGRAPHY PASS (2026-09-22) — DJ-style luxury finish ======== */
/* One display voice: Bodoni Moda (as approved in the 9/22 hero lockup). Cinzel keeps eyebrows/numerals; Cormorant keeps italic accents. */
:root{--rz-brushed:url("/assets/v19-ornaments/tex-brushed-256.png");
--rz-sheen:linear-gradient(105deg,transparent 42%,rgba(255,252,240,0) 45%,rgba(255,253,242,.95) 50%,rgba(255,252,240,0) 55%,transparent 58%);
--rz-gold:linear-gradient(174deg,#fff8d6 0%,#f9e5a8 18%,#e7b84e 34%,#c9962e 48%,#c9962e 55%,#f6d47c 64%,#fff3c0 78%,#b57f1d 92%,#e9c86e 100%);
--rz-champagne:linear-gradient(180deg,#ffffff 0%,#fbf3df 22%,#e6d3a3 40%,#b28c3e 50%,#f2e2b8 60%,#fffdf4 72%,#d3ba87 88%,#f0dfb2 100%)}
@keyframes rz-sheen{0%,55%{background-position:130% 0,0 0,0 0}90%,100%{background-position:-130% 0,0 0,0 0}}
@keyframes rz-sheen-2{0%,55%{background-position:130% 0,0 0}90%,100%{background-position:-130% 0,0 0}}
/* Tier 1 — section headlines: champagne metal, brushed texture, travelling sheen, bevel + engraved edge + aura */
.section:not(.booking) h2,.energy h2,#nights-title,#kind-words-title{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:600;letter-spacing:-.02em;
background-image:var(--rz-sheen),var(--rz-brushed),var(--rz-champagne)!important;background-size:260% 100%,190px 190px,100% 100%!important;background-blend-mode:screen,soft-light!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(88,60,16,.5)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 10px 26px rgba(0,0,0,.8), 0 0 36px rgba(240,214,150,.28)!important;filter:none!important;
animation:rz-sheen 9s ease-in-out infinite}
/* Tier 2 — package names + "The Party" head: struck-gold metal, brushed texture, sheen, deep bevel + glow */
.package h3,.party-card h4,.private-pricing-head h3{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:700;letter-spacing:.01em;
background-image:var(--rz-sheen),var(--rz-brushed),var(--rz-gold)!important;background-size:260% 100%,190px 190px,100% 100%!important;background-blend-mode:screen,soft-light!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(70,44,8,.55)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 10px 26px rgba(0,0,0,.8), 0 0 34px rgba(232,195,108,.42)!important;filter:none!important;
animation:rz-sheen 8s ease-in-out infinite}
/* Tier 2b — prices: monumental struck gold */
.package .price,.party-card .price{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:700;font-size:clamp(2.6rem,4.2vw,3.5rem)!important;line-height:1;
background-image:var(--rz-sheen),var(--rz-brushed),var(--rz-gold)!important;background-size:260% 100%,190px 190px,100% 100%!important;background-blend-mode:screen,soft-light!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(70,44,8,.55)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 10px 24px rgba(0,0,0,.8), 0 0 34px rgba(232,195,108,.45)!important;filter:none!important;
animation:rz-sheen 7s ease-in-out infinite}
/* Tier 3 — sub-heads: cast-gold metal + sheen (no brushed texture at small sizes, keeps them crisp) */
.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.area-grid h3,.wz-title,.wz-launch-title{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:700;
background-image:var(--rz-sheen),var(--rz-gold)!important;background-size:260% 100%,100% 100%!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:.75px rgba(70,44,8,.5)!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 20px rgba(0,0,0,.7), 0 0 26px rgba(232,195,108,.35)!important;filter:none!important;
animation:rz-sheen-2 12s ease-in-out infinite}
/* FAQ head sits on gold — chiseled dark bronze, matching the booking h2 */
.booking .faq h3{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:700;
background:linear-gradient(177deg,#57400e 0%,#8a6a1c 12%,#3a2b07 28%,#6e5314 42%,#2a1e04 56%,#59400f 70%,#201503 84%,#463307 100%)!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
-webkit-text-stroke:1px rgba(28,18,2,.7)!important;
text-shadow:0 1px 0 rgba(255,243,208,.65), 0 6px 16px rgba(52,32,0,.5)!important;filter:none!important;animation:none!important}
/* Tier 4 — "Bars & Clubs" joins the serif voice; keeps its chrome gradient + club glow */
.club-monster-title{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;font-weight:700;letter-spacing:.015em}
/* Signature lines: hero tagline, retainer, package quotes — luminous metal */
.lockup-tag{background:linear-gradient(180deg,#fffdf4 0%,#f2e2b8 45%,#c8a05e 60%,#fbf3df 80%,#e6d3a3 100%)!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 6px 18px rgba(0,0,0,.8), 0 0 24px rgba(240,214,150,.3)!important;filter:none!important;}
.retainer{font-family:"Bodoni Moda",Georgia,"Times New Roman",serif!important;
background-image:var(--rz-sheen),var(--rz-gold)!important;background-size:260% 100%,100% 100%!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
text-shadow:0 2px 0 rgba(20,12,2,.9), 0 8px 22px rgba(0,0,0,.75), 0 0 28px rgba(232,195,108,.35)!important;filter:none!important;
animation:rz-sheen-2 11s ease-in-out infinite}
.package-tag{background:linear-gradient(180deg,#fbf3df 0%,#e6d3a3 55%,#c8a05e 100%)!important;
-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;
text-shadow:0 1px 3px rgba(0,0,0,.7)!important;filter:none!important;}
/* Body hierarchy: quieter support text so the metal headlines own the stage */
.lead{color:#d8d1c1!important}
@media(prefers-reduced-motion:reduce){.section:not(.booking) h2,.energy h2,#nights-title,#kind-words-title,.package h3,.party-card h4,.private-pricing-head h3,.package .price,.party-card .price,.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.area-grid h3,.wz-title,.wz-launch-title,.retainer{animation:none!important}}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.section:not(.booking) h2,.energy h2,#nights-title,#kind-words-title,.package h3,.party-card h4,.private-pricing-head h3,.package .price,.party-card .price,.package-media h3,.setup-choice-head h3,.addon-menu-head h3,.production h3,.service-info h3,.residency h3,.how-steps h3,.area-grid h3,.wz-title,.wz-launch-title,.retainer,.lockup-tag,.package-tag{background:none!important;color:#f3e9d2!important;-webkit-text-fill-color:#f3e9d2!important;-webkit-text-stroke:0!important;filter:none!important;animation:none!important}.booking .faq h3{background:none!important;color:#3a2708!important;-webkit-text-fill-color:#3a2708!important;-webkit-text-stroke:0!important;filter:none!important}}
/* ======== END RITZ TYPOGRAPHY PASS ======== */
/* Barry 2026-09-23: small labels stay solid bright gold for legibility */
.packages .section-head h2,.private-pricing-head h3,.kicker,.kicker .sec-no,.sec-no,.tier,.addon-price,.retainer{background:none!important;color:#f0d68a!important;-webkit-text-fill-color:#f0d68a!important;-webkit-text-stroke:0!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.55))!important;animation:none!important}
/* Barry 2026-09-24: ALL package lettering returns to dimensional metal — BRIGHT champagne gold, luminous not muddy.
   (2026-09-23's solid-gold flatten was a step back; the metalwork was right, only the dark brown stops were wrong.) */
@keyframes price-sheen{0%,55%{background-position:130% 0,0 0}92%,100%{background-position:-130% 0,0 0}}
.package .price,.party-card .price,.package h3,.party-card h4,.packages .section-head h2,.private-pricing-head h3,.retainer,.package .tier,.party-card .tier{background-image:linear-gradient(115deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.55) 50%,rgba(255,255,255,0) 60%),linear-gradient(176deg,#fffdf2 0%,#ffedb8 16%,#f9dd8a 32%,#eec25e 46%,#f8d87f 58%,#ffeaa9 72%,#e3b654 86%,#fff4c6 100%)!important;background-size:280% 100%,100% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:1px rgba(255,240,200,.28)!important;text-shadow:0 1px 0 rgba(255,252,238,.55), 0 3px 3px rgba(28,17,2,.55), 0 12px 28px rgba(0,0,0,.55), 0 0 34px rgba(255,213,116,.40)!important;filter:none!important;animation:price-sheen 10s ease-in-out infinite}
@supports not ((background-clip:text) or (-webkit-background-clip:text)){.package .price,.party-card .price,.package h3,.party-card h4,.packages .section-head h2,.private-pricing-head h3,.retainer,.package .tier,.party-card .tier{background:none!important;color:#f3e9d2!important;-webkit-text-fill-color:#f3e9d2!important;-webkit-text-stroke:0!important;text-shadow:0 2px 8px rgba(0,0,0,.55)!important;filter:none!important;animation:none!important}}
/* Booking h2 keeps its bespoke dark-bronze-on-gold design (built for the gold section) */
.booking h2{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E"),linear-gradient(177deg,#57400e 0%,#8a6a1c 12%,#3a2b07 28%,#6e5314 42%,#2a1e04 56%,#59400f 70%,#201503 84%,#463307 100%)!important;background-size:220px 220px,100% 100%!important;background-blend-mode:soft-light!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:1px rgba(28,18,2,.7)!important;text-shadow:0 1px 0 rgba(255,243,208,.65), 0 10px 22px rgba(52,32,0,.55), 0 3px 6px rgba(52,32,0,.6)!important;filter:none!important;animation:none!important}

/* ============ 2026-09-28 · PRICE/TIER ELEVATION (Barry: "looks simple not done up") ============
   One definitive CSS-only treatment — no JS dependency. Bright dimensional
   champagne metal, luminous at rest: the sheen highlight sits CENTERED when
   animations are parked (mobile), and sweeps on desktop. Deepest stop stays
   luminous gold — never muddy brown. */
/* ---- prices: monumental bright champagne ---- */
.packages .package .price,.packages .party-card .price{
  font-family:'Cinzel',Didot,serif!important;font-weight:800!important;
  font-size:clamp(2.9rem,5vw,3.9rem)!important;line-height:1.04!important;
  margin:.4rem 0 .9rem!important;padding-bottom:.1em!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background-image:
    linear-gradient(105deg,rgba(255,252,240,0) 43%,rgba(255,253,242,.95) 50%,rgba(255,252,240,0) 57%),
    linear-gradient(178deg,#fffdf6 0%,#ffedb9 15%,#f6d06f 29%,#dda93f 41%,#fff7da 51%,#f0c464 61%,#c78f24 73%,#ffefb8 85%,#d9a437 100%)!important;
  background-size:280% 100%,100% 100%!important;
  background-position:50% 0,0 0!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-stroke:1px rgba(96,62,12,.6)!important;
  text-shadow:0 2px 0 rgba(30,18,2,.9),0 10px 26px rgba(0,0,0,.75),0 0 34px rgba(255,200,90,.45)!important;
  filter:none!important;
  animation:pe-price-sheen 8s ease-in-out infinite!important;
}
@keyframes pe-price-sheen{0%{background-position:130% 0,0 0}45%,100%{background-position:-130% 0,0 0}}
/* ---- tier names: dimensional champagne ---- */
.packages .package h3,.packages .party-card h4{
  font-family:'Bodoni Moda',Didot,serif!important;font-weight:700!important;
  font-size:clamp(2rem,3.6vw,2.7rem)!important;letter-spacing:.015em!important;
  margin:.35rem 0 .25rem!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background-image:linear-gradient(180deg,#fffdf4 0%,#ffedb8 24%,#f2cb68 44%,#d9a437 54%,#fff4c6 66%,#e6b856 80%,#a87c1e 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-stroke:.8px rgba(96,62,12,.55)!important;
  text-shadow:0 2px 0 rgba(30,18,2,.85),0 8px 20px rgba(0,0,0,.7),0 0 26px rgba(255,200,90,.35)!important;
  filter:none!important;animation:none!important;
}
/* ---- package buttons: meet-or-beat the hero gold ---- */
.packages .package .btn,.packages .party-card .btn{
  background:linear-gradient(135deg,#f2d67f 0%,#d9a83f 48%,#9c6f16 100%)!important;
  color:#1a1104!important;border:1px solid rgba(255,242,200,.7)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 10px 26px rgba(217,168,63,.4)!important;
  text-shadow:none!important;font-weight:800!important;
}
.packages .package .btn:hover,.packages .party-card .btn:hover{filter:brightness(1.09)!important}
/* ---- price/tagline breathing room: no more collisions ---- */
.packages .package .package-tag{margin-top:.15rem!important}
