/* North-flow rebuild */
.ns-hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;background:url('/media/b9becb-2025-Edlue-Recap-hero-scaled-e1747140966322.jpg') center 30%/cover no-repeat}
.ns-hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,18,20,.35),rgba(16,18,20,.86) 85%)}
.ns-hero .in{position:relative;width:100%;padding:0 clamp(20px,4vw,56px) 64px}
.ns-kick{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--mark);margin-bottom:14px}
.ns-hero h1{font-family:var(--display);font-weight:800;font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.02em;max-width:15ch}
.ns-hero p{margin-top:16px;max-width:52ch;color:rgba(242,241,238,.85);font-size:clamp(1rem,1.5vw,1.2rem)}
.ns-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.ns-sec{padding:clamp(48px,7vw,86px) clamp(20px,4vw,56px)}
.ns-sec h2{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,3.8vw,3rem);letter-spacing:-.015em;text-transform:uppercase}
.ns-sec .lede{margin-top:16px;max-width:74ch;color:rgba(242,241,238,.78);font-size:16.5px;line-height:1.65}
.ns-two{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}
.ns-tile{position:relative;min-height:480px;border-radius:8px;overflow:hidden;background-size:cover;background-position:center;display:flex;align-items:flex-end;border:1px solid #000;transition:transform .25s}
.ns-tile:hover{transform:translateY(-4px)}
.ns-tile .tv{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,18,20,0) 48%,rgba(16,18,20,.55) 74%,rgba(16,18,20,.92))}

.ns-tile h3{font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,34px);text-transform:uppercase;margin:0;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.85)}
.ns-tile p{color:#fff;margin:8px 0 4px;max-width:46ch;font-size:15.5px;text-shadow:0 1px 8px rgba(0,0,0,.8)}
.ns-link{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mark);text-decoration:none}
.ns-link:hover{text-decoration:underline}
.ns-tile .tb{padding:28px;position:relative;z-index:3;pointer-events:none}
.ns-tile .tb a,.ns-tile .tb .btn{pointer-events:auto}
.ns-tile>.stretch{position:absolute;inset:0;z-index:2}

.ns-four{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.ns-four .ns-tile{min-height:380px}
.ns-four .ns-tile .tb{padding:18px}
.ns-four .ns-tile h3{font-size:clamp(15px,1.5vw,24px);letter-spacing:.01em;overflow-wrap:anywhere}
.ns-typerow{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:34px}
.ns-tcard{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--cloth);border:1px solid #000;border-radius:8px;overflow:hidden;background:var(--carbon-2,#16191d);padding-bottom:20px;transition:transform .25s,border-color .25s}
.ns-tcard:hover{transform:translateY(-4px);border-color:var(--mark)}
.ns-tcard .tc-img{background:var(--carbon);height:260px}
.ns-tcard .tc-img img{width:100%;height:100%;object-fit:cover;display:block}
.ns-tcard h3{font-family:var(--display);font-weight:800;font-size:clamp(19px,1.8vw,24px);text-transform:uppercase;margin:14px 20px 0;color:#fff}
.ns-tcard .ns-link{margin:0 20px}
@media (max-width:1100px){.ns-typerow{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:6px}.ns-typerow::-webkit-scrollbar{display:none}.ns-tcard{flex:0 0 240px}.ns-tcard .tc-img{height:200px}}
.ns-types-unused{margin-top:30px}
.ns-type{display:grid;grid-template-columns:110px 1fr auto;gap:22px;align-items:center;padding:20px 0;border-bottom:1px solid rgba(242,241,238,.14)}
.ns-type img{width:110px;height:74px;object-fit:cover;border-radius:4px;background:#fff}
.ns-type h3{font-family:var(--display);font-weight:800;font-size:clamp(19px,2vw,26px);text-transform:uppercase;margin:0}
.ns-type .sub{color:rgba(242,241,238,.65);font-size:14px;margin-top:4px}
.ns-type .acts{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.ns-band{background:var(--carbon-2,#16191d);border-top:1px solid rgba(242,241,238,.1);border-bottom:1px solid rgba(242,241,238,.1)}
.ns-stories{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.ns-story{border:1px solid #000;border-radius:8px;overflow:hidden;background:var(--carbon-2,#16191d);text-decoration:none;color:var(--cloth);display:block;transition:transform .25s}
.ns-story:hover{transform:translateY(-4px)}
.ns-story img{width:100%;height:200px;object-fit:cover;display:block}
.ns-story .sb{padding:18px}
.ns-story h3{font-size:17px;line-height:1.35;margin:0 0 6px;font-weight:700}
.ns-story .d{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:rgba(242,241,238,.5);text-transform:uppercase}
.ns-news{display:flex;gap:12px;margin-top:24px;max-width:520px}
.ns-news input{flex:1;background:rgba(242,241,238,.06);border:1px solid rgba(242,241,238,.2);border-radius:3px;color:var(--cloth);padding:13px 14px;font:inherit}
.ns-news input:focus{outline:none;border-color:var(--mark)}
@media (max-width:980px){.ns-four{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.ns-two,.ns-four,.ns-stories{grid-template-columns:1fr}.ns-tile{min-height:320px}.ns-type{grid-template-columns:80px 1fr;grid-template-rows:auto auto}.ns-type .acts{grid-column:1/-1}}

footer,footer h4,footer p,footer a,footer li,footer span{font-family:"Hanken Grotesk",sans-serif}
footer h4{font-weight:700}
