:root{--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>')}.annotationLayer section{position:absolute;text-align:left;text-align:initial}.annotationLayer .buttonWidgetAnnotation.pushButton>a,.annotationLayer .linkAnnotation>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation.pushButton>canvas{left:0;position:relative;top:0;z-index:-1}.annotationLayer .buttonWidgetAnnotation.pushButton>a:hover,.annotationLayer .linkAnnotation>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input,.annotationLayer .buttonWidgetAnnotation.radioButton input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation input,.annotationLayer .textWidgetAnnotation textarea{background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:1px solid transparent;box-sizing:border-box;font-size:9px;height:100%;margin:0;padding:0 3px;vertical-align:top;width:100%}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{font:message-box;font-size:9px;resize:none}.annotationLayer .buttonWidgetAnnotation.checkBox input[disabled],.annotationLayer .buttonWidgetAnnotation.radioButton input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation input[disabled],.annotationLayer .textWidgetAnnotation textarea[disabled]{background:none;border:1px solid transparent;cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .buttonWidgetAnnotation.radioButton input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation input:hover,.annotationLayer .textWidgetAnnotation textarea:hover{border:1px solid #000}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation input:focus,.annotationLayer .textWidgetAnnotation textarea:focus{background:none;border:1px solid transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus,.annotationLayer .buttonWidgetAnnotation.radioButton :focus,.annotationLayer .choiceWidgetAnnotation select :focus,.annotationLayer .textWidgetAnnotation input :focus,.annotationLayer .textWidgetAnnotation textarea :focus{background-color:transparent;background-image:none;outline:auto}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:#000;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation.checkBox input,.annotationLayer .buttonWidgetAnnotation.radioButton input{-webkit-appearance:none;appearance:none;padding:0}.annotationLayer .popupWrapper{position:absolute;width:20em}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:2px;box-shadow:0 2px 5px #888;cursor:pointer;font:message-box;font-size:9px;margin-left:5px;max-width:20em;padding:6px;position:absolute;white-space:normal;z-index:200}.annotationLayer .popup>*{font-size:9px}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:5px}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:2px;padding-top:2px}.annotationLayer .richText>*{white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}:root{--radius:10px;--nav-offset:112px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;scroll-padding-top:var(--nav-offset)}body,html{overflow-anchor:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}body[data-theme=light]{background:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.portfolio-shell{--bg:#000;--surface:#07090f;--surface-strong:#0d121b;--surface-soft:#101620;--text:#f7fbff;--text-soft:#d8e2f0;--muted:#9aa7b8;--line:rgba(148,163,184,.18);--line-strong:rgba(74,193,255,.34);--accent:#4ac1ff;--accent-ink:#001018;--danger:#fb7185;--shadow:0 22px 50px rgba(0,0,0,.36);background:var(--bg);color:var(--text);min-height:100vh;overflow-anchor:none;overflow-x:hidden}.portfolio-shell[data-theme=light]{--bg:#fff;--surface:#fff;--surface-strong:#f2f6f8;--surface-soft:#f7fafc;--text:#101820;--text-soft:#24313c;--muted:#5d6c78;--line:rgba(15,23,42,.14);--line-strong:rgba(15,118,110,.28);--accent:#0f766e;--accent-ink:#fff;--danger:#b64242;--shadow:0 18px 44px rgba(15,23,42,.1)}::selection{background:var(--accent);color:var(--accent-ink)}.section-frame{border-top:1px solid var(--line);margin:0 auto;padding:82px 0;scroll-margin-top:112px;scroll-margin-top:var(--nav-offset);width:min(1760px,92vw)}.hero-section{border-top:0;padding-top:132px}.site-nav{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:rgba(0,0,0,.9);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow);display:flex;gap:20px;justify-content:space-between;left:50%;padding:8px;position:fixed;top:14px;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:min(1760px,92vw);z-index:50}.portfolio-shell[data-theme=light] .site-nav{background:hsla(0,0%,100%,.92)}.brand-mark{align-items:center;display:inline-flex;gap:10px;min-width:210px}.brand-mark>span{background:var(--accent);border-radius:8px;color:var(--accent-ink);display:grid;font-weight:900;height:38px;letter-spacing:0;place-items:center;width:38px}.brand-mark small,.brand-mark strong{display:block;line-height:1.1}.brand-mark strong{color:var(--text);font-size:.95rem}.brand-mark small{color:var(--muted);font-size:.76rem;margin-top:4px}.nav-links{align-items:center;display:flex;gap:4px}.nav-links a,.nav-links button{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text-soft);display:inline-flex;font-size:.86rem;font-weight:800;gap:8px;justify-content:center;min-height:38px;padding:0 11px;transition:background .16s ease,border-color .16s ease,color .16s ease}.nav-links a:hover,.nav-links button:hover{background:var(--surface-strong);color:var(--text)}.theme-toggle{border-color:var(--line)!important}.nav-resume{background:var(--accent)!important;color:var(--accent-ink)!important}.nav-toggle{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);display:none;height:40px;place-items:center;width:40px}.hero-section{grid-gap:72px;align-items:start;display:grid;gap:72px;grid-template-columns:minmax(0,1.05fr) minmax(330px,.78fr)}.eyebrow,.section-kicker{align-items:center;color:var(--accent);display:inline-flex;font-size:.76rem;font-weight:900;gap:8px;letter-spacing:.08em;margin:0 0 12px;text-transform:uppercase}.hero-title{font-size:clamp(2.45rem,4.25vw,4.35rem);letter-spacing:0;line-height:1;margin:0;max-width:760px}.hero-lede{color:var(--text-soft);font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.68;margin:20px 0 0;max-width:720px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.button{align-items:center;border:1px solid transparent;border-radius:8px;display:inline-flex;font-weight:900;gap:9px;justify-content:center;line-height:1;min-height:42px;padding:0 15px;transition:background .16s ease,border-color .16s ease,-webkit-transform .16s ease;transition:transform .16s ease,background .16s ease,border-color .16s ease;transition:transform .16s ease,background .16s ease,border-color .16s ease,-webkit-transform .16s ease}.button:hover{-webkit-transform:translateY(-1px);transform:translateY(-1px)}.button-primary{background:var(--accent);color:var(--accent-ink)}.button-secondary{background:var(--surface);border-color:var(--line);color:var(--text)}.button-soft{background:var(--surface-soft);border-color:var(--line-strong);color:var(--accent)}.focus-strip,.skill-tags,.stack-list{display:flex;flex-wrap:wrap;gap:10px}.focus-strip{margin-top:28px;max-width:720px}.focus-strip span,.skill-tags span,.stack-list span{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text-soft);display:inline-flex;font-size:.78rem;font-weight:800;min-height:28px;padding:0 10px}.case-card,.contact-links a,.metric-tile,.proof-grid article,.resume-preview,.skill-board,.stack-marquee span,.terminal-panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow)}.terminal-panel{overflow:hidden}.terminal-topline{align-items:center;border-bottom:1px solid var(--line);color:var(--muted);display:flex;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;gap:8px;min-height:40px;padding:0 13px}.terminal-dot{background:var(--danger);border-radius:50%;height:9px;width:9px}.terminal-dot:nth-child(2){background:#d99032}.terminal-dot:nth-child(3){background:var(--accent);margin-right:6px}.fastfetch-body{grid-gap:28px;color:var(--text-soft);display:grid;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.86rem;gap:28px;grid-template-columns:minmax(150px,.65fr) minmax(0,1fr);line-height:1.55;padding:24px}.fastfetch-logo{color:var(--accent);font-size:clamp(.76rem,1vw,.88rem);line-height:1.25;margin:0;white-space:pre}.fastfetch-output{min-width:0}.fastfetch-command,.fastfetch-row{margin:0}.fastfetch-command{color:var(--muted)}.fastfetch-command span,.fastfetch-label{color:var(--accent)}.fastfetch-identity{border-bottom:1px solid var(--line);color:var(--text);font-weight:900;margin:8px 0 10px;padding-bottom:10px}.fastfetch-lines{grid-gap:4px;display:grid;gap:4px}.fastfetch-row{grid-gap:7px;display:grid;gap:7px;grid-template-columns:72px 10px minmax(0,1fr)}.fastfetch-label{font-weight:900}.fastfetch-separator{color:var(--muted)}.fastfetch-palette{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(6,1fr);margin-top:14px}.fastfetch-palette span{background:var(--accent);border-radius:999px;height:10px}.fastfetch-palette span:nth-child(2){background:#d99032}.fastfetch-palette span:nth-child(3){background:var(--danger)}.fastfetch-palette span:nth-child(4){background:#22c55e}.fastfetch-palette span:nth-child(5){background:var(--text-soft)}.fastfetch-palette span:nth-child(6){background:var(--muted)}.system-card-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.metric-tile{grid-gap:12px;align-content:space-between;display:grid;gap:12px;min-height:114px;padding:18px}.metric-tile strong{color:var(--text);display:block;font-size:clamp(1.7rem,2.6vw,2.45rem);line-height:1.02;overflow-wrap:anywhere}.metric-tile span{color:var(--muted);display:block;font-size:.84rem;font-weight:800;line-height:1.35}.section-heading{grid-gap:50px;align-items:start;display:grid;gap:50px;grid-template-columns:190px minmax(0,1fr);margin-bottom:36px}.contact-copy h2,.section-heading h2{font-size:clamp(1.75rem,2.65vw,2.55rem);letter-spacing:0;line-height:1.08;margin:0;max-width:840px}.case-summary,.contact-copy p,.proof-grid p,.section-heading p,.skill-main p,.timeline-item p{color:var(--muted);line-height:1.62}.section-heading p{font-size:1rem;margin:14px 0 0;max-width:740px}.proof-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.proof-grid article{min-height:210px;padding:24px}.proof-grid svg{color:var(--accent);height:24px;width:24px}.proof-grid h3{font-size:1.04rem;margin:34px 0 9px}.segmented-control{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.segmented-control button{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text-soft);font-weight:900;min-height:36px;padding:0 13px}.segmented-control button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.case-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.case-card{display:flex;flex-direction:column;min-height:462px;padding:24px}.case-card-top{align-items:center;display:flex;gap:16px;min-height:64px}.case-logo-plate,.logo-fallback{background:#fff;border:1px solid var(--line);border-radius:8px;flex:0 0 62px;height:52px;width:62px}.case-logo-plate{display:grid;padding:6px;place-items:center}.case-logo-plate.wide{flex-basis:84px;width:84px}.case-logo-plate img{height:100%;object-fit:contain;width:100%}.logo-fallback{background:var(--accent);color:var(--accent-ink);display:grid;font-size:.78rem;font-weight:900;place-items:center}.case-card-top span,.timeline-item>span{color:var(--accent);font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.case-card h3{font-size:clamp(1.22rem,2vw,1.65rem);line-height:1.05;margin:3px 0 0}.case-role{color:var(--text);font-size:.9rem;font-weight:900;margin:22px 0 0}.case-summary{font-size:.92rem;margin:13px 0 0}.impact-list{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:22px 0;padding:0}.impact-list li{color:var(--text-soft);font-size:.86rem;line-height:1.46;padding-left:18px;position:relative}.impact-list li:before{background:var(--accent);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:.66em;width:6px}.stack-list{margin-top:auto}.case-link{align-items:center;color:var(--accent);display:inline-flex;font-size:.88rem;font-weight:900;gap:8px;margin-top:15px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.case-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.case-link.secondary{color:var(--muted)}.stack-marquee{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:18px}.stack-marquee span{align-items:center;color:var(--text-soft);display:inline-flex;font-size:.84rem;font-weight:900;gap:8px;justify-content:center;min-height:46px;padding:0 10px}.stack-marquee svg{color:var(--accent);height:18px;width:18px}.skill-board{overflow:hidden}.skill-search{align-items:center;border-bottom:1px solid var(--line);color:var(--muted);display:flex;gap:12px;min-height:60px;padding:0 20px}.skill-search input{background:transparent;border:0;color:var(--text);font-weight:800;outline:0;width:100%}.skill-row,.skill-rows{display:grid}.skill-row{grid-gap:18px;align-items:center;border-bottom:1px solid var(--line);gap:18px;grid-template-columns:44px 34px minmax(170px,.48fr) minmax(260px,1fr);padding:19px 20px}.skill-row:last-child{border-bottom:0}.skill-rank{color:var(--muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82rem;font-weight:900}.skill-icon{color:var(--accent);height:22px;width:22px}.skill-main h3{font-size:1rem;margin:0}.skill-main p{font-size:.86rem;margin:5px 0 0}.skill-tags{justify-content:flex-end}.timeline{border-top:1px solid var(--line);display:grid}.timeline-item{grid-gap:36px;border-bottom:1px solid var(--line);display:grid;gap:36px;grid-template-columns:210px 1fr;padding:28px 0}.timeline-item h3{font-size:1.08rem;margin:0}.timeline-item p{font-size:.94rem;margin:8px 0 0;max-width:760px}.resume-shell{grid-gap:18px;display:grid;gap:18px}.resume-actions{display:flex;flex-wrap:wrap;gap:10px}.resume-preview{display:flex;justify-content:center;max-height:820px;overflow:auto;padding:22px}.resume-preview canvas{border:1px solid var(--line);height:auto!important;max-width:100%}.resume-state{color:var(--muted);font-weight:800;padding:36px 18px}.contact-section{grid-gap:64px;align-items:start;display:grid;gap:64px;grid-template-columns:minmax(0,.9fr) minmax(320px,.62fr)}.contact-copy p{font-size:1rem;margin:15px 0 0;max-width:620px}.contact-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.contact-links a{align-items:center;display:inline-flex;font-size:.84rem;font-weight:900;gap:8px;min-height:38px;padding:0 11px}.contact-panel{grid-gap:18px;align-content:start;background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:18px;padding:24px}.contact-panel h3{font-size:1.2rem;margin:0}.contact-panel p{color:var(--muted);line-height:1.62;margin:0}.site-footer{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:.82rem;font-weight:800;gap:16px;justify-content:space-between;margin:0 auto;padding:24px 0 36px;width:min(1760px,92vw)}.project-detail-page{padding-top:132px}.project-detail-nav{margin-bottom:28px}.project-detail-nav a{align-items:center;color:var(--accent);display:inline-flex;font-size:.9rem;font-weight:900;gap:8px}.project-detail-hero{grid-gap:68px;align-items:start;border-bottom:1px solid var(--line);display:grid;gap:68px;grid-template-columns:minmax(0,.8fr) minmax(360px,1fr);padding-bottom:58px}.project-detail-hero h1{font-size:clamp(2.55rem,4.8vw,5rem);letter-spacing:0;line-height:.98;margin:0}.project-detail-role{color:var(--text-soft);font-size:1.1rem;font-weight:900;margin:18px 0 0}.project-detail-summary{grid-gap:20px;display:grid;gap:20px}.project-detail-card h2,.project-detail-context h2,.project-detail-summary h2{font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.06;margin:0}.project-detail-card li,.project-detail-context p,.project-detail-summary p,.screenshot-note{color:var(--muted);line-height:1.65}.project-detail-context p,.project-detail-summary p{font-size:1.02rem;margin:0}.project-detail-context{grid-gap:18px;display:grid;gap:18px;max-width:960px;padding:58px 0}.project-screenshots{padding-bottom:58px}.compact-heading{margin-bottom:18px}.screenshot-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(460px,100%),1fr))}.screenshot-grid figure{background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow);margin:0;overflow:hidden}.screenshot-grid img{height:auto;width:100%}.screenshot-grid figcaption{border-top:1px solid var(--line);color:var(--muted);font-size:.86rem;font-weight:800;padding:12px 14px}.screenshot-note{background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);font-weight:800;margin:0 0 36px;max-width:840px;padding:14px 16px}.project-detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.project-detail-card ul{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:16px 0 0;padding:0}.project-detail-card li{padding-left:18px;position:relative}.project-detail-card li:before{background:var(--accent);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:.72em;width:6px}.site-footer img{background:var(--surface);border-radius:8px;height:36px;object-fit:cover;width:36px}@media (max-width:1020px){.contact-section,.hero-section,.section-heading{grid-template-columns:1fr}.hero-section{gap:32px}.case-grid,.proof-grid{grid-template-columns:1fr 1fr}.stack-marquee{grid-template-columns:repeat(4,minmax(0,1fr))}.skill-row{grid-template-columns:40px 32px 1fr}.skill-tags{grid-column:1/-1;justify-content:flex-start}}@media (max-width:760px){:root{--nav-offset:98px}.section-frame{padding:60px 0;width:min(100% - 24px,1760px)}.section-heading{gap:16px;margin-bottom:26px}.hero-section{padding-top:104px}.site-nav{top:10px;width:calc(100% - 20px)}.brand-mark{min-width:auto}.brand-mark small{display:none}.nav-toggle{display:inline-grid}.nav-links{align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:10px;border-radius:var(--radius);box-shadow:var(--shadow);display:none;flex-direction:column;left:0;padding:8px;position:absolute;right:0;top:calc(100% + 8px)}.nav-links.open{display:flex}.nav-links a,.nav-links button{justify-content:space-between;width:100%}.hero-title{font-size:clamp(2.25rem,10.5vw,2.85rem)}.hero-lede{font-size:.98rem}.hero-actions,.resume-actions{display:grid;grid-template-columns:1fr}.button{width:100%}.case-grid,.proof-grid,.stack-marquee{grid-template-columns:1fr}.case-card{min-height:auto}.case-card-top{align-items:flex-start}.timeline-item{gap:8px}.project-detail-grid,.project-detail-hero,.timeline-item{grid-template-columns:1fr}.project-detail-page{padding-top:104px}.project-detail-hero h1{font-size:clamp(2.7rem,14vw,4rem)}.contact-panel{padding:16px}.site-footer{align-items:flex-start;flex-direction:column}}@media (max-width:420px){.hero-title{font-size:2.18rem}.fastfetch-body{font-size:.76rem;gap:18px;grid-template-columns:1fr;padding:18px}.fastfetch-row{grid-template-columns:66px 8px minmax(0,1fr)}}
/*# sourceMappingURL=main.eeaa2b36.css.map*/