/* After Dark shell (every page): header, menu, search palette, age gate, waitlist, footer, grain, page fade, reveal,
   and Luma controls on the dark ground. Luma's styles-m/l load AFTER this file, so selectors that restyle Luma carry
   one notch more specificity than Luma's own (body / #maincontent / #html-body prefixes). Owner: shell agent. */

/* Header height: --ad-hd = notice strip + header row (the space content starts below; a full-bleed hero can pull itself
   up under the transparent header with margin-top:calc(-1 * var(--ad-hd))). */
:root{--ad-hd-strip:32px;--ad-hd-row:64px;--ad-hd:calc(var(--ad-hd-strip) + var(--ad-hd-row))}
@media (min-width:768px){:root{--ad-hd-row:72px}}
html{scroll-padding-top:calc(var(--ad-hd) + 16px)}
body{background:var(--ad-night);color:var(--ad-smoke);overflow-x:clip}
body .page-wrapper{padding-top:var(--ad-hd);background:var(--ad-night)}
body :focus-visible{outline:2px solid var(--ad-gold);outline-offset:3px}
body._keyfocus *:focus{box-shadow:none}
.ad-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ad-eyebrow{display:flex;align-items:center;gap:14px;margin:0;font:600 11.5px/1.4 var(--ad-sans);letter-spacing:.28em;text-transform:uppercase;color:var(--ad-gold)}
.ad-eyebrow:before{content:"";width:34px;height:1px;background:currentColor;flex:none}
kbd{font:600 11px/1 var(--ad-sans);border:1px solid var(--ad-rule-2);border-radius:4px;padding:3px 5px;color:var(--ad-ash);background:none}

/* Grain (v2 .grain): fixed film noise over the page, never over dialogs, never catches the pointer */
body:before{content:"";position:fixed;inset:-100px;z-index:250;pointer-events:none;opacity:.075;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
 animation:ad-grain 1.2s steps(5) infinite}
@keyframes ad-grain{0%{transform:translate(0,0)}20%{transform:translate(-30px,20px)}40%{transform:translate(20px,-40px)}60%{transform:translate(-50px,-10px)}80%{transform:translate(40px,30px)}}

/* Page-to-page fade (cross-document view transition; the header holds still as gt-header) */
@view-transition{navigation:auto}
::view-transition-old(root){animation:.22s ease both ad-fade-out}
::view-transition-new(root){animation:.34s ease .05s both ad-fade-in}
@keyframes ad-fade-out{to{opacity:0}}
@keyframes ad-fade-in{from{opacity:0}}

/* Reveal on scroll: any [data-ad-r] (js/ad-shell adds .ad-in; html.ad-js is set by the same script, so no-JS shows all) */
[data-ad-r]{transition:opacity 1.3s var(--ad-ease),transform 1.3s var(--ad-ease)}
.ad-js [data-ad-r]:not(.ad-in){opacity:0;transform:translateY(46px)}

/* ---------- Header (v2 .hd): transparent, solid + blur once scrolled (.ad-solid, js/ad-shell) ---------- */
body .page-wrapper>.page-header{position:fixed;top:0;left:0;right:0;z-index:200;margin:0;padding:0;background:transparent;border:0;border-bottom:1px solid transparent;box-shadow:none;transition:background .5s,border-color .5s}
body .page-wrapper>.page-header.ad-solid{background:rgba(13,10,8,.78);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border-bottom-color:var(--ad-rule)}
/* Notice strip (21+ notice, waitlist link): one line; folds away once the page has scrolled (heritage .gt-scrolled) */
body .page-wrapper .page-header .panel.wrapper{display:block;height:var(--ad-hd-strip);max-height:var(--ad-hd-strip);overflow:hidden;background:transparent;border:0;border-bottom:1px solid var(--ad-rule)}
body.gt-scrolled .page-wrapper .page-header .panel.wrapper{max-height:0;border-bottom-color:transparent}
body .page-wrapper .page-header .panel.header{display:flex;align-items:center;gap:8px 24px;height:var(--ad-hd-strip);max-width:var(--ad-max);margin:0 auto;padding:0 var(--ad-g);box-sizing:border-box;white-space:nowrap}
body .page-wrapper .page-header .panel.header .gt-notice{margin:0;overflow:hidden;text-overflow:ellipsis;font:500 11px/1.4 var(--ad-sans);letter-spacing:.1em;color:var(--ad-ash)}
body .page-wrapper .page-header .panel.header .gt-waitlist-notice{margin-left:auto}
body .page-wrapper .page-header .panel.header .gt-waitlist-notice a{display:inline-block;padding:6px 0;color:var(--ad-gold-2)!important;font-weight:600;text-decoration:underline!important;text-decoration-color:rgba(228,200,145,.45)!important;text-underline-offset:4px}  /* heritage forces a dark link colour with !important */
body .page-wrapper .page-header .panel.header .gt-waitlist-notice a:hover{color:var(--ad-smoke)!important}
@media (max-width:599px){
 body .page-wrapper .page-header .panel.header:has(.gt-waitlist-notice)>.gt-notice:not(.gt-waitlist-notice){display:none}
 body .page-wrapper .page-header .panel.header .gt-waitlist-notice{margin:0 auto}
}
/* Header row: logo | navigation | tools (search, account, waitlist, cart, menu) */
body .page-wrapper .page-header .header.content{display:flex;align-items:center;gap:4px;height:var(--ad-hd-row);max-width:var(--ad-max);margin:0 auto;padding:0 var(--ad-g);box-sizing:border-box;position:relative}
body .page-wrapper .page-header .header.content:before,body .page-wrapper .page-header .header.content:after{display:none}
.page-header .ad-logo,.page-header .ad-logo:visited,.page-header .ad-logo:hover{order:1;display:flex;align-items:center;gap:12px;flex:none;margin:0 auto 0 0;min-height:44px;color:var(--ad-smoke);text-decoration:none}
.page-header .ad-logo img{width:38px;height:auto}
.page-header .ad-logo span{font:500 14px/1.1 var(--ad-serif);letter-spacing:.24em;text-transform:uppercase;white-space:nowrap}
.page-header .ad-logo small{display:block;margin-top:3px;font:500 9.5px/1.6 var(--ad-sans);letter-spacing:.24em;color:var(--ad-ash)}
@media (max-width:359px){.page-header .ad-logo span{font-size:12px;letter-spacing:.18em}}
.page-header .ad-nav{order:2;display:none}
.page-header .ad-nav ul{display:flex;gap:clamp(18px,1.8vw,36px);margin:0;padding:0;list-style:none}
.page-header .ad-nav li{margin:0}
.page-header .ad-nav a,.page-header .ad-nav a:visited{position:relative;display:inline-flex;align-items:center;min-height:44px;font:500 12px/1 var(--ad-sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:rgba(237,229,215,.82);transition:color .3s}
.page-header .ad-nav a:after{content:"";position:absolute;left:0;right:.18em;bottom:10px;height:1px;background:var(--ad-gold);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ad-ease)}
.page-header .ad-nav a:hover,.page-header .ad-nav a[aria-current]{color:var(--ad-smoke);text-decoration:none}
.page-header .ad-nav a:hover:after,.page-header .ad-nav a[aria-current]:after{transform:scaleX(1);transform-origin:left}
/* Icon buttons (v2 .ib): search, account, menu, dialog close */
:is(a,button).ad-ib,:is(a,button).ad-ib:visited{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;min-width:44px;height:44px;margin:0;padding:0 10px;border:0;border-radius:999px;background:none;box-shadow:none;color:var(--ad-smoke);font:inherit;text-decoration:none;cursor:pointer;transition:background .25s}
:is(a,button).ad-ib:is(:hover,:focus,:active){background:rgba(236,228,214,.08);border:0;box-shadow:none;color:var(--ad-smoke);text-decoration:none}
.ad-ib svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.page-header .ad-sx-btn{order:3}
.page-header .ad-sx-btn kbd{display:none}
.page-header .gt-account-link,.page-header .gt-account-link:visited{order:4;font:inherit;letter-spacing:0;text-transform:none}
body .page-header .gt-waitlist-cta,body .page-header .gt-waitlist-cta:visited{order:5;display:inline-flex;align-items:center;min-height:44px;margin:0 4px 0 8px;padding:0 20px;border:1px solid var(--ad-gold);border-radius:999px;background:var(--ad-gold);color:#1a120b;font:600 11.5px/1 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;text-decoration:none}
body .page-header .gt-waitlist-cta:hover{background:var(--ad-gold-2);border-color:var(--ad-gold-2);color:#1a120b}
.page-header .ad-menu-btn{order:7}
/* Cart (only while online ordering is on; catalog-only mode removes the minicart block) */
body .page-header .minicart-wrapper{order:6;float:none;margin:0}
body .page-header .minicart-wrapper .action.showcart{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px}
body .page-header .minicart-wrapper .action.showcart:before,body .page-header .minicart-wrapper .action.showcart.active:before{color:var(--ad-smoke)}
body .page-header .minicart-wrapper .action.showcart .counter.qty{background:var(--ad-gold);color:var(--ad-night);border-radius:9px}
@media (min-width:1200px){
 .page-header .ad-logo,.page-header .ad-logo:visited,.page-header .ad-logo:hover{margin-right:0}
 .page-header .ad-nav{display:block;margin:0 auto}
 .page-header .ad-menu-btn{display:none}
 .page-header .ad-sx-btn kbd{display:inline-block}
}
@media (min-width:1200px) and (max-width:1439px){body .page-header .gt-waitlist-cta{display:none}}

/* ---------- Dialogs: menu (v2 .mn) and search palette (v2 .sx) ---------- */
dialog:is(.ad-mn,.ad-sx){padding:0;border:0;max-width:none;max-height:none;background:transparent;color:var(--ad-smoke)}
dialog:is(.ad-mn,.ad-sx)::backdrop{background:rgba(8,6,5,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
html.ad-mn-open{overflow:hidden}
.ad-mn{width:100%;height:100%;inset:0;margin:0;overflow:auto;overscroll-behavior:contain}
.ad-mn::backdrop{background:var(--ad-night)}
.ad-mn-in{min-height:100%;box-sizing:border-box;background:var(--ad-night);display:flex;flex-direction:column;padding:0 var(--ad-g) calc(28px + env(safe-area-inset-bottom))}
.ad-mn-top{display:flex;justify-content:space-between;align-items:center;height:var(--ad-hd-row);flex:none}
.ad-mn nav{margin:auto 0;padding:24px 0}
.ad-mn-list{margin:0;padding:0;list-style:none}
.ad-mn-list>li{margin:0;border-bottom:1px solid var(--ad-rule);overflow:hidden}
.ad-mn-list a,.ad-mn-list a:visited{display:flex;align-items:baseline;gap:18px;padding:14px 0;font:300 clamp(40px,10vw,84px)/1.05 var(--ad-serif);letter-spacing:-.03em;text-decoration:none;color:var(--ad-smoke)}
.ad-mn-list a span{font:600 11px var(--ad-sans);letter-spacing:.2em;color:var(--ad-gold)}
.ad-mn-list a:hover,.ad-mn-list a[aria-current]{color:var(--ad-gold-2);font-style:italic;text-decoration:none}
.ad-mn[open] .ad-mn-list a{animation:ad-rise .9s var(--ad-ease) both;animation-delay:calc(var(--i,0) * 70ms + 80ms)}
@keyframes ad-rise{from{transform:translateY(108%);opacity:0}to{transform:none;opacity:1}}
.ad-mn-more{display:flex;flex-wrap:wrap;gap:0 26px;margin:0;padding:18px 0 0;list-style:none}
.ad-mn-more>li{margin:0}
.ad-mn-more a,.ad-mn-more a:visited{display:inline-flex;align-items:center;min-height:44px;font:600 12px/1 var(--ad-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ad-ash);text-decoration:none}
.ad-mn-more a:hover,.ad-mn-more a[aria-current]{color:var(--ad-smoke);text-decoration:underline;text-decoration-color:var(--ad-gold);text-underline-offset:6px}
.ad-mn-cta{margin:0 0 22px}
body .ad-mn .gt-waitlist-cta,body .ad-mn .gt-waitlist-cta:visited{display:inline-flex!important;align-items:center;min-height:54px;padding:0 28px;border:1px solid var(--ad-gold);border-radius:999px;background:var(--ad-gold);color:#1a120b;font:600 12.5px/1 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none}  /* heritage hides the CTA on phones with !important */
.ad-mn-foot{margin:0;font:13px/1.5 var(--ad-sans);color:var(--ad-ash)}

.ad-sx{width:min(920px,calc(100% - 24px));margin:9vh auto auto;max-height:82vh;overflow:visible}
.ad-sx-in{display:flex;align-items:center;gap:12px;margin:0;background:var(--ad-night-2);border:1px solid var(--ad-rule-2);border-radius:18px 18px 0 0;padding:10px 10px 10px 22px}
.ad-sx-in:focus-within{border-color:rgba(201,166,107,.6)}
.ad-sx-in>svg{width:26px;height:26px;fill:none;stroke:var(--ad-gold);stroke-width:1.5;flex:none}
body .ad-sx .ad-sx-in input{flex:1;min-width:0;height:64px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;outline:none;color:var(--ad-smoke);font:300 clamp(24px,3.4vw,38px)/1 var(--ad-serif);letter-spacing:-.02em}
body .ad-sx .ad-sx-in input::placeholder{color:#7d7266;opacity:1}
body .ad-sx .ad-sx-in input::-webkit-search-cancel-button{display:none}
.ad-sx-hint{margin:0;background:var(--ad-night-2);border:1px solid var(--ad-rule-2);border-top:0;padding:10px 22px 14px;font:13px/1.5 var(--ad-sans);color:var(--ad-ash)}
.ad-sx-hint kbd{margin:0 2px}
.ad-sx-res{margin:0;list-style:none;background:var(--ad-night-2);border:1px solid var(--ad-rule-2);border-top:0;border-radius:0 0 18px 18px;padding:8px;max-height:56vh;overflow:auto;overscroll-behavior:contain}
.ad-sx-res:empty{display:none}
.ad-sx-hint:has(+.ad-sx-res:empty){border-radius:0 0 18px 18px}
.ad-sx-res>li{margin:0}
.ad-sx-h{font:600 10.5px var(--ad-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ad-ash);padding:12px 14px 6px}
.ad-sx-o{display:flex;align-items:center;gap:16px;min-height:44px;padding:10px 14px;border-radius:12px;cursor:pointer;font:15px/1.3 var(--ad-sans)}
.ad-sx-o[aria-selected=true],.ad-sx-o:hover{background:rgba(236,228,214,.07)}
.ad-sx-th{width:92px;height:40px;border-radius:8px;display:grid;place-items:center;flex:none;overflow:hidden;background:var(--ad-night-3)}
.ad-sx-th img{width:88%;height:auto;max-height:100%;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(0,0,0,.4))}
.ad-sx-o b{display:block;font:400 20px/1.15 var(--ad-serif);letter-spacing:-.01em;color:var(--ad-smoke)}
.ad-sx-o small{color:var(--ad-ash);font-size:13px}
.ad-sx-o mark{background:none;color:var(--ad-gold-2)}
.ad-sx-all{justify-content:space-between;color:var(--ad-gold)}
@media (max-width:599px){.ad-sx{margin-top:12px}.ad-sx-keys{display:none}.ad-sx-th{width:72px}}

/* ---------- Age gate (heritage age-gate.phtml + js/age-gate.js, restyled as v2 .gate) ---------- */
body dialog.gt-age{width:100%;height:100%;max-width:none;max-height:none;inset:0;margin:0;padding:0;border:0;box-shadow:none;color:var(--ad-smoke);text-align:center;background:radial-gradient(55% 45% at 50% 42%,#2b1e14 0%,var(--ad-night) 75%)}
body dialog.gt-age[open]{display:grid;place-items:center;overflow:auto;animation:ad-fade-in .6s var(--ad-ease)}
body dialog.gt-age::backdrop{background:var(--ad-night)}
body .gt-age :is(.gt-age-ask,.gt-age-denied):not([hidden]){display:grid;justify-items:center;gap:6px;padding:32px var(--ad-g)}
body .gt-age .gt-age-mark{width:64px;height:auto;margin:0 auto 22px;filter:brightness(0) invert(.9) sepia(.3)}
body .gt-age h2{max-width:13ch;margin:0;font:300 clamp(44px,7vw,104px)/.95 var(--ad-serif);letter-spacing:-.035em;color:var(--ad-smoke)}
body .gt-age p{max-width:34ch;margin:22px 0 0;font:clamp(18px,1.45vw,22px)/1.55 var(--ad-serif);color:var(--ad-ash)}
body .gt-age .gt-age-actions{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
body .gt-age .gt-button{width:auto;display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border:1px solid var(--ad-gold);border-radius:999px;background:var(--ad-gold);color:#1a120b;font:600 12.5px/1 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
body .gt-age .gt-button:hover{background:var(--ad-gold-2);border-color:var(--ad-gold-2);color:#1a120b}
body .gt-age .gt-button-outline{background:transparent;border-color:var(--ad-rule-2);color:var(--ad-smoke)}
body .gt-age .gt-button-outline:hover{background:rgba(236,228,214,.05);border-color:var(--ad-smoke);color:var(--ad-smoke)}
body .gt-age .gt-age-sorry{margin:0;max-width:22ch;font-size:clamp(26px,3vw,38px)!important;font-style:italic;line-height:1.2;color:var(--ad-gold-2)!important}  /* heritage sets both with !important */
body .gt-age .gt-age-back{min-height:44px;margin-top:22px;padding:0;background:none;border:0;border-bottom:1px solid currentColor;border-radius:0;box-shadow:none;color:var(--ad-gold);font:600 12px/1.4 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
body .gt-age .gt-age-back:hover{color:var(--ad-gold-2);background:none}
body .gt-age button:focus-visible{outline:2px solid var(--ad-gold);outline-offset:3px}

/* ---------- Waitlist (GulfTobacco_Waitlist): strip link and header CTA above; band, slide-in and compact form here ---------- */
.gt-waitlist .gt-eyebrow{display:flex;align-items:center;gap:14px;font:600 11.5px/1.4 var(--ad-sans);letter-spacing:.28em;text-transform:uppercase;color:var(--ad-gold)}
.gt-waitlist .gt-eyebrow:before{content:"";width:34px;height:1px;background:currentColor;flex:none}
body .gt-waitlist h2{font-family:var(--ad-serif);font-weight:300;letter-spacing:-.03em;color:var(--ad-smoke)}
body .gt-waitlist .gt-waitlist-intro p:last-child{color:var(--ad-ash)}
body .gt-waitlist .gt-waitlist-field label{font:600 10.5px/1.3 var(--ad-sans);letter-spacing:.2em;color:var(--ad-ash)}
body .gt-waitlist .gt-waitlist-field input{height:50px;padding:0 14px;border:1px solid var(--ad-rule-2);border-radius:12px;background:var(--ad-night-2);color:var(--ad-smoke);font:16px var(--ad-sans)}
body .gt-waitlist .gt-waitlist-field input:focus{border-color:var(--ad-gold);box-shadow:none}
body .gt-waitlist .gt-waitlist-optin{color:var(--ad-ash)}
body .gt-waitlist .gt-waitlist-optin input{accent-color:var(--ad-gold)}
body .gt-waitlist .gt-waitlist-form .gt-button{display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:54px;margin-top:18px;border:1px solid var(--ad-gold);border-radius:999px;background:var(--ad-gold);color:#1a120b;font:600 12.5px/1 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase}
body .gt-waitlist .gt-waitlist-form .gt-button:hover{background:var(--ad-gold-2);border-color:var(--ad-gold-2);color:#1a120b}
body .gt-waitlist .gt-waitlist-status.is-ok{color:var(--ad-gold-2)}
body .gt-waitlist .gt-waitlist-status.is-error{color:#f0a08a}
body .gt-waitlist .gt-waitlist-note{color:var(--ad-ash);opacity:1}
body .gt-waitlist--band{padding:clamp(40px,4.5vw,72px) 0;border-bottom:1px solid var(--ad-rule);color:var(--ad-smoke)}
body .gt-waitlist--band h2{font-size:clamp(36px,3.8vw,60px);line-height:1;margin:0 0 14px}
body .gt-waitlist--band .gt-waitlist-intro p:last-child{font-size:clamp(17px,1.4vw,21px);max-width:40ch}
body .gt-waitlist-pop{background:var(--ad-night-2);color:var(--ad-smoke);border:1px solid var(--ad-rule-2);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
body .gt-waitlist-pop h2{font-size:clamp(30px,3vw,40px);line-height:1.05}
body .gt-waitlist-pop .gt-waitlist-close,body .gt-waitlist-pop .gt-waitlist-close:hover,body .gt-waitlist-pop .gt-waitlist-close:focus{border-radius:999px;color:var(--ad-ash);background:none;border:0;box-shadow:none}
body .gt-waitlist-pop .gt-waitlist-close:hover{color:var(--ad-smoke);background:rgba(236,228,214,.08)}
body .gt-waitlist--compact{border-top-color:var(--ad-rule);color:var(--ad-smoke)}
body .gt-waitlist--compact h2{font:600 11px var(--ad-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ad-gold)}
@media (max-width:767px){body .gt-waitlist-pop{border-radius:18px 18px 0 0;border-bottom:0}}

/* ---------- Footer (v2 .ft) ---------- */
body .page-wrapper .page-footer{margin:0;padding:0;background:var(--ad-night);color:var(--ad-ash);border-top:1px solid var(--ad-rule);overflow:hidden}
body .page-wrapper .page-footer .footer.content{max-width:var(--ad-max);margin:0 auto;padding:0 var(--ad-g);border:0;box-sizing:border-box}
.ad-ft{padding-top:clamp(40px,4.5vw,72px);font:15px/1.6 var(--ad-sans);color:var(--ad-ash)}
.ad-ft-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px 24px;outline:none}
.ad-ft-about{grid-column:1/-1}
.ad-ft-about p{margin:0;max-width:30ch}
.ad-ft .ad-ft-brand{margin:0 0 10px;font:500 15px var(--ad-serif);letter-spacing:.24em;text-transform:uppercase;color:var(--ad-smoke)}
.ad-ft .ad-ft-h{margin:0 0 6px;font:600 10.5px/1.4 var(--ad-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ad-gold)}
body .page-footer .footer.content .ad-ft ul{margin:0;padding:0;list-style:none}
body .page-footer .footer.content .ad-ft li{margin:0}
body .page-footer .ad-ft a,body .page-footer .ad-ft a:visited{display:inline-flex;align-items:center;min-height:44px;color:var(--ad-smoke);text-decoration:none}
body .page-footer .ad-ft a:hover{color:var(--ad-gold-2);text-decoration:none}
.ad-ft-search{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:40px 0 0}
.ad-ft-search label{flex-basis:100%;font:600 10.5px var(--ad-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ad-gold)}
body .ad-ft-search input{flex:1;min-width:0;max-width:420px}
.ad-ft .ad-ft-mark{margin:clamp(40px,4.5vw,72px) 0 0;font:200 clamp(64px,16.5vw,300px)/.8 var(--ad-serif);letter-spacing:-.055em;white-space:nowrap;text-align:center;color:transparent;-webkit-text-stroke:1px rgba(236,228,214,.17);user-select:none}
.ad-ft-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:24px;padding-bottom:calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--ad-rule);font-size:12.5px}
.ad-ft-legal p{margin:0}
body .copyright{display:block;margin:0;padding:0 var(--ad-g) calc(24px + env(safe-area-inset-bottom));background:var(--ad-night);color:var(--ad-ash);font:12px var(--ad-sans);letter-spacing:.06em;text-align:center}
@media (min-width:720px){.ad-ft-grid{grid-template-columns:2fr 1fr 1fr 1fr}.ad-ft-about{grid-column:auto}}

/* ---------- Luma on the dark ground ---------- */
/* Titles, breadcrumbs */
body .page-wrapper .page-title-wrapper .page-title{margin:0 0 .35em;font:300 clamp(44px,5.6vw,96px)/.98 var(--ad-serif);letter-spacing:-.035em;color:var(--ad-smoke)}
body .page-wrapper .breadcrumbs{max-width:var(--ad-max);margin:0 auto;padding:20px var(--ad-g) 0;box-sizing:border-box}
body .page-wrapper .breadcrumbs .items{font:600 11px/1.6 var(--ad-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ad-ash)}
body .page-wrapper .breadcrumbs a,body .page-wrapper .breadcrumbs a:visited{font:inherit;color:var(--ad-ash);text-decoration:none}
body .page-wrapper .breadcrumbs a:hover{color:var(--ad-gold-2);text-decoration:none}
body .page-wrapper .breadcrumbs strong{font-weight:600;color:var(--ad-smoke)}
body .page-wrapper .breadcrumbs .item:not(:last-child):after{color:var(--ad-gold)}
/* Messages */
body .page-wrapper .message:is(.success,.error,.info,.notice,.warning){margin:0 0 12px;padding:14px 18px 14px 46px;border:1px solid var(--ad-rule-2);border-left:2px solid var(--ad-gold);border-radius:12px;background:var(--ad-night-2);color:var(--ad-smoke);font:15px/1.5 var(--ad-sans)}
body .page-wrapper .message.success{border-left-color:#9cc391}
body .page-wrapper .message.error{border-left-color:#e98d6f}
body .page-wrapper .message:is(.success,.error,.info,.notice,.warning)>*:first-child:before{color:var(--ad-gold)}
body .page-wrapper .message.success>*:first-child:before{color:#9cc391}
body .page-wrapper .message.error>*:first-child:before{color:#e98d6f}
body .page-wrapper .message a,body .page-wrapper .message a:visited{color:var(--ad-gold-2)}
/* Fields */
body input:is([type=text],[type=email],[type=password],[type=tel],[type=search],[type=number],[type=url],[type=date]),body select,body textarea{height:48px;padding:0 14px;border:1px solid var(--ad-rule-2);border-radius:10px;background-color:var(--ad-night-2);color:var(--ad-smoke);font:16px/1.4 var(--ad-sans);box-shadow:none}
body textarea{height:auto;min-height:140px;padding:12px 14px}
body select{-webkit-appearance:none;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1.5l5 5 5-5' fill='none' stroke='%23c9a66b' stroke-width='1.5'/></svg>");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
body select option{background:var(--ad-night-2);color:var(--ad-smoke)}
body :is(input,select,textarea):focus{border-color:var(--ad-gold);box-shadow:0 0 0 1px var(--ad-gold)}
body :is(input,textarea)::placeholder{color:#7d7266;opacity:1}
body :is(input,select,textarea)[disabled]{opacity:.55}
body input:is([type=checkbox],[type=radio]){accent-color:var(--ad-gold)}
body .fieldset>.legend,body .fieldset>legend.legend{border-bottom:1px solid var(--ad-rule);font:400 clamp(24px,2.4vw,32px)/1.15 var(--ad-serif);letter-spacing:-.02em;color:var(--ad-smoke)}
body .fieldset>.field>.label,body .fieldset>.fields>.field>.label,body .form .field>.label{font:600 11px/1.4 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ad-ash)}
body .fieldset>.field.choice>.label,body .field.choice .label{font:15px/1.45 var(--ad-sans);letter-spacing:0;text-transform:none;color:var(--ad-smoke)}
body .fieldset>.field.required>.label:after,body .fieldset>.fields>.field.required>.label:after,body .fieldset>.field._required>.label:after{color:var(--ad-gold)}
body .field .note,body .fieldset>.field .note{color:var(--ad-ash);font:13px var(--ad-sans)}
body div.mage-error,body .field-error,body div.field-error{color:#f0a08a;font:13px var(--ad-sans)}
body input.mage-error,body select.mage-error,body textarea.mage-error{border-color:#e98d6f}
body .password-strength-meter{background-color:var(--ad-night-3);color:var(--ad-ash);border-radius:0 0 8px 8px}
/* Buttons: primary = gold pill (v2 .btn-gold); secondary = line pill (v2 .btn-line) */
body .action.primary,body .action.primary:visited,body .gt-button,body .gt-button:visited{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 28px;border:1px solid var(--ad-gold);border-radius:999px;background:var(--ad-gold);color:#1a120b;font:600 12.5px/1 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;box-shadow:none;cursor:pointer;transition:background .35s var(--ad-ease),color .35s,border-color .35s}
body .action.primary:is(:hover,:focus,:active),body .gt-button:is(:hover,:focus){background:var(--ad-gold-2);border-color:var(--ad-gold-2);color:#1a120b;text-decoration:none;box-shadow:none}
body .gt-button-outline,body .gt-button-outline:visited,body .action.secondary,body .action.secondary:visited{background:transparent;border:1px solid var(--ad-rule-2);border-radius:999px;color:var(--ad-smoke)}
body .gt-button-outline:is(:hover,:focus),body .action.secondary:is(:hover,:focus){background:rgba(236,228,214,.05);border-color:var(--ad-smoke);color:var(--ad-smoke)}
body .actions-toolbar .action.back,body .actions-toolbar .secondary a.action{color:var(--ad-gold-2)}
/* Pagination */
body .pages .items{font:500 14px var(--ad-sans)}
body .pages .item{margin:0 2px}
body .pages a.page,body .pages a.page:visited,body .pages strong.page{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 6px;border:1px solid transparent;border-radius:999px;background:none;color:var(--ad-smoke);font:500 14px var(--ad-sans);line-height:1;text-decoration:none;box-sizing:border-box}
body .pages a.page:hover{border-color:var(--ad-rule-2);color:var(--ad-smoke)}
body .pages strong.page{border-color:var(--ad-gold);color:var(--ad-gold-2)}
body .pages .action,body .pages .action:visited{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--ad-rule-2);border-radius:999px;background:none;box-shadow:none}
body .pages .action:hover{border-color:var(--ad-smoke)}
#html-body .pages .action:is(.next,.previous):before,#html-body .pages .action:is(.next,.previous):is(:visited,:hover,:active):before{color:var(--ad-smoke)}
/* Tables (account orders, addresses, etc.) */
#maincontent .table-wrapper{border-color:var(--ad-rule)}
#maincontent :is(.table-wrapper,.data.table) :is(th,td,tr,thead,tbody,tfoot){border-color:var(--ad-rule);background-color:transparent}
#maincontent :is(.table-wrapper,.data.table) th{font:600 11px/1.4 var(--ad-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ad-ash)}
#maincontent :is(.table-wrapper,.data.table) td{color:var(--ad-smoke);font:15px/1.5 var(--ad-sans)}
#maincontent .data.table caption{color:var(--ad-ash)}
/* Modals (Luma popups and slides are appended to body) */
#html-body .modals-overlay{background-color:rgba(8,6,5,.72)}
#html-body :is(.modal-popup,.modal-slide) .modal-inner-wrap{background-color:var(--ad-night-2);color:var(--ad-smoke);box-shadow:0 30px 80px rgba(0,0,0,.6)}
#html-body .modal-popup .modal-inner-wrap{border:1px solid var(--ad-rule-2);border-radius:18px}
#html-body :is(.modal-popup,.modal-slide) .modal-title{border-color:var(--ad-rule);color:var(--ad-smoke);font:400 28px/1.15 var(--ad-serif)}
#html-body :is(.modal-popup,.modal-slide) .modal-footer{border-color:var(--ad-rule)}
#html-body :is(.modal-popup,.modal-slide) .modal-header .action-close{background:none;border:0;box-shadow:none}
#html-body :is(.modal-popup,.modal-slide) .modal-header .action-close:before{color:var(--ad-ash)}
#html-body :is(.modal-popup,.modal-slide) .modal-header .action-close:hover:before{color:var(--ad-smoke)}

/* ---------- Customer pages: sign in, create account, forgot password, account dashboard ---------- */
body .login-container .block,body.customer-account-create .form-create-account,body.customer-account-forgotpassword .form.password.forget,body.customer-account-createpassword .form.password.reset{box-sizing:border-box;padding:clamp(24px,3.5vw,44px);background:var(--ad-night-2);border:1px solid var(--ad-rule-2);border-radius:18px}
body .login-container .block .block-title{border:0;margin:0 0 14px}
body .login-container .block .block-title strong{font:300 clamp(28px,2.6vw,38px)/1.1 var(--ad-serif);letter-spacing:-.025em;color:var(--ad-smoke)}
body .login-container .block-new-customer .block-content p{color:var(--ad-ash)}
body .login-container .fieldset:after{color:var(--ad-ash);font:13px var(--ad-sans)}  /* "* Required Fields" */
body.customer-account-forgotpassword .form.password.forget{max-width:560px}
body .form.password.forget .field.note{color:var(--ad-ash)}
.account #maincontent .block:not(.widget) .block-title{border-bottom:1px solid var(--ad-rule)}
.account #maincontent .block:not(.widget) .block-title>strong{font:300 clamp(26px,2.4vw,34px)/1.15 var(--ad-serif);letter-spacing:-.02em;color:var(--ad-smoke)}
.account #maincontent .box-title,.account #maincontent .box-title>span{font:600 11px/1.4 var(--ad-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ad-gold)}
.account #maincontent .box-content{color:var(--ad-smoke);font:15px/1.6 var(--ad-sans)}
.account #maincontent .box-actions .action,.account #maincontent .block-title>.action{color:var(--ad-gold-2)}
#maincontent :is(.account-nav,.block-collapsible-nav) .content{background:var(--ad-night-2);border:1px solid var(--ad-rule);border-radius:18px;padding:12px 0}
#maincontent .block-collapsible-nav .title{border-color:var(--ad-rule);color:var(--ad-smoke);font:600 12px var(--ad-sans);letter-spacing:.16em;text-transform:uppercase}
#maincontent .block-collapsible-nav .title:after{color:var(--ad-gold)}
#maincontent .account-nav .item a,#maincontent .account-nav .item a:visited,#maincontent .account-nav .item>strong{border-left:3px solid transparent;color:var(--ad-ash);font:15px/1.4 var(--ad-sans);text-decoration:none}
#maincontent .account-nav .item a:hover{background:rgba(236,228,214,.05);color:var(--ad-smoke)}
#maincontent .account-nav .item.current a,#maincontent .account-nav .item.current strong{border-left-color:var(--ad-gold);color:var(--ad-smoke);font-weight:600}
#maincontent .account-nav .item .delimiter{border-top-color:var(--ad-rule)}

/* ---------- Contact (heritage .gt-contact: intro + Luma contact form) ---------- */
body .gt-contact-intro .gt-eyebrow{display:flex;align-items:center;gap:14px;color:var(--ad-gold);font-weight:600}
body .gt-contact-intro .gt-eyebrow:before{content:"";width:34px;height:1px;background:currentColor;flex:none}
body .gt-contact-intro :is(h1,h2){font-weight:300;font-size:clamp(48px,6vw,104px);line-height:.95;letter-spacing:-.035em;color:var(--ad-smoke)}
body .gt-contact-intro .gt-lede{color:var(--ad-ash)}
body .gt-contact-intro .gt-contact-aside{color:var(--ad-ash)}
body .gt-contact .form.contact{background:var(--ad-night-2);border:1px solid var(--ad-rule-2);border-radius:18px}
body .gt-contact .form.contact .legend{font-weight:300;letter-spacing:-.02em;color:var(--ad-smoke)}

/* Screenshot mode (?shot, js/ad-shell): no motion, no gate, no fade */
html.ad-shot *,html.ad-shot *:before,html.ad-shot *:after{animation-duration:0s!important;animation-delay:0s!important;animation-iteration-count:1!important;animation-timeline:auto!important;transition:none!important}
html.ad-shot dialog.gt-age{display:none!important}
html.ad-shot::view-transition-old(root),html.ad-shot::view-transition-new(root){animation:none}

@media (prefers-reduced-motion:reduce){
 body:before{display:none}
 .ad-js [data-ad-r]:not(.ad-in){opacity:1;transform:none}
 ::view-transition-old(root),::view-transition-new(root){animation:none}
}

/* Contact: fieldsets default to min-width:min-content, which pushed the form past 390px. */
body .form.contact,body .form.contact .fieldset{min-width:0;max-width:100%;width:auto;box-sizing:border-box}
body .form.contact .field .control input,body .form.contact .field .control textarea{max-width:100%;box-sizing:border-box}
