:root{
  --black:#070604;
  --black-2:#0e0b08;
  --gold:#f4b321;
  --gold-2:#d8920f;
  --cream:#fff6e6;
  --muted:#cdbb98;
  --red:#c91f36;
  --line:rgba(244,179,33,.22);
  --white:#fff;
  --shadow:0 28px 80px rgba(0,0,0,.45);
  --radius:28px;
}
*{box-sizing:border-box}
html{max-width:100%;scroll-behavior:smooth}
body{margin:0;max-width:100%;font-family:Montserrat,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--black);color:var(--cream);overflow-x:hidden}
img,svg,video,canvas{max-width:100%}
img{display:block}
main,section,.container,.grid{min-width:0}
h1,h2,h3,h4,h5,h6,p,a,button,label,span{overflow-wrap:anywhere}
button,input,select,textarea{max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.logo{display:flex;align-items:center;gap:14px;min-width:0}.logo img{width:150px;height:auto}.logo-mark{width:34px!important}.accent{color:var(--gold)}.red{color:var(--red)}
.btn{--btn-cut:13px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 24px;border-radius:0;font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;border:1px solid transparent;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease,color .22s ease;cursor:pointer;isolation:isolate;clip-path:polygon(var(--btn-cut) 0,100% 0,calc(100% - var(--btn-cut)) 100%,0 100%)}.btn:before{content:"";position:absolute;inset:0;z-index:-2;background:rgba(255,255,255,.04)}.btn:after{content:"";position:absolute;left:13px;right:13px;bottom:7px;height:2px;background:currentColor;opacity:.18;transform:scaleX(.28);transform-origin:left;transition:transform .22s ease,opacity .22s ease}.btn:hover{transform:translateY(-2px)}.btn:hover:after{transform:scaleX(1);opacity:.42}.btn:focus-visible{outline:3px solid rgba(244,179,33,.42);outline-offset:4px}.btn-primary{background:linear-gradient(135deg,#f8bd34,#ffd76a 58%,#e49a14);color:#120905;box-shadow:0 16px 34px rgba(244,179,33,.2),inset 0 0 0 1px rgba(255,255,255,.26)}.btn-primary:before{background:linear-gradient(135deg,#f8bd34,#ffd76a 58%,#e49a14)}.btn-primary:hover{box-shadow:0 20px 44px rgba(244,179,33,.26),inset 0 0 0 1px rgba(255,255,255,.36)}.btn-outline{border-color:rgba(244,179,33,.46);color:var(--cream);background:linear-gradient(135deg,rgba(244,179,33,.08),rgba(255,255,255,.025));box-shadow:inset 0 0 0 1px rgba(255,255,255,.045)}.btn-outline:before{background:linear-gradient(135deg,rgba(244,179,33,.11),rgba(255,255,255,.025))}.btn-outline:hover{border-color:var(--gold);color:#fff1cf;background:linear-gradient(135deg,rgba(244,179,33,.16),rgba(201,31,54,.07))}
.section{padding:110px 0;position:relative}.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem}.eyebrow:before{content:"";width:42px;height:1px;background:var(--gold)}.section-title{font-family:Playfair Display,Georgia,serif;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.95;margin:18px 0;color:var(--cream)}.lead{font-size:1.05rem;line-height:1.8;color:#d7cab5;max-width:680px}.grid{display:grid;gap:26px}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease, transform .8s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}
.floaty{animation:floaty 5s ease-in-out infinite}.pulse{animation:pulse 3.4s ease-in-out infinite}@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pulse{0%,100%{filter:drop-shadow(0 0 0 rgba(244,179,33,0))}50%{filter:drop-shadow(0 0 22px rgba(244,179,33,.35))}}
.header{position:fixed;top:0;left:0;width:100%;z-index:50;background:rgba(7,6,4,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(244,179,33,.12)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px}.nav-links{display:flex;align-items:center;gap:30px;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#e7d8bd}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--gold);transition:.28s ease}.nav-links a:hover:after,.nav-links a.is-active:after{width:100%}.nav-links a.is-active{color:var(--gold)}.menu-toggle{display:none;width:46px;height:46px;border-radius:50%;border:1px solid rgba(244,179,33,.3);background:rgba(255,255,255,.04);color:var(--gold)}
.header-cta{min-width:182px;min-height:50px;padding:14px 32px 14px 28px;justify-content:flex-start;font-size:.86rem;letter-spacing:.08em;line-height:1;clip-path:polygon(0 0,100% 0,calc(100% - 26px) 100%,0 100%);box-shadow:0 18px 36px rgba(244,179,33,.18),inset 0 0 0 1px rgba(255,255,255,.2)}.header-cta:after{left:28px;right:auto;bottom:10px;width:34px;transform:none;opacity:.42}.header-cta:hover{transform:translateY(-2px) scale(1.01)}.header-cta:hover:after{transform:none;opacity:.66}
.footer{padding:48px 0;background:#040302;border-top:1px solid var(--line);color:#bbaa8c}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer small{letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){.container{width:min(100% - 26px,720px)}.section{padding:76px 0}.nav{height:74px}.logo img{width:118px}.nav-links{position:fixed;top:74px;left:13px;right:13px;padding:22px;border-radius:22px;background:rgba(7,6,4,.96);border:1px solid var(--line);display:none;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.menu-toggle{display:grid;place-items:center}.desktop-only{display:none!important}.footer-row{flex-direction:column;text-align:center}}

/* TCR-234: salvaguardas adaptables para contenido público. */
@media(max-width:520px){.container{width:min(100% - 24px,720px)}.section{padding:68px 0}.btn{width:100%}.eyebrow{letter-spacing:.16em}.section-title{font-size:clamp(2.25rem,13vw,4rem)}}
