
:root{
 --acid:#b8ff2c;--acid-soft:#d8ff88;--ink:#050706;--glass:rgba(8,11,8,.82);
 --line:rgba(216,255,136,.17);--white:#f4f5ef;--muted:#9da397;
}
*{box-sizing:border-box}
html,body,#map{width:100%;height:100%;margin:0}
body{background:#050706;color:var(--white);font-family:Arial,Helvetica,sans-serif;overflow:hidden}
#map{position:fixed;inset:0;background:#070a07}
.maplibregl-canvas{filter:saturate(.72) brightness(.72) contrast(1.08)}
.maplibregl-ctrl-attrib{opacity:.28;font-size:7px}
.topbar{position:fixed;z-index:8;left:0;right:0;top:0;height:84px;display:flex;justify-content:space-between;align-items:flex-start;padding:24px 30px;background:linear-gradient(180deg,rgba(3,5,3,.88),rgba(3,5,3,0));pointer-events:none}
.eyebrow{font:700 9px/1.2 monospace;letter-spacing:.22em;color:var(--acid);margin-bottom:7px}
.brand{font-weight:900;font-size:18px;letter-spacing:-.045em}.brand span{color:var(--acid)}
.stats{display:flex;gap:28px;text-align:right}.stats b{display:block;font-size:19px;letter-spacing:-.04em}.stats small{font:7px monospace;letter-spacing:.12em;text-transform:uppercase;color:#7f867b}
.searchbar{position:fixed;z-index:9;top:27px;left:50%;transform:translateX(-50%);display:flex;width:min(380px,36vw);height:38px;border:1px solid var(--line);border-radius:999px;background:rgba(7,10,7,.72);backdrop-filter:blur(16px);overflow:hidden;box-shadow:0 10px 35px #0005}
.searchbar input{flex:1;background:transparent;border:0;color:white;padding:0 16px;font:9px monospace;outline:0}.searchbar button{width:52px;background:var(--acid);border:0;font:900 10px monospace;cursor:pointer}
.hero{position:fixed;z-index:6;left:30px;top:50%;transform:translateY(-48%);pointer-events:none;transition:.3s ease;max-width:360px}
.hero.fade{opacity:.08;transform:translate(-14px,-48%)}.hero>*{pointer-events:auto}
.tag{display:inline-flex;align-items:center;padding:6px 9px;border:1px solid rgba(184,255,44,.45);border-radius:999px;background:#07100780;font:700 7px monospace;letter-spacing:.16em;color:var(--acid)}
.hero h1{font-size:clamp(52px,5.1vw,82px);line-height:.78;letter-spacing:-.075em;margin:18px 0 20px;font-weight:950}
.hero h1 em{font-style:normal;color:var(--acid);text-shadow:0 0 34px rgba(184,255,44,.16)}
.hero h1 .dot{color:var(--acid)}
.hero p{font:10px/1.65 monospace;letter-spacing:.045em;color:#aab0a5;margin:0 0 20px}
.primary,.ghost{cursor:pointer;font-weight:850;letter-spacing:.1em;border-radius:999px}
.primary{border:1px solid var(--acid);background:var(--acid);color:#071000;padding:12px 18px;box-shadow:0 8px 30px rgba(184,255,44,.12)}
.primary:hover{transform:translateY(-1px);filter:brightness(1.05)}
.ghost{background:transparent;border:1px solid #414a3d;color:#bac1b5;padding:9px}
.full{width:100%}
.demo-badge{position:fixed;z-index:7;left:30px;bottom:28px;color:#687064;font:7px monospace;letter-spacing:.16em}
.hint{position:fixed;z-index:7;bottom:28px;left:50%;transform:translateX(-50%);font:7px monospace;letter-spacing:.18em;color:#6e756a}
.panel{position:fixed;z-index:15;right:24px;top:92px;width:min(365px,calc(100vw - 32px));max-height:calc(100vh - 126px);overflow:auto;background:rgba(7,10,7,.91);border:1px solid rgba(184,255,44,.2);border-radius:18px;backdrop-filter:blur(24px);padding:24px;box-shadow:0 30px 90px #000b}
.hidden{display:none}.x{position:absolute;right:16px;top:12px;border:0;background:none;color:#8e968a;font-size:22px;cursor:pointer}.x:hover{color:white}
.panel h2{font-size:25px;letter-spacing:-.045em;margin:5px 0 7px}.muted,.place{color:var(--muted);font:9px/1.55 monospace}
.fan-head{display:flex;gap:13px;align-items:center}.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(184,255,44,.5);background:rgba(184,255,44,.05);color:var(--acid);font:800 9px monospace}
.message{font-size:17px;line-height:1.42;border-left:2px solid var(--acid);padding-left:14px;margin:20px 0}.event{font:8px monospace;color:var(--acid);margin:15px 0}.card-actions{display:flex;gap:8px}.card-actions .ghost{flex:1}
.detected-location{border:1px solid rgba(184,255,44,.22);border-radius:12px;background:rgba(184,255,44,.035);padding:14px;margin:14px 0}.detected-location strong{display:block;font-size:14px;line-height:1.35}.detected-location small{display:block;margin-top:5px;color:#747d70;font:7px monospace}
label{display:block;font:700 7px monospace;letter-spacing:.13em;margin:13px 0;color:#cdd2c8}label span{color:#747b71}
input,textarea{display:block;width:100%;margin-top:7px;background:#0a0e0a;border:1px solid #273027;border-radius:10px;color:white;padding:11px;outline:none}input:focus,textarea:focus{border-color:rgba(184,255,44,.5)}textarea{min-height:78px;resize:vertical}
.check{display:flex;gap:8px;align-items:center;line-height:1.4}.check input{width:auto;margin:0}.privacy{font:7px/1.55 monospace;color:#7f887b;margin:13px 0}#formStatus{font:8px monospace;margin-top:10px}
.modItem{padding:12px 0;border-bottom:1px solid #263026;font:9px monospace}.modItem p{font-family:Arial;font-size:13px}.modItem button{margin-right:6px}
.map-tools{position:fixed;z-index:8;right:24px;bottom:28px;display:flex;gap:6px}.map-tools button{width:34px;height:34px;border:1px solid #313a2f;border-radius:50%;background:rgba(7,10,7,.78);backdrop-filter:blur(12px);color:#b8beb3;font-size:15px;cursor:pointer}.map-tools button:hover{border-color:var(--acid);color:var(--acid)}
footer{display:none}
.temp-pin{width:22px;height:22px;border-radius:50% 50% 50% 0;background:var(--acid);border:2px solid #071000;transform:rotate(-45deg);box-shadow:0 0 28px rgba(184,255,44,.75)}
.temp-pin:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#071000;left:6px;top:6px}.click-mode{cursor:crosshair!important}
@media(max-width:760px){
 .topbar{height:72px;padding:16px}.brand{font-size:15px}.identity .eyebrow{font-size:6px}.stats{gap:10px}.stats div:nth-child(2),.stats div:nth-child(3){display:none}
 .searchbar{top:76px;width:calc(100vw - 32px);height:38px}.hero{left:16px;top:auto;bottom:64px;transform:none;max-width:280px}.hero.fade{opacity:.06;transform:translateX(-10px)}
 .hero h1{font-size:48px;margin:13px 0}.hero p{display:none}.tag{font-size:6px}.panel{right:16px;top:70px}.hint{display:none}.demo-badge{display:none}.map-tools{right:16px;bottom:18px}
}

/* V8 — CORTIS editorial identity */
:root{--paper:#e9e4da;--charcoal:#292421;--cortis-green:#79a988;--cortis-darkgreen:#496b55;--acid:#a9db72}
body{background:var(--paper)}
#map{background:#b7c8b8}
.maplibregl-canvas{filter:saturate(.52) sepia(.06) brightness(1.13) contrast(.9)}
.splash{position:fixed;z-index:100;inset:0;background:
 radial-gradient(circle at 50% 62%,rgba(116,18,13,.62),transparent 32%),
 radial-gradient(circle at 58% 48%,rgba(72,12,10,.62),transparent 48%),
 #100807;color:#f4eee7;display:grid;place-items:center;transition:opacity .7s ease,visibility .7s ease;overflow:hidden}
.splash.hide{opacity:0;visibility:hidden;pointer-events:none}
.splash:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.025) 40%,transparent 52%),radial-gradient(circle at 20% 30%,#7c1e1430,transparent 22%);mix-blend-mode:screen}
.splash-grain{position:absolute;inset:0;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E")}
.splash-symbol{position:absolute;right:34px;top:28px;width:52px;height:52px;object-fit:contain;mix-blend-mode:screen;filter:invert(1) grayscale(1) contrast(2)}
.splash-center{text-align:center;position:relative;z-index:2}.splash-kicker{font-weight:950;font-size:clamp(16px,2vw,27px);letter-spacing:-.035em}.splash-title{font-weight:950;font-size:clamp(21px,2.6vw,38px);letter-spacing:-.04em;margin-top:-2px}.splash-center button{margin-top:34px;background:none;border:0;color:#a69c95;font:700 12px monospace;letter-spacing:.22em;cursor:pointer}.splash-center button:hover{color:white}.splash-note{position:absolute;bottom:24px;font:7px monospace;letter-spacing:.14em;color:#7c6f69}
.topbar{height:92px;padding:18px 24px;background:linear-gradient(180deg,rgba(233,228,218,.94),rgba(233,228,218,0));color:var(--charcoal)}
.identity{display:flex;align-items:center;gap:12px}.cb-logo{width:74px;height:46px;object-fit:cover;object-position:center;border-radius:2px;filter:saturate(.72) contrast(.92)}.identity-copy .eyebrow{color:var(--cortis-darkgreen);font-size:7px}.brand{font-size:16px;color:var(--charcoal)}
.stats b{color:var(--charcoal)}.stats small{color:#6d746b}
.searchbar{top:24px;background:rgba(239,235,226,.86);border:1px solid rgba(41,36,33,.18);box-shadow:0 8px 28px #423b3220}.searchbar input{color:var(--charcoal)}.searchbar button{background:var(--charcoal);color:var(--paper)}
.hero{left:28px;max-width:340px;color:var(--charcoal)}.tag{border:0;border-radius:0;background:var(--charcoal);color:var(--paper);padding:7px 10px}.hero h1{font-size:clamp(48px,4.8vw,76px);color:var(--charcoal);line-height:.82}.hero h1 em{color:var(--cortis-darkgreen);text-shadow:none}.hero h1 .dot{color:var(--charcoal)}.hero p{color:#5c625a;font-weight:600}
.primary{background:var(--charcoal);border-color:var(--charcoal);color:var(--paper);box-shadow:none;border-radius:0}.primary:hover{background:var(--cortis-darkgreen);border-color:var(--cortis-darkgreen)}
.demo-badge,.hint{color:#5e675e}.panel{background:rgba(238,234,225,.95);color:var(--charcoal);border:1px solid rgba(41,36,33,.2);border-radius:3px;box-shadow:8px 8px 0 rgba(73,107,85,.28);backdrop-filter:blur(14px)}.panel .eyebrow{color:var(--cortis-darkgreen)}.x{color:#625f58}.muted,.place{color:#6e716b}.avatar{border-color:var(--cortis-darkgreen);background:#d7dfd4;color:var(--cortis-darkgreen)}.message{border-color:var(--cortis-darkgreen)}.event{color:var(--cortis-darkgreen)}
.detected-location{border-radius:0;border:1px dashed var(--cortis-darkgreen);background:#dfe6dc}.detected-location small{color:#73766f}
input,textarea{border-radius:0;background:#f4f0e8;color:var(--charcoal);border-color:#b9b8af}.ghost{border-radius:0;color:var(--charcoal);border-color:#999b93}.privacy{color:#777b73}
.map-tools button{border-radius:0;background:rgba(239,235,226,.9);color:var(--charcoal);border-color:#7f877e}.map-tools button:hover{border-color:var(--cortis-darkgreen);color:var(--cortis-darkgreen)}
.temp-pin{background:var(--cortis-darkgreen);box-shadow:0 0 0 5px rgba(73,107,85,.18)}
.photo-stamp{position:fixed;z-index:5;pointer-events:none;background:var(--paper);padding:5px;box-shadow:5px 5px 0 rgba(41,36,33,.16);transform:rotate(-2deg);opacity:.94}.photo-stamp img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(.94)}.photo-one{right:34px;bottom:84px;width:116px;height:94px}.photo-one span{position:absolute;left:-16px;bottom:-12px;background:var(--charcoal);color:var(--paper);padding:5px 7px;font:700 6px monospace;letter-spacing:.08em;white-space:nowrap}.photo-two{right:132px;bottom:42px;width:84px;height:67px;transform:rotate(3deg);opacity:.78}
@media(max-width:760px){.cb-logo{width:55px;height:35px}.identity-copy{display:none}.photo-stamp{display:none}.splash-symbol{right:20px;top:20px;width:42px}.splash-note{font-size:6px}.hero{bottom:56px}.searchbar{top:70px}}

/* V9 — true 3D globe */
#map{background:#aebcaf}
.maplibregl-canvas{filter:saturate(.62) sepia(.04) brightness(.98) contrast(.96)}
.maplibregl-canvas-container{cursor:grab}
.maplibregl-canvas-container:active{cursor:grabbing}

/* V10 — GREENGREEN × washed blue */
:root{
 --gg:#91b49a;
 --gg-light:#cbdccf;
 --gg-pale:#e5eee7;
 --sky:#a9ced7;
 --sky-light:#dcecf0;
 --denim:#668fa2;
 --ink:#17221d;
 --paper:#edf2ec;
 --muted:#65756c;
 --acid:#91b49a;
 --charcoal:#17221d;
 --cortis-green:#91b49a;
 --cortis-darkgreen:#527460;
}
body{background:#dbe8df;color:var(--ink)}
#map{background:#b9d6d7}
.maplibregl-canvas{filter:saturate(.62) brightness(1.08) contrast(.88)}
.topbar{
 background:linear-gradient(180deg,rgba(237,242,236,.94) 0%,rgba(237,242,236,.72) 52%,rgba(237,242,236,0) 100%);
 color:var(--ink)
}
.cb-logo{filter:saturate(.55) brightness(1.06) contrast(.88)}
.identity-copy .eyebrow{color:#66836f}.brand{color:var(--ink)}
.stats b{color:var(--ink)}.stats small{color:#718077}
.searchbar{background:rgba(241,245,240,.86);border-color:rgba(23,34,29,.12);box-shadow:0 8px 32px rgba(51,81,68,.08)}
.searchbar input{color:var(--ink)}.searchbar button{background:#789dab;color:#f7faf7}
.hero{color:var(--ink)}
.tag{background:#91b49a;color:#132019}
.hero h1{color:var(--ink)}.hero h1 em{color:#668fa2}.hero h1 .dot{color:#668fa2}
.hero p{color:#63746b}
.primary{background:#789dab;border-color:#789dab;color:#f7faf7}
.primary:hover{background:#527f91;border-color:#527f91}
.panel{background:rgba(239,245,239,.96);border-color:rgba(82,116,96,.22);box-shadow:8px 8px 0 rgba(102,143,162,.18);color:var(--ink)}
.panel .eyebrow{color:#668fa2}
.detected-location{background:#dfeae2;border-color:#8aad95}
.avatar{background:#dce9e0;border-color:#789dab;color:#527f91}
.message{border-color:#789dab}.event{color:#527f91}
.map-tools button{background:rgba(239,245,239,.9);border-color:#9bad9f;color:#4f6559}
.map-tools button:hover{border-color:#668fa2;color:#527f91}
.photo-stamp{background:#e8eee8;box-shadow:5px 5px 0 rgba(82,116,96,.14)}
.demo-badge,.hint{color:#64776b}
.temp-pin{background:#668fa2;box-shadow:0 0 0 5px rgba(102,143,162,.16)}
/* calm blue-green intro rather than red/black */
.splash{
 background:
 radial-gradient(circle at 28% 32%,rgba(169,206,215,.55),transparent 34%),
 radial-gradient(circle at 68% 58%,rgba(145,180,154,.62),transparent 42%),
 linear-gradient(145deg,#b9d4cf,#7fa6ad);
 color:#f6f8f4
}
.splash:before{background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.10) 40%,transparent 52%)}
.splash-center button{color:#e5efea}.splash-center button:hover{color:white}
.splash-note{color:#d5e3dd}

/* V11 — richer blue/green + subtle star field */
body{
 background:
  radial-gradient(circle at 20% 18%,rgba(201,232,222,.75),transparent 26%),
  radial-gradient(circle at 78% 30%,rgba(112,170,184,.32),transparent 35%),
  linear-gradient(145deg,#8fc3c6 0%,#6faab3 48%,#79a993 100%);
}
#map{background:transparent}
#map:before{
 content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.42;
 background-image:
  radial-gradient(circle,rgba(255,255,255,.92) 0 1px,transparent 1.4px),
  radial-gradient(circle,rgba(235,250,244,.72) 0 .8px,transparent 1.2px),
  radial-gradient(circle,rgba(255,255,255,.55) 0 .7px,transparent 1.1px);
 background-size:127px 127px,181px 181px,239px 239px;
 background-position:17px 29px,73px 11px,121px 83px;
}
.maplibregl-map{background:transparent!important}
.maplibregl-canvas{filter:saturate(.82) brightness(1.02) contrast(.96)}
.topbar{background:linear-gradient(180deg,rgba(230,240,234,.90),rgba(220,235,229,.46) 58%,transparent)}
.searchbar{background:rgba(237,244,239,.88)}
.photo-stamp{opacity:.88}

/* V12 — approved headline layout */
.hero{max-width:500px}
.hero h1{
 display:flex;
 flex-direction:column;
 gap:0;
 width:max-content;
 margin:0 0 28px;
 font-family:Arial Black,Arial,Helvetica,sans-serif;
 font-size:clamp(52px,4.8vw,82px);
 line-height:.84;
 font-weight:950;
 letter-spacing:-.075em;
}
.hero h1 .title-row{
 display:flex;
 align-items:baseline;
 gap:.24em;
 white-space:nowrap;
}
.hero h1 em{font-style:normal;color:#668fa2}
.hero .primary{margin-top:0}
@media(max-width:760px){
 .hero{max-width:340px}
 .hero h1{font-size:clamp(43px,13vw,60px);margin-bottom:20px}
 .hero h1 .title-row{gap:.18em}
}

/* V13 — modern UI typography
   Removes the typewriter/terminal feeling from the interface.
*/
body,
button,
input,
textarea{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.panel{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.panel .eyebrow,
.detected-location .eyebrow,
label,
.muted,
.place,
.detected-location small,
.privacy,
#formStatus,
.event,
.stats small,
.searchbar input,
.demo-badge,
.hint{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.panel .eyebrow,
.detected-location .eyebrow{
 font-size:9px;
 line-height:1.2;
 font-weight:800;
 letter-spacing:.18em;
 text-transform:uppercase;
}

.panel h2{
 font-family:Arial Black, Inter, "Helvetica Neue", Arial, sans-serif;
 font-size:24px;
 line-height:1;
 font-weight:900;
 letter-spacing:-.045em;
}

.panel > .muted{
 font-size:11px;
 line-height:1.45;
 font-weight:500;
 letter-spacing:0;
}

.detected-location strong{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
 font-size:15px;
 line-height:1.25;
 font-weight:750;
 letter-spacing:-.015em;
}

.detected-location small{
 font-size:9px;
 line-height:1.35;
 font-weight:500;
 letter-spacing:0;
}

label{
 font-size:9px;
 line-height:1.2;
 font-weight:750;
 letter-spacing:.08em;
}

label span{
 font-weight:500;
 letter-spacing:.02em;
}

input,
textarea{
 font-size:13px;
 line-height:1.4;
 font-weight:450;
 letter-spacing:0;
}

.check{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
 font-size:10px;
 font-weight:600;
 letter-spacing:0;
}

.privacy{
 font-size:9px;
 line-height:1.45;
 font-weight:500;
 letter-spacing:0;
}

.primary,
.ghost{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
 font-weight:850;
 letter-spacing:.08em;
}

.searchbar input{
 font-size:10px;
 font-weight:550;
 letter-spacing:.035em;
}

.stats small{
 font-size:8px;
 font-weight:650;
 letter-spacing:.12em;
}

.demo-badge,
.hint{
 font-size:8px;
 font-weight:650;
 letter-spacing:.13em;
}

.message{
 font-family:Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* V14 — stronger hero contrast / richer color */
body{
 background:
  radial-gradient(circle at 16% 45%,rgba(126,210,186,.72),transparent 32%),
  radial-gradient(circle at 75% 22%,rgba(24,115,145,.56),transparent 42%),
  linear-gradient(135deg,#63b9b6 0%,#2e91a5 48%,#237a8f 100%);
}
#map:before{opacity:.68}
.hero{opacity:1!important;filter:none!important}
.hero.fade{opacity:.18!important}
.hero h1{opacity:1;color:#071b19;text-shadow:0 1px 0 rgba(255,255,255,.04)}
.hero h1 em{color:#2f7393!important}
.hero h1 .dot{color:#2f7393!important}
.hero .primary{
 background:#4f7f9a;
 border-color:#4f7f9a;
 color:#fff;
 box-shadow:0 10px 30px rgba(26,74,91,.18);
}
.hero .primary:hover{background:#396d89;border-color:#396d89}

/* V16 — approved modal typography + outlined UI */
.panel{
 border:2px solid #10211f;
 border-radius:4px;
 box-shadow:8px 8px 0 rgba(21,77,86,.16);
 background:rgba(240,247,242,.97);
}
.panel h2{
 font-family:"Arial Narrow",Impact,"Arial Black",Arial,sans-serif;
 font-size:27px;
 line-height:.95;
 font-weight:900;
 letter-spacing:-.035em;
 text-transform:uppercase;
 color:#10211f;
}
.panel .eyebrow{
 font-family:Arial,Helvetica,sans-serif;
 font-size:10px;
 font-weight:800;
 letter-spacing:.18em;
 color:#397c99;
}
.panel > .muted{
 font-family:Arial,Helvetica,sans-serif;
 font-size:12px;
 line-height:1.45;
 color:#344743;
}
.detected-location{
 border:2px solid #17302d;
 border-radius:3px;
 background:rgba(213,232,222,.55);
 padding:18px 16px;
}
.detected-location .eyebrow{
 font-family:Arial,Helvetica,sans-serif;
 font-size:10px;
 font-weight:900;
 letter-spacing:.14em;
 color:#397c99;
}
.detected-location strong{
 font-family:Arial,Helvetica,sans-serif;
 font-size:18px;
 line-height:1.2;
 font-weight:800;
 letter-spacing:-.025em;
 color:#10211f;
}
.detected-location small{
 font-family:Arial,Helvetica,sans-serif;
 font-size:10px;
 line-height:1.4;
 color:#566863;
}
label{
 font-family:Arial,Helvetica,sans-serif;
 font-size:10px;
 font-weight:800;
 letter-spacing:.06em;
 color:#162623;
}
label span{font-weight:500;letter-spacing:0}
input,textarea{
 border:2px solid #263b37!important;
 border-radius:3px!important;
 background:#f6f2eb!important;
 font-family:Arial,Helvetica,sans-serif!important;
 font-size:14px!important;
 color:#14221f!important;
}
input:focus,textarea:focus{
 outline:none;
 border-color:#397c99!important;
 box-shadow:0 0 0 2px rgba(57,124,153,.12);
}
.check{
 font-family:Arial,Helvetica,sans-serif;
 font-size:11px;
 font-weight:500;
 color:#20332f;
}
.privacy{
 font-family:Arial,Helvetica,sans-serif;
 font-size:10px;
 line-height:1.45;
 color:#425651;
}
.panel .primary{
 border:2px solid #17302d;
 border-radius:3px;
 background:#397c99;
 color:#fff;
 font-family:Arial,Helvetica,sans-serif;
 font-size:15px;
 font-weight:900;
 letter-spacing:.08em;
}
.panel .primary:hover{background:#2c6c88;border-color:#10211f}
.panel .close{
 color:#10211f;
 font-family:Arial,Helvetica,sans-serif;
 font-weight:900;
 font-size:25px;
}

/* V17 — map zoom labels, lighter pins, corrected pill search */
.searchbar{
 border:1px solid rgba(23,48,45,.42)!important;
 border-radius:999px!important;
 overflow:hidden!important;
 padding:0!important;
 height:42px;
 display:flex;
 align-items:stretch;
 background:rgba(240,245,240,.92);
}
.searchbar input{
 flex:1;
 min-width:0;
 height:100%;
 margin:0!important;
 padding:0 18px!important;
 border:0!important;
 border-radius:999px 0 0 999px!important;
 outline:0!important;
 box-shadow:none!important;
 background:transparent!important;
}
.searchbar input:focus{
 border:0!important;
 outline:0!important;
 box-shadow:none!important;
}
.searchbar button{
 width:62px;
 height:100%;
 margin:0!important;
 border:0!important;
 border-left:1px solid rgba(23,48,45,.28)!important;
 border-radius:0 999px 999px 0!important;
 box-shadow:none!important;
}
.temp-pin{
 width:14px!important;
 height:14px!important;
 border:1.5px solid #10211f!important;
 box-shadow:0 0 0 3px rgba(16,33,31,.08)!important;
}

/* V18 — approved final micro-adjustments only */
.temp-pin{
  width:14px!important;
  height:14px!important;
  border:1.5px solid #10211f!important;
  box-shadow:0 0 0 2px rgba(16,33,31,.06)!important;
}

/* V24 — country totals at distant zoom */
.fan-card .message{margin-bottom:2px}

/* V25 — guaranteed country-total bubbles on 3D globe */
.country-total-marker{
  appearance:none;
  -webkit-appearance:none;
  min-width:30px;
  height:30px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(247,250,247,.95);
  background:rgba(116,151,207,.94);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  font-weight:800;
  line-height:1;
  box-shadow:0 4px 16px rgba(31,78,98,.18);
  cursor:pointer;
  pointer-events:auto;
}
.country-total-marker:hover{
  transform:scale(1.06);
  background:rgba(92,137,194,.98);
}

/* V26 — zoom hierarchy: country → state/province → local */
.state-total-marker{
  appearance:none;
  -webkit-appearance:none;
  min-width:29px;
  height:29px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(247,250,247,.96);
  background:rgba(112,151,199,.94);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:Arial,Helvetica,sans-serif;
  font-size:11px;
  font-weight:800;
  line-height:1;
  box-shadow:0 4px 14px rgba(31,78,98,.16);
  cursor:pointer;
  pointer-events:auto;
}
.state-total-marker:hover{
  transform:scale(1.06);
  background:rgba(89,134,190,.98);
}

.site-tabs{position:fixed;z-index:30;left:50%;top:8px;transform:translateX(-50%);display:flex;gap:28px}.site-tabs a{color:#173a3a99;text-decoration:none;font:800 9px Arial;letter-spacing:.12em;padding:6px 0;border-bottom:1px solid transparent}.site-tabs a.active{color:#102625;border-color:#102625}.members-page{min-height:100vh;height:auto;overflow:auto;background:linear-gradient(135deg,#adddd3,#65bbb7 45%,#288ba6);color:#102625}.members-header{height:86px;padding:0 28px;display:flex;align-items:center}.members-identity{display:flex;gap:12px;align-items:center;color:#102625;text-decoration:none}.members-identity img{width:64px;height:44px;object-fit:cover}.members-identity small{display:block;font:700 7px monospace;letter-spacing:.15em;opacity:.55}.members-identity strong{display:block;font-size:17px}.members-tabs{top:23px}.members-main{padding:5px 44px 70px;max-width:1660px;margin:auto}.members-main>h1{text-align:center;margin:0 0 28px;font-size:clamp(50px,5.6vw,88px);letter-spacing:-.07em}.members-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:26px}.member-card{color:#102625;text-decoration:none}.member-card h2{font-size:clamp(18px,1.5vw,25px);margin:0 0 9px;padding-bottom:8px;border-bottom:2px solid #102625}.member-photo{aspect-ratio:3/4;border:2px solid #f4faf7dd;border-radius:5px;padding:5px;overflow:hidden}.member-photo img{width:100%;height:100%;object-fit:cover}.member-card:first-child img{object-position:52% 42%}.members-footer{display:flex;justify-content:space-between;padding:18px 28px;border-top:1px solid #10262533;font:7px monospace;letter-spacing:.08em}.profile-main{width:min(1380px,calc(100vw - 56px));margin:auto;padding:24px 0 80px}.back{display:inline-block;margin-bottom:25px;color:#102625;text-decoration:none;font:800 9px Arial;letter-spacing:.12em}.profile-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:58px}.profile-photo{min-height:610px;border:2px solid #f4faf7e8;border-radius:5px;padding:8px}.profile-photo img{width:100%;height:100%;min-height:590px;object-fit:cover}.profile-info{display:flex;flex-direction:column;justify-content:center;border-block:1px solid #10262566}.profile-info h1{margin:0;font-size:clamp(68px,7vw,126px);line-height:.75;letter-spacing:-.075em}.profile-role{margin-top:22px;width:max-content;padding:8px 12px;border:1px solid #10262577;border-radius:999px;font:850 10px Arial;letter-spacing:.16em}.profile-facts{margin-top:50px;border-top:1px solid #10262540}.profile-fact{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid #10262540}.profile-fact span{font:800 8px monospace;letter-spacing:.14em;opacity:.55}.profile-fact strong{font-size:20px}@media(max-width:900px){.members-grid{grid-template-columns:repeat(2,1fr)}.profile-layout{grid-template-columns:1fr}}@media(max-width:620px){.members-grid{grid-template-columns:1fr}.members-main{padding:60px 16px}.members-tabs{top:76px}.profile-main{width:calc(100vw - 28px);padding-top:70px}.profile-info h1{font-size:64px}.profile-fact{grid-template-columns:105px 1fr}}




/* V32 — clean structured background + equalized member/profile proportions */

/* Remove photographic watermark backgrounds completely */
.members-page::before,
.members-page::after,
.member-profile-page::before,
.member-profile-page::after {
  content: none !important;
}

/* Main background: restrained teal gradient + CSS-only technical grid */
.members-page,
.member-profile-page {
  background:
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    radial-gradient(circle at 12% 12%, rgba(207,244,233,.42), transparent 31%),
    radial-gradient(circle at 86% 18%, rgba(15,105,138,.22), transparent 36%),
    linear-gradient(135deg,#a8d9d1 0%,#71c2bd 43%,#2f91aa 100%) !important;
  background-size:
    52px 52px,
    52px 52px,
    auto,
    auto,
    auto !important;
}

/* CSS-only decorative location marks */
.members-page .members-stars,
.member-profile-page .members-stars {
  opacity: 1;
  background:
    radial-gradient(circle at 7% 18%, rgba(255,255,255,.68) 0 1px, transparent 1.6px),
    radial-gradient(circle at 23% 72%, rgba(255,255,255,.48) 0 1px, transparent 1.6px),
    radial-gradient(circle at 54% 13%, rgba(255,255,255,.55) 0 1px, transparent 1.6px),
    radial-gradient(circle at 89% 79%, rgba(255,255,255,.55) 0 1px, transparent 1.6px),
    radial-gradient(circle at 76% 29%, rgba(255,255,255,.4) 0 1px, transparent 1.6px);
}
.members-page .members-stars::before,
.member-profile-page .members-stars::before {
  content:"+";
  position:fixed;
  left:6vw;
  top:28vh;
  font:300 24px/1 monospace;
  color:rgba(244,252,249,.45);
  text-shadow:
    72vw -11vh 0 rgba(244,252,249,.32),
    83vw 46vh 0 rgba(244,252,249,.30),
    21vw 53vh 0 rgba(244,252,249,.26),
    48vw 11vh 0 rgba(244,252,249,.24);
}
.members-page .members-stars::after,
.member-profile-page .members-stars::after {
  content:"34.0222° N  ·  118.2437° W";
  position:fixed;
  right:4vw;
  bottom:7vh;
  font:600 8px/1.4 monospace;
  letter-spacing:.15em;
  color:rgba(238,249,246,.28);
}

/* MEMBERS overview: exact visual consistency */
.members-main {
  max-width: 1660px;
}
.members-grid {
  grid-template-columns: repeat(5,minmax(0,1fr));
  align-items:start;
}
.member-card {
  display:grid;
  grid-template-rows:auto 1fr;
}
.member-card h2 {
  min-height: 38px;
  display:flex;
  align-items:flex-end;
}
.member-photo {
  aspect-ratio: 3 / 4 !important;
  height:auto !important;
}
.member-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Better individual crop positions without changing frame dimensions */
.member-card:nth-child(1) img { object-position: 52% 40%; }
.member-card:nth-child(2) img { object-position: 50% 46%; }
.member-card:nth-child(3) img { object-position: 50% 42%; }
.member-card:nth-child(4) img { object-position: 50% 34%; }
.member-card:nth-child(5) img { object-position: 50% 42%; }

/* Every opened member profile uses exactly the same geometry */
.profile-main {
  width:min(1380px,calc(100vw - 56px));
  padding-top:24px;
}
.profile-layout {
  grid-template-columns: minmax(0, 1fr) minmax(0, .88fr) !important;
  gap: 58px !important;
  align-items:center !important;
}
.profile-photo-wrap {
  width:100%;
  aspect-ratio: 1.08 / 1 !important;
  min-height:0 !important;
  height:auto !important;
  overflow:hidden;
}
.profile-photo-wrap img {
  width:100%;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover;
}

/* individual crop only; dimensions remain identical */
.profile-martin .profile-photo-wrap img { object-position: 50% 42%; }
.profile-james .profile-photo-wrap img { object-position: 50% 47%; }
.profile-juhoon .profile-photo-wrap img { object-position: 50% 43%; }
.profile-seonghyeon .profile-photo-wrap img { object-position: 50% 36%; }
.profile-keonho .profile-photo-wrap img { object-position: 50% 43%; }

.profile-info {
  min-height: 520px;
  padding: 42px 0 !important;
  justify-content:center;
}
.profile-info h1 {
  font-size: clamp(70px, 6.4vw, 112px) !important;
  line-height: .82 !important;
}
.profile-facts {
  margin-top:42px !important;
}
.profile-fact {
  min-height:58px;
}

/* Keep Martin/Keonho badges from shifting the overall composition */
.profile-role {
  margin-top:18px !important;
}

/* responsive */
@media(max-width:1000px){
  .profile-layout {
    grid-template-columns:1fr !important;
  }
  .profile-photo-wrap {
    aspect-ratio: 4 / 3 !important;
  }
  .profile-info {
    min-height:0;
  }
}
@media(max-width:620px){
  .members-page,
  .member-profile-page{
    background-size:34px 34px,34px 34px,auto,auto,auto !important;
  }
  .profile-photo-wrap {
    aspect-ratio: 4 / 3 !important;
  }
}


/* V33 — crop tuning for the new official member photos */
.member-card:nth-child(1) img { object-position: 48% 48% !important; }
.member-card:nth-child(2) img { object-position: 50% 46% !important; }
.member-card:nth-child(3) img { object-position: 50% 43% !important; }
.member-card:nth-child(4) img { object-position: 50% 42% !important; }
.member-card:nth-child(5) img { object-position: 50% 45% !important; }

.profile-martin .profile-photo-wrap img { object-position: 48% 50% !important; }
.profile-james .profile-photo-wrap img { object-position: 50% 48% !important; }
.profile-juhoon .profile-photo-wrap img { object-position: 50% 44% !important; }
.profile-seonghyeon .profile-photo-wrap img { object-position: 50% 44% !important; }
.profile-keonho .profile-photo-wrap img { object-position: 50% 47% !important; }


/* V34 — light technical background + integrated member cards */
.members-page,
.member-profile-page {
  background:
    radial-gradient(circle at 13% 18%, rgba(221,248,240,.52), transparent 29%),
    radial-gradient(circle at 84% 20%, rgba(26,139,163,.12), transparent 34%),
    linear-gradient(135deg,#a9ddd3 0%,#76c7c0 45%,#3b9bb0 100%) !important;
}

/* softer, less regular background texture */
.members-page .members-stars,
.member-profile-page .members-stars {
  opacity:1 !important;
  background:
    radial-gradient(circle at 7% 20%, rgba(20,88,91,.15) 0 1px, transparent 1.4px),
    radial-gradient(circle at 22% 76%, rgba(255,255,255,.38) 0 1px, transparent 1.4px),
    radial-gradient(circle at 48% 17%, rgba(20,88,91,.12) 0 1px, transparent 1.4px),
    radial-gradient(circle at 72% 68%, rgba(255,255,255,.30) 0 1px, transparent 1.4px),
    radial-gradient(circle at 91% 29%, rgba(20,88,91,.13) 0 1px, transparent 1.4px) !important;
}
.members-page .members-stars::before,
.member-profile-page .members-stars::before {
  content:"";
  position:fixed;
  inset:0;
  background:
    repeating-radial-gradient(ellipse at -8% 65%, transparent 0 44px, rgba(17,83,87,.055) 45px 46px, transparent 47px 70px),
    repeating-radial-gradient(ellipse at 108% 28%, transparent 0 52px, rgba(238,251,247,.09) 53px 54px, transparent 55px 82px);
  opacity:.9;
}
.members-page .members-stars::after,
.member-profile-page .members-stars::after {
  content:"+     +";
  position:fixed;
  right:4.5vw;
  bottom:8vh;
  white-space:pre;
  font:400 17px/1 monospace;
  letter-spacing:28px;
  color:rgba(18,81,85,.16);
}

/* MEMBER CARDS — name and image now belong to one quiet frame */
.members-grid {
  gap:24px !important;
}
.member-card {
  position:relative;
  display:flex !important;
  flex-direction:column;
  padding:14px 14px 15px;
  border:1px solid rgba(17,72,75,.32);
  border-radius:5px;
  background:rgba(223,244,238,.075);
  box-shadow:0 10px 28px rgba(21,83,91,.045);
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}
.member-card:hover {
  transform:translateY(-3px);
  background:rgba(223,244,238,.13);
  border-color:rgba(17,72,75,.48);
}
.member-card h2 {
  min-height:0 !important;
  margin:0 0 11px !important;
  padding:0 0 10px !important;
  border-bottom:1px solid rgba(17,72,75,.38) !important;
  font-size:clamp(17px,1.35vw,23px) !important;
}
.member-photo {
  border:1px solid rgba(17,72,75,.27) !important;
  border-radius:3px !important;
  padding:4px !important;
  background:rgba(226,246,240,.12) !important;
  box-shadow:none !important;
}
.member-card::after {
  content:"· · · · +";
  display:block;
  margin-top:10px;
  text-align:right;
  font:600 7px/1 monospace;
  letter-spacing:.22em;
  color:rgba(17,72,75,.32);
}

/* PROFILE — restrained framed information panel */
.profile-info {
  position:relative;
  border:0 !important;
  padding:42px 0 !important;
}
.profile-info::before {
  content:"";
  position:absolute;
  left:-18px;
  right:-18px;
  top:155px;
  bottom:24px;
  border:1px solid rgba(17,72,75,.34);
  border-radius:6px;
  background:rgba(223,244,238,.07);
  pointer-events:none;
}
.profile-info h1,
.profile-role,
.profile-facts {
  position:relative;
  z-index:1;
}
.profile-facts {
  margin:42px 0 0 !important;
  padding:12px 20px 10px;
  border-top:0 !important;
}
.profile-fact {
  border-bottom:1px solid rgba(17,72,75,.22) !important;
}
.profile-fact:last-child {
  border-bottom:0 !important;
}
.profile-role {
  border-color:rgba(17,72,75,.38) !important;
  background:rgba(223,244,238,.09);
}
.profile-photo-wrap {
  border:1px solid rgba(17,72,75,.38) !important;
  box-shadow:0 12px 30px rgba(21,83,91,.06) !important;
  background:rgba(223,244,238,.08) !important;
}

/* small coordinate label, decorative only */
.members-main::before,
.profile-main::before {
  content:"34.0222° N  /  118.2437° W";
  position:absolute;
  z-index:-1;
  font:600 7px/1 monospace;
  letter-spacing:.16em;
  color:rgba(17,72,75,.17);
}
.members-main::before { left:18px; bottom:38px; transform:rotate(-90deg); transform-origin:left bottom; }
.profile-main::before { right:0; bottom:40px; }

@media(max-width:1000px){
  .profile-info::before{top:120px}
}
@media(max-width:620px){
  .member-card{padding:11px}
  .profile-info::before{left:-7px;right:-7px;top:112px;bottom:12px}
  .profile-facts{padding-left:12px;padding-right:12px}
}


/* V35 — visual direction approved: same clean star field as FAN MAP */
.members-page,
.member-profile-page {
  background:
    radial-gradient(circle at 12% 18%, rgba(190,239,225,.56), transparent 31%),
    linear-gradient(115deg,#80d0c4 0%,#58b9b8 45%,#2487a4 100%) !important;
}

/* Remove all previous decorative technical/topographic elements */
.members-page .members-stars::before,
.member-profile-page .members-stars::before,
.members-page .members-stars::after,
.member-profile-page .members-stars::after,
.members-main::before,
.profile-main::before {
  content:none !important;
}

/* sparse stars, matching the FAN MAP language */
.members-page .members-stars,
.member-profile-page .members-stars {
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.88 !important;
  background:
    radial-gradient(circle at 4% 9%, rgba(255,255,255,.92) 0 1px, transparent 1.3px),
    radial-gradient(circle at 11% 23%, rgba(255,255,255,.55) 0 1px, transparent 1.3px),
    radial-gradient(circle at 19% 7%, rgba(255,255,255,.88) 0 1px, transparent 1.3px),
    radial-gradient(circle at 27% 19%, rgba(255,255,255,.62) 0 1px, transparent 1.3px),
    radial-gradient(circle at 35% 6%, rgba(255,255,255,.9) 0 1px, transparent 1.3px),
    radial-gradient(circle at 44% 25%, rgba(255,255,255,.58) 0 1px, transparent 1.3px),
    radial-gradient(circle at 52% 10%, rgba(255,255,255,.88) 0 1px, transparent 1.3px),
    radial-gradient(circle at 61% 21%, rgba(255,255,255,.58) 0 1px, transparent 1.3px),
    radial-gradient(circle at 69% 6%, rgba(255,255,255,.86) 0 1px, transparent 1.3px),
    radial-gradient(circle at 78% 16%, rgba(255,255,255,.56) 0 1px, transparent 1.3px),
    radial-gradient(circle at 87% 8%, rgba(255,255,255,.88) 0 1px, transparent 1.3px),
    radial-gradient(circle at 95% 25%, rgba(255,255,255,.62) 0 1px, transparent 1.3px),
    radial-gradient(circle at 7% 61%, rgba(255,255,255,.76) 0 1px, transparent 1.3px),
    radial-gradient(circle at 23% 74%, rgba(255,255,255,.54) 0 1px, transparent 1.3px),
    radial-gradient(circle at 39% 56%, rgba(255,255,255,.75) 0 1px, transparent 1.3px),
    radial-gradient(circle at 57% 78%, rgba(255,255,255,.58) 0 1px, transparent 1.3px),
    radial-gradient(circle at 73% 59%, rgba(255,255,255,.76) 0 1px, transparent 1.3px),
    radial-gradient(circle at 91% 72%, rgba(255,255,255,.62) 0 1px, transparent 1.3px) !important;
}

/* Cards: minimal, no extra decorative dots */
.member-card {
  background:rgba(225,246,240,.07) !important;
  border:1px solid rgba(13,67,72,.30) !important;
  box-shadow:none !important;
  padding:14px !important;
}
.member-card::after { content:none !important; }

.member-card h2 {
  font-size:clamp(15px,1.12vw,20px) !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
  padding-bottom:10px !important;
  margin-bottom:11px !important;
}

/* Use the same bold display family/weight language as PUT YOUR PIN DOWN */
.profile-fact .label,
.profile-fact .value,
.member-card h2 {
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight:800 !important;
}
.profile-fact .label {
  font-size:10px !important;
  letter-spacing:.10em !important;
}
.profile-fact .value {
  font-size:clamp(16px,1.25vw,21px) !important;
  letter-spacing:-.025em !important;
}

/* Profile information box */
.profile-info::before {
  top:150px !important;
  bottom:20px !important;
  border:1px solid rgba(13,67,72,.31) !important;
  background:rgba(225,246,240,.055) !important;
  border-radius:5px !important;
}

/* Do not duplicate Leader / Maknae below the member name */
.profile-role {
  display:none !important;
}

/* keep actual content above stars */
.members-header,.site-tabs,.members-main,.profile-main,.members-footer {
  position:relative;
  z-index:2;
}


/* V36 — keep FAN MAP / MEMBERS centered at the top */
.members-page .site-tabs,
.member-profile-page .site-tabs {
  position: fixed !important;
  top: 16px !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  display: flex !important;
  gap: 28px !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  margin: 0 !important;
  z-index: 50 !important;
}

.members-page .members-tabs,
.member-profile-page .members-tabs {
  top: 16px !important;
}

/* prevent any inherited mobile/side alignment from pushing nav left */
.members-page .site-tabs a,
.member-profile-page .site-tabs a {
  display: inline-block !important;
  white-space: nowrap !important;
}

/* keep header identity on the left while nav stays independently centered */
.members-page .members-header,
.member-profile-page .members-header {
  position: relative !important;
  min-height: 86px !important;
}

@media(max-width:620px){
  .members-page .site-tabs,
  .member-profile-page .site-tabs {
    top: 76px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }
}

/* V37 — Members: star field + more defined member frames */
body.members-page {
  background-color:#58b6b5 !important;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.82) 0 1px, transparent 1.4px),
    radial-gradient(circle, rgba(255,255,255,.58) 0 1px, transparent 1.35px),
    radial-gradient(circle, rgba(245,255,253,.48) 0 .8px, transparent 1.2px),
    radial-gradient(circle at 12% 16%, rgba(210,248,239,.42), transparent 30%),
    linear-gradient(112deg,#9edbd1 0%,#61bbb9 43%,#2389a4 100%) !important;
  background-size:128px 128px, 183px 183px, 239px 239px, auto, auto !important;
  background-position:17px 21px, 73px 92px, 131px 44px, 0 0, 0 0 !important;
  background-attachment:fixed !important;
}

body.members-page .member-card {
  border:2px solid rgba(232,255,250,.72) !important;
  background:rgba(31,126,139,.12) !important;
  box-shadow:
    inset 0 0 0 1px rgba(14,77,85,.22),
    0 8px 24px rgba(10,70,85,.08) !important;
}
body.members-page .member-card:hover {
  border-color:rgba(244,255,252,.95) !important;
  background:rgba(31,126,139,.18) !important;
}
body.members-page .member-photo {
  border:1px solid rgba(232,255,250,.64) !important;
  background:rgba(231,255,249,.10) !important;
}

/* V38 — approved Members palette: stronger teal/navy contrast + display wordmark */
body.members-page,
body.member-profile-page {
  background-color:#087f9b !important;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.92) 0 1px, transparent 1.45px),
    radial-gradient(circle, rgba(255,255,255,.66) 0 1px, transparent 1.35px),
    radial-gradient(circle, rgba(231,255,253,.52) 0 .8px, transparent 1.2px),
    radial-gradient(circle at 9% 20%, rgba(50,235,218,.48), transparent 29%),
    linear-gradient(112deg,#21c9c4 0%,#079db2 43%,#075b8d 72%,#06345f 100%) !important;
  background-size:128px 128px,183px 183px,239px 239px,auto,auto !important;
  background-position:17px 21px,73px 92px,131px 44px,0 0,0 0 !important;
  background-attachment:fixed !important;
}

/* Match the heavier display treatment approved for PUT YOUR PIN DOWN */
.members-identity strong {
  font-family:"Arial Black",Impact,Arial,sans-serif !important;
  font-weight:900 !important;
  font-stretch:condensed;
  letter-spacing:-.055em !important;
  line-height:.95 !important;
  text-transform:uppercase;
}

/* Preserve the more defined V37 member frames against the higher-contrast field */
body.members-page .member-card {
  border-color:rgba(226,255,250,.82) !important;
  background:rgba(13,104,132,.16) !important;
  box-shadow:inset 0 0 0 1px rgba(3,63,83,.30),0 8px 24px rgba(2,47,74,.10) !important;
}
body.members-page .member-photo {
  border-color:rgba(229,255,251,.74) !important;
}

/* V39 — approved finishing pass: fuller Members viewport + stronger profile labels */
@media (min-width:1001px){
  body.members-page {
    min-height:100vh !important;
    display:flex;
    flex-direction:column;
  }
  body.members-page .members-main {
    width:min(1660px,calc(100vw - 90px));
    flex:1 0 auto;
    padding-top:8px !important;
    padding-bottom:64px !important;
  }
  body.members-page .members-grid {
    gap:22px !important;
    align-items:stretch !important;
  }
  body.members-page .member-card {
    padding:14px 14px 16px !important;
  }
  body.members-page .member-photo {
    aspect-ratio: .73 / 1 !important;
  }
  body.members-page .members-footer {
    margin-top:auto !important;
  }
}

/* Profile fact labels: intentionally visible while remaining secondary to values */
body.member-profile-page .profile-fact .label {
  font-family:"Arial Black",Impact,Arial,sans-serif !important;
  font-size:clamp(12px,.82vw,15px) !important;
  font-weight:900 !important;
  letter-spacing:.115em !important;
  color:rgba(2,35,47,.82) !important;
  opacity:1 !important;
}
body.member-profile-page .profile-fact .value {
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:clamp(19px,1.42vw,25px) !important;
  font-weight:800 !important;
  color:rgba(2,29,40,.96) !important;
  opacity:1 !important;
}
body.member-profile-page .profile-fact {
  min-height:68px !important;
  padding:13px 0 !important;
}

/* V40 — profile facts readability only; no layout redesign */
body.members-page .profile-fact span {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(10px, .72vw, 12px) !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  color: #082d36 !important;
  opacity: .96 !important;
}
body.members-page .profile-fact strong {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(21px, 1.45vw, 25px) !important;
  font-weight: 800 !important;
  color: #082a33 !important;
  opacity: 1 !important;
}


/* V41 — minimal centered Members footer (approved option 06) */
body.members-page .members-footer.members-footer-minimal {
  margin-top: auto !important;
  min-height: 92px !important;
  padding: 0 28px 24px !important;
  border-top: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  gap: .65em !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(9px, .68vw, 12px) !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  color: rgba(4, 35, 47, .72) !important;
  text-align: center !important;
}
body.members-page .members-footer.members-footer-minimal span {
  opacity: .72 !important;
}

/* V42 — pill navigation inspired by the Fan Map search control */
.site-tabs,
.members-page .site-tabs,
.member-profile-page .site-tabs {
  gap:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(21,67,75,.34) !important;
  border-radius:999px !important;
  background:rgba(239,246,242,.88) !important;
  box-shadow:0 3px 12px rgba(8,58,76,.08) !important;
}
.site-tabs a,
.members-page .site-tabs a,
.member-profile-page .site-tabs a {
  min-width:92px !important;
  padding:10px 18px !important;
  border:0 !important;
  text-align:center !important;
  color:rgba(35,55,58,.62) !important;
  font:800 10px Arial,sans-serif !important;
  letter-spacing:.08em !important;
  transition:background .18s ease,color .18s ease !important;
}
.site-tabs a.active,
.members-page .site-tabs a.active,
.member-profile-page .site-tabs a.active {
  color:#f4faf7 !important;
  background:rgba(70,126,158,.72) !important;
}
.site-tabs a + a,
.members-page .site-tabs a + a,
.member-profile-page .site-tabs a + a {
  border-left:1px solid rgba(21,67,75,.18) !important;
}

/* Members only: give the portraits a little more breathing room below the title */
@media (min-width:1001px){
  body.members-page .members-grid { margin-top:18px !important; }
}


/* FINAL NAV PREVIEW — minimal access to Members without changing Fan Map layout */
.map-page-tabs{
  position:fixed;
  z-index:31;
  top:7px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:9px;
  background:transparent;
  border:0;
  box-shadow:none;
  pointer-events:auto;
  white-space:nowrap;
  font-family:Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:8px;
  line-height:1;
  font-weight:800;
  letter-spacing:.14em;
}
.map-page-tabs a{
  color:rgba(16,38,37,.60);
  text-decoration:none;
  padding:2px 0 3px;
  border-bottom:1px solid transparent;
}
.map-page-tabs a.active{
  color:#102625;
  border-bottom-color:#102625;
}
.map-page-tabs a:hover{color:#102625}
.map-page-tabs span{color:rgba(16,38,37,.28);font-weight:600}
@media(max-width:760px){
  .map-page-tabs{top:51px;font-size:7px;gap:7px}
}

/* NAV POSITION TEST — place FAN MAP / MEMBERS beside the search field */
@media (min-width:761px){
  .map-page-tabs{
    top:39px !important;
    left:calc(50% + min(190px, 18vw) + 24px) !important;
    transform:translateY(-50%) !important;
    gap:13px !important;
    font-size:9px !important;
    letter-spacing:.12em !important;
  }
}


/* FAN MAP NAV PILL TEST — same visual language as Members, map layout untouched */
.map-page-tabs{
  gap:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(21,67,75,.34) !important;
  border-radius:999px !important;
  background:rgba(239,246,242,.88) !important;
  box-shadow:0 3px 12px rgba(8,58,76,.08) !important;
  font-size:10px !important;
  letter-spacing:.08em !important;
}
.map-page-tabs a{
  min-width:92px !important;
  padding:10px 18px !important;
  border:0 !important;
  text-align:center !important;
  color:rgba(35,55,58,.62) !important;
  font:800 10px Arial,sans-serif !important;
  letter-spacing:.08em !important;
  line-height:1 !important;
  box-sizing:border-box !important;
}
.map-page-tabs a.active{
  color:#f4faf7 !important;
  background:rgba(70,126,158,.72) !important;
}
.map-page-tabs a + a{
  border-left:1px solid rgba(21,67,75,.18) !important;
}
@media (min-width:761px){
  .map-page-tabs{
    top:39px !important;
    left:calc(50% + min(190px, 18vw) + 24px) !important;
    transform:translateY(-50%) !important;
  }
}


/* V43 — center and vertically align Search + Fan Map/Members as one control group */
@media (min-width:761px){
  .map-top-controls{
    position:fixed;
    z-index:31;
    top:24px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    width:max-content;
    pointer-events:none;
  }
  .map-top-controls .searchbar,
  .map-top-controls .map-page-tabs{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    transform:none !important;
    margin:0 !important;
    pointer-events:auto;
  }
  .map-top-controls .searchbar{
    width:min(380px,36vw);
    flex:0 0 auto;
  }
  .map-top-controls .map-page-tabs{
    flex:0 0 auto;
  }
}


/* V44 — MOBILE MEMBERS / PROFILES ONLY
   Desktop and Fan Map are intentionally untouched. */
@media (max-width: 760px) {
  /* shared Members mobile header */
  body.members-page .members-header {
    height: auto !important;
    min-height: 78px !important;
    padding: 16px 18px 8px !important;
    align-items: center !important;
  }
  body.members-page .members-identity {
    gap: 10px !important;
  }
  body.members-page .members-identity img {
    width: 58px !important;
    height: 42px !important;
    border-radius: 0 !important;
  }
  body.members-page .members-identity small {
    display: block !important;
    font-size: 6px !important;
    letter-spacing: .13em !important;
  }
  body.members-page .members-identity strong {
    display: block !important;
    font-size: 15px !important;
    line-height: 1.05 !important;
  }

  /* place tabs in normal flow on mobile — no overlap with content/photos */
  body.members-page .site-tabs,
  body.member-profile-page .site-tabs {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    width: min(330px, calc(100vw - 48px)) !important;
    margin: 8px auto 24px !important;
    display: flex !important;
  }
  body.members-page .site-tabs a,
  body.member-profile-page .site-tabs a {
    flex: 1 1 50% !important;
    min-width: 0 !important;
    padding: 12px 10px !important;
    font-size: 12px !important;
  }

  /* Members list: one strong card per row instead of five squeezed cards */
  body.members-page:not(.member-profile-page) .members-main {
    padding: 0 18px 48px !important;
    max-width: 560px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  body.members-page:not(.member-profile-page) .members-main > h1 {
    font-size: clamp(52px, 17vw, 78px) !important;
    line-height: .92 !important;
    margin: 4px 0 30px !important;
    letter-spacing: -.065em !important;
  }
  body.members-page:not(.member-profile-page) .members-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin-top: 0 !important;
  }
  body.members-page:not(.member-profile-page) .member-card {
    width: 100% !important;
    padding: 14px !important;
    border: 2px solid rgba(244,250,247,.74) !important;
    border-radius: 8px !important;
    background: rgba(14,77,99,.08) !important;
    box-sizing: border-box !important;
  }
  body.members-page:not(.member-profile-page) .member-card h2 {
    font-size: 25px !important;
    line-height: 1 !important;
    margin: 0 0 12px !important;
    padding: 0 0 11px !important;
  }
  body.members-page:not(.member-profile-page) .member-photo {
    width: 100% !important;
    aspect-ratio: 4 / 5 !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 5px !important;
    box-sizing: border-box !important;
  }
  body.members-page:not(.member-profile-page) .member-photo img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  body.members-page:not(.member-profile-page) .members-footer.members-footer-minimal {
    min-height: 88px !important;
    padding: 24px 18px 34px !important;
    font-size: 10px !important;
    letter-spacing: .19em !important;
  }

  /* Individual profiles: clean vertical mobile composition */
  body.member-profile-page .profile-main {
    width: auto !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    padding: 0 18px 48px !important;
    box-sizing: border-box !important;
  }
  body.member-profile-page .back {
    margin: 0 0 16px !important;
    font-size: 10px !important;
    line-height: 1 !important;
  }
  body.member-profile-page .profile-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 28px !important;
  }
  body.member-profile-page .profile-photo,
  body.member-profile-page .profile-photo-wrap {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    padding: 6px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  body.member-profile-page .profile-photo img,
  body.member-profile-page .profile-photo-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
  }
  body.member-profile-page .profile-info {
    display: block !important;
    border-block: 0 !important;
    padding: 0 !important;
  }
  body.member-profile-page .profile-info::before {
    display: none !important;
  }
  body.member-profile-page .profile-info h1 {
    font-size: clamp(58px, 17vw, 82px) !important;
    line-height: .88 !important;
    letter-spacing: -.065em !important;
    margin: 0 0 24px !important;
  }
  body.member-profile-page .profile-facts {
    margin: 0 !important;
    padding: 0 16px !important;
    border: 1px solid rgba(16,38,37,.18) !important;
    border-radius: 8px !important;
    background: rgba(31,104,145,.12) !important;
  }
  body.member-profile-page .profile-fact {
    grid-template-columns: 112px minmax(0,1fr) !important;
    gap: 18px !important;
    align-items: center !important;
    padding: 20px 0 !important;
  }
  body.member-profile-page .profile-fact span,
  body.member-profile-page .profile-fact .label {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: .12em !important;
    opacity: .88 !important;
  }
  body.member-profile-page .profile-fact strong,
  body.member-profile-page .profile-fact .value {
    font-size: clamp(20px, 5.8vw, 27px) !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere !important;
  }
  body.member-profile-page .profile-role {
    margin: 0 0 18px !important;
  }
  body.member-profile-page .members-footer {
    display: flex !important;
    justify-content: center !important;
    min-height: 76px !important;
    padding: 22px 18px 30px !important;
    border-top: 0 !important;
    font-size: 9px !important;
    text-align: center !important;
  }
  body.member-profile-page .members-footer span {
    display: none !important;
  }
}

@media (max-width: 390px) {
  body.member-profile-page .profile-fact {
    grid-template-columns: 96px minmax(0,1fr) !important;
    gap: 12px !important;
  }
  body.member-profile-page .profile-fact span,
  body.member-profile-page .profile-fact .label {
    font-size: 10px !important;
    letter-spacing: .09em !important;
  }
}

/* V45 — mobile Fan Map navigation spacing only.
   Keep the existing search/map and all map behaviour untouched; simply lift
   the FAN MAP / MEMBERS pill so it no longer overlaps the search field. */
@media (max-width: 760px) {
  body:not(.members-page) .map-page-tabs {
    top: 26px !important;
  }
}
