/* Shop brand: berry for filled actions, stage pink for dark-surface highlights. */
:root { --shop-accent: var(--dibzz-action); --shop-hover: var(--dibzz-action-hover); --shop-stage: var(--dibzz-stage-accent); }
.header-ctas { display:flex; align-items:center; gap:10px; margin-left:auto; flex-shrink:0; }
.header-ctas .header-action { display:inline-flex; min-width:0; white-space:nowrap; gap:10px; }
.shop-cta { background:transparent; color:#fff; border:1px solid var(--dibzz-stage-accent); box-shadow:none; }
.shop-cta:hover { background:color-mix(in srgb, var(--dibzz-action) 20%, transparent); color:#fff; }
@media(max-width:1150px) { .desktop-nav { display:none; } .mobile-menu { display:block; margin-left:0; } }
@media(max-width:600px) { .header-inner { flex-wrap:wrap; height:auto; min-height:100px; padding:12px 20px; gap:12px; } .header-ctas { order:3; width:100%; margin:0; } .header-ctas .header-action { flex:1; font-size:12px; padding:10px 12px; min-height:44px; justify-content:center; } .mobile-menu { margin-left:auto; } }
.waitlist-cta { display:inline-flex; align-items:center; justify-content:center; gap:16px; background:var(--shop-accent)!important; color:#fff!important; border:1px solid var(--shop-accent)!important; border-radius:999px; padding:14px 24px; font-weight:700; min-height:48px; }
.waitlist-cta:hover { background:var(--shop-hover)!important; }
.hero-copy { display:flex; flex-direction:column; align-items:flex-start; }
.hero-waitlist { order:3; margin-top:28px; }
.waitlist-section { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:64px; color:#fff; background:#000; padding-top:100px; padding-bottom:100px; scroll-margin-top:100px; }
.waitlist-eyebrow { color:var(--shop-stage); font-size:12px; font-weight:700; letter-spacing:.14em; }
.waitlist-section h2 { font-size:clamp(36px,5vw,64px); line-height:1.08; letter-spacing:-.04em; margin:20px 0; }
.waitlist-section p { color:#bfbfbf; max-width:520px; line-height:1.65; }
.waitlist-status { border:1px solid color-mix(in srgb, var(--dibzz-stage-accent) 33.33%, transparent); border-radius:28px; padding:36px; background:#101010; }
.waitlist-status h3 { font-size:26px; margin-bottom:14px; }
.waitlist-status button { display:block; width:100%; margin:24px 0 12px; border:1px solid #666; background:#262626; color:#ccc; padding:16px; border-radius:999px; font:inherit; cursor:not-allowed; }
.waitlist-status small { display:block; color:#aaa; text-align:center; }
:focus-visible { outline-color:var(--shop-stage); }
.waitlist-form { min-width:0; }
.waitlist-form .waitlist-preview { font-size:13px; padding:12px; border:1px solid color-mix(in srgb, var(--dibzz-stage-accent) 33.33%, transparent); border-radius:12px; margin-bottom:22px; }
.waitlist-form label { display:block; font-size:14px; margin:18px 0 7px; font-weight:600; }
.waitlist-form label > span:not(.optional) { color:inherit; }
.waitlist-form .optional { color:#aaa; font-weight:400; }
.waitlist-form input:not([type=checkbox]), .waitlist-form select, .waitlist-form textarea { width:100%; min-width:0; min-height:48px; border:1px solid #666; border-radius:12px; background:#191919; color:#fff; padding:12px; font:inherit; font-size:16px; color-scheme:dark; }
.waitlist-form textarea { resize:vertical; }
.phone-input { display:flex; align-items:center; gap:12px; }
.phone-input > span { color:#bbb; }
.waitlist-form small { text-align:left; margin-top:7px; font-size:12px; }
.waitlist-form .waitlist-consent { display:flex; align-items:flex-start; gap:12px; font-size:13px; font-weight:400; color:#ccc; }
.waitlist-consent input { width:20px; height:20px; flex-shrink:0; accent-color:var(--shop-accent); }
.waitlist-consent a { color:var(--shop-stage); text-decoration:underline; }
.waitlist-form button { background:var(--shop-accent); border-color:var(--shop-accent); color:#fff; cursor:pointer; font-weight:700; }
.waitlist-form button:hover:not(:disabled) { background:var(--shop-hover); }
.waitlist-form #wl-result { font-size:14px; color:var(--shop-stage); }
@media(max-width:700px) { .waitlist-section { grid-template-columns:1fr; gap:28px; padding-top:64px; padding-bottom:64px; } .waitlist-status { padding:24px; } .header-action.waitlist-cta { min-width:0; font-size:12px; padding:10px 14px; gap:8px; } }
