@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Inter:wght@400;500;600&display=swap');

:root{
  --ink:#090909;--ink-2:#11110f;--paper:#f2eee5;--muted:#aaa69d;
  --red:#d7192d;--yellow:#ffc20e;--line:rgba(255,255,255,.15);
  font-family:Inter,system-ui,sans-serif;color:var(--paper);background:var(--ink);
  font-synthesis:none;text-rendering:optimizeLegibility
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}
.site-header{position:fixed;inset:0 0 auto;z-index:30;height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px);background:rgba(8,8,8,.84);border-bottom:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:11px;text-transform:uppercase}.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font:900 18px/1 'Barlow Condensed';transform:skew(-7deg);box-shadow:5px 5px 0 var(--red)}.brand-copy{display:grid;line-height:1}.brand-copy strong{font:700 16px/1 'Barlow Condensed';letter-spacing:.07em}.brand-copy small{margin-top:5px;color:#c7c3bb;font-size:9px;letter-spacing:.3em}nav{display:flex;gap:30px;font-size:11px;text-transform:uppercase;letter-spacing:.16em}nav a{padding:10px 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--yellow)}.menu-toggle{display:none;color:white;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.45);padding:8px 12px;text-transform:uppercase;letter-spacing:.12em;font-size:10px}
.hero{min-height:max(100svh,760px);position:relative;isolation:isolate;display:flex;align-items:flex-end;overflow:hidden;padding-top:78px}.hero-photo{position:absolute;inset:0;z-index:-4;background:url('https://i.postimg.cc/Pf9KLR0B/IMG-0689.jpg') center 47%/cover no-repeat;transform:scale(1.025);animation:settle 1.7s ease-out both}@keyframes settle{from{transform:scale(1.1);filter:saturate(.6)}to{transform:scale(1.025);filter:saturate(1)}}.hero-overlay{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.43) 36%,rgba(0,0,0,.04) 73%),linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.23) 55%,transparent 80%)}.hero-grid{position:absolute;inset:0;z-index:-2;opacity:.16;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:88px 88px;mask-image:linear-gradient(to right,black,transparent 72%)}.hero-content{width:min(920px,94vw);padding:44px 22px clamp(58px,8vh,96px) clamp(22px,6vw,92px)}.eyebrow,.kicker{color:var(--yellow);text-transform:uppercase;letter-spacing:.23em;font:600 11px/1 Inter,sans-serif}.hero h1{margin:22px 0 18px;font:900 clamp(66px,9.5vw,142px)/.8 'Barlow Condensed';letter-spacing:-.035em;text-transform:uppercase}.hero h1 span{display:block}.hero h1 span:first-child{color:rgba(255,255,255,.08);-webkit-text-stroke:1.8px rgba(255,255,255,.94);text-shadow:none}.hero h1 span:last-child{color:var(--paper);-webkit-text-stroke:0;text-shadow:0 3px 22px rgba(0,0,0,.32)}.hero-declaration{margin:0 0 24px;font:700 clamp(24px,3.5vw,48px)/1 'Barlow Condensed';text-transform:uppercase}.hero-declaration strong{color:var(--yellow)}.hero-intro{max-width:620px;margin:0;color:#ded9d0;font-size:clamp(15px,1.5vw,19px);line-height:1.55}.scroll-cue{display:inline-flex;align-items:center;gap:16px;margin-top:30px;text-transform:uppercase;letter-spacing:.17em;font-size:10px}.scroll-cue b{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--red);font-size:16px}.route-bar{position:absolute;right:0;bottom:0;width:36vw;height:7px;background:var(--yellow)}.route-bar span{display:block;width:38%;height:100%;background:var(--red)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.operation{display:grid;grid-template-columns:.22fr 1.15fr .9fr;gap:clamp(28px,5vw,82px);padding:clamp(86px,12vw,170px) clamp(22px,7vw,110px)}.section-index{color:#77736b;font:700 14px/1 'Barlow Condensed';letter-spacing:.2em}.section-heading h2,.routes h2,.equipment h2,.contact h2{margin:16px 0 0;font:800 clamp(50px,7vw,100px)/.87 'Barlow Condensed';text-transform:uppercase;letter-spacing:-.03em}.body-copy{padding-top:27px}.body-copy p{margin:0 0 22px;color:#c7c2b9;font-size:clamp(16px,1.55vw,20px);line-height:1.62}
.principles{display:grid;grid-template-columns:repeat(3,1fr);margin:0 clamp(18px,4vw,62px);border:1px solid #30302d;background:#30302d;gap:1px}.principles article{min-height:285px;padding:clamp(28px,4vw,48px);background:var(--ink-2);position:relative;overflow:hidden}.principles article:after{content:'';position:absolute;right:-40px;bottom:-55px;width:145px;height:145px;border:1px solid rgba(255,194,14,.18);border-radius:50%}.principles span{color:var(--red);font:700 12px/1 'Barlow Condensed';letter-spacing:.18em}.principles h3{margin:55px 0 15px;font:700 clamp(30px,3vw,44px)/.95 'Barlow Condensed';text-transform:uppercase}.principles p{margin:0;color:#aaa69d;line-height:1.55;font-size:15px}
.routes{padding:clamp(95px,13vw,180px) clamp(22px,7vw,110px)}.routes-head{display:grid;grid-template-columns:1.1fr .75fr;gap:8vw;align-items:end}.routes-head>p{margin:0 0 8px;color:#bbb6ad;font-size:clamp(16px,1.7vw,22px);line-height:1.55}.route-list{margin-top:70px;border-top:1px solid #383734}.route-list div{display:grid;grid-template-columns:110px .8fr 1fr;gap:35px;padding:28px 0;border-bottom:1px solid #383734;align-items:baseline}.route-list b{color:var(--yellow);font:600 10px/1 Inter;text-transform:uppercase;letter-spacing:.18em}.route-list strong{font:700 clamp(25px,3vw,40px)/1 'Barlow Condensed';text-transform:uppercase}.route-list span{color:#98948c;line-height:1.5}
.equipment{display:grid;grid-template-columns:1.2fr .8fr;min-height:84svh;margin:0 clamp(12px,3vw,44px);background:#f0ece3;color:#0b0b0a}.equipment-image{min-height:650px;background:url('https://i.postimg.cc/Pf9KLR0B/IMG-0689.jpg') center/cover no-repeat}.equipment-copy{padding:clamp(55px,7vw,105px)}.equipment-copy .kicker{color:#bd1224}.equipment-copy h2{color:#0b0b0a}.equipment dl{margin:55px 0 0;border-top:1px solid #c3beb3}.equipment dl div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid #c3beb3}.equipment dt{color:#777169;font-size:10px;text-transform:uppercase;letter-spacing:.17em}.equipment dd{margin:0;font:600 19px/1.1 'Barlow Condensed';text-transform:uppercase}
.contact{padding:clamp(100px,14vw,200px) clamp(22px,7vw,110px);position:relative;overflow:hidden}.contact:after{content:'EH';position:absolute;right:-.05em;bottom:-.24em;color:transparent;-webkit-text-stroke:1px rgba(255,194,14,.12);font:900 min(43vw,650px)/1 'Barlow Condensed';pointer-events:none}.contact>p:not(.kicker){max-width:600px;color:#aaa69d;font-size:18px;line-height:1.55}.contact-button{position:relative;z-index:2;display:inline-flex;align-items:center;gap:42px;margin-top:25px;padding:18px 22px;background:var(--yellow);color:#090909;font:800 18px/1 'Barlow Condensed';text-transform:uppercase;letter-spacing:.05em;box-shadow:8px 8px 0 var(--red)}.contact-button span{font-size:22px}.contact small{display:block;max-width:530px;margin-top:28px;color:#77736b;line-height:1.5}
footer{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:40px clamp(22px,5vw,74px);border-top:1px solid #292825;color:#9d9991;font-size:11px;text-transform:uppercase;letter-spacing:.13em}footer div{display:grid;gap:7px}footer strong{color:#f2eee5;font:700 17px/1 'Barlow Condensed'}footer p{margin:0}
@media(max-width:820px){.site-header{height:72px}.hero{padding-top:72px;min-height:max(100svh,820px)}nav{display:none;position:absolute;top:66px;right:18px;padding:18px;background:#0a0a09;border:1px solid #343330;flex-direction:column;gap:6px}nav.open{display:flex}.menu-toggle{display:block}.operation{grid-template-columns:50px 1fr}.operation .body-copy{grid-column:2}.principles{grid-template-columns:1fr}.principles article{min-height:auto}.principles h3{margin-top:30px}.routes-head{grid-template-columns:1fr;gap:35px}.route-list div{grid-template-columns:80px 1fr}.route-list span{grid-column:2}.equipment{grid-template-columns:1fr}.equipment-image{min-height:62svh}footer{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.site-header{height:66px;padding-inline:16px}.brand-mark{width:36px;height:36px}.hero{min-height:max(100svh,830px);padding-top:66px;align-items:flex-end}.hero-photo{background-position:58% center}.hero-overlay{background:linear-gradient(0deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.55) 43%,rgba(0,0,0,.03) 78%)}.hero-grid{display:none}.hero-content{padding:48px 18px 54px}.hero h1{margin:18px 0 16px;font-size:clamp(58px,18vw,82px);line-height:.82;letter-spacing:-.025em}.hero-declaration{font-size:clamp(25px,7vw,32px);margin-bottom:20px}.hero-intro{font-size:15px;line-height:1.62;max-width:100%}.route-bar{width:58vw}.operation{padding:84px 20px;grid-template-columns:1fr;gap:20px}.operation .body-copy{grid-column:auto;padding-top:8px}.section-index{display:none}.section-heading h2,.routes h2,.equipment h2,.contact h2{font-size:clamp(48px,15vw,70px)}.principles{margin:0 12px}.routes{padding:92px 20px}.route-list{margin-top:48px}.route-list div{grid-template-columns:1fr;gap:9px;padding:25px 0}.route-list span{grid-column:auto}.equipment{margin:0 10px}.equipment-image{min-height:55svh;background-position:58% center}.equipment-copy{padding:55px 24px}.equipment dl{margin-top:38px}.equipment dl div{grid-template-columns:95px 1fr}.contact{padding:100px 20px 130px}.contact:after{font-size:75vw}.contact-button{width:calc(100% - 8px);justify-content:space-between}footer{padding:35px 20px}.eyebrow{line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.contact h2{max-width:1050px;font-size:clamp(46px,6.1vw,88px);line-height:.9}
.contact p strong{color:var(--paper);font-family:'Barlow Condensed';font-size:1.15em;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:560px){.contact h2{font-size:clamp(42px,12vw,62px)}}

@media(max-height:760px) and (min-width:821px){.hero{min-height:760px}.hero-content{padding-top:34px;padding-bottom:52px}.hero h1{font-size:clamp(62px,8.3vw,116px)}.hero-intro{font-size:16px;line-height:1.48}.scroll-cue{margin-top:22px}}

/* V5 responsive hero correction */
@media (max-width: 560px) {
  .hero {
    min-height: auto;
    display: block;
    padding-top: 66px;
    overflow: hidden;
  }

  .hero-photo {
    position: absolute;
    inset: 66px 0 auto;
    height: 42svh;
    min-height: 275px;
    max-height: 360px;
    background-position: 55% 42%;
    transform: none;
    animation: none;
  }

  .hero-overlay {
    background:
      linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.05) 52%, rgba(9,9,9,.76) 87%, var(--ink) 100%),
      linear-gradient(90deg, rgba(0,0,0,.16), transparent 68%);
  }

  .hero-content {
    width: 100%;
    padding: clamp(270px, 39svh, 345px) 18px 58px;
    position: relative;
  }

  .eyebrow {
    margin: 0 0 13px;
    font-size: 10px;
    line-height: 1.45;
    letter-spacing: .19em;
    text-shadow: 0 2px 10px rgba(0,0,0,.85);
  }

  .hero h1 {
    margin: 0 0 14px;
    font-size: clamp(53px, 15.6vw, 70px);
    line-height: .84;
    letter-spacing: -.025em;
  }

  .hero h1 span:first-child {
    color: rgba(255,255,255,.025);
    -webkit-text-stroke: 1.45px rgba(255,255,255,.94);
  }

  .hero h1 span:last-child {
    color: rgba(242,238,229,.93);
    text-shadow: 0 3px 18px rgba(0,0,0,.38);
  }

  .hero-declaration {
    margin: 0 0 16px;
    font-size: clamp(23px, 6.7vw, 29px);
  }

  .hero-intro {
    font-size: 14.5px;
    line-height: 1.55;
  }

  .scroll-cue {
    margin-top: 24px;
  }
}

@media (max-width: 390px) {
  .hero-photo {
    height: 39svh;
    min-height: 250px;
  }
  .hero-content {
    padding-top: clamp(248px, 36svh, 310px);
  }
  .hero h1 {
    font-size: clamp(48px, 15vw, 61px);
  }
}

@media (min-width: 561px) and (max-width: 820px) {
  .hero-content {
    padding-top: 30px;
    padding-bottom: 64px;
  }
  .hero h1 {
    font-size: clamp(72px, 13vw, 104px);
  }
}

/* V5.2 mobile photo-caption alignment */
@media (max-width: 560px) {
  .hero {
    --mobile-photo-height: clamp(300px, 42svh, 360px);
  }

  .hero-photo {
    height: var(--mobile-photo-height);
  }

  .hero-content {
    padding-top: var(--mobile-photo-height);
  }

  .hero .eyebrow {
    display: block;
    width: calc(100% + 36px);
    margin: 0 0 15px -18px;
    padding: 10px 18px 9px;
    background: rgba(7, 7, 7, .9);
    border-top: 1px solid rgba(255, 194, 14, .72);
    color: var(--yellow);
    text-shadow: none;
  }
}

@media (max-width: 390px) {
  .hero {
    --mobile-photo-height: clamp(275px, 39svh, 325px);
  }
}
