@font-face{font-family:__Bricolage_Grotesque_ac327c;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/93a6e477e1480c92-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Bricolage_Grotesque_ac327c;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c7e0cf6c760983e7-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Bricolage_Grotesque_ac327c;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9d5a263311222317-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Bricolage_Grotesque_Fallback_ac327c;src:local("Arial");ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.00%;size-adjust:105.43%}.__className_ac327c{font-family:__Bricolage_Grotesque_ac327c,__Bricolage_Grotesque_Fallback_ac327c;font-style:normal}.__variable_ac327c{--font-sans:"__Bricolage_Grotesque_ac327c","__Bricolage_Grotesque_Fallback_ac327c"}@font-face{font-family:__Newsreader_7491f6;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/eb251072d3b5478c.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Newsreader_7491f6;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e92f802bb57ccffe.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Newsreader_7491f6;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4b9bb515ce6d026f.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Newsreader_7491f6;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Newsreader_7491f6;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/665e920483964785.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Newsreader_7491f6;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/5611c55482296524.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.__className_7491f6{font-family:__Newsreader_7491f6}.__variable_7491f6{--font-body:"__Newsreader_7491f6"}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/19150647d2c2f572-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/000030d1699f2fb3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/1926da171a0ba1a5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:italic;font-weight:800;font-display:swap;src:url(/_next/static/media/78d0dd042ac6d54d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_ac3934;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_Fallback_ac3934;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_ac3934{font-family:__Playfair_Display_ac3934,__Playfair_Display_Fallback_ac3934}.__variable_ac3934{--font-old:"__Playfair_Display_ac3934","__Playfair_Display_Fallback_ac3934"}@font-face{font-family:__Lobster_Two_82e2b2;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/5ee457a0da602c9f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Lobster_Two_Fallback_82e2b2;src:local("Arial");ascent-override:122.47%;descent-override:30.62%;line-gap-override:0.00%;size-adjust:81.65%}.__className_82e2b2{font-family:__Lobster_Two_82e2b2,__Lobster_Two_Fallback_82e2b2;font-weight:700;font-style:italic}.__variable_82e2b2{--font-script:"__Lobster_Two_82e2b2","__Lobster_Two_Fallback_82e2b2"}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--accent:#6b3f24;--accent2:#4a2c1a;--accent-dim:rgba(107,63,36,.12);--on-accent:#f9f6f3;--radius:2px;--nav-h:72px}[data-theme=light]{--bg:#f9f6f3;--bg2:#f0e5d9;--bg3:#f0e5d9;--border:#dccdbe;--text:#3b2417;--muted:#7a5b47;--card:#f9f6f3;--shadow:0 12px 40px rgba(59,36,23,.08)}[data-theme=dark]{--bg:#1a120e;--bg2:#241810;--bg3:#2c1e16;--border:#4a3628;--text:#f3e6d8;--muted:#c4a88c;--card:#221610;--accent:#c79a6b;--accent2:#e4cdb3;--accent-dim:hsla(31,45%,60%,.16);--on-accent:#1a120e;--shadow:0 12px 40px rgba(0,0,0,.4)}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-body),Georgia,"Times New Roman",serif;line-height:1.6;font-optical-sizing:auto;transition:background .3s,color .3s;overflow-x:hidden}::-moz-selection{background:var(--accent);color:var(--on-accent)}::selection{background:var(--accent);color:var(--on-accent)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:var(--bg);border-bottom:1px solid var(--border);transition:border-color .3s,background .3s}.nav-logo{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-weight:800;font-size:22px;font-variation-settings:"wdth" 75;letter-spacing:-.02em;text-decoration:none}.nav-logo,.nav-logo span{color:var(--text)}.nav-right{display:flex;align-items:center;gap:8px}.nav-links{display:flex;gap:4px;margin-right:16px}.nav-links a{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:15px;font-weight:500;letter-spacing:0;color:var(--text);text-decoration:none;padding:8px 14px;border-radius:var(--radius);transition:-webkit-text-decoration .2s;transition:text-decoration .2s;transition:text-decoration .2s,-webkit-text-decoration .2s}.nav-links a:hover{text-decoration:underline;text-underline-offset:.35em}.toggle-btn{background:transparent;border:1.5px solid var(--text);color:var(--text);font-size:13px;font-weight:600;letter-spacing:0;padding:6px 12px;border-radius:var(--radius);cursor:pointer;font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;transition:all .2s}.toggle-btn:hover{background:var(--text);color:var(--on-accent);border-color:var(--text)}section{padding:100px 48px;max-width:1240px;margin:0 auto;scroll-margin-top:var(--nav-h)}.section-label{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--text);display:flex;align-items:center;gap:12px;margin-bottom:48px}.section-label:after{content:"";flex:1;height:1px;background:var(--border);max-width:80px}#hero{min-height:100vh;padding-top:calc(var(--nav-h) + 56px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.hero-grid-bg{display:none}.hero-eyebrow{font-size:18px;font-weight:500;letter-spacing:0;margin-bottom:20px;animation:fadeUp .6s ease both}.hero-eyebrow,.hero-name{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;color:var(--text)}.hero-name{font-size:clamp(64px,12vw,128px);font-weight:800;line-height:.86;font-variation-settings:"wght" 800,"wdth" 100;letter-spacing:-.035em;animation:fadeUp .6s ease .08s both}.hero-name .line2{color:var(--text);display:block}.hero-sub{font-family:var(--font-body),Georgia,serif;font-size:clamp(20px,2.4vw,28px);font-weight:400;color:var(--text);margin-top:36px;max-width:640px;line-height:1.45;animation:fadeUp .6s ease .16s both}.hero-cta{align-items:center;gap:28px;margin-top:44px;animation:fadeUp .6s ease .24s both}.hero-cta,.hero-stats{display:flex;flex-wrap:wrap}.hero-stats{gap:56px;margin-top:72px;padding-top:36px;border-top:1px solid var(--border);animation:fadeUp .6s ease .32s both}.hero-stat{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.hero-stat-num{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:48px;font-weight:700;line-height:1;letter-spacing:-.02em;font-variation-settings:"wdth" 85;color:var(--accent)}.hero-stat-label{font-family:var(--font-body),Georgia,serif;font-style:italic;font-size:16px;font-weight:400;color:var(--muted)}.hero-stat-num-text{font-size:32px;letter-spacing:-1px}.btn{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:16px;font-weight:600;letter-spacing:0;padding:16px 28px;border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;gap:8px;border:none}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent2)}.btn-secondary{background:transparent;color:var(--text);border:none;border-bottom:1.5px solid var(--text);border-radius:0;padding:8px 0;font-size:18px}.btn-secondary:hover{opacity:.7}#about{padding-top:0}.about-grid{display:grid;grid-template-columns:1fr 340px;gap:64px;align-items:start}.about-text p{font-family:var(--font-body),Georgia,serif;font-size:18px;color:var(--muted);line-height:1.75;margin-bottom:20px}.about-text p strong{color:var(--text);font-weight:600}.about-card{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:28px;box-shadow:var(--shadow)}.about-card-title{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--text);margin-bottom:20px}.tech-grid{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background:var(--bg3);border:1px solid var(--border);color:var(--text);font-size:11px;letter-spacing:.3px;padding:6px 12px;border-radius:2px;transition:all .2s}.tech-tag:hover{border-color:var(--accent);background:var(--accent-dim)}.exp-list{display:flex;flex-direction:column;gap:0}.exp-item{background:transparent;border:none;padding:8px 0 48px;cursor:default;margin:0}.exp-axis{position:relative;height:1.5rem;margin-bottom:.35rem}.exp-axis span{position:absolute;top:0;transform:translateX(-50%);font-family:var(--font-old),Georgia,serif;font-style:italic;font-weight:500;font-size:.9rem;color:var(--muted)}.exp-timeline-track{position:relative;height:16px;margin-bottom:1.1rem}.exp-timeline-track:before{content:"";left:0;right:0;height:1px}.exp-timeline-tick,.exp-timeline-track:before{position:absolute;bottom:0;background:var(--border)}.exp-timeline-tick{width:1px;height:16px}.exp-timeline-bar{position:absolute;bottom:0;height:10px;min-width:6px;background-color:var(--jc,var(--text));background-image:repeating-linear-gradient(135deg,hsla(30,33%,96%,.3) 0 2px,transparent 2px 5px);left:calc(var(--s, 0) * 1%);width:calc(var(--l, 0) * 1%)}.exp-row{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.exp-company{font-family:var(--font-script),Georgia,serif;font-size:clamp(2.1rem,3.8vw,3.1rem);font-weight:700;font-style:italic;letter-spacing:0;line-height:1.1}.exp-date{font-family:var(--font-old),Georgia,serif;font-style:italic;font-size:1.1rem;font-weight:500;color:var(--muted)}.exp-desc{font-family:var(--font-body),Georgia,serif;font-size:18px;color:var(--text);margin:12px 0 18px;line-height:1.6;max-width:720px}.exp-tags{display:flex;flex-wrap:wrap;gap:8px 18px}.exp-tag{background:none;border:none;color:var(--muted);font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:.92rem;font-weight:500;padding:0}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.project-card{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:32px;transition:all .25s;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent2),var(--accent));transform:scaleX(0);transform-origin:left;transition:transform .3s}.project-card:hover:before{transform:scaleX(1)}.project-card:hover{border-color:var(--border);box-shadow:var(--shadow);transform:translateY(-3px)}.project-number{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:48px;font-weight:800;color:var(--border);line-height:1;margin-bottom:16px;transition:color .3s}.project-card:hover .project-number{color:var(--accent-dim)}.project-name{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:22px;font-weight:700;margin-bottom:10px}.project-desc{font-family:var(--font-body),Georgia,serif;font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:20px}.project-link{font-size:14px;font-weight:600;letter-spacing:0;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:6px;border-bottom:1.5px solid var(--accent);transition:gap .2s,opacity .2s}.project-link:hover{gap:10px;opacity:.75}.project-placeholder{background:var(--card);border:1px dashed var(--border);border-radius:4px;padding:32px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;min-height:200px}.project-placeholder-text{font-family:var(--font-body),Georgia,serif;font-size:15px;color:var(--muted);text-align:center;line-height:1.6}#cv{text-align:center;padding:80px 48px}.cv-inner{max-width:640px;margin:0 auto;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:56px;position:relative;overflow:hidden}.cv-inner:after{content:"";position:absolute;bottom:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:var(--accent-dim);pointer-events:none}.cv-title{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:36px;font-weight:800;margin-bottom:16px}.cv-sub{font-family:var(--font-body),Georgia,serif;font-size:16px;color:var(--muted);margin-bottom:32px;line-height:1.7}.cv-btns{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;align-items:center}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.contact-info h3{font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:36px;font-weight:700;margin-bottom:16px}.contact-info p{font-family:var(--font-body),Georgia,serif;font-size:16px;color:var(--muted);line-height:1.8;margin-bottom:28px}.contact-links{display:flex;flex-direction:column;gap:10px}.contact-link{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--muted);text-decoration:none;transition:color .2s;padding:10px 0;border-bottom:1px solid var(--border)}.contact-link span,.contact-link:hover{color:var(--accent)}.contact-link span{font-size:14px;width:20px}.contact-form{gap:14px}.contact-form,.form-field{display:flex;flex-direction:column}.form-field{gap:6px}.form-field label{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:600}.form-field input,.form-field textarea{background:var(--bg3);border:1px solid var(--border);color:var(--text);font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:14px;padding:12px 16px;border-radius:var(--radius);outline:none;transition:border-color .2s;resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent)}.form-field textarea{min-height:120px}.form-submit{background:var(--accent);color:var(--on-accent);font-family:var(--font-sans),ui-sans-serif,system-ui,sans-serif;font-size:15px;font-weight:600;padding:14px 28px;border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s;align-self:flex-start}.form-submit:hover{transform:translateY(-1px);filter:brightness(1.05)}.form-success{display:none;background:var(--accent-dim);border:1px solid var(--accent);color:var(--accent);font-size:14px;padding:14px 18px;border-radius:var(--radius)}footer{border-top:1px solid var(--border);padding:28px 48px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);flex-wrap:wrap;gap:12px;max-width:100%}footer a{color:var(--accent);text-decoration:none}footer a:hover{opacity:.75}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.reveal{opacity:1;transform:none}@media (max-width:768px){nav{padding:0 20px}.nav-links{display:none}section{padding:70px 20px}#hero{padding-top:calc(var(--nav-h) + 40px)}.hero-name{letter-spacing:-2px}.hero-stats{gap:28px;margin-top:48px}.hero-stat-num{font-size:36px}.exp-axis{font-size:10px}.about-grid,.contact-grid,.projects-grid{grid-template-columns:1fr}footer{padding:20px;flex-direction:column;text-align:center}.cv-inner{padding:36px 24px}}