:root{--ink:#0b0907;--coal:#14100c;--brown:#2a1b10;--bronze:#9b622d;--gold:#d7a75c;--cream:#ead8b8;--paper:#cdb68f;--line:rgba(215,167,92,.38)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:Georgia,'Times New Roman',serif;background-image:radial-gradient(circle at 20% 10%,#291b10 0,transparent 28%),linear-gradient(#0d0a08,#130d09 60%,#090706)}a{color:inherit}.topbar{height:82px;position:sticky;top:0;z-index:20;display:flex;align-items:center;padding:0 clamp(20px,5vw,82px);background:rgba(9,7,5,.94);border-bottom:1px solid var(--bronze);backdrop-filter:blur(10px)}.logo{width:220px;text-decoration:none;display:grid;grid-template-columns:auto 1px auto;align-items:center;gap:8px;font-size:28px;font-weight:700;color:var(--gold);line-height:.8}.logo i,.hero-mark b,.footer-logo i{height:34px;width:1px;background:var(--gold);display:block}.logo-right,.mirror{display:inline-block;transform:scaleX(-1)}.logo small{grid-column:1/4;font-size:10px;letter-spacing:4px;text-align:center;margin-top:7px;color:var(--paper)}nav{margin-left:auto;display:flex;gap:28px;align-items:center}nav a{text-decoration:none;text-transform:uppercase;font-size:12px;letter-spacing:1.2px;color:#dbc9ab}nav a:hover{color:var(--gold)}.menu{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--gold);font-size:24px}.hero{min-height:calc(100vh - 82px);position:relative;background:url('assets/evolution-hero.jpg') center 24%/cover no-repeat;display:flex;align-items:flex-end;justify-content:center;text-align:center;padding:60px 20px 75px}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 35%,rgba(9,6,4,.2) 55%,#0b0907 98%),linear-gradient(90deg,rgba(0,0,0,.25),transparent 30%,transparent 70%,rgba(0,0,0,.18))}.hero-copy{position:relative;z-index:2;text-shadow:0 3px 18px #000}.kicker,.eyebrow{font-family:Arial,sans-serif;letter-spacing:4px;font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase}.hero-mark{display:flex;justify-content:center;align-items:center;gap:13px;font-size:clamp(48px,8vw,96px);font-weight:700;line-height:1;color:#ead7b3}.hero-mark b{height:.85em}.hero h1{font-family:Arial,sans-serif;font-size:clamp(17px,2vw,27px);letter-spacing:7px;margin:4px 0 8px;color:#d9b373}.hero h1 em{font-style:normal;color:#f0ddba}.hero p{font-size:18px}.down{display:inline-block;margin-top:18px;text-decoration:none;border-bottom:1px solid var(--gold);padding:8px 2px;color:var(--gold);font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:11px}.divisions{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#000}.division{min-height:560px;display:flex;align-items:flex-end;padding:40px;background-size:cover;background-position:center;position:relative}.division:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,4,3,.9) 0%,rgba(5,4,3,.58) 45%,rgba(5,4,3,.12) 100%),linear-gradient(0deg,rgba(0,0,0,.75),transparent 60%)}.printing{background-image:url('assets/printing-press.jpg')}.mining{background-image:url('assets/mining-cart.jpg')}.panel{position:relative;z-index:2;max-width:440px}.panel h2,.mission h2,.section-title h2,.about h2,.contact h2{font-size:clamp(38px,5vw,70px);line-height:.95;margin:10px 0 20px;font-weight:500;color:#e6cfaa}.panel p{font-size:18px;line-height:1.55;color:#dbc8aa}.button{display:inline-block;margin-top:15px;padding:15px 22px;border:1px solid var(--gold);text-decoration:none;text-transform:uppercase;letter-spacing:1.5px;font-family:Arial,sans-serif;font-size:11px;background:rgba(10,7,4,.58);color:#f0d9b2}.button:hover{background:var(--gold);color:#160e08}.mission{padding:100px max(24px,15vw);text-align:center;background:linear-gradient(rgba(19,13,9,.88),rgba(19,13,9,.9)),radial-gradient(circle at center,#604326,#160f0a 65%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mission h2{font-size:clamp(34px,4.5vw,62px)}.mission h2 span{color:var(--gold)}.mission>p:not(.eyebrow){max-width:920px;margin:0 auto 30px;font-size:18px;line-height:1.75;color:#d1bea0}.mission strong{font-family:Arial,sans-serif;letter-spacing:6px;color:var(--gold);font-size:clamp(14px,2vw,22px)}.featured{padding:95px max(24px,7vw)}.section-title{text-align:center;margin-bottom:50px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-grid>div{padding:45px;border-right:1px solid var(--line)}.feature-grid>div:last-child{border-right:0}.feature-grid span{color:var(--bronze);font-family:Arial,sans-serif;font-size:12px}.feature-grid h3{font-size:32px;margin:12px 0;color:#e4cba4}.feature-grid p{line-height:1.65;color:#bca98c}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;padding:100px max(24px,9vw);background:#100c09;border-top:1px solid var(--line)}.about h2{margin-top:12px}.about>div:last-child{font-size:19px;line-height:1.8;color:#cfbda0}.contact{text-align:center;padding:110px 24px;background:radial-gradient(circle at center,#3c2919,#0b0806 67%);border-top:1px solid var(--line)}.contact p:not(.eyebrow){max-width:700px;margin:0 auto;color:#c8b596;font-size:18px;line-height:1.6}.contact .button{margin-top:28px}footer{text-align:center;padding:55px 20px;background:#070605;border-top:1px solid var(--bronze);color:#9f8d72;font-size:12px;letter-spacing:1px}.footer-logo{display:flex;justify-content:center;align-items:center;gap:9px;color:var(--gold);font-size:35px;margin-bottom:18px}.footer-logo i{height:36px}@media(max-width:900px){nav{display:none;position:absolute;top:82px;left:0;right:0;background:#0b0907;padding:24px;flex-direction:column;border-bottom:1px solid var(--bronze)}nav.open{display:flex}.menu{display:block}.divisions{grid-template-columns:1fr}.division{min-height:480px}.feature-grid{grid-template-columns:1fr}.feature-grid>div{border-right:0;border-bottom:1px solid var(--line)}.feature-grid>div:last-child{border-bottom:0}.about{grid-template-columns:1fr;gap:20px}.hero{min-height:70vh;background-position:34% center}.hero-mark{margin-top:230px}}@media(max-width:520px){.topbar{height:72px;padding:0 16px}.logo{width:160px;font-size:23px}.logo i{height:28px}.hero{padding-bottom:45px}.hero-mark{font-size:50px}.hero h1{letter-spacing:3px}.division{padding:28px 22px}.panel h2{font-size:42px}.mission,.featured,.about,.contact{padding-top:70px;padding-bottom:70px}}


/* v2.1 responsive banner fixes */
.topbar{min-height:82px;height:auto;padding-top:10px;padding-bottom:10px}
.logo{min-height:60px;line-height:1}
.logo small{line-height:1.2}
nav{flex-wrap:wrap;justify-content:flex-end;row-gap:10px}

/* Preserve the full banner artwork on wide screens instead of letting cover crop it. */
@media (min-width:1200px){
  .hero{
    min-height:0;
    height:auto;
    aspect-ratio:1942/500;
    background-size:100% 100%;
    background-position:center center;
    padding:28px 20px 34px;
  }
  .hero-copy{transform:none}
  .hero-mark{font-size:clamp(44px,4.5vw,78px)}
  .hero h1{font-size:clamp(16px,1.35vw,24px)}
  .hero p{margin:8px 0}
  .down{margin-top:8px}
  .divisions{align-items:stretch}
  .division{
    min-height:0;
    aspect-ratio:1400/565;
    background-size:100% 100%;
    background-position:center center;
    padding:clamp(24px,2.2vw,40px);
  }
  .panel h2{font-size:clamp(38px,3.3vw,62px)}
  .panel p{font-size:clamp(15px,1vw,18px);margin-top:0;margin-bottom:8px}
  .button{margin-top:8px}
}

@media (min-width:1600px){
  .topbar{padding-left:48px;padding-right:48px}
  nav{gap:24px}
  nav a{font-size:12px}
}

@media (max-width:1199px) and (min-width:901px){
  .hero{min-height:620px;background-position:center center}
  .division{min-height:500px}
}

@media(max-width:900px){
  .topbar{min-height:82px}
}
@media(max-width:520px){
  .topbar{min-height:72px}
}

/* v2.4: division artwork already contains its own typography and button.
   Do not overlay duplicate HTML text or dark gradient on it. */
.division-link{display:block;text-decoration:none;cursor:pointer}
.division-link::after{display:none}
.division-link:hover{filter:brightness(1.09)}
.division-link:focus-visible{outline:3px solid var(--gold);outline-offset:-5px}
@media(max-width:1199px){.division-link{min-height:0;aspect-ratio:1400/565;background-size:100% 100%;background-position:center}}
