/* V2 — refine previous site's design, preserve accessible native scroll */
body{--accent:#c5d1de;--accent2:#f2f5f9}
body[data-theme="light"]{--accent:#535e71;--accent2:#111927}
.header-inner{height:69px}.identity{font-size:19px;letter-spacing:-.04em}.header-right{gap:14px}
.header-discipline,.eyebrow,.section-kicker,.footnote,.footer{display:none!important}
.theme-pill{width:74px;height:37px;padding:4px;display:flex;gap:5px;justify-content:space-between;position:relative;border-radius:99px;background:var(--panel);border:1px solid var(--border);overflow:hidden}
.theme-sun,.theme-moon{z-index:2;font-size:21px;width:29px;text-align:center;line-height:26px;font-weight:500;transition:color .2s}.theme-sun{color:#d7dde7}.theme-moon{color:#d4dce9}
.theme-indicator{position:absolute;top:3px;left:37px;width:31px;height:29px;border-radius:50%;background:#5b687c;z-index:1;transition:transform .22s,background .22s;box-shadow:inset 0 0 0 1px #ffffff2f}
body[data-theme="light"] .theme-pill{background:#e4e7ed;border-color:#aeb8c7}body[data-theme="light"] .theme-indicator{background:#fff;transform:translateX(-34px);box-shadow:0 1px 7px #1d293c30}body[data-theme="light"] .theme-sun{color:#bd7b17}body[data-theme="light"] .theme-moon{color:#26344d}
.header-cv{font-size:12px}.hero-inner{min-height:390px;grid-template-columns:1fr .82fr}.hero-copy{padding:54px 0}.hero h1{margin-top:0;white-space:normal;line-height:1.03;font-size:clamp(46px,6.5vw,84px)}.hero h1 span{color:var(--text)}.hero-role{color:var(--text);font-weight:580}.hero-intro{max-width:450px}.hero-art{height:365px}.hero-actions{margin-top:20px}
.section{padding-top:35px;padding-bottom:20px}.section-heading{margin-bottom:19px}.section-heading h2{letter-spacing:-.048em;font-size:clamp(25px,3vw,38px)}
.carousel-shell{position:relative}.projects-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;padding-bottom:4px}.projects-grid::-webkit-scrollbar{display:none}.project-card{flex:0 0 min(340px,80vw);min-height:181px;scroll-snap-align:start;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:21px;display:flex;gap:14px;align-items:flex-start;transition:background .2s,border-color .2s}.project-card:hover{background:var(--panel-hover);border-color:var(--accent)}.project-index{font-size:13px;color:var(--muted2);font-weight:750;padding-top:3px;letter-spacing:.08em}.project-body{display:flex;flex-direction:column;height:100%;min-width:0}.project-card h3{font-size:18px;line-height:1.2;margin:8px 0}.project-card .project-body>p:not(.project-category){font-size:12px;line-height:1.48;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-category{font-size:9px;font-weight:750;letter-spacing:.13em;color:var(--muted2)}.project-card .read-link{margin-top:auto;padding-top:14px;font-size:12px;font-weight:800;color:var(--text);background:none;border:none;text-align:left}.read-link span{margin-left:5px}.carousel-nav{display:flex;justify-content:center;align-items:center;gap:15px;padding:12px 0 0}.carousel-nav>button{background:var(--panel);color:var(--text);border:1px solid var(--border);width:32px;height:32px;border-radius:50%}.carousel-dots{display:flex;align-items:center;gap:7px}.carousel-dots button{width:7px;height:7px;border:0;border-radius:30px;background:var(--muted2);padding:0;opacity:.5}.carousel-dots button.active{width:20px;background:var(--accent);opacity:1}
.skills-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.skill-card{padding:14px 8px!important;min-height:71px;border-radius:11px!important;box-shadow:none!important;background:var(--panel)!important;display:flex!important;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border)!important}.skill-card svg{display:none}.skill-symbol{font-size:20px;line-height:1;color:var(--accent)}.skill-card span:last-child{font-size:12px;font-weight:700;line-height:1.2}.timeline{gap:12px}.timeline-card{min-height:auto;grid-template-columns:170px 1fr;gap:18px;padding:17px 23px 16px 28px;border-radius:13px}.timeline-card .time-label{font-size:11px;letter-spacing:0;color:var(--muted)}.timeline-card h3{font-size:19px;margin:0 0 2px}.timeline-card .job-title{font-size:12px;font-weight:700;color:var(--accent);margin-bottom:5px}.timeline-card .experience-description{font-size:13px;line-height:1.47;color:var(--muted)}.story-section p{max-width:830px;font-size:16px;line-height:1.75;color:var(--muted);white-space:pre-line}.story-section[hidden],.testimonials[hidden]{display:none!important}
.cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cert-card{min-height:138px;padding:16px 17px;border:1px solid var(--border);background:var(--panel);border-radius:13px;display:flex;flex-direction:column;justify-content:flex-start;position:relative;box-shadow:none!important}.cert-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted)}.cert-issuer{font-size:11px;letter-spacing:.06em;font-weight:800;text-transform:uppercase}.cert-symbol{font-size:24px;color:var(--accent)}.cert-card h3{font-size:15px;letter-spacing:-.02em;margin-top:14px;line-height:1.35}.cert-card p{font-size:11px;color:var(--muted);margin-top:5px}.cert-card a{font-size:11px;margin-top:8px;color:var(--accent);font-weight:750}.cert-image{max-width:100%;height:120px;object-fit:contain;align-self:center;margin-top:8px}.testimonials blockquote{background:var(--panel);border:1px solid var(--border);padding:20px;border-radius:14px;max-width:680px}.testimonials cite{display:block;font-size:12px;margin-top:10px;color:var(--muted)}
.contact-wrap{margin-top:34px;padding:45px 0 22px}.contact-content{position:relative;z-index:2}.contact-content h2{font-size:clamp(30px,4vw,49px)}.contact-content>p:not(.closing-line):not(.contact-note){margin-top:10px!important}.contact-links{margin-top:22px!important}.closing-line{font-size:11px;color:var(--muted);padding-top:27px;opacity:.85}.contact-wave{opacity:.65}
.dialog-inner{max-width:650px}.dialog-body h2{font-size:30px}
@media(max-width:850px){.header-inner{height:63px}.header-cv{display:none}.container{width:min(100% - 36px,1150px)}.hero-inner{min-height:340px;grid-template-columns:1.1fr .8fr}.hero h1{font-size:52px}.hero-art{height:300px}.orbital-object{transform:scale(.8) rotate(-17deg)}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.timeline-card{grid-template-columns:120px 1fr}.cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.identity{font-size:16px}.header-inner{height:61px}.header-right{gap:9px}.theme-pill{width:63px;height:33px}.theme-indicator{width:26px;height:25px;left:32px}.theme-sun,.theme-moon{font-size:18px;width:25px;line-height:23px}body[data-theme="light"] .theme-indicator{transform:translateX(-29px)}.menu-toggle{display:flex}.hero-inner{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0}.hero-art{height:235px;max-width:100%;margin:-5px 0 -12px}.orbital-scene{inset:0 0 12%;transform:scale(.7)}.art-plinth{bottom:14px}.art-halo{bottom:14px}.hero-copy{padding:7px 0 43px}.hero h1{font-size:clamp(41px,10vw,57px)}.hero-role{font-size:19px;margin-top:7px}.hero-intro{font-size:14px;margin:10px 0 16px}.availability{font-size:11px;padding:7px 11px}.hero-actions .button{font-size:12px}.section{padding-top:30px;padding-bottom:10px}.section-heading{margin-bottom:15px}.section-heading h2{font-size:26px}.projects-grid{gap:12px;scroll-padding-inline:1px}.project-card{flex-basis:84%;min-height:192px;padding:18px}.project-card h3{font-size:18px}.project-card .project-body>p:not(.project-category){font-size:12px}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skill-card{min-height:74px;flex-direction:column!important;gap:5px!important;padding:9px 5px!important}.skill-symbol{font-size:19px}.skill-card span:last-child{font-size:10px}.timeline{padding-left:15px}.timeline-card{grid-template-columns:1fr;gap:4px;padding:14px 15px!important;margin-bottom:7px}.timeline-card h3{font-size:17px}.timeline-card .time-label{font-size:10px;line-height:1.3}.timeline-card .job-title{font-size:11px}.timeline-card .experience-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.45}.timeline-node{left:-18px!important;top:24px!important}.cert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cert-card{padding:12px;min-height:138px}.cert-card h3{font-size:12px}.cert-card p,.cert-issuer{font-size:10px}.cert-symbol{font-size:17px}.contact-wrap{margin-top:20px;padding:39px 0 18px}.contact-content h2{font-size:31px}.contact-links{gap:8px!important;justify-content:center;flex-wrap:wrap}.contact-links .button{font-size:11px;min-height:38px;padding:0 11px}.contact-content>p{font-size:13px}.closing-line{font-size:11px}.hero-wave{opacity:.5}}
@media(prefers-reduced-motion:reduce){.orbital-object{animation:none!important}html{scroll-behavior:auto!important}}
