:root{--paper:#f8f6ee;--ink:#292c26;--green:#45634a;--orange:#e8a17c;--line:#deded1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #b65a36;outline-offset:5px}.preview{padding:10px 5%;background:#e9ecdf;font-size:10px;letter-spacing:1.3px;display:flex;justify-content:space-between}.preview span{letter-spacing:.4px}.preview a{text-decoration:underline}header{margin:0 5%;height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:30px;font-weight:800;letter-spacing:-1.6px}.brand span{color:var(--green);margin-left:5px}nav{display:flex;gap:36px;font-size:13px}.available{font-size:11px}.available i,.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:7px}.hero{max-width:1400px;margin:auto;padding:68px 7% 60px;display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px}.tiny-star{font-size:20px;vertical-align:middle;margin-right:8px;color:var(--green)}h1{font-family:Manrope,sans-serif;font-size:clamp(48px,5.4vw,80px);line-height:1.12;letter-spacing:-4px;margin:23px 0}em{font-family:Georgia,serif;font-weight:400;color:var(--green)}h1 em{position:relative}h1 em:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:4px;background:#c6d5ac;border-radius:50%;transform:rotate(-5deg)}.outline{color:#6e7465}.hero-copy>p{font-size:15px;line-height:1.8;color:#77796d}.mode-label{font-size:12px;margin:28px 0 10px;color:var(--green)}.mode-label span{font-size:24px;display:inline-block;margin-left:12px}.switch{display:inline-flex;padding:5px;background:#e8eadf;border:1px solid #daddcc;border-radius:13px;box-shadow:0 6px 0 #d7dcc940}.switch button{border:0;background:none;padding:15px 19px;border-radius:9px;font-size:12px;color:#61695a;transition:background .25s,transform .25s}.switch button.active{background:var(--green);color:white;box-shadow:0 3px 7px #2b402126}.explore{display:flex;justify-content:space-between;width:260px;margin-top:30px;font-size:13px;border-bottom:1px solid #848b76;padding-bottom:12px}.explore span:last-child{font-size:22px}.world{height:510px;position:relative;display:flex;align-items:center;justify-content:center}.portrait{width:320px;height:360px;background:#dee5c9;border-radius:46% 46% 40% 40%;overflow:hidden;position:relative;transform:rotate(-3deg);border:1px solid #cad3b6}.portrait svg{width:100%;height:100%;transform:scale(1.05);transform-origin:bottom}.orbit{position:absolute;width:435px;height:420px;border:1px dashed #d5d7c6;border-radius:50%;transform:rotate(-20deg)}.orbit-two{width:490px;height:320px;transform:rotate(35deg)}.note{position:absolute;z-index:2;box-shadow:3px 5px 0 #3136260a;font-family:Georgia,serif;font-style:italic}.note-one{top:49px;left:0;background:#f0dab7;padding:18px;transform:rotate(-9deg);font-size:16px}.note-two{right:-5px;top:288px;background:#eee5f0;padding:18px 24px;transform:rotate(9deg);font-size:19px;line-height:1.4}.note-two:before{content:'';position:absolute;top:-10px;left:40%;width:35px;height:20px;background:#ffffff80}.spark{position:absolute;color:var(--green)}.s1{font-size:65px;right:8px;top:40px}.s2{font-size:65px;left:6px;bottom:90px}.s3{font-size:35px;right:50px;bottom:70px}.idea{position:absolute;left:15px;top:180px;z-index:3;width:58px;height:58px;border-radius:50%;border:1px solid #c4cbb5;background:var(--paper);font-size:35px;color:var(--green);transition:transform .3s}.idea:hover{transform:rotate(90deg)}.character-caption{position:absolute;bottom:40px;font-size:12px}.character-caption>span:last-child{margin-left:20px;color:#929585;font-family:Georgia,serif;font-style:italic}.portrait-disclaimer{position:absolute;bottom:17px;font-size:9px;color:#8c907f}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:10px;letter-spacing:2px}.ticker b{color:var(--green);font-size:23px}.work{padding:72px 6%}.section-top{display:flex;justify-content:space-between;align-items:end}.section-top h2,h2{font-family:Manrope,sans-serif;letter-spacing:-1.8px;font-size:39px;font-weight:500;margin:18px 0}.section-top>p{font-size:12px;line-height:1.7;color:#858677;margin-bottom:23px}.work-toolbar{display:flex;justify-content:space-between;align-items:center;margin:26px 0}.filters{display:flex;gap:8px}.filters button{background:none;border:1px solid transparent;border-radius:30px;padding:9px 16px;font-size:11px;color:#737969}.filters button.selected{background:#e7eadc;border-color:#d6dcc8;color:#354a32}.filters small{margin-left:5px;font-size:9px}#collection{font-size:11px;color:var(--green)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{padding:0;text-align:left;background:transparent;border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-7px) rotate(-.5deg);box-shadow:0 12px 24px #343d2210}.card-art{height:225px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.art-curio{background:#e9d9b7}.art-kindly{background:#dce4d1}.art-u4u{background:#dedfec}.art-dress{background:#efdad5}.art-insta{background:#e0dfce}.art-tooarty{background:#f1debb}.card-num{position:absolute;left:15px;top:15px;font-size:9px;letter-spacing:1px;opacity:.65}.card-tag{position:absolute;right:12px;top:12px;font-size:9px;background:#ffffff70;padding:6px 9px;border-radius:20px}.mock{transform:rotate(-7deg);background:#fbf8ee;box-shadow:5px 10px 20px #40392315;border-radius:10px;padding:22px;width:160px;min-height:132px}.mock b{font-family:Georgia,serif;font-size:33px;font-weight:400}.mock small{display:block;margin-top:7px;font-size:9px;line-height:1.5}.curio-sun{position:absolute;right:30px;bottom:20px;font-size:88px;color:#a95d36}.kind-heart{font-size:106px;color:#658464;transform:rotate(-12deg);text-shadow:5px 7px 0 #c1ceb6}.art-kindly .mock{position:absolute;width:105px;min-height:0;right:26px;bottom:22px;padding:15px;transform:rotate(9deg)}.art-kindly .mock b{font-size:16px}.u-bubble{background:#767da3;color:white;font-size:57px;font-weight:700;padding:12px 25px;border-radius:50px 50px 50px 0;transform:rotate(-8deg);box-shadow:15px 18px 0 #b0b5d1}.dress-icon{font-size:100px;color:#a86f67}.mood{display:grid;grid-template-columns:1fr 1fr;gap:7px;transform:rotate(-8deg);padding:9px;background:#fcfbf5;box-shadow:8px 8px 0 #c7c8b6}.mood i{width:60px;height:67px;background:#b3bea5;border-radius:4px}.mood i:nth-child(2){background:#d5a679;border-radius:40px 40px 0 0}.mood i:nth-child(3){background:#cfbea5}.mood i:nth-child(4){background:#8a9c87;border-radius:50%}.art-word{font-family:Georgia,serif;font-size:53px;color:#b15b36;transform:rotate(-12deg);letter-spacing:-4px}.art-word:after{content:'✳';color:#69816a;font-size:80px;position:absolute;right:-40px;top:22px}.card-copy{padding:20px}.card-copy h3{font-size:19px;font-weight:500;letter-spacing:-.5px;margin:0 0 9px;display:flex;justify-content:space-between}.card-copy p{font-size:11px;color:#7a7e70;margin:0;line-height:1.6}.garden-footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;font-size:11px;color:#7b816e}.garden-footer button{border:0;background:none;color:var(--green);font-size:11px}.about{margin:20px 6% 70px;padding:60px;background:#e8ecde;border-radius:18px;display:flex;gap:65px;align-items:center}.about-star{font-size:140px;color:#748769}.about p{max-width:580px;color:#717964;font-size:14px;line-height:1.8}.about a{display:inline-block;border-bottom:1px solid #839574;padding-bottom:8px;font-size:13px;margin-top:15px}footer{padding:30px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#7a806f}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.metrics article{padding:35px;background:#e8ecdf;border-radius:15px}.metrics strong{font-size:55px;color:var(--green);font-weight:500}.metrics small{color:#717964}.career{border:1px solid var(--line);padding:25px 35px;border-radius:15px}.career>a{font-size:12px;text-decoration:underline}.career p{padding:20px 0;border-top:1px solid var(--line);font-size:20px;display:flex;justify-content:space-between;gap:20px}.career p span{font-size:12px;color:#7a806f}dialog{max-width:540px;width:calc(100% - 36px);padding:45px;border:1px solid #cbd1bd;border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #1e2b2a35}dialog::backdrop{background:#27322570;backdrop-filter:blur(6px)}.close{position:absolute;right:18px;top:12px;font-size:30px;background:none;border:0}.dialog-done{padding:13px 22px;border:0;border-radius:8px;background:var(--green);color:white;margin-top:20px}dialog p{font-size:14px;line-height:1.8;color:#747969}dialog h2{font-size:45px}.draft{font-size:10px!important;background:#e8ecde;padding:12px;border-radius:6px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--green);color:white;padding:15px 25px;border-radius:12px;font-size:13px;transition:.25s;z-index:10}#toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}body.professional .portrait{background:#dbe0e7}body.professional .note-one{background:#dce4ed}body.professional .note-two{background:#e8e5cc}@media(min-width:1500px){.work,.about,footer{max-width:1300px;margin-left:auto;margin-right:auto}}@media(max-width:1000px){.available{display:none}.hero{padding:45px 5%;grid-template-columns:1.1fr 1fr}h1{font-size:57px}.world{transform:scale(.85);margin-left:-20px}.switch button{padding:14px 10px}.note-one{left:-20px}.cards{gap:15px}.section-top h2{font-size:32px}.ticker{font-size:8px;gap:10px}}@media(max-width:700px){.preview{font-size:8px}.preview>span{font-size:8px}header{height:80px}.brand{font-size:25px}nav{gap:18px;font-size:11px}.hero{display:flex;flex-direction:column;padding:40px 6% 0;align-items:stretch}.hero-copy{text-align:center}h1{font-size:55px;letter-spacing:-3px}.hero-copy>p{font-size:13px}.eyebrow{font-size:9px}.mode-label{margin-top:22px}.switch button{padding:14px 17px;font-size:11px}.explore{margin:25px auto 0}.world{width:100%;height:440px;transform:scale(.85);margin:-10px 0}.orbit{width:360px;height:370px}.orbit-two{width:370px;height:280px}.note-one{left:-10px;top:25px}.note-two{right:-15px;top:260px}.portrait{width:280px;height:320px}.character-caption{bottom:5px}.portrait-disclaimer{bottom:-18px}.ticker{overflow:hidden;white-space:nowrap;justify-content:start;padding:15px 6%;gap:20px}.ticker span:nth-of-type(n+3),.ticker b:nth-of-type(n+3){display:none}.work{padding:45px 6%}.section-top{display:block}.section-top h2{font-size:32px}.section-top>p br{display:none}.work-toolbar{align-items:start;gap:16px;flex-direction:column}.filters{gap:0}.filters button{padding:8px 10px;font-size:10px}.cards{grid-template-columns:1fr 1fr;gap:12px}.card-art{height:170px}.mock{transform:rotate(-7deg) scale(.8)}.card-copy{padding:13px}.card-copy h3{font-size:16px}.card-copy p{font-size:10px}.curio-sun{font-size:60px;right:0}.u-bubble{font-size:39px}.art-word{font-size:38px}.art-word:after{font-size:55px;right:-16px}.art-kindly .mock{right:-5px;bottom:0}.garden-footer{flex-direction:column;align-items:start;line-height:1.7}.about{padding:30px;gap:0}.about-star{display:none}.about h2{font-size:30px}.about p{font-size:12px}footer{flex-wrap:wrap;gap:20px}footer>span{order:3;width:100%;font-size:10px}.metrics{gap:8px}.metrics article{padding:15px 10px}.metrics strong{font-size:32px}.metrics p{font-size:11px}.metrics small{font-size:9px}.career{padding:20px}.career p{flex-direction:column;font-size:18px}.career p span{font-size:11px}#toast{width:90%;text-align:center}.card-tag{font-size:8px;padding:5px;right:8px}.card-num{left:8px;font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
body{overflow-x:clip}

/* Checkpoint 1, personalized. Three warm alternatives to the blue professional mode. */
body{--pro-bg:#2c2230;--pro-ink:#f6efe5;--pro-accent:#e7cba2;--pro-panel:#3a2e40;--pro-soft:#46374b;--pro-line:#64506a;--pro-muted:#cdbfcd;--pro-portrait:#766574;--pro-note:#e4ccd4;--pro-note-ink:#452c3c}
body[data-palette=forest]{--pro-bg:#1e3028;--pro-ink:#f4f1e4;--pro-accent:#d4d8aa;--pro-panel:#2c4337;--pro-soft:#344e40;--pro-line:#57735f;--pro-muted:#bacabd;--pro-portrait:#87967b;--pro-note:#dae0c6;--pro-note-ink:#334630}
body[data-palette=espresso]{--pro-bg:#302522;--pro-ink:#f6eee4;--pro-accent:#e4b38d;--pro-panel:#42312b;--pro-soft:#513d33;--pro-line:#7a5d4c;--pro-muted:#d0beb3;--pro-portrait:#ac8870;--pro-note:#ecd3bf;--pro-note-ink:#553b2d}
body,.preview,.palette-bar,.switch,.ticker,.about,.portrait,.note,.idea,.metrics article,.career,.outline,.hero-copy>p,.orbit{transition:background-color .45s ease,color .45s ease,border-color .45s ease,box-shadow .45s ease}
body.professional{color-scheme:dark;--paper:var(--pro-bg);--ink:var(--pro-ink);--green:var(--pro-accent);--line:var(--pro-line)}
.professional .preview{background:var(--pro-panel);color:var(--pro-muted)}
.professional .hero{background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:44px 44px}
.professional .outline{color:var(--pro-muted)}
.professional h1 em:after{background:var(--pro-accent);opacity:.4}
.professional .hero-copy>p,.professional .section-top>p,.professional .character-caption>span:last-child,.professional .portrait-disclaimer,.professional .career p span,.professional .metrics small,.professional footer{color:var(--pro-muted)}
.professional .switch{background:var(--pro-panel);border-color:var(--pro-line);box-shadow:0 5px 20px #00000014}
.professional .switch button{color:var(--pro-muted)}
.professional .switch button.active{background:var(--pro-accent);color:var(--pro-bg);box-shadow:0 3px 7px #0002}
.professional .explore{border-color:var(--pro-line)}
.professional .portrait{background:var(--pro-portrait);border-color:var(--pro-line)}
.professional .orbit{border-color:var(--pro-line)}
.professional .note-one{background:var(--pro-soft);color:var(--pro-ink)}
.professional .note-two{background:var(--pro-note);color:var(--pro-note-ink)}
.professional .idea{background:var(--pro-panel);border-color:var(--pro-line)}
.professional .ticker{background:var(--pro-panel);color:var(--pro-muted)}
.professional .metrics article{background:var(--pro-panel);border:1px solid var(--pro-line)}
.professional .career{background:var(--pro-panel)}
.professional .about{background:var(--pro-panel);border:1px solid var(--pro-line)}
.professional .about-star{color:var(--pro-accent)}
.professional .about p{color:var(--pro-muted)}
.professional .about a{border-color:var(--pro-line)}
.professional #toast{background:var(--pro-accent);color:var(--pro-bg)}
.professional button:focus-visible,.professional a:focus-visible{outline-color:var(--pro-accent)}
.palette-bar{display:flex;justify-content:center;align-items:center;gap:23px;padding:13px 5%;border-bottom:1px solid var(--line);background:#f0f0e6}
.palette-bar>span{font-size:8px;letter-spacing:1.3px;color:#717667;white-space:nowrap}
.palette-bar>div{display:flex;gap:7px;flex-wrap:wrap}
.palette-bar button{display:flex;gap:7px;align-items:center;border:1px solid #cbd1c0;background:transparent;color:#5d6557;padding:7px 11px;border-radius:30px;font-size:10px}
.palette-bar button[aria-pressed=true]{background:#ffffffa0;border-color:#7f8a72;color:#303f29}
.swatch{width:9px;height:9px;display:block;border-radius:50%}.swatch-plum{background:#664d64}.swatch-forest{background:#48624b}.swatch-espresso{background:#8e6145}
.professional .palette-bar{background:var(--pro-bg)}
.professional .palette-bar>span{color:var(--pro-muted)}
.professional .palette-bar button{color:var(--pro-muted);border-color:var(--pro-line)}
.professional .palette-bar button[aria-pressed=true]{background:var(--pro-panel);color:var(--pro-ink);border-color:var(--pro-accent)}
.personal-portrait{background:#dee5c9}
.personal-portrait svg{position:absolute;width:440px;height:440px;max-width:none;left:50%;bottom:-73px;transform:translateX(-50%);transform-origin:center}
.gaze{will-change:transform}
@media(max-width:700px){.palette-bar{flex-direction:column;gap:8px;padding:12px 4%}.palette-bar>span{font-size:7px}.palette-bar button{font-size:9px;padding:7px 9px;gap:5px}.palette-bar>div{gap:5px}.personal-portrait svg{width:390px;height:390px;bottom:-65px}}
@media(prefers-reduced-motion:reduce){body,.preview,.palette-bar,.switch,.ticker,.about,.portrait,.note,.idea,.metrics article,.career,.outline,.hero-copy>p,.orbit{transition:none}.gaze{will-change:auto}}
/* Override the original checkpoint's higher-specificity blue portrait accents. */
body.professional .portrait{background:var(--pro-portrait);border-color:var(--pro-line)}
body.professional .note-one{background:var(--pro-soft);color:var(--pro-ink)}
body.professional .note-two{background:var(--pro-note);color:var(--pro-note-ink)}
/* Full experience, faithfully restored from the original portfolio. */
.career>h3{margin:4px 0 25px;font-size:24px;letter-spacing:-.6px;font-weight:500}
.experience-entry{border-top:1px solid var(--line);padding:30px 0}
.experience-entry:last-child{padding-bottom:8px}
.company-heading{display:flex;align-items:center;gap:17px;margin-bottom:20px}
.company-monogram{width:45px;height:45px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--green);background:#ffffff08;font-weight:500}
.company-heading h4{font-size:21px;font-weight:500;letter-spacing:-.5px;margin:0 0 5px}
.company-role{font-size:12px;color:#747c6a}
.company-tenure{display:flex;flex-direction:column;gap:6px;margin-left:auto;text-align:right;color:#747c6a;font-size:11px;line-height:1.5}
.experience-achievements{margin:0 0 0 62px;padding-left:17px;max-width:920px}
.experience-achievements li{font-size:13px;line-height:1.9;margin-bottom:11px;color:#68715f;padding-left:5px}
.experience-achievements li:last-child{margin-bottom:0}
.experience-achievements li::marker{color:var(--green);font-size:10px}
.experience-achievements strong{color:var(--ink);font-weight:600}
body.professional .company-role,body.professional .company-tenure,body.professional .experience-achievements li{color:var(--pro-muted)}
.about>div{min-width:0}.about p{max-width:650px}
@media(max-width:700px){.career>h3{font-size:21px;line-height:1.4;margin-bottom:20px}.experience-entry{padding:24px 0}.company-heading{flex-wrap:wrap;gap:12px;margin-bottom:17px}.company-monogram{width:38px;height:38px;font-size:12px;border-radius:9px}.company-heading h4{font-size:19px}.company-role{font-size:11px}.company-tenure{flex-basis:100%;margin-left:50px;text-align:left;flex-direction:row;flex-wrap:wrap;gap:4px 12px;font-size:10px}.experience-achievements{margin-left:0;padding-left:16px}.experience-achievements li{font-size:12px;line-height:1.85;padding-left:2px}.about h2{font-size:29px;line-height:1.25}.about p{line-height:1.9}}

/* Project browser: the garden stays behind a focused, centered window. */
body.preview-open{overflow:hidden}
#project-dialog{width:min(1100px,94vw);max-width:1100px;max-height:90dvh;margin:auto;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 35px 120px #17130e55;overflow:auto}
#project-dialog::backdrop{background:#201a16a8;backdrop-filter:blur(8px)}
#project-dialog .close{position:absolute;top:9px;right:12px;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:inherit;font-size:26px;z-index:2}
#project-dialog .close:hover{background:#8882}
.project-toolbar{min-height:56px;padding:12px 62px 12px 22px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line)}
.browser-dots{font-size:11px;letter-spacing:3px;color:#a49b87;white-space:nowrap}
.project-address{flex:1;font-size:11px;letter-spacing:.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7}
.preview-external{display:inline-block;font-size:12px;font-weight:600;border-bottom:1px solid currentColor;padding:5px 0;white-space:nowrap}
.project-caption{padding:20px 26px;display:flex;align-items:baseline;gap:24px}
#project-dialog .project-caption h2{font-size:26px;margin:0;letter-spacing:-1px;white-space:nowrap}
#project-dialog .project-caption p{margin:0;font-size:13px;line-height:1.6;color:inherit;opacity:.75}
.website-stage{height:min(58dvh,600px);min-height:260px;background:white;border-block:1px solid var(--line)}
.website-stage iframe{width:100%;height:100%;display:block;border:0;background:#fff}
#project-dialog .preview-help{margin:12px 26px;font-size:11px;color:inherit;opacity:.8}
#project-dialog .preview-help a{font-size:11px;margin-left:6px}
#project-dialog .dialog-done{display:block;margin:16px 26px 22px;padding:10px 0;background:none;color:inherit;border:0;border-bottom:1px solid var(--line);font-size:12px}
.project-unavailable{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;padding:26px;background:#88888809;border-block:1px solid var(--line)}
.project-cover{height:280px;border-radius:12px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.project-cover .mock{position:relative;transform:rotate(-5deg)}
#project-dialog .project-unavailable h3{font-family:Georgia,serif;font-weight:400;font-size:30px;line-height:1.2;margin:16px 0}
#project-dialog .project-unavailable p{font-size:13px;line-height:1.7;color:inherit;opacity:.75;max-width:320px}
@media(max-width:640px){#project-dialog{width:94vw;max-height:92dvh;border-radius:12px}.browser-dots{display:none}.project-toolbar{gap:10px;padding-left:16px}.project-address{font-size:9px}.project-caption{display:block;padding:18px}.project-caption p{margin-top:8px!important}.project-unavailable{grid-template-columns:1fr;gap:18px;padding:18px}.project-cover{height:160px}.website-stage{height:55dvh}.project-unavailable h3{font-size:25px!important}}
.card-action{display:inline-block;margin-top:16px;font-size:11px;font-weight:600;color:var(--green);border-bottom:1px solid currentColor;padding-bottom:4px}

/* Enter the product at its natural viewport size, with one quiet way home. */
#project-dialog.immersive{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;overflow:hidden;background:#faf9f6;box-shadow:none;color:#322b25}
#project-dialog.immersive #dialog-content{height:100%;display:flex;flex-direction:column;min-height:0}
#project-dialog.immersive .experience-bar{flex:0 0 52px;display:flex;align-items:center;justify-content:space-between;padding:0 24px 0 194px;border-bottom:1px solid #ddd8d0;background:#faf9f6;gap:12px}
#project-dialog.immersive .experience-bar h2{margin:0;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.experience-bar a{font-size:12px;white-space:nowrap;color:#635b52;padding:8px 0}
#project-dialog.immersive .close{left:16px;right:auto;top:9px;width:auto;height:34px;padding:0 12px;font-size:12px;font-weight:600;border-radius:6px;display:block;color:#322b25;border-right:1px solid #ddd8d0}
#project-dialog.immersive .website-stage{flex:1;min-height:0;height:auto;border:0;width:100%}
#project-dialog.immersive .dialog-done{display:none}
#project-dialog.immersive[open]{animation:enter-product .22s ease-out}
@keyframes enter-product{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:540px){#project-dialog.immersive .experience-bar{padding:0 14px 0 164px;flex-basis:48px;justify-content:flex-end}#project-dialog.immersive .experience-bar h2{display:none}#project-dialog.immersive .close{left:6px;top:7px;font-size:11px}.experience-bar a{font-size:11px}}
@media(prefers-reduced-motion:reduce){#project-dialog.immersive[open]{animation:none}}
