:root{--bg:#070707;--panel:#101010;--ink:#f5f1e9;--muted:#bdb8ae;--gold:#c8a15a;--gold-soft:#d8b66f;--line:rgba(216,182,111,.35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-header{height:76px;position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;padding:0 clamp(22px,5vw,72px);background:rgba(5,5,5,.92);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px)}.brand img{width:145px;display:block}.nav{margin-left:auto;display:flex;gap:28px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.16em}.nav a:hover,.wedding-nav{color:var(--gold-soft)}.header-cta{margin-left:30px;padding:13px 20px;background:transparent;color:var(--ink);border:1px solid var(--gold);font-size:11px;font-weight:700;letter-spacing:.18em}.mobile-menu-toggle{display:none}.hero{min-height:820px;position:relative;display:flex;align-items:center;padding:130px clamp(28px,7vw,110px) 70px;background:url('gallery-1.jpg') center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 48%,rgba(0,0,0,.25) 100%),linear-gradient(0deg,rgba(0,0,0,.45),transparent)}.hero-copy{position:relative;z-index:2;max-width:850px}.eyebrow{color:var(--gold-soft);font-size:12px;font-weight:700;letter-spacing:.28em;margin:0 0 22px}.hero h1,.section-head h2,.direct h2,.about h2,.inquiry h2,.booking-panel h2{font-family:Oswald,sans-serif;font-weight:600;letter-spacing:.01em;margin:0;line-height:.94}.hero h1{font-size:clamp(64px,8vw,118px)}.lead{max-width:640px;font-size:18px;line-height:1.7;color:#ddd6cb;margin:30px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{border:1px solid var(--gold);padding:18px 24px;min-width:210px;letter-spacing:.12em;font-size:11px;font-weight:700;cursor:pointer}.btn-light{background:var(--ink);color:#080808;border-color:var(--ink)}.btn-outline{background:transparent;color:var(--ink)}.btn b{font-size:20px}.hero-facts{display:flex;gap:0;margin-top:70px;border-top:1px solid var(--line);max-width:700px}.hero-facts div{padding:18px 38px 0 0;margin-right:38px;border-right:1px solid var(--gold)}.hero-facts b,.hero-facts span{display:block}.hero-facts b{font-size:10px;letter-spacing:.18em}.hero-facts span{font-size:9px;color:#888;margin-top:8px;letter-spacing:.12em}.promise{position:absolute;right:5vw;bottom:70px;z-index:2;border:1px solid var(--line);background:rgba(10,10,10,.75);padding:18px 24px;min-width:300px}.promise span{display:block;color:var(--gold);font-size:9px;letter-spacing:.2em;margin-bottom:9px}.promise strong{font-size:13px}.routing,.reviews,.gallery,.setup-showcase{padding:100px clamp(28px,5vw,72px)}.section-head{max-width:900px;margin-bottom:40px}.section-head h2{font-size:clamp(46px,5.5vw,78px)}.section-head>p:not(.eyebrow):not(.stars){color:var(--muted);line-height:1.7}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.route-card{min-height:480px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.25)}.route-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:.4s}.route-card.club .route-bg{background-image:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.1)),url('gallery-2.jpg')}.route-card.private .route-bg{background-image:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.1)),url('gallery-7.jpeg')}.route-card.wedding .route-bg{background-image:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.1)),url('gallery-10.jpeg')}.route-card:hover .route-bg{transform:scale(1.035)}.route-content{position:absolute;inset:auto 28px 28px;z-index:2}.route-content span,.route-content a{font-size:10px;letter-spacing:.16em;color:var(--gold-soft);font-weight:700}.route-content h3{font-family:Oswald,sans-serif;font-size:34px;margin:12px 0}.route-content p{color:#ddd;line-height:1.55;font-size:13px;min-height:62px}.direct{display:grid;grid-template-columns:1.05fr .95fr;min-height:720px;background:#0b0b0b}.direct>div:first-child{padding:100px clamp(28px,5vw,72px)}.direct h2{font-size:clamp(54px,6vw,88px)}.direct-lead{max-width:600px;color:var(--muted);line-height:1.7;margin:28px 0 34px}.direct-photo{background:linear-gradient(90deg,#0b0b0b 0%,transparent 30%),url('gallery-9.jpeg') center/cover no-repeat}.service-lines{margin-top:45px;max-width:700px}.service-lines div{display:grid;grid-template-columns:45px 1fr 1.4fr;gap:15px;padding:18px 0;border-top:1px solid rgba(255,255,255,.25);align-items:center}.service-lines span{color:var(--gold);font-size:10px}.service-lines b{font-family:Oswald;font-size:18px}.service-lines small{color:#8f8b84}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding:110px clamp(28px,7vw,110px);align-items:center}.about-photo img{width:100%;max-height:620px;object-fit:cover;filter:grayscale(1)}.about-copy{max-width:680px}.about h2{font-size:clamp(50px,5vw,76px)}.about-copy>p:not(.eyebrow):not(.statement){color:var(--muted);line-height:1.8}.statement{color:var(--gold-soft);font-family:Oswald;font-size:30px;line-height:1.1;margin-top:34px}.reviews{background:#0c0c0c}.stars{color:#fbbc04;font-size:18px}.stars span{color:var(--muted);font-size:12px;margin-left:10px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-grid article{border:1px solid var(--line);padding:34px;background:#111}.review-meta{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.13em}.review-meta span{color:var(--gold-soft)}.review-grid p{line-height:1.8;color:#d6d0c6;font-size:14px}.text-link{display:inline-block;color:var(--gold-soft);font-size:11px;letter-spacing:.15em;font-weight:700;margin-top:26px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:310px;gap:10px}.gallery-item{border:0;padding:0;background:none;cursor:pointer;overflow:hidden}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.03)}.inquiry{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding:110px clamp(28px,7vw,110px);background:#090909}.inquiry-copy h2{font-size:clamp(52px,5vw,76px)}.inquiry-copy>p:not(.eyebrow){color:var(--muted);line-height:1.7}.smart-route{border-top:1px solid var(--line);margin-top:50px;padding-top:24px;display:grid;gap:13px;font-size:10px;letter-spacing:.12em}.smart-route b{color:var(--gold)}.inquiry-form{border:1px solid rgba(255,255,255,.35);padding:34px;background:#111}.type-switch{display:flex;gap:8px;margin-bottom:32px}.type-switch button{flex:1;padding:13px 8px;background:transparent;color:#aaa;border:1px solid #555;font-size:9px;font-weight:700;letter-spacing:.1em}.type-switch button.active{background:var(--gold-soft);color:#080808;border-color:var(--gold-soft)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-grid label{color:var(--gold-soft);font-size:9px;font-weight:700;letter-spacing:.15em}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea{display:block;width:100%;margin-top:9px;padding:13px 0;background:transparent;color:white;border:0;border-bottom:1px solid #777;outline:0}.form-grid textarea{resize:vertical}.inquiry-form>.btn{margin-top:28px}footer{min-height:100px;border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;padding:25px clamp(28px,5vw,72px);font-size:9px;letter-spacing:.15em;color:#888}footer img{width:110px;margin-right:auto}.booking-modal,.gallery-lightbox{display:none;position:fixed;inset:0;z-index:100}.booking-modal.open,.gallery-lightbox.open{display:block}.booking-backdrop,.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86)}.booking-panel{position:relative;z-index:2;width:min(760px,92vw);margin:12vh auto;background:#111;border:1px solid var(--gold);padding:42px}.booking-close,.gallery-lightbox-close{position:absolute;right:18px;top:14px;background:none;border:0;color:white;font-size:30px;cursor:pointer}.booking-panel h2{font-size:48px}.booking-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:30px}.booking-options a{border:1px solid #555;padding:24px 18px;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.booking-options a:hover{border-color:var(--gold)}.booking-options b{font-family:Oswald;font-size:22px}.booking-options span{color:var(--gold-soft);font-size:9px;letter-spacing:.1em}.gallery-lightbox-inner{position:relative;z-index:2;width:min(1100px,90vw);height:82vh;margin:9vh auto}.gallery-lightbox-inner img{width:100%;height:100%;object-fit:contain}.gallery-lightbox-close{z-index:3}.modal-open{overflow:hidden}
@media(max-width:900px){.site-header{height:68px}.brand img{width:120px}.header-cta{display:none}.mobile-menu-toggle{display:flex;margin-left:auto;width:34px;height:30px;background:none;border:0;flex-direction:column;justify-content:center;gap:5px}.mobile-menu-toggle span{height:2px;background:var(--gold-soft);width:25px}.nav{display:none;position:fixed;top:68px;left:0;right:0;background:#080808;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.mobile-menu-open .nav{display:flex}.hero{min-height:780px;align-items:flex-end;padding-bottom:50px;background-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.35) 72%),linear-gradient(90deg,rgba(0,0,0,.7),transparent)}.hero h1{font-size:clamp(54px,16vw,82px)}.lead{font-size:15px}.hero-facts,.promise{display:none}.route-grid,.direct,.about,.review-grid,.inquiry{grid-template-columns:1fr}.route-card{min-height:390px}.direct-photo{min-height:460px;order:-1;background-image:linear-gradient(0deg,#0b0b0b 0%,transparent 35%),url('gallery-9.jpeg')}.about{gap:35px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-item.wide{grid-column:auto}.form-grid{grid-template-columns:1fr}.booking-options{grid-template-columns:1fr}.booking-panel{margin:5vh auto;max-height:90vh;overflow:auto}.routing,.reviews,.gallery,.about,.inquiry,.direct>div:first-child{padding:78px 24px}.service-lines div{grid-template-columns:35px 1fr}.service-lines small{grid-column:2}.type-switch{flex-direction:column}footer{flex-wrap:wrap}}

.setup-showcase{background:#080808;border-top:1px solid rgba(216,182,111,.16);border-bottom:1px solid rgba(216,182,111,.16)}.setup-showcase .section-head{max-width:1050px}.setup-showcase .section-head>p:not(.eyebrow){max-width:800px}.setup-grid{display:grid;grid-template-columns:1.45fr 1fr;grid-template-rows:repeat(2,330px);gap:12px}.setup-grid figure{margin:0;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:#111}.setup-grid .setup-main{grid-row:1/3}.setup-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.setup-grid figure:hover img{transform:scale(1.02)}.setup-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:60px 24px 22px;background:linear-gradient(transparent,rgba(0,0,0,.92));display:flex;flex-direction:column;gap:7px}.setup-grid figcaption b{font-family:Oswald,sans-serif;font-size:20px;letter-spacing:.05em}.setup-grid figcaption span{font-size:11px;color:#c8c2b8;line-height:1.5}.review-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.setup-showcase{padding:78px 24px}.setup-grid{grid-template-columns:1fr;grid-template-rows:none}.setup-grid .setup-main{grid-row:auto}.setup-grid figure{height:330px}.review-grid{grid-template-columns:1fr}}
.gallery-item.gallery-extra{display:none}.gallery.show-all .gallery-item.gallery-extra{display:block}.gallery-actions{display:flex;justify-content:center;margin-top:28px}.gallery.show-all .gallery-actions{display:none}
.energy-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:24px}.energy-modal.open{display:flex}.energy-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.92);backdrop-filter:blur(8px)}.energy-panel{position:relative;z-index:1;width:min(92vw,520px);max-height:92vh;text-align:center}.energy-panel h2{margin:.25rem 0 1rem}.energy-panel video{display:block;width:100%;max-height:78vh;background:#000;border:1px solid rgba(216,182,111,.35);object-fit:contain}.energy-close{position:absolute;right:-14px;top:-14px;z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid rgba(216,182,111,.6);background:#080808;color:#fff;font-size:28px;cursor:pointer}.energy-trigger{font:inherit}
@media(max-width:600px){.energy-modal{padding:12px}.energy-panel{width:min(94vw,440px)}.energy-close{right:2px;top:2px}}

/* v14: social links in header and footer (not floating) */
.social-links{display:flex;align-items:center;gap:9px;flex-shrink:0}
.social-links a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:#f7f5f0;border:1px solid rgba(213,174,93,.5);border-radius:50%;text-decoration:none;transition:color .2s,border-color .2s}
.social-links a:hover,.social-links a:focus-visible{color:#d5ae5d;border-color:#d5ae5d}
.social-links svg{width:17px;height:17px}
.header-socials{margin-left:15px}
.footer-socials{margin-left:auto}
@media(max-width:1000px){.header-socials{gap:5px;margin-left:8px}.header-socials a{width:28px;height:28px}.header-socials svg{width:15px;height:15px}}
@media(max-width:760px){.header-socials{margin-left:auto;margin-right:12px}.footer-socials{margin-left:0;width:100%;justify-content:center}.site-header .mobile-menu-toggle{margin-left:0}}

/* Wedding and private event first positioning */
@media(min-width:901px){.route-grid{grid-template-columns:1.15fr 1.15fr .8fr}.route-card.club{opacity:.88}}

/* V16 premium event positioning */
.hero h1{font-size:clamp(50px,6.7vw,102px);max-width:1040px;line-height:1.04}
.experience{padding:105px clamp(28px,5vw,72px);background:#10100f;border-block:1px solid var(--line)}
.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:38px 0}
.experience-grid article{border-top:2px solid var(--gold);background:#171613;padding:30px 25px;min-height:225px}
.experience-grid span{font-size:10px;letter-spacing:.18em;color:var(--gold-soft)}
.experience-grid h3{font-family:Oswald,sans-serif;font-size:24px;margin:20px 0 12px}
.experience-grid p,.experience-note{font-size:14px;color:var(--muted);line-height:1.8}
.experience-note{margin-bottom:26px}
.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:900px){.experience{padding:78px 24px}.experience-grid{grid-template-columns:1fr}.experience-grid article{min-height:0}.hero h1{font-size:clamp(45px,11vw,76px)}}

/* V18: premium, original Experience editorial treatment */
.experience-premium{padding:0;background:#0b0b0d;color:#f5f0e7;text-align:left}
.experience-intro{display:grid;grid-template-columns:1.05fr .95fr;min-height:610px;align-items:stretch}
.experience-intro-copy{padding:clamp(55px,7vw,115px) clamp(25px,6vw,105px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.experience-intro-copy h2{font-size:clamp(40px,5.4vw,83px);line-height:1.05;letter-spacing:.015em;margin:18px 0 28px}
.experience-intro-copy h2 em{color:#d4af63;font-style:normal}
.experience-intro-copy p:not(.eyebrow){max-width:610px;line-height:1.8;color:#d2cec6}
.experience-intro-copy .experience-lead{font-size:clamp(17px,1.45vw,21px);color:#fff}
.experience-intro-copy .btn{margin-top:25px}
.experience-intro-photo{position:relative;min-height:480px;overflow:hidden}
.experience-intro-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.experience-intro-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 42%)}
.experience-photo-caption{position:absolute;bottom:30px;left:32px;z-index:1;color:#f6e3bd;font-size:12px;letter-spacing:.2em;font-weight:700}
.experience-detail{padding:85px clamp(22px,6vw,100px);background:#151414}
.experience-detail .section-head{text-align:center;margin:0 auto 46px}
.experience-detail .section-head h2{max-width:850px;margin-left:auto;margin-right:auto}
.experience-premium .experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1250px;margin:auto;text-align:left}
.experience-premium .experience-grid article{padding:clamp(25px,3vw,45px);border:1px solid rgba(212,175,99,.35);background:#1d1b19;min-height:260px}
.experience-premium .experience-grid article span{color:#d4af63;letter-spacing:.14em;font-size:12px}
.experience-premium .experience-grid article h3{font-size:clamp(19px,2vw,28px);line-height:1.25;margin:23px 0 17px}
.experience-premium .experience-grid article p{color:#d1cbc1;line-height:1.75}
.experience-finish{padding:60px clamp(22px,7vw,115px);display:flex;align-items:center;justify-content:space-between;gap:35px;background:#211c16;border-top:1px solid rgba(212,175,99,.35)}
.experience-finish h3{font-size:clamp(23px,2.6vw,38px);margin:12px 0}
.experience-finish p:not(.eyebrow){color:#d1cbc1;max-width:660px;line-height:1.7}
.experience-finish .btn{flex-shrink:0}
@media(max-width:850px){.experience-intro{grid-template-columns:1fr}.experience-intro-copy{padding:65px 24px}.experience-intro-photo{min-height:390px}.experience-premium .experience-grid{grid-template-columns:1fr}.experience-detail{padding:65px 22px}.experience-finish{flex-direction:column;align-items:flex-start;padding:48px 24px}.experience-finish .btn{flex-shrink:1}}

/* V19 — original editorial luxury aesthetic inspired by premium event design */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--gold:#c4a475;--gold-soft:#d8c2a0;--muted:#bcb7af;--line:rgba(235,220,196,.15)}
body{font-family:'DM Sans',sans-serif;background:#10100f;color:#f4f0e9}
h1,h2,h3,.section-head h2,.route-card h3,.experience-grid h3,.booking-panel h2{font-family:'Playfair Display',Georgia,serif!important;font-weight:400!important;letter-spacing:-.035em!important;text-transform:none!important}
.eyebrow,.route-content>span,.experience-grid span{font-family:'Manrope',sans-serif!important;font-size:10px!important;letter-spacing:.23em!important;font-weight:600!important}
.site-header{background:rgba(13,13,12,.94);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px)}
.nav a{font-family:'Manrope',sans-serif;font-size:10px;letter-spacing:.12em}
.header-cta,.btn{font-family:'Manrope',sans-serif!important;letter-spacing:.13em!important;font-size:11px!important;border-radius:0!important}
.hero{min-height:90vh;background-image:linear-gradient(90deg,rgba(9,9,9,.7),rgba(9,9,9,.2)),url('gallery-new-wedding.jpeg');background-size:cover;background-position:center 45%}
.hero-shade{background:linear-gradient(0deg,rgba(10,10,9,.7),transparent 55%)}
.hero-copy{max-width:900px}.hero h1{font-size:clamp(58px,7.8vw,120px)!important;line-height:1.05!important;max-width:900px!important;letter-spacing:-.05em!important}.hero h1 em{font-weight:400;color:#ead7ba}.hero .lead{max-width:580px;font-size:17px;line-height:1.8;color:#e6e1d8}
.routing,.reviews,.gallery,.setup-showcase{background:#f1eee8!important;color:#292722!important}
.routing .section-head p,.reviews .section-head p,.gallery .section-head p,.setup-showcase .section-head p{color:#6b665f}
.section-head h2{font-size:clamp(40px,5vw,72px)!important;line-height:1.12!important}
.routing,.reviews,.gallery,.setup-showcase{padding-top:115px!important;padding-bottom:115px!important}
.route-grid{gap:16px}.route-card{min-height:540px!important}.route-content{padding:38px!important}.route-content h3{font-size:clamp(35px,3vw,51px)!important;line-height:1.1!important}.route-content p{font-size:14px;line-height:1.8}
.experience-premium{background:#161512!important}.experience-intro-copy h2{font-size:clamp(53px,6vw,95px)!important;line-height:1.08!important}.experience-intro-copy h2 em{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:#d6bc95}
.experience-detail{background:#ede9e1!important;color:#292722}.experience-detail .section-head p{color:#686058}.experience-premium .experience-grid article{background:transparent;border:0;border-top:1px solid #a8977e;padding:35px 12px 35px 0;min-height:240px}.experience-premium .experience-grid article h3{font-size:clamp(28px,2.7vw,39px)!important;color:#26231f}.experience-premium .experience-grid article p{color:#615c55}.experience-finish{background:#29251f!important}
.about{background:#161512!important}.about-copy h2{font-size:clamp(42px,5vw,72px)!important}.review-grid article{background:#fff!important;color:#302d28;border:1px solid #e3ddd4;padding:38px!important}.review-grid article p{color:#504c46}.review-meta span{color:#847b6f}
.setup-grid figure{border:0}.setup-grid figcaption b{font-family:'Manrope',sans-serif;font-size:13px;letter-spacing:.1em}
.gallery-grid{gap:14px}.gallery-item{border-radius:0!important}
.inquiry{background:#171613!important}
@media(max-width:900px){.hero{min-height:760px;background-position:60% center}.hero h1{font-size:clamp(51px,11vw,82px)!important}.hero .lead{font-size:15px}.routing,.reviews,.gallery,.setup-showcase{padding:76px 22px!important}.route-card{min-height:410px!important}.experience-intro-copy h2{font-size:clamp(47px,10vw,70px)!important}.experience-detail{padding:76px 24px}.experience-premium .experience-grid article{border-top:1px solid #a8977e}.review-grid article{padding:28px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* V20: accessible typography and anchored-section clearance */
html{scroll-padding-top:100px}
section[id],article[id]{scroll-margin-top:100px}
.routing .section-head>p:not(.eyebrow),.reviews .section-head>p:not(.eyebrow),.gallery .section-head>p:not(.eyebrow),.setup-showcase .section-head>p:not(.eyebrow){color:#514a42!important}
.route-card .route-content h3{color:#fffaf2!important;text-shadow:0 2px 18px rgba(0,0,0,.7)}
.route-card .route-content p{color:#f8f5ef!important;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.route-card .route-content>span,.route-card .route-content a{color:#f0d4a6!important;text-shadow:0 1px 6px rgba(0,0,0,.8)}
.route-card .route-bg:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.87) 0%,rgba(0,0,0,.48) 57%,rgba(0,0,0,.08) 100%)}
@media(max-width:900px){html{scroll-padding-top:86px}section[id],article[id]{scroll-margin-top:86px}.route-content{padding:18px!important}}

/* V21: final overrides: readable captions and dedicated wedding/event positioning */
.hero{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.16)),url('gallery-1.jpg')!important;background-position:center center!important}
.route-card.signature .route-bg{background-image:linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,0,0,.12)),url('clean-setup-elegant.jpeg')!important}
.route-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.route-card .route-content{inset:auto 0 0!important;padding:110px 28px 28px!important;background:linear-gradient(to top,rgba(0,0,0,.94),rgba(0,0,0,.68) 68%,transparent)!important}
.route-card .route-content h3,.route-card .route-content p,.setup-grid figcaption b,.setup-grid figcaption span{color:#fff!important;opacity:1!important;text-shadow:0 2px 8px rgba(0,0,0,.85)!important}
.route-card .route-content h3{font-size:clamp(30px,2.6vw,44px)!important}
.setup-grid figcaption{z-index:2!important;background:linear-gradient(to top,rgba(0,0,0,.96) 0%,rgba(0,0,0,.8) 55%,transparent 100%)!important;padding:85px 25px 23px!important}
.setup-grid figcaption b{font-size:16px!important;font-weight:800!important;letter-spacing:.07em!important}
.setup-grid figcaption span{font-size:12px!important;font-weight:500!important}
.booking-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:900px){.route-grid{grid-template-columns:1fr!important}.route-card .route-content{padding:85px 22px 22px!important}.booking-options{grid-template-columns:1fr!important}}

/* V22: selected wedding reception photo as homepage hero */
.hero{background-image:linear-gradient(90deg,rgba(9,9,9,.72) 0%,rgba(9,9,9,.38) 54%,rgba(9,9,9,.08) 100%),url('wedding-reception-hero.png')!important;background-position:center center!important}
@media(max-width:900px){.hero{background-position:42% center!important}}

/* V23: tighter Services landing position and photo-forward cards */
.routing{padding-top:64px!important;padding-bottom:90px!important}
.routing .section-head{margin-bottom:24px!important}
.routing .section-head .eyebrow{margin-bottom:12px!important}
.routing .section-head h2{font-size:clamp(40px,4.5vw,64px)!important}
.routing .section-head>p:not(.eyebrow){margin-bottom:0!important;max-width:800px}
.route-card{min-height:495px!important}
.route-card .route-bg:after{background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.26) 35%,transparent 73%)!important}
.route-card .route-content{padding:80px 24px 23px!important;background:linear-gradient(to top,rgba(0,0,0,.86),rgba(0,0,0,.48) 55%,transparent)!important}
.route-card .route-content h3{font-size:clamp(29px,2.35vw,40px)!important;margin:8px 0!important}
.route-card .route-content p{font-size:12px!important;line-height:1.5!important;margin:8px 0 14px!important;min-height:0!important}
.route-card .route-content>span,.route-card .route-content a{font-size:10px!important}
@media(max-width:900px){.routing{padding:50px 22px 70px!important}.route-card{min-height:440px!important}.route-card .route-content{padding:85px 20px 20px!important}.routing .section-head{margin-bottom:22px!important}}

/* V24: Services link and direct #services URLs land at the same visual position. */
#services{scroll-margin-top:198px!important}
@media(max-width:900px){#services{scroll-margin-top:86px!important}}

/* V29: legible gallery expand button on ivory section */
.gallery-actions #viewAllGallery{background:#111111!important;color:#ffffff!important;border:1px solid #c8a15a!important;opacity:1!important;text-shadow:none!important;box-shadow:none;transition:background .2s,color .2s}
.gallery-actions #viewAllGallery b{color:#d8b66f!important}
.gallery-actions #viewAllGallery:hover,.gallery-actions #viewAllGallery:focus-visible{background:#29231a!important;color:#ffffff!important;outline:2px solid #c8a15a;outline-offset:3px}

/* V30 — accessible, responsive See It Live video gallery */
.energy-gallery-panel{width:min(96vw,920px);max-height:92vh;overflow-y:auto;text-align:left;padding:24px;background:#151411;border:1px solid rgba(216,182,111,.4);color:#f7f3ea;box-shadow:0 24px 90px rgba(0,0,0,.65)}
.energy-gallery-panel h2{font-size:clamp(2rem,5vw,3.4rem);color:#fff;margin:.3rem 0}.energy-intro{color:#d6d0c6;margin:0 0 22px}.energy-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.energy-video-card{display:flex;flex-direction:column;text-align:left;border:1px solid #695b44;background:#211e19;color:#fff;padding:0 0 16px;cursor:pointer;overflow:hidden}.energy-video-card:hover,.energy-video-card:focus-visible{border-color:#e0bd81;outline:2px solid transparent;background:#29251f}.energy-thumb{display:block;position:relative;width:100%;aspect-ratio:16/10;background:#080808;overflow:hidden}.energy-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none;border:0}.energy-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:rgba(0,0,0,.78);border:1px solid #d8b66f;color:#fff;font-size:20px}.energy-card-title{font-size:1rem;font-weight:750;letter-spacing:.08em;padding:14px 16px 4px}.energy-card-sub{font-size:.88rem;color:#d4cbbd;padding:0 16px}.energy-player-wrap[hidden],.energy-video-grid[hidden]{display:none!important}.energy-player-wrap h3{font-size:1.25rem;color:#fff;margin:12px 0}.energy-player-wrap video{width:100%;max-height:60vh;object-fit:contain;background:#000}.energy-back-to-grid{background:none;color:#ead3a8;border:0;padding:12px 0;cursor:pointer;font-weight:700;letter-spacing:.07em}.energy-close{right:10px;top:10px}@media(max-width:600px){.energy-gallery-panel{padding:18px 14px}.energy-video-grid{grid-template-columns:1fr;gap:12px}.energy-thumb{aspect-ratio:16/8}.energy-modal{padding:8px}}
