.pa-page{max-width:1160px;margin:30px auto 70px;padding:0 20px;color:#ece7f8}.pa-breadcrumb{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px;font-size:.75rem;color:#aea0c8}.pa-page a{color:#cdb1ff}.pa-hero{display:grid;grid-template-columns:1fr 1.15fr;gap:38px;align-items:center;margin-bottom:42px}.pa-cover{background:#171329;border-radius:20px;overflow:hidden}.pa-cover img{display:block;width:100%;max-height:530px;object-fit:contain}.pa-kicker{color:#b795ec;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}.pa-page h1{font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:1.15;text-wrap:balance;margin:0 0 18px}.pa-lead{font-size:1rem;color:#c8bed8;line-height:1.7}.pa-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.pa-facts>div:first-child{grid-column:1/-1}.pa-facts dt{font-weight:400;font-size:.72rem;color:#a79bbd}.pa-facts dd{margin:5px 0;font-size:1.12rem;font-weight:700}.pa-page .pa-button{display:flex;align-items:center;justify-content:center;gap:14px;border:0;border-radius:11px;background:linear-gradient(110deg,#8955eb,#b889e9);color:#fff;min-height:48px;padding:13px 20px;font-weight:700;text-decoration:none;font-size:.83rem;cursor:pointer}.pa-caption{font-size:.7rem!important;line-height:1.6;color:#aaa0bc;margin:12px 0 0}.pa-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,1fr);align-items:start;gap:36px}.pa-story section{padding:26px 0;border-top:1px solid #332944}.pa-page h2{font-size:1.25rem;margin:0 0 18px;line-height:1.4}.pa-page h3{font-size:.92rem;line-height:1.4;margin:0 0 7px}.pa-story p{font-size:.85rem;color:#c4b9d6;line-height:1.85}.pa-preserve{white-space:pre-line}.pa-inclusions{display:grid;gap:12px}.pa-inclusion{display:flex;gap:14px;background:#171329;border:1px solid #302640;border-radius:12px;padding:16px}.pa-check{color:#bb92f3}.pa-inclusion p{margin:0}.pa-stays{display:grid;gap:18px}.pa-stay{border:1px solid #332944;border-radius:14px;overflow:hidden}.pa-stay>div{padding:18px}.pa-stay img{display:block;width:100%;max-height:250px;object-fit:contain;background:#fff}.pa-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pa-gallery img{width:100%;border-radius:12px}.pa-booking{background:linear-gradient(150deg,#1c1532,#100e20);border:1px solid #57416e;border-radius:18px;padding:24px;scroll-margin-top:85px}.pa-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pa-wide{grid-column:1/-1}.pa-fields label{display:flex;flex-direction:column;gap:6px;font-size:.72rem;color:#c9bddb;min-width:0}.pa-fields label span{color:#a194b4}.pa-fields input,.pa-fields select,.pa-fields textarea{width:100%;min-width:0;box-sizing:border-box;min-height:44px;border:1px solid #514161;border-radius:8px;background:#100d1e;color:#fff;padding:10px;font-family:system-ui,sans-serif;font-size:16px;color-scheme:dark}.pa-totals{border-block:1px solid #40324f;margin:20px 0;padding:16px 0;display:grid;gap:10px;font-size:.8rem}.pa-totals>div{display:flex;justify-content:space-between;gap:10px}.pa-consent{display:flex;align-items:flex-start;gap:10px;font-family:system-ui,sans-serif;font-size:.8rem;line-height:1.5;margin-bottom:18px}.pa-consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:#a477ed}.pa-booking button{width:100%}.pa-errors:not(:empty),.pa-notice{padding:14px;border:1px solid #a97da0;border-radius:8px;margin-bottom:16px;font-size:.8rem;line-height:1.6}.pa-errors.validation-summary-valid{display:none}.pa-errors ul{padding-left:18px;margin:0}.pa-receipt{max-width:650px;margin:70px auto;padding:32px;border:1px solid #57416e;border-radius:18px}.pa-receipt p{line-height:1.8}.pa-page :focus-visible{outline:2px solid #c7a5fa;outline-offset:3px}.pa-button:disabled{opacity:.6;cursor:wait}@media(max-width:800px){.pa-hero,.pa-layout{grid-template-columns:1fr}.pa-hero{gap:24px;margin-bottom:22px}.pa-page{margin-top:20px;padding:0 14px}.pa-cover img{max-height:430px}.pa-booking{padding:20px}.pa-layout{gap:20px}}@media(max-width:360px){.pa-fields{grid-template-columns:1fr}.pa-page h1{font-size:1.6rem}}

body:has(.pa-page){background:#0b091a;color:#ece7f8}
/* Editorial layout: readable body copy and compact activity profiles. */
.pa-page{max-width:1120px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
.pa-page h1,.pa-page h2,.pa-page h3{font-family:inherit;letter-spacing:-.025em}
.pa-page h1{font-size:clamp(2rem,4vw,3.4rem);font-weight:750;text-transform:capitalize;line-height:1.08}
.pa-page h2{font-size:1.35rem;font-weight:650}.pa-page h3{font-size:1rem}
.pa-hero{grid-template-columns:.85fr 1.15fr;gap:44px;margin-bottom:28px}.pa-cover{border:1px solid #30283e}.pa-cover img{max-height:440px}
.pa-lead{font-size:1.03rem;color:#c2bacf}.pa-kicker{font-size:.7rem;font-weight:650;letter-spacing:.13em}.pa-facts{padding:20px 0;border-block:1px solid #30283e;gap:16px;margin:22px 0}.pa-facts dt{font-size:.78rem}.pa-facts dd{font-size:1.15rem}.pa-caption{font-size:.76rem!important}
.pa-page .pa-button{font-size:.9rem;min-height:46px;box-sizing:border-box;transition:filter .2s}.pa-button:hover{filter:brightness(1.1)}
.pa-section-nav{display:flex;gap:8px;flex-wrap:wrap;border-block:1px solid #30283e;padding:12px 0;margin-bottom:12px}.pa-section-nav a{font-size:.8rem;text-decoration:none;padding:7px 12px;border-radius:7px;color:#c9bedc}.pa-section-nav a:hover{background:#21192f;color:white}
.pa-layout{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:32px}.pa-story section{padding:26px 0;scroll-margin-top:95px}.pa-story section:first-child{border-top:0}.pa-story p{font-size:.93rem;line-height:1.8}.pa-booking{margin-top:20px;padding:23px;background:#171224;border-color:#443456}.pa-fields{gap:12px}.pa-fields label{font-size:.78rem}.pa-totals{font-size:.9rem}.pa-booking h2{margin-bottom:20px}.pa-consent{color:#bfb5cf}
.pa-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.pa-section-heading>span{font-size:.75rem;color:#a99bbd;white-space:nowrap}.pa-inclusions{gap:10px}
.pa-activity{background:#151021;border:1px solid #352a45;border-radius:12px;overflow:hidden}.pa-activity summary{list-style:none;display:flex;align-items:center;gap:14px;padding:14px;cursor:pointer}.pa-activity summary::-webkit-details-marker{display:none}.pa-activity summary:hover{background:#21182f}.pa-activity-logo,.pa-activity-placeholder{width:56px;height:56px;border-radius:9px;background:white;object-fit:contain;padding:5px;box-sizing:border-box;flex-shrink:0}.pa-activity-placeholder{display:grid;place-items:center;background:#2a1f3e;color:#c6a0fc;font-size:24px}.pa-activity-label{flex:1;min-width:0}.pa-activity-label strong{display:block;font-size:.95rem;font-weight:600;text-transform:capitalize;line-height:1.4}.pa-activity-label small{display:block;font-size:.72rem;color:#aa9cbd;margin-top:4px}.pa-expand{font-size:24px;font-weight:300;color:#cba6fa;transition:transform .2s}.pa-activity[open] .pa-expand{transform:rotate(45deg)}.pa-activity[open] summary{border-bottom:1px solid #352a45}.pa-activity-body{padding:16px}.pa-activity-body>p:first-child{margin-top:0}.pa-activity-body address{font-size:.85rem;font-style:normal;color:#ddd0ee;margin-bottom:12px}.pa-activity-photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pa-activity-photos a{display:block;overflow:hidden;border-radius:8px;background:#0b091a}.pa-activity-photos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .2s}.pa-activity-photos a:hover img{transform:scale(1.03)}
.pa-stay{display:flex;align-items:center;background:#151021}.pa-stay img{width:100px;height:100px;object-fit:contain;margin:16px;border-radius:9px}.pa-stay>div{padding:16px 16px 16px 0;flex:1}.pa-stay p:empty{display:none}.pa-story #condizioni p{font-size:.86rem}.pa-receipt{font-family:system-ui,sans-serif}
@media(max-width:800px){.pa-hero,.pa-layout{grid-template-columns:1fr}.pa-hero{gap:24px}.pa-cover{max-width:440px;width:100%;margin:auto}.pa-cover img{max-height:360px}.pa-page{padding:0 18px}.pa-page h1{font-size:2.1rem}.pa-section-nav{gap:3px}.pa-section-nav a{padding:7px 9px;font-size:.76rem}.pa-layout{gap:0}.pa-booking{margin-top:8px}.pa-story section{padding:22px 0}.pa-facts{margin:18px 0}.pa-caption{line-height:1.6}.pa-section-heading h2{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){.pa-page *{transition:none!important;scroll-behavior:auto!important}}
/* Booking opens only from the primary call to action. */
.pa-layout{display:block}.pa-story{max-width:860px;margin-inline:auto}.pa-intro>.pa-open-booking{width:100%}.pa-modal-open{overflow:hidden}
.pa-booking-dialog{position:fixed;inset:0;width: min(560px,calc(100% - 28px));max-width:none;max-height:calc(100dvh - 32px);box-sizing:border-box;margin:auto;padding:28px;color:#ece7f8;font-family:system-ui,-apple-system,sans-serif;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #0009}
.pa-booking-dialog:not([open]){display:none}.pa-booking-dialog::backdrop{background:rgb(5 3 14 / 78%);backdrop-filter:blur(5px)}
.pa-booking-dialog .pa-close-booking{position:absolute;right:12px;top:12px;width:36px;height:36px;border:1px solid #514161;border-radius:50%;background:#251b35;color:#eee;font-size:25px;line-height:1;cursor:pointer}
.pa-booking-dialog h2{padding-right:32px}.pa-booking-dialog .pa-kicker{padding-right:30px}.pa-booking-dialog .pa-close-booking:hover{background:#49325f}
@media(max-width:600px){.pa-booking-dialog{padding:22px 18px;max-height:calc(100dvh - 24px);margin:auto}.pa-story{max-width:100%}}
/* Unified hospitality profiles and an uncluttered image viewer. */
.pa-story{max-width:920px}.pa-story>section{padding-block:32px}.pa-inclusions{gap:12px}.pa-activity{border-color:#30273e;background:linear-gradient(130deg,#191323,#120f1d);box-shadow:0 5px 20px #0001}.pa-activity summary{padding:18px;gap:18px}.pa-activity-logo{width:64px;height:64px;border-radius:12px;padding:7px}.pa-activity-label strong{font-size:1.03rem}.pa-activity-label small{font-size:.77rem}.pa-activity-body{padding:22px}.pa-activity-body>p{max-width:72ch}.pa-activity-photos{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.pa-activity-photos img{aspect-ratio:1.2;cursor:zoom-in}.pa-activity-photos a{border:1px solid #ffffff0d;border-radius:10px}.pa-hotel-preview{width:150px;height:106px;object-fit:cover;border-radius:10px;flex-shrink:0}.pa-profile-identity{display:flex;gap:16px;align-items:center}.pa-profile-identity h3{margin:0 0 4px}.pa-profile-identity address{margin:0;color:#b4a8c4;font-size:.86rem}.pa-treatment-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.pa-treatment-tags span{padding:5px 11px;border-radius:20px;background:#b388e814;border:1px solid #b388e833;color:#d9c3f2;font-size:.76rem}
.pa-photo-dialog{position:fixed;inset:0;padding:42px 12px 12px;border:1px solid #443456;border-radius:16px;background:#100c19;color:#fff;width:min(1000px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);box-sizing:border-box;margin:auto;overflow:auto}.pa-photo-dialog:not([open]){display:none}.pa-photo-dialog::backdrop{background:#05030eef;backdrop-filter:blur(6px)}.pa-photo-full{display:block;width:100%;height:min(70dvh,720px);object-fit:contain}.pa-photo-close{position:absolute;top:5px;right:10px;background:none;border:0;color:#fff;width:34px;height:34px;font-size:28px;cursor:pointer}.pa-photo-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;font-family:system-ui,sans-serif;font-size:.83rem}.pa-photo-controls button{border:1px solid #514161;background:#251b35;color:#fff;border-radius:50%;width:40px;height:40px;cursor:pointer}.pa-photo-caption{text-align:center}.pa-photo-controls button[hidden]{display:none}
@media(max-width:600px){.pa-activity summary{padding:14px;gap:12px}.pa-activity-logo{width:54px;height:54px}.pa-activity-label strong{font-size:.94rem}.pa-activity-body{padding:16px}.pa-activity-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pa-hotel-preview{width:88px;height:88px}.pa-story>section{padding-block:24px}.pa-photo-full{height:65dvh}}
/* Accommodation identity remains visible before expanding the gallery. */
.pa-hotel-card{border:1px solid #3a2e4b;border-radius:18px;overflow:hidden;background:linear-gradient(120deg,#1d162b,#130f20);box-shadow:0 12px 32px #0002}.pa-hotel-overview{display:flex;align-items:stretch;min-height:230px}.pa-hotel-cover{width:40%;max-height:300px;object-fit:cover;display:block}.pa-hotel-info{padding:28px;flex:1;min-width:0}.pa-hotel-brand{display:flex;gap:16px;align-items:center}.pa-hotel-brand>img{width:64px;height:64px;object-fit:contain;background:white;padding:5px;border-radius:13px;box-sizing:border-box}.pa-hotel-brand .pa-kicker{font-size:.64rem;margin:0 0 5px}.pa-hotel-brand h3{font-size:1.55rem;margin:0;line-height:1.2;letter-spacing:-.03em}.pa-hotel-address{font-style:normal;font-size:.86rem;color:#beb2ce;line-height:1.6;margin:20px 0}.pa-hotel-address>span{color:#c7a2f3;font-size:1.1rem;margin-right:4px}.pa-hotel-treatment>span{font-size:.7rem;color:#a698b8}.pa-hotel-treatment .pa-treatment-tags{margin:8px 0 0}.pa-hotel-details{border-top:1px solid #3a2e4b}.pa-hotel-details>summary{display:flex;align-items:center;gap:12px;list-style:none;padding:15px 24px;cursor:pointer;font-size:.85rem;color:#dec9fb}.pa-hotel-details>summary::-webkit-details-marker{display:none}.pa-hotel-details>summary:hover{background:#ffffff05}.pa-hotel-detail-hint{margin-left:auto;color:#a598b7;font-size:.74rem}.pa-hotel-details[open] .pa-expand{transform:rotate(45deg)}.pa-hotel-details .pa-activity-body{border-top:1px solid #30263e}.pa-hotel-details .pa-activity-photos{margin-top:0}
@media(max-width:600px){.pa-hotel-overview{display:block}.pa-hotel-cover{width:100%;height:210px;max-height:none;object-position:center}.pa-hotel-info{padding:20px}.pa-hotel-brand h3{font-size:1.4rem}.pa-hotel-brand>img{width:56px;height:56px}.pa-hotel-address{margin:15px 0}.pa-hotel-details>summary{padding:14px 18px}.pa-hotel-detail-hint{font-size:.67rem}.pa-hotel-card{border-radius:14px}}
/* Consistent desktop canvas and quiet page ending. */
.pa-page{max-width:1280px;padding-inline:32px;box-sizing:border-box;margin-bottom:40px}.pa-story{max-width:none;width:100%}.pa-hero{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:56px}.pa-cover img{max-height:460px}.pa-story>section:first-child>p{max-width:85ch}.pa-story #condizioni p{max-width:95ch}.pa-section-nav{margin-bottom:4px}.pa-story>section{padding-block:28px}.pa-hotel-cover{width:38%;max-height:290px}.pa-hotel-info{padding:30px 36px}
@media(min-width:1050px){.pa-inclusions{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.pa-inclusions>.pa-activity[open]{grid-column:1/-1}.pa-inclusions>.pa-activity>summary{gap:12px;padding:16px}.pa-inclusions .pa-activity-label strong{font-size:.93rem}.pa-inclusions .pa-activity-label small{font-size:.7rem}.pa-inclusions .pa-activity-logo{width:54px;height:54px}.pa-inclusions .pa-activity-body{padding:24px}.pa-story #condizioni{display:grid;grid-template-columns:1fr 2fr;column-gap:40px}.pa-story #condizioni h2{grid-row:1/5}.pa-story #condizioni p{grid-column:2;margin-top:0}}
body:has(.pa-page) .rdv-footer{margin-top:0;background:#0b091a;border-top:1px solid #292431;box-shadow:none;color:#bcb6c7;font-family:system-ui,-apple-system,sans-serif}
body:has(.pa-page) .rdv-foot-container{max-width:1280px;padding:32px 32px 20px;box-sizing:border-box}
body:has(.pa-page) .rdv-foot-card{padding:0;background:none;border:0;border-radius:0;box-shadow:none}
body:has(.pa-page) .rdv-foot-grid{grid-template-columns:1.5fr 1fr 1fr;gap:48px}
body:has(.pa-page) .foot-logo{filter:none;font-size:.95rem;letter-spacing:0;text-transform:none;color:#e1dce8}
body:has(.pa-page) .foot-logo img{width:40px;height:40px}
body:has(.pa-page) .foot-title{font-family:inherit;font-size:.8rem;color:#d0cad8;letter-spacing:.03em;text-shadow:none}
body:has(.pa-page) .foot-tag,body:has(.pa-page) .foot-links,body:has(.pa-page) .foot-contacts{font-size:.82rem;line-height:1.8;color:#a9a3b3}
body:has(.pa-page) .rdv-footer a{color:#c4becd;text-shadow:none}body:has(.pa-page) .rdv-footer a:hover{color:#fff}
body:has(.pa-page) .rdv-foot-bottom{border-top:1px solid #292431;margin-top:24px;padding-top:16px;color:#8f899b;font-size:.74rem;background:none}
@media(max-width:800px){.pa-page{padding-inline:18px}.pa-hero{grid-template-columns:1fr;gap:24px}.pa-hotel-info{padding:20px}.pa-hotel-cover{width:100%}body:has(.pa-page) .rdv-foot-container{padding:28px 18px 18px}body:has(.pa-page) .rdv-foot-grid{grid-template-columns:1fr 1fr;gap:24px}body:has(.pa-page) .foot-brand{grid-column:1/-1}}
@media(max-width:440px){body:has(.pa-page) .rdv-foot-grid{grid-template-columns:1fr}}
body:has(.pa-page) .foot-links a{background:none;border:0;box-shadow:none;padding:3px 0;border-radius:0;font-weight:400;font-family:inherit}body:has(.pa-page) .foot-links{display:grid;gap:3px}body:has(.pa-page) .foot-title,body:has(.pa-page) .foot-logo,body:has(.pa-page) .foot-contacts a{font-family:system-ui,sans-serif}body:has(.pa-page) .foot-contacts a{font-weight:400}
@media(min-width:601px) and (max-width:800px){.pa-hotel-cover{width:38%}}
/* The article cover retains its square format without cropping artwork. */
.pa-cover{aspect-ratio:1;width:100%;display:grid;place-items:center}.pa-cover img{width:100%;height:100%;max-height:none;object-fit:contain;aspect-ratio:1}

/* Compact hotel profiles: every supplied photo remains visible. */
.pa-stays{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px}
.pa-hotel-overview{min-height:0;display:block}.pa-hotel-info{padding:18px 20px}.pa-hotel-brand{gap:12px}.pa-hotel-brand>img{width:48px;height:48px;border-radius:10px}.pa-hotel-brand h3{font-size:1.2rem}.pa-hotel-address{margin:12px 0;font-size:.8rem}.pa-hotel-treatment .pa-treatment-tags{margin-top:6px;gap:5px}.pa-treatment-tags span{padding:3px 9px}.pa-hotel-photos{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0 16px 16px;gap:6px}.pa-hotel-photos img{aspect-ratio:1;object-fit:cover}.pa-hotel-details>summary{padding:11px 18px}.pa-hotel-details .pa-activity-body{padding:16px 18px}.pa-inclusions{gap:10px}.pa-inclusions .pa-activity>summary{padding:12px;gap:12px}.pa-inclusions .pa-activity-logo{width:46px;height:46px}.pa-inclusions .pa-activity-label strong{font-size:.9rem}.pa-inclusions .pa-activity-label small{font-size:.7rem}.pa-photo-dialog{width:min(740px,calc(100% - 24px))}.pa-photo-full{height:min(58dvh,480px);touch-action:pan-y}
@media(max-width:700px){.pa-stays{grid-template-columns:1fr}.pa-hotel-info{padding:16px}.pa-hotel-photos{grid-template-columns:repeat(4,minmax(0,1fr));padding:0 12px 12px}.pa-hotel-brand h3{font-size:1.16rem}.pa-photo-full{height:52dvh}}

#pa-booking-form[hidden],#pa-payment-step[hidden],#pa-retry-payment[hidden]{display:none!important} #pa-stripe-checkout{background:#171123;border-radius:12px;overflow:hidden} #pa-payment-status{line-height:1.6} #pa-payment-title{font-size:1.15rem}
.pa-standard-services{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.pa-standard-services li{padding:16px 18px;border:1px solid #675185;border-radius:12px;background:#ffffff05;color:#eee8fa}.pa-standard-services li span{color:#b99aef;margin-right:8px}

/* Grouped experiences: keyboard-accessible summaries and original logo colours. */
#esperienze .pa-inclusions{display:grid;grid-template-columns:1fr;gap:14px}
.pa-experience-group{border:1px solid #413250;border-radius:16px;background:linear-gradient(120deg,#1c1429,#120e20);overflow:hidden}
.pa-group-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px;cursor:pointer;list-style:none}
.pa-group-summary::-webkit-details-marker{display:none}
.pa-group-summary:hover{background:#bc8efa09}
.pa-group-summary:focus-visible,.pa-activity>summary:focus-visible{outline:2px solid #c4a0ff;outline-offset:-4px;border-radius:12px}
.pa-group-title{display:grid;gap:7px}.pa-group-title>strong{font-size:1.06rem;color:#f2ebff}.pa-group-title>span{font-size:.88rem;color:#dfcaef}.pa-group-title small{font-size:.72rem;color:#a99ab9;margin-left:5px}
.pa-group-toggle{display:flex;gap:10px;align-items:center;color:#c9a6f4;font-size:.76rem}.pa-group-toggle>span:last-child{font-size:24px;transition:transform .2s}
.pa-group-close-label{display:none}.pa-experience-group[open]>.pa-group-summary .pa-group-open-label{display:none}.pa-experience-group[open]>.pa-group-summary .pa-group-close-label{display:inline}.pa-experience-group[open]>.pa-group-summary .pa-group-toggle>span:last-child{transform:rotate(180deg)}
.pa-group-activities{display:grid;gap:10px;padding:0 14px 14px}.pa-group-activities .pa-activity{box-shadow:none;background:#0d0a1780;border-color:#34283f}
.pa-inclusions .pa-activity-logo{width:80px;height:72px;padding:0;border-radius:0;background:transparent;object-fit:contain;filter:none}
.pa-group-activities .pa-activity>summary{padding:16px;gap:18px}.pa-group-activities .pa-activity-label strong{font-size:.96rem}.pa-group-activities .pa-activity-label small{line-height:1.5}
@media(min-width:1050px){.pa-group-activities{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-group-activities>.pa-activity[open]{grid-column:1/-1}}
@media(max-width:600px){.pa-group-summary{padding:18px 16px}.pa-group-title small{display:block;margin:4px 0 0}.pa-group-activities{padding:0 8px 8px}.pa-group-activities .pa-activity>summary{padding:12px;gap:12px}.pa-inclusions .pa-activity-logo{width:68px;height:64px}.pa-group-toggle{gap:6px}}
/* All accommodation types share the same expandable presentation. */
.pa-lodging-group .pa-group-title{flex:1;min-width:0}.pa-lodging-group .pa-group-title>span{font-size:.78rem;line-height:1.5}.pa-lodging-kicker{color:#b8a2cf;font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}
.pa-lodging-logo{width:80px;height:72px;object-fit:contain;background:transparent;flex-shrink:0}
.pa-lodging-body{padding:0 22px 22px;border-top:1px solid #352a45}.pa-lodging-body .pa-activity-photos{margin:16px 0}.pa-lodging-body .pa-preserve{font-size:.9rem;line-height:1.75}.pa-lodging-group .pa-group-toggle{flex-shrink:0}
@media(max-width:600px){.pa-lodging-logo{width:62px;height:60px}.pa-lodging-body{padding:0 16px 16px}.pa-lodging-group .pa-group-summary{gap:12px}.pa-lodging-group .pa-group-title>strong{font-size:1rem}}
/* Standard logo size for activities and accommodation. */
.pa-inclusions .pa-activity-logo,.pa-lodging-logo{width:80px;height:80px;flex:0 0 80px;object-fit:contain;object-position:center;padding:0;background:transparent;border-radius:0}

/* Compact booking form and optional-service selection. */
#pa-booking-form .pa-fields{gap:12px 14px}#pa-booking-form .pa-fields label{margin:0;gap:5px;font-size:12px}#pa-booking-form .pa-fields input,#pa-booking-form .pa-fields select{min-height:44px;padding:9px 11px}#pa-booking-form .pa-form-heading{font-size:13px;color:#eee6fc;margin:20px 0 10px;font-weight:700}#pa-booking-form .pa-fields .pa-form-heading{margin:8px 0 0;padding-top:16px;border-top:1px solid #3e304d}#pa-booking-form #pa-date-rule{margin:0 0 12px}#pa-booking-form .pa-notes textarea{min-height:64px;resize:vertical}#pa-booking-form .pa-extra-options{min-width:0;margin:20px 0 0;padding:16px;border:1px solid #4a365e;border-radius:14px;background:#1c152b}#pa-booking-form .pa-extra-options legend{float:none;width:auto;padding:0 7px;margin:0;font-size:14px;font-weight:700;color:#eee5fb}#pa-booking-form .pa-extra-intro{font-size:12px;line-height:1.55;color:#b9adc9;margin:0 0 13px}#pa-booking-form .pa-extra-list{display:grid;gap:9px}#pa-booking-form .pa-extra-card{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:11px;align-items:center;margin:0;padding:14px 12px;border:1px solid #493757;border-radius:10px;background:#130f20;cursor:pointer;transition:border-color .15s,background .15s}#pa-booking-form .pa-extra-card:has(input:checked){border-color:#bc91f7;background:#2d1e42}#pa-booking-form .pa-extra-card:focus-within{outline:2px solid #bc91f7;outline-offset:2px}#pa-booking-form .pa-extra-card input{width:19px;height:19px;margin:0;accent-color:#a879ef}#pa-booking-form .pa-extra-copy strong{display:block;font-size:13px;line-height:1.4;color:#f0e9fc}#pa-booking-form .pa-extra-card small{display:block;font-size:11px;font-weight:400;color:#bcb0ce;line-height:1.5;margin-top:3px}#pa-booking-form .pa-extra-price{text-align:right;font-size:14px;font-weight:750;color:#dec5ff;white-space:nowrap}#pa-booking-form .pa-included-transfer{font-size:12px;padding:12px;border-radius:9px;background:#182b29;color:#bce8d8;margin:16px 0}#pa-booking-form .pa-totals{padding:15px;margin:18px 0;border:1px solid #493757;border-radius:12px;background:#120f1d}#pa-booking-form>.pa-consent{font-size:11px;margin-bottom:14px}#pa-booking-form>.pa-button{width:100%}@media(max-width:390px){#pa-booking-form .pa-extra-options{padding:12px}#pa-booking-form .pa-extra-card{grid-template-columns:19px minmax(0,1fr);padding:12px}#pa-booking-form .pa-extra-price{grid-column:2;text-align:left}#pa-booking-form .pa-extra-price small{display:inline;margin-left:5px}}
/* Dense booking layout without reducing mobile input readability. */
.pa-booking-dialog{width:min(640px,calc(100% - 24px));padding:20px!important;box-sizing:border-box}
.pa-booking-dialog .pa-kicker{margin-bottom:7px}.pa-booking-dialog #booking-title{font-size:20px;margin-bottom:12px}
#pa-booking-form .pa-fields{gap:9px 12px}
#pa-booking-form .pa-fields label{gap:4px;line-height:1.35}
#pa-booking-form .pa-fields input,#pa-booking-form .pa-fields select{height:42px;min-height:42px;padding:8px 10px}
#pa-booking-form .pa-fields label:has([name="pax_count"]),#pa-booking-form .pa-fields label:has([name="accommodation_id"]){grid-column:auto}
#pa-booking-form .pa-form-heading{margin:12px 0 7px;font-size:12px}
#pa-booking-form .pa-fields .pa-form-heading{margin-top:3px;padding-top:10px}
#pa-booking-form #pa-date-rule{margin-bottom:8px;font-size:11px!important;line-height:1.4}
#pa-booking-form .pa-notes textarea{min-height:48px;height:48px;padding:8px 10px}
#pa-booking-form .pa-extra-options{margin-top:14px;padding:10px 12px;border-radius:11px}
#pa-booking-form .pa-extra-options legend{font-size:13px}
#pa-booking-form .pa-extra-intro{font-size:11px;line-height:1.4;margin-bottom:9px}
#pa-booking-form .pa-extra-list{gap:7px}
#pa-booking-form .pa-extra-card{padding:10px;gap:9px;min-height:48px;box-sizing:border-box}
#pa-booking-form .pa-extra-card small{margin-top:1px;line-height:1.35}
#pa-booking-form .pa-included-transfer{margin:10px 0;padding:9px 11px}
#pa-booking-form .pa-totals{padding:11px 12px;margin:12px 0;gap:7px;font-size:13px}
#pa-booking-form>.pa-consent{margin-bottom:10px;line-height:1.4}
#pa-booking-form>.pa-caption{margin-top:7px;line-height:1.4}
#pa-booking-form>.pa-button{min-height:44px;padding:10px 14px}
@media(max-width:480px){.pa-booking-dialog{padding:16px!important;width:calc(100% - 16px)}#pa-booking-form .pa-fields{gap:9px 10px}#pa-booking-form .pa-extra-card{padding:9px}}
@media(max-width:360px){#pa-booking-form .pa-fields{grid-template-columns:1fr 1fr}#pa-booking-form .pa-fields label:has([name="customer_email"]),#pa-booking-form .pa-fields label:has([name="customer_phone"]){grid-column:1/-1}}

/* Booking and payment: one clear group summary, no duplicated price panels. */
#prenota.pa-booking-dialog{width:min(960px,calc(100% - 32px));padding:24px!important;border-radius:22px;background:#171122;border-color:#76588f;max-height:calc(100dvh - 28px)}
#prenota [hidden]{display:none!important}
#prenota .pa-booking-header{position:sticky;top:-24px;z-index:5;margin:-24px -24px 20px;padding:22px 24px 16px;background:#1b1428;border-bottom:1px solid #78569145;border-radius:22px 22px 0 0}
#prenota #booking-title{font:750 23px/1.3 system-ui,sans-serif;margin:0 0 5px;padding-right:36px;letter-spacing:-.025em}
#prenota .pa-booking-package{font:12px/1.5 system-ui,sans-serif;color:#bfabcF;margin:0;padding-right:30px}
#prenota .pa-kicker{font:700 10px/1.4 system-ui,sans-serif;margin:0 0 7px;color:#ba90ee;letter-spacing:.1em}
#prenota .pa-close-booking{width:38px;height:38px;top:17px;right:18px}
#prenota .pa-booking-progress{display:flex;gap:22px;list-style:none;padding:0;margin:14px 0 0;font:600 11px/1.4 system-ui,sans-serif;color:#9f8cb1}
#prenota .pa-booking-progress li{display:flex;align-items:center;gap:7px}
#prenota .pa-booking-progress span{display:grid;place-items:center;width:24px;height:24px;border:1px solid #755a8e;border-radius:50%;font-size:11px}
#prenota .pa-booking-progress [aria-current]{color:#f1deff}#prenota .pa-booking-progress [aria-current] span{background:#a276dd;color:#fff;border-color:#ba90ef}#prenota .pa-booking-progress .is-complete span{background:#284039;color:#b4e8d0;border-color:#447363}
#pa-booking-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.9fr);gap:24px;align-items:start}
#pa-booking-form .pa-booking-main{min-width:0}
#pa-booking-form .pa-form-heading{font:700 13px/1.4 system-ui,sans-serif;margin:0 0 7px}
#pa-booking-form .pa-fields{gap:12px}#pa-booking-form .pa-fields label{font:500 12px/1.4 system-ui,sans-serif;gap:5px;color:#d1c0e0}
#pa-booking-form .pa-fields input,#pa-booking-form .pa-fields select{height:44px;min-height:44px;font-size:16px;padding:9px 10px;background:#100c19;border-color:#614774;border-radius:9px}
#pa-booking-form .pa-fields .pa-form-heading{margin-top:4px;padding-top:16px;font:700 13px/1.4 system-ui,sans-serif}
#pa-booking-form .pa-fields label:has([name=treatment_id]){grid-column:auto}
#pa-booking-form .pa-extra-options{margin-top:20px;padding:12px;border:1px solid #664779;border-radius:13px;background:#21172f}
#pa-booking-form .pa-extra-options legend{font:700 13px/1.4 system-ui,sans-serif;padding:0 6px}
#pa-booking-form .pa-extra-intro{font:11px/1.5 system-ui,sans-serif;margin:0 0 10px;color:#bfaaca}
#pa-booking-form .pa-extra-card{grid-template-columns:18px minmax(0,1fr) auto;gap:10px;min-height:64px;padding:11px;border-color:#634677;background:#171022}
#pa-booking-form .pa-extra-card input{width:18px;height:18px;accent-color:#bb8de9}
#pa-booking-form .pa-extra-copy strong{font:650 12px/1.4 system-ui,sans-serif}
#pa-booking-form .pa-extra-card small{font:400 10px/1.4 system-ui,sans-serif;color:#b6a1c6}
#pa-booking-form .pa-extra-price{font:700 13px/1.4 system-ui,sans-serif;grid-column:auto;text-align:right;color:#ebd3ff}
#pa-booking-form .pa-extra-price small{display:block;margin:2px 0 0}
#pa-booking-form .pa-extra-card:has(:checked){background:#322044;border-color:#bd8bec;box-shadow:0 0 0 1px #bd8bec24}
#pa-booking-form .pa-booking-summary{min-width:0;position:sticky;top:145px;padding:20px;border:1px solid #80579d;border-radius:16px;background:linear-gradient(145deg,#2c1f3b,#20172d)}
#pa-booking-form #pa-summary-title{font:700 16px/1.4 system-ui,sans-serif;color:#f0e3fb;margin:0 0 9px}
#prenota .pa-summary-trip{font:12px/1.6 system-ui,sans-serif;color:#c5add9;margin:0 0 14px;overflow-wrap:anywhere}
#prenota .pa-summary-trip:empty{display:none}
#prenota .pa-price-breakdown{display:grid;gap:9px;padding-bottom:13px;border-bottom:1px solid #8e68aa45;margin:0 0 10px}
#prenota .pa-price-breakdown>div,#prenota .pa-payment-amounts>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;font:12px/1.5 system-ui,sans-serif;color:#c4b0d5}
#prenota .pa-price-breakdown strong{font-weight:600;color:#ebdcf5;white-space:nowrap}
#prenota .pa-person-total{padding-top:8px;border-top:1px dashed #8c6aa14a}
#prenota .pa-pricing-note{font:11px/1.55 system-ui,sans-serif;color:#b9a2ca;margin:0 0 10px}
#pa-booking-form .pa-totals{margin:0 0 15px;padding:0;border:0;border-radius:0;background:none;gap:12px;color:#d8c5e6;font:12px/1.5 system-ui,sans-serif}
#pa-booking-form .pa-totals strong{white-space:nowrap;font-size:16px;color:#f5eaff}
#pa-booking-form .pa-totals .pa-due-now{padding:13px 12px;align-items:center;border:1px solid #cfa9f6;border-radius:11px;background:#ecdafa;color:#53366c;font-weight:650}
#pa-booking-form .pa-totals .pa-due-now strong{color:#482565;font:800 25px/1.2 system-ui,sans-serif;letter-spacing:-.035em}
#pa-booking-form #pa-balance-row{font-size:11px}#pa-booking-form #pa-balance{font-size:13px;color:#d3bbE5}
#pa-booking-form .pa-booking-summary .pa-consent{font:11px/1.55 system-ui,sans-serif;margin:0 0 14px;gap:8px;color:#bda9cb}
#pa-booking-form .pa-booking-summary .pa-consent input{width:17px;height:17px;margin-top:2px}
#pa-booking-form .pa-booking-summary .pa-button{width:100%;min-height:48px;font:700 13px/1.4 system-ui,sans-serif;padding:12px;white-space:normal}
#pa-booking-form .pa-booking-summary .pa-caption{font:10px/1.5 system-ui,sans-serif!important;text-align:center;margin:9px 0 0;color:#baa2ca}
#pa-payment-step{max-width:760px;margin:0 auto}
#prenota #pa-payment-title{font:700 18px/1.4 system-ui,sans-serif;margin:0 0 14px}
#prenota .pa-payment-report{padding:20px;border:1px solid #c8a1ea;border-radius:15px;background:linear-gradient(125deg,#f3eafa,#e7d9f3);color:#392544;margin-bottom:18px}
#prenota .pa-payment-reference{font:650 11px/1.5 system-ui,sans-serif;color:#795b8c;margin:0 0 7px;overflow-wrap:anywhere}
#prenota .pa-payment-report h4{font:750 18px/1.4 system-ui,sans-serif;color:#392544;margin:0 0 8px}
#prenota .pa-payment-report .pa-summary-trip{color:#80638f;font-size:11px}
#prenota .pa-payment-amounts{display:grid;gap:9px;padding-top:12px;border-top:1px solid #cbb6dc}
#prenota .pa-payment-amounts>div{color:#755584}
#prenota .pa-payment-amounts strong{white-space:nowrap;color:#432750;font-size:14px}
#prenota .pa-payment-amounts .pa-due-now{padding:11px 0;align-items:center;color:#513365;font-weight:700}
#prenota .pa-payment-amounts .pa-due-now strong{font-size:28px;font-weight:800;letter-spacing:-.025em}
#prenota #pa-payment-status{font:13px/1.6 system-ui,sans-serif;color:#d1b7e3;overflow-wrap:anywhere;margin:12px 0}#prenota #pa-payment-status:empty{display:none}
#prenota #pa-stripe-checkout:empty{display:none}#prenota #pa-stripe-checkout{border-radius:13px;background:#fff}
body.pa-modal-open .rdv-whatsapp-fab{visibility:hidden;pointer-events:none}
@media(max-width:740px){#prenota.pa-booking-dialog{width:calc(100% - 16px);padding:18px!important;border-radius:17px;max-height:calc(100dvh - 16px)}#prenota .pa-booking-header{top:-18px;margin:-18px -18px 18px;padding:18px 18px 14px;border-radius:17px 17px 0 0}#prenota #booking-title{font-size:21px}#prenota .pa-close-booking{top:13px;right:13px}#prenota .pa-booking-progress{gap:18px;font-size:10px;margin-top:11px}#pa-booking-form{grid-template-columns:1fr;gap:18px}#pa-booking-form .pa-booking-summary{position:static;padding:17px}#pa-booking-form .pa-fields{gap:11px 10px}#pa-booking-form .pa-extra-options{margin-top:18px}#pa-booking-form .pa-extra-card{padding:10px;gap:9px}#prenota .pa-payment-report{padding:16px}#prenota .pa-payment-report h4{font-size:17px}}
@media(max-width:370px){#prenota.pa-booking-dialog{padding:13px!important}#prenota .pa-booking-header{top:-13px;margin:-13px -13px 15px;padding:17px 13px 12px}#prenota .pa-booking-progress{gap:10px;font-size:9px}#pa-booking-form .pa-extra-card{grid-template-columns:18px minmax(0,1fr)}#pa-booking-form .pa-extra-price{grid-column:2;text-align:left}#pa-booking-form .pa-extra-price small{display:inline;margin-left:5px}#pa-booking-form .pa-booking-summary{padding:14px}}

.pa-itinerary{margin:0 0 18px;padding:16px;border:1px solid #b68bd344;border-radius:14px;background:#b68bd309}.pa-itinerary summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;font:700 15px/1.5 system-ui,sans-serif;list-style:none}.pa-itinerary summary span{font:12px/1.5 system-ui,sans-serif;color:#ba9cda}.pa-itinerary ol{list-style:none;padding:0 0 0 12px;margin:18px 0;border-left:2px solid #ac79e455}.pa-itinerary li{position:relative;padding:0 0 18px 14px;font:13px/1.6 system-ui,sans-serif}.pa-itinerary li:before{content:'';position:absolute;left:-17px;top:6px;width:8px;height:8px;border-radius:50%;background:#ba8cf3}.pa-itinerary li:last-child{padding-bottom:0}.pa-itinerary-date{font-size:12px;color:#c4a7e4;margin-bottom:5px}.pa-itinerary p{margin:6px 0}.pa-itinerary small{color:#b8acc6}.pa-itinerary summary:focus-visible{outline:2px solid #ba8cf3;outline-offset:4px}

.pa-itinerary .pa-itinerary-day{margin:14px 0;padding:0;border:0;background:none}.pa-itinerary .pa-itinerary-day h3{font:700 13px/1.5 system-ui,sans-serif;text-transform:capitalize;color:#c9ace8;margin:0 0 8px}.pa-itinerary .pa-itinerary-day ol{margin:0;padding-left:8px}.pa-itinerary .pa-itinerary-day li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:8px 0 8px 12px}.pa-itinerary .pa-itinerary-day li:before{left:-13px;top:14px;width:6px;height:6px}.pa-itinerary-time{font:600 11px/1.8 system-ui,sans-serif;color:#baa4ce}.pa-itinerary .pa-itinerary-day strong{font:650 13px/1.5 system-ui,sans-serif}.pa-itinerary .pa-itinerary-day p{font:12px/1.5 system-ui,sans-serif;margin:3px 0}.pa-itinerary .pa-itinerary-location summary{display:block;font:11px/1.5 system-ui,sans-serif;color:#baa4ce;margin-top:4px}.pa-extra-info .pa-extra-price{color:#c6a1ee;font-weight:650}.pa-extra-info{margin-bottom:8px}

@media(min-width:900px){.pa-story .pa-itinerary-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.pa-story .pa-itinerary .pa-itinerary-day{min-width:0}}

/* Shared service cards for every public package. */
.pa-service-section{padding-block:22px!important}.pa-shuttle-card{border:1px solid #755895;border-radius:18px;background:radial-gradient(ellipse at top left,#9f67e51a,transparent 65%),#141021;overflow:hidden}.pa-shuttle-card>summary{display:flex;align-items:center;gap:16px;padding:20px;cursor:pointer;list-style:none}.pa-shuttle-card>summary::-webkit-details-marker{display:none}.pa-service-sticker{display:grid!important;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px!important;color:#dbb5ff!important;background:linear-gradient(140deg,#8053be50,#59317b28);border:1px solid #b688e44d;font-size:19px!important;transform:rotate(-5deg)}.pa-service-sticker i{transform:rotate(5deg)}.pa-shuttle-copy{display:grid;gap:5px;flex:1;min-width:0}.pa-shuttle-copy strong{font:700 17px/1.4 system-ui,sans-serif;color:#f0e7fa}.pa-shuttle-copy small{font:12px/1.5 system-ui,sans-serif;color:#bcaecc}.pa-service-more{font:11px/1.5 system-ui,sans-serif;color:#c39bec}.pa-service-price{display:grid;gap:4px;text-align:right;flex-shrink:0}.pa-service-price strong{font:750 20px/1.35 system-ui,sans-serif;color:#e1bfff}.pa-service-price small{font:11px/1.4 system-ui,sans-serif;color:#bdaccf}.pa-service-tag{display:inline-block;font:600 10px/1.5 system-ui,sans-serif;color:#c6afd9;background:#ae7fe313;border:1px solid #ae7fe32b;padding:3px 8px;border-radius:20px}.pa-service-chevron{color:#c39bec;font-size:20px}.pa-shuttle-card[open] .pa-service-chevron{transform:rotate(45deg)}.pa-shuttle-details{padding:0 20px 16px;border-top:1px solid #ae7fe329}.pa-shuttle-details ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.pa-shuttle-details li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;background:#ffffff04;border-radius:9px;font:12px/1.5 system-ui,sans-serif}.pa-standard-services.pa-service-perks{gap:12px}.pa-standard-services.pa-service-perks li{display:flex;align-items:center;gap:13px;padding:16px;background:linear-gradient(120deg,#aa7ad90d,transparent);border-color:#75589566;border-radius:15px}.pa-service-perks strong{font:600 14px/1.5 system-ui,sans-serif;flex:1}.pa-service-perks .pa-perk-check{font-size:13px;color:#b899d9}.pa-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.pa-extra-grid .pa-extra-info{margin:0;background:#141021;border-radius:15px}.pa-extra-grid .pa-extra-info>summary{padding:16px;min-height:100px}.pa-extra-grid .pa-extra-price{display:inline-block;margin-top:5px;color:#dbb5ff}.pa-shuttle-card summary:focus-visible{outline:2px solid #c69bed;outline-offset:-4px;border-radius:18px}@media(max-width:640px){.pa-extra-grid{grid-template-columns:1fr}.pa-shuttle-card>summary{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:10px;padding:15px}.pa-service-sticker{width:36px;height:36px;flex-basis:36px;border-radius:11px!important;font-size:16px!important}.pa-service-price{grid-column:2;grid-row:2;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;text-align:left}.pa-service-price strong{font-size:18px}.pa-service-chevron{grid-column:3;grid-row:1}.pa-shuttle-copy strong{font-size:15px}.pa-shuttle-details{padding:0 15px 12px}.pa-shuttle-details ul{grid-template-columns:1fr}.pa-service-section .pa-section-heading{gap:8px;flex-wrap:wrap}.pa-service-section .pa-section-heading>span{font-size:11px}}

/* Package-wide spacing, hierarchy and responsive rhythm. */
.pa-page{max-width:1180px;margin:24px auto 56px;padding-inline:24px}.pa-breadcrumb{margin-bottom:18px;font-size:11px;gap:8px}.pa-hero{gap:32px;padding:22px;border:1px solid #b48bc52b;border-radius:24px;background:radial-gradient(ellipse at top right,#9d61db13,transparent 65%),#100d1c;align-items:center}.pa-cover{border-radius:17px}.pa-cover img{max-height:380px}.pa-page h1{font-size:clamp(28px,3.3vw,43px);margin-bottom:12px;line-height:1.12}.pa-intro .pa-kicker{font-size:10px;margin-bottom:9px}.pa-intro .pa-lead{font-size:14px;line-height:1.65;margin:0}.pa-facts{margin:16px 0;padding:14px 0;gap:12px}.pa-facts dt{font-size:11px}.pa-facts dd{font-size:17px;margin:3px 0}.pa-facts>div:first-child dd{font-size:13px;line-height:1.5}.pa-intro>.pa-caption{font-size:11px!important;margin-top:9px}.pa-section-nav{gap:6px;padding:8px;margin:18px 0 8px;border:1px solid #b48bc526;border-radius:12px;background:#17112270}.pa-section-nav a{font-size:12px;padding:8px 12px;min-height:36px;display:flex;align-items:center}.pa-story>section{padding:22px 0;border-color:#b48bc525;scroll-margin-top:95px}.pa-page h2{font-size:20px;line-height:1.35;margin-bottom:12px}.pa-section-heading{margin-bottom:14px}.pa-section-heading h2{margin-bottom:0}.pa-story>section>p{font-size:13px;line-height:1.75;margin:8px 0}.pa-group-summary{padding:16px!important}.pa-group-title>strong{font-size:15px}.pa-group-title>span{font-size:12px}.pa-group-activities{gap:10px;padding:0 12px 12px}.pa-activity>summary{min-height:88px;padding:14px!important;gap:12px}.pa-activity-label strong{font-size:13px}.pa-activity-label small{font-size:11px;line-height:1.5}.pa-activity-logo{width:64px;height:48px}.pa-activity-body{padding:0 16px 16px}.pa-activity-body p,.pa-activity-body address{font-size:13px;line-height:1.7}.pa-activity-photos{gap:8px}.pa-activity-photos img{border-radius:10px;max-height:240px;object-fit:cover}.pa-stays{gap:12px}.pa-stay{border-radius:16px;border-color:#75589566}.pa-gallery{gap:8px}.pa-story #condizioni{padding:20px;border:1px solid #b48bc52b;border-radius:16px;background:#151020;margin-top:20px}.pa-story #condizioni p{font-size:12px;line-height:1.7}.pa-itinerary{padding:16px;margin-bottom:14px}.pa-standard-services.pa-service-perks{margin:0}.pa-extra-grid .pa-activity-label{min-width:0}.pa-extra-grid .pa-activity-label strong{overflow-wrap:anywhere}@media(max-width:800px){.pa-page{padding-inline:14px;margin-top:18px}.pa-hero{grid-template-columns:1fr;gap:18px;padding:16px;border-radius:20px}.pa-cover img{max-height:330px}.pa-page h1{font-size:29px}.pa-facts{grid-template-columns:1fr 1fr}.pa-section-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.pa-section-nav a{white-space:nowrap;flex-shrink:0}.pa-page h2{font-size:18px}.pa-story>section{padding:18px 0}.pa-activity>summary{min-height:78px}.pa-activity-logo{width:48px;height:42px}.pa-story #condizioni{padding:16px}.pa-standard-services.pa-service-perks{grid-template-columns:1fr}.pa-activity-photos img{max-height:180px}}@media(prefers-reduced-motion:reduce){.pa-page *{scroll-behavior:auto!important;transition:none!important}}

/* Light lavender package surface; booking dialog keeps its dedicated palette. */
body:has(.pa-page){background:radial-gradient(ellipse at 90% 0,#ded0f5,transparent 48%),#f5f1fa;color:#352644}
.pa-page{color:#352644}.pa-page h1,.pa-page h2,.pa-page h3{color:#352644}.pa-breadcrumb,.pa-caption{color:#776585}.pa-page a{color:#7542ac}.pa-hero{background:linear-gradient(125deg,#ffffff,#eee5fa);border-color:#dacee9;box-shadow:0 12px 36px #5237760c}.pa-cover{background:#e8ddf4;border-color:#d8c9e7}.pa-kicker,.pa-intro .pa-kicker{color:#8051af}.pa-intro .pa-lead{color:#6d5a7d}.pa-facts{border-color:#dacee9}.pa-facts dt{color:#7e698d}.pa-facts dd{color:#402851}.pa-intro>.pa-caption{color:#7e698d}.pa-section-nav{background:#fff9;border-color:#ddd1ea}.pa-section-nav a{color:#6b4a85}.pa-section-nav a:hover{background:#e9ddf7;color:#50346c}.pa-story>section{border-color:#dbd0e6}.pa-story p,.pa-story address{color:#6b577a}.pa-section-heading>span{color:#806a8f}.pa-experience-group{background:linear-gradient(130deg,#fff,#f2eaf9);border-color:#d9cae7}.pa-group-title strong,.pa-group-title>span{color:#463153}.pa-group-title small,.pa-group-toggle{color:#86659d}.pa-activity,.pa-stay,.pa-extra-grid .pa-extra-info{background:#fff;border-color:#ded1e8;box-shadow:0 3px 12px #50306405}.pa-activity-label strong{color:#412e51}.pa-activity-label small,.pa-expand{color:#836496}.pa-activity-body{border-color:#e3d7ee}.pa-activity-body p,.pa-activity-body address{color:#6d597d}.pa-activity-logo{background:#e1d0f1;border-radius:9px;padding:5px;box-sizing:border-box}.pa-group-activities{background:transparent}.pa-itinerary{background:#fff;border-color:#d9cae8}.pa-itinerary>summary{color:#422d56}.pa-itinerary summary span,.pa-itinerary-time,.pa-itinerary .pa-itinerary-location summary{color:#85629e}.pa-itinerary .pa-itinerary-day h3{color:#794c9a}.pa-itinerary .pa-itinerary-day strong{color:#402d50}.pa-itinerary .pa-itinerary-day p{color:#705b7f}.pa-itinerary ol{border-color:#d8bfea}.pa-shuttle-card{background:linear-gradient(125deg,#eee2fa,#fcfaff);border-color:#d4bde6;box-shadow:0 6px 22px #754b9609}.pa-shuttle-copy strong{color:#472b5e}.pa-shuttle-copy small,.pa-service-more{color:#7d5c92}.pa-service-price strong{color:#7945ac}.pa-service-price small{color:#81688f}.pa-service-tag{background:#eadcf7;border-color:#d8bee9;color:#785090}.pa-service-chevron{color:#9465b5}.pa-shuttle-details{border-color:#decaee}.pa-shuttle-details li{background:#ffffffa8;color:#634774}.pa-service-sticker{background:linear-gradient(135deg,#e6d3fa,#f2e8fc);border-color:#d4b8ec;color:#8d59b8!important}.pa-standard-services.pa-service-perks li{background:linear-gradient(120deg,#fff,#f1e9f9);border-color:#dacbe7}.pa-service-perks strong{color:#57366e}.pa-service-perks .pa-perk-check{color:#9265ae}.pa-extra-grid .pa-extra-price{color:#8552ac}.pa-story #condizioni{background:#ece3f6;border-color:#d7c8e5}.pa-stay>summary{background:#fcfaff;color:#442c57}.pa-stay-summary,.pa-stay-title{color:#442c57}.pa-page .pa-button{color:#fff}.pa-story .pa-caption{color:#826b90}

/* Activity accordions: consistent light surfaces in every interaction state. */
.pa-page .pa-group-activities .pa-activity{background:#fff;border:1px solid #ddcee9;border-radius:14px;box-shadow:0 3px 12px #6a408007;color:#402d50}.pa-page .pa-group-activities .pa-activity>summary{background:#fff;color:#402d50;min-height:82px;padding:13px 14px!important;gap:13px;transition:background .15s,border-color .15s}.pa-page .pa-group-activities .pa-activity>summary:hover,.pa-page .pa-group-activities .pa-activity[open]>summary{background:#f3ebfa}.pa-page .pa-group-activities .pa-activity-label strong{color:#402d50;font:650 14px/1.45 system-ui,sans-serif}.pa-page .pa-group-activities .pa-activity-label small{color:#79588e;font:12px/1.5 system-ui,sans-serif;margin-top:4px}.pa-page .pa-group-activities .pa-activity-logo{width:68px;height:52px;object-fit:contain;padding:7px;border-radius:10px;background:#ede2f7;flex-shrink:0}.pa-page .pa-group-activities .pa-expand{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#eee2f8;color:#8856ad;font-size:18px}.pa-page .pa-group-activities .pa-activity-body{background:#fff;border-color:#e5d8ed;padding:15px}.pa-page .pa-group-activities .pa-activity>summary:focus-visible{outline:2px solid #9964c2;outline-offset:-3px}.pa-page .pa-group-activities{align-items:start}@media(max-width:640px){.pa-page .pa-group-activities{padding:0 10px 10px;gap:8px}.pa-page .pa-group-activities .pa-activity>summary{min-height:78px;gap:10px;padding:12px!important}.pa-page .pa-group-activities .pa-activity-logo{width:62px;height:48px}.pa-page .pa-group-activities .pa-activity-label{min-width:0}.pa-page .pa-group-activities .pa-activity-label strong{font-size:13px}.pa-page .pa-group-activities .pa-activity-label small{font-size:11px}}

.pa-hotel-assignment{padding:12px;border:1px solid #77618d;border-radius:10px;font:13px/1.5 system-ui,sans-serif}.pa-hotel-assignment summary{cursor:pointer;font-weight:700}.pa-hotel-assignment p{font-size:12px;margin:8px 0}.pa-hotel-assignment>div{padding-top:8px;border-top:1px solid #77618d55}

.pa-booking-dialog .pa-errors:not(:empty),#pa-booking-form .pa-errors:not(:empty){display:block!important;padding:12px;margin:10px 0;border:1px solid #e4a0ad;border-radius:9px;background:#fff0f3;color:#922d45;font:13px/1.5 system-ui,sans-serif}#pa-booking-form .pa-errors:empty{display:none}.pa-page #booking-title{color:#f1e7ff}

/* Matching compact disclosures inside the booking form. */
#pa-booking-form .pa-booking-program{margin:0;min-width:0}
#pa-booking-form .pa-booking-program .pa-itinerary,#pa-booking-form .pa-hotel-assignment{margin:0;padding:0;border:1px solid #675277;border-radius:11px;background:#ffffff05;box-shadow:none;color:#ded2ec;overflow:hidden}
#pa-booking-form .pa-booking-program .pa-itinerary>summary,#pa-booking-form .pa-hotel-assignment>summary{padding:12px 14px;min-height:44px;box-sizing:border-box;font:650 13px/1.5 system-ui,sans-serif;color:#eee3fa;cursor:pointer;background:transparent}
#pa-booking-form .pa-booking-program .pa-itinerary>summary span{font-size:11px;font-weight:400;color:#b69bc9}
#pa-booking-form .pa-hotel-assignment>p{margin:0;padding:0 14px 12px;color:#bfaecf;font:12px/1.6 system-ui,sans-serif}
#pa-booking-form .pa-hotel-assignment>div{margin:0 14px;padding:10px 0;border-top:1px solid #67527766}
#pa-booking-form .pa-hotel-assignment>div strong{font:650 13px/1.5 system-ui,sans-serif;color:#eee3fa}
#pa-booking-form .pa-hotel-assignment>div p{margin:3px 0 0;color:#bfaecf;font:12px/1.5 system-ui,sans-serif}
#pa-booking-form .pa-booking-program .pa-itinerary-days{padding:4px 14px 0}
#pa-booking-form .pa-booking-program .pa-itinerary-day h3{color:#ccb0e6}
#pa-booking-form .pa-booking-program .pa-itinerary-day strong{color:#eee3fa}
#pa-booking-form .pa-booking-program .pa-itinerary-day p,#pa-booking-form .pa-booking-program .pa-itinerary-time{color:#bfaecf}
#pa-booking-form .pa-booking-program .pa-itinerary>.pa-caption{margin:0;padding:10px 14px 12px;color:#bfaecf}

@media screen and (max-width:600px){
 .pa-page .pa-fields{grid-template-columns:minmax(0,1fr)}
 .pa-page .pa-booking{padding:16px}
 .pa-page :is(.pa-close-booking,.pa-close-to-conditions,.pa-photo-close,.pa-photo-prev,.pa-photo-next){min-width:44px;min-height:44px}
 .pa-page .pa-cover img{max-height:320px}
 .pa-page :is(.pa-totals,.pa-price-breakdown)>div{flex-wrap:wrap;gap:6px 12px}
 .pa-page .pa-booking-dialog{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}
}
