/* Riviera Night — microsito evento editoriale */
:root{--party-night:#15131a;--party-plum:#352330;--party-ivory:#f6f0e7;--party-coral:#e76f61;--party-gold:#d8bd82;--party-muted:#cfc4cb}
body{background:var(--party-night);color:var(--party-ivory)}.wrap{width:min(1120px,calc(100% - 40px))}
.hero{min-height:680px;position:relative;align-items:stretch;background:linear-gradient(90deg,#15131af2 0%,#15131ac9 42%,#15131a40 100%),url('../immagini/webp-public/hero-party.webp') center/cover}
.hero-copy{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);grid-template-rows:auto 1fr auto;gap:24px 48px;align-items:end;padding:78px 0 58px}.hero-copy>.eyebrow{grid-column:1/-1;align-self:start}.hero h1{grid-column:1;margin:12px 0;font:800 clamp(3.75rem,7vw,5.6rem)/.9 Georgia,serif;letter-spacing:-.055em;text-transform:uppercase}.hero-copy>p{grid-column:2;align-self:center;max-width:390px;margin:0;padding-top:16px;border-top:1px solid #ffffff70;color:#fff;font-size:1.05rem}
.poster-meta{grid-column:1;display:grid;grid-template-columns:1fr .75fr .8fr 1.25fr;border-top:1px solid #ffffff70;border-bottom:1px solid #ffffff70}.poster-meta span{padding:13px 14px 12px 0;border-right:1px solid #ffffff35;color:#d6cbd2;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase}.poster-meta span+span{padding-left:14px}.poster-meta span:last-child{border-right:0}.poster-meta b{display:block;margin-bottom:3px;color:#fff;font-size:.9rem;letter-spacing:0}.hero-copy>.btn{grid-column:2;align-self:center;justify-self:start;min-height:48px;padding:12px 20px;border:1px solid var(--party-coral);border-radius:2px;background:var(--party-coral);box-shadow:none;text-transform:uppercase;letter-spacing:.04em}
.info{padding:64px 0 0;background:var(--party-ivory);color:#241d24}.info>.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:24px 64px}.info>.wrap>.eyebrow{grid-column:1/-1;color:#9a633f}.info h2{margin:0;font:800 clamp(2.75rem,5vw,4rem)/.95 Georgia,serif;letter-spacing:-.045em}.cards{display:block;border-top:1px solid #544950}.cards .card{display:grid;grid-template-columns:125px 1fr;padding:12px 0;border:0;border-bottom:1px solid #bdb1ad;background:none}.cards .card b{font-size:1rem}.cards .card span{color:#675d65}.steps{grid-column:1/-1;display:none}
.party-details{margin-top:64px;padding:62px 0;background:var(--party-night)}.details-heading,.showcase-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);gap:48px;align-items:end}.details-heading h2,.showcase-head h2,.arrival h2,.party-final h2{margin:8px 0 0;color:var(--party-ivory);font:800 clamp(2.75rem,5vw,4rem)/.95 Georgia,serif;letter-spacing:-.045em}.details-heading p,.showcase-head p{margin:0;color:var(--party-muted)}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:34px;border-top:1px solid #ffffff42;background:transparent}.detail-grid article{padding:22px 28px 8px 0;border:0;border-right:1px solid #ffffff2e;background:none}.detail-grid article+article{padding-left:28px}.detail-grid article:last-child{border-right:0}.detail-icon{display:block;margin-bottom:16px;color:var(--party-coral);font-size:.75rem;font-weight:900;letter-spacing:.12em}.detail-grid h3{margin:0 0 8px;color:#fff;font-size:1.25rem}.detail-grid p{margin:0;color:var(--party-muted);font-size:.92rem}
.invite-showcase{padding:62px 0;background:var(--party-plum);color:#fff}.invite-showcase .eyebrow{color:#e5c781}.invite-showcase .showcase-head p{color:#eadfe5}.invite-types{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:34px;border-top:1px solid #ffffff75;border-bottom:1px solid #ffffff75}.invite-types article,.invite-types .featured{padding:22px 26px 22px 0;border:0;border-right:1px solid #ffffff45;background:none;color:#fff}.invite-types article+article{padding-left:26px}.invite-types article:last-child{border-right:0}.invite-types article>span{color:#f0a092;font-size:.72rem;font-weight:900}.invite-types h3{margin:8px 0 4px;color:#fff;font:800 clamp(1.75rem,3vw,2.5rem)/1 Georgia,serif;text-transform:uppercase}.invite-types p{margin:0;color:#eadfe5}
.slot-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center;margin-top:34px;padding:0;background:none;color:#fff}.slot-panel>div:first-child{padding-right:20px}.slot-panel h3{margin:7px 0;font:800 clamp(1.8rem,3vw,2.5rem)/1 Georgia,serif}.slot-panel p{margin:0;color:#eadfe5}.slot-times{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #ffffff65;border-bottom:1px solid #ffffff65}.slot-times article{padding:18px 20px;border:0;border-right:1px solid #ffffff40;background:none;color:#fff}.slot-times article:last-child{border-right:0}.slot-times small,.slot-times b,.slot-times span{display:block}.slot-times small{color:#f0a092;font-weight:900;text-transform:uppercase}.slot-times b{margin:7px 0;color:#fff;font:800 clamp(1.55rem,2.7vw,2.25rem)/1 Georgia,serif}.slot-times span{color:#eadfe5;font-size:.85rem}
.qr-flow{padding:62px 0;background:var(--party-ivory);color:#241d24}.qr-flow .showcase-head h2{color:#241d24}.qr-flow .showcase-head p{color:#675d65}.qr-flow ol{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:34px;padding:0;border-top:1px solid #4d4248;border-bottom:1px solid #4d4248;list-style:none}.qr-flow li{display:grid;align-content:start;min-height:155px;padding:20px 20px 18px 0;border:0;border-right:1px solid #bdb1ad;background:none}.qr-flow li+li{padding-left:20px}.qr-flow li:last-child{border-right:0}.qr-flow li b{color:var(--party-coral);font:800 2rem/1 Georgia,serif}.qr-flow li strong{margin:18px 0 4px;font-size:.95rem;text-transform:uppercase}.qr-flow li span{color:#675d65;font-size:.85rem}
.access-benefits{display:grid;grid-template-columns:.75fr 1.25fr;gap:34px;align-items:center;margin-top:30px;padding:22px 26px;border:0;border-left:5px solid var(--party-coral);background:#ebe2d8;color:#241d24}.access-benefits h3{margin:0;font:800 1.5rem/1.05 Georgia,serif}.access-benefits>div{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}.access-benefits span{padding:4px 0;border:0;color:#554a51;font-size:.86rem}
.arrival{padding:62px 0;background:var(--party-night);color:#fff}.arrival-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:56px;align-items:center}.arrival h2{color:#fff}.arrival-list{margin-top:26px;border-top:1px solid #ffffff55}.arrival-list div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid #ffffff32}.arrival-list b{color:#fff}.arrival-list span{color:#ddd2d9}.demo-address{color:#bfb3bb;font-size:.82rem}.party-map{min-height:340px;border:1px solid #ffffff45;background:#211b24}
.party-final{padding:72px 0;background:linear-gradient(105deg,#352330,#15131a);text-align:center}.party-final .wrap{max-width:850px}.party-final h2{color:#fff}.party-final p{margin:16px auto 24px;color:#e8dde3;font-size:1.05rem}.party-final .btn{min-height:52px;padding:13px 24px;border:1px solid var(--party-coral);border-radius:2px;background:var(--party-coral);color:#fff;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:900px){.hero-copy{grid-template-columns:1fr 290px;gap:24px 34px}.poster-meta{grid-template-columns:1fr 1fr}.poster-meta span:nth-child(2){border-right:0}.poster-meta span:nth-child(-n+2){border-bottom:1px solid #ffffff35}.info>.wrap{grid-template-columns:1fr 330px;gap:36px}.slot-panel{grid-template-columns:1fr}.slot-panel>div:first-child{padding-right:0}.arrival-grid{gap:34px}}
@media(max-width:700px){.wrap{width:min(100% - 30px,1120px)}.hero{min-height:680px;overflow:hidden;background:linear-gradient(180deg,#15131a30 0%,#15131a62 48%,#15131ad6 100%),linear-gradient(135deg,#e76f6138 0%,transparent 48%),url('../immagini/webp-public/hero-party.webp') 64% center/cover}.hero::after{content:"";position:absolute;inset:14px;z-index:0;pointer-events:none;border:1px solid #f6f0e76b;border-bottom-color:#e76f61a8}.hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;padding:50px 7px 38px}.hero-copy>.eyebrow{order:0;align-self:center;padding:5px 10px;border-top:1px solid #d8bd82;border-bottom:1px solid #d8bd82;background:#15131a73;color:#f1d58f;line-height:1.35}.hero h1{order:1;margin:14px 0 16px;color:#fff8ee;font-size:clamp(3rem,14.5vw,3.75rem);line-height:.86;letter-spacing:-.045em;text-shadow:0 3px 22px #15131acc}.hero-copy>p{order:2;width:100%;max-width:100%;padding:14px 10px;border-top:1px solid #ffffff8c;border-bottom:1px solid #ffffff57;background:#15131a70;color:#fff;font-size:.94rem}.poster-meta{order:3;width:100%;margin-top:10px;border-color:#ffffff8c;background:#352330a3}.poster-meta span{color:#f0e7ec}.poster-meta b{color:#fff}.hero-copy>.btn{order:4;align-self:stretch;justify-content:center;margin-top:8px;box-shadow:0 10px 26px #15131a80}.info{padding-top:48px}.info>.wrap,.details-heading,.showcase-head,.arrival-grid{grid-template-columns:minmax(0,1fr);gap:22px}.info h2,.details-heading h2,.showcase-head h2,.arrival h2,.party-final h2{font-size:clamp(2rem,10vw,2.65rem);line-height:1}.cards .card{grid-template-columns:105px 1fr}.party-details,.invite-showcase,.qr-flow,.arrival{padding:48px 0}.party-details{margin-top:48px}.detail-grid{grid-template-columns:1fr;margin-top:26px}.detail-grid article,.detail-grid article+article{padding:17px 0;border-right:0;border-bottom:1px solid #ffffff32}.detail-grid article:last-child{border-bottom:0}.detail-icon{margin-bottom:6px}.invite-types{grid-template-columns:1fr;margin-top:26px}.invite-types article,.invite-types .featured,.invite-types article+article{padding:16px 0;border-right:0;border-bottom:1px solid #ffffff40}.invite-types article:last-child{border-bottom:0}.invite-types h3{font-size:1.8rem}.slot-times{grid-template-columns:1fr}.slot-times article{padding:15px 0;border-right:0;border-bottom:1px solid #ffffff40}.slot-times article:last-child{border-bottom:0}.qr-flow ol{grid-template-columns:1fr 1fr;margin-top:26px}.qr-flow li,.qr-flow li+li{min-height:135px;padding:16px 12px 15px 0}.qr-flow li:nth-child(even){padding-left:16px;border-right:0}.qr-flow li:nth-child(-n+2){border-bottom:1px solid #bdb1ad}.qr-flow li strong{margin-top:12px}.access-benefits{grid-template-columns:1fr;gap:14px;padding:20px}.access-benefits>div{grid-template-columns:1fr}.arrival-grid{gap:28px}.arrival-list div{grid-template-columns:95px 1fr}.party-map{min-height:300px}.party-final{padding:58px 0}.party-final .btn{width:100%}}
@media(max-width:380px){.poster-meta b{font-size:.8rem}.poster-meta span{padding-right:8px}.poster-meta span+span{padding-left:8px}.qr-flow li strong{font-size:.82rem}.arrival-list div{grid-template-columns:1fr;gap:2px}}

/* Contrasto esplicito per i pannelli scuri e respiro della numerazione QR. */
.invite-showcase .showcase-head h2,.invite-showcase .invite-types h3,.arrival .arrival-grid h2,.arrival .arrival-list b{color:#fff!important;text-shadow:none}
.invite-showcase .showcase-head p,.invite-showcase .invite-types p,.arrival .arrival-list span{color:#f1e7ed!important}
.qr-flow li{padding-top:27px}.qr-flow li+li{padding-top:27px}.qr-flow li b{display:block;margin:0 0 18px;line-height:1}
@media(max-width:700px){.invite-showcase .showcase-head h2,.arrival .arrival-grid h2{font-size:clamp(2rem,10vw,2.65rem)!important;line-height:1!important;overflow-wrap:anywhere}.invite-showcase .invite-types h3{font-size:1.8rem!important}.qr-flow li,.qr-flow li+li{padding-top:24px}.qr-flow li b{margin-bottom:16px}.arrival-grid>*{min-width:0}.arrival-list span{overflow-wrap:anywhere}}
