:root{--bas-color-brand-primary:#a8d5d5;--bas-color-brand-primary-hover:#7bb8b8;--bas-color-brand-deep:#5a8a8a;--bas-color-brand-blue-gray:#89b8c5;--bas-color-brand-primary-30:#a8d5d54d;--bas-color-brand-primary-20:#a8d5d533;--bas-color-brand-gradient-start:#b8e5e5;--bas-color-brand-gradient-end:#a8d5d5;--bas-color-cta-primary:#000;--bas-color-cta-primary-hover:#2c2c2c;--bas-color-cta-accent:#a8d5d5;--bas-color-cta-accent-hover:#7bb8b8;--bas-color-cta-secondary-bg:#fff;--bas-color-cta-secondary-border:#1a1a1a;--bas-color-cta-secondary-hover-bg:#f5f5f7;--bas-color-surface-page:#fafafa;--bas-color-surface-page-tinted:#f8fafa;--bas-color-surface-subtle:#fafbfb;--bas-color-surface-card:#fff;--bas-color-surface-overlay:#fffffff2;--bas-color-text-primary:#1a1a1a;--bas-color-text-secondary:#4a5568;--bas-color-text-tertiary:#718096;--bas-color-text-inverse:#fff;--bas-color-text-promo:#363636;--bas-color-border-default:#e2eded;--bas-color-border-strong:#d1e0e0;--bas-color-border-accent:#a8d5d5;--bas-color-feedback-success:#4a9b7f;--bas-color-feedback-warning:#d4a05f;--bas-color-feedback-error:#c84b4b;--bas-color-feedback-info:#6b9bd1;--bas-font-family-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--bas-font-family-heading:"Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--bas-font-weight-regular:400;--bas-font-weight-medium:500;--bas-font-weight-semibold:600;--bas-font-weight-bold:700;--bas-font-size-xs:.75rem;--bas-font-size-sm:.875rem;--bas-font-size-base:1rem;--bas-font-size-lg:1.125rem;--bas-font-size-xl:1.25rem;--bas-font-size-2xl:1.5rem;--bas-font-size-3xl:1.875rem;--bas-font-size-4xl:2.25rem;--bas-font-size-5xl:3rem;--bas-font-size-6xl:3.75rem;--bas-font-line-height-tight:1.25;--bas-font-line-height-snug:1.375;--bas-font-line-height-normal:1.5;--bas-font-line-height-relaxed:1.625;--bas-font-line-height-loose:2;--bas-font-google-fonts-url:"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap";--bas-radius-sm:8px;--bas-radius-control:12px;--bas-radius-card:16px;--bas-radius-xl:20px;--bas-radius-2xl:24px;--bas-radius-full:9999px;--bas-shadow-xs:0 1px 2px #0000000a;--bas-shadow-sm:0 2px 4px #0000000f;--bas-shadow-md:0 4px 12px #00000014;--bas-shadow-lg:0 8px 24px #0000001a;--bas-shadow-xl:0 16px 48px #0000001f;--bas-shadow-card:0 2px 8px #0000001a;--bas-shadow-card-hover:0 4px 16px #00000024;--bas-spacing-xs:.25rem;--bas-spacing-sm:.5rem;--bas-spacing-md:1rem;--bas-spacing-lg:1.5rem;--bas-spacing-xl:2rem;--bas-spacing-2xl:3rem;--bas-spacing-3xl:4rem;--bas-spacing-4xl:6rem;--bas-spacing-5xl:8rem;--bas-layout-sidebar-width:260px;--bas-layout-topbar-height:70px;--bas-layout-container-max:1280px;--bas-layout-breakpoint-sm:640px;--bas-layout-breakpoint-md:768px;--bas-layout-breakpoint-lg:1024px;--bas-layout-breakpoint-xl:1280px;--bas-motion-fast:.15s cubic-bezier(.4, 0, .2, 1);--bas-motion-base:.2s cubic-bezier(.4, 0, .2, 1);--bas-motion-slow:.3s cubic-bezier(.4, 0, .2, 1);--bas-z-dropdown:100;--bas-z-sticky:200;--bas-z-overlay:300;--bas-z-modal:400;--bas-z-toast:500}
*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--bas-font-family-body);color:var(--bas-color-text-primary);background:var(--bas-color-surface-page);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4{font-family:var(--bas-font-family-heading);margin:0;font-weight:600;line-height:1.25}h1{font-size:clamp(2rem,4.5vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:1.375rem}h4{font-size:1.125rem}p{color:var(--bas-color-text-secondary);margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline-offset:2px;outline:2px solid #000}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.container{max-width:var(--bas-layout-container-max);margin:0 auto;padding:0 1.5rem}@media (max-width:640px){.container{padding:0 1rem}}.section{padding:5rem 0}.section--tight{padding:3rem 0}.section__heading{text-align:center;max-width:640px;margin:0 auto 3rem}.section__heading p{margin-top:.75rem;font-size:1.05rem}.muted{color:var(--bas-color-text-secondary)}.tertiary{color:var(--bas-color-text-tertiary);font-size:.9rem}.stack{gap:1rem;display:grid}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.grid{gap:1.5rem;display:grid}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid--4,.grid--3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}.btn{border-radius:var(--bas-radius-control);cursor:pointer;transition:transform var(--bas-motion-fast),background var(--bas-motion-fast),box-shadow var(--bas-motion-fast);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:1rem;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{color:#fff;background:#000}.btn--primary:hover:not(:disabled){background:var(--bas-color-cta-primary-hover);box-shadow:var(--bas-shadow-sm)}.btn--secondary{color:var(--bas-color-text-primary);border-color:var(--bas-color-cta-secondary-border);background:#fff}.btn--secondary:hover:not(:disabled){background:var(--bas-color-cta-secondary-hover-bg)}.btn--accent{background:var(--bas-color-cta-accent);color:var(--bas-color-text-primary)}.btn--accent:hover:not(:disabled){background:var(--bas-color-cta-accent-hover)}.btn--ghost{color:var(--bas-color-text-secondary);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--bas-color-cta-secondary-hover-bg);color:var(--bas-color-text-primary)}.btn--sm{padding:.5rem 1rem;font-size:.875rem}.btn--lg{padding:1rem 2rem;font-size:1.05rem}.btn--block{width:100%}.spinner{border:3px solid var(--bas-color-brand-primary-30);border-top-color:var(--bas-color-brand-deep);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.nav{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--bas-color-border-default);background:#ffffffeb;position:sticky;top:0}.nav .nav__inner{align-items:center;gap:2rem;height:72px;display:flex}.nav .nav__brand img{width:auto;height:28px}.nav .nav__links{align-items:center;gap:1.75rem;margin-left:auto;display:flex}.nav .nav__links a{color:var(--bas-color-text-secondary);font-size:.95rem}.nav .nav__links a:hover{color:var(--bas-color-text-primary)}@media (max-width:768px){.nav__links a:not(.btn){display:none}}.hero{background:var(--bas-color-surface-page-tinted);padding:5rem 0 4rem;position:relative;overflow:hidden}.hero .hero__inner{grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem;display:grid}.hero .hero__eyebrow{background:var(--bas-color-brand-primary-30);color:var(--bas-color-brand-deep);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--bas-radius-sm);margin-bottom:1.25rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.hero .hero__lead{max-width:520px;margin:1.25rem 0 2rem;font-size:1.15rem}.hero .hero__art{aspect-ratio:1/.85;position:relative}.hero .hero__squares{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.hero .hero__squares span{aspect-ratio:1;box-shadow:var(--bas-shadow-card);background:#fff;border:2px solid #1a1a1a;border-radius:14px}.hero .hero__squares span.filled{background:var(--bas-color-brand-primary)}.hero .hero__squares span.dark{background:#1a1a1a}.hero .hero__squares span.faint{border-color:var(--bas-color-border-strong);background:var(--bas-color-surface-subtle);box-shadow:none}.hero .hero__shape{background:var(--bas-color-brand-primary-20);border-radius:50%;position:absolute}.hero .hero__shape.s1{width:220px;height:220px;top:-60px;right:-40px}.hero .hero__shape.s2{width:120px;height:120px;bottom:20px;left:-30px}@media (max-width:900px){.hero{padding:3rem 0}.hero .hero__inner{grid-template-columns:1fr}.hero .hero__art{max-width:360px}}.card{border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-card);box-shadow:var(--bas-shadow-card);transition:transform var(--bas-motion-slow),box-shadow var(--bas-motion-slow);background:#fff;padding:2rem}.card:hover{box-shadow:var(--bas-shadow-card-hover);transform:translateY(-4px)}.card .card__icon{background:var(--bas-color-brand-primary-20);width:48px;height:48px;color:var(--bas-color-brand-deep);border-radius:12px;place-items:center;margin-bottom:1rem;font-size:1.35rem;display:grid}.card h3{margin-bottom:.5rem;font-size:1.15rem}.card--flat{padding:1.5rem}.card--flat:hover{transform:none}.feature{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.feature--reverse .feature__media{order:2}.feature .feature__media{border-radius:var(--bas-radius-xl);border:1px solid var(--bas-color-border-default);box-shadow:var(--bas-shadow-lg);aspect-ratio:4/3;background:#fff;place-items:center;padding:1.5rem;display:grid}.feature h2{margin-bottom:1rem}.feature p{font-size:1.05rem}.feature ul{gap:.6rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.feature ul li{align-items:flex-start;gap:.6rem;display:flex}.feature ul li:before{content:"✓";color:var(--bas-color-brand-deep);font-weight:700}@media (max-width:900px){.feature{grid-template-columns:1fr;gap:2rem}.feature .feature__media{order:0!important}}.band{background:linear-gradient(135deg, var(--bas-color-brand-gradient-start), var(--bas-color-brand-gradient-end));color:var(--bas-color-text-promo);padding:4rem 0}.band .band__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;display:flex}.band h2,.band p{color:var(--bas-color-text-promo)}.stats{text-align:center;grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.stats .stat{padding:1.5rem}.stats .stat .stat__value{font-family:var(--bas-font-family-heading);color:var(--bas-color-brand-deep);font-size:2.25rem;font-weight:600}@media (max-width:640px){.stats{grid-template-columns:1fr}}.footer{border-top:1px solid var(--bas-color-border-default);background:#fff;padding:3rem 0 0}.footer .footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;display:grid}.footer h4{margin-bottom:.75rem;font-size:1rem}.footer ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.footer ul a{color:var(--bas-color-text-secondary);font-size:.95rem}.footer ul a:hover{color:var(--bas-color-text-primary)}.footer .footer__bottom{border-top:1px solid var(--bas-color-border-default);color:var(--bas-color-text-tertiary);flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:2.5rem;padding:1.25rem 0;font-size:.85rem;display:flex}@media (max-width:900px){.footer__grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.footer__grid{grid-template-columns:1fr}}.event-card{flex-direction:column;padding:0;display:flex;overflow:hidden}.event-card .event-card__cover{aspect-ratio:16/9;background:linear-gradient(135deg, var(--bas-color-brand-gradient-start), var(--bas-color-surface-page-tinted));color:var(--bas-color-brand-deep);font-family:var(--bas-font-family-heading);place-items:center;font-weight:600;display:grid}.event-card .event-card__cover img{object-fit:cover;width:100%;height:100%}.event-card .event-card__body{gap:.4rem;padding:1.25rem;display:grid}.event-card .event-card__meta{color:var(--bas-color-text-tertiary);font-size:.875rem}.pill{border-radius:var(--bas-radius-sm);background:var(--bas-color-brand-primary-30);color:var(--bas-color-brand-deep);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.pill--neutral{color:var(--bas-color-text-secondary);background:#eef2f2}.pill--warning{color:#8a5f1f;background:#d4a05f33}.pill--error{color:#9a3131;background:#c84b4b24}.pill--success{color:#2f6f58;background:#4a9b7f2e}.pill--info{color:#2f5f93;background:#6b9bd12e}.event-hero{border-bottom:1px solid var(--bas-color-border-default);background:#fff}.event-hero .event-hero__inner{grid-template-columns:1.4fr 1fr;align-items:start;gap:3rem;padding:3rem 0;display:grid}.event-hero .event-hero__cover{border-radius:var(--bas-radius-xl);aspect-ratio:16/9;background:linear-gradient(135deg, var(--bas-color-brand-gradient-start), var(--bas-color-surface-page-tinted));color:var(--bas-color-brand-deep);font-family:var(--bas-font-family-heading);letter-spacing:.05em;place-items:center;font-size:2.5rem;font-weight:600;display:grid;overflow:hidden}.event-hero .event-hero__cover img{object-fit:cover;width:100%;height:100%}.event-hero .event-hero__meta{gap:.75rem;margin-top:1.25rem;font-size:1rem;display:grid}.event-hero .event-hero__meta .meta{align-items:flex-start;gap:.75rem;display:flex}.event-hero .event-hero__meta .meta span:first-child{color:var(--bas-color-brand-deep)}@media (max-width:900px){.event-hero__inner{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0}}.booking{grid-template-columns:1fr 380px;align-items:start;gap:2rem;padding:2.5rem 0 4rem;display:grid}.booking .booking__summary{position:sticky;top:90px}@media (max-width:1024px){.booking{grid-template-columns:1fr}.booking .booking__summary{order:2;position:static}}.ticket-row{border-bottom:1px solid var(--bas-color-border-default);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.ticket-row:last-child{border-bottom:0}.ticket-row .ticket-row__price{white-space:nowrap;font-weight:600}.ticket-row .ticket-row__desc{font-size:.9rem}.qty{border:1px solid var(--bas-color-border-strong);border-radius:var(--bas-radius-control);align-items:center;display:inline-flex;overflow:hidden}.qty button{cursor:pointer;background:#fff;border:0;width:36px;height:36px;font-size:1.1rem}.qty button:hover{background:var(--bas-color-cta-secondary-hover-bg)}.qty button:disabled{opacity:.4;cursor:not-allowed}.qty input{text-align:center;-moz-appearance:textfield;border:0;width:44px;height:36px}.summary .summary__line{justify-content:space-between;gap:1rem;padding:.35rem 0;font-size:.95rem;display:flex}.summary .summary__line.total{border-top:1px solid var(--bas-color-border-default);margin-top:.5rem;padding-top:.75rem;font-size:1.05rem;font-weight:600}.alert{border-radius:var(--bas-radius-control);border:1px solid;align-items:flex-start;gap:.75rem;padding:1rem;font-size:.95rem;display:flex}.alert .alert__title{color:var(--bas-color-text-primary);margin-bottom:.2rem;font-weight:600}.alert p{font-size:.95rem}.alert--info{background:#6b9bd11a;border-color:#6b9bd166}.alert--success{background:#4a9b7f1a;border-color:#4a9b7f66}.alert--warning{background:#d4a05f1f;border-color:#d4a05f80}.alert--error{background:#c84b4b14;border-color:#c84b4b66}.field{gap:.35rem;display:grid}.field label{font-size:.9rem;font-weight:500}.field .hint{color:var(--bas-color-text-tertiary);font-size:.8rem}.field .error{color:var(--bas-color-feedback-error);font-size:.8rem}.input,.select,.textarea{border:1px solid var(--bas-color-border-strong);border-radius:var(--bas-radius-control);background:#fff;width:100%;padding:.7rem .85rem}.input:focus,.select:focus,.textarea:focus{box-shadow:0 0 0 3px var(--bas-color-brand-primary-30);border-color:#000;outline:none}.input.is-error,.select.is-error,.textarea.is-error{border-color:var(--bas-color-feedback-error)}.textarea{resize:vertical;min-height:90px}.check{align-items:flex-start;gap:.6rem;font-size:.95rem;display:flex}.check input{accent-color:#000;width:16px;height:16px;margin-top:.25rem}.hold-timer{font-variant-numeric:tabular-nums;align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.hold-timer.is-urgent{color:var(--bas-color-feedback-error)}.steps{color:var(--bas-color-text-tertiary);flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;font-size:.85rem;display:flex}.steps .step{align-items:center;gap:.4rem;display:inline-flex}.steps .step.is-active{color:var(--bas-color-text-primary);font-weight:600}.steps .step.is-done{color:var(--bas-color-brand-deep)}.legend{flex-wrap:wrap;gap:1rem;font-size:.85rem;display:flex}.legend .legend__item{align-items:center;gap:.4rem;display:inline-flex}.legend .legend__swatch{border:2px solid var(--bas-color-brand-deep);background:#fff;border-radius:4px;width:18px;height:18px}.legend .legend__swatch.held{background:repeating-linear-gradient(45deg,#fff 0 4px,#d4a05f 4px 6px);border-color:#d4a05f}.legend .legend__swatch.pending{background:#6b9bd126;border-style:dotted;border-color:#6b9bd1}.legend .legend__swatch.booked{background:#d8dfe7;border-color:#8486a7}.legend .legend__swatch.blocked{background:repeating-linear-gradient(-45deg,#f3f3f3 0 4px,#c84b4b33 4px 6px);border-color:#c84b4b}.legend .legend__swatch.selected{background:var(--bas-color-brand-primary);border-color:#000;box-shadow:inset 0 0 0 2px #000}.map-wrap{border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-card);touch-action:none;background:#f2f5f5;height:min(70vh,640px);position:relative;overflow:hidden}.map-wrap .map-controls{z-index:2;gap:.35rem;display:grid;position:absolute;top:.75rem;right:.75rem}.map-wrap .map-controls button{border:1px solid var(--bas-color-border-default);cursor:pointer;width:36px;height:36px;box-shadow:var(--bas-shadow-sm);background:#fff;border-radius:8px}.booth-list{gap:.5rem;display:grid}.booth-list .booth-item{border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-control);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.booth-list .booth-item.is-selected{border-color:#000;box-shadow:inset 0 0 0 1px #000}.booth-list .booth-item.is-unavailable{opacity:.75;background:var(--bas-color-surface-subtle)}.booth-list .booth-item .booth-item__label{font-weight:600;font-family:var(--bas-font-family-heading)}.booth-detail{border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-control);background:#fff;padding:1rem}.ticket-qr{border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-control);background:#fff;grid-template-columns:140px 1fr;align-items:center;gap:1rem;padding:1rem;display:grid}.ticket-qr img{width:140px;height:140px}.ticket-qr.is-revoked{opacity:.55}@media (max-width:480px){.ticket-qr{text-align:center;grid-template-columns:1fr;justify-items:center}}.status-list{gap:.5rem;display:grid}.status-list .status-list__item{border-bottom:1px solid var(--bas-color-border-default);justify-content:space-between;gap:1rem;padding:.6rem 0;font-size:.95rem;display:flex}.status-list .status-list__item:last-child{border-bottom:0}.prose{max-width:760px}.prose h2{margin:2rem 0 .75rem;font-size:1.5rem}.prose p{margin-bottom:1rem}.prose ul{color:var(--bas-color-text-secondary)}.filters{flex-wrap:wrap;gap:.75rem;margin-bottom:2rem;display:flex}.filters .input,.filters .select{width:auto;min-width:180px}.pagination{justify-content:center;gap:.5rem;margin-top:2rem;display:flex}.empty{text-align:center;color:var(--bas-color-text-secondary);padding:4rem 1rem}.empty h3{margin-bottom:.5rem}.coming-soon{background:linear-gradient(160deg, var(--bas-color-brand-gradient-start), var(--bas-color-surface-page-tinted) 55%, #fff);place-items:center;min-height:100vh;padding:2rem 1rem;display:grid}.coming-soon__card{text-align:center;border:1px solid var(--bas-color-border-default);border-radius:var(--bas-radius-xl);background:#fff;justify-items:center;gap:1rem;max-width:520px;padding:3rem 2rem;display:grid;box-shadow:0 12px 40px #5a8a8a1f}.coming-soon__card h1{margin:.5rem 0 0;font-size:2.25rem}.coming-soon__card p{color:var(--bas-color-text-secondary)}.coming-soon__links a{color:var(--bas-color-brand-deep);font-weight:600}
