/* Waitlist (GulfTobacco_Waitlist form.phtml): a band at the top of the dark footer, a compact form on product pages and a
   slide-in panel; link.phtml adds the header button and top-bar link.
   Shown only while online ordering is off. */
.gt-waitlist-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Fields: names side by side, email full width, phone and ZIP side by side */
.gt-waitlist-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gt-waitlist-field--email{grid-column:1/-1}
.gt-waitlist-field label{display:block;margin:0 0 4px;font:600 11px/1.3 var(--gt-sans);letter-spacing:.14em;text-transform:uppercase}
.gt-waitlist-field input{display:block;width:100%;box-sizing:border-box;height:46px;margin:0;padding:0 12px;border:1px solid var(--gt-line);border-radius:0;background:var(--gt-card);color:var(--gt-ink);font:16px var(--gt-sans)}
.gt-waitlist-optin{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;font:14px/1.45 var(--gt-sans);cursor:pointer}
.gt-waitlist-optin input{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:var(--gt-bronze)}
.gt-waitlist-form .gt-button{display:block;width:100%;margin:16px 0 0;height:48px;padding:0 22px;border-radius:0;cursor:pointer}
.gt-waitlist-form .gt-button:disabled{opacity:.6;cursor:wait}
.gt-waitlist-status{margin:10px 0 0;font:15px/1.4 var(--gt-sans)}
.gt-waitlist-status:empty{display:none}
.gt-waitlist-note{margin:8px 0 0;font:13px var(--gt-sans);opacity:.8}

/* Footer band (layout) and slide-in share the dark-ground colours below */
.gt-waitlist--band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:24px 64px;align-items:start;padding:56px 0;border-bottom:1px solid var(--gt-on-dark-line);color:var(--gt-on-dark)}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-eyebrow{color:var(--gt-on-dark-2);margin:0 0 12px}
:is(.gt-waitlist--band,.gt-waitlist--popup) h2{font-size:clamp(30px,3vw,40px);line-height:1.1;margin:0 0 10px;color:#fff}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-waitlist-intro p:last-child{margin:0;font-size:17px;color:var(--gt-on-dark-2)}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-waitlist-field input{border-color:var(--gt-on-dark-line)}
:is(.gt-waitlist--band,.gt-waitlist--popup) :is(.gt-waitlist-field label,.gt-waitlist-optin){color:var(--gt-on-dark-2)}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-button{background:var(--gt-on-dark-accent);border-color:var(--gt-on-dark-accent);color:var(--gt-espresso)}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-button:hover{background:#fff;border-color:#fff;color:var(--gt-espresso)}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-waitlist-status.is-ok{color:#fff}
:is(.gt-waitlist--band,.gt-waitlist--popup) .gt-waitlist-status.is-error{color:#f2b8a8}

/* Product page: under "Online ordering coming soon"; inherits the light or brand-dark text colour */
.gt-waitlist--compact{margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--gt-line)}
.gt-waitlist--compact h2{font:600 11px var(--gt-sans);color:inherit;letter-spacing:.2em;text-transform:uppercase;margin:0 0 6px}
.gt-waitlist--compact .gt-waitlist-intro p{margin:0 0 12px;font-size:16px}
.gt-waitlist--compact .gt-waitlist-status.is-error{color:#a8321e}
body:has([data-gt-brand]).catalog-product-view .gt-waitlist--compact{color:var(--gt-on-dark);border-color:var(--gt-on-dark-line)}
body:has([data-gt-brand]).catalog-product-view .gt-waitlist--compact .gt-button{background:var(--gt-on-dark-accent);border-color:var(--gt-on-dark-accent);color:var(--gt-espresso)}
body:has([data-gt-brand]).catalog-product-view .gt-waitlist--compact .gt-button:hover{background:#fff;border-color:#fff;color:var(--gt-espresso)}
body:has([data-gt-brand]).catalog-product-view .gt-waitlist--compact .gt-waitlist-status.is-error{color:#f2b8a8}
body:has([data-gt-brand]).catalog-product-view .gt-waitlist--compact h2{color:var(--gt-on-dark-2)}

/* Header button and top-bar link: open the slide-in */
.gt-waitlist-cta,.gt-waitlist-cta:visited{flex:none;order:3;padding:12px 18px;white-space:nowrap}
.gt-waitlist-notice a,.gt-waitlist-notice a:visited{color:#1d1a16!important;font-weight:600;text-decoration:underline!important;text-underline-offset:3px}
/* Shop cards: under "Online ordering coming soon" */
.gt-waitlist-link,.gt-waitlist-link:visited{font:600 11px/1.3 var(--gt-sans);letter-spacing:.16em;text-transform:uppercase;color:inherit;text-decoration:underline;text-underline-offset:4px}

/* Slide-in panel (bottom right; a bottom sheet on phones) */
.gt-waitlist-pop{position:fixed;right:24px;bottom:24px;z-index:900;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;padding:28px 28px 22px;background:var(--gt-espresso);color:var(--gt-on-dark);box-shadow:0 18px 50px rgba(0,0,0,.35);opacity:0;transform:translateY(16px);transition:opacity .25s ease,transform .25s ease}
.gt-waitlist-pop.is-open{opacity:1;transform:none}
.gt-waitlist-pop .gt-eyebrow{margin:0 0 8px}
.gt-waitlist-pop h2{font-size:30px;line-height:1.1;margin:0 0 8px}
.gt-waitlist-pop .gt-waitlist-intro p:last-child{margin:0 0 16px;font-size:16px}
.gt-waitlist-close,.gt-waitlist-close:hover,.gt-waitlist-close:focus{position:absolute;top:6px;right:6px;width:44px;height:44px;padding:0;background:none;border:0;box-shadow:none;color:var(--gt-on-dark-2);font:28px/1 var(--gt-sans);cursor:pointer}
.gt-waitlist-close:hover{color:#fff}

@media (max-width:767px){
.gt-waitlist-cta{display:none!important}
.gt-waitlist-notice{margin-top:2px}
.gt-waitlist-pop{right:0;bottom:0;left:0;width:auto;max-height:90dvh;padding:24px 16px 18px}

.gt-waitlist--band{grid-template-columns:1fr;padding:40px 0}
}
