.xp-section{padding:80px clamp(22px,6vw,88px);scroll-margin-top:100px;color:#17181a;background:#f4f3f0;font-family:var(--sans,Arial,sans-serif)}.xp-section *{box-sizing:border-box}.xp-heading{max-width:780px;margin-bottom:42px}.xp-kicker{font-size:11px!important;letter-spacing:.16em;font-weight:700;color:#32676b!important;margin:0 0 20px!important}.xp-section h2{font:500 clamp(36px,4.8vw,64px)/1.06 var(--sans,Arial,sans-serif);letter-spacing:-.045em;margin:0 0 24px;color:inherit}.xp-heading>p:last-child{max-width:660px;font-size:17px;line-height:1.7;color:#555b5d}.xp-shortcuts{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;padding:24px;background:#e9e8e4;border-block:1px solid #cececa}.xp-shortcuts a{font:500 14px/1.5 var(--sans,Arial,sans-serif);color:#17181a;text-decoration:none;min-height:44px;display:flex;align-items:center;gap:12px}.xp-experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.xp-experience{min-width:0}.xp-art{height:230px;border-radius:12px;display:flex;position:relative;align-items:center;justify-content:center;overflow:hidden;background:#e9e8e4;border:1px solid #d3d3ce}.xp-screen{width:84%;height:72%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#171b1c;border:5px solid #575b5b;box-shadow:0 12px 20px #0003;border-radius:8px}.xp-art small{font-size:8px;letter-spacing:.16em;color:#dce6e6}.xp-screen>span{font:italic 27px Georgia;color:#f4f3f0}.xp-screen i{font-style:normal;color:#20b8b8}.xp-photo-stack{position:relative;width:210px;height:156px}.xp-photo-stack span{position:absolute;width:108px;height:130px;border:7px solid #f8f7f4;border-bottom-width:24px;background:radial-gradient(circle at 55% 32%,#d4d4cc 0 15%,transparent 16%),linear-gradient(145deg,#40494c,#b4b8b8);transform:rotate(-13deg);left:0;top:12px;box-shadow:0 6px 15px #0003}.xp-photo-stack span:nth-child(2){left:58px;top:0;transform:rotate(8deg);background:linear-gradient(145deg,#65757a,#bec8ca)}.xp-photo-stack span:nth-child(3){left:105px;top:22px;transform:rotate(18deg);background:radial-gradient(ellipse at 50% 30%,#e2dfd6 0 20%,transparent 21%),linear-gradient(20deg,#3e5058,#8d9aa1)}.xp-photo-stack b{position:absolute;bottom:7px;left:85px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f8f7f4;color:#12656b;font-size:24px}.xp-art-caption{position:absolute;bottom:13px}.xp-wave{display:flex;gap:5px;align-items:center}.xp-wave i{width:5px;background:#34767c;border-radius:5px}.xp-voice-label{position:absolute;bottom:36px;font-size:12px;color:#3a494d}.xp-copy{padding:26px 0 0}.xp-product{display:block;color:#34767c;font-size:12px;font-weight:700;letter-spacing:.04em}.xp-copy h3{font-size:25px;line-height:1.2;letter-spacing:-.025em;color:#17181a;margin:12px 0 16px}.xp-copy p{font-size:15px;line-height:1.75;color:#555b5d;margin:0}.xp-caption{display:flex;gap:10px;margin-top:24px;padding-top:16px;border-top:1px solid #cdcecb;font-size:12px;line-height:1.6;color:#50575a}.xp-caption>span{color:#34767c}.xp-text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;color:inherit;text-decoration:none;border-bottom:1px solid #8b9698;font-size:14px;font-weight:600}.xp-experiences>.xp-text-link{margin-top:36px}.xp-extras{background:#f4f3f0;color:#17181a}.xp-extras .xp-kicker,.xp-extras .xp-product{color:#32676b!important}.xp-extras .xp-heading>p:last-child{color:#555b5d}.xp-extra-list article{display:grid;grid-template-columns:56px 1fr auto;gap:24px;align-items:center;padding:32px 0;border-top:1px solid #cececa}.xp-extra-list h3{font-size:25px;font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:10px 0;color:#17181a}.xp-extra-list p{font-size:15px;line-height:1.7;max-width:570px;margin:0;color:#555b5d}.xp-service-note{font-size:13px!important;line-height:1.7;max-width:800px;margin:24px 0 0;color:#555b5d}.xp-promo{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;background:#111514}.xp-promo h2{font-size:clamp(36px,4.3vw,58px)}.xp-promo-copy>p:not(.xp-kicker){font-size:18px;line-height:1.7;color:#f4f3f0}.xp-promo-copy .xp-promo-detail{font-size:15px!important;color:#c1c6c7!important}.xp-promo-copy>small{display:block;margin-top:18px;font-size:12px;color:#c1c6c7}.xp-button{display:inline-flex;gap:18px;justify-content:space-between;align-items:center;min-height:52px;padding:14px 22px;background:#20b8b8;color:#082f35;border-radius:6px;text-decoration:none;font-size:14px;font-weight:700;margin-top:14px}.xp-invitation-art{min-height:380px;position:relative;display:grid;place-items:center}.xp-invitation{width:225px;height:295px;z-index:1;padding:36px 16px;text-align:center;background:#f8f7f4;color:#232a2d;box-shadow:0 18px 30px #0003;transform:rotate(-7deg);display:flex;flex-direction:column;align-items:center;gap:25px;border:1px solid #c8cdce}.xp-invitation>small{font-size:8px;letter-spacing:.18em}.xp-invitation>span{font:italic 32px/1.15 Georgia}.xp-invitation>i{font-style:normal;color:#287f84}.xp-envelope{position:absolute;width:270px;height:180px;bottom:7px;background:#bcc3c4;clip-path:polygon(0 0,50% 43%,100% 0,100% 100%,0 100%);z-index:2;transform:rotate(5deg)}.xp-gift{position:absolute;z-index:3;bottom:74px;background:#12656b;color:#ffffff;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:9px;letter-spacing:.08em}.xp-section a:focus-visible,.xp-shortcuts a:focus-visible{outline:3px solid #168b95;outline-offset:5px}.xp-section a:hover{text-decoration:underline;text-underline-offset:5px}@media(max-width:800px){.xp-section{padding:52px 22px}.xp-experience-grid{grid-template-columns:1fr;gap:38px}.xp-experience{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}.xp-copy{padding:0}.xp-promo{gap:25px}.xp-extra-list article{grid-template-columns:40px 1fr;gap:18px}.xp-extra-list .xp-text-link{grid-column:2;justify-self:start}.xp-shortcuts{gap:8px 24px}.xp-copy h3{font-size:24px}.xp-invitation-art{min-height:350px}}@media(max-width:560px){.xp-experience{display:block}.xp-copy{padding-top:22px}.xp-art{height:210px}.xp-heading{margin-bottom:30px}.xp-heading>p:last-child{font-size:16px}.xp-promo{grid-template-columns:1fr;gap:24px}.xp-invitation-art{min-height:320px}.xp-invitation{width:195px;height:260px;padding-top:24px;gap:22px}.xp-invitation>span{font-size:29px}.xp-envelope{width:240px;height:150px}.xp-gift{bottom:56px}.xp-shortcuts{justify-content:flex-start;padding:16px 22px;gap:0 25px}.xp-shortcuts a{font-size:13px}.xp-extra-list article{padding:26px 0}.xp-extra-list h3{font-size:23px}.xp-promo-copy .xp-button{width:100%}.xp-section h2{font-size:38px}.xp-section{scroll-margin-top:95px}}

.xp-promo{color:#f4f3f0}.xp-promo .xp-kicker{color:#6ed5d5!important}.xp-art-caption{color:#425357!important}.xp-section a,.xp-shortcuts a{touch-action:manipulation}body>a[href="/"]{display:none!important}

.xp-icon{display:inline-block;flex-shrink:0;vertical-align:middle}

/* Experiencias: nombres concretos, funcionamiento y beneficio en un mismo bloque. */
.xp-clear-experiences{background:#f4f3f0;padding-top:64px;padding-bottom:64px}.xp-clear-heading{max-width:810px;margin-bottom:40px}.xp-clear-heading h2{font-size:clamp(34px,4.4vw,58px);line-height:1.08;margin:0 0 22px}.xp-clear-heading>p:last-child{font-size:17px;line-height:1.75;max-width:730px;color:#50565a}.xp-clear-list{border-top:1px solid #cccfce}.xp-clear-row{display:grid;grid-template-columns:130px minmax(0,1fr) minmax(200px,.6fr);gap:36px;align-items:start;padding:38px 0;border-bottom:1px solid #cccfce}.xp-clear-symbol{display:flex;flex-direction:column;gap:16px;color:#245e65}.xp-clear-symbol>span{font-size:12px;line-height:1.4;font-weight:600}.xp-clear-main h3{font-size:26px;line-height:1.2;font-weight:600;letter-spacing:-.025em;margin:0 0 14px;color:#17181a}.xp-clear-main p{font-size:16px;line-height:1.7;color:#50565a;margin:10px 0 0;max-width:580px}.xp-clear-main .xp-clear-lead{color:#20272a;font-weight:500}.xp-clear-benefit{border-left:2px solid #20b8b8;padding:4px 0 4px 22px;margin-top:4px}.xp-clear-benefit>span{font-size:10px;letter-spacing:.14em;font-weight:700;color:#28666b}.xp-clear-benefit p{font-size:17px;line-height:1.6;color:#343e40;margin:10px 0 0;max-width:300px}@media(max-width:800px){.xp-clear-row{grid-template-columns:92px 1fr;gap:24px}.xp-clear-benefit{grid-column:2;margin-top:0}.xp-clear-heading h2{font-size:40px}}@media(max-width:560px){.xp-clear-experiences{padding:44px 22px}.xp-clear-heading{margin-bottom:28px}.xp-clear-heading h2{font-size:35px}.xp-clear-heading>p:last-child{font-size:16px;line-height:1.65}.xp-clear-row{grid-template-columns:1fr;gap:18px;padding:28px 0}.xp-clear-symbol{flex-direction:row;align-items:center;gap:12px}.xp-clear-symbol svg{width:27px;height:27px}.xp-clear-symbol>span{font-size:12px}.xp-clear-main h3{font-size:25px;margin-bottom:13px}.xp-clear-main p{font-size:15px;line-height:1.7}.xp-clear-benefit{grid-column:1;padding-left:16px;margin-top:0}.xp-clear-benefit p{font-size:15px;margin-top:6px;max-width:none}.xp-clear-benefit>span{font-size:10px}}

.xp-clear-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:42px;align-items:center;padding:36px 0}.xp-video-cover{margin:0;min-width:0;width:100%;aspect-ratio:1672/941;overflow:hidden;border-radius:12px;background:#e9e8e4}.xp-video-cover img{display:block;width:100%;height:100%;object-fit:cover}.xp-cover-copy{min-width:0}.xp-cover-copy .xp-clear-benefit{margin-top:24px}.xp-promo{grid-template-columns:1.1fr 1fr;gap:42px}@media(max-width:800px){.xp-clear-row,.xp-promo{grid-template-columns:1fr;gap:24px}.xp-cover-copy .xp-clear-benefit{margin-top:20px}.xp-clear-row{padding:28px 0}}

/* Servicios: escenas, beneficios concretos y acciones propias. */
.xp-selling{background:#191c1e;color:#f7f5f0;padding-block:76px}
.xp-selling-heading{max-width:780px;margin-bottom:48px}
.xp-selling .xp-kicker{color:#70d6d6!important}
.xp-selling-heading h2{font-size:clamp(40px,5vw,68px);font-weight:500}
.xp-selling-heading>p:last-child{color:#c5c7c7;font-size:18px;line-height:1.6;max-width:560px}
.xp-selling-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-block:1px solid #ffffff29}
.xp-selling-item{display:flex;flex-direction:column;padding:34px 30px 36px;min-width:0}
.xp-selling-item:first-child{padding-left:0}.xp-selling-item:last-child{padding-right:0}
.xp-selling-item+.xp-selling-item{border-left:1px solid #ffffff29}
.xp-selling-label{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#81dcdc;font-size:13px;font-weight:600;letter-spacing:.02em}
.xp-selling-label>span:last-child{color:#989e9f;font-size:12px;font-weight:400}
.xp-selling-item h3{font:400 clamp(27px,2.7vw,38px)/1.17 Georgia,serif;letter-spacing:-.025em;color:#f7f5f0;margin:30px 0 20px}
.xp-selling-story{font-size:16px;line-height:1.75;color:#c9cdcd;margin:0 0 26px}
.xp-selling-benefit{font-size:14px;line-height:1.65;color:#f4f3f0;margin:auto 0 26px;padding-left:16px;border-left:2px solid #20b8b8}
.xp-selling-action{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:54px;padding:15px 16px;background:#f4f3f0;color:#17181a;text-decoration:none;border-radius:5px;font-size:14px;font-weight:650;line-height:1.4}
.xp-selling-action svg,.xp-selling-package svg{flex-shrink:0}.xp-selling-action:hover{background:#d8f0ee;text-decoration:none!important}
.xp-selling-package{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding-top:30px}
.xp-selling-package strong{font-size:20px;font-weight:500}.xp-selling-package p{max-width:620px;font-size:14px;line-height:1.7;color:#c5c7c7;margin:0}.xp-selling-package a{color:#81dcdc;display:inline-flex;gap:14px;align-items:center;min-height:44px;font-size:14px;text-underline-offset:5px}
@media(max-width:1000px){.xp-selling-grid{grid-template-columns:1fr}.xp-selling-item,.xp-selling-item:first-child,.xp-selling-item:last-child{padding:32px 0}.xp-selling-item+.xp-selling-item{border-left:0;border-top:1px solid #ffffff29}.xp-selling-item h3{font-size:36px;margin:22px 0 18px}.xp-selling-story{max-width:620px}.xp-selling-benefit{margin:0 0 24px}.xp-selling-action{align-self:start;min-width:280px}.xp-selling-package{grid-template-columns:1fr;gap:12px}}
@media(max-width:560px){.xp-selling{padding:48px 22px}.xp-selling-heading{margin-bottom:30px}.xp-selling-heading h2{font-size:41px}.xp-selling-heading>p:last-child{font-size:16px}.xp-selling-item h3{font-size:35px}.xp-selling-action{width:100%;min-width:0}.xp-selling-story{font-size:16px}.xp-selling-label{font-size:14px}}
/* Bloques legibles: adaptar composición sin alturas fijas ni recortes. */
.gallery.section,.experience.section,.faq.section,.location.section,.demand,.final-cta{padding-block:clamp(32px,5svh,56px)}
.gallery.section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:center}
.gallery-copy h2{font-size:clamp(30px,3.1vw,48px);line-height:1.08;max-width:17ch;margin-block:14px 20px}
.gallery-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-block:0 18px}
.gallery-grid{height:auto;grid-template-rows:minmax(0,1.7fr) minmax(0,1fr);gap:12px;max-height:570px;height:min(65svh,570px)}
.gallery-grid .gallery-photo,.gallery-grid .gallery-photo.tall{height:100%;min-height:0;margin:0}
.gallery-grid picture,.gallery-grid img{height:100%;width:100%;object-fit:cover;display:block}
.gallery-copy .gallery-credit{margin-top:14px}.gallery-video-link{margin-top:12px}
.experience h2,.faq h2,.demand h2,.location h2,.final-cta h2{font-size:clamp(30px,3.4vw,50px);line-height:1.1}
.experience .section-heading{margin-bottom:26px}
.xp-clear-experiences{padding-block:36px}.xp-clear-heading{margin-bottom:24px}.xp-clear-heading h2{font-size:clamp(30px,3.4vw,46px)}
.xp-clear-row{padding-block:26px;scroll-margin-top:24px}.xp-clear-row .xp-video-cover{max-height:55svh}
.xp-selling{padding-block:36px}.xp-selling-heading{margin-bottom:24px}.xp-selling-heading h2{font-size:clamp(32px,3.4vw,48px);margin-bottom:14px}.xp-selling-heading>p:last-child{margin-bottom:0}
.xp-selling-item{padding-block:24px}.xp-selling-item h3{margin-block:20px 16px;font-size:clamp(28px,2.5vw,36px)}.xp-selling-story{line-height:1.6;margin-bottom:20px}.xp-selling-package{padding-top:20px}
.location-map,.location-card{min-height:0!important;height:auto}.location-map{max-height:65svh}
@media(max-width:800px){
.gallery.section{grid-template-columns:1fr;gap:18px;padding:28px 22px}
.gallery-copy h2{font-size:30px;max-width:24ch;margin-block:10px 14px}.gallery-copy>p:not(.eyebrow){font-size:15px;line-height:1.5;margin-bottom:10px}.gallery-copy .eyebrow{margin-bottom:10px}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.65fr 1fr;height:clamp(200px,32svh,280px);gap:8px}.gallery-grid .gallery-photo.tall{grid-column:1/-1}.gallery-grid .gallery-photo{display:block!important;opacity:1!important;transform:none!important}
.gallery-copy .gallery-credit{font-size:11px;margin-top:8px}.gallery-video-link-mobile{margin-top:0;min-height:44px}
.xp-clear-row{gap:16px;padding-block:24px}.xp-clear-main h3{font-size:24px;margin-bottom:10px}.xp-clear-main p{margin-top:0;line-height:1.55}.xp-cover-copy .xp-clear-benefit{margin-top:14px}.xp-clear-benefit p{line-height:1.5}
.xp-selling-item,.xp-selling-item:first-child,.xp-selling-item:last-child{padding-block:26px}.xp-selling-item h3{font-size:32px;margin-block:18px 14px}.xp-selling-story{line-height:1.55}.xp-selling-benefit{margin-bottom:20px}.xp-selling-action{min-height:50px}
.xp-promo{padding-block:28px;gap:20px}.xp-promo h2{font-size:32px;margin-bottom:16px}.xp-promo-copy>p:not(.xp-kicker){font-size:16px;line-height:1.5}.xp-promo .xp-kicker{margin-bottom:12px!important}
}
.gallery-grid .gallery-photo,.gallery-grid .gallery-photo.tall{width:100%;max-width:none;aspect-ratio:auto}
@media(max-width:800px){.gallery-grid{height:clamp(190px,28svh,240px)}.gallery.section{gap:14px}.gallery-copy h2{font-size:28px}}
/* Composición de escritorio según el alto útil del navegador. */
@media(min-width:1001px){
.gallery.section,.experience.section,.quote,.xp-promo,.demand,.faq.section,.location.section,.final-cta{box-sizing:border-box;min-height:100svh;align-content:center;scroll-margin-top:0}
.gallery-grid{height:72svh;max-height:760px}
.xp-selling{box-sizing:border-box;min-height:100svh;padding-block:clamp(20px,4svh,48px);display:flex;flex-direction:column;justify-content:center;gap:clamp(16px,3svh,32px);scroll-margin-top:0}
.xp-selling-heading{display:grid;grid-template-columns:1.2fr 1fr;column-gap:40px;align-items:end;max-width:none;margin:0}
.xp-selling-heading .xp-kicker{grid-column:1/-1;margin-bottom:12px!important}
.xp-selling-heading h2{font-size:clamp(30px,4.7svh,52px);margin:0;line-height:1.08}
.xp-selling-heading>p:last-child{font-size:16px;line-height:1.5;margin:0;max-width:480px}
.xp-selling-grid{flex:0 0 auto}
.xp-selling-item{padding-block:clamp(16px,2.6svh,32px);padding-inline:24px}
.xp-selling-item h3{font-size:clamp(26px,3.8svh,38px);margin-block:clamp(14px,2.3svh,24px) 14px}
.xp-selling-story{font-size:16px;line-height:1.5;margin-bottom:18px}
.xp-selling-benefit{font-size:14px;line-height:1.5;margin-bottom:18px}
.xp-selling-action{min-height:48px;padding:12px 14px}
.xp-selling-package{padding:0;gap:20px}.xp-selling-package p{line-height:1.5}
.xp-clear-row{min-height:calc(100svh - 48px);align-content:center;scroll-margin-top:0}
.xp-clear-heading{padding-block:30px}
}
@media(min-width:1001px) and (max-height:740px){
.xp-selling-heading h2{font-size:30px}.xp-selling-heading h2 br{display:none}
.xp-selling{gap:16px;padding-block:20px}.xp-selling-item h3{font-size:26px;margin-top:14px}.xp-selling-story{margin-bottom:14px}.xp-selling-benefit{margin-bottom:14px}
}
@media(min-width:1001px){
.location-card{padding:clamp(24px,4svh,44px)}.location-card h2{font-size:clamp(30px,4.5svh,44px)}.location-card .location-intro{margin-top:16px}.location-card .location-address{margin-top:20px}.location-card .location-button{margin-top:18px}
.demand-layout{padding-top:28px;gap:48px}.tour-card{padding:28px}
.faq-list{gap:8px}.faq-list details{padding-block:18px}.faq-list summary{font-size:17px}.faq-list details p{margin-block:12px 0;line-height:1.5}.hourly{margin-top:48px!important}.package-proof{margin-bottom:0}
}
@media(min-width:1001px) and (max-height:740px){.xp-selling-heading h2 br{display:initial}.xp-selling-heading h2{font-size:30px}}
/* Revisión completa: contenido y controles dentro del alto útil. */
@media(min-width:1001px){
.hero{box-sizing:border-box;min-height:100svh;height:auto;padding:104px 5vw 24px;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;column-gap:4vw;row-gap:16px;align-content:center;align-items:center}
.hero-kicker-mobile{grid-column:1/-1;grid-row:1;position:static}.hero-kicker-mobile .eyebrow{margin:0;padding:8px 12px;font-size:10px}
.hero-content{grid-column:1;grid-row:2;align-self:center;max-width:none}
.hero h1{font-size:clamp(32px,5.9svh,68px);line-height:1.02;margin:0;letter-spacing:-.035em}
.hero-intro{font-size:16px;line-height:1.5;margin:18px 0 0;max-width:570px}
.hero-actions{margin-top:20px;gap:12px;flex-wrap:wrap}.hero-actions .button{min-height:46px;height:auto;padding:12px 20px;font-size:14px}
.hero-visual{grid-column:2;grid-row:2;align-self:center;inset:auto;width:100%;height:clamp(220px,55svh,620px);min-height:0;max-height:none;aspect-ratio:auto}
.experience .feature-grid article{padding:24px}.feature-grid h3{font-size:23px;line-height:1.2;margin-block:16px}.feature-grid p{font-size:15px;line-height:1.55}
.demand-layout{gap:32px}.tour-card{padding:22px}.tour-card ol{margin-block:18px}.tour-card li{padding-block:10px}.tour-card li p{font-size:14px;line-height:1.45;margin-top:6px}.tour-title{font-size:20px;line-height:1.25}.tour-proof{margin-top:16px;padding-top:16px}
.faq.section{gap:4vw}.faq-list details{padding:0}.faq-list summary{padding:16px 0;min-height:54px;gap:12px;font-size:16px}.faq-answer{padding:0 0 16px 32px}.faq-answer p{font-size:14px;line-height:1.5;margin:0!important}
.location-card h2{font-size:32px;line-height:1.1}.location-card .location-intro{font-size:15px;line-height:1.5;margin-top:14px}.location-address address{font-size:23px;line-height:1.25;margin-block:10px}.location-address>span,.location-contact-note{font-size:14px;line-height:1.45}.location-contact-note{margin-top:12px}
}
@media(max-width:1000px){
.hero h1{font-size:clamp(30px,5svh,46px);line-height:1.06}.hero-intro{font-size:15px;line-height:1.5}.hero-actions .button{min-height:44px;height:auto;padding-block:12px}
}
@media(min-width:1001px){
body main section.hero{padding:100px 5vw 24px;row-gap:16px;min-height:100svh;height:auto}
body main .hero h1{font-size:clamp(32px,5.9svh,68px);line-height:1.02}
body main .hero .hero-kicker-mobile .eyebrow{font-size:10px;padding:8px 12px;margin:0}
body main .hero .hero-intro{font-size:16px;line-height:1.5;margin-top:18px}
body main .hero .hero-actions{margin-top:20px}
body main .location .location-address{padding-top:14px;margin-top:14px}
body main .location .location-address address{font-size:23px;line-height:1.25;margin:8px 0}
body main .location .location-address>span{font-size:13px;line-height:1.4;margin-top:10px}
body main .location .location-contact-note{font-size:13px;line-height:1.4;margin-top:10px}
}
@media(min-width:1001px){
body:is(.venue-paraiso,.venue-sky) main section.hero{padding:104px 5vw 24px;min-height:100svh;row-gap:16px}
body:is(.venue-paraiso,.venue-sky) main .hero h1{font-size:clamp(34px,6.8svh,68px);line-height:1.03}
body:is(.venue-paraiso,.venue-sky) main .hero .hero-intro{margin:18px 0 0;font-size:16px;line-height:1.5}
body:is(.venue-paraiso,.venue-sky) main .hero .hero-content{padding:0}
body:is(.venue-paraiso,.venue-sky) main .location-card{padding:20px}
body:is(.venue-paraiso,.venue-sky) main .location .location-address{padding-top:10px;margin-top:10px}
body:is(.venue-paraiso,.venue-sky) main .location .location-address address{font-size:22px;margin:8px 0;line-height:1.2}
body:is(.venue-paraiso,.venue-sky) main .location .location-address>span,body:is(.venue-paraiso,.venue-sky) main .location .location-contact-note{font-size:13px;line-height:1.4;margin-top:8px}
}
@media(max-width:1000px){
body:is(.venue-paraiso,.venue-sky) main .hero{display:flex;flex-direction:column;justify-content:center;gap:14px;box-sizing:border-box;padding:100px 22px 92px;min-height:100svh;height:auto}
body:is(.venue-paraiso,.venue-sky) main .hero-kicker-mobile{order:0;position:static;margin:0}
body:is(.venue-paraiso,.venue-sky) main .hero-kicker-mobile .eyebrow{font-size:8px;margin:0;padding:7px 9px}
body:is(.venue-paraiso,.venue-sky) main .hero-visual{order:1;position:relative;inset:auto;width:100%;height:clamp(130px,21svh,200px);min-height:0;flex:none;border-radius:16px}
body:is(.venue-paraiso,.venue-sky) main .hero-content{order:2;padding:0;min-height:0;display:block}
body:is(.venue-paraiso,.venue-sky) main .hero h1{font-size:clamp(27px,3.8svh,34px);line-height:1.06;margin:0}
body:is(.venue-paraiso,.venue-sky) main .hero-intro{font-size:14px;line-height:1.45;margin:12px 0;max-width:none}
body:is(.venue-paraiso,.venue-sky) main .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 0}
body:is(.venue-paraiso,.venue-sky) main .hero-actions .button{font-size:12px;padding:10px;min-height:46px;width:100%;line-height:1.3}
.feature-grid article{padding:24px 18px}.feature-grid h3{font-size:24px;line-height:1.2}.feature-grid p{font-size:15px;line-height:1.5}
.demand-layout{padding-top:20px;gap:28px}.tour-card{padding:22px}.tour-card ol{margin-block:16px}.tour-card li{padding-block:10px}.tour-card li p{font-size:14px;line-height:1.45}.tour-proof{margin-top:14px;padding-top:14px}
.faq.section{gap:24px}.faq-list details{padding:0}.faq-list summary{padding:14px 0;min-height:48px;font-size:15px;gap:10px}.faq-answer{padding:0 0 14px 26px}.faq-answer p{font-size:14px;line-height:1.45}
body:is(.venue-paraiso,.venue-sky) .location-map{height:180px;min-height:0}.location-card{padding:24px}.location-card h2{font-size:30px}.location-intro{font-size:14px;line-height:1.45;margin-top:12px}.location-address{margin-top:14px;padding-top:14px}.location-address address{font-size:22px}.location-contact-note{font-size:13px;line-height:1.45}
}
/* Escritorio: recuperar presencia y distribuir el espacio útil, sin reducir todo. */
@media(min-width:1001px){
body:is(.venue-paraiso,.venue-sky) main section.hero{padding:104px 5vw 24px;grid-template-rows:auto 1fr;row-gap:20px;min-height:100svh;height:100svh;align-content:stretch}
body:is(.venue-paraiso,.venue-sky) main .hero-content{height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:16px;align-self:stretch;min-height:0}
body:is(.venue-paraiso,.venue-sky) main .hero h1{font-size:clamp(44px,min(4.4vw,9svh),92px);line-height:.98;letter-spacing:-.045em;max-width:none;text-wrap:balance}
body:is(.venue-paraiso,.venue-sky) main .hero .hero-intro{font-size:clamp(16px,1.35vw,24px);line-height:1.45;margin:0;max-width:none}
body:is(.venue-paraiso,.venue-sky) main .hero .hero-actions{margin:0;gap:14px;flex-wrap:nowrap}
body:is(.venue-paraiso,.venue-sky) main .hero .hero-actions .button{font-size:clamp(14px,1.1vw,20px);min-height:48px;padding:12px 22px}
body:is(.venue-paraiso,.venue-sky) main .hero-visual{height:100%;max-height:none;min-height:0;align-self:stretch;background-size:cover;background-position:center;border-radius:24px}
.xp-clear-row{min-height:0;padding-block:clamp(40px,7svh,72px);gap:4vw}.xp-clear-row .xp-video-cover{max-height:none}.xp-clear-main h3{font-size:clamp(28px,2.5vw,44px)}.xp-clear-main p{font-size:clamp(17px,1.35vw,23px);line-height:1.55}.xp-clear-benefit p{max-width:450px;font-size:clamp(17px,1.3vw,22px)}
.quote{min-height:0;padding-block:clamp(50px,10svh,100px)}
.xp-promo h2{font-size:clamp(40px,4vw,70px)}.xp-promo-copy>p:not(.xp-kicker){font-size:clamp(18px,1.5vw,25px)}
.gallery-copy h2{font-size:clamp(38px,min(4vw,7svh),68px)}
.xp-selling-heading h2{font-size:clamp(34px,5.4svh,60px)}
}
@media(min-width:1001px) and (max-height:599px){
.xp-selling{padding-block:12px;gap:12px}.xp-selling-item{padding-block:12px}.xp-selling-heading h2{font-size:30px}
.xp-promo{padding-block:30px}.xp-promo h2{font-size:38px}
}
@media(min-width:1001px){body:is(.venue-paraiso,.venue-sky) main .hero .hero-intro{font-size:clamp(17px,1.5vw,26px)}.xp-clear-row{min-height:100svh;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.xp-clear-row .xp-video-cover{aspect-ratio:4/3}.xp-clear-row .xp-video-cover img{object-fit:cover}}
@media(min-width:1001px){body:is(.venue-paraiso,.venue-sky) main .hero-content>h1,body:is(.venue-paraiso,.venue-sky) main .hero-content>.hero-intro,body:is(.venue-paraiso,.venue-sky) main .hero-content>.hero-actions{flex:none}.hero{overflow-anchor:none}}
@media(min-width:1001px){body:is(.venue-paraiso,.venue-sky) main section.hero{grid-template-rows:auto minmax(0,1fr)}}

.hourly-availability strong{font-weight:800;color:var(--ink)}
.hourly-availability{font-weight:600}
/* Paquetes completos. El alto sigue al contenido; ninguna información se despliega. */
#packages.packages{padding:0 clamp(22px,5vw,88px) 48px;overflow:visible;scroll-margin-top:0}
#packages .xp-package-screen{box-sizing:border-box;max-width:1340px;margin:auto;padding:54px 0 36px;display:grid;gap:40px}
#packages .packages-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;width:100%;max-width:none;margin:0;padding:0;text-align:left}
#packages .packages-heading>div:first-child{justify-self:start}
#packages .packages-heading .eyebrow{font-size:11px;letter-spacing:.16em;margin:0 0 16px}
#packages .packages-heading h2{font-family:var(--serif);font-size:clamp(38px,3.5vw,56px);font-weight:500;line-height:1.07;letter-spacing:-.035em;max-width:560px;margin:0;text-wrap:balance}
#packages .packages-heading>div:last-child{max-width:580px;justify-self:end;border:0;padding:0;margin:0}
#packages .packages-heading>div:last-child::before{display:none}
#packages .packages-heading p:not(.eyebrow){font-size:16px;line-height:1.6;color:#505653;margin:0}
#packages .packages-heading strong{display:block;padding-left:18px;border-left:2px solid var(--accent);margin-top:18px;font-size:15px;line-height:1.55;font-weight:600;color:#203c39}
#packages .package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;max-width:none;width:100%;margin:0;padding:0;overflow:visible;scroll-snap-type:none}
#packages .package-card{display:flex;flex-direction:column;justify-content:flex-start;min-width:0;min-height:0;padding:28px;border-radius:26px;transform:none;opacity:1;overflow:visible;box-shadow:0 12px 30px #121a190a}
#packages .package-card::after{display:none}
@media(min-width:561px) and (hover:hover) and (pointer:fine){
  #packages .package-card:hover{position:relative;z-index:2;transform:translateY(-9px) scale(1.025);border-color:var(--accent);box-shadow:0 26px 60px rgba(12,35,34,.16)}
}
#packages .package-card-head{margin-bottom:24px}
#packages .package-name{margin:0;padding:0 0 18px;text-align:left}
#packages .package-name h3{font-size:34px;line-height:1.15}
#packages .package-summary{font-size:16px;line-height:1.55;font-weight:400;min-height:75px;margin:20px 0 24px;color:#505653}
#packages .anchor .package-summary{color:#cbd2ce}
#packages .package-includes{flex:1;padding-bottom:24px}
#packages .package-includes>small{display:block;margin:0 0 14px;font-size:16px;line-height:1.4;font-weight:600;letter-spacing:0;text-transform:none;color:inherit}
#packages .package-includes ul{padding:0;margin:0;border:0;list-style:none}
#packages .package-includes li{display:block;position:relative;padding:7px 0 7px 16px;margin:0;font-size:16px;line-height:1.5;color:inherit;border:0}
#packages .package-includes li::before{display:none}
#packages .package-includes li.xp-package-distinction{font-weight:600}
#packages .package-includes li>span{position:absolute;left:0;top:17px;width:5px;height:5px;border:1px solid var(--accent);border-radius:50%;box-shadow:none}
#packages .xp-equipment-note,#packages .xp-inherited-note,#packages .xp-dj-note{display:block;font-size:14px;font-weight:400;line-height:1.5;margin-top:5px;color:#59615d}
#packages .anchor .xp-inherited-note{color:#cbd2ce}
#packages .xp-package-experiences{border-top:1px solid #20b8b870;padding:22px 0 24px}
#packages .xp-package-experiences h4{font-size:17px;font-weight:600;line-height:1.4;letter-spacing:-.015em;margin:0 0 22px;color:#20666a}
#packages .anchor .xp-package-experiences h4{color:#80dcda}
#packages .xp-package-experiences ul{margin:0;padding:0;border:0;display:grid;gap:22px;list-style:none}
#packages .xp-package-experiences li{padding:0;display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;font-size:15px;line-height:1.5}
#packages .xp-package-experiences li::before{display:none}
#packages .xp-package-experiences svg{color:#26797a;margin-top:2px}
#packages .anchor .xp-package-experiences svg{color:#80dcda}
#packages .xp-package-experiences strong{font-size:16px;font-weight:600;line-height:1.4;letter-spacing:-.015em}
#packages .xp-package-experiences p{font-size:15px;line-height:1.5;margin:7px 0 0;color:#505653}
#packages .anchor .xp-package-experiences p{color:#cbd2ce}
#packages .xp-package-next{display:block;font-size:12px;line-height:1.5;text-align:center;margin:12px 0 0;color:#59615d}
#packages .anchor .xp-package-next{color:#cbd2ce}
#packages a:focus-visible{outline:3px solid #168b95;outline-offset:5px}
@media(min-width:700px) and (max-width:1199px){
  #packages .package-grid{grid-template-columns:1fr;gap:28px}
  #packages .package-card{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding:28px}
  #packages .package-name{grid-column:1/-1}
  #packages .package-summary{grid-column:1/-1;min-height:0;max-width:760px;margin:18px 0 26px}
  #packages .package-includes{grid-column:1;grid-row:3}
  #packages .xp-package-experiences{grid-column:2;grid-row:3;border-top:0;border-left:1px solid #20b8b870;padding:0 0 0 26px}
  #packages .xp-package-footer{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 32px;align-items:center;margin-top:16px}
  #packages .package-price-block{grid-column:1;grid-row:1/3;min-height:0}
  #packages .package-cta{grid-column:2;grid-row:1;margin:0}
  #packages .xp-package-next{grid-column:2;grid-row:2;margin-top:8px}
}
@media(max-width:899px){
  #packages .packages-heading{grid-template-columns:1fr;gap:24px}
  #packages .packages-heading>div:last-child{max-width:none;justify-self:start}
  #packages .packages-heading h2{max-width:720px;font-size:40px}
}
@media(max-width:699px){
  #packages.packages{padding-inline:20px}
  #packages .xp-package-screen{padding-block:32px;gap:28px}
  #packages .package-grid{grid-template-columns:1fr;gap:24px}
  #packages .package-card{padding:24px}
  #packages .package-summary{min-height:0}
  #packages .package-includes{flex:0}
  #packages .package-price-block{min-height:0}
  #packages .packages-heading h2{font-size:36px}
}

/* Servicios 19: imágenes elegidas y menú compartido. */
.xp-service-photo{margin:12px 0 0}.xp-service-photo img{width:100%;height:clamp(140px,24svh,260px);object-fit:cover;display:block;border-radius:12px}.xp-service-photo figcaption{font-size:11px;color:#bdc8c8;margin-top:5px}
#extras .xp-selling-item h3{font-size:clamp(23px,2.8svh,34px);margin:14px 0 10px}#extras .xp-selling-story{font-size:15px;line-height:1.45;margin-bottom:12px}#extras .xp-selling-benefit{font-size:13px;line-height:1.4;margin:0 0 12px;padding-left:10px}#extras .xp-selling-action{margin-top:auto}#extras .xp-selling-heading h2{font-size:clamp(30px,4.6svh,48px)}
.xp-menu,.xp-thrones{min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:30px;scroll-margin-top:0;padding-block:40px}.xp-menu h2{font-family:var(--serif);font-size:clamp(32px,4vw,54px);margin:0}.xp-menu-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:60px}.xp-menu h3{font-size:22px;margin:0 0 16px}.xp-menu ul{padding:0;margin:0;list-style:none;columns:2;column-gap:24px}.xp-menu li{font-size:16px;line-height:1.5;padding:8px 0;border-bottom:1px solid #17181a20;break-inside:avoid}.xp-menu-footer{border-top:1px solid #17181a30;padding-top:22px;display:flex;gap:32px;align-items:center;justify-content:space-between}.xp-menu-footer p{max-width:720px;margin:0;line-height:1.5}.xp-menu-footer small{display:block;margin-top:10px;color:#59615d}.xp-thrones{display:grid;grid-template-columns:1.2fr 1fr;gap:5vw;background:#e9e8e4;align-content:center;align-items:center}.xp-thrones figure{margin:0}.xp-thrones img{width:100%;display:block;border-radius:18px}.xp-thrones figcaption{font-size:12px;margin-top:8px;color:#59615d}.xp-thrones h2{font-family:var(--serif);font-size:clamp(32px,4vw,56px)}.xp-thrones p{line-height:1.6}.xp-thrones .xp-button{margin-top:20px}
@media(min-width:1001px){#extras{gap:16px;padding-block:24px}#extras .xp-selling-item{padding-block:16px}#extras .xp-selling-heading .xp-kicker{margin-bottom:8px!important}}
@media(max-width:1000px){.xp-menu-columns{grid-template-columns:1fr;gap:26px}.xp-menu ul{columns:1}.xp-menu-footer{flex-direction:column;align-items:start}.xp-thrones{grid-template-columns:1fr}.xp-service-photo img{height:auto;aspect-ratio:3/2}#extras .xp-selling-item{min-height:85svh;justify-content:center}#extras .xp-selling-action{margin-top:16px}.xp-menu,.xp-thrones{padding-block:36px}.xp-menu-columns>div{min-height:65svh}}

/* Menú consultable en ventana, fuera del recorrido principal. */
.xp-menu-dialog{width:min(1080px,calc(100vw - 40px));max-width:none;max-height:90svh;padding:0;border:1px solid #20b8b870;border-radius:22px;background:#f4f3f0;color:#17181a;overflow:auto;box-shadow:0 24px 90px #0005}
.xp-menu-dialog::backdrop{background:#080e0ec2;backdrop-filter:blur(4px)}
.xp-menu-dialog .xp-menu{min-height:0;padding:12px 36px 32px;gap:24px}
.xp-menu-dialog .xp-menu h2{font-size:clamp(28px,3.3vw,42px)}
.xp-menu-dialog .xp-menu-columns{gap:32px}
.xp-menu-bar{position:sticky;top:0;z-index:1;display:flex;justify-content:flex-end;padding:14px 20px;background:#f4f3f0}
.xp-menu-close{background:transparent;border:1px solid #168b95;border-radius:999px;padding:10px 18px;min-height:44px;font:600 14px var(--sans,Arial,sans-serif);color:#17181a;cursor:pointer}
button.xp-selling-action{border:0;width:100%;font-family:inherit;text-align:left;cursor:pointer}
.xp-menu-close:focus-visible,button.xp-selling-action:focus-visible{outline:3px solid #168b95;outline-offset:3px}
@media(max-width:1000px){.xp-menu-dialog .xp-menu-columns{grid-template-columns:1fr 1fr}.xp-menu-dialog .xp-menu-columns>div{min-height:0}.xp-menu-dialog .xp-menu ul{columns:1}}
@media(max-width:600px){.xp-menu-dialog{width:calc(100vw - 20px);max-height:94svh;border-radius:16px}.xp-menu-dialog .xp-menu{padding:8px 20px 24px;gap:22px}.xp-menu-dialog .xp-menu-columns{grid-template-columns:1fr;gap:24px}.xp-menu-dialog .xp-menu-footer{gap:18px}.xp-menu-dialog .xp-menu li{font-size:15px}.xp-menu-dialog .xp-menu h3{font-size:20px}}


/* Menú 24: dos listas completas y controles visibles en una pantalla. */
.xp-menu-dialog{width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 24px);border-radius:20px}
.xp-menu-dialog .xp-menu-bar{position:absolute;right:0;top:0;padding:16px;background:transparent}
.xp-menu-dialog .xp-menu{padding:24px 32px;gap:20px;display:grid;min-height:0}
.xp-menu-dialog .xp-menu header{padding-right:140px}
.xp-menu-dialog .xp-menu h2{font-size:30px;line-height:1.2;margin:0;letter-spacing:-.025em}
.xp-menu-dialog .xp-menu-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:32px}
.xp-menu-dialog .xp-menu-columns>div{min-height:0}
.xp-menu-dialog .xp-menu-columns>div+div{border-left:1px solid #17181a25;padding-left:32px}
.xp-menu-dialog .xp-menu h3{font-size:18px;line-height:1.3;margin:0 0 10px;color:#20666a}
.xp-menu-dialog .xp-menu ul{columns:1;display:grid;gap:0}
.xp-menu-dialog .xp-menu li{font-size:16px;line-height:1.35;padding:7px 0;border:0}
.xp-menu-dialog .xp-menu-footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding-top:16px}
.xp-menu-dialog .xp-menu-footer p{font-size:14px;line-height:1.4;margin:0}
.xp-menu-dialog .xp-menu-footer .xp-button{font-size:14px;min-height:44px;padding:12px 16px;white-space:nowrap}
.xp-menu-dialog .xp-menu-close{min-height:40px;padding:8px 14px;font-size:13px}
@media(max-width:600px){
.xp-menu-dialog{width:calc(100vw - 16px);border-radius:16px}
.xp-menu-dialog .xp-menu{padding:20px 16px 16px;gap:16px}
.xp-menu-dialog .xp-menu-bar{padding:12px 10px}
.xp-menu-dialog .xp-menu header{padding-right:106px;min-height:36px;display:flex;align-items:center}
.xp-menu-dialog .xp-menu h2{font-size:22px}
.xp-menu-dialog .xp-menu-columns{grid-template-columns:1.15fr 1fr;gap:12px}
.xp-menu-dialog .xp-menu-columns>div+div{padding-left:12px}
.xp-menu-dialog .xp-menu h3{font-size:15px;margin-bottom:8px}
.xp-menu-dialog .xp-menu li{font-size:14px;line-height:1.3;padding:6px 0}
.xp-menu-dialog .xp-menu-footer{grid-template-columns:1fr;gap:12px;padding-top:12px}
.xp-menu-dialog .xp-menu-footer p{font-size:13px}
.xp-menu-dialog .xp-menu-footer .xp-button{justify-self:stretch;text-align:center;justify-content:center}
.xp-menu-dialog .xp-menu-close{font-size:12px;padding:8px 10px}
}
@media(max-height:650px){.xp-menu-dialog .xp-menu{gap:12px;padding-top:18px;padding-bottom:16px}.xp-menu-dialog .xp-menu li{padding-block:4px}.xp-menu-dialog .xp-menu h2{font-size:24px}.xp-menu-dialog .xp-menu-footer{padding-top:10px}}


/* Menú 25: carta informativa y tacos listos para servirse. */
.xp-menu-dialog{background:#faf8f3;border-color:#6ba7a4;box-shadow:0 25px 90px #0006}
.xp-menu-dialog .xp-menu{background:transparent;gap:18px;padding:26px 34px}
.xp-menu-dialog .xp-menu header{border-bottom:1px solid #20666a38;padding-bottom:14px}
.xp-menu-dialog .xp-menu h2{font-family:var(--serif,Georgia,serif);font-size:30px;color:#183d3b}
.xp-menu-dialog .xp-menu h3{font-family:var(--serif,Georgia,serif);font-size:21px;font-weight:500;letter-spacing:-.02em}
.xp-menu-dialog .xp-menu li{padding:5px 0;font-size:15px}
.xp-menu-dialog .xp-taco-option{background:#e9f0eb;border:1px solid #20666a28;border-radius:12px;padding:14px 18px;display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:start}
.xp-menu-dialog .xp-taco-option h3{margin:0;font-size:23px}
.xp-menu-dialog .xp-taco-option p{font-size:14px;line-height:1.5;margin:0;color:#334743}
.xp-menu-dialog .xp-menu-footer{display:block;border:0;padding:0;text-align:center}
.xp-menu-dialog .xp-menu-footer p{font-size:13px;color:#59615d;max-width:none}
@media(max-width:600px){
.xp-menu-dialog .xp-menu{padding:18px 16px;gap:12px}
.xp-menu-dialog .xp-menu h2{font-size:23px}
.xp-menu-dialog .xp-menu header{padding-bottom:10px}
.xp-menu-dialog .xp-menu h3{font-size:16px;font-family:var(--sans,Arial,sans-serif);font-weight:600}
.xp-menu-dialog .xp-menu li{font-size:13px;line-height:1.3;padding:4px 0}
.xp-menu-dialog .xp-taco-option{display:block;padding:12px}
.xp-menu-dialog .xp-taco-option h3{font-family:var(--serif,Georgia,serif);font-size:21px;margin-bottom:6px}
.xp-menu-dialog .xp-taco-option p{font-size:13px;line-height:1.4}
.xp-menu-dialog .xp-menu-footer p{font-size:12px;line-height:1.35}
}
@media(max-height:650px){.xp-menu-dialog .xp-menu{gap:10px;padding-top:16px;padding-bottom:14px}.xp-menu-dialog .xp-menu header{padding-bottom:8px}.xp-menu-dialog .xp-menu li{padding-block:3px}.xp-menu-dialog .xp-taco-option{padding:10px 12px}}


.xp-interest-button{border:1px solid #168b95;border-radius:999px;background:#20666a;color:white;font:600 14px var(--sans,Arial);padding:10px 18px;min-height:42px;cursor:pointer;margin-top:10px}.xp-interest-button[aria-pressed=true],.xp-selling-action[aria-pressed=true]{background:#d8f0ee;color:#183d3b}.xp-interest-notice{font-size:12px!important;line-height:1.3!important;margin:6px 0 0!important}.xp-interest-notice:empty{display:none}.xp-service-selection{margin:16px 0}.xp-service-selection[hidden]{display:none}.xp-service-selection p{margin:0 0 8px;font-size:14px}.xp-service-selection button{border:1px solid #70d6d6;border-radius:999px;background:transparent;color:inherit;padding:10px 14px;margin:0 8px 8px 0;cursor:pointer;font:inherit;font-size:14px}


.xp-menu-dialog .xp-interest-notice{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.xp-menu-dialog .xp-interest-button{margin-top:8px;font-size:13px;padding:8px 14px;min-height:38px}
@media(max-width:600px){.xp-menu-dialog .xp-menu{gap:8px;padding-block:14px}.xp-menu-dialog .xp-menu li{padding-block:3px}.xp-menu-dialog .xp-taco-option{padding:8px 10px}.xp-menu-dialog .xp-taco-option p{font-size:12px;line-height:1.35}.xp-menu-dialog .xp-interest-button{font-size:12px;margin-top:6px}.xp-menu-dialog .xp-menu-footer p{font-size:11px}}


/* Tronos29: renta y beneficio visibles en una pantalla. */
.xp-thrones{min-height:100svh;box-sizing:border-box;padding:28px 6vw;gap:5vw;grid-template-columns:1.05fr 1fr}
.xp-thrones img{max-height:calc(100svh - 56px);object-fit:contain}
.xp-thrones h2{font-size:clamp(32px,3.6vw,56px);line-height:1.08;margin:0 0 22px}
.xp-thrones .xp-throne-offer{border-left:4px solid #1ab4b7;padding:8px 0 8px 20px;margin:0 0 20px;line-height:1.25}
.xp-throne-offer strong{display:block;font-family:var(--sans,Arial);font-size:clamp(24px,2.8vw,40px);font-weight:800;color:#20666a}
.xp-throne-offer span{display:block;font-size:clamp(17px,1.6vw,23px);margin-top:5px}
.xp-thrones .xp-button{border:0;cursor:pointer;font:600 16px var(--sans,Arial);margin-top:16px;min-height:48px}
.xp-thrones .xp-button[aria-pressed=true]{background:#d8f0ee;color:#183d3b;outline:1px solid #20666a}
@media(max-width:1000px){
.xp-thrones{grid-template-columns:1fr;padding:20px 6vw;gap:16px;align-content:center}
.xp-thrones img{height:30svh;max-height:240px;width:100%;border-radius:12px}
.xp-thrones h2{font-size:30px;margin-bottom:14px}
.xp-thrones .xp-throne-offer{margin-bottom:12px;padding:5px 0 5px 14px}
.xp-throne-offer strong{font-size:26px}.xp-throne-offer span{font-size:17px}
.xp-throne-copy>p:not(.xp-throne-offer){font-size:15px;line-height:1.45;margin:10px 0}
.xp-thrones .xp-button{margin-top:8px;width:100%;font-size:14px;padding:12px}
}
@media(max-width:1000px){.xp-thrones{padding-bottom:84px}}

/* Invitacion30: texto aprobado y composición de una pantalla. */
#invitaciones{min-height:100svh;padding:28px 6vw;box-sizing:border-box;gap:4vw;scroll-margin-top:0;grid-template-columns:1fr 1fr}
#invitaciones h2{font-size:clamp(28px,3vw,46px);line-height:1.08;margin:0 0 18px}
#invitaciones .xp-promo-copy>p{font-size:clamp(14px,1.15vw,18px);line-height:1.45;margin:0 0 13px}
#invitaciones .xp-promo-copy .xp-invite-countdown{font-size:clamp(19px,1.7vw,26px);color:#70d6d5}
#invitaciones .xp-invite-gift{border-top:1px solid #ffffff30;padding-top:13px}
#invitaciones .xp-button{margin-top:0}
@media(max-width:700px){#invitaciones{grid-template-columns:1fr;padding:16px 22px 78px;gap:12px;align-content:center}#invitaciones .xp-video-cover{display:none}#invitaciones h2{font-size:28px;margin-bottom:14px}#invitaciones .xp-promo-copy>p{font-size:14px;line-height:1.4;margin-bottom:12px}#invitaciones .xp-promo-copy .xp-invite-countdown{font-size:20px}#invitaciones .xp-button{width:100%;min-height:46px;padding:12px 16px}}

/* Invitacion31: beneficios breves y jerarquía editorial. */
#invitaciones h2{font-size:clamp(30px,3.2vw,48px);font-weight:600;line-height:1.08;margin-bottom:20px}
#invitaciones h2 span{display:block;font-weight:400}
#invitaciones .xp-promo-copy>.xp-invite-offer{font-size:17px;line-height:1.5;color:#c1c6c7;margin-bottom:28px;max-width:440px}
#invitaciones .xp-invite-offer strong{color:#70d6d5;font-size:24px;font-weight:700}
#invitaciones .xp-invite-benefit h3{font-size:clamp(20px,1.8vw,27px);font-weight:600;line-height:1.2;margin:0 0 8px;color:#f4f3f0}
#invitaciones .xp-invite-benefit p{font-size:16px;line-height:1.45;color:#c1c6c7;margin:0;max-width:430px}
#invitaciones .xp-invite-finale{border-top:1px solid #ffffff24;margin-top:22px;padding-top:20px}
#invitaciones .xp-invite-finale h3{font-size:16px;line-height:1.4;font-weight:500;margin:0 0 8px;color:#f4f3f0}
#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:clamp(23px,2.4vw,36px);line-height:1.2;margin:0 0 22px;letter-spacing:-.025em;color:#70d6d5}
#invitaciones .xp-invite-countdown span{font-weight:400;color:#c1c6c7}
@media(max-width:700px){#invitaciones h2{font-size:30px;margin-bottom:18px}#invitaciones .xp-promo-copy>.xp-invite-offer{font-size:15px;margin-bottom:24px}#invitaciones .xp-invite-offer strong{font-size:22px}#invitaciones .xp-invite-benefit h3{font-size:22px}#invitaciones .xp-invite-benefit p{font-size:15px}#invitaciones .xp-invite-finale{margin-top:20px;padding-top:18px}#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:24px;margin-bottom:22px}}
@media(max-width:700px){#invitaciones h2{font-size:28px;margin-bottom:14px}#invitaciones .xp-promo-copy>.xp-invite-offer{margin-bottom:18px}#invitaciones .xp-invite-benefit h3{font-size:20px}#invitaciones .xp-invite-finale{margin-top:16px;padding-top:14px}#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:21px;margin-bottom:18px}}
/* Invitacion32: continuidad de ideas y cuenta regresiva secundaria. */
#invitaciones .xp-invite-finale{border-top:0;padding-top:0}
#invitaciones .xp-invite-finale h3{font-size:clamp(20px,1.8vw,27px);font-weight:600;line-height:1.25}
#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:clamp(18px,1.6vw,23px);line-height:1.3}
@media(max-width:700px){#invitaciones .xp-invite-finale h3{font-size:20px}#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:18px}}
/* Invitacion33: texto centrado dentro de su columna. */
#invitaciones .xp-promo-copy{text-align:center}
#invitaciones .xp-promo-copy>.xp-invite-offer,#invitaciones .xp-invite-benefit p{margin-left:auto;margin-right:auto}
/* Invitacion34: más aire entre bloques, conservando una pantalla. */
#invitaciones h2{margin-bottom:34px}
#invitaciones .xp-promo-copy>.xp-invite-offer{margin-bottom:42px}
#invitaciones .xp-invite-finale{margin-top:36px}
@media(max-height:650px) and (min-width:701px){#invitaciones{padding-block:18px}#invitaciones h2{margin-bottom:28px}#invitaciones .xp-promo-copy>.xp-invite-offer{margin-bottom:34px}#invitaciones .xp-invite-finale{margin-top:30px}}
@media(max-width:700px){#invitaciones h2{margin-bottom:28px}#invitaciones .xp-promo-copy>.xp-invite-offer{margin-bottom:32px}#invitaciones .xp-invite-finale{margin-top:30px}}

/* Invitacion36: un renglón adicional bajo el título. */
#invitaciones h2{margin-bottom:54px}
@media(max-height:650px) and (min-width:701px){#invitaciones h2{margin-bottom:48px}}
@media(max-width:700px){#invitaciones h2{margin-bottom:48px}}
/* Movil38: cambios exclusivos para celular; escritorio aprobado intacto. */
@media(max-width:700px){
html{scroll-padding-top:14px}
body{overflow-wrap:break-word}
main>section{scroll-margin-top:14px}
.hero{padding-bottom:86px!important;align-content:start}
.hero h1{font-size:clamp(28px,7.4vw,36px)!important;line-height:1.08!important}
.hero .hero-intro{font-size:15px;line-height:1.5}
.hero-actions{gap:10px}.hero-actions .button{min-height:48px;padding:12px 14px;font-size:14px}
.mobile-message{min-height:48px;bottom:max(12px,env(safe-area-inset-bottom));font-size:15px}
.xp-section,.section,#contact,#final{padding-inline:22px}
#experiencias{padding-block:34px 0}
.xp-clear-heading{margin-bottom:24px}.xp-clear-heading h2{font-size:30px;line-height:1.12}.xp-clear-heading>p:last-child{font-size:15px;line-height:1.5}
.xp-clear-row{min-height:calc(100svh - 74px);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:28px 0 72px}
.xp-clear-row .xp-video-cover{max-height:30svh;flex-shrink:0}
.xp-clear-main h3{font-size:26px;line-height:1.15}.xp-clear-main p,.xp-clear-benefit p{font-size:15px;line-height:1.45}
.xp-cover-copy .xp-clear-benefit{margin-top:18px;padding-left:14px}
.gallery.section{padding-block:28px 76px;gap:14px}.gallery-copy h2{font-size:28px}.gallery-grid{height:clamp(160px,26svh,240px)}
#packages .packages-heading h2{font-size:30px;line-height:1.12}#packages .packages-heading{gap:18px}
#packages .package-card{padding:24px 20px;border-radius:18px}#packages .package-includes li{line-height:1.45}
#packages .package-grid{gap:20px}#packages .package-cta{min-height:48px}
#extras{padding-block:34px 70px}#extras .xp-selling-heading h2{font-size:32px}#extras .xp-selling-heading>p:last-child{font-size:15px;line-height:1.5}
#extras .xp-selling-item{min-height:calc(100svh - 74px);box-sizing:border-box;justify-content:center;padding:26px 0 68px}
#extras .xp-service-photo img{height:clamp(150px,29svh,260px);aspect-ratio:auto;object-fit:cover}
#extras .xp-selling-item h3{font-size:28px;line-height:1.12;margin:18px 0 12px}
#extras .xp-selling-story{font-size:15px;line-height:1.45}#extras .xp-selling-benefit{font-size:14px;line-height:1.4}
#extras .xp-selling-action{margin-top:16px;min-height:48px;padding:13px 16px}
#extras .xp-selling-package{padding-block:24px 0;gap:12px}
#tronos{padding:24px 22px 84px;gap:20px}#tronos img{height:27svh;max-height:260px}#tronos h2{font-size:30px}
#invitaciones{padding:24px 22px 84px;gap:22px;min-height:100svh;align-content:center}
#invitaciones .xp-video-cover{display:block;aspect-ratio:auto;height:clamp(130px,22svh,210px);max-width:400px;justify-self:center}
#invitaciones .xp-video-cover img{object-position:center}
#invitaciones h2{font-size:28px;line-height:1.1;margin-bottom:24px}
#invitaciones .xp-promo-copy>.xp-invite-offer{font-size:15px;margin-bottom:24px;line-height:1.4}
#invitaciones .xp-invite-offer strong{font-size:22px}
#invitaciones .xp-invite-benefit h3{font-size:20px;margin-bottom:7px}
#invitaciones .xp-invite-benefit p{font-size:15px;line-height:1.4}
#invitaciones .xp-invite-finale{margin-top:24px}
#invitaciones .xp-invite-finale h3{font-size:20px;line-height:1.2}
#invitaciones .xp-invite-finale .xp-invite-countdown{font-size:18px;margin-bottom:0}
#contact{padding-block:28px 76px}.demand-status{margin-bottom:20px!important;padding-bottom:16px!important}
.demand-layout{display:grid;grid-template-columns:1fr;gap:28px!important}.demand-main h2{font-size:30px;line-height:1.12;margin-bottom:16px}.demand-main>p{font-size:15px;line-height:1.5}
.demand-actions{gap:10px!important;margin-top:20px!important}.demand-actions .button{min-height:48px;padding:12px 16px;font-size:14px}
.tour-card{padding:22px!important}.tour-card ol{gap:14px!important}.tour-card li{gap:12px!important}.tour-card li p{font-size:14px!important;line-height:1.4!important;margin-top:4px!important}.tour-proof{margin-top:18px!important;padding-top:14px!important}
#faq{padding-block:28px 76px;gap:22px}.faq-heading h2{font-size:28px;line-height:1.12;margin-bottom:14px}.faq-intro{font-size:15px;line-height:1.45}.faq-list summary{padding-block:15px!important;min-height:52px}.faq-question{font-size:16px!important;line-height:1.3}.faq-answer p{font-size:14px!important;line-height:1.45}.faq-answer{padding-bottom:14px!important}.faq-button-mobile{min-height:48px}
#location{padding:28px 22px 76px;gap:20px}.location-map{height:22svh!important;min-height:140px!important;max-height:200px}.location-card{padding:0!important}.location-card h2{font-size:28px;line-height:1.12}.location-intro{font-size:15px;line-height:1.4}.location-address{margin-top:16px!important;padding-top:16px!important}.location-address address{font-size:22px!important;line-height:1.3}.location-address>span,.location-contact-note{font-size:14px!important;line-height:1.45!important}.location-button-mobile{min-height:48px}
#final{padding-block:36px 84px}.final-layout{gap:20px}.final-layout h2{font-size:30px;line-height:1.12}.final-action>p{font-size:15px;line-height:1.5}
.xp-service-selection button{max-width:100%;text-align:left;font-size:14px;min-height:44px}
.xp-menu-dialog{max-height:calc(100dvh - 16px)}.xp-menu-dialog .xp-menu-close{min-height:44px}.xp-menu-dialog .xp-interest-button{min-height:44px}
}
@media(max-width:700px) and (max-height:700px){
.hero{padding-top:88px!important;gap:14px!important}.hero-visual{max-height:24svh!important}.hero h1{font-size:27px!important}.hero .hero-intro{font-size:14px;line-height:1.4}
.xp-clear-row{gap:14px;padding-block:22px 66px}.xp-clear-main h3{font-size:24px}
#extras .xp-service-photo img{height:25svh}#extras .xp-selling-item h3{font-size:25px;margin-top:14px}#extras .xp-selling-item{padding-block:20px 62px}
#invitaciones{gap:14px;padding-block:18px 76px}#invitaciones .xp-video-cover{height:116px}#invitaciones h2{font-size:25px;margin-bottom:18px}#invitaciones .xp-promo-copy>.xp-invite-offer{margin-bottom:18px;font-size:14px}#invitaciones .xp-invite-benefit h3{font-size:18px}#invitaciones .xp-invite-benefit p{font-size:14px}#invitaciones .xp-invite-finale{margin-top:18px}#invitaciones .xp-invite-finale h3{font-size:18px}
}

@media(max-width:700px){
.demand-layout{padding-top:0!important;gap:22px!important}.demand-main>p{margin-top:0!important}.demand-main h2{font-size:28px}.demand-status{margin-bottom:16px!important}
.tour-card{padding:18px!important}.tour-title{margin-bottom:14px!important;line-height:1.25!important;font-size:18px!important}.tour-card ol{margin:0!important;gap:8px!important;padding:0!important}.tour-card li{grid-template-columns:24px minmax(0,1fr)!important;gap:10px!important;padding:4px 0!important}.tour-card li p{margin-bottom:0!important}.tour-card li>span{font-size:14px!important}.tour-card li strong{line-height:1.25!important}.tour-proof{margin-top:12px!important;padding-top:12px!important}
.faq-answer p{padding:0!important}.faq-answer{padding:0 0 14px 26px!important}.faq-heading .eyebrow{margin-bottom:12px}.faq-intro{margin-top:12px!important}
.location-contact-note{padding:12px 0!important;margin-top:12px!important}.location-button-mobile{margin-top:0!important}.location-card .eyebrow{margin-bottom:12px}
}
@media(max-width:700px){
/* Cada paso de contacto se lee como un bloque completo. */
#contact{padding-bottom:0}.demand-main{padding-bottom:28px}.tour-card{min-height:calc(100svh - 74px);display:flex;flex-direction:column;justify-content:center;margin-bottom:0;padding:28px 18px 76px!important}.tour-card ol{display:grid;gap:12px!important}
#faq .faq-list{padding-bottom:8px}.faq-list details{border-radius:16px!important}.faq-list summary{grid-template-columns:22px minmax(0,1fr) 28px!important;gap:8px!important}.faq-answer{padding-left:30px!important}
#location .location-card{order:1}#location .location-button-mobile{order:2}#location .location-map{order:3;margin-top:10px}
#invitaciones .xp-video-cover{background:transparent}#invitaciones .xp-video-cover img{object-fit:contain;border-radius:12px}
}
@media(max-width:700px) and (max-height:700px){
.gallery.section{padding-top:22px;gap:10px}.gallery-grid{height:160px}.gallery-copy h2{font-size:26px}.gallery-copy>p:not(.eyebrow){font-size:14px;line-height:1.4}
#faq .faq-heading h2{font-size:26px}.faq-intro{font-size:14px!important}.faq-heading{margin-bottom:0!important}
#invitaciones .xp-video-cover{height:140px}
}
@media(max-width:700px){
.event-form-dialog{width:calc(100vw - 20px)!important;max-width:460px!important;max-height:calc(100dvh - 20px)!important;border-radius:18px!important;padding:0!important}
.event-form-card{padding:18px!important}.event-form-top{padding-bottom:12px!important;margin-bottom:12px!important;gap:12px!important}.event-form-top p{font-size:10px!important}.event-form-close{min-height:44px!important;padding:8px 14px!important}
.event-form-heading{margin:0 0 16px!important;padding:0!important}.event-form-heading h2{font-size:28px!important;line-height:1.1!important;margin:0 0 8px!important}.event-form-heading p{font-size:14px!important;line-height:1.4!important;margin:0!important}
.event-details-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:0!important;margin:0!important}.event-details-form label{min-width:0!important;gap:6px!important}.event-details-form label>span{font-size:10px!important;letter-spacing:.04em!important;line-height:1.3!important;min-height:26px;display:flex;align-items:end}.event-details-form input,.event-details-form select{min-width:0;width:100%;height:44px!important;min-height:44px!important;padding:8px!important;font-size:16px!important;border-radius:8px!important}.event-details-form label small{font-size:11px!important;line-height:1.3!important;margin:0!important}.event-form-option,.event-form-submit{grid-column:1/-1}.event-form-option>span{min-height:0!important}.event-form-submit{margin:0!important;padding:0!important;gap:8px!important}.event-form-submit .button{min-height:44px!important;font-size:14px!important;width:100%}.event-form-submit small{font-size:11px!important;line-height:1.3!important;margin-top:8px!important}
}
@media(max-width:700px){.event-form-heading{display:block!important;margin-bottom:10px!important}.event-form-top{margin-bottom:8px!important;padding-bottom:8px!important}.event-details-form{gap:10px!important}.event-form-card{padding:14px!important}.event-form-submit{display:block!important}}
@media(max-width:700px){.hero-visual{background-size:cover!important;border-radius:16px;overflow:hidden}.hero-kicker-mobile{padding-top:18px!important;padding-bottom:14px!important}}
@media(max-width:700px){#experiencias,#gallery,#packages,#extras,#tronos,#invitaciones,#contact,#faq,#location,#final{scroll-margin-top:0}}
/* Movil39: galería horizontal como la original, sin comprimir las fotos. */
@media(max-width:700px){
#gallery.gallery.section{min-height:100svh;height:auto;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:32px 20px 84px;overflow:hidden}
#gallery .gallery-copy{width:100%;flex:none}
#gallery .gallery-copy h2{font-size:clamp(28px,7.5vw,34px);line-height:1.12;max-width:none;margin:14px 0 20px}
#gallery .gallery-copy>p:not(.eyebrow){font-size:16px;line-height:1.5}
#gallery .gallery-copy .gallery-credit{font-size:12px;line-height:1.4;margin-top:20px}
#gallery .gallery-grid{display:flex;flex:none;width:calc(100% + 40px);height:auto;max-height:none;margin:0 -20px;padding:0 20px 6px;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;grid-template-columns:none;grid-template-rows:none}
#gallery .gallery-grid::-webkit-scrollbar{display:none}
#gallery .gallery-grid .gallery-photo,#gallery .gallery-grid .gallery-photo.tall{flex:0 0 88%;width:88%;max-width:none;height:auto;min-height:0;aspect-ratio:16/9;margin:0;grid-column:auto;grid-row:auto;scroll-snap-align:start;border-radius:18px;overflow:hidden}
#gallery .gallery-grid picture,#gallery .gallery-grid img{width:100%;height:100%;display:block;object-fit:cover;aspect-ratio:16/9}
#gallery .gallery-video-link-mobile{align-self:flex-start;min-height:46px;margin:0}
}

/* Movil 40: distribución horizontal de los paquetes de la página original. */
@media(max-width:699px){
#packages.packages{overflow:hidden}
#packages .package-grid{display:flex;align-items:flex-start;gap:14px;width:calc(100% + 40px);margin:0 -20px;padding:12px 20px 28px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:20px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--accent) transparent}
#packages .package-card{flex:0 0 calc(100% - 14px);width:calc(100% - 14px);max-width:390px;display:flex;padding:20px;border-radius:22px;scroll-snap-align:start;min-height:0;height:auto}
#packages .package-name{padding-bottom:14px}
#packages .package-name h3{font-size:30px}
#packages .package-summary{font-size:14px;line-height:1.5;margin:16px 0 18px}
#packages .package-includes{padding-bottom:20px}
#packages .package-includes>small{font-size:14px;margin-bottom:10px}
#packages .package-includes li{font-size:14px;line-height:1.45;padding-top:5px;padding-bottom:5px}
#packages .package-includes li>span{top:13px}
#packages .xp-equipment-note,#packages .xp-inherited-note,#packages .xp-dj-note{font-size:13px;line-height:1.45}
#packages .xp-package-experiences{padding:18px 0 20px}
#packages .xp-package-experiences h4{font-size:16px;margin-bottom:16px}
#packages .xp-package-experiences ul{gap:16px}
#packages .xp-package-experiences li{gap:10px}
#packages .xp-package-experiences strong{font-size:14px}
#packages .xp-package-experiences p{font-size:14px;line-height:1.45;margin-top:4px}
#packages .xp-package-footer{width:100%}
}

/* Movil 41: contador y controles de paquetes. */
.xp-package-nav{display:none}
@media(max-width:699px){
#packages .xp-package-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:-22px}
#packages .xp-package-nav>span{font-size:13px;line-height:1.4;color:#505653;max-width:160px}
#packages .xp-package-nav>div{display:flex;align-items:center;gap:8px}
#packages .xp-package-nav button{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid #168b9560;border-radius:50%;background:transparent;color:#176b70;cursor:pointer}
#packages .xp-package-nav button:disabled{opacity:.3;cursor:default}
#packages .xp-package-nav button:focus-visible{outline:2px solid #168b95;outline-offset:3px}
#packages .xp-package-nav output{min-width:36px;text-align:center;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:#203c39}
}

/* Movil42: escala y proporciones de la web original aprobada. */
@media(max-width:700px){
body:is(.venue-paraiso,.venue-sky) main .hero{padding:84px 0 0!important;gap:0!important;justify-content:flex-start;min-height:100svh;height:auto}
body:is(.venue-paraiso,.venue-sky) main .hero-kicker-mobile{width:100%;padding:26px 20px 18px!important;box-sizing:border-box}
body:is(.venue-paraiso,.venue-sky) main .hero-kicker-mobile .eyebrow{font-size:9px;padding:8px 12px}
body:is(.venue-paraiso,.venue-sky) main .hero-visual{width:calc(100% - 28px);height:auto;aspect-ratio:16/9;max-height:none!important;margin:0 14px;border-radius:22px;align-self:center}
body:is(.venue-paraiso,.venue-sky) main .hero-content{width:100%;box-sizing:border-box;padding:30px 20px 88px;flex:none}
body:is(.venue-paraiso,.venue-sky) main .hero h1{font-size:clamp(42px,11.8vw,54px)!important;line-height:.94!important;letter-spacing:-.045em}
body:is(.venue-paraiso,.venue-sky) main .hero-intro{font-size:16px;line-height:1.45;margin:24px 0 26px}
body:is(.venue-paraiso,.venue-sky) main .hero-actions{margin:0;gap:12px}
body:is(.venue-paraiso,.venue-sky) main .hero-actions .button{font-size:14px;min-height:50px;padding:12px}
#gallery .gallery-copy h2{font-size:38px;line-height:.98}
#experiencias .xp-clear-heading h2,#extras .xp-selling-heading h2{font-size:38px;line-height:1.04}
#experiencias .xp-clear-heading>p:last-child,#extras .xp-selling-heading>p:last-child{font-size:16px;line-height:1.5}
.xp-clear-row .xp-video-cover{max-height:none;aspect-ratio:16/9;width:100%;height:auto}
.xp-clear-main h3{font-size:32px;line-height:1.08}
.xp-clear-main p,.xp-clear-benefit p{font-size:16px;line-height:1.5}
#extras .xp-service-photo img{height:auto;aspect-ratio:16/9}
#extras .xp-selling-item h3{font-size:32px;line-height:1.08}
#extras .xp-selling-story{font-size:16px;line-height:1.5}
#tronos img{height:auto;max-height:none;width:100%;object-fit:contain}
#tronos h2{font-size:38px;line-height:1.05}
#invitaciones .xp-video-cover{width:100%;max-width:none;height:auto;aspect-ratio:16/9}
#invitaciones h2{font-size:34px;line-height:1.05;margin-bottom:30px}
#invitaciones .xp-invite-benefit h3,#invitaciones .xp-invite-finale h3{font-size:23px;line-height:1.2}
#contact .demand-main h2{font-size:clamp(45px,12.5vw,57px);line-height:.98}
#faq .faq-heading h2{font-size:clamp(42px,12vw,54px);line-height:.98}
#location .location-card h2{font-size:clamp(42px,12vw,54px);line-height:.98}
#final .final-layout h2{font-size:clamp(49px,13.2vw,61px);line-height:.96}
#contact,#faq,#location,#final{height:auto;min-height:100svh}
}

/* Experiencias 43: separadores con presencia y margen a ambos lados. */
#experiencias .xp-clear-list{position:relative;border-top:0}
#experiencias .xp-clear-row{position:relative;border-bottom:0}
#experiencias .xp-clear-list::before,#experiencias .xp-clear-row::after{content:"";position:absolute;left:3%;right:3%;height:2px;background:var(--accent);border-radius:2px;pointer-events:none}
#experiencias .xp-clear-list::before{top:0}
#experiencias .xp-clear-row::after{bottom:0}

/* Movil45: recuperar la tarjeta de ubicación original, con espacio interior. */
@media(max-width:700px){
#location{gap:0;padding:32px 20px 82px;height:auto;min-height:0}
body:is(.venue-paraiso,.venue-sky) main #location .location-card{order:1;padding:34px 26px 30px!important;min-width:0;min-height:0;border:1px solid rgba(32,184,184,.52);border-bottom:0;border-radius:24px 24px 0 0}
#location .location-card .eyebrow{margin:0 0 22px}
#location .location-card h2{font-size:clamp(43px,12vw,53px);line-height:.96;margin:0}
#location .location-intro{font-size:15px;line-height:1.65;margin:22px 0 0}
body:is(.venue-paraiso,.venue-sky) main #location .location-address{margin-top:28px!important;padding-top:25px!important}
body:is(.venue-paraiso,.venue-sky) main #location .location-address address{font-size:15px!important;line-height:1.55!important;margin-top:12px}
body:is(.venue-paraiso,.venue-sky) main #location .location-address>span{font-size:10px!important;line-height:1.45!important;margin-top:10px}
body:is(.venue-paraiso,.venue-sky) main #location .location-contact-note{padding:17px 16px!important;margin:19px 0 0!important;font-size:15px!important;line-height:1.6!important}
body:is(.venue-paraiso,.venue-sky) #location .location-map{order:2;margin:0;height:390px!important;min-height:390px!important;max-height:none;border:1px solid rgba(32,184,184,.52);border-radius:0 0 24px 24px}
#location .location-embed{min-height:390px}
#location .location-button-mobile{order:3;margin:22px auto 0!important}
}

/* Movil46: selector de idioma compacto en una fila. */
@media(max-width:700px){
.site-footer .footer-language{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:20px;flex-wrap:nowrap}
.site-footer .footer-language>small{margin:0;flex:none}
.site-footer .footer-language>button{margin:0;min-height:44px;display:inline-flex;align-items:center;flex:none;width:auto}
}

/* Movil47: foto de decoración completa, sin recorte. */
@media(max-width:700px){
#extras .xp-selling-item:nth-child(3) .xp-service-photo img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
}

/* Movil48: selector centrado y unido visualmente a los enlaces del pie. */
@media(max-width:700px){
.site-footer .footer-language{justify-content:center;gap:18px;margin-top:-20px}
.site-footer .footer-language>small{display:none}
.site-footer .footer-language>button{font-size:15px;position:relative}
.site-footer .footer-language>button+button::before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);height:16px;width:1px;background:#ffffff50}
}
/* Pasteles49: sección independiente; conserva la imagen completa. */
.xp-cakes{background:#f4f3f0;display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:center;min-height:100svh;box-sizing:border-box;padding-block:60px}
.xp-cakes figure{margin:0}.xp-cakes img{display:block;width:100%;height:auto;border-radius:18px}
.xp-cake-copy h2{font-family:var(--serif);font-size:clamp(38px,4vw,60px);line-height:1.04;margin:16px 0 24px}
.xp-cake-copy>p:not(.xp-kicker){font-size:18px;line-height:1.55;color:#505653}.xp-cake-delivery{border-left:2px solid var(--accent);padding-left:18px;margin-block:26px}
.xp-cake-actions{display:flex;gap:12px;flex-wrap:wrap}.xp-cake-actions .xp-button{font-size:15px;min-height:48px}.xp-cake-actions [data-service]{background:transparent;border:1px solid var(--accent);color:#173c3e}
.xp-cake-dialog{box-sizing:border-box;width:min(880px,calc(100vw - 24px));max-height:calc(100dvh - 24px);border:1px solid var(--accent);border-radius:20px;padding:24px;background:#f4f3f0;color:#17181a;overflow:auto}
.xp-cake-dialog::backdrop{background:#091515bb;backdrop-filter:blur(5px)}.xp-cake-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.xp-cake-dialog h2{font-size:28px;margin:0}.xp-cake-dialog header button,.xp-cake-tabs button{min-height:44px;padding:8px 15px;border:1px solid #20b8b870;border-radius:30px;background:transparent;color:inherit;cursor:pointer}
.xp-cake-tabs{display:flex;gap:10px;margin:16px 0}.xp-cake-tabs [aria-pressed=true]{background:#0b3439;color:white}.xp-cake-flavors{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding:0;margin:0}.xp-cake-flavors li{padding:7px 0;border-bottom:1px solid #17181a18;font-size:15px}
.xp-cake-fillings{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.xp-cake-fillings[hidden]{display:none}.xp-cake-fillings h3{font-size:17px;color:#20666a;margin:0 0 6px}.xp-cake-fillings p{font-size:15px;line-height:1.45;margin:0}
.xp-cake-dialog footer{margin-top:18px;padding-top:14px;border-top:1px solid #20b8b870}.xp-cake-dialog footer p{font-size:14px;line-height:1.4;margin:0 0 12px}.xp-cake-dialog .xp-button{min-height:44px;font-size:14px}.xp-cake-dialog button:focus-visible,.xp-cakes button:focus-visible{outline:3px solid #168b95;outline-offset:3px}
@media(max-width:700px){.xp-cakes{grid-template-columns:1fr;gap:22px;padding:32px 22px 80px;min-height:100svh;align-content:center}.xp-cake-copy h2{font-size:38px;margin:12px 0 18px}.xp-cake-copy>p:not(.xp-kicker){font-size:16px;line-height:1.5}.xp-cake-delivery{margin-block:20px}.xp-cake-actions{display:grid}.xp-cake-dialog{padding:16px}.xp-cake-dialog h2{font-size:23px}.xp-cake-dialog>p{font-size:14px;margin:10px 0}.xp-cake-tabs{margin:10px 0}.xp-cake-flavors{gap:0 14px}.xp-cake-flavors li{font-size:13px;padding:5px 0;line-height:1.3}.xp-cake-fillings{gap:12px}.xp-cake-fillings h3{font-size:14px}.xp-cake-fillings p{font-size:13px;line-height:1.35}.xp-cake-dialog footer{margin-top:12px;padding-top:10px}}
.xp-cake-dialog footer{display:block;min-height:0;padding:12px 0 0;gap:0;text-align:left}.xp-cake-dialog footer p{margin:0 0 10px}.xp-cake-dialog footer .xp-button{width:100%}
@media(max-width:700px){.xp-cake-dialog footer{padding:10px 0 0}}
.xp-cake-pager{display:flex;align-items:center;justify-content:space-between;margin-top:12px;gap:10px}.xp-cake-pager[hidden]{display:none}.xp-cake-pager button{min-height:44px;border:0;background:transparent;color:#20666a;font-size:14px}.xp-cake-pager button:disabled{opacity:.35}.xp-cake-pager span{font-size:13px}.xp-cake-flavors li[hidden],.xp-cake-fillings>div[hidden]{display:none}
@media(max-width:700px){.xp-cake-fillings{grid-template-columns:1fr}.xp-cake-dialog footer .xp-button{padding:10px 12px}.xp-cake-dialog footer p{font-size:13px}.xp-cake-dialog>p{line-height:1.35}}

/* Pasteles50: catálogo adaptado al alto disponible, sin recortar información. */
#cake-menu{margin:auto;max-height:calc(100dvh - 24px)}
#cake-menu>p{font-size:15px;line-height:1.4;margin:12px 0}
#cake-menu .xp-cake-flavors li{line-height:1.35;padding:6px 0}
#cake-menu footer{padding:12px 0 0;margin-top:14px}
#cake-menu footer .xp-button{padding:10px 16px;line-height:1.4}
@media(min-width:701px){#cake-menu{width:min(1040px,calc(100vw - 40px));padding:22px}#cake-menu .xp-cake-flavors{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}#cake-menu .xp-cake-fillings{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px}#cake-menu footer{display:flex;align-items:center;gap:24px}#cake-menu footer p{flex:1;margin:0}#cake-menu footer .xp-button{width:auto;flex:none}}

/* Pasteles51: acciones compactas y espacio reservado para el botón flotante. */
@media(max-width:700px){
#pasteles{padding-top:24px;padding-bottom:calc(100px + env(safe-area-inset-bottom));gap:18px;min-height:100svh;align-content:start}
#pasteles .xp-kicker{margin:0 0 10px}
#pasteles .xp-cake-copy h2{margin:0 0 14px}
#pasteles .xp-cake-copy>p:not(.xp-kicker){margin-top:0}
#pasteles .xp-cake-delivery{margin-bottom:18px;margin-top:18px!important}
#pasteles .xp-cake-actions{grid-template-columns:1fr 1fr;gap:10px}
#pasteles .xp-cake-actions .xp-button{padding:12px 10px;font-size:14px;line-height:1.35;min-height:52px;white-space:normal;text-align:center}
#pasteles .xp-cake-actions{scroll-margin-bottom:calc(100px + env(safe-area-inset-bottom))}
}



/* Pasteles52: conservar el botón flotante y reservar su espacio. */
@media(max-width:700px){
#pasteles{gap:14px;padding-top:20px;padding-bottom:100px;scroll-margin-top:0}
#pasteles .xp-cake-copy h2{margin-bottom:12px}
#pasteles .xp-cake-copy>p:not(.xp-kicker){font-size:15px;line-height:1.4;margin-bottom:14px}
#pasteles .xp-cake-delivery{margin-top:14px!important;margin-bottom:14px!important}
#pasteles .xp-cake-actions .xp-button{margin:0;padding:10px 8px;min-height:52px}
}

/* Pasteles53: catálogo completo en una sola vista. */
#cake-menu{width:min(1100px,calc(100vw - 24px));padding:20px}
#cake-menu .xp-cake-catalog{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}
#cake-menu .xp-cake-catalog>div>h3{font-size:18px;color:#155e62;background:#20b8b818;padding:8px 10px;margin:0 0 12px;border-radius:6px}
#cake-menu .xp-cake-flavors{grid-template-columns:1fr 1fr;gap:0 14px}
#cake-menu .xp-cake-flavors li{font-size:14px;padding:4px 0;line-height:1.3}
#cake-menu .xp-cake-fillings{grid-template-columns:1fr 1fr;gap:14px 18px}
#cake-menu .xp-cake-fillings h3{font-size:15px;margin:0 0 4px}
#cake-menu .xp-cake-fillings p{font-size:14px;line-height:1.35}
#cake-menu>p{margin:8px 0 14px}
@media(max-width:700px){
#cake-menu{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px;border-radius:16px}
#cake-menu header h2{font-size:21px}#cake-menu header button{padding:6px 10px;min-height:40px}
#cake-menu>p{font-size:12px;line-height:1.3;margin:6px 0 10px}
#cake-menu .xp-cake-catalog{grid-template-columns:.9fr 1.1fr;gap:12px}
#cake-menu .xp-cake-catalog>div>h3{font-size:13px;padding:6px;margin-bottom:8px}
#cake-menu .xp-cake-flavors{grid-template-columns:1fr;gap:0}
#cake-menu .xp-cake-flavors li{font-size:12px;line-height:1.25;padding:3px 0}
#cake-menu .xp-cake-fillings{grid-template-columns:1fr;gap:8px}
#cake-menu .xp-cake-fillings h3{font-size:12px;line-height:1.2;margin-bottom:3px}
#cake-menu .xp-cake-fillings p{font-size:12px;line-height:1.25}
#cake-menu footer{padding-top:8px;margin-top:10px}#cake-menu footer p{font-size:12px;line-height:1.25;margin-bottom:8px}
#cake-menu footer .xp-button{font-size:13px;min-height:40px;padding:8px}
}
@media(max-width:700px) and (max-height:700px){
#cake-menu{width:calc(100vw - 8px);padding:8px;max-height:calc(100dvh - 8px)}
#cake-menu>p{display:none}
#cake-menu header{margin-bottom:8px}
#cake-menu .xp-cake-catalog{gap:8px;grid-template-columns:.85fr 1.15fr}
#cake-menu .xp-cake-flavors li{padding:2px 0;font-size:11.5px;line-height:1.2}
#cake-menu .xp-cake-fillings{gap:6px}
#cake-menu .xp-cake-fillings p{font-size:11.5px;line-height:1.2}
#cake-menu .xp-cake-fillings h3{font-size:11.5px;line-height:1.2}
#cake-menu footer p{font-size:11.5px}
}
@media(min-width:701px) and (max-height:650px){#cake-menu{padding:14px}#cake-menu>p{display:none}#cake-menu header{margin-bottom:10px}#cake-menu .xp-cake-catalog>div>h3{margin-bottom:8px;padding:6px 10px}#cake-menu .xp-cake-flavors li{padding:3px 0}#cake-menu footer{margin-top:10px;padding-top:10px}}

/* Pasteles54: imágenes originales del propietario según el idioma. */
#cake-menu.xp-cake-image-dialog{width:fit-content;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:8px;overflow:visible;border-radius:12px;background:#f9f3ea}
#cake-menu .xp-cake-image-bar{display:flex;justify-content:flex-end;margin-bottom:6px}
#cake-menu .xp-cake-image-bar button{min-height:40px;padding:6px 16px;border:1px solid #168b9560;border-radius:24px;background:transparent;color:#173c3e;font-size:14px}
#cake-menu .xp-cake-catalog-image{display:block;width:auto;height:auto;max-width:calc(100vw - 34px);max-height:calc(100dvh - 126px);object-fit:contain;margin:auto;border-radius:4px}
#cake-menu.xp-cake-image-dialog>.xp-button{display:block;width:100%;min-height:44px;padding:8px 12px;margin:8px 0 0;font-size:14px;line-height:1.3}

/* Tronos56: fotografía completa y composición independiente de reglas generales. */
#tronos.xp-thrones{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;align-content:center;gap:clamp(28px,4vw,72px);padding:48px 5vw;min-height:85svh}
#tronos.xp-thrones figure{display:block;width:100%;max-width:none;margin:0;min-width:0}
#tronos.xp-thrones figure img{display:block;width:100%;height:auto;max-width:none;max-height:none;aspect-ratio:16/9;object-fit:contain;border-radius:18px}
#tronos .xp-throne-copy{min-width:0}
#tronos .xp-button{width:auto;max-width:100%;padding:16px 24px}
@media(max-width:760px){
#tronos.xp-thrones{grid-template-columns:minmax(0,1fr);min-height:100svh;padding:28px 5vw 100px;gap:26px;align-content:center}
#tronos.xp-thrones figure img{border-radius:14px}
#tronos h2{font-size:clamp(30px,8vw,40px);margin-bottom:20px}
#tronos .xp-throne-offer{margin-bottom:18px}
#tronos .xp-throne-copy>p:not(.xp-throne-offer){font-size:16px;line-height:1.5}
#tronos .xp-button{width:100%;margin-top:18px;min-height:48px}
}

/* Invitaciones57: video vertical completo y carga al pulsar. */
#invitaciones.xp-promo{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(32px,6vw,100px);padding:44px 7vw;min-height:100svh}
#invitaciones .xp-invite-media{position:relative;margin:0;justify-self:center;width:min(100%,390px,calc(82svh * var(--invite-ratio,1080/1742)));aspect-ratio:var(--invite-ratio,1080/1742);border-radius:18px;overflow:hidden;background:#111;box-shadow:0 16px 48px #0005}
#invitaciones video{display:block;width:100%;height:100%;object-fit:contain}
#invitaciones .xp-invite-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:0;background:#0002;color:white;cursor:pointer;font:600 16px var(--sans,Arial)}
#invitaciones .xp-invite-play svg{width:68px;height:68px;padding:18px;box-sizing:border-box;border-radius:50%;background:#0c363ceF;box-shadow:0 4px 20px #0005}
#invitaciones .xp-invite-play span{background:#0c363cf2;padding:10px 18px;border-radius:24px}
#invitaciones .xp-invite-play[hidden]{display:none}
#invitaciones .xp-invite-play:focus-visible{outline:3px solid #70d6d5;outline-offset:-5px}
@media(max-width:760px){
#invitaciones.xp-promo{grid-template-columns:1fr;padding:36px 6vw 100px;gap:28px;align-content:start}
#invitaciones .xp-promo-copy{display:contents}
#invitaciones h2{order:0;text-align:center;margin:0;font-size:32px;line-height:1.1}
#invitaciones .xp-invite-media{order:1;width:min(100%,340px,calc((100svh - 290px) * var(--invite-ratio,1080/1742)))}
#invitaciones .xp-promo-copy>.xp-invite-offer{order:2;margin:0 auto;text-align:center}
#invitaciones .xp-invite-benefit{order:3;text-align:center}
#invitaciones .xp-invite-finale{order:4;text-align:center;margin:0}
}

/* Invitaciones60: controles fuera de los rostros de las portadas aprobadas. */
body.venue-sky #invitaciones .xp-invite-play{justify-content:flex-start;padding-top:16%;box-sizing:border-box}
@media(max-width:760px){
#invitaciones .xp-invite-play svg{width:52px;height:52px;padding:14px}
#invitaciones .xp-invite-play{gap:8px}
#invitaciones .xp-invite-play span{font-size:14px;padding:8px 14px}
}

/* Invitaciones61: Sky, controles en la franja entre el codo y Sophia. */
body.venue-sky #invitaciones .xp-invite-play{padding:0;justify-content:center;flex-direction:row;gap:8px;background:transparent;inset:65% 0 auto;height:9%}
body.venue-sky #invitaciones .xp-invite-play svg{width:38px;height:38px;padding:10px;flex-shrink:0}
body.venue-sky #invitaciones .xp-invite-play span{font-size:14px;padding:9px 12px}
@media(max-width:760px){
body.venue-sky #invitaciones .xp-invite-play{gap:6px}
body.venue-sky #invitaciones .xp-invite-play svg{width:32px;height:32px;padding:8px}
body.venue-sky #invitaciones .xp-invite-play span{font-size:12px;padding:8px 10px}
}

/* Invitaciones62: conservar etiqueta; mover únicamente el círculo sobre el hombro. */
body.venue-sky #invitaciones .xp-invite-play::before{content:"";width:38px;height:38px;flex-shrink:0}
body.venue-sky #invitaciones .xp-invite-play svg{position:absolute;left:calc(50% + 23px);top:-44px;transform:translateX(-50%)}
@media(max-width:760px){
body.venue-sky #invitaciones .xp-invite-play::before{width:32px;height:32px}
body.venue-sky #invitaciones .xp-invite-play svg{left:calc(50% + 19px);top:-34px}
}

/* Invitaciones63: tamaños iguales y controles centrados en ambas portadas. */
body #invitaciones .xp-invite-play{padding:0;justify-content:center;flex-direction:row;gap:0;background:transparent;inset:65% 0 auto;height:9%;box-sizing:border-box}
body #invitaciones .xp-invite-play::before{display:none}
body #invitaciones .xp-invite-play svg{position:absolute;left:50%;top:-44px;transform:translateX(-50%);width:38px;height:38px;padding:10px;flex-shrink:0}
body #invitaciones .xp-invite-play span{font-size:14px;padding:9px 12px}
body.venue-sky #invitaciones .xp-invite-play{gap:0}
body.venue-sky #invitaciones .xp-invite-play svg{left:50%}
@media(max-width:760px){
body #invitaciones .xp-invite-play svg{width:32px;height:32px;padding:8px;top:-34px}
body #invitaciones .xp-invite-play span{font-size:12px;padding:8px 10px}
body.venue-sky #invitaciones .xp-invite-play svg{left:50%}
}

/* Invitaciones64: portada completa interactiva antes de reproducir. */
#invitaciones .xp-invite-media:has(.xp-invite-play:not([hidden])){cursor:pointer}

/* Invitaciones66: una escala para el cuerpo, blanco y dos acentos turquesa. */
#invitaciones .xp-promo-copy{--invite-copy-size:20px}
#invitaciones .xp-promo-copy>.xp-invite-offer,
#invitaciones .xp-invite-benefit h3,
#invitaciones .xp-invite-benefit p,
#invitaciones .xp-invite-finale h3,
#invitaciones .xp-invite-finale .xp-invite-countdown,
#invitaciones .xp-invite-offer strong,
#invitaciones .xp-invite-countdown span,
#invitaciones .xp-invite-countdown strong{font-size:var(--invite-copy-size);line-height:1.5;color:#f5f5f3;font-weight:400}
#invitaciones .xp-invite-offer strong,
#invitaciones .xp-invite-countdown strong{color:#70d6d5;font-weight:700}
@media(max-width:760px){#invitaciones .xp-promo-copy{--invite-copy-size:18px}}

/* Invitaciones67: solo el título principal centrado. */
#invitaciones .xp-promo-copy h2{text-align:center}
#invitaciones .xp-promo-copy>.xp-invite-offer,
#invitaciones .xp-invite-benefit,
#invitaciones .xp-invite-benefit h3,
#invitaciones .xp-invite-benefit p,
#invitaciones .xp-invite-finale,
#invitaciones .xp-invite-finale h3,
#invitaciones .xp-invite-finale .xp-invite-countdown{text-align:left}
#invitaciones .xp-promo-copy>.xp-invite-offer,
#invitaciones .xp-invite-benefit p{margin-left:0;margin-right:0}

/* Invitaciones68: cuerpo centrado bajo el título, con lectura a la izquierda. */
@media(min-width:761px){
#invitaciones .xp-promo-copy>.xp-invite-offer,
#invitaciones .xp-invite-benefit,
#invitaciones .xp-invite-finale{width:min(100%,440px);margin-left:auto;margin-right:auto}
}

/* Bienvenida69: encuadre horizontal completo, inicio manual y portada clicable. */
#experiencias .xp-welcome-media{position:relative;aspect-ratio:1890/1080;background:#101412;max-height:none;height:auto}
.xp-welcome-media video{display:block;width:100%;height:100%;object-fit:contain}
.xp-welcome-media:has(button:not([hidden])){cursor:pointer}
.xp-welcome-play{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;border:0;padding:0;background:transparent;color:#fff;cursor:pointer;white-space:nowrap}
.xp-welcome-play svg{width:38px;height:38px;padding:10px;box-sizing:border-box;border-radius:50%;background:#0c363cf2}
.xp-welcome-play span{font:600 14px var(--sans,Arial);padding:9px 12px;border-radius:24px;background:#0c363cf2}
.xp-welcome-play[hidden]{display:none}
.xp-welcome-play:focus-visible{outline:3px solid #70d6d5;outline-offset:4px}
@media(max-width:760px){.xp-welcome-play svg{width:32px;height:32px;padding:8px}.xp-welcome-play span{font-size:12px;padding:8px 10px}}
.xp-welcome-play{left:auto;right:2%;transform:none;bottom:3%}

/* Bienvenida70: botón único bajo la portada solo en computadora. */
.xp-welcome-desktop-label{display:none}
@media(min-width:1001px){
#experiencias .xp-welcome-media{overflow:visible;background:transparent;margin-bottom:76px}
.xp-welcome-media video{border-radius:12px;background:#101412}
.xp-welcome-play{left:50%;right:auto;bottom:-66px;transform:translateX(-50%);gap:10px;padding:12px 22px;border-radius:28px;background:#20b8b8;color:#082f35;min-height:48px}
.xp-welcome-play svg{width:22px;height:22px;padding:0;background:transparent;border-radius:0}
.xp-welcome-play .xp-welcome-mobile-label{display:none}
.xp-welcome-play .xp-welcome-desktop-label{display:inline;font-size:16px;padding:0;background:transparent;color:inherit}
}

/* Bienvenida71: botón visible bajo el video también en celular y tablet. */
@media(max-width:1000px){
#experiencias .xp-welcome-media{overflow:visible;background:transparent;margin-bottom:64px}
.xp-welcome-media video{border-radius:12px;background:#101412}
.xp-welcome-play{left:50%;right:auto;bottom:-60px;transform:translateX(-50%);gap:10px;padding:12px 20px;border-radius:28px;background:#20b8b8;color:#082f35;min-height:48px}
.xp-welcome-play svg{width:22px;height:22px;padding:0;background:transparent;border-radius:0}
.xp-welcome-play .xp-welcome-mobile-label{display:none}
.xp-welcome-play .xp-welcome-desktop-label{display:inline;font-size:16px;padding:0;background:transparent;color:inherit}
}

/* Fotos72: imagen aprobada por servicio y salon, encuadre completo. */
#experiencias .xp-clear-row .xp-service-still{aspect-ratio:3/2;height:auto;max-height:none}
#experiencias .xp-clear-row .xp-service-still img{width:100%;height:100%;object-fit:contain}


/* 80: servicio independiente; se incorporarán las fotos reales del propietario. */
#brincabrinca{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(24px,5vw,72px);align-items:center;min-height:0;padding-block:56px;color:#000;background:#f5f4f0}
#brincabrinca h2{font-family:var(--serif);font-size:clamp(30px,3.4vw,48px);line-height:1.12;margin:0 0 18px}
#brincabrinca p{font-size:18px;line-height:1.6;margin:0;color:#000}
#brincabrinca .xp-bounce-details{border-left:2px solid #20b8b8;padding-left:24px}
@media(max-width:760px){#brincabrinca{grid-template-columns:1fr;padding-block:36px;gap:24px}#brincabrinca p{font-size:16px}}

/* 77: subtextos de renta por horas con contraste negro. */
#packages .hourly-detailed :is(p,small),
#packages .hourly-detailed .hourly-rate>span{color:#000}

/* 74: notas de precios legibles en las tarjetas claras. */
#packages .package-card:not(.anchor) .price small,
#packages .package-card:not(.anchor) .package-deposit{color:#000}

/* 73: recuperar el bloque de precios original, también en pantallas intermedias. */
#packages .xp-package-footer{display:block;border:0;padding:0}
#packages .package-price-block{min-height:146px}
@media(max-width:560px){#packages .package-price-block{min-height:118px}}
/* 81: fotos reales por salón, completas y con proporción natural. */
#brincabrinca{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding-block:64px;scroll-margin-top:24px}
#brincabrinca figure{margin:0;min-width:0}
#brincabrinca img{display:block;width:100%;height:auto;object-fit:contain;border-radius:18px}
#brincabrinca .xp-bounce-copy{min-width:0}
#brincabrinca .xp-bounce-details{margin-block:28px}
#brincabrinca .xp-bounce-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin-top:8px}
#brincabrinca .xp-bounce-price strong{font-size:clamp(40px,4vw,56px);line-height:1.1;color:#176b70}
#brincabrinca .xp-bounce-saving{font-weight:700;margin-top:8px;color:#176b70}
#brincabrinca .xp-bounce-separate{font-size:15px}
#brincabrinca .xp-button{margin-top:24px;min-height:48px;white-space:normal;text-align:center}
@media(max-width:760px){#brincabrinca{grid-template-columns:1fr;gap:26px;padding-block:36px 100px}#brincabrinca .xp-bounce-details{margin-block:22px}#brincabrinca .xp-button{width:100%}}
#brincabrinca .xp-button{border:1px solid #20b8b8;border-radius:8px;font:600 16px/1.4 var(--sans);padding:14px 22px;cursor:pointer}
/* 82: Sky con la misma altura visual que la foto horizontal de Paraíso. */
@media(min-width:761px){
  .venue-sky #brincabrinca figure{aspect-ratio:1567/1232;display:flex;align-items:center;justify-content:center}
  .venue-sky #brincabrinca img{width:auto;height:100%;max-width:100%;max-height:100%;aspect-ratio:1364/1297}
}
/* 83: mayor presencia del precio regular tachado. */
#brincabrinca .xp-bounce-regular{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px}
#brincabrinca .xp-bounce-regular s{font-size:clamp(40px,4vw,56px);font-weight:700;line-height:1.1;text-decoration-thickness:2px}
#brincabrinca .xp-bounce-price strong{font-size:clamp(28px,2.6vw,36px)}
/* 86: fecha exacta como requisito principal del primer paso. */
#contact .tour-card .xp-exact-date{color:#000}
#contact .tour-card .xp-exact-date strong{color:#000;font-size:inherit;font-weight:700}
/* 88: texto negro y jerarquía discreta en los pasos de visita. */
#contact .tour-card .tour-title,
#contact .tour-card ol li,
#contact .tour-card ol li :is(p,strong,span){color:#000}
#contact .tour-card ol li p{font-size:14px!important}
#contact .tour-card ol li>div>strong{font-size:16px;font-weight:700}
#contact .tour-card .tour-proof-copy :is(strong,small){color:#000}
/* 89: subtextos de preguntas frecuentes en negro regular. */
#faq .faq-intro,#faq .faq-answer p{color:#000;font-weight:400}
/* 90: textos de ubicación en negro, conservando su tipografía. */
#location .location-card :is(.eyebrow,.location-intro),
#location .location-address :is(small,address,span,p){color:#000}
/* 91: horario y citas legibles, con peso regular. */
body:is(.venue-paraiso,.venue-sky) main #location .location-address>span{font-size:15px!important;line-height:1.5!important;font-weight:400}
/* 92: información verificada y experiencias reales en negro regular. */
.trust-strip .rating>small,.trust-strip .trust-side-copy>small{color:#000;font-weight:400}
/* 93: respuesta discreta y consistente en todos los botones. */
/* La invitación ilumina sus controles visibles, no su área transparente. */
#invitaciones .xp-invite-play:hover{box-shadow:none;filter:none}
#invitaciones .xp-invite-media{transition:transform .25s ease}
#invitaciones .xp-invite-play :is(svg,span){transition:box-shadow .25s ease,filter .25s ease}
@media(hover:hover) and (pointer:fine){
  #invitaciones .xp-invite-media:has(.xp-invite-play:not([hidden])):hover{transform:scale(1.025)}
  #invitaciones .xp-invite-media:hover .xp-invite-play:not([hidden]) :is(svg,span){filter:brightness(1.18);box-shadow:0 0 18px 5px rgba(71,218,216,.45)}
}
@media(prefers-reduced-motion:reduce){
  #invitaciones .xp-invite-media,#invitaciones .xp-invite-play :is(svg,span){transition:none!important}
  #invitaciones .xp-invite-media:hover{transform:none!important}
}
:is(button,a.button,a.xp-button,[role="button"],summary){cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){
  :is(button,a.button,a.xp-button,[role="button"],summary):not(:disabled):not([aria-disabled="true"]):hover{filter:brightness(1.07);box-shadow:0 0 0 2px rgba(32,184,184,.38),0 5px 16px rgba(32,184,184,.2)}
}
:is(button,a.button,a.xp-button,[role="button"],summary):focus-visible{outline:2px solid #168b95;outline-offset:4px}
@media(prefers-reduced-motion:reduce){
  :is(button,a.button,a.xp-button,[role="button"],summary){transition:none!important}
}
