rp-announcement-bar,rp-site-header,rp-site-footer,rp-cookie-consent{display:block}
.c360-page{--c-ink:#27342c;--c-deep:#25362d;--c-cream:#f5f2ea;--c-sand:#e9e4d8;--c-line:#d4cbb9;--c-gold:#bca475;background:var(--surface-page,var(--c-cream));color:var(--text-primary,var(--c-ink));font-family:var(--font-body,Arial,sans-serif);line-height:1.6}
.c360-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.c360-button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:11px 20px;border:1px solid currentColor;border-radius:2px;text-decoration:none;font:600 .92rem/1.2 var(--font-body,Arial,sans-serif);cursor:pointer;text-align:center}.c360-button-primary{background:var(--btn-bg);color:var(--btn-text);border-color:var(--btn-bg)}.c360-button-ghost{background:transparent;color:inherit}.c360-button:disabled{cursor:not-allowed;opacity:.65}
.c360-eyebrow{font-size:var(--fs-meta);line-height:1.3;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:#6b5734}
.c360-index{position:sticky;top:var(--rp-experience-switch-top,calc(var(--announce-live,0px) + var(--header-height,64px)));z-index:var(--z-sticky,40);background:var(--surface-page,var(--c-cream));border-bottom:1px solid var(--c-line);box-shadow:0 8px 18px rgba(35,43,36,.08)}.c360-index rp-page-container{display:block}
.c360-section{padding:clamp(58px,7vw,108px) 0}.c360-alt{background:#ece8de}.c360-section-head{max-width:800px;margin-bottom:34px}.c360-section h2{font-family:var(--font-display,Georgia,serif);font-size:var(--fs-h2);line-height:var(--lh-h2);font-weight:500;letter-spacing:-.02em;margin:10px 0 20px}.c360-section-head p:last-child{font-size:1.08rem;max-width:72ch}.c360-section h3{font-family:var(--font-display,Georgia,serif);font-weight:500;font-size:1.5rem;line-height:1.2}.c360-section[id]{scroll-margin-top:calc(var(--header-height,72px) + 70px)}
.c360-note{border-left:3px solid #a58b57;background:#fffaf1;padding:18px 22px;margin-top:24px}.c360-note a,.c360-page a:not(.c360-button){text-underline-offset:3px}

.c360-gallery button{display:block;padding:0;border:0;background:none;width:100%;cursor:zoom-in}.c360-gallery figcaption{margin:0}

.c360-sticky[hidden],.c360-lightbox[hidden]{display:none!important}.c360-sticky{position:fixed;bottom:0;left:0;right:0;padding-bottom:var(--safe-area-bottom,env(safe-area-inset-bottom,0px));z-index:70;background:var(--c-deep,#25362d);color:#fff;box-shadow:0 -6px 22px #0003}.c360-sticky .c360-shell{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px}.c360-sticky p{display:flex;flex-direction:column;margin:0;line-height:1.3}.c360-sticky span{font-size:var(--fs-meta)}.c360-sticky .c360-button{min-height:40px}
.c360-lightbox{position:fixed;inset:0;z-index:1000;background:#0e1712ee;display:grid;place-items:center;padding:max(20px,var(--safe-area-top,env(safe-area-inset-top,0px))) max(20px,var(--safe-area-right,env(safe-area-inset-right,0px))) max(20px,var(--safe-area-bottom,env(safe-area-inset-bottom,0px))) max(20px,var(--safe-area-left,env(safe-area-inset-left,0px)));color:#fff}.c360-lightbox-panel{position:relative;width:min(100%,1000px);max-height:calc(100dvh - 40px);display:flex;flex-direction:column}.c360-lightbox figure{margin:0;min-height:0;display:flex;flex-direction:column;align-items:center}.c360-lightbox img{display:block;max-width:100%;max-height:calc(100dvh - 170px);object-fit:contain}.c360-lightbox figcaption{padding:10px}.c360-lightbox-close{position:absolute;right:0;top:0;z-index:1;border:0;background:#fff;color:#111;font-size:2rem;min-width:48px;min-height:48px;cursor:pointer}.c360-lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:12px}.c360-lightbox-controls button{background:transparent;border:1px solid #fff;color:#fff;min-height:44px;padding:8px 14px;cursor:pointer}
.c360-page a:focus-visible,.c360-page button:focus-visible,.c360-page select:focus-visible,.c360-page summary:focus-visible,.c360-lightbox button:focus-visible{outline:3px solid #bfa15c;outline-offset:3px}

@media(max-width:767px){.c360-section{padding:60px 0}.c360-sticky .c360-shell{padding-block:7px}.c360-sticky p span{display:none}.c360-sticky .c360-button{font-size:var(--fs-meta);padding:8px 10px}.c360-sticky{bottom:var(--safe-area-bottom,env(safe-area-inset-bottom,0px))}}
@media(max-width:390px){.c360-actions>.c360-button{width:100%}.c360-sticky p{font-size:var(--fs-meta)}}
@media(prefers-reduced-motion:reduce){.c360-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Casa 360: la fotografía aérea acompaña la primera lectura en lugar de quedar bajo el texto. */
rp-accommodation-hero[variant="house"] .rp-accommodation-hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:clamp(28px,4vw,64px);align-items:center}
rp-accommodation-hero[variant="house"] .rp-accommodation-hero__copy{max-width:680px}
rp-accommodation-hero[variant="house"] .rp-accommodation-hero__copy h1{max-width:18ch;font-size:var(--fs-display-house);line-height:1.02}
rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media img{width:100%;height:clamp(300px,32vw,420px);max-height:min(420px,50svh);aspect-ratio:auto;object-fit:cover;object-position:center 54%;border-radius:3px 54px 3px 3px}
rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts{margin-top:24px;padding-top:18px}
@media(max-width:900px){rp-accommodation-hero[variant="house"] .rp-accommodation-hero__grid{grid-template-columns:minmax(0,1fr);gap:24px}rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media{order:-1}rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media img{height:auto;max-height:none;aspect-ratio:16/9}}
@media(max-width:767px){rp-accommodation-hero[variant="house"] .rp-accommodation-hero__grid{gap:22px}rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media img{aspect-ratio:4/3;border-radius:3px 32px 3px 3px}rp-accommodation-hero[variant="house"] .rp-accommodation-hero__copy h1{font-size:var(--fs-display-house)}}

/* Ajustes de lectura y jerarquía para las secciones 02–05 de Casa Pullao 360. */
#para-quien,#distribucion,#recorrido,#incluido{scroll-margin-top:calc(var(--header-height,72px) + 56px)}
#para-quien:target,#distribucion:target,#recorrido:target,#incluido:target{padding-top:clamp(38px,4vw,62px)}
#para-quien .c360-section-head h2,#distribucion .c360-section-head h2,#recorrido .c360-section-head h2,#incluido .c360-section-head h2{max-width:34ch;font-size:var(--fs-h2);line-height:var(--lh-h2)}
#para-quien .c360-section-head p:last-child{max-width:64ch}

.c360-last .c360-section-head p:last-child{max-width:72ch}

@media(max-width:767px){#para-quien,#distribucion,#recorrido,#incluido{scroll-margin-top:calc(var(--header-height,64px) + 48px)}#para-quien:target,#distribucion:target,#recorrido:target,#incluido:target{padding-top:34px}}

/* La sección activa conserva una señal de color, peso y subrayado accesible. */
rp-anchor-navigation[variant="suite-band"] a[aria-current="true"]{background:#f2e7d2;color:var(--ink);font-weight:750}
rp-anchor-navigation[variant="suite-band"] a[aria-current="true"]::after{height:4px;background:#634414}
rp-anchor-navigation[variant="suite-band"] a:focus-visible{z-index:1;outline:3px solid #634414;outline-offset:-3px;border-radius:8px 8px 0 0}
rp-anchor-navigation[variant="suite-band"] a:hover{color:var(--ink)}

/* En el mockup sin fotografías, el hero mantiene su proporción y no expone el alt roto. */
.rp-accommodation-hero__media[data-media-state="missing"]{display:flex;min-height:clamp(300px,32vw,420px);flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:3px 54px 3px 3px;background:rgba(255,255,255,.045)!important}
.rp-accommodation-hero__media[data-media-state="missing"] figcaption{display:none}
@media(max-width:767px){.rp-accommodation-hero__media[data-media-state="missing"]{min-height:0;aspect-ratio:4/3;border-top-right-radius:32px}}

/* Casa 360 comparte el hero fotográfico a pantalla completa de las suites. */
.c360-page rp-accommodation-hero[variant="house"]{position:relative;isolation:isolate;min-height:min(860px,calc(100svh - 110px));overflow:hidden;background:var(--rp-forest-900)}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__surface{position:relative;z-index:1;min-height:inherit;padding:0 0 clamp(30px,4vw,52px);background:linear-gradient(90deg,rgba(13,25,22,.84) 0%,rgba(13,25,22,.68) 42%,rgba(13,25,22,.26) 100%),linear-gradient(0deg,rgba(13,25,22,.42),transparent 42%)}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__shell:not(.rp-accommodation-hero__crumb){display:flex;align-items:center;min-height:calc(min(860px,100svh - 110px) - 90px)}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__grid{width:100%;grid-template-columns:minmax(0,1fr);gap:0}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__copy{max-width:780px}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media{position:absolute;z-index:-1;inset:0;margin:0;overflow:hidden}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center 54%;border-radius:0}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media figcaption{display:none}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media[data-media-state="missing"]{min-height:0;border:0;border-radius:0;background:transparent!important}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media[data-media-state="missing"] img{display:none}
@media(max-width:767px){.c360-page rp-accommodation-hero[variant="house"]{min-height:calc(100svh - 90px)}.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__surface{min-height:inherit;background:linear-gradient(90deg,rgba(13,25,22,.76),rgba(13,25,22,.40)),linear-gradient(0deg,rgba(13,25,22,.65),transparent 70%)}.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__shell:not(.rp-accommodation-hero__crumb){min-height:calc(100svh - 180px)}.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media img{object-position:center 54%}}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;width:100%;margin:24px auto 0;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.45);color:#fff}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts>div{min-width:0;padding:12px 10px 0;border-top:2px solid rgba(255,255,255,.62)}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts dt,.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts dd,.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts small{color:#fff}
@media(max-width:767px){.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px}}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts{display:block}
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts>.rp-quick-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;width:100%;margin:0;padding:0;border:0}
@media(max-width:767px){.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__facts>.rp-quick-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Hero con foto: franja oscura superior para que las migas de pan se lean sobre cielo o zonas claras. */
.c360-page rp-accommodation-hero[variant="house"] .rp-accommodation-hero__media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(13,25,22,.74) 0,rgba(13,25,22,.34) 90px,rgba(13,25,22,0) 190px)}

/* Refresh · olas en cada cambio de fondo y progreso de lectura (mejora progresiva) */
.c360-alt{position:relative}
.c360-alt::before{content:"";position:absolute;left:0;right:0;top:-4px;height:8px;pointer-events:none;z-index:1;background:var(--acc-stay-deep,var(--rp-gold-800,#79663e));opacity:.35;-webkit-mask:var(--tide-wave) repeat-x center/32px 8px;mask:var(--tide-wave) repeat-x center/32px 8px}
.c360-index{position:relative}
@supports(animation-timeline:scroll()){
  .c360-index::after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:3px;transform-origin:left;transform:scaleX(0);background:var(--acc-stay-deep,var(--rp-gold-800,#79663e));pointer-events:none;animation:sv-progress linear both;animation-timeline:scroll(root)}
}
@keyframes sv-progress{to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.c360-index::after{animation:none}}

/* Titular de sección unificado con el hub y las suites: --fs-h2 (el componente rp-audience traía su propio clamp hasta 64px). */
.c360-page .rp-audience .rp-audience__title{font-size:var(--fs-h2);line-height:var(--lh-h2);max-width:26ch}

/* Los img/sr absolutos de la tabla comparativa deben recortarse dentro del scroller (a 390px ensanchaban la página a 648px). */
.c360-page .rp-comparison-scroll{position:relative}

/* Barra de datos clave: mismo diseño que las suites (iconos en círculo + dato en Cormorant) */
.sv-keyfacts{padding:clamp(1.5rem,3vw,2.25rem) 0 clamp(1.25rem,2.4vw,1.75rem);background:var(--surface-page,#f7f5ef)}
.sv-keyfacts ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem clamp(1rem,2.4vw,2rem);margin:0;padding:0;list-style:none}
.sv-keyfacts li{display:flex;align-items:center;gap:.9rem;min-width:0}
.sv-kf__ico{flex:none;display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--border-default,var(--rp-line));border-radius:50%;color:var(--acc-stay-deep,var(--rp-gold-800,#79663e))}
.sv-kf__ico svg{width:24px;height:24px}
.sv-keyfacts strong{display:block;font:400 1.3rem/1.15 var(--font-display,Georgia,serif);color:var(--ink,var(--rp-ink-900))}
.sv-keyfacts em{display:block;font-style:normal;font-size:var(--fs-meta);color:var(--text-meta,var(--rp-text-600))}
@media(max-width:900px){.sv-keyfacts ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
