
:root { --bg:#f6f5f1; --surface:#fff; --ink:#16202a; --muted:#5c6670; --line:rgba(22,32,42,.1); --primary:#b52e31; --primary-dark:#8f1f22; --secondary:#0f2f46; --shadow:0 18px 45px rgba(13,28,40,.08); --radius:22px; --container:min(1160px,calc(100vw - 32px)); --hero-title-size:clamp(1.45rem,1.85vw,2.25rem); --hero-lead-size:.92rem; --page-hero-title-size:clamp(1.3rem,1.5vw,1.75rem); --page-hero-lead-size:.92rem; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:'Inter',system-ui,sans-serif;font-size:16px;color:var(--ink);background:linear-gradient(180deg,#f7f5f0 0%,#f2f0ea 100%);line-height:1.6} a{color:inherit;text-decoration:none} img{max-width:100%;display:block} .container{width:var(--container);margin:0 auto} .skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:8px 12px;z-index:1000}.skip-link:focus{left:12px;top:12px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(246,245,241,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)} .header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand strong{font-family:'Outfit',sans-serif;display:block;font-size:.86rem;line-height:1.08}.brand small{color:var(--muted);display:block;margin-top:3px;font-size:.76rem}.brand-mark{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,var(--secondary),#204a68);color:#fff;font-family:'Outfit',sans-serif;font-weight:800;letter-spacing:.04em;box-shadow:var(--shadow)}
.primary-nav{display:flex;align-items:center;gap:4px}.nav-link{padding:8px 11px;border-radius:999px;color:var(--muted);font-weight:600;font-size:.9rem}.nav-link:hover,.nav-link.active{background:rgba(181,46,49,.08);color:var(--primary-dark)}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 13px;border-radius:999px;font-weight:700}
.hero,.page-hero{padding:16px 0 6px}.hero-grid,.split-section,.content-grid,.contact-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:16px;align-items:start}.hero-copy h1,.page-hero h1,.section-heading h2,.site-footer h3{font-family:'Outfit',sans-serif;line-height:1.02;margin:0}.hero-copy h1{font-size:var(--hero-title-size);max-width:13ch}.page-hero h1{font-size:var(--page-hero-title-size)} .lead{font-size:var(--hero-lead-size);max-width:54ch;color:var(--muted);margin:12px 0 0}.page-hero .lead{font-size:var(--page-hero-lead-size)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary-dark);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;margin-bottom:10px}.eyebrow::before{content:'';display:inline-block;width:16px;height:2px;background:currentColor}
.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:0 18px;border-radius:999px;font-weight:700;font-size:.92rem;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,0,0,.08)} .btn-primary{background:linear-gradient(135deg,var(--primary),#d54649);color:#fff}.btn-secondary{background:rgba(15,47,70,.08);color:var(--secondary)}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.hero-stats div,.action-card,.feature-card,.person-card,.equipment-card,.contact-card,.sticky-card,.feature-panel,.timeline-item{background:rgba(255,255,255,.88);border:1px solid rgba(22,32,42,.08);box-shadow:var(--shadow)} .hero-stats div{border-radius:18px;padding:15px}.hero-stats strong{display:block;font-family:'Outfit',sans-serif;font-size:1.45rem}.hero-stats span{color:var(--muted);font-size:.9rem}
.hero-photo-stack{display:grid;grid-template-columns:1.02fr .7fr;grid-template-rows:1fr 1fr;gap:10px;align-self:start}.hero-photo-stack img{width:100%;height:100%;object-fit:cover;border-radius:22px;min-height:112px;box-shadow:var(--shadow)}.hero-photo-stack img:first-child{grid-row:1/span 2;min-height:228px}
.section{padding:20px 0 48px}.section-tint{background:linear-gradient(180deg,rgba(15,47,70,.04),rgba(181,46,49,.03));border-top:1px solid rgba(22,32,42,.06);border-bottom:1px solid rgba(22,32,42,.06)} .quick-links-section{padding-top:10px}.section-heading{max-width:64ch;margin-bottom:18px}.section-heading.compact h2{max-width:24ch}.section-heading h2{font-size:clamp(1.32rem,1.7vw,1.8rem)}
.action-grid,.feature-cards,.person-grid,.equipment-grid,.timeline{display:grid;gap:18px}.action-grid,.feature-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.action-card,.feature-card{border-radius:var(--radius);padding:24px}.card-disabled{cursor:default;opacity:.86}.feature-link-disabled{display:inline-block;color:var(--muted);font-weight:700}.action-card-title,.feature-card h3,.person-card h3,.equipment-card h3,.contact-card h2,.sticky-card h3{display:block;font-family:'Outfit',sans-serif;margin:0 0 10px}.action-card.placeholder,.placeholder-link{color:var(--primary-dark)}.action-card:hover,.feature-card:hover,.text-link:hover{transform:translateY(-3px)}.text-link,.feature-card a,.placeholder-link{color:var(--secondary);font-weight:700}
.feature-panel{border-radius:calc(var(--radius) + 6px);overflow:hidden}.feature-panel img,.person-card img,.equipment-card img,.sticky-card img{width:100%;object-fit:cover}.feature-panel img{aspect-ratio:1.1/1}.feature-panel-copy{padding:18px}.feature-panel-copy strong{display:block;font-family:'Outfit',sans-serif;font-size:1.08rem;margin-bottom:7px}
.prose p,.prose li,.contact-card p,.site-footer p,.site-footer li{color:var(--muted)} .content-grid{align-items:start}.sticky-card{position:sticky;top:108px;border-radius:var(--radius);overflow:hidden}.sticky-card img{aspect-ratio:4/3}.sticky-card h3,.sticky-card ul{padding:0 22px}.sticky-card h3{margin-top:20px}.sticky-card ul{padding-bottom:22px}.check-list{margin:0;padding-left:22px}
.timeline{grid-template-columns:repeat(5,minmax(0,1fr))}.timeline-item{border-radius:24px;padding:22px}.timeline-item span{display:inline-flex;min-width:74px;justify-content:center;padding:8px 14px;border-radius:999px;background:rgba(181,46,49,.09);color:var(--primary-dark);font-weight:800;margin-bottom:12px}
.person-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.person-card,.equipment-card{border-radius:var(--radius);overflow:hidden}.person-card img{aspect-ratio:4/4.5;object-fit:cover;background:#ddd}.person-card-body,.equipment-card-body{padding:18px 18px 22px}.person-card p{margin:0;color:var(--muted)}.equipment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.equipment-card img{aspect-ratio:16/10}
.contact-grid{align-items:stretch}.contact-card{border-radius:var(--radius);padding:22px}.legal-copy{max-width:860px}.legal-copy h2{font-family:'Outfit',sans-serif;margin-top:28px;margin-bottom:9px;font-size:1.28rem}.legal-copy ul{padding-left:22px}.small-note{font-size:.9rem;color:var(--muted)} code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:rgba(15,47,70,.07);padding:3px 6px;border-radius:8px}
.site-footer{background:#0f2230;color:#f7f7f7;margin-top:24px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:24px;padding:48px 0 28px}.site-footer .eyebrow,.site-footer a,.site-footer p,.site-footer li{color:rgba(255,255,255,.8)}.site-footer h3,.site-footer h4{margin:0 0 10px;font-family:'Outfit',sans-serif}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12)}.footer-bottom-inner{min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:16px;color:rgba(255,255,255,.64);font-size:.88rem}

@media (min-width:1200px){body{font-size:15px}.site-header-inner{min-height:82px}.hero-copy h1{font-size:clamp(1.35rem,1.55vw,2rem);max-width:14ch}.lead{font-size:.88rem;max-width:58ch}.hero-photo-stack img:first-child{min-height:210px}.hero-photo-stack img{min-height:104px}.section-heading h2{font-size:clamp(1.25rem,1.45vw,1.65rem)}}
@media (min-width:1500px){body{font-size:14px}.container{width:min(1180px,calc(100% - 40px))}.hero-copy h1{font-size:clamp(1.2rem,1.35vw,1.75rem)}.lead{font-size:.84rem}.nav-link{font-size:.86rem;padding:7px 10px}.brand strong{font-size:.82rem}.brand small{font-size:.72rem}}
@media (max-width:1040px){.hero-grid,.split-section,.content-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.action-grid,.feature-cards,.person-grid,.equipment-grid,.timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-card{position:static}}
@media (max-width:760px){.menu-toggle{display:inline-flex}.primary-nav{position:absolute;left:16px;right:16px;top:calc(100% + 8px);background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:12px;display:none;flex-direction:column;align-items:stretch}.primary-nav.open{display:flex}.nav-link{border-radius:14px}.hero-copy h1{max-width:none;font-size:clamp(1.9rem,8.4vw,2.5rem)}.hero-photo-stack,.action-grid,.feature-cards,.person-grid,.equipment-grid,.timeline,.hero-stats{grid-template-columns:1fr}.hero-photo-stack img:first-child{min-height:220px;grid-row:auto}.section,.hero,.page-hero{padding-top:34px}.footer-bottom-inner{flex-direction:column;justify-content:center;text-align:center;padding:12px 0}}

.lightbox-trigger{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.disabled-link{pointer-events:none;opacity:.7}.lightbox-trigger img{width:100%}.lightbox-open{overflow:hidden}.lightbox-modal[hidden]{display:none}.lightbox-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px}.lightbox-backdrop{position:absolute;inset:0;border:0;background:rgba(8,15,24,.82)}.lightbox-dialog{position:relative;z-index:1;max-width:min(1100px,92vw);max-height:90vh;display:grid;gap:12px}.lightbox-image{max-width:100%;max-height:80vh;width:auto;height:auto;border-radius:24px;box-shadow:0 28px 60px rgba(0,0,0,.28);background:#fff}.lightbox-close{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:999px;border:0;background:rgba(8,15,24,.72);color:#fff;font-size:2rem;line-height:1;cursor:pointer}.lightbox-caption{margin:0;padding:0 8px;color:#fff;text-align:center;font-weight:600}
