@font-face { font-family: "Alumni Sans"; src: url("/fonts/AlumniSans-Regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Alumni Sans"; src: url("/fonts/AlumniSans-Bold.ttf") format("truetype"); font-style: normal; font-weight: 700; font-display: swap; }
:root { --ink-950:#090a08; --ink-900:#12130f; --surface:#242219; --paper:#c8b99b; --bone:#e4d9c4; --olive:#747447; --rust:#c65a16; --rust-light:#e0782e; --danger:#8c3025; --line:rgba(200,185,155,.24); --display-font:"Alumni Sans","Arial Narrow",sans-serif; --bs-body-bg:var(--ink-950); --bs-body-color:var(--bone); --bs-body-font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; --bs-body-font-size:1.0625rem; --bs-body-line-height:1.55; --bs-border-color:var(--line); --bs-link-color:inherit; --bs-link-hover-color:var(--rust-light); --bs-border-radius:0; --bs-border-radius-sm:0; --bs-border-radius-lg:0; color-scheme:dark; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:7rem; background:var(--ink-950); }
body { margin:0; min-width:320px; color:var(--bone); background:var(--ink-950); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; font-size:var(--bs-body-font-size); line-height:1.55; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; z-index:-1; opacity:.16; background-image:linear-gradient(rgba(200,185,155,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(200,185,155,.035) 1px,transparent 1px); background-size:34px 34px; }
a { color:inherit; }
button,input,textarea { font:inherit; }
:focus-visible { outline:3px solid var(--rust-light); outline-offset:3px; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family:var(--display-font); text-transform:uppercase; line-height:.94; letter-spacing:.025em; }
.eyebrow { color:#a3a460; font:700 .92rem/1 var(--display-font); letter-spacing:.18em; text-transform:uppercase; }
.btn-survival,.btn-field-outline { min-height:3.25rem; display:inline-flex; align-items:center; justify-content:center; gap:.6rem; padding:.75rem 1.6rem; border-radius:0; font:700 1.15rem/1 var(--display-font); letter-spacing:.1em; text-transform:uppercase; }
.btn-survival { --bs-btn-color:#fff4e6; --bs-btn-bg:var(--rust); --bs-btn-border-color:var(--rust); --bs-btn-hover-color:#fff; --bs-btn-hover-bg:var(--rust-light); --bs-btn-hover-border-color:var(--rust-light); --bs-btn-focus-shadow-rgb:224,120,46; --bs-btn-active-color:#fff; --bs-btn-active-bg:#a84710; --bs-btn-active-border-color:#a84710; box-shadow:inset 0 -4px 0 rgba(0,0,0,.25); }
.btn-field-outline { --bs-btn-color:var(--bone); --bs-btn-bg:rgba(9,10,8,.55); --bs-btn-border-color:var(--line); --bs-btn-hover-color:var(--bone); --bs-btn-hover-bg:rgba(198,90,22,.14); --bs-btn-hover-border-color:var(--rust); --bs-btn-focus-shadow-rgb:198,90,22; --bs-btn-active-color:var(--bone); --bs-btn-active-bg:rgba(198,90,22,.22); --bs-btn-active-border-color:var(--rust); }
.hero { min-height:min(770px,calc(100vh - 4.5rem)); position:relative; overflow:hidden; border-bottom:1px solid var(--line); background:linear-gradient(120deg,var(--ink-950),#171811 58%,#242219); }
.hero-row { min-height:inherit; align-items:stretch; }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:35%; background:linear-gradient(transparent,var(--ink-950)); pointer-events:none; }
.hero-copy { position:relative; z-index:2; align-self:center; padding:clamp(3rem,8vw,8rem) clamp(1rem,5vw,5rem); }
.hero-copy-inner { max-width:760px; }
.hero h1 { margin:.8rem 0 1rem; font-size:clamp(4.6rem,10vw,9.5rem); line-height:.65; letter-spacing:.01em; }
.hero h1 span,.hero h1 strong { display:block; }
.hero h1 strong { color:var(--rust); font-size:.55em; letter-spacing:.055em; }
.tagline { margin:1.8rem 0 .5rem; color:#a3a460; font:700 clamp(1.4rem,2.4vw,2.1rem)/1 var(--display-font); letter-spacing:.09em; text-transform:uppercase; }
.lead { max-width:580px; color:var(--paper); font-size:clamp(1rem,1.5vw,1.2rem); }
.hero-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.hero-communities { max-width:580px; margin-top:1.35rem; padding-top:1.1rem; border-top:1px solid rgba(116,116,71,.42); }
.hero-communities-label { display:flex; align-items:center; gap:.55rem; margin-bottom:.8rem; color:#a3a460; font:700 .9rem/1.15 var(--display-font); letter-spacing:.12em; text-transform:uppercase; }
.hero-community-links { display:flex; flex-wrap:wrap; gap:.55rem; }
.hero-community-links a { display:inline-flex; min-height:46px; align-items:center; gap:.6rem; padding:.7rem 1rem; color:var(--bone); background:rgba(18,19,15,.82); border:1px solid rgba(116,116,71,.72); text-decoration:none; font:700 1.02rem/1.15 var(--display-font); letter-spacing:.05em; }
.hero-community-links a i { color:#a3a460; font-size:1.12rem; }
.field-note { position:absolute; z-index:3; right:clamp(1rem,4vw,4rem); bottom:clamp(2rem,8vw,7rem); width:210px; padding:1.4rem; display:flex; flex-direction:column; gap:.5rem; color:#17160f; background:#b9a98a; box-shadow:0 20px 50px #0009; transform:rotate(-1.5deg); font:700 1rem/1.15 var(--display-font); letter-spacing:.05em; }
.hero-art { position:relative; align-self:stretch; min-height:420px; overflow:hidden; border-left:1px solid var(--line); background:#11120f; }
.hero-art::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,10,8,.5),transparent 42%),linear-gradient(0deg,rgba(9,10,8,.48),transparent 45%); pointer-events:none; }
.hero-art img { width:100%; height:100%; object-fit:cover; object-position:center; filter:brightness(.72) saturate(.82); }
.field-note span { font-size:1.55rem; }.field-note em { margin-top:.6rem; padding:.45rem; color:var(--danger); border:3px solid var(--danger); text-align:center; font-style:normal; transform:rotate(-2deg); }
.dossier-section,.reports-section,.content-page { padding:clamp(3.5rem,7vw,7rem) clamp(1rem,5vw,5rem); }
.dossier-section>header { display:flex; gap:1.5rem; align-items:flex-start; margin-bottom:2.25rem; }.dossier-section h2,.media-section h2,.reports-section h2 { margin:.25rem 0 0; font-size:clamp(2.5rem,5vw,4.6rem); }.section-number { color:var(--rust); font:700 3.2rem/1 var(--display-font); }
.loop-section { background:var(--surface); border-bottom:1px solid var(--line); }.loop-grid { border:1px solid var(--line); }.loop-grid article { position:relative; min-height:240px; padding:2rem; border-bottom:1px solid var(--line); }.loop-grid article:last-child{border-bottom:0}.loop-icon { display:grid; width:3.5rem; height:3.5rem; place-items:center; border:1px solid var(--olive); color:var(--paper); font-size:1.5rem; transform:rotate(45deg); }.loop-icon i{transform:rotate(-45deg)}.loop-grid h3,.feature-grid h3 { margin:2rem 0 .5rem; color:#a3a460; font-size:1.7rem; }.loop-grid p,.feature-grid p { color:var(--paper); }
.feature-grid article { min-height:250px; padding:1.7rem; border:1px solid var(--line); background:linear-gradient(145deg,rgba(36,34,25,.88),rgba(18,19,15,.9)); }.feature-grid article>span { color:var(--rust); font:700 .9rem/1 var(--display-font); letter-spacing:.14em; }
.media-section { padding:clamp(3.5rem,7vw,7rem) clamp(1rem,5vw,5rem); background:#0c0d0b; }.media-section p{color:var(--paper);max-width:480px}.media-section video{width:100%;border:1px solid var(--line);box-shadow:0 30px 80px #0008;background:#000}.reports-section{background:var(--paper);color:var(--ink-950)}.reports-section header{margin-bottom:2rem}.reports-section header a{font-weight:700}.news-card{min-height:260px;color:var(--ink-950);background:var(--bone);border:1px solid rgba(9,10,8,.22);border-radius:0}.news-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:0}.news-card>div{padding:1.3rem}.news-card time{font:700 .82rem/1 var(--display-font);color:#555631;letter-spacing:.1em}.news-card h3{margin:.5rem 0;font-size:1.65rem}.news-card p{margin:0 0 1rem;color:#3b392e}.news-card-details{display:inline-flex;align-items:center;gap:.4rem;color:#6f350f;font-weight:800;text-decoration:none}.news-card-details:hover{text-decoration:underline}.empty-report{padding:2rem;border:1px dashed currentColor;opacity:.75}
.play-modal { --bs-modal-width:620px; --bs-modal-color:var(--bone); --bs-modal-bg:var(--surface); --bs-modal-border-color:var(--olive); --bs-modal-border-width:1px; --bs-modal-border-radius:0; --bs-modal-inner-border-radius:0; --bs-modal-header-border-color:var(--line); color:var(--bone); }.play-modal .modal-content{background:linear-gradient(145deg,#29271d,var(--surface));box-shadow:0 30px 100px #000;border-color:var(--olive)}.play-modal .modal-header{align-items:flex-start;padding:1.75rem 1.75rem 1.25rem}.play-modal .modal-title{margin:.45rem 0 0;font-size:2.7rem}.play-modal .modal-body{padding:1.5rem 1.75rem 1.75rem}.play-modal .btn-close{--bs-btn-close-opacity:.78;--bs-btn-close-hover-opacity:1;--bs-btn-close-focus-opacity:1;--bs-btn-close-focus-shadow:0 0 0 .2rem rgba(198,90,22,.28)}.modal-backdrop.show{opacity:.82;backdrop-filter:blur(6px)}
.platform-list{display:grid;gap:.75rem;--bs-list-group-color:var(--bone);--bs-list-group-bg:var(--ink-900);--bs-list-group-border-color:var(--line);--bs-list-group-border-radius:0;--bs-list-group-action-color:var(--bone);--bs-list-group-action-hover-color:var(--bone);--bs-list-group-action-hover-bg:rgba(198,90,22,.14);--bs-list-group-action-active-color:var(--bone);--bs-list-group-action-active-bg:rgba(198,90,22,.22)}.platform-list a,.platform-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem;color:var(--bone);background:var(--ink-900);border:1px solid var(--line);border-radius:0!important;text-decoration:none}.platform-list a:hover,.platform-list a:focus,.platform-card:hover,.platform-card:focus-visible{color:var(--bone);border-color:var(--rust)}.platform-list small,.platform-card small{display:block;margin-top:.18rem;color:var(--paper);font-size:.95rem}.platform-icon{display:grid;width:2.75rem;height:2.75rem;place-items:center;color:var(--rust);border:1px solid rgba(116,116,71,.68)}.platform-copy{min-width:0}.platform-copy strong{font-size:1.15rem;line-height:1.1}.platform-copy strong,.platform-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.page-hero{padding:clamp(4rem,8vw,7rem) clamp(1rem,5vw,5rem);border-bottom:1px solid var(--line);background:linear-gradient(120deg,#171811,#090a08)}.page-hero.compact{min-height:340px;display:flex;flex-direction:column;justify-content:end}.page-hero h1{margin:.5rem 0;font-size:clamp(3.5rem,8vw,7rem)}.page-hero p{max-width:700px;color:var(--paper);font-size:1.1rem}.platform-page{gap:1rem;max-width:900px}.content-page .pagination{--bs-pagination-color:#6f350f;--bs-pagination-bg:transparent;--bs-pagination-border-color:rgba(9,10,8,.28);--bs-pagination-hover-color:#fff;--bs-pagination-hover-bg:var(--rust);--bs-pagination-hover-border-color:var(--rust);--bs-pagination-focus-color:#fff;--bs-pagination-focus-bg:var(--rust);--bs-pagination-focus-box-shadow:0 0 0 .25rem rgba(198,90,22,.28);--bs-pagination-border-radius:0}
@media(min-width:768px) and (max-width:1199.98px){.loop-grid article{border-right:1px solid var(--line)}.loop-grid article:nth-child(2n){border-right:0}.loop-grid article:nth-last-child(-n+2){border-bottom:0}}
@media(min-width:1200px){.loop-grid article{border-right:1px solid var(--line);border-bottom:0}.loop-grid article:last-child{border-right:0}}
@media(max-width:991.98px){.field-note{display:none}}
@media(max-width:620px){.hero{min-height:680px;background-position:62% center}.hero-copy{align-self:end}.hero h1{font-size:4.7rem}.hero-actions .btn{width:100%}.loop-grid article::after{display:none}.media-section{padding-left:1rem;padding-right:1rem}}
@media(max-width:620px){.hero-community-links a{flex:1 1 140px;justify-content:center}.hero-communities{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.media-placeholder{display:grid;place-items:center;min-height:clamp(280px,42vw,560px);border:1px solid var(--line);color:rgba(228,217,196,.34);background:repeating-linear-gradient(45deg,#0c0d0b 0 26px,#11120f 26px 27px);font:700 1rem/1 var(--display-font);letter-spacing:.2em}
.news-card>.news-card-placeholder{display:grid;place-items:center;padding:0;aspect-ratio:16/9;color:rgba(9,10,8,.38);background:repeating-linear-gradient(135deg,#c8b99b 0 24px,#b9a98a 24px 25px);font:700 1rem/1 var(--display-font);letter-spacing:.18em}
@media(max-width:991.98px){.hero{background:linear-gradient(120deg,var(--ink-950),#171811 58%,#242219)}.hero-art{position:absolute;inset:0;opacity:.42;border:0}.hero-art::after{background:linear-gradient(90deg,rgba(9,10,8,.82),rgba(9,10,8,.38)),linear-gradient(0deg,rgba(9,10,8,.8),transparent 55%)}.hero-copy{z-index:2}}

/* Public motion layer: atmospheric field-dossier depth, never essential UI. */
.hero::before {
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    pointer-events:none;
    opacity:.3;
    background:
        radial-gradient(circle at 74% 18%,rgba(228,217,196,.12),transparent 22%),
        linear-gradient(112deg,transparent 62%,rgba(198,90,22,.1) 75%,transparent 88%);
    mix-blend-mode:screen;
}
.hero-copy::before {
    content:"";
    position:absolute;
    left:clamp(1rem,5vw,5rem);
    top:clamp(2.4rem,6vw,5.5rem);
    width:4.5rem;
    height:1px;
    background:var(--rust);
    box-shadow:5.15rem 0 0 rgba(200,185,155,.32);
}
.hero-art-frame {
    width:100%;
    height:100%;
    transform:translate3d(0,var(--hero-depth,0),0) scale(1.045);
    transform-origin:center;
    will-change:transform;
}
.hero-art-frame img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    filter:brightness(.72) saturate(.82);
}
.btn-survival,.btn-field-outline,.feature-grid article,.news-card,.hero-community-links a,.platform-list a {
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background-color .24s ease,color .24s ease;
}
.btn-survival {
    position:relative;
    overflow:hidden;
}
.btn-survival::after {
    content:"";
    position:absolute;
    inset:-60% auto -60% -45%;
    width:28%;
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(255,242,220,.28),transparent);
    transform:skewX(-18deg);
}
.loop-grid {
    position:relative;
    isolation:isolate;
}
.loop-grid::before {
    content:"";
    position:absolute;
    z-index:-1;
    top:3.72rem;
    left:3.5rem;
    right:3.5rem;
    height:1px;
    background:linear-gradient(90deg,var(--olive),rgba(116,116,71,.24));
    transform:scaleX(0);
    transform-origin:left;
}
.loop-grid article,.feature-grid article,.news-card {
    overflow:hidden;
}
.feature-grid article::before {
    content:"";
    display:block;
    width:2.8rem;
    height:2px;
    margin-bottom:1.1rem;
    background:var(--rust);
    transition:width .28s ease;
}
.feature-grid article > span {
    display:block;
}
.media-frame {
    position:relative;
    padding:.65rem;
    border:1px solid rgba(116,116,71,.55);
    background:rgba(9,10,8,.72);
    box-shadow:0 30px 80px #0008;
}
.media-frame::before,.media-frame::after {
    content:"";
    position:absolute;
    z-index:2;
    width:3rem;
    height:3rem;
    pointer-events:none;
}
.media-frame::before {
    left:-1px;
    top:-1px;
    border-left:3px solid var(--rust);
    border-top:3px solid var(--rust);
}
.media-frame::after {
    right:-1px;
    bottom:-1px;
    border-right:3px solid var(--rust);
    border-bottom:3px solid var(--rust);
}
.media-frame video {
    display:block;
    box-shadow:none;
}
.news-card img {
    transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .3s ease;
}
@media (hover:hover) and (pointer:fine) {
    .btn-survival:hover,.btn-field-outline:hover { transform:translateY(-2px); }
    .btn-survival:hover { box-shadow:inset 0 -4px 0 rgba(0,0,0,.25),0 12px 28px rgba(198,90,22,.2); }
    .feature-grid article:hover { transform:translateY(-6px); border-color:rgba(198,90,22,.62); box-shadow:0 22px 42px rgba(0,0,0,.22); }
    .feature-grid article:hover::before { width:5rem; }
    .news-card:hover { transform:translateY(-5px); box-shadow:0 20px 38px rgba(9,10,8,.2); }
    .news-card:hover img { transform:scale(1.035); filter:saturate(1.08) contrast(1.03); }
    .hero-community-links a:hover { transform:translateY(-2px); color:var(--bone); border-color:var(--rust); background:rgba(198,90,22,.12); }
    .hero-community-links a:hover i { color:var(--rust); }
}

@media (prefers-reduced-motion:no-preference) {
    .hero-copy-inner > * { animation:hero-copy-enter .7s both cubic-bezier(.22,.75,.2,1); }
    .hero-copy-inner > :nth-child(2) { animation-delay:.06s; }
    .hero-copy-inner > :nth-child(3) { animation-delay:.12s; }
    .hero-copy-inner > :nth-child(4) { animation-delay:.18s; }
    .hero-copy-inner > :nth-child(5) { animation-delay:.24s; }
    .hero-copy-inner > :nth-child(6) { animation-delay:.3s; }
    .hero-art-frame img { animation:hero-image-breathe 14s both cubic-bezier(.2,.55,.25,1); }
    .field-note { animation:field-note-enter .75s .35s both cubic-bezier(.2,.75,.2,1); }
    .btn-survival::after { animation:cta-signal 7s 2.4s infinite ease-in-out; }
    .motion-ready [data-reveal="item"],
    .motion-ready [data-reveal="item-delayed"],
    .motion-ready [data-reveal="group"] > * {
        opacity:0;
        transform:translateY(28px);
        transition:opacity .65s ease,transform .65s cubic-bezier(.2,.72,.2,1);
    }
    .motion-ready [data-reveal="item-delayed"] { transition-delay:.12s; }
    .motion-ready [data-reveal="item"].is-visible,
    .motion-ready [data-reveal="item-delayed"].is-visible,
    .motion-ready [data-reveal="group"].is-visible > * {
        opacity:1;
        transform:translateY(0);
    }
    .motion-ready [data-reveal="group"].is-visible > :nth-child(2) { transition-delay:.08s; }
    .motion-ready [data-reveal="group"].is-visible > :nth-child(3) { transition-delay:.16s; }
    .motion-ready [data-reveal="group"].is-visible > :nth-child(4) { transition-delay:.24s; }
    .motion-ready .loop-grid.is-visible::before { animation:route-line-draw 1.05s .2s both ease-out; }
}

@keyframes hero-copy-enter {
    from { opacity:0; transform:translateY(18px); }
    to { opacity:1; transform:translateY(0); }
}
@keyframes hero-image-breathe {
    from { transform:scale(1.025); }
    to { transform:scale(1); }
}
@keyframes field-note-enter {
    from { opacity:0; transform:translateY(16px) rotate(-4deg); }
    to { opacity:1; transform:translateY(0) rotate(-1.5deg); }
}
@keyframes cta-signal {
    0%,78% { left:-45%; opacity:0; }
    82% { opacity:1; }
    94%,100% { left:125%; opacity:0; }
}
@keyframes route-line-draw {
    to { transform:scaleX(1); }
}

@media (max-width:991.98px) {
    .hero-art-frame { transform:none; will-change:auto; }
    .hero-art-frame img { animation:none; }
    .loop-grid::before { display:none; }
    .dossier-section,.reports-section,.media-section { content-visibility:auto; contain-intrinsic-size:1px 760px; }
}

@media (prefers-reduced-motion:reduce) {
    .hero-art-frame { transform:none!important; will-change:auto; }
    .motion-ready [data-reveal],.motion-ready [data-reveal] > * { opacity:1!important; transform:none!important; }
    .loop-grid::before,.btn-survival::after { animation:none!important; }
}
