/* 1. Variables */
:root{--cream:#fff9e9;--paper:#fffdf5;--mint:#c9e7d9;--mint-deep:#a9cfb9;--sage:#78947b;--pink:#edc4c8;--yellow:#f3dc8b;--ink:#39483c;--muted:#788275;--shadow:0 18px 36px #5c665226,0 4px 10px #5c66521a;--serif:'DM Serif Display',Georgia,serif;--script:'Kalam','Comic Sans MS',cursive;--sans:'DM Sans',Arial,sans-serif}
/* 2. Reset */
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:#e6eddb;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit}button{font:inherit;color:inherit}::selection{background:var(--pink);color:var(--ink)}
/* 3. Typography */
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif)}.script-heading,.hand-note,.signature{font-family:var(--script)}.eyebrow,.page-number,.zone-label,.chapter-stamp,.tiny-label,.index-tab{font-size:.69rem;letter-spacing:.14em;text-transform:uppercase}
/* 4. Global layout */
.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:10px 15px;background:var(--paper);transform:translateY(-160%)}.skip-link:focus{transform:none}.paper{position:relative;background-color:var(--paper);background-image:radial-gradient(#c8b99b19 .65px,transparent .65px),linear-gradient(90deg,#a18e6810 1px,transparent 1px);background-size:5px 5px,100% 100%;box-shadow:var(--shadow)}.paper:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background:linear-gradient(105deg,transparent 15%,#fff 45%,transparent 75%);mix-blend-mode:soft-light}.journal-shell{position:relative;max-width:1330px;margin:auto;padding:70px 6vw 110px}.journal-intro{position:relative;max-width:920px;margin:0 auto 100px;padding:35px 5% 40px;text-align:center}.chapter-stamp{display:inline-block;padding:6px 12px;border:1px solid #a7826b;border-radius:50%;color:#a7826b;transform:rotate(-5deg)}.journal-intro h2{font-size:clamp(3.4rem,7.4vw,6.3rem);line-height:.93;margin:25px 0 22px}.journal-intro h2 span{color:#c78d8a}.journal-intro>p{max-width:420px;margin:auto;color:#6b786a}.intro-flower{position:absolute;right:9%;bottom:25px;color:#bb8884;font-size:2rem}.spread{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 auto 115px;max-width:1160px;filter:drop-shadow(0 26px 24px #555b3b24)}.page{min-height:620px;padding:46px clamp(26px,4vw,56px) 38px}.page-left{transform:rotate(-.35deg);border-radius:3px 0 0 4px}.page-right{transform:rotate(.35deg);border-radius:0 3px 4px 0}.page-number{display:block;color:#8a8c75}.binding{position:absolute;z-index:4;left:50%;top:5%;bottom:5%;width:24px;transform:translateX(-50%);display:flex;flex-direction:column;justify-content:space-around;align-items:center}.binding i{display:block;width:25px;height:17px;border:3px solid #bbc2ae;border-left-color:#e8e9dc;border-radius:50%;background:linear-gradient(90deg,#949b8e,#f8f5e8 45%,#a5ab9e);box-shadow:0 2px 3px #52574c3b}.single-sheet,.gallery-sheet,.campaign-sheet,.copy-sheet{max-width:1040px;margin:0 auto 115px;padding:48px clamp(28px,6vw,76px);transform:rotate(.25deg)}.reveal{opacity:0;transform:translateY(22px) rotate(var(--tilt,0deg));transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0) rotate(var(--tilt,0deg))}.side-nav{position:fixed;z-index:15;left:18px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:5px}.side-nav a{display:flex;gap:8px;align-items:center;padding:5px 9px;text-decoration:none;font-size:10px;color:#73806d;background:#fff9e9cc;border-radius:2px 12px 12px 2px;transition:transform .2s,background .2s}.side-nav a span{font-size:8px;color:#b18a83}.side-nav a:hover,.side-nav a.active{background:var(--paper);transform:translateX(5px);color:#3f5747}.mobile-menu,.mobile-nav{display:none}
/* 5. Hero */
.cover{height:max(720px,100svh);min-height:700px;position:relative;overflow:hidden;background:#c8e4d6;color:#3c5143}.cover-sky,.closing-sky{position:absolute;inset:0;background:radial-gradient(ellipse at 72% 26%,#f9efcc 0 6%,transparent 6.3%),linear-gradient(180deg,#c4e3d6 0%,#d9ead9 52%,#bdd5ad 100%)}.cover-sky:before{content:"";position:absolute;width:40vw;height:17vw;left:13%;top:24%;background:#fff8e3;opacity:.22;border-radius:50%;filter:blur(24px)}.cover-grain{position:absolute;inset:0;z-index:2;opacity:.14;pointer-events:none;background-image:radial-gradient(#536351 0.55px,transparent .75px);background-size:4px 4px;mask-image:linear-gradient(transparent,#000)}.cover-top{position:absolute;z-index:3;top:31px;left:5.2%;right:5.2%;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;text-align:center}.cover-top p{font-size:.7rem;line-height:1.35;letter-spacing:.14em;text-transform:uppercase}.signature{text-align:left;font-size:1.35rem;text-decoration:none;line-height:1}.signature span{padding-left:6px;color:#be8d85}.year{text-align:right;font-size:.73rem;letter-spacing:.12em;text-transform:uppercase}.cover-title-wrap{position:absolute;z-index:3;left:0;right:0;top:25%;text-align:center}.cover-title-wrap .eyebrow{margin-bottom:-12px;color:#627b68}.cover h1{position:relative;display:inline-block;margin:0;color:#4d604f;font:italic clamp(6rem,17vw,15.2rem)/.92 var(--serif);letter-spacing:-.065em;text-shadow:2px 3px 0 #f5f0da78}.title-spark{position:absolute;right:-.2em;top:.06em;color:#c28e86;font:normal .22em var(--script)}.cover-subtitle{margin:1.2rem 0 0;font:1.1rem var(--script);color:#607b69;letter-spacing:.05em}.cover-intro{position:absolute;z-index:5;left:8%;bottom:20%;font-size:.71rem;line-height:1.6;letter-spacing:.07em;text-transform:uppercase}.cover-intro p{margin:0 0 13px}.open-note{display:inline-block;padding:7px 12px;background:#fff8e5;border:1px solid #d3c29a;box-shadow:2px 4px 0 #9ba88b66;text-decoration:none;font:1rem var(--script);text-transform:none;letter-spacing:0;transform:rotate(-4deg);transition:transform .2s}.open-note:hover{transform:rotate(-1deg) translateY(-3px)}.open-note span{margin-left:8px}.cover-caption{position:absolute;z-index:4;right:6%;bottom:17%;font:1rem var(--script);transform:rotate(-5deg)}.meadow{position:absolute;z-index:2;left:-3%;right:-3%;bottom:-2%;height:31%;background:#a9c599;clip-path:polygon(0 54%,7% 62%,15% 47%,21% 62%,30% 40%,41% 57%,51% 37%,62% 52%,73% 38%,85% 57%,93% 43%,100% 55%,100% 100%,0 100%)}.meadow-front{z-index:4;height:22%;background:#829e78;clip-path:polygon(0 65%,8% 53%,18% 68%,28% 49%,40% 68%,52% 50%,64% 67%,73% 45%,85% 64%,95% 47%,100% 60%,100% 100%,0 100%)}.meadow i{position:absolute;color:#fff6dd;font-style:normal;text-shadow:0 1px 1px #64735c;font-size:clamp(17px,3vw,35px);animation:sway 5s ease-in-out infinite alternate}.meadow i:nth-child(1){left:12%;top:37%}.meadow i:nth-child(2){left:32%;top:17%;color:#f6d7cc;animation-delay:-2s}.meadow i:nth-child(3){left:63%;top:28%;animation-delay:-1s}.meadow i:nth-child(4){left:82%;top:15%;color:#ffefbb;animation-delay:-3s}.meadow i:nth-child(5){left:92%;top:40%}.cover-butterfly{position:absolute;z-index:3;left:76%;top:46%;color:#b67f7d;font-size:3rem;transform:rotate(22deg)}@keyframes sway{to{transform:translateY(-4px) rotate(4deg)}}
/* 6. About */
.script-heading{font-size:clamp(2.6rem,5vw,4.35rem);line-height:1.02;color:#526b55;margin:16px 0 22px}.about-layout{display:grid;grid-template-columns:minmax(150px,.75fr) 1.3fr;gap:24px;align-items:start}.polaroid{position:relative;display:block;border:0;background:#fff;padding:9px 9px 36px;box-shadow:0 5px 12px #464c382d;transform:rotate(-4deg);cursor:zoom-in}.portrait-art{position:relative;display:grid;place-items:center;aspect-ratio:4/4.6;overflow:hidden;background:radial-gradient(ellipse at 52% 37%,#f4d8bc 0 15%,transparent 16%),radial-gradient(ellipse at 51% 72%,#788b70 0 28%,transparent 29%),linear-gradient(145deg,#dbeddd,#eabfc4)}.portrait-art:before{content:"";position:absolute;top:17%;width:32%;height:33%;border-radius:47% 48% 43% 43%;background:#775e4c;box-shadow:0 43px 0 8px #d5a58b}.portrait-art b{position:absolute;z-index:2;bottom:8%;color:#fff8ea;font:1rem var(--script)}.portrait-art i{position:absolute;right:9%;top:10%;color:#fff5cf;font-size:1.5rem}.photo-caption{position:absolute;bottom:5px;left:0;right:0;text-align:center;font:1rem var(--script)}.tape{position:absolute;z-index:3;width:72px;height:18px;left:50%;top:-9px;transform:translateX(-50%) rotate(-4deg);opacity:.83;background:#eec9c4}.tape-yellow{background:#e9d997}.about-copy p{margin-bottom:13px;font-size:.88rem;line-height:1.66}.dropcap:first-letter{float:left;font:3.3rem/.8 var(--serif);padding:4px 7px 0 0;color:#b97f78}.note-strip{padding:9px 11px;margin-top:17px;background:#f7edc8;font-size:.78rem;transform:rotate(-1deg)}.note-strip span{font-family:var(--script);font-size:1rem}.contact-scribble{display:inline-block;margin-top:18px;font:1rem var(--script);color:#9d6f6b;text-decoration-thickness:1px;text-underline-offset:3px}.doodle-heart{position:absolute;right:13%;bottom:10%;color:#c58c86;font-size:2rem;transform:rotate(13deg)}
/* 7. Software + Skills */
.software-heading{font-size:clamp(2.5rem,4.8vw,4rem)}.software-heading em{color:#bd8582}.page-lede{font:1rem var(--script);color:#7c8672}.tool-collage{position:relative;min-height:340px;margin:28px 0 0}.tool{position:absolute;display:inline-block;padding:10px 15px;background:#f8edc9;box-shadow:2px 4px 5px #51584318;font-size:.88rem}.tool i{font-style:normal;color:#b67d85}.tool-canva{left:4%;top:4%;background:#d3e9dc;transform:rotate(-7deg);font:1.5rem var(--serif)}.tool-capcut{left:53%;top:0;background:#f0cbd0;transform:rotate(5deg);font-weight:700}.tool-alight{left:21%;top:27%;background:#ebe2b6;transform:rotate(3deg)}.tool-lightroom{left:55%;top:34%;background:#dce8ef;transform:rotate(-5deg)}.tool-photoshop{left:2%;top:56%;background:#d0e2ec;transform:rotate(4deg);font-size:.78rem}.tool-ibis{left:40%;top:68%;background:#f0d7cc;transform:rotate(-4deg)}.tool-office{left:18%;top:86%;background:#d6e5c7;transform:rotate(2deg);font-size:.78rem}.margin-note{position:absolute;right:10%;bottom:15%;font:1rem var(--script);color:#9a766c;transform:rotate(-8deg)}.margin-note span{font-size:1.5rem}.pressed-flower{position:absolute;top:29%;right:8%;color:#c38d88;font-size:2.7rem;transform:rotate(21deg)}.sheet-heading{display:flex;justify-content:space-between;align-items:center}.sheet-heading h2{font-size:4rem}.hand-note{font-size:1.2rem;color:#a17770;transform:rotate(-4deg)}.skill-zones{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:26px 0 5px}.skill-zone{position:relative;padding:20px 19px 24px;min-height:245px}.visual-zone{background:#e3efdc;transform:rotate(-1.3deg)}.content-zone{background:#f4e5db;transform:rotate(1.1deg);margin-top:21px}.strategy-zone{background:#f5edcf;transform:rotate(-.5deg)}.zone-label{color:#858775}.skill-zone h3{font:1.45rem var(--serif);margin:12px 0 13px}.skill-zone ul{padding-left:16px;margin:0;font-size:.86rem;line-height:2}.skill-zone li::marker{color:#bd8981}.zone-doodle{position:absolute;right:16px;bottom:8px;font-size:1.8rem;color:#a47872}.stamp-mark{position:absolute;right:12px;bottom:12px;border:1px solid #bd8780;border-radius:50%;padding:8px;color:#bd8780;text-align:center;font-size:.57rem;line-height:1.1;transform:rotate(11deg)}.paper-clip{position:absolute;right:8%;top:-14px;width:25px;height:55px;border:2px solid #929b86;border-radius:12px 12px 5px 5px;transform:rotate(9deg)}
/* 8. Experience */
.experience-page{grid-column:1/3;min-height:640px;padding:46px 7%}.experience-pair{display:grid;grid-template-columns:1fr 1fr;gap:46px;margin:28px auto 0;max-width:880px}.experience-note{position:relative;min-height:420px;padding:25px 24px;background:#f6eed4;box-shadow:2px 5px 8px #62624a1b}.mercure-note{transform:rotate(-1.4deg)}.ad-note{background:#e4eee2;transform:rotate(1deg);margin-top:38px}.experience-note h3{font:2.1rem/1 var(--serif);margin:11px 0}.experience-note .role{font:1rem var(--script);line-height:1.35;margin-bottom:4px}.date-tag{display:inline-block;padding:2px 7px;background:#fffaf0;font-size:.68rem;letter-spacing:.04em}.experience-note ul{padding-left:17px;margin:13px 0;font-size:.76rem;line-height:1.55}.experience-note li{padding:0 0 5px}.experience-note li::marker{color:#b27e78}.postmark{position:absolute;right:18px;top:19px;border:1px dashed #ae827d;border-radius:50%;padding:8px 6px;text-align:center;color:#ad7773;font-size:.62rem;line-height:1.1;transform:rotate(9deg)}.mini-photo{position:relative;display:flex;align-items:center;gap:9px;width:100%;padding:7px;border:0;background:white;text-align:left;font: .75rem var(--script);cursor:zoom-in}.placeholder-scene{display:grid;place-items:center;min-height:80px;flex:1;background:linear-gradient(140deg,#d9e7d8,#f5e2c4 55%,#e8c9c1);font-size:2rem;color:#82977d}.experience-footer{position:absolute;bottom:12px;right:16px;font: .8rem var(--script);color:#70836d}.sticker-label{position:absolute;right:18px;bottom:48px;width:75px;height:75px;display:grid;place-items:center;border-radius:48% 52% 43% 57%;background:#e9c6c2;color:#765e54;text-align:center;font: .7rem/1.2 var(--script);transform:rotate(10deg)}
/* 9. Galleries */
.gallery-sheet{padding-bottom:37px}.gallery-title{display:flex;align-items:end;justify-content:space-between}.gallery-title h2{font-size:3.9rem;line-height:.94}.gallery-title .hand-note{margin:-8px 0 5px 6px}.index-tab{padding:7px 13px;background:#d9e8d9;align-self:start;transform:rotate(3deg)}.social-collage{position:relative;min-height:400px;margin:18px auto 5px;max-width:760px}.work-photo,.album-shot{position:absolute;border:0;background:#fffdf6;padding:8px 8px 30px;box-shadow:0 5px 10px #454d3a2e;text-align:left;cursor:zoom-in;transition:transform .25s,box-shadow .25s}.work-photo:hover,.album-shot:hover{z-index:5;transform:rotate(0deg) translateY(-5px)!important;box-shadow:0 12px 22px #454d3a32}.social-square{width:214px}.square-one{left:8%;top:30px;transform:rotate(-5deg)}.square-two{left:36%;top:78px;transform:rotate(3deg)}.social-square .placeholder-scene{aspect-ratio:1;min-height:0;font-size:3rem}.work-caption{position:absolute;left:8px;bottom:4px;font: .83rem var(--script);color:#6e7768}.social-story{width:135px;height:258px}.story-one{left:67%;top:5px;transform:rotate(4deg)}.story-two{left:78%;top:75px;transform:rotate(-4deg)}.story-art,.reel-art{height:100%;display:grid;align-content:center;justify-items:center;text-align:center;background:linear-gradient(160deg,#e7edd9,#f2d6cb 55%,#e7dcae);font:1.35rem/1.25 var(--serif)}.story-art em{font:1.6rem var(--script);color:#9b6b65}.story-art i{margin-top:15px;font-style:normal;color:#fff9e7}.reel-art{background:linear-gradient(165deg,#c8dfd2,#efd9b9);font:1rem var(--script)}.reel-art b{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#fff9e9cc;font:1rem var(--sans)}.reel-art small{max-width:90px;margin-top:13px}.collage-note{position:absolute;left:2%;bottom:20px;font:1rem var(--script);color:#a77771;transform:rotate(-8deg)}.category-ribbon{display:flex;justify-content:center;gap:8px;margin:3px auto 17px}.category-ribbon span{padding:5px 13px;background:#f2e6c5;font: .88rem var(--script);transform:rotate(-2deg)}.category-ribbon span:nth-child(even){background:#dce9dc;transform:rotate(2deg)}.asset-note{margin:12px 0 0;color:#899080;font-size:.65rem;line-height:1.5}.asset-note code{font-size:.64rem;color:#6a7867;background:#f4f0df;padding:1px 3px}.photo-page{grid-column:1/3;min-height:720px;padding:44px 7%}.photo-page h2{font-size:3.7rem;line-height:.95}.photo-page h2 em{color:#c08a84}.photo-page>.hand-note{position:absolute;right:10%;top:105px}.photo-album{position:relative;height:440px;max-width:820px;margin:5px auto}.album-shot{cursor:zoom-in}.album-large{left:6%;top:23px;width:43%;transform:rotate(-2deg)}.album-tall{left:54%;top:18px;width:23%;transform:rotate(3deg)}.album-square{left:19%;top:218px;width:27%;transform:rotate(3deg)}.album-video{left:55%;top:223px;width:34%;transform:rotate(-2deg)}.album-shot .placeholder-scene{min-height:0}.album-large .placeholder-scene{aspect-ratio:1.55}.album-tall .placeholder-scene{aspect-ratio:.72}.album-square .placeholder-scene{aspect-ratio:1}.album-video .placeholder-scene{aspect-ratio:1.65}.album-caption{display:block;padding-top:5px;font: .78rem var(--script);line-height:1.3}.room-scene{background:linear-gradient(180deg,#d8e8df 0 47%,#d8c4aa 48% 52%,#f3e7d1 53%);position:relative}.room-scene:after{content:"";position:absolute;left:19%;right:16%;bottom:9%;height:38%;background:#fff8e5;border:8px solid #d9c7ae;box-shadow:0 -32px #dbe7d9}.room-scene i{position:absolute;top:12%;right:17%;font-style:normal;color:#f3d883;font-size:2rem}.food-scene{background:radial-gradient(ellipse at 50% 50%,#eac59c 0 24%,#fff6e1 25% 40%,transparent 41%),linear-gradient(135deg,#deebd9,#f3dfbd)}.lobby-scene{background:linear-gradient(90deg,#e5d4b5 0 18%,#d7e6d8 19% 81%,#e5d4b5 82%);font-size:4rem}.video-scene{background:linear-gradient(140deg,#c9dfd2,#efd9b9)}.video-scene b{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:#fffaecde;font-size:1rem}
/* 10. Campaign + Copy */
.campaign-sheet{padding-bottom:40px}.campaign-heading{display:flex;justify-content:space-between;align-items:center}.campaign-heading h2{font-size:3.8rem;line-height:.92}.campaign-heading p{font:1rem var(--script);color:#788570}.sun-sticker{position:relative;display:grid;place-items:center;width:100px;height:100px;border-radius:50%;background:#f1db91;color:#a57f56;font-size:2.4rem;line-height:.85;transform:rotate(9deg)}.sun-sticker small{position:absolute;text-align:center;font: .53rem/1.15 var(--sans);letter-spacing:.09em}.campaign-board{position:relative;display:grid;grid-template-columns:1fr .8fr 1fr;grid-template-rows:180px 180px;gap:18px 23px;min-height:390px;margin-top:15px}.poster-print{position:relative;display:flex;flex-direction:column;justify-content:center;padding:18px;background:#e2eddf;box-shadow:2px 4px 9px #66694a25;text-align:center;transform:rotate(-3deg)}.poster-print span{font:2rem/1 var(--serif)}.poster-print em{font:italic 1.8rem var(--script);color:#a06b65}.poster-print small{margin-top:13px;font-size:.65rem}.poster-print i{position:absolute;right:10px;top:8px;color:#c58e78;font-style:normal;font-size:1.6rem}.poster-breakfast{grid-column:2;grid-row:1/3;align-self:center;height:290px;background:#f0d6cd;transform:rotate(3deg)}.poster-breakfast span{font-size:1.7rem}.poster-breakfast em{font-size:1.5rem}.campaign-list{grid-column:3;grid-row:1;padding:18px 10px;background:#f5edce;transform:rotate(1.5deg)}.campaign-list p{display:flex;justify-content:space-between;margin:8px 0;border-bottom:1px dashed #d2c79f;font:1rem var(--script)}.campaign-list p b{color:#b28479}.campaign-note{grid-column:3;grid-row:2;padding:15px 17px;background:#fff9e9;box-shadow:2px 4px 8px #66694a20;transform:rotate(-2deg);font-size:.7rem}.campaign-note>span{font:1rem var(--script);color:#ab7770}.campaign-note p{margin:5px 0;line-height:1.4}.campaign-note em{color:#a56f68;font: .9rem var(--script)}.paper-arrow{position:absolute;left:42%;top:49%;z-index:2;color:#a7746d;font:2rem var(--script);transform:rotate(20deg)}.copy-sheet{padding-bottom:58px}.copy-top{display:flex;justify-content:space-between;align-items:start}.copy-top h2{font-size:4rem}.copy-top .hand-note{margin-top:-14px}.pencil-doodle{font-size:3rem;color:#b98579;transform:rotate(-30deg)}.copy-clippings{display:grid;grid-template-columns:1.1fr .9fr;gap:24px 30px;margin:28px 4% 0}.clipping{position:relative;margin:0;padding:20px 23px;box-shadow:2px 4px 7px #6462481d}.clipping>span,.cta-scrap>span{font-size:.61rem;letter-spacing:.12em;color:#7f8474}.headline-clip{background:#e5efdf;transform:rotate(-2deg)}.headline-clip p{font:2.3rem/.98 var(--serif);margin:16px 0 8px}.headline-clip em{color:#a76f6c}.clipping small{font: .9rem var(--script);color:#737c6b}.caption-clip{background:#fff2d3;transform:rotate(2deg);margin-top:24px}.caption-clip p{font:1.02rem/1.6 var(--serif);margin:15px 0}.caption-clip small{color:#ac726b}.breakfast-clip{background:#f3ded9;transform:rotate(1deg)}.highlight-line{font:1.5rem/1.3 var(--script);padding:6px;background:linear-gradient(transparent 53%,#f5e69b 54%)}.cta-scrap{align-self:center;padding:17px 22px;border-left:1px dashed #c3ad90;transform:rotate(-3deg)}.cta-scrap p{font:1.7rem/1.1 var(--serif);margin:12px 0}.cta-scrap em{color:#b57870}.cta-scrap a{font: .9rem var(--script);color:#58705a}
/* 11. Contact */
.closing-cover{position:relative;overflow:hidden;min-height:720px;padding:42px 7% 120px;background:#cbe4d5;box-shadow:var(--shadow);text-align:center}.closing-sky{opacity:.7}.closing-cover>.page-number,.closing-content{position:relative;z-index:3}.closing-content{padding-top:43px}.closing-content h2{font-size:clamp(4rem,9vw,7.5rem);line-height:.95;margin:26px 0 15px}.closing-content h2 span{color:#bd837d}.closing-content>p{margin:0 auto 12px}.see-you{font:1.35rem var(--script);color:#a2736e}.see-you i{font-style:normal}.contact-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:min(390px,90%);margin:30px auto 0;padding:30px 34px 24px;background:#fff9e8;box-shadow:0 8px 20px #59614b2c;text-align:left;transform:rotate(-2deg)}.contact-card:after{content:"";position:absolute;right:16px;top:18px;width:50px;height:40px;border:1px solid #d4bca0;background:repeating-linear-gradient(135deg,transparent 0 5px,#d7b5a5 5px 6px)}.card-tape{position:absolute;left:50%;top:-9px;width:78px;height:17px;transform:translateX(-50%) rotate(2deg);background:#ecc8c3dd}.card-label{font:1.3rem var(--script);margin:0 0 4px}.contact-card a{font-size:.85rem;text-decoration-color:#b3c4a9;text-underline-offset:3px}.contact-card small{margin-top:7px;color:#929485;font-size:.64rem}.closing-meadow{position:absolute;z-index:2;left:0;right:0;bottom:-12px;height:100px;background:#829e78;clip-path:polygon(0 50%,12% 66%,24% 46%,39% 68%,54% 45%,67% 64%,81% 43%,100% 65%,100% 100%,0 100%)}.closing-meadow i{position:absolute;top:20px;color:#fff2d4;font-size:27px;font-style:normal}.closing-meadow i:nth-child(1){left:12%}.closing-meadow i:nth-child(2){left:31%;top:5px}.closing-meadow i:nth-child(3){left:60%}.closing-meadow i:nth-child(4){left:79%;top:6px}.closing-meadow i:nth-child(5){left:92%}.closing-signoff{position:absolute;z-index:3;bottom:20px;right:4%;color:#fff9e8;font: .9rem var(--script)}
/* 12. Interactions + Accessibility */
.gallery-trigger:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #9d6e69;outline-offset:4px}.lightbox{position:fixed;z-index:50;inset:0;width:min(900px,92vw);max-width:none;max-height:90vh;border:0;padding:48px 70px 38px;background:#fff9e9;box-shadow:0 20px 70px #20291f70;text-align:center}.lightbox::backdrop{background:#263126c7;backdrop-filter:blur(2px)}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;background:#e5eddc;width:42px;height:42px;border-radius:50%;cursor:pointer}.lightbox-close{right:15px;top:14px;font-size:1.5rem}.lightbox-prev{left:13px;top:50%}.lightbox-next{right:13px;top:50%}.lightbox-content{display:grid;place-items:center;min-height:45vh;max-height:65vh}.lightbox-content .placeholder-scene,.lightbox-content .portrait-art{width:min(560px,100%);height:min(60vh,540px);aspect-ratio:auto;font-size:4rem}.lightbox-caption{font:1.1rem var(--script);margin:15px 0 0}.lightbox-content .story-art,.lightbox-content .reel-art{width:min(300px,65vw);height:min(60vh,520px)}.lightbox-content .room-scene:after{bottom:20%}.lightbox-content .portrait-art{max-width:400px}.lightbox-content .portrait-art b{font-size:2rem}
@media(max-width:1100px){.side-nav{left:5px}.side-nav a{padding:4px 6px;font-size:9px}.journal-shell{padding-left:8vw;padding-right:4vw}.page{padding-left:34px;padding-right:34px}.social-story{width:120px}.story-two{left:77%}}
@media(max-width:760px){html{scroll-padding-top:60px}.cover{height:max(690px,100svh);min-height:690px}.cover-top{top:22px;left:6%;right:6%;grid-template-columns:1fr auto;text-align:left;row-gap:12px}.cover-top p{grid-column:1/3;grid-row:2;text-align:left;font-size:.62rem}.signature{font-size:1.2rem}.year{font-size:.65rem}.cover-title-wrap{top:28%}.cover h1{font-size:clamp(5.2rem,19vw,9rem)}.cover-title-wrap .eyebrow{font-size:.58rem}.cover-subtitle{font-size:.95rem}.cover-intro{left:7%;bottom:18%;font-size:.62rem}.cover-caption{right:5%;bottom:11%;font-size:.78rem}.meadow{height:25%}.meadow-front{height:18%}.side-nav{display:none}.mobile-menu{position:sticky;z-index:20;top:0;display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 20px;border:0;background:#fff9e9ed;box-shadow:0 2px 8px #555b3a1a;text-align:left;font:1rem var(--script);cursor:pointer}.mobile-menu span{font-family:var(--sans);font-size:1.2rem}.mobile-nav:not([hidden]){position:sticky;z-index:19;top:48px;display:grid;grid-template-columns:repeat(2,1fr);gap:5px;padding:10px 20px;background:#fff9e9ed;box-shadow:0 5px 10px #555b3a20}.mobile-nav a{padding:8px 10px;text-decoration:none;font-size:.85rem;border-bottom:1px dashed #c8ceb9}.journal-shell{padding:48px 18px 65px}.journal-intro{margin-bottom:55px;padding:22px 10px}.journal-intro h2{font-size:3.8rem}.intro-flower{right:8%;bottom:2px}.spread{display:flex;flex-direction:column;gap:12px;margin-bottom:65px;filter:drop-shadow(0 14px 12px #555b3b20)}.page{min-height:auto;padding:31px 24px 35px}.page-left,.page-right{transform:none;border-radius:2px}.binding{display:none}.spread-about .page-left{min-height:550px}.spread-about .page-right{min-height:490px}.about-layout{grid-template-columns:minmax(115px,.72fr) 1.3fr;gap:15px}.about-copy p{font-size:.8rem;line-height:1.55}.polaroid{padding:7px 7px 31px}.photo-caption{font-size:.8rem}.doodle-heart{right:8%;bottom:4%}.script-heading{font-size:3rem}.tool-collage{min-height:310px}.tool{padding:9px 11px;font-size:.8rem}.tool-office{left:12%}.single-sheet,.gallery-sheet,.campaign-sheet,.copy-sheet{margin-bottom:65px;padding:33px 22px 30px}.sheet-heading h2{font-size:3.5rem}.sheet-heading .hand-note{font-size:1rem}.skill-zones{grid-template-columns:1fr;gap:13px;margin-top:12px}.skill-zone{min-height:0;padding:18px 20px 20px}.content-zone{margin-top:0}.skill-zone ul{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;font-size:.82rem;line-height:1.8}.skill-zone li{padding-right:3px}.experience-page{padding:32px 22px}.experience-pair{grid-template-columns:1fr;gap:18px;margin-top:18px}.experience-note{min-height:0;padding:22px 20px}.ad-note{margin-top:0}.experience-note h3{font-size:1.9rem}.experience-note ul{font-size:.78rem}.sticker-label{right:12px;bottom:35px}.gallery-title h2{font-size:3rem}.gallery-title{align-items:start}.index-tab{font-size:.56rem;padding:6px 8px}.social-collage{min-height:475px;margin-top:10px}.social-square{width:44%;max-width:190px}.square-one{left:2%;top:25px}.square-two{left:39%;top:93px}.social-story{width:31%;max-width:124px;height:230px}.story-one{left:8%;top:240px}.story-two{left:53%;top:220px}.collage-note{left:68%;bottom:15px;font-size:.84rem}.category-ribbon{flex-wrap:wrap}.category-ribbon span{padding:4px 10px}.asset-note{font-size:.62rem}.photo-page{padding:32px 22px;min-height:0}.photo-page h2{font-size:2.9rem}.photo-page>.hand-note{position:static;margin:-10px 0 12px;text-align:right;font-size:1rem}.photo-album{height:480px}.album-large{left:0;top:20px;width:52%}.album-tall{left:60%;top:9px;width:35%}.album-square{left:9%;top:256px;width:37%}.album-video{left:51%;top:250px;width:44%}.album-caption{font-size:.72rem}.campaign-heading h2{font-size:3.1rem}.sun-sticker{width:75px;height:75px;font-size:2rem}.campaign-board{grid-template-columns:1fr 1fr;grid-template-rows:160px 180px auto;gap:15px 12px}.poster-print{padding:11px}.poster-print span{font-size:1.5rem}.poster-print em{font-size:1.35rem}.poster-breakfast{grid-column:2;grid-row:1;height:160px}.poster-breakfast span{font-size:1.25rem}.poster-breakfast em{font-size:1.05rem}.campaign-list{grid-column:1;grid-row:2;padding:12px 9px}.campaign-list p{font-size:.9rem}.campaign-note{grid-column:2;grid-row:2;padding:12px 10px;font-size:.65rem}.paper-arrow{left:46%;top:26%}.copy-top h2{font-size:3.4rem}.copy-clippings{grid-template-columns:1fr;gap:15px;margin:20px 3%}.caption-clip{margin-top:0}.cta-scrap{justify-self:center}.closing-cover{min-height:750px;padding:35px 17px 120px}.closing-content{padding-top:42px}.closing-content h2{font-size:4.3rem}.closing-content>p{max-width:300px;font-size:.9rem}.contact-card{padding:26px 23px 20px}.contact-card:after{width:40px;height:32px}.closing-signoff{right:4%;bottom:17px;font-size:.75rem}.lightbox{padding:53px 42px 32px}.lightbox-prev{left:4px}.lightbox-next{right:4px}}
@media(max-width:390px){.cover h1{font-size:5rem}.about-layout{grid-template-columns:105px 1fr;gap:11px}.about-copy p{font-size:.76rem}.page{padding-left:19px;padding-right:19px}.skill-zone ul{grid-template-columns:1fr}.social-story{width:34%}.story-two{left:55%}.album-video{left:50%;width:46%}.page-left .script-heading{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Final art direction refinements */
.cover-intro{left:12%}.cover-title-wrap{transform:translate(var(--pointer-x,0px),var(--pointer-y,0px));animation:cover-rise .75s .08s both}.cover-top,.cover-intro{animation:cover-rise .65s both}@keyframes cover-rise{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
.experience-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.mini-photo{min-width:0;display:flex;flex-direction:column;gap:4px;padding:5px 5px 7px;font-size:.66rem;line-height:1.25}.mini-photo .placeholder-scene{width:100%;min-height:0;aspect-ratio:1.2;font-size:1.25rem}.design-scene{background:linear-gradient(135deg,#e4d9b0,#f3e4ca 55%,#e6c4c7)}.bts-scene{background:linear-gradient(125deg,#d4e7dd,#edcfbe 52%,#dce3ca)}.ad-samples{display:flex;width:68%;gap:5px;margin-top:15px}.ad-samples span{display:grid;place-content:center;flex:1;min-height:54px;background:#f5e5cf;text-align:center;font: .62rem/1.1 var(--script);transform:rotate(-3deg)}.ad-samples span:nth-child(2){background:#f0d5d5;transform:rotate(2deg)}.ad-samples span:nth-child(3){background:#e2ead9;transform:rotate(-1deg)}
@media(max-width:760px){.cover-intro{left:7%}.experience-photos{gap:5px}.mini-photo{padding:4px;font-size:.6rem}.mini-photo .placeholder-scene{aspect-ratio:1.35}.ad-samples{width:69%;margin-top:12px}.ad-samples span{min-height:48px;font-size:.55rem}.collage-note{display:none}}
/* Tablet: the pages become a vertical album before type gets cramped. */
@media(min-width:761px) and (max-width:880px){.spread{grid-template-columns:1fr;gap:13px;margin-bottom:75px;filter:drop-shadow(0 16px 14px #555b3b20)}.spread .page{grid-column:auto;min-height:0;padding:42px clamp(34px,7vw,65px)}.spread .page-left,.spread .page-right{transform:none;border-radius:2px}.spread .binding{display:none}.spread-about .page-left{min-height:0}.spread-about .page-right{min-height:450px}.spread-experience .experience-page{grid-column:auto}.spread-photo .photo-page{grid-column:auto}.experience-page{min-height:0}.side-nav{display:none}.mobile-menu{position:sticky;z-index:20;top:0;display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 25px;border:0;background:#fff9e9ed;box-shadow:0 2px 8px #555b3a1a;text-align:left;font:1rem var(--script);cursor:pointer}.mobile-menu span{font-family:var(--sans);font-size:1.2rem}.mobile-nav:not([hidden]){position:sticky;z-index:19;top:48px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:10px 25px;background:#fff9e9ed;box-shadow:0 5px 10px #555b3a20}.mobile-nav a{padding:8px 10px;text-decoration:none;font-size:.85rem;border-bottom:1px dashed #c8ceb9}}

/* Reference-led art direction: a dimensional title, meadow details, and tidy app-logo board. */
.cover-sky{background-color:#b9e1d8;background-image:radial-gradient(ellipse at 73% 29%,#fff6cf 0 5.2%,transparent 5.5%),radial-gradient(ellipse at 11% 24%,#f7fff55c 0 7%,transparent 7.5%),radial-gradient(ellipse at 16% 23%,#f7fff55c 0 5%,transparent 5.5%),radial-gradient(ellipse at 84% 19%,#f7fff54a 0 8%,transparent 8.5%),linear-gradient(180deg,#a9ded8 0%,#c9e8d9 54%,#bfd8ae 100%)}.cover-sky:before{width:50vw;height:15vw;left:29%;top:25%;filter:blur(26px);opacity:.3}.cover h1{font-size:clamp(6.4rem,17.5vw,15.8rem);color:#edc3c4;text-shadow:3px 4px 0 #f7e6a2,7px 9px 0 #61765c;letter-spacing:-.07em}.portfolio-initial{position:relative;z-index:1;display:inline-block;margin-right:-.23em;color:#f3b7c2;font:normal 1.5em/.58 var(--script);letter-spacing:-.14em;transform:translateY(.14em) rotate(-5deg);text-shadow:3px 3px 0 #f7e6a2,7px 8px 0 #657761}.portfolio-rest{position:relative;z-index:0;color:#e9b7bd;text-shadow:2px 2px 0 #f8e9a9,6px 8px 0 #657761}.cover-subtitle{font-size:1.25rem;color:#536f61}.meadow{height:34%;background-color:#a9c58f;background-image:repeating-linear-gradient(100deg,transparent 0 23px,#73946c38 24px 26px,transparent 27px 44px);clip-path:polygon(0 52%,6% 58%,12% 40%,19% 60%,27% 37%,35% 57%,45% 35%,54% 59%,64% 36%,73% 54%,83% 34%,91% 56%,100% 42%,100% 100%,0 100%)}.meadow-front{height:23%;background-color:#78966e;clip-path:polygon(0 60%,8% 48%,17% 68%,26% 46%,37% 66%,48% 42%,59% 67%,70% 46%,82% 64%,93% 43%,100% 60%,100% 100%,0 100%)}.meadow i{font-size:clamp(20px,3.4vw,39px);text-shadow:0 2px 0 #667d5f}.meadow-back i:nth-child(6){left:23%;top:28%;color:#f7e7a1}.meadow-back i:nth-child(7){left:46%;top:12%}.meadow-back i:nth-child(8){left:72%;top:19%;color:#f2d1ce}.meadow-front i:nth-child(6){left:38%;top:32%;color:#f7e7a1}.meadow-front i:nth-child(7){left:71%;top:18%}.meadow-front i:nth-child(8){left:7%;top:26%;color:#f2d1ce}
.spread .page-left,.spread .page-right{transform:none}.single-sheet,.gallery-sheet,.campaign-sheet,.copy-sheet{transform:none}.skill-zone{transform:none;box-shadow:0 5px 12px #53644917}.visual-zone{background:#e4efdf}.content-zone{background:#f5e5e3}.strategy-zone{background:#f5edcf}.software-heading{font-size:clamp(2.7rem,4.6vw,4rem)}.software-heading em{font-family:var(--script);font-size:1.03em;font-weight:400}.tool-collage{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px 10px;min-height:0;margin:24px 0 30px;padding:24px 17px 26px;background:#f5dfe3;border:1px solid #e7c7c8;box-shadow:inset 0 0 0 5px #fff9e987,0 8px 16px #574d3920}.tool-collage:before{content:"MY LITTLE TOOLKIT";position:absolute;top:-12px;left:18px;padding:2px 10px;background:#f7edc9;color:#7d7560;font-size:.58rem;letter-spacing:.12em;transform:rotate(-2deg)}.tool{position:relative;inset:auto;display:grid;justify-items:center;align-content:start;gap:7px;min-width:0;margin:0;padding:0;background:transparent;box-shadow:none;text-align:center;transform:none!important;font-size:.71rem}.app-icon{display:grid;place-items:center;width:62px;height:62px;padding:0;overflow:hidden;background:#fff;border:4px solid #fff;box-shadow:0 4px 0 #b7978744,0 7px 12px #53493b19;border-radius:10px}.app-icon img{display:block;width:100%;height:100%;object-fit:cover}.office-icon{width:70px;background:#fff;border-radius:4px}.office-icon img{object-fit:contain;padding:4px}.tool figcaption{font-size:.7rem;line-height:1.2;color:#455748}.tool-canva,.tool-capcut,.tool-alight,.tool-lightroom,.tool-photoshop,.tool-ibis,.tool-office{left:auto;top:auto}.margin-note{bottom:8%;right:8%;z-index:2}.pressed-flower{top:10%;right:7%}.doodle-heart{font-size:1.8rem}.note-strip{background:#f5e2e3}
@media(max-width:760px){.cover h1{font-size:clamp(5.3rem,19vw,9.4rem)}.portfolio-initial{font-size:1.4em}.meadow{height:30%}.meadow-front{height:20%}.tool-collage{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 8px;margin:24px 0 34px;padding:24px 12px 24px}.app-icon{width:58px;height:58px}.office-icon{width:66px}.tool figcaption{font-size:.64rem}.margin-note{bottom:5%;right:7%;font-size:.88rem}.pressed-flower{top:6%;right:7%;font-size:2rem}}
@media(min-width:761px) and (max-width:880px){.tool-collage{grid-template-columns:repeat(4,minmax(0,1fr))}.app-icon{width:68px;height:68px}}
.cover-subtitle{margin-top:2.4rem}.tool-office{grid-column:span 2}.tool-office .app-icon{width:126px;height:62px}
.cover-sky{background-color:#b9e1d8;background-image:radial-gradient(ellipse at 73% 29%,#fff6cf 0 5.2%,transparent 5.5%),linear-gradient(180deg,#a9ded8 0%,#c9e8d9 54%,#bfd8ae 100%)}.cover-sky:before{content:"";position:absolute;left:5%;top:25%;width:36%;height:3%;border-radius:999px;background:#f7fff16e;filter:blur(8px);opacity:.8}.cover-sky:after{content:"";position:absolute;right:4%;top:19%;width:27%;height:3.5%;border-radius:999px;background:#f7fff15c;filter:blur(10px)}
/* Buyer brief layout: focused sections, solid cards, and no sample portfolio content. */
.cover-top p{font-weight:700}.cover-top .year{font-size:.9rem}.cover-title-wrap .eyebrow{font-family:var(--sans)}.cover-subtitle{font-family:var(--sans);font-size:clamp(1rem,2vw,1.4rem);font-weight:600;letter-spacing:.02em;color:#526b55}.cover>.open-note{position:absolute;z-index:4;left:50%;bottom:14%;transform:translateX(-50%);display:inline-flex;gap:12px;align-items:center;padding:14px 27px;border-radius:999px;background:#f4d0dc;color:#51465f;text-decoration:none;font-weight:700;box-shadow:0 5px 14px #59634b20}.journal-shell{max-width:1120px;padding-top:78px}.single-sheet{transform:none;border-radius:12px}.single-sheet:after{border-radius:12px}.about-sheet,.software-sheet,.skills-sheet,.experience-sheet{margin-bottom:42px;padding:clamp(28px,5vw,64px)}.about-sheet .script-heading,.software-sheet .script-heading,.skills-sheet .script-heading,.experience-sheet .script-heading{margin:15px 0 27px}.about-copy{max-width:900px}.about-copy p{font-size:1rem;line-height:1.8;margin-bottom:16px}.software-sheet{text-align:center}.software-sheet .page-number{display:block}.software-sheet .script-heading{font-size:clamp(2.7rem,5.8vw,4.5rem)}.app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:34px}.app-grid figure{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-height:190px;padding:24px 14px;background:#fffdf8;border:1px solid #e8e1d5;border-radius:13px;box-shadow:0 5px 15px #555b3b0d}.app-icon{width:82px;height:82px;display:grid;place-items:center;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 4px 12px #3c33401a}.app-icon img{width:100%;height:100%;object-fit:cover}.office-icon{width:172px;height:64px;border-radius:8px;box-shadow:none}.office-icon img{object-fit:contain}.app-grid figcaption{font-size:.95rem;font-weight:700;color:#494252}.office-tool{grid-column:span 2}.skills-sheet .script-heading,.experience-sheet .script-heading{text-align:left}.skills-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 38px;list-style:none;padding:0;margin:0}.skills-list li{padding:13px 5px;border-bottom:1px solid #e5dac7;font-size:1rem}.skills-list li:before{content:"✿";color:#b97f78;margin-right:12px}.experience-entry{padding:25px 27px;margin:24px 0;background:#fffdf8;border:1px solid #e8e1d5;border-radius:12px}.experience-entry .eyebrow{margin:0;color:#8b6c69;font-weight:700}.experience-entry h3{margin:8px 0;font:clamp(1.35rem,2.5vw,1.8rem) var(--serif);color:#51465f}.experience-entry .date-tag{display:inline-block;margin:0 0 12px;padding:5px 10px;background:#f4edcf;border-radius:999px;font-size:.85rem}.experience-entry ul{margin:0;padding-left:20px;line-height:1.8}.experience-entry li::marker{color:#b97f78}.portfolio-folder{display:inline-block;margin-top:8px;padding:12px 18px;background:#d7e9dc;color:#405b47;border-radius:9px;text-decoration:none;font-weight:700}.side-nav a{font-size:11px}.mobile-nav{padding:14px 20px;background:#fffdf8;border:1px solid #e8e1d5;border-radius:0 0 12px 12px}.mobile-nav a{padding:9px;color:#51465f;text-decoration:none}.mobile-menu{background:#fffdf8}
@media(max-width:760px){.cover-top{padding-inline:20px}.cover-top p{display:none}.cover-title-wrap h1{font-size:clamp(4.4rem,17vw,7rem)}.cover>.open-note{bottom:12%}.side-nav{display:none}.mobile-menu{display:flex;position:sticky;z-index:14;top:0;width:100%;justify-content:space-between;padding:14px 20px;border:0;border-bottom:1px solid #e8e1d5;color:#51465f;font-weight:700}.mobile-nav:not([hidden]){display:grid;position:sticky;z-index:13;top:48px;grid-template-columns:1fr 1fr}.journal-shell{padding:36px 18px 60px}.app-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.app-grid figure{min-height:154px;padding:15px 8px}.app-icon{width:64px;height:64px;border-radius:14px}.office-tool{grid-column:span 3}.office-icon{width:160px;height:54px}.skills-list{grid-template-columns:1fr;gap:0}.experience-entry{padding:20px 17px}.about-copy p{font-size:.94rem}}
@media(max-width:400px){.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-tool{grid-column:span 2}.app-grid figure{min-height:143px}.cover-top .signature{font-size:1rem}}
/* Refined type, responsive cards, and gentle scrapbook motion. */
h1,.script-heading,.software-sheet .script-heading{font-family:'Bodoni Moda',var(--serif);font-weight:500;letter-spacing:-.035em}.script-heading{font-style:italic;color:#536b56}.software-sheet .script-heading em{font-family:'Bodoni Moda',var(--serif);font-weight:500}.cover h1{font-family:'Bodoni Moda',var(--serif);font-weight:500;font-style:italic;letter-spacing:-.065em}.chapter-stamp{border-radius:999px}.app-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px}.app-grid figure{min-width:0;transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s,border-color .3s;background:linear-gradient(145deg,#fffefa,#fffaf2)}.app-grid figcaption{max-width:100%;overflow-wrap:anywhere;hyphens:auto;line-height:1.3}.app-icon{flex:0 0 auto;transition:transform .35s cubic-bezier(.2,.75,.2,1),box-shadow .35s}.app-grid figure:hover,.app-grid figure:focus-within{transform:translateY(-7px) rotate(-1deg);border-color:#d7b6b2;box-shadow:0 14px 25px #65574a20}.app-grid figure:hover .app-icon,.app-grid figure:focus-within .app-icon{transform:rotate(4deg) scale(1.06);box-shadow:0 9px 19px #3c33402b}.experience-entry,.portfolio-folder,.skills-list li{transition:transform .28s ease,box-shadow .28s ease,background-color .28s ease}.experience-entry:hover{transform:translateY(-4px);box-shadow:0 12px 24px #555b3b15}.portfolio-folder:hover{transform:translateY(-3px) rotate(-1deg);box-shadow:0 8px 16px #555b3b1f;background:#c9e2d1}.skills-list li:hover{transform:translateX(5px);background:#fffdf5}.side-nav a,.mobile-nav a{transition:transform .22s ease,background-color .22s ease,color .22s ease}.side-nav a:hover,.mobile-nav a:hover{transform:translateX(5px);background:#f4d0dc;color:#51465f}.cover>.open-note{transition:transform .28s ease,box-shadow .28s ease}.cover>.open-note:hover{transform:translateX(-50%) translateY(-4px) rotate(-1deg);box-shadow:0 9px 20px #59634b2b}.single-sheet{transition:box-shadow .35s ease}.single-sheet:hover{box-shadow:0 22px 42px #5c665230,0 5px 13px #5c66521c}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.2,1)}.reveal.is-visible .app-grid figure,.reveal.is-visible .experience-entry{animation:card-rise .65s;animation-delay:calc(var(--card-index,0)*90ms)}.app-grid figure:nth-child(1){--card-index:0}.app-grid figure:nth-child(2){--card-index:1}.app-grid figure:nth-child(3){--card-index:2}.app-grid figure:nth-child(4){--card-index:3}.app-grid figure:nth-child(5){--card-index:4}.app-grid figure:nth-child(6){--card-index:5}.app-grid figure:nth-child(7){--card-index:6}.experience-entry:nth-of-type(1){--card-index:0}.experience-entry:nth-of-type(2){--card-index:1}@keyframes card-rise{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cover .meadow i{animation:flower-sway 3.8s ease-in-out infinite alternate;transform-origin:50% 100%}.cover .meadow i:nth-child(2n){animation-delay:-1.5s}.cover .meadow i:nth-child(3n){animation-delay:-2.5s}@keyframes flower-sway{from{rotate:-5deg}to{rotate:5deg}}a:focus-visible,button:focus-visible,.app-grid figure:focus-within{outline:3px solid #bd8582;outline-offset:4px}
@media(max-width:760px){.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.app-grid figure{min-height:155px;padding:16px 10px}.app-icon{width:68px;height:68px}.office-tool{grid-column:span 2}.office-icon{width:160px;height:58px}.software-sheet{padding-inline:clamp(22px,6vw,44px)}.software-sheet .script-heading{font-size:clamp(2.6rem,10vw,4rem)}.experience-entry h3{overflow-wrap:anywhere}}
@media(max-width:360px){.app-grid{gap:10px}.app-grid figure{min-height:145px;padding:13px 8px}.app-icon{width:60px;height:60px}.app-grid figcaption{font-size:.84rem}.office-icon{width:140px;height:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.app-grid figure,.app-icon,.experience-entry,.skills-list li,.portfolio-folder,.side-nav a,.mobile-nav a,.cover>.open-note{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
.reveal.is-visible .app-grid figure,.reveal.is-visible .experience-entry{animation:card-rise .65s backwards;animation-delay:calc(var(--card-index,0)*90ms)}
.cover-top,.cover-title-wrap,.cover>.open-note{animation:cover-appear .85s cubic-bezier(.2,.75,.2,1) both}.cover-title-wrap{animation-delay:.12s}.cover>.open-note{animation-delay:.25s}@keyframes cover-appear{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.cover-top,.cover-title-wrap,.cover>.open-note{animation:none!important}}
/* Cover composition follows the supplied poster reference. */
.cover-sky{background:linear-gradient(180deg,#cfeee5a8 0%,#d6e7d85e 52%,#dce9c054 100%),url("assets/window-meadow.jpg") center 67%/cover no-repeat}.cover-sky:before,.cover-sky:after{content:none!important}.cover-grain{opacity:.09}.cover-top{display:block;left:0;right:0;top:6.5%;text-align:center}.signature{display:inline-block;font:600 clamp(.82rem,1.4vw,1.05rem)/1.2 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:#536b56}.cover-title-wrap{top:28%;display:flex;flex-direction:column;align-items:center;gap:0}.cover-title-wrap .eyebrow{display:none}.cover h1{font-size:clamp(5.5rem,16.5vw,13.5rem);line-height:1;letter-spacing:-.035em;color:#edb7c1;text-shadow:3px 4px 0 #f7e6a2,8px 10px 0 #536c59}.portfolio-initial{position:static;display:inline;font:inherit;line-height:inherit;letter-spacing:inherit;vertical-align:baseline;margin:0;color:inherit;transform:none;text-shadow:inherit}.portfolio-rest{position:static;z-index:auto;color:inherit;text-shadow:inherit}.title-spark{right:-.22em;top:.1em}.cover-subtitle{margin:2.2rem 0 0;font:600 clamp(1.05rem,3vw,2rem)/1.2 var(--sans);letter-spacing:.01em;color:#4c6855;text-shadow:0 1px 5px #f7f7e8b8}.cover .meadow,.cover-butterfly{display:none}.cover>.open-note{bottom:8%;background:#fffaf0e8;border-color:#ffffffbd;box-shadow:0 5px 18px #223d3250}
@media(max-width:760px){.cover-top{top:6%}.cover-title-wrap{top:29%}.cover h1{font-size:clamp(4.3rem,17.5vw,7rem);letter-spacing:-.045em}.cover-subtitle{margin-top:1.55rem;font-size:clamp(1rem,4vw,1.25rem);max-width:90%;text-align:center}.cover-sky{background-position:center 62%}.cover>.open-note{bottom:7%}}
@media(prefers-reduced-motion:reduce){.cover .meadow i{animation:none}}
/* Software tools: keep each product name beside its logo at every width. */
.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px}.app-grid figure{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;justify-content:stretch;gap:14px;min-height:104px;padding:15px 18px;text-align:left;border-radius:15px}.app-grid .app-icon{width:68px;height:68px;margin:0;border-radius:15px}.app-grid figcaption{min-width:0;max-width:none;white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none;text-align:left;font-size:clamp(.95rem,1.4vw,1.12rem);line-height:1.25}.app-grid .office-tool{grid-column:auto}.app-grid .office-tool .app-icon{width:68px;height:56px;padding:5px;border-radius:10px}.app-grid .office-tool .app-icon img{object-fit:contain}.app-grid figure:hover,.app-grid figure:focus-within{transform:translateY(-4px) scale(1.015);background:#fff5f4;border-color:#d4a9a8}.app-grid figure:hover .app-icon{transform:rotate(-4deg) scale(1.04)}
@media(max-width:760px){.app-grid{grid-template-columns:minmax(0,1fr);gap:11px;margin-top:24px}.app-grid figure{grid-template-columns:62px minmax(0,1fr);min-height:90px;padding:12px 16px;gap:15px}.app-grid .app-icon{width:62px;height:62px}.app-grid figcaption{font-size:1rem}.app-grid .office-tool .app-icon{width:62px;height:52px}}
@media(prefers-reduced-motion:reduce){.app-grid figure:hover,.app-grid figure:focus-within{transform:none}.app-grid figure:hover .app-icon{transform:none}}
/* Colorful portfolio scrapbook: layered paper, flower stickers, washi tape, and photo lightbox. */
.software-sheet{background-color:#fff8df;background-image:radial-gradient(#ddc79435 .7px,transparent .8px),linear-gradient(135deg,#fff8df,#fce7e5 55%,#e6f0dc)}.software-sheet:before,.collection-sheet:before{content:"✿";position:absolute;z-index:1;top:20px;right:30px;color:#d98fa0;font:2.6rem var(--script);transform:rotate(14deg);pointer-events:none}.software-sheet:after,.collection-sheet:after{mix-blend-mode:soft-light}.collection-sheet{position:relative;margin-bottom:48px;padding:clamp(30px,5vw,62px);background:linear-gradient(145deg,#fffaf0,#fae3e5 60%,#e7f0dc);border:1px solid #e5d5bf}.collection-sheet:nth-of-type(odd){background:linear-gradient(145deg,#f8e3ed,#fff8df 55%,#dceee0)}.collection-sheet .chapter-stamp{display:inline-block;margin-bottom:9px;padding:6px 13px;border:0;background:#d9ebce;color:#536b56;box-shadow:2px 3px 0 #a8bd96;border-radius:4px;transform:rotate(-2deg)}.collection-sheet .script-heading{position:relative;z-index:2;margin:8px 0 10px;text-align:left;font-size:clamp(2.8rem,6vw,4.8rem);color:#536b56}.collection-flower{position:absolute;right:9%;top:19%;color:#d8919a;font-size:3.1rem;transform:rotate(18deg);text-shadow:2px 3px 0 #f3df9a}.collection-source{position:relative;z-index:2;display:inline-block;margin:0 0 25px;padding:7px 13px;color:#fff9e9;background:#718b68;text-decoration:none;border-radius:999px;font-size:.82rem;font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}.collection-source:hover{transform:translateY(-3px) rotate(-2deg);background:#bb7f83;box-shadow:0 6px 13px #593f3540}.portfolio-wall{position:relative;z-index:2;columns:3 220px;column-gap:20px}.photo-wall{columns:2 320px}.scrap-photo{position:relative;break-inside:avoid;margin:0 0 20px;padding:0}.photo-trigger{position:relative;display:block;width:100%;padding:9px 9px 13px;border:1px solid #e7d9c4;border-radius:3px;background:#fffdf7;box-shadow:0 7px 15px #5d4c3c22;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s;transform:rotate(var(--tilt,0deg))}.scrap-photo:nth-child(4n+1){--tilt:-1.1deg}.scrap-photo:nth-child(4n+2){--tilt:1.2deg}.scrap-photo:nth-child(4n+3){--tilt:.5deg}.photo-trigger:before{content:"";position:absolute;z-index:2;top:-9px;left:50%;width:74px;height:17px;transform:translateX(-50%) rotate(-3deg);background:#f0c8c8d9;box-shadow:0 1px 2px #554b3920}.scrap-photo:nth-child(3n) .photo-trigger:before{background:#e4d58ed9;transform:translateX(-50%) rotate(3deg)}.photo-trigger img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;border-radius:1px}.scrap-photo:hover{z-index:4}.photo-trigger:hover,.photo-trigger:focus-visible{transform:translateY(-6px) rotate(0) scale(1.015);box-shadow:0 18px 28px #48392e35}.empty-board{position:relative;display:flex;justify-content:center;align-items:center;gap:clamp(12px,3vw,32px);min-height:250px;margin:18px 0 12px;padding:30px;background:repeating-linear-gradient(135deg,#fffdf5 0 18px,#fbf1df 18px 36px);border:1px dashed #c9b999;border-radius:12px}.empty-frame{display:grid;place-items:center;width:clamp(80px,17vw,150px);aspect-ratio:4/5;border:8px solid #fffdf7;background:linear-gradient(145deg,#ecf2dc,#f7dce4);box-shadow:0 8px 18px #4c43332a;transform:rotate(-5deg)}.empty-frame:nth-child(2){transform:translateY(-16px) rotate(3deg);background:linear-gradient(145deg,#f8e9bc,#e2eef0)}.empty-frame:nth-child(3){transform:rotate(-1deg);background:linear-gradient(145deg,#e8def1,#fae8d8)}.empty-frame span{font:2.5rem var(--script);color:#b97f78;opacity:.72}.empty-note{margin:8px 0 10px;color:#786e65;font-size:.93rem}.writing-empty{min-height:225px;background:radial-gradient(#ccbfa333 .7px,transparent .8px) 0 0/8px 8px,#fbf4df}.writing-page{display:grid;gap:15px;width:min(70%,390px);padding:26px 30px;background:#fffdf7;border:1px solid #eadfc7;box-shadow:0 9px 18px #5b503423;transform:rotate(-2deg)}.writing-page i{display:block;width:92%;height:2px;background:#cfd7c2}.writing-page i:nth-child(2n){width:74%}.writing-spark{position:absolute;right:18%;top:22%;color:#cc8992;font-size:2.6rem;transform:rotate(17deg)}.photo-lightbox{position:fixed;inset:0;width:min(1100px,94vw);max-width:none;max-height:92vh;padding:52px 72px 36px;border:1px solid #fff;background:#fff9eb;box-shadow:0 20px 80px #20291f70;text-align:center}.photo-lightbox::backdrop{background:#263126cc;backdrop-filter:blur(4px)}.lightbox-image{display:block;width:auto;height:auto;max-width:100%;max-height:72vh;margin:auto;border:8px solid #fff;box-shadow:0 9px 25px #30251f35}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;z-index:2;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:#f0d8df;color:#4f4a55;font-size:1.5rem;cursor:pointer;transition:transform .2s,background .2s}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{transform:scale(1.1);background:#e8d998}.lightbox-close{right:16px;top:14px}.lightbox-prev{left:14px;top:50%}.lightbox-next{right:14px;top:50%}.lightbox-caption{margin:14px 0 0;color:#625951;font:1.2rem var(--script)}.photo-trigger:focus-visible,.collection-source:focus-visible{outline:3px solid #b77b83;outline-offset:4px}
@media(max-width:760px){.collection-sheet{padding:30px 22px}.collection-sheet .script-heading{font-size:clamp(2.45rem,10vw,3.5rem);max-width:calc(100% - 35px)}.collection-flower{right:8%;top:18%;font-size:2.4rem}.portfolio-wall,.photo-wall{columns:2 140px;column-gap:12px}.scrap-photo{margin-bottom:13px}.photo-trigger{padding:7px 7px 10px}.photo-trigger:before{width:57px;height:14px;top:-7px}.empty-board{min-height:190px;padding:18px 12px}.photo-lightbox{padding:58px 46px 30px}.lightbox-image{max-height:68vh}.lightbox-prev{left:4px}.lightbox-next{right:4px}}
@media(max-width:430px){.portfolio-wall,.photo-wall{columns:1}.photo-lightbox{width:100vw;max-height:100dvh;padding:55px 38px 26px}.lightbox-image{max-height:72vh}.collection-sheet .script-heading{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){.photo-trigger,.collection-source,.lightbox-close,.lightbox-prev,.lightbox-next{transition:none!important}.photo-trigger:hover,.photo-trigger:focus-visible{transform:none}}
.about-sheet{background:linear-gradient(135deg,#fff8dd,#f8e0e6 56%,#e3f0df)}.skills-sheet{background:linear-gradient(135deg,#e5f0dc,#fff8df 54%,#f7e2ea)}.experience-sheet{background:linear-gradient(135deg,#fff3d7,#f4e3ef 52%,#e2efdf)}.about-sheet:before,.skills-sheet:before,.experience-sheet:before{content:"✿";position:absolute;top:20px;right:30px;color:#d58c99;font:2.6rem var(--script);transform:rotate(14deg);pointer-events:none}.skills-list li{margin:4px 0;padding:12px 14px;border:1px solid #eadcc7;border-radius:8px;background:#fffdf6a8}.skills-list li:nth-child(3n+1){background:#fce8e7}.skills-list li:nth-child(3n+2){background:#e8f0dc}.skills-list li:hover{box-shadow:0 6px 13px #5648311c}.experience-entry{position:relative;margin:27px 0;background:#fffdf7e8}.experience-entry:before{content:"";position:absolute;top:-8px;left:35px;width:72px;height:16px;background:#e8c8c0cc;transform:rotate(-3deg)}.experience-entry:nth-of-type(even):before{left:auto;right:35px;background:#eddda1cc;transform:rotate(3deg)}
/* Job-application finish: keep the scrapbook color, tighten the structure. */
:root{--paper:#fffdf8;--shadow:0 14px 32px #51483b17}.journal-shell{max-width:1160px;padding-top:70px}.collection-sheet{padding:clamp(30px,5vw,58px);margin-bottom:36px;background:#fffdf8!important;border:1px solid #e6ded0;border-top:4px solid #d8a0a0;border-radius:14px;box-shadow:0 14px 32px #51483b17}.collection-sheet:nth-of-type(even){border-top-color:#a6be9c}.collection-sheet:before{content:"✿";top:18px;right:24px;color:#c88e96;font-size:1.55rem;opacity:.82;transform:none}.collection-sheet .chapter-stamp{margin-bottom:9px;padding:5px 10px;background:#f3edda;color:#68745e;box-shadow:none;border-radius:4px;letter-spacing:.12em;transform:none}.collection-sheet .script-heading{margin:8px 0 12px;color:#425849;font-size:clamp(2.5rem,5vw,3.8rem);letter-spacing:-.025em}.collection-flower{top:18px;right:60px;font-size:1.25rem;color:#d1a25f;text-shadow:none;opacity:.82}.collection-source{margin:0 0 22px;padding:7px 12px;background:#edf1e6;color:#4e654f;border:1px solid #d7e0d0;border-radius:6px;font-size:.78rem;box-shadow:none}.collection-source:hover{transform:translateY(-2px);background:#f4e5e4;color:#534a52;box-shadow:0 5px 12px #493d2c18}.portfolio-wall,#campaign .portfolio-wall,#photography .portfolio-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));columns:auto;column-gap:0;gap:18px;align-items:start}.scrap-photo{min-width:0;margin:0;padding:7px;border:1px solid #e8e1d7;border-radius:10px;background:#fff;box-shadow:0 4px 12px #51483b0d;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.scrap-photo:nth-child(n){--tilt:0deg}.scrap-photo:hover{transform:translateY(-4px);border-color:#c9d5c0;box-shadow:0 12px 25px #51483b1c}.photo-trigger{aspect-ratio:4/3;padding:0;border:0;border-radius:6px;background:#f2f1ed;box-shadow:none;overflow:hidden;transform:none}.photo-trigger:before{display:none}.photo-trigger img{width:100%;height:100%;max-height:none;object-fit:contain;background:#f4f2ed;transition:transform .3s ease}.photo-trigger:hover,.photo-trigger:focus-visible{transform:none;box-shadow:none}.photo-trigger:hover img{transform:scale(1.025)}#campaign .photo-trigger{aspect-ratio:3/4;background:#f7f3eb}#campaign .photo-trigger img{background:#f7f3eb}#photography .photo-trigger{aspect-ratio:4/3}.empty-collection{border-top-color:#d8a0a0}.empty-board{min-height:215px;margin:16px 0 12px;padding:22px;background:#faf8f2;border:1px dashed #cfc8ba;border-radius:10px}.empty-frame{border:1px solid #e1d9ca;border-radius:7px;box-shadow:0 4px 12px #51483b12;transform:rotate(-2deg)}.empty-frame:nth-child(2){transform:translateY(-7px) rotate(1.5deg)}.empty-frame:nth-child(3){transform:rotate(-1deg)}.empty-note{color:#636961;font-size:.88rem}.writing-empty{background-color:#faf8f2;background-image:radial-gradient(#c9c1b133 .6px,transparent .7px)}.writing-page{box-shadow:0 5px 13px #51483b14;transform:rotate(-1deg)}.writing-spark{font-size:2rem;opacity:.7}.experience-entry{border-left:3px solid #dca4a3;box-shadow:0 3px 12px #51483b0c}.experience-entry:before{display:none}.experience-entry:nth-of-type(even){border-left-color:#a7bd9b}.skills-list li{border-color:#e5e0d4;border-radius:6px}.skills-list li:nth-child(3n+1){background:#fbefed}.skills-list li:nth-child(3n+2){background:#f2f5ec}
@media(max-width:760px){.portfolio-wall,#campaign .portfolio-wall,#photography .portfolio-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.collection-sheet{padding:28px 20px;border-radius:12px}.collection-sheet .script-heading{font-size:clamp(2.35rem,9vw,3.2rem)}.collection-flower{right:53px}.scrap-photo{padding:5px;border-radius:8px}}
@media(max-width:430px){.portfolio-wall,#campaign .portfolio-wall,#photography .portfolio-wall{grid-template-columns:1fr}.photo-trigger{aspect-ratio:auto!important}.photo-trigger img{height:auto;max-height:420px}.empty-board{min-height:170px}}
@media(prefers-reduced-motion:reduce){.scrap-photo,.photo-trigger img{transition:none!important}.scrap-photo:hover,.photo-trigger:hover img{transform:none}}
/* Extra scrapbook ornaments: denser details with the tidy grid preserved. */
.cover:before,.cover:after{position:absolute;z-index:2;display:block;pointer-events:none;text-shadow:0 3px 8px #4b58463b}.cover:before{content:"✿";left:11%;top:53%;color:#f2d8aa;font:clamp(2rem,5vw,4.2rem) var(--script);transform:rotate(-13deg);animation:ornament-float 4s ease-in-out infinite alternate}.cover:after{content:"✧";right:12%;top:40%;color:#dc9ca1;font:clamp(2rem,4vw,3.4rem) var(--serif);transform:rotate(12deg);animation:ornament-float 3.5s ease-in-out infinite alternate-reverse}@keyframes ornament-float{to{translate:0 -8px;rotate:8deg}}.cover .title-spark{display:inline-block;animation:ornament-twinkle 2.6s ease-in-out infinite alternate}@keyframes ornament-twinkle{to{scale:1.35;rotate:16deg;opacity:.65}}
.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{font-size:2.15rem;color:#d58c99;text-shadow:1px 2px 0 #f1dfad;animation:ornament-float 4.2s ease-in-out infinite alternate}.software-sheet .page-number:before{content:"✧  ";color:#d1948d;font-size:1.1rem}.collection-sheet:before{font-size:2rem;text-shadow:1px 2px 0 #efe0ad}.collection-flower{font-size:1.75rem;color:#ce8992;text-shadow:1px 2px 0 #f1dfad;animation:ornament-float 4.5s ease-in-out infinite alternate}.collection-sheet .script-heading:after{content:"✧";display:inline-block;margin-left:9px;color:#d1a15c;font:normal .47em var(--serif);vertical-align:top;animation:ornament-twinkle 3s ease-in-out infinite alternate}.collection-sheet .chapter-stamp{box-shadow:2px 3px 0 #cad6bf;position:relative}.collection-sheet .chapter-stamp:after{content:"✿";position:absolute;right:-18px;top:-13px;color:#d88f99;font-size:1.05rem;transform:rotate(15deg)}.scrap-photo{position:relative}.scrap-photo:before{content:"";position:absolute;z-index:3;top:-6px;left:50%;width:58px;height:14px;transform:translateX(-50%) rotate(-4deg);background:#efc5c5d9;box-shadow:0 1px 2px #473a2d1b;pointer-events:none}.scrap-photo:nth-child(3n+2):before{background:#e6d78dd9;transform:translateX(-50%) rotate(4deg)}.scrap-photo:nth-child(3n):before{background:#c9dfc0d9;transform:translateX(-50%) rotate(-2deg)}.scrap-photo:hover:before{opacity:.55}.app-grid figure{position:relative;background:#fffaf1}.app-grid figure:nth-child(4n+1){background:#fcf0ed}.app-grid figure:nth-child(4n+2){background:#f0f5e9}.app-grid figure:nth-child(4n+3){background:#fff7df}.app-grid figure:after{content:"✧";position:absolute;top:8px;right:10px;color:#c98b8e;font:1rem var(--serif);transition:transform .25s}.app-grid figure:hover:after{transform:rotate(35deg) scale(1.4);color:#c69a4b}.experience-entry{overflow:visible}.experience-entry:after{content:"✿";position:absolute;top:14px;right:16px;color:#d6a0a0;font-size:1.1rem;opacity:.76}.experience-entry:nth-of-type(even):after{color:#a8bd9b}.skills-list li{position:relative;padding-right:30px}.skills-list li:after{content:"✧";position:absolute;right:11px;top:10px;color:#c69b55;font-size:.9rem;opacity:.8}.portfolio-folder{box-shadow:2px 4px 0 #bdcfb6}.empty-board:before,.empty-board:after{content:"✧";position:absolute;color:#c98b8e;font-size:1.5rem}.empty-board:before{left:12px;top:10px}.empty-board:after{right:14px;bottom:10px;color:#c49a4b}
@media(max-width:760px){.cover:before{left:5%;top:54%;font-size:2.2rem}.cover:after{right:6%;top:43%;font-size:2rem}.scrap-photo:before{width:48px;height:12px;top:-5px}.collection-flower{font-size:1.5rem}.collection-sheet .script-heading:after{margin-left:4px}}
@media(prefers-reduced-motion:reduce){.cover:before,.cover:after,.cover .title-spark,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before,.collection-flower,.collection-sheet .script-heading:after{animation:none!important}}
/* Typography matched to the rounded geometric sans in the supplied reference. */
:root{--sans:'Outfit',Arial,sans-serif;--serif:'Outfit',Arial,sans-serif;--script:'Outfit',Arial,sans-serif}.cover h1,h1,h2,h3,.script-heading,.software-sheet .script-heading em,.signature,.hand-note,.card-label,.lightbox-caption,.cover-subtitle,.open-note{font-family:'Outfit',Arial,sans-serif}.cover h1{font-style:normal;font-weight:700;letter-spacing:-.055em}.script-heading{font-style:normal;font-weight:700;letter-spacing:-.04em}.software-sheet .script-heading em{font-style:normal;font-weight:700}.experience-entry h3{font-family:'Outfit',Arial,sans-serif;font-weight:700;letter-spacing:-.02em}.signature{font-weight:600;letter-spacing:.13em}.hand-note,.card-label,.lightbox-caption{font-style:normal}.cover-subtitle{font-weight:600}.open-note{font-weight:600}.chapter-stamp,.page-number,.zone-label,.tiny-label,.index-tab{font-family:'Outfit',Arial,sans-serif}
/* Restore the previous display and handwritten font pairing. */
:root{--serif:'DM Serif Display',Georgia,serif;--script:'Kalam','Comic Sans MS',cursive;--sans:'DM Sans',Arial,sans-serif}.cover h1,.script-heading,.software-sheet .script-heading em{font-family:'Bodoni Moda',var(--serif)}.cover h1{font-style:italic;font-weight:500;letter-spacing:-.055em}.script-heading{font-style:italic;font-weight:500;letter-spacing:-.035em}.software-sheet .script-heading em{font-style:italic;font-weight:500}.signature,.hand-note,.card-label,.lightbox-caption,.open-note{font-family:var(--script)}.signature{font-weight:400}.cover-subtitle{font-family:var(--sans);font-weight:600}.experience-entry h3{font-family:var(--serif);font-weight:400;letter-spacing:normal}.chapter-stamp,.page-number,.zone-label,.tiny-label,.index-tab{font-family:var(--sans)}
/* Formalize the scrapbook ornaments with restrained geometric accents. */
.cover:before,.cover:after{content:"";display:block;width:68px;height:68px;border:1px solid #f0dfb7aa;border-radius:50%;background:radial-gradient(circle,#f0dfb760 0 2px,transparent 3px);box-shadow:inset 0 0 0 7px #e3efdc1a,0 5px 18px #314b3a12;font-size:0;animation:none;transform:none}.cover:before{left:12%;top:53%}.cover:after{right:13%;top:42%;width:42px;height:42px;border-color:#e8c7c3b3}.cover-title-wrap:before{content:"";display:block;width:66px;height:1px;margin:0 auto 14px;background:linear-gradient(90deg,transparent,#c8a76d,transparent)}.cover .title-spark{animation:none;color:#d4b46d;scale:1}.collection-sheet:before,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{content:"";display:block;top:24px;right:28px;width:32px;height:2px;background:linear-gradient(90deg,transparent,#c7a769);font-size:0;text-shadow:none;transform:none;animation:none}.collection-flower{display:none}.collection-sheet .chapter-stamp:after{content:none}.collection-sheet .script-heading:after{content:"";width:7px;height:7px;margin-left:12px;border:1px solid #c8a86a;vertical-align:middle;transform:rotate(45deg);animation:none}.scrap-photo:before{content:none}.scrap-photo{border-color:#e4ddd1;box-shadow:0 4px 14px #51483b10}.scrap-photo:hover{transform:translateY(-3px);box-shadow:0 10px 20px #51483b17}.app-grid figure:after{content:"";width:7px;height:7px;border:1px solid #c5a66d;border-radius:50%;font-size:0;animation:none}.app-grid figure:hover:after{transform:scale(1.15);background:#c5a66d}.experience-entry:after{content:"";top:17px;right:18px;width:8px;height:8px;border:1px solid #c6a76b;border-radius:50%;font-size:0;opacity:.9}.skills-list li:after{content:"";top:17px;right:13px;width:6px;height:6px;border:1px solid #c5a66d;border-radius:50%;font-size:0}.empty-board:before,.empty-board:after{content:"";width:9px;height:9px;border:1px solid #c6a76b;border-radius:50%;font-size:0}.empty-board:before{left:15px;top:15px}.empty-board:after{right:15px;bottom:15px}.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{font-size:0;animation:none}.portfolio-folder{box-shadow:0 3px 0 #cbd5c2}.photo-trigger:before{display:none}
@media(max-width:760px){.cover:before{left:5%;top:54%;width:42px;height:42px}.cover:after{right:6%;top:43%;width:30px;height:30px}.collection-sheet:before,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{right:19px;top:18px;width:24px}.collection-sheet .script-heading:after{width:6px;height:6px;margin-left:8px}}
@media(prefers-reduced-motion:reduce){.cover-title-wrap:before{animation:none}.cover:before,.cover:after,.cover .title-spark{animation:none!important}}
/* Lighter, softer version of the portfolio palette. */
:root{--cream:#fffaf0;--paper:#fffefa;--mint:#eef5eb;--mint-deep:#d9e9d7;--sage:#92aa8d;--pink:#f5e2e3;--yellow:#fbf3d8;--ink:#4b594e;--muted:#858d82;--shadow:0 16px 34px #52634d16,0 4px 10px #52634d0b}.html,body{background:#f7f6ef;color:#4f5b52}body{background:#f7f6ef;color:#4f5b52}::selection{background:#f4dfe0;color:#45564a}.cover{background:#edf5ea;color:#506555}.cover-sky{background:linear-gradient(180deg,#e8f5efce 0%,#f0f4e8a3 52%,#fbf4d7ad 100%),url("assets/window-meadow.jpg") center 67%/cover no-repeat}.cover h1{color:#e8bdc2;text-shadow:2px 3px 0 #fbf0ce,6px 8px 0 #91a98f}.cover-subtitle{color:#536b59;text-shadow:0 1px 7px #fffdf0cc}.cover:before,.cover:after{border-color:#f5ebd4bb;background:radial-gradient(circle,#f7edda70 0 2px,transparent 3px);box-shadow:inset 0 0 0 7px #eaf2e51a,0 5px 18px #314b3a0b}.cover:after{border-color:#f1daddc2}.cover-title-wrap:before{background:linear-gradient(90deg,transparent,#d5bf8d,transparent)}.cover>.open-note{background:#fffdf3ed;border-color:#fffef2;color:#546353}.paper{background-color:#fffefa;box-shadow:var(--shadow)}.single-sheet,.about-sheet,.software-sheet,.skills-sheet,.experience-sheet{background-color:#fffefa}.about-sheet{background:linear-gradient(135deg,#fffdf4,#fbf0f0 56%,#f0f6ec)}.software-sheet{background:linear-gradient(135deg,#fffdf2,#fceeee 55%,#f0f6ec)}.skills-sheet{background:linear-gradient(135deg,#edf5eb,#fffdf2 54%,#fbf0f2)}.experience-sheet{background:linear-gradient(135deg,#fff8e7,#fbf0f5 52%,#eff5eb)}.collection-sheet{background:#fffefa!important;border-color:#eee8dd;border-top-color:#efd8d7}.collection-sheet:nth-of-type(even){border-top-color:#dce9d7}.collection-sheet .chapter-stamp{background:#f8f3e6;color:#68765f;box-shadow:2px 3px 0 #e2eadb}.collection-source{background:#f0f5eb;color:#566a53;border-color:#e3ebdd}.collection-source:hover{background:#faeceb;color:#62565a}.scrap-photo{background:#fffefa;border-color:#eee9e0;box-shadow:0 4px 14px #51483b0a}.photo-trigger,.photo-trigger img,#campaign .photo-trigger,#campaign .photo-trigger img{background:#f8f7f1}.app-grid figure,.app-grid figure:nth-child(4n+1){background:#fff6f4}.app-grid figure:nth-child(4n+2){background:#f4f8ef}.app-grid figure:nth-child(4n+3){background:#fffbeb}.app-grid figure:nth-child(4n){background:#f4f1f8}.app-grid figure:hover{background:#fff9f7;border-color:#e7c8c8}.app-grid figure:after,.skills-list li:after,.experience-entry:after{border-color:#d7c18d}.skills-list li,.skills-list li:nth-child(3n+1){background:#fff5f4;border-color:#f0e5dd}.skills-list li:nth-child(3n+2){background:#f3f7ef;border-color:#e6eddf}.skills-list li:nth-child(3n){background:#fffbef;border-color:#f0eadc}.skills-list li:hover{background:#fffdf9}.experience-entry{background:#fffefa;border-color:#eee7db;border-left-color:#edcfce;box-shadow:0 3px 12px #51483b08}.experience-entry:nth-of-type(even){border-left-color:#dce8d6}.portfolio-folder{background:#eaf3e8;color:#52684f;box-shadow:0 3px 0 #dae6d3}.portfolio-folder:hover{background:#f8e9e8}.empty-board{background:#fbfaf5;border-color:#e4ddcf}.empty-frame{background:linear-gradient(145deg,#f2f6e9,#f9e9eb);border-color:#fffefa}.empty-frame:nth-child(2){background:linear-gradient(145deg,#fcf4df,#edf5f6)}.empty-frame:nth-child(3){background:linear-gradient(145deg,#f2edf6,#fbf1e7)}.writing-empty{background-color:#fbfaf5;background-image:radial-gradient(#d6d0c344 .6px,transparent .7px)}.writing-page{background:#fffefa;border-color:#eee7d9}.writing-page i{background:#dbe2d5}.writing-spark{color:#d5a3a5}.side-nav a{background:#fffdf1d9;color:#758573}.side-nav a:hover,.side-nav a.active{background:#fffefa;color:#50634f}.mobile-menu,.mobile-nav{background:#fffefa;color:#526050}.mobile-nav a{color:#526050}.lightbox-close,.lightbox-prev,.lightbox-next{background:#f5e7e8;color:#5c5656}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#f7efd8}.lightbox-image{border-color:#fffefa;box-shadow:0 9px 25px #30251f20}.chapter-stamp{color:#73836c;border-color:#eadfca}
/* Solid-color pass: remove gradient fills and keep only the supplied cover photo. */
*,*::before,*::after{background-image:none!important}.body{background:#f7f6ef}body{background:#f7f6ef}.paper:after{display:none}.cover-sky{background-color:#edf4e9!important;background-image:url("assets/window-meadow.jpg")!important;background-position:center 67%;background-size:cover;background-repeat:no-repeat}.cover-sky:after{content:""!important;position:absolute;inset:0;background-color:#eaf3e680}.cover-sky:before{content:none!important}.cover-grain{background-color:transparent}.cover-title-wrap:before,.collection-sheet:before,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{background-color:#d9c99d}.about-sheet{background:#fff7f3}.software-sheet{background:#fff8e8}.skills-sheet{background:#eff5ea}.experience-sheet{background:#fff4e4}.collection-sheet,.collection-sheet:nth-of-type(even){background:#fffefa!important}.collection-sheet:nth-of-type(odd){background:#fff8f3!important}.app-grid figure,.app-grid figure:nth-child(4n+1){background:#fff3f1}.app-grid figure:nth-child(4n+2){background:#f0f5eb}.app-grid figure:nth-child(4n+3){background:#fff9e8}.app-grid figure:nth-child(4n){background:#f5f1f7}.skills-list li,.skills-list li:nth-child(3n+1){background:#fff3f1}.skills-list li:nth-child(3n+2){background:#eff5ea}.skills-list li:nth-child(3n){background:#fff9e8}.experience-entry{background:#fffefa}.portfolio-wall .scrap-photo{background:#fffefa}.photo-trigger,#campaign .photo-trigger,#campaign .photo-trigger img,#photography .photo-trigger img{background:#f4f2ec}.empty-board{background:#faf9f4}.empty-frame{background:#f1f5eb}.empty-frame:nth-child(2){background:#fff8e7}.empty-frame:nth-child(3){background:#f5eff5}.writing-empty{background:#faf9f4}.writing-page{background:#fffefa}.cover:before,.cover:after{background-color:transparent}
/* Rebalanced solid palette: ivory base, plum ink, sage structure, blush and butter accents. */
:root{--cream:#f4f1e9;--paper:#fffdf7;--mint:#e7eee4;--mint-deep:#c8d6c2;--sage:#9fb397;--pink:#e7b9c1;--yellow:#e8d99c;--ink:#51485a;--muted:#7a7580;--shadow:0 14px 30px #4d455312,0 3px 8px #4d45530a}body{background:#f4f1e9;color:#51485a}.cover{background:#e5eee5;color:#51485a}.cover-sky{background-color:#dce9df!important;background-image:url("assets/window-meadow.jpg")!important}.cover-sky:after{background-color:#dce9df9c}.cover h1{color:#e5aeb9;text-shadow:2px 3px 0 #f1e5b6,6px 8px 0 #687b65}.cover-subtitle{color:#4e6152}.cover:before,.cover:after{border-color:#f2e9cfbb;box-shadow:inset 0 0 0 7px #eaf2e51a,0 5px 18px #314b3a0b}.cover:after{border-color:#e8c8cbb3}.cover-title-wrap:before{background-color:#cdbb84}.cover>.open-note{background:#fffdf7;color:#51485a;border-color:#ede5d8}.journal-shell{color:#51485a}.paper,.single-sheet,.collection-sheet,.collection-sheet:nth-of-type(even),.collection-sheet:nth-of-type(odd){background:#fffdf7!important;border-color:#e5dfd4;box-shadow:0 14px 30px #4d455312}.about-sheet,.software-sheet,.skills-sheet,.experience-sheet{background:#fffdf7!important;border-color:#e5dfd4}.about-sheet,.software-sheet{border-top:3px solid #e7b9c1}.skills-sheet{border-top:3px solid #c8d6c2}.experience-sheet{border-top:3px solid #e8d99c}.collection-sheet{border-top:3px solid #e7b9c1}.collection-sheet:nth-of-type(even){border-top-color:#c8d6c2}.collection-sheet .chapter-stamp{background:#edf1e9;color:#5d6859;box-shadow:none;border:1px solid #dfe6da}.collection-sheet .script-heading,.about-sheet .script-heading,.software-sheet .script-heading,.skills-sheet .script-heading,.experience-sheet .script-heading{color:#51485a}.collection-sheet:before,.about-sheet:before,.software-sheet:before,.skills-sheet:before,.experience-sheet:before{background-color:#cdbb84}.collection-sheet .script-heading:after{border-color:#cdbb84}.collection-source{background:#edf1e9;color:#52634f;border-color:#dce5d7}.collection-source:hover{background:#f6e8e9;color:#51485a}.app-grid figure,.app-grid figure:nth-child(n){background:#fffdf7;border-color:#e5dfd4;box-shadow:0 4px 12px #4d45530a}.app-grid figure:hover{background:#fcf1f1;border-color:#e7b9c1;box-shadow:0 10px 20px #4d455315}.app-grid figure:after{border-color:#cdbb84}.app-grid figure:hover:after{background:#cdbb84}.app-grid figcaption{color:#51485a}.skills-list li,.skills-list li:nth-child(n){background:#f4f6f1;border-color:#e2e7dd;color:#51485a}.skills-list li:hover{background:#fbf1f1;box-shadow:0 5px 12px #4d455310}.skills-list li:before{color:#c9808c}.skills-list li:after{border-color:#cdbb84}.experience-entry,.experience-entry:nth-of-type(even){background:#fffdf7;border-color:#e5dfd4;border-left-color:#b8c8b0;box-shadow:0 4px 12px #4d45530b}.experience-entry:after{border-color:#cdbb84}.experience-entry h3{color:#51485a}.portfolio-folder{background:#edf1e9;color:#52634f;box-shadow:0 3px 0 #c8d6c2}.portfolio-folder:hover{background:#f7e9ea;color:#51485a}.scrap-photo{background:#fffdf7;border-color:#e5dfd4;box-shadow:0 4px 12px #4d45530b}.scrap-photo:hover{border-color:#c8d6c2;box-shadow:0 10px 20px #4d455312}.photo-trigger,#campaign .photo-trigger,#campaign .photo-trigger img,#photography .photo-trigger img{background:#f2f0ea}.empty-board{background:#f7f5ef;border-color:#ddd7cb}.empty-frame{background:#f1f4ee;border-color:#fffdf7}.empty-frame:nth-child(n){box-shadow:0 5px 12px #4d455310}.empty-frame:nth-child(2){background:#fbf6e7}.empty-frame:nth-child(3){background:#f7eff0}.empty-frame span,.writing-spark{color:#b9828a}.writing-empty{background:#f7f5ef}.writing-page{background:#fffdf7;border-color:#e5dfd4}.writing-page i{background:#d6ddd1}.side-nav a,.mobile-menu,.mobile-nav{background:#fffdf7;color:#51485a}.side-nav a:hover,.side-nav a.active,.mobile-nav a:hover{background:#edf1e9;color:#4e6152}.mobile-nav a{color:#51485a}.lightbox-close,.lightbox-prev,.lightbox-next{background:#f6e8e9;color:#51485a}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#f3edda}.lightbox-image{border-color:#fffdf7;box-shadow:0 9px 25px #30251f18}.chapter-stamp{border-color:#e5dfd4;color:#6c7467}.empty-note{color:#716d77}
/* A stationery/mail theme replaces the generic floating scrapbook stickers. */
html{scroll-behavior:auto;scroll-padding-top:18px}.cover-envelope{position:absolute;z-index:2;left:50%;bottom:18%;width:min(360px,54vw);height:122px;overflow:visible;transform:translateX(-50%) rotate(-1deg);border:1px solid #d9d1c1;border-radius:3px;background-color:#fffdf7;box-shadow:0 12px 26px #3e4f4328}.cover-envelope:before,.cover-envelope:after{content:"";position:absolute;left:0;right:0;pointer-events:none}.cover-envelope:before{z-index:1;bottom:0;height:75%;background-color:#e7eee4;clip-path:polygon(0 0,50% 72%,100% 0,100% 100%,0 100%)}.cover-envelope:after{z-index:2;top:0;height:67%;background-color:#f2e3e2;clip-path:polygon(0 0,100% 0,50% 100%)}.envelope-seal{position:absolute;z-index:3;left:50%;top:43%;display:grid;place-items:center;width:39px;height:39px;transform:translate(-50%,-50%);border:2px solid #fff9ed;border-radius:50%;background:#d69ca2;color:#fffaf2;font:600 .74rem var(--sans);letter-spacing:.08em;box-shadow:0 2px 5px #4e454225}.envelope-stamp{position:absolute;z-index:3;right:14px;top:10px;display:grid;place-items:center;width:29px;height:35px;border:1px solid #cbbd9a;background-color:#fffdf7;color:#b9828a;font-size:1rem}.cover>.open-note{bottom:5%;border:1px solid #e3dac8;border-radius:3px;box-shadow:0 4px 12px #3e4f4319}.cover>.open-note:hover{transform:translateX(-50%) translateY(-2px)}.single-sheet.paper,.collection-sheet{position:relative;border:1px solid #e4ded2!important;border-radius:3px!important;background:#fffdf7!important;box-shadow:0 10px 24px #51483b10}.single-sheet:after,.collection-sheet:after{display:block;content:"";position:absolute;inset:auto 15px auto auto;top:14px;width:9px;height:9px;border:1px solid #cbbd9a;border-radius:50%;background-color:#fffdf7;opacity:1;mix-blend-mode:normal;pointer-events:none}.single-sheet .chapter-stamp,.collection-sheet .chapter-stamp{border:1px solid #ded6c5;border-radius:2px;background:#f4f1e9;color:#666158;box-shadow:none;letter-spacing:.12em}.collection-sheet .collection-source{border-radius:3px;background:#edf1e9;color:#52634f}.collection-sheet .script-heading:after{width:6px;height:6px;border-color:#c5b47e}.scrap-photo{border-radius:3px;box-shadow:0 4px 12px #51483b0a}.photo-trigger{border-radius:2px}.experience-entry{border-radius:3px;box-shadow:none}.app-grid figure{border-radius:4px;box-shadow:none}.app-icon{border-radius:10px}.empty-board{border-radius:3px}.empty-frame{border-radius:2px;transform:none!important;box-shadow:none!important}.empty-frame:nth-child(2),.empty-frame:nth-child(3){transform:none!important}.writing-page{transform:none;box-shadow:none}.cover:before,.cover:after,.cover .title-spark,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before,.collection-sheet:before,.collection-flower,.collection-sheet .script-heading:after{animation:none!important}.collection-sheet:before,.about-sheet:before,.skills-sheet:before,.experience-sheet:before,.software-sheet:before{width:24px;height:1px;right:15px;top:18px;background-color:#cbbd9a}.reveal,.reveal.is-visible{opacity:1!important;transform:none!important;transition:none!important}.reveal.is-visible .app-grid figure,.reveal.is-visible .experience-entry{animation:none!important}.cover-top,.cover-title-wrap,.cover>.open-note{animation:none!important}.side-nav a,.mobile-nav a{transition:background-color .2s ease,color .2s ease}.scrap-photo{transition:box-shadow .2s ease,border-color .2s ease}.scrap-photo:hover{transform:none;box-shadow:0 8px 18px #51483b15}.app-grid figure:hover{transform:translateY(-2px);box-shadow:0 6px 14px #51483b10}
@media(max-width:760px){.cover-envelope{bottom:17%;width:min(310px,74vw);height:96px}.envelope-seal{width:34px;height:34px}.envelope-stamp{right:10px;top:8px;width:25px;height:30px}.cover>.open-note{bottom:5%}.single-sheet:after,.collection-sheet:after{right:10px;top:11px;width:7px;height:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.app-grid figure:hover{transform:none}}
/* Clickable stationery ornaments. */
.cover-envelope{display:block;appearance:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer;perspective:800px;transition:transform .25s ease,box-shadow .25s ease}.cover-envelope:hover{transform:translateX(-50%) translateY(-3px) rotate(0);box-shadow:0 16px 28px #3e4f4335}.cover-envelope:focus-visible,.collection-stamp:focus-visible{outline:3px solid #b9828a;outline-offset:4px}.cover-envelope:after{transform-origin:50% 0;backface-visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.cover-envelope.is-open{z-index:6;transform:translateX(-50%) rotate(0)}.cover-envelope.is-open:after{transform:rotateX(180deg)}.envelope-letter{position:absolute;z-index:0;left:12px;right:12px;bottom:10px;display:grid;place-content:center;gap:3px;min-height:84px;padding:12px;border:1px solid #e4ded2;background:#fffdf7;color:#51485a;text-align:center;opacity:0;transform:translateY(0);transition:opacity .3s ease,transform .5s cubic-bezier(.2,.8,.2,1),z-index .01s linear .3s}.envelope-letter strong{font:500 1.05rem var(--serif)}.envelope-letter small{font:.72rem var(--sans);letter-spacing:.04em}.cover-envelope.is-open .envelope-letter{z-index:4;opacity:1;transform:translateY(-74px);transition:opacity .25s ease .08s,transform .5s cubic-bezier(.2,.8,.2,1),z-index .01s}.cover-envelope.is-open .envelope-seal{transform:translate(-50%,-50%) rotate(-12deg) scale(.88)}.envelope-seal{transition:transform .3s ease}.envelope-stamp{transition:transform .25s ease,background-color .25s}.cover-envelope:hover .envelope-stamp{transform:rotate(8deg)}.collection-sheet:after{display:none}.collection-stamp{position:absolute;z-index:4;top:17px;right:34px;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px dashed #bba876;border-radius:50%;background:#f4f1e9;color:#b9828a;font:1.35rem var(--serif);cursor:pointer;box-shadow:0 2px 0 #e3ddcf;transform:rotate(-8deg);transition:transform .25s ease,background-color .25s ease,box-shadow .25s ease}.collection-stamp:hover{transform:rotate(0) scale(1.08);background:#f5e7e8;box-shadow:0 5px 12px #51483b17}.collection-stamp:active{transform:scale(.92) rotate(8deg)}.collection-stamp:focus-visible{outline-offset:3px}
@media(max-width:760px){.cover-envelope{bottom:17%;width:min(310px,74vw);height:96px}.envelope-letter{min-height:72px}.cover-envelope.is-open .envelope-letter{transform:translateY(-63px)}.collection-stamp{top:14px;right:22px;width:39px;height:39px;font-size:1.15rem}}
@media(prefers-reduced-motion:reduce){.cover-envelope,.cover-envelope:after,.envelope-letter,.envelope-seal,.envelope-stamp,.collection-stamp{transition:none!important}}
/* Keep the entry cover in view until Explore portfolio is activated. */
html.entry-locked{height:100%;overflow:hidden;overscroll-behavior:none}html.entry-locked body{position:fixed;inset:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}html.entry-locked .cover{height:100svh;min-height:100svh}.cover-envelope{touch-action:manipulation}.open-note,.skip-link{touch-action:manipulation}
@media(min-width:761px) and (max-height:760px){html.entry-locked .cover h1{font-size:clamp(4.2rem,15vh,10rem)}html.entry-locked .cover-title-wrap{top:22%}html.entry-locked .cover-subtitle{margin-top:1rem}}
