:root{--sans:Arial,"Helvetica Neue",sans-serif;--display:Arial,"Helvetica Neue",sans-serif}
.theme-sky{--accent:#20b8b8;--deep:#082f35}.theme-paraiso{--accent:#1aa087;--deep:#173a34}
html,body{overflow-x:hidden}body{background:#f4f3f0}
.site-header{position:absolute;top:18px;left:clamp(18px,2.4vw,38px);right:clamp(18px,2.4vw,38px);height:64px;background:rgba(9,14,14,.56);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:20px;z-index:30;padding:0 18px 0 12px;backdrop-filter:blur(22px) saturate(150%);box-shadow:0 12px 38px rgba(0,0,0,.18)}
.site-header::after{display:none}
.brand{display:flex;align-items:center;gap:15px;color:#fff;font-size:11px;letter-spacing:.14em;text-decoration:none}.brand-image{display:block;width:112px;height:auto;border-radius:8px}.brand-name{font-size:13px;font-weight:800;line-height:1.15;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap}.footer-brand .brand-image{width:180px}
.site-header nav{gap:36px}.site-header nav a{color:#fff;font-size:12px;font-weight:600;position:relative;transition:opacity .25s}.site-header nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:1px;background:var(--accent);transition:right .35s cubic-bezier(.2,.8,.2,1)}.site-header nav a:hover::after{right:0}
.language button{color:rgba(255,255,255,.62);transition:color .25s}.language button.active{color:#fff}.button-small{border-radius:14px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff;min-height:42px;padding:0 20px;backdrop-filter:blur(10px)}.button-small:hover{background:#fff;color:#111;filter:none}
.hero{min-height:100svh;align-items:stretch;background:#090909}
.hero-visual{background-image:url('../assets/unsplash-jonathan-borba-venue.avif');background-size:cover;background-position:center;transform:translate(var(--shift-x,0),var(--shift-y,0)) scale(1.035);animation:hero-arrive 1.4s cubic-bezier(.2,.8,.2,1) both;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
:is(.venue-paraiso,.venue-sky) .hero-visual{background-color:#090909;background-image:url('../assets/paraiso/hero-main.jpeg?v=edited1');background-size:contain;background-position:center;background-repeat:no-repeat;filter:none;transform:none;animation:none}
:is(.venue-paraiso,.venue-sky) .scroll-cue{display:none}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.79) 0%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.02) 74%),linear-gradient(0deg,rgba(0,0,0,.48) 0%,transparent 48%),linear-gradient(180deg,rgba(0,0,0,.28),transparent 24%)}
.hero-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(350px circle at var(--pointer-x,-500px) var(--pointer-y,-500px),rgba(49,230,220,.18),transparent 65%);mix-blend-mode:screen}
.hero-content{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;max-width:none;width:100%;padding:150px clamp(22px,5.2vw,84px) clamp(48px,6vw,88px)}
.hero-kicker-mobile{display:none}
.hero .eyebrow{display:inline-flex;align-items:center;gap:10px;color:#fff;margin-bottom:22px;font-size:10px;letter-spacing:.18em;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(0,0,0,.2);backdrop-filter:blur(12px)}.hero .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.hero h1{font-family:var(--display);font-weight:700;letter-spacing:-.055em;line-height:.92;font-size:clamp(54px,6.7vw,108px);max-width:900px;text-wrap:balance}
.hero-intro{font-size:clamp(16px,1.35vw,20px);line-height:1.45;max-width:610px;margin:28px 0 34px;color:rgba(255,255,255,.82)}
.hero-actions{gap:12px}.hero .button{width:auto;min-height:58px;background:#fff;color:#111;border:1px solid var(--accent);border-radius:999px;padding:4px 30px;overflow:hidden}.hero .button span{position:relative;z-index:2}.hero .button:hover{background:#fff;filter:none;transform:translateY(-3px);box-shadow:0 16px 42px rgba(0,0,0,.28)}.hero .hero-secondary{background:rgba(8,14,14,.28);color:#fff;border-color:var(--accent);backdrop-filter:blur(14px)}.hero .hero-secondary:hover{background:rgba(8,14,14,.62);color:#fff}
.hero .text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:700}.experience-orbit{position:relative;width:36px;height:36px;border:1px solid rgba(255,255,255,.48);border-radius:50%;transition:border-color .25s,transform .35s}.experience-orbit i{display:block;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.hero .text-link:hover .experience-orbit{border-color:var(--accent);transform:scale(1.1)}.hero .text-link:hover .experience-orbit i{animation:orbit-pulse .7s ease-in-out both}@keyframes orbit-pulse{50%{transform:scale(1.8);opacity:.55}}
.hero-note{position:absolute;right:clamp(22px,4.2vw,68px);bottom:clamp(48px,6vw,88px);color:#fff;display:flex;gap:14px;align-items:flex-start}.hero-note>span{font-size:11px;padding-top:2px}.hero-note p{font-size:9px;line-height:1.45;letter-spacing:.16em;margin:0;color:rgba(255,255,255,.68)}
.scroll-cue{position:absolute;right:clamp(22px,4.2vw,68px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;color:#fff}.scroll-cue i{width:1px;height:64px;background:linear-gradient(var(--accent) 50%,rgba(255,255,255,.25) 50%);background-size:100% 200%;animation:scroll-line 2s ease-in-out infinite}.scroll-cue span{font-size:8px;letter-spacing:.22em;writing-mode:vertical-rl}@keyframes scroll-line{0%{background-position:0 100%}100%{background-position:0 -100%}}
.trust-strip{min-height:132px;background:#f4f3f0;display:grid;grid-template-columns:1.3fr auto auto;align-items:center;gap:48px}.trust-lead{display:flex;align-items:center;gap:18px}.trust-lead p{margin:0}.trust-pulse{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(32,184,184,.12)}.trust-side{display:flex;flex-direction:column;min-width:150px;padding-left:28px;border-left:1px solid var(--line)}.trust-side small{font-size:9px;letter-spacing:.18em;color:#777}.trust-side strong{font-size:13px;margin-top:4px}.experience{position:relative}.experience .section-heading{display:grid;grid-template-columns:.42fr 1.58fr;gap:40px;max-width:none;align-items:start}.experience .section-heading .eyebrow{margin-top:12px}.experience .section-heading h2{max-width:880px}.experience .feature-grid{border:0;gap:14px}.experience .feature-grid article{position:relative;overflow:hidden;min-height:310px;padding:34px;border:1px solid rgba(32,184,184,.48);border-radius:24px;background:#fff;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.experience .feature-grid article+article{border-left:1px solid rgba(32,184,184,.48);padding-left:34px}.experience .feature-grid article::after{content:"";position:absolute;left:34px;right:calc(100% - 34px);bottom:0;height:4px;background:var(--accent);transition:right .45s cubic-bezier(.2,.8,.2,1)}.experience .feature-grid article:hover{transform:translateY(-7px);box-shadow:0 20px 55px rgba(15,38,36,.11)}.experience .feature-grid article:hover::after{right:34px}.experience .feature-number{display:block;margin-bottom:58px;font-size:13px}.experience .feature-grid h3{font-size:22px;max-width:270px}.experience .feature-grid p{max-width:330px}
.section .eyebrow,.gallery .eyebrow,.packages .eyebrow,.faq .eyebrow,.location .eyebrow{color:var(--ink)}
.feature-number,.package-index{color:var(--ink)}
.package-card.anchor .package-index{color:#fff}
.demand .eyebrow{color:#fff}
.package-card:not(.anchor){border:1px solid rgba(32,184,184,.5)}.button.light{border-color:var(--accent)}.button.outline{border-color:var(--accent)}
.button,.mobile-message{position:relative;isolation:isolate;overflow:hidden}.button::before,.mobile-message::before{content:"";position:absolute;z-index:3;pointer-events:none;top:-85%;left:-60%;width:34%;height:270%;background:linear-gradient(90deg,transparent,rgba(39,187,184,.78),rgba(255,255,255,.92),transparent);transform:rotate(18deg) translateX(-230%);filter:blur(2px)}.button:hover,.mobile-message:hover{animation:button-soft-glow .9s ease-out}.button:hover::before,.mobile-message:hover::before,.button.is-shining::before,.mobile-message.is-shining::before{animation:button-light-pass .9s cubic-bezier(.2,.7,.2,1)}.button.is-shining,.mobile-message.is-shining{animation:button-soft-glow .9s ease-out}@keyframes button-light-pass{from{transform:rotate(18deg) translateX(-230%)}to{transform:rotate(18deg) translateX(760%)}}@keyframes button-soft-glow{0%,100%{box-shadow:0 12px 38px rgba(0,0,0,.22),0 0 0 0 rgba(39,187,184,0)}45%{box-shadow:0 12px 38px rgba(0,0,0,.28),0 0 34px 7px rgba(39,187,184,.38)}}
.mobile-message{position:fixed}
@keyframes hero-arrive{from{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.hero-visual,.scroll-cue i,.button:hover,.button:hover::before,.mobile-message:hover,.mobile-message:hover::before,.button.is-shining,.button.is-shining::before,.mobile-message.is-shining,.mobile-message.is-shining::before{animation:none}}
@media(max-width:900px){.site-header{height:60px;top:12px}.hero-content{padding:110px 24px 54px}.hero-note,.scroll-cue{display:none}.trust-strip{grid-template-columns:1fr auto}.trust-side{display:none}.experience .section-heading{grid-template-columns:1fr}.experience .feature-grid{gap:12px}.experience .feature-grid article{min-height:0}}
@media(max-width:560px){body{padding-bottom:66px}.site-header{left:10px;right:10px;padding:0 14px 0 8px;border-radius:18px}.site-header .brand-image{width:82px;border-radius:6px}.hero{min-height:100svh}.hero-visual{background-position:62% center}:is(.venue-paraiso,.venue-sky) .hero-visual{background-position:47% center}.hero-overlay{background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.48) 55%,rgba(0,0,0,.2) 100%)}.hero-content{justify-content:flex-end;padding:110px 20px 88px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(46px,13vw,60px);line-height:.94}.hero-intro{font-size:16px;margin:22px 0 28px;max-width:340px}.hero-actions{width:100%;gap:20px}.hero .button{width:100%;min-height:58px}.hero .text-link{width:100%;justify-content:space-between}.mobile-message{background:var(--accent);color:#061a1b;border-radius:999px;box-shadow:0 12px 32px rgba(0,0,0,.28)}.trust-strip{display:flex;align-items:flex-start;padding:26px 20px;gap:22px}.trust-lead p{font-size:16px}.trust-pulse{flex-basis:8px;width:8px;height:8px}.rating{min-width:118px}.rating strong{font-size:12px}:is(.venue-paraiso,.venue-sky) .trust-strip{flex-wrap:wrap}:is(.venue-paraiso,.venue-sky) .trust-side{display:flex;width:100%;min-width:0;padding:17px 0 0;border-top:1px solid var(--line);border-left:0}.experience .section-heading{gap:12px;margin-bottom:38px}.experience .section-heading .eyebrow{margin-top:0}.experience .feature-grid article,.experience .feature-grid article+article{padding:28px;border-left:1px solid rgba(32,184,184,.48)}.experience .feature-number{margin-bottom:34px}.experience .feature-grid article::after{left:28px}.experience .feature-grid article:hover::after{right:28px}}
@media(max-width:560px){.experience .feature-grid article::after{right:calc(100% - 28px);transition:right .9s cubic-bezier(.2,.8,.2,1)}.experience .feature-grid article.is-active{box-shadow:0 14px 34px rgba(15,38,36,.09)}.experience .feature-grid article.is-active::after{right:28px}}
@media(max-width:560px) and (prefers-reduced-motion:reduce){.experience .feature-grid article::after{right:28px;transition:none}}
@media(max-width:560px){:is(.venue-paraiso,.venue-sky) .site-header{background:rgba(8,14,14,.48);backdrop-filter:blur(18px)}:is(.venue-paraiso,.venue-sky) .hero{isolation:isolate;display:flex;flex-direction:column;min-height:100svh;padding-top:84px;background:#090909}:is(.venue-paraiso,.venue-sky) .hero::before,:is(.venue-paraiso,.venue-sky) .hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}:is(.venue-paraiso,.venue-sky) .hero::before{background-image:url('../assets/paraiso/hero-main.jpeg?v=edited1');background-size:cover;background-position:78% center;filter:blur(26px) brightness(.54);transform:scale(1.14)}:is(.venue-paraiso,.venue-sky) .hero::after{background:linear-gradient(180deg,rgba(5,9,9,.48),rgba(5,9,9,.6) 48%,rgba(5,9,9,.88))}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile{position:relative;z-index:1;display:block;flex:0 0 auto;padding:26px 20px 18px}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile .eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(20,24,23,.62);color:#fff;font-size:9px;letter-spacing:.18em;backdrop-filter:blur(12px)}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}:is(.venue-paraiso,.venue-sky) .hero-visual{position:relative;inset:auto;z-index:1;flex:0 0 auto;width:calc(100% - 28px);aspect-ratio:16/9;margin:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:22px;background-color:#090909;background-image:url('../assets/paraiso/hero-main.jpeg?v=edited1');background-size:contain;background-position:center;background-repeat:no-repeat;overflow:hidden;box-shadow:0 20px 52px rgba(0,0,0,.34);transform:none;animation:none}:is(.venue-paraiso,.venue-sky) .hero-visual::before,:is(.venue-paraiso,.venue-sky) .hero-visual::after{content:none}:is(.venue-paraiso,.venue-sky) .hero-overlay,:is(.venue-paraiso,.venue-sky) .hero-glow{display:none}:is(.venue-paraiso,.venue-sky) .hero-content{position:relative;z-index:1;flex:1;justify-content:flex-start;overflow:visible;padding:30px 20px 88px;background:transparent}:is(.venue-paraiso,.venue-sky) .hero-content>.eyebrow{display:none}:is(.venue-paraiso,.venue-sky) .hero-content::before,:is(.venue-paraiso,.venue-sky) .hero-content::after{content:none}:is(.venue-paraiso,.venue-sky) .hero h1{font-size:clamp(42px,11.8vw,54px)}:is(.venue-paraiso,.venue-sky) .hero-intro{margin:20px 0 26px}}
@media(min-width:901px){:is(.venue-paraiso,.venue-sky) .site-header{background:rgba(8,14,14,.48);backdrop-filter:blur(18px)}:is(.venue-paraiso,.venue-sky) .hero{isolation:isolate;display:grid;grid-template-columns:minmax(420px,.92fr) minmax(0,1.08fr);grid-template-rows:auto 1fr;align-items:center;column-gap:clamp(38px,4.5vw,72px);row-gap:24px;min-height:100svh;padding:124px clamp(36px,5vw,78px) 58px;background:#090909}:is(.venue-paraiso,.venue-sky) .hero::before,:is(.venue-paraiso,.venue-sky) .hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}:is(.venue-paraiso,.venue-sky) .hero::before{background-image:url('../assets/paraiso/hero-main.jpeg?v=edited1');background-size:cover;background-position:center;filter:blur(30px) brightness(.54);transform:scale(1.12)}:is(.venue-paraiso,.venue-sky) .hero::after{background:linear-gradient(90deg,rgba(5,9,9,.5),rgba(5,9,9,.68)),linear-gradient(0deg,rgba(5,9,9,.7),rgba(5,9,9,.2) 70%)}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile{position:relative;z-index:1;display:block;grid-column:1/-1;padding:0}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile .eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(20,24,23,.58);color:#fff;font-size:10px;letter-spacing:.18em;backdrop-filter:blur(12px)}:is(.venue-paraiso,.venue-sky) .hero-kicker-mobile .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}:is(.venue-paraiso,.venue-sky) .hero-visual{position:relative;inset:auto;z-index:1;grid-column:2;grid-row:2;width:100%;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.18);border-radius:28px;background-color:#090909;background-image:url('../assets/paraiso/hero-main.jpeg?v=edited1');background-size:contain;background-position:center;background-repeat:no-repeat;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.36);transform:none;animation:none}:is(.venue-paraiso,.venue-sky) .hero-overlay,:is(.venue-paraiso,.venue-sky) .hero-glow{display:none}:is(.venue-paraiso,.venue-sky) .hero-content{position:relative;z-index:1;grid-column:1;grid-row:2;justify-content:center;padding:0;background:transparent}:is(.venue-paraiso,.venue-sky) .hero-content>.eyebrow{display:none}:is(.venue-paraiso,.venue-sky) .hero h1{font-size:clamp(48px,4.4vw,72px);line-height:.94}:is(.venue-paraiso,.venue-sky) .hero-intro{max-width:560px;margin:24px 0 30px}}
.gallery{background:#111514;color:#fff}.gallery .eyebrow{color:#fff}.gallery-copy>p:last-of-type{color:rgba(255,255,255,.68)}.gallery-video-link{display:inline-flex;align-items:center;justify-content:center;margin-top:22px;padding:12px 17px;border:1px solid var(--accent);border-radius:999px;color:#fff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.02em;background:rgba(255,255,255,.05);transition:background .25s,transform .25s}.gallery-video-link:hover{background:rgba(255,255,255,.09);transform:translateY(-2px)}.gallery-video-link-mobile{display:none}.gallery-credit{display:block;margin-top:22px;color:rgba(255,255,255,.42);font-size:10px;letter-spacing:.08em}.gallery-grid{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:10px}.gallery-photo{position:relative;aspect-ratio:16/9;overflow:hidden;margin:0;border-radius:22px;background:#090b0b;transform:scale(1);transform-origin:center;transition:transform .65s cubic-bezier(.2,.8,.2,1),box-shadow .5s;will-change:transform}.gallery-photo img{display:block;width:100%;height:100%;object-fit:contain;transition:filter .5s}.gallery-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 35%);pointer-events:none}.gallery-photo:hover{z-index:3;transform:scale(1.025);box-shadow:0 22px 54px rgba(0,0,0,.36)}.gallery-photo:hover img{filter:saturate(1.08)}.gallery-photo figcaption{position:absolute;z-index:2;left:18px;bottom:15px;color:#fff;font-size:10px;letter-spacing:.12em}.gallery-photo.tall{grid-row:auto;grid-column:1/-1}
@media(max-width:900px){.gallery{grid-template-columns:1fr}.gallery-grid{height:auto}}
@media(max-width:560px){.gallery{padding-right:0}.gallery-copy{padding-right:22px}.gallery-video-link-desktop{display:none}.gallery-video-link-mobile{display:inline-flex;justify-self:start;margin:14px 22px 0 0}.gallery-grid{display:flex;height:auto;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 22px 18px 0;scrollbar-width:none}.gallery-grid::-webkit-scrollbar{display:none}.gallery-photo,.gallery-photo.tall{flex:0 0 88%;height:auto;aspect-ratio:16/9;scroll-snap-align:center}.gallery-photo:hover{transform:scale(1)}.gallery-photo.is-active{z-index:2;transform:scale(1.025);box-shadow:0 16px 38px rgba(0,0,0,.32)}.gallery-photo.is-touching{transform:scale(1.045)}.gallery-photo img{min-height:0;transform:none;transition:filter .45s}.gallery-photo.is-active img,.gallery-photo.is-touching img{transform:none;filter:saturate(1.08)}}

/* Packages — approved visual system, neutral type with accent used only as detail */
.packages{position:relative;background:#e9e8e4;overflow:hidden}
.packages::before{content:"";position:absolute;top:0;left:clamp(24px,8vw,120px);right:clamp(24px,8vw,120px);height:1px;background:linear-gradient(90deg,var(--accent),rgba(23,24,26,.12) 28%,rgba(23,24,26,.12))}
.packages-heading{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:end;max-width:1200px;margin:0 auto 58px}
.packages-heading h2{max-width:650px}.packages-heading>div:last-child{max-width:530px;justify-self:end}.packages-heading>div:last-child>p{margin:0;color:#62615f;font-size:17px}
@media(min-width:901px){:is(.venue-paraiso,.venue-sky) .packages-heading{grid-template-columns:1fr;gap:28px;align-items:start;text-align:center}:is(.venue-paraiso,.venue-sky) .packages-heading>div:first-child{justify-self:center}:is(.venue-paraiso,.venue-sky) .packages-heading h2{max-width:1040px}:is(.venue-paraiso,.venue-sky) .packages-heading>div:last-child{position:relative;justify-self:center;max-width:720px;margin:0;padding:22px 0 0;border-left:0}:is(.venue-paraiso,.venue-sky) .packages-heading>div:last-child::before{content:"";position:absolute;top:0;left:50%;width:54px;height:2px;background:var(--accent);transform:translateX(-50%)}}
.compare-hint{display:none;margin-top:18px;color:#686865;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.package-grid{max-width:1200px;gap:12px;align-items:stretch}
.package-card{position:relative;min-height:620px;padding:30px;border:1px solid rgba(32,184,184,.52);border-radius:26px;background:#f8f7f4;color:var(--ink);box-shadow:0 12px 30px rgba(18,26,25,.04);overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s}
.package-card::after{content:"";position:absolute;inset:auto 30px 0;height:4px;border-radius:4px 4px 0 0;background:var(--accent);transform:scaleX(.18);transform-origin:left;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
@media(min-width:561px){.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)}.package-card:hover::after{transform:scaleX(1)}}
.package-card.anchor{background:#111514;color:#fff;border-color:rgba(32,184,184,.7);box-shadow:0 22px 46px rgba(7,18,18,.17)}
.package-card-head{display:flex;align-items:center;justify-content:space-between}.package-index{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:.12em;color:inherit}.package-card.anchor .package-index{color:#fff}
.package-level{display:flex;gap:5px}.package-level i{display:block;width:22px;height:3px;border-radius:99px;background:rgba(23,24,26,.14)}.package-level i.filled{background:var(--accent)}.package-card.anchor .package-level i{background:rgba(255,255,255,.19)}.package-card.anchor .package-level i.filled{background:var(--accent)}
.package-name{margin-top:56px;padding-bottom:26px;border-bottom:1px solid rgba(23,24,26,.13);text-align:center}.package-card.anchor .package-name{border-color:rgba(255,255,255,.16)}.package-name h3{display:inline-flex;align-items:center;justify-content:center;gap:11px;margin:0;font-size:clamp(25px,2vw,31px);letter-spacing:-.035em}.package-name h3::before{content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(32,184,184,.1)}.package-price-block{display:flex;flex-direction:column;justify-content:center;min-height:146px;margin-top:auto;padding:18px;border:1px solid rgba(32,184,184,.4);border-radius:18px;background:transparent}.package-card.anchor .package-price-block{border-color:rgba(32,184,184,.58);background:transparent}.price{font-family:var(--sans);font-size:15px;font-weight:400;line-height:1.25;letter-spacing:-.01em;margin:0;color:inherit;text-align:left}:is(.venue-paraiso,.venue-sky) .price{display:grid}:is(.venue-paraiso,.venue-sky) .price span{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:8px 0}:is(.venue-paraiso,.venue-sky) .price span+span{border-top:1px solid rgba(23,24,26,.1)}:is(.venue-paraiso,.venue-sky) .price strong{flex:0 0 auto;font-weight:500;letter-spacing:-.035em}:is(.venue-paraiso,.venue-sky) .package-card[data-package="1"] .price strong{font-size:20px}:is(.venue-paraiso,.venue-sky) .package-card[data-package="2"] .price strong{font-size:25px}:is(.venue-paraiso,.venue-sky) .package-card[data-package="3"] .price strong{font-size:36px}:is(.venue-paraiso,.venue-sky) .price small{display:block;padding:10px 0 2px;border-top:1px solid rgba(23,24,26,.1);color:#696966;font-size:12px;font-weight:400;letter-spacing:0;text-align:center}:is(.venue-paraiso,.venue-sky) .package-card.anchor .price small{color:rgba(255,255,255,.66)}
.package-summary{min-height:58px;margin:25px 0 30px;font-size:15px}.package-card.anchor .package-summary{color:rgba(255,255,255,.67)}
.package-includes{flex:1}.package-includes>small{display:block;margin-bottom:14px;font-size:9px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#696966}.package-card.anchor .package-includes>small{color:rgba(255,255,255,.52)}
.package-card ul{margin:0 0 30px;padding:0;border:0}.package-card li{display:flex;align-items:center;gap:11px;padding:7px 0;font-size:14px}.package-card li::before{display:none}.package-card li span{flex:0 0 6px;width:6px;height:6px;border-radius:50%;border:1px solid var(--accent);box-shadow:0 0 0 3px rgba(32,184,184,.09)}
.package-deposit{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(23,24,26,.1);text-align:center;color:#555553;font-size:12px;font-weight:400}.package-card.anchor .package-deposit{border-color:rgba(255,255,255,.13);color:rgba(255,255,255,.78)}
.package-cta{width:100%;min-height:52px;margin-top:12px;padding-inline:20px;justify-content:center;text-align:center;line-height:1.2;border-radius:999px;background:transparent;color:#111}.package-cta:hover{background:#fff;filter:none}.package-card.anchor .package-cta{background:#fff;color:#111}
.hourly{position:relative;display:grid;grid-template-columns:1.25fr .9fr auto;gap:42px;align-items:center;max-width:1200px;margin:18px auto 0;padding:28px 30px;border:1px solid rgba(32,184,184,.52);border-radius:22px;background:#f8f7f4;text-align:left;overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s}
.hourly::before{content:"";position:absolute;left:30px;right:30px;bottom:0;height:3px;border-radius:4px 4px 0 0;background:var(--accent);transform:scaleX(.1);transform-origin:left}
@keyframes hourly-line-run{from{transform:scaleX(.1)}to{transform:scaleX(1)}}
@media(min-width:561px){.hourly:hover{transform:translateY(-6px) scale(1.012);border-color:var(--accent);box-shadow:0 22px 54px rgba(12,35,34,.12)}.hourly:hover::before{animation:hourly-line-run .72s cubic-bezier(.2,.8,.2,1) both}}
.hourly.is-active,.hourly.is-touching{transform:none}
@media(max-width:560px){.hourly.is-active,.hourly.is-touching{transform:translateY(-5px) scale(1.012);border-color:var(--accent);box-shadow:0 20px 48px rgba(12,35,34,.13)}.hourly.is-active::before,.hourly.is-touching::before{animation:hourly-line-run .72s cubic-bezier(.2,.8,.2,1) both}}
.hourly small{font-size:9px;font-weight:800;letter-spacing:.17em;color:#676764}.hourly h3{font-size:19px;margin:6px 0 0}.hourly>p{margin:0;color:#656562;font-size:14px}.hourly-cta{min-width:150px;border-radius:999px;background:transparent;color:#111}
.package-proof{display:flex;align-items:center;justify-content:center;gap:14px;margin:34px 0 0;padding:23px 28px;border-top:1px solid rgba(23,24,26,.11);border-bottom:1px solid rgba(23,24,26,.11);color:var(--ink)}.proof-google-logo{display:block;width:24px;height:24px;object-fit:contain}.package-proof .proof-stars{color:var(--ink);letter-spacing:2px;font-size:14px}.package-proof p{margin:0;color:#4f4f4d;font-size:15px;line-height:1.45}
@media(max-width:900px){.packages-heading{grid-template-columns:1fr;gap:20px}.packages-heading>div:last-child{justify-self:start}.package-grid{grid-template-columns:repeat(3,minmax(315px,1fr));overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 24px 34px;margin-left:-24px;margin-right:-24px}.package-card{min-width:315px;scroll-snap-align:center}.hourly{grid-template-columns:1fr auto}.hourly>p{grid-column:1/-1;grid-row:2}.compare-hint{display:block}}
@media(max-width:560px){.packages{padding-right:0;padding-left:0}.packages::before{right:22px;left:22px}.packages-heading{padding:0 22px;margin-bottom:30px}.packages-heading>div:last-child>p{font-size:15px}.package-grid{display:flex;gap:12px;padding:18px 20px 40px;margin:0;scroll-padding:20px;scrollbar-width:none}.package-grid::-webkit-scrollbar{display:none}.package-card{flex:0 0 calc(100vw - 40px);min-width:0;min-height:0;padding:20px;scroll-snap-align:center;transform:none;opacity:1;transition:box-shadow .4s,border-color .35s}.package-card.is-active{position:relative;z-index:2;transform:none;opacity:1;border-color:var(--accent);box-shadow:0 18px 42px rgba(12,35,34,.13)}.package-card.is-active::after{transform:scaleX(1)}.package-name{margin-top:24px;padding-bottom:18px}.package-summary{min-height:0;margin:16px 0 19px;font-size:14px;line-height:1.5}.package-includes>small{margin-bottom:10px}.package-card ul{margin-bottom:20px}.package-card li{padding:4px 0;font-size:13px;line-height:1.4}.package-price-block{min-height:118px;padding:14px}.package-cta{min-height:48px;margin-top:10px}.hourly{grid-template-columns:1fr;margin:0 22px;padding:26px;gap:20px}.hourly>p{grid-column:auto;grid-row:auto}.hourly-cta{width:100%}.package-proof{display:grid;grid-template-columns:auto auto 1fr;gap:10px;margin:0 22px;padding:22px 0;align-items:center;justify-content:start}.proof-google-logo{width:25px;height:25px}.package-proof .proof-stars{font-size:12px}.package-proof p{max-width:none;font-size:14px}}
.hourly.hourly-detailed{grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:30px;padding:34px;align-items:start}.hourly-detailed .hourly-main small{font-size:9px;font-weight:800;letter-spacing:.17em}.hourly-detailed .hourly-main h3{max-width:680px;margin:9px 0 16px;font-size:clamp(27px,2.5vw,38px);line-height:1.08;letter-spacing:-.035em}.hourly-detailed .hourly-availability{max-width:680px;margin:0;padding-left:17px;border-left:2px solid var(--accent);color:#555552;font-size:14px;line-height:1.55}.hourly-rate{padding:20px;border:1px solid rgba(32,184,184,.5);border-radius:18px;text-align:center}.hourly-rate>span{display:block;color:#666663;font-size:9px;font-weight:800;letter-spacing:.17em}.hourly-rate>strong{display:block;margin:8px 0 1px;font-size:42px;font-weight:500;line-height:1;letter-spacing:-.05em}.hourly-rate>small{display:block;color:#555552;font-size:13px;font-weight:500;letter-spacing:0}.hourly-rate>p{margin:14px 0 0;padding-top:13px;border-top:1px solid rgba(23,24,26,.1);color:#555552;font-size:13px}.hourly-benefits{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(23,24,26,.11);border-bottom:1px solid rgba(23,24,26,.11)}.hourly-benefits>div{padding:24px 20px}.hourly-benefits>div+div{border-left:1px solid rgba(23,24,26,.1)}.hourly-benefits strong{display:block;font-size:13px}.hourly-benefits p{margin:8px 0 0;color:#62625f;font-size:13px;line-height:1.5}.hourly-detail{align-self:end}.hourly-detail>p{margin:0 0 8px;font-size:15px;line-height:1.5}.hourly-detail>small{color:#666663;font-size:12px;font-weight:500;letter-spacing:0;line-height:1.45}.hourly-detailed>.hourly-cta{align-self:end;min-width:260px;justify-content:center;text-align:center}
@media(max-width:900px){.hourly.hourly-detailed{grid-template-columns:1fr}.hourly-benefits{grid-template-columns:repeat(2,1fr)}.hourly-detailed>.hourly-cta{grid-column:auto;min-width:0;width:100%}}
@media(max-width:560px){.hourly.hourly-detailed{margin:0 20px;padding:20px;gap:16px}.hourly-detailed .hourly-main h3{margin:7px 0 12px;font-size:25px}.hourly-detailed .hourly-availability{padding-left:13px;font-size:13px}.hourly-rate{padding:14px}.hourly-rate>strong{margin-top:5px;font-size:34px}.hourly-rate>p{margin-top:10px;padding-top:10px}.hourly-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.hourly-benefits>div{padding:14px 10px}.hourly-benefits>div+div{border:0}.hourly-benefits>div:nth-child(even){border-left:1px solid rgba(23,24,26,.1)}.hourly-benefits>div:nth-child(n+3){border-top:1px solid rgba(23,24,26,.1)}.hourly-benefits p{margin-top:5px;font-size:12px;line-height:1.4}.hourly-detail>p{font-size:13px}.hourly-detailed>.hourly-cta{min-height:48px}}
@media(prefers-reduced-motion:reduce) and (min-width:561px){.hourly:hover::before{animation:none;transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce) and (max-width:560px){.hourly.is-active::before,.hourly.is-touching::before{animation:none;transform:scaleX(1)}}

/* Demand + contact — emotional urgency without artificial scarcity */
.demand{position:relative;display:block;padding:clamp(82px,9vw,132px) clamp(24px,8vw,120px);background:#0b3439;color:#fff;overflow:hidden}
.demand::before{content:"";position:absolute;right:-12%;top:-40%;width:62vw;height:62vw;border-radius:50%;background:radial-gradient(circle,rgba(32,184,184,.13),transparent 66%);pointer-events:none}
.demand-status{position:relative;display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.19)}
.demand-status>div{display:flex;align-items:center;gap:12px}.demand-status>div>span{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(32,184,184,.12)}.demand .demand-status>div>p,.demand-status small{margin:0;color:#fff;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.demand-status small{display:flex;align-items:center;gap:.7em;color:rgba(255,255,255,.54);font-weight:600}.demand-signal-part{white-space:nowrap}.demand-signal-separator{font-style:normal}
.demand-layout{position:relative;display:grid;grid-template-columns:1.16fr .84fr;gap:clamp(54px,8vw,120px);align-items:center;padding-top:clamp(54px,7vw,92px)}
.demand-main{max-width:790px}.demand-main h2{font-size:clamp(53px,6.2vw,92px);line-height:.94;text-wrap:balance}.demand-main>p{max-width:620px;margin:30px 0 0;color:rgba(255,255,255,.69);font-size:17px;line-height:1.6}
.demand-main>.selected-interest{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:22px;padding:9px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.82);font-size:12px;line-height:1.2}.selected-interest[hidden]{display:none}.selected-interest>span:first-child{color:var(--accent);font-size:18px;line-height:0}.selected-interest strong{font-weight:750}
.demand .demand-actions{display:flex;flex-direction:row;align-items:center;gap:14px;width:auto;min-width:0;margin-top:38px}.demand .button.light{width:auto;min-width:225px;min-height:58px;padding:0 30px;border-radius:999px;background:#fff;color:#111}.demand .demand-secondary{width:auto;min-width:205px;min-height:58px;padding:0 28px;border:1px solid var(--accent);border-radius:999px;background:rgba(3,23,25,.26);color:#fff;backdrop-filter:blur(10px)}.demand .demand-secondary:hover{background:rgba(3,23,25,.52);color:#fff;filter:none}
.tour-card{position:relative;padding:34px;border:1px solid rgba(32,184,184,.72);border-radius:28px;background:#f7f6f3;color:var(--ink);overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.16);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.tour-card::after{content:"";position:absolute;left:34px;right:34px;bottom:0;height:4px;border-radius:4px 4px 0 0;background:var(--accent);transform:scaleX(.14);transform-origin:left;transition:transform .62s cubic-bezier(.2,.8,.2,1)}
@media(min-width:561px){.tour-card:hover{transform:translateY(-8px) scale(1.015);box-shadow:0 34px 86px rgba(0,0,0,.25)}.tour-card:hover::after{transform:scaleX(1)}}
.demand .tour-card .tour-title{margin:0 0 28px;color:var(--ink);font-size:19px;font-weight:800;letter-spacing:-.02em}.tour-card ol{list-style:none;margin:0;padding:0;border-top:1px solid rgba(23,24,26,.13)}.tour-card li{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid rgba(23,24,26,.13)}.tour-card li>span{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--ink)}.tour-card strong{font-size:14px}.demand .tour-card li p{margin:4px 0 0;color:#696966;font-size:13px;line-height:1.5}.tour-proof{display:flex;align-items:center;gap:14px;padding-top:22px}.tour-google-logo{display:block;flex:0 0 auto;width:30px;height:30px;object-fit:contain}.tour-proof-copy{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;gap:3px 10px}.tour-proof-copy>span{color:#fbbc04;font-size:15px;line-height:1;letter-spacing:2px}.tour-proof-copy>strong{color:var(--ink);font-size:13px;line-height:1.2}.tour-proof-copy>small{grid-column:1/-1;color:#5d5d5a;font-size:11px;line-height:1.3}
.tour-card.is-active{transform:translateY(-6px) scale(1.015);box-shadow:0 30px 72px rgba(0,0,0,.23)}.tour-card.is-active::after{transform:scaleX(1)}
@media(max-width:900px){.demand-layout{grid-template-columns:1fr}.tour-card{max-width:620px}.demand .demand-actions{width:auto}}
@media(max-width:560px){.demand{padding:76px 22px}.demand-status{align-items:flex-start;gap:20px}.demand-status small{display:grid;justify-items:end;gap:2px;max-width:none;text-align:right;line-height:1.5}.demand-signal-separator{display:none}.demand-layout{gap:52px;padding-top:52px}.demand-main h2{font-size:clamp(45px,12.5vw,57px)}.demand-main>p{font-size:15px;margin-top:24px}.demand .demand-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:30px}.demand .button.light,.demand .demand-secondary{width:100%}.tour-card{padding:28px;border-radius:24px}.tour-card::after{left:28px;right:28px}.tour-title{font-size:18px}.tour-card li{grid-template-columns:36px 1fr}.tour-proof{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.tour-card,.tour-card::after{transition:none}.tour-card.is-active::after{transform:scaleX(1)}}

/* FAQ — editorial clarity with a calm, premium accordion */
.faq{position:relative;grid-template-columns:.82fr 1.18fr;gap:clamp(52px,8vw,124px);align-items:start;background:#f4f3f0}
.faq::before{content:"";position:absolute;top:0;left:clamp(24px,8vw,120px);right:clamp(24px,8vw,120px);height:1px;background:linear-gradient(90deg,var(--accent),rgba(23,24,26,.13) 30%,rgba(23,24,26,.13))}
.faq-heading{position:sticky;top:112px;max-width:500px}.faq-heading h2{font-size:clamp(48px,5.8vw,78px);line-height:.96;text-wrap:balance}.faq-intro{max-width:440px;margin:27px 0 0;color:#62615f;font-size:17px;line-height:1.65}.faq-heading>small{display:block;max-width:390px;margin-top:22px;color:#777570;font-size:10px;line-height:1.55;letter-spacing:.07em;text-transform:uppercase}
@media(min-width:901px){.faq-heading h2{line-height:1.04}}
.faq-button{width:auto;margin-top:32px;border-radius:999px;background:transparent;color:var(--ink);border-color:var(--accent);padding:0 27px}.faq-button:hover{background:#fff;filter:none}
.faq-button-mobile{display:none}
.faq-list{display:grid;gap:12px}.faq-list details{position:relative;padding:0;border:1px solid rgba(32,184,184,.5);border-radius:22px;background:#faf9f6;overflow:hidden;box-shadow:0 8px 24px rgba(17,31,30,.025);transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s,border-color .38s}.faq-list details:last-child{border-bottom:1px solid rgba(32,184,184,.5)}.faq-list details::after{content:"";position:absolute;left:24px;right:24px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--accent);transform:scaleX(.1);transform-origin:left;transition:transform .52s cubic-bezier(.2,.8,.2,1)}
.faq-list details[open]{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 20px 48px rgba(12,35,34,.1)}.faq-list details[open]::after{transform:scaleX(1)}
.faq-list summary{display:grid;grid-template-columns:42px 1fr 34px;gap:16px;align-items:center;min-height:94px;padding:21px 24px;font-size:18px;font-weight:750;line-height:1.3;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-number{font-size:10px;font-weight:800;letter-spacing:.13em;color:var(--ink)}.faq-question{color:var(--ink)}
.faq-toggle{position:relative;width:30px;height:30px;border:1px solid rgba(23,24,26,.16);border-radius:50%;transition:transform .38s cubic-bezier(.2,.8,.2,1),border-color .3s,background .3s}.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;left:9px;right:9px;top:14px;height:1px;background:var(--ink);transition:transform .35s}.faq-toggle::after{transform:rotate(90deg)}.faq-list details[open] .faq-toggle{transform:rotate(45deg);border-color:var(--accent);background:#fff}
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1)}.faq-list details[open] .faq-answer{grid-template-rows:1fr}.faq-answer>p{overflow:hidden;margin:0;padding:0 74px 28px 82px;max-width:680px;color:#62615f;font-size:15px;line-height:1.7}
@media(min-width:561px){.faq-list details:hover:not([open]){transform:translateY(-3px);border-color:var(--accent);box-shadow:0 15px 38px rgba(12,35,34,.07)}.faq-list details:hover:not([open]) .faq-toggle{border-color:var(--accent)}}
@media(max-width:900px){.faq{grid-template-columns:1fr;gap:48px}.faq-heading{position:relative;top:auto;max-width:680px}}
@media(max-width:560px){.faq{padding-top:78px;gap:38px}.faq::before{left:22px;right:22px}.faq-heading h2{font-size:clamp(43px,12vw,54px)}.faq-intro{font-size:15px;margin-top:22px}.faq-button{width:100%;min-height:56px}.faq-button-desktop{display:none}.faq-button-mobile{display:inline-flex;margin-top:14px}.faq-list{gap:10px}.faq-list details{border-radius:19px}.faq-list details::after{left:20px;right:20px}.faq-list summary{grid-template-columns:30px 1fr 32px;gap:10px;min-height:86px;padding:18px 19px;font-size:16px}.faq-answer>p{padding:0 51px 25px 59px;font-size:14px}.faq-toggle{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.faq-list details,.faq-list details::after,.faq-toggle,.faq-answer{transition:none}}

/* Location — real map with the approved route selector kept separate */
.location{position:relative;grid-template-columns:1.18fr .82fr;gap:0;align-items:stretch;padding-top:clamp(85px,10vw,140px);padding-bottom:clamp(85px,10vw,140px);background:#e8e6e0;overflow:hidden}
.location::before{content:"";position:absolute;top:0;left:clamp(24px,8vw,120px);right:clamp(24px,8vw,120px);height:1px;background:rgba(23,24,26,.14)}
.location-map{position:relative;min-height:610px;border:1px solid rgba(32,184,184,.52);border-radius:30px 0 0 30px;background:#d9d5cb;overflow:hidden}.map-grid{position:absolute;inset:0;background-color:#dcd8ce;background-image:linear-gradient(32deg,transparent 48.8%,rgba(255,255,255,.64) 49.2%,rgba(255,255,255,.64) 50%,transparent 50.4%),linear-gradient(122deg,transparent 48.8%,rgba(126,116,99,.2) 49.2%,rgba(126,116,99,.2) 50%,transparent 50.4%);background-size:120px 120px;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.location-map:hover .map-grid{transform:scale(1.035)}
.location-embed{display:block;width:100%;height:100%;min-height:610px;border:0;filter:saturate(.8) contrast(1.04);transition:filter .45s ease}.location-map:hover .location-embed{filter:saturate(1) contrast(1.01)}
.location-embed{opacity:0;transition:filter .45s ease,opacity .28s ease}.location-embed.is-loaded{opacity:1}
.map-grid::before,.map-grid::after{content:"";position:absolute;background:rgba(250,249,246,.78);box-shadow:0 0 0 1px rgba(126,116,99,.1)}.map-grid::before{width:135%;height:34px;left:-18%;top:46%;transform:rotate(-13deg)}.map-grid::after{width:34px;height:130%;left:61%;top:-15%;transform:rotate(7deg)}
.map-road{position:absolute;display:block;height:8px;border-radius:99px;background:rgba(247,245,239,.82);box-shadow:0 0 0 1px rgba(126,116,99,.08)}.road-one{width:42%;left:7%;top:24%;transform:rotate(8deg)}.road-two{width:35%;right:6%;top:71%;transform:rotate(-18deg)}.road-three{width:30%;left:14%;bottom:18%;transform:rotate(23deg)}.road-four{width:25%;right:10%;top:18%;transform:rotate(-6deg)}
.map-marker{position:absolute;z-index:3;left:52%;top:43%;width:28px;height:28px;border-radius:50% 50% 50% 0;background:var(--accent);transform:rotate(-45deg);box-shadow:0 0 0 9px rgba(32,184,184,.16),0 10px 26px rgba(12,35,34,.24)}.map-marker::after{content:"";position:absolute;width:8px;height:8px;left:10px;top:10px;border-radius:50%;background:#f7f6f2}
.map-caption{display:none}
.location-card{position:relative;z-index:5;display:flex;flex-direction:column;justify-content:center;min-height:610px;padding:clamp(42px,5vw,76px);border:1px solid rgba(32,184,184,.52);border-left:0;border-radius:0 30px 30px 0;background:#f8f7f4}.location-card h2{max-width:600px;font-size:clamp(48px,5vw,72px);line-height:.96}.location-intro{max-width:470px;margin:26px 0 0;color:#62615f;font-size:16px;line-height:1.65}.location-address{margin-top:38px;padding-top:25px;border-top:1px solid rgba(23,24,26,.14)}.location-address>small{display:block;color:#73716d;font-size:9px;font-weight:800;letter-spacing:.16em}.location-address address{margin-top:12px;color:var(--ink);font-style:normal;font-size:15px;font-weight:750;line-height:1.55}.location-address>span{display:block;margin-top:10px;color:#77736f;font-size:10px;line-height:1.45}.location-contact-note{max-width:500px;margin:19px 0 0;padding:17px 19px;border-left:3px solid var(--accent);background:rgba(32,184,184,.085);color:#373735;font-size:14px;font-weight:560;line-height:1.6}.location-button{align-self:flex-start;width:auto;margin-top:26px;border-radius:999px;background:transparent;color:var(--ink);border-color:var(--accent);padding:0 29px}.location-button:hover{background:#fff;filter:none}.location-button-mobile{display:none}
@media(min-width:901px){html[lang="en"] :is(.venue-paraiso,.venue-sky) .location-card h2{line-height:1.04}}
@media(min-width:561px){.location-button-desktop{align-self:center}}
@media(max-width:900px){.location{grid-template-columns:1fr;padding-top:90px}.location-map{min-height:500px;border-radius:28px 28px 0 0}.location-embed{min-height:500px}.location-card{min-height:0;border-left:1px solid rgba(32,184,184,.52);border-top:0;border-radius:0 0 28px 28px}}
@media(max-width:560px){.location{padding:72px 22px 82px}.location-card{order:1;padding:34px 26px 30px;border:1px solid rgba(32,184,184,.52);border-bottom:0;border-radius:24px 24px 0 0}.location-map{order:2;min-height:390px;border:1px solid rgba(32,184,184,.52);border-radius:0 0 24px 24px}.location-embed{min-height:390px}.map-grid{background-size:86px 86px}.map-caption{left:18px;top:18px;padding:12px 14px}.location-card h2{font-size:clamp(43px,12vw,53px)}.location-intro{font-size:15px;margin-top:22px}.location-address{margin-top:28px}.location-contact-note{padding:17px 16px;font-size:15px;line-height:1.6}.location-button-desktop{display:none}.location-button-mobile{display:inline-flex;order:3;align-self:center;justify-self:center;justify-content:center;width:calc(100% - 28px);max-width:320px;min-height:62px;margin:22px auto 0;background:#0b3439;color:#fff;border-color:var(--accent);outline:1px solid rgba(32,184,184,.38);outline-offset:3px;font-size:14px;font-weight:800;letter-spacing:.035em;box-shadow:0 18px 42px rgba(12,35,34,.24)}.location-button-mobile:hover{background:#0b3439;color:#fff;border-color:var(--accent);filter:none;transform:translateY(-2px)}.map-marker{left:56%;top:41%}}
@media(prefers-reduced-motion:reduce){.map-grid,.location-embed{transition:none}.location-map:hover .map-grid{transform:none}}

/* Final invitation + footer */
.final-cta{position:relative;padding:clamp(84px,10vw,148px) clamp(24px,8vw,120px);background:#101514;color:#fff;overflow:hidden}.final-cta::before{content:"";position:absolute;right:-14%;bottom:-70%;width:58vw;height:58vw;border-radius:50%;background:radial-gradient(circle,rgba(32,184,184,.13),transparent 66%);pointer-events:none}.final-kicker{position:relative;display:flex;align-items:center;gap:13px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.18)}.final-kicker>span{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(32,184,184,.12)}.final-kicker p{margin:0;color:#fff;font-size:10px;font-weight:800;letter-spacing:.18em}.final-layout{position:relative;display:grid;grid-template-columns:1.24fr .76fr;gap:clamp(60px,9vw,140px);align-items:end;padding-top:clamp(54px,7vw,92px)}.final-layout h2{max-width:900px;font-size:clamp(58px,7vw,104px);line-height:.91;text-wrap:balance}.final-action{max-width:470px;padding-bottom:8px}.final-action>p{margin:0;color:rgba(255,255,255,.68);font-size:16px;line-height:1.7}.final-button{width:auto;margin-top:32px;padding:0 30px;min-height:58px;border-radius:999px;background:#fff;color:#111;border-color:var(--accent)}.final-button:hover{background:#fff;filter:none;transform:translateY(-2px)}.final-action>small{display:block;margin-top:16px;color:rgba(255,255,255,.45);font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.site-footer{display:block;padding:54px clamp(24px,8vw,120px) 30px;border-top:1px solid rgba(255,255,255,.12);background:#101514;color:#fff}.footer-top{display:grid;grid-template-columns:1.6fr repeat(3,.55fr);gap:clamp(32px,6vw,90px);padding-bottom:58px}.site-footer .footer-brand{align-self:start}.site-footer .footer-brand .brand-image{width:190px;border-radius:12px}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-column small{margin-bottom:6px;color:rgba(255,255,255,.42);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.footer-column a,.footer-column button{padding:0;border:0;background:none;color:rgba(255,255,255,.76);font:inherit;font-size:12px;text-decoration:none;cursor:pointer;transition:color .25s}.footer-column a:hover,.footer-column button:hover,.footer-column button.active{color:#fff}.footer-column button.active{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}.footer-bottom{display:grid;grid-template-columns:1fr auto auto;align-items:end;gap:34px;padding-top:25px;border-top:1px solid rgba(255,255,255,.13)}.footer-legal-meta{display:flex;flex-direction:column;gap:7px}.site-footer .footer-legal-meta p{order:0;margin:0;color:rgba(255,255,255,.66);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.footer-legal-meta small{order:1;color:rgba(255,255,255,.32);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.footer-legal{display:flex;align-items:center;gap:18px}.footer-legal button{padding:0;border:0;background:none;color:rgba(255,255,255,.58);font:inherit;font-size:9px;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(32,184,184,.55);text-underline-offset:4px;transition:color .25s}.footer-legal button:hover{color:#fff}.footer-social{display:flex;gap:24px}.footer-bottom a{color:rgba(255,255,255,.7);font-size:11px;text-decoration:none}
.venue-connection{position:relative;margin:0 0 30px;padding:32px 20px;text-align:center;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13);background:linear-gradient(90deg,transparent,rgba(32,184,184,.08),transparent)}.venue-connection::before{content:"";position:absolute;top:-1px;left:50%;width:74px;height:2px;background:var(--accent);transform:translateX(-50%)}.venue-connection strong{display:block;color:#fff;font-size:clamp(16px,1.65vw,22px);font-weight:750;letter-spacing:.045em}.venue-connection strong span{display:inline-block;margin:0 .55em;color:var(--accent)}.venue-connection p{margin:10px 0 0;color:rgba(255,255,255,.78);font-size:14px;letter-spacing:.02em}
.legal-dialog{width:min(680px,calc(100% - 36px));max-height:min(760px,calc(100svh - 36px));padding:0;border:1px solid rgba(32,184,184,.72);border-radius:28px;background:#f8f7f4;color:var(--ink);box-shadow:0 34px 100px rgba(0,0,0,.42);overflow:auto}.legal-dialog::backdrop{background:rgba(3,12,12,.72);backdrop-filter:blur(8px)}.legal-dialog-card{padding:34px}.legal-dialog-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid rgba(23,24,26,.14)}.legal-dialog-top p{margin:0;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.16em}.legal-close{min-width:78px;min-height:38px;padding:0 16px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:11px;font-weight:750;cursor:pointer}.legal-dialog h2{margin-top:34px;font-size:clamp(44px,5vw,64px)}.legal-dialog-copy{margin-top:28px}.legal-dialog-copy p{color:#62615f;font-size:15px;line-height:1.7}.legal-dialog-copy strong{display:block;margin-bottom:4px;color:var(--ink);font-size:12px;letter-spacing:.04em}.legal-dialog-card>small{display:block;margin-top:30px;padding-top:20px;border-top:1px solid rgba(23,24,26,.14);color:#77736f;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.final-layout{grid-template-columns:1fr}.final-action{max-width:600px}.footer-top{grid-template-columns:1.4fr repeat(3,.7fr);gap:35px}}
@media(max-width:560px){.final-cta{padding:76px 22px 82px}.final-layout{gap:34px;padding-top:48px}.final-layout h2{font-size:clamp(49px,13.2vw,61px)}.final-action>p{font-size:15px}.final-button{width:100%;min-height:58px}.final-action>small{text-align:center;line-height:1.5}.site-footer{padding:44px 22px 30px}.footer-top{grid-template-columns:1fr 1fr;gap:42px 28px;padding-bottom:45px}.site-footer .footer-brand{grid-column:1/-1}.site-footer .footer-brand .brand-image{width:170px}.footer-language{grid-column:2}.footer-bottom{grid-template-columns:1fr;align-items:start;gap:22px}.footer-legal-meta{gap:7px}.footer-legal{flex-wrap:wrap;gap:15px 18px}.footer-social{gap:22px}.legal-dialog{border-radius:24px}.legal-dialog-card{padding:27px 24px}.legal-dialog h2{font-size:45px}.legal-dialog-copy p{font-size:14px}}
@media(max-width:560px){.site-header .brand{gap:9px}.site-header .brand-name{max-width:112px;font-size:9px;line-height:1.22;letter-spacing:.045em;white-space:normal}.venue-connection{margin-bottom:28px;padding:28px 8px}.venue-connection strong{font-size:15px;line-height:1.55}.venue-connection strong span{margin:0 .28em}.venue-connection p{max-width:270px;margin:8px auto 0;font-size:13px;line-height:1.5}}

/* Social proof belongs with the brand, separate from the legal strip */
.footer-top{grid-template-columns:1.9fr repeat(3,.55fr)}
.footer-brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:26px}
.footer-social-group{display:block}
.footer-social-group>small{display:block;margin-bottom:11px;color:rgba(255,255,255,.42);font-size:9px;font-weight:800;letter-spacing:.16em}
.footer-social-group>small span{display:inline-block;margin:0 .42em;color:var(--accent);font-size:1.35em;line-height:0;vertical-align:.08em}
.footer-social-group>div{display:flex;flex-wrap:wrap;gap:8px}
.footer-social-group a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border:1px solid rgba(32,184,184,.58);border-radius:999px;color:rgba(255,255,255,.86);font-size:11px;font-weight:750;text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),background .28s,border-color .28s}
.footer-social-group a:hover{transform:translateY(-2px);border-color:var(--accent);background:rgba(32,184,184,.09);color:#fff}
.footer-bottom{grid-template-columns:1fr auto}
@media(max-width:560px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand-block{grid-column:1/-1;width:100%;gap:25px}.site-footer .footer-brand{grid-column:auto}.footer-social-group{width:100%}.footer-social-group>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.footer-social-group a{min-height:46px;padding:0 12px}.footer-social-group a:last-child{grid-column:1/-1}.footer-bottom{grid-template-columns:1fr}}

.footer-social-list{width:min(360px,100%);margin:0;padding:0;border-top:1px solid rgba(255,255,255,.13);list-style:none}
.footer-social-list li{margin:0;border-bottom:1px solid rgba(255,255,255,.13)}
.footer-social-list a{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:center;width:100%;min-height:72px;padding:10px 4px;border:0;border-radius:0;background:transparent;text-align:left}
.footer-social-list a:hover{transform:translateX(5px);border-color:transparent;background:transparent}
.social-logo{display:grid;place-items:center;width:42px;height:42px;border:0;background:transparent}
.footer-social-list a:hover .social-logo{border:0;background:transparent;box-shadow:none}
.social-logo img{display:block;width:19px;height:19px}
.social-logo img{display:none}
.social-logo::before{content:"";display:block;width:28px;height:28px;border-radius:7px;background-position:center;background-repeat:no-repeat;background-size:contain}
.footer-social-list li:nth-child(1) .social-logo::before{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3CradialGradient id='a' cx='20%25' cy='100%25' r='125%25'%3E%3Cstop offset='0' stop-color='%23FFD600'/%3E%3Cstop offset='.3' stop-color='%23FF7A00'/%3E%3Cstop offset='.55' stop-color='%23FF0169'/%3E%3Cstop offset='.8' stop-color='%23D300C5'/%3E%3Cstop offset='1' stop-color='%237638FA'/%3E%3C/radialGradient%3E%3C/defs%3E%3Crect width='24' height='24' rx='6' fill='url(%23a)'/%3E%3Crect x='5.7' y='5.7' width='12.6' height='12.6' rx='4' fill='none' stroke='white' stroke-width='1.7'/%3E%3Ccircle cx='12' cy='12' r='3.05' fill='none' stroke='white' stroke-width='1.7'/%3E%3Ccircle cx='16.25' cy='7.85' r='1.05' fill='white'/%3E%3C/svg%3E")}
.footer-social-list li:nth-child(2) .social-logo::before{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='24' height='24' rx='6' fill='%231877F2'/%3E%3Cpath fill='white' d='M13.7 21v-8h2.68l.4-3.12H13.7v-2c0-.9.25-1.52 1.55-1.52h1.66V3.57c-.29-.04-1.27-.12-2.42-.12-2.4 0-4.04 1.46-4.04 4.15v2.28H7.73V13h2.72v8h3.25Z'/%3E%3C/svg%3E")}
.footer-social-list li:nth-child(3) .social-logo::before{background-color:#fff;background-image:url("../assets/social/google-g-official.png?v=20260824");background-size:19px}
.footer-social-list a>span:last-child{display:flex;flex-direction:column;gap:3px}
.footer-social-list strong{color:#fff;font-size:12px;font-weight:750}
.footer-social-list a small{color:rgba(255,255,255,.43);font-size:9px;letter-spacing:.04em}
@media(max-width:560px){.footer-brand-block{align-items:center}.site-footer .footer-brand{margin-inline:auto}.footer-social-group{text-align:center}.footer-social-list{width:100%;max-width:330px;margin-inline:auto;text-align:left}.footer-social-list a,.footer-social-group a:last-child{grid-column:auto;grid-template-columns:44px 1fr;justify-content:start;width:180px;max-width:100%;min-height:74px;margin-inline:auto;padding:10px 3px}.footer-social-list a:hover{transform:none}.social-logo{width:44px;height:44px}.social-logo::before{width:29px;height:29px}}

/* Desktop: keep the social links together in one centered, horizontal row. */
@media(min-width:901px){
  .footer-brand-block{display:contents}
  .footer-brand-block .footer-brand{grid-column:1;grid-row:1}
  .footer-brand-block .footer-social-group{grid-column:1/-1;grid-row:2;width:100%;padding-top:28px;border-top:1px solid rgba(255,255,255,.13);text-align:center}
  .footer-social-list{display:grid;grid-template-columns:repeat(3,minmax(0,280px));justify-content:center;gap:18px;width:100%;max-width:900px;margin:0 auto;border-top:0}
  .footer-social-list li{border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
  .footer-social-list a{min-height:78px;padding:10px 14px}
}

/* Preferred maps chooser */
.location-button{font:inherit;cursor:pointer}
.map-dialog{width:min(760px,calc(100% - 36px));max-height:calc(100svh - 36px);padding:0;border:1px solid rgba(32,184,184,.72);border-radius:30px;background:#f8f7f4;color:var(--ink);box-shadow:0 36px 110px rgba(0,0,0,.46);overflow:hidden}
.map-dialog::backdrop{background:rgba(3,12,12,.74);backdrop-filter:blur(9px)}
.map-dialog[open]{animation:map-dialog-in .38s cubic-bezier(.2,.8,.2,1) both}
.map-dialog-card{padding:34px}
.map-dialog-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid rgba(23,24,26,.14)}
.map-dialog-top p{margin:0;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.17em}
.map-dialog-close{min-width:78px;min-height:38px;padding:0 16px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:11px;font-weight:750;cursor:pointer}
.map-dialog h2{max-width:560px;margin-top:32px;font-size:clamp(44px,5vw,64px);line-height:.96}
.map-dialog-intro{max-width:570px;margin:20px 0 30px;color:#62615f;font-size:15px;line-height:1.65}
.map-options{border-top:1px solid rgba(23,24,26,.14)}
.map-options a{position:relative;display:grid;grid-template-columns:42px 1fr auto;gap:16px;align-items:center;min-height:82px;padding:13px 5px;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(23,24,26,.14);transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s,padding .3s}
.map-options a::after{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:2px;background:var(--accent);transition:right .42s cubic-bezier(.2,.8,.2,1)}
.map-options a:hover{padding-left:13px;padding-right:13px;background:rgba(32,184,184,.055)}
.map-options a:hover::after{right:0}
.map-option-index{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--ink)}
.map-option-copy{display:flex;flex-direction:column;gap:3px}
.map-option-copy strong{font-size:15px}
.map-option-copy small{color:#6d6b67;font-size:10px}
.map-options em{padding:7px 10px;border:1px solid rgba(32,184,184,.5);border-radius:999px;color:#55534f;font-size:8px;font-style:normal;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
@keyframes map-dialog-in{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:560px){
  .map-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);margin:auto 10px 10px;border-radius:28px}
  .map-dialog-card{padding:27px 23px 24px}
  .map-dialog h2{margin-top:27px;font-size:43px}
  .map-dialog-intro{margin:17px 0 24px;font-size:14px}
  .map-options a{grid-template-columns:32px 1fr;min-height:78px;padding:12px 2px}
  .map-options a:hover{padding-left:2px;padding-right:2px;background:transparent}
  .map-options em{grid-column:2;margin-top:-1px;justify-self:start}
}
@media(prefers-reduced-motion:reduce){.map-dialog[open]{animation:none}.map-options a,.map-options a::after{transition:none}}

/* Desktop SMS handoff */
.sms-dialog{width:min(900px,calc(100% - 40px));max-height:calc(100svh - 40px);padding:0;border:1px solid rgba(32,184,184,.72);border-radius:30px;background:#f8f7f4;color:var(--ink);box-shadow:0 38px 120px rgba(0,0,0,.5);overflow:auto}
.sms-dialog::backdrop{background:rgba(3,12,12,.78);backdrop-filter:blur(10px)}
.sms-dialog[open]{animation:map-dialog-in .38s cubic-bezier(.2,.8,.2,1) both}
.sms-dialog-card{padding:34px}
.sms-dialog-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid rgba(23,24,26,.14)}
.sms-dialog-top p{margin:0;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.17em}
.sms-dialog-close{min-width:78px;min-height:38px;padding:0 16px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:11px;font-weight:750;cursor:pointer}
.sms-dialog-layout{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:center;padding-top:34px}
.sms-qr-shell{display:flex;flex-direction:column;align-items:center;gap:15px;padding:26px;border:1px solid rgba(23,24,26,.12);border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(23,24,26,.08)}
.sms-qr-shell [data-sms-qr]{display:grid;place-items:center;width:100%;aspect-ratio:1}
.sms-qr-shell svg{display:block;width:100%;height:auto}
.sms-qr-shell>small{color:#595754;font-size:11px;font-weight:800;letter-spacing:.08em}
.sms-dialog-copy h2{max-width:470px;font-size:clamp(42px,4.5vw,62px);line-height:.98}
.sms-dialog-copy>p{max-width:500px;margin:20px 0 25px;color:#62615f;font-size:14px;line-height:1.65}
.sms-dialog-phone,.sms-dialog-message{display:flex;flex-direction:column;gap:6px;padding:14px 0;border-top:1px solid rgba(23,24,26,.13)}
.sms-dialog-phone small,.sms-dialog-message small{color:#77736f;font-size:8px;font-weight:800;letter-spacing:.14em}
.sms-dialog-phone strong{font-size:20px}
.sms-dialog-message p{margin:0;color:#55534f;font-size:12px;line-height:1.5;white-space:pre-line}
.sms-copy-button{min-width:170px;margin-top:8px;border-radius:999px}
.sms-copy-status{display:inline-block;margin-left:12px;color:#55534f;font-size:10px;font-weight:750}
@media(max-width:700px){.sms-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);margin:auto 10px 10px;border-radius:28px}.sms-dialog-card{padding:26px 22px}.sms-dialog-layout{grid-template-columns:1fr;gap:28px;padding-top:28px}.sms-qr-shell{width:min(240px,100%);margin:auto}.sms-dialog-copy h2{font-size:42px}.sms-copy-button{width:100%}.sms-copy-status{display:block;margin:10px 0 0;text-align:center}}
@media(prefers-reduced-motion:reduce){.sms-dialog[open]{animation:none}}

/* Event details form */
.event-form-dialog{width:min(820px,calc(100% - 40px));max-height:calc(100svh - 40px);padding:0;border:1px solid rgba(32,184,184,.72);border-radius:30px;background:#f8f7f4;color:var(--ink);box-shadow:0 38px 120px rgba(0,0,0,.5);overflow:auto}
.event-form-dialog::backdrop{background:rgba(3,12,12,.78);backdrop-filter:blur(10px)}
.event-form-dialog[open]{animation:map-dialog-in .38s cubic-bezier(.2,.8,.2,1) both}
.event-form-card{padding:34px}
.event-form-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid rgba(23,24,26,.14)}
.event-form-top p{margin:0;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.17em}
.event-form-close{min-width:78px;min-height:38px;padding:0 16px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:11px;font-weight:750;cursor:pointer}
.event-form-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:end;padding:32px 0 28px}
.event-form-heading h2{font-size:clamp(46px,5vw,66px);line-height:.96}
.event-form-heading p{margin:0;color:#62615f;font-size:14px;line-height:1.65}
.event-details-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:24px;border-top:1px solid rgba(23,24,26,.14)}
.event-details-form label{display:flex;flex-direction:column;gap:8px}
.event-details-form label>span{font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.event-details-form input,.event-details-form select{width:100%;height:52px;padding:0 14px;border:1px solid rgba(23,24,26,.19);border-radius:13px;background:#fff;color:var(--ink);font:inherit;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}
.event-details-form input:focus,.event-details-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(32,184,184,.1)}
.event-details-form label>small{margin-top:-3px;color:#77736f;font-size:9px}
.event-form-option,.event-form-submit{grid-column:1/-1}
.event-form-submit{display:flex;align-items:center;gap:18px;margin-top:8px}
.event-form-submit .button{min-width:210px;border-radius:999px}
.event-form-submit>small{max-width:320px;color:#77736f;font-size:9px;line-height:1.45}
@media(max-width:700px){.event-form-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);margin:auto 10px 10px;border-radius:28px}.event-form-card{padding:26px 22px}.event-form-heading{grid-template-columns:1fr;gap:14px;padding:27px 0 23px}.event-form-heading h2{font-size:43px}.event-details-form{grid-template-columns:1fr}.event-form-option,.event-form-submit{grid-column:auto}.event-form-submit{align-items:stretch;flex-direction:column}.event-form-submit .button{width:100%}.event-form-submit>small{text-align:center}}
@media(prefers-reduced-motion:reduce){.event-form-dialog[open]{animation:none}}

/* Trust strip — Google attribution and approved turquoise accent */
.trust-google-title{display:flex;align-items:center;gap:7px}
.trust-google-title img{display:block;width:17px;height:17px;object-fit:contain}
.trust-side{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px;min-width:178px}
.trust-side-accent{width:6px;height:6px;margin-top:4px;border-radius:50%;background:var(--accent);color:transparent;font-size:0;line-height:0}
.trust-side-copy{display:flex;flex-direction:column}
@media(max-width:900px){.trust-side{display:none}}
@media(max-width:560px){
  .trust-google-title img{width:15px;height:15px}
  .trust-lead{align-items:flex-start}
  .trust-pulse{margin-top:.52em}
  :is(.venue-paraiso,.venue-sky) .trust-side{display:grid;grid-template-columns:auto 1fr}
}

/* Sky uses the approved integrated hero layout with its own real photograph. */
.venue-sky .hero-visual,.venue-sky .hero::before{background-image:url('../assets/sky/hero-main.jpg?v=approved3')}
.site-footer .venue-connection{display:block}
.venue-sky .hero-visual{aspect-ratio:2208/718;border:0;border-radius:10px;background-color:transparent;box-shadow:none}
@media(max-width:560px){.venue-sky .hero-visual{border-radius:8px}}
@media(min-width:561px){.venue-sky .gallery-photo.tall{grid-column:auto}.venue-sky .gallery-photo:nth-child(2){grid-column:1/-1;grid-row:1}}
@media(max-width:560px){.venue-sky .gallery-photo:nth-child(2){order:1}.venue-sky .gallery-photo:nth-child(1){order:2}.venue-sky .gallery-photo:nth-child(3){order:3}}
:where(a,button,input,select,summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
