:root{--ink:#35223d;--paper:#fffaf3;--pink:#a32457;--orange:#934013;--teal:#075c61;--purple:#63397f;--gutter:clamp(22px,5.6vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--paper);font:400 16px/1.65 'Nunito Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid var(--teal);outline-offset:6px}button:disabled{cursor:default;opacity:.35}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;z-index:30;padding:12px 20px;background:var(--ink);color:white}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.arrival{position:relative;isolation:isolate;min-height:780px;height:100svh;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;background:radial-gradient(ellipse 45% 60% at 49% 45%,#ffe9cf 4%,#ffe0bbba 40%,transparent 83%),radial-gradient(ellipse 69% 95% at 0% 0%,#ed5d94 4%,#ed7799a6 50%,transparent 85%),radial-gradient(ellipse 50% 80% at 105% 5%,#7961b6 6%,#a287c5c9 50%,transparent 88%),radial-gradient(ellipse 60% 80% at 95% 105%,#50b9ad 4%,#92cfb5b8 52%,transparent 90%),linear-gradient(115deg,#f7aa76 4%,#f1c5a0 56%,#beb4cf 100%)}
.arrival:after{content:'';position:absolute;inset:16px;pointer-events:none;border:1px solid #ffffff3b;border-radius:3px;z-index:1}.arrival-header{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:35px var(--gutter);gap:20px}.brand{font:800 20px/1.2 'Nunito Sans';letter-spacing:-.04em;display:block;width:fit-content}.brand span{display:block;font-size:7px;font-weight:700;letter-spacing:.12em;margin-top:9px}.arrival-inner{position:relative;z-index:2;align-self:center;text-align:center;padding:25px 24px 40px;opacity:var(--arrival-opacity,1);transform:translateY(var(--arrival-shift,0px));will-change:auto}.welcome-kicker{font-size:10px;letter-spacing:.23em;font-weight:800;margin:0 0 28px}h1{font:600 clamp(105px,12.4vw,184px)/.99 Fredoka,sans-serif;letter-spacing:-.06em;margin:0}h1>span:first-child{display:block;font:600 clamp(33px,3.5vw,54px)/1.2 Fredoka;letter-spacing:-.035em;margin-bottom:8px}.full-stop{color:var(--pink)}.intro-copy{font:400 clamp(20px,1.8vw,26px)/1.5 'Nunito Sans';letter-spacing:-.02em;margin:31px 0 0}.smile{padding:0 2px;background:none;border:0;font:800 1em/1.5 'Nunito Sans';letter-spacing:inherit;color:var(--teal);position:relative}.smile:before{content:'';position:absolute;inset:-6px -4px}.smile-letters{display:inline-flex}.smile-letters>span{display:inline-block;transition:transform .35s ease,color .25s}.is-smiling .smile-letters>span:nth-child(1){transform:translateY(-4px) rotate(-9deg);color:var(--pink)}.is-smiling .smile-letters>span:nth-child(2){transform:translateY(1px) rotate(-4deg);color:var(--orange)}.is-smiling .smile-letters>span:nth-child(3){transform:translateY(3px);color:var(--teal)}.is-smiling .smile-letters>span:nth-child(4){transform:translateY(1px) rotate(4deg);color:var(--purple)}.is-smiling .smile-letters>span:nth-child(5){transform:translateY(-4px) rotate(9deg);color:var(--pink)}.smile-note{height:32px;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:12px;font:400 22px 'Caveat Brush';color:var(--pink);opacity:0;transition:opacity .2s}.smile-note svg{width:37px;height:28px}.is-smiling .smile-note{opacity:1}.explore{display:inline-flex;justify-content:center;align-items:center;gap:35px;min-height:58px;min-width:166px;background:var(--ink);color:#fff7e9;border:1px solid var(--ink);border-radius:7px;padding:16px 23px;margin-top:14px;font-size:14px;font-weight:800;box-shadow:0 5px 0 #35223d16;transition:background .2s,box-shadow .2s}.explore span{font-size:23px;line-height:1;transition:transform .2s}.explore:hover,.explore:focus-visible{background:#552f57;box-shadow:0 7px 0 #35223d16}.explore:hover span,.explore:focus-visible span{transform:translateY(3px)}.arrival-foot{position:relative;z-index:2;margin:0;text-align:center;padding:22px 24px 34px;font-size:11px;font-weight:700;letter-spacing:.025em}.arrival-foot span{padding-inline:13px}.inside-nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:16px var(--gutter);background:#fffaf3f5;border-bottom:1px solid #dbcdbf;font-size:12px;backdrop-filter:blur(12px);min-height:70px}.inside-brand{font-weight:800;font-size:16px;letter-spacing:-.04em}.inside-nav>div{display:flex;align-items:center;gap:30px}.inside-nav a{min-height:38px;display:flex;align-items:center}.inside-nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-enquire{font-weight:800;color:var(--pink)}.section{padding:100px var(--gutter);scroll-margin-top:15px}.eyebrow{font-size:9px;letter-spacing:.17em;font-weight:800;margin:0 0 23px;color:var(--pink)}h2{font:600 clamp(43px,4.9vw,72px)/1.07 Fredoka;letter-spacing:-.045em;margin:0}h2 em,h3 em{font:400 1.12em/1 'Caveat Brush';letter-spacing:-.02em;color:var(--pink)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:50px}.work-intro{max-width:330px;padding-bottom:5px}.work-intro p{font-size:15px;margin:0 0 25px;line-height:1.65}.gallery-controls{display:flex;align-items:center;gap:21px}.gallery-controls button{width:44px;height:44px;border:1px solid #b8a5af;border-radius:50%;background:transparent;font-size:22px;transition:background .2s}.gallery-controls button:hover:not(:disabled){background:#f1dce5}.gallery-controls span{font-size:10px;letter-spacing:.13em;font-weight:800}.gallery-hint{display:block;font-size:10px;color:#6a5361;margin-top:11px}.work-section{padding-left:0;padding-right:0;padding-bottom:90px;background:linear-gradient(#fff6ed 0,#fffaf3 170px)}.work-section .section-heading{padding-inline:var(--gutter)}.gallery-track{position:relative;display:flex;gap:clamp(40px,7vw,110px);align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:3px var(--gutter) 27px;scrollbar-width:thin;scrollbar-color:#a986a0 #f1e7dc;cursor:grab;touch-action:pan-x pan-y}.gallery-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.gallery-track:focus-visible{outline-offset:-4px}.gallery-panel{scroll-snap-align:start;flex-shrink:0}.photo-panel{flex-basis:min(58vw,640px);margin:0}.photo-wrap{background:#221c22;overflow:hidden}.photo-wrap img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;user-select:none}.photo-panel figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:17px;font-size:10px;color:#715a64}.photo-panel figcaption span:first-child{font-size:8px;letter-spacing:.12em;font-weight:800;color:var(--ink)}.gallery-invitation{flex-basis:42vw;max-width:620px;min-width:360px;padding:45px 10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.tiny-index{font-size:8px;font-weight:800;letter-spacing:.17em;color:var(--teal)}.gallery-invitation h3{font:600 clamp(40px,5vw,68px)/1.03 Fredoka;letter-spacing:-.045em;margin:24px 0}.gallery-invitation p{max-width:320px;font-size:15px;margin:10px 0 23px}.text-link{display:inline-flex;align-items:center;min-height:44px;gap:15px;font-size:14px;font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}.text-link:hover{color:var(--pink)}.quiet-link{display:block;font-size:12px;min-height:44px;line-height:44px;color:#715163}.quiet-link:hover{text-decoration:underline;text-underline-offset:5px}
.workshops-section{border-top:1px solid #dccacb;background:#f6e9e7}.section-intro{font-size:15px;max-width:350px;margin:0 0 5px}.section-intro span{display:block;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-top:18px;color:var(--pink)}.disciplines{border-top:1px solid #cbb3bc}.disciplines>a{display:grid;grid-template-columns:40px 1.1fr 1fr 30px;align-items:center;gap:20px;border-bottom:1px solid #cbb3bc;padding:20px 5px;min-height:88px;transition:padding .2s,background .2s}.discipline-no{font-size:10px;color:#785d6a}.disciplines h3{font:600 clamp(21px,2.6vw,34px)/1.2 Fredoka;letter-spacing:-.025em;margin:0}.disciplines p{font-size:13px;color:#705968;margin:0}.disciplines>a>span:last-child{font-size:24px;color:var(--pink)}.disciplines>a:hover,.disciplines>a:focus-visible{padding-left:15px;background:#fff6f14d}.workshop-end{font-size:13px;margin:29px 0 0}.workshop-end a{text-decoration:underline;text-underline-offset:5px;font-weight:700}.about-section{background:#fffaf3}.about-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:9vw;align-items:center;margin-bottom:70px}.about-layout h2{line-height:1.16}.about-copy{font-size:17px;max-width:460px}.about-copy p{margin-top:0;margin-bottom:22px}.about-copy .text-link{font-size:13px}.handwritten{font:400 24px/1.3 'Caveat Brush';color:var(--purple);display:block;margin-top:28px}.pronounce-wrap{position:relative;color:var(--pink);white-space:nowrap}.pronounce-wrap>button{position:absolute;right:-27px;top:12%;width:23px;height:23px;padding:0;border:1px solid #bfa0b1;border-radius:50%;background:transparent;color:#734563;font:700 11px 'Nunito Sans'}.pronounce-wrap>button:before{content:'';position:absolute;inset:-10px}.pronounce-wrap>span{position:absolute;right:-24px;bottom:-30px;font:400 23px 'Caveat Brush';color:var(--purple);rotate:-4deg}.approved-banner{width:100%;height:auto;display:block;aspect-ratio:2172/305}.play-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:#e1efea;border-block:1px solid #c8d8d1}.play-section h2 em{color:var(--teal)}.play-section>div>p:not(.eyebrow){font-size:15px;margin-top:28px}.joy-play{text-align:center}.joy-word{background:none;border:0;font:600 clamp(100px,11vw,160px)/1 Fredoka;letter-spacing:-.06em;color:var(--pink);transition:color .2s,transform .2s;padding:4px 20px;min-height:150px}.joy-word:hover{transform:rotate(-3deg)}.joy-word span{color:var(--ink)}.joy-play>p{font-size:12px}.joy-palette{display:flex;justify-content:center;gap:10px;margin:20px 0}.joy-palette i{width:8px;height:8px;background:#a32457;border-radius:50%;transition:scale .2s}.joy-palette i:nth-child(2){background:#934013}.joy-palette i:nth-child(3){background:#075c61}.joy-palette i:nth-child(4){background:#63397f}.joy-palette i.is-found{outline:1px solid var(--ink);outline-offset:3px}.joy-play p.handwritten{font-size:22px;min-height:29px;margin:18px 0}.joy-play p.discovery{font-size:11px;color:#53615e;min-height:37px;max-width:310px;margin:20px auto 0}.contact-section{text-align:center;background:radial-gradient(ellipse at 0% 100%,#edd1df88,transparent 65%),radial-gradient(ellipse at 100% 100%,#f7cfa688,transparent 65%),#fffaf3;padding-block:110px}.contact-section h2{font-size:clamp(60px,7vw,105px)}.contact-section>p:not(.eyebrow){font-size:17px;margin:30px 0}.contact-actions{display:flex;justify-content:center;align-items:center;gap:35px}.contact-actions>a{min-height:54px;display:flex;align-items:center;font-size:13px;font-weight:800}.contact-primary{padding:15px 23px;background:var(--ink);color:#fffaf3;border-radius:6px}.contact-primary:hover{background:#643653}.contact-actions>a:not(.contact-primary){text-decoration:underline;text-underline-offset:6px}.contact-detail{display:block;margin-top:25px;font-size:11px;color:#715966}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px var(--gutter);border-top:1px solid #dbcdbf;background:#fffaf3}footer .brand{font-size:16px}footer nav{display:flex;gap:25px}footer nav a,footer>a:last-child{font-size:11px;min-height:44px;display:flex;align-items:center}footer a:hover{text-decoration:underline;text-underline-offset:5px}
/* Optional stamps only inhabit the arrival's empty space. */
.stamp-layer{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.placed-mark{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%) rotate(var(--angle));opacity:.88;animation:mark-in .16s ease-out}.placed-mark svg{width:100%;height:100%;display:block}.stamp-tool{position:relative}.stamp-toggle{display:flex;align-items:center;gap:9px;border:1px solid #64406566;background:#fff5ea44;min-height:44px;padding:5px 12px 5px 7px;border-radius:5px;font-size:11px;font-weight:700}.stamp-toggle svg{width:28px;height:28px}.stamp-toggle:hover{background:#fff5ea88}.stamp-panel{position:absolute;top:55px;right:0;width:270px;padding:17px;background:#fffaf3;border:1px solid #c8aabd;border-radius:7px;box-shadow:0 12px 40px #462b4620;max-height:calc(100svh - 120px);overflow:auto}.tool-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.tool-heading>span{font-size:8px;font-weight:800;letter-spacing:.08em}.tool-heading>button{width:36px;height:36px;background:none;border:0;font-size:23px;position:relative}.tool-heading>button:before{content:'';position:absolute;inset:-4px}.mark-options,.colour-options{display:flex;gap:10px;margin-top:13px}.mark-options>button{width:46px;height:46px;padding:9px;background:none;border:1px solid #b89aaa;border-radius:50%;color:var(--pink)}.mark-options>button[aria-pressed=true]{background:#f5dce5;border-color:var(--pink)}.mark-options svg{width:100%;height:100%;display:block}.colour-options>button{width:44px;height:44px;padding:0;border:10px solid #fffaf3;outline:1px solid transparent;border-radius:50%;background:var(--ink)}.colour-options>button[aria-pressed=true]{outline-color:var(--ink)}.stamp-panel>p{font-size:11px;color:#715b68;margin:18px 0 8px}.tool-actions{display:flex;justify-content:space-between;gap:8px}.tool-actions>button{min-height:44px;padding:8px 4px;border:0;background:none;font-size:11px;font-weight:800;color:var(--teal)}.stamp-panel p.keyboard-help{font-size:9px;margin:3px 0}.keyboard-surface{position:absolute;inset:0;z-index:1;pointer-events:none}.keyboard-surface:focus-visible{outline:1px dashed #63397f;outline-offset:-28px}.stamp-cursor{position:absolute;display:none;width:53px;height:53px;border:2px dashed var(--purple);border-radius:50%;transform:translate(-50%,-50%)}.keyboard-surface:focus .stamp-cursor{display:block}.marking{cursor:crosshair}.marking a,.marking button{cursor:pointer}@keyframes mark-in{from{scale:.9;opacity:0}to{scale:1;opacity:.88}}
@media(max-width:1000px){.inside-brand{display:none}.inside-nav{justify-content:center}.inside-nav>div{width:100%;justify-content:space-between;gap:18px}.section{padding-block:75px}.work-section{padding-inline:0}.gallery-invitation{min-width:310px;flex-basis:45vw}.photo-panel{flex-basis:65vw}.about-layout{gap:7vw}.about-copy{font-size:15px}.play-section{gap:40px}.disciplines>a{grid-template-columns:30px 1.2fr 1fr 25px;gap:15px}footer{flex-wrap:wrap}footer nav{margin-left:auto}}
@media(max-width:650px){html{scroll-padding-top:66px}.arrival{height:100svh;min-height:690px}.arrival:after{inset:10px}.arrival-header{padding:24px 24px;gap:14px}.brand{font-size:16px}.brand span{font-size:6px;letter-spacing:.08em}.stamp-toggle{width:44px;height:44px;justify-content:center;padding:0}.stamp-toggle>span{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.stamp-panel{top:54px;width:260px}.arrival-inner{padding:15px 23px 30px}.welcome-kicker{font-size:8px;letter-spacing:.18em;margin-bottom:29px}h1{font-size:clamp(86px,22vw,132px);letter-spacing:-.06em}h1>span:first-child{font-size:33px;margin-bottom:14px}.intro-copy{font-size:21px;margin-top:29px}.smile-note{font-size:21px;height:30px;margin-top:9px}.explore{margin-top:17px;min-height:56px;min-width:156px;font-size:13px}.arrival-foot{font-size:9px;padding:20px 30px 30px;max-width:360px;justify-self:center;line-height:1.9}.arrival-foot span{padding-inline:6px}.inside-nav{padding:11px 22px;min-height:62px;font-size:11px}.inside-nav>div{gap:12px}.section{padding-block:65px}.section-heading{display:block;margin-bottom:32px}.eyebrow{font-size:8px;margin-bottom:20px}h2{font-size:46px}.work-intro{margin-top:26px;max-width:none;position:relative;padding-bottom:0}.work-intro p{font-size:13px;margin-bottom:18px}.gallery-controls{position:absolute;right:0;top:0;gap:12px}.gallery-controls button{width:40px;height:40px;font-size:21px}.gallery-controls span{font-size:9px}.gallery-hint{font-size:9px;margin-top:5px}.photo-panel{flex-basis:calc(100vw - 44px)}.gallery-track{gap:32px;padding-inline:22px;padding-bottom:20px}.photo-panel figcaption{display:block;padding-top:13px;line-height:1.6}.photo-panel figcaption span{display:block;font-size:10px}.photo-panel figcaption span:first-child{font-size:7px;margin-bottom:4px}.gallery-invitation{flex-basis:calc(100vw - 65px);min-width:0;padding:15px 0;max-width:none}.gallery-invitation h3{font-size:43px;margin-top:18px}.gallery-invitation p{font-size:13px;margin-top:0;max-width:260px}.gallery-invitation .text-link{font-size:12px}.section-intro{font-size:13px;margin-top:24px}.section-intro span{font-size:9px;margin-top:15px}.disciplines>a{grid-template-columns:23px 1fr 24px;gap:11px;padding:19px 0;min-height:89px}.disciplines h3{font-size:25px}.disciplines p{grid-column:2;grid-row:2;font-size:11px;margin-top:-5px}.disciplines>a>span:last-child{grid-column:3;grid-row:1 / 3}.discipline-no{font-size:9px;align-self:start;padding-top:5px}.workshop-end{font-size:12px;line-height:1.9}.about-layout{display:block;margin-bottom:40px}.about-layout h2{font-size:48px}.about-layout .handwritten{font-size:22px;margin-top:28px}.about-copy{margin-top:32px;font-size:15px;max-width:none}.about-copy p{margin-bottom:18px}.pronounce-wrap>span{font-size:22px}.approved-banner{margin-top:12px}.play-section{display:block}.play-section>div>p:not(.eyebrow){font-size:13px;margin-top:24px}.joy-play{margin-top:24px}.joy-word{font-size:120px;min-height:130px}.play-section .joy-play p{font-size:11px;margin-top:15px}.play-section .joy-play p.handwritten{font-size:22px}.play-section .joy-play p.discovery{font-size:10px;min-height:35px}.contact-section{padding-block:75px}.contact-section h2{font-size:66px}.contact-section>p:not(.eyebrow){font-size:14px;margin:25px 0}.contact-actions{flex-direction:column;gap:8px}.contact-actions>a{font-size:12px;min-height:52px}.contact-detail{font-size:10px;line-height:1.9;max-width:260px;margin:20px auto 0}footer{padding:32px 22px;display:block}footer .brand{font-size:16px}footer nav{margin:20px 0 4px;gap:23px}footer nav a,footer>a:last-child{font-size:10px}.placed-mark{width:36px;height:36px}}
@media(max-width:360px){.arrival-header{padding-inline:21px}.brand{font-size:15px}.brand span{font-size:5.5px}.arrival-inner{padding-inline:17px}h1{font-size:85px}h1>span:first-child{font-size:31px}.intro-copy{font-size:20px}.arrival-foot{font-size:8px;padding-inline:22px}.inside-nav{font-size:10px;padding-inline:18px}.inside-nav>div{gap:10px}h2{font-size:40px}.gallery-controls{position:static;margin-bottom:14px}.work-intro p{margin-bottom:13px}.gallery-invitation h3{font-size:39px}.disciplines h3{font-size:22px}.about-layout h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.arrival-inner{opacity:1!important;transform:none!important}.is-smiling .smile-letters>span{transform:none}.explore:hover span,.explore:focus-visible span,.joy-word:hover{transform:none}.disciplines>a:hover,.disciplines>a:focus-visible{padding-left:0}}
@media(min-width:1001px){.gallery-invitation{flex-basis:60vw;max-width:none}}
@media(min-width:651px){.arrival{min-height:660px}}
.gallery-track{scroll-padding-inline:var(--gutter)}
@media(max-width:650px){.gallery-track{scroll-padding-inline:22px}}
/* A clear chapter change, without taking over the visitor's scrolling. */
html{scroll-behavior:auto}.chapter-arriving .section-heading,.chapter-arriving .gallery-track{animation:chapter-arrive .5s ease-out both}.chapter-arriving .gallery-track{animation-delay:.06s}@keyframes chapter-arrive{from{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
#work:target .section-heading,#work:target .gallery-track{animation:chapter-arrive .5s ease-out both}#work:target .gallery-track{animation-delay:.06s}
/* Reserve only the actual lettering, leaving surrounding colour available for stamps. */
h1,.welcome-kicker,.intro-copy,.smile-note{width:fit-content;margin-left:auto;margin-right:auto}.arrival-foot{width:fit-content;justify-self:center}
@media(max-width:650px){.gallery-controls{position:static;margin-bottom:14px}.work-intro p{margin-bottom:15px}}
.inside-nav a{white-space:nowrap}#work:focus{outline:none}.gallery-track{animation:none!important}
@keyframes chapter-arrive{from{transform:translateY(8px)}to{transform:translateY(0)}}
@media(max-width:1000px){.inside-nav .inside-brand{display:none}}
.about-layout .handwritten{margin-top:42px}
@media(prefers-reduced-motion:reduce){.is-smiling .smile-letters>span{transform:none!important}}
/* Supplied opaque crops, shown honestly for brand placement review. */
.arrival-header .brand-image{width:160px;height:110px;display:flex;align-items:center;justify-content:flex-start;flex-shrink:0}.brand-image img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:650px){.arrival-header .brand-image{width:108px;height:75px}}
/* Keep the established first-screen composition while reviewing the larger mark. */
.arrival-header .brand-image{position:absolute;left:var(--gutter);top:24px}.arrival-header .stamp-tool{margin-left:auto}
@media(max-width:650px){.arrival-header .brand-image{left:24px;top:21px}}
/* Primary compact badge: cap desktop at 80px high (160px at 2×), within its 161px source. */
.arrival-header .brand-image{width:86px;height:80px;top:24px}.arrival-header .brand-image img{max-width:86px;max-height:80px}
.inside-nav .inside-brand-mark{display:flex;align-items:center;gap:12px}.inside-brand-mark img{display:block;width:auto;height:44px;max-width:48px;object-fit:contain;flex-shrink:0}.inside-brand-mark span{white-space:nowrap}
@media(max-width:1000px){.inside-nav .inside-brand-mark{display:none}}
@media(max-width:650px){.arrival-header .brand-image{width:69px;height:64px;top:21px}.arrival-header .brand-image img{max-width:69px;max-height:64px}}

/* Requested 50% increase to the main arrival badge; chapter navigation stays compact. */
.arrival-header .brand-image{width:129px;height:120px}.arrival-header .brand-image img{max-width:129px;max-height:120px}
@media(max-width:650px){.arrival-header .brand-image{width:103.5px;height:96px}.arrival-header .brand-image img{max-width:103.5px;max-height:96px}}

/* Pronunciation lives beside the landing full stop without moving the heading. */
.landing-pronounce{position:relative;display:inline-block}
.landing-pronounce .full-stop{position:relative;display:inline;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;line-height:inherit;vertical-align:baseline}
.landing-pronounce .full-stop:before{content:'';position:absolute;left:50%;bottom:0;width:44px;height:44px;transform:translateX(-50%)}
.landing-pronunciation{position:absolute;right:0;top:calc(100% + 5px);white-space:nowrap;font:400 24px/1.1 'Caveat Brush';letter-spacing:0;color:var(--purple);pointer-events:none;transform:rotate(-3deg)}
@media(max-width:650px){.landing-pronunciation{font-size:21px;top:100%}}
.landing-pronounce .full-stop:focus-visible{outline:none}
.landing-pronounce .full-stop:focus-visible:before{outline:3px solid var(--teal);outline-offset:4px;border-radius:50%}

/* Frosted glass: readable fallback with a soft highlight and real backdrop blur. */
.stamp-panel{background:rgba(255,250,243,.72);border:1px solid rgba(255,255,255,.78);border-radius:16px;backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);box-shadow:inset 0 1px 0 #ffffffcc,inset 0 -1px 0 #ffffff44,0 16px 44px #35223d20}
.stamp-toggle{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.stamp-panel{background:#fffaf3ed}}
@media(max-width:900px){
 .arrival:has(.stamp-panel:not([hidden])){height:auto;min-height:100svh}
 .arrival-header:has(.stamp-panel:not([hidden])) .stamp-tool{width:100%}
 .arrival-header:has(.stamp-panel:not([hidden])) .stamp-toggle{margin-left:auto}
 .stamp-panel{position:relative;top:auto;width:min(100%,320px);margin:76px 0 0 auto;max-height:none}
 .arrival:has(.stamp-panel:not([hidden])) .arrival-inner{padding-top:35px;padding-bottom:55px}
}

/* A brief invitation, followed by a quiet static glow. */
.stamp-toggle{background:#fffaf39c;border-color:#ffffffcc;box-shadow:0 0 0 3px #fffaf31f,0 0 24px #fffaf366,0 5px 18px #63397f20;animation:mark-invitation .65s ease-in-out 1.4s 2;transform-origin:65% 65%}
.stamp-toggle:hover,.stamp-toggle:focus-visible{background:#fffaf3d9;box-shadow:0 0 0 3px #fffaf34d,0 0 28px #fffaf399,0 5px 18px #63397f20}
@keyframes mark-invitation{0%,100%{transform:rotate(0)}25%{transform:rotate(-3deg)}60%{transform:rotate(3deg)}80%{transform:rotate(-1deg)}}
.mark-options{display:grid;grid-template-columns:repeat(3,46px);gap:10px}
@media(max-width:650px){
 .stamp-toggle{width:auto;height:44px;padding:5px 12px 5px 7px;gap:5px}
 .stamp-toggle>span{position:static;width:auto;height:auto;clip:auto;overflow:visible;white-space:nowrap;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.stamp-toggle{animation:none!important}}

/* Preserve every supplied photograph in its complete frame. */
.photo-wrap{background:#eee6e1}
