/* Two audiences, one identity. Overrides stay scoped to each journey. */
[hidden]{display:none!important}
.audience-secondary{border:1px solid #d7d1e0;background:#ffffff;color:#15122B}
.hero .actions .button{min-height:52px}
.owner-next{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0 30px}
body.cuenta .ficha-tools{grid-row:1;margin-top:0;padding-top:25px}
body.cuenta .ficha-media,body.cuenta .ficha>.detail{grid-row:2}
.public-demo-note{padding:9px 0;color:#71687d;font-size:11px;letter-spacing:.02em;border-bottom:1px solid #e2dfe7}
body.visitante .demo-banner,body.visitante .ficha-heading,body.visitante #modoBtn,body.visitante .owner-next{display:none!important}
body.visitante .top{min-height:70px;padding:12px 0!important}
body.visitante .top .visitor-bar .btn{font-size:12px;min-height:44px;padding:10px 16px}
body.visitante .view{padding-top:22px}
body.visitante .ficha{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:26px 42px}
body.visitante .visitor-summary{grid-column:2;grid-row:1;align-self:start}
.public-meta{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em;color:#655a76;font-weight:700}
.availability{font-size:11px;letter-spacing:0;color:#466128;background:#edf5d9;border-radius:30px;padding:5px 9px;font-weight:500}
.availability.off{background:#eeebf4;color:#71687d}
.visitor-summary h1{font-family:var(--display);font-size:36px;line-height:1.12;letter-spacing:-.02em;font-weight:650;margin-top:14px}
.public-location{font-size:14px;color:#70657e;margin-top:10px}
.public-price{font-family:var(--display);font-size:32px;font-weight:750;line-height:1.15;letter-spacing:-.02em;margin-top:23px}
.public-price small{font-family:var(--body);display:block;font-size:13px;font-weight:400;letter-spacing:0;margin-top:7px;color:#655a76}
.public-breakdown{font-size:12px;color:#70657e;margin-top:10px;line-height:1.6}
.public-specs{display:flex;gap:16px;flex-wrap:wrap;margin-top:19px;padding-top:15px;border-top:1px solid #e2dfe7;font-size:13px}
body.visitante .ficha-media{grid-column:1;grid-row:1/span 2;align-self:start}
body.visitante .ficha>.detail{grid-column:2;grid-row:2;padding:0}
body.visitante .detail>.tags,body.visitante .detail>h2,body.visitante .detail>.muted,body.visitante .detail>.price,body.visitante .detail>.total,body.visitante .detail>.specs-row{display:none}
body.visitante .ficha .more{margin-top:0}
body.visitante .more summary{font-size:14px;min-height:48px}
body.visitante .more dl{font-size:14px}
body.visitante .visit{margin-top:18px;box-shadow:none}
body.visitante .visit p{font-size:14px}
body.visitante .visit .slots span{font-size:12px;padding:9px 12px}
body.visitante .visit .btn{min-height:50px;font-size:14px}
body.visitante .visit .trust{font-size:10px}
body.visitante .ficha .detail>.actions .btn{font-size:13px;min-height:44px}
body.visitante .ficha .detail .mapa{order:10}
body.visitante .fotos-note{font-size:11px!important;line-height:1.5}
body.visitante .lightbox .close{width:48px;height:48px}
body.visitante .unavail{margin-bottom:22px;padding:22px;background:#eee7ff;border:0;border-radius:18px}
body.visitante .unavail .btn{white-space:normal;text-align:left;font-size:14px;min-height:48px}
body.visitante .missing-property{padding:45px 0;max-width:540px;display:grid;gap:20px}
.missing-property h1{font-size:38px;line-height:1.15}.missing-property p{font-size:16px;color:#71687d}
body.visitante #v-portal .agency{display:none}
body.visitante #v-portal .filters select{font-size:15px;min-height:48px}
body.visitante #v-portal .vista-toggle{display:none}
body.visitante #v-portal .section-head{margin-bottom:20px}
body.visitante #v-wa>.kicker,body.visitante #v-wa>.h2,body.visitante #v-wa>.sub,body.visitante #v-wa .side,body.visitante #v-wa .notch{display:none}
.chat-context{display:flex;gap:13px;align-items:center;margin-bottom:14px}
.chat-context .btn{height:46px;width:46px;padding:0;font-size:20px}
.chat-context strong{display:block;font-size:15px}.chat-context span{font-size:12px;color:#71687d}
body.visitante .phoneWrap{display:block;max-width:680px;margin:0 auto;padding:0;background:none}
body.visitante .phone{transform:none;box-shadow:none;border:1px solid #e2dfe7;border-radius:20px;width:100%;max-width:none;height:600px}
body.visitante .phone header{padding:17px 20px;background:#15122B;color:white}
body.visitante .phone header small{color:#d4cbe0;font-size:11px}
body.visitante .phone header b{font-size:14px}
body.visitante .phone .chat{padding:18px;background:#f7f5fa}
body.visitante .msg{font-size:15px;line-height:1.55;max-width:92%}
body.visitante .msg.sys{display:none}
body.visitante .chat .btns button{min-height:48px;font-size:14px;padding:12px 16px;text-align:left}
body.visitante .phone footer input{font-size:16px;min-height:46px}
body.visitante .phone footer .send{width:46px;height:46px}
body.visitante .asesorBtn{min-height:44px;font-size:13px}
body[data-view=wa].visitante .cta-bar,body[data-view=portal].visitante .cta-bar{display:none!important}
body[data-view=wa].visitante .foot{display:none}
.publish-progress{display:flex;gap:12px;margin:30px 0 0;padding:0;list-style:none;max-width:1000px;scroll-margin-top:130px}
.publish-progress li{display:flex;align-items:center;gap:9px;flex:1;padding:14px;border-bottom:2px solid #ddd6e6;color:#776c87;font-size:13px}
.publish-progress li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e9e4f0}
.publish-progress li[aria-current]{color:#5B3DF5;border-color:#5B3DF5;font-weight:700}
.publish-progress li[aria-current]>span{background:#5B3DF5;color:white}
.publish-progress li.complete{color:#4d6230;border-color:#c6daaa}
.publish-help{max-width:760px;font-size:13px;line-height:1.6;color:#71687d;margin:14px 0 0}
.publish-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:1000px;padding:8px 0}
.publish-actions .btn{min-height:50px;font-size:14px}
#publishNext,#publishSubmit{margin-left:auto}
#v-publicar input,#v-publicar select{font-size:16px;min-height:48px}
#v-publicar label{font-size:13px}
#v-publicar .chip{min-height:44px;font-size:13px}
#v-publicar fieldset{margin-top:0}
#v-publicar input[aria-invalid=true]{border-color:#b04c3c;outline:2px solid #b04c3c22}
body.cuenta #navFicha{font-size:11px}
@media(max-width:860px){
body.visitante .ficha{display:flex;flex-direction:column;gap:20px}
body.visitante .visitor-summary{order:0;width:100%}
body.visitante .ficha-media{order:1;width:100%}
body.visitante .ficha>.detail{order:2;width:100%;display:grid}
body.visitante .visitor-summary h1{font-size:29px;max-width:22ch}
body.visitante .public-price{font-size:29px;margin-top:17px}
body.visitante .public-specs{gap:14px;font-size:12px;margin-top:14px;padding-top:13px}
body.visitante .public-location{font-size:13px;margin-top:8px}
body.visitante .ficha-media>.video{aspect-ratio:1.55;border-radius:17px}
body.visitante .ficha .foto{height:74px}
body.visitante .cta-bar{padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));gap:12px;background:#ffffff;box-shadow:0 -8px 24px #15122B09}
body.visitante .cta-bar .p{font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
body.visitante .cta-bar .p small{font-size:10px;margin-top:6px;max-width:170px;letter-spacing:0}
body.visitante .cta-bar .btn{min-height:50px;background:#5B3DF5;color:white;font-size:13px;padding:13px 18px;border-radius:30px}
body.visitante .cta-bar .ico{display:none}
body.visitante .top{flex-wrap:nowrap;min-height:68px}
body.visitante .top .logo{margin-right:auto}
body.visitante .top .visitor-bar{width:auto;flex:none}
body.visitante .top .visitor-bar .btn{font-size:12px;padding:10px 13px}
body.visitante .view{padding-top:18px}
body.visitante .foot{margin-top:28px}
body.visitante .foot .txt span{font-size:12px}
body.visitante .phoneWrap{max-width:none}
body.visitante #v-wa{padding:0;margin-top:10px}
body.visitante .phone{height:calc(100dvh - 205px);min-height:390px;border-radius:16px}
body[data-view=wa].visitante{padding-bottom:0}
body.visitante .chat-context{margin:10px 0}
body.visitante .chat-context strong{font-size:14px}
body.visitante .chat-context span{font-size:11px}
body.visitante .phone header{padding:12px 14px}
body.visitante .phone header .av{width:34px;height:34px}
body.visitante .phone .chat{padding:14px}
body.visitante .phone footer{padding:10px}
}
@media(max-width:640px){
.hero .actions{flex-direction:column;align-items:stretch}.hero .actions .button{justify-content:space-between;font-size:14px}
.owner-next{display:grid;grid-template-columns:1fr 1fr;gap:10px}.owner-next .btn{font-size:12px;padding:12px;min-height:48px}.owner-next .primary{grid-column:1/-1}
body.cuenta .ficha-media{grid-row:2}body.cuenta .ficha>.detail{grid-row:3}
body.cuenta .top nav button{min-height:44px;font-size:11px;padding:9px 11px}
body.cuenta .top nav{flex-wrap:wrap;overflow:visible}
body.cuenta #navFicha{display:none}
body.cuenta .top .modo{font-size:10px;min-height:44px;padding:10px}
body.visitante .public-demo-note{font-size:10px;padding:7px 0}
body.visitante .public-breakdown{font-size:11px;line-height:1.5}
body.visitante .visitor-summary h1{font-size:28px;letter-spacing:-.02em}
body.visitante .ficha .video .dur{font-size:11px}
body.visitante .ficha .detail>.actions .btn{flex:1}
body.visitante .visit .trust{flex-wrap:wrap;font-size:10px}
.publish-progress{gap:5px;margin-top:25px}.publish-progress li{padding:10px 3px;gap:6px;font-size:10px}.publish-progress li>span{width:23px;height:23px;flex:none}
#v-publicar .h2{font-size:36px}#v-publicar .sub{font-size:14px}
#v-publicar .row{grid-template-columns:1fr 1fr!important;gap:16px 12px}
#v-publicar label{font-size:12px}
#v-publicar .row label:has(#p-titulo),#v-publicar .row label:has(#p-zona),#v-publicar .row label:has(#p-tipo),#v-publicar .row label:has(#p-asesorwa),#v-publicar .row label:has(#p-asesor){grid-column:1/-1}
#v-publicar input,#v-publicar select{width:100%;min-width:0;padding:12px;font-size:16px}
#v-publicar input[type=file]{font-size:12px;padding:14px 9px}
#v-publicar fieldset{padding:23px 17px}
#v-publicar .chips{gap:8px}#v-publicar .chip{font-size:12px;padding:10px 12px}
.publish-actions{position:sticky;bottom:0;background:#faf9fd;padding:14px 0 calc(14px + env(safe-area-inset-bottom,0px));z-index:10;border-top:1px solid #e2dfe7}
.publish-actions .btn{font-size:12px;padding:13px 17px}.publish-help{font-size:12px}
#v-publicar .publish-sign-preview{padding:16px;gap:16px}#v-publicar .publish-sign-preview .kicker{font-size:7px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:640px){#v-publicar .row label:has(#p-contact-name),#v-publicar .row>p{grid-column:1/-1}}
/* Keep the mobile action bar attached to the viewport from the first frame. */
body.visitante .view.on{animation:none;transform:none}
/* Vertical, immersive landing for an available property. */
.immersive-player{position:relative!important;width:100%;aspect-ratio:9/16!important;max-height:760px;background:#161223!important;border-radius:22px!important;overflow:hidden;isolation:isolate}
.immersive-player>video{display:block!important;position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;background:#161223}
.immersive-player>video.sample-video{object-fit:cover!important}
.immersive-player::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#100b2166,transparent 30%,transparent 45%,#100b21c9 85%,#100b2133);z-index:1}
.immersive-controls{position:absolute;top:14px;left:14px;right:14px;display:flex;gap:7px;align-items:center;flex-wrap:wrap;z-index:3}
.immersive-badge{width:100%;color:#fff;font-size:9px;font-weight:700;letter-spacing:.12em;text-shadow:0 1px 4px #0008;margin-bottom:2px}
.immersive-controls button,.immersive-details{border:1px solid #ffffff50;background:#15122Bd9;color:#fff;border-radius:28px;min-height:44px;padding:10px 15px;font:600 12px var(--body);cursor:pointer;backdrop-filter:blur(10px)}
.immersive-controls button:focus-visible,.immersive-details:focus-visible{outline:3px solid #C8FF3D;outline-offset:3px}
.immersive-controls button:last-child{margin-left:auto}
.immersive-info{position:absolute;left:20px;right:20px;bottom:60px;z-index:2;color:#fff;pointer-events:none}
.immersive-info>span{font-size:10px;font-weight:700;letter-spacing:.1em;color:#d4ff81}
.immersive-info .immersive-title{font-size:27px;line-height:1.12;letter-spacing:-.02em;margin:8px 0;color:#fff;max-width:24ch;text-shadow:0 2px 6px #0005}
.immersive-info p{font-size:12px;color:#fff;margin:0 0 14px}
.immersive-details{pointer-events:auto;background:#fffdf5;color:#15122B;border:0;backdrop-filter:none}
.immersive-status{position:absolute;left:22px;right:22px;top:38%;z-index:2;color:white;font-size:14px;text-align:center;background:#15122Bd9;padding:16px;border-radius:14px;pointer-events:none}
body.video-first .ficha{grid-template-columns:minmax(280px,390px) minmax(0,1fr);gap:28px 60px;justify-content:center}
body.video-first .ficha-media>.video{margin:auto}
body.video-first .visitor-summary{scroll-margin-top:110px}
#p-videoPrev{align-items:center;gap:18px}
#p-videoPrev video{width:170px!important;height:auto!important;max-height:310px;aspect-ratio:9/16;object-fit:contain;background:#161223;border-radius:14px}
@media(max-width:860px){
body.video-first .ficha{display:flex;gap:24px}
body.video-first .ficha-media{order:0}
body.video-first .visitor-summary{order:1}
body.video-first .ficha>.detail{order:2}
body.video-first #v-ficha{padding-top:0}
body.video-first .ficha-media>.immersive-player{height:calc(100svh - 175px);min-height:350px;max-height:850px;aspect-ratio:auto!important;border-radius:0 0 22px 22px!important;width:calc(100% + 36px);margin-left:-18px}
body.video-first .fotos{margin-top:18px}
body.video-first .immersive-info .immersive-title{font-size:26px}
body.video-first .immersive-info{left:20px;right:20px;bottom:62px}
body.video-first .visitor-summary{scroll-margin-top:100px}
}
@media(min-width:641px) and (max-width:860px){body.video-first .ficha-media>.immersive-player{width:100%;margin-left:0;max-width:430px;margin-inline:auto;border-radius:22px!important}}
@media(max-width:640px){body.video-first .ficha-media>.immersive-player{max-width:none!important}}

.visit-calendar{padding:22px;border:1px solid #ddd4eb;border-radius:18px;background:#faf9fd;margin-top:14px}.visit-calendar .row{margin-bottom:16px}#visitSlots{list-style:none;padding:0;margin:15px 0}#visitSlots li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid #e2dfe7;font-size:13px}#visitSlots button{min-height:44px;font-size:12px;padding:8px 12px}#visitCalendarNote{margin-top:12px}body.cuenta .ficha-media>.video:has(video){aspect-ratio:9/16;max-width:390px;margin-inline:auto;background:#161223}body.cuenta .ficha-media>.video video{height:100%;width:100%;object-fit:contain}#p-videoPrev video{aspect-ratio:9/16;object-fit:contain}@media(max-width:640px){.visit-calendar{padding:16px}#visitSlots li{font-size:12px}}
/* Shared owner experience: quiet surfaces, clear type and generous touch targets. */
:root{--timbre-page:#FAF9FD;--timbre-surface:#fff;--timbre-lavender:#eee8fa;--timbre-border:#ded7eb;--timbre-ink:#15122B;--timbre-purple:#5B3DF5}
body.cuenta{background:var(--timbre-page)}
body.cuenta .btn{min-height:44px;font-size:14px;border-radius:24px}
body.cuenta .btn.primary{box-shadow:0 3px 0 #15122B;border:1px solid #15122B}
body.cuenta .small,body.cuenta .muted,body.cuenta .publish-help{font-size:14px;line-height:1.65}
body.cuenta fieldset{background:#fff;border:1px solid var(--timbre-border);border-radius:22px;padding:28px}
body.cuenta input,body.cuenta select{background:#fff;border-color:#d6cde4;font-size:16px}
body.cuenta legend{font-size:19px;font-weight:650;padding:0 8px}
body.cuenta .kicker{font-size:11px;color:#62546f}
.draft-toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:25px 0 12px;max-width:1000px}
#draftStatus{font-size:13px;color:#60566e;line-height:1.5}
.draft-hub{background:var(--timbre-lavender);border:1px solid var(--timbre-border);border-radius:20px;padding:20px;margin-top:24px;max-width:1000px}
.draft-hub>div,.draft-hub details>div{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0}
.draft-hub p{font-size:14px;line-height:1.5;margin:0}.draft-hub summary{font-size:14px;cursor:pointer;padding:14px 0;min-height:44px}
.publish-progress{max-width:1000px;gap:10px}.publish-progress li{font-size:14px;padding:12px 8px}.publish-progress li>span{min-width:28px}
#v-publicar .publish-sign-preview{background:var(--timbre-page);border:1px solid var(--timbre-border);border-radius:18px;margin-top:24px}
#v-publicar .publish-sign-preview .kicker{font-size:11px}
#v-publicar .guide{display:block;background:var(--timbre-page);border:1px solid var(--timbre-border);border-radius:16px;padding:16px 20px}
.guide summary{font-size:15px;font-weight:600;min-height:44px;cursor:pointer;display:flex;align-items:center}.guide span{display:block;margin:10px 0;font-size:14px;line-height:1.6}
.visit-calendar{background:var(--timbre-page);padding:22px;margin-top:18px}
.availability-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:18px}.availability-head h3{font-size:21px}.availability-head>span{font-size:12px;color:#62546f}
#v-publicar .visit-calendar .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
#v-publicar .visit-calendar .availability-times{grid-template-columns:repeat(3,1fr)}
.weekday-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.weekday-picker button{min-width:44px;min-height:44px;border:1px solid #d1c5e3;border-radius:50%;font:600 13px var(--body);background:white;color:#15122B;cursor:pointer}.weekday-picker button[aria-pressed=true]{background:#5B3DF5;border-color:#5B3DF5;color:white}
#addVisitSlot{margin-top:16px;background:#15122B;color:#fff}
.availability-rules>div{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--timbre-border);padding:14px 0}.availability-rules p{font-size:14px;line-height:1.6;margin:0}.availability-rules .btn{flex:none}
#visitDetails summary{font-size:14px;font-weight:600;min-height:44px;cursor:pointer;padding:12px 0;color:#5B3DF5}#visitSlots{max-height:320px;overflow:auto;padding-right:8px}
#visitSlots li{font-size:14px}#visitSlots button{font-size:13px}
.publish-review{padding:26px;background:#fff;border:1px solid var(--timbre-border);border-radius:24px;max-width:1000px}
.review-heading h3{font-size:32px;letter-spacing:-.02em;margin:10px 0}.review-heading p{font-size:15px;color:#62546f;margin-bottom:25px}
.review-layout{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:32px}.review-media{position:relative;align-self:start}.review-media video{width:100%;aspect-ratio:9/16;object-fit:contain;background:#161223;border-radius:22px}.review-media>span{display:block;text-align:center;font-size:13px;margin-top:10px;color:#62546f}.review-data h2{font-size:29px;line-height:1.15;margin:14px 0}.review-data p{font-size:14px;line-height:1.6;margin:10px 0}.review-price{display:block;font-size:30px;margin-top:20px;letter-spacing:-.02em}.review-specs{display:flex;gap:20px;font-size:15px;padding:18px 0;border-block:1px solid #e8e2ef;margin:18px 0}.review-data h4{font-size:18px;margin-top:24px}.review-slots{font-size:14px;line-height:1.9;padding-left:20px}.review-photos{display:flex;gap:12px;overflow:auto;margin:24px 0}.review-photos img{width:120px;height:90px;object-fit:cover;border-radius:12px}.review-notice{margin-top:24px;border-radius:16px;background:var(--timbre-lavender);padding:20px}.review-notice b{font-size:20px}.review-notice p{font-size:14px;line-height:1.6;margin-top:9px}
#p-fotosPrev img{max-width:130px;max-height:100px;object-fit:cover;border-radius:12px}
body.visitante .public-demo-note,body.visitante .public-breakdown,body.visitante .fotos-note{font-size:13px!important;line-height:1.5}
body.visitante .public-meta,body.visitante .availability,body.visitante .visit .trust{font-size:12px}
body.visitante .cta-bar .p small{font-size:12px}
body.visitante .immersive-badge{font-size:11px}.immersive-info>span{font-size:12px}.immersive-info p{font-size:14px}.immersive-controls button,.immersive-details{font-size:14px}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #5B3DF5;outline-offset:4px}
@media(max-width:640px){
 body.cuenta .btn{font-size:14px;min-height:48px}body.cuenta .top nav button{font-size:13px;min-height:44px}
 #v-publicar fieldset{padding:22px 16px}#v-publicar label{font-size:14px}#v-publicar .sub{font-size:16px}
 .draft-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.draft-hub>div,.draft-hub details>div{align-items:flex-start;flex-direction:column}
 .publish-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;scroll-margin-top:160px}.publish-progress li{flex-direction:column;align-items:flex-start;font-size:12px;gap:8px;padding:10px 3px}.publish-progress li>span{width:28px;height:28px}
 .publish-actions{gap:10px}.publish-actions .btn{font-size:14px!important;padding:12px 18px!important}.publish-help{font-size:14px}
 #v-publicar .visit-calendar .row{grid-template-columns:1fr!important}#v-publicar .visit-calendar .availability-times{grid-template-columns:1fr 1fr!important}.availability-times>label:last-child{grid-column:1/-1}
 .availability-head{align-items:flex-start;flex-direction:column;gap:5px}.availability-rules>div{align-items:flex-start;flex-direction:column;gap:10px}.visit-calendar{padding:16px}
 .publish-review{padding:20px 16px}.review-layout{grid-template-columns:1fr;gap:24px}.review-media{width:min(100%,300px);margin:auto}.review-data h2{font-size:28px}.review-heading h3{font-size:29px}
 .immersive-controls{gap:6px}.immersive-controls button{padding:10px 12px}.immersive-info{bottom:65px}
 body.visitante .cta-bar{padding-inline:14px}body.visitante .cta-bar .p{font-size:19px}body.visitante .cta-bar .btn{font-size:14px;padding-inline:16px}
}
