:root{
  --gp-ink:#161a37;--gp-blue:#4e8ef7;--gp-blue2:#73cfff;--gp-pink:#f0448b;--gp-yellow:#ffd54d;--gp-orange:#ff8a42;--gp-green:#62c89a;--gp-cream:#fff8ea;--gp-paper:#fffdf8;--gp-white:#fff;--gp-muted:#6f7285;--gp-line:rgba(22,26,55,.10);--gp-radius:28px;--gp-shadow:0 24px 70px rgba(33,47,88,.13);--gp-shell:min(1180px,calc(100% - 40px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--gp-ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}body.gp-menu-open{overflow:hidden}img{max-width:100%;height:auto}a{color:inherit}.gp-shell{width:var(--gp-shell);margin-inline:auto}.gp-narrow{max-width:760px}.gp-prose{max-width:860px}.gp-prose h1,.gp-prose h2,.gp-prose h3{line-height:1.08}.gp-skip{position:fixed;left:10px;top:-80px;z-index:9999;background:#fff;padding:10px 16px;border-radius:10px}.gp-skip:focus{top:10px}

.gp-header{position:fixed;z-index:1000;top:0;left:0;right:0;transition:.25s ease;background:transparent}.gp-header.is-scrolled{background:rgba(255,255,255,.93);box-shadow:0 8px 30px rgba(22,26,55,.08);backdrop-filter:blur(14px)}.gp-header__inner{height:96px;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:28px}.gp-logo img{display:block;max-height:72px;width:auto}.custom-logo-link{display:block}.gp-brand-fallback{display:block}.gp-nav{justify-self:center}.gp-nav__list{display:flex;align-items:center;gap:26px;list-style:none;padding:0;margin:0}.gp-nav__list a{text-decoration:none;font-weight:750;font-size:.94rem;position:relative}.gp-nav__list a:after{content:"";position:absolute;height:3px;left:0;right:100%;bottom:-7px;background:var(--gp-pink);border-radius:99px;transition:.2s}.gp-nav__list a:hover:after{right:0}.gp-header__account{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:800;background:var(--gp-ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:.9rem}.gp-header__account span{color:var(--gp-yellow)}.gp-menu-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:8px}.gp-menu-toggle span{display:block;height:2px;background:var(--gp-ink);margin:6px 0;border-radius:99px}

.gp-hero{position:relative;min-height:760px;padding:145px 0 90px;overflow:hidden;background:radial-gradient(circle at 12% 16%,rgba(255,213,77,.42) 0 8%,transparent 8.2%),radial-gradient(circle at 88% 18%,rgba(240,68,139,.16) 0 8%,transparent 8.2%),linear-gradient(135deg,#fff8df 0%,#fffdf8 54%,#edf7ff 100%)}.gp-hero:before{content:"";position:absolute;width:500px;height:500px;border:80px solid rgba(78,142,247,.07);border-radius:50%;left:-340px;top:260px}.gp-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:.94fr 1.06fr;gap:30px;align-items:center}.gp-kicker,.gp-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.73rem;font-weight:900;margin:0 0 18px;color:#5d6280}.gp-kicker{display:flex;align-items:center;gap:10px}.gp-kicker span{width:26px;height:4px;background:var(--gp-pink);border-radius:99px}.gp-hero h1,.gp-page-hero h1,.gp-room-hero h1,.gp-section h2,.gp-final-cta h2,.gp-404 h1{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;letter-spacing:-.045em;line-height:.91;margin:0}.gp-hero h1{font-size:clamp(4.2rem,7.7vw,7.2rem);max-width:650px}.gp-hero h1 em,.gp-page-hero h1 em{font-style:normal;color:var(--gp-pink);position:relative}.gp-hero h1 em:after{content:"";position:absolute;left:4%;right:-2%;bottom:-5px;height:12px;background:var(--gp-yellow);border-radius:50%;z-index:-1;transform:rotate(-2deg)}.gp-hero__lead{font-size:1.14rem;color:#555b72;max-width:600px;line-height:1.65;margin:30px 0}.gp-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:900;transition:.2s transform,.2s box-shadow,.2s background}.gp-btn:hover{transform:translateY(-2px)}.gp-btn--primary{background:var(--gp-pink);color:#fff;box-shadow:0 14px 30px rgba(240,68,139,.25)}.gp-btn--ghost{background:rgba(255,255,255,.74);border:1px solid rgba(22,26,55,.11)}.gp-btn--dark{background:var(--gp-ink);color:#fff}.gp-btn--light{background:#fff;color:var(--gp-ink)}.gp-btn--outline-light{border:1px solid rgba(255,255,255,.55);color:#fff}.gp-hero__trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;font-size:.82rem;font-weight:750;color:#5b6077}.gp-hero__trust span::first-letter{color:var(--gp-green)}

.gp-hero__visual{position:relative;height:560px;display:flex;align-items:flex-end;justify-content:center}.gp-hero__visual:before{content:"";position:absolute;width:470px;height:470px;border-radius:44% 56% 50% 50%;background:var(--gp-blue2);opacity:.62;top:48px;right:25px;transform:rotate(-7deg)}.gp-hero__visual:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:var(--gp-yellow);opacity:.68;top:80px;right:8px}.gp-hero__visual img{position:relative;z-index:3;width:min(600px,105%);filter:drop-shadow(0 30px 25px rgba(22,26,55,.18));transform:translateY(12px)}.gp-orbit{position:absolute;z-index:2;border:2px solid rgba(22,26,55,.12);border-radius:50%;transform:rotate(-16deg)}.gp-orbit--one{width:550px;height:350px;top:115px;left:8px}.gp-orbit--two{width:380px;height:510px;top:20px;right:45px}.gp-hero__bubble{position:absolute;z-index:4;top:80px;left:28px;width:118px;height:118px;border-radius:50%;background:var(--gp-pink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.7rem;text-transform:uppercase;font-weight:900;letter-spacing:.06em;transform:rotate(-8deg);box-shadow:0 14px 32px rgba(240,68,139,.25)}.gp-hero__bubble strong{font-size:1.45rem;line-height:1}.gp-hero__price{position:absolute;z-index:5;right:5px;bottom:40px;background:#fff;padding:13px 17px;border-radius:18px;box-shadow:var(--gp-shadow);display:grid;grid-template-columns:auto auto;align-items:end}.gp-hero__price small{grid-column:1/-1;font-size:.7rem;color:var(--gp-muted);font-weight:800}.gp-hero__price strong{font-size:2rem;line-height:1}.gp-hero__price span{font-size:.8rem;margin-left:4px}.gp-wave{position:absolute;left:-2%;right:-2%;bottom:-65px;height:120px;background:#fff;border-radius:50% 50% 0 0/100% 100% 0 0}

.gp-section{padding:100px 0}.gp-section-head{margin-bottom:42px}.gp-section-head--center{text-align:center}.gp-section-head--split{display:flex;justify-content:space-between;align-items:end;gap:30px}.gp-section h2{font-size:clamp(2.6rem,5vw,4.4rem)}.gp-text-link{text-decoration:none;font-weight:900;white-space:nowrap}.gp-choice{padding-top:80px}.gp-choice__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px}.gp-choice__item{position:relative;min-height:520px;border-radius:var(--gp-radius);overflow:hidden;text-decoration:none;color:var(--gp-ink);box-shadow:0 0 0 1px var(--gp-line);transition:transform .25s,box-shadow .25s}.gp-choice__item:hover{transform:translateY(-6px);box-shadow:var(--gp-shadow)}.gp-choice__item--inflatables{background:linear-gradient(145deg,#dff4ff,#f5fbff);padding:46px}.gp-choice__item--inflatables img{position:absolute;right:-100px;bottom:-25px;width:72%;filter:drop-shadow(0 20px 18px rgba(22,26,55,.14))}.gp-choice__item--inflatables:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:var(--gp-yellow);right:-70px;top:-70px;opacity:.8}.gp-choice__item--room{display:flex;flex-direction:column;background:var(--gp-cream)}.gp-choice__room-image{height:260px;background-size:cover;background-position:center}.gp-choice__item--room .gp-choice__copy{padding:34px 40px}.gp-choice__copy{position:relative;z-index:2;max-width:430px}.gp-choice__num{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;font-weight:900;font-size:.8rem;margin-bottom:25px}.gp-choice__copy h3{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(2.2rem,4vw,3.5rem);line-height:.95;letter-spacing:-.04em;margin:0 0 18px}.gp-choice__copy p{color:#5b6074;margin:0 0 24px;max-width:340px}

.gp-featured{background:#fbfbff}.gp-live-catalog .ng-griglia{gap:20px}.gp-live-catalog .ng-item{min-width:0}.gp-product-card,.gp-live-catalog .ng-card{border:0!important;border-radius:22px!important;box-shadow:0 12px 34px rgba(22,26,55,.08)!important;overflow:hidden;background:#fff;transition:transform .25s,box-shadow .25s!important}.gp-product-card:hover,.gp-live-catalog .ng-card:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(22,26,55,.14)!important}.gp-product-card__media,.gp-live-catalog .ng-card-img{position:relative;aspect-ratio:1.2/1;background:linear-gradient(145deg,#f4f7fb,#eef7ff);padding:8px}.gp-product-card__media img,.gp-live-catalog .ng-card-img img{object-fit:contain!important}.gp-product-card__category{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);padding:7px 11px;border-radius:999px;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.gp-product-card__body,.gp-live-catalog .ng-card-body{padding:20px 20px 22px!important}.gp-product-card__title,.gp-live-catalog .ng-card-titolo{font-size:1.16rem!important}.gp-product-card__meta,.gp-live-catalog .ng-card-meta{margin-top:3px}.gp-product-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.gp-product-card__arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--gp-ink);color:#fff}.gp-live-catalog .ng-card-prezzo{font-size:1.06rem}.gp-live-catalog .ng-card .ng-zoom-btn{display:none!important}.gp-live-catalog .ng-media-principale{height:100%}.gp-live-catalog .ng-media-principale img{height:100%}

.gp-how{background:var(--gp-ink);color:#fff}.gp-how .gp-eyebrow{color:#aab1d2}.gp-how__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.gp-how__intro{position:sticky;top:140px}.gp-how__intro h2{font-size:clamp(3rem,5vw,4.8rem)}.gp-how__intro>p:last-child{color:#bec2d5;max-width:480px}.gp-steps{list-style:none;margin:0;padding:0}.gp-steps li{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:28px 0;border-top:1px solid rgba(255,255,255,.13)}.gp-steps li:last-child{border-bottom:1px solid rgba(255,255,255,.13)}.gp-steps>li>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gp-yellow);color:var(--gp-ink);font-weight:950}.gp-steps h3{font-size:1.6rem;margin:0 0 5px}.gp-steps p{color:#bfc3d6;margin:0}

.gp-room-spotlight{background:var(--gp-cream)}.gp-room-spotlight__grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.gp-room-spotlight__photo{position:relative}.gp-room-spotlight__photo:before{content:"";position:absolute;inset:-18px 36px 28px -18px;border-radius:34px;background:var(--gp-yellow);transform:rotate(-3deg)}.gp-room-spotlight__photo img{position:relative;z-index:2;width:100%;aspect-ratio:1.05/1;object-fit:cover;border-radius:28px;box-shadow:var(--gp-shadow)}.gp-room-spotlight__photo>span{position:absolute;z-index:3;right:-18px;bottom:34px;background:var(--gp-pink);color:#fff;padding:16px 19px;border-radius:18px;font-weight:900;transform:rotate(5deg)}.gp-room-spotlight__copy>p:not(.gp-eyebrow){color:#636779;max-width:540px;font-size:1.05rem}.gp-mini-facts{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.gp-mini-facts span{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gp-line);padding:11px 14px;border-radius:14px;font-size:.8rem}.gp-mini-facts b{font-size:1rem}.gp-room-spotlight .gp-btn{margin-top:8px}

.gp-proof__grid{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:28px;align-items:start}.gp-proof__rating{font-size:2.4rem;font-weight:950;line-height:1;margin-bottom:18px}.gp-proof__rating span{display:block;color:#ffb400;font-size:1rem;letter-spacing:.08em;margin-top:8px}.gp-proof h2{font-size:2.8rem}.gp-proof blockquote{margin:0;padding:30px;border-top:4px solid var(--gp-blue);background:#f7fbff;border-radius:0 0 20px 20px;font-size:1.05rem;font-weight:650}.gp-proof blockquote:nth-child(3){border-color:var(--gp-pink);background:#fff7fa}.gp-proof cite{display:block;font-style:normal;font-size:.78rem;color:var(--gp-muted);margin-top:18px;font-weight:700}.gp-final-cta{background:var(--gp-pink);color:#fff;padding:78px 0}.gp-final-cta .gp-eyebrow{color:#ffd6e8}.gp-final-cta__inner{display:flex;align-items:end;justify-content:space-between;gap:40px}.gp-final-cta h2{font-size:clamp(3rem,5vw,5rem)}

.gp-footer{background:#101329;color:#fff;padding:70px 0 24px}.gp-footer__grid{display:grid;grid-template-columns:1.3fr .7fr .9fr;gap:70px}.gp-footer__brand img{max-width:160px;background:#fff;border-radius:18px;padding:6px}.gp-footer p{color:#b7bbce;margin:16px 0}.gp-footer h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#8f96b5;margin:0 0 18px}.gp-footer__grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:7px}.gp-footer a{text-decoration:none;color:#fff}.gp-footer__bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;color:#8f96ab;font-size:.78rem}

.gp-page-hero{padding:175px 0 90px;background:linear-gradient(135deg,#eff8ff,#fff);position:relative;overflow:hidden}.gp-page-hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:var(--gp-yellow);right:-80px;top:80px;opacity:.38}.gp-page-hero--blue{background:linear-gradient(135deg,#e8f6ff 0,#fff9e8 100%)}.gp-page-hero--compact{padding-bottom:60px}.gp-page-hero h1{font-size:clamp(3.5rem,6vw,6rem);position:relative;z-index:1}.gp-page-hero p:not(.gp-eyebrow){max-width:660px;color:#62677a;font-size:1.05rem}.gp-catalog-page .ng-cats{gap:8px;margin-bottom:25px}.gp-catalog-page .ng-cats a{border-radius:999px!important;padding:9px 14px!important;background:#fff;border:1px solid var(--gp-line)!important;font-weight:800}.gp-catalog-page .ng-cat-attiva a{background:var(--gp-ink)!important}.gp-catalog-page .ng-filtri{background:#f6f8fb;padding:15px;border-radius:18px;margin-bottom:28px!important;gap:10px!important}.gp-catalog-page .ng-filtri input,.gp-catalog-page .ng-filtri select{min-height:44px;border-radius:12px!important;border:1px solid var(--gp-line)!important}.gp-catalog-page .ng-griglia{gap:22px!important}.gp-plugin-placeholder{padding:32px;border:2px dashed rgba(22,26,55,.18);border-radius:22px;background:#fbfbfc;display:flex;flex-direction:column;gap:6px;color:#676b7b}.gp-plugin-placeholder strong{color:var(--gp-ink)}

.gp-detail-page{padding-top:150px}.gp-detail-page .ng-scheda{grid-template-columns:1.05fr .95fr!important;gap:55px!important}.gp-product-detail__media .ng-img-principale,.gp-detail-page .ng-scheda-media .ng-img-principale{background:#f5f8fb;object-fit:contain;border-radius:24px!important;padding:12px}.gp-detail-page .ng-galleria{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.gp-detail-page .ng-thumb-btn{border-radius:12px!important;overflow:hidden;border:2px solid transparent!important}.gp-detail-page .ng-thumb-btn.ng-attiva{border-color:var(--gp-blue)!important}.gp-product-detail__info h1,.gp-detail-page .ng-scheda-info h1{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(2.8rem,4.7vw,4.7rem);line-height:.96;letter-spacing:-.04em;margin:0 0 18px}.gp-detail-page .ng-prezzo-grande{font-size:1.6rem;color:var(--gp-pink)}.gp-product-detail__facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.gp-product-detail__facts span{background:#f5f7fa;border-radius:14px;padding:12px;font-size:.82rem;display:flex;flex-direction:column}.gp-product-detail__facts b{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#7c8090}.gp-detail-page .ng-specifiche{background:#fafafc;border-radius:18px;padding:18px;gap:8px 18px}.gp-booking-focus .ng-date-box,.gp-detail-page .ng-date-box{border:0!important;border-radius:20px!important;background:var(--gp-cream);padding:22px!important;box-shadow:none}.gp-detail-page .ng-btn,.gp-narrow .ng-btn,.gp-room-booking .ng-btn,.gp-room-booking .rr-btn{background:var(--gp-pink)!important;border-radius:999px!important;font-weight:900!important;padding:.78em 1.5em!important}.gp-detail-page input,.gp-narrow input,.gp-narrow select,.gp-room-booking input,.gp-room-booking textarea{border-radius:11px!important;border:1px solid rgba(22,26,55,.18)!important;min-height:44px;padding:.65em .75em}

.gp-room-hero{position:relative;min-height:720px;background:#11152b;color:#fff;overflow:hidden}.gp-room-hero__image{position:absolute;inset:0 0 0 42%;background-size:cover;background-position:center}.gp-room-hero__image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#11152b 0,rgba(17,21,43,.86) 10%,rgba(17,21,43,.12) 62%,rgba(17,21,43,.06))}.gp-room-hero__inner{position:relative;z-index:2;padding-top:175px;padding-bottom:100px}.gp-room-hero__card{max-width:620px}.gp-room-hero .gp-eyebrow{color:#aab2d4}.gp-room-hero h1{font-size:clamp(3.4rem,5.4vw,5.7rem)}.gp-room-hero p:not(.gp-eyebrow){color:#c4c8d9;max-width:550px}.gp-room-hero .gp-mini-facts span{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.15)}.gp-room-booking .rr-sala{max-width:900px!important;margin:0 auto}.gp-room-booking .rr-sala>.rr-step{margin-top:22px;background:#fff;border:1px solid var(--gp-line);box-shadow:0 14px 40px rgba(22,26,55,.07);padding:28px;border-radius:24px}.gp-room-booking .rr-foto{border-radius:24px!important;max-height:520px;object-fit:cover;box-shadow:var(--gp-shadow)}.gp-room-booking .rr-sala>h2{font-size:2.4rem;margin:24px 0 0}.gp-room-booking .rr-sommario{gap:10px!important}.gp-room-booking .rr-sommario span{background:#f5f7fb;border-radius:999px;padding:7px 12px}.gp-room-booking .rr-cal-g{border-radius:10px!important}.gp-room-booking .rr-libero{background:#e8f8ef!important}.gp-room-booking .rr-scelto{outline-color:var(--gp-blue)!important}.gp-room-booking .rr-regolamento{margin-top:20px;background:#fafafc;padding:14px 16px;border-radius:14px}.gp-room-booking #rr-step-giorno{margin-top:22px}

.gp-account{max-width:850px}.gp-tabs{display:inline-flex;padding:5px;background:#f1f3f7;border-radius:999px;margin-bottom:28px}.gp-tab{border:0;background:transparent;padding:10px 18px;border-radius:999px;font:inherit;font-weight:850;cursor:pointer;color:#6b6f80}.gp-tab.is-active{background:#fff;color:var(--gp-ink);box-shadow:0 5px 16px rgba(22,26,55,.08)}.gp-tab-panel{display:none}.gp-tab-panel.is-active{display:block}.gp-account .ng-area,.gp-account .rr-mie{max-width:100%}.gp-account .ng-pren,.gp-account .rr-pren{border:0!important;background:#f7f8fb;border-radius:16px!important;padding:17px!important}.gp-404{min-height:80vh;display:grid;place-items:center;text-align:center;padding:150px 0 80px;background:var(--gp-cream)}.gp-404 span{font-size:clamp(7rem,20vw,15rem);font-weight:950;line-height:.8;color:var(--gp-yellow);text-shadow:5px 5px 0 var(--gp-pink)}.gp-404 h1{font-size:clamp(3rem,6vw,5.5rem);margin:25px 0}.gp-404 p{color:#666b7b}

/* Plugin forms, resi coerenti con il brand */
.ng-checkout,.ng-area{max-width:100%!important}.ng-checkout .ng-step,.ng-area .ng-form{background:#fff;border:1px solid var(--gp-line);border-radius:20px;padding:22px;box-shadow:0 12px 38px rgba(22,26,55,.05)}.ng-step h3 .ng-step-n,.ng-step-n{background:var(--gp-ink)!important}.ng-btn{background:var(--gp-pink)!important;border-radius:999px!important}.ng-btn-secondario{background:transparent!important;color:var(--gp-ink)!important;border:1px solid rgba(22,26,55,.22)!important}.ng-checkout input[type=text],.ng-checkout input[type=email],.ng-checkout input[type=tel],.ng-checkout select,.ng-scheda input[type=date],.ng-range-input{border-radius:10px!important;border:1px solid rgba(22,26,55,.18)!important;min-height:44px}.ng-riepilogo{border:0!important;background:var(--gp-cream);border-radius:18px!important}.ng-superfici .ng-radio,.ng-modalita .ng-radio{padding:10px 12px;border:1px solid var(--gp-line);border-radius:12px;background:#fff}.ng-pren{border-radius:16px!important}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--gp-blue)!important;border-color:var(--gp-blue)!important}

@media(max-width:1000px){.gp-header__inner{grid-template-columns:130px auto 1fr}.gp-nav{position:fixed;top:0;right:0;width:min(86vw,420px);height:100vh;background:#fff;padding:120px 36px 40px;box-shadow:-20px 0 50px rgba(22,26,55,.15);transform:translateX(110%);transition:.25s;justify-self:auto}.gp-nav.is-open{transform:none}.gp-nav__list{flex-direction:column;align-items:flex-start;font-size:1.3rem}.gp-menu-toggle{display:block;justify-self:end;grid-column:3}.gp-header__account{grid-column:2;grid-row:1}.gp-hero{min-height:auto}.gp-hero__grid{grid-template-columns:1fr}.gp-hero__copy{padding-top:20px}.gp-hero__visual{height:500px}.gp-choice__grid,.gp-how__grid,.gp-room-spotlight__grid{grid-template-columns:1fr}.gp-how__intro{position:static}.gp-how__grid{gap:45px}.gp-proof__grid{grid-template-columns:1fr 1fr}.gp-proof__grid>div:first-child{grid-column:1/-1}.gp-room-hero__image{inset:0;opacity:.45}.gp-room-hero__image:after{background:linear-gradient(90deg,#11152b 0,rgba(17,21,43,.68) 100%)}}
@media(max-width:720px){:root{--gp-shell:calc(100% - 28px);--gp-radius:22px}.gp-header__inner{height:78px;grid-template-columns:94px 1fr 42px;gap:10px}.gp-logo img{max-height:60px}.gp-header__account{display:none}.gp-menu-toggle{grid-column:3}.gp-hero{padding-top:112px}.gp-hero h1{font-size:clamp(3.7rem,17vw,5.3rem)}.gp-hero__lead{font-size:1rem}.gp-hero__visual{height:360px}.gp-hero__visual:before{width:330px;height:330px;right:-25px}.gp-hero__visual:after{width:240px;height:240px}.gp-orbit--one{width:360px;height:230px}.gp-orbit--two{width:250px;height:350px}.gp-hero__bubble{width:88px;height:88px;left:0;top:50px}.gp-hero__price{bottom:10px}.gp-section{padding:72px 0}.gp-section-head--split{align-items:flex-start;flex-direction:column}.gp-choice__item{min-height:470px}.gp-choice__item--inflatables{padding:30px}.gp-choice__item--inflatables img{width:95%;right:-120px}.gp-choice__item--room .gp-choice__copy{padding:28px}.gp-product-detail__facts{grid-template-columns:1fr}.gp-detail-page .ng-scheda{grid-template-columns:1fr!important;gap:30px!important}.gp-proof__grid{grid-template-columns:1fr}.gp-final-cta__inner{align-items:flex-start;flex-direction:column}.gp-footer__grid{grid-template-columns:1fr;gap:32px}.gp-footer__bottom{flex-direction:column;gap:5px}.gp-room-spotlight__grid{gap:40px}.gp-room-spotlight__photo>span{right:5px}.gp-room-hero{min-height:650px}.gp-room-hero__inner{padding-top:135px}.gp-room-booking .rr-sala>.rr-step{padding:18px}.gp-catalog-page .ng-filtri{align-items:stretch}.gp-catalog-page .ng-filtri>*{width:100%;margin-left:0!important}.gp-live-catalog .ng-griglia,.gp-catalog-page .ng-griglia{grid-template-columns:1fr 1fr!important}.gp-live-catalog .ng-card-body,.gp-catalog-page .ng-card-body{padding:14px!important}.gp-product-card__category{display:none}}
@media(max-width:520px){.gp-live-catalog .ng-griglia,.gp-catalog-page .ng-griglia{grid-template-columns:1fr!important}.gp-choice__item--inflatables img{width:100%;right:-95px}.gp-hero__trust{gap:10px}.gp-actions{align-items:stretch}.gp-actions .gp-btn{width:100%}.gp-proof blockquote{padding:24px}.gp-steps li{grid-template-columns:54px 1fr;gap:14px}.gp-steps>li>span{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ================================================================
   Giò Party 0.2 — motion, wizard, allestimenti, contatti
   ================================================================ */
.gp-header__actions{justify-self:end;display:flex;align-items:center;gap:9px}.gp-header__bookings{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-size:.82rem;font-weight:800;color:#555b72;padding:10px 8px}.gp-header__bookings>span:first-child{font-size:1.1rem;color:var(--gp-pink)}.gp-header__cta{display:inline-flex;align-items:center;gap:10px;text-decoration:none;background:var(--gp-ink);color:#fff;padding:12px 17px;border-radius:999px;font-weight:900;font-size:.86rem;white-space:nowrap;transition:.22s transform,.22s box-shadow}.gp-header__cta b{color:var(--gp-yellow)}.gp-header__cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(22,26,55,.18)}

[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}[data-reveal].is-visible{opacity:1;transform:none}.gp-choice__item[data-reveal]:nth-child(2),.gp-contact-cards>[data-reveal]:nth-child(2),.gp-occasion-grid>[data-reveal]:nth-child(2){transition-delay:.08s}.gp-contact-cards>[data-reveal]:nth-child(3),.gp-occasion-grid>[data-reveal]:nth-child(3){transition-delay:.16s}.gp-contact-cards>[data-reveal]:nth-child(4),.gp-occasion-grid>[data-reveal]:nth-child(4){transition-delay:.24s}
.gp-hero__visual{--mx:0px;--my:0px}.gp-hero__visual img{transform:translate(var(--mx),calc(12px + var(--my)));transition:transform .22s ease-out;animation:gpFloat 5s ease-in-out infinite}.gp-hero__bubble{animation:gpBubble 4.8s ease-in-out infinite}.gp-orbit--one{animation:gpOrbit 18s linear infinite}.gp-orbit--two{animation:gpOrbitReverse 24s linear infinite}.gp-hero__confetti i{position:absolute;display:block;width:10px;height:20px;border-radius:4px;opacity:.65;animation:gpDrift 8s ease-in-out infinite}.gp-hero__confetti i:nth-child(1){left:8%;top:18%;background:var(--gp-blue);transform:rotate(25deg)}.gp-hero__confetti i:nth-child(2){left:42%;top:13%;background:var(--gp-pink);animation-delay:-2s}.gp-hero__confetti i:nth-child(3){right:9%;top:34%;background:var(--gp-yellow);animation-delay:-4s}.gp-hero__confetti i:nth-child(4){left:27%;bottom:15%;background:var(--gp-green);animation-delay:-1s}.gp-hero__confetti i:nth-child(5){right:38%;bottom:11%;background:var(--gp-orange);animation-delay:-5s}.gp-hero__confetti i:nth-child(6){right:3%;top:12%;background:var(--gp-blue);animation-delay:-3s}
@keyframes gpFloat{0%,100%{translate:0 0}50%{translate:0 -11px}}@keyframes gpBubble{0%,100%{transform:rotate(-8deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-8px)}}@keyframes gpOrbit{to{transform:rotate(344deg)}}@keyframes gpOrbitReverse{to{transform:rotate(-376deg)}}@keyframes gpDrift{0%,100%{translate:0 0;rotate:0deg}50%{translate:12px 18px;rotate:45deg}}

.gp-marquee{overflow:hidden;background:var(--gp-ink);color:#fff;padding:11px 0;font-size:.72rem;font-weight:950;letter-spacing:.16em;white-space:nowrap}.gp-marquee>div{width:max-content;animation:gpMarquee 30s linear infinite}.gp-marquee b{color:var(--gp-yellow);padding:0 24px}@keyframes gpMarquee{to{transform:translateX(-50%)}}

.gp-decor{background:#fff5f8;overflow:hidden}.gp-decor__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.gp-decor__collage{position:relative;min-height:570px}.gp-decor__collage img{position:absolute;object-fit:cover;border-radius:28px;box-shadow:var(--gp-shadow)}.gp-decor__collage img:nth-child(1){width:54%;height:75%;left:4%;top:5%;transform:rotate(-4deg)}.gp-decor__collage img:nth-child(2){width:43%;height:57%;right:2%;top:2%;transform:rotate(5deg)}.gp-decor__collage img:nth-child(3){width:42%;height:47%;right:9%;bottom:1%;transform:rotate(-2deg)}.gp-decor__collage>span{position:absolute;left:45%;bottom:7%;width:94px;height:94px;border-radius:50%;display:grid;place-items:center;background:var(--gp-yellow);font-size:2rem;font-weight:950;box-shadow:0 15px 35px rgba(22,26,55,.12);transform:rotate(8deg)}.gp-decor__copy h2{font-size:clamp(3rem,5.4vw,5.5rem)}.gp-decor__copy>p:not(.gp-eyebrow){color:#656a7c;max-width:570px}.gp-decor__chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}.gp-decor__chips span{background:#fff;border:1px solid rgba(22,26,55,.08);padding:7px 12px;border-radius:999px;font-size:.78rem;font-weight:850}
.gp-wizard-tease{background:var(--gp-blue);color:#fff}.gp-wizard-tease__inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.gp-wizard-tease .gp-eyebrow{color:#dce9ff}.gp-wizard-tease h2{font-size:clamp(3rem,5vw,5.2rem)}.gp-wizard-tease p:not(.gp-eyebrow){max-width:720px;color:#eaf3ff}.gp-wizard-tease .gp-btn{flex:0 0 auto}

/* Allestimenti */
.gp-decor-hero{padding:160px 0 100px;min-height:760px;background:linear-gradient(135deg,#fff7f9 0%,#fff 55%,#fff7e6 100%);overflow:hidden}.gp-decor-hero__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.gp-decor-hero__copy h1,.gp-contact-hero h1{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(4rem,6.6vw,6.7rem);line-height:.9;letter-spacing:-.05em;margin:0}.gp-decor-hero__copy h1 em,.gp-contact-hero h1 em{font-style:normal;color:var(--gp-pink)}.gp-decor-hero__copy>p:not(.gp-eyebrow){max-width:600px;color:#62677a;font-size:1.05rem;margin:28px 0}.gp-decor-hero__collage{height:560px;position:relative}.gp-decor-hero__collage figure{position:absolute;margin:0;border-radius:30px;overflow:hidden;box-shadow:var(--gp-shadow);background:#fff}.gp-decor-hero__collage img{width:100%;height:100%;object-fit:cover}.gp-decor-hero__collage figure:nth-child(1){width:44%;height:76%;left:6%;top:10%;transform:rotate(-5deg)}.gp-decor-hero__collage figure:nth-child(2){width:40%;height:64%;right:5%;top:0;transform:rotate(6deg)}.gp-decor-hero__collage figure:nth-child(3){width:37%;height:48%;right:17%;bottom:0;transform:rotate(-3deg)}.gp-decor-hero__stamp{position:absolute;left:39%;bottom:2%;z-index:3;width:118px;height:118px;border-radius:50%;background:var(--gp-ink);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;text-transform:uppercase;font-size:.67rem;font-weight:900;letter-spacing:.08em;transform:rotate(8deg)}.gp-decor-hero__stamp b{color:var(--gp-yellow);font-size:.8rem}
.gp-occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:45px}.gp-occasion-grid article{padding:30px 24px;border-radius:24px;background:#f7f8fb;min-height:300px;position:relative;overflow:hidden}.gp-occasion-grid article:nth-child(2){background:#fff1f6}.gp-occasion-grid article:nth-child(3){background:#fff8de}.gp-occasion-grid article:nth-child(4){background:#edf6ff}.gp-occasion-grid article>span{font-size:4rem;line-height:1;font-weight:950;color:rgba(22,26,55,.09);position:absolute;right:18px;top:18px}.gp-occasion-grid h3{font-size:1.5rem;margin:105px 0 10px}.gp-occasion-grid p{font-size:.9rem;color:#676c7d;margin:0}.gp-decor-process{background:var(--gp-ink);color:#fff}.gp-decor-process__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}.gp-decor-process .gp-eyebrow{color:#aab2d4}.gp-decor-process h2{font-size:clamp(3rem,5vw,5rem)}.gp-decor-process__grid>div>p:last-child{color:#c9ccda}.gp-decor-process ol{list-style:none;padding:0;margin:0;display:grid;gap:1px;background:rgba(255,255,255,.12);border-radius:24px;overflow:hidden}.gp-decor-process li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:26px;background:#1b2042}.gp-decor-process li>b{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gp-yellow);color:var(--gp-ink);font-size:1.2rem}.gp-decor-process li span{color:#bec3d8}.gp-decor-process li strong{display:block;color:#fff;font-size:1.15rem;margin-bottom:4px}
.gp-gallery-section{background:#fff}.gp-gallery-section .gp-section-head--split>p{max-width:420px;color:#6a6f80}.gp-masonry{columns:4;column-gap:14px;margin-top:42px}.gp-masonry__item{display:block;width:100%;padding:0;border:0;background:none;margin:0 0 14px;border-radius:18px;overflow:hidden;cursor:zoom-in;break-inside:avoid}.gp-masonry__item img{display:block;width:100%;transition:.35s transform}.gp-masonry__item:hover img{transform:scale(1.035)}.gp-lightbox{position:fixed;z-index:5000;inset:0;background:rgba(10,12,27,.92);display:none;place-items:center;padding:50px}.gp-lightbox.is-open{display:grid}.gp-lightbox img{max-width:min(900px,90vw);max-height:86vh;border-radius:20px}.gp-lightbox button{position:absolute;right:28px;top:20px;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer}
.gp-decor-form-section{background:#fff4e9}.gp-decor-form-grid,.gp-contact-form-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.gp-decor-form-grid h2,.gp-contact-form-grid h2{font-size:clamp(3.2rem,5vw,5.2rem)}.gp-contact-direct{display:flex;flex-direction:column;gap:5px;margin-top:30px}.gp-contact-direct a{font-weight:900;color:var(--gp-pink);text-decoration:none}.gp-contact-direct span{font-size:.78rem;color:#777b8c}.gp-form-card{background:#fff;border-radius:28px;padding:34px;box-shadow:var(--gp-shadow)}.gp-form-card form{display:grid;gap:16px}.gp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gp-form-card label{display:grid;gap:6px;font-size:.78rem;font-weight:850;color:#555a70}.gp-form-card input,.gp-form-card textarea{width:100%;border:1px solid rgba(22,26,55,.14);border-radius:12px;padding:12px 13px;font:inherit;color:var(--gp-ink);background:#fff}.gp-form-card input{min-height:48px}.gp-form-card textarea{resize:vertical}.gp-form-card .gp-privacy{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;font-weight:600;font-size:.74rem}.gp-form-card .gp-privacy input{width:auto;min-height:0;margin-top:4px}.gp-form-ok,.gp-form-error{padding:12px 14px;border-radius:12px;margin-bottom:15px;font-weight:800;font-size:.85rem}.gp-form-ok{background:#eaf8f0;color:#276849}.gp-form-error{background:#fff0f0;color:#9b3333}.gp-hp{position:absolute!important;left:-9999px!important;opacity:0!important}

/* Contatti */
.gp-contact-hero{padding:165px 0 90px;background:linear-gradient(135deg,#edf7ff 0%,#fff 60%,#fff3d4 100%);overflow:hidden}.gp-contact-hero__grid{display:grid;grid-template-columns:1fr 320px;gap:70px;align-items:center}.gp-contact-hero p:not(.gp-eyebrow){max-width:650px;color:#636879}.gp-contact-burst{width:270px;height:270px;border-radius:48% 52% 55% 45%;background:var(--gp-yellow);display:grid;place-items:center;transform:rotate(-7deg);box-shadow:25px 25px 0 var(--gp-blue2)}.gp-contact-burst span{text-align:center;font-weight:950;font-size:1.25rem;line-height:.9;transform:rotate(7deg)}.gp-contact-burst b{font-size:3.2rem}.gp-contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gp-contact-cards>a{min-height:255px;padding:25px;border-radius:22px;background:#f6f7fa;text-decoration:none;display:flex;flex-direction:column;position:relative;transition:.22s transform,.22s box-shadow}.gp-contact-cards>a:nth-child(2){background:#edf8f3}.gp-contact-cards>a:nth-child(3){background:#fff1f6}.gp-contact-cards>a:nth-child(4){background:#eef5ff}.gp-contact-cards>a:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(22,26,55,.08)}.gp-contact-cards>a>span{align-self:flex-end;font-size:2.5rem;font-weight:950;color:rgba(22,26,55,.1)}.gp-contact-cards small{text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#74798a;margin-top:auto}.gp-contact-cards strong{font-size:1.03rem;margin:6px 0}.gp-contact-cards em{font-style:normal;font-size:.8rem;font-weight:850;color:var(--gp-pink)}.gp-visit{background:var(--gp-ink);color:#fff}.gp-visit__grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.gp-visit .gp-eyebrow{color:#a9b0d0}.gp-visit h2{font-size:clamp(3.5rem,5vw,5.5rem)}.gp-visit__address>p:not(.gp-eyebrow){color:#c6cad9}.gp-visit .gp-text-link{color:var(--gp-yellow)}.gp-hours{border-top:1px solid rgba(255,255,255,.16)}.gp-hours>div{display:flex;justify-content:space-between;gap:30px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.16)}.gp-hours span{color:#aeb4ca}.gp-contact-form-section{background:#f8f8fb}

/* Wizard */
.gp-page-hero--wizard{background:radial-gradient(circle at 80% 20%,rgba(255,213,77,.55) 0 10%,transparent 10.2%),linear-gradient(135deg,#eff7ff,#fff 55%,#fff2f7);padding-bottom:90px}.gp-wizard-section{background:#f5f6fa}.gp-wizard-layout{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start}.gp-wizard-aside{position:sticky;top:125px;background:var(--gp-ink);color:#fff;border-radius:25px;padding:28px 24px}.gp-wizard-aside .gp-eyebrow{color:#aab2d4}.gp-wizard-progress{list-style:none;padding:0;margin:26px 0;display:grid;gap:12px}.gp-wizard-progress li{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:12px;color:#8188a7;font-weight:800;font-size:.88rem}.gp-wizard-progress b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);font-size:.72rem}.gp-wizard-progress li.is-active{color:#fff}.gp-wizard-progress li.is-active b{background:var(--gp-pink);border-color:var(--gp-pink)}.gp-wizard-progress li.is-done{color:#cfd4e5}.gp-wizard-progress li.is-done b{background:var(--gp-green);border-color:var(--gp-green);color:#10261d}.gp-wizard-summary{border-top:1px solid rgba(255,255,255,.13);padding-top:20px;display:grid;gap:4px}.gp-wizard-summary strong{font-size:.82rem}.gp-wizard-summary span{font-size:.71rem;color:#9ca3bf}.gp-wizard{min-height:620px}.gp-wstep{display:none;background:#fff;border-radius:30px;padding:44px 48px;min-height:590px;position:relative;overflow:hidden;box-shadow:0 15px 50px rgba(22,26,55,.06)}.gp-wstep.is-active{display:block;animation:gpStepIn .35s ease-out}.gp-wstep__num{position:absolute;right:32px;top:18px;font-size:6.8rem;font-weight:950;line-height:1;color:rgba(22,26,55,.045)}.gp-wstep h2{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(2.7rem,4.3vw,4.5rem);line-height:.94;letter-spacing:-.045em;margin:0 0 14px;max-width:760px}.gp-wstep__lead{color:#6a6f81;margin:0 0 36px}.gp-date-big{display:block;max-width:520px;border:2px solid #e4e6ee;border-radius:20px;padding:16px 20px;margin:50px 0}.gp-date-big>span{display:block;text-transform:uppercase;letter-spacing:.09em;font-weight:900;font-size:.7rem;color:#717688}.gp-date-big input{width:100%;border:0;background:transparent;padding:8px 0 0;font:inherit;font-size:1.5rem;font-weight:850;color:var(--gp-ink);outline:none}.gp-wizard-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:44px}.gp-back{border:0;background:none;font:inherit;font-weight:850;color:#74798b;cursor:pointer;padding:12px 0}.gp-option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:34px}.gp-option-grid--place{grid-template-columns:repeat(3,1fr)}.gp-option{border:2px solid #ebecf1;background:#fafafd;border-radius:22px;min-height:220px;padding:24px;text-align:left;cursor:pointer;font:inherit;color:var(--gp-ink);display:flex;flex-direction:column;transition:.2s border,.2s transform,.2s background}.gp-option:hover{transform:translateY(-3px);border-color:#cfd3e0}.gp-option.is-selected{border-color:var(--gp-pink);background:#fff3f8;box-shadow:0 0 0 4px rgba(240,68,139,.08)}.gp-option__icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #e7e8ef;font-size:1.5rem;margin-bottom:auto}.gp-option b{font-size:1.13rem;margin:25px 0 4px}.gp-option small{color:#74798b;line-height:1.4}.gp-option__mini-photo{display:block;width:100%;height:105px;background-size:cover;background-position:center;border-radius:14px;margin-bottom:auto}.gp-option--decor{padding:14px}.gp-option--decor b,.gp-option--decor small{margin-left:10px;margin-right:10px}.gp-wizard-split{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:40px}.gp-wizard-split h3{font-size:1.05rem;margin:0 0 14px}.gp-chip-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gp-chip-grid button{min-height:68px;border:2px solid #eceef3;background:#fafbfc;border-radius:15px;font:inherit;font-weight:850;color:var(--gp-ink);cursor:pointer}.gp-chip-grid button.is-selected{background:var(--gp-ink);border-color:var(--gp-ink);color:#fff}.gp-shake{animation:gpShake .34s ease-in-out}.gp-wresults{min-height:650px}.gp-wresults__head{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:28px}.gp-wresults__head h2{font-size:clamp(2.5rem,4vw,4rem)}.gp-w-restart{white-space:nowrap}.gp-result-block{border:1px solid #e6e8ef;border-radius:22px;padding:26px;margin:16px 0}.gp-result-block__head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.gp-result-block__head h3,.gp-result-room h3{font-size:1.8rem;margin:0}.gp-result-block__head a{font-weight:850;font-size:.8rem;text-decoration:none;color:var(--gp-pink)}.gp-result-products{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gp-result-product{border:1px solid #eceef3;border-radius:16px;overflow:hidden;text-decoration:none;background:#fff;transition:.2s transform,.2s box-shadow}.gp-result-product:hover{transform:translateY(-4px);box-shadow:0 13px 30px rgba(22,26,55,.09)}.gp-result-product__img{display:block;height:150px;background:#f2f6fb}.gp-result-product__img img{width:100%;height:100%;object-fit:contain;padding:7px}.gp-result-product__body{padding:14px;display:flex;flex-direction:column}.gp-result-product__body small{text-transform:uppercase;letter-spacing:.08em;color:#828697;font-size:.63rem;font-weight:900}.gp-result-product__body strong{font-size:1rem;margin:3px 0}.gp-result-product__body>span{font-size:.72rem;color:#74798a}.gp-result-product__body>b{color:var(--gp-pink);font-size:.86rem;margin:9px 0 8px}.gp-result-status{font-style:normal;font-size:.67rem;font-weight:850;padding:5px 7px;border-radius:8px;background:#f2f3f6;color:#6f7483;align-self:flex-start}.gp-result-status.is-free{background:#e8f8ef;color:#26714e}.gp-result-status.is-busy{background:#fff0f0;color:#a13b3b}.gp-result-room{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#f6f8ff}.gp-result-room.is-free{background:#ecfaf2;border-color:#c9eed9}.gp-result-room.is-busy{background:#fff7ed}.gp-result-room p{margin-bottom:0;color:#686d7f}.gp-result-decor{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;margin-top:16px;padding:14px;border-radius:20px;background:#fff0f5;text-decoration:none}.gp-result-decor__photos{height:100px;border-radius:14px;overflow:hidden}.gp-result-decor__photos img{width:100%;height:100%;object-fit:cover}.gp-result-decor small{display:block;text-transform:uppercase;letter-spacing:.1em;color:#a85274;font-size:.63rem;font-weight:900}.gp-result-decor strong{display:block;font-size:1.25rem}.gp-result-decor em{font-style:normal;font-size:.75rem;color:#747889}.gp-result-decor-mini{display:flex;justify-content:space-between;gap:20px;background:#fff6f9;padding:14px 18px;border-radius:14px;font-size:.8rem}.gp-result-decor-mini a{font-weight:900;color:var(--gp-pink);text-decoration:none}.gp-wresults__help{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #eceef2;margin-top:28px;padding-top:20px;font-size:.8rem}.gp-wresults__help a{font-weight:900;text-decoration:none}.gp-wizard-page .gp-page-hero{padding-top:165px}
@keyframes gpStepIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}@keyframes gpShake{25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}

.gp-footer__wizard{display:inline-block;margin-top:10px;color:var(--gp-yellow)!important;font-weight:900!important}

@media(max-width:1100px){.gp-header__bookings span:last-child{display:none}.gp-header__inner{grid-template-columns:130px 1fr auto}.gp-decor__grid,.gp-decor-hero__grid{gap:40px}.gp-contact-cards{grid-template-columns:1fr 1fr}.gp-result-products{grid-template-columns:1fr 1fr}.gp-option-grid--place{grid-template-columns:1fr 1fr}.gp-option-grid--place .gp-option:last-child{grid-column:1/-1}}
@media(max-width:1000px){.gp-header__actions{grid-column:2;grid-row:1;justify-self:end;margin-right:52px}.gp-menu-toggle{grid-column:3;grid-row:1}.gp-nav.is-open+.gp-header__actions{z-index:1001}.gp-decor__grid,.gp-decor-hero__grid,.gp-decor-process__grid,.gp-decor-form-grid,.gp-contact-form-grid,.gp-visit__grid{grid-template-columns:1fr}.gp-decor__collage{min-height:520px}.gp-decor-hero__collage{height:500px;order:-1}.gp-occasion-grid{grid-template-columns:1fr 1fr}.gp-masonry{columns:3}.gp-wizard-layout{grid-template-columns:1fr}.gp-wizard-aside{position:static;display:grid;grid-template-columns:1fr auto;align-items:center}.gp-wizard-aside>.gp-eyebrow{grid-column:1/-1}.gp-wizard-progress{display:flex;margin:12px 0}.gp-wizard-progress li{display:block}.gp-wizard-progress li span{display:none}.gp-wizard-summary{border:0;padding:0;max-width:320px}.gp-contact-hero__grid{grid-template-columns:1fr 220px}.gp-contact-burst{width:200px;height:200px}.gp-contact-burst b{font-size:2.3rem}}
@media(max-width:720px){.gp-header__actions{grid-column:2;margin-right:0}.gp-header__bookings{display:none}.gp-header__cta{font-size:.72rem;padding:10px 12px}.gp-hero__confetti{display:none}.gp-marquee{font-size:.63rem}.gp-decor__collage{min-height:420px}.gp-decor__grid{gap:35px}.gp-decor__copy h2{font-size:3.2rem}.gp-wizard-tease__inner{align-items:flex-start;flex-direction:column}.gp-decor-hero{padding-top:120px}.gp-decor-hero__copy h1,.gp-contact-hero h1{font-size:clamp(3.5rem,14vw,5rem)}.gp-decor-hero__collage{height:390px}.gp-decor-hero__collage figure:nth-child(1){left:0}.gp-decor-hero__collage figure:nth-child(2){right:0}.gp-decor-hero__stamp{width:90px;height:90px}.gp-occasion-grid{grid-template-columns:1fr}.gp-occasion-grid article{min-height:220px}.gp-occasion-grid h3{margin-top:75px}.gp-masonry{columns:2}.gp-form-row{grid-template-columns:1fr}.gp-form-card{padding:22px}.gp-contact-hero__grid{grid-template-columns:1fr}.gp-contact-burst{display:none}.gp-contact-cards{grid-template-columns:1fr}.gp-contact-cards>a{min-height:190px}.gp-wizard-page .gp-page-hero{padding-top:125px}.gp-wizard-aside{grid-template-columns:1fr}.gp-wizard-summary{display:none}.gp-wizard-progress{justify-content:space-between}.gp-wstep{padding:32px 22px;min-height:540px}.gp-wstep__num{font-size:5rem}.gp-wstep h2{font-size:2.8rem}.gp-option-grid,.gp-option-grid--place,.gp-wizard-split{grid-template-columns:1fr}.gp-option-grid--place .gp-option:last-child{grid-column:auto}.gp-option{min-height:170px}.gp-option__icon{margin-bottom:10px}.gp-option b{margin-top:12px}.gp-wizard-split{gap:30px}.gp-result-products{grid-template-columns:1fr}.gp-result-room,.gp-result-block__head,.gp-wresults__head,.gp-result-decor-mini,.gp-wresults__help{align-items:flex-start;flex-direction:column}.gp-result-decor{grid-template-columns:90px 1fr}.gp-result-decor__photos{height:90px}.gp-wizard-nav .gp-btn{min-height:48px;padding:0 17px}.gp-lightbox{padding:20px}.gp-decor-form-grid,.gp-contact-form-grid{gap:35px}}
@media(max-width:480px){.gp-header__cta{padding:9px 11px}.gp-header__cta b{display:none}.gp-masonry{columns:1}.gp-decor__collage img:nth-child(1){width:62%}.gp-decor__collage img:nth-child(2){width:46%}.gp-decor__collage img:nth-child(3){width:48%}.gp-decor-hero__collage figure:nth-child(1){width:52%}.gp-decor-hero__collage figure:nth-child(2){width:45%}.gp-decor-hero__collage figure:nth-child(3){width:45%}.gp-chip-grid{grid-template-columns:1fr 1fr}.gp-result-decor{grid-template-columns:1fr}.gp-result-decor__photos{height:140px}}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important}.gp-marquee>div,.gp-hero__visual img,.gp-hero__bubble,.gp-orbit,.gp-hero__confetti i{animation:none!important}}
.gp-selected-date{display:inline-block;background:#fff5d8;border-radius:12px;padding:10px 14px;color:#6b6044}.gp-room-decor{background:#fff5f8}.gp-room-decor__grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.gp-room-decor__grid>div:first-child{height:440px;border-radius:28px;overflow:hidden;transform:rotate(-2deg);box-shadow:var(--gp-shadow)}.gp-room-decor__grid img{width:100%;height:100%;object-fit:cover}.gp-room-decor__grid h2{font-size:clamp(3rem,5vw,5rem)}.gp-room-decor__grid p:not(.gp-eyebrow){color:#686d7e}.gp-catalog-page .gp-text-link{display:inline-block;margin-top:20px}
@media(max-width:900px){.gp-room-decor__grid{grid-template-columns:1fr}.gp-room-decor__grid>div:first-child{height:360px}}


/* ============================================================
   v0.4 — Party Builder calendar + Rentalis filters
   ============================================================ */

/* Campo data del wizard */
.gp-date-big{
  max-width:580px;
  border:0;
  background:#f7f8fc;
  border-radius:24px;
  padding:15px 18px 17px;
  box-shadow:inset 0 0 0 2px #e7e9f0;
  transition:.2s box-shadow,.2s background,.2s transform;
}
.gp-date-big:focus-within{
  background:#fff;
  box-shadow:inset 0 0 0 2px var(--gp-pink),0 12px 34px rgba(240,68,139,.10);
}
.gp-date-input-wrap{position:relative;display:block;margin-top:6px}
.gp-date-big input,.gp-date-big .gp-date-alt{
  width:100%;height:58px;border:0!important;background:transparent!important;
  padding:0 54px 0 2px!important;font:inherit!important;font-size:1.55rem!important;
  font-weight:900!important;letter-spacing:-.025em;color:var(--gp-ink)!important;
  outline:none!important;box-shadow:none!important;cursor:pointer;
}
.gp-date-big .gp-date-alt::placeholder{color:#9ba0ae;opacity:1}
.gp-date-input-icon{
  position:absolute;right:5px;top:50%;transform:translateY(-50%);
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
  background:var(--gp-ink);color:#fff;font-size:1.35rem;font-weight:900;pointer-events:none;
}
.gp-date-big .flatpickr-input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}

/* Flatpickr, ma con linguaggio visuale Giò Party */
.flatpickr-calendar.gp-date-calendar,
.gp-wizard-page .flatpickr-calendar{
  width:420px!important;
  padding:16px 16px 18px!important;
  border:0!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(22,26,55,.18)!important;
  font-family:inherit!important;
  overflow:hidden;
}
.flatpickr-calendar.gp-date-calendar:before,
.flatpickr-calendar.gp-date-calendar:after{display:none!important}
.gp-date-calendar .flatpickr-months{height:58px;align-items:center}
.gp-date-calendar .flatpickr-months .flatpickr-month{height:58px;color:var(--gp-ink);fill:var(--gp-ink)}
.gp-date-calendar .flatpickr-current-month{height:58px;padding:16px 0 0;font-size:1.08rem;font-weight:900}
.gp-date-calendar .flatpickr-current-month .flatpickr-monthDropdown-months{font:inherit;font-weight:900;background:transparent}
.gp-date-calendar .flatpickr-current-month input.cur-year{font-weight:900}
.gp-date-calendar .flatpickr-prev-month,.gp-date-calendar .flatpickr-next-month{
  width:44px;height:44px;top:12px!important;padding:13px!important;border-radius:14px;
  display:grid;place-items:center;background:#f5f6fa;transition:.18s background,.18s transform;
}
.gp-date-calendar .flatpickr-prev-month{left:10px!important}.gp-date-calendar .flatpickr-next-month{right:10px!important}
.gp-date-calendar .flatpickr-prev-month:hover,.gp-date-calendar .flatpickr-next-month:hover{background:#fff0f6;transform:scale(1.04)}
.gp-date-calendar .flatpickr-prev-month:hover svg,.gp-date-calendar .flatpickr-next-month:hover svg{fill:var(--gp-pink)!important}
.gp-date-calendar .flatpickr-innerContainer,.gp-date-calendar .flatpickr-rContainer,.gp-date-calendar .flatpickr-days,.gp-date-calendar .dayContainer{width:100%!important;max-width:none!important}
.gp-date-calendar .flatpickr-weekdays{height:36px;margin-top:4px}
.gp-date-calendar span.flatpickr-weekday{font-size:.72rem;font-weight:900;color:#8b90a0;text-transform:uppercase}
.gp-date-calendar .dayContainer{min-width:100%!important;display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:4px!important;padding-top:5px}
.gp-date-calendar .flatpickr-day{
  width:48px!important;max-width:none!important;height:48px!important;line-height:48px!important;
  margin:0!important;border:0!important;border-radius:15px!important;font-weight:800;color:var(--gp-ink);
}
.gp-date-calendar .flatpickr-day:hover{background:#f4f5f9!important;border-color:transparent!important}
.gp-date-calendar .flatpickr-day.today{box-shadow:inset 0 0 0 2px var(--gp-yellow);background:#fffaf0!important}
.gp-date-calendar .flatpickr-day.selected,.gp-date-calendar .flatpickr-day.selected:hover{
  background:var(--gp-pink)!important;color:#fff!important;box-shadow:0 7px 16px rgba(240,68,139,.27)!important;
}
.gp-date-calendar .flatpickr-day.prevMonthDay,.gp-date-calendar .flatpickr-day.nextMonthDay{color:#c2c5cf}
.gp-date-calendar .flatpickr-day.flatpickr-disabled{color:#d8dae1!important;background:transparent!important;text-decoration:none!important}

/* Le due scelte dell'atmosfera devono avere lo stesso peso visivo. */
.gp-option__mini-photo--fun{background-size:contain;background-repeat:no-repeat;background-color:#eaf7ff;background-position:center}

/* Rentalis: la barra filtri deve sembrare un unico componente del tema. */
.gp-catalog-page .ng-filtri{
  display:flex;align-items:center;gap:12px;padding:16px;
  margin:0 0 32px;background:#f5f7fb;border-radius:24px;
}
.gp-catalog-page .ng-filtri input[type=search],
.gp-catalog-page .ng-filtri select{
  appearance:none;-webkit-appearance:none;
  box-sizing:border-box!important;width:230px!important;min-width:230px!important;height:52px!important;
  margin:0!important;padding:0 46px 0 16px!important;border:1px solid #e0e3eb!important;
  border-radius:16px!important;background-color:#fff!important;color:var(--gp-ink)!important;
  font:inherit!important;font-size:.94rem!important;font-weight:700!important;line-height:50px!important;
  outline:none!important;box-shadow:0 2px 8px rgba(22,26,55,.025)!important;
  transition:.18s border-color,.18s box-shadow,.18s transform;
}
.gp-catalog-page .ng-filtri input[type=search]{padding-right:16px!important}
.gp-catalog-page .ng-filtri select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23161a37' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 17px center!important;background-size:12px 7px!important;
}
.gp-catalog-page .ng-filtri input[type=search]:focus,
.gp-catalog-page .ng-filtri select:focus{border-color:var(--gp-pink)!important;box-shadow:0 0 0 4px rgba(240,68,139,.08)!important}
.gp-catalog-page .ng-f-trasporto{
  min-height:52px;padding:0 10px;gap:9px;font-size:.88rem;font-weight:750;color:#3b4053;white-space:nowrap;
}
.gp-catalog-page .ng-f-trasporto input{width:18px;height:18px;accent-color:var(--gp-pink)}
.gp-catalog-page .ng-f-conta{margin-left:auto;white-space:nowrap;padding:0 2px;font-weight:750;color:#717688;opacity:1}

@media(max-width:820px){
  .gp-catalog-page .ng-filtri input[type=search],.gp-catalog-page .ng-filtri select{width:calc(50% - 6px)!important;min-width:0!important;flex:1 1 calc(50% - 6px)}
  .gp-catalog-page .ng-f-trasporto{flex:1 1 auto}.gp-catalog-page .ng-f-conta{margin-left:0}
}
@media(max-width:560px){
  .gp-date-big{margin:34px 0;padding:13px 15px 15px;border-radius:20px}
  .gp-date-big input,.gp-date-big .gp-date-alt{font-size:1.2rem!important;height:52px}
  .flatpickr-calendar.gp-date-calendar{width:calc(100vw - 28px)!important;max-width:420px!important;padding:12px!important;border-radius:23px!important}
  .gp-date-calendar .flatpickr-day{width:auto!important;height:42px!important;line-height:42px!important;border-radius:13px!important}
  .gp-catalog-page .ng-filtri{padding:13px;border-radius:20px}
  .gp-catalog-page .ng-filtri input[type=search],.gp-catalog-page .ng-filtri select{width:100%!important;flex:1 1 100%;min-width:100%!important}
  .gp-catalog-page .ng-f-trasporto{min-height:42px}.gp-catalog-page .ng-f-conta{margin-left:auto}
}


/* v0.5 — contenuto libero inserito dall'editor WordPress */
.gp-editor-content{padding-top:24px}
.gp-editor-content .gp-prose{max-width:900px}
.gp-editor-content .gp-prose>:first-child{margin-top:0}
.gp-editor-content .gp-prose>:last-child{margin-bottom:0}

/* ============================================================
   v0.6 — footer amministrabile, coerenza wizard, WhatsApp contestuale
   ============================================================ */

/* Nel passo Atmosfera entrambe le immagini riempiono davvero la card. */
.gp-option__mini-photo--fun{
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center 48%;
  background-color:transparent;
}

/* Menu leggibile sopra la hero scura della Sala feste. */
body:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-nav__list a,
body:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-header__bookings{
  color:#fff;
}
body:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle span{background:#fff}
body:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-header__cta{background:#fff;color:var(--gp-ink)}
body:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-header__cta b{color:var(--gp-pink)}

/* Footer */
.gp-footer__nav,.gp-footer__contact{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.gp-footer-menu,.gp-footer-legal-menu{list-style:none;margin:0;padding:0}
.gp-footer-menu{display:flex;flex-direction:column;gap:7px}
.gp-footer-menu li,.gp-footer-legal-menu li{margin:0;padding:0}
.gp-footer__social{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}
.gp-footer__social a{font-size:.78rem;color:var(--gp-yellow)}
.gp-footer__bottom{align-items:flex-start;gap:30px}
.gp-footer__company{display:flex;gap:10px 16px;flex-wrap:wrap}
.gp-footer__company span+span:before{content:"·";margin-right:16px;color:rgba(255,255,255,.25)}
.gp-footer__legal{margin-left:auto}
.gp-footer__legal,.gp-footer-legal-menu{display:flex;gap:10px 18px;flex-wrap:wrap;justify-content:flex-end}
.gp-footer__legal a{color:#b8bdd1;font-size:.78rem;text-decoration:none}
.gp-footer__legal a:hover{color:#fff}

/* WhatsApp contestuale: piccolo, utile, non invade il layout. */
.gp-context-wa{position:fixed;right:22px;bottom:22px;z-index:920;display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;min-width:245px;padding:13px 16px;border-radius:18px;background:#fff;color:var(--gp-ink);text-decoration:none;box-shadow:0 18px 55px rgba(22,26,55,.2);border:1px solid rgba(22,26,55,.08);transition:.2s transform,.2s box-shadow}
.gp-context-wa:hover{transform:translateY(-3px);box-shadow:0 22px 60px rgba(22,26,55,.26)}
.gp-context-wa__dot{grid-row:1/3;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#27d367;color:#fff;font-size:.72rem;box-shadow:0 0 0 6px rgba(39,211,103,.1)}
.gp-context-wa>span:nth-child(2){font-size:.72rem;font-weight:750;color:#6c7185;line-height:1.2}
.gp-context-wa b{font-size:.82rem;line-height:1.25}

@media(max-width:720px){
  .gp-footer__bottom{align-items:flex-start}
  .gp-footer__legal,.gp-footer-legal-menu{margin-left:0;justify-content:flex-start}
  .gp-footer__company span+span:before{display:none}
  .gp-footer__company{flex-direction:column;gap:3px}
  .gp-context-wa{right:14px;bottom:14px;min-width:0;max-width:calc(100% - 28px);padding:11px 13px;border-radius:16px}
  .gp-context-wa>span:nth-child(2){display:none}
  .gp-context-wa__dot{grid-row:auto;width:34px;height:34px}
}

/* Noleggio gonfiabili — percorso chiaro anche prima del checkout. */
.gp-rental-how{background:var(--gp-ink);color:#fff}
.gp-rental-how .gp-eyebrow{color:#aab2d4}
.gp-rental-how__head{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-bottom:48px}
.gp-rental-how__head>p{color:#b8bed3;margin:0;max-width:520px}
.gp-rental-how__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gp-rental-how__grid article{position:relative;min-height:260px;padding:28px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);overflow:hidden}
.gp-rental-how__grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gp-yellow);color:var(--gp-ink);font-weight:950;font-size:.72rem}
.gp-rental-how__grid h3{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:1.55rem;line-height:1;margin:70px 0 12px}
.gp-rental-how__grid p{color:#b8bed3;margin:0;font-size:.9rem}
@media(max-width:900px){.gp-rental-how__head{grid-template-columns:1fr;gap:20px}.gp-rental-how__grid{grid-template-columns:1fr}}

/* ============================================================
   v0.7 — Home / Negozio fisico
   ============================================================ */
.gp-store{background:#f7f8fc;overflow:hidden}
.gp-store__card{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:64px;align-items:center;min-height:650px;padding:68px;border-radius:42px;background:#fff;box-shadow:0 28px 80px rgba(22,26,55,.08);overflow:hidden}
.gp-store__card:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:var(--gp-yellow);opacity:.72;right:-135px;top:-165px}
.gp-store__card:after{content:"";position:absolute;width:190px;height:190px;border:2px solid rgba(22,26,55,.09);border-radius:50%;left:-75px;bottom:-85px}
.gp-store__copy{position:relative;z-index:3;max-width:600px}
.gp-store__copy h2{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(3rem,5.3vw,5.35rem);line-height:.93;letter-spacing:-.055em;margin:0 0 24px}
.gp-store__copy h2 br+*{color:var(--gp-pink)}
.gp-store__lead{font-size:1.05rem;line-height:1.72;color:#666c80;max-width:590px;margin:0 0 25px}
.gp-store__chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.gp-store__chips span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border-radius:999px;background:#f2f3f8;color:var(--gp-ink);font-size:.72rem;font-weight:900}
.gp-store__facts{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin:0 0 28px}
.gp-store__facts>div{border-top:1px solid #e7e9f0;padding-top:14px;display:grid;gap:3px}
.gp-store__facts small{font-size:.6rem;letter-spacing:.12em;font-weight:950;color:#9a9fb0}
.gp-store__facts strong{font-size:.82rem;line-height:1.35}
.gp-store__facts span{font-size:.67rem;color:#858a9c}
.gp-store__visual{position:relative;z-index:2;min-height:510px}
.gp-store__photo{position:absolute;overflow:hidden;border-radius:30px;background:#eef0f6;box-shadow:0 24px 60px rgba(22,26,55,.15)}
.gp-store__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.gp-store__card:hover .gp-store__photo img{transform:scale(1.035)}
.gp-store__photo--one{width:62%;height:72%;left:2%;top:3%;transform:rotate(-3deg)}
.gp-store__photo--two{width:47%;height:56%;right:2%;bottom:2%;transform:rotate(4deg);border:8px solid #fff}
.gp-store__balloons{position:absolute;z-index:4;width:32%;right:12%;top:-1%;filter:drop-shadow(0 18px 20px rgba(22,26,55,.13));transform:rotate(5deg)}
.gp-store__balloons img{width:100%;height:auto;display:block}
.gp-store__sticker{position:absolute;z-index:6;left:45%;bottom:9%;width:134px;height:134px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--gp-pink);color:#fff;transform:rotate(-10deg);box-shadow:0 16px 36px rgba(240,68,139,.28);animation:gpStoreFloat 4.8s ease-in-out infinite}
.gp-store__sticker small{font-size:.62rem;text-transform:uppercase;font-weight:900;letter-spacing:.1em}
.gp-store__sticker strong{font-size:1rem;line-height:1.05}
.gp-store__sticker span{font-size:1.25rem;line-height:1;margin-top:2px}
@keyframes gpStoreFloat{0%,100%{transform:rotate(-10deg) translateY(0)}50%{transform:rotate(-7deg) translateY(-8px)}}
@media (max-width:980px){.gp-store__card{grid-template-columns:1fr;padding:46px;gap:38px}.gp-store__visual{min-height:470px}.gp-store__copy{max-width:760px}.gp-store__copy h2{font-size:clamp(3rem,8vw,5rem)}}
@media (max-width:620px){.gp-store__card{padding:30px 22px 28px;border-radius:30px}.gp-store__facts{grid-template-columns:1fr}.gp-store__visual{min-height:380px}.gp-store__photo--one{width:70%;height:68%}.gp-store__photo--two{width:54%;height:53%}.gp-store__balloons{width:39%;right:3%}.gp-store__sticker{width:104px;height:104px;left:43%;bottom:8%}.gp-store__copy h2{font-size:clamp(2.7rem,13vw,4.2rem)}}
@media (prefers-reduced-motion:reduce){.gp-store__sticker{animation:none}.gp-store__photo img{transition:none}}
.gp-store__copy h2 em{font-style:normal;color:var(--gp-pink)}

/* ============================================================
   v0.8 — Dove siamo / Mapbox
   ============================================================ */
body:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-nav__list a,
body:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-header__bookings{color:#fff}
body:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle span{background:#fff}
body:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-header__cta{background:#fff;color:var(--gp-ink)}
body:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-header__cta b{color:var(--gp-pink)}
.gp-location-hero{position:relative;min-height:690px;padding:170px 0 90px;background:var(--gp-ink);color:#fff;overflow:hidden}
.gp-location-hero:before{content:"";position:absolute;width:590px;height:590px;border-radius:50%;right:-180px;top:-210px;background:var(--gp-yellow);opacity:.96}
.gp-location-hero:after{content:"";position:absolute;width:330px;height:330px;border:2px solid rgba(255,255,255,.12);border-radius:50%;left:-160px;bottom:-180px}
.gp-location-hero__grid{display:grid;grid-template-columns:1.1fr .75fr;gap:70px;align-items:center;position:relative;z-index:2}
.gp-location-hero__copy{max-width:830px}.gp-location-hero .gp-eyebrow{color:#aab2d4}.gp-location-hero h1{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(4rem,7.5vw,7.6rem);line-height:.88;letter-spacing:-.06em;margin:0 0 28px;color:#fff}.gp-location-hero__copy>p:last-of-type{max-width:680px;color:#bdc3dc;font-size:1.05rem;line-height:1.7;margin:0}
.gp-location-hero__facts{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-top:38px}.gp-location-hero__facts div{padding-top:14px;border-top:1px solid rgba(255,255,255,.16);display:grid;gap:4px}.gp-location-hero__facts small{font-size:.6rem;letter-spacing:.12em;font-weight:950;color:#8f98bf}.gp-location-hero__facts strong{font-size:.78rem;line-height:1.35;color:#fff}
.gp-location-hero__art{position:relative;min-height:430px}.gp-location-hero__circle{position:absolute;width:360px;height:360px;border-radius:50%;right:10%;top:4%;background:#fff;opacity:.96}.gp-location-hero__balloons{position:absolute;width:320px;right:15%;top:-5%;filter:drop-shadow(0 28px 35px rgba(0,0,0,.2));animation:gpStoreFloat 5.2s ease-in-out infinite}.gp-location-hero__pin{position:absolute;display:flex;align-items:center;justify-content:center;gap:8px;width:140px;height:140px;border-radius:50%;left:3%;bottom:3%;background:var(--gp-pink);color:#fff;transform:rotate(-8deg);box-shadow:0 20px 45px rgba(240,68,139,.25)}.gp-location-hero__pin span{font-size:2rem}.gp-location-hero__pin b{font-size:.88rem;line-height:.9;letter-spacing:.04em}
.gp-location-map-section{background:#f6f7fb;padding-top:80px}.gp-location-map-wrap{position:relative;min-height:680px;border-radius:38px;overflow:hidden;background:#e9ebf2;box-shadow:0 28px 80px rgba(22,26,55,.09)}.gp-location-map{position:absolute;inset:0;min-height:680px}.gp-location-map .mapboxgl-canvas{outline:0}.gp-location-map .mapboxgl-ctrl-bottom-left,.gp-location-map .mapboxgl-ctrl-bottom-right{opacity:.75}.gp-location-map--fallback{display:grid;place-items:center;background:radial-gradient(circle at 72% 28%,rgba(255,216,77,.8),transparent 22%),linear-gradient(145deg,#eef0f6,#dfe3ed)}.gp-location-map--fallback>div{max-width:460px;padding:35px;text-align:center;color:#676d81}.gp-location-map--fallback span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border-radius:20px;background:var(--gp-pink);color:#fff;font-size:24px}.gp-location-map--fallback strong{display:block;font-size:1.25rem;color:var(--gp-ink);margin-bottom:7px}
.gp-location-card{position:absolute;z-index:4;width:min(430px,calc(100% - 48px));left:24px;bottom:24px;padding:31px;border-radius:28px;background:rgba(255,255,255,.95);backdrop-filter:blur(15px);box-shadow:0 25px 65px rgba(22,26,55,.2)}.gp-location-card .gp-eyebrow{margin-bottom:8px}.gp-location-card h2{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:2rem;line-height:1;margin:0 0 13px}.gp-location-card address{font-style:normal;color:#6d7285;line-height:1.45}.gp-location-card__hours{display:grid;gap:8px;margin:23px 0}.gp-location-card__hours>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:9px;border-top:1px solid #e7e9ef}.gp-location-card__hours span{font-size:.7rem;color:#9196a7}.gp-location-card__hours b{font-size:.72rem;text-align:right}.gp-location-card__actions{display:grid;grid-template-columns:1fr;gap:8px}.gp-location-card__actions .gp-btn{width:100%}.gp-location-card__phone{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-top:20px;padding-top:16px;border-top:1px solid #e7e9ef;text-decoration:none;color:var(--gp-ink)}.gp-location-card__phone small{color:#9297aa}.gp-location-card__phone strong{font-size:.9rem}
.gp-map-marker{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#fff;border:5px solid var(--gp-yellow);box-shadow:0 14px 35px rgba(22,26,55,.25);cursor:pointer}.gp-map-marker img{width:58px;height:58px;object-fit:contain;border-radius:50%}.gp-map-marker:after{content:"";position:absolute;width:16px;height:16px;background:var(--gp-yellow);bottom:-8px;left:50%;transform:translateX(-50%) rotate(45deg);z-index:-1}.gp-map-popup .mapboxgl-popup-content{border-radius:16px;padding:13px 15px;box-shadow:0 10px 35px rgba(22,26,55,.14);font-family:inherit}.gp-map-popup strong{display:block;color:var(--gp-ink);font-size:.8rem}.gp-map-popup span{font-size:.67rem;color:#767c8f}.gp-map-popup .mapboxgl-popup-close-button{font-size:18px;padding:4px 7px}
.gp-location-store{background:#fff}.gp-location-store__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.gp-location-store__copy h2{font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-size:clamp(3rem,5vw,5rem);line-height:.93;letter-spacing:-.055em;margin:0 0 24px}.gp-location-store__copy>p{color:#6d7285;line-height:1.72;max-width:590px}.gp-location-store__collage{position:relative;min-height:570px}.gp-location-store__collage figure{position:absolute;margin:0;overflow:hidden;border-radius:29px;box-shadow:0 24px 60px rgba(22,26,55,.13)}.gp-location-store__collage figure:first-child{width:62%;height:76%;left:2%;top:3%;transform:rotate(-3deg)}.gp-location-store__collage figure:nth-child(2){width:49%;height:58%;right:2%;bottom:2%;transform:rotate(4deg);border:8px solid #fff}.gp-location-store__collage figure img{width:100%;height:100%;object-fit:cover}.gp-location-store__balloons{position:absolute;width:34%;right:8%;top:-2%;z-index:4;filter:drop-shadow(0 18px 20px rgba(22,26,55,.14))}
@media(max-width:980px){.gp-location-hero__grid,.gp-location-store__grid{grid-template-columns:1fr}.gp-location-hero__art{min-height:340px}.gp-location-hero__circle{width:300px;height:300px;right:20%}.gp-location-hero__balloons{width:270px;right:24%}.gp-location-map-wrap,.gp-location-map{min-height:760px}.gp-location-card{bottom:20px}.gp-location-store__collage{min-height:500px}}
@media(max-width:650px){.gp-location-hero{padding-top:140px;min-height:auto}.gp-location-hero h1{font-size:clamp(3.5rem,16vw,5.2rem)}.gp-location-hero__facts{grid-template-columns:1fr}.gp-location-hero__art{min-height:280px}.gp-location-hero__circle{width:240px;height:240px;right:11%}.gp-location-hero__balloons{width:220px;right:15%}.gp-location-hero__pin{width:105px;height:105px}.gp-location-map-section{padding-top:40px}.gp-location-map-wrap{min-height:850px;border-radius:28px}.gp-location-map{min-height:520px;bottom:auto}.gp-location-card{width:calc(100% - 28px);left:14px;bottom:14px;padding:24px;border-radius:23px}.gp-location-store__collage{min-height:390px}.gp-location-store__copy h2{font-size:clamp(2.8rem,13vw,4rem)}}
@media(prefers-reduced-motion:reduce){.gp-location-hero__balloons{animation:none}}
.gp-location-map--fallback small{display:block;margin-top:12px;font-size:.68rem;color:#8d93a6}


/* ==========================================================================\n   Giò Party v0.9 — rifiniture UI e integrazione plugin\n   ========================================================================== */
.gp-hero__price{color:var(--gp-ink);text-decoration:none;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease}
.gp-hero__price:hover,.gp-hero__price:focus-visible{transform:translateY(-5px) rotate(-1deg);box-shadow:0 22px 55px rgba(22,26,55,.18)}
.gp-hero__price:focus-visible{outline:3px solid var(--gp-pink);outline-offset:4px}

.gp-contact-date{position:relative;display:block;width:100%}
.gp-contact-date>input,.gp-contact-date__input{width:100%!important;min-height:56px!important;padding:0 48px 0 17px!important;border:1px solid rgba(22,26,55,.16)!important;border-radius:16px!important;background:#fff!important;color:var(--gp-ink)!important;font:inherit!important;box-sizing:border-box;cursor:pointer}
.gp-contact-date__icon{position:absolute;right:18px;top:50%;transform:translateY(-50%) rotate(-45deg);width:10px;height:10px;border-right:2px solid var(--gp-ink);border-bottom:2px solid var(--gp-ink);font-size:0;pointer-events:none;z-index:3}
.gp-contact-date:focus-within>input,.gp-contact-date:focus-within .gp-contact-date__input{border-color:var(--gp-pink)!important;box-shadow:0 0 0 4px rgba(240,68,139,.09)!important;outline:0}

/* Area Prenotazioni: il login non deve sembrare un form del plugin. */
.gp-account .ng-area .ng-form{max-width:620px;padding:28px!important;border-radius:24px!important}
.gp-account .ng-area input[type=tel],
.gp-account .ng-area input[type=text],
.gp-account .ng-area input[type=email],
.gp-account .ng-area select{
  display:block;width:100%!important;min-width:0!important;min-height:56px!important;box-sizing:border-box;
  padding:0 17px!important;margin-top:7px;border:1px solid rgba(22,26,55,.16)!important;border-radius:16px!important;
  background:#fff;color:var(--gp-ink);font:inherit!important;font-size:1rem!important;
}
.gp-account .ng-area label{display:block!important;width:100%;font-weight:750;color:var(--gp-ink)}
.gp-account .ng-area input:focus{outline:0;border-color:var(--gp-pink)!important;box-shadow:0 0 0 4px rgba(240,68,139,.09)!important}

/* Rentalis: campi, select, radio e quantità con la stessa scala del sito. */
.ng-checkout input[type=text],.ng-checkout input[type=email],.ng-checkout input[type=tel],.ng-checkout input[type=date],
.ng-checkout select,.ng-date-box select,.ng-area input[type=tel],.ng-area input[type=text],.ng-area input[type=email],.ng-area select{
  min-height:56px!important;border-radius:16px!important;border:1px solid rgba(22,26,55,.16)!important;padding:0 17px!important;box-sizing:border-box;font:inherit!important;background-color:#fff!important
}
.ng-checkout select,.ng-date-box select,.ng-area select{appearance:none;-webkit-appearance:none;padding-right:46px!important;background-image:linear-gradient(45deg,transparent 50%,#161a37 50%),linear-gradient(135deg,#161a37 50%,transparent 50%)!important;background-position:calc(100% - 20px) 24px,calc(100% - 14px) 24px!important;background-size:6px 6px,6px 6px!important;background-repeat:no-repeat!important}
.ng-qta-wrap{display:block!important;margin:18px 0 0!important;font-size:.84rem!important;font-weight:850!important;letter-spacing:.02em;color:var(--gp-ink)}
.ng-qta-wrap select{display:block!important;width:100%!important;max-width:250px;margin:8px 0 0!important;min-height:56px!important;border-radius:16px!important;padding:0 46px 0 17px!important}
.ng-modalita{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;margin:14px 0 20px!important}
.ng-modalita .ng-radio,.ng-superfici .ng-radio{position:relative;display:flex!important;align-items:flex-start!important;gap:12px!important;padding:16px 17px!important;border:1px solid rgba(22,26,55,.13)!important;border-radius:18px!important;background:#fff!important;font-weight:800;line-height:1.25;cursor:pointer;transition:.18s border-color,.18s box-shadow,.18s transform}
.ng-modalita .ng-radio:hover,.ng-superfici .ng-radio:hover{transform:translateY(-1px);border-color:rgba(240,68,139,.42)!important}
.ng-modalita .ng-radio:has(input:checked),.ng-superfici .ng-radio:has(input:checked){border-color:var(--gp-pink)!important;box-shadow:0 0 0 4px rgba(240,68,139,.08)!important;background:#fffafd!important}
.ng-radio input[type=radio]{appearance:none;-webkit-appearance:none;width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important;margin:0!important;border:2px solid #a6a9b5!important;border-radius:50%!important;background:#fff!important;box-shadow:none!important;transition:.15s}
.ng-radio input[type=radio]:checked{border:6px solid var(--gp-pink)!important}
.ng-radio small{display:block;margin-top:4px;font-weight:500;line-height:1.35;color:#6b6f80;opacity:1!important}
.ng-superfici{gap:12px!important}
.ng-check{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:11px!important;padding:14px 16px;border-radius:16px;background:#f7f8fb}
.ng-check input[type=checkbox]{appearance:none;-webkit-appearance:none;width:21px!important;height:21px!important;min-width:21px!important;margin:0!important;border:2px solid #a6a9b5!important;border-radius:6px!important;background:#fff!important;position:relative}
.ng-check input[type=checkbox]:checked{background:var(--gp-pink)!important;border-color:var(--gp-pink)!important}
.ng-check input[type=checkbox]:checked:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:900}
.ng-coupon-box{margin:22px 0 18px;padding:20px;border:1px dashed rgba(240,68,139,.38);border-radius:20px;background:linear-gradient(135deg,#fff9fc,#fff)}
.ng-coupon-box .ng-nota-sezione{margin:0 0 4px;color:var(--gp-ink)}
.ng-coupon-box .ng-nota{margin:0 0 13px}
.ng-coupon-field{position:relative}
.ng-coupon-field:after{content:'%';position:absolute;right:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--gp-yellow);font-size:.78rem;font-weight:950;color:var(--gp-ink);pointer-events:none}
.ng-coupon-field input{padding-right:56px!important;text-transform:uppercase;font-weight:850;letter-spacing:.04em}

/* RoomRent eredita la stessa grammatica form. */
.rr-form input,.rr-form textarea,.rr-form select,.rr-sala .ng-form input,.rr-sala .ng-form textarea,.rr-sala .ng-form select{
  box-sizing:border-box;width:100%!important;min-height:56px!important;padding:0 17px!important;border:1px solid rgba(22,26,55,.16)!important;border-radius:16px!important;background:#fff!important;color:var(--gp-ink);font:inherit!important
}
.rr-form textarea,.rr-sala .ng-form textarea{padding:14px 17px!important;min-height:110px!important}

@media(max-width:700px){.ng-modalita{grid-template-columns:1fr!important}.ng-qta-wrap select{max-width:none}}


/* ==========================================================================
   Giò Party v1.0 — conferme e informativa cookie
   ========================================================================== */
.gp-confirm-page{background:#fff}.gp-confirm-hero{padding-top:clamp(130px,14vw,185px);padding-bottom:45px;background:radial-gradient(circle at 50% 20%,#fff5fa 0,#fff 54%)}.gp-confirm-next{padding-top:55px;background:#f7f8fb}.gp-confirm-next .gp-section-head{max-width:780px}.gp-confirm-next .gp-section-head>p:last-child{color:#6d7285;line-height:1.65}.gp-confirm-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}.gp-confirm-cards--three{grid-template-columns:repeat(3,minmax(0,1fr))}.gp-confirm-card{display:grid;grid-template-columns:42% 1fr;min-height:260px;border-radius:26px;overflow:hidden;background:#fff;color:var(--gp-ink);text-decoration:none;box-shadow:0 16px 45px rgba(22,26,55,.07);transition:.22s transform,.22s box-shadow}.gp-confirm-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(22,26,55,.13)}.gp-confirm-card img{width:100%;height:100%;object-fit:cover}.gp-confirm-card span{display:flex;flex-direction:column;justify-content:center;padding:28px}.gp-confirm-card small{color:var(--gp-pink);font-weight:900;letter-spacing:.12em}.gp-confirm-card strong{margin:9px 0 18px;font-size:1.28rem;line-height:1.22}.gp-confirm-card em{font-style:normal;font-size:.85rem;font-weight:850}.gp-confirm-actions{display:flex;align-items:center;gap:20px;margin-top:30px;padding-bottom:20px}.gp-cookie-banner[hidden]{display:none!important}.gp-cookie-banner{position:fixed;z-index:99998;left:20px;right:20px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:980px;margin:auto;padding:18px 20px 18px 22px;border:1px solid rgba(22,26,55,.12);border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 20px 70px rgba(22,26,55,.2);backdrop-filter:blur(12px);color:var(--gp-ink)}.gp-cookie-banner__copy{display:flex;flex-direction:column;gap:3px}.gp-cookie-banner__copy strong{font-size:.96rem}.gp-cookie-banner__copy span{font-size:.8rem;color:#6d7285;line-height:1.4}.gp-cookie-banner__actions{display:flex;align-items:center;gap:14px;flex:0 0 auto}.gp-cookie-banner__actions a{font-size:.78rem;color:#5e6374}.gp-cookie-banner__actions button{border:0;border-radius:999px;background:var(--gp-ink);color:#fff;padding:11px 18px;font:inherit;font-size:.8rem;font-weight:850;cursor:pointer}.gp-cookie-banner__actions button:hover{background:var(--gp-pink)}
@media(max-width:900px){.gp-confirm-cards--three{grid-template-columns:1fr 1fr}.gp-confirm-cards--three .gp-confirm-card:last-child{grid-column:1/-1}.gp-confirm-card{grid-template-columns:38% 1fr}}
@media(max-width:650px){.gp-confirm-cards,.gp-confirm-cards--three{grid-template-columns:1fr}.gp-confirm-cards--three .gp-confirm-card:last-child{grid-column:auto}.gp-confirm-card{grid-template-columns:1fr;min-height:0}.gp-confirm-card img{height:210px}.gp-confirm-actions{align-items:flex-start;flex-direction:column}.gp-cookie-banner{left:12px;right:12px;bottom:12px;align-items:flex-start;flex-direction:column;gap:13px;padding:17px;border-radius:18px}.gp-cookie-banner__actions{width:100%;justify-content:space-between}}


/* Mobile: il testo del box gonfiabili deve restare leggibile anche sopra l'immagine. */
@media(max-width:720px){
  .gp-choice__item--inflatables{padding:22px 18px 0;min-height:520px}
  .gp-choice__item--inflatables .gp-choice__copy{
    max-width:none;
    padding:18px 18px 132px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.90) 70%,rgba(255,255,255,.34) 100%);
    box-shadow:0 16px 38px rgba(22,26,55,.10);
    backdrop-filter:blur(8px)
  }
  .gp-choice__item--inflatables .gp-choice__copy p{max-width:none;color:#495066}
  .gp-choice__item--inflatables .gp-choice__copy .gp-text-link{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.86)}
  .gp-choice__item--inflatables img{width:100%;right:-72px;bottom:-10px}
}
@media(max-width:520px){
  .gp-choice__item--inflatables{padding:18px 16px 0;min-height:500px}
  .gp-choice__item--inflatables .gp-choice__copy{padding:16px 16px 126px;border-radius:22px}
  .gp-choice__item--inflatables .gp-choice__copy h3{font-size:clamp(2rem,12vw,2.8rem)}
  .gp-choice__item--inflatables img{width:105%;right:-82px;bottom:-6px;opacity:.98}
}


/* v1.0.4 — Hero scure: il pannello menu mobile e' bianco, quindi a menu aperto
   link e hamburger devono tornare scuri sia su Sala feste sia su Dove siamo. */
@media(max-width:1000px){
  body.gp-menu-open:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-nav.is-open .gp-nav__list a,
  body.gp-menu-open:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-nav.is-open .gp-nav__list a{
    color:var(--gp-ink)!important;
  }
  body.gp-menu-open:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle,
  body.gp-menu-open:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle{
    position:relative;
    z-index:1002;
  }
  body.gp-menu-open:has(.gp-room-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle span,
  body.gp-menu-open:has(.gp-location-hero) .gp-header:not(.is-scrolled) .gp-menu-toggle span{
    background:var(--gp-ink)!important;
  }
}


/* ========================================================================== 
   Giò Party v1.0.5 — rifiniture frecce, date form e checkbox privacy
   ========================================================================== */

/* Freccia delle card: disegnata in CSS, non dipende dal glifo del font. */
.gp-product-card__arrow{
  position:relative!important;
  display:block!important;
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  font-size:0!important;
  line-height:0!important;
  border-radius:50%!important;
  background:var(--gp-ink)!important;
  color:#fff!important;
}
.gp-product-card__arrow::before{
  content:"";
  position:absolute;
  width:12px;
  height:2px;
  left:50%;
  top:50%;
  background:#fff;
  border-radius:99px;
  transform:translate(-58%,-50%);
}
.gp-product-card__arrow::after{
  content:"";
  position:absolute;
  width:7px;
  height:7px;
  left:50%;
  top:50%;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transform:translate(-1px,-50%) rotate(45deg);
  transform-origin:center;
}

/* Chevron del calendario Party Builder: geometrico e centrato otticamente. */
.gp-date-input-icon{
  position:absolute!important;
  right:5px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:42px!important;
  height:42px!important;
  display:block!important;
  font-size:0!important;
  line-height:0!important;
}
.gp-date-input-icon::after{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  left:50%;
  top:47%;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:translate(-50%,-50%) rotate(45deg);
}

/* Privacy: stessa scala e feedback visivo dei checkbox Rentalis. */
.gp-privacy{
  display:flex!important;
  flex-direction:row!important;
  align-items:flex-start!important;
  gap:11px!important;
  margin:18px 0!important;
  padding:14px 16px!important;
  border-radius:16px!important;
  background:#f7f8fb!important;
  font-weight:650!important;
  line-height:1.4!important;
  cursor:pointer;
}
.gp-privacy input[type=checkbox]{
  appearance:none!important;
  -webkit-appearance:none!important;
  flex:0 0 21px!important;
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  min-height:21px!important;
  max-width:21px!important;
  margin:1px 0 0!important;
  padding:0!important;
  border:2px solid #a6a9b5!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:none!important;
  position:relative!important;
  cursor:pointer;
}
.gp-privacy input[type=checkbox]:checked{
  background:var(--gp-pink)!important;
  border-color:var(--gp-pink)!important;
}
.gp-privacy input[type=checkbox]:checked::after{
  content:'✓';
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:14px;
  line-height:1;
  font-weight:900;
}
.gp-privacy input[type=checkbox]:focus-visible{
  outline:3px solid rgba(240,68,139,.22)!important;
  outline-offset:2px!important;
}
.gp-privacy span{min-width:0}

@media(max-width:700px){
  .gp-product-card__arrow{width:34px!important;height:34px!important;flex-basis:34px!important}
  .gp-privacy{padding:13px 14px!important}
}
