/* Grish Pradhan: one scoped design system for every public page. */
:root { color-scheme:light; --site-bg:#f6f7fb; }
:root[data-theme="dark"] { color-scheme:dark; --site-bg:#0b1020; }
html { scroll-behavior:smooth; scroll-padding-top:108px; }
body { margin:0; min-width:320px; background:var(--site-bg); }
.standard-portfolio { --bg:#f6f7fb; --panel:#fff; --soft:#e9edf5; --text:#101a2d; --muted:#5b6678; --line:#d9e0ea; --accent:#2952cc; --on-accent:#fff; --accent-soft:#e5ebff; --max:1280px; background:var(--bg); color:var(--text); min-height:100dvh; font:16px/1.65 "Inter","Aptos","Segoe UI",-apple-system,BlinkMacSystemFont,sans-serif; -webkit-font-smoothing:antialiased; }
[data-theme="dark"] .standard-portfolio { --bg:#0b1020; --panel:#131b2f; --soft:#1c2740; --text:#edf2ff; --muted:#aeb9ce; --line:#33415d; --accent:#9db5ff; --on-accent:#0b1020; --accent-soft:#202d51; }
.standard-portfolio *, .standard-portfolio *::before,.standard-portfolio *::after { box-sizing:border-box; }
.standard-portfolio :is(h1,h2,h3,p,figure,dl,dd) { margin:0; }
.standard-portfolio :is(a,button,input,textarea,select):focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.standard-portfolio ::selection { background:var(--accent); color:var(--on-accent); }
.standard-portfolio a { color:inherit; text-decoration:none; }
.standard-portfolio :is(button,input,textarea,select) { font:inherit; }
.standard-portfolio button { cursor:pointer; }
.standard-portfolio button:disabled { cursor:wait; opacity:.6; }
.standard-portfolio img { display:block; max-width:100%; }
.standard-portfolio svg { flex:none; vertical-align:middle; }
.standard-portfolio :is(h1,h2,h3,.brand,.button,.text-link) { font-family:"Space Grotesk","Inter","Aptos","Segoe UI",sans-serif; }
.standard-portfolio h1 { font-size:clamp(48px,5.65vw,80px); line-height:1.05; letter-spacing:-.062em; font-weight:500; text-wrap:balance; }
.standard-portfolio h2 { font-size:clamp(34px,3.7vw,52px); line-height:1.13; letter-spacing:-.045em; font-weight:500; text-wrap:balance; }
.standard-portfolio h3 { font-size:23px; line-height:1.3; letter-spacing:-.025em; font-weight:550; }
.standard-portfolio em { color:var(--accent); font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.055em; }
.standard-portfolio :is(p,h1,h2,h3,dd) { overflow-wrap:anywhere; }
.standard-portfolio :is(.mono,.eyebrow) { font:11px/1.6 Consolas,"Courier New",monospace; letter-spacing:.09em; }
.standard-portfolio .mono { color:var(--muted); }
.standard-portfolio .eyebrow { display:flex; align-items:center; gap:15px; color:var(--muted); text-transform:uppercase; margin-bottom:24px; }
.standard-portfolio .eyebrow>span:not(.status-dot) { color:var(--accent); }
.standard-portfolio .section { width:100%; max-width:var(--max); margin:auto; padding:100px 48px; }
.standard-portfolio .skip-link { position:fixed; top:12px; left:12px; transform:translateY(-180%); z-index:100; background:var(--accent); color:var(--on-accent); padding:12px 20px; border-radius:4px; }
.standard-portfolio .skip-link:focus { transform:none; }
/* Navigation */
.standard-portfolio .nav { max-width:var(--max); margin:auto; min-height:100px; display:flex; align-items:center; gap:28px; padding:20px 48px; border-bottom:1px solid var(--line); position:relative; z-index:20; }
.standard-portfolio .brand { display:flex; align-items:center; gap:13px; flex:none; font-size:14px; font-weight:600; line-height:1.3; }
.standard-portfolio .brand-mark { display:flex; align-items:center; justify-content:center; width:46px; height:46px; color:var(--accent); font:600 28px/1 Georgia,serif; letter-spacing:-.11em; border:1px solid var(--line); border-radius:50%; padding-right:3px; }
.standard-portfolio .brand small { display:block; font-size:10px; color:var(--muted); font-weight:400; margin-top:5px; }
.standard-portfolio .nav nav { margin-left:auto; display:flex; align-items:center; gap:24px; }
.standard-portfolio .nav nav a { font-size:12px; padding:12px 0; color:var(--muted); border-bottom:1px solid transparent; transition:color .2s,border-color .2s; }
.standard-portfolio .nav nav a:hover,.standard-portfolio .nav nav a[aria-current="page"] { color:var(--accent); border-color:var(--accent); }
.standard-portfolio .nav-controls { display:flex; gap:10px; }
.standard-portfolio :is(.theme-toggle,.menu) { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:transparent; color:var(--text); align-items:center; justify-content:center; }
.standard-portfolio .menu { display:none; }
/* Type, space, and a live study. */
.standard-portfolio .hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(260px,.55fr); gap:72px; align-items:center; padding-top:80px; padding-bottom:78px; min-height:650px; }
.standard-portfolio .hero-copy { min-width:0; }
.standard-portfolio .hero .eyebrow { font-size:10px; gap:10px; margin-bottom:32px; }
.standard-portfolio .status-dot { height:7px; width:7px; flex:none; background:var(--accent); border-radius:50%; box-shadow:0 0 0 4px var(--accent-soft); }
.standard-portfolio .hero-note { align-self:end; max-width:360px; margin:0 0 18px auto; padding:28px 0 0; border-top:1px solid var(--line); }
.standard-portfolio .hero-note-label { color:var(--accent); font-size:11px; font-weight:700; letter-spacing:.14em; }
.standard-portfolio .hero-note-copy { max-width:320px; margin-top:22px; font-size:20px; line-height:1.45; letter-spacing:-.02em; }
.standard-portfolio .hero-note-list { display:grid; gap:14px; margin-top:42px; }
.standard-portfolio .hero-note-list>div { display:flex; align-items:center; gap:16px; padding-top:12px; border-top:1px solid var(--line); }
.standard-portfolio .hero-note-list .mono { width:24px; color:var(--accent); }
.standard-portfolio .hero-note-list strong { font-size:13px; font-weight:600; }
.standard-portfolio .hero-name { font-size:17px; margin-bottom:16px; }
.standard-portfolio .hero h1 { font-size:clamp(46px,5vw,70px); letter-spacing:-.065em; line-height:1.1; }
.standard-portfolio .hero h1 em { white-space:nowrap; }
.standard-portfolio .hero-role { margin-top:28px; font-size:14px; font-weight:600; max-width:48ch; }
.standard-portfolio .hero-summary { color:var(--muted); font-size:15px; max-width:42ch; margin-top:10px; }
.standard-portfolio .actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.standard-portfolio .button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:48px; padding:12px 19px; border:1px solid var(--line); border-radius:4px; font-size:13px; font-weight:500; transition:background .2s,color .2s,border-color .2s; }
.standard-portfolio .button.primary { color:var(--on-accent); background:var(--accent); border-color:var(--accent); }
.standard-portfolio .button.primary:hover { filter:brightness(.92); }
.standard-portfolio .button.secondary { color:var(--text); background:transparent; }
.standard-portfolio .button.secondary:hover { background:var(--soft); border-color:var(--accent); }
.standard-portfolio .hero-footnote { margin-top:48px; display:flex; flex-direction:column; gap:16px; }
.standard-portfolio .hero-footnote .mono { font-size:9px; }
.standard-portfolio .hero-footnote a { display:flex; gap:16px; align-items:center; color:var(--muted); font-size:11px; width:fit-content; }
.standard-portfolio .hero-footnote a span { font-size:20px; }
.standard-portfolio .portfolio-strip { border-block:1px solid var(--line); background:var(--soft); display:flex; justify-content:space-between; gap:32px; padding:24px max(48px,calc((100vw - var(--max))/2 + 48px)); }
.standard-portfolio .portfolio-strip>div { display:flex; gap:24px; font:italic 24px/1.4 Georgia,serif; }
.standard-portfolio .portfolio-strip a { display:flex; align-items:center; gap:14px; font-size:12px; }
/* Content hierarchy */
.standard-portfolio .section-head { display:flex; justify-content:space-between; gap:32px; align-items:flex-end; margin-bottom:42px; }
.standard-portfolio .text-link { display:inline-flex; gap:14px; align-items:center; min-height:44px; font-size:12px; border-bottom:1px solid var(--line); padding:8px 0; width:fit-content; flex-shrink:0; }
.standard-portfolio .text-link:hover { color:var(--accent); border-color:var(--accent); }
.standard-portfolio .about-section { display:grid; grid-template-columns:1fr 1fr; gap:40px 64px; }
.standard-portfolio .about-section .section-head { align-items:flex-start; flex-direction:column; justify-content:flex-start; gap:22px; margin:0; }
.standard-portfolio .about-summary>p { font-size:20px; line-height:1.8; letter-spacing:-.02em; }
.standard-portfolio .real-stats { display:flex; gap:32px; margin-top:36px; padding-top:24px; border-top:1px solid var(--line); }
.standard-portfolio .real-stats>div { flex:1; min-width:0; }
.standard-portfolio .real-stats strong { display:block; font-size:34px; font-weight:400; letter-spacing:-.06em; height:49px; }
.standard-portfolio .real-stats span { display:block; color:var(--muted); font-size:11px; line-height:1.5; margin-top:5px; }
.standard-portfolio .focus-grid { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); margin-top:20px; }
.standard-portfolio .focus-card { padding:30px 28px 8px; border-right:1px solid var(--line); }
.standard-portfolio .focus-card:first-child { padding-left:0; }
.standard-portfolio .focus-card:last-child { padding-right:0; border:0; }
.standard-portfolio .focus-card>div { display:flex; align-items:center; justify-content:space-between; color:var(--accent); margin-bottom:25px; }
.standard-portfolio .focus-card h3 { font-size:19px; margin-bottom:12px; }
.standard-portfolio .focus-card p { color:var(--muted); font-size:13px; line-height:1.8; max-width:36ch; }
.standard-portfolio :is(.work-section,.credentials-section,.contact-section) { border-top:1px solid var(--line); }
.standard-portfolio .projects { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.standard-portfolio .project { min-width:0; border:1px solid var(--line); border-radius:6px; overflow:hidden; background:var(--panel); display:flex; flex-direction:column; transition:border-color .2s; }
.standard-portfolio .project:hover { border-color:var(--accent); }
.standard-portfolio .project-media { aspect-ratio:600/340; overflow:hidden; background:var(--soft); }
.standard-portfolio .project-media>img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.standard-portfolio .project:hover .project-media>img { transform:scale(1.025); }
.standard-portfolio .project-artwork { height:100%; color:#acd1b9; background:#153d31; position:relative; }
.standard-portfolio .project-artwork.artwork-1 { color:#c1ced0; background:#263e46; }
.standard-portfolio .project-artwork.artwork-2 { color:#cfbda2; background:#40392e; }
.standard-portfolio .project-artwork svg { width:100%; height:100%; }
.standard-portfolio .project-artwork>span { position:absolute; bottom:18px; left:22px; font:9px/1.6 Consolas,monospace; letter-spacing:.12em; }
.standard-portfolio .project-body { padding:28px; display:flex; flex-direction:column; flex:1; }
.standard-portfolio .project-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
.standard-portfolio .project-top .mono { font-size:9px; }
.standard-portfolio .featured-label { color:var(--accent); background:var(--accent-soft); border-radius:3px; padding:3px 8px; font-size:10px; }
.standard-portfolio .project h3 { margin-bottom:12px; }
.standard-portfolio .project p { color:var(--muted); font-size:14px; line-height:1.8; }
.standard-portfolio .tags { display:flex; flex-wrap:wrap; gap:7px; margin:22px 0; }
.standard-portfolio .tags>span { font:10px/1.6 Consolas,monospace; color:var(--muted); padding:4px 8px; border:1px solid var(--line); border-radius:3px; }
.standard-portfolio .project-links { margin-top:auto; padding-top:18px; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:22px; }
.standard-portfolio .project-links a { display:inline-flex; gap:12px; align-items:center; font-size:12px; min-height:44px; }
.standard-portfolio .project-links a:hover { color:var(--accent); }
/* Credentials: complete documents, never cropped. */
.standard-portfolio .credential-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.standard-portfolio .credential-card { min-width:0; background:var(--panel); border:1px solid var(--line); border-radius:5px; overflow:hidden; transition:border-color .2s; display:flex; flex-direction:column; }
.standard-portfolio .credential-card:hover { border-color:var(--accent); }
.standard-portfolio .credential-art { aspect-ratio:600/420; background:var(--soft); padding:22px; display:grid; place-items:center; position:relative; }
.standard-portfolio .credential-art img { width:100%; height:100%; object-fit:contain; }
.standard-portfolio .credential-open { position:absolute; right:12px; bottom:12px; width:38px; height:38px; border:1px solid var(--line); display:grid; place-items:center; border-radius:50%; background:var(--panel); }
.standard-portfolio .credential-open>span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.standard-portfolio .credential-document { display:flex; flex-direction:column; gap:12px; align-items:center; color:var(--muted); font-size:12px; }
.standard-portfolio .credential-copy { display:flex; flex-direction:column; flex:1; padding:24px; border-top:1px solid var(--line); }
.standard-portfolio .credential-copy>.mono { font-size:9px; text-transform:uppercase; margin-bottom:12px; }
.standard-portfolio .credential-copy h3 { font-size:18px; line-height:1.5; margin-bottom:22px; }
.standard-portfolio .credential-copy>div { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; color:var(--muted); font-size:11px; }
.standard-portfolio .archive-tools { display:flex; gap:24px; align-items:flex-end; padding:24px 0; margin-bottom:30px; border-block:1px solid var(--line); }
.standard-portfolio .archive-tools label:first-child { flex:1.4; }
.standard-portfolio .archive-tools label:nth-child(2) { flex:1; }
.standard-portfolio .archive-tools>span { font-size:12px; padding-bottom:12px; color:var(--muted); white-space:nowrap; }
.standard-portfolio label { display:grid; gap:9px; color:var(--muted); font-size:12px; }
.standard-portfolio :is(input,textarea,select) { width:100%; min-width:0; min-height:46px; border:1px solid var(--line); border-radius:4px; background:var(--panel); padding:11px 13px; color:var(--text); font-size:15px; }
.standard-portfolio :is(input,textarea)::placeholder { color:var(--muted); opacity:.8; }
.standard-portfolio textarea { resize:vertical; min-height:150px; }
.standard-portfolio .data-state { grid-column:1/-1; min-height:200px; border:1px dashed var(--line); border-radius:5px; padding:40px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px; color:var(--muted); }
.standard-portfolio .data-state strong { font-size:20px; color:var(--text); font-weight:500; }
.standard-portfolio .data-state h1 { font-size:40px; }
.standard-portfolio .loading-line { display:block; width:90px; height:3px; background:var(--accent); transform-origin:left; animation:loading-pulse 1s ease-in-out infinite alternate; }
.standard-portfolio .load-error { max-width:var(--max); margin:20px auto 0; padding:16px 48px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; align-items:center; font-size:13px; color:var(--text); }
.standard-portfolio .load-error button { color:var(--accent); background:var(--accent-soft); border:1px solid var(--line); border-radius:4px; min-height:44px; padding:8px 16px; }
/* The scenic route */
.standard-portfolio .island-invitation { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; border-top:1px solid var(--line); }
.standard-portfolio .island-miniature { display:grid; place-items:center; background:var(--accent-soft); border-radius:50%; aspect-ratio:1.25; max-width:420px; color:var(--accent); }
.standard-portfolio .island-miniature svg { width:82%; }
.standard-portfolio .island-invitation p:not(.eyebrow) { color:var(--muted); margin:24px 0; max-width:42ch; font-size:14px; }
.standard-portfolio .contact-section { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; padding-bottom:100px; }
.standard-portfolio .contact-copy>p:not(.eyebrow) { max-width:40ch; color:var(--muted); font-size:14px; margin-top:24px; }
.standard-portfolio .contact-email { display:flex; align-items:center; gap:12px; font-size:14px; margin:32px 0 18px; overflow-wrap:anywhere; }
.standard-portfolio .contact-location { display:block; font-size:11px; color:var(--muted); margin-top:22px; }
.standard-portfolio .contact-form { display:grid; gap:22px; background:var(--panel); padding:30px; border:1px solid var(--line); border-radius:5px; }
.standard-portfolio .form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.standard-portfolio .form-submit { display:flex; align-items:center; flex-wrap:wrap; gap:20px; }
.standard-portfolio .form-submit>span { font-size:10px; color:var(--muted); max-width:19ch; }
.standard-portfolio .form-status { font-size:12px; color:var(--accent); }
.standard-portfolio .form-status:empty { display:none; }
.standard-portfolio .site-footer { border-top:1px solid var(--line); max-width:var(--max); padding:48px 48px 22px; margin:auto; }
.standard-portfolio .footer-top { display:flex; justify-content:space-between; gap:32px; align-items:center; padding-bottom:42px; }
.standard-portfolio .footer-name { font-size:22px; letter-spacing:-.035em; }
.standard-portfolio .footer-name span { display:block; margin-top:8px; font-size:12px; color:var(--muted); letter-spacing:0; }
.standard-portfolio .footer-links { display:flex; flex-wrap:wrap; gap:24px; }
.standard-portfolio .footer-links a { display:flex; gap:10px; align-items:center; font-size:12px; min-height:44px; }
.standard-portfolio .footer-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid var(--line); padding-top:18px; font-size:10px; color:var(--muted); }
.standard-portfolio .footer-bottom button { font-size:10px; border:0; color:inherit; background:transparent; min-height:44px; }
/* Dedicated pages */
.standard-portfolio .archive-page { padding-top:42px; min-height:70vh; }
.standard-portfolio .page-intro { max-width:850px; margin-bottom:64px; }
.standard-portfolio .back-link { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); font-size:12px; margin-bottom:40px; }
.standard-portfolio .page-description { color:var(--muted); font-size:16px; max-width:56ch; margin-top:26px; line-height:1.8; }
.standard-portfolio .about-page-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:100px; margin-bottom:64px; }
.standard-portfolio .about-biography { font-size:22px; line-height:1.85; }
.standard-portfolio .about-facts>div { padding:18px 0; border-top:1px solid var(--line); }
.standard-portfolio .about-facts dt { font-size:11px; color:var(--muted); margin-bottom:7px; }
.standard-portfolio .about-facts dd { font-size:14px; }
.standard-portfolio .archive-page>.focus-grid { margin-bottom:60px; }
.standard-portfolio .achievement-stats { max-width:600px; margin-bottom:60px; }
.standard-portfolio .achievement-stats strong { font-size:44px; height:auto; }
.standard-portfolio .timeline-item { display:grid; grid-template-columns:150px 1fr 24px; gap:32px; align-items:start; padding:30px 0; border-top:1px solid var(--line); }
.standard-portfolio .timeline-item time { font:12px/1.8 Consolas,monospace; color:var(--muted); }
.standard-portfolio .timeline-item .mono { font-size:10px; }
.standard-portfolio .timeline-item h2 { font-size:25px; line-height:1.4; letter-spacing:-.025em; margin-top:10px; }
.standard-portfolio .timeline-item:hover h2 { color:var(--accent); }
.standard-portfolio .contact-intro { padding-top:42px; padding-bottom:0; }
.standard-portfolio .contact-intro .page-intro { margin-bottom:50px; }
.standard-portfolio .standalone-contact { border:0; padding-top:20px; }
.standard-portfolio .standalone-contact h2 { font-size:36px; }
.standard-portfolio .certificate-detail { padding-top:42px; }
.standard-portfolio .detail-intro { max-width:900px; margin-bottom:45px; }
.standard-portfolio .detail-intro h1 { font-size:clamp(38px,5vw,66px); }
.standard-portfolio .certificate-viewer { border:1px solid var(--line); border-radius:5px; overflow:hidden; background:var(--panel); }
.standard-portfolio .certificate-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding:16px 24px; border-bottom:1px solid var(--line); }
.standard-portfolio .certificate-toolbar .mono { font-size:10px; }
.standard-portfolio .certificate-toolbar>div { display:flex; gap:22px; flex-wrap:wrap; }
.standard-portfolio .certificate-toolbar a { display:flex; align-items:center; gap:10px; font-size:12px; min-height:44px; }
.standard-portfolio .full-certificate { display:block; padding:28px; }
.standard-portfolio .full-certificate img { width:100%; height:auto; }
.standard-portfolio .full-certificate>span { display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted); font-size:11px; padding-top:20px; }
.standard-portfolio .detail-description { color:var(--muted); max-width:70ch; margin-top:30px; }
.standard-portfolio .not-found { min-height:65vh; }
.standard-portfolio .not-found p:not(.eyebrow) { margin:24px 0; color:var(--muted); }
/* Analytics remain optional. */
.standard-portfolio .privacy-consent { position:fixed; z-index:40; bottom:20px; right:20px; max-width:450px; max-height:calc(100dvh - 40px); overflow:auto; padding:26px; border:1px solid var(--line); background:var(--panel); border-radius:7px; box-shadow:0 12px 60px #122a2522; }
.standard-portfolio .privacy-consent h2 { font-size:21px; letter-spacing:-.03em; margin-bottom:12px; }
.standard-portfolio .privacy-consent p { font-size:12px; color:var(--muted); line-height:1.8; }
.standard-portfolio .privacy-actions { display:flex; gap:12px; margin-top:22px; }
.standard-portfolio .privacy-actions .button { flex:1; }
.world-preparing { min-height:100dvh; display:grid; place-content:center; gap:18px; background:#faf1df; color:#293c38; font:16px/1.6 "Segoe UI",sans-serif; }
[data-theme="dark"] .world-preparing { background:#111d32; color:#e5edf6; }
.world-preparing a { color:inherit; }
@keyframes loading-pulse { to { opacity:.35; transform:scaleX(.5); } }
@keyframes portfolio-enter { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:no-preference) { .standard-portfolio .hero-copy { animation:portfolio-enter .65s ease-out both; } .standard-portfolio .hero-note { animation:portfolio-enter .8s .1s ease-out both; } @supports(animation-timeline:view()) { .standard-portfolio :is(.focus-card,.project,.credential-card,.island-invitation) { animation:portfolio-enter linear both; animation-timeline:view(); animation-range:entry 0% entry 20%; } } }
@media(max-width:1100px) {
  .standard-portfolio .nav { gap:20px; } .standard-portfolio .nav nav { gap:16px; }
  .standard-portfolio .hero { gap:42px; min-height:620px; } .standard-portfolio .hero h1 { font-size:clamp(42px,5vw,60px); } .standard-portfolio .hero-note { max-width:300px; } .standard-portfolio .hero .eyebrow { font-size:9px; }
  .standard-portfolio .contact-section { gap:40px; } .standard-portfolio .form-row { grid-template-columns:1fr; }
}
@media(max-width:900px) {
  .standard-portfolio .section { padding:72px 32px; } .standard-portfolio .nav { padding:18px 32px; min-height:88px; } .standard-portfolio .menu { display:flex; } .standard-portfolio .nav-controls { margin-left:auto; }
  .standard-portfolio .nav nav { display:none; position:absolute; top:100%; left:24px; right:24px; margin:0; padding:18px; background:var(--panel); border:1px solid var(--line); border-radius:6px; box-shadow:0 20px 30px #122a2514; }
  .standard-portfolio .nav nav.open { display:grid; grid-template-columns:1fr 1fr; gap:8px 24px; } .standard-portfolio .nav nav a { padding:12px; border-radius:3px; } .standard-portfolio .nav nav a[aria-current="page"] { background:var(--accent-soft); border-color:transparent; }
  .standard-portfolio .hero { grid-template-columns:1fr minmax(220px,.7fr); gap:28px; padding-top:54px; } .standard-portfolio .hero h1 { font-size:40px; } .standard-portfolio .hero h1 em { white-space:normal; } .standard-portfolio .hero-footnote { margin-top:28px; } .standard-portfolio .hero-note-copy { font-size:17px; }
  .standard-portfolio .portfolio-strip { padding:24px 32px; } .standard-portfolio .portfolio-strip>div { gap:14px; font-size:22px; } .standard-portfolio .portfolio-strip a { font-size:11px; gap:8px; }
  .standard-portfolio .about-section { gap:32px; } .standard-portfolio .about-summary>p { font-size:17px; } .standard-portfolio .real-stats { gap:18px; } .standard-portfolio .focus-card { padding-inline:20px; } .standard-portfolio .focus-card h3 { font-size:17px; }
  .standard-portfolio .credential-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .standard-portfolio .projects { gap:24px; } .standard-portfolio .project-body { padding:22px; } .standard-portfolio .island-invitation { gap:36px; }
  .standard-portfolio .contact-section { grid-template-columns:1fr; gap:32px; } .standard-portfolio .form-row { grid-template-columns:1fr 1fr; } .standard-portfolio .site-footer { padding-inline:32px; } .standard-portfolio .footer-top { align-items:flex-start; } .standard-portfolio .footer-links { gap:12px; }
  .standard-portfolio .about-page-grid { gap:45px; } .standard-portfolio .about-biography { font-size:19px; }
}
@media(max-width:640px) {
  .standard-portfolio .section { padding:58px 22px; } .standard-portfolio .nav { min-height:82px; padding:16px 22px; gap:12px; } .standard-portfolio .brand { font-size:12px; gap:10px; } .standard-portfolio .brand-mark { width:38px; height:38px; font-size:25px; } .standard-portfolio .brand small { font-size:9px; max-width:22ch; } .standard-portfolio .nav-controls { gap:8px; } .standard-portfolio :is(.theme-toggle,.menu) { width:44px; height:44px; } .standard-portfolio .nav nav { left:12px; right:12px; }
  .standard-portfolio .hero { grid-template-columns:1fr; gap:46px; padding-top:46px; min-height:auto; } .standard-portfolio .hero .eyebrow { font-size:9px; margin-bottom:28px; } .standard-portfolio .hero-name { font-size:15px; } .standard-portfolio .hero h1 { font-size:clamp(38px,8.9vw,56px); } .standard-portfolio .hero h1 em { white-space:normal; } .standard-portfolio .hero-summary { font-size:14px; } .standard-portfolio .hero-role { font-size:13px; margin-top:24px; }
  .standard-portfolio .hero-footnote { gap:8px; } .standard-portfolio .hero-footnote .mono { font-size:8px; } .standard-portfolio .hero-note { max-width:none; width:100%; margin:0; padding-top:22px; } .standard-portfolio .hero-note-copy { max-width:38ch; font-size:18px; } .standard-portfolio .hero-note-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:28px; } .standard-portfolio .hero-note-list>div { display:grid; gap:7px; }
  .standard-portfolio .portfolio-strip { padding:22px; flex-direction:column; gap:20px; } .standard-portfolio .portfolio-strip>div { justify-content:space-between; font-size:24px; } .standard-portfolio .portfolio-strip a { justify-content:space-between; padding-top:16px; border-top:1px solid var(--line); }
  .standard-portfolio .about-section { grid-template-columns:1fr; } .standard-portfolio .about-summary>p { font-size:18px; } .standard-portfolio .real-stats { margin-top:28px; }
  .standard-portfolio .focus-grid { grid-template-columns:1fr; margin-top:12px; } .standard-portfolio .focus-card,.standard-portfolio .focus-card:first-child,.standard-portfolio .focus-card:last-child { border:0; border-bottom:1px solid var(--line); padding:26px 0; } .standard-portfolio .focus-card:last-child { border-bottom:0; padding-bottom:0; } .standard-portfolio .focus-card>div { margin-bottom:18px; } .standard-portfolio .focus-card h3 { font-size:20px; } .standard-portfolio .focus-card p { max-width:50ch; }
  .standard-portfolio .section-head { align-items:flex-start; flex-direction:column; gap:20px; margin-bottom:30px; } .standard-portfolio h2 { font-size:36px; } .standard-portfolio .eyebrow { font-size:10px; margin-bottom:20px; } .standard-portfolio .projects,.standard-portfolio .credential-grid { grid-template-columns:1fr; gap:26px; }
  .standard-portfolio .project-body,.standard-portfolio .credential-copy { padding:24px; } .standard-portfolio .archive-tools { align-items:stretch; flex-direction:column; gap:18px; } .standard-portfolio .archive-tools>span { padding:0; }
  .standard-portfolio .island-invitation { grid-template-columns:1fr; gap:36px; } .standard-portfolio .island-miniature { width:75%; max-width:300px; margin:auto; } .standard-portfolio .contact-form { padding:22px; } .standard-portfolio .form-row { grid-template-columns:1fr; } .standard-portfolio .contact-email { font-size:13px; } .standard-portfolio .contact-copy h2 { font-size:34px; }
  .standard-portfolio .site-footer { padding:36px 22px 18px; } .standard-portfolio .footer-top { flex-direction:column; gap:24px; padding-bottom:24px; } .standard-portfolio .footer-links { gap:10px 20px; } .standard-portfolio .footer-bottom>span:nth-child(2) { display:none; }
  .standard-portfolio .archive-page,.standard-portfolio .certificate-detail,.standard-portfolio .contact-intro { padding-top:28px; } .standard-portfolio .page-intro { margin-bottom:38px; } .standard-portfolio .back-link { margin-bottom:24px; } .standard-portfolio h1 { font-size:clamp(40px,10vw,58px); } .standard-portfolio .page-description { font-size:14px; margin-top:22px; }
  .standard-portfolio .about-page-grid { grid-template-columns:1fr; gap:30px; margin-bottom:32px; } .standard-portfolio .timeline-item { grid-template-columns:1fr 24px; gap:16px; } .standard-portfolio .timeline-item time { grid-column:1/-1; } .standard-portfolio .timeline-item h2 { font-size:21px; }
  .standard-portfolio .certificate-toolbar { padding:16px; gap:8px; } .standard-portfolio .certificate-toolbar a { font-size:11px; } .standard-portfolio .full-certificate { padding:12px; } .standard-portfolio .load-error { padding-inline:22px; } .standard-portfolio .privacy-consent { left:12px; right:12px; bottom:12px; max-width:none; padding:22px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .standard-portfolio *, .standard-portfolio *::before,.standard-portfolio *::after { animation:none!important; transition:none!important; } }
