/*
Theme Name: Back In Time
Description: Tema Gutenberg per Back In Time — The Exhibition.
Version: 1.2.0
Text Domain: back-in-time
*/

@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap');

:root { --bit-cyan:#10e5ff; --bit-yellow:#ffd313; --bit-violet:#7d30ff; --bit-ink:#05070c; --bit-panel:#111524; --bit-logo-ice:#eef2fc; --bit-logo-lilac:#d3cffc; --bit-logo-lavender:#9a68fd; --bit-logo-indigo:#5a18fe; --bit-logo-blue:#0964ce; --bit-logo-lightning:#159cde; --bit-logo-gold:#b39e4e; --bit-logo-dark-gold:#8f781f; --bit-gradient-orange:linear-gradient(90deg,#f04e25 0%,#ff8a00 42%,#ffc928 74%,#ffd313 100%); --bit-gradient-chrome:linear-gradient(180deg,#eef2fc 0%,#d3cffc 28%,#9a68fd 58%,#5a18fe 100%); --bit-gradient-lightning:linear-gradient(135deg,#eef2fc 0%,#6bbae6 30%,#159cde 62%,#0964ce 100%); --bit-gradient-gold:linear-gradient(180deg,#d3cda0 0%,#b39e4e 52%,#8f781f 100%); --bit-gradient-portal:linear-gradient(125deg,#5a18fe 0%,#9a68fd 42%,#159cde 74%,#eef2fc 100%); --bit-pixel:var(--wp--preset--font-family--retro-arcade,'Press Start 2P',monospace); --bit-score:'Monument Grotesk',Arial,sans-serif; --bit-grid:rgba(16,229,255,.045); }
body { overflow-x:clip; background:var(--bit-ink); font-family:'Monument Grotesk',Arial,sans-serif; }
h1,h2,h3,h4,h5,h6,.bit-display,.bit-logo,.bit-date,.bit-brand { font-family:'Monument Grotesk',Arial,sans-serif; }
h1,h2,h3,h4,h5,h6 { font-weight:800; }
.bit-hero h1 em,.bit-display em,.bit-display strong,.bit-page-hero h1 em { font-family:'Monument Grotesk',Arial,sans-serif; font-style:italic; font-weight:900; }
.wp-site-blocks { overflow:hidden; }
.bit-header { position:absolute; top:0; left:0; right:0; z-index:20; padding:30px 0; background:linear-gradient(180deg,rgba(5,7,12,.75),transparent); }
.bit-header > .wp-block-group { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.wp-block-navigation .wp-block-navigation-item__content { min-height:44px; display:inline-flex; align-items:center; padding-inline:4px; font-family:'Monument Grotesk',sans-serif; font-weight:700; letter-spacing:.04em; font-size:15px; color:#fff!important; }
.bit-logo { transform:skew(-9deg); line-height:.75; letter-spacing:-.06em; white-space:nowrap; }
.bit-logo p:first-child { margin:0; font-size:25px; font-weight:900; background:linear-gradient(#eef6ff 20%,#bb9bff 43%,#7e1aff 75%); -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-stroke:.5px #e5ddff; }
.bit-logo p:last-child { color:var(--bit-yellow); font-size:12px; letter-spacing:.18em; font-weight:800; text-align:center; margin:6px 0 0; }
.bit-logo a { color:inherit; text-decoration:none; }
.bit-header-cta .wp-block-button__link { background:transparent; color:var(--bit-cyan); border:1px solid var(--bit-cyan); border-radius:0; font-weight:800; letter-spacing:.08em; padding:12px 14px; }
.bit-hero { height:min(100svh,56.25vw); min-height:600px; display:flex; position:relative; overflow:hidden; margin-top:0!important; padding:0!important; background-color:#05070c; isolation:isolate; }
.bit-hero::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#05070c 4%,rgba(5,7,12,.86) 32%,rgba(5,7,12,.17) 69%,rgba(5,7,12,.24)),linear-gradient(0deg,#05070c 0%,transparent 32%); z-index:1; }
.bit-hero .wp-block-cover__background { z-index:0; opacity:0!important; }
.bit-hero .wp-block-cover__image-background { z-index:0; object-fit:cover; object-position:center; filter:saturate(1.13) contrast(1.1); transform:scale(1.02); }
.bit-hero .wp-block-cover__inner-container { position:relative; z-index:2; flex:0 0 100%; width:100%; max-width:none!important; height:100%; box-sizing:border-box; display:flex; align-items:flex-start; padding:clamp(105px,11vh,145px) 0 25px; }
.bit-hero .wp-block-cover__inner-container > .wp-block-group { width:min(1180px,calc(100% - 64px))!important; max-width:1180px!important; margin-inline:auto; }
.bit-hero-layout { height:100%; display:flex!important; flex-direction:column!important; flex-wrap:nowrap!important; justify-content:space-between!important; align-items:stretch!important; gap:0!important; }
.bit-hero-copy { position:static; width:100%!important; max-width:none!important; margin:0!important; }
.bit-hero-copy > * { margin-left:0!important; margin-right:auto!important; }
.bit-kicker { font-family:'Space Mono',monospace; font-size:12px; letter-spacing:.14em; color:var(--bit-cyan); }
.bit-hero h1,.bit-display { line-height:.86; letter-spacing:-.033em; font-weight:700; text-transform:uppercase; }
.bit-hero h1 { font-size:clamp(72px,10vw,150px); }
.bit-display { font-size:clamp(64px,7vw,112px); }
.bit-hero h1 { max-width:660px!important; margin:0; text-shadow:0 0 30px #342071; }
.bit-hero h1 > span { display:inline-block; background:linear-gradient(180deg,#fff 0%,#fff 74%,#d9d4e6 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.bit-hero h1 em,.bit-display em,.bit-display strong { display:inline-block; color:var(--bit-cyan); font-style:italic; }
.bit-hero h1 em { white-space:nowrap; }
.bit-display em,.bit-display strong { max-width:100%; white-space:normal; overflow-wrap:normal; text-wrap:balance; }
.bit-hero-summary { max-width:520px!important; margin:28px 0 30px!important; font-size:20px; font-weight:500; line-height:1.12; letter-spacing:.015em; }
.bit-hero-summary strong { color:var(--bit-yellow); font-weight:700; }
.bit-hero-actions-row { width:100%; margin:34px 0 auto!important; }
.bit-hero-actions { gap:11px; }
.bit-button--ghost .wp-block-button__link { padding:15px 25px; border:1px solid rgba(255,255,255,.58); border-radius:0; background:transparent; color:#fff; font-size:14px; font-weight:800; letter-spacing:.08em; }
.bit-date { color:var(--bit-yellow); font-size:clamp(24px,3vw,38px); font-weight:800; letter-spacing:.02em; }
.bit-hero-meta { width:100%; margin:0!important; }
.bit-hero .bit-date { position:static; margin:0!important; color:#fff; font-size:18px; font-weight:800; letter-spacing:.04em; text-align:right; }
.bit-hero .bit-date span { margin:0 14px; color:var(--bit-cyan); }
.bit-scroll { position:static; margin:0!important; color:#fff; font-family:'Space Mono',monospace; font-size:12px; letter-spacing:.12em; }
.bit-scroll span { padding-left:10px; color:var(--bit-cyan); font-size:18px; }
.bit-ticker { overflow:hidden; padding:0; background:var(--wp--preset--color--cyan)!important; color:#05151b; }
.bit-ticker__track { width:max-content!important; max-width:none!important; gap:0!important; margin:0!important; animation:bit-marquee 24s linear infinite; }
.bit-ticker__track p { flex:none; margin:0; padding:11px 18px 9px; color:inherit!important; font-family:var(--wp--preset--font-family--display); font-size:23px; font-weight:900; letter-spacing:.025em; text-transform:uppercase; white-space:nowrap; }
.bit-ticker:hover .bit-ticker__track,.bit-ticker:focus-within .bit-ticker__track { animation-play-state:paused; }
.bit-early-bird { position:relative; z-index:5; width:min(1180px,calc(100% - 64px)); margin:-30px auto 30px!important; padding:0!important; border:1px solid rgba(255,211,19,.72); background-color:#0b0e17; background-image:linear-gradient(135deg,rgba(255,211,19,.11),transparent 38%),linear-gradient(var(--bit-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bit-grid) 1px,transparent 1px); background-size:auto,24px 24px,24px 24px; box-shadow:6px 6px 0 rgba(125,48,255,.34),0 18px 60px rgba(0,0,0,.42); }
.bit-early-bird__inner { width:100%; padding:clamp(22px,3vw,34px); gap:clamp(20px,3vw,42px); }
.bit-early-bird__inner > .wp-block-group { flex:1 1 620px; }
.bit-early-bird h2 { margin:0 0 9px; color:var(--bit-yellow); font-size:var(--bit-type-xl,clamp(1.5rem,1.3rem + .9vw,2rem)); line-height:1; letter-spacing:-.015em; }
.bit-early-bird p { margin:0; max-width:780px; color:#fff; font-size:var(--bit-type-base,1rem); line-height:1.35; }
.bit-early-bird .wp-block-buttons { flex:0 0 auto; }
@keyframes bit-marquee { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .bit-ticker__track { animation:none; transform:none; } }
.bit-button .wp-block-button__link { background:var(--bit-yellow); color:#05070c; border-radius:0; font-weight:800; letter-spacing:.08em; padding:16px 20px; }
.bit-button .wp-block-button__link:hover { background:var(--bit-cyan); }
.bit-section { padding-top:100px!important; padding-bottom:100px!important; }
.bit-section--panel { background:var(--bit-panel); }
.bit-home-intro > .wp-block-columns:not(.bit-stats) { display:grid!important; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:clamp(48px,5vw,96px); align-items:end!important; }
.bit-home-intro > .wp-block-columns:not(.bit-stats) > .wp-block-column { min-width:0; width:auto!important; }
.bit-home-intro .bit-display { max-width:100%; font-size:clamp(64px,6vw,80px); }
.bit-page-hero { min-height:660px; margin-top:0!important; padding:150px 0 90px!important; isolation:isolate; }
.bit-page-hero::before { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(5,7,12,.98) 0%,rgba(5,7,12,.82) 42%,rgba(5,7,12,.16) 78%),linear-gradient(0deg,#05070c 0%,transparent 35%); }
.bit-page-hero .wp-block-cover__background,.bit-page-hero .wp-block-cover__image-background { z-index:0; }
.bit-page-hero .wp-block-cover__image-background { filter:saturate(1.08) contrast(1.08); }
.bit-page-hero .wp-block-cover__inner-container { position:relative; z-index:2; width:min(1180px,calc(100% - 64px)); }
.bit-page-hero__content { max-width:750px!important; margin-left:0!important; }
.bit-page-hero h1 { margin:.08em 0 .18em; font-size:clamp(76px,10vw,150px); font-weight:700; line-height:.84; letter-spacing:-.033em; text-transform:uppercase; text-shadow:0 0 30px rgba(52,32,113,.9); }
.bit-page-hero h1 em { color:var(--bit-cyan); font-style:italic; }
.bit-page-lead { max-width:680px!important; margin-left:0!important; font-size:clamp(20px,2vw,27px); line-height:1.25; }
.bit-page-hero--show .wp-block-cover__image-background { object-position:center; }
.bit-page-hero--info .wp-block-cover__image-background { object-position:70% 29%; }
.bit-display--inner { font-size:clamp(58px,7vw,104px); line-height:.9; }
.bit-stat { border-top:1px solid #32405a; padding-top:22px; }
.bit-stat strong { display:block; font-size:64px; line-height:.8; letter-spacing:-.06em; }
.bit-card { height:100%; border:1px solid #31405a; padding:28px; background:linear-gradient(135deg,#151d31,#080a10); }
.bit-card::after { content:""; position:absolute; inset:-45% -20% auto; height:80%; pointer-events:none; background:radial-gradient(circle,rgba(16,229,255,.12),transparent 66%); opacity:0; transition:opacity .25s ease; }
.bit-card:hover::after { opacity:1; }
.bit-card h3 { margin-top:55px; font-size:30px; line-height:.9; }
.bit-card p { color:#b8c3d4; }
.bit-card--numbered h3 { margin-top:28px; font-size:clamp(34px,4vw,56px); }
.bit-gallery { margin-top:40px!important; }
.bit-gallery + .bit-gallery { margin-top:24px!important; }
.bit-gallery__image { position:relative; overflow:hidden; margin:0!important; border:1px solid #31405a; background:#080a10; }
.bit-gallery__image img { display:block; width:100%; aspect-ratio:3/2; object-fit:cover; transition:transform .55s cubic-bezier(.22,1,.36,1),filter .55s ease; }
.bit-gallery__image:hover img { transform:scale(1.025); filter:saturate(1.1); }
.bit-gallery__image figcaption { position:absolute; left:0; right:0; bottom:0; margin:0; padding:34px 18px 14px; color:#fff; font-family:'Monument Grotesk',sans-serif; font-size:16px; font-weight:700; letter-spacing:.025em; text-align:left; text-transform:uppercase; background:linear-gradient(transparent,rgba(5,7,12,.92)); }
.bit-object-grid { margin-top:48px!important; gap:24px!important; align-items:stretch!important; }
.bit-object-grid + .bit-object-grid { margin-top:24px!important; }
.bit-object-card { position:relative; height:100%; overflow:hidden; padding:0!important; border:1px solid rgba(154,104,253,.42); background:#070912; box-shadow:7px 7px 0 rgba(9,100,206,.15); }
.bit-object-card::before { content:""; position:absolute; z-index:3; top:0; left:0; width:92px; height:3px; background:var(--bit-gradient-portal); box-shadow:0 0 18px rgba(21,156,222,.6); }
.wp-site-blocks .bit-object-reel { position:relative; display:block!important; width:100%; aspect-ratio:3/2; margin:0!important; overflow:hidden; background:#030306; }
.wp-site-blocks .bit-object-reel .wp-block-image { position:absolute!important; inset:0; width:100%!important; height:100%!important; margin:0!important; opacity:0; visibility:hidden; transition:opacity .34s ease,visibility .34s step-end; }
.wp-site-blocks .bit-object-reel .wp-block-image:first-child,.wp-site-blocks .bit-object-reel .wp-block-image.is-bit-active { opacity:1; visibility:visible; transition:opacity .34s ease,visibility 0s; }
.wp-site-blocks .bit-object-reel.is-bit-ready .wp-block-image:first-child:not(.is-bit-active) { opacity:0; visibility:hidden; }
.wp-site-blocks .bit-object-reel.is-bit-static .wp-block-image { opacity:1; visibility:visible; transition:none; }
.wp-site-blocks .bit-object-reel .wp-block-image img { display:block; width:100%!important; height:100%!important; aspect-ratio:3/2; object-fit:cover; }
.bit-object-card__caption { display:flex!important; flex-wrap:nowrap!important; justify-content:space-between!important; align-items:flex-end!important; gap:20px!important; min-height:104px; margin:0!important; padding:22px 24px 20px!important; border-top:1px solid rgba(21,156,222,.35); background:linear-gradient(135deg,rgba(90,24,254,.12),transparent 46%); }
.bit-object-card__caption h3 { margin:0!important; font-size:clamp(22px,2.1vw,34px); line-height:1; text-transform:uppercase; }
.bit-object-card__caption p { flex:none; margin:0!important; color:var(--bit-logo-lightning); font-family:var(--bit-pixel); font-size:12px; line-height:1.45; letter-spacing:.05em; text-align:right; text-transform:uppercase; }
.bit-object-card:is(:hover,:focus-within) { border-color:var(--bit-logo-lightning); box-shadow:7px 7px 0 rgba(90,24,254,.32),0 18px 48px rgba(21,156,222,.12); }
.bit-vehicle-grid { margin-top:24px!important; }
.bit-vehicle-grid:first-of-type { margin-top:52px!important; }
.bit-offer-card { position:relative; overflow:hidden; padding:30px; border:1px solid var(--bit-yellow); background:linear-gradient(145deg,rgba(255,211,19,.14),rgba(17,21,36,.9)); }
.bit-offer-card h3 { margin:9px 0 12px; color:var(--bit-yellow); font-size:clamp(38px,4vw,62px); line-height:.88; }
.bit-offer-card__label { color:#fff; font-family:'Space Mono',monospace; font-size:12px; letter-spacing:.08em; }
.bit-schedule-columns { margin-top:52px!important; }
.bit-date-card { height:100%; padding:32px; border-top:4px solid var(--bit-cyan); background:#090c14; }
.bit-date-card--accent { border-top-color:var(--bit-yellow); }
.bit-date-card h3 { margin:22px 0 20px; font-size:clamp(38px,5vw,64px); line-height:.92; }
.bit-address { font-size:clamp(24px,3vw,36px); line-height:1.25!important; }
.bit-route-list > .wp-block-group { padding:24px 0; border-top:1px solid #3a4963; }
.bit-route-list > .wp-block-group:last-child { border-bottom:1px solid #3a4963; }
.bit-final-cta { position:relative; text-align:center; background:radial-gradient(circle at 50% 30%,rgba(125,48,255,.24),transparent 45%); }
.bit-final-cta .wp-block-buttons { justify-content:center; }
.bit-timeline { border-top:1px solid #3a4963; }
.bit-timeline > .wp-block-group { display:grid; grid-template-columns:minmax(130px,25%) minmax(0,1fr); align-items:center; gap:clamp(24px,5vw,80px); min-height:92px; border-bottom:1px solid #3a4963; padding:18px 0; }
.bit-timeline > .wp-block-group > * { width:100%; max-width:none!important; margin:0!important; justify-self:stretch; }
.bit-timeline time { font-family:'Space Mono',monospace; color:var(--bit-yellow); font-size:12px; }
.bit-timeline strong { display:block; font-size:21px; line-height:1; margin-bottom:7px; }
.bit-feature-icon { display:grid; place-items:center; width:54px; height:54px; margin:2px 0 22px!important; color:var(--bit-cyan); border:1px solid rgba(16,229,255,.55); background:rgba(16,229,255,.06); box-shadow:inset 0 0 22px rgba(16,229,255,.06); }
.bit-feature-icon svg { display:block; width:30px; height:30px; }
.bit-feature-icon--retro { width:58px; height:58px; margin-bottom:24px!important; box-shadow:5px 5px 0 rgba(125,48,255,.28),inset 0 0 22px rgba(16,229,255,.08); }
.bit-card .bit-feature-icon + h3 { margin-top:10px; }
.bit-faq { border-top:1px solid #3a4963; padding:20px 0; }
.bit-faq:last-child { border-bottom:1px solid #3a4963; }
.bit-faq summary { cursor:pointer; font-size:24px; font-weight:800; }
.bit-faq p { color:#bdc7d7; max-width:760px; }
.bit-section p { line-height:1.4; }
.bit-section h2:not(.bit-display) { line-height:1; }
.bit-legal { font-size:12px; color:#94a1b7; }

/* Retro arcade layer: CRT texture, scoreboard type and neon cabinet details. */
.wp-site-blocks { position:relative; }
.wp-site-blocks::before { content:""; position:fixed; inset:0; z-index:999; pointer-events:none; opacity:.045; background:repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.22) 1px,transparent 1px,transparent 4px); mix-blend-mode:screen; animation:bit-crt-flicker 6s steps(2,end) infinite; }
.wp-site-blocks::after { content:""; position:fixed; inset:0; z-index:998; pointer-events:none; background:radial-gradient(ellipse at center,transparent 54%,rgba(0,0,0,.22) 100%); }
.bit-header::after { content:""; position:absolute; left:50%; bottom:8px; width:min(1180px,calc(100% - 64px)); height:1px; transform:translateX(-50%); background:linear-gradient(90deg,transparent,var(--bit-violet),var(--bit-cyan),transparent); opacity:.5; box-shadow:0 0 12px var(--bit-cyan); }
.bit-kicker { font-family:var(--bit-pixel); font-size:12px; line-height:1.6; letter-spacing:.09em; }
.bit-kicker::before { content:"[ "; color:var(--bit-violet); }
.bit-kicker::after { content:" _ ]"; color:var(--bit-yellow); animation:bit-cursor 1.15s steps(2,end) infinite; }
.bit-hero h1 em,.bit-display em,.bit-display strong,.bit-page-hero h1 em { text-shadow:3px 3px 0 rgba(125,48,255,.72),0 0 24px rgba(16,229,255,.38); }
.bit-hero::after,.bit-page-hero::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; opacity:.1; background:repeating-linear-gradient(0deg,transparent 0,transparent 5px,rgba(16,229,255,.18) 6px); }
.bit-ticker { background-color:var(--bit-cyan)!important; background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.18) 0,rgba(255,255,255,.18) 8px,transparent 8px,transparent 18px); box-shadow:0 0 28px rgba(16,229,255,.28); }
.bit-ticker__track p { font-family:var(--bit-score); font-size:31px; font-weight:400; letter-spacing:.055em; text-shadow:1px 1px 0 rgba(125,48,255,.45); }
.bit-section--panel { position:relative; overflow:hidden; background-color:var(--bit-panel)!important; background-image:linear-gradient(var(--bit-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bit-grid) 1px,transparent 1px),radial-gradient(circle at 20% 0,rgba(125,48,255,.16),transparent 38%)!important; background-size:48px 48px,48px 48px,auto!important; }
.bit-section--panel > * { position:relative; z-index:1; }
.bit-card { background-color:#080b13; background-image:linear-gradient(135deg,rgba(16,229,255,.075),transparent 34%),repeating-linear-gradient(135deg,transparent 0,transparent 16px,rgba(125,48,255,.025) 16px,rgba(125,48,255,.025) 17px); box-shadow:inset 0 0 0 1px rgba(5,7,12,.7); }
.bit-card::before { content:""; position:absolute; top:-1px; left:-1px; width:62px; height:4px; background:var(--bit-cyan); box-shadow:0 0 16px var(--bit-cyan),65px 0 0 -1px var(--bit-violet); }
.bit-card:hover { border-color:var(--bit-cyan); box-shadow:6px 6px 0 rgba(125,48,255,.28),0 18px 55px rgba(16,229,255,.13),inset 0 0 30px rgba(16,229,255,.035); }
.bit-card .bit-kicker { color:#b9c6d9; }
.bit-card h3 { text-shadow:2px 2px 0 rgba(125,48,255,.4); }
.bit-feature-icon { background-color:rgba(5,7,12,.78); background-image:linear-gradient(90deg,transparent 48%,rgba(16,229,255,.09) 50%,transparent 52%),linear-gradient(transparent 48%,rgba(16,229,255,.09) 50%,transparent 52%); background-size:8px 8px; }
.bit-stat { position:relative; }
.bit-stat::before { content:""; position:absolute; top:-1px; left:0; width:42px; height:2px; background:var(--bit-cyan); box-shadow:0 0 10px var(--bit-cyan); }
.bit-stat strong { font-family:var(--bit-score); font-size:82px; font-weight:400; letter-spacing:.015em; color:#fff; text-shadow:3px 3px 0 rgba(125,48,255,.65),0 0 18px rgba(16,229,255,.22); }
.bit-button .wp-block-button__link,.bit-button--ghost .wp-block-button__link,.bit-header-cta .wp-block-button__link { position:relative; font-family:var(--bit-pixel); font-size:12px; line-height:1.5; }
.bit-button .wp-block-button__link { border-width:2px; border-style:solid; }
.bit-button .wp-block-button__link:not(.has-border-color):not([style*="border-color"]) { border-color:var(--bit-yellow); }
.bit-button .wp-block-button__link:not([class*="-shadow"]):not([style*="box-shadow"]) { box-shadow:4px 4px 0 rgba(125,48,255,.58); }
.bit-button .wp-block-button__link:not([class*="-shadow"]):not([style*="box-shadow"]):hover { box-shadow:2px 2px 0 rgba(125,48,255,.7),0 0 24px rgba(16,229,255,.28); }
.bit-button--ghost .wp-block-button__link:not([class*="-shadow"]):not([style*="box-shadow"]),.bit-header-cta .wp-block-button__link:not([class*="-shadow"]):not([style*="box-shadow"]) { box-shadow:4px 4px 0 rgba(16,229,255,.18); }
.wp-block-button:not(.bit-button--ghost):not(.bit-header-cta):not(.is-style-outline) .wp-block-button__link {
  background-color:var(--bit-yellow)!important;
  background-image:linear-gradient(180deg,#ffd313 0%,#ffbd12 48%,#f05a24 100%)!important;
  color:#05070c;
}
.wp-block-button:not(.bit-button--ghost):not(.bit-header-cta):not(.is-style-outline) .wp-block-button__link:hover {
  background-color:var(--bit-yellow)!important;
  background-image:linear-gradient(180deg,#ffe14b 0%,#ffc526 48%,#ff6a2b 100%)!important;
  filter:brightness(1.04);
}
.bit-offer-card,.bit-date-card { background-image:linear-gradient(135deg,rgba(255,211,19,.09),transparent 42%),linear-gradient(var(--bit-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bit-grid) 1px,transparent 1px); background-size:auto,24px 24px,24px 24px; }
.bit-offer-card::after { content:none; }
.bit-timeline time { font-family:var(--bit-pixel); font-size:12px; }
.bit-faq summary { display:flex; align-items:center; justify-content:space-between; gap:24px; }

/* Footer partner strip — editable core Image blocks, ordered as supplied. */
.bit-footer { overflow:hidden; border-top:1px solid #31405a; }
.bit-footer-partners { width:100%; max-width:none!important; padding:clamp(24px,2.4vw,40px) clamp(20px,4vw,72px)!important; border-bottom:4px solid var(--bit-ink); color:var(--bit-ink); }
.bit-footer-partners__grid { display:grid!important; grid-template-columns:repeat(8,minmax(0,1fr))!important; align-items:center; gap:clamp(18px,2vw,38px); width:100%; max-width:1920px!important; margin:0 auto!important; }
.bit-footer-logo { display:flex; align-items:center; justify-content:center; width:100%!important; min-width:0; min-height:96px; margin:0!important; }
.bit-footer-logo img { display:block; width:100%; max-width:190px; height:88px; object-fit:contain; object-position:center; }
.bit-footer-logo--museum img,.bit-footer-logo--padova img,.bit-footer-logo--exhibition img { max-width:230px; }
.bit-footer-logo--ritorno img,.bit-footer-logo--outatime img { height:104px; }
.bit-footer-main { width:calc(100% - 48px); max-width:1440px!important; margin:0 auto!important; padding:48px 0 40px; }

@media (max-width:1200px) {
  .bit-footer-partners__grid { grid-template-columns:repeat(4,minmax(0,1fr))!important; row-gap:28px; }
}

@media (max-width:640px) {
  .bit-footer-partners { padding:28px 20px!important; }
  .bit-footer-partners__grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:20px 24px; }
  .bit-footer-logo { min-height:82px; }
  .bit-footer-logo img { height:72px; }
  .bit-footer-logo--ritorno img,.bit-footer-logo--outatime img { height:86px; }
  .bit-footer-main { width:calc(100% - 40px); padding:36px 0 32px; }
}
.bit-faq summary::after { content:"[ + ]"; flex:none; color:var(--bit-cyan); font-family:var(--bit-pixel); font-size:12px; }
.bit-faq[open] summary::after { content:"[ − ]"; color:var(--bit-yellow); }
@keyframes bit-cursor { 50% { opacity:.15; } }
@keyframes bit-crt-flicker { 0%,100% { opacity:.038; } 50% { opacity:.058; } }
@media (prefers-reduced-motion:reduce) { .wp-site-blocks::before,.bit-kicker::after { animation:none; }.bit-kicker::after { opacity:1; } }
@media (prefers-reduced-motion:reduce) { .wp-site-blocks .bit-object-reel .wp-block-image{transition:none}.wp-site-blocks .bit-object-reel .wp-block-image:not(:first-child){display:none} }
@media (max-width:780px) { .bit-header::after{width:calc(100% - 32px)}.bit-header-cta .wp-block-button__link{font-size:12px}.bit-ticker__track p{font-size:23px}.bit-card .bit-feature-icon + h3{margin-top:10px}.bit-stat strong{font-size:58px} }
@media (max-width:780px) { .bit-object-grid{gap:20px!important}.bit-object-grid + .bit-object-grid{margin-top:20px!important}.bit-object-card__caption{min-height:88px;padding:18px!important}.bit-object-card__caption p{font-size:12px} }
@media (max-width:780px) { .bit-early-bird{width:calc(100% - 32px);margin:-16px auto 20px!important}.bit-early-bird__inner{align-items:flex-start!important}.bit-early-bird .wp-block-buttons{width:100%}.bit-early-bird .wp-block-button,.bit-early-bird .wp-block-button__link{width:100%} }
@media (max-width: 980px) { .bit-home-intro > .wp-block-columns:not(.bit-stats) { grid-template-columns:1fr; gap:36px; }.bit-home-intro .bit-display { max-width:820px; }.bit-home-intro > .wp-block-columns:not(.bit-stats) .wp-block-column:last-child { max-width:620px; } }
@media (max-width: 780px) { .bit-header{padding:16px 0}.bit-header > .wp-block-group{width:calc(100% - 32px)}.bit-logo p:first-child{font-size:19px}.bit-header-cta{display:block}.bit-header-cta .wp-block-button__link{min-height:44px;padding:9px 10px;font-size:12px}.bit-hero{height:auto;min-height:690px}.bit-hero::before{background:linear-gradient(90deg,#05070c 0%,rgba(5,7,12,.82) 68%,rgba(5,7,12,.28)),linear-gradient(0deg,#05070c 0%,transparent 42%)}.bit-hero .wp-block-cover__image-background{object-position:64% center}.bit-hero .wp-block-cover__inner-container{padding:98px 0 25px}.bit-hero .wp-block-cover__inner-container > .wp-block-group{width:calc(100% - 40px)}.bit-hero h1{font-size:clamp(54px,17vw,68px)}.bit-display em,.bit-display strong{white-space:normal}.bit-hero-summary{font-size:18px}.bit-hero-actions{flex-wrap:wrap}.bit-hero .bit-date{font-size:14px}.bit-hero-meta{gap:18px}.bit-scroll{max-width:125px;line-height:1.35}.bit-ticker__track p{font-size:18px}.bit-section{padding-top:72px!important;padding-bottom:72px!important}.bit-page-hero{min-height:620px;padding:120px 0 68px!important}.bit-page-hero::before{background:linear-gradient(90deg,rgba(5,7,12,.96),rgba(5,7,12,.65)),linear-gradient(0deg,#05070c,transparent 55%)}.bit-page-hero .wp-block-cover__inner-container{width:calc(100% - 40px)}.bit-page-hero h1{font-size:clamp(58px,17vw,88px)}.bit-page-lead{font-size:19px}.bit-page-hero--info .wp-block-cover__image-background{object-position:61% 24%}.bit-display--inner{font-size:clamp(50px,14vw,76px)}.bit-gallery + .bit-gallery{margin-top:24px!important}.bit-timeline > .wp-block-group{grid-template-columns:1fr;gap:7px;min-height:0;padding:20px 0}.bit-card h3{margin-top:32px}.bit-offer-card,.bit-date-card{padding:24px}.wp-block-navigation__responsive-container-open{color:var(--bit-cyan)} }

/* Fluid typography scale: 320px → 1920px. */
:root {
  --bit-type-2xs:clamp(.75rem,.72rem + .12vw,.8125rem);
  --bit-type-xs:clamp(.75rem,.70rem + .22vw,.875rem);
  --bit-type-sm:clamp(.875rem,.82rem + .25vw,1rem);
  --bit-type-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --bit-type-lg:clamp(1.125rem,1.03rem + .46vw,1.375rem);
  --bit-type-xl:clamp(1.5rem,1.3rem + .9vw,2rem);
  --bit-type-display:clamp(3rem,2.05rem + 4.2vw,6rem);
  --bit-type-hero:clamp(4rem,2.35rem + 6.4vw,8.5rem);
}
body { font-size:var(--bit-type-base); line-height:1.5; }
.bit-kicker,.bit-scroll,.bit-legal { font-size:var(--bit-type-2xs); }
.wp-block-navigation .wp-block-navigation-item__content { font-size:var(--bit-type-sm); }
.bit-hero h1 { font-size:var(--bit-type-hero); line-height:.88; letter-spacing:-.035em; text-wrap:balance; }
.bit-display,.bit-display--inner,.bit-page-hero h1 { font-size:var(--bit-type-display); line-height:.94; letter-spacing:-.03em; text-wrap:balance; }
.bit-hero-summary,.bit-page-lead,.bit-section>p:not(.bit-kicker),.bit-card p { font-size:var(--bit-type-base); line-height:1.5; }
.bit-card h3 { font-size:var(--bit-type-xl); line-height:1.05; }

/* Monument Grotesk is global; the approved arcade face remains on buttons only. */
body { font-family:var(--wp--preset--font-family--body,'Monument Grotesk',Arial,sans-serif); }
.bit-button .wp-block-button__link,
.bit-button--ghost .wp-block-button__link,
.bit-header-cta .wp-block-button__link { font-family:var(--bit-pixel); }
.bit-scroll,.bit-offer-card__label,.bit-timeline time,.bit-ticker__track p,.bit-stat strong { font-family:'Monument Grotesk',Arial,sans-serif; }
.bit-kicker { font-family:var(--bit-pixel); }

/* Centered poster-style homepage hero built with core Gutenberg blocks. */
.bit-hero--centered { height:min(100svh,980px); min-height:760px; }
.bit-hero--centered::before { background:linear-gradient(180deg,rgba(5,7,12,.68) 0%,rgba(5,7,12,.2) 38%,rgba(5,7,12,.74) 100%),radial-gradient(circle at 50% 42%,rgba(20,16,48,.04),rgba(5,7,12,.6) 80%); }
.bit-hero--centered .wp-block-cover__image-background { object-position:center 72%!important; filter:saturate(1.05) contrast(1.08); }
.bit-hero--centered .wp-block-cover__inner-container { align-items:stretch; padding:clamp(112px,12vh,148px) 0 clamp(24px,4vh,42px); }
.bit-hero--centered .bit-hero-layout { align-items:center!important; }
.bit-hero-topline { width:100%!important; max-width:none!important; display:grid!important; grid-template-columns:minmax(100px,180px) minmax(0,1fr) minmax(100px,180px); align-items:start!important; gap:clamp(18px,4vw,64px)!important; margin:0!important; }
.bit-hero-partner { width:100%!important; max-width:180px!important; margin:0!important; }
.bit-hero-partner img { display:block; width:100%; height:clamp(62px,8vw,105px); object-fit:contain; }
.bit-hero-partner--teamfox { justify-self:start; }
.bit-hero-partner--teamfox img { object-position:left top; }
.bit-hero-partner--bttf { justify-self:end; }
.bit-hero-partner--bttf img { object-position:right top; }
.bit-hero-event-meta { width:100%!important; max-width:620px!important; margin:auto!important; text-align:center; text-transform:uppercase; }
.bit-hero-event-meta p { margin:0!important; font-size:var(--bit-type-sm); line-height:1.25; font-weight:700; letter-spacing:.045em; }
.bit-hero-event-meta p:first-child { padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.9); font-size:var(--bit-type-lg); }
.bit-hero-event-meta p:last-child { padding-top:8px; }
.bit-hero-event-meta span { margin-inline:.4em; color:var(--bit-cyan); }
.bit-hero--centered .bit-hero-copy { width:min(900px,100%)!important; max-width:900px!important; margin:auto!important; display:flex!important; flex-direction:column!important; align-items:center!important; text-align:center; }
.bit-hero--centered .bit-hero-copy > * { margin-left:auto!important; margin-right:auto!important; }
.bit-hero-main-logo { width:min(760px,82vw)!important; max-width:760px!important; margin:0 auto!important; }
.bit-hero-main-logo img { display:block; width:100%; height:auto; filter:drop-shadow(0 12px 30px rgba(0,0,0,.55)); }
.bit-hero--centered .bit-hero-summary { max-width:680px!important; margin:clamp(18px,3vh,28px) auto 7px!important; font-size:var(--bit-type-xl); line-height:1.08; font-weight:700; letter-spacing:.01em; text-wrap:balance; }
.bit-hero-subline { max-width:780px!important; margin:0 auto clamp(22px,3vh,34px)!important; color:var(--bit-yellow); font-size:var(--bit-type-base); line-height:1.25; font-weight:700; letter-spacing:.035em; text-align:center; text-wrap:balance; }
.bit-hero--centered .bit-hero-actions { justify-content:center!important; }
.bit-hero--centered .bit-scroll { margin:0 auto!important; text-align:center; white-space:nowrap; }

@media (max-width:780px) {
  .bit-header .wp-block-navigation__responsive-container.is-menu-open {
    position:fixed;
    inset:0;
    z-index:100000;
    display:flex;
    width:100vw;
    height:100dvh;
    padding:24px;
    overflow-y:auto;
    color:#fff!important;
    background:
      linear-gradient(135deg,rgba(125,48,255,.18),transparent 42%),
      repeating-linear-gradient(0deg,rgba(16,229,255,.025) 0 1px,transparent 1px 4px),
      #05070c!important;
  }
  .bit-header .wp-block-navigation__responsive-container-content {
    width:100%;
    align-items:stretch!important;
    padding-top:76px!important;
  }
  .bit-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
    width:100%;
    align-items:stretch!important;
    gap:0!important;
  }
  .bit-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
    width:100%;
    border-bottom:1px solid rgba(16,229,255,.25);
  }
  .bit-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    display:flex!important;
    width:100%;
    min-height:60px;
    box-sizing:border-box;
    justify-content:flex-start;
    padding:12px 4px!important;
    color:#fff!important;
    font-size:clamp(20px,7vw,30px);
    line-height:1.2;
    opacity:1!important;
  }
  .bit-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover,
  .bit-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:focus-visible {
    color:var(--bit-cyan)!important;
  }
  .bit-header .wp-block-navigation__responsive-container-close,
  .bit-header .wp-block-navigation__responsive-container-open {
    display:inline-flex;
    min-width:44px;
    min-height:44px;
    align-items:center;
    justify-content:center;
    color:var(--bit-cyan)!important;
  }
  .bit-header .wp-block-navigation__responsive-container-close:focus-visible,
  .bit-header .wp-block-navigation__responsive-container-open:focus-visible {
    outline:2px solid var(--bit-yellow);
    outline-offset:3px;
  }
  .bit-hero--centered { min-height:760px; }
  .bit-hero--centered .wp-block-cover__inner-container { padding:90px 0 24px; }
  .bit-hero--centered .wp-block-cover__inner-container > .wp-block-group { width:calc(100% - 32px)!important; }
  .bit-hero-topline { grid-template-columns:72px minmax(0,1fr) 72px; gap:10px!important; }
  .bit-hero-partner img { height:55px; }
  .bit-hero-event-meta p { font-size:12px; }
  .bit-hero-event-meta p:first-child { font-size:12px; }
  .bit-hero-main-logo { width:min(620px,94vw)!important; }
  .bit-hero--centered .bit-hero-summary { font-size:var(--bit-type-lg); }
  .bit-hero-subline { font-size:var(--bit-type-sm); }
}
