:root{
  --ink:#081a3a;
  --text:#243149;
  --muted:#687184;
  --accent:#ef8a17;
  --accent-dark:#b85c00;
  --paper:#fcfaf6;
  --paper-deep:#f3efe7;
  --white:#ffffff;
  --line:#dedbd4;
  --success:#197447;
  --danger:#a93434;
  --shell:1160px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--text);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}
button,input,textarea,select{font:inherit}
[hidden]{display:none!important}

.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:10px 14px;background:var(--ink);color:#fff;transform:translateY(-160%);text-decoration:none}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid #f7ad52;outline-offset:3px}

.shell{width:min(calc(100% - 44px),var(--shell));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(8,26,58,.09);backdrop-filter:blur(12px)}
.header-inner{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-weight:750;letter-spacing:-.025em;white-space:nowrap}
.brand img{width:39px;height:39px;object-fit:cover;border-radius:50%}
.nav{display:flex;align-items:center;gap:21px;color:var(--ink);font-size:.92rem;font-weight:650}
.nav>a,.nav summary{text-decoration:none;cursor:pointer;padding:10px 0}
.nav>a:hover,.nav summary:hover,.nav a[aria-current="page"]{color:var(--accent-dark)}
.nav-dropdown{position:relative}
.nav-dropdown summary{list-style:none}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary::after{content:"↓";margin-left:5px;font-size:.78em}
.nav-dropdown-menu{position:absolute;top:calc(100% + 10px);left:-16px;min-width:205px;padding:8px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 28px rgba(8,26,58,.08)}
.nav-dropdown-menu a{display:block;padding:10px 11px;text-decoration:none;color:var(--ink)}
.nav-dropdown-menu a:hover{background:var(--paper)}
.menu-button{display:none;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink);font-size:1.4rem;cursor:pointer}

main{min-height:65vh}
.hero{padding:102px 0 88px;background:var(--paper);border-bottom:1px solid var(--line)}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:72px;align-items:end}
.hero .kicker,.eyebrow{margin:0 0 12px;color:var(--accent-dark);font-size:.74rem;line-height:1.35;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.hero h1,.page-hero h1,.section-heading h2,.creator-call h2,.community-call h2{font-family:"Bricolage Grotesque",sans-serif;color:var(--ink);font-weight:720;letter-spacing:-.055em}
.hero h1{max-width:870px;margin:0;font-size:clamp(3.4rem,7.2vw,6.9rem);line-height:.91}
.hero h1 em{font-style:normal;color:var(--accent-dark)}
.hero-lead{max-width:720px;margin:26px 0 0;font-size:1.14rem;color:var(--muted)}
.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:31px}
.hero-route{justify-self:end;max-width:285px;padding-left:31px;border-left:2px solid var(--accent);color:var(--muted)}
.hero-route strong{display:block;margin-bottom:8px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.18rem}
.hero-route p{margin:0}

.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid transparent;border-radius:8px;background:transparent;text-decoration:none;font-weight:700;cursor:pointer;transition:transform .16s cubic-bezier(.2,.8,.2,1),background-color .16s cubic-bezier(.2,.8,.2,1),border-color .16s cubic-bezier(.2,.8,.2,1)}
.button:hover{transform:translateY(-1px)}
.button.primary{background:var(--ink);color:#fff}
.button.primary:hover{background:#122a53}
.button.accent{background:var(--accent);color:#241507}
.button.secondary{border-color:var(--line);background:#fff;color:var(--ink)}
.button.danger-button{border-color:#e4b3b3;background:#fff;color:var(--danger)}
.text-link,.text-cta{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}
.text-link:hover,.text-cta:hover{color:var(--accent-dark)}

.section{padding:92px 0}
.section-white{background:#fff}
.section-soft{background:var(--paper-deep)}
.section-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.65fr);gap:60px;align-items:end;margin-bottom:42px}
.section-heading h2{margin:0;font-size:clamp(2.5rem,5vw,4.6rem);line-height:.96}
.section-heading>p{margin:0;color:var(--muted);max-width:480px;justify-self:end}
.section-more{margin-top:26px}

.event-list{border-top:1px solid var(--ink)}
.event-row{display:grid;grid-template-columns:155px minmax(0,1fr) auto;gap:28px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}
.event-date{color:var(--ink);font-weight:650}
.event-date small{display:block;color:var(--muted);font-weight:400}
.event-main h3{margin:0 0 5px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.45rem;letter-spacing:-.025em}
.event-main p{margin:0;color:var(--muted)}
.event-label{display:inline-block;margin-bottom:6px;color:var(--accent-dark);font-size:.71rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.event-action{text-align:right}
.event-action .status{color:var(--muted);font-size:.9rem}
.inline-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:9px}

.live-alert{background:var(--ink);color:#fff;padding:25px 0}
.live-alert-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.live-alert h2{margin:0 0 3px;font-family:"Bricolage Grotesque",sans-serif;font-size:1.6rem;letter-spacing:-.02em}
.live-alert p{margin:0;color:#cbd4e3}
.live-dot{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:50%;background:#ff4f45;box-shadow:0 0 0 4px rgba(255,79,69,.17)}
.live-alert .button{background:#fff;color:var(--ink)}

.past-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:31px 24px}
.past-item{min-width:0}
.past-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#e7e3dc;border-radius:8px}
.past-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.past-thumb:hover img{transform:scale(1.015)}
.play-mark{position:absolute;left:14px;bottom:13px;display:grid;place-items:center;width:42px;height:42px;background:rgba(8,26,58,.92);color:#fff;border-radius:50%;font-size:.8rem}
.past-item .event-label{margin-top:14px}
.past-item h3{margin:2px 0 5px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.28rem;line-height:1.13;letter-spacing:-.025em}
.past-item p{margin:0;color:var(--muted);font-size:.94rem}
.past-item .inline-links{margin-top:5px}

.creator-call{padding:78px 0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.creator-call-inner,.community-call-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:50px}
.creator-call h2,.community-call h2{max-width:800px;margin:0;font-size:clamp(2.4rem,4.8vw,4.3rem);line-height:.98}
.creator-call p:not(.eyebrow),.community-call p:not(.eyebrow){max-width:720px;margin:16px 0 0;color:var(--muted)}
.community-call{padding:82px 0;background:#fff}
.community-call-inner{padding-left:25px;border-left:4px solid var(--accent)}

.offer-list{border-top:1px solid var(--ink)}
.offer-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.6fr) auto;gap:28px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.offer-row h3{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.4rem}
.offer-row p{margin:4px 0 0;color:var(--muted)}
.offer-badge{display:inline-block;margin-bottom:5px;color:var(--accent-dark);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.offer-code{color:var(--ink);font-weight:700}

.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.social-link{min-height:105px;padding:19px 16px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:var(--ink);border-right:1px solid var(--line);transition:background-color .16s cubic-bezier(.2,.8,.2,1)}
.social-link:last-child{border-right:0}
.social-link:hover{background:#fff}
.social-name{display:flex;align-items:center;gap:9px;font-family:"Bricolage Grotesque",sans-serif;font-size:1.12rem;font-weight:700}
.social-label{color:var(--muted);font-size:.86rem;overflow-wrap:anywhere}
.social-arrow{align-self:flex-end;color:var(--accent-dark)}

.page-hero{padding:82px 0 59px;border-bottom:1px solid var(--line)}
.page-hero h1{max-width:900px;margin:0;font-size:clamp(3rem,6vw,5.8rem);line-height:.92}
.page-hero .lead{max-width:730px;margin:22px 0 0;color:var(--muted);font-size:1.08rem}
.page-body{padding:62px 0 100px}
.page-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px;color:var(--muted)}

.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 24px}
.archive-item .past-thumb{margin-bottom:14px}
.archive-item h2{margin:2px 0 5px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.4rem;line-height:1.12}
.archive-item p{margin:0;color:var(--muted)}


.inline-step-link{color:var(--ink);font-weight:700;text-underline-offset:4px;white-space:nowrap}
.inline-step-link:hover{color:var(--accent-dark)}

.playlist-preview-list{border-top:1px solid var(--ink)}
.playlist-preview{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:18px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.playlist-preview>span{font-size:1.35rem}
.playlist-preview strong{font-family:"Bricolage Grotesque",sans-serif;font-size:1.2rem}
.playlist-preview em{font-style:normal;color:var(--muted);font-size:.9rem}
.playlist-preview:hover strong,.playlist-preview:hover em{color:var(--accent-dark)}

.playlist-directory,.author-video-section{margin-top:72px;padding-top:39px;border-top:1px solid var(--line)}
.playlist-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);gap:60px;align-items:end;margin-bottom:28px}
.playlist-intro h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(2.1rem,4vw,3.6rem);line-height:.98;letter-spacing:-.045em}
.playlist-intro>p:last-child{margin:0;max-width:480px;justify-self:end;color:var(--muted)}
.playlist-list{border-top:1px solid var(--ink)}
.playlist-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:22px;padding:25px 0;border-bottom:1px solid var(--line)}
.playlist-symbol{font-size:1.7rem;line-height:1.2;padding-top:2px}
.playlist-copy h3{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.45rem;letter-spacing:-.025em}
.playlist-copy p{margin:4px 0 0;color:var(--muted)}

.catalog-list{border-top:1px solid var(--ink)}
.catalog-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:27px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}
.catalog-cover{width:120px;aspect-ratio:4/3;object-fit:cover;background:var(--paper-deep);border-radius:6px}
.catalog-row h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.55rem}
.catalog-row p{margin:5px 0 0;color:var(--muted)}
.catalog-meta{color:var(--accent-dark)!important;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

.game-hero{padding:78px 0 46px;border-bottom:1px solid var(--line)}
.game-title{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(3.1rem,7vw,6.2rem);line-height:.9;letter-spacing:-.06em}
.game-lead{max-width:760px;color:var(--muted);font-size:1.08rem}
.game-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.55fr);gap:70px;padding:55px 0 100px}
.game-section{padding:31px 0;border-bottom:1px solid var(--line)}
.game-section:first-child{padding-top:0}
.game-section h2,.store-panel h2{margin:0 0 19px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.8rem;letter-spacing:-.03em}
.store-panel{padding:22px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}
.store-note{font-size:.85rem;color:var(--muted)}
.steam-widget{width:100%;height:190px;border:0;margin-top:18px}

.steps{border-top:1px solid var(--ink)}
.step-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:28px;padding:28px 0;border-bottom:1px solid var(--line)}
.step-no{font-family:"Bricolage Grotesque",sans-serif;font-size:2.1rem;font-weight:700;color:var(--accent-dark)}
.step-row h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.55rem}
.step-row p{margin:5px 0 0;color:var(--muted)}
.creator-note{margin-top:35px;padding:22px 0;border-top:1px solid var(--line);color:var(--muted)}

.state{padding:29px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.state strong{display:block;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.15rem}
.state p{margin:5px 0 0;color:var(--muted)}
.state[data-kind="error"]{border-top-color:var(--danger)}
.loading-line{height:2px;width:100%;overflow:hidden;background:var(--line);margin-top:16px}
.loading-line::after{content:"";display:block;width:32%;height:100%;background:var(--accent);animation:loading 1.15s ease-in-out infinite alternate}
@keyframes loading{from{transform:translateX(-15%)}to{transform:translateX(260%)}}

.footer{border-top:1px solid var(--line);background:#fff}
.footer-inner{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:.88rem}
.footer-inner p{margin:0}
.footer-inner a{color:var(--ink);text-underline-offset:3px}

/* Mini pannello admin: volutamente funzionale, separato dalla grammatica editoriale pubblica. */
.admin-body{background:var(--paper-deep)}
.admin-shell{padding-bottom:90px}
.admin-head{padding:54px 0 29px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.admin-head h1{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(2.4rem,5.5vw,4.7rem);line-height:.95;letter-spacing:-.05em;max-width:880px}
.admin-head p:not(.eyebrow),.admin-help{color:var(--muted);max-width:760px}
.admin-card,.admin-notice{background:#fff;border:1px solid var(--line);padding:24px}
.admin-notice{margin:20px 0}
.admin-notice.danger{border-color:#e8bcbc;background:#fffafa}
.admin-login{max-width:540px}
.admin-card h2,.admin-notice h2{margin:0 0 14px;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif}
.admin-form{display:grid;gap:15px}
.admin-form.two-cols,.two-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.admin-form label,.admin-fieldset label{display:grid;gap:6px;color:var(--ink);font-weight:650;font-size:.9rem}
.admin-form input,.admin-form textarea,.admin-form select,.admin-fieldset input,.admin-fieldset select{width:100%;border:1px solid #ccd1d9;border-radius:6px;padding:11px;background:#fff;color:var(--ink)}
.admin-form textarea{resize:vertical}
.admin-form small{color:var(--muted);font-weight:400}
.span-2{grid-column:1/-1}
.check-row{display:flex!important;align-items:center;gap:8px!important}.check-row input{width:auto!important}
.admin-fieldset{border:1px solid var(--line);padding:17px}.admin-fieldset legend{padding:0 6px;color:var(--ink);font-weight:700}
.admin-message{min-height:1.2em;color:var(--muted)}.admin-message.error{color:var(--danger)}.admin-message.success{color:var(--success)}
.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}
.admin-tabs{display:flex;gap:4px;padding:4px;background:#e5e3de}.admin-tab,.small-action{appearance:none;border:0;cursor:pointer;font-weight:700}.admin-tab{padding:9px 13px;background:transparent;color:#5f6878}.admin-tab.active{background:#fff;color:var(--ink)}
.admin-grid{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.6fr);gap:18px}
.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.small-action{background:#fff2df;color:#934900;padding:8px 10px}
.admin-list{display:grid;gap:6px;margin-top:14px}.admin-list-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:left;border:1px solid var(--line);background:#fff;padding:11px 12px;cursor:pointer;color:var(--ink)}.admin-list-item:hover,.admin-list-item.selected{border-color:#e3a14e;background:#fffbf4}.admin-list-item span,.admin-list-item strong,.admin-list-item small{display:block}.admin-list-item small{margin-top:3px;color:var(--muted)}
.status-dot{width:9px;height:9px;border-radius:50%;background:#adb4bf;flex:0 0 auto}.status-dot.on{background:#2b9a5b}.admin-empty{color:var(--muted)}.admin-actions{display:flex;gap:9px;align-items:center}.admin-card code,.admin-notice code{background:#f0eee8;padding:2px 5px}.admin-tab-panel[hidden]{display:none!important}.social-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.social-admin-item{display:grid;gap:12px}

@media(max-width:980px){
  .nav{gap:14px;font-size:.86rem}.hero-inner{grid-template-columns:1fr;gap:35px}.hero-route{justify-self:start;max-width:520px}.section-heading{grid-template-columns:1fr;gap:17px}.section-heading>p{justify-self:start}.past-grid,.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.offer-row{grid-template-columns:1fr auto}.offer-row>div:nth-child(2){grid-column:1/2}.creator-call-inner,.community-call-inner{grid-template-columns:1fr;align-items:start}.game-layout{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
  .shell{width:min(calc(100% - 30px),var(--shell))}.header-inner{min-height:62px}.brand span{font-size:.92rem}.brand img{width:35px;height:35px}.menu-button{display:block}.nav{position:fixed;left:15px;right:15px;top:72px;display:none;align-items:stretch;gap:0;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 42px rgba(8,26,58,.12);font-size:1rem}.nav.open{display:flex;flex-direction:column}.nav>a,.nav summary{display:block;padding:12px}.nav-dropdown-menu{position:static;border:0;box-shadow:none;padding:0 0 5px 15px}.nav-dropdown-menu a{padding:9px 12px}
  .hero{padding:72px 0 60px}.hero h1{font-size:clamp(3rem,15vw,4.9rem)}.hero-route{display:none}.hero-lead{font-size:1.02rem}.section{padding:70px 0}.section-heading h2{font-size:clamp(2.45rem,12vw,3.7rem)}
  .event-row{grid-template-columns:1fr;gap:9px;padding:22px 0}.event-action{text-align:left}.live-alert-inner{align-items:flex-start;flex-direction:column}.past-grid,.archive-grid{grid-template-columns:1fr}.offer-row{grid-template-columns:1fr;gap:9px}.social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.playlist-preview{grid-template-columns:36px minmax(0,1fr)}.playlist-preview em{grid-column:2}.playlist-intro{grid-template-columns:1fr;gap:12px}.playlist-intro>p:last-child{justify-self:start}.playlist-row{grid-template-columns:42px minmax(0,1fr);gap:14px}.social-link{border-bottom:1px solid var(--line)}.social-link:nth-child(odd){border-right:1px solid var(--line)}.social-link:nth-child(even){border-right:0}.social-link:last-child{border-bottom:0}.admin-body .nav{position:static;display:flex;padding:0;border:0;box-shadow:none;font-size:.86rem}.page-hero{padding:65px 0 47px}.page-body{padding:45px 0 76px}.catalog-row{grid-template-columns:85px minmax(0,1fr);gap:16px}.catalog-cover{width:85px}.catalog-row>.text-link{grid-column:2}.game-layout{padding-top:38px;gap:40px}.step-row{grid-template-columns:48px minmax(0,1fr);gap:17px}.footer-inner{padding:18px 0;align-items:flex-start;flex-direction:column;gap:4px}.admin-head,.admin-toolbar{align-items:flex-start;flex-direction:column}.admin-form.two-cols,.two-cols,.social-admin-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.admin-tabs{max-width:100%;overflow:auto}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.redirect-page{min-height:100vh;display:grid;place-content:center;justify-items:start;max-width:720px;margin:auto;padding:40px 24px}.redirect-page img{width:72px;height:72px;border-radius:50%;margin-bottom:20px}.redirect-page h1{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(2.5rem,7vw,5rem);line-height:.95;letter-spacing:-.05em}.redirect-page p:not(.eyebrow){color:var(--muted)}

/* V11.2 — archivio ricercabile, pagine community/chi siamo e admin Eventbrite */
.nav{gap:17px}
.playlist-row.simple{grid-template-columns:64px minmax(0,1fr) auto;align-items:center}
.playlist-row.simple>.text-link{white-space:nowrap}

.game-browser{margin-bottom:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.game-search{display:grid;gap:8px;max-width:650px}.game-search label{color:var(--ink);font-weight:700}.search-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.game-search input{min-height:48px;border:1px solid #bcc3ce;background:#fff;color:var(--ink);padding:10px 13px;border-radius:6px}
.game-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:19px}.game-filters button{appearance:none;border:1px solid var(--line);background:transparent;color:var(--ink);min-height:40px;padding:7px 12px;border-radius:5px;cursor:pointer;font-weight:650}.game-filters button:hover,.game-filters button.active{border-color:var(--ink);background:var(--ink);color:#fff}
.browser-summary{margin-top:16px;color:var(--muted);font-size:.92rem}
.pager{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:34px}.pager button{appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);min-width:42px;min-height:42px;padding:7px 10px;border-radius:5px;cursor:pointer;font-weight:650}.pager button[aria-current="page"]{background:var(--ink);color:#fff;border-color:var(--ink)}.pager button:disabled{opacity:.42;cursor:default}.pager span{padding:0 3px;color:var(--muted)}

.about-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:72px;align-items:center}.about-photo{margin:0}.about-photo img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.about-photo figcaption{margin-top:11px;color:var(--muted);font-size:.9rem}.about-copy h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(2.4rem,4.5vw,4.2rem);line-height:.98;letter-spacing:-.045em}.about-copy p:not(.eyebrow){color:var(--muted);max-width:650px}

.community-directory{border-top:1px solid var(--ink)}.community-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.community-row h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.8rem;letter-spacing:-.03em}.community-row p{margin:5px 0 0;max-width:720px;color:var(--muted)}

.posting-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.eventbrite-setup-line{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:9px;align-items:center;margin-top:18px}.eventbrite-setup-line select{min-height:42px;border:1px solid #ccd1d9;background:#fff;color:var(--ink);padding:8px 10px}.admin-stack{display:grid;gap:18px}.invite-actions{margin-top:18px;flex-wrap:wrap}.disabled-link{pointer-events:none;opacity:.4}.admin-help code{color:var(--ink)}

@media(max-width:1050px){.nav{gap:11px;font-size:.82rem}.posting-admin-grid{grid-template-columns:1fr}}
@media(max-width:760px){.playlist-row.simple{grid-template-columns:42px minmax(0,1fr)}.playlist-row.simple>.text-link{grid-column:2;white-space:normal}.search-line{grid-template-columns:1fr}.about-layout{grid-template-columns:1fr;gap:35px}.community-row{grid-template-columns:1fr;gap:12px}.eventbrite-setup-line{grid-template-columns:1fr}.game-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}

.platform-icon{width:1.18em;height:1.18em;display:inline-block;flex:0 0 auto;vertical-align:-.18em}
.button .platform-icon,.text-link .platform-icon{margin-right:7px}
.social-name .platform-icon{width:1.25em;height:1.25em}
.community-title{display:flex;align-items:center;gap:10px}
.community-title .platform-icon{width:1.15em;height:1.15em}

.support-call{padding:72px 0;background:var(--paper-deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.support-call-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:50px}
.support-call h2{max-width:780px;margin:0;font-size:clamp(2.25rem,4.5vw,4rem);line-height:.98}
.support-call p:not(.eyebrow){max-width:700px;margin:15px 0 0;color:var(--muted)}
.support-directory{border-top:1px solid var(--ink)}
.support-row{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr) auto;gap:30px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}
.support-row h2{margin:0;color:var(--ink);font-family:"Bricolage Grotesque",sans-serif;font-size:1.55rem;letter-spacing:-.025em}
.support-row p{margin:0;color:var(--muted);max-width:660px}
.support-kind{display:block;margin-bottom:4px;color:var(--accent-dark);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.support-disclosure{margin-top:34px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}

@media(max-width:1180px) and (min-width:761px){.header-inner{gap:14px}.brand span{display:none}.nav{gap:12px;font-size:.84rem}}
@media(max-width:760px){.support-call-inner,.support-row{grid-template-columns:1fr;align-items:start}.support-row{gap:10px}}

/* PAC v11.5.5 — superfici pubbliche sempre bianche */
html,
body{
  background:#fff;
}

body:not(.admin-body) main,
body:not(.admin-body) .hero,
body:not(.admin-body) .page-body,
body:not(.admin-body) .section,
body:not(.admin-body) .section-white,
body:not(.admin-body) .section-soft,
body:not(.admin-body) .creator-call,
body:not(.admin-body) .community-call,
body:not(.admin-body) .game-hero,
body:not(.admin-body) .game-section,
body:not(.admin-body) .support-call{
  background:#fff;
}

/* PAC v11.5.8 — icone editoriali leggere */
.step-marker{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
}
.step-icon{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  color:var(--accent-dark);
}
.step-icon svg{
  width:27px;
  height:27px;
  display:block;
}
.support-heading{
  display:flex;
  align-items:center;
  gap:14px;
}
.support-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:var(--accent-dark);
  border:1px solid var(--line);
  border-radius:50%;
}
.support-icon svg{
  width:23px;
  height:23px;
  display:block;
}

@media(max-width:760px){
  .step-marker{gap:6px}
  .step-icon{width:25px;height:25px}
  .step-icon svg{width:23px;height:23px}
  .support-icon{width:38px;height:38px}
}


/* PAC v11.5.9 — step 03: tre famiglie di gioco */
.step-icon-set{
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--accent-dark);
}
.step-icon-set svg{
  width:22px;
  height:22px;
  display:block;
}
@media(max-width:760px){
  .step-icon-set{
    gap:5px;
    flex-wrap:wrap;
  }
  .step-icon-set svg{
    width:20px;
    height:20px;
  }
}


/* PAC v11.5.13 — archivio giochi e pagina gioco */
.game-title-link{
  color:inherit;
  text-decoration:none;
}
.game-title-link:hover,
.game-title-link:focus-visible{
  text-decoration:underline;
  text-underline-offset:4px;
}

.game-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(220px,.65fr);
  gap:52px;
  align-items:center;
}
.game-hero-copy{min-width:0}
.game-cover{
  margin:0;
  width:min(100%,360px);
  justify-self:end;
}
.game-cover img{
  display:block;
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border-radius:14px;
  border:1px solid var(--line);
}
@media(max-width:820px){
  .game-hero-layout{
    grid-template-columns:1fr;
    gap:24px;
  }
  .game-cover{
    justify-self:start;
    width:min(100%,320px);
  }
}


/* PAC v11.5.16 — cover gioco nelle prossime serate */
.event-row{
  grid-template-columns:145px 112px minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
}
.event-cover{
  display:block;
  width:112px;
  height:112px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#fff;
}
.event-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .18s ease;
}
.event-cover:hover img,
.event-cover:focus-visible img{
  transform:scale(1.025);
}

@media(max-width:820px){
  .event-row{
    grid-template-columns:88px minmax(0,1fr);
    gap:16px 18px;
    align-items:start;
  }
  .event-date{
    grid-column:1/-1;
  }
  .event-cover{
    width:88px;
    height:88px;
    grid-column:1;
  }
  .event-main{
    grid-column:2;
  }
  .event-action{
    grid-column:2;
    justify-self:start;
  }
}

@media(max-width:520px){
  .event-row{
    grid-template-columns:74px minmax(0,1fr);
    gap:14px;
  }
  .event-cover{
    width:74px;
    height:74px;
  }
}


/* PAC v11.5.17 — CTA Eventbrite editoriale */
.event-action{
  min-width:190px;
  display:flex;
  justify-content:flex-end;
}
.eventbrite-link{
  display:inline-flex;
  align-items:center;
  gap:11px;
  color:var(--ink);
  text-decoration:none;
  padding:10px 0;
  border-bottom:1px solid var(--accent-dark);
}
.eventbrite-mark{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  color:var(--accent-dark);
  flex:0 0 auto;
}
.eventbrite-mark svg{
  width:28px;
  height:28px;
  display:block;
}
.eventbrite-link > span:last-child{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.eventbrite-link strong{
  font:700 15px/1.15 var(--body);
}
.eventbrite-link small{
  font:500 12px/1.2 var(--body);
  color:var(--muted);
}
.eventbrite-link:hover strong,
.eventbrite-link:focus-visible strong{
  text-decoration:underline;
  text-underline-offset:4px;
}

@media(max-width:820px){
  .event-action{
    min-width:0;
    grid-column:2;
    justify-content:flex-start;
  }
  .eventbrite-link{
    padding:7px 0;
  }
  .eventbrite-mark{
    width:26px;
    height:26px;
  }
  .eventbrite-mark svg{
    width:24px;
    height:24px;
  }
}

/* PAC v11.5.11 — workflow Home */
.home-flow{background:#fff;border-bottom:1px solid var(--line);padding:52px 0 58px}
.flow-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:26px}
.flow-heading h2{font-size:clamp(30px,3vw,48px);line-height:.98;letter-spacing:-.045em;margin:0;max-width:650px}
.flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flow-step{position:relative;min-height:180px;padding:24px 38px 24px 18px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto 1fr;column-gap:12px;text-decoration:none;color:var(--ink);border-right:1px solid var(--line)}
.flow-step:last-child{border-right:0}
.flow-number{font:700 12px/1 var(--body);letter-spacing:.12em;color:var(--accent-dark);grid-column:1/-1;margin-bottom:20px}
.flow-icon{width:38px;height:38px;color:var(--accent-dark);display:grid;place-items:center}
.flow-icon svg{width:32px;height:32px;display:block}
.flow-copy{align-self:center;display:flex;flex-direction:column;gap:5px}
.flow-copy strong{font:700 19px/1.12 var(--body)}
.flow-copy small{font:400 14px/1.35 var(--body);color:var(--muted)}
.flow-copy small em{font-style:normal;font-size:11px}
.flow-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--accent-dark)}
.flow-step:last-child .flow-arrow{display:none}
.flow-step:hover .flow-copy strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){
  .flow-grid{grid-template-columns:1fr 1fr}
  .flow-step:nth-child(2){border-right:0}
  .flow-step:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .flow-step:nth-child(2) .flow-arrow{display:none}
}
@media(max-width:620px){
  .home-flow{padding:38px 0 42px}
  .flow-heading{display:block}
  .flow-grid{grid-template-columns:1fr}
  .flow-step{min-height:0;grid-template-columns:38px 1fr;padding:20px 36px 20px 12px;border-right:0;border-bottom:1px solid var(--line)}
  .flow-step:last-child{border-bottom:0}
  .flow-step:nth-child(2) .flow-arrow{display:block}
  .flow-number{margin-bottom:12px}
  .flow-arrow{transform:translateY(-50%) rotate(90deg)}
}


/* PAC v11.5.19 — Home: solo la prossima serata, stesso layout di Gioca con noi */
#next-events .event-row{
  margin-top:0;
}
#next-events .home-next-event{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}


/* PAC v11.5.20 — piattaforme Sostienici cliccabili */
.support-platform-link{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--ink);
  text-decoration:none;
  min-width:0;
}
.support-platform-title{
  display:block;
  font-family:"Bricolage Grotesque",sans-serif;
  font-size:1.55rem;
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.025em;
}
.support-platform-link:hover .support-platform-title,
.support-platform-link:focus-visible .support-platform-title{
  text-decoration:underline;
  text-underline-offset:4px;
}
.support-platform-link:focus-visible{
  outline:2px solid var(--accent-dark);
  outline-offset:6px;
}
@media(max-width:760px){
  .support-platform-title{
    font-size:1.4rem;
  }
}

/* PAC v11.5.24 — header operativo Gioca con noi */
.serate-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:26px 0 38px;border:1px solid var(--line);border-radius:12px;background:#fbf7f1;overflow:hidden}
.serate-guide-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;padding:24px 26px;color:var(--ink);text-decoration:none;border-right:1px solid var(--line)}
.serate-guide-item:last-child{border-right:0}
.serate-guide-icon{width:42px;height:42px;display:grid;place-items:center;color:var(--accent-dark);align-self:start}
.serate-guide-icon svg{width:34px;height:34px;display:block}
.serate-guide-copy{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.serate-guide-label{font:700 11px/1.15 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark)}
.serate-guide-copy strong{font:700 20px/1.1 var(--body)}
.serate-guide-copy small{font:400 14px/1.4 var(--body);color:var(--muted);max-width:28ch}
.serate-guide-copy em{margin-top:7px;font:700 14px/1.2 var(--body);font-style:normal;color:var(--accent-dark);border-bottom:1px solid currentColor}
.serate-guide-item:hover .serate-guide-copy strong,.serate-guide-item:focus-visible .serate-guide-copy strong{text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.serate-guide{grid-template-columns:1fr}.serate-guide-item{border-right:0;border-bottom:1px solid var(--line)}.serate-guide-item:last-child{border-bottom:0}}
@media(max-width:560px){.serate-guide{margin:20px 0 30px}.serate-guide-item{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:18px 16px}.serate-guide-icon{width:32px;height:32px}.serate-guide-icon svg{width:27px;height:27px}.serate-guide-copy strong{font-size:18px}.serate-guide-copy small{font-size:13px}}


/* PAC v11.5.25 — mobile: le serate vengono prima della fascia informativa */
.serate-primary{
  display:contents;
}
.serate-guide-wrap{
  display:block;
}

@media(max-width:900px){
  /* Sul mobile/tablet la lista eventi è il contenuto principale */
  .page-body .shell{
    display:flex;
    flex-direction:column;
  }

  .page-body .section-heading{
    order:1;
  }

  .page-body .page-tools{
    order:2;
  }

  .page-body #events-list{
    order:3;
  }

  .page-body .serate-guide-wrap{
    order:4;
    margin-top:24px;
  }
}
