.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-368989 .elementor-element.elementor-element-c0000027{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c000000c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-368989 .elementor-element.elementor-element-ca4e843{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c000000e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000010{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000012{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000014{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000016{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000018{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c000001a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c000001c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c000001e{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000020{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000022{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000024{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-368989 .elementor-element.elementor-element-c0000026{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-368989 .elementor-element.elementor-element-c0000027{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c000000c{--width:100%;}.elementor-368989 .elementor-element.elementor-element-ca4e843{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c000000e{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000010{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000012{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000014{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000016{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000018{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c000001a{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c000001c{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c000001e{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000020{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000022{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000024{--width:100%;}.elementor-368989 .elementor-element.elementor-element-c0000026{--width:100%;}}/* Start custom CSS *//* ============ TOKENS ============ */
:root{
  --sans:"Helvetica Neue",Helvetica,Arial,"Liberation Sans","Nimbus Sans",sans-serif;
  --ink:#131313;
  --ink-2:#1C1B1B;
  --bone:#FFFFFF;
  --bone-2:#F3EDE1;
  --bone-3:#E6DCC8;
  --sand:#C1B38E;
  --sand-lt:#D6C7AF;
  --ash:#7A7A7A;
  --slate:#54595F;
  --red:#C69133;
  --red-dk:#A8762A;
  --gold-br:#D1A347;
  --line:rgba(19,19,19,.14);
  --line-i:rgba(255,255,255,.16);
  --pad:clamp(20px,4.4vw,72px);
  --maxw:1560px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-io:cubic-bezier(.76,0,.24,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--sans);
  font-size:clamp(15px,1.02vw,17px);line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
::selection{background:var(--red);color:var(--ink)}

/* grain */
body::after{
  content:"";position:fixed;inset:-50%;z-index:9999;pointer-events:none;opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode:multiply;animation:grain 7s steps(6) infinite;
}
@keyframes grain{0%,100%{transform:translate(0,0)}16%{transform:translate(-3%,2%)}33%{transform:translate(2%,-3%)}50%{transform:translate(-2%,-2%)}66%{transform:translate(3%,1%)}83%{transform:translate(-1%,3%)}}
@media (prefers-reduced-motion:reduce){body::after{animation:none}}

/* ============ TYPE ============ */
.d,.h1,.h2,.h3{
  font-family:var(--sans);font-weight:900;
  text-transform:uppercase;line-height:.92;letter-spacing:-.035em;margin:0;
  text-wrap:balance;
}
.h1{font-size:clamp(2.5rem,6.9vw,7.1rem)}
@media(max-width:700px){.d,.h1,.h2,.h3{line-height:.98;letter-spacing:-.03em}}
.h2{font-size:clamp(2rem,5.05vw,5.15rem)}
.h3{font-size:clamp(1.5rem,2.6vw,2.7rem);font-weight:900}
.out{color:transparent;-webkit-text-stroke-width:1.2px;-webkit-text-stroke-color:var(--ink)}
@media(min-width:700px){.out{-webkit-text-stroke-width:2px}}
@media(min-width:1200px){.out{-webkit-text-stroke-width:2.2px}}
.on-dark .out,.hero .out{-webkit-text-stroke-color:var(--bone)}
.cred .out{-webkit-text-stroke-color:var(--ink)}
@supports not (-webkit-text-stroke-width:1px){.out{color:inherit;opacity:.4}}
.serif{font-family:var(--sans);font-weight:400;font-style:italic;text-transform:none;letter-spacing:-.01em}
.eyebrow{
  font-size:clamp(9.5px,.72vw,11.5px);font-weight:700;font-weight:700;
  letter-spacing:.34em;text-transform:uppercase;color:var(--ash);
  display:flex;align-items:center;gap:.85em;margin:0 0 clamp(22px,3vw,44px)
}
.eyebrow::before{content:"";width:7px;height:7px;background:var(--red);flex:none;transform:rotate(45deg)}
.eyebrow{color:var(--red-dk)}
.on-dark .eyebrow{color:var(--red)}

.lead{font-size:clamp(1.02rem,1.42vw,1.42rem);line-height:1.5;max-width:62ch;color:#2a2926}
.on-dark .lead{color:rgba(239,235,227,.78)}
p{margin:0 0 1.05em}
.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-weight:700}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
section{position:relative}
.rule{height:1px;background:var(--line);border:0;margin:0}
.on-dark{background:var(--ink);color:var(--bone)}
.on-dark .rule,.rule-i{background:var(--line-i)}

/* reveal */
[data-rv]{opacity:0;transform:translateY(clamp(18px,2.4vw,38px));transition:opacity .95s var(--ease),transform 1.05s var(--ease)}
[data-rv].in{opacity:1;transform:none}
[data-rv-d="1"]{transition-delay:.08s}[data-rv-d="2"]{transition-delay:.16s}
[data-rv-d="3"]{transition-delay:.24s}[data-rv-d="4"]{transition-delay:.32s}[data-rv-d="5"]{transition-delay:.4s}
.mask{display:block;overflow:hidden;padding-top:.2em;margin-top:-.2em}
.mask&gt;span{display:block;transform:translateY(105%);transition:transform 1.15s var(--ease-io)}
.in .mask&gt;span,.mask.in&gt;span{transform:none}
.mask:nth-child(2)&gt;span{transition-delay:.07s}.mask:nth-child(3)&gt;span{transition-delay:.14s}
.mask:nth-child(4)&gt;span{transition-delay:.21s}.mask:nth-child(5)&gt;span{transition-delay:.28s}
@media (prefers-reduced-motion:reduce){
  [data-rv]{opacity:1!important;transform:none!important}
  .mask&gt;span{transform:none!important}
}

/* ============ BUTTONS ============ */
.btn{
  --bg:var(--ink);--fg:var(--bone);
  position:relative;display:inline-flex;align-items:center;gap:.8em;
  padding:1.02em 1.7em;background:var(--bg);color:var(--fg);
  font-size:clamp(11px,.82vw,13px);font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  font-weight:800;
  border:1px solid var(--bg);overflow:hidden;isolation:isolate;cursor:pointer;
  transition:color .5s var(--ease),border-color .5s var(--ease)
}
.btn span{position:relative;z-index:2;display:block}
.btn::before{
  content:"";position:absolute;inset:0;z-index:1;background:var(--red);
  transform:translateY(101%);transition:transform .55s var(--ease-io)
}
.btn:hover::before,.btn:focus-visible::before{transform:translateY(0)}
.btn:hover,.btn:focus-visible{color:var(--ink);border-color:var(--red)}
.btn--ghost{--bg:transparent;--fg:var(--ink);border-color:var(--ink)}
.btn--ghost:hover{color:var(--ink)}
.on-dark .btn--ghost{--fg:var(--bone);border-color:rgba(239,235,227,.45)}
.btn--bone{--bg:var(--bone);--fg:var(--ink)}
.arw{display:inline-block;transition:transform .5s var(--ease)}
.btn:hover .arw{transform:translateX(5px)}

.tlink{
  display:inline-flex;align-items:center;gap:.6em;font-size:clamp(11px,.82vw,13px);font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;font-weight:800;
  padding-bottom:.35em;background-image:linear-gradient(var(--red),var(--red));
  background-size:0% 1.5px;background-repeat:no-repeat;background-position:0 100%;
  transition:background-size .5s var(--ease),color .4s var(--ease);
  border-bottom:1px solid currentColor
}
.tlink:hover{background-size:100% 1.5px;color:var(--red)}
.tlink:hover .arw{transform:translateX(5px)}

/* ============ TOPBAR + NAV ============ */
.topbar{background:var(--red);color:var(--ink);font-size:clamp(10.5px,.76vw,12.5px);letter-spacing:.05em}
.topbar .wrap{display:flex;gap:1em;align-items:center;justify-content:center;flex-wrap:wrap;padding-block:.72em;text-align:center}
.topbar b{font-weight:800;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.topbar a{border-bottom:1px solid rgba(19,19,19,.5);font-weight:800;text-transform:uppercase;letter-spacing:.11em;white-space:nowrap;font-size:.92em}
.topbar a:hover{border-bottom-color:var(--ink)}
@media(max-width:760px){.topbar .t-mid{display:none}}

.nav{position:sticky;top:0;z-index:200;background:var(--ink);color:var(--bone);transition:background .4s var(--ease)}
.nav .wrap{display:flex;align-items:center;gap:clamp(14px,2.4vw,40px);height:clamp(62px,5.4vw,84px)}
.brand{display:flex;align-items:baseline;gap:.7em;margin-right:auto}
.brand b{font-weight:900;font-weight:900;text-transform:uppercase;letter-spacing:.005em;word-spacing:.12em;font-size:clamp(15px,1.32vw,21px);line-height:1.06}
.brand i{font-style:normal;font-size:9px;letter-spacing:.24em;color:rgba(239,235,227,.5);font-weight:700;white-space:nowrap}
.nav nav{display:flex;gap:clamp(14px,1.9vw,32px)}
.nav nav a{font-size:clamp(10.5px,.78vw,12.5px);font-weight:700;letter-spacing:.15em;text-transform:uppercase;
  font-weight:700;color:rgba(239,235,227,.72);transition:color .35s var(--ease);position:relative;padding-block:.4em}
.nav nav a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--red);transition:width .45s var(--ease)}
.nav nav a:hover{color:var(--bone)}.nav nav a:hover::after{width:100%}
.nav .navcta{display:flex;gap:10px;align-items:center}
.nav .btn{padding:.72em 1.15em}
.burger{display:none;width:44px;height:44px;background:none;border:1px solid rgba(239,235,227,.3);cursor:pointer;position:relative}
.burger i{position:absolute;left:11px;right:11px;height:1.5px;background:var(--bone);transition:transform .4s var(--ease),opacity .3s}
.burger i:nth-child(1){top:16px}.burger i:nth-child(2){bottom:16px}
.burger.x i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.burger.x i:nth-child(2){transform:translateY(-5.5px) rotate(-45deg)}
@media(max-width:1080px){
  .nav nav,.nav .navcta .btn--ghost{display:none}
  .burger{display:block}
}
@media(max-width:640px){
  .nav .navcta .btn--bone{padding:.7em .85em;font-size:10px;letter-spacing:.09em}
  .brand b{font-size:13px}.brand i{display:none}
}
@media(max-width:400px){.nav .navcta .btn--bone{display:none}}
.drawer{position:fixed;inset:0;z-index:199;background:var(--ink);color:var(--bone);
  display:flex;flex-direction:column;justify-content:center;padding:var(--pad);
  clip-path:inset(0 0 100% 0);transition:clip-path .8s var(--ease-io);pointer-events:none}
.drawer.open{clip-path:inset(0 0 0 0);pointer-events:auto}
.drawer a{font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(2rem,8vw,3.6rem);line-height:1.02;padding:.06em 0;opacity:.85}
.drawer a:hover{color:var(--red);opacity:1}
.drawer .dsub{display:flex;flex-wrap:wrap;gap:1.4em;margin-top:2.2em;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.drawer .dsub a{font-size:12px;font-weight:700}

/* ============ HERO ============ */
.hero{position:relative;background:var(--ink);color:var(--bone);overflow:clip;min-height:clamp(620px,94svh,1080px);display:flex;align-items:flex-end}
.hero__bg{position:absolute;inset:0;z-index:0}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:52% 34%;opacity:.62;transform:scale(1.1);
  transition:transform 2.6s var(--ease),opacity 1.8s var(--ease);will-change:transform}
.hero.go .hero__bg img{transform:scale(1.02)}
.hero__bg img{filter:grayscale(1) contrast(1.12) brightness(.78)}
.hero__bg::before{content:"";position:absolute;inset:0;z-index:1;background:#C69133;mix-blend-mode:color;opacity:.92}
.hero__bg::after{content:"";position:absolute;inset:0;z-index:2;
  background:linear-gradient(180deg,rgba(19,19,19,.86) 0%,rgba(19,19,19,.46) 34%,rgba(19,19,19,.78) 74%,var(--ink) 100%)}
.hero .wrap{position:relative;z-index:2;width:100%;padding-top:clamp(72px,11vw,150px);padding-bottom:clamp(34px,4vw,58px)}
.hero__eye{font-size:clamp(9px,.72vw,11.5px);letter-spacing:.42em;text-transform:uppercase;color:rgba(239,235,227,.6);
  margin:0 0 clamp(20px,2.6vw,34px);font-weight:700}
.hero h1{font-size:clamp(2.3rem,6.4vw,6.7rem);max-width:15ch}
.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,clamp(280px,27vw,430px));gap:clamp(28px,4vw,72px);
  align-items:end;margin-top:clamp(30px,4.4vw,64px)}
.hero__p{font-size:clamp(.94rem,1.05vw,1.09rem);line-height:1.6;color:rgba(239,235,227,.74);max-width:56ch}
.hero__p b{color:var(--bone);font-weight:800}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:clamp(22px,2.6vw,34px)}
.hero__badges{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line-i)}
.hero__badges li{list-style:none;padding:.86em 0;border-bottom:1px solid var(--line-i);
  font-size:clamp(10px,.76vw,12px);letter-spacing:.19em;text-transform:uppercase;font-weight:700;
  display:flex;align-items:center;gap:.8em;color:rgba(239,235,227,.82)}
.hero__badges li::before{content:"";width:5px;height:5px;background:var(--red);flex:none}
@media(max-width:900px){.hero__grid{grid-template-columns:1fr}}
.scrollcue{position:absolute;left:clamp(10px,1.2vw,20px);top:50%;transform:translateY(-50%);z-index:3;writing-mode:vertical-rl;
  font-size:9.5px;letter-spacing:.34em;text-transform:uppercase;color:rgba(239,235,227,.45);display:flex;align-items:center;gap:14px}
.scrollcue::after{content:"";width:1px;height:52px;background:linear-gradient(var(--red),transparent);animation:cue 2.2s var(--ease) infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}
50.1%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:1340px){.scrollcue{display:none}}
.hero .wrap{padding-bottom:clamp(80px,7vw,120px)}

/* ============ STATS MARQUEE ============ */
.stats{background:var(--ink);color:var(--bone);border-top:1px solid var(--line-i);overflow:hidden}
.mq{display:flex;gap:0;white-space:nowrap;will-change:transform}
.mq__t{display:flex;align-items:center;gap:clamp(28px,3.6vw,58px);padding:clamp(16px,1.9vw,26px) clamp(14px,1.8vw,29px);
  animation:mqs 42s linear infinite}
@keyframes mqs{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media (prefers-reduced-motion:reduce){.mq__t{animation:none}}
.mq__i{display:flex;align-items:baseline;gap:.6em}
.mq__i b{font-weight:900;font-weight:900;font-size:clamp(1.5rem,3.2vw,3.1rem);line-height:1;letter-spacing:-.02em}
.mq__i s{text-decoration:none;font-size:clamp(9px,.72vw,11px);letter-spacing:.24em;text-transform:uppercase;color:rgba(239,235,227,.55);max-width:12ch;white-space:normal;line-height:1.25;font-weight:700}
.mq__d{color:var(--red);font-size:clamp(1.2rem,2.4vw,2.2rem);line-height:1}
.trust{border-top:1px solid var(--line-i);background:var(--ink);color:var(--bone)}
.trust .wrap{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.4vw,20px);flex-wrap:wrap;
  padding-block:clamp(13px,1.4vw,20px);font-size:clamp(10.5px,.8vw,12.5px);color:rgba(239,235,227,.62);text-align:center}
.trust .stars{color:var(--red);letter-spacing:.16em;font-size:1.05em}
.trust b{color:var(--bone);font-weight:800;letter-spacing:.1em;text-transform:uppercase}

/* ============ SECTION HEAD ============ */
.shead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,clamp(240px,26vw,400px));
  gap:clamp(22px,4vw,72px);align-items:end;padding-block:clamp(60px,8vw,132px) clamp(30px,4vw,58px)}
.shead p{margin:0;color:var(--ash);font-size:clamp(.95rem,1.1vw,1.12rem);line-height:1.5}
.on-dark .shead p{color:rgba(239,235,227,.6)}
@media(max-width:900px){.shead{grid-template-columns:1fr;align-items:start}}

/* ============ CAMINOS ============ */
.caminos{border-top:1px solid var(--line)}
.cam{
  display:grid;grid-template-columns:clamp(56px,6vw,110px) minmax(0,1.05fr) minmax(0,1fr) clamp(120px,13vw,210px);
  gap:clamp(14px,2.4vw,44px);align-items:center;
  padding:clamp(24px,3.1vw,46px) 0;border-bottom:1px solid var(--line);
  position:relative;isolation:isolate;transition:color .55s var(--ease)
}
.cam::before{content:"";position:absolute;inset:0 calc(var(--pad) * -1);z-index:-1;background:var(--ink);
  transform:scaleY(0);transform-origin:bottom;transition:transform .62s var(--ease-io)}
.cam:hover{color:var(--bone)}
.cam:hover::before{transform:scaleY(1);transform-origin:top}
.cam:hover .cam__n{color:var(--red)}
.cam:hover .cam__k{color:rgba(239,235,227,.5)}
.cam:hover .cam__q{color:rgba(239,235,227,.72)}
.cam:hover .cam__meta i,.cam:hover .cam__prod s{color:rgba(239,235,227,.5)}
.cam:hover .cam__img{clip-path:inset(0 0 0 0);opacity:1}
.cam:hover .cam__go{background:var(--red);border-color:var(--red);color:#fff}
.cam:hover .cam__go .arw{transform:translateX(4px)}
.cam__n{font-weight:900;font-weight:900;font-size:clamp(2.1rem,4.4vw,4.4rem);
  line-height:.8;letter-spacing:-.03em;color:var(--ink);transition:color .5s var(--ease)}
.cam__k{font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--ash);font-weight:700;margin-bottom:.9em;display:block;transition:color .5s var(--ease)}
.cam__q{font-family:var(--sans);font-size:clamp(1rem,1.36vw,1.38rem);line-height:1.3;letter-spacing:-.015em;
  font-style:italic;font-weight:400;color:#3a3833;margin:0 0 .75em;transition:color .5s var(--ease)}
.cam__t{font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.12rem,1.82vw,1.9rem);line-height:1;letter-spacing:-.015em;margin:0}
.cam__sub{font-size:clamp(.86rem,.92vw,.98rem);line-height:1.45;margin:.7em 0 0;opacity:.75;max-width:44ch}
.cam__prod{display:flex;flex-direction:column;gap:.35em}
.cam__prod b{font-weight:800;font-weight:800;font-size:clamp(.92rem,1.06vw,1.12rem)}
.cam__prod s{text-decoration:none;font-size:clamp(10.5px,.78vw,12px);color:var(--ash);line-height:1.4;transition:color .5s var(--ease)}
.cam__meta{display:flex;gap:clamp(14px,1.8vw,30px);margin-top:1.1em;flex-wrap:wrap}
.cam__meta div{display:flex;flex-direction:column;gap:.25em}
.cam__meta i{font-style:normal;font-size:8.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--ash);transition:color .5s var(--ease)}
.cam__meta b{font-weight:800;font-weight:800;font-size:clamp(.82rem,.94vw,1rem)}
.cam__right{display:flex;flex-direction:column;align-items:flex-end;gap:1em;text-align:right}
.cam__price{font-weight:900;font-weight:900;font-size:clamp(1.5rem,2.8vw,2.7rem);line-height:.9;letter-spacing:-.02em}
.cam__go{width:clamp(44px,3.4vw,56px);height:clamp(44px,3.4vw,56px);border:1px solid currentColor;border-radius:50%;
  display:grid;place-items:center;transition:background .5s var(--ease),color .5s var(--ease),border-color .5s var(--ease);flex:none}
.cam__imgwrap{position:relative;aspect-ratio:3/4;width:100%;max-width:clamp(120px,11vw,190px);overflow:hidden;margin-left:auto}
.cam__img{width:100%;height:100%;object-fit:cover;clip-path:inset(0 0 100% 0);opacity:0;
  transition:clip-path .75s var(--ease-io),opacity .5s var(--ease);filter:grayscale(.15) contrast(1.05)}
.cam__c2{display:flex;gap:clamp(16px,2vw,34px);align-items:flex-start}
@media(max-width:1180px){
  .cam{grid-template-columns:clamp(46px,7vw,80px) minmax(0,1fr) clamp(100px,15vw,170px);row-gap:18px}
  .cam__c2{display:block}
  .cam__imgwrap{display:none}
  .cam__prodwrap{grid-column:2}
}
@media(max-width:720px){
  .cam{grid-template-columns:44px minmax(0,1fr);}
  .cam__right{grid-column:2;align-items:flex-start;text-align:left;flex-direction:row;justify-content:space-between;width:100%;align-items:center}
}
.camfoot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) auto;gap:clamp(18px,3vw,54px);
  align-items:center;padding-block:clamp(34px,4.6vw,66px);border-bottom:1px solid var(--line)}
.camfoot h4{margin:0;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.05rem,1.9vw,1.9rem);line-height:1;letter-spacing:-.015em}
.camfoot p{margin:0;color:var(--ash);font-size:clamp(.88rem,.98vw,1.02rem);line-height:1.5}
@media(max-width:900px){.camfoot{grid-template-columns:1fr}}

/* ============ RUIDO ============ */
.noise{background:var(--ink);color:var(--bone);padding-block:clamp(72px,10vw,168px);overflow:clip}
.noise__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,96px)}
@media(max-width:960px){.noise__grid{grid-template-columns:1fr}}
.noise__body p{color:rgba(239,235,227,.68);font-size:clamp(.98rem,1.12vw,1.16rem);line-height:1.62;max-width:56ch}
.noise__body p.big{font-size:clamp(1.15rem,1.6vw,1.62rem);color:var(--bone);line-height:1.36;font-weight:600}
.noise__body p em{font-style:italic;color:var(--red);font-weight:500;font-size:1.06em;letter-spacing:-.01em}
.forks{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-i);margin-top:clamp(44px,6vw,96px);border:1px solid var(--line-i)}
@media(max-width:760px){.forks{grid-template-columns:1fr}}
.fork{background:var(--ink);padding:clamp(24px,3.4vw,54px);display:flex;flex-direction:column;gap:1.1em;
  transition:background .5s var(--ease);position:relative;overflow:hidden}
.fork:hover{background:#131317}
.fork i{font-style:normal;font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--red);font-weight:700}
.fork h4{margin:0;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.35rem,2.5vw,2.5rem);line-height:.92;letter-spacing:-.02em}
.fork p{margin:0;color:rgba(239,235,227,.62);font-size:clamp(.88rem,1vw,1.04rem);line-height:1.5;flex:1}
.fork .tlink{align-self:flex-start;color:var(--bone)}

/* ============ TUTOR ============ */
.tutor{background:var(--bone-2);border-bottom:1px solid var(--line)}
.tutor__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(26px,4.6vw,88px);
  align-items:center;padding-block:clamp(56px,8vw,130px)}
@media(max-width:900px){.tutor__grid{grid-template-columns:1fr}}
.tutor__card{background:var(--ink);color:var(--bone);padding:clamp(26px,3.4vw,52px);position:relative}
.tutor__card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--red)}
.tutor__card .sig{font-family:var(--sans);font-style:italic;font-weight:500;letter-spacing:-.022em;font-size:clamp(1.08rem,1.5vw,1.52rem);
  line-height:1.32;color:var(--bone);margin:0 0 1.4em}
.tutor__who{display:flex;align-items:baseline;gap:.8em;flex-wrap:wrap;border-top:1px solid var(--line-i);padding-top:1.2em}
.tutor__who b{font-weight:900;font-weight:900;text-transform:uppercase;font-size:clamp(1rem,1.4vw,1.4rem);letter-spacing:-.01em}
.tutor__who s{text-decoration:none;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(239,235,227,.5)}

/* ============ POR QUÉ (sticky) ============ */
.why{background:var(--ink);color:var(--bone);padding-block:clamp(70px,9vw,150px)}
.why__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(26px,4.6vw,96px);align-items:start}
@media(max-width:1000px){.why__grid{grid-template-columns:1fr}}
.why__stick{position:sticky;top:clamp(88px,10vw,140px)}
@media(max-width:1000px){.why__stick{position:static}}
.why__list{display:flex;flex-direction:column}
.why__item{border-top:1px solid var(--line-i);padding-block:clamp(26px,3.2vw,46px);display:grid;
  grid-template-columns:clamp(48px,5vw,86px) 1fr;gap:clamp(14px,2vw,30px)}
.why__item:last-child{border-bottom:1px solid var(--line-i)}
.why__item b.n{font-weight:900;font-weight:900;font-size:clamp(1.7rem,3vw,3rem);
  line-height:.8;color:var(--red);letter-spacing:-.03em}
.why__item h4{margin:0 0 .6em;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.05rem,1.7vw,1.75rem);line-height:1;letter-spacing:-.015em}
.why__item p{margin:0;color:rgba(239,235,227,.64);font-size:clamp(.9rem,1.02vw,1.05rem);line-height:1.55;max-width:50ch}

/* ============ FUNDADOR ============ */
.founder{background:var(--bone);padding-block:clamp(70px,9vw,150px);overflow:clip}
.founder__grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(28px,5vw,100px);align-items:start}
@media(max-width:960px){.founder__grid{grid-template-columns:1fr}}
.founder__ph{position:sticky;top:clamp(88px,10vw,130px)}
@media(max-width:960px){.founder__ph{position:static}}
.founder__ph figure{margin:0;position:relative;overflow:hidden;background:var(--ink)}
.founder__ph img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.12);
  transform:scale(1.14);transition:transform 1.6s var(--ease)}
.founder__ph.in img{transform:scale(1)}
.founder__ph figcaption{display:flex;justify-content:space-between;gap:1em;margin-top:1em;
  font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ash);font-weight:700}
.founder__body p{font-size:clamp(.98rem,1.12vw,1.14rem);line-height:1.66;max-width:58ch;color:#282724}
.pull{margin:clamp(30px,4vw,56px) 0;padding-left:clamp(18px,2.2vw,34px);border-left:3px solid var(--red)}
.pull q{quotes:none;font-family:var(--sans);font-style:italic;font-weight:500;letter-spacing:-.028em;
  font-size:clamp(1.2rem,1.95vw,1.98rem);line-height:1.22;display:block;color:var(--ink)}
.sign{display:flex;align-items:baseline;gap:1em;flex-wrap:wrap;margin-top:clamp(26px,3vw,44px);
  border-top:1px solid var(--line);padding-top:1.3em}
.sign b{font-family:var(--sans);font-style:italic;font-weight:500;letter-spacing:-.03em;font-size:clamp(1.3rem,1.9vw,1.9rem);line-height:1}
.sign s{text-decoration:none;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ash);font-weight:700}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);margin-top:clamp(40px,5vw,80px)}
@media(max-width:900px){.pillars{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pillars{grid-template-columns:1fr}}
.pillar{background:var(--bone);padding:clamp(20px,2.4vw,34px);transition:background .45s var(--ease),color .45s var(--ease)}
.pillar:hover{background:var(--ink);color:var(--bone)}
.pillar:hover p{color:rgba(239,235,227,.6)}
.pillar h5{margin:0 0 .6em;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(.92rem,1.12vw,1.14rem);line-height:1.05;letter-spacing:-.01em}
.pillar p{margin:0;font-size:clamp(.82rem,.92vw,.95rem);line-height:1.5;color:var(--ash);transition:color .45s var(--ease)}

/* ============ TÍTULO OFICIAL ============ */
.oficial{background:var(--bone-2);border-block:1px solid var(--line);padding-block:clamp(64px,8.5vw,140px)}
.oficial__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,4.6vw,88px);align-items:start}
@media(max-width:960px){.oficial__grid{grid-template-columns:1fr}}
.oficial__box{background:var(--bone);border:1px solid var(--line);padding:clamp(22px,3vw,44px)}
.oficial__box h4{margin:0 0 1em;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1rem,1.5vw,1.5rem);line-height:1.05;letter-spacing:-.012em}
.oficial__box p{color:#33322e;font-size:clamp(.9rem,1.02vw,1.04rem);line-height:1.58}
.legal{margin-top:clamp(24px,3vw,40px);font-size:clamp(10.5px,.76vw,12px);line-height:1.6;color:var(--ash);max-width:78ch}

/* ============ GALLERY STRIP ============ */
.gal{background:var(--ink);color:var(--bone);padding-block:clamp(56px,7vw,110px);overflow:hidden}
.gal__head{display:flex;justify-content:space-between;gap:1.4em;flex-wrap:wrap;align-items:flex-end;margin-bottom:clamp(26px,3.4vw,52px)}
.gal__head h3{margin:0;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.2rem,2.4vw,2.4rem);line-height:1;letter-spacing:-.02em;max-width:22ch}
.gal__head s{text-decoration:none;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:rgba(239,235,227,.5);font-weight:700}
.gal__track{display:flex;gap:clamp(10px,1.2vw,20px);will-change:transform}
.gal__track figure{margin:0;flex:none;overflow:hidden;background:#000;position:relative}
.gal__track img{height:clamp(220px,30vw,440px);width:auto;object-fit:cover;filter:grayscale(.35) contrast(1.06) brightness(.92);
  transition:filter .6s var(--ease),transform 1s var(--ease)}
.gal__track figure:hover img{filter:none;transform:scale(1.035)}
.gal__hint{display:none;margin-top:14px;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:rgba(239,235,227,.4);font-weight:700}
@media(hover:none){.gal__hint{display:block}}
.gal__scroller{overflow-x:auto;cursor:grab;scrollbar-width:none;-ms-overflow-style:none;padding-inline:var(--pad)}
.gal__scroller::-webkit-scrollbar{display:none}

/* ============ ESCUELA ENTERA ============ */
.entera{background:var(--bone);padding-bottom:clamp(60px,8vw,130px)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,22px)}
@media(max-width:1080px){.cards{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cards{grid-template-columns:1fr}}
.card{position:relative;overflow:hidden;background:var(--ink);color:var(--bone);display:flex;flex-direction:column;
  min-height:clamp(320px,32vw,460px);isolation:isolate}
.card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.5;
  filter:grayscale(.5) contrast(1.06);transition:transform 1.1s var(--ease),opacity .6s var(--ease),filter .6s var(--ease)}
.card::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(11,11,12,.25),rgba(11,11,12,.9))}
.card:hover img{transform:scale(1.07);opacity:.72;filter:grayscale(0) contrast(1.06)}
.card__in{position:relative;z-index:2;padding:clamp(20px,2.3vw,32px);display:flex;flex-direction:column;height:100%;gap:.8em}
.card b.n{font-weight:900;font-weight:900;font-size:clamp(1.6rem,2.6vw,2.6rem);
  line-height:.8;color:var(--red);letter-spacing:-.03em}
.card h4{margin:auto 0 0;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.05rem,1.5vw,1.5rem);line-height:1;letter-spacing:-.015em}
.card p{margin:0;font-size:clamp(.84rem,.94vw,.98rem);line-height:1.5;color:rgba(239,235,227,.68)}
.card .tlink{align-self:flex-start;color:var(--bone);margin-top:.4em}

/* ============ CREDENCIAL ============ */
.cred{background:var(--red);color:var(--ink);padding-block:clamp(58px,7.5vw,124px)}
.cred .eyebrow{color:rgba(19,19,19,.65)}
.cred .eyebrow::before{background:var(--ink)}
.cred__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(26px,4.4vw,84px);align-items:end}
@media(max-width:900px){.cred__grid{grid-template-columns:1fr}}
.cred h2 .out{-webkit-text-stroke-color:var(--ink)}
.cred p{color:rgba(19,19,19,.78);font-size:clamp(.95rem,1.1vw,1.12rem);line-height:1.55;max-width:52ch}
.form{display:flex;gap:10px;flex-wrap:wrap;margin-top:1.4em}
.form input{flex:1;min-width:200px;background:transparent;border:0;border-bottom:1.5px solid rgba(19,19,19,.45);
  padding:.9em .2em;color:var(--ink);font-size:clamp(.95rem,1.05vw,1.05rem);outline:none;transition:border-color .4s}
.form input::placeholder{color:rgba(19,19,19,.5)}
.form input:focus{border-bottom-color:var(--ink)}
.form .btn{--bg:var(--ink);--fg:#fff;border-color:var(--ink)}
.form .btn::before{background:#fff}
.form .btn:hover{color:var(--ink);border-color:#fff}
.cred small{display:block;margin-top:1.1em;font-size:11.5px;letter-spacing:.04em;color:rgba(19,19,19,.62);line-height:1.5}

/* ============ TESTIMONIOS ============ */
.testi{background:var(--bone);padding-bottom:clamp(60px,8vw,130px)}
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.5vw,24px)}
@media(max-width:1000px){.tgrid{grid-template-columns:1fr}}
.t{border:1px solid var(--line);padding:clamp(22px,2.6vw,40px);display:flex;flex-direction:column;gap:1.1em;
  background:var(--bone);transition:background .5s var(--ease),color .5s var(--ease),border-color .5s var(--ease)}
.t:hover{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.t:hover .t__d,.t:hover .t__r{color:rgba(239,235,227,.6)}
.t:hover .t__k{color:var(--red)}
.t__k{font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--red);font-weight:700}
.t__q{font-family:var(--sans);font-style:italic;font-weight:500;letter-spacing:-.025em;font-size:clamp(1.08rem,1.5vw,1.52rem);
  line-height:1.24;margin:0}
.t__d{margin:0;font-size:clamp(.86rem,.96vw,1rem);line-height:1.55;color:var(--ash);transition:color .5s var(--ease)}
.t__f{margin-top:auto;border-top:1px solid currentColor;padding-top:1.1em;display:flex;flex-direction:column;gap:.35em}
.t__n{font-weight:900;font-weight:900;text-transform:uppercase;font-size:clamp(1rem,1.3vw,1.3rem);letter-spacing:-.01em}
.t__r{font-size:11.5px;line-height:1.45;color:var(--ash);transition:color .5s var(--ease)}
.tmore{display:flex;justify-content:space-between;align-items:center;gap:1.2em;flex-wrap:wrap;
  border:1px solid var(--line);border-top:0;padding:clamp(20px,2.4vw,34px)}
.tmore b{font-weight:900;font-weight:900;text-transform:uppercase;font-size:clamp(1.1rem,2vw,2rem);letter-spacing:-.02em}

/* ============ CIERRE ============ */
.cierre{background:var(--ink);color:var(--bone);padding-block:clamp(70px,9vw,150px);position:relative;overflow:clip}
.cierre::before{content:"";position:absolute;left:50%;top:-30%;width:120vw;height:120vh;transform:translateX(-50%);
  background:radial-gradient(50% 40% at 50% 50%,rgba(198,145,51,.2),transparent 70%);pointer-events:none}
.cierre__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,4.6vw,90px);align-items:start;position:relative}
@media(max-width:900px){.cierre__grid{grid-template-columns:1fr}}
.cierre p{color:rgba(239,235,227,.7);font-size:clamp(.96rem,1.1vw,1.12rem);line-height:1.62;max-width:54ch}
.cierre p.strong{color:var(--bone);font-size:clamp(1.1rem,1.5vw,1.5rem);font-weight:600;line-height:1.35}
.cierre__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:clamp(26px,3vw,44px)}

/* ============ FOOTER ============ */
.foot{background:var(--ink);color:var(--bone);border-top:1px solid var(--line-i);padding-block:clamp(46px,5.5vw,86px)}
.foot__top{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,52px)}
@media(max-width:1000px){.foot__top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.foot__top{grid-template-columns:1fr}}
.foot__brand b{display:block;font-weight:900;font-weight:900;text-transform:uppercase;
  font-size:clamp(1.4rem,2.4vw,2.2rem);line-height:.95;letter-spacing:-.02em}
.foot__brand i{font-style:normal;display:inline-block;margin-top:.7em;font-size:9.5px;letter-spacing:.26em;color:rgba(239,235,227,.45);font-weight:700}
.foot__brand p{margin:1.4em 0 0;color:rgba(239,235,227,.6);font-size:.94rem;line-height:1.55;max-width:34ch}
.fcol h6{margin:0 0 1.2em;font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--red);font-weight:700}
.fcol ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7em}
.fcol a{font-size:clamp(.86rem,.94vw,.98rem);color:rgba(239,235,227,.72);transition:color .35s,padding-left .35s}
.fcol a:hover{color:var(--bone);padding-left:6px}
.foot__bot{margin-top:clamp(38px,5vw,72px);padding-top:clamp(20px,2.4vw,32px);border-top:1px solid var(--line-i);
  display:flex;justify-content:space-between;gap:1.2em;flex-wrap:wrap;font-size:11.5px;color:rgba(239,235,227,.5)}
.foot__bot a{border-bottom:1px solid transparent}
.foot__bot a:hover{color:var(--bone);border-bottom-color:rgba(239,235,227,.4)}

/* progress bar */
section[id]{scroll-margin-top:clamp(70px,6vw,96px)}
.prog{position:fixed;top:0;left:0;height:2px;background:var(--red);z-index:300;width:0}
.skip{position:absolute;left:-9999px;background:var(--ink);color:var(--bone);padding:.8em 1.2em;z-index:500}
.skip:focus{left:var(--pad);top:8px}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
/* --- Han hablado de nosotros (prensa) --- */
.press{background:var(--bone);padding:clamp(30px,4vw,54px) 0}
.press .wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
.press__eye{text-align:center;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ash);font-weight:700;margin:0 0 clamp(18px,2.4vw,30px)}
.press__row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(26px,5vw,66px)}
.press__row li{flex:0 0 auto;line-height:0}
.press__row img{height:clamp(19px,2.3vw,29px);width:auto;max-width:160px;object-fit:contain;opacity:.6;filter:grayscale(1);transition:opacity .4s var(--ease),filter .4s var(--ease)}
.press__row img:hover{opacity:1;filter:grayscale(0)}
@media(max-width:640px){.press__row{gap:20px 26px}.press__row img{height:17px}}/* End custom CSS */