:root{--bg:#091017;--side:#0c131a;--card:#121e27;--card2:#16242d;--line:#283943;--muted:#90a4aa;--text:#eff6f2;--lime:#c9f36c;--mint:#86cbb5;--r:17px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.02em}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}::selection{background:var(--lime);color:#0b1913}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.side{height:100vh;position:sticky;top:0;background:var(--side);border-right:1px solid #26353c;z-index:20;display:flex;flex-direction:column;padding:28px 15px 20px}.brand{display:flex;align-items:center;gap:9px;padding:0 10px 32px;white-space:nowrap}.brand-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--lime);font-size:20px;font-weight:1000;color:#112218;transform:rotate(-8deg)}.brand b{font-size:20px;letter-spacing:-.075em}.brand .light{color:var(--lime)}.brand small{font-size:8px;color:#8ab498;display:block;letter-spacing:.13em;font-weight:850;margin-top:3px}.side nav{display:flex;flex-direction:column;gap:7px}.nav-btn{width:100%;background:transparent;border:1px solid transparent;color:#a9bac0;padding:13px 15px;display:flex;align-items:center;gap:13px;text-align:left;border-radius:10px;font-weight:850;font-size:12px}.nav-btn .ico{font-size:19px;width:24px;text-align:center}.nav-btn.active{background:#243627;border-color:#324d37;color:var(--lime)}.nav-btn:hover{background:#1b2932}.side-bottom{margin-top:auto}.side-promo{background:linear-gradient(135deg,#1d382d,#17221d);border:1px solid #30483a;border-radius:12px;padding:14px;display:grid;gap:11px}.side-promo strong{line-height:1.35;font-size:17px;letter-spacing:-.04em}.side-caption{font-size:9px;line-height:1.7;color:#789198;margin:18px 5px 0}.micro{font-size:9px;font-weight:900;letter-spacing:.15em}.accent{color:var(--lime)}.app-main{min-width:0}.topbar{height:73px;position:sticky;top:0;z-index:15;background:#091017ec;backdrop-filter:blur(15px);border-bottom:1px solid #293941;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(16px,4.3vw,58px)}.breadcrumbs{font-size:10px;font-weight:900;letter-spacing:.19em;color:#8398a1}.breadcrumbs span{padding:0 5px;color:#45665a}.breadcrumbs b{color:var(--lime)}.top-actions{display:flex;align-items:center;gap:9px}.mode-badge{display:inline-flex;border-radius:30px;border:1px solid #2a4037;padding:8px 11px;background:#142019;color:#9cc9a7;font-size:9px;font-weight:800;white-space:nowrap}.small-pill,.small-icon{background:#17242d;border:1px solid #34434a;color:var(--text);border-radius:11px;height:36px;font-size:11px;font-weight:850}.small-pill{padding:0 12px}.small-icon{width:36px}.content{max-width:1480px;margin:auto;min-height:65vh;padding:30px clamp(16px,4.3vw,58px) 75px}.section{margin-top:34px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:18px}.section-top h2{font-size:clamp(22px,3vw,29px);margin:0;letter-spacing:-.055em}.section-top p{font-size:12px;color:var(--muted);margin:6px 0 0}.eyebrow{font-size:10px;color:var(--lime);font-weight:900;letter-spacing:.17em}.hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.2fr .8fr;background:radial-gradient(circle at 65% 42%,#285a41ad 0,transparent 49%),linear-gradient(120deg,#172f2c,#121e28 80%);border:1px solid #304639;border-radius:23px;min-height:330px}.hero-inner{padding:38px clamp(22px,3vw,43px);position:relative;z-index:1}.hero h1{font-size:clamp(34px,5vw,64px);letter-spacing:-.071em;line-height:1.04;margin:17px 0 13px;font-weight:900}.hero h1 span{color:var(--lime)}.hero p{max-width:500px;color:#b9cfc7;font-size:13px;line-height:1.8;margin:0 0 22px}.actions{display:flex;flex-wrap:wrap;gap:9px}.button{border:1px solid #475c51;background:#1a2a31;color:var(--text);border-radius:10px;font-size:12px;min-height:43px;padding:11px 15px;font-weight:880;transition:filter .15s}.button:hover{filter:brightness(1.15)}.button.lime{background:var(--lime);border-color:var(--lime);color:#152414}.button.ghost{background:#ffffff0a}.button.fill{width:100%}.button.tiny{min-height:33px;padding:8px 10px;font-size:10px}.hero-art{position:relative;min-height:265px;overflow:hidden}.record{position:absolute;width:350px;height:350px;right:-52px;top:4px;border-radius:50%;border:1px solid #638b714d;background:repeating-radial-gradient(circle,#223c33 0px,#14271f 2px,#28473b 3px,#102019 5px);box-shadow:0 0 85px #4fe3981a}.record:before{content:"";position:absolute;inset:35%;border-radius:50%;background:var(--lime);border:12px solid #1e342b}.record:after{content:"M";position:absolute;top:45.5%;left:45.7%;font-weight:950;font-size:28px;color:#172818}.floating{position:absolute;z-index:2;top:21%;left:3%;max-width:205px;transform:rotate(-8deg);border:1px solid #738a77;border-radius:15px;background:#152922dd;padding:17px;box-shadow:0 20px 50px #0007}.floating small{color:var(--lime);letter-spacing:.15em;font-weight:900;font-size:9px}.floating strong{font-size:24px;line-height:1.2;letter-spacing:-.06em;display:block;margin:12px 0}.floating p{font-size:10px;margin:0;color:#bed1ca}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.stat{border:1px solid var(--line);background:#111e27;border-radius:11px;padding:15px;min-width:0}.stat strong{font-size:20px;letter-spacing:-.05em;display:block}.stat span{font-size:11px;color:var(--muted);line-height:1.5}.post-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.post{border:1px solid #29404a;background:#111d26;border-radius:15px;overflow:hidden;min-width:0}.post-user{display:flex;align-items:center;gap:9px;padding:10px;min-width:0}.av{display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;background:linear-gradient(145deg,#8cbcc2,#c5d781);color:#0f261c;font-weight:900;width:34px;height:34px;font-size:12px;overflow:hidden}.av img{object-fit:cover;width:100%;height:100%}.post-user b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-user small{font-size:9px;color:#96adb2}.poster{display:flex;width:100%;border:0;min-width:0;aspect-ratio:9/16;flex-direction:column;justify-content:space-between;padding:14px;text-align:left;color:#f5f9f7;background:radial-gradient(ellipse at 50% 38%,#72594792 0,transparent 49%),linear-gradient(160deg,#302029,#122a30 95%);position:relative;overflow:hidden}.poster.live{background:radial-gradient(ellipse at 50% 40%,#17798998 0,transparent 52%),linear-gradient(145deg,#102e3d,#162329)}.poster.sheet{background:radial-gradient(ellipse at 45% 45%,#a7864380 0,transparent 54%),linear-gradient(130deg,#25302e,#1b1d23)}.poster.other{background:radial-gradient(ellipse at 55% 35%,#685a9f88 0,transparent 60%),linear-gradient(135deg,#1b2d3e,#1a2431)}.poster .watermark{font-size:9px;letter-spacing:.14em;font-weight:900;color:#e2eee2b0}.poster .poster-glyph{font-size:clamp(45px,6vw,85px);font-weight:900;align-self:center;text-shadow:0 20px 40px #0008;opacity:.78;transform:rotate(-11deg)}.poster .poster-kind{display:block;color:var(--lime);font-size:9px;letter-spacing:.08em;font-weight:900;text-transform:uppercase}.poster .poster-title{font-size:clamp(18px,2.1vw,27px);line-height:1.06;letter-spacing:-.06em;font-weight:900;margin:7px 0 11px;overflow-wrap:anywhere}.poster .poster-link{display:flex;border-top:1px solid #ffffff55;padding-top:11px;align-items:center;justify-content:space-between;gap:5px;font-size:10px;font-weight:850}.post-actions{display:flex;align-items:center;justify-content:space-between;padding:9px 7px;gap:2px}.post-actions button{border:0;background:transparent;color:#adc2c7;font-size:10px;font-weight:750;padding:7px 3px}.post-actions button.active{color:var(--lime)}.post-actions button:hover{color:var(--lime)}.hint{color:#80999f;font-size:10px;padding:0 11px 13px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#172530;color:#a9c0c7;border:1px solid #31454d;border-radius:50px;font-size:11px;padding:9px 14px;font-weight:820}.chip.active{background:var(--lime);color:#16251a;border-color:var(--lime)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:19px}.feature-grid,.person-grid,.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.feature{min-height:155px;display:flex;flex-direction:column;gap:12px}.feature-icon{font-size:22px;color:var(--lime)}.feature strong{font-size:15px}.feature p{font-size:11px;color:var(--muted);line-height:1.65;margin:0}.forms{display:grid;grid-template-columns:1fr 1fr;gap:13px}.formbox{background:#122029;border:1px solid var(--line);border-radius:16px;padding:20px}.formbox h3{margin:0 0 6px;font-size:18px;letter-spacing:-.05em}.formbox p{font-size:11px;color:var(--muted);line-height:1.6}.field{display:flex;flex-direction:column;gap:6px;margin:11px 0}.field label{font-size:10px;color:#abc2c5;font-weight:880;text-transform:uppercase;letter-spacing:.07em}.field input,.field textarea,.field select{background:#0b1821;border:1px solid #32444d;color:#e9f4f0;border-radius:10px;padding:12px;outline:none;width:100%;font-size:12px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--lime)}.field textarea{resize:vertical;min-height:96px}.field input::placeholder,.field textarea::placeholder{color:#718991}.field option{background:#14212b}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.form-row.three{grid-template-columns:repeat(3,1fr)}.person,.job{background:#121f28;border:1px solid #2b404a;border-radius:15px;padding:17px;display:flex;flex-direction:column;gap:12px}.person-head{display:flex;align-items:center;gap:11px}.person-head .av{width:46px;height:46px;font-size:16px}.person h3,.job h3{margin:0;font-size:16px;letter-spacing:-.04em}.person .sm,.job .sm{font-size:11px;color:var(--muted);line-height:1.6}.tags{display:flex;flex-wrap:wrap;gap:6px}.tag{background:#1a2d32;border:1px solid #334b47;border-radius:30px;color:#bbd5d1;font-size:10px;font-weight:760;padding:6px 9px}.person .btnrow,.job .btnrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.person .btnrow button,.job .btnrow button{flex:1}.empty{border:1px dashed #40514f;border-radius:15px;padding:26px;text-align:center;background:#14212870;color:#a7babc;font-size:12px;line-height:1.7}.empty b{display:block;color:var(--text);font-size:15px;margin-bottom:6px}.banner{border:1px solid #44614c;background:#183129;border-radius:13px;padding:15px 18px;font-size:11px;line-height:1.6;color:#d1e6d6;margin:15px 0}.banner.warn{border-color:#7b6251;background:#30271f;color:#f3d7bc}.banner.danger{border-color:#824c4c;background:#341e25;color:#eec0c0}.profile-head{display:flex;gap:20px;align-items:center;padding:26px;border:1px solid #314e45;border-radius:19px;background:radial-gradient(ellipse at 50% 50%,#224737 0,transparent 73%),#15272a}.profile-head .av{width:92px;height:92px;font-size:29px}.profile-head h1{margin:0;font-size:clamp(26px,4vw,43px);letter-spacing:-.07em}.profile-head p{margin:8px 0;color:#b4d0c9;font-size:13px}.profile-head .tags{margin-top:11px}.profile-sections{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:15px;margin-top:16px}.profile-sections h3{margin:0 0 10px;font-size:16px}.profile-sections p{font-size:12px;color:#acbfc5;line-height:1.8}.notice{padding:16px;border:1px solid #345349;background:#17302a;border-radius:12px;color:#d0ebdd;font-size:12px;line-height:1.7}.footer{border-top:1px solid #25343c;margin:0 clamp(16px,4.3vw,58px);padding:25px 0 30px;display:flex;justify-content:space-between;gap:15px;color:#71898e;font-size:10px}.footer div{display:flex;gap:12px;flex-wrap:wrap}.text-button{border:0;padding:0;background:none;color:#9dafb1;font-size:10px;text-decoration:underline}#toast{position:fixed;bottom:30px;right:28px;z-index:130;background:#25382f;border:1px solid #617e65;color:#e9ffe8;padding:13px 18px;border-radius:12px;box-shadow:0 22px 60px #0009;font-size:12px;max-width:360px;display:none}#toast.show{display:block}.modal-shade,.age-shade{position:fixed;inset:0;background:#05090bdc;backdrop-filter:blur(8px);z-index:90;display:flex;align-items:center;justify-content:center;padding:15px}.modal{background:#101e27;border:1px solid #455850;border-radius:19px;width:min(640px,100%);max-height:min(90vh,850px);overflow:auto;box-shadow:0 30px 90px #000c}.modal-head{padding:21px 24px 15px;border-bottom:1px solid #2b3c43;display:flex;justify-content:space-between;gap:10px;align-items:start}.modal-head h2{font-size:23px;letter-spacing:-.06em;margin:0}.modal-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.modal-body{padding:22px 24px 25px}.close{border:1px solid #3d5352;background:#1d2c35;color:#fff;border-radius:10px;width:32px;height:32px;font-size:17px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:19px;flex-wrap:wrap}.checkbox{display:flex;gap:9px;align-items:flex-start;font-size:11px;color:#c5d5d0;margin:13px 0;line-height:1.6}.checkbox input{accent-color:var(--lime);margin-top:3px}.age-panel{background:#13232b;border:1px solid #3f5548;border-radius:24px;padding:35px;max-width:455px;width:100%;text-align:center;box-shadow:0 28px 100px #000d}.age-panel .brand-mark{margin:0 auto 21px;width:54px;height:54px;font-size:30px}.age-panel h1{font-size:clamp(25px,5vw,35px);margin:12px 0;letter-spacing:-.055em}.age-panel p{color:#b0c6c1;font-size:13px;line-height:1.7}.age-panel .button{width:100%;margin-top:10px}.bottom-nav{display:none}.range{color:var(--lime);font-weight:900}.divider{height:1px;background:#293d42;margin:20px 0}.print-cv{display:none}@media(max-width:1120px){.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.person-grid,.job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:47px}}@media(max-width:760px){.shell{display:block}.side{display:none}.topbar{height:60px;padding:0 16px}.content{padding:20px 15px 99px}.breadcrumbs{display:none}.topbar:before{content:'musicianCV';font-size:20px;font-weight:950;letter-spacing:-.07em}.hero{display:block;min-height:310px}.hero-inner{padding:29px 23px;z-index:2}.hero h1{font-size:clamp(34px,9vw,51px)}.hero-art{position:absolute;right:-70px;bottom:-95px;width:210px;opacity:.2}.floating{display:none}.record{right:-80px;top:-20px}.stats{grid-template-columns:repeat(3,1fr)}.stat{padding:12px 8px}.stat strong{font-size:17px}.stat span{font-size:9px}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.poster{padding:11px}.poster .poster-glyph{font-size:49px}.poster .poster-title{font-size:20px}.person-grid,.job-grid{grid-template-columns:1fr}.forms,.profile-sections{grid-template-columns:1fr}.form-row.three{grid-template-columns:repeat(2,1fr)}.section-top h2{font-size:23px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#101b23f5;backdrop-filter:blur(20px);border-top:1px solid #314046;padding:8px 3px max(8px,env(safe-area-inset-bottom));justify-content:space-around}.bottom-nav .nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 1px;border-radius:9px;font-size:8px;letter-spacing:0;justify-content:center}.bottom-nav .nav-btn .ico{font-size:20px;width:auto}.bottom-nav .nav-btn.active{background:#263925}.footer{margin:0 15px;padding-bottom:110px;flex-wrap:wrap}.mode-badge{font-size:8px;padding:7px}.profile-head{padding:17px;gap:14px}.profile-head .av{width:65px;height:65px}.profile-head h1{font-size:28px}}@media(max-width:355px){.post-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.top-actions{gap:4px}.small-pill{padding:0 6px}}@media print{.side,.bottom-nav,.topbar,.footer,.modal-actions,.noprint,.button,#toast{display:none!important}.shell{display:block}.content{padding:0!important}.print-cv{display:block!important}.no-print{display:none!important}body{background:white!important;color:black!important}.card,.profile-head{border:0;background:white!important;color:black!important}.profile-sections{display:block}.profile-sections p{color:black!important}}
.av{position:relative}.av img{position:absolute;inset:0;z-index:2}
@media(max-width:760px){.feature-grid{grid-template-columns:1fr}.feature{min-height:115px}}
.poster-cover{position:absolute;inset:25% 0 auto;width:100%;height:43%;object-fit:contain;z-index:1;box-shadow:0 18px 36px #0006;pointer-events:none}.poster .poster-glyph{position:relative;z-index:0}.poster>span:last-child{position:relative;z-index:2}

/* ==========================================================
   MusicianCV · Layout & legibility update — 14 October 2026
   Keep the graphite + lime visual theme. No new functionality.
   ========================================================== */
:root { --muted:#b1c2c7; --text:#f3faf6; }
html { width:100%; -webkit-text-size-adjust:100%; }
body { font-size:15px; font-weight:500; line-height:1.55; letter-spacing:normal; overflow-x:clip; }
button,input,textarea,select { letter-spacing:normal; }
button,a,input,textarea,select { max-width:100%; }
button { touch-action:manipulation; }
:focus-visible { outline:2px solid var(--lime); outline-offset:3px; }
.app-main,.shell,.content,.section,.post,.person,.job,.formbox,.card,.profile-sections>*,.hero-inner { min-width:0; }
.content { overflow-wrap:break-word; }
.section { margin-top:38px; }
.section-top { align-items:flex-end; }
.section-top>div { min-width:0; flex:1 1 auto; }
.section-top h2 { line-height:1.17; letter-spacing:-.04em; }
.section-top p { font-size:14px; font-weight:650; line-height:1.55; max-width:66ch; }
.eyebrow { font-size:11px; font-weight:900; letter-spacing:.11em; line-height:1.4; }
.micro { font-size:10px; font-weight:850; }
.breadcrumbs { font-size:11px; }
.brand small { font-size:9px; line-height:1.4; letter-spacing:.09em; }
.nav-btn { font-size:13px; line-height:1.2; }
.mode-badge { font-size:10px; font-weight:800; }
.small-pill,.small-icon { min-height:40px; font-size:13px; }
.small-icon { width:40px; }
.hero p { font-size:15px; font-weight:650; line-height:1.65; }
.hero h1 { overflow-wrap:normal; }
.button { min-height:44px; font-size:13px; font-weight:850; line-height:1.25; overflow-wrap:anywhere; }
.button.tiny { min-height:39px; padding:9px 12px; font-size:12px; font-weight:850; }
.side-caption { font-size:11px; font-weight:600; }
.stat { display:flex; flex-direction:column; gap:5px; }
.stat strong { font-size:22px; line-height:1.18; overflow-wrap:anywhere; }
.stat span { font-size:12px; font-weight:700; line-height:1.4; }
.post-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.post-user { gap:10px; padding:12px; }
.post-user>div { min-width:0; }
.post-user b { font-size:13px; font-weight:850; line-height:1.35; white-space:normal; overflow-wrap:anywhere; }
.post-user small { display:block; font-size:11px; font-weight:650; line-height:1.35; color:#b1c7c9; overflow-wrap:anywhere; }
.poster { padding:clamp(12px,1.35vw,18px); gap:8px; }
.poster .watermark { font-size:10px; font-weight:850; line-height:1.45; letter-spacing:.08em; overflow-wrap:anywhere; }
.poster .poster-kind { font-size:10px; font-weight:900; line-height:1.25; letter-spacing:.06em; }
.poster .poster-title { font-size:clamp(20px,2vw,27px); line-height:1.13; letter-spacing:-.035em; margin:6px 0 12px; overflow-wrap:anywhere; hyphens:auto; }
.poster .poster-link { flex-wrap:wrap; font-size:11px; font-weight:850; line-height:1.4; gap:5px 9px; }
.poster .poster-link span { min-width:0; overflow-wrap:anywhere; }
.post-actions { padding:10px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
.post-actions button { font-size:11.5px; font-weight:750; padding:8px 2px; line-height:1.35; overflow-wrap:anywhere; }
.hint { font-size:12px; font-weight:600; line-height:1.45; color:#a2b9bf; overflow-wrap:anywhere; }
.chip { font-size:12px; font-weight:800; line-height:1.25; padding:10px 14px; }
.card { padding:20px; }
.feature strong { font-size:16px; line-height:1.25; overflow-wrap:anywhere; }
.feature p { font-size:13.5px; font-weight:650; line-height:1.55; }
.formbox h3 { font-size:20px; line-height:1.25; }
.formbox p,.profile-sections p { font-size:14px; font-weight:600; line-height:1.7; }
.field label { font-size:12px; font-weight:850; line-height:1.5; }
.field input,.field textarea,.field select { font-size:14px; font-weight:600; min-height:45px; }
.field input::placeholder,.field textarea::placeholder { color:#a3b6ba; opacity:1; }
.checkbox { font-size:13px; font-weight:650; }
.person-head>div { min-width:0; }
.person h3,.job h3 { font-size:17px; overflow-wrap:anywhere; }
.person .sm,.job .sm { font-size:13px; font-weight:650; overflow-wrap:anywhere; }
.tag { font-size:11.5px; font-weight:750; }
.empty,.banner,.notice { font-size:13px; font-weight:650; line-height:1.65; overflow-wrap:anywhere; }
.empty b { font-size:16px; }
.profile-head p { font-size:14px; font-weight:650; }
.profile-sections h3 { font-size:17px; }
.footer { font-size:12px; font-weight:600; line-height:1.5; flex-wrap:wrap; }
.text-button { font-size:12px; font-weight:650; line-height:1.45; }
.modal { max-width:calc(100vw - 24px); }
.modal-head h2 { font-size:23px; line-height:1.2; overflow-wrap:anywhere; }
.modal-head p,.modal-body p { font-size:13px; font-weight:600; line-height:1.6; }
.age-panel { max-width:min(455px,100%); }
.age-panel p { font-size:14px; font-weight:650; }
#toast { font-size:13px; font-weight:700; max-width:min(360px,calc(100vw - 24px)); overflow-wrap:anywhere; }

/* Sidebar appears only when the content can comfortably support it. */
@media (min-width:921px) and (max-width:1180px) {
  .post-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .content { padding-left:clamp(20px,3vw,42px); padding-right:clamp(20px,3vw,42px); }
  .footer { margin-left:clamp(20px,3vw,42px); margin-right:clamp(20px,3vw,42px); }
}
@media (max-width:920px) {
  .shell { display:block; }
  .side { display:none; }
  .topbar { height:64px; padding:0 18px; }
  .topbar:before { content:'musicianCV'; font-size:21px; font-weight:950; letter-spacing:-.05em; white-space:nowrap; }
  .breadcrumbs { display:none; }
  .top-actions { min-width:0; gap:7px; }
  .content { max-width:760px; padding:22px 18px calc(126px + env(safe-area-inset-bottom)); }
  .hero { display:block; min-height:0; }
  .hero-inner { padding:33px clamp(22px,5vw,36px) 36px; position:relative; z-index:2; }
  .hero h1 { font-size:clamp(37px,7vw,52px); margin:15px 0; }
  .hero-art { position:absolute; right:-68px; bottom:-98px; width:260px; min-height:280px; opacity:.18; pointer-events:none; }
  .floating { display:none; }
  .record { right:-65px; top:-12px; }
  .hero p { max-width:53ch; }
  .stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .person-grid,.job-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .forms,.profile-sections { grid-template-columns:1fr; }
  .bottom-nav { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; position:fixed; bottom:0; left:0; right:0; z-index:30; gap:3px; padding:8px max(6px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left)); background:#0e1a22fa; backdrop-filter:blur(18px); border-top:1px solid #415049; box-shadow:0 -8px 30px #0008; }
  .bottom-nav .nav-btn { width:100%; min-width:0; min-height:59px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border-radius:10px; font-size:10px; font-weight:800; padding:7px 3px; text-align:center; }
  .bottom-nav .nav-btn .ico { font-size:21px; line-height:1; width:auto; }
  .bottom-nav .nav-label { display:block; width:100%; overflow-wrap:anywhere; line-height:1.18; }
  .footer { max-width:724px; margin:0 auto; padding:22px 18px calc(118px + env(safe-area-inset-bottom)); }
  .profile-head { flex-wrap:wrap; }
  .mode-badge { font-size:10px; }
}
@media (max-width:600px) {
  .topbar { padding:0 14px; }
  .mode-badge { display:none; }
  .small-pill,.small-icon { min-height:39px; }
  .small-icon { width:39px; }
  .content { padding:18px 14px calc(120px + env(safe-area-inset-bottom)); }
  .hero-inner { padding:28px 21px 32px; }
  .hero h1 { font-size:clamp(35px,10vw,46px); }
  .hero p { font-size:14px; line-height:1.6; }
  .hero .actions { align-items:stretch; }
  .hero .actions .button { flex:1 1 175px; }
  .stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .stats .stat:first-child { grid-column:1 / -1; }
  .stat { padding:14px; }
  .stat span { font-size:12px; }
  .section { margin-top:31px; }
  .section-top { flex-direction:column; align-items:stretch; gap:12px; }
  .section-top .button { align-self:flex-start; }
  .section-top h2 { font-size:clamp(24px,6vw,29px); }
  .section-top p { font-size:14px; }
  .post-grid,.person-grid,.job-grid,.feature-grid { grid-template-columns:minmax(0,1fr); gap:13px; }
  .post { max-width:100%; }
  .poster { padding:19px; }
  .poster .watermark { font-size:11px; }
  .poster .poster-kind { font-size:11px; }
  .poster .poster-title { font-size:clamp(25px,7vw,34px); letter-spacing:-.04em; }
  .poster .poster-link { font-size:13px; }
  .poster .poster-glyph { font-size:clamp(65px,18vw,97px); }
  .post-user { padding:12px 14px; }
  .post-user b { font-size:14px; }
  .post-user small { font-size:12px; }
  .post-actions button { font-size:12.5px; }
  .feature { min-height:0; gap:9px; }
  .feature p { font-size:14px; }
  .form-row,.form-row.three { grid-template-columns:minmax(0,1fr); }
  .formbox,.card { padding:17px; }
  .profile-head { padding:18px; gap:13px; }
  .profile-head .av { width:65px; height:65px; }
  .profile-head h1 { font-size:clamp(26px,7vw,33px); }
  .modal { max-height:calc(100dvh - 24px); }
  .modal-shade,.age-shade { padding:12px; }
  .modal-head { padding:18px 18px 14px; }
  .modal-body { padding:18px; }
  .modal-actions { justify-content:stretch; }
  .modal-actions .button { flex:1; }
  .age-panel { padding:24px 18px; border-radius:18px; }
  #toast { bottom:calc(88px + env(safe-area-inset-bottom)); left:12px; right:12px; max-width:none; }
  .footer { padding-left:14px; padding-right:14px; }
}
@media (max-width:355px) {
  .topbar:before { font-size:18px; }
  .top-actions { gap:4px; }
  .small-pill { padding:0 7px; font-size:11px; }
  .small-icon { width:34px; min-height:35px; font-size:12px; }
  .stat strong { font-size:19px; }
  .bottom-nav .nav-btn { font-size:9.5px; padding:7px 1px; }
  .poster { padding:15px; }
  .poster .poster-title { font-size:24px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; }
}
@media print { body { overflow-x:visible; } }

/* Two comfortable cards on small tablets; single card on phones. */
@media (min-width:521px) and (max-width:600px) {
  .post-grid,.person-grid,.job-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .poster { padding:13px; }
  .poster .poster-title { font-size:21px; }
  .poster .poster-link { font-size:11.5px; }
  .post-actions button { font-size:11.5px; }
}
@media (max-width:520px) {
  .profile-sections .post-grid { grid-template-columns:minmax(0,1fr)!important; }
}
.post-actions button:disabled { opacity:.7; }

/* About Founder / Admin: discreet footer link, matches text-buttons */
.footer a.text-button{font-weight:850;color:#b9ced0;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:24px}
.side-founder-link{color:#a8c1b7;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:3px;display:inline-block;margin-top:5px}
.footer div{align-items:center}

/* v1.3 Approved M / musical-note brand mark. Existing site accent colors remain unchanged. */
.brand-mark.brand-mark-image{display:block;flex:0 0 auto;object-fit:contain;box-sizing:border-box;border:0;background:none;border-radius:11px;transform:none;box-shadow:none}
.mobile-brand{display:none;align-items:center;gap:7px;min-width:0;white-space:nowrap;color:#f2f6f2;font-weight:900;letter-spacing:-.055em}
.mobile-brand img{display:block;width:32px;height:32px;flex:0 0 32px}
.mobile-brand b{color:var(--lime);font-weight:950}
@media(max-width:760px){
  .topbar:before{content:none!important;display:none!important}
  .mobile-brand{display:flex;font-size:19px}
  .topbar{gap:7px}
  .top-actions{margin-left:auto}
  .mode-badge{display:none}
}
@media(max-width:370px){
 .mobile-brand{font-size:16px;gap:4px}
 .mobile-brand img{width:27px;height:27px;flex-basis:27px}
 .topbar{padding-left:9px;padding-right:9px}
 .top-actions{gap:3px}
 .small-pill{padding:0 5px}
 .small-icon{width:32px;min-height:34px}
}
