/* ==========================================================================
   MKV Talent + Communities: one flat, minimal layer.
   Loads LAST on every Talent and Community page, and only applies when <body class="nw">.
   - Colour comes from the admin console: deep forest green with a teal accent.
   - No gradients anywhere. Solid colours, thin borders, generous space.
   - Icons are outline icons in the green, on a white tile with a thin green border.
   ========================================================================== */
body.nw{
  --nw:#0b7a6c; --nw-hover:#09695d; --nw-deep:#0a423b; --nw-dark:#072521; --nw-tint:#e6f3f0; --nw-wash:#f4faf8; --nw-line:#cfe6e1;
  --blue:var(--nw); --blue-deep:var(--nw-deep); --blue-tint:var(--nw-tint); --blue-wash:var(--nw-wash); --blue-line:var(--nw-line);
  --blue-hover:var(--nw-hover); --blue-deep-bg:var(--nw-deep); --chip-blue:var(--nw-deep);
  --tm-accent:var(--nw); --tm-accent-2:var(--nw); --tm-grad:var(--nw); --tm-ring:0 0 0 3px rgba(11,122,108,.22); --tm-lift:var(--shadow-sm);
  --glass-fill:var(--paper-raised); --glass-edge:var(--line); --glass-shadow:none; --glass-inset:none; --glass-glow:transparent; --glass-dot:var(--line);
  --paper:#f6f8f8; --line:#dde5e3; --line-strong:#c4d0cd;
  --radius-lg:16px;
}
html[data-theme="dark"] body.nw{
  --nw:#35c4ae; --nw-hover:#5fd6c4; --nw-deep:#8fe3d5; --nw-dark:#072521; --nw-tint:rgba(53,196,174,.14); --nw-wash:rgba(53,196,174,.07); --nw-line:rgba(53,196,174,.30);
  --paper:#071311; --paper-raised:#0c1c19; --surface-alt:#10241f; --line:rgba(150,220,205,.14); --line-strong:rgba(150,220,205,.26);
  --tm-ring:0 0 0 3px rgba(53,196,174,.28);
}

/* ---------- canvas: flat ---------- */
body.nw .tn-page{background:var(--paper)}
body.nw .tn-hero,body.nw .cm-hero{background:none;padding-bottom:0}
body.nw .tn-hero::before,body.nw .cm-hero::after,body.nw .tn-passport::after{display:none}
body.nw .tn-section > .tn-h2::after,body.nw .tn-section > .tn-card-head .tn-h2::after,body.nw .tn-card.flat > .tn-h3::before{display:none}
body.nw .tn-section > .tn-h2,body.nw .tn-section > .tn-card-head .tn-h2{padding-bottom:0}
body.nw .tn-eyebrow{display:none}
body.nw .tn-hero .tn-h,body.nw .tn-hero .tn-h em{background:none;-webkit-text-fill-color:currentColor;color:var(--ink)}

/* ---------- buttons ---------- */
body.nw .tn-btn{border-radius:10px;min-height:42px;font-weight:600;box-shadow:none;background:var(--paper-raised);border:1px solid var(--line-strong);color:var(--ink)}
body.nw .tn-btn:not(.primary):hover{background:var(--nw-wash);border-color:var(--nw)}
body.nw .tn-btn.primary{background:var(--nw);border:1px solid var(--nw);color:#fff;box-shadow:none}
body.nw .tn-btn.primary:hover{background:var(--nw-hover);border-color:var(--nw-hover);transform:none;filter:none;color:#fff}
html[data-theme="dark"] body.nw .tn-btn.primary{color:#052420}
html[data-theme="dark"] body.nw .tn-btn.primary:hover{color:#052420}
body.nw .tn-btn.lg{min-height:50px;border-radius:12px;font-size:15.5px;padding:0 26px}
body.nw .tn-btn.sm{min-height:36px;border-radius:9px}
body.nw .tn-hero .tn-btn.lg:not(.primary)::after,body.nw #heroCtas a[href^="#"]::after{content:none}
body.nw .tn-input{border-radius:10px}
body.nw .tn-input:focus{border-color:var(--nw);box-shadow:var(--tm-ring)}

/* ---------- cards: thin border, no lift, no shadow ---------- */
body.nw .tn-card{border-radius:14px;box-shadow:none;background:var(--paper-raised);border:1px solid var(--line)}
body.nw .tn-card.soft{background:var(--nw-wash)}
body.nw .tn-section .tn-grid > .tn-card.flat:hover{transform:none;box-shadow:none;border-color:var(--line-strong)}
body.nw .tn-pill.ok,body.nw .tn-pill.info{background:var(--nw-tint);color:var(--nw-deep);border-color:var(--nw-line)}

/* ---------- icon tile: white tile, green outline icon, thin green border ---------- */
body.nw .nw-ic,body.nw .tn-cat-ic,body.nw .cm-benefit .ic{width:42px;height:42px;border-radius:12px;background:var(--paper-raised);color:var(--nw);border:1.5px solid var(--nw);display:inline-grid;place-items:center;flex:none}
body.nw .nw-ic .tn-ic,body.nw .tn-cat-ic .tn-ic{stroke-width:1.8}

/* ---------- logo / avatar tiles ---------- */
body.nw .cm-logo{background:var(--nw-tint);color:var(--nw-deep);border:1px solid var(--nw-line);border-radius:14px}
body.nw .cm-logo.img{background:#fff}

/* ---------- LANDING (shared by talent.html and communities.html) ---------- */
.nw-land{position:relative;color:#fff;background:var(--nw-dark) var(--bg,none) center/cover no-repeat;isolation:isolate}
.nw-land::before{content:"";position:absolute;inset:0;background:var(--nw-dark);opacity:var(--veil,.62);z-index:-1}
.nw-land.has-bg::before{opacity:.58}
.nw-land .tn-wrap{padding-top:clamp(72px,12vw,150px);padding-bottom:clamp(64px,10vw,120px)}
.nw-land h1{font-size:clamp(34px,5.6vw,60px);line-height:1.04;letter-spacing:-.035em;font-weight:800;margin:0 0 16px;max-width:16ch;color:#fff}
.nw-land p{font-size:clamp(16px,1.8vw,19px);line-height:1.6;max-width:50ch;margin:0;color:rgba(255,255,255,.86)}
.nw-land .nw-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
body.nw .nw-land .tn-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.55);color:#fff}
body.nw .nw-land .tn-btn:hover{background:rgba(255,255,255,.18)!important;border-color:#fff!important}
body.nw .nw-land .tn-btn.primary{background:#fff;border-color:#fff;color:var(--nw-dark)}
body.nw .nw-land .tn-btn.primary:hover{background:#e8f4f1!important;border-color:#e8f4f1!important;color:var(--nw-dark)}
.nw-land .nw-note{margin-top:22px;font-size:13.5px;color:rgba(255,255,255,.72);max-width:56ch}

.nw-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none}
.nw-points li{display:flex;flex-direction:column;gap:12px}
.nw-points b{font-size:17px;letter-spacing:-.01em}
.nw-points span.t{color:var(--ink-soft);font-size:14.5px;line-height:1.6}
@media (max-width:760px){.nw-points{grid-template-columns:1fr;gap:22px}.nw-points li{flex-direction:row;align-items:flex-start;gap:14px}}
.nw-block{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,72px)}
.nw-block h2{font-size:clamp(22px,2.8vw,30px);letter-spacing:-.03em;margin:0 0 22px}
.nw-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.nw-steps li{border-top:2px solid var(--nw);padding-top:12px;display:flex;flex-direction:column;gap:4px}
.nw-steps b{font-size:15.5px}.nw-steps span{font-size:14px;color:var(--ink-soft);line-height:1.55}
@media (max-width:820px){.nw-steps{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.nw-steps{grid-template-columns:1fr}}

/* ---------- DIRECTORY ---------- */
.nw-dir-head{padding:clamp(34px,5vw,56px) 0 8px}
.nw-dir-head h1{font-size:clamp(28px,4vw,40px);letter-spacing:-.03em;margin:0 0 6px}
.nw-dir-head p{margin:0;color:var(--ink-soft)}
.nw-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
@media (max-width:900px){.nw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.nw-grid{grid-template-columns:1fr}}
.nw-chapter{display:flex;flex-direction:column;background:var(--paper-raised);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:border-color .15s}
.nw-chapter:hover{border-color:var(--nw)}
.nw-chapter .cover{aspect-ratio:16/8;background:var(--nw-tint);position:relative;overflow:hidden}
.nw-chapter .cover img{width:100%;height:100%;object-fit:cover;display:block}
.nw-chapter .cover .ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--nw);opacity:.55}
.nw-chapter .body{padding:0 16px 16px;display:flex;flex-direction:column;gap:6px;position:relative}
.nw-chapter .cm-logo{margin-top:-24px;background:var(--paper-raised);border:2px solid var(--paper-raised);box-shadow:0 0 0 1px var(--line)}
.nw-chapter h3{margin:6px 0 0;font-size:16.5px;letter-spacing:-.015em;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.nw-chapter .nw-tag{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.nw-chapter .meta{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-soft);margin-top:4px}
.nw-chapter .meta span{display:inline-flex;align-items:center;gap:5px}

/* ---------- COMMUNITY PAGE ---------- */
.nw-banner{height:clamp(150px,26vw,300px);background:var(--nw-dark) center/cover no-repeat;position:relative}
.nw-banner.plain{background:var(--nw-deep)}
.nw-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 22px;align-items:end;margin-top:-48px;position:relative}
.nw-head .cm-logo{border:3px solid var(--paper);box-shadow:0 0 0 1px var(--line);background:var(--paper-raised);grid-row:1}
.nw-head .info{min-width:0;padding-top:56px}
.nw-head h1{font-size:clamp(24px,3.4vw,34px);letter-spacing:-.03em;margin:0 0 6px;line-height:1.15;overflow-wrap:break-word;text-wrap:balance}
.nw-tagline{margin:0 0 10px;color:var(--ink-soft);font-size:15.5px;line-height:1.55;max-width:62ch}
.nw-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-bottom:4px}
.nw-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.nw-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 13px;border:1px solid var(--line-strong);border-radius:99px;background:var(--paper-raised);color:var(--ink);font-size:13.5px;font-weight:600;text-decoration:none}
.nw-chip:hover{border-color:var(--nw);background:var(--nw-wash)}
.nw-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}
.nw-stat{background:var(--paper-raised);border:1px solid var(--line);border-radius:14px;padding:14px 18px}
.nw-stat b{display:block;font-size:clamp(22px,2.6vw,28px);letter-spacing:-.03em;font-weight:800;line-height:1.1}
.nw-stat span{font-size:13px;color:var(--ink-soft)}
.nw-tabs{margin-top:26px}
.nw-pane{margin-top:22px}
.nw-cols{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:24px;align-items:start}
.nw-person{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line);min-width:0}
.nw-person:first-of-type{border-top:0;padding-top:2px}
.nw-person .who{min-width:0;flex:1}
.nw-person .who b{display:block;font-size:15px;overflow-wrap:anywhere}
.nw-person .who small{display:block;color:var(--ink-soft);font-size:13px}
.nw-lead{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--nw-deep);background:var(--nw-tint);border-radius:99px;padding:4px 9px}
/* formatted About text */
.nw-rich{line-height:1.7;overflow-wrap:anywhere;font-size:15.5px}
.nw-rich>:first-child{margin-top:0}.nw-rich>:last-child{margin-bottom:0}
.nw-rich h2{font-size:19px;letter-spacing:-.02em;margin:22px 0 8px}
.nw-rich h3{font-size:16.5px;letter-spacing:-.01em;margin:18px 0 6px}
.nw-rich p{margin:0 0 12px}
.nw-rich ul,.nw-rich ol{margin:0 0 14px;padding-left:22px}.nw-rich li{margin:4px 0}
.nw-rich blockquote{margin:14px 0;padding:4px 0 4px 14px;border-left:3px solid var(--nw);color:var(--ink-soft)}
.nw-rich a{color:var(--nw);font-weight:600;text-decoration:underline;text-underline-offset:2px}
@media (max-width:860px){
  .nw-cols{grid-template-columns:1fr}
  .nw-head{grid-template-columns:1fr;margin-top:-40px;gap:12px}
  .nw-head .cm-logo{width:84px!important;height:84px!important}
  .nw-head .info{padding-top:0}
  .nw-actions{display:grid;grid-template-columns:1fr 1fr}
  .nw-actions #join{grid-column:1/-1}
  .nw-actions .tn-btn{justify-content:center;width:100%}
  .nw-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
.nw-sec h2{font-size:18px;letter-spacing:-.02em;margin:0 0 14px}
.nw-post{padding:16px 0;border-top:1px solid var(--line)}
.nw-post:first-of-type{border-top:0;padding-top:0}
.nw-post h3{margin:0 0 2px;font-size:16px}
.nw-post .when{font-size:12.5px;color:var(--ink-soft)}
.nw-post p{margin:8px 0 0;white-space:pre-line;line-height:1.6;overflow-wrap:anywhere}
.nw-lock{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 16px;border:1px dashed var(--line-strong);border-radius:12px;color:var(--ink-soft);font-size:14px}
.nw-ev{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.nw-ev:first-of-type{border-top:0;padding-top:0}
.nw-ev .d{width:52px;flex:none;border:1.5px solid var(--nw);border-radius:12px;text-align:center;padding:6px 0;line-height:1.1}
.nw-ev .d b{display:block;font-size:19px}.nw-ev .d span{font-size:11.5px;color:var(--nw-deep);font-weight:600}
.nw-ev h4{margin:0 0 3px;font-size:15.5px}
.nw-ev .m{font-size:13px;color:var(--ink-soft)}
.nw-ev .join{margin-top:8px}

/* ---------- dashboard bits ---------- */
.cm-photo{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cm-photo-prev{width:200px;aspect-ratio:16/8;border:1px dashed var(--line-strong);border-radius:12px;display:grid;place-items:center;overflow:hidden;color:var(--ink-soft);font-size:13px;background:var(--surface-alt)}
.cm-photo-prev.logo{width:84px;aspect-ratio:1}
.cm-photo-prev img{width:100%;height:100%;object-fit:cover}
.cm-photo-prev.logo img{object-fit:contain;padding:6px}
.cm-post-row{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line);align-items:flex-start}
.tn-other{margin-top:8px}

/* header: the logo image is swapped to the green version by js/site-header.js */

html[data-theme="dark"] body.nw .nw-land .tn-btn.primary{color:var(--nw-dark)}

/* closing call-to-action band: solid deep green, white text (flat, no pattern) */
body.nw .tn-card.soft.tn-cta{background:var(--nw-dark);border:0;border-radius:16px;box-shadow:none}
body.nw .tn-card.soft.tn-cta::before{display:none}
body.nw .tn-card.soft.tn-cta h2,body.nw .tn-card.soft.tn-cta .tn-h2{color:#fff}
body.nw .tn-card.soft.tn-cta .tn-muted{color:rgba(255,255,255,.78)}
body.nw .tn-card.soft.tn-cta .tn-btn.primary{background:#fff;border-color:#fff;color:var(--nw-dark);box-shadow:none}
body.nw .tn-card.soft.tn-cta .tn-btn.primary:hover{background:#e8f4f1;border-color:#e8f4f1;color:var(--nw-dark)}

/* searchable dropdown */
.tn-combo{position:relative}
.tn-combo-list{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 4px);max-height:300px;overflow:auto;margin:0;padding:6px;list-style:none;background:var(--paper-raised);border:1px solid var(--line-strong);border-radius:12px;box-shadow:0 8px 24px rgba(7,37,33,.14)}
.tn-combo-list li{padding:8px 10px;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:1px;font-size:14px}
.tn-combo-list li small{color:var(--ink-soft);font-size:12px}
.tn-combo-list li:hover,.tn-combo-list li.on{background:var(--nw-tint)}
.tn-combo-list li[aria-selected="true"] b{color:var(--nw)}
.tn-combo-list li.grp{cursor:default;background:none;font-size:11.5px;font-weight:700;color:var(--ink-soft);padding:10px 10px 4px;text-transform:none}
.tn-combo-list li.none{cursor:default;color:var(--ink-soft)}

/* ---------- AUTO COVER (draped flag + skyline + city + logo, built from the registration details) ---------- */
.ac{position:absolute;inset:0;overflow:hidden;container-type:size;background:#8f8f8d}
.ac-stage{position:absolute;right:0;bottom:0;width:max(100cqw,calc(100cqh * 1.499));aspect-ratio:1535 / 1024;isolation:isolate}
.ac-stage>*{position:absolute;inset:0;width:100%;height:100%;display:block}
.ac-plate{object-fit:cover}
.ac-tint{background:var(--ac);mix-blend-mode:soft-light;opacity:.35}
.ac-flag{isolation:isolate;overflow:hidden;-webkit-mask:url(/assets/community-cover/mask.png) center / 100% 100% no-repeat;mask:url(/assets/community-cover/mask.png) center / 100% 100% no-repeat}
.ac-fill{position:absolute;inset:0;background:var(--ac)}
.ac-flagimg{position:absolute;left:-14%;top:-14%;width:128%;height:128%;object-fit:cover;transform:rotate(-8deg)}
.ac-mul,.ac-scr{object-fit:cover;pointer-events:none}
.ac-mul{mix-blend-mode:multiply}
.ac-scr{mix-blend-mode:screen;opacity:.9}
.ac-txt{overflow:visible}
.ac-txt text{fill:#d6d4d0;font-family:Impact,Haettenschweiler,"Arial Narrow","Roboto Condensed","Arial Black",sans-serif;font-weight:900}
.ac-logo{position:absolute;top:max(6px,6cqh);right:3cqw;height:min(36cqh,15cqw);aspect-ratio:1;min-height:34px;background:rgba(255,255,255,.92);border-radius:12px;padding:4px;box-shadow:0 2px 12px rgba(0,0,0,.28);display:grid;place-items:center}
.ac-logo img{width:100%;height:100%;object-fit:contain}
.nw-banner.auto{background:#8f8f8d}
.nw-chapter .cover .ac{inset:0}
.cm-autoprev{position:relative;width:min(100%,420px);aspect-ratio:16 / 8;border-radius:12px;overflow:hidden;border:1px solid var(--line)}
