:root{
  --ink:#0d1b32;
  --paper:#f2efe8;
  --paper-2:#e7e1d6;
  --muted:#73716b;
  --line:rgba(13,27,50,.16);
  --gold:#e0b04c;
  --navy:#1a3a6b;
  --white:#fbfaf6;
  font-family:'Manrope',system-ui,sans-serif;
  color:var(--ink);
  background:var(--paper);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;background:var(--paper);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
::selection{background:var(--ink);color:var(--gold)}
.section-shell{width:min(1360px,calc(100% - 72px));margin-inline:auto}
.section-pad{padding:150px 0}
.scroll-progress{position:fixed;inset:0 auto auto 0;z-index:200;width:100%;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left}

/* NAV */
.site-nav{position:fixed;z-index:100;top:0;left:0;width:100%;height:78px;padding:0 max(36px,calc((100vw - 1360px)/2));display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(13,27,50,.78);backdrop-filter:blur(18px);color:var(--white)}
.brand{font-size:13px;font-weight:800;letter-spacing:.08em}.brand span{color:var(--gold);padding:0 5px}
.desktop-nav{display:flex;gap:34px;font-size:12px;color:#c8c8c2}.desktop-nav a{transition:color .2s}.desktop-nav a:hover{color:var(--white)}
.nav-contact{justify-self:end;font-size:12px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px}.nav-contact span{color:var(--gold)}
.menu-button{display:none;justify-self:end;background:none;border:0;width:46px;height:46px;position:relative}.menu-button span{position:absolute;width:23px;height:1px;background:currentColor;left:12px}.menu-button span:first-child{top:18px}.menu-button span:last-child{top:27px}

/* HERO */
.hero{background:var(--ink);color:var(--white);padding-top:78px;overflow:hidden}
.hero-grid{min-height:calc(100svh - 78px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.72fr);gap:80px;align-items:center;padding-top:68px;padding-bottom:78px}
.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 28px;font:11px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;color:#a9aaa4}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(224,176,76,.08)}
h1{margin:0;font-size:clamp(64px,7.8vw,122px);line-height:.87;letter-spacing:-.068em;font-weight:700;max-width:900px}h1 span{font-family:'Newsreader',serif;font-style:italic;font-weight:500;color:var(--gold)}
.hero-summary{max-width:670px;margin:36px 0 0;font-size:clamp(17px,1.55vw,21px);line-height:1.7;color:#b8b9b3}.hero-summary strong{color:var(--white);font-weight:600}
.hero-actions{display:flex;align-items:center;gap:26px;margin-top:38px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:54px;padding:0 20px;border:1px solid transparent;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.btn-primary{background:var(--gold);color:var(--ink)}.btn-primary span{font-size:17px}.text-link{font-size:12px;font-weight:700;color:#d5d5cf;border-bottom:1px solid #555651;padding-bottom:6px}.text-link span{margin-left:10px;color:var(--gold)}
.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);max-width:650px;margin-top:64px;border-top:1px solid rgba(255,255,255,.13)}.hero-proof div{padding:18px 16px 0 0}.hero-proof strong{display:block;font-size:13px}.hero-proof span{display:block;margin-top:5px;font:10px 'DM Mono',monospace;color:#858680}
.portrait-stage{position:relative;min-height:650px;display:grid;place-items:center;perspective:1200px}.portrait-card{width:min(100%,470px);background:#d7d3ca;color:var(--ink);padding:12px;position:relative;z-index:3;transform:rotate(2deg);box-shadow:0 38px 90px rgba(0,0,0,.32);transition:transform .2s ease-out}.portrait-topline{height:42px;display:flex;align-items:center;justify-content:space-between;font:9px 'DM Mono',monospace;letter-spacing:.08em;padding:0 5px}.portrait-media{aspect-ratio:4/5;position:relative;overflow:hidden;background:#1b1c1d}.portrait-media img{width:100%;height:100%;object-fit:cover;display:block; transform:scale(1.5);transform-origin:52% 50%;  filter:grayscale(12%)}.portrait-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:30px;background:linear-gradient(145deg,#272a2b 0%,#111212 55%,#2e3131 100%);color:var(--white)}.portrait-placeholder:before{content:'';position:absolute;inset:16px;border:1px solid rgba(255,255,255,.13)}.portrait-placeholder:after{content:'';position:absolute;width:260px;height:260px;border:1px solid rgba(224,176,76,.38);border-radius:50%;right:-70px;top:110px}.initials{font-size:clamp(84px,9vw,140px);font-weight:800;letter-spacing:-.08em;line-height:.8;position:relative;z-index:1}.placeholder-note{font:10px 'DM Mono',monospace;line-height:1.6;color:#b7b8b2;position:relative;z-index:1}.placeholder-note strong{color:var(--gold);font-weight:500}.portrait-caption{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;padding:17px 6px 7px}.portrait-caption span{display:block;font:9px 'DM Mono',monospace;color:#73716b;text-transform:uppercase}.portrait-caption strong{display:block;font-size:13px;margin-top:5px}.portrait-arrow{font-size:24px}.floating-chip{position:absolute;z-index:5;border:1px solid rgba(255,255,255,.18);background:rgba(13,27,50,.88);backdrop-filter:blur(12px);padding:13px 15px;font:10px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.06em}.chip-a{left:-10px;top:22%;color:var(--gold)}.chip-b{right:-28px;bottom:19%;color:#d2d2cd}.portrait-orbit{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.1);z-index:1}.orbit-one{width:590px;height:590px}.orbit-two{width:730px;height:730px;border-color:rgba(224,176,76,.08)}
.hero-ticker{height:58px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;overflow:hidden;white-space:nowrap}.ticker-track{font:10px 'DM Mono',monospace;letter-spacing:.12em;color:#777872;animation:ticker 34s linear infinite}.ticker-track span{margin-left:24px}@keyframes ticker{to{transform:translateX(-50%)}}

/* SHARED SECTION */
.section-head{display:grid;grid-template-columns:.55fr 1.45fr .75fr;gap:50px;align-items:start;margin-bottom:80px}.section-head>div:first-child{display:flex;gap:18px;align-items:center}.section-no{font:10px 'DM Mono',monospace;color:var(--muted)}.section-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.section-head h2{margin:0;font-size:clamp(44px,5.2vw,78px);line-height:.98;letter-spacing:-.052em;font-weight:650}.section-head h2 em{font-family:'Newsreader',serif;font-weight:500}.section-head>p{margin:5px 0 0;color:var(--muted);font-size:14px;line-height:1.72}

/* WORK */
.project-feature{display:grid;grid-template-columns:1.18fr .82fr;min-height:640px;border:1px solid var(--line);cursor:pointer;outline:none;transition:transform .35s,box-shadow .35s}.project-feature:hover,.project-feature:focus-visible{transform:translateY(-4px);box-shadow:0 22px 65px rgba(13,27,50,.08)}.project-visual{min-height:640px;display:grid;place-items:center;padding:44px;overflow:hidden}.visual-commerce{background:linear-gradient(135deg,#1a3a6b,#3d5a8a 62%,#7a95c4)}.browser-shell{width:min(92%,720px);aspect-ratio:1.28/1;background:#f6f4ee;border:1px solid rgba(13,27,50,.25);box-shadow:28px 34px 0 rgba(13,27,50,.16);transform:rotate(-2deg)}.browser-bar{height:43px;display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(13,27,50,.13);padding:0 14px}.browser-bar i{width:7px;height:7px;border-radius:50%;background:#171818}.browser-bar span{margin-left:auto;font:8px 'DM Mono',monospace;color:#6e6e68}.commerce-layout{height:calc(100% - 43px);display:grid;grid-template-columns:25% 1fr}.commerce-sidebar{border-right:1px solid rgba(13,27,50,.13);padding:30px 18px;display:flex;flex-direction:column;gap:18px}.commerce-sidebar b{height:6px;background:#171818;opacity:.18}.commerce-main{padding:32px}.commerce-title{width:50%;height:20px;background:#171818}.commerce-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:34px}.commerce-cards i{aspect-ratio:1;background:#d9d8d3;border:1px solid rgba(13,27,50,.12)}.commerce-lines{display:flex;flex-direction:column;gap:10px;margin-top:30px}.commerce-lines b{height:7px;background:#171818;opacity:.14}.commerce-lines b:nth-child(2){width:82%}.commerce-lines b:nth-child(3){width:63%}.project-content{padding:54px 48px;display:flex;flex-direction:column;justify-content:flex-end}.project-meta{display:flex;justify-content:space-between;gap:18px;font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}.project-content h3{font-size:clamp(46px,4.9vw,72px);line-height:.94;letter-spacing:-.055em;margin:70px 0 22px}.project-content>p{font-size:15px;line-height:1.75;color:var(--muted);max-width:520px}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tag-row span{font:9px 'DM Mono',monospace;text-transform:uppercase;padding:7px 9px;border:1px solid var(--line);border-radius:999px}.project-open{margin-top:46px;padding:18px 0 0;border:0;border-top:1px solid var(--line);background:none;display:flex;justify-content:space-between;font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}.project-card{border:1px solid var(--line);cursor:pointer;outline:none;background:var(--paper);transition:transform .3s,background .3s}.project-card:hover,.project-card:focus-visible{transform:translateY(-5px);background:var(--white)}.project-thumb{height:360px;position:relative;overflow:hidden;padding:26px}.thumb-index{position:absolute;right:26px;top:23px;font:10px 'DM Mono',monospace}.thumb-sawari{background:#f0d48a}.thumb-window{position:absolute;left:12%;right:12%;bottom:-1px;height:73%;background:#0d1b32;color:white;padding:34px}.thumb-window b{font-size:44px;line-height:.87;letter-spacing:-.055em}.thumb-window i{display:block;height:1px;background:rgba(255,255,255,.2);margin-top:28px}.thumb-window i:last-child{width:60%}.thumb-deepsana{background:#c5d4f0}.code-lines{position:absolute;left:15%;top:28%;display:flex;flex-direction:column;gap:18px;width:64%}.code-lines i{height:6px;background:#0d1b32}.code-lines i:nth-child(2){width:80%}.code-lines i:nth-child(3){width:92%}.code-lines i:nth-child(4){width:55%}.code-lines i:nth-child(5){width:74%}.blade-mark{position:absolute;right:9%;bottom:8%;font:70px 'DM Mono',monospace;color:#1a3a6b}.thumb-debug{background:#f4b29d}.bug-box{position:absolute;left:12%;right:12%;top:34%;border:2px solid var(--ink);padding:30px;font:26px 'DM Mono',monospace}.bug-box span{float:right;background:var(--ink);color:var(--gold);font-size:10px;padding:8px}.thumb-ui{background:#c5d4f0}.ui-grid{position:absolute;inset:18% 13%;display:grid;grid-template-columns:1fr 1fr;gap:14px}.ui-grid i{border:2px solid var(--ink);background:rgba(255,255,255,.2)}.ui-grid i:first-child{grid-row:span 2}.project-card-copy{padding:28px}.project-card-copy h3{font-size:clamp(30px,3.1vw,47px);letter-spacing:-.045em;line-height:1.02;margin:38px 0 13px}.project-card-copy>p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.project-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:34px;padding-top:17px;font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--muted)}.project-foot span:last-child{font-size:17px;color:var(--ink)}
.project-strip{width:100%;margin-top:26px;border:1px solid var(--line);background:transparent;display:grid;grid-template-columns:80px 1.1fr 1fr auto;gap:30px;align-items:center;text-align:left;padding:27px 30px;cursor:pointer;transition:background .25s}.project-strip:hover{background:var(--white)}.project-strip-no{font:10px 'DM Mono',monospace;color:var(--muted)}.project-strip-title{font-size:21px;font-weight:700}.project-strip-copy{font-size:12px;color:var(--muted)}.project-strip-arrow{font-size:22px}
.work-group+.work-group{margin-top:110px}
.work-group-head{display:grid;grid-template-columns:.55fr 1.45fr .75fr;gap:50px;align-items:baseline;border-top:1px solid var(--line);padding:26px 0 44px}
.group-tag{font:10px 'DM Mono',monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.work-group-head h3{margin:0;font-size:clamp(28px,3vw,44px);line-height:1;letter-spacing:-.045em;font-weight:650}
.work-group-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.72}

/* ABOUT */
.about{background:var(--ink);color:var(--white)}.section-head.inverse .section-no,.section-head.inverse>p{color:#898a84}.about-body{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,10vw,160px);padding:72px 0;border-top:1px solid rgba(255,255,255,.12)}.about-big{font-size:clamp(32px,4.4vw,64px);line-height:1.12;letter-spacing:-.045em;margin:0}.about-small{font-size:15px;line-height:1.85;color:#aaa9a3}.about-small p:first-child{margin-top:0}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.13);border-left:1px solid rgba(255,255,255,.13);margin-top:50px}.approach-grid article{min-height:250px;padding:24px;border-right:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}.approach-grid span{font:10px 'DM Mono',monospace;color:var(--gold)}.approach-grid h3{font-size:24px;margin:64px 0 12px}.approach-grid p{color:#8e8f89;font-size:13px;line-height:1.65}

/* EXPERIENCE */
.experience-list{border-top:1px solid var(--line)}.experience-item{display:grid;grid-template-columns:.35fr .75fr 1fr;gap:40px;padding:48px 0;border-bottom:1px solid var(--line)}.experience-date span,.experience-role>span{font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}.experience-date strong{display:block;margin-top:9px;font-size:13px}.experience-role h3{font-size:clamp(30px,3.4vw,50px);line-height:1;letter-spacing:-.045em;margin:14px 0 0}.experience-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.experience-copy .tag-row{margin-top:22px}

/* SKILLS */
.skills{background:#ddd8cf}.skills-layout{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.skill-primary{padding:42px;min-height:520px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.skill-label{font:9px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.skill-cloud{display:flex;flex-wrap:wrap;align-content:flex-end;gap:8px}.skill-cloud span{border:1px solid var(--ink);border-radius:999px;padding:13px 16px;font-size:clamp(16px,2vw,25px);font-weight:700}.skill-cloud span:first-child{background:var(--ink);color:var(--gold)}.skill-columns{display:grid;grid-template-columns:1fr 1fr}.skill-columns>div{padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:173px}.skill-columns>div:nth-child(even){border-right:0}.skill-columns>div:nth-last-child(-n+2){border-bottom:0}.skill-columns p{font-size:16px;line-height:1.65;margin:28px 0 0}.mini-projects{margin-top:86px;border-top:1px solid var(--line)}.mini-projects>div,.mini-projects article{display:grid;grid-template-columns:.85fr .65fr 1fr;gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}.mini-heading span{font-size:24px;font-weight:700}.mini-heading p,.mini-projects article p{margin:0;color:var(--muted);font-size:13px}.mini-projects article span{font-size:14px;font-weight:700}.mini-projects article strong{font:10px 'DM Mono',monospace;color:var(--muted);font-weight:400}

/* EDUCATION */
.education-list{border-top:1px solid var(--line)}.education-list article{display:grid;grid-template-columns:80px 1fr .8fr;gap:35px;align-items:start;padding:42px 0;border-bottom:1px solid var(--line)}.edu-index{font:10px 'DM Mono',monospace;color:var(--muted)}.education-list article span{font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--muted)}.education-list h3{font-size:clamp(28px,3vw,44px);letter-spacing:-.04em;line-height:1.05;margin:12px 0 12px}.education-list p{margin:0;color:var(--muted)}.education-list small{font-size:12px;line-height:1.7;color:var(--muted)}

/* CONTACT */
.contact{background:var(--navy);color:var(--white);padding:120px 0}.contact-kicker{font:10px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.1em}.contact h2{font-size:clamp(65px,9.2vw,138px);line-height:.83;letter-spacing:-.07em;margin:32px 0 80px;max-width:1200px}.contact h2 em{font-family:'Newsreader',serif;font-weight:500;color:var(--gold)}.contact-bottom{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;border-top:1px solid rgba(255,255,255,.25);padding-top:32px}.contact-bottom>p{max-width:480px;margin:0;color:#e4d5a8;font-size:14px;line-height:1.8}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:16px 50px;align-items:end}.contact-links a,.contact-links span{font-size:12px;color:#e4d5a8}.contact-links .contact-main{grid-column:1/-1;font-size:clamp(21px,2.7vw,36px);font-weight:700;color:var(--white);display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:15px}
.footer{min-height:150px;display:flex;align-items:center;justify-content:space-between}.footer>div{display:flex;gap:12px;align-items:center}.footer strong{font-size:13px}.footer span{font:9px 'DM Mono',monospace;color:var(--muted)}.footer button{border:0;background:none;font-size:11px;cursor:pointer}

/* MOBILE MENU / MODAL */
.mobile-menu{position:fixed;z-index:180;inset:0;background:var(--gold);color:var(--ink);padding:28px;display:flex;flex-direction:column;opacity:0;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .45s cubic-bezier(.22,1,.36,1),opacity .25s}.mobile-menu.open{opacity:1;visibility:visible;clip-path:inset(0)}.menu-close{position:absolute;right:22px;top:18px;width:48px;height:48px;border:0;background:none;font-size:34px}.mobile-index{font:10px 'DM Mono',monospace;text-transform:uppercase;margin-top:10px}.mobile-links{display:flex;flex-direction:column;margin-top:86px}.mobile-links a{font-size:clamp(42px,12vw,76px);letter-spacing:-.06em;line-height:1;border-bottom:1px solid rgba(13,27,50,.2);padding:13px 0;display:flex;gap:20px}.mobile-links a span{font:9px 'DM Mono',monospace;letter-spacing:0;margin-top:8px}.mobile-email{margin-top:auto;font:11px 'DM Mono',monospace}
.modal-backdrop{position:fixed;z-index:210;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(10px);display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:.25s}.modal-backdrop.open{opacity:1;visibility:visible}.project-modal{width:min(900px,100%);max-height:88vh;overflow:auto;background:var(--paper);padding:clamp(34px,5.5vw,64px);position:relative;transform:translateY(28px);transition:transform .3s}.modal-backdrop.open .project-modal{transform:none}.modal-close{position:absolute;right:22px;top:18px;width:45px;height:45px;border:1px solid var(--line);border-radius:50%;background:none;font-size:28px;cursor:pointer}.modal-eyebrow{font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--navy)}.project-modal h2{font-size:clamp(42px,6vw,76px);line-height:.94;letter-spacing:-.055em;max-width:760px;margin:22px 0}.modal-intro{max-width:690px;font-size:16px;line-height:1.75;color:var(--muted)}.modal-grid{margin:46px 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.modal-grid>div{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.modal-grid span{font:9px 'DM Mono',monospace;text-transform:uppercase;color:var(--muted)}.modal-grid p{font-size:13px;line-height:1.7;margin:13px 0 0}.modal-link[hidden]{display:none}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}:focus-visible{outline:2px solid var(--navy);outline-offset:5px}

@media(max-width:1100px){
  .section-shell{width:calc(100% - 48px)}.site-nav{padding-inline:24px}.desktop-nav,.nav-contact{display:none}.site-nav{grid-template-columns:1fr auto}.menu-button{display:block}.hero-grid{grid-template-columns:1fr .78fr;gap:45px}.portrait-stage{min-height:570px}.section-head{grid-template-columns:.45fr 1.55fr}.section-head>p{grid-column:2}.work-group-head{grid-template-columns:.45fr 1.55fr}.work-group-head p{grid-column:2}.project-feature{grid-template-columns:1fr}.project-visual{min-height:520px}.project-content{min-height:520px}.approach-grid{grid-template-columns:1fr 1fr}.skills-layout{grid-template-columns:1fr}.skill-primary{border-right:0;border-bottom:1px solid var(--line);min-height:400px}
}
@media(max-width:800px){
  .section-shell{width:calc(100% - 32px)}.section-pad{padding:100px 0}.site-nav{height:68px}.hero{padding-top:68px}.hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:72px;padding-bottom:70px;gap:50px}.hero-copy{max-width:700px}.hero-summary{margin-top:28px}.hero-proof{margin-top:50px}.portrait-stage{min-height:auto;padding:20px 0 60px}.portrait-card{width:min(88vw,470px);transform:rotate(1deg)}.orbit-one{width:500px;height:500px}.orbit-two{display:none}.chip-a{left:2%;top:18%}.chip-b{right:0;bottom:12%}.section-head{grid-template-columns:1fr;gap:22px;margin-bottom:54px}.section-head>p{grid-column:auto;max-width:560px}.work-group+.work-group{margin-top:80px}.work-group-head{grid-template-columns:1fr;gap:14px;padding-bottom:34px}.work-group-head p{grid-column:auto;max-width:560px}.project-visual{min-height:430px;padding:28px}.project-content{min-height:460px;padding:34px 26px}.project-content h3{margin-top:54px}.project-grid{grid-template-columns:1fr}.project-thumb{height:320px}.project-strip{grid-template-columns:50px 1fr auto}.project-strip-copy{display:none}.about-body{grid-template-columns:1fr;gap:36px;padding:54px 0}.approach-grid{grid-template-columns:1fr 1fr}.experience-item{grid-template-columns:130px 1fr}.experience-copy{grid-column:2}.skills-layout{grid-template-columns:1fr}.skill-columns{grid-template-columns:1fr}.skill-columns>div{border-right:0!important;border-bottom:1px solid var(--line)!important}.skill-columns>div:last-child{border-bottom:0!important}.mini-projects>div,.mini-projects article{grid-template-columns:1fr;gap:8px}.education-list article{grid-template-columns:48px 1fr}.education-list small{grid-column:2}.contact{padding:90px 0}.contact h2{margin-bottom:58px}.contact-bottom{grid-template-columns:1fr;gap:45px}.footer{padding:30px 0;align-items:flex-start;gap:28px}.footer>div{flex-direction:column;align-items:flex-start}
}
@media(max-width:520px){
  h1{font-size:clamp(55px,17.3vw,84px)}.hero-actions{align-items:flex-start;flex-direction:column}.btn{width:100%}.hero-proof{grid-template-columns:1fr}.hero-proof div{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1)}.portrait-stage{padding-bottom:44px}.portrait-card{width:94vw}.floating-chip{display:none}.section-head h2{font-size:43px}.project-visual{min-height:340px}.browser-shell{width:100%;box-shadow:14px 18px 0 rgba(13,27,50,.15)}.commerce-main{padding:18px}.commerce-sidebar{padding:18px 10px}.project-thumb{height:280px}.approach-grid{grid-template-columns:1fr}.experience-item{grid-template-columns:1fr;gap:24px}.experience-copy{grid-column:1}.skill-primary{min-height:340px;padding:26px}.skill-columns>div{padding:26px}.education-list article{grid-template-columns:1fr}.education-list small{grid-column:1}.edu-index{display:none}.contact h2{font-size:62px}.contact-links{grid-template-columns:1fr}.contact-links .contact-main{grid-column:1}.footer{flex-direction:column}.project-strip{grid-template-columns:40px 1fr auto;padding:22px 18px}.project-strip-title{font-size:17px}.modal-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.portrait-card{transform:none!important}}
