@font-face{font-family:Caveat;src:url('../fonts/Caveat.ttf') format('truetype');font-display:swap}
:root{color-scheme:light;--ink:#113532;--gold:#b08d57;--paper:#f6f3eb}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 38%,#fffaf2 0,transparent 65%)}header,footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 4vw;font-size:14px}header{min-height:80px}a{color:inherit;text-decoration:none}.back{padding:8px 0}.edition{font-size:12px;letter-spacing:.22em}button{font:inherit;color:inherit;background:transparent;border:1px solid #11353240;border-radius:30px;padding:10px 17px;cursor:pointer}button:hover{background:#1135320a}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}main{position:relative;min-height:calc(100svh - 160px)}.stage{min-height:calc(100svh - 160px);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:10px 4vw 40px}.drawing{position:relative;width:min(76vw,670px);height:min(62vh,500px);transition:height 1.3s ease,width 1.3s ease;flex-shrink:0}svg{width:100%;height:100%;overflow:visible}#ink{color:var(--ink)}#trademark{position:absolute;left:74%;top:37%;font:20px Georgia,serif;opacity:0;transition:opacity 1s}.portfolio{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,3vw,55px);width:min(1120px,100%);opacity:0;visibility:hidden;max-height:0;transform:translateY(18px);transition:opacity 1.8s ease,transform 1.8s ease,visibility 0s 1.8s,max-height 1.3s ease;margin-top:0}.settled .drawing{height:clamp(150px,29vh,260px);width:min(60vw,470px)}.settled #trademark{opacity:1}.settled .portfolio{opacity:1;visibility:visible;max-height:650px;transform:none;transition-delay:0s;margin-top:30px}.venture{min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.venture img{width:100%;height:auto;max-height:120px;object-fit:contain}.placeholder span{font:clamp(22px,2.2vw,32px) Georgia,serif;line-height:1.25}.placeholder small{font:11px -apple-system,sans-serif;letter-spacing:.08em;color:#66716e;margin-top:16px}.placeholder{border-bottom:1px solid #b08d5740}footer{min-height:80px}footer>span{font:40px Caveat,cursive}footer sup{font:10px sans-serif}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.nojs{text-align:center}[hidden]{display:none!important}@media(max-width:650px){header{padding:18px 6vw;flex-wrap:wrap;gap:12px}.edition{order:3;width:100%;font-size:10px}.portfolio{grid-template-columns:1fr 1fr;gap:16px 24px}.venture{min-height:120px}.drawing{width:94vw}.settled .drawing{width:80vw;height:180px}.placeholder span{font-size:22px}.placeholder small{font-size:10px}.stage{padding-bottom:20px}footer{padding:20px 6vw}}@media(prefers-reduced-motion:reduce){*,*:before{transition:none!important;animation:none!important}}
/* v12: the completed signature glides to the left of the portfolio stage. */
.drawing{transition:height 1.3s ease,width 1.3s ease,transform 1.3s cubic-bezier(.22,.61,.36,1)}
.settled .drawing{transform:translateX(calc(-46vw + min(30vw,235px)))}
@media(max-width:650px){.settled .drawing{transform:translateX(-10vw)}}
@media(prefers-reduced-motion:reduce){.drawing{transition:none}}
/* v13: approved lowercase Georgia wordmark at the end of the animation. */
.wordmark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Georgia,'Times New Roman',serif;font-size:clamp(72px,10vw,120px);font-weight:400;letter-spacing:-.045em;opacity:0;transition:opacity 1s ease}
.wordmark sup{font:14px Georgia,serif;letter-spacing:0;align-self:center;margin-top:-62px;margin-left:8px}
#motion{transition:opacity .65s ease}
.settled #motion{opacity:0}
.settled .wordmark{opacity:1}
@media(prefers-reduced-motion:reduce){.wordmark,#motion{transition:none}}
/* v14: tilde symbol centered above the lowercase name. */
.wordmark{flex-direction:column;gap:0;line-height:1}
.wordmark-symbol{font-family:Georgia,'Times New Roman',serif;font-size:.9em;line-height:.6;letter-spacing:0;margin-bottom:.12em}
.wordmark-name{position:relative;display:block}
.wordmark-name sup{position:absolute;left:100%;top:.08em;margin:0 0 0 8px;font:14px Georgia,serif;letter-spacing:0}
/* v16: parent mark at left, growing portfolio at right. */
.stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:0;padding:40px 4vw;min-height:calc(100svh - 160px)}
.drawing{grid-column:1 / -1;grid-row:1;justify-self:center;z-index:1}
.stage:after{content:'';position:absolute;left:50%;top:10%;bottom:10%;width:1px;background:var(--gold);opacity:0;transform:scaleY(.5);transition:opacity 1.3s ease,transform 1.3s ease}
.settled .stage:after{opacity:.45;transform:scaleY(1)}
.portfolio{grid-column:2;grid-row:1;align-self:center;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px;padding:28px 0 28px 44px;max-height:none;margin:0;visibility:hidden;pointer-events:none}
.settled .portfolio{max-height:none;margin:0;visibility:visible;pointer-events:auto}
.settled .drawing{width:min(38vw,470px);height:260px;transform:translateX(-23vw)}
.venture{min-height:150px}
.placeholder span{font-size:clamp(22px,2.2vw,32px)}
@media(max-width:520px){
 .stage{display:flex;flex-direction:column;padding:24px 6vw 40px;min-height:calc(100svh - 160px)}
 .drawing{width:88vw;height:min(62vh,440px)}
 .settled .drawing{width:88vw;height:210px;transform:none}
 .stage:after{display:none}
 .portfolio{width:100%;padding:28px 0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;border-top:1px solid #b08d5773;max-height:0;overflow:hidden}
 .settled .portfolio{max-height:none;margin-top:20px;overflow:visible}
 .venture{min-height:125px}.placeholder span{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.stage:after{transition:none}}

@media(min-width:521px) and (max-width:850px){.portfolio{grid-template-columns:1fr;padding-left:28px;gap:20px}.venture{min-height:110px}.wordmark{font-size:72px}}

/* Original artwork preserved; contain the complete square emblem. */
.venture.taste-logo img{width:min(100%,240px);max-height:240px;height:auto;mix-blend-mode:multiply}

/* v18: compact original emblems; automatic rows allow more ventures. */
.venture.caviar-logo img,.venture.taste-logo img{width:min(100%,190px);height:auto;max-height:190px;object-fit:contain;mix-blend-mode:multiply}
.portfolio{gap:26px 24px}
@media(min-width:521px) and (max-width:850px){.portfolio{gap:20px}.venture.caviar-logo img,.venture.taste-logo img{width:min(100%,170px);max-height:170px}}

/* v19: reduce Caviar slightly within its existing grid cell. */
.venture.caviar-logo img{width:min(84%,160px);max-height:160px}

/* v20: simultaneous positive/negative reveal, with a wider portfolio. */
body{transition:background-color 1.8s ease,color 1.8s ease}
body:before{transition:opacity 1.8s ease}
body.settled{background:#113532;color:#f6f3eb}
body.settled:before{opacity:0}
.stage{grid-template-columns:minmax(0,39fr) minmax(0,53fr)}
.stage:after{left:43%;background:#f6f3eb}
.settled .drawing{width:min(32vw,410px);transform:translateX(-26.5vw)}
.settled button{border-color:#f6f3eb66}
.settled button:hover{background:#f6f3eb12}
.settled .placeholder small{color:#d2d9ce}
.settled .placeholder{border-color:#f6f3eb33}
.venture img,.venture.caviar-logo img,.venture.taste-logo img{mix-blend-mode:normal;background:#f6f3eb;padding:10px;border-radius:4px}
@media(max-width:520px){.settled .drawing{width:88vw;transform:none}.portfolio{border-top-color:#f6f3eb73}}

/* v21: invert the Tilde panel only. */
body.settled{background:var(--paper);color:var(--ink)}
body:after{content:'';position:fixed;inset:0 auto 0 0;width:43%;background:var(--ink);opacity:0;pointer-events:none;z-index:0;transition:opacity 1.8s ease}
body.settled:after{opacity:1}
main{z-index:1}
.settled .drawing,.settled .back,.settled footer>span{color:var(--paper)}
.stage:after{background:var(--gold)}
.settled .placeholder small{color:#66716e}
.settled .placeholder{border-color:#b08d5740}
.settled button{border-color:#11353240}
.settled button:hover{background:#1135320a}
.venture img,.venture.caviar-logo img,.venture.taste-logo img{padding:0;border-radius:0;background:transparent;mix-blend-mode:multiply}
@media(max-width:520px){
 body:after{position:absolute;width:100%;height:340px}
 .settled .edition{color:var(--paper)}
 .settled footer>span{color:var(--ink)}
 .portfolio{border-top-color:#b08d5773}
}

/* v22: a single shared handoff from the opening animation. */
.drawing{transition:height 1.8s cubic-bezier(.22,.61,.36,1),width 1.8s cubic-bezier(.22,.61,.36,1),transform 1.8s cubic-bezier(.22,.61,.36,1),color 1.8s ease}
.wordmark{transition:opacity 1.8s ease}
#motion{transition:opacity 1.8s ease}
.stage:after{transition:opacity 1.8s ease,transform 1.8s ease}
.back,footer>span{transition:color 1.8s ease}
@media(prefers-reduced-motion:reduce){body,body:after,.drawing,.wordmark,#motion,.stage:after,.back,footer>span{transition:none!important}}

/* v23: half a second slower for the coordinated reveal (1.8s → 2.3s). */
body,body:before,body:after,.drawing,.wordmark,#motion,.stage:after,.back,footer>span,.portfolio{transition-duration:2.3s}
@media(prefers-reduced-motion:reduce){body,body:before,body:after,.drawing,.wordmark,#motion,.stage:after,.back,footer>span,.portfolio{transition:none!important}}

.settled .portfolio{transition-duration:2.3s}

/* v24: original neon dancer concept. */
.venture.shake-logo img{width:min(100%,290px);height:auto;max-height:220px;mix-blend-mode:normal;background:#080e14;border-radius:10px;padding:0}
