/* Cinematic reference adapted to Beauty by Caballero. */
.page-home{--hero-cream:#f7f4ed;--hero-gold:#dfc2a0;--hero-ink:#302820}
.page-home #nav{position:fixed;inset:0 0 auto;height:96px;background:transparent;border:0;z-index:40;gap:16px;transition:background .25s,box-shadow .25s}
.page-home.cinematic-scrolled #nav{background:rgba(247,244,237,.96);box-shadow:0 1px 0 #30282016}
.page-home .nav-logo{padding:0;border-radius:0;background:none;backdrop-filter:none}
.page-home .nav-logo img{width:110px;height:47px;filter:brightness(0) invert(1)}
.page-home.cinematic-scrolled .nav-logo img{filter:none}
.page-home .nav-links{background:rgba(26,22,18,.88);border:1px solid #f7f4ed1a;border-radius:999px;padding:10px 22px;gap:22px;backdrop-filter:blur(16px)}
.page-home .nav-links a{color:var(--hero-cream);font-size:12px;min-height:24px;line-height:24px}
.page-home .nav-links a:hover{color:var(--hero-gold)}
.page-home .lang-switcher{border-radius:999px;background:rgba(26,22,18,.82);padding:0 5px;backdrop-filter:blur(16px)}
.page-home .lang-btn{color:#ede5da}.page-home .lang-btn.active{color:#fff}
.page-home .nav-cta{border-radius:999px;background:var(--hero-cream);border-color:transparent;color:var(--hero-ink);min-height:46px;padding:12px 18px}
.page-home .nav-hamburger,.hero-motion{border:1px solid #f7f4ed25;border-radius:50%;background:rgba(26,22,18,.86);color:var(--hero-cream);backdrop-filter:blur(16px);min-width:46px;min-height:46px}
.page-home .nav-hamburger span{background:var(--hero-cream);transition:transform .2s,opacity .2s}
.page-home .nav-hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.page-home .nav-hamburger[aria-expanded=true] span:nth-child(2){opacity:0}
.page-home .nav-hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hero-motion{flex:0 0 46px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}
.hero-motion svg{width:18px;height:18px}.hero-motion .motion-play{display:none}.hero-motion[aria-pressed=true] .motion-play{display:block}.hero-motion[aria-pressed=true] .motion-pause{display:none}
.page-home .hero#inicio{position:relative;isolation:isolate;display:flex;align-items:flex-end;max-width:none;width:100%;height:100dvh;min-height:640px;overflow:hidden;margin:0;padding:148px var(--review-gutter) 110px;gap:0;background:#211b16;color:var(--hero-cream)}
.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.hero-photo{left:auto;width:64%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 22%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%)}
.hero-photo img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 15%;transform-origin:65% 25%;animation:caballero-photo-drift 22s ease-in-out infinite alternate;will-change:transform}
@keyframes caballero-photo-drift{from{transform:scale(1.015) translateY(0)}to{transform:scale(1.065) translateY(-.8%)}}
.hero-paused .hero-photo img{animation-play-state:paused}
.hero-shade-horizontal{background:linear-gradient(90deg,rgba(26,20,15,.93) 0%,rgba(26,20,15,.85) 20%,rgba(26,20,15,.62) 40%,rgba(26,20,15,.2) 65%,rgba(26,20,15,.04) 100%)}
.hero-shade-vertical{background:linear-gradient(180deg,rgba(26,20,15,.14) 0%,rgba(26,20,15,.04) 20%,rgba(26,20,15,.13) 40%,rgba(26,20,15,.32) 60%,rgba(26,20,15,.48) 80%,rgba(26,20,15,.78) 100%)}
.hero-shade-corner{background:radial-gradient(ellipse 93.8% 60% at 0 100%,#211b16 0%,rgba(33,27,22,0) 100%)}
.page-home .hero-left{position:relative;width:min(100%,940px);padding:0;align-self:auto;z-index:1}
.hero-brand{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--hero-gold);margin-bottom:24px;line-height:1.6}
.page-home .hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(54px,6.8vw,100px);letter-spacing:-.035em;line-height:1.02;max-width:none;text-wrap:initial;hyphens:none}
.page-home .hero h1 em{color:var(--hero-gold)}
.hero-line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}.hero-line>span{display:block}
.page-home .hero-sub{font-size:17px;line-height:1.8;color:#eee6db;max-width:570px;margin-top:26px}
.page-home .hero-btns{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px 30px;margin-top:32px}
.page-home .hero .btn-primary{position:relative;border-radius:999px;padding:18px 76px 18px 26px;min-height:64px;background:var(--hero-cream);border:0;color:var(--hero-ink);font-size:15px;line-height:1.5;gap:0}
.page-home .hero .btn-primary::before{content:'';position:absolute;right:8px;top:8px;width:48px;height:48px;background:var(--hero-ink);border-radius:50%;transition:background .2s}
.page-home .hero .btn-primary::after{position:absolute;right:23px;top:50%;transform:translateY(-50%);background:#fff}
.page-home .hero .btn-primary:hover::before{background:#74563c}
.page-home .hero .btn-ghost{color:var(--hero-cream);font-size:15px;border-bottom-color:#f7f4ed60;min-height:48px;padding:12px 0}
.page-home .hero .btn-ghost:hover,.hero-scroll:hover{color:var(--hero-gold)}
.hero-scroll{position:absolute;right:var(--review-gutter);bottom:32px;display:inline-flex;align-items:center;gap:14px;min-height:44px;padding:10px 0;color:var(--hero-cream);font-size:13px;letter-spacing:.04em;z-index:1}
.hero-scroll svg{width:13px;height:8px;flex:0 0 auto;stroke:var(--hero-gold)}
.cinematic-loading .hero-left>*,.cinematic-loading .hero-scroll{opacity:0}
.page-home .hero :focus-visible,.page-home #nav :focus-visible{outline:2px solid var(--hero-gold);outline-offset:5px}
@media(min-width:650px) and (max-width:1100px) and (min-height:501px){.page-home .hero h1{font-size:clamp(56px,8vw,78px)}.page-home .hero-sub{font-size:17px}}
@media(min-width:650px) and (max-aspect-ratio:4/5) and (min-height:501px){.page-home .hero h1{font-size:clamp(64px,9vw,88px)}.hero-photo{width:100%;mask-image:none;-webkit-mask-image:none}.hero-photo img{object-position:65% 15%}.page-home .hero#inicio{padding-bottom:130px}}
@media(max-width:1100px){
 .page-home .nav-links{display:none}
 .page-home .nav-links.open{display:flex;position:absolute;inset:96px var(--review-gutter) auto;max-height:calc(100dvh - 120px);overflow:auto;border-radius:24px;padding:16px 22px;background:#211b16;gap:0}
 .page-home .nav-links a{font-size:17px;line-height:1.6;min-height:48px;padding:10px 0}
}
@media(max-width:800px){
 .page-home #nav{height:88px;gap:10px}.page-home .nav-logo{padding:8px 14px}.page-home .nav-logo img{width:90px;height:44px}
 .page-home .nav-links.open{top:88px}.page-home .hero#inicio{padding-top:124px;padding-bottom:100px}
}
@media(max-width:649.98px){
 .page-home #nav{height:88px;padding-top:env(safe-area-inset-top);gap:8px}
 .page-home .nav-cta{display:none}.page-home .nav-logo{margin-right:auto;padding:8px 12px}.page-home .nav-logo img{width:84px;height:42px}
 .page-home .lang-btn{min-width:30px;min-height:42px;font-size:11px;padding:6px 4px}.page-home .lang-switcher{padding:0 2px}
 .page-home .nav-hamburger,.hero-motion{min-width:44px;min-height:44px;width:44px;height:44px;flex-basis:44px}
 .page-home .hero#inicio{height:100dvh;min-height:580px;padding:118px var(--review-gutter) calc(88px + env(safe-area-inset-bottom));align-items:flex-end}
 .hero-photo{width:100%;mask-image:none;-webkit-mask-image:none}.hero-photo img{object-position:68% 15%}.hero-shade-horizontal{background:linear-gradient(90deg,rgba(26,20,15,.3),rgba(26,20,15,.05))}
 .hero-shade-vertical{background:linear-gradient(180deg,rgba(26,20,15,.18),rgba(26,20,15,.12) 25%,rgba(26,20,15,.5) 50%,rgba(26,20,15,.94) 100%)}
 .hero-shade-corner{display:none}.hero-brand{font-size:11px;letter-spacing:.13em;margin-bottom:18px}
 .page-home .hero h1{font-size:clamp(34px,9.6vw,60px);line-height:1.06;letter-spacing:-.025em}
 .page-home .hero-sub{font-size:15px;line-height:1.75;margin-top:20px;max-width:470px}
 .page-home .hero-btns{gap:12px 24px;margin-top:24px;align-items:center}
 .page-home .hero .btn-primary{min-height:56px;padding:16px 66px 16px 22px;font-size:14px}
 .page-home .hero .btn-primary::before{width:40px;height:40px}.page-home .hero .btn-primary::after{right:19px}
 .page-home .hero .btn-ghost{font-size:14px}.hero-scroll{right:var(--review-gutter);bottom:calc(18px + env(safe-area-inset-bottom));font-size:12px;min-height:44px}
}
@media(max-width:359px){.page-home #nav{gap:5px}.page-home .nav-logo{padding:6px 10px}.page-home .nav-logo img{width:76px}.page-home .hero h1{font-size:34px}.page-home .hero-btns{gap:6px 20px}}
@media(max-height:700px) and (max-width:649.98px) and (max-aspect-ratio:1/1){
 .page-home .hero#inicio{padding-top:104px;padding-bottom:76px;min-height:560px}.hero-brand{margin-bottom:12px}
 .page-home .hero h1{font-size:clamp(32px,8.8vw,45px)}.page-home .hero-sub{font-size:14px;line-height:1.65;margin-top:16px}.page-home .hero-btns{margin-top:18px;gap:6px 20px}
}
@media(max-height:500px) and (min-aspect-ratio:1/1){
 .page-home #nav{height:72px;padding-top:env(safe-area-inset-top)}.page-home .nav-logo{padding:4px 14px}.page-home .nav-logo img{height:40px}
 .page-home .nav-links.open{top:72px;max-height:calc(100dvh - 84px)}.page-home .hero#inicio{min-height:320px;height:100dvh;padding:88px var(--review-gutter) 52px}
 .hero-photo{width:58%}.hero-photo img{object-position:50% 12%}.hero-brand{font-size:10px;margin-bottom:10px}.page-home .hero h1{font-size:clamp(28px,9dvh,44px);line-height:1.02}
 .page-home .hero-sub{font-size:13px;line-height:1.6;max-width:570px;margin-top:12px}.page-home .hero-btns{margin-top:14px;gap:24px;flex-wrap:nowrap}
 .page-home .hero .btn-primary{min-height:46px;padding:12px 58px 12px 20px;font-size:13px}.page-home .hero .btn-primary::before{width:34px;height:34px;top:6px;right:6px}.page-home .hero .btn-primary::after{right:14px}
 .page-home .hero .btn-ghost{font-size:13px;min-height:44px;padding:8px 0}.hero-scroll{bottom:5px;font-size:11px;min-height:36px}
}
@media(max-height:500px) and (max-width:649.98px) and (min-aspect-ratio:1/1){.page-home .nav-links.open{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}}
@media(max-height:350px) and (min-aspect-ratio:1/1){.hero-brand{display:none}}
@media(prefers-reduced-motion:reduce){.page-home *{transition:none!important;animation:none!important}.cinematic-loading .hero-left>*,.cinematic-loading .hero-scroll{opacity:1}}
