html{background:var(--paper)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
.container{width:var(--container);margin-inline:auto}
.section{position:relative;padding-block:var(--section-y)}
.section--dark{background:var(--ink);color:var(--white)}
.section--green{background:var(--saefa-green);color:var(--ink)}
.grid-2{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(38px,7vw,110px);align-items:center}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stack{display:grid;gap:24px}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.eyebrow::before{content:"";width:34px;height:2px;background:var(--saefa-green)}
.section--green .eyebrow::before{background:var(--ink)}
.display{font-size:var(--display);line-height:.85;letter-spacing:-.07em;font-weight:800;max-width:10ch}
.h2{font-size:var(--h2);line-height:.95;letter-spacing:-.055em;font-weight:760;max-width:12ch}
.h3{font-size:var(--h3);line-height:1;letter-spacing:-.035em}
.lead{font-size:var(--body-lg);line-height:1.55;color:color-mix(in srgb,var(--ink) 70%,transparent);max-width:650px}
.section--dark .lead{color:rgba(255,255,255,.7)}
.small{font-size:.88rem;line-height:1.55;color:var(--muted)}

.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;padding:14px 0;background:rgba(246,248,243,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(25,29,25,.10);box-shadow:0 6px 24px rgba(20,28,17,.035);transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
.site-header.is-scrolled{background:rgba(246,248,243,.965);border-bottom-color:var(--line);box-shadow:0 8px 30px rgba(20,28,17,.075)}
.site-header__inner{width:var(--container);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.05em;font-size:1.32rem}
.brand__dot{width:12px;height:12px;border-radius:50%;background:var(--saefa-green);box-shadow:0 0 0 6px rgba(121,199,25,.14)}
.nav{display:flex;align-items:center;gap:26px;font-size:.86rem;font-weight:700}
.nav a{opacity:.78;transition:opacity .2s ease;color:var(--ink)}
.nav a:hover,.nav a:focus-visible{opacity:1}
.nav__cta{padding:11px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;box-shadow:0 4px 16px rgba(25,29,25,.04)}
.nav-toggle{display:none}

.hero{min-height:auto;padding:145px 0 88px;display:block;overflow:hidden;background:radial-gradient(circle at 88% 18%,rgba(121,199,25,.22),transparent 34%),var(--paper)}
.hero__inner{width:var(--container);margin:auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:52px;position:relative;z-index:2}
.hero__copy{display:grid;gap:28px;padding-block:0;min-width:0;position:relative;z-index:2}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap}
.hero__visual{position:relative;min-width:0;min-height:560px;border-radius:var(--radius-lg);overflow:hidden;background:var(--ink);box-shadow:var(--shadow)}
.hero__visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.48));pointer-events:none}
.hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 90%)}
.hero__road{position:absolute;width:145%;height:145%;left:-25%;top:4%;border:1px solid rgba(121,199,25,.6);border-radius:50%;transform:rotate(-17deg)}
.hero__road::before,.hero__road::after{content:"";position:absolute;border-radius:50%;inset:12%;border:1px dashed rgba(255,255,255,.32)}
.hero__road::after{inset:26%;border-color:rgba(121,199,25,.35)}
.hero__badge{position:absolute;right:28px;bottom:28px;z-index:2;max-width:260px;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(17,20,17,.62);backdrop-filter:blur(14px);color:#fff}
.hero__badge strong{display:block;font-size:1.1rem;margin-bottom:5px}
.hero__badge span{font-size:.85rem;color:rgba(255,255,255,.68)}
.hero__placeholder{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reference-media{position:relative;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--ink);box-shadow:var(--shadow)}
.reference-media img{width:100%;height:100%;object-fit:cover}
.reference-media--academy{aspect-ratio:16/10}
.reference-media--sectors{aspect-ratio:16/6;margin-bottom:22px}
.reference-media__tag{position:absolute;right:18px;top:18px;padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(17,20,17,.66);backdrop-filter:blur(10px);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}


.signal-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:var(--white)}
.signal-track{display:flex;width:max-content;gap:0;padding:18px 0;white-space:nowrap;text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.16em;will-change:transform}
.signal-group{display:flex;flex:none;gap:52px;padding-right:52px}
.signal-track span{display:inline-flex;align-items:center;gap:20px}
.signal-track span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--saefa-green)}

.academy-shell{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:70px;align-items:start}
.academy-copy{position:sticky;top:130px;display:grid;gap:24px}
.dashboard{border-radius:var(--radius-md);background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.dashboard__top{height:70px;padding:0 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.dashboard__dots{display:flex;gap:7px}.dashboard__dots i{width:8px;height:8px;border-radius:50%;background:#cfd4cd}.dashboard__dots i:first-child{background:var(--saefa-green)}
.dashboard__body{display:grid;grid-template-columns:180px 1fr;min-height:460px}
.dashboard__side{padding:26px 18px;border-right:1px solid var(--line);background:#fafbf8;display:grid;align-content:start;gap:12px}
.dashboard__nav{height:36px;border-radius:10px;background:#eef1eb}.dashboard__nav.active{background:var(--saefa-green-soft)}
.dashboard__content{padding:34px;display:grid;gap:24px;align-content:start}
.progress-card,.quiz-card,.lesson-card{border:1px solid var(--line);border-radius:18px;padding:20px;background:#fff}
.progress-card{display:grid;gap:14px}.progress-head{display:flex;justify-content:space-between;font-size:.85rem;font-weight:800}.progress-bar{height:10px;background:#edf0e9;border-radius:999px;overflow:hidden}.progress-fill{width:72%;height:100%;background:var(--saefa-green);transform-origin:left center}
.lesson-list{display:grid;gap:10px}.lesson-card{display:flex;align-items:center;justify-content:space-between;padding:16px 18px}.lesson-card span:first-child{display:flex;align-items:center;gap:12px}.lesson-card i{width:22px;height:22px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-style:normal;font-size:.68rem}.lesson-card.done i{background:var(--saefa-green);border-color:var(--saefa-green)}

.training-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:58px}.training-head .lead{max-width:440px}
.training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:26px}
.training-card{min-height:220px;padding:28px;border:1px solid var(--line-dark);border-radius:var(--radius-md);display:grid;align-content:space-between;background:rgba(255,255,255,.035);transition:transform .4s var(--ease),background .4s var(--ease),border-color .4s var(--ease)}
.training-card:hover{transform:translateY(-6px);background:rgba(121,199,25,.08);border-color:rgba(121,199,25,.45)}
.training-card__index{font-size:.78rem;color:var(--saefa-green);font-weight:900;letter-spacing:.12em}.training-card p{color:rgba(255,255,255,.62);max-width:32ch;line-height:1.55}
.truck-stage{min-height:560px;border:1px solid var(--line-dark);border-radius:var(--radius-lg);overflow:hidden;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 60%,rgba(121,199,25,.14),transparent 34%),#151815}
.truck-stage::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,transparent 6%,black 28%,black 72%,transparent 96%)}
.truck-placeholder{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover;opacity:1}
.truck-stage__label{position:absolute;left:28px;bottom:26px;z-index:3;color:rgba(255,255,255,.64);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}

.video-section{min-height:78vh;position:relative;display:grid;align-items:end;overflow:hidden;background:var(--ink);color:var(--white)}
.video-section__bg{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,10,7,.76) 0%,rgba(7,10,7,.20) 52%,rgba(7,10,7,.46) 100%);pointer-events:none}
.video-section video{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:1}
.video-section__copy{position:relative;z-index:3;width:var(--container);margin:0 auto;padding-bottom:clamp(60px,9vw,120px)}
.video-section__copy .h2{max-width:11ch}
.video-section__copy .lead{margin-top:24px;max-width:520px;color:rgba(255,255,255,.84)}

.sectors-head{display:grid;grid-template-columns:1fr .7fr;gap:40px;align-items:end;margin-bottom:54px}
.sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sector-card{position:relative;min-height:340px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--line);background:var(--white);padding:28px;display:grid;align-content:end;transition:transform .4s var(--ease)}
.sector-card:hover{transform:translateY(-6px)}
.sector-card::before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-65px;top:-85px;border:44px solid rgba(121,199,25,.17);transition:transform .7s var(--ease)}
.sector-card:hover::before{transform:scale(1.15) rotate(12deg)}
.sector-card__meta{position:relative;z-index:2}.sector-card__meta p{margin-top:12px;color:var(--muted);max-width:34ch;line-height:1.55}

.cta-section{padding-block:clamp(90px,12vw,170px);background:var(--saefa-green)}
.cta-inner{width:var(--container);margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,.72fr);gap:54px;align-items:center}.cta-inner .h2{max-width:11ch}.cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.cta-visual{aspect-ratio:4/3;border-radius:32px;overflow:hidden;border:1px solid rgba(25,29,25,.18);box-shadow:0 24px 54px rgba(25,29,25,.12)}.cta-visual img{width:100%;height:100%;object-fit:cover}
.site-footer{background:var(--ink);color:var(--white);padding:70px 0 28px}.footer-inner{width:var(--container);margin:auto}.footer-grid{display:grid;grid-template-columns:minmax(280px,1.5fr) repeat(3,minmax(150px,.7fr));gap:48px;padding-bottom:52px}.footer-brand{display:grid;align-content:start;gap:18px;max-width:390px}.footer-brand p{color:rgba(255,255,255,.58);line-height:1.65}.footer-col{display:grid;align-content:start;gap:12px}.footer-col h3{font-size:.74rem;text-transform:uppercase;letter-spacing:.16em;color:var(--saefa-green);margin:0 0 5px}.footer-col a,.footer-col span{font-size:.88rem;color:rgba(255,255,255,.66)}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:24px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;color:rgba(255,255,255,.42);font-size:.78rem}.footer-domain{color:rgba(255,255,255,.68)!important}

@media (max-width:1080px){
  :root{--container:min(100% - 32px,900px)}
  .nav{display:none}.nav-toggle{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:9px 14px;font-weight:800;font-size:.78rem}
  .hero{min-height:auto;padding-top:124px;padding-bottom:72px}.hero__inner{grid-template-columns:1fr;padding-top:0}.hero__visual{min-height:470px}.hero__copy{max-width:820px}.display{max-width:9ch}
  .academy-shell{grid-template-columns:1fr}.academy-copy{position:relative;top:auto}.dashboard__body{grid-template-columns:140px 1fr}
  .training-head,.sectors-head{grid-template-columns:1fr;display:grid;align-items:start}.training-grid,.sector-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:1080px){
  .footer-grid{grid-template-columns:1.2fr repeat(3,.7fr);gap:28px}
}
@media (max-width:680px){
  :root{--container:min(100% - 24px,620px);--section-y:78px}
  .site-header{padding:12px 0}.brand{font-size:1.12rem}.hero{padding-top:104px;padding-bottom:58px}.hero__copy{padding-block:0}.hero__visual{min-height:390px;border-radius:28px}.hero__badge{left:18px;right:18px;bottom:18px}
  .display{font-size:clamp(3.1rem,18vw,5.3rem)}
  .grid-4,.training-grid,.sector-grid{grid-template-columns:1fr}
  .dashboard__body{grid-template-columns:1fr}.dashboard__side{display:none}.dashboard__content{padding:22px}
  .truck-stage{min-height:390px;border-radius:28px}.truck-placeholder{width:100%}
  .video-section{min-height:66vh}.cta-inner{grid-template-columns:1fr;align-items:start}.cta-visual{width:100%;max-width:620px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:8px}
}

/* Milestone 1.2 — header motion states */
.site-header.is-deep{padding:9px 0;background:rgba(246,248,243,.975);box-shadow:0 10px 34px rgba(20,28,17,.085)}
.site-header.is-deep .brand__dot{box-shadow:0 0 0 4px rgba(121,199,25,.12)}
.site-header,.site-header .brand__dot{transition:padding .35s var(--ease),background .35s ease,border-color .35s ease,box-shadow .35s ease}
@media (max-width:1080px){.site-header__inner{position:relative}.site-header.is-deep{padding:10px 0}}

/* Milestone 1.2.4 — section motion emblems */
.section-aside{display:grid;gap:26px;justify-items:stretch;align-content:start}
.section-aside--dark{color:var(--white)}
.motion-emblem{width:clamp(118px,11vw,164px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;isolation:isolate;justify-self:center}
.motion-emblem::before{content:"";position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(121,199,25,.12),transparent 68%);filter:blur(1px);z-index:-1}
.motion-emblem svg{width:100%;height:100%;overflow:visible}
.motion-emblem .emblem-ring{fill:none;stroke:rgba(25,29,25,.2);stroke-width:1.5}
.section--dark .motion-emblem .emblem-ring{stroke:rgba(255,255,255,.22)}
.motion-emblem .emblem-ring--inner{stroke:var(--saefa-green);stroke-dasharray:5 7;opacity:.6}
.motion-emblem--inspection .inspection-plate{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.38);stroke-width:1.4}
.motion-emblem--inspection .inspection-clip{fill:rgba(255,255,255,.14)}
.motion-emblem--inspection .inspection-header{fill:none;stroke:var(--saefa-green);stroke-width:2.2;stroke-linecap:round}
.motion-emblem--inspection .inspection-rule{fill:none;stroke:rgba(255,255,255,.3);stroke-width:1.8;stroke-linecap:round}
.motion-emblem--inspection .inspection-check path{fill:none;stroke:var(--saefa-green);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.motion-emblem--inspection .inspection-truck-body,.motion-emblem--inspection .inspection-truck-cab{fill:rgba(255,255,255,.86)}
.motion-emblem--inspection .inspection-truck-glass{fill:rgba(121,199,25,.82)}
.motion-emblem--inspection .inspection-truck-detail{fill:none;stroke:rgba(25,29,25,.5);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.motion-emblem--inspection .inspection-truck-light{fill:var(--saefa-green)}
.motion-emblem--inspection .inspection-truck-wheel{fill:none;stroke:rgba(255,255,255,.94);stroke-width:3.2}
.motion-emblem--inspection .inspection-truck-hub{fill:rgba(255,255,255,.92)}
.motion-emblem--inspection .inspection-dot{fill:var(--saefa-green)}
.motion-emblem--inspection .inspection-focus{fill:none;stroke:rgba(121,199,25,.82);stroke-width:2;transform-origin:79px 110px}
.motion-emblem--sectors .sector-baseline{fill:none;stroke:rgba(25,29,25,.34);stroke-width:2;stroke-linecap:round}
.motion-emblem--sectors .sector-baseline--dash{stroke:var(--saefa-green);stroke-dasharray:7 8;opacity:.92}
.motion-emblem--sectors .sector-cargo-body,.motion-emblem--sectors .sector-cargo-cab{fill:rgba(25,29,25,.82)}
.motion-emblem--sectors .sector-cargo-window,.motion-emblem--sectors .sector-cargo-detail{fill:none;stroke:rgba(255,255,255,.9);stroke-width:1.7;stroke-linecap:round}
.motion-emblem--sectors .sector-bus-body{fill:var(--saefa-green)}
.motion-emblem--sectors .sector-bus-window,.motion-emblem--sectors .sector-bus-door,.motion-emblem--sectors .sector-bus-detail{fill:none;stroke:rgba(255,255,255,.92);stroke-width:1.8;stroke-linecap:round}
.motion-emblem--sectors .sector-wheel{fill:none;stroke:rgba(25,29,25,.88);stroke-width:3.1}
.motion-emblem--sectors .sector-hub{fill:rgba(25,29,25,.82)}
.motion-emblem--sectors .sector-logistics-box{fill:rgba(25,29,25,.08);stroke:rgba(25,29,25,.5);stroke-width:1.6}
.motion-emblem--sectors .sector-box-mark{fill:none;stroke:rgba(25,29,25,.5);stroke-width:1.6;stroke-linecap:round}
.motion-emblem--sectors .sector-node{fill:var(--paper);stroke:var(--ink);stroke-width:1.6}
.motion-emblem--sectors .sector-runner{fill:var(--saefa-green);filter:drop-shadow(0 0 6px rgba(121,199,25,.45))}

/* Mobile menu is hidden when closed by design, but always uses an explicit
   readable palette when opened. */
@media (max-width:1080px){
  .site-header .nav.is-open{background:rgba(246,248,243,.985);color:var(--ink)}
  .site-header .nav.is-open a{color:var(--ink);opacity:1}
  .site-header .nav-toggle{color:var(--ink);background:rgba(255,255,255,.72)}
  .section-aside{grid-template-columns:1fr;align-items:start;gap:20px}
  .training-head,.sectors-head{grid-template-columns:1fr}
  .motion-emblem{width:118px}
}
@media (max-width:680px){
  .section-aside{grid-template-columns:1fr;gap:18px}
  .motion-emblem{width:102px}
}

/* Milestone 1.3.4 — temporary generated visual assets */
.hero__placeholder{object-position:center center}
.reference-media--academy img{object-position:center center}
.reference-media--sectors img{object-position:center 48%}
.cta-visual img{object-position:center center}

/* Milestone 1.3.5 — Phase 7 / Academia refinement ----------------------- */
.academy-feature-list{display:grid;gap:8px;margin-top:2px}
.academy-feature{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);overflow:hidden}
.academy-feature::before{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--saefa-green);transform:scaleX(0);transform-origin:left center;transition:transform .75s var(--ease)}
.academy-feature.is-active::before{transform:scaleX(1)}
.academy-feature__index{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:var(--saefa-green)}
.academy-feature strong{display:block;font-size:.92rem;line-height:1.25}
.academy-feature small{display:block;margin-top:3px;color:var(--muted);font-size:.76rem;line-height:1.35}
.academy-feature__state{padding:6px 9px;border-radius:999px;background:var(--saefa-green-soft);font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.reference-media--academy{isolation:isolate}
.reference-media--academy::after{content:"";position:absolute;inset:auto 0 0;height:44%;z-index:1;background:linear-gradient(to top,rgba(9,13,9,.58),transparent);pointer-events:none}
.academy-ui{position:absolute;z-index:2;left:22px;right:22px;bottom:22px;padding:16px 18px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(15,19,15,.76);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.18)}
.academy-ui__head{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.academy-ui__head span{color:rgba(255,255,255,.72)}.academy-ui__head b{font-size:.68rem;color:var(--saefa-green-bright)}
.academy-ui__bar{height:6px;margin:11px 0 13px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.14)}
.academy-ui__bar i{display:block;width:100%;height:100%;border-radius:inherit;background:var(--saefa-green);transform:scaleX(.16);transform-origin:left center;transition:transform 1.15s var(--ease)}
.academy-ui.is-active .academy-ui__bar i{transform:scaleX(.72)}
.academy-ui__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:.68rem;color:rgba(255,255,255,.48)}
.academy-ui__steps span{display:flex;align-items:center;gap:7px}.academy-ui__steps span::before{content:"";width:7px;height:7px;border-radius:50%;border:1px solid currentColor;flex:0 0 auto}.academy-ui__steps .is-done,.academy-ui__steps .is-active{color:#fff}.academy-ui__steps .is-done::before{background:var(--saefa-green);border-color:var(--saefa-green)}.academy-ui__steps .is-active::before{border-color:var(--saefa-green);box-shadow:0 0 0 3px rgba(121,199,25,.18)}

/* Milestone 1.3.5 — Phase 8 / Sectores refinement ----------------------- */
.reference-media--sectors{isolation:isolate}
.reference-media--sectors::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,15,11,.32),transparent 34%,transparent 70%,rgba(11,15,11,.12));pointer-events:none}
.reference-media--sectors img{transition:object-position .9s var(--ease),transform .9s var(--ease)}
.sector-media-status{position:absolute;z-index:2;left:22px;bottom:22px;display:flex;align-items:center;gap:12px;max-width:calc(100% - 44px);padding:11px 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(17,20,17,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.16)}
.sector-media-status span{font-size:.66rem;font-weight:900;letter-spacing:.12em;color:var(--saefa-green-bright)}
.sector-media-status strong{font-size:.76rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sector-card{appearance:none;-webkit-appearance:none;width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-content:space-between;min-height:300px}
.sector-card:focus-visible{outline:3px solid rgba(121,199,25,.34);outline-offset:4px}
.sector-card.is-active{border-color:rgba(121,199,25,.68);background:linear-gradient(145deg,rgba(121,199,25,.11),rgba(255,255,255,.88) 58%)}
.sector-card.is-active::before{transform:scale(1.15) rotate(12deg);border-color:rgba(121,199,25,.24)}
.sector-card__top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.sector-card__icon{width:58px;height:58px;padding:11px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.72);fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;color:var(--ink);transition:transform .42s var(--ease),background .32s ease,color .32s ease,border-color .32s ease}
.sector-card:hover .sector-card__icon,.sector-card:focus-visible .sector-card__icon,.sector-card.is-active .sector-card__icon{transform:translateY(-3px) rotate(-3deg);background:var(--saefa-green);border-color:var(--saefa-green);color:var(--ink)}
.sector-card__meta{display:grid;gap:10px}.sector-card__meta p{margin-top:0}

@media (max-width:1080px){
  .academy-feature-list{max-width:760px}
  .academy-ui{left:18px;right:18px;bottom:18px}
  .sector-card{min-height:280px}
}
@media (max-width:680px){
  .academy-feature{grid-template-columns:28px minmax(0,1fr);gap:11px}.academy-feature__state{display:none}
  .academy-ui{left:12px;right:12px;bottom:12px;padding:13px 14px}.academy-ui__steps{font-size:.6rem;gap:5px}
  .reference-media--sectors{aspect-ratio:4/3}.sector-media-status{left:14px;bottom:14px;max-width:calc(100% - 28px)}
  .sector-card{min-height:245px}.sector-card__icon{width:50px;height:50px;border-radius:15px}
}

/* Milestone 1.3.6.5 — supplied vehicle artwork */
.provided-vehicle{overflow:visible}
.provided-vehicle path{fill:currentColor}
.motion-emblem--inspection .provided-vehicle--medium{color:rgba(255,255,255,.88)}
.motion-emblem--inspection .inspection-orbit{fill:none;stroke:rgba(121,199,25,.32);stroke-width:1.4;stroke-dasharray:3 7}
.motion-emblem--inspection .inspection-marker>circle:first-child{fill:var(--saefa-green)}
.motion-emblem--inspection .inspection-pulse{fill:none;stroke:var(--saefa-green);stroke-width:1.8;transform-box:fill-box;transform-origin:center}
.motion-emblem--sectors .provided-vehicle--cargo{color:var(--ink)}
.motion-emblem--sectors .provided-vehicle--passenger{color:var(--saefa-green)}
.motion-emblem--sectors .sector-route{fill:none;stroke:rgba(25,29,25,.28);stroke-width:1.8;stroke-linecap:round}
.motion-emblem--sectors .sector-route--accent{stroke:var(--saefa-green);stroke-dasharray:7 8;opacity:.8}
.motion-emblem--sectors .sector-node{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}
.motion-emblem--sectors .sector-runner{fill:var(--saefa-green);filter:drop-shadow(0 0 5px rgba(121,199,25,.4))}


/* Milestone 1.4.0 — performance pass */
img{content-visibility:auto}
.video-section__media{background:#0f130f}
@supports (content-visibility:auto){
  #academia,
  .video-section,
  #sectores,
  .cta-section,
  .site-footer{
    content-visibility:auto;
    contain-intrinsic-size:900px;
  }
}

/* Milestone 1.4.3 — truck timing stability
   Keep the long sticky 3D sequence fully measurable so ScrollTrigger always
   calculates its start/end from the real 430vh/340vh/285vh section height. */
#capacitacion{content-visibility:visible}
