@font-face{font-family:Lexend;src:url(/fonts/lexend.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--ground:#0c1a1b;--ground-2:#0f2427;--ink:#f2f6f3;--ink-soft:rgba(242,246,243,.64);--ink-faint:rgba(242,246,243,.4);--rule:rgba(210,240,230,.09);--card:#f2f3ef;--card-2:#e9ebe4;--card-ink:#1b231f;--card-label:#77817a;--card-border:rgba(255,255,255,.1);--card-desc:#565f58;--card-line:#dcdfd6;--card-shadow:inset 0 1px 0 rgba(255,255,255,.5), 0 3px 12px rgba(4,12,10,.08);--card-shadow-h:inset 0 1px 0 rgba(255,255,255,.55), 0 8px 22px rgba(4,12,10,.13);--accent:#3fd6b0;--role-ink:#2e9c82;--glass:rgba(16,32,31,.72);--glass-top:rgba(255,255,255,.06);--glass-border:rgba(255,255,255,.12);--glass-hi:rgba(255,255,255,.07);--pill-hover:rgba(255,255,255,.06);--mark-bg:#eef1e7;--mark-ink:#16201b;--cta-bg:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.02) 46%, rgba(255,255,255,0) 66%), rgba(9,22,20,.6);--cta-bg-h:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.03) 46%, rgba(255,255,255,0) 66%), rgba(7,18,17,.66);--cta-sh:0 6px 16px rgba(0,0,0,.36), 0 20px 46px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.15), inset 0 -2px 7px rgba(63,214,176,.1);--cta-sh-h:0 8px 20px rgba(0,0,0,.44), 0 28px 62px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.19), inset 0 -2px 8px rgba(63,214,176,.16);--cta-ink:#fff;--ghost:rgba(255,255,255,.045);--slot1:#26332e;--slot2:#2c3a34;--slot-tag-ink:#9fb0a7;--slot-tag-bg:rgba(12,20,18,.6);--slot-base:#20302b;--pool-1:rgba(63,214,176,.12);--pool-2:rgba(56,189,248,.12);--pool-3:rgba(45,212,191,.08);--vig:linear-gradient(180deg, rgba(6,14,14,.5) 0%, rgba(6,14,14,0) 16%), radial-gradient(120% 100% at 50% 0%, rgba(6,14,14,0) 60%, rgba(6,14,14,.5) 100%);--maxw:1180px;--ease:cubic-bezier(.22,.61,.36,1);--ease-out:cubic-bezier(.16,1,.3,1)}:root[data-theme=light]{--ground:#f3f4ef;--ground-2:#ebece5;--ink:#18201c;--ink-soft:rgba(24,32,28,.66);--ink-faint:rgba(24,32,28,.44);--rule:rgba(20,40,32,.12);--card:#ffffff;--card-2:#f7f8f4;--card-ink:#18201c;--card-label:#8a938b;--card-border:rgba(20,30,26,.11);--card-desc:#5b635c;--card-line:#ecebe4;--card-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 1px 3px rgba(30,45,38,.04);--card-shadow-h:inset 0 1px 0 rgba(255,255,255,.9), 0 6px 18px rgba(30,45,38,.07);--accent:#0e9a86;--role-ink:#0e9a86;--glass:rgba(255,255,255,.74);--glass-top:rgba(255,255,255,.7);--glass-border:rgba(20,30,26,.1);--glass-hi:rgba(255,255,255,.9);--pill-hover:rgba(20,40,32,.05);--mark-bg:#16201b;--mark-ink:#eef1e7;--cta-bg:linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,0) 60%), rgba(22,32,27,.96);--cta-bg-h:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0) 60%), rgba(16,24,20,.98);--cta-sh:0 6px 16px rgba(20,30,24,.18), 0 18px 40px rgba(20,30,24,.16), inset 0 1px 0 rgba(255,255,255,.14);--cta-sh-h:0 8px 20px rgba(20,30,24,.24), 0 26px 56px rgba(20,30,24,.22), inset 0 1px 0 rgba(255,255,255,.18);--cta-ink:#fff;--ghost:rgba(20,45,36,.05);--slot1:#e9eae3;--slot2:#f0f1eb;--slot-tag-ink:#6d766f;--slot-tag-bg:rgba(255,255,255,.72);--slot-base:#eef0ea;--pool-1:rgba(14,154,134,.1);--pool-2:rgba(14,143,184,.09);--pool-3:rgba(20,160,150,.07);--vig:radial-gradient(120% 100% at 50% 0%, rgba(255,255,255,0) 62%, rgba(20,40,32,.05) 100%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--ground);scroll-behavior:smooth;scroll-padding-top:84px}#about,#journey,#work{scroll-margin-top:92px}@media (max-width:899px){#about,#journey,#work{scroll-margin-top:16px}}body{font-family:Lexend,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:300;color:var(--ink);background:var(--ground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background .5s var(--ease),color .5s var(--ease)}.bg-ground{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-3;pointer-events:none;background:radial-gradient(52% 42% at 20% 8%,var(--pool-1) 0%,transparent 68%),radial-gradient(60% 54% at 88% 96%,var(--pool-2) 0%,transparent 70%),radial-gradient(46% 46% at 62% 44%,var(--pool-3) 0%,transparent 72%),linear-gradient(180deg,var(--ground) 0%,var(--ground-2) 60%,var(--ground) 100%)}.bg-vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:var(--vig)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 30px}.dock-wrap{position:fixed;z-index:50;top:22px;left:0;right:0;display:flex;justify-content:center;pointer-events:none}.dock{pointer-events:auto;display:flex;align-items:center;gap:4px;padding:6px;border-radius:4px;border:1px solid var(--glass-border);background:linear-gradient(180deg,var(--glass-top),transparent 46%),var(--glass);box-shadow:0 2px 8px #040c0a0f,inset 0 1px 0 var(--glass-hi);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2)}.dock-mark{height:38px;padding:0 13px;flex:none;border-radius:4px;display:inline-flex;align-items:center;white-space:nowrap;background:var(--mark-bg);color:var(--mark-ink);font-weight:700;font-size:13.5px;letter-spacing:-.01em;text-decoration:none}.dock a.pill,.dock button.pill{display:inline-flex;align-items:center;height:38px;padding:0 15px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink-faint);text-decoration:none;white-space:nowrap;cursor:pointer;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;transition:color .18s var(--ease),background .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease-out)}.dock a.pill:hover,.dock button.pill:hover{color:var(--ink);background:var(--pill-hover);transform:translateY(1px)}.dock a.pill.is-active{color:var(--card-ink);background:var(--card);border-color:var(--card)}.dock a.pill.enter{color:var(--ink);background:#3fd6b024}.dock .toggle{width:38px;padding:0;justify-content:center;font-size:14px;letter-spacing:0}.dock .home{width:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:15px;color:var(--accent);border:1px solid var(--rule);border-radius:10px}.dock a.pill.brand{color:var(--accent);font-weight:600}.dock a.pill.brand:hover{color:var(--accent)}.dock .home:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}@media (max-width:720px){.dock a.pill:not(.enter){display:none}}section{position:relative;z-index:1;padding:44px 0 96px}.eyebrow{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;margin:0 0 18px;font-size:clamp(20px,2.2vw,27px);font-weight:600;letter-spacing:-.01em;text-transform:none;color:var(--ink);line-height:1.1}.eyebrow .num{flex:none;font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--accent);font-variant-numeric:tabular-nums}.eyebrow .rule{display:none}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:92px 0 40px;overflow:hidden}.hero:before{content:none}.ghost{position:absolute;z-index:0;left:-1.5vw;bottom:-3vh;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:min(15vw,210px);line-height:.82;font-weight:500;letter-spacing:-.01em;color:var(--ghost);white-space:nowrap}.hero .inner{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;padding:0 30px;width:100%;pointer-events:none}.hero-copy{pointer-events:auto}.kicker{font-size:12.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin:0 0 24px}.hero h1{font-size:clamp(40px,6.2vw,72px);line-height:1.04;letter-spacing:-.03em;font-weight:500;margin:0 0 16px;max-width:16ch}#hero-name .fold-text,#hero-name .fold-text-visual{white-space:nowrap}.hero .tagline{font-size:clamp(19px,2.6vw,31px);line-height:1.22;letter-spacing:-.02em;font-weight:300;color:var(--ink);margin:0 0 24px;white-space:nowrap}.hero .tagline b{color:var(--accent);font-weight:500}@media (max-width:600px){.hero .tagline{white-space:normal}.hero h1{max-width:100%}}.hero h1 b{font-weight:500}.hero .lede{font-size:clamp(17px,2.1vw,21px);line-height:1.55;font-weight:300;color:var(--ink-soft);max-width:52ch;margin:0 0 40px}.hero .lede b{color:var(--ink);font-weight:400}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}.hero-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}@media (min-width:900px){.hero-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:40px}}.hero-media{position:relative;height:calc(100vh - 200px);min-height:400px;max-height:780px}@media (max-width:899px){.hero-media{height:auto;min-height:52vh}}#arc-root{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.9}#arc-root .predictive-arc,#arc-root .threeui-background{position:absolute;top:0;right:0;bottom:0;left:0}#arc-root canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}#lanyard-root{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:visible}@media (min-width:900px){#lanyard-root{top:0;right:-40px;bottom:0;left:36%}}#lanyard-root canvas{width:100%;height:100%;touch-action:none}.lanyard{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;overflow:visible;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.lanyard:active{cursor:grabbing}.badge-swing{transform-origin:50% 0;will-change:transform;display:flex;flex-direction:column;align-items:center}.strap{position:relative;width:15px;height:26%;min-height:110px;border-radius:4px;overflow:hidden;background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#08201b));box-shadow:inset 0 0 0 1px #00000024}.strap-txt{position:absolute;top:0;right:0;bottom:0;left:0;writing-mode:vertical-rl;text-align:center;font-size:8px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#fff9;white-space:nowrap}.clip{position:relative;width:42px;height:17px;margin-top:-2px;border-radius:4px;background:linear-gradient(180deg,#eef1f3,#b3b9bd 55%,#8b9297);box-shadow:0 3px 6px #00000052,inset 0 1px #ffffffbf}.clip:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:13px;height:5px;border-radius:4px;background:#0a0e0c80}.badge{position:relative;margin-top:-3px;width:min(230px,62%);background:var(--card);border:1px solid var(--card-border);border-radius:4px;padding:12px;box-shadow:0 20px 44px #040c0a6b,var(--card-shadow)}.badge:before{content:"";position:absolute;top:9px;left:50%;transform:translate(-50%);width:46px;height:7px;border-radius:4px;background:#0a0e0c29}.badge-photo{position:relative;margin-top:14px;aspect-ratio:1/1;border-radius:4px;overflow:hidden;background:linear-gradient(160deg,var(--slot1),var(--slot2))}.badge-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.badge-photo .media-ph{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--slot-tag-ink);font-size:11px;letter-spacing:.06em}.badge-info{padding:12px 4px 4px;text-align:center}.badge-name{font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--card-ink)}.badge-role{font-size:12px;font-weight:400;color:var(--card-label);margin-top:3px}.badge-brand{margin-top:10px;display:inline-block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--role-ink);border:1px solid var(--card-line);border-radius:4px;padding:4px 10px}.plainlink{color:var(--ink);text-decoration:none;font-size:15px;font-weight:400;border-bottom:1px solid var(--rule);padding-bottom:2px;transition:color .18s,border-color .18s}.plainlink:hover{color:var(--accent);border-color:var(--accent)}.cta{position:relative;display:inline-flex;align-items:center;gap:11px;height:56px;padding:0 28px;border:0;border-radius:4px;cursor:pointer;text-decoration:none;color:var(--cta-ink);font:inherit;font-weight:500;font-size:16px;letter-spacing:.005em;background:var(--cta-bg);box-shadow:var(--cta-sh);transition:box-shadow .38s var(--ease),background .38s var(--ease),transform .3s var(--ease-out)}.cta:hover{transform:translateY(-1px);background:var(--cta-bg-h);box-shadow:var(--cta-sh-h)}.cta .ar{transition:transform .3s var(--ease-out)}.cta:hover .ar{transform:translate(3px)}.about-grid{display:grid;grid-template-columns:1fr;gap:44px}@media (min-width:860px){.about-grid{grid-template-columns:1fr 2fr;gap:64px}}@media (min-width:900px){.about-grid .side{order:-1}}.sec-lead{font-size:clamp(16px,1.7vw,20px);line-height:1.5;letter-spacing:-.005em;font-weight:400;color:var(--ink-soft);margin:0 0 30px;max-width:48ch}.about p:not(.eyebrow){font-size:17px;line-height:1.65;font-weight:300;color:var(--ink-soft);margin:0 0 20px;max-width:54ch}.about p b{color:var(--ink);font-weight:400}.achv{margin:6px 0 30px}.achv .lab{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 6px}.achv ul{list-style:none;display:grid;grid-template-columns:1fr;gap:12px}@media (min-width:640px){.achv ul{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.achv ul{grid-template-columns:repeat(4,1fr)}}.achv li{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 20px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:4px;box-shadow:0 1px 2px #0000000f,0 10px 26px #0000001f;transition:box-shadow .3s var(--ease),transform .25s var(--ease-out)}.achv li:hover{box-shadow:var(--card-shadow-h);transform:translateY(-2px)}.achv li:hover .bj-title{color:#0a6b47}.achv .bj-logo{flex:none;width:152px;height:152px;object-fit:contain;border-radius:16px;margin-bottom:16px}.achv .bj-title{transition:color .18s var(--ease)}.achv .bj-body{min-width:0;flex:1}.achv .bj-role{margin-top:10px;text-align:center;font-size:12px;font-weight:600;letter-spacing:.03em;color:#0e9f6e}.trustbar{display:flex;flex-wrap:wrap;align-items:center;gap:32px;margin-top:34px}.trustbar img{height:96px;width:auto;object-fit:contain;border-radius:12px;transition:transform .25s var(--ease-out)}.trustbar img:hover{transform:translateY(-3px)}.trustbar img:hover{filter:grayscale(0);opacity:1}.achv .bj-title{font-size:16px;font-weight:600;line-height:1.3;color:#161616}.achv .bj-meta{margin-top:3px;font-size:14px;font-weight:300;line-height:1.4;color:#6f6f6f}@media (max-width:639px){.achv ul{gap:8px}.achv li{display:grid;grid-template-columns:52px 1fr;column-gap:14px;row-gap:1px;align-items:center;text-align:left;padding:12px 14px}.achv .bj-logo{grid-row:1 / span 2;width:52px;height:52px;border-radius:10px;margin-bottom:0}.achv .bj-body{grid-column:2}.achv .bj-title{font-size:15px}.achv .bj-meta{margin-top:1px;font-size:12.5px}.achv .bj-role{grid-column:2;margin-top:0;text-align:left;font-size:11.5px}.achv li:hover{transform:none}}.side .block{margin-bottom:32px}.side .lab{font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 14px}.xp{list-style:none;position:relative}.xp li{position:relative;padding:15px 0 15px 24px;border-top:1px solid var(--rule);transition:transform .25s var(--ease-out)}.xp li:first-child{border-top:0}.xp li:before{content:"";position:absolute;left:1px;top:20px;width:9px;height:9px;border-radius:50%;background:var(--accent);z-index:1}.xp li:after{content:"";position:absolute;left:1px;top:20px;width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent);animation:xpBreath 3.4s ease-in-out infinite}.xp li:nth-child(1):after{animation-duration:3.1s;animation-delay:-.4s}.xp li:nth-child(2):after{animation-duration:4.3s;animation-delay:-1.9s}.xp li:nth-child(3):after{animation-duration:2.7s;animation-delay:-.9s}.xp li:nth-child(4):after{animation-duration:3.8s;animation-delay:-2.6s}.xp li:nth-child(5):after{animation-duration:3.4s;animation-delay:-1.2s}@keyframes xpBreath{0%,to{opacity:.95}50%{opacity:.22}}@media (prefers-reduced-motion:reduce){.xp li:after{animation:none}}.xp li:after{content:"";position:absolute;left:5px;top:30px;bottom:-15px;width:1px;background:var(--rule)}.xp li:last-child:after{display:none}.xp li:hover{transform:translate(3px)}.xp-role{font-size:15px;font-weight:500;color:var(--ink);line-height:1.3}.xp-co{font-size:13px;font-weight:300;color:var(--ink-soft);margin-top:1px}.xp-yr{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--accent);font-variant-numeric:tabular-nums;margin-top:5px}.xp-co a{color:var(--ink-soft);text-decoration:none;display:inline-flex;align-items:center;gap:5px;border-bottom:1px solid transparent;transition:color .18s,border-color .18s}.xp-co a:hover{color:var(--accent);border-color:var(--accent)}.xp-co a .ar{color:var(--ink-faint);font-size:.85em}.skillwrap{display:grid;grid-template-columns:1fr;gap:26px;align-items:start}.skillwrap{display:block}.skill-preview{position:relative;aspect-ratio:1/1;border-radius:4px;overflow:hidden;border:1px solid var(--card-border);background:linear-gradient(160deg,var(--slot1),var(--slot2))}.skill-preview .sp{position:absolute;top:0;right:0;bottom:0;left:0;padding:30px;opacity:0;transform:scale(1.02);transition:opacity .45s var(--ease),transform .6s var(--ease-out);display:grid;place-items:center}.skill-preview .sp.is-on{opacity:1;transform:none}.skill-preview .sp img{width:100%;height:100%;object-fit:contain;display:block}.skill-preview .sp span{font-size:12px;letter-spacing:.06em;color:var(--slot-tag-ink)}.skblock{margin:16px 0 30px;border:1px solid var(--card-border);border-radius:10px;background:color-mix(in srgb,var(--ink) 4%,transparent);overflow:hidden}.skblock>.lab{display:block;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 16px}.tabs{display:flex;flex-wrap:wrap;gap:0;margin:0;border-bottom:1px solid var(--card-border)}.tab-cap{font-size:14.5px;font-weight:300;line-height:1.5;color:var(--ink-soft);margin:0 0 20px;max-width:52ch}.tab{font-family:inherit;cursor:pointer;font-size:clamp(13px,1.5vw,16px);font-weight:600;letter-spacing:.01em;text-transform:none;color:#868b93;background:transparent;border:none;padding:14px 10px;position:relative;flex:1 1 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;line-height:1.2;transition:color .18s var(--ease),background .18s var(--ease)}.tab svg{width:18px;height:18px;flex:none}.tab{flex-direction:column;gap:7px}.tab img{width:72px;height:72px;padding:8px;flex:none;object-fit:contain;filter:saturate(.92);transition:transform .18s var(--ease-out)}.tab:hover img,.tab.is-on img{transform:scale(1.12)}.tab:hover{color:var(--ink)}.tab.is-on{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.tab.is-on:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.tabpanel{display:none}.tabpanel.is-on{display:block;padding:22px 22px 24px}.skgroup{display:flex;align-items:flex-start;gap:14px}.skgroup+.skgroup{margin-top:16px;padding-top:16px;border-top:1px solid var(--rule)}.sklab{flex:none;width:50px;padding-top:11px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.skgroup--tools .chips span{color:var(--ink-soft)}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips span{font-size:15px;font-weight:400;color:var(--ink);background:color-mix(in srgb,var(--ink) 7%,transparent);border:1px solid transparent;border-radius:4px;padding:9px 16px;transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease),transform .18s var(--ease-out)}.chips span:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)}.chips span:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.skgroup--tools .chips span{background:color-mix(in srgb,var(--ink) 7%,transparent);border-color:transparent;font-weight:400}.skgroup--tools .chips span:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.links{display:flex;flex-direction:column;gap:10px}.links a{color:var(--ink);text-decoration:none;font-size:15px;font-weight:300;display:inline-flex;align-items:center;gap:8px;width:fit-content;border-bottom:1px solid transparent;transition:color .18s,border-color .18s}.links a:hover{color:var(--accent);border-color:var(--accent)}.links a .ar{color:var(--ink-faint)}.work{display:grid;grid-template-columns:1fr;gap:16px}.proj{position:relative;background:var(--card);border:1px solid var(--card-border);border-radius:4px;padding:12px;display:flex;flex-direction:column;box-shadow:var(--card-shadow);transition:box-shadow .6s var(--ease),transform .6s var(--ease-out)}.proj:hover{box-shadow:var(--card-shadow-h);transform:translateY(-3px)}@media (min-width:760px){.work{grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;align-items:stretch}.proj{height:100%}}.proj-shot{position:relative;border-radius:4px;overflow:hidden;background:var(--slot-base);aspect-ratio:16/9}.slot{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:repeating-linear-gradient(45deg,var(--slot1) 0 13px,var(--slot2) 13px 26px)}.slot .tag{font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--slot-tag-ink);background:var(--slot-tag-bg);border:1px solid var(--rule);padding:6px 13px;border-radius:4px}.slot img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.proj-shot .shot-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;padding:14px}.proj-shot .shot-cover{object-fit:cover;padding:0}.proj-meta{padding:16px 10px 6px;display:flex;flex-direction:column}.proj-idx{font-size:11.5px;font-weight:600;letter-spacing:.12em;color:var(--card-label);font-variant-numeric:tabular-nums;margin:0 0 14px}.proj h3{font-size:clamp(23px,2.7vw,32px);line-height:1.08;letter-spacing:-.02em;font-weight:400;color:var(--card-ink);margin:0 0 8px}.proj .role{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--role-ink);margin:0 0 16px}.proj .desc{font-size:15.5px;line-height:1.55;color:var(--card-desc);margin:0 0 auto;max-width:42ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.proj .outcome{display:flex;align-items:baseline;gap:10px;border-top:1px solid var(--card-line);padding-top:15px;margin-top:20px}.proj .outcome .lab{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--card-label);flex:none}.proj .outcome .val{font-size:14.5px;color:var(--card-ink);font-weight:400}.proj .outcome a.val{text-decoration:none;border-bottom:1px solid var(--card-line);transition:color .18s,border-color .18s}.proj .outcome a.val:hover{color:var(--role-ink);border-color:var(--role-ink)}.clients-lead{font-size:clamp(22px,3.2vw,34px);line-height:1.28;letter-spacing:-.015em;font-weight:300;color:var(--ink);max-width:28ch;margin:0 0 40px}.clients-lead em{font-style:normal;color:var(--accent)}.roster{display:flex;flex-wrap:wrap;gap:12px}.roster--compact{gap:10px}.roster--compact .c{font-size:6.5px;padding:1px 4px;font-weight:400}.marquee{position:relative;overflow:hidden;width:100%;margin-top:6px;padding:14px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.marquee-track{display:flex;gap:16px;width:max-content;animation:marq 55s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marq{0%{transform:translate(0)}to{transform:translate(-50%)}}.cl-card{flex:none;width:288px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:4px;padding:20px;box-shadow:0 1px 2px #0000000f,0 10px 26px #0000001f;text-decoration:none;display:block;transition:border-color .2s var(--ease),transform .2s var(--ease-out),box-shadow .2s var(--ease)}.cl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:22px}@media (min-width:640px){.cl-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:980px){.cl-grid{grid-template-columns:repeat(4,1fr)}}.cl-grid .cl-card{width:auto}.cl-grid .cl-card.cl-wide{grid-column:1 / -1}@media (min-width:640px){.cl-card.cl-wide .cl-cover{aspect-ratio:21/9}}.cl-grid .cl-card.cl-half{grid-column:1 / -1}@media (min-width:980px){.cl-grid .cl-card.cl-half{grid-column:span 2}}@media (max-width:639px){.cl-grid .cl-card.cl-m-full{grid-column:1 / -1}}.cl-card.has-cover{grid-column:span 2;padding:0;overflow:hidden;border:none}.cl-cover{aspect-ratio:16/9;background:#0a0a0a;overflow:hidden}.cl-cover img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .4s var(--ease-out)}a.cl-card.has-cover:hover .cl-cover img{transform:scale(1.03)}.cl-card.has-cover .cl-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:16px 20px 0}.cl-card.has-cover .cl-head .cl-name{margin:0}.cl-yr{flex:none;font-size:12px;font-weight:600;color:#9aa0a8;font-variant-numeric:tabular-nums;letter-spacing:.02em}.cl-card.has-cover .cl-desc{margin:8px 20px 20px}.ag-wrap{margin:22px 0 10px}.accordion-gallery{display:flex;gap:10px;height:clamp(320px,42vw,500px)}.ag-item{position:relative;flex:1 1 0;min-width:0;display:block;border-radius:6px;overflow:hidden;background:#0a0a0a;text-decoration:none;cursor:pointer;transition:flex-grow .55s var(--ease-out)}.ag-item img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.ag-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.74) 100%);pointer-events:none}.ag-item.is-active{flex-grow:5}.accordion-gallery:hover .ag-item{flex-grow:1}.accordion-gallery .ag-item:hover{flex-grow:5}.ag-cap{position:absolute;left:0;bottom:0;z-index:2;padding:18px 20px;display:flex;flex-direction:column;gap:3px}.ag-title{color:#fff;font-size:clamp(16px,1.7vw,23px);font-weight:600;letter-spacing:-.01em;white-space:nowrap}.ag-sub{color:#ffffffb8;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}@media (max-width:700px){.accordion-gallery{flex-direction:column;height:auto;gap:12px}.ag-item{flex:none;aspect-ratio:16/9}}a.cl-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:var(--card-shadow-h)}.cl-name{font-size:18px;font-weight:600;letter-spacing:-.01em;color:#161616;margin-bottom:10px}.cl-desc b{color:#0a6b47;font-weight:600;background:color-mix(in srgb,#10b981 16%,transparent);border-radius:3px;padding:.02em .28em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.cl-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.cl-tags span{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);border:none;border-radius:4px;padding:4px 9px}.cl-desc{font-size:13.5px;line-height:1.5;color:#5f5f5f}.logo-marquee{margin-top:32px}.logo-marquee .marquee-track{gap:48px;align-items:center;animation-duration:38s}.logo-marquee img{height:120px;width:auto;object-fit:contain;border-radius:12px}.clients-sub{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:44px 0 22px}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}.roster--compact .c.key{box-shadow:none;background:color-mix(in srgb,var(--ink) 7%,transparent);border-color:transparent;color:var(--ink);font-weight:400}.roster .c{font-size:16px;font-weight:300;color:var(--ink-soft);padding:9px 18px;border:1px solid var(--rule);border-radius:4px;transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease),transform .18s var(--ease-out)}.roster .c:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.roster--compact .c.key:hover{color:var(--accent)}.roster .c.key{color:var(--ink);font-weight:400;background:color-mix(in srgb,var(--ink) 7%,transparent);border-color:transparent}footer{position:relative;z-index:1;background:#0a0f0e;color:#fff9;padding:64px 0 40px;margin-top:80px}.footer-loop{position:relative;z-index:2;overflow:hidden;height:clamp(120px,15vw,180px);display:flex;align-items:center;margin-bottom:36px}@media (max-width:600px){.footer-loop{height:clamp(96px,24vw,140px)}}.foot-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:28px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.09)}.foot-name{font-size:clamp(26px,3.4vw,40px);font-weight:600;letter-spacing:-.02em;color:#fff}.foot-tag{margin-top:8px;font-size:14px;color:#ffffff80}.foot-links{display:flex;flex-wrap:wrap;gap:12px 26px}.foot-links a{color:#ffffffb8;text-decoration:none;font-size:14.5px;transition:color .18s var(--ease)}.foot-links a:hover{color:var(--accent)}.foot-brand{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.foot-brand a.cta{height:48px;padding:0 22px;font-size:15px}.foot-brand a.cta,.foot-brand .back-top{display:none}.back-top{font-size:14.5px}.foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:26px;font-size:12.5px;color:#fff6}mark.todo{background:#3fd6b029;color:var(--accent);padding:0 5px;border-radius:4px;font-size:.85em;font-weight:500}.reveal{opacity:0;transform:translateY(18px);transition:opacity 1s var(--ease),transform 1.15s var(--ease-out)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none!important}}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#050505;transition:transform .8s cubic-bezier(.76,0,.24,1)}.loader.done{transform:translateY(-100%);pointer-events:none}.loader-name{position:absolute;top:10%;left:50%;transform:translate(-50%);font-size:clamp(16px,1.8vw,21px);font-weight:600;letter-spacing:.04em;color:#fff;white-space:nowrap}.loader-name b{color:var(--accent);font-weight:600}.loader-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(80vw,520px)}.loader-meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.loader-label{font-size:clamp(11px,2.9vw,17px);font-weight:400;letter-spacing:-.02em;color:#ffffff9e}.loader-count{font-size:22px;font-weight:600;color:#fff;font-variant-numeric:tabular-nums}.loader-track{display:flex;gap:4px;height:22px}.loader-track i{flex:1 1 0;border-radius:4px;background:#232323}.loader-track i.on{background:var(--accent)}@media (prefers-reduced-motion:reduce){.loader{transition:opacity .3s}.loader.done{transform:none;opacity:0;visibility:hidden}}.burger{display:none}.mobile-nav{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990;background:#0a0f0e;display:flex;align-items:center;justify-content:center;transform:translate(100%);transition:transform .42s cubic-bezier(.4,0,.1,1);visibility:hidden}.mobile-nav.open{transform:none;visibility:visible}.mobile-nav nav{display:flex;flex-direction:column;gap:4px;text-align:center}.mobile-nav a{font-size:clamp(30px,8.5vw,42px);font-weight:600;letter-spacing:-.02em;color:var(--ink);text-decoration:none;padding:12px;transition:color .18s var(--ease)}.mobile-nav a:active,.mobile-nav a:hover{color:var(--accent)}.mobile-nav .mn-cta{margin-top:22px;font-size:16px;font-weight:500;color:var(--accent)}.mobile-nav .mn-top{margin-top:6px;font-size:16px;font-weight:500;color:#ffffffa6}@media (max-width:899px){.dock-wrap{display:none}.burger{display:flex;flex-direction:column;justify-content:center;gap:6px;position:fixed;top:18px;right:18px;z-index:1000;width:48px;height:48px;padding:0 12px;border:1px solid var(--card-border);border-radius:12px;background:color-mix(in srgb,#0a0f0e 60%,transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);cursor:pointer}.burger span{display:block;height:2px;width:100%;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}.burger.open span:nth-child(1){transform:translateY(4px) rotate(45deg)}.burger.open span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}.hero{min-height:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;margin-bottom:72px;overflow:hidden}.hero-actions .cta{height:50px;padding:0 22px;font-size:15px}#lanyard-root{position:relative;inset:auto;order:1;width:100%;height:440px;margin-top:-40px;z-index:1;overflow:hidden;-webkit-mask:linear-gradient(180deg,#000 84%,transparent 100%);mask:linear-gradient(180deg,#000 84%,transparent 100%)}.cl-card:not(.has-cover){grid-column:1 / -1}section{padding:18px 0 116px}.inner{order:2;position:relative;z-index:2;padding-top:210px;padding-bottom:20px;background:linear-gradient(180deg,transparent 0,var(--ground) 90px)}.hero-media{display:none}.hero-copy{margin-top:60px}.ghost{display:none}.about-grid{display:flex;flex-direction:column}.chips{gap:8px}.chips span{font-size:11.5px;padding:5px 10px}.tab-cap{font-size:12px}.foot-top{flex-direction:column}.foot-brand{order:2}.tab{gap:5px;font-size:12px;padding:12px 6px}.tab svg{width:20px;height:20px}.tab img{width:84px;height:84px;padding:12px}.sklab{width:44px;font-size:9px}}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 0 64px;padding:36px 0;border-block:1px solid var(--rule)}.stat-number{display:block;font-size:clamp(56px,8vw,104px);line-height:1.1;letter-spacing:-.06em;color:var(--accent);font-weight:500}.stat-label{display:block;margin-top:12px;color:var(--ink-soft);font-size:14px}.public-design .about-grid{grid-template-columns:1fr}.public-design .sec-lead{max-width:65ch}.fitness .hero{min-height:65vh}.fitness .inner{padding-top:180px}.fitness .hero-copy{margin-top:0}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.practice-card{padding:32px;border:1px solid var(--card-border);border-radius:16px;background:var(--glass)}.practice-card h3{font-size:32px;font-weight:400;margin:0 0 16px}.practice-card p{color:var(--ink-soft);line-height:1.7}@media (max-width:600px){.stats{gap:24px;grid-template-columns:1fr}.stat-number{font-size:72px}.practice-grid{grid-template-columns:1fr}.fitness .inner{padding-top:130px}}@media print{.dock-wrap,.burger,.mobile-nav,#arc-root,#footer-loop,.hero-actions{display:none!important}.fitness .hero{min-height:0}.fitness .inner{padding:30px}.reveal{opacity:1;transform:none}section{padding:24px 0}footer{margin-top:0}}:root.fitness[data-theme=light]{color-scheme:light;--ground:#faf8f3;--ground-2:#efeee6;--ink:#283d33;--ink-soft:#53645a;--ink-faint:#627167;--accent:#416b55;--role-ink:#416b55;--rule:rgba(54,79,62,.16);--card-border:rgba(54,79,62,.15);--glass:rgba(255,254,250,.85);--glass-border:rgba(54,79,62,.14);--cta-bg:#416b55;--cta-bg-h:#335442;--cta-ink:#fff;--cta-sh:0 4px 12px rgba(54,79,62,.1);--cta-sh-h:0 6px 18px rgba(54,79,62,.16);--pool-1:rgba(174,193,161,.14);--pool-2:rgba(222,203,171,.14);--pool-3:rgba(174,193,161,.08);--vig:none}.fitness .fitness-hero-wash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 80% 35%,rgba(174,193,161,.35),transparent 60%),radial-gradient(ellipse at 10% 15%,rgba(230,214,183,.3),transparent 55%)}.fitness .loader,.fitness .mobile-nav{background:var(--ground)}.fitness .loader-label,.fitness .foot-links a,.fitness .foot-base,.fitness .mobile-nav .mn-top{color:var(--ink-soft)}.fitness .loader-count{color:var(--ink)}.fitness .loader-track i{background:#e3e7dc}.fitness .loader-track i.on{background:var(--accent)}.fitness .burger{background:var(--glass)}.fitness footer{background:var(--ground-2);color:var(--ink-soft);border-top:1px solid var(--rule)}.fitness .foot-top{border-bottom-color:var(--rule)}.fitness .foot-links a:hover{color:var(--accent)}.fitness .practice-card{background:var(--glass);box-shadow:0 4px 20px #364f3e0a}.fitness .education-heading{font-size:clamp(30px,4.5vw,52px);line-height:1.18;letter-spacing:-.035em;font-weight:400;margin:0 0 24px}.fitness .education-intro{max-width:66ch;margin-bottom:48px}.education-entry{display:grid;grid-template-columns:190px minmax(0,1fr);gap:48px;padding:40px 0;border-top:1px solid var(--rule)}.education-year time{display:block;font-size:48px;font-weight:400;letter-spacing:-.04em;color:var(--accent)}.education-year span{display:block;margin-top:10px;font-size:13px;color:var(--ink-soft)}.education-school{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:12px;font-weight:500}.education-detail h3{font-size:clamp(24px,3vw,32px);font-weight:400;line-height:1.3;margin-bottom:20px}.education-detail>p:not(.education-school){max-width:66ch;color:var(--ink-soft);line-height:1.8;margin-bottom:16px;font-size:16px}.education-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;padding:26px;border-radius:16px;background:var(--glass);border:1px solid var(--card-border)}.education-facts dt{font-size:12px;color:var(--ink-soft);margin-bottom:8px}.education-facts dd{font-size:15px;line-height:1.5;color:var(--ink)}@media (max-width:600px){.education-entry{grid-template-columns:1fr;gap:24px;padding:32px 0}.education-year time{font-size:38px}.education-facts{grid-template-columns:1fr;padding:22px;gap:20px}}.education-curriculum{margin-top:28px}.education-curriculum h4{font-size:14px;font-weight:500;color:var(--accent);margin-bottom:16px}.education-curriculum ul{list-style:none;display:grid;gap:18px}.education-curriculum li{padding-left:18px;border-left:2px solid var(--rule)}.education-curriculum strong{display:block;font-size:15px;font-weight:500;color:var(--ink);line-height:1.5;margin-bottom:5px}.education-curriculum span{display:block;color:var(--ink-soft);font-size:15px;line-height:1.7;max-width:65ch}.public-design #about{padding-bottom:64px}.public-design .discipline-jumps{display:flex;flex-wrap:wrap;gap:12px}.public-design .discipline-jumps a{color:var(--ink);text-decoration:none;border:1px solid var(--card-border);border-radius:999px;padding:12px 20px;font-size:14px}.public-design .discipline-jumps a:hover{color:var(--accent);border-color:var(--accent)}.public-design .discipline{scroll-margin-top:92px;padding:64px 0 80px}.public-design .discipline .wrap{border-top:1px solid var(--rule);padding-top:48px}.public-design .discipline-heading{display:flex;align-items:center;gap:24px;margin-bottom:24px}.public-design .discipline-heading img{width:88px;height:88px;object-fit:contain;border-radius:20px;background:#fff;padding:10px}.public-design .discipline-number{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.public-design .discipline-heading h2{font-size:clamp(30px,4vw,48px);font-weight:400;letter-spacing:-.03em;line-height:1.12}.public-design .discipline-description{font-size:clamp(16px,1.8vw,20px);line-height:1.65;max-width:62ch;color:var(--ink-soft);margin-bottom:28px}.public-design .discipline-skills{padding:24px;background:color-mix(in srgb,var(--ink) 3%,transparent);border:1px solid var(--card-border);border-radius:14px}.public-design .discipline-skills .chips span{font-size:12px;padding:7px 11px}.public-design .discipline-work-label{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:36px 0 20px}.public-design .public-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.public-design .public-project{min-width:0;overflow:hidden;display:block;text-decoration:none;border-radius:12px;background:var(--glass);border:1px solid var(--card-border);padding:24px}.public-design .public-project:has(.cl-cover){padding:0 0 24px}.public-design .public-project .cl-cover{aspect-ratio:16/10;background:#101817}.public-design .public-project .cl-cover img{object-fit:contain}.public-design .public-project .cl-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:22px 24px 12px}.public-design .public-project .cl-name{font-size:20px;color:var(--ink);margin-bottom:12px;font-weight:500}.public-design .public-project .cl-head .cl-name{margin:0}.public-design .public-project .cl-desc{color:var(--ink-soft);font-size:14px;line-height:1.7}.public-design .public-project:has(.cl-cover) .cl-desc{margin:0 24px}.public-design .public-project .cl-desc b{color:var(--ink);background:none;padding:0;font-weight:400}.public-design a.public-project:hover{border-color:var(--accent)}.public-design .public-projects:has(>.public-project:last-child:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:700px){.public-design .public-projects,.public-design .public-projects:has(>.public-project:last-child:nth-child(2)){grid-template-columns:1fr}.public-design .discipline{padding:32px 0 48px}.public-design .discipline-heading{gap:16px}.public-design .discipline-heading img{width:64px;height:64px}.public-design .discipline-skills{padding:18px}.public-design .discipline-skills .skgroup{flex-direction:column;gap:10px}}.fitness .journey-heading{font-size:clamp(32px,4.5vw,52px);line-height:1.18;letter-spacing:-.035em;font-weight:400;margin:0 0 24px}.fitness .movement-journey>.wrap>.sec-lead{max-width:60ch;margin-bottom:48px}.movement-timeline{list-style:none;margin:0;padding:0}.movement-milestone{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);gap:44px;padding:0 0 32px 32px}.movement-milestone:before{content:"";position:absolute;top:12px;bottom:-12px;left:5px;width:1px;background:var(--rule)}.movement-milestone:last-child:before{display:none}.movement-milestone:after{content:"";position:absolute;left:0;top:10px;width:11px;height:11px;border-radius:50%;background:var(--accent)}.movement-milestone.is-planned:after{background:var(--ground);border:2px solid var(--accent)}.milestone-date time{display:block;font-size:36px;font-weight:400;line-height:1;letter-spacing:-.04em;color:var(--accent)}.milestone-date span{display:block;font-size:12px;color:var(--ink-soft);margin-top:12px;line-height:1.5}.milestone-card{padding:28px 32px;background:var(--glass);border:1px solid var(--card-border);border-radius:16px}.is-planned .milestone-card{border-style:dashed}.milestone-label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);line-height:1.6;margin-bottom:10px}.milestone-card h3{font-size:clamp(22px,2.7vw,29px);line-height:1.25;font-weight:400;margin:0 0 18px;letter-spacing:-.02em}.journey-points{padding-left:18px;display:grid;gap:8px;color:var(--ink-soft);font-size:15px;line-height:1.6}.journey-points li::marker{color:var(--accent)}.journey-note{font-size:12px;line-height:1.6;color:var(--ink-soft);margin-top:18px;max-width:55ch}@media (max-width:600px){.movement-milestone{grid-template-columns:1fr;gap:16px;padding-left:26px;padding-bottom:28px}.milestone-date{display:flex;align-items:baseline;gap:14px}.milestone-date time{font-size:30px}.milestone-date span{margin:0}.milestone-card{padding:22px}.journey-points{font-size:14px}}.fitness .is-planned{--planned-ink:#875514;--planned-border:#d5b47d}.fitness .is-planned .milestone-date time,.fitness .is-planned .milestone-label{color:var(--planned-ink)}.fitness .movement-milestone.is-planned:after{border-color:var(--planned-ink);background:#fff7e8}.fitness .is-planned .milestone-card{background:#fff7e8;border-color:var(--planned-border)}.fitness .planned-badge{display:inline-block;margin-right:8px;padding:4px 10px;border-radius:999px;border:1px solid var(--planned-border);background:#f5e2bd;color:#70430c;font-size:10px;font-weight:600;letter-spacing:.1em;vertical-align:middle}.fitness .is-planned .journey-points li::marker{color:var(--planned-ink)}.fitness .school-heading{display:flex;align-items:center;gap:20px;margin-bottom:20px}.fitness .school-heading>img{flex:none;width:76px;height:76px;object-fit:contain;background:#fff;border-radius:12px;padding:6px}.fitness .school-heading>div{min-width:0}.fitness .school-heading h3{font-weight:500;margin:0 0 6px;font-size:clamp(22px,2.8vw,30px)}.fitness .school-heading a{color:var(--ink);text-decoration:none}.fitness .school-heading a:hover{color:var(--accent)}.fitness .school-branch{font-size:13px;line-height:1.5;color:var(--ink-soft)}.fitness .school-training{font-size:14px;line-height:1.6;font-weight:500;color:var(--accent);margin-bottom:18px}@media (max-width:600px){.fitness .school-heading{gap:14px}.fitness .school-heading>img{width:60px;height:60px}.fitness .school-heading h3{font-size:21px}}
