/* OSABUENA WEB-E12C · Experiencia premium independiente, sin frameworks ni fuentes adicionales.
  Inspiraciones de patrones UX, no copia de los sitios de referencia. */
:root{--osa-premium-ink:#000000;--osa-premium-panel:#2E2E33;--osa-premium-gold:#D4AF37;--osa-premium-cream:#F7F2EA;--osa-premium-violet:#8B5CF6;--osa-bg:#000000;--osa-fg:#F7F2EA;--osa-panel:#2E2E33;--osa-violet:#8B5CF6}
html{scroll-behavior:smooth;scroll-padding-top:7rem}
body.osa-page{overflow-x:clip;text-wrap:pretty;background:#000!important;color:#F7F2EA!important}
body.osa-page :is(.osa-atmosphere,.osa-premium-feature,.osa-faq){font-family:Inter,'DM Sans',system-ui,sans-serif}
body.osa-page .osa-atmosphere{padding-block:clamp(64px,9vw,125px);border-block:1px solid rgba(212,175,55,.2)}
.osa-atmosphere-heading{max-width:860px;margin-bottom:36px}
.osa-atmosphere-heading h2{max-width:800px;font-size:clamp(2.3rem,5vw,4.6rem);line-height:1.07;margin:.35em 0}
.osa-atmosphere-heading>p:last-child{max-width:710px;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.7;color:#ded9d0}
.osa-atmosphere-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.85fr);gap:16px}
.osa-atmosphere-grid figure,.osa-atmosphere-filmstrip figure,.osa-premium-feature figure{position:relative;overflow:hidden;isolation:isolate;background:#191717;border:1px solid rgba(212,175,55,.25);border-radius:18px;margin:0}
.osa-atmosphere-grid img,.osa-atmosphere-filmstrip img,.osa-premium-feature img{display:block;width:100%;height:100%;object-fit:cover;filter:contrast(1.06) saturate(.88)}
.osa-atmosphere-grid figure{min-height:clamp(300px,33vw,520px)}
.osa-atmosphere-grid figure::after,.osa-atmosphere-filmstrip figure::after,.osa-premium-feature figure::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 43%,rgba(11,11,11,.91) 100%)}
.osa-atmosphere-grid figcaption{position:absolute;z-index:1;bottom:0;left:0;right:0;padding:clamp(16px,3vw,35px);display:grid;gap:5px;color:var(--osa-premium-cream)}
.osa-atmosphere-grid figcaption span{color:var(--osa-premium-gold);letter-spacing:.14em;font-weight:800;font-size:.74rem}
.osa-atmosphere-grid figcaption strong{font-size:clamp(1.25rem,2.4vw,2.5rem);line-height:1.15}
.osa-atmosphere-grid figcaption small{color:#dedad0;font-size:.84rem}
.osa-atmosphere-filmstrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.osa-atmosphere-filmstrip figure{min-height:clamp(190px,19vw,285px)}
.osa-atmosphere-filmstrip figcaption{position:absolute;z-index:2;bottom:0;left:0;padding:18px;color:#fff;font-weight:700;text-shadow:0 1px 12px #000}
.osa-atmosphere-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}
.osa-premium-feature{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(20px,4vw,68px);align-items:center;padding-block:clamp(36px,6vw,86px)}
.osa-premium-feature h2{font-size:clamp(1.8rem,3.1vw,3.5rem);line-height:1.14;margin:.3em 0}
.osa-premium-feature-copy>p:not(.osa-eyebrow){font-size:1.06rem;line-height:1.75;color:#dedad0}
.osa-premium-feature figure{aspect-ratio:16/9}
.osa-premium-feature figcaption{position:absolute;left:15px;bottom:13px;z-index:1;font-size:.8rem;color:#f2eee7}
.osa-faq{padding-block:clamp(45px,7vw,100px)}
.osa-faq h2{font-size:clamp(2rem,3.3vw,3.6rem);line-height:1.15;max-width:780px}
.osa-faq-grid{display:grid;gap:12px;max-width:950px}
.osa-faq-grid details{border:1px solid rgba(212,175,55,.28);background:#171717;border-radius:12px;overflow:hidden}
.osa-faq-grid summary{cursor:pointer;list-style:none;position:relative;padding:18px 48px 18px 20px;font-size:clamp(1rem,1.2vw,1.14rem);line-height:1.45;font-weight:700;min-height:62px}
.osa-faq-grid summary::-webkit-details-marker{display:none}
.osa-faq-grid summary:after{content:'+';position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--osa-premium-gold)}
.osa-faq-grid details[open] summary:after{content:'−'}
.osa-faq-grid details p{padding:0 20px 20px;margin:0;color:#dedad0;font-size:1rem;line-height:1.8}
.osa-faq-grid details a{color:#E8C975;text-decoration:underline;text-underline-offset:.16em}
@media(hover:hover) and (pointer:fine){
 .osa-atmosphere-grid img,.osa-atmosphere-filmstrip img,.osa-premium-feature img{transition:transform .65s cubic-bezier(.2,.7,.25,1),filter .65s ease}
 .osa-atmosphere-grid figure:hover img,.osa-atmosphere-filmstrip figure:hover img,.osa-premium-feature figure:hover img{transform:scale(1.042);filter:contrast(1.09) saturate(1.02)}
}
@media(min-width:768px) and (prefers-reduced-motion:no-preference){
 html.osa-motion-enabled .osa-reveal{opacity:0;transform:translate3d(0,24px,0)}
 html.osa-motion-enabled .osa-reveal.osa-visible{opacity:1;transform:none;transition:opacity .6s ease,transform .65s cubic-bezier(.2,.7,.25,1)}
 .osa-atmosphere-lead img{animation:osaHeroDrift 26s ease-in-out alternate infinite}
 @keyframes osaHeroDrift{from{transform:scale(1)}to{transform:scale(1.055)}}
}
@media(max-width:760px){
 .osa-atmosphere-grid{grid-template-columns:1fr}
 .osa-atmosphere-grid figure{min-height:320px}
 .osa-atmosphere-filmstrip{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;padding-bottom:12px;overscroll-behavior-x:contain}
 .osa-atmosphere-filmstrip figure{min-width:min(82vw,450px);height:235px;scroll-snap-align:start}
 .osa-premium-feature{grid-template-columns:1fr}
 .osa-premium-feature figure{order:-1}
 .osa-atmosphere-heading>p:last-child{font-size:1.05rem}
}
@media(max-width:390px){.osa-atmosphere-grid figure{min-height:275px}.osa-atmosphere-grid figcaption strong{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}html.osa-motion-enabled .osa-reveal{opacity:1!important;transform:none!important}}
