:root { --biz-cyan:#65efd6; --biz-gold:#ffd166; --biz-panel:#11172a; --biz-panel-2:#171d32; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
.business-page { background:
  radial-gradient(circle at 8% 14%,rgba(255,77,132,.13),transparent 30rem),
  radial-gradient(circle at 88% 7%,rgba(101,239,214,.12),transparent 28rem),#0c0f1e; }
.business-page #topbar { position:relative; }
.business-nav { display:flex; align-items:center; gap:18px; }
.business-nav a { color:var(--muted); font-weight:800; font-size:.84rem; text-decoration:none; }
.business-nav a:hover { color:var(--text); }
.business-page main { width:min(1180px,calc(100% - 32px)); margin:0 auto; padding:50px 0 72px; }
.business-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:54px; align-items:center; min-height:550px; }
.eyebrow { color:var(--biz-gold); font-size:.7rem; font-weight:900; letter-spacing:.14em; }
.business-hero h1 { max-width:720px; margin:10px 0 14px; font-size:clamp(2.7rem,6vw,5.3rem); line-height:.94; letter-spacing:-.04em; }
.business-hero-copy > p { max-width:670px; margin:0; color:#bec7df; font-size:1.08rem; line-height:1.65; }
.hero-actions { display:flex; align-items:center; gap:18px; margin-top:26px; }
.hero-actions a { text-decoration:none; }
.hero-actions .primary { min-height:48px; padding:12px 21px; }
.text-link { color:var(--biz-gold); font-weight:900; text-decoration:underline!important; text-underline-offset:4px; }
.proof-list { display:flex; flex-wrap:wrap; gap:10px 24px; margin:26px 0 0; padding:0; color:#cdd4e8; list-style:none; font-size:.82rem; font-weight:800; }
.proof-list li::before { content:"✓"; margin-right:7px; color:var(--biz-cyan); }
.campaign-preview { position:relative; padding:26px; border:1px solid #3d4969; border-radius:26px; background:linear-gradient(160deg,rgba(31,39,67,.98),rgba(14,19,36,.98)); box-shadow:0 28px 70px rgba(0,0,0,.34); overflow:hidden; }
.campaign-preview::before { content:""; position:absolute; inset:-30% auto auto 48%; width:260px; height:260px; border-radius:50%; background:rgba(101,239,214,.1); filter:blur(10px); }
.preview-label { position:relative; color:#aab5d2; font-size:.62rem; font-weight:900; letter-spacing:.13em; }
.preview-product { position:relative; display:flex; align-items:center; gap:16px; margin:16px 0; padding:16px; border:1px solid rgba(101,239,214,.45); border-radius:17px; background:rgba(15,45,45,.54); }
.preview-pack { display:grid; place-items:center; width:76px; height:90px; border-radius:14px; background:linear-gradient(155deg,#ff9f43,#ff4d84); color:white; font-size:2rem; box-shadow:0 12px 30px rgba(255,77,132,.2); }
.preview-product span span { display:grid; }
.preview-product small,.preview-offer small { color:var(--biz-cyan); font-weight:900; letter-spacing:.1em; }
.preview-product b { display:block; font-family:var(--font-display); font-size:1.3rem; }
.preview-product em { display:block; color:#bfc8df; font-style:normal; }
.preview-offer { position:relative; display:grid; gap:4px; padding:15px; border:1px solid rgba(255,209,102,.5); border-radius:15px; background:rgba(62,49,19,.56); }
.preview-offer small { color:var(--biz-gold); }
.preview-offer strong { color:var(--biz-gold); }
.preview-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:14px; }
.preview-metrics span { padding:10px 7px; border:1px solid #36415d; border-radius:11px; color:#9eabc9; text-align:center; font-size:.67rem; }
.preview-metrics b { display:block; color:white; font-family:var(--font-display); font-size:1.13rem; }
.campaign-preview > p { margin:12px 0 0; color:#77839f; font-size:.65rem; text-align:center; }
.section-shell { margin-top:34px; padding:28px; border:1px solid var(--line); border-radius:24px; background:rgba(15,20,38,.9); box-shadow:0 24px 70px rgba(0,0,0,.16); }
.section-heading h2,.builder-heading h2 { margin:4px 0; font-size:clamp(1.7rem,3vw,2.45rem); }
.section-heading > p { max-width:680px; margin:4px 0; color:var(--muted); }
.placement-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:22px; }
.placement-card { display:grid; grid-template-columns:auto 1fr; gap:11px 13px; align-items:start; min-height:190px; padding:18px; border:1px solid #35405b; border-radius:17px; background:var(--biz-panel-2); color:var(--text); text-align:left; cursor:pointer; transition:.2s ease; }
.placement-card:hover,.placement-card:focus-visible { transform:translateY(-3px); border-color:var(--biz-cyan); }
.placement-card.featured { border-color:rgba(255,209,102,.55); }
.placement-card.display-card { border-style:dashed; }
.placement-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; background:#232c48; color:var(--biz-gold); font-size:1.25rem; }
.placement-copy { min-width:0; }
.placement-copy small { display:block; color:var(--biz-cyan); font-size:.6rem; font-weight:900; letter-spacing:.1em; }
.placement-copy b { display:block; margin:5px 0; font-family:var(--font-display); font-size:1.08rem; line-height:1.12; }
.placement-copy em { display:block; color:#9da9c6; font-size:.77rem; font-style:normal; line-height:1.42; }
.placement-includes { display:block; margin-top:9px; color:#dce4f7; font-size:.67rem; font-weight:900; line-height:1.4; }
.placement-price { grid-column:1/-1; display:flex; align-items:baseline; gap:6px; margin-top:auto; }
.placement-price strong { color:var(--biz-gold); font-family:var(--font-display); font-size:1.55rem; }
.placement-price small { color:#8e99b5; }
.campaign-builder { padding:0; overflow:hidden; }
.builder-heading { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:25px 28px 19px; }
.builder-heading p { margin:4px 0 0; color:#8f9bb8; font-size:.76rem; }
.builder-estimate { display:grid; justify-items:end; }
.builder-estimate span { color:#8f9bb8; font-size:.7rem; font-weight:800; }
.builder-estimate b { color:var(--biz-gold); font-family:var(--font-display); font-size:1.55rem; }
.builder-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:0; padding:0 28px 18px; list-style:none; }
.builder-progress li { position:relative; display:flex; align-items:center; gap:8px; color:#73809e; font-size:.7rem; font-weight:900; }
.builder-progress li:not(:last-child)::after { content:""; position:absolute; left:38px; right:10px; height:2px; background:#2d3650; }
.builder-progress span { position:relative; z-index:1; display:grid; place-items:center; width:28px; height:28px; border:2px solid #3a4665; border-radius:50%; background:#12182a; }
.builder-progress li.active,.builder-progress li.complete { color:#eef2ff; }
.builder-progress li.active span { border-color:var(--biz-gold); color:var(--biz-gold); }
.builder-progress li.complete span { border-color:var(--biz-cyan); background:#183e3d; color:var(--biz-cyan); }
.builder-progress li.complete:not(:last-child)::after { background:var(--biz-cyan); }
.checkout-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; align-items:start; border-top:1px solid #29334c; background:#0f1425; }
#campaignForm { min-width:0; }
.builder-step { display:none; min-height:520px; padding:28px; background:linear-gradient(180deg,#11172a,#0f1425); }
.builder-step.active { display:block; animation:stepIn .22s ease both; }
@keyframes stepIn { from{opacity:.4;transform:translateX(8px)} to{opacity:1;transform:none} }
.step-heading > span { color:var(--biz-cyan); font-size:.68rem; font-weight:900; }
.step-heading h3 { margin:4px 0; font-size:1.48rem; }
.step-heading p { margin:3px 0 20px; color:var(--muted); }
.game-heading { margin-top:4px; }
.placement-heading { margin-top:20px; padding-top:18px; border-top:1px solid #29334c; }
.game-choice-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.game-choice { position:relative; display:grid; min-height:92px; padding:12px; border:1px solid #35405b; border-radius:13px; background:#151b2e; cursor:pointer; }
.game-choice:has(input:checked) { border-color:var(--biz-cyan); box-shadow:inset 0 0 0 1px var(--biz-cyan); background:rgba(20,66,61,.48); }
.game-choice input { position:absolute; opacity:0; }
.game-choice b,.game-choice small { display:block; }
.game-choice b { font-family:var(--font-display); font-size:.9rem; }
.game-choice small { margin-top:4px; color:#929ebb; font-size:.65rem; line-height:1.3; }
.type-choice-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.type-choice { position:relative; display:grid; min-height:130px; padding:15px; border:1px solid #35405b; border-radius:15px; background:#171d31; cursor:pointer; }
.type-choice:has(input:checked) { border-color:var(--biz-gold); box-shadow:inset 0 0 0 1px var(--biz-gold); background:rgba(80,56,21,.32); }
.type-choice input { position:absolute; opacity:0; }
.type-choice b,.type-choice small,.type-choice strong { display:block; }
.type-choice b { font-family:var(--font-display); }
.type-choice small { margin-top:4px; color:#9da9c6; line-height:1.35; }
.type-choice strong { align-self:end; margin-top:12px; color:var(--biz-gold); }
.category-choice { display:grid; grid-template-columns:180px minmax(0,1fr); gap:10px; margin-top:18px; padding:15px; border:1px solid rgba(101,239,214,.34); border-radius:14px; background:rgba(19,61,57,.24); }
.category-choice label { display:grid; gap:5px; color:#b9c2d9; font-size:.76rem; font-weight:800; }
.category-choice p { grid-column:1/-1; margin:0; color:#94a1bd; font-size:.7rem; line-height:1.45; }
.product-choice { margin-top:18px; padding-top:18px; border-top:1px solid #29334c; }
.field-heading { display:flex; justify-content:space-between; gap:16px; margin-bottom:9px; }
.field-heading span,.field-status { color:#8995b2; font-size:.72rem; }
.product-search-row { display:grid; grid-template-columns:minmax(0,1fr) 220px; gap:8px; }
.business-page input,.business-page select,.business-page textarea { width:100%; min-height:45px; padding:10px 12px; border:1px solid #35405b; border-radius:11px; background:#0d1221; color:var(--text); font:inherit; }
.business-page input:focus,.business-page select:focus,.business-page textarea:focus { border-color:var(--biz-cyan); outline:2px solid rgba(101,239,214,.13); }
.field-status { min-height:24px; padding:6px 1px; }
.brand-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-content:start; gap:8px; width:100%; min-width:0; max-height:315px; padding-right:3px; overflow-x:hidden; overflow-y:auto; scrollbar-gutter:stable; }
.brand-product-card { display:grid; grid-template-rows:105px minmax(45px,auto); gap:7px; width:100%; max-width:100%; min-width:0; padding:8px; overflow:hidden; border:1px solid #303a55; border-radius:12px; background:#171d31; color:var(--text); text-align:left; cursor:pointer; }
.brand-product-card:hover { border-color:#687698; }
.brand-product-card.selected { border-color:var(--biz-cyan); box-shadow:inset 0 0 0 1px var(--biz-cyan); background:#153237; }
.brand-product-card img { width:100%; height:105px; padding:7px; border-radius:8px; background:#fff; object-fit:contain; }
.brand-product-card > span { min-width:0; overflow:hidden; }
.brand-product-card b { display:-webkit-box; overflow:hidden; overflow-wrap:anywhere; font-size:.72rem; line-height:1.2; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.brand-product-card small { display:block; overflow:hidden; margin-top:3px; color:#8f9bb7; font-size:.62rem; text-overflow:ellipsis; white-space:nowrap; }
.requested-product-panel { margin-top:14px; border:1px solid #35405b; border-radius:13px; background:#12182a; }
.requested-product-panel summary { padding:13px 15px; color:var(--biz-gold); font-size:.8rem; font-weight:900; cursor:pointer; }
.requested-product-panel > p { margin:0; padding:0 15px 12px; color:#929ebb; font-size:.72rem; line-height:1.45; }
.requested-product-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:0 15px 15px; }
.requested-product-grid label { display:grid; gap:5px; color:#b9c2d9; font-size:.76rem; font-weight:800; }
.builder-actions { display:flex; justify-content:space-between; gap:10px; margin-top:22px; }
.calendar-toolbar { display:flex; justify-content:center; align-items:center; gap:16px; margin-bottom:10px; }
.calendar-toolbar h3 { width:200px; margin:0; text-align:center; }
.booking-calendar { display:grid; grid-template-columns:repeat(7,1fr); gap:5px; }
.calendar-weekday { padding:4px; color:#7f8ba8; font-size:.62rem; font-weight:900; text-align:center; text-transform:uppercase; }
.calendar-day { min-height:64px; padding:7px; border:1px solid #35405b; border-radius:10px; background:#171d31; color:var(--text); text-align:left; cursor:pointer; }
.calendar-day:hover:not(:disabled) { border-color:var(--biz-cyan); }
.calendar-day.outside { opacity:.35; }
.calendar-day:disabled { background:#121625; color:#65708d; cursor:not-allowed; }
.calendar-day.selected { border-color:var(--biz-gold); background:#4b371c; box-shadow:inset 0 0 0 1px var(--biz-gold); }
.calendar-day span,.calendar-day small { display:block; }
.calendar-day span { font-weight:900; }
.calendar-day small { margin-top:5px; font-size:.56rem; }
.date-fields,.contact-grid,.offer-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin-top:16px; }
.date-fields label,.contact-grid label,.offer-grid label { display:grid; gap:5px; color:#b9c2d9; font-size:.76rem; font-weight:800; }
.wide { grid-column:1/-1; }
.placement-fields { display:grid; gap:8px; margin:17px 0 0; padding:14px; border:1px solid #35405b; border-radius:13px; }
.placement-fields legend { padding:0 5px; font-weight:900; }
.placement-fields label { display:grid; grid-template-columns:auto 1fr; gap:0 8px; align-items:center; }
.placement-fields input { width:auto; min-height:auto; }
.placement-fields small { grid-column:2; color:#8894b0; }
.creative-upload > span { color:#8692ae; font-size:.68rem; font-weight:600; }
.creative-preview { display:flex; align-items:center; justify-content:center; min-height:90px; border:1px dashed #45516f; border-radius:12px; background:#0d1221; color:#8793b0; overflow:hidden; }
.creative-preview img { max-width:100%; max-height:180px; object-fit:contain; }
.destination-builder { display:grid; gap:11px; padding:14px; border:1px solid #35405b; border-radius:14px; background:#11172a; }
.destination-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.destination-heading b,.destination-heading small { display:block; }
.destination-heading b { color:#eef1fb; font-size:.82rem; }
.destination-heading b span { margin-left:6px; color:var(--biz-cyan); font-size:.64rem; letter-spacing:.08em; text-transform:uppercase; }
.destination-heading small { margin-top:4px; color:#8f9bb7; font-size:.69rem; font-weight:600; line-height:1.4; }
.destination-list { display:grid; gap:9px; }
.destination-empty { padding:12px; border:1px dashed #3a4663; border-radius:11px; color:#8f9bb7; font-size:.72rem; text-align:center; }
.destination-row { display:grid; grid-template-columns:minmax(120px,.65fr) minmax(220px,1.6fr) minmax(115px,.55fr) auto; gap:8px; align-items:end; padding:11px; border:1px solid #303b56; border-radius:12px; background:#171d31; }
.destination-row label { display:grid; gap:4px; min-width:0; color:#b9c2d9; font-size:.68rem; font-weight:800; }
.destination-row .destination-remove { width:42px; min-height:45px; padding:0; border-color:#5a3445; color:#ff879d; }
.ghost.compact { min-height:38px; padding:8px 11px; white-space:nowrap; }
.asset-guide { display:grid; grid-template-columns:auto 1fr; gap:4px 12px; margin-bottom:15px; padding:14px; border:1px solid rgba(101,239,214,.34); border-radius:13px; background:rgba(19,61,57,.32); }
.asset-guide::before { content:"✓"; grid-row:1/3; display:grid; place-items:center; width:31px; height:31px; border-radius:50%; background:#1d5149; color:var(--biz-cyan); font-weight:900; }
.asset-guide b { color:var(--biz-cyan); }
.asset-guide span { color:#b5c1da; font-size:.73rem; line-height:1.45; }
.campaign-review { display:grid; gap:8px; margin:18px 0; padding:16px; border:1px solid #35405b; border-radius:14px; background:#161c30; }
.campaign-review-row { display:flex; justify-content:space-between; gap:16px; }
.campaign-review-row span { color:#929ebb; }
.campaign-review-row b { text-align:right; }
.no-charge-note { display:grid; gap:3px; margin:14px 0; padding:13px 14px; border:1px solid rgba(255,209,102,.42); border-radius:12px; background:rgba(71,52,20,.36); }
.no-charge-note b { color:var(--biz-gold); }
.no-charge-note span { color:#b7c1d7; font-size:.73rem; line-height:1.45; }
.checkout-submit { min-width:230px; }
.checkout-summary { position:sticky; top:16px; display:grid; gap:18px; min-width:0; margin:20px 20px 20px 0; padding:20px; border:1px solid #3b4662; border-radius:18px; background:linear-gradient(170deg,#1b2239,#12172a); box-shadow:0 18px 45px rgba(0,0,0,.2); }
.checkout-summary-head { display:grid; gap:3px; }
.checkout-summary-head span { color:var(--biz-cyan); font-size:.62rem; font-weight:900; letter-spacing:.12em; }
.checkout-summary-head b { font-family:var(--font-display); font-size:1.25rem; }
.checkout-summary dl { display:grid; gap:10px; margin:0; }
.checkout-summary dl div { display:grid; grid-template-columns:92px minmax(0,1fr); gap:10px; }
.checkout-summary dt { color:#818dab; font-size:.68rem; }
.checkout-summary dd { margin:0; overflow-wrap:anywhere; color:#e7ebf8; font-size:.73rem; font-weight:900; text-align:right; }
.checkout-divider { height:1px; background:#35405b; }
.checkout-summary section { display:grid; gap:7px; }
.checkout-summary h3 { margin:0; color:#aeb8d1; font-size:.69rem; letter-spacing:.08em; text-transform:uppercase; }
.checkout-summary ul { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.checkout-summary li { position:relative; padding-left:19px; color:#c8d0e4; font-size:.71rem; line-height:1.35; }
.checkout-summary li::before { content:"✓"; position:absolute; left:0; color:var(--biz-cyan); font-weight:900; }
#checkoutRequirements li::before { content:"→"; color:var(--biz-gold); }
.checkout-total { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding-top:14px; border-top:1px solid #35405b; }
.checkout-total span { color:#a7b1c9; font-size:.72rem; font-weight:800; }
.checkout-total b { color:var(--biz-gold); font-family:var(--font-display); font-size:1.5rem; }
.checkout-summary > p { margin:0; color:#7f8ba8; font-size:.64rem; line-height:1.45; }
.terms-check { display:flex; gap:10px; align-items:flex-start; color:#aab4cc; font-size:.75rem; line-height:1.45; }
.terms-check input { width:auto; min-height:auto; margin-top:3px; }
.terms-check a { color:var(--biz-gold); }
.form-status { min-height:24px; margin-top:10px; color:#aeb8d1; font-size:.78rem; font-weight:800; }
.form-status.error { color:#ff879d; }
.form-status.success { color:var(--biz-cyan); }
.manage-lookup { display:grid; grid-template-columns:1fr 1.5fr auto; gap:10px; align-items:end; margin-top:18px; }
.manage-lookup label { display:grid; gap:5px; color:#b9c2d9; font-size:.76rem; font-weight:800; }
.manage-campaign { margin-top:18px; padding-top:18px; border-top:1px solid #303a55; }
.manage-actions,.success-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:16px; }
.qa-preview-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 15px; border:1px solid #5c6b8f; border-radius:11px; background:#202a42; color:#f5f7ff; text-decoration:none; font-size:.78rem; font-weight:900; }
.qa-preview-link:hover { border-color:var(--biz-cyan); color:var(--biz-cyan); }
.success-actions { justify-content:center; }
.manage-summary { display:flex; flex-wrap:wrap; gap:8px; }
.manage-summary span { padding:6px 9px; border:1px solid #3a4664; border-radius:999px; background:#161d31; color:#bdc6dc; font-size:.7rem; font-weight:800; }
.brand-safety { display:grid; grid-template-columns:.85fr 1.15fr; gap:28px; }
.brand-safety ol { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.brand-safety li { display:flex; gap:10px; align-items:center; padding:10px; border:1px solid #303a54; border-radius:11px; background:#151b2d; font-size:.8rem; }
.brand-safety li span { display:grid; place-items:center; width:28px; height:28px; flex:none; border-radius:50%; background:#26304b; color:var(--biz-gold); }
.legal-note { grid-column:1/-1; margin:0; color:#8d99b5; font-size:.72rem; line-height:1.55; }
.campaign-success-dialog { width:min(500px,calc(100vw - 26px)); padding:28px; text-align:center; }
.campaign-success-dialog .success-mark { display:grid; place-items:center; width:58px; height:58px; margin:0 auto 8px; border-radius:50%; background:#153f39; color:var(--biz-cyan); font-size:1.7rem; font-weight:900; }
.campaign-success-dialog h2 { margin:5px 0; }
.booking-code { display:block; width:100%; margin:17px 0; padding:15px; border:1px dashed var(--biz-gold); border-radius:13px; background:#342a1c; color:var(--biz-gold); font:800 1.45rem var(--font-display); letter-spacing:.08em; cursor:pointer; }
.success-summary { display:grid; gap:6px; padding:12px; border-radius:12px; background:#11172a; color:#b7c1d9; font-size:.78rem; }
.hidden { display:none!important; }
@media (max-width:900px) {
  .business-hero { grid-template-columns:1fr; gap:28px; padding-top:20px; }
  .business-hero h1 { max-width:760px; }
  .campaign-preview { max-width:620px; }
  .placement-grid,.type-choice-grid { grid-template-columns:1fr; }
  .game-choice-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .placement-card { min-height:auto; grid-template-columns:auto 1fr auto; }
  .placement-price { grid-column:auto; align-self:center; display:grid; justify-items:end; }
  .brand-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .checkout-layout { grid-template-columns:1fr; }
  .checkout-summary { position:relative; top:auto; margin:0 18px 18px; }
}
@media (max-width:680px) {
  .business-page main { width:min(100% - 20px,1180px); padding-top:22px; }
  .business-nav > a:not(.ghost) { display:none; }
  .business-hero { min-height:0; }
  .business-hero h1 { font-size:2.65rem; }
  .proof-list { display:grid; gap:8px; }
  .campaign-preview { padding:17px; border-radius:19px; }
  .preview-metrics { grid-template-columns:1fr; }
  .section-shell { padding:18px; border-radius:18px; }
  .campaign-builder { padding:0; }
  .builder-heading { align-items:flex-start; padding:18px; }
  .builder-heading h2 { font-size:1.45rem; }
  .builder-progress { padding:0 18px 15px; }
  .builder-progress li { font-size:0; }
  .builder-progress li:not(:last-child)::after { left:31px; }
  .builder-step { min-height:0; padding:18px; }
  .product-search-row,.date-fields,.offer-grid,.contact-grid,.manage-lookup { grid-template-columns:1fr; }
  .requested-product-grid { grid-template-columns:1fr; }
  .destination-heading { align-items:flex-start; flex-direction:column; }
  .destination-heading .compact { width:100%; }
  .destination-row { grid-template-columns:1fr; }
  .destination-row .destination-remove { width:100%; min-height:40px; }
  .game-choice-grid { grid-template-columns:1fr 1fr; }
  .game-choice { min-height:82px; }
  .category-choice { grid-template-columns:1fr; }
  .category-choice p { grid-column:auto; }
  .requested-product-grid .wide { grid-column:auto; }
  .brand-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:380px; }
  .booking-calendar { gap:3px; }
  .calendar-day { min-height:52px; padding:5px; }
  .calendar-day small { display:none; }
  .placement-card { grid-template-columns:auto 1fr; }
  .placement-price { grid-column:1/-1; display:flex; justify-items:start; }
  .brand-safety { grid-template-columns:1fr; }
  .brand-safety .legal-note { grid-column:auto; }
  .builder-actions button { flex:1; padding-inline:8px; }
  .checkout-submit { min-width:0; }
  .checkout-summary { gap:14px; padding:16px; }
}
