a{color:inherit;text-decoration:none}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
:root{
  --navy:#0D1F3C;--navy-deep:#081429;--navy-mid:#1a2d52;--navy-light:#1A2F5A;
  --gold:#C9A84C;--gold-light:#E8C96A;--gold-bright:#F0D060;
  --pink:#D4857A;--pink-light:#E8A89F;--pink-pale:#F5DDD9;--pink-dark:#B56B61;
  --cream:#F5EFE0;--cream-mid:#EDE5D0;--cream-dark:#C8BB9A;
  --white:#FFFFFF;--muted:#8A9AB8;--muted-cream:#9A9080;
  --text-dark:#1A1410;
  --serif:"Playfair Display",Georgia,serif;
  --sans:"DM Sans",system-ui,sans-serif;
}
body{font-family:var(--sans);background:var(--cream);color:var(--text-dark);line-height:1.7;-webkit-font-smoothing:antialiased}
.page-tab{display:none}.page-tab.active{display:block}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 2.8rem;background:rgba(8,20,41,0);backdrop-filter:none;border-bottom:none;gap:1rem;transition:background 0.4s,backdrop-filter 0.4s,border-color 0.4s}
nav.scrolled{background:rgba(8,20,41,0.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(201,168,76,0.15)}
.nav-left{display:flex;align-items:center;gap:1.8rem;flex-shrink:0}
.nav-logo{font-family:var(--serif);font-size:1.1rem;letter-spacing:0.06em;color:var(--white);text-decoration:none;cursor:pointer;white-space:nowrap;transition:color 0.3s}
nav.scrolled .nav-logo{color:var(--gold-light)}
.nav-links{display:flex;gap:1.4rem;list-style:none;align-items:center;flex-wrap:nowrap}
.nav-links a{font-size:0.67rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.7);text-decoration:none;transition:color 0.2s;cursor:pointer;white-space:nowrap}
.nav-links a:hover,.nav-links a.nav-active{color:var(--white)}
.nav-savoie{color:var(--pink-light)!important;border:1px solid rgba(212,133,122,0.5);padding:0.28rem 0.75rem;border-radius:100px}
.nav-savoie:hover{background:rgba(201,168,76,0.12)!important}
.nav-reserve{font-size:0.67rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;background:transparent;color:var(--white);border:1px solid rgba(255,255,255,0.5);padding:0.5rem 1.2rem;border-radius:100px;text-decoration:none;white-space:nowrap;transition:background 0.2s,border-color 0.2s,color 0.2s;flex-shrink:0}
.nav-reserve:hover{background:var(--gold);border-color:var(--gold);color:var(--navy-deep)}
nav.scrolled .nav-reserve{border-color:rgba(201,168,76,0.5);color:var(--gold-light)}
nav.scrolled .nav-reserve:hover{background:var(--gold);color:var(--navy-deep)}

/* ── BUTTONS: Wonderyard editorial style ── */
.btn-gold{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;background:var(--navy-deep);color:var(--white);padding:0.95rem 2.4rem;border-radius:100px;text-decoration:none;display:inline-block;cursor:pointer;border:none;transition:background 0.25s,transform 0.15s}
.btn-gold:hover{background:var(--navy-mid);transform:translateY(-2px)}
.btn-outline{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--navy-deep);border:1.5px solid var(--navy-deep);padding:0.95rem 2.4rem;border-radius:100px;text-decoration:none;display:inline-block;cursor:pointer;background:none;transition:background 0.25s,color 0.2s}
.btn-outline:hover{background:var(--navy-deep);color:var(--white)}
.btn-navy{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;background:var(--navy-deep);color:var(--cream);padding:0.95rem 2.4rem;border-radius:100px;text-decoration:none;display:inline-block;cursor:pointer;border:none;transition:background 0.25s}
.btn-navy:hover{background:var(--navy-mid)}
.btn-cream{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;background:var(--navy-deep);color:var(--cream);padding:0.95rem 2.4rem;border-radius:100px;text-decoration:none;display:inline-block;cursor:pointer;border:none;transition:background 0.25s}
.btn-cream:hover{background:var(--navy-mid)}
.btn-ghost-light{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--white);border:1.5px solid rgba(255,255,255,0.6);padding:0.95rem 2.4rem;border-radius:100px;text-decoration:none;display:inline-block;cursor:pointer;background:none;transition:background 0.25s,color 0.2s}
.btn-ghost-light:hover{background:var(--white);color:var(--navy-deep)}
.link-arrow{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--navy-deep);text-decoration:none;cursor:pointer;border-bottom:1px solid currentColor;padding-bottom:2px;display:inline-block;transition:opacity 0.2s}
.link-arrow:hover{opacity:0.6}
.link-arrow-light{font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--white);text-decoration:none;cursor:pointer;border-bottom:1px solid rgba(255,255,255,0.5);padding-bottom:2px;display:inline-block;transition:opacity 0.2s}
.link-arrow-light:hover{opacity:0.6}

/* ── SHARED LAYOUT: Wonderyard editorial ── */
.sw{max-width:1080px;margin:0 auto;padding:7rem 2.5rem}
.sw-sm{max-width:1080px;margin:0 auto;padding:5rem 2.5rem}
.sw-wide{max-width:1280px;margin:0 auto;padding:7rem 2.5rem}
.ey{font-size:0.62rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem;display:block}
.ey-dk{font-size:0.62rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem;display:block}
.sh{font-family:var(--serif);font-size:clamp(2.8rem,6vw,5rem);color:var(--white);line-height:1.05;margin-bottom:1.2rem;letter-spacing:-0.01em}
.sh em{color:var(--gold-light);font-style:italic}
.sh-dk{font-family:var(--serif);font-size:clamp(2.8rem,6vw,5rem);color:var(--navy-deep);line-height:1.05;margin-bottom:1.2rem;letter-spacing:-0.01em}
.sh-dk em{color:var(--gold);font-style:italic}
.sh-lg{font-family:var(--serif);font-size:clamp(3.5rem,8vw,7rem);color:var(--white);line-height:1.02;letter-spacing:-0.02em}
.sh-lg em{color:var(--gold-light);font-style:italic}
.rule{height:1px;background:rgba(201,168,76,0.25)}
.rule-full{height:1px;background:var(--cream-mid)}
.tag{font-size:0.6rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem}
.tag-dk{font-size:0.6rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem}
.body-light{font-size:1rem;color:rgba(255,255,255,0.65);line-height:1.9;font-weight:300;max-width:560px}
.body-dk{font-size:1rem;color:rgba(26,20,16,0.65);line-height:1.9;font-weight:300;max-width:560px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}
.photo-fill{width:100%;height:100%;object-fit:cover}
.photo-side{width:100%;height:520px;object-fit:cover;border-radius:0;filter:brightness(0.9)}

/* ── PHOTO BANNER ── */
.photo-banner{height:70vh;min-height:440px;position:relative;overflow:hidden}
.photo-banner img{width:100%;height:120%;object-fit:cover;position:absolute;top:-10%;filter:brightness(0.55) saturate(0.9)}
.pb-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:3rem;background:linear-gradient(to bottom,rgba(8,20,41,0.2),rgba(8,20,41,0.35))}
.pb-quote{font-family:var(--serif);font-style:italic;font-size:clamp(2rem,5vw,4rem);color:var(--white);max-width:820px;line-height:1.2;letter-spacing:-0.01em}
.pb-quote em{color:var(--gold-light)}

/* ── PILLARS ── */
.pillars{background:var(--cream);border-top:1px solid var(--cream-mid)}
.pillars-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.pillar{padding:3rem 1.5rem;text-align:center;border-right:1px solid var(--cream-mid);cursor:pointer;transition:background 0.3s}
.pillar:hover{background:var(--pink-pale)}
.pillar:last-child{border-right:none}
.pillar-icon{font-size:1.6rem;margin-bottom:0.7rem;display:block}
.pillar-title{font-family:var(--serif);font-size:1.1rem;color:var(--navy-deep);margin-bottom:0.3rem;letter-spacing:-0.01em}
.pillar-sub{font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted-cream)}

/* ── PHOTO STRIPS ── */
.photo-strip-4{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;height:360px}
.photo-strip-3{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;height:460px}
.ps-item{overflow:hidden}
.ps-item img{width:100%;height:100%;object-fit:cover;filter:brightness(0.88) saturate(1.0);transition:filter 0.5s,transform 0.7s}
.ps-item:hover img{filter:brightness(1.05) saturate(1.15);transform:scale(1.04)}

/* ── GALLERY MOSAIC ── */
.gal-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:280px 280px;gap:4px}
.gal-item{overflow:hidden;cursor:pointer}
.gal-item img{width:100%;height:100%;object-fit:cover;filter:brightness(0.88) saturate(1.0);transition:filter 0.4s,transform 0.5s}
.gal-item:hover img{filter:brightness(1.05) saturate(1.15);transform:scale(1.06)}
.gal-item.wide{grid-column:span 2}.gal-item.tall{grid-row:span 2}

/* ── CARDS ── */
.card-white{background:var(--white);border-radius:0;overflow:hidden;box-shadow:none;transition:transform 0.4s}
.card-white:hover{transform:translateY(-4px)}
.card-navy{background:var(--navy);border:none;border-top:1px solid rgba(201,168,76,0.15);padding:2.5rem;transition:background 0.3s}
.card-navy:hover{background:var(--navy-mid)}
.card-navy-2{background:var(--navy-mid);border:none;border-top:1px solid rgba(201,168,76,0.12);padding:2rem}

/* ── SAVOIE BAND ── */
.savoie-band{background:var(--navy-mid);border-top:none;border-bottom:none;padding:5rem 2.5rem}
.savoie-band-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:140px 1fr auto;gap:4rem;align-items:center}
.sav-logo-sm{width:110px;height:auto;border-radius:4px}
.sav-band-text h3{font-family:var(--serif);font-size:1.35rem;color:var(--white);margin:0.3rem 0 0.55rem}
.sav-band-text p{font-size:0.83rem;color:var(--muted);line-height:1.8;font-weight:300;max-width:480px}
.sav-band-cta{display:flex;flex-direction:column;align-items:center;gap:0.7rem;white-space:nowrap}

/* ── HOURS TABLE ── */
.hours-tbl{width:100%;border-collapse:collapse;margin-top:1.4rem}
.hours-tbl tr{border-bottom:1px solid rgba(201,168,76,0.1)}
.hours-tbl td{padding:0.72rem 0;font-size:0.85rem}
.hours-tbl td:first-child{color:var(--muted)}
.hours-tbl td:last-child{text-align:right;color:var(--white)}
.hours-tbl tr.today-row td{color:var(--gold-light);font-weight:500}
.hours-tbl tr.closed-row td{opacity:0.3}
.hours-tbl-dk{width:100%;border-collapse:collapse;margin-top:1.4rem}
.hours-tbl-dk tr{border-bottom:1px solid rgba(13,31,60,0.12)}
.hours-tbl-dk td{padding:0.72rem 0;font-size:0.85rem}
.hours-tbl-dk td:first-child{color:var(--muted-cream)}
.hours-tbl-dk td:last-child{text-align:right;color:var(--navy)}
.hours-tbl-dk tr.today-row td{color:var(--gold);font-weight:500}
.hours-tbl-dk tr.closed-row td{opacity:0.35}

/* ── FOOTER ── */
footer{background:var(--navy-deep);border-top:1px solid rgba(201,168,76,0.2);padding:5rem 2.5rem 2.5rem}
.footer-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-brand{font-family:var(--serif);font-size:1.1rem;color:var(--gold-light);margin-bottom:0.6rem}
.footer-tag{font-size:0.78rem;color:var(--muted);line-height:1.75;font-weight:300}
.footer-socials{display:flex;gap:0.6rem;margin-top:1rem}
.soc-btn{width:32px;height:32px;border-radius:2px;border:1px solid rgba(201,168,76,0.2);display:flex;align-items:center;justify-content:center;font-size:0.68rem;color:var(--muted);text-decoration:none;transition:border-color 0.2s,color 0.2s}
.soc-btn:hover{border-color:var(--gold);color:var(--gold)}
.fch{font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:0.85rem}
.fnav{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.fnav a{font-size:0.8rem;color:var(--muted);text-decoration:none;transition:color 0.2s;cursor:pointer}
.fnav a:hover{color:var(--white)}
.footer-bottom{max-width:1080px;margin:0 auto;padding-top:1.3rem;border-top:1px solid rgba(201,168,76,0.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.5rem}
.fc{font-size:0.68rem;color:rgba(138,154,184,0.38)}

/* ── ANIMATIONS ── */
@keyframes riseIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes livepulse{0%,100%{box-shadow:0 0 0 3px rgba(212,133,122,0.25)}50%{box-shadow:0 0 0 7px rgba(212,133,122,0.1)}}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ── PAGE HERO VARIANT ── */
.page-hero{min-height:65vh;display:flex;align-items:flex-end;padding:9rem 2.5rem 5rem;position:relative;overflow:hidden}
.page-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(0.45) saturate(0.9)}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,20,41,0.0) 0%,rgba(8,20,41,0.78) 100%)}
.page-hero-content{position:relative;z-index:2;max-width:1080px;margin:0 auto;width:100%}
.page-hero-content .ey{margin-bottom:0.8rem;color:var(--gold)}
.page-hero-content h1{font-family:var(--serif);font-size:clamp(3.5rem,8vw,7rem);color:var(--white);line-height:1.02;letter-spacing:-0.02em}
.page-hero-content h1 em{color:var(--gold-light);font-style:italic}
.page-hero-content p{color:rgba(255,255,255,0.6);font-size:1.05rem;font-weight:300;max-width:500px;line-height:1.88;margin-top:1rem}

/* ── MENU PAGE ── */
.menu-img-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;height:480px;margin-top:3rem;border-radius:3px;overflow:hidden}
.menu-img-full{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(0.82)}
.menu-category-block{margin-bottom:3rem}
.menu-cat-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(201,168,76,0.2)}
.menu-cat-icon{font-size:1.6rem;opacity:0.7}
.menu-cat-title{font-family:var(--serif);font-size:1.5rem;color:var(--navy)}
.menu-item{display:flex;justify-content:space-between;align-items:baseline;padding:0.8rem 0;border-bottom:1px solid rgba(0,0,0,0.06)}
.menu-item-left{}
.menu-item-name{font-size:0.95rem;color:var(--navy);font-weight:500;margin-bottom:0.18rem}
.menu-item-desc{font-size:0.78rem;color:var(--muted-cream);line-height:1.6;font-weight:300;max-width:420px}
.menu-item-price{font-family:var(--serif);font-size:1rem;color:var(--gold);flex-shrink:0;margin-left:1.5rem}
.menu-note{font-size:0.72rem;color:var(--muted-cream);font-style:italic;margin-top:2rem;text-align:center}

/* ── VENUE PAGE ── */
.venue-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:220px 220px;gap:4px;margin-top:2rem}
.venue-gal-item{overflow:hidden;border-radius:2px}
.venue-gal-item img{width:100%;height:100%;object-fit:cover;filter:brightness(0.9);transition:filter 0.4s,transform 0.5s}
.venue-gal-item:hover img{filter:brightness(1.05) saturate(1.1);transform:scale(1.05)}
.venue-gal-item.wide{grid-column:span 2}
.venue-feature{display:grid;grid-template-columns:1fr 1fr;gap:3px;height:340px;margin-top:2rem;overflow:hidden;border-radius:3px}
.event-type-card{background:var(--white);border-radius:3px;padding:2rem;box-shadow:0 2px 14px rgba(0,0,0,0.07);transition:transform 0.2s,box-shadow 0.2s;text-decoration:none;display:block}
.event-type-card:hover{transform:translateY(-2px);box-shadow:0 7px 24px rgba(0,0,0,0.13)}
.event-type-icon{font-size:1.8rem;margin-bottom:0.8rem}
.event-type-title{font-family:var(--serif);font-size:1.15rem;color:var(--navy);margin-bottom:0.5rem}
.event-type-desc{font-size:0.82rem;color:#555568;line-height:1.75;font-weight:300}
.booking-form{background:var(--navy-mid);border:1px solid rgba(201,168,76,0.2);border-radius:4px;padding:2.5rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.form-field{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:1rem}
.form-field label{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);font-weight:500}
.form-field input,.form-field textarea,.form-field select{background:rgba(255,255,255,0.07);border:1px solid rgba(201,168,76,0.2);border-radius:2px;padding:0.7rem 0.9rem;color:var(--white);font-family:var(--sans);font-size:0.88rem;transition:border-color 0.2s;outline:none}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--gold)}
.form-field textarea{resize:vertical;min-height:100px}
.form-field select option{background:var(--navy);color:var(--white)}
.form-field input::placeholder,.form-field textarea::placeholder{color:rgba(138,154,184,0.5)}

/* ── ABOUT PAGE ── */
.about-stat{text-align:center;padding:2rem}
.about-stat-num{font-family:var(--serif);font-size:3rem;color:var(--gold-light);line-height:1}
.about-stat-label{font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);margin-top:0.4rem}
.team-card{background:var(--white);border-radius:3px;overflow:hidden;box-shadow:0 2px 14px rgba(0,0,0,0.07)}
.team-photo{width:100%;height:220px;object-fit:cover;object-position:top;filter:brightness(0.88)}
.team-info{padding:1.4rem}
.team-name{font-family:var(--serif);font-size:1.1rem;color:var(--navy);margin-bottom:0.2rem}
.team-role{font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:0.6rem}
.team-bio{font-size:0.8rem;color:#555568;line-height:1.72;font-weight:300}
.value-card{padding:1.8rem;border-left:2px solid var(--gold);margin-bottom:1.2rem;background:rgba(201,168,76,0.04)}
.value-title{font-family:var(--serif);font-size:1rem;color:var(--white);margin-bottom:0.4rem}
.value-body{font-size:0.84rem;color:var(--muted);line-height:1.78;font-weight:300}

/* ── CAREERS PAGE ── */
.job-card{background:var(--white);border-radius:3px;padding:1.8rem 2rem;box-shadow:0 2px 12px rgba(0,0,0,0.07);transition:transform 0.2s,box-shadow 0.2s;margin-bottom:1rem;display:grid;grid-template-columns:1fr auto;align-items:center;gap:1.5rem}
.job-card:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(0,0,0,0.13)}
.job-title{font-family:var(--serif);font-size:1.1rem;color:var(--navy);margin-bottom:0.25rem}
.job-meta{font-size:0.7rem;letter-spacing:0.09em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem}
.job-desc{font-size:0.83rem;color:#555568;line-height:1.7;font-weight:300}
.benefit-item{display:flex;align-items:flex-start;gap:0.8rem;margin-bottom:1rem}
.benefit-icon{font-size:1.1rem;flex-shrink:0;margin-top:2px}
.benefit-text h4{font-size:0.88rem;color:var(--white);font-weight:500;margin-bottom:0.2rem}
.benefit-text p{font-size:0.8rem;color:var(--muted);line-height:1.65;font-weight:300}

/* ── CONTACT PAGE ── */
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:start}
.contact-info-block{display:flex;flex-direction:column;gap:1.5rem}
.contact-row{display:flex;gap:1rem;align-items:flex-start}
.contact-ico{color:var(--gold);font-size:1rem;margin-top:3px;flex-shrink:0;width:20px;text-align:center}
.contact-detail-label{font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted);margin-bottom:0.2rem}
.contact-detail-val{font-size:0.92rem;color:var(--white);line-height:1.6}
.contact-detail-val a{color:var(--gold-light);text-decoration:none}
.contact-form{background:var(--navy-mid);border:1px solid rgba(201,168,76,0.2);border-radius:4px;padding:2.5rem}
.contact-form h3{font-family:var(--serif);font-size:1.4rem;color:var(--white);margin-bottom:0.4rem}
.contact-form p{font-size:0.84rem;color:var(--muted);margin-bottom:1.8rem;font-weight:300;line-height:1.75}
.map-placeholder{background:var(--navy-mid);border:1px solid rgba(201,168,76,0.15);border-radius:3px;height:260px;display:flex;align-items:center;justify-content:center;margin-top:1.5rem;text-decoration:none;transition:border-color 0.2s}
.map-placeholder:hover{border-color:rgba(201,168,76,0.4)}
.map-placeholder-inner{text-align:center}
.map-placeholder-inner p{font-size:0.82rem;color:var(--muted);margin-top:0.5rem}
.map-pin{font-size:2.5rem;opacity:0.5}

/* ── SAVOIE PAGE ── */
.sav-hero{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 4rem;position:relative;overflow:hidden;background:var(--navy-deep)}
.sav-pattern{position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,rgba(201,168,76,0.025) 0,rgba(201,168,76,0.025) 1px,transparent 1px,transparent 60px),repeating-linear-gradient(-45deg,rgba(201,168,76,0.025) 0,rgba(201,168,76,0.025) 1px,transparent 1px,transparent 60px);pointer-events:none}
.sav-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1.3rem}
.sav-logo-lg{width:155px;height:auto;border-radius:4px}
.sav-back{font-size:0.67rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);cursor:pointer;opacity:0.8;transition:opacity 0.2s;background:none;border:none;padding:0}
.sav-back:hover{opacity:1}
.sav-hero h1{font-family:var(--serif);font-size:clamp(2.2rem,6vw,4.5rem);color:var(--white);line-height:1.1}
.sav-hero h1 em{color:var(--gold-light);font-style:italic}
.sav-hero-sub{font-size:0.96rem;color:var(--muted);max-width:520px;line-height:1.88;font-weight:300}
.beer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(201,168,76,0.12);margin-top:2.2rem}
.beer-card{background:var(--cream);padding:1.8rem;transition:background 0.2s}
.beer-card:hover{background:var(--cream-mid)}
.beer-name{font-family:var(--serif);font-size:1.2rem;color:var(--navy);margin-bottom:0.2rem}
.beer-style{font-size:0.65rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:0.6rem}
.beer-desc{font-size:0.82rem;color:#4A4A5A;line-height:1.75;font-weight:300}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:1.8rem}
.why-card{padding:1.7rem;border:1px solid rgba(201,168,76,0.15);border-radius:3px}
.why-num{font-family:var(--serif);font-size:1.8rem;color:var(--gold);margin-bottom:0.32rem}
.why-title{font-size:0.85rem;font-weight:500;color:var(--white);margin-bottom:0.32rem}
.why-body{font-size:0.79rem;color:var(--muted);line-height:1.75;font-weight:300}

/* ── CTA BAND ── */
.cta-cream{text-align:center;padding:9rem 2.5rem;background:var(--cream)}
.cta-cream h2{font-family:var(--serif);font-size:clamp(3rem,7vw,6rem);color:var(--navy-deep);margin-bottom:0.7rem;letter-spacing:-0.02em;line-height:1.05}
.cta-cream h2 em{color:var(--pink);font-style:italic}
.cta-cream p{color:var(--muted-cream);font-size:0.9rem;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:2.5rem;font-weight:400}
.cta-row{display:flex;gap:1.2rem;justify-content:center;flex-wrap:wrap}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  nav{padding:1rem 1.2rem}
  .sw,.sw-sm,.sw-wide{padding:4rem 1.5rem}
  .photo-side{height:320px}
  .nav-links{display:none}
  .pillars-inner{grid-template-columns:repeat(2,1fr)}
  .pillar{border-right:none;border-bottom:1px solid var(--cream-mid)}
  .photo-strip-4{grid-template-columns:repeat(2,1fr);height:200px}
  .photo-strip-3{grid-template-columns:1fr 1fr;height:200px}
  .three-col,.beer-grid,.why-grid{grid-template-columns:1fr}
  .four-col{grid-template-columns:repeat(2,1fr)}
  .two-col,.contact-grid,.menu-img-grid,.venue-feature{grid-template-columns:1fr;gap:2rem}
  .venue-feature{height:auto}
  .gal-mosaic,.venue-gallery{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}
  .gal-item,.venue-gal-item{height:180px}.gal-item.wide,.gal-item.tall,.venue-gal-item.wide{grid-column:span 1;grid-row:span 1}
  .savoie-band-inner{grid-template-columns:1fr;text-align:center}.sav-logo-sm{margin:0 auto}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .sw,.sw-sm{padding:3rem 1.2rem}
  .form-row{grid-template-columns:1fr}
  .job-card{grid-template-columns:1fr}
}

.sav-back{text-decoration:none}
.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,0.5);border-radius:100px;color:#fff;padding:0.45rem 1rem;font-family:var(--sans);font-size:0.67rem;letter-spacing:0.14em;text-transform:uppercase;cursor:pointer}
.nav-mobile-only{display:none}
@media(max-width:900px){
  .nav-toggle{display:inline-block;margin-left:auto}
  .nav-left{position:static}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:rgba(8,20,41,0.98);padding:0.4rem 1.2rem 1.2rem;border-bottom:1px solid rgba(201,168,76,0.2)}
  nav.open .nav-links{display:flex}
  nav.open{background:rgba(8,20,41,0.98)}
  .nav-links li{width:100%}
  .nav-links a{display:block;padding:0.9rem 0;font-size:0.78rem;border-bottom:1px solid rgba(255,255,255,0.08)}
  .nav-savoie{border-radius:0;border:none;border-bottom:1px solid rgba(255,255,255,0.08);padding:0.9rem 0}
  .nav-mobile-only{display:block}
  .nav-reserve{display:none}
}
