:root{
--ink:#171412;
--deep:#241b17;
--cream:#f7f2ea;
--warm:#eee4d7;
--gold:#b98b4b;
--gold-light:#d5b27a;
--white:#fffdf9;
--muted:#756b62;
--line:rgba(23,20,18,.14);
--shadow:0 20px 60px rgba(36,27,23,.10);
--max:1180px;
}

*{
box-sizing:border-box;
margin:0;
padding:0;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Inter,Arial,sans-serif;
background:var(--cream);
color:var(--ink);
line-height:1.65;
}

h1,h2,h3,h4,.brand,.eyebrow{
font-family:Georgia,"Times New Roman",serif;
}

a{
color:inherit;
text-decoration:none;
}

img{
max-width:100%;
display:block;
}

.container{
width:min(var(--max),92%);
margin:auto;
}


/* =========================
HEADER
========================= */

.site-header{
position:sticky;
top:0;
z-index:50;
background:rgba(12,9,8,.96);
backdrop-filter:blur(12px);
border-bottom:1px solid rgba(185,139,75,.28);
}

.nav{
height:88px;
display:flex;
align-items:center;
justify-content:space-between;
gap:24px;
}

.brand{
font-size:1.75rem;
letter-spacing:.12em;
text-transform:uppercase;
}

.brand small{
display:block;
font:10px Inter,Arial,sans-serif;
letter-spacing:.22em;
color:var(--gold-light);
margin-top:-4px;
}

.brand-logo{
display:block;
width:180px;
height:auto;
max-height:76px;
object-fit:contain;
}

.nav-links{
display:flex;
align-items:center;
gap:24px;
font-size:.86rem;
}

.nav-links a{
position:relative;
color:#f4e9d4;
}

.nav-links a:after{
content:"";
position:absolute;
left:0;
bottom:-7px;
width:0;
height:1px;
background:var(--gold);
transition:.25s;
}

.nav-links a:hover:after,
.nav-links a.active:after{
width:100%;
}

.menu-btn{
display:none;
border:1px solid rgba(255,255,255,.25);
background:none;
color:#fff;
padding:10px 12px;
font-size:1rem;
cursor:pointer;
}


/* =========================
BUTTONS / CTAs
========================= */

.btn{
display:inline-flex;
align-items:center;
justify-content:center;
gap:9px;
padding:13px 22px;
border:1px solid var(--ink);
border-radius:14px;
font-weight:700;
font-size:.82rem;
letter-spacing:.05em;
text-transform:uppercase;
transition:
transform .2s ease,
box-shadow .2s ease,
background .2s ease,
border-color .2s ease;
cursor:pointer;
}

.btn:hover{
transform:translateY(-3px);
box-shadow:0 10px 24px rgba(23,20,18,.15);
}

.btn-dark{
background:var(--ink);
color:var(--white);
}

.btn-dark:hover{
background:#2b2521;
}

.btn-gold{
background:var(--gold);
color:#fff;
border-color:var(--gold);
}

.btn-gold:hover{
background:#a67a3e;
border-color:#a67a3e;
}

.btn-light{
background:transparent;
color:var(--white);
border-color:rgba(255,255,255,.45);
}

.btn-light:hover{
background:rgba(255,255,255,.08);
border-color:var(--gold-light);
}


/* =========================
HOME HERO
========================= */

.hero{
min-height:calc(100vh - 88px);
display:grid;
place-items:center;
text-align:center;
position:relative;
overflow:hidden;

background:
radial-gradient(
circle at 20% 25%,
rgba(185,139,75,.20),
transparent 30%
),
radial-gradient(
circle at 80% 70%,
rgba(36,27,23,.10),
transparent 35%
),
linear-gradient(135deg,#f8f3eb,#e9ddd0);
}

.hero:before{
content:"";
position:absolute;
inset:6%;
border:1px solid rgba(185,139,75,.25);
pointer-events:none;
}

.hero-inner{
position:relative;
max-width:900px;
padding:55px 20px 60px;
}

.hero h1{
font-size:clamp(3rem,6vw,5.6rem);
line-height:.98;
font-weight:400;
margin-bottom:20px;
}

.hero-tagline{
font-family:Georgia,"Times New Roman",serif;
font-size:clamp(1.65rem,3vw,2.6rem);
line-height:1.1;
font-weight:700;
color:var(--deep);
letter-spacing:.01em;
margin-bottom:20px;
}

.hero-description{
max-width:720px;
margin:0 auto 28px;
font-size:1rem;
line-height:1.65;
color:#4f4740;
}

.actions{
display:flex;
gap:12px;
justify-content:center;
flex-wrap:wrap;
}


/* =========================
GENERAL SECTIONS
========================= */

.section{
padding:72px 0;
}

.section.alt{
background:var(--white);
}

.section.dark{
background:var(--deep);
color:var(--white);
}

.section-head{
max-width:800px;
margin-bottom:36px;
}

.section-head.center{
text-align:center;
margin-left:auto;
margin-right:auto;
}

.section-head h2{
font-size:clamp(2rem,4vw,3.4rem);
font-weight:400;
line-height:1.08;
margin-bottom:14px;
}

.section-head p{
color:var(--muted);
}

.dark .section-head p{
color:#d3c9be;
}

.section-title-large{
font-size:clamp(2.2rem,4.5vw,3.8rem) !important;
line-height:1.1 !important;
max-width:950px;
}


/* =========================
EYEBROWS
========================= */

.eyebrow{
color:var(--gold);
text-transform:uppercase;
letter-spacing:.22em;
font-size:.75rem;
font-weight:700;
margin-bottom:14px;
}


/* =========================
GRIDS
========================= */

.grid{
display:grid;
gap:22px;
}

.grid-2{
grid-template-columns:repeat(2,1fr);
}

.grid-3{
grid-template-columns:repeat(3,1fr);
}

.grid-4{
grid-template-columns:repeat(4,1fr);
}


/* =========================
CARDS
========================= */

.card{
background:var(--white);
padding:28px;
border:1px solid var(--line);
border-radius:20px;
box-shadow:var(--shadow);
overflow:hidden;
transition:
transform .2s ease,
box-shadow .2s ease;
}

.card:hover{
transform:translateY(-3px);
box-shadow:0 24px 65px rgba(36,27,23,.14);
}

.card h3{
font-size:1.4rem;
margin-bottom:10px;
font-weight:400;
}

.card p{
color:var(--muted);
}

.card .num{
font:700 .75rem Inter,Arial,sans-serif;
color:var(--gold);
letter-spacing:.15em;
margin-bottom:18px;
}


/* =========================
VIDEO FEATURE
========================= */

.video-feature{
position:relative;
min-height:500px;
overflow:hidden;
background:#120d09;
}

.video-feature video{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:cover;
opacity:.62;
}

.video-overlay{
position:relative;
z-index:1;
min-height:500px;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:65px 20px;

background:
linear-gradient(
90deg,
rgba(10,7,5,.82),
rgba(10,7,5,.34),
rgba(10,7,5,.82)
);

color:#fff;
}

.video-overlay h2{
font-size:clamp(2.4rem,5vw,4.5rem);
font-weight:400;
line-height:1;
}

.video-overlay p{
max-width:650px;
margin:16px auto 25px;
color:#eee1d0;
}


/* =========================
FEATURE SECTION
========================= */

.feature{
display:grid;
grid-template-columns:1fr 1fr;
min-height:420px;
border-radius:24px;
overflow:hidden;
box-shadow:var(--shadow);
}

.feature-art{
min-height:420px;
overflow:hidden;
background:#17110e;
position:relative;
}

.feature-art img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

.feature-copy{
padding:60px;
background:var(--deep);
color:var(--white);
display:flex;
flex-direction:column;
justify-content:center;
}

.feature-copy h2{
font-size:clamp(2.1rem,3.8vw,3.3rem);
line-height:1.08;
font-weight:400;
}

.feature-copy p{
color:#d8cec3;
margin:16px 0 25px;
}


/* =========================
STEPS
========================= */

.steps{
display:grid;
}

.steps .card{
position:relative;
}

.steps .card:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:3px;
background:var(--gold);
}


/* =========================
LISTS
========================= */

.list{
display:grid;
gap:10px;
list-style:none;
}

.list li{
padding:10px 0 10px 22px;
border-bottom:1px solid var(--line);
position:relative;
}

.list li:before{
content:"•";
position:absolute;
left:2px;
color:var(--gold);
}


/* =========================
PRICING
========================= */

.price-grid .card{
display:flex;
flex-direction:column;
}

.price{
margin-top:auto;
padding-top:22px;
font-weight:700;
color:var(--gold);
font-size:1.05rem;
}

.category-title{
grid-column:1/-1;
margin-top:25px;
padding-bottom:12px;
border-bottom:1px solid var(--line);
font:700 .82rem Inter,Arial,sans-serif;
letter-spacing:.2em;
color:var(--gold);
text-transform:uppercase;
}


/* =========================
FORMS
========================= */

.form-wrap{
max-width:820px;
margin:auto;
background:var(--white);
padding:38px;
border:1px solid var(--line);
border-radius:22px;
box-shadow:var(--shadow);
}

form{
display:grid;
gap:18px;
}

.form-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
}

label{
font-size:.78rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:.08em;
}

input,
select,
textarea{
width:100%;
margin-top:7px;
border:1px solid #cfc4b7;
background:#fffdfa;
padding:13px 14px;
border-radius:11px;
font:inherit;
color:var(--ink);
}

textarea{
min-height:130px;
resize:vertical;
}

.check{
display:flex;
align-items:flex-start;
gap:10px;
font-size:.88rem;
text-transform:none;
letter-spacing:0;
font-weight:400;
}

.check input{
width:auto;
margin-top:4px;
}

.notice{
padding:18px;
background:#f0e7db;
border-left:3px solid var(--gold);
margin-bottom:25px;
}


/* =========================
PAGE HERO
========================= */

.page-hero{
padding:85px 0 65px;
background:linear-gradient(135deg,#f5eee4,#e5d8c9);
}

.page-hero h1{
font-size:clamp(2.7rem,6vw,5.2rem);
font-weight:400;
line-height:1;
}

.page-hero p{
max-width:760px;
margin-top:18px;
color:#5e554e;
font-size:1.05rem;
}


/* =========================
QUOTES / STATS / PILLS
========================= */

.quote{
font:italic 1.6rem Georgia,"Times New Roman",serif;
color:var(--gold);
line-height:1.35;
}

.stat-row{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
margin-top:30px;
}

.stat{
border-top:1px solid var(--line);
padding-top:15px;
}

.stat strong{
display:block;
font:2rem Georgia,"Times New Roman",serif;
}

.stat span{
font-size:.82rem;
color:var(--muted);
}

.pills{
display:flex;
flex-wrap:wrap;
gap:8px;
}

.pill{
border:1px solid var(--line);
border-radius:20px;
padding:7px 12px;
font-size:.8rem;
}


/* =========================
CTA
========================= */

.cta{
padding:58px 0;
text-align:center;
background:var(--warm);
}

.cta h2{
font-size:2.6rem;
font-weight:400;
margin-bottom:16px;
}


/* =========================
FOOTER
========================= */

.footer{
background:#15110f;
color:#e8dfd5;
padding:60px 0 25px;
}

.footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:40px;
}

.footer h3{
color:#fff;
margin-bottom:14px;
font-weight:400;
}

.footer p,
.footer a{
color:#bfb3a8;
font-size:.9rem;
}

.footer-links{
display:grid;
gap:8px;
}

.logo-footer{
width:220px;
max-width:100%;
margin-bottom:12px;
}

.copyright{
border-top:1px solid rgba(255,255,255,.12);
margin-top:40px;
padding-top:20px;
font-size:.78rem;
color:#8e8176;
display:flex;
justify-content:space-between;
gap:15px;
flex-wrap:wrap;
}


/* =========================================================
EXPERIENCE PAGE
========================================================= */

.experience-hero{
padding:30px 0 28px;
}

.experience-hero .container{
max-width:900px;
}

.experience-hero h1{
margin-bottom:8px;
}

.experience-hero p{
max-width:700px;
margin:8px 0 16px;
}

.experience-hero .btn{
padding:11px 20px;
}

.experience-steps-section{
padding:28px 0 40px;
}

.experience-intro{
max-width:760px;
margin-bottom:20px;
}

.experience-intro .eyebrow{
margin-bottom:8px;
}

.experience-intro h2{
font-size:clamp(1.8rem,3vw,2.6rem);
margin-bottom:6px;
}

.experience-intro p{
max-width:680px;
margin-left:auto;
margin-right:auto;
}

.experience-steps{
gap:14px;
}

.experience-steps .card{
padding:18px 22px;
}

.experience-steps .card .num{
margin-bottom:7px;
}

.experience-steps .card h3{
font-size:1.2rem;
line-height:1.15;
margin-bottom:6px;
}

.experience-steps .card p{
font-size:.86rem;
line-height:1.42;
}

.experience-cta{
padding:38px 0;
}

.experience-cta-inner{
text-align:center;
}

.experience-cta .quote{
font-size:1.6rem;
}

.experience-cta p{
margin:10px auto 16px;
max-width:700px;
color:#d3c9be;
}


/* =========================================================
TASTINGS PAGE
========================================================= */

.tastings-hero h1{
max-width:1000px;
}

.tastings-hero p{
max-width:760px;
margin-top:12px;
}

.tastings-section{
padding:42px 0 55px;
}

.tasting-grid{
gap:18px;
}

.tasting-card{
border-radius:18px;
padding:24px;
}

.tasting-card h3{
line-height:1.2;
margin-bottom:9px;
}

.tasting-card p{
line-height:1.5;
}

.tasting-card .price{
padding-top:18px;
}

.tasting-grid .category-title{
margin-top:10px;
padding-bottom:10px;
}

.tasting-grid .category-title:first-child{
margin-top:0;
}


/* =========================================================
ABOUT PAGE
========================================================= */

.about-intro{
padding:55px 0 60px;
}

.about-intro .quote{
max-width:520px;
}

.philosophy-section{
padding:55px 0 65px;
}

.philosophy-section .section-head{
margin-bottom:28px;
}

.philosophy-grid{
gap:18px;
}

.philosophy-card{
border-radius:20px;
padding:25px;
}

.philosophy-card .num{
margin-bottom:10px;
}

.philosophy-card h3{
margin-bottom:8px;
}

.about-closing{
padding:55px 0 60px;
}

.about-closing .section-head{
max-width:780px;
margin-bottom:25px;
}

.about-closing .section-head p{
margin-top:12px;
}

.about-closing .actions{
margin-top:20px;
}


/* =========================================================
PRIVATE EXPERIENCES
========================================================= */

.private-intro{
padding:48px 0 55px;
}

.private-copy{
display:flex;
flex-direction:column;
justify-content:center;
}

.private-copy h2{
font:400 clamp(2.2rem,4vw,3.4rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:16px;
}

.private-copy p{
max-width:650px;
margin-bottom:24px;
color:#5e554e;
}

.private-copy .btn{
align-self:flex-start;
}

.private-perfect{
padding:28px;
border-radius:20px;
}

.private-perfect h3{
font-size:1.7rem;
margin-bottom:10px;
}

.private-perfect .list{
gap:0;
}

.private-perfect .list li{
padding:8px 0 8px 22px;
}

.private-details{
padding:52px 0 60px;
}

.private-details .section-head{
max-width:850px;
margin-bottom:28px;
}

.private-details .section-head h2{
line-height:1.1;
}

.private-highlights{
gap:18px;
}

.private-highlights .card{
border-radius:20px;
padding:25px;
}

.private-highlights .card .num{
margin-bottom:9px;
}

.private-highlights .card h3{
margin-bottom:8px;
}

.private-highlights .card p{
line-height:1.5;
}

.private-cta{
padding:55px 0 60px;
}

.private-cta-inner{
text-align:center;
max-width:780px;
margin:auto;
}

.private-cta-inner .eyebrow{
margin-bottom:10px;
}

.private-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.private-cta-inner p{
max-width:650px;
margin:0 auto 24px;
color:#d3c9be;
}


/* =========================================================
CORPORATE EXPERIENCES
========================================================= */

.corporate-intro{
padding:48px 0 55px;
}

.corporate-copy{
display:flex;
flex-direction:column;
justify-content:center;
}

.corporate-copy h2{
font:400 clamp(2.2rem,4vw,3.4rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:16px;
}

.corporate-copy p{
max-width:650px;
margin-bottom:24px;
color:#5e554e;
}

.corporate-copy .btn{
align-self:flex-start;
}

.corporate-ideal{
padding:28px;
border-radius:20px;
}

.corporate-ideal h3{
font-size:1.7rem;
margin-bottom:10px;
}

.corporate-ideal .list{
gap:0;
}

.corporate-ideal .list li{
padding:8px 0 8px 22px;
}

.corporate-details{
padding:52px 0 60px;
}

.corporate-details .section-head{
max-width:850px;
margin-bottom:28px;
}

.corporate-details .section-head h2{
line-height:1.1;
}

.corporate-highlights{
gap:18px;
}

.corporate-highlights .card{
border-radius:20px;
padding:25px;
}

.corporate-highlights .card .num{
margin-bottom:9px;
}

.corporate-highlights .card h3{
margin-bottom:8px;
}

.corporate-highlights .card p{
line-height:1.5;
}

.corporate-cta{
padding:55px 0 60px;
}

.corporate-cta-inner{
text-align:center;
max-width:800px;
margin:auto;
}

.corporate-cta-inner .eyebrow{
margin-bottom:10px;
}

.corporate-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.corporate-cta-inner p{
max-width:680px;
margin:0 auto 24px;
color:#d3c9be;
}


/* =========================================================
RESTAURANTS & VENUES
========================================================= */

.venues-intro{
padding:48px 0 52px;
}

.venues-intro .section-head{
max-width:850px;
margin-bottom:28px;
}

.venues-intro .section-head h2{
line-height:1.08;
}

.venues-intro .section-head p{
max-width:700px;
margin-left:auto;
margin-right:auto;
}

.venues-pills{
justify-content:center;
max-width:1000px;
margin:0 auto;
gap:10px;
}

.venues-pills .pill{
border-radius:22px;
padding:8px 14px;
background:var(--white);
}

.venues-benefits{
padding:52px 0 58px;
}

.venues-benefit-grid{
gap:18px;
}

.venues-benefit-grid .card{
border-radius:20px;
padding:27px;
}

.venues-benefit-grid .card .num{
margin-bottom:9px;
}

.venues-benefit-grid .card h3{
margin-bottom:8px;
}

.venues-benefit-grid .card p{
line-height:1.5;
}

.venues-cta{
padding:55px 0 60px;
}

.venues-cta-inner{
max-width:800px;
margin:auto;
text-align:center;
}

.venues-cta-inner .eyebrow{
margin-bottom:10px;
}

.venues-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.venues-cta-inner p{
max-width:680px;
margin:0 auto 24px;
color:#d3c9be;
}

.venues-notice{
background:var(--deep);
padding:0 0 35px;
}

.venues-notice .notice{
margin:0;
background:rgba(255,255,255,.06);
border-left-color:var(--gold);
color:#d8cec3;
}


/* =========================================================
PARTNERS
========================================================= */

.partners-intro{
padding:48px 0 52px;
}

.partners-intro .section-head{
max-width:900px;
margin-bottom:30px;
}

.partners-intro .section-head h2{
line-height:1.08;
}

.partners-intro .section-head p{
max-width:720px;
margin-left:auto;
margin-right:auto;
}

.partners-pills{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:10px;
max-width:1000px;
margin:0 auto;
}

.partners-pills .pill{
border-radius:22px;
padding:8px 14px;
background:var(--white);
}

.partners-opportunity{
padding:52px 0 58px;
}

.partners-benefits{
gap:18px;
}

.partners-benefits .card{
border-radius:20px;
padding:27px;
}

.partners-benefits .card .num{
margin-bottom:9px;
}

.partners-benefits .card h3{
margin-bottom:8px;
}

.partners-benefits .card p{
line-height:1.5;
}

.partners-cta{
padding:55px 0 60px;
}

.partners-cta-inner{
max-width:820px;
margin:auto;
text-align:center;
}

.partners-cta-inner .eyebrow{
margin-bottom:10px;
}

.partners-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.partners-cta-inner p{
max-width:680px;
margin:0 auto 24px;
color:#d3c9be;
}


/* =========================================================
BOOK AN EXPERIENCE
========================================================= */

.book-section{
padding:48px 0 58px;
}

.book-layout{
display:grid;
grid-template-columns:.8fr 1.2fr;
gap:45px;
align-items:start;
}

.book-intro{
padding:20px 10px 20px 0;
}

.book-intro h2{
font:400 clamp(2.3rem,4vw,3.5rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:16px;
}

.book-intro > p{
max-width:560px;
color:#5e554e;
margin-bottom:30px;
}

.book-points{
display:grid;
gap:20px;
}

.book-point{
display:grid;
grid-template-columns:38px 1fr;
gap:14px;
padding-top:18px;
border-top:1px solid var(--line);
}

.book-point > span{
font:700 .75rem Inter,Arial,sans-serif;
color:var(--gold);
letter-spacing:.12em;
padding-top:3px;
}

.book-point strong{
display:block;
font:400 1.15rem Georgia,"Times New Roman",serif;
margin-bottom:4px;
}

.book-point p{
color:var(--muted);
font-size:.88rem;
line-height:1.5;
}

.book-form-wrap{
border-radius:22px;
padding:32px;
}

.book-form-wrap form{
gap:16px;
}

.book-form-wrap input,
.book-form-wrap select,
.book-form-wrap textarea{
border-radius:11px;
}

.book-submit{
width:100%;
margin-top:4px;
padding:15px 22px;
border-radius:14px;
font-size:.85rem;
}

.book-closing{
padding:52px 0 58px;
}

.book-closing-inner{
max-width:800px;
margin:auto;
text-align:center;
}

.book-closing-inner .eyebrow{
margin-bottom:10px;
}

.book-closing-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.book-closing-inner p{
max-width:680px;
margin:auto;
color:#d3c9be;
}


/* =========================================================
CONTACT
========================================================= */

.contact-section{
padding:48px 0 58px;
}

.contact-layout{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:45px;
align-items:center;
}

.contact-intro{
padding-right:10px;
}

.contact-intro h2{
font:400 clamp(2.3rem,4vw,3.5rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:16px;
}

.contact-intro > p{
max-width:600px;
color:#5e554e;
margin-bottom:30px;
}

.contact-links{
display:grid;
gap:0;
max-width:600px;
}

.contact-item{
display:grid;
grid-template-columns:40px 1fr;
gap:14px;
padding:18px 0;
border-top:1px solid var(--line);
}

.contact-icon{
font:700 .72rem Inter,Arial,sans-serif;
color:var(--gold);
letter-spacing:.12em;
padding-top:3px;
}

.contact-item strong{
display:block;
font:400 1.15rem Georgia,"Times New Roman",serif;
margin-bottom:3px;
}

.contact-item p{
color:var(--muted);
font-size:.9rem;
}

.contact-action{
border-radius:22px;
padding:38px;
}

.contact-action .num{
margin-bottom:14px;
}

.contact-action h3{
font-size:2rem;
line-height:1.1;
margin-bottom:14px;
}

.contact-action p{
color:var(--muted);
line-height:1.55;
margin-bottom:25px;
}

.contact-action .btn{
width:100%;
}

.contact-bottom{
padding:52px 0 60px;
}

.contact-bottom .section-head{
max-width:850px;
margin-bottom:28px;
}

.contact-bottom .section-head h2{
line-height:1.08;
}

.contact-options{
gap:18px;
}

.contact-options .card{
border-radius:20px;
padding:27px;
}

.contact-options .card .num{
margin-bottom:9px;
}

.contact-options .card h3{
margin-bottom:8px;
}

.contact-options .card p{
line-height:1.5;
margin-bottom:18px;
}

.text-link{
display:inline-block;
color:var(--gold);
font-weight:700;
font-size:.8rem;
letter-spacing:.04em;
text-transform:uppercase;
}

.text-link:hover{
text-decoration:underline;
}


/* =========================================================
EVENTS & DISCOVERY
========================================================= */

.events-intro{
padding:48px 0 55px;
}

.events-intro .section-head{
max-width:850px;
margin-bottom:30px;
}

.events-intro .section-head h2{
line-height:1.08;
}

.events-intro .section-head p{
max-width:720px;
margin-left:auto;
margin-right:auto;
}

.events-grid{
gap:18px;
}

.event-card{
border-radius:20px;
padding:28px;
display:flex;
flex-direction:column;
}

.event-card .num{
margin-bottom:10px;
}

.event-card h3{
margin-bottom:10px;
font-size:1.45rem;
}

.event-card p{
line-height:1.55;
}

.event-status{
margin-top:auto;
padding-top:22px;
}

.event-status span{
display:inline-block;
border:1px solid var(--line);
border-radius:20px;
padding:6px 11px;
color:var(--gold);
font-size:.72rem;
font-weight:700;
letter-spacing:.08em;
text-transform:uppercase;
}

.discovery-section{
padding:55px 0 60px;
}

.discovery-layout{
display:grid;
grid-template-columns:1fr 1fr;
gap:55px;
align-items:center;
}

.discovery-layout h2{
font:400 clamp(2.4rem,4vw,3.8rem) Georgia,"Times New Roman",serif;
line-height:1.05;
}

.discovery-layout p{
color:#5e554e;
line-height:1.65;
}

.events-cta{
padding:55px 0 60px;
}

.events-cta-inner{
max-width:800px;
margin:auto;
text-align:center;
}

.events-cta-inner .eyebrow{
margin-bottom:10px;
}

.events-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.events-cta-inner p{
max-width:680px;
margin:0 auto 24px;
color:#d3c9be;
}


/* =========================================================
LICENSING
========================================================= */

.licensing-intro{
padding:48px 0 58px;
}

.licensing-layout{
display:grid;
grid-template-columns:1.05fr .95fr;
gap:45px;
align-items:center;
}

.licensing-copy{
padding-right:10px;
}

.licensing-copy h2{
font:400 clamp(2.3rem,4vw,3.5rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:16px;
}

.licensing-copy > p{
max-width:650px;
color:#5e554e;
}

.licensing-copy .btn{
margin-top:25px;
}

.licensing-resources{
border-radius:22px;
padding:32px;
}

.licensing-resources .num{
margin-bottom:12px;
}

.licensing-resources h3{
font-size:1.7rem;
margin-bottom:12px;
}

.licensing-resources .list{
gap:0;
}

.licensing-resources .list li{
padding:9px 0 9px 22px;
}

.licensing-opportunity{
padding:52px 0 60px;
}

.licensing-opportunity .section-head{
max-width:850px;
margin-bottom:30px;
}

.licensing-opportunity .section-head h2{
line-height:1.08;
}

.licensing-opportunity .section-head p{
max-width:720px;
margin-left:auto;
margin-right:auto;
}

.licensing-points{
gap:18px;
}

.licensing-points .card{
border-radius:20px;
padding:27px;
}

.licensing-points .card .num{
margin-bottom:9px;
}

.licensing-points .card h3{
margin-bottom:8px;
}

.licensing-points .card p{
line-height:1.5;
}

.licensing-cta{
padding:55px 0 60px;
}

.licensing-cta-inner{
max-width:800px;
margin:auto;
text-align:center;
}

.licensing-cta-inner .eyebrow{
margin-bottom:10px;
}

.licensing-cta-inner h2{
font:400 clamp(2.3rem,4vw,3.6rem) Georgia,"Times New Roman",serif;
line-height:1.08;
margin-bottom:14px;
}

.licensing-cta-inner p{
max-width:680px;
margin:0 auto 24px;
color:#d3c9be;
}


/* =========================================================
HOMEPAGE PREMIUM REFINEMENTS
========================================================= */

.homepage-hero{
min-height:calc(100vh - 88px);
}

.hero-logo{
width:210px;
max-width:42vw;
height:auto;
margin:0 auto 18px;
object-fit:contain;
}

.homepage-hero .hero-inner{
max-width:920px;
padding:28px 20px 35px;
}

.homepage-hero h1{
font-size:clamp(2.8rem,5.3vw,5rem);
line-height:1;
margin-bottom:14px;
}

.homepage-hero .hero-tagline{
font-size:clamp(1.9rem,3.4vw,3rem);
font-weight:700;
margin-bottom:14px;
}

.homepage-hero .hero-description{
max-width:760px;
margin-bottom:22px;
font-size:.96rem;
line-height:1.55;
}

.hero-actions{
gap:12px;
}

.hero-btn{
min-height:48px;
border-radius:16px;
padding:12px 20px;
}

.btn-outline{
background:rgba(255,255,255,.55);
border-color:rgba(23,20,18,.35);
color:var(--ink);
}

.btn-outline:hover{
background:var(--white);
border-color:var(--gold);
}

.homepage-experiences{
padding:58px 0 65px;
}

.homepage-experiences .section-head{
max-width:850px;
margin-bottom:30px;
}

.homepage-experiences .section-head h2{
line-height:1.08;
}

.homepage-experiences .section-head p{
max-width:720px;
margin-left:auto;
margin-right:auto;
}

.homepage-experiences .card{
border-radius:20px;
}

.homepage-feature{
padding:60px 0;
}

.homepage-feature .feature{
border-radius:24px;
}

.homepage-feature .feature-copy h2{
font-size:clamp(2.1rem,3.8vw,3.3rem);
line-height:1.08;
}

.homepage-create{
padding:58px 0 65px;
}

.homepage-create .section-head{
max-width:800px;
margin-bottom:30px;
}

.homepage-create .section-head h2{
font-size:clamp(2.2rem,4vw,3.4rem);
line-height:1.08;
margin-bottom:10px;
}

.homepage-create .section-head p{
color:var(--muted);
font-size:1rem;
}

.homepage-create .card{
border-radius:20px;
}

.homepage-cta{
padding:55px 0 60px;
}

.homepage-cta h2{
font-size:clamp(2.2rem,4vw,3.2rem);
}


/* =========================================================
DESKTOP / LAPTOP
========================================================= */

@media(min-width:901px){

.hero-inner{
padding:45px 20px 50px;
}

.experience-steps .card{
min-height:145px;
}

.homepage-hero .hero-inner{
transform:translateY(-8px);
}

.homepage-hero .actions{
flex-wrap:nowrap;
}

.homepage-hero .hero-btn{
white-space:nowrap;
}

}


/* =========================================================
TABLET
========================================================= */

@media(max-width:1100px){

.nav-links{
gap:16px;
font-size:.8rem;
}

.hero h1{
font-size:clamp(3rem,6vw,4.8rem);
}

.hero-tagline{
font-size:2rem;
}

.grid-4{
grid-template-columns:repeat(2,1fr);
}

.hero-logo{
width:190px;
}

}


/* =========================================================
TABLET / MOBILE NAV
========================================================= */

@media(max-width:900px){

.nav-links{
display:none;
position:absolute;
top:88px;
left:0;
right:0;
background:#17110f;
padding:20px;
flex-direction:column;
align-items:flex-start;
border-bottom:1px solid var(--line);
}

.nav-links.open{
display:flex;
}

.menu-btn{
display:block;
}

.grid-3,
.grid-4{
grid-template-columns:1fr 1fr;
}

.footer-grid{
grid-template-columns:1fr 1fr;
}

.feature{
grid-template-columns:1fr;
}

.feature-art{
min-height:300px;
}

.book-layout{
grid-template-columns:1fr;
gap:30px;
}

.book-intro{
padding:0;
}

.contact-layout{
grid-template-columns:1fr;
gap:35px;
}

.contact-intro{
padding-right:0;
}

.discovery-layout{
grid-template-columns:1fr;
gap:25px;
}

.licensing-layout{
grid-template-columns:1fr;
gap:30px;
}

.licensing-copy{
padding-right:0;
}

.experience-hero{
padding:40px 0 35px;
}

.experience-steps-section{
padding:40px 0;
}

.experience-steps{
gap:16px;
}

.homepage-hero .hero-inner{
padding:45px 20px 50px;
}

}


/* =========================================================
MOBILE
========================================================= */

@media(max-width:650px){

.nav{
height:80px;
}

.brand-logo{
width:155px;
}

.nav-links{
top:80px;
}

.hero{
min-height:auto;
}

.hero:before{
inset:4%;
}

.hero-inner{
padding:55px 18px 60px;
}

.hero h1{
font-size:clamp(2.7rem,12vw,4rem);
}

.hero-tagline{
font-size:1.7rem;
}

.hero-description{
font-size:.95rem;
}

.actions{
flex-direction:column;
align-items:stretch;
}

.actions .btn{
width:100%;
}

.section{
padding:60px 0;
}

.grid-2,
.grid-3,
.grid-4,
.feature,
.form-grid,
.stat-row{
grid-template-columns:1fr;
}

.feature-copy{
padding:45px 25px;
}

.feature-art{
min-height:260px;
}

.form-wrap{
padding:24px;
}

.video-feature,
.video-overlay{
min-height:460px;
}

.footer-grid{
grid-template-columns:1fr;
}

.copyright{
display:block;
}

.copyright span{
display:block;
margin-bottom:6px;
}


/* EXPERIENCE */

.experience-hero{
padding:24px 0 22px !important;
}

.experience-hero .container{
max-width:900px;
}

.experience-hero .eyebrow{
margin-bottom:5px;
}

.experience-hero h1{
font-size:clamp(2.5rem,5vw,4.2rem);
line-height:1;
margin-bottom:6px;
}

.experience-hero p{
max-width:700px;
margin:6px 0 12px;
line-height:1.45;
}

.experience-hero .btn{
padding:10px 20px;
}

.experience-steps-section{
padding:45px 0;
}

.experience-intro{
margin-bottom:25px;
}

.experience-steps .card{
padding:24px;
}

.experience-cta{
padding:45px 0;
}


/* TASTINGS */

.tastings-hero{
padding:40px 0 35px !important;
}

.tastings-section{
padding:45px 0;
}

.tasting-card{
padding:24px;
}


/* ABOUT */

.about-intro{
padding:45px 0;
}

.philosophy-section{
padding:45px 0;
}

.about-closing{
padding:45px 0;
}

.about-closing .actions{
flex-direction:column;
}


/* PRIVATE */

.private-intro{
padding:45px 0;
}

.private-copy .btn{
width:100%;
}

.private-details{
padding:45px 0;
}

.private-cta{
padding:45px 0;
}


/* CORPORATE */

.corporate-intro{
padding:45px 0;
}

.corporate-copy .btn{
width:100%;
}

.corporate-details{
padding:45px 0;
}

.corporate-cta{
padding:45px 0;
}


/* VENUES */

.venues-intro{
padding:45px 0;
}

.venues-benefits{
padding:45px 0;
}

.venues-cta{
padding:45px 0;
}


/* PARTNERS */

.partners-intro{
padding:45px 0;
}

.partners-opportunity{
padding:45px 0;
}

.partners-cta{
padding:45px 0;
}


/* BOOK */

.book-section{
padding:45px 0;
}

.book-form-wrap{
padding:24px;
border-radius:18px;
}

.book-closing{
padding:45px 0;
}


/* CONTACT */

.contact-section{
padding:45px 0;
}

.contact-action{
padding:28px;
border-radius:18px;
}

.contact-bottom{
padding:45px 0;
}


/* EVENTS */

.events-intro{
padding:45px 0;
}

.discovery-section{
padding:45px 0;
}

.events-cta{
padding:45px 0;
}


/* LICENSING */

.licensing-intro{
padding:45px 0;
}

.licensing-copy .btn{
width:100%;
}

.licensing-resources{
padding:27px;
border-radius:18px;
}

.licensing-opportunity{
padding:45px 0;
}

.licensing-cta{
padding:45px 0;
}


/* HOMEPAGE */

.homepage-hero{
min-height:auto;
}

.hero-logo{
width:165px;
max-width:55vw;
margin-bottom:20px;
}

.homepage-hero .hero-inner{
padding:45px 18px 55px;
}

.homepage-hero h1{
font-size:clamp(2.6rem,11vw,4rem);
}

.homepage-hero .hero-tagline{
font-size:1.75rem;
}

.homepage-hero .hero-description{
font-size:.94rem;
line-height:1.55;
}

.homepage-experiences{
padding:45px 0;
}

.homepage-feature{
padding:45px 0;
}

.homepage-create{
padding:45px 0;
}

.homepage-cta{
padding:45px 0;
}

}