/* Shared refinements keep original project palettes and artwork intact. */
:root{--space-section:clamp(48px,7vw,100px);--readable-caption:13px;--readable-body:clamp(16px,1.2vw,18px)}
html{scroll-padding-top:24px}body{overflow-wrap:break-word}main{min-width:0}img,video,iframe{max-width:100%}a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.ce-header nav a:nth-child(n):is(:hover,:focus-visible,[aria-current]){background:#cfdcff}.ce-header nav a:nth-child(3):is(:hover,:focus-visible,[aria-current]){background:#e7a6c6}.ce-header nav a:nth-child(4):is(:hover,:focus-visible){background:#f3da7e}
.ce-header{gap:20px}.ce-header nav{gap:3px}.ce-header nav a{padding:12px 15px!important}
.ce-portfolio .section-kicker{font-size:13px;line-height:1.6;letter-spacing:.1em}.ce-portfolio .positioning{font:var(--readable-body)/1.7 var(--sans);max-width:470px}.profession{max-width:620px;font-size:clamp(20px,2vw,30px);line-height:1.35}.ce-stacked-logo{margin:0 0 18px!important;width:clamp(240px,30vw,410px)}
.ce-stacked-art{aspect-ratio:432/300}.ce-stacked-art img{position:absolute!important;top:-24%!important;left:0!important;width:100%!important;height:auto!important;max-width:100%!important}.hero-greeting{margin-bottom:5px}.hero-collage{max-width:520px;justify-self:end}.hero-cta{font-size:17px;min-height:48px}.portrait-print figcaption{font-size:13px}.personal-star,.collage-star{opacity:.8}
.ce-portfolio .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 35px;align-items:start}
.ce-portfolio .work-image,.ce-portfolio .print .work-image,.ce-portfolio .film .work-image{padding:18px;rotate:0deg;outline:0;margin:0;box-shadow:2px 5px 12px #401b0015}
.ce-portfolio .work-image img{width:100%;aspect-ratio:3/2;object-fit:contain;scale:1}
.ce-portfolio .film .work-image::before,.ce-portfolio .film .work-image::after{display:none}
.ce-portfolio .project-number,.ce-portfolio .view-cue{font-size:13px;line-height:1.5}.ce-portfolio .work-info{padding-top:21px}.ce-portfolio .work-info :is(h2,h3){font:400 clamp(26px,2.6vw,38px)/1.2 var(--display);white-space:normal;margin:0 0 10px}.ce-portfolio .work-info p{font-size:14px;line-height:1.65}.ce-portfolio .work-card:hover .work-image{translate:0 -4px;rotate:0deg}.ce-portfolio .work-card:hover img{scale:1}
.works-intro{display:block;padding:65px 0 45px}.works-intro h1{font-size:clamp(52px,7vw,105px);line-height:1.1}.works-description{font-size:18px;line-height:1.7;max-width:580px}.archive-toolbar{margin-bottom:35px}.category-tabs a{font-size:15px;min-height:46px}.category-tabs a span,#project-count{font-size:13px}.archive-end{font-size:13px}
.ce-footer{margin-top:50px}.ce-ticket{min-height:48px}.ce-handwritten{font-size:14px}
/* Preserve the draggable layout exercise with larger, visible touch handles. */
.piece-handle{height:36px;min-height:36px;font-size:12px;padding:7px 3px;border-bottom:1px dashed #401b0045;cursor:grab}.image-piece img{height:calc(100% - 42px)}.headline-piece h3{margin-top:8px}.copy-piece p{font-size:12px;line-height:1.5;margin-top:8px}.layout-board{height:520px}.lab-heading{flex-wrap:wrap}.lab-page{font-size:12px}.lab-controls label,.lab-controls button{font-size:14px;min-height:44px}.playground-intro>p:not(.section-kicker){font-size:16px}
.case-study :is(.eyebrow,.label,.hero-meta,.category,.caption,.small-note,figcaption,.source-link,.pdf-link,.zoom-hint){font-size:13px;line-height:1.6}
.case-study :is(.intro-copy,.opening-intro,.section-body,.digital-copy,.identity-notes)>p{font-size:var(--readable-body);line-height:1.75}
.case-study :is(button,.text-link,.pdf-link){min-height:44px}.case-study .frame-button{min-height:0}
.case-next{width:min(90%,1400px);margin:var(--space-section) auto 0;padding:28px 0;border-top:1px solid currentColor;display:flex;align-items:center;justify-content:space-between;gap:30px}.case-next a{display:flex;gap:16px;align-items:center;font:16px/1.5 Inter,Arial,sans-serif;text-decoration:none;min-height:44px}.case-next a>span:first-child:not(.ce-custom-star){font-size:13px;opacity:.75}.case-next a:hover{text-decoration:underline}
/* About: approved portrait, supplied copy, and the existing tactile identity. */
.about-page{width:min(90%,1400px);margin:auto}.about-page section{padding-block:var(--space-section);border-bottom:1px solid var(--line)}.about-page h1{font:400 clamp(54px,6.3vw,104px)/1.07 var(--display);white-space:normal}.about-page h2{font:400 clamp(35px,4vw,62px)/1.14 var(--display);max-width:820px}.about-page p{line-height:1.75}.about-intro{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:70px}.about-role{font:400 clamp(21px,2.3vw,31px)/1.4 var(--display);margin:25px 0}.about-lead{font-size:18px}.about-portrait{position:relative;padding:20px;background:var(--blue);rotate:2deg;box-shadow:7px 8px 0 #401b0012;max-width:450px;justify-self:end}.about-portrait img{height:auto;width:100%}.about-portrait figcaption{color:var(--brown);font-size:12px;margin-top:16px;text-align:center}.about-story .about-prose{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:1120px;margin-top:25px}.about-prose p{font-size:18px;margin:0}.about-interests ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 40px;padding:0;margin:35px 0 0}.about-interests li{padding:24px 0;border-bottom:1px solid var(--line);font:400 clamp(22px,2.5vw,34px)/1.3 var(--display);display:flex;align-items:center;gap:22px}.about-interests li span{font:13px Inter,Arial,sans-serif}.about-interests li:nth-child(2n){border-bottom-color:#e7a6c6}.about-beyond{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:60px}.about-beyond p:not(.section-kicker):not(.handwritten){font-size:16px;max-width:440px}.about-beyond figure{rotate:-1deg;padding:14px;background:var(--paper);box-shadow:3px 5px 12px #401b0020}.about-beyond figcaption{font-size:13px;line-height:1.6;margin:15px 0 0}.personal-placeholder{font-size:14px;padding:20px;border:1px dashed #401b0055;max-width:370px;background:#cfdcff40;margin-top:25px}.about-connect{border-bottom:0!important}.about-connect p{font-size:18px}.about-work-link{display:inline-flex;min-height:44px;align-items:center;margin-left:30px;font-size:16px}
@media(max-width:1000px){.ce-header{flex-wrap:wrap}.ce-header nav{width:100%;justify-content:space-between}.ce-header nav a{padding:12px 14px!important}.about-intro{gap:35px}.about-beyond{gap:30px}.about-story .about-prose{gap:30px}}
@media(max-width:700px){.ce-portfolio .work-grid{grid-template-columns:1fr;gap:36px}.ce-portfolio .work-image img{aspect-ratio:3/2}.ce-portfolio .work-info :is(h2,h3){font-size:28px}.ce-portfolio .work-info p{font-size:14px}.ce-header nav{gap:3px;justify-content:flex-start}.ce-header nav a{font-size:14px!important;padding:12px 11px!important}.ce-wordmark{width:185px}.hero-collage{justify-self:center;max-width:460px}.ce-stacked-logo{width:290px;max-width:100%}.profession{font-size:23px}.works-description{font-size:16px}.works-intro{padding:45px 0 30px}.category-tabs{gap:3px}.category-tabs a{padding:11px 12px;font-size:14px}.category-tabs a span{font-size:12px}.layout-board{height:540px}.copy-piece p{font-size:12px}.piece-handle{font-size:11px}.case-next{align-items:flex-start;flex-direction:column;gap:20px}.case-next a{flex-wrap:wrap}.about-intro,.about-story .about-prose,.about-beyond{grid-template-columns:1fr}.about-intro{gap:45px}.about-portrait{justify-self:center;width:min(95%,390px)}.about-page h1{font-size:clamp(49px,11vw,76px)}.about-interests ul{grid-template-columns:1fr}.about-prose p{font-size:17px}.about-beyond figure{margin-top:10px}.about-work-link{display:flex;margin:20px 0 0}.about-page .hero-cta{font-size:15px;padding:15px 21px;gap:15px}.ce-footer{padding-inline:5%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-card:hover .work-image{translate:none!important}}
/* Align the standalone About shell with the portfolio page grid. */
body.ce-portfolio:has(.about-page)>.ce-header{width:90%}
.skip-link{position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px;z-index:100;background:#fffaf2;color:#401b00;padding:12px}
@media(max-width:600px){.ce-header nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:4px}.ce-header nav a{padding:11px 6px!important}.ce-header nav a:last-child{grid-column:auto}}

/* Anchor the visible stacked wordmark to the greeting, accounting for export whitespace. */
.ce-stacked-logo{width:clamp(245px,30vw,410px);max-width:100%}
.ce-stacked-art{aspect-ratio:320/280;overflow:hidden}
.ce-stacked-art img{position:absolute!important;width:135%!important;max-width:none!important;height:auto!important;left:-18.75%!important;top:-26%!important}
.ce-header nav a:nth-child(4):is(:hover,:focus-visible){background:#f3da7e}
@media(max-width:600px){.ce-header nav{grid-template-columns:repeat(4,minmax(0,1fr))}.ce-header nav a{padding:11px 5px!important}.ce-stacked-logo{width:270px}}

/* Keep the header anchored to the same outer grid as the page content. */
.page-grid>.ce-header{width:100%;max-width:none;margin-inline:0}

/* Approved personal photographs and illustration, displayed without altering originals. */
.personal-collage{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;padding:20px 8px;position:relative;isolation:isolate}
.about-beyond .personal-photo{margin:0;padding:12px;background:#fffaf2;box-shadow:3px 6px 15px #401b0020;position:relative}
.personal-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.about-beyond .cafe-photo{rotate:-4deg;z-index:2}.about-beyond .standing-photo{rotate:4deg;margin-top:65px;background:#cfdcff}
.about-beyond .personal-photo figcaption{font:12px/1.8 'Homemade Apple',cursive;color:#401b00;text-align:center;margin-top:15px}
.about-beyond .personal-illustration{grid-column:1/-1;justify-self:center;width:58%;padding:0;margin:-15px 0 0;rotate:-3deg;box-shadow:2px 4px 8px #401b0012;z-index:3;background:white}
.personal-illustration img{width:100%;height:auto}
@media(max-width:700px){.personal-collage{gap:14px;padding:15px 6px}.about-beyond .personal-photo{padding:8px}.about-beyond .standing-photo{margin-top:40px}.about-beyond .personal-photo figcaption{font-size:10px}.about-beyond .personal-illustration{width:65%}}
.about-beyond .personal-illustration{position:relative;overflow:hidden;width:150px;aspect-ratio:330/440;margin-top:-35px;justify-self:start;margin-left:25px;box-shadow:2px 4px 8px #401b0012}
.personal-illustration img{position:absolute;width:329.1%;max-width:none;height:auto;left:-166.7%;top:-47.7%}

/* One distinct brand hover per shared navigation destination. */
.ce-header nav a:nth-child(1):is(:hover,:focus-visible,[aria-current]){background:#cfdcff}
.ce-header nav a:nth-child(2):is(:hover,:focus-visible,[aria-current]){background:#e7a6c6}
.ce-header nav a:nth-child(3):is(:hover,:focus-visible,[aria-current]){background:#f3da7e}
.ce-header nav a:nth-child(4):is(:hover,:focus-visible,[aria-current]){background:#500719;color:#fffaf2!important}
