@font-face{font-family:'Caveat';src:url('assets/fonts/caveat-latin-medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
/* The approved studio direction, with more balanced display type. */
.boutique .statement-grid h2 em{font-size:1em;line-height:1.5}
.boutique .commission-note h3 em{font-size:1em;line-height:1.45}
.boutique .studio-store-invitation h2 em{font-size:1em;line-height:1.55}
.boutique .letter-title h2 em{font-size:.96em;line-height:1.6}
.boutique .letter-signoff{display:flex;align-items:baseline;gap:9px;line-height:1.8}
.boutique .letter-signoff em{font-family:'Caveat','Segoe Print','Bradley Hand',cursive;font-size:25px;line-height:1;letter-spacing:0;font-weight:500;margin:0;transform:rotate(-5deg);color:var(--paper)}
.boutique .boutique-contact>a{align-items:baseline;column-gap:.3em}
.boutique .boutique-contact>a em{font-size:1.04em;line-height:1.4;color:var(--rust)}
.boutique .pixel-accent{font-size:1em;line-height:1.45}
.boutique-work .work-hero .pixel-accent{font-size:1.04em}
.boutique .studio-store-invitation h2 em,.boutique .statement-grid h2 em{white-space:nowrap}
/* Two channels, one studio. Each tributary ends at a real destination. */
.boutique .studio-routes{padding-top:76px!important;overflow:hidden}
.routes-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}
.routes-heading .eyebrow{margin-bottom:24px;color:#6b6c5c}
.boutique .routes-heading h2{font:650 clamp(42px,4.4vw,68px)/1.1 var(--sans);letter-spacing:-.055em}
.boutique .routes-heading h2 em{font:400 .95em/1.6 var(--pixel);color:#a33e21;white-space:nowrap}
.routes-heading>p{max-width:300px;font-size:14px;line-height:1.8;color:#5a6052;padding-bottom:16px}
.river-junction{height:114px;position:relative}
.river-junction>span{position:absolute;right:0;top:15px;color:#795d43;font:7px/1.5 var(--mono);letter-spacing:.1em}
.river-branches{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:0;fill:none}
.branch-trunk,.branch-path{stroke:var(--rust);stroke-width:1.2;stroke-linecap:square;opacity:.62;vector-effect:non-scaling-stroke}
.branch-node{fill:var(--rust)}
.branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;position:relative}
.branch-card{min-width:0;position:relative}
.branch-anchor{position:absolute;left:50%;top:0;width:0;height:0}
.branch-image{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;background:var(--ink);position:relative;overflow:hidden;border:1px solid #23251f}
.branch-image>img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.branch-image:hover>img{transform:scale(1.035)}
.branch-five .branch-image{background:#ffda00;border-color:#dbbb00}
.branch-arrow{position:absolute;right:15px;bottom:15px;display:grid;place-items:center;width:32px;height:32px;background:var(--rust);color:var(--paper);font:22px/1 var(--sans);transition:transform .25s}
.branch-five .branch-arrow{background:var(--ink);color:#ffda00}
.branch-image:hover .branch-arrow{transform:translate(2px,-2px)}
.branch-caption{padding:22px 0 21px;border-bottom:1px solid var(--fine);display:flex;flex-direction:column;align-items:flex-start}
.branch-caption .eyebrow{display:flex;justify-content:space-between;gap:12px;width:100%;font-size:8px;letter-spacing:.025em;color:#666857;margin-bottom:16px}
.boutique .branch-caption h3{font-size:clamp(24px,2.2vw,34px);font-weight:650;letter-spacing:-.045em;line-height:1.2}
.branch-caption>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#5a6052;margin-top:15px;min-height:76px;max-width:340px}
.branch-caption .quiet-link{font-size:12px;margin-top:16px;gap:22px}
.studio-brand-frame{background:var(--carbon);isolation:isolate}
.studio-brand-frame>img{width:52%;height:auto;object-fit:contain}
.studio-brand-frame .branch-arrow{background:transparent;color:var(--paper);opacity:.7}
@media(min-width:1500px){.branch-caption>p:not(.eyebrow){min-height:51px}}
@media(max-width:1100px){.branch-grid{gap:20px}.branch-caption .eyebrow{font-size:7px}.branch-caption>p:not(.eyebrow){font-size:13px;min-height:94px}.branch-caption .quiet-link{font-size:11px;gap:16px}.studio-frame-top,.studio-frame-bottom{left:22px;right:22px;font-size:6px}.studio-frame-top{top:24px}.studio-frame-bottom{bottom:24px}.branch-arrow{right:12px;bottom:12px;width:28px;height:28px}.routes-heading>p{font-size:13px}}
@media(max-width:760px){
 .boutique .studio-routes{padding-top:50px!important}.routes-heading{display:block}.boutique .routes-heading h2{font-size:clamp(37px,8vw,53px)}.routes-heading .eyebrow{font-size:8px;margin-bottom:18px}.routes-heading>p{margin-top:14px;padding:0;font-size:14px}.river-junction{height:79px}.river-junction>span{top:15px;font-size:6px}
 .branch-grid{grid-template-columns:1fr;gap:42px;padding-left:19px}.branch-anchor{left:0;top:20px}.branch-image{aspect-ratio:16/9}.branch-caption{padding-top:22px}.branch-caption .eyebrow{font-size:8px}.boutique .branch-caption h3{font-size:30px}.branch-caption>p:not(.eyebrow){font-size:14px;min-height:0;max-width:450px}.branch-caption .quiet-link{font-size:12px;margin-top:12px}.studio-frame-top,.studio-frame-bottom{font-size:8px;left:27px;right:27px}.studio-frame-top{top:28px}.studio-frame-bottom{bottom:28px}.branch-arrow{right:15px;bottom:15px;width:32px;height:32px}.studio-brand-frame>img{width:55%}
 .boutique .letter-title h2 em{font-size:.96em}.boutique .boutique-contact>a em{font-size:1.04em}.boutique .boutique-contact>a span{margin-left:auto}
 .boutique .studio-store-invitation{grid-template-columns:1fr;gap:25px}.studio-store-invitation .store-art-detail{height:125px;max-width:400px;background-position:65% 53%}.boutique .studio-store-invitation h2{font-size:37px}.studio-store-invitation h2 br{display:none}.boutique .studio-store-invitation h2 em{display:inline-block;font-size:1em}.studio-store-invitation p:not(.eyebrow){margin-top:8px}.studio-store-invitation .eyebrow{font-size:8px}
 .boutique .pixel-accent{font-size:1em}.boutique-store .store-intro h1 .pixel-accent{font-size:1em}
}
@media(max-width:360px){.boutique .routes-heading h2{font-size:35px}.branch-caption .eyebrow{font-size:7px}.studio-frame-top,.studio-frame-bottom{font-size:6px}.studio-frame-bottom{bottom:23px}.boutique .studio-store-invitation h2{font-size:33px}.boutique .letter-title h2 em{font-size:.96em}}
@media(prefers-reduced-motion:reduce){.branch-image>img,.branch-arrow{transition:none;transform:none!important}}

/* A visible current enters from the side, then divides into tributaries. */
.river-replay{position:absolute;left:0;top:8px;border:0;border-bottom:1px solid #b6a38b;padding:9px 0 7px;background:transparent;color:#865039;font:9px/1.5 var(--mono);display:inline-flex;gap:18px;align-items:center}
.river-replay span{font:17px/1 var(--sans)}
.river-replay:hover{color:var(--rust)}
.flow-bed{fill:none;stroke:var(--rust);stroke-opacity:.24;stroke-width:1.15;vector-effect:non-scaling-stroke}
.flow-current{fill:none;stroke:var(--rust);stroke-width:1.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.92}
.flow-dot{fill:var(--rust);stroke:var(--paper);stroke-width:1.2;opacity:0}
.flow-end{fill:var(--rust);opacity:.65}
.flow-invite{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;fill:none;z-index:3}
.letter-section .flow-bed{stroke:var(--amber);stroke-opacity:.3}
.letter-section .flow-current{stroke:var(--amber)}
.letter-section .flow-dot,.letter-section .flow-end{fill:var(--amber);stroke:#a83f24}
.river-track.has-tributary-flow .river-head{opacity:0}
.branch-card.is-flow-arrived .branch-image{outline:1px solid var(--rust);outline-offset:4px;transition:outline-color .4s}
@media(max-width:760px){.river-replay{font-size:8px;top:4px;gap:10px}.river-junction>span{max-width:120px;text-align:right;line-height:1.8}.studio-brand-frame>img{width:52%}}
@media(prefers-reduced-motion:reduce){.river-replay,.flow-dot{display:none}.flow-current{opacity:.45}.branch-card.is-flow-arrived .branch-image{outline:none}}
