:root{--red:#f0372f;--green:#99cd20;--ink:#11110f;--sand:#d4c2a6;--paper:#eeeae1;--white:#fff;--cond:'Barlow Condensed',sans-serif;--body:'Inter',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--ink);font-family:var(--body);font-size:16px}img{display:block;width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;top:-80px;left:1rem;background:#fff;padding:.75rem;z-index:100}.skip-link:focus{top:1rem}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:100px;padding:18px clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff30}.brand{width:200px;height:64px;overflow:hidden}.brand img{height:100%;object-fit:cover}.main-nav{display:flex;align-items:center;gap:clamp(20px,3vw,48px);color:#fff;font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.main-nav a:not(.nav-cta):hover{color:var(--green)}.nav-cta{padding:12px 20px;border:1px solid #ffffff80}.nav-cta:hover{background:#fff;color:#111}.menu-button{display:none}.hero{min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff}.hero-image,.workwear>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-image{object-position:center 65%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#050504db 0%,#05050475 42%,#05050405 75%),linear-gradient(0deg,#050504a8 0%,transparent 38%)}.hero-copy{position:relative;z-index:2;width:min(860px,84vw);margin-left:clamp(24px,8vw,140px);padding-top:70px}.eyebrow{font-family:var(--cond);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--green);font-size:.9rem}.eyebrow:before{content:'';display:inline-block;width:34px;height:2px;background:currentColor;vertical-align:middle;margin-right:12px}.eyebrow.dark{color:#678c0f}.hero h1,.section h2{font-family:var(--cond);text-transform:uppercase;letter-spacing:-.035em;line-height:.83;margin:24px 0;font-size:clamp(4rem,8.5vw,9rem)}h1 em,h2 em{font-weight:500;color:var(--green);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:550px;line-height:1.7;color:#e6e3dc}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:38px}.button{display:inline-block;padding:17px 24px;font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.button.primary{background:var(--red);color:#fff}.button.primary:hover{background:#ff4b42}.button.black{background:var(--ink);color:#fff}.text-link{font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid #ffffff70;padding:15px 0}.text-link span{color:var(--green);margin-left:10px}.hero-index{position:absolute;z-index:2;right:5vw;bottom:56px;display:flex;align-items:center;gap:14px}.hero-index b{font:800 2rem var(--cond);color:var(--green)}.hero-index span{width:70px;height:1px;background:#fff}.hero-index small{line-height:1.5;text-transform:uppercase;letter-spacing:.1em}.scroll-cue{position:absolute;z-index:2;bottom:0;left:50%;width:48px;height:48px;border:1px solid #ffffff50;border-radius:50%;transform:translate(-50%,50%);background:var(--ink)}.scroll-cue span{position:absolute;left:50%;top:12px;width:1px;height:22px;background:var(--green)}.section{padding:clamp(80px,10vw,150px) clamp(24px,7vw,120px)}.manifesto{background:var(--paper);display:grid;grid-template-columns:150px 1.3fr 1fr;gap:clamp(30px,5vw,90px)}.section-number{font:600 .8rem var(--cond);letter-spacing:.16em;padding-top:12px;color:#6a675f}.manifesto h2,.equipment h2{font-size:clamp(3.7rem,6.5vw,7rem)}.lead{font-size:1.16rem;line-height:1.8;max-width:650px;color:#55524c}.stats{display:flex;flex-direction:column;justify-content:center}.stats div{border-top:1px solid #b6afa2;padding:26px 0;display:flex;justify-content:space-between;align-items:center}.stats strong{font:800 2.7rem var(--cond)}.stats span{text-transform:uppercase;font:600 .8rem var(--cond);letter-spacing:.12em;color:#777168}.dark-section{background:#151512;color:#fff}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:65px}.section-heading h2{font-size:clamp(4rem,7vw,7.5rem);margin-bottom:0}.section-heading>p{max-width:420px;color:#aaa79e;line-height:1.8;margin-bottom:8px}.feature-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:repeat(2,310px);gap:18px}.feature-card{position:relative;overflow:hidden}.feature-card.wide{grid-row:span 2}.feature-card img{height:100%;object-fit:cover;transition:transform .7s}.feature-card:hover img{transform:scale(1.04)}.feature-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000d,transparent 65%)}.feature-card>div{position:absolute;z-index:2;bottom:26px;left:28px;right:28px}.feature-card span{color:var(--green);font:700 .8rem var(--cond)}.feature-card h3{font:700 clamp(2rem,3vw,3.4rem) var(--cond);text-transform:uppercase;margin:6px 0}.feature-card p{margin:0;color:#d5d2cb}.equipment{background:var(--paper);display:grid;grid-template-columns:1fr .88fr;gap:clamp(40px,7vw,110px);align-items:center}.equipment-image{position:relative}.equipment-image img{height:min(720px,75vw);object-fit:cover}.image-tag{position:absolute;top:28px;left:-18px;background:var(--red);color:#fff;padding:12px 18px;font:700 .8rem var(--cond);text-transform:uppercase;letter-spacing:.12em}.equipment-copy>p:not(.eyebrow){line-height:1.8;color:#5b5852}.equipment-copy ul{list-style:none;margin:35px 0;padding:0}.equipment-copy li{padding:19px 0;border-top:1px solid #c6bfb4;font:600 1.25rem var(--cond);text-transform:uppercase;letter-spacing:.04em}.equipment-copy li span{color:var(--red);font-size:.75rem;margin-right:20px}.workwear{min-height:770px;position:relative;color:#fff;display:flex;align-items:center}.workwear>img{object-position:center 55%}.workwear-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#090908dd,#0909084a 65%,transparent)}.workwear-copy{position:relative;z-index:2;max-width:780px}.workwear h2{font-size:clamp(4rem,7.5vw,8rem)}.workwear-copy>p:not(.eyebrow){max-width:520px;color:#dedbd4;line-height:1.8}.gallery{background:#f6f3ed}.section-heading.light>p{color:#68645e}.gallery-grid{display:grid;grid-template-columns:1.05fr 1fr 1fr;grid-template-rows:280px 360px;gap:15px}.gallery-item{padding:0;border:0;overflow:hidden;position:relative;cursor:zoom-in;background:#222}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.035);filter:brightness(.7)}.gallery-item span{position:absolute;inset:auto 20px 18px;color:#fff;text-align:left;font:700 .8rem var(--cond);letter-spacing:.1em;text-transform:uppercase;opacity:0;transition:.3s}.gallery-item:hover span{opacity:1}.contact{background:var(--red);color:#fff;display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end}.contact h2{font-size:clamp(4rem,7.5vw,8rem);margin-bottom:0}.contact h2 em,.contact .eyebrow{color:var(--ink)}.contact-panel>p{line-height:1.8;max-width:500px}.contact-panel>a{display:grid;grid-template-columns:1fr auto;padding:22px 0;border-top:1px solid #ffffff75;font:600 clamp(1rem,1.6vw,1.35rem) var(--cond);letter-spacing:.02em}.contact-panel>a small{grid-column:1/-1;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;color:#ffe4df;margin-bottom:5px}.contact-panel>a span{font-size:1.4rem}.contact-panel>a:hover{color:var(--ink)}footer{background:#0b0b0a;color:#807d76;padding:35px clamp(24px,7vw,120px);display:flex;align-items:center;justify-content:space-between;gap:30px;font:600 .75rem var(--cond);letter-spacing:.1em;text-transform:uppercase}.footer-brand{font:800 1.6rem var(--cond);color:#fff}.footer-brand em{color:var(--green);font-style:normal}dialog.lightbox{border:0;padding:0;background:#000c;max-width:none;width:100vw;height:100vh}.lightbox::backdrop{background:#000d}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{position:fixed;top:24px;right:30px;z-index:2;border:0;background:#fff;color:#111;width:46px;height:46px;font-size:28px;cursor:pointer}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:82px}.brand{width:160px;height:50px}.menu-button{display:flex;width:46px;height:46px;background:#111a;border:1px solid #ffffff55;flex-direction:column;justify-content:center;gap:7px;align-items:center;z-index:3}.menu-button span{width:20px;height:2px;background:#fff}.main-nav{position:fixed;inset:0;background:#111;display:flex;flex-direction:column;justify-content:center;font-size:1.5rem;transform:translateX(100%);transition:.35s}.main-nav.open{transform:none}.hero-copy{margin-left:24px}.hero-index{display:none}.manifesto{grid-template-columns:1fr}.section-number{display:none}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div{display:block}.stats span{display:block;margin-top:8px}.section-heading{display:block}.feature-grid{grid-template-columns:1fr;grid-template-rows:420px repeat(2,280px)}.feature-card.wide{grid-row:auto}.equipment{grid-template-columns:1fr}.equipment-image img{height:600px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 260px 300px}.gallery-item.tall{grid-column:span 2;grid-row:auto}.gallery-item.wide{grid-column:span 2}.contact{grid-template-columns:1fr;gap:30px}}
@media(max-width:600px){.hero{min-height:760px}.hero h1{font-size:4.2rem}.hero-copy{width:calc(100% - 48px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.section{padding:80px 22px}.stats{grid-template-columns:1fr}.stats div{display:flex}.section-heading h2,.manifesto h2,.equipment h2,.workwear h2,.contact h2{font-size:3.75rem}.feature-grid{grid-template-rows:370px repeat(2,300px)}.equipment-image img{height:470px}.workwear{min-height:700px}.gallery-grid{display:block}.gallery-item{height:280px;width:100%;margin-bottom:12px}.gallery-item.tall{height:450px}footer{align-items:flex-start;flex-direction:column}.contact-panel>a{font-size:.95rem;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
.site-header{position:fixed;background:#0b0b09d9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 30px #00000018}
.courses{background:var(--paper);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,7vw,110px);align-items:start}.courses-intro{position:sticky;top:140px}.courses h2{font-size:clamp(3.7rem,6vw,6.8rem)}.courses-intro .button{margin-top:22px}.course-options{border-top:1px solid #b9b2a6}.course-option{padding:36px 0 40px;border-bottom:1px solid #b9b2a6}.course-option>span{font:700 .75rem var(--cond);letter-spacing:.15em;color:var(--red)}.course-option h3{font:800 clamp(2.5rem,4vw,4.2rem) var(--cond);text-transform:uppercase;line-height:.9;margin:12px 0 18px}.course-option p{max-width:650px;line-height:1.7;color:#5b5852}.course-option ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;padding:0;list-style:none;margin:24px 0 0}.course-option li{position:relative;padding-left:18px;font-size:.88rem;line-height:1.5}.course-option li:before{content:'+';position:absolute;left:0;color:#678c0f;font-weight:800}@media(max-width:900px){.courses{grid-template-columns:1fr}.courses-intro{position:static}.course-options{margin-top:20px}}@media(max-width:600px){.course-option ul{grid-template-columns:1fr}.courses h2{font-size:3.75rem}}

/* Escala tipográfica más compacta */
.hero h1{font-size:clamp(3.5rem,7.2vw,7.7rem)}.section h2{font-size:clamp(3.2rem,6.2vw,6.6rem)}.manifesto h2,.equipment h2,.courses h2{font-size:clamp(3.1rem,5.5vw,5.8rem)}.section-heading h2{font-size:clamp(3.4rem,6vw,6.4rem)}.workwear h2,.contact h2{font-size:clamp(3.5rem,6.4vw,6.8rem)}.hero-copy>p:not(.eyebrow),.lead{font-size:1rem}.feature-card h3{font-size:clamp(1.8rem,2.7vw,3rem)}.course-option h3{font-size:clamp(2.2rem,3.4vw,3.6rem)}

/* Android y iPhone */
@media(max-width:900px){.site-header{height:calc(76px + env(safe-area-inset-top));padding-top:calc(13px + env(safe-area-inset-top));padding-right:max(20px,env(safe-area-inset-right));padding-left:max(20px,env(safe-area-inset-left))}.brand{width:145px;height:46px}.menu-button{min-width:46px;min-height:46px}.main-nav{padding:calc(90px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));gap:22px;font-size:1.25rem;overflow-y:auto}.main-nav a{min-height:44px;display:flex;align-items:center;justify-content:center}.hero{min-height:100svh}.hero-copy{padding-top:calc(80px + env(safe-area-inset-top))}.hero h1{font-size:clamp(3.3rem,12vw,5.5rem)}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:clamp(3rem,9vw,4.8rem)}.button,.text-link{min-height:48px;display:inline-flex;align-items:center}.gallery-item{min-height:260px}}
@media(max-width:600px){body{font-size:15px;overflow-x:hidden}.hero{min-height:100svh}.hero-copy{margin-left:max(20px,env(safe-area-inset-left));width:calc(100% - 40px);padding-bottom:calc(36px + env(safe-area-inset-bottom))}.hero h1{font-size:clamp(3.05rem,14.5vw,4.25rem);line-height:.88;margin:18px 0}.hero-copy>p:not(.eyebrow){font-size:.94rem;line-height:1.55}.eyebrow{font-size:.72rem;letter-spacing:.14em}.eyebrow:before{width:24px;margin-right:9px}.hero-actions{margin-top:25px}.section{padding:68px max(20px,env(safe-area-inset-right)) 68px max(20px,env(safe-area-inset-left))}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:clamp(2.85rem,13vw,3.6rem);line-height:.88}.lead{font-size:1rem;line-height:1.65}.stats strong{font-size:2.2rem}.feature-grid{grid-template-rows:340px repeat(2,270px)}.feature-card h3{font-size:2rem}.feature-card>div{left:20px;right:20px;bottom:20px}.equipment-image img{height:430px}.course-option{padding:30px 0}.course-option h3{font-size:2.35rem}.course-option p,.course-option li{font-size:.88rem}.workwear{min-height:650px}.contact-panel>a{min-height:72px}.gallery-item{height:250px}.gallery-item.tall{height:390px}footer{padding-right:max(22px,env(safe-area-inset-right));padding-bottom:calc(30px + env(safe-area-inset-bottom));padding-left:max(22px,env(safe-area-inset-left))}}
@media(max-width:360px){.brand{width:130px}.hero h1{font-size:2.9rem}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:2.65rem}.button{padding:14px 18px;font-size:.9rem}.section{padding-top:58px;padding-bottom:58px}}

/* Escala final: títulos y textos más pequeños */
.hero h1{font-size:clamp(3rem,5.8vw,6.1rem)}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:clamp(2.75rem,4.7vw,5rem)}.hero-copy>p:not(.eyebrow),.lead{font-size:.94rem}.main-nav{font-size:.9rem}.feature-card h3{font-size:clamp(1.65rem,2.2vw,2.5rem)}.course-option h3{font-size:clamp(2rem,2.8vw,3rem)}.stats strong{font-size:2.25rem}
.whatsapp-float{position:fixed;z-index:40;right:clamp(18px,2.5vw,36px);bottom:calc(22px + env(safe-area-inset-bottom));height:58px;padding:0 18px 0 14px;border-radius:999px;background:#25d366;color:#fff;display:flex;align-items:center;gap:9px;box-shadow:0 8px 26px #0006;font:700 .82rem var(--body);transition:transform .2s,background .2s}.whatsapp-float:hover{transform:translateY(-3px);background:#20bd5a}.whatsapp-float svg{width:29px;height:29px;fill:#fff;flex:0 0 auto}
@media(max-width:900px){.hero h1{font-size:clamp(2.9rem,10vw,4.5rem)}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:clamp(2.65rem,7.8vw,4rem)}.main-nav{font-size:1.1rem}}
@media(max-width:600px){.hero h1{font-size:clamp(2.65rem,12vw,3.5rem)}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:clamp(2.35rem,10.8vw,3rem)}.lead{font-size:.93rem}.feature-card h3{font-size:1.7rem}.course-option h3{font-size:2rem}.whatsapp-float{width:56px;height:56px;padding:0;right:max(16px,env(safe-area-inset-right));justify-content:center}.whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}}
@media(max-width:360px){.hero h1{font-size:2.5rem}.section h2,.manifesto h2,.equipment h2,.courses h2,.section-heading h2,.workwear h2,.contact h2{font-size:2.2rem}}
