/* Layout acquisto coordinato con il preventivo; nessuna regola legacy degli accordion. */
body.gv-purchase-page{background:#f3f3fa!important;color:#15355e;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.gv-purchase-page .gv-checkout{--gv-text:#15355e;--gv-border:#dce6f2;--gv-pink-strong:#d42180}
.gv-purchase-page .gv-checkout .gv-checkout-shell{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;align-items:start!important;gap:20px!important;padding:20px 24px 24px;border:1px solid #dfe5ef;border-top:3px solid #d42180;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(18,38,72,.06)}
.gv-purchase-page .gv-checkout .gv-checkout-main,.gv-purchase-page .gv-checkout .gv-checkout-side,.gv-purchase-page .gv-checkout .gv-resort-card{display:contents!important}
.gv-purchase-page .gv-checkout .gv-offer-visual{grid-column:1/5;grid-row:1/3;align-self:stretch;overflow:hidden;border-radius:12px!important;background:#e9edf5}
.gv-purchase-page .gv-checkout .gv-offer-visual img{display:block;width:100%;height:100%!important;min-height:340px;max-height:470px;object-fit:cover;border-radius:12px!important}
.gv-purchase-page .gv-checkout .gv-offer-copy{grid-column:5/13;grid-row:1;align-self:stretch;min-width:0;padding:22px 24px;border-radius:12px 12px 0 0;background:linear-gradient(110deg,#f1f7ff 40%,#fff0f7)}
.gv-purchase-page .gv-offer-title{margin:0;color:#15355e;font-size:clamp(28px,2.8vw,40px);font-weight:800;line-height:1.15;letter-spacing:-.035em;text-align:left}
.gv-purchase-page .gv-checkout .gv-summary-section{grid-column:5/13;grid-row:2;align-self:stretch;min-width:0;margin-top:-20px;padding:18px 20px;border:1px solid #dce6f2;border-radius:0 0 12px 12px;background:#f1f6fd}
.gv-purchase-page .gv-checkout .gv-summary-head{align-items:center;gap:12px;margin-bottom:10px}
.gv-purchase-page .gv-booking-kicker{color:#bd1b70;font-size:10px;font-weight:800;letter-spacing:.06em}
.gv-purchase-page .gv-booking-title{margin:0 0 12px;color:#15355e;font-size:15px;font-weight:800;line-height:1.35}
.gv-purchase-page .gv-booking-details{display:grid;grid-template-columns:1.4fr .65fr 1.1fr .65fr;gap:12px;padding:12px 0 18px;border:0;background:transparent}
.gv-purchase-page .gv-booking-detail{display:block;min-width:0;min-height:0;padding:0 12px 0 0;border:0;border-right:1px solid #dce6f2}
.gv-purchase-page .gv-booking-detail::before{display:none}
.gv-purchase-page .gv-booking-detail:last-child{padding-right:0;border:0}
.gv-purchase-page .gv-booking-detail span{display:block;color:#bd1b70;font-size:10px;font-weight:800;letter-spacing:.03em}
.gv-purchase-page .gv-booking-detail strong{display:block;margin-top:6px;color:#15355e;font-size:13px;line-height:1.4;text-align:left;overflow-wrap:break-word}
.gv-purchase-page .gv-total-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 -20px -18px;padding:18px 20px;border:0;border-radius:0 0 12px 12px;background:linear-gradient(110deg,#0b3565,#174679);color:#fff}
.gv-purchase-page .gv-price-label{margin:0;color:#dceaff;font-size:13px;text-align:left;text-transform:none}
.gv-purchase-page #prezzoFinale{flex:0 0 auto;text-align:right}
.gv-purchase-page #prezzoFinale b,.gv-purchase-page #prezzoFinale span{color:#fff!important}
.gv-purchase-page .gv-checkout .gv-checkout-main>.gv-offer-body{grid-column:1/8;grid-row:3;min-width:0;width:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.gv-purchase-section-title{margin:0 0 16px}
.gv-purchase-section-title>span{color:#ce1d78;font-size:11px;font-weight:800;letter-spacing:.1em}
.gv-purchase-section-title h2{margin:7px 0 0;color:#15355e;font-size:25px;font-weight:800;line-height:1.2;letter-spacing:-.025em}
.gv-purchase-term{min-width:0;margin:0 0 12px;border:0;border-radius:13px;background:#eef5ff;overflow:hidden}
.gv-purchase-term--excluded{background:#fff2f8}
.gv-purchase-term summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:17px 20px;list-style:none;cursor:pointer}
.gv-purchase-term summary::-webkit-details-marker{display:none}
.gv-purchase-term summary>span{flex:1;min-width:0;color:#15355e;font-size:15px;font-weight:800;line-height:1.4;overflow-wrap:normal}
.gv-purchase-term--excluded summary>span{color:#a51a63}
.gv-purchase-term summary>b{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.8);color:#15355e;font-size:18px;font-weight:500;transition:transform .2s}
.gv-purchase-term[open] summary>b{transform:rotate(45deg)}
.gv-purchase-term summary:focus-visible{outline:2px solid #d42180;outline-offset:-3px}
.gv-purchase-term-body{padding:0 20px 20px;color:#405875;font-size:14px;line-height:1.65;overflow-wrap:break-word}
.gv-purchase-term-body p{margin:0 0 10px}
.gv-purchase-term-body img,.gv-purchase-term-body table{max-width:100%}
.gv-purchase-term-body ul{padding-left:20px}
.gv-purchase-term--more{margin:0;border-bottom:1px solid #e6e9f0;border-radius:0;background:#fff}
.gv-purchase-term--more summary{padding:17px 0;min-height:56px}
.gv-purchase-term--more summary>span{font-size:14px}
.gv-purchase-term--more summary>b{color:#ca1b75;background:#fff0f7}
.gv-purchase-term--more .gv-purchase-term-body{padding:0 0 18px}
.gv-purchase-page .gv-checkout .gv-payment-section{grid-column:8/13;grid-row:3;align-self:start;min-width:0;width:100%;padding:20px;border:1px solid #dce6f2;border-radius:12px;background:#f5f9fe}
.gv-purchase-page .gv-side-title{margin:0 0 16px;color:#15355e;font-size:17px;font-weight:800;line-height:1.4}
.gv-purchase-page .gv-checkout .gv-payments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px}
.gv-purchase-page .gv-payments>.spazioTraBoxPag111111111111{display:none!important}
.gv-purchase-page .gv-checkout .gv-payments>.pay-card{display:flex;min-width:0;margin:0!important;border:1px solid #e1e5ed!important;border-radius:10px!important;background:#f4f6fb!important;box-shadow:0 5px 12px rgba(14,42,78,.04)!important;overflow:hidden!important}
.gv-purchase-page .gv-checkout .pay-inner{flex:1;min-width:0;padding:12px!important;border-radius:0;background:#f4f6fb!important}
.gv-purchase-page .gv-checkout .pay-inner::before{width:4px;background:#d42180}
.gv-purchase-page .gv-checkout .pay-acconto .pay-inner::before{background:#f3a33c}
.gv-purchase-page .gv-checkout .pay-scalapay .pay-inner::before{background:#a8e3c4}
.gv-purchase-page .gv-checkout .pay-heylight .pay-inner::before{background:#3159aa}
.gv-purchase-page .gv-checkout .pay-row{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important}
.gv-purchase-page .gv-checkout .pay-logo,.gv-purchase-page .gv-checkout .pay-logo-pp{width:44px!important;height:44px!important;border-radius:8px!important;background:#fff}
.gv-purchase-page .pay-logo::before,.gv-purchase-page .pay-logo-pp::before{display:none}
.gv-purchase-page .gv-checkout .pay-content{min-width:0}
.gv-purchase-page .gv-checkout .pay-title{font-size:13px!important;font-weight:800;line-height:1.25!important;color:#15355e}
.gv-purchase-page .gv-checkout .pay-sub,.gv-purchase-page .gv-checkout .pay-sub1{font-size:11px!important;line-height:1.4!important;color:#61718a}
.gv-purchase-page .gv-checkout .pay-right{grid-column:1/-1;display:flex!important;justify-content:space-between!important;align-items:center!important;min-width:0;gap:6px!important}
.gv-purchase-page .gv-checkout .pay-state{font-size:10px!important}
.gv-purchase-page .gv-checkout .pay-switch{flex:0 0 auto}
.gv-purchase-page .gv-checkout .gv-payments>.pay-card:has(input:checked){grid-column:1/-1;width:100%;border-color:#009688!important;background:#eefaf6!important}
.gv-purchase-page .gv-checkout .pay-card:has(input:checked) .pay-inner{background:#eefaf6!important}
.gv-purchase-page .pay-card:focus-within{outline:2px solid #009688;outline-offset:3px}
.gv-purchase-page .gv-continue{margin:22px 0 0}
.gv-purchase-page .gv-continue .btn{min-height:50px;border:1px solid #009688!important;border-radius:9px;background:#009688!important;box-shadow:none;color:#fff;font-size:15px;font-weight:800}
.gv-purchase-page .gv-continue .btn:hover{border-color:#007f73!important;background:#007f73!important}
.gv-purchase-page .gv-offer-body .gv-traveller-note{margin:18px 0!important;border-color:#dce6f2;border-radius:12px;box-shadow:none}
.gv-purchase-page .gv-offer-body .gv-review-strip.gv-reviews-module{display:grid;grid-template-columns:1fr;gap:12px;margin:18px 0 0!important;padding:18px;border:1px solid #dce6f2;border-radius:12px;box-shadow:none}
.gv-purchase-page .gv-offer-body .gv-review-strip.gv-reviews-module .gv-cta-wrap{grid-column:1;grid-row:3}
@media(min-width:981px) and (max-width:1199px){
 .gv-purchase-page .gv-checkout .gv-payments{grid-template-columns:1fr}
 .gv-purchase-page .gv-booking-details{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:980px){
 .gv-purchase-page .gv-checkout .gv-checkout-shell{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;padding:0 16px 16px}
 .gv-purchase-page .gv-checkout .gv-offer-copy{order:0!important;margin:0 -16px;padding:20px 16px;border-radius:13px 13px 0 0}
 .gv-purchase-page .gv-offer-title{font-size:clamp(24px,6vw,32px)}
 .gv-purchase-page .gv-checkout .gv-offer-visual{order:1!important;margin:-16px -16px 0;border-radius:0!important}
 .gv-purchase-page .gv-checkout .gv-offer-visual img{min-height:0;height:240px!important;border-radius:0!important}
 .gv-purchase-page .gv-checkout .gv-summary-section{order:2!important;margin:0;padding:16px;border-radius:12px}
 .gv-purchase-page .gv-booking-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .gv-purchase-page .gv-booking-detail{border:0;padding:0}
 .gv-purchase-page .gv-total-panel{margin:0 -16px -16px;padding:16px}
 .gv-purchase-page .gv-checkout .gv-checkout-main>.gv-offer-body{order:3!important}
 .gv-purchase-page .gv-checkout .gv-payment-section{order:4!important;padding:16px}
 .gv-purchase-page .gv-purchase-section-title h2{font-size:22px}
}
@media(max-width:600px){
 .gv-purchase-page .gv-checkout .gv-payments{grid-template-columns:1fr}
 .gv-purchase-page .gv-checkout .pay-row{grid-template-columns:52px minmax(0,1fr)!important}
 .gv-purchase-page .gv-checkout .pay-logo,.gv-purchase-page .gv-checkout .pay-logo-pp{width:52px!important;height:52px!important}
 .gv-purchase-page .gv-checkout .pay-title{font-size:14px!important}
 .gv-purchase-page .gv-checkout .pay-sub{font-size:12px!important}
 .gv-purchase-page .gv-purchase-term summary{padding:16px;min-height:58px}
 .gv-purchase-page .gv-purchase-term--more summary{padding:16px 0}
 .gv-purchase-page .gv-checkout #prezzoFinale b{font-size:34px!important}
 .gv-purchase-page .gv-traveller-note{grid-template-columns:1fr}
}

