/* Personality & Polish: additions are scoped; the approved product/case layouts stay intact. */
.restored-page .split-hero{margin-top:0;min-height:640px}.restored-page .split-art{position:relative;overflow:hidden}.restored-page .split-art img{height:100%;width:100%;object-fit:cover}.restored-page .split-copy{position:relative;z-index:1}.restored-page .split-copy h1{font-weight:400}.restored-page .story{padding-block:90px}.restored-page .prose p{max-width:650px}.restored-page .prose h3{font:400 1.75rem/1.3 Georgia,serif;margin:40px 0 15px}.restored-page .quiet-section{background:var(--surface)}.restored-page .quiet-copy{background:var(--surface)}.restored-page .contact-art{overflow:hidden}.restored-page .contact-art img{height:100%;object-fit:cover}.restored-page .contact-heading{max-width:750px}.restored-page .contact-paths article{padding-block:10px 28px}.restored-page .support-hero .quiet-link{display:block;width:fit-content;margin-top:22px;border-bottom:1px solid var(--line);min-height:44px}.restored-page .quiet-art:after,.restored-page .split-art:after{pointer-events:none}
[data-theme=light] .restored-page .split-art:after{background:linear-gradient(90deg,#f2eddf,transparent 25%)}[data-theme=light] .restored-page .quiet-art:after{background:linear-gradient(270deg,#faf6ed,transparent 25%)}
.restored-works .works-opening{grid-template-columns:1.4fr 1fr;gap:50px 7%;padding-block:80px}.restored-works .works-opening h1{font:400 clamp(3.7rem,6.2vw,6.5rem)/1.06 Georgia,serif;letter-spacing:-.045em}.restored-works .works-opening>div{align-self:end;padding-bottom:10px}.restored-works .works-opening>div p{font-size:1rem;max-width:400px}.restored-works .karu-feature{background:#660f2b}.restored-works .karu-feature>img{aspect-ratio:16/10;object-fit:contain;width:100%;height:auto}.restored-works .work-context{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;align-items:start;padding-block:32px 70px}.restored-works .work-context p{font-size:.95rem;max-width:650px}.contribution-note{color:var(--amber);font-size:.72rem!important;letter-spacing:.04em;margin-top:20px}.restored-works .approach-section ol{counter-reset:steps}.restored-works .approach-section li{position:relative;padding:24px 0 27px 48px;border-top:1px solid var(--border-soft)}.restored-works .approach-section li:before{counter-increment:steps;content:'0' counter(steps);position:absolute;left:0;top:27px;font:italic 1.05rem Georgia,serif;color:var(--amber)}.restored-works .approach-section h3{font:400 1.7rem/1.2 Georgia,serif;margin-bottom:12px}.restored-works .approach-section p{font-size:.94rem}.restored-works .contact-invitation{padding-block:70px 90px}
/* An open collection, rather than four uniform containers. */
.workbench-personality .workshop-opening{padding-bottom:55px}.workbench-gallery{padding-bottom:100px}.bench-world{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:center;padding-block:35px 80px;scroll-margin-top:110px}.bench-world figure{margin:0;grid-column:1/9;position:relative}.bench-world .world-copy{grid-column:10/13}.bench-world figure a{display:block;position:relative;overflow:hidden;border:1px solid var(--border-soft);box-shadow:var(--glass-shadow)}.bench-world img{display:block;width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.65,.3,1)}.bench-world figure a:hover img{transform:scale(1.018)}.bench-world figcaption{font:italic .77rem/1.6 Georgia,serif;color:var(--muted);margin:15px 0 0}.world-number{font:italic 1rem Georgia,serif;color:var(--amber);display:block;margin-bottom:17px}.world-copy h2{font:400 clamp(2.1rem,3.5vw,3.8rem)/1.06 Georgia,serif;letter-spacing:-.035em;margin:20px 0}.world-copy>p{font-size:.92rem;line-height:1.85}.world-copy>.section-note{font-size:.6rem}.world-copy .text-link{display:inline-flex;align-items:center;min-height:46px;margin-top:22px}.development-stamp{display:inline-flex;align-items:center;gap:9px;font:.64rem/1.5 var(--ui);color:var(--amber);letter-spacing:.06em;text-transform:uppercase}.development-stamp:before{content:'';display:block;width:6px;height:6px;background:currentColor;border-radius:50%}.world-ode figure{grid-column:5/13;grid-row:1}.world-ode .world-copy{grid-column:1/4;grid-row:1}.world-ode{padding-top:0;margin-top:-10px}.world-vesti figure{grid-column:1/8}.world-vesti .world-copy{grid-column:9/13;padding-right:35px}.world-password figure{grid-column:6/13;grid-row:1}.world-password .world-copy{grid-column:1/5;grid-row:1;padding-left:40px}.world-deskling figure:before{content:'A LITTLE COMPANY FOR THE EVERYDAY';position:absolute;z-index:2;top:-25px;left:0;font:.58rem var(--ui);letter-spacing:.12em;color:var(--amber)}.world-ode{--world-accent:#8bbbd6}.world-vesti{--world-accent:var(--iris)}.world-password{--world-accent:var(--amber)}.world-copy h2 em{color:var(--world-accent,var(--amber))}.bench-colophon{padding:35px 0 0;border-top:1px solid var(--border-soft);max-width:700px;font:italic 1.5rem/1.6 Georgia,serif;color:var(--muted)}
/* Stable project pages share the studio, not a single layout. */
.project-teaser{--project-accent:var(--amber)}.teaser-back{display:inline-flex;min-height:44px;align-items:center;font-size:.78rem;color:var(--muted);margin:24px 0}.teaser-masthead{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:26px;border-bottom:1px solid var(--border-soft)}.teaser-masthead h1{font:400 clamp(2rem,4vw,4rem)/1.1 Georgia,serif;letter-spacing:-.03em}.teaser-masthead .development-stamp{flex:none}.teaser-hero{padding:55px 0 70px}.teaser-hero h2{font:400 clamp(3rem,6.5vw,6.8rem)/1.05 Georgia,serif;letter-spacing:-.045em;margin:24px 0}.teaser-hero h2 em{color:var(--project-accent)}.teaser-art{margin:0;position:relative}.teaser-art img{width:100%;height:auto;display:block;border:1px solid var(--border-soft);box-shadow:var(--glass-shadow)}.teaser-art figcaption{font:.7rem/1.6 var(--ui);color:var(--muted);margin-top:16px}.teaser-lede{font:400 1.35rem/1.6 Georgia,serif;color:var(--text);max-width:620px}.teaser-essay{display:grid;grid-template-columns:1fr 1.25fr;gap:14%;padding-block:70px;border-top:1px solid var(--border-soft)}.teaser-essay h2{font:400 clamp(2.6rem,4vw,4.2rem)/1.1 Georgia,serif;letter-spacing:-.035em}.teaser-essay h2 em{color:var(--project-accent)}.teaser-essay p{font-size:1rem;line-height:1.9;margin-bottom:22px}.intended-label{display:block;font:.63rem/1.5 var(--ui);letter-spacing:.09em;text-transform:uppercase;color:var(--amber);margin-bottom:23px}.development-letter{position:relative;padding:45px 6%;margin:20px auto 75px;max-width:900px;background:var(--surface);border:1px solid var(--border-soft);box-shadow:0 16px 50px #05101a14}.development-letter h2{font:400 2.7rem/1.2 Georgia,serif;letter-spacing:-.03em;margin:20px 0}.development-letter p{max-width:650px;font-size:.94rem;line-height:1.9}.development-letter .text-link{display:inline-flex;min-height:46px;align-items:center;margin-top:18px}.letter-signature{font:italic 1.2rem Georgia,serif!important;color:var(--amber);margin-top:25px}.teaser-return{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:65px;font-size:.8rem}.teaser-return a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid var(--line)}
.teaser-deskling{--project-accent:#e9b77e}.teaser-deskling .teaser-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:30px 6%;align-items:end}.teaser-deskling .teaser-hero h2{font-size:clamp(3.2rem,5.2vw,5.5rem);max-width:660px}.teaser-deskling .teaser-art{grid-column:1/-1;margin-top:20px;transform:rotate(-.6deg)}.care-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-bottom:70px}.care-notes article{border-top:1px solid var(--border-soft);padding-top:20px}.care-notes h3{font:italic 2rem Georgia,serif;color:var(--project-accent);margin-bottom:15px}.care-notes p{font-size:.87rem;line-height:1.8}.teaser-deskling .development-letter{border-top:3px solid var(--project-accent)}
.teaser-ode{--project-accent:#acd1e9;background:linear-gradient(180deg,#142b3a,var(--bg) 1000px)}.teaser-ode .teaser-art{margin:32px 0 0}.teaser-ode .teaser-art img{box-shadow:0 25px 65px #050d2050}.teaser-ode .teaser-hero{text-align:center;padding-top:35px}.teaser-ode .teaser-lede{margin:auto}.teaser-ode .teaser-hero h2{max-width:1000px;margin:24px auto}.story-letter{font:italic 1.65rem/1.7 Georgia,serif;color:var(--project-accent);border-left:1px solid var(--project-accent);padding-left:30px;margin-top:25px}.teaser-vesti{--project-accent:var(--iris)}.teaser-vesti .teaser-hero{display:grid;grid-template-columns:.85fr 1.2fr;gap:7%;align-items:center}.teaser-vesti .teaser-hero h2{font-size:clamp(3.4rem,5.5vw,6rem)}.vesti-palette{display:flex;gap:10px;margin:25px 0}.vesti-palette span{width:26px;height:26px;border:1px solid #ffffff40;background:var(--swatch);border-radius:50%}.development-capture{margin:0 0 65px}.development-capture img{display:block;width:100%;height:auto;border:1px solid var(--border-soft)}.development-capture figcaption{font-size:.73rem;color:var(--muted);margin-top:16px}.teaser-password{--project-accent:var(--amber)}.teaser-password .teaser-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;align-items:center}.teaser-password .teaser-hero h2{font-size:clamp(3rem,5.4vw,5.7rem)}.teaser-password .development-letter{box-shadow:none;border-top:1px solid var(--amber)}.teaser-password .teaser-essay{grid-template-columns:1fr 1fr;gap:12%}
[data-theme=light] .teaser-deskling{--project-accent:#9c502a}[data-theme=light] .teaser-ode{--project-accent:#2e698a;background:linear-gradient(180deg,#e7eff0,var(--bg) 1000px)}
/* A small pool of reflected Champagne light, without a perpetual pulse. */
@media(max-width:1000px){.bench-world{gap:20px}.bench-world figure{grid-column:1/9}.bench-world .world-copy{grid-column:9/13}.world-ode figure,.world-password figure{grid-column:5/13}.world-ode .world-copy,.world-password .world-copy{grid-column:1/5;padding:0}.world-vesti .world-copy{padding:0}.world-copy h2{font-size:2.4rem}.restored-page .split-hero{min-height:600px}.restored-works .works-opening h1{font-size:4.7rem}.teaser-hero h2{font-size:4.6rem}}
@media(max-width:700px){.restored-page .split-hero{min-height:0}.restored-page .split-art{height:330px}.restored-page .split-copy{padding:25px 6% 55px}.restored-page .split-copy h1{font-size:clamp(3rem,12vw,4.6rem)}.restored-page .story{padding-block:45px 55px}.restored-page .quiet-art{height:300px}.restored-page .quiet-copy{padding:40px 6% 55px}.restored-page .contact-art{height:280px}.restored-works .works-opening{display:block;padding-block:40px 55px}.restored-works .works-opening h1{font-size:clamp(3.1rem,12vw,4.6rem)}.restored-works .works-opening>div{margin-top:30px}.restored-works .work-context{display:block;padding-block:25px 40px}.restored-works .work-context .v3-link{margin-top:20px}.restored-works .contact-invitation{padding-block:40px 60px}.workbench-personality .workshop-opening h1{font-size:clamp(3.1rem,13vw,4.6rem)}.bench-world,.world-ode,.world-password{display:flex;flex-direction:column;gap:22px;padding-block:35px 55px;margin:0;align-items:stretch}.bench-world figure{order:0}.bench-world .world-copy{order:1;padding:0}.world-copy h2{font-size:2.8rem;margin:15px 0}.world-copy .world-number{display:inline;margin-right:15px}.world-copy>.section-note{margin-top:18px}.world-copy>p{font-size:.94rem}.world-copy .text-link{margin-top:12px}.workbench-gallery{padding-bottom:55px}.teaser-masthead{align-items:start;flex-direction:column;gap:15px}.teaser-masthead h1{font-size:2.45rem}.teaser-hero,.teaser-deskling .teaser-hero,.teaser-vesti .teaser-hero,.teaser-password .teaser-hero{display:block;padding-block:35px 45px}.teaser-hero h2,.teaser-deskling .teaser-hero h2,.teaser-vesti .teaser-hero h2,.teaser-password .teaser-hero h2{font-size:clamp(2.7rem,11vw,4.1rem)}.teaser-art,.teaser-deskling .teaser-art{margin-top:30px;transform:none}.teaser-lede{font-size:1.2rem}.teaser-essay,.teaser-password .teaser-essay{grid-template-columns:1fr;gap:28px;padding-block:40px}.teaser-essay h2{font-size:2.8rem}.teaser-essay p{font-size:.95rem}.care-notes{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:40px}.care-notes h3{font-size:1.7rem}.development-letter{padding:30px 7%;margin-block:10px 45px}.development-letter h2{font-size:2.25rem}.teaser-return{align-items:start;flex-direction:column;gap:10px;margin-bottom:45px}.story-letter{font-size:1.4rem;padding-left:22px}.bench-colophon{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.bench-world img,.invitation-paper{transition:none!important;transform:none!important}.bench-world figure a:hover img{transform:none}}

@media(min-width:701px){.teaser-vesti .teaser-art,.teaser-password .teaser-art{grid-column:2;grid-row:1/3}.teaser-vesti .teaser-lede,.teaser-password .teaser-lede{grid-column:1;grid-row:2}}

.restored-works .works-opening h1{font-size:clamp(3.4rem,5vw,5.5rem)}@media(max-width:900px){.restored-works .works-opening{display:block}.restored-works .works-opening h1{font-size:clamp(3rem,8vw,5rem)}.restored-works .works-opening>div{margin-top:30px}}

/* A fragment is one flattened, clipped material surface. Its art and tint
   cannot establish independent 3D planes outside the parent polygon. */
.cinematic .studio-fragment{transform-style:flat;contain:paint;overflow:hidden;backdrop-filter:none;background:linear-gradient(130deg,#d0e4ef24,#17252c60)!important}
.cinematic .fragment-art{display:block;filter:none;box-shadow:none;border:0;border-radius:0;transform:none;backface-visibility:hidden}
.cinematic .studio-fragment:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:var(--label-visibility,0);background:linear-gradient(180deg,transparent 65%,#0a1827d9 100%)}
.cinematic .fragment-0:after{background:linear-gradient(180deg,transparent 23%,#091723b0 43%,#091723e6 58%)}
.cinematic .fragment-1:after{background:linear-gradient(180deg,transparent 17%,#091723b0 34%,#091723e6 47%)}
.cinematic .fragment-label{background:none;text-shadow:0 1px 3px #0009;padding:0!important;gap:7px;min-height:0;width:40%;height:auto;justify-content:end}
.cinematic .fragment-0 .fragment-label{left:2%;top:32%;right:auto;bottom:auto}
.cinematic .fragment-1 .fragment-label{left:55%;top:25%;right:auto;bottom:auto}
.cinematic .fragment-2 .fragment-label{right:2%;bottom:3%;left:auto;top:auto}
.cinematic .fragment-3 .fragment-label{left:2%;bottom:3%;right:auto;top:auto}
.cinematic .fragment-label strong{font-size:clamp(1.2rem,1.9vw,2.2rem)}
.cinematic .fragment-label small{font-size:clamp(.5rem,.55vw,.66rem)}
.cinematic .fragment-label>span{font-size:.62rem}
.cinematic .shard-edge{transform:translateZ(0)}
/* Open correspondence: a substantial sheet in a folded, tactile envelope. */
.invitation-paper{position:relative;width:min(100%,550px);height:450px;margin:65px auto 10px;color:#283b36;isolation:isolate;pointer-events:auto;text-align:left}
.cinematic .invitation-paper{position:absolute;right:7vw;top:30vh;width:34vw;max-width:600px;height:min(470px,56vh);margin:0;z-index:1}
.letter-envelope{position:absolute;inset:33% -3% -2%;background:#b8a384;border:1px solid #c8b898;box-shadow:0 24px 40px #07101845;transform:rotate(2deg)}
.letter-envelope:before{content:'';position:absolute;left:-1px;right:-1px;bottom:99%;height:43%;background:linear-gradient(135deg,#ccbb9b,#b6a17e);clip-path:polygon(0 100%,50% 0,100% 100%)}
.letter-sheet{position:absolute;inset:0 3% 12%;padding:clamp(24px,2.3vw,47px);background:repeating-linear-gradient(0deg,#a28e6804 0 1px,transparent 1px 4px),linear-gradient(115deg,#fbf5e6,#eee2c9);box-shadow:0 2px 3px #68563b45,0 12px 25px #09121c24;z-index:2;border:1px solid #f6ead3;transform:rotate(-1deg)}
.letter-sheet:after{content:'';position:absolute;right:0;top:0;width:26px;height:26px;background:linear-gradient(45deg,#ded0b2 49%,#f7f0df 50%);box-shadow:-1px 1px 2px #84704d22}
.letter-address{font:500 .6rem/1.5 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:#72644e;margin:0 0 22px}
.letter-salutation{font:italic clamp(1.6rem,2vw,2.5rem)/1.1 Georgia,serif;margin:0 0 15px}
.letter-thought{font:400 clamp(1.15rem,1.5vw,1.75rem)/1.45 Georgia,serif;margin:0 0 14px}
.letter-reply{font:italic clamp(.85rem,1vw,1.08rem)/1.5 Georgia,serif;color:#6a5a43;margin:0 0 17px}
.letter-sheet a{display:inline-flex;align-items:center;gap:20px;min-height:44px;font:500 .76rem/1.5 var(--ui);border-bottom:1px solid #8c7753;color:#304b41}
.letter-sheet a:hover{color:#805523;border-color:currentColor}.letter-sheet a:focus-visible{outline:2px solid #725122;outline-offset:5px}
.letter-signature{display:block;font:italic .8rem/1.4 Georgia,serif;color:#746449;margin-top:18px}
.envelope-pocket{position:absolute;inset:0;background:linear-gradient(145deg,#e0cdae,#bca582);clip-path:polygon(0 0,50% 49%,100% 0,100% 100%,0 100%);z-index:3;border-bottom:1px solid #998566}
.envelope-pocket:after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent 49.5%,#927b5528 50%,transparent 50.5%),linear-gradient(215deg,transparent 49.5%,#927b5528 50%,transparent 50.5%)}
.envelope-stamp{position:absolute;z-index:4;right:7%;bottom:7%;font:400 .67rem Georgia,serif;letter-spacing:.18em;color:#806849;border:1px solid #99805d;padding:8px 10px;transform:rotate(-7deg)}
[data-theme=light] .letter-envelope{box-shadow:0 20px 35px #67503326}
@media(max-width:1100px) and (min-width:901px){.cinematic .invitation-paper{right:5vw;width:37vw;top:30vh;height:430px}.letter-signature{display:none}.letter-address{margin-bottom:15px}.letter-sheet{padding:27px}.letter-thought{font-size:1.25rem}}
@media(max-width:900px){.invitation-paper{display:block!important;transform:none!important;width:min(100%,520px);height:435px;margin-top:55px}.letter-sheet{padding:32px}.letter-thought{font-size:1.45rem}.letter-address{margin-bottom:22px}.letter-salutation{font-size:2rem}.letter-signature{font-size:.85rem}}
@media(max-height:800px) and (min-width:901px){.cinematic .invitation-paper{top:24vh;height:390px}.letter-sheet{padding:24px}.letter-address{margin-bottom:14px}.letter-salutation{font-size:1.7rem}.letter-thought{font-size:1.25rem}.letter-signature{display:none}.letter-reply{margin-bottom:8px}}
.connection-scene .letter-sheet p{color:#35443b}.connection-scene .letter-sheet .letter-address{color:#74644c}.connection-scene .letter-sheet .letter-reply{color:#6c583d}

/* Preserve the complete photographic composition instead of cropping faces
   to the hero's very wide responsive box. */
.karu-case .case-hero-photograph{display:flex;align-items:center;padding:36px 3vw 36px 0}
.karu-case .case-hero-photograph img{height:auto;max-height:100%;object-fit:contain;object-position:center;width:100%;box-shadow:0 12px 35px #21081430}
.karu-case .case-hero-photograph:after{display:none}
@media(max-width:700px){.karu-case .case-hero-photograph{height:auto;padding:0 6vw 30px;margin-top:30px}.karu-case .case-hero-photograph img{height:auto;max-height:none}}

.case-showcase-slides{background:#481521}.showcase-ready .case-showcase-slides{aspect-ratio:8/5;overflow:hidden}.case-showcase-slide{display:block}.case-showcase-slide[hidden]{display:none}.showcase-ready .case-showcase-slide{width:100%;height:100%}.case-showcase-slide img{display:block;width:100%;height:auto}.showcase-ready .case-showcase-slide img{height:100%;object-fit:contain;box-shadow:none;border:0}.case-showcase-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px}.case-showcase-next{flex:none;min-height:44px;min-width:90px;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--text);font:inherit;cursor:pointer;padding:8px 0 8px 12px}.case-showcase-next:hover{color:var(--amber)}.case-showcase-next:focus-visible{outline:2px solid var(--amber);outline-offset:5px}@media(max-width:700px){.case-showcase-bar{align-items:start;gap:15px}.case-showcase-caption{padding-top:10px;max-width:70%}}
