/* The studio journal: local assets, native scrolling, no animation runtime. */
:root{--paper:#f5f1e8;--ink:#303d2d;--olive:#536143;--muted:#65705b;--line:#d5d7c9;--ochre:#ba8b49}
body::after{display:none}
body{background:var(--paper)}
figure{margin:0}
button,a{touch-action:manipulation}
.section-pad{padding-inline:7%;padding-block:112px}
.eyebrow{font-size:10px;letter-spacing:.15em}
.button{border-radius:0;min-height:52px;padding:19px 25px;font-size:12px}
.button span{font-size:23px}
.site-header{height:100px;border-color:#303d2d21;padding-inline:5%}
.site-header .brand-top{font-size:27px}
.site-header nav{gap:25px;font-size:11px}
.header-cta{min-height:44px;background:transparent;backdrop-filter:none}
.hero{height:auto;min-height:790px;max-height:none;padding:155px 5% 114px 7%;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;gap:3.5%;isolation:isolate}
.hero::before{content:"";position:absolute;right:-10%;top:12%;width:47%;aspect-ratio:1;background:#e5e6d8;border-radius:50%;z-index:-1}
.hero-copy{position:relative;inset:auto;z-index:2;padding-bottom:35px}
.hero .eyebrow{font-size:9px}
.little-star{font-size:21px;color:var(--ochre)}
.hero h1{font-size:clamp(76px,8.8vw,150px);line-height:.97;letter-spacing:-.06em;margin:32px 0 38px;max-width:none}
.hero-title-line{display:block;position:relative;white-space:nowrap;animation:ink-reveal 1.1s cubic-bezier(.22,.75,.3,1) both}
.hero-title-line:nth-child(2){animation-delay:.12s}
.hero h1 em{color:var(--olive);position:relative;z-index:1}
.hero-brush{position:absolute;left:0;bottom:-14px;width:91%;height:30px;overflow:visible;fill:none;stroke:var(--selected-pigment);stroke-width:7;stroke-linecap:round;opacity:.23}
.hero-brush path{stroke-dasharray:1300;animation:brush-reveal 1.4s .3s ease-out both}
.hero-description{font-size:13px;line-height:1.9;max-width:370px;margin:0 0 27px}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.hero-play{font-size:11px;display:flex;align-items:center;gap:18px;min-height:48px;border-bottom:1px solid #818b74}
.hero-play span{font-size:19px}
.hero-footnote{display:flex;align-items:center;gap:16px;margin-top:41px}
.hero-footnote-rule{width:37px;height:1px;background:var(--ochre)}
.hero-footnote p{font-size:10px;line-height:1.7}
.hero-footnote em{font-family:var(--serif);font-size:17px}
.hero-art{position:relative;margin:0;background:#fcf9f1;padding:13px 13px 0;box-shadow:0 2px 4px #303d2d0a,8px 22px 40px #303d2d12;transform:rotate(2deg);align-self:stretch;min-width:0;animation:photo-reveal 1.3s ease-out both}
.hero-photo{position:relative;inset:auto;height:clamp(450px,54vw,640px);background:none;animation:none;overflow:hidden}
.hero-photo picture{display:block;height:100%}
.hero-photo img{height:100%;width:100%;object-position:62% 50%;object-fit:cover}
.hero-art figcaption{display:flex;align-items:center;justify-content:space-between;padding:22px 7px 24px;gap:10px}
.hero-art figcaption>span{font-size:7px;letter-spacing:.09em;max-width:83px;line-height:1.7}
.hero-art figcaption>em{font-family:var(--serif);font-size:22px;white-space:nowrap}
.hero-art figcaption>span:last-child{text-align:right}
.hero-photo-note{position:absolute;bottom:105px;right:-22px;background:#f6efda;padding:22px 25px;font-family:var(--serif);font-size:23px;font-style:italic;line-height:1.1;transform:rotate(-8deg);box-shadow:2px 7px 15px #332e2718}
.hero-seal{width:89px;top:-32px;right:22px;background:var(--paper);border-radius:50%;padding:5px;opacity:1;transform:rotate(-14deg)}
.hero-seal svg{width:70px;display:block;margin:auto}
.hero-seal span{font-size:5px;margin:0 0 4px}
.hero-bottom{bottom:35px;font-size:8px;letter-spacing:.13em}
.scroll-line{height:29px}
.event-ribbon{padding:18px 7%;background:#e7e9dc;border-block:1px solid #ced4bf;gap:18px}
.event-ribbon p{font-family:var(--serif);font-style:italic;font-size:19px}
.event-ribbon a{font-size:10px}
.intro{grid-template-columns:1fr 2fr;gap:6%;padding-block:112px 90px}
.intro h2{font-size:clamp(48px,5.6vw,92px);line-height:1.05}
.intro-bottom{margin-top:35px;max-width:640px;grid-template-columns:60px 1fr}
.intro-bottom p{font-size:13px;max-width:420px;line-height:1.9}
.intro-meta .handwritten{font-size:26px}
.studio-notes{padding-top:20px;padding-bottom:125px}
.notes-heading{display:grid;grid-template-columns:1fr 1.8fr 1fr;gap:4%;align-items:center;margin-bottom:45px}
.notes-heading h2{font-size:clamp(40px,4.1vw,68px);line-height:1.06}
.notes-heading h2 em{color:var(--olive)}
.notes-heading>p:last-child{font-size:12px;line-height:1.9}
.notes-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%;padding-top:25px}
.note-photo{display:block;min-width:0}
.note-photo figure{padding:10px;background:#fffaf0;box-shadow:0 2px 4px #303d2d0a,6px 12px 25px #303d2d0c;transition:transform .5s ease}
.note-tote figure{transform:rotate(-4deg)}
.note-pot figure{transform:rotate(3deg) translateY(30px)}
.note-tray figure{transform:rotate(-2deg)}
.note-photo img{width:100%;height:auto;aspect-ratio:1/1.08;object-fit:cover}
.note-photo figcaption{display:grid;grid-template-columns:1fr auto;gap:8px;padding:20px 8px 13px}
.note-photo figcaption>span:first-child{grid-column:1/-1;font-size:7px;letter-spacing:.12em}
.note-photo figcaption>em{font-family:var(--serif);font-size:21px;line-height:1.2}
.note-photo figcaption>span:last-child{font-size:23px}
@media(hover:hover){.note-photo:hover figure{transform:rotate(0) translateY(-5px)}}
.journey{height:180svh;min-height:1300px;background:#e4dac9}
.journey-sticky{background:radial-gradient(ellipse at 53% 38%,#f2e9d6,#dcd0bb);min-height:700px}
.journey-heading h2{font-size:clamp(38px,4.7vw,75px)}
.journey-colours{top:9%}
.journey-colours>p{font-size:21px}
.scene-paper{will-change:auto}
.window-light{filter:none;opacity:.2}
.steam{display:none}
.paint-section{background:#edece1;grid-template-columns:1fr 1.2fr;gap:7%;padding-block:120px}
.paint-copy h2{font-size:clamp(49px,5.8vw,94px);line-height:1.02}
.paint-copy>p:not(.eyebrow){font-size:13px;line-height:1.9}
.paint-copy .handwritten{font-size:24px;margin-top:30px;max-width:320px;line-height:1.35}
.paint-caption{display:flex;flex-direction:column;gap:13px;margin-top:42px;font-size:8px;letter-spacing:.1em;padding-left:17px;border-left:1px solid #a5ae91}
.canvas-frame{background:#fbf8f0;border:10px solid #fffdf5;box-shadow:6px 14px 30px #303d2d14}
.canvas-hint{font-size:24px;color:#747c68}
.paint-toolbar{gap:8px;align-items:center;margin-top:20px}
.canvas-actions{font-size:11px;gap:16px;flex-wrap:wrap}
.canvas-actions button{min-width:44px;min-height:44px}
.swatch{border-color:#edece1;width:44px;height:44px;border-width:10px}
.paint-mode{display:flex;align-items:center;gap:15px;margin-top:10px}
#enable-paint{display:none;min-height:48px;padding:12px 16px;border:1px solid #7d896c;font-size:11px;align-items:center;justify-content:space-between;gap:18px}
#paint-help{font-size:10px;line-height:1.7;color:#626d56}
.paint-access{margin-top:2px;font-size:10px;color:#626d56}
.paint-access button{font-size:11px}
.signature-section{background:#303e2c;color:#f5f1e8;display:grid;grid-template-columns:1fr 1.05fr;gap:10%;align-items:center;min-height:620px;padding:90px 10%;position:relative;overflow:hidden;isolation:isolate}
.signature-section::before{content:"";position:absolute;right:-8%;top:-18%;width:60%;aspect-ratio:1;border:1px solid #d3d8b828;border-radius:50%;z-index:-1}
.signature-copy .eyebrow{color:#c8cdbb}
.signature-copy h2{font-size:clamp(56px,5.5vw,89px);line-height:1.03;margin:27px 0}
.signature-copy h2 em{color:#d2c39a}
.signature-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#d1d6c7}
.signature-link{display:inline-flex;align-items:center;gap:35px;font-size:11px;border-bottom:1px solid #9aa98c;min-height:48px;margin-top:20px}
.signature-link span{font-size:21px}
.signature-paper{position:relative;aspect-ratio:900/650;background:#f6f0e0;transform:rotate(-9deg);box-shadow:9px 22px 45px #0b1d1740;color:var(--selected-pigment);width:110%;max-width:570px}
.signature-paper canvas{display:block;width:100%;height:100%;opacity:0}
.signature-flower{position:absolute;width:50%;height:105%;left:25%;top:-3%;transform:rotate(12deg);opacity:.75}
.signature-paper.has-signature canvas{opacity:1}
.signature-paper.has-signature .signature-flower{display:none}
.signature-label{position:absolute;bottom:14px;right:20px;font:italic 18px var(--serif);color:#59634d}
.signature-index{position:absolute;bottom:23px;right:7%;font-size:7px;letter-spacing:.14em;color:#c7cebb}
.workshops{padding-top:125px;padding-bottom:100px}
.workshop-layout{gap:9%;grid-template-columns:1fr 1fr}
.section-top{margin-bottom:48px}
.workshop-list h2{font-size:clamp(55px,5.6vw,91px);margin-bottom:32px}
.workshop-image-wrap{height:650px}
.object-display{background:radial-gradient(ellipse at 50% 42%,#f1e9d8,#e2d8c2);border:1px solid #d5ccb5}
.activity{min-height:77px;padding-block:20px}
.activity>span:nth-child(2){font-size:31px}
.activity-number{color:#687358}
#activity-panel p{font-size:13px;line-height:1.9}
.workshop-small{font-size:10px}
.gather{padding-block:65px 130px;gap:10%}
.gather-art{height:620px}
.gather-art>img{border-radius:180px 180px 0 0}
.gather-ticket{background:#dfcaa3;bottom:-28px;right:-28px;transform:rotate(7deg)}
.gather h2{font-size:clamp(52px,5.1vw,83px);line-height:1.04}
.gather-copy>p:not(.eyebrow){font-size:13px;line-height:1.9}
.gather-types{font-size:8px;line-height:1.7}
.faq{padding-top:30px;padding-bottom:100px}
.faq-list summary{font-size:27px;min-height:78px;align-items:center}
.faq-list details p{font-size:13px;line-height:1.9}
.next-events{padding-block:35px 110px}
.next-events h2{font-size:clamp(48px,5.5vw,85px)}
.event-empty{display:grid;grid-template-columns:90px 1fr auto;gap:30px;align-items:center;background:#e8ebdf;padding:42px;border:0}
.event-empty-mark{font-size:70px;color:var(--ochre);line-height:1}
.event-empty h3{font-size:34px;line-height:1.2;margin-bottom:13px}
.event-empty p{font-size:12px;line-height:1.9}
.event-empty>a{text-decoration:none;font-size:11px}
.event-card{grid-template-columns:1fr 1.8fr 1fr;padding-block:36px}
.event-card>p{font-size:12px}
.event-card h3{font-size:38px}
.closing{background:#ece5d5;padding-block:110px 125px;border-top:1px solid #d5ccb9}
.closing h2{font-size:clamp(70px,9vw,155px);line-height:1.02;margin-block:29px 38px}
.closing h2 em{color:var(--olive)}
.closing-star{color:#d8d0b9;font-size:500px;top:65px;left:-165px;animation:none}
.closing-note{font-size:11px}
.site-footer{background:#303e2c;color:#f5f1e8;padding:75px 7% 30px;gap:30px}
.site-footer>.footer-statement{flex-basis:100%;font-family:var(--serif);font-size:clamp(70px,10vw,160px);font-style:normal;line-height:.96;letter-spacing:-.05em;margin-bottom:45px;color:#efe9d9}
.site-footer>.footer-statement em{color:#c8c1a0}
.site-footer>.wordmark .brand-top{font-size:30px}
.site-footer>p:not(.footer-statement){font-size:22px;color:#d5d9c9}
.site-footer>a:last-of-type{font-size:12px;border-bottom:1px solid #8c9a80;padding-block:12px}
.footer-base{border-color:#8c9a8055;color:#c3cbb7;margin-top:32px;font-size:10px;align-items:center;flex-wrap:wrap}
.footer-base a{min-height:44px;display:flex;align-items:center}
dialog{border:1px solid #d0d5c0;border-radius:4px;overscroll-behavior:contain;overflow-y:auto;scrollbar-gutter:stable}
dialog::backdrop{backdrop-filter:none;background:#23301dc4}
.booking-header h2{font-size:60px}
.form-grid label{font-size:11px}
input,select,textarea{font-size:16px;min-height:48px}
.consent input{min-height:18px}
.close-dialog{height:44px;width:44px;right:10px;top:10px}
.privacy-note,.form-note{font-size:11px}
.review-actions .button{font-size:12px;min-height:48px}
.mobile-seat{display:none}
.toast{box-shadow:0 5px 20px #303d2d26}
@keyframes ink-reveal{from{clip-path:inset(0 100% -35px 0);transform:translateY(13px)}to{clip-path:inset(0 0 -35px 0);transform:none}}
@keyframes brush-reveal{from{stroke-dashoffset:1300}to{stroke-dashoffset:0}}
@keyframes photo-reveal{from{opacity:.45;transform:translateY(21px) rotate(3deg)}to{opacity:1;transform:rotate(2deg)}}
@media(min-width:1700px){.hero{gap:5%;padding-inline:8%;grid-template-columns:1fr 1fr}.hero-photo{height:720px}.hero-copy{padding-bottom:0}.hero h1{font-size:155px}.notes-gallery{gap:5%}.signature-section{padding-inline:13%}}
@media(max-width:1200px) and (min-width:761px){.site-header nav{gap:15px;font-size:10px}.hero{padding-left:6%;gap:3%;min-height:740px}.hero h1{font-size:8.4vw}.hero-art figcaption>em{font-size:19px}.hero-art figcaption>span{font-size:6px}.hero-photo{height:490px}.hero-actions{gap:18px}.hero-photo-note{font-size:20px;right:-13px;padding:19px}.hero-description{font-size:12px}.notes-heading{grid-template-columns:1fr 2fr}.notes-heading>p:last-child{display:none}.note-photo figcaption>em{font-size:19px}.signature-section{gap:7%;padding-inline:7%}.workshop-image-wrap{height:590px}.workshop-list h2{font-size:60px}.activity>span:nth-child(2){font-size:27px}.gather-art{height:530px}.event-empty{grid-template-columns:60px 1fr;gap:24px;padding:32px}.event-empty>a{grid-column:2;justify-self:start}.event-empty-mark{font-size:52px}}
@media(max-width:940px) and (min-width:761px){.site-header nav a:first-child{display:none}.site-header nav{gap:14px}.hero{padding-top:140px}.hero h1{font-size:8.2vw}.hero .eyebrow{font-size:7px}.hero-art figcaption>span:last-child{display:none}.hero-art figcaption>em{font-size:19px}.hero-footnote{margin-top:28px}.hero-photo{height:440px}.hero-seal{right:10px;width:78px}.hero-seal svg{width:60px}.paint-section{gap:5%;padding-inline:6%}.paint-copy h2{font-size:52px}.canvas-hint{font-size:20px}.paint-copy .handwritten{font-size:20px}.gather-ticket{width:200px;padding:23px}.gather-ticket>span:nth-child(2){font-size:24px}.gather h2{font-size:51px}.signature-copy h2{font-size:56px}.workshop-list h2{font-size:53px}.activity>span:nth-child(2){font-size:25px}}
@media(max-width:760px){
  html{scroll-padding-top:24px}
  .section-pad{padding:74px 6%}
  .site-header{height:84px;padding-inline:6%}
  .site-header .brand-top{font-size:23px}
  .site-header nav{top:84px;gap:8px;padding-bottom:26px;font-size:18px}
  .site-header nav a{min-height:48px;display:flex;align-items:center}
  .header-cta{font-size:10px;margin-right:14px;padding:11px 14px;gap:13px}
  .menu-toggle{min-width:34px;min-height:44px;align-items:center}
  .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:126px 6% 84px;gap:39px}
  .hero::before{right:-30%;top:40%;width:95%}
  .hero-copy{inset:auto;padding:0;position:relative}
  .hero .eyebrow{font-size:8px;letter-spacing:.1em}
  .hero h1{font-size:clamp(60px,16.8vw,114px);margin:26px 0 29px;line-height:1.02;letter-spacing:-.05em}
  .hero-brush{bottom:-8px;height:21px;width:87%}
  .hero-description{font-size:12px;line-height:1.8;max-width:360px;margin-bottom:21px}
  .hero-actions{gap:25px}
  .hero .button{min-height:50px;padding:17px 22px;font-size:11px;gap:29px}
  .hero-play{font-size:11px;gap:17px}
  .hero-footnote{margin-top:24px;gap:12px}
  .hero-footnote p{font-size:9px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
  .hero-footnote p br{display:none}
  .hero-footnote em{font-size:15px}
  .hero-footnote-rule{width:25px}
  .hero-art{margin:0 2%;padding:9px 9px 0;align-self:auto;transform:rotate(2deg)}
  .hero-photo{height:auto;aspect-ratio:1.02/1}
  .hero-photo img{object-position:60% 50%;height:100%}
  .hero-art figcaption{padding:19px 4px 20px;gap:9px}
  .hero-art figcaption>em{font-size:22px;white-space:normal}
  .hero-art figcaption>span{font-size:6px;max-width:76px}
  .hero-art figcaption>span:last-child{display:none}
  .hero-photo-note{right:-10px;bottom:86px;padding:16px 18px;font-size:20px}
  .hero-seal{display:block;right:14px;top:-22px;width:68px}
  .hero-seal svg{width:52px}
  .hero-seal span{font-size:4px}
  .hero-bottom{bottom:24px;left:6%;right:6%;font-size:7px}
  .scroll-prompt{gap:10px}
  .sound-button{min-height:44px;font-size:8px}
  .event-ribbon{padding:20px 6%;gap:9px 12px}
  .event-ribbon>p{font-size:19px}
  .event-ribbon>a{font-size:10px;margin-left:18px;width:calc(100% - 18px)}
  .intro{padding-block:75px 63px}
  .intro-statement{margin-top:25px}
  .intro h2{font-size:clamp(41px,9.1vw,64px);line-height:1.08}
  .intro-bottom{margin-top:27px;grid-template-columns:41px 1fr;gap:15px}
  .intro-bottom p{font-size:12px;line-height:1.9}
  .asterisk{font-size:36px}
  .studio-notes{padding:16px 0 60px}
  .notes-heading{display:block;padding-inline:6%;margin-bottom:8px}
  .notes-heading h2{font-size:clamp(41px,9vw,61px);margin-block:23px 20px}
  .notes-heading>p:last-child{font-size:12px}
  .notes-gallery{display:flex;gap:24px;padding:30px 7% 40px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:7%;-webkit-overflow-scrolling:touch}
  .note-photo{flex:0 0 76vw;max-width:400px;scroll-snap-align:start}
  .note-photo figure{padding:9px}
  .note-tote figure{transform:rotate(-2deg)}
  .note-pot figure{transform:rotate(2deg)}
  .note-tray figure{transform:rotate(-2deg)}
  .note-photo img{aspect-ratio:1/1.02}
  .note-photo figcaption{padding:18px 9px 12px}
  .note-photo figcaption>span:first-child{font-size:7px}
  .note-photo figcaption>em{font-size:23px}
  .journey{height:auto;min-height:0}
  .journey-sticky{position:relative;height:690px;min-height:0}
  .journey-heading{left:6%;right:6%;top:39px}
  .journey-heading .eyebrow{font-size:8px;letter-spacing:.09em}
  .journey-heading h2{font-size:35px;max-width:none;margin-top:14px}
  .journey-heading>p:last-child{font-size:11px;max-width:310px;margin-top:14px}
  .table-scene{top:52%;left:47%;transform:translate(-50%,-50%) rotate(calc(-5deg + var(--p)*3deg)) scale(.46)}
  .journey-colours{bottom:91px;left:6%;right:6%;top:auto;display:flex;flex-direction:row;text-align:left;gap:5px}
  .journey-colours>p{font-size:17px;max-width:110px}
  .journey-colours .swatch{width:44px;height:44px}
  .journey-progress{bottom:40px;left:6%;gap:9px}
  .journey-progress>div{width:60px}
  .journey-next{bottom:30px;right:6%;font-size:10px}
  .paint-section{display:flex;flex-direction:column;gap:42px;padding-block:74px 68px;align-items:stretch}
  .paint-copy h2{font-size:clamp(50px,11.9vw,75px);line-height:1.04;margin:23px 0}
  .paint-copy>p:not(.eyebrow){font-size:12px}
  .paint-copy .handwritten{font-size:23px;margin-top:24px;max-width:320px}
  .paint-caption{flex-direction:row;flex-wrap:wrap;gap:12px 19px;margin-top:28px;padding-left:0;border:0;font-size:7px}
  .paint-desk{width:100%}
  .canvas-frame{border-width:7px}
  .canvas-hint{font-size:20px}
  .paint-toolbar{gap:5px;margin-top:14px;justify-content:space-between}
  .canvas-actions{font-size:11px;gap:15px;width:auto;margin-left:auto;margin-top:0}
  .swatches{gap:0}
  .paint-mode{margin-top:13px}
  .paint-access{font-size:10px;margin-top:9px}
  .paint-access button{font-size:11px}
  .signature-section{min-height:0;grid-template-columns:1fr;gap:43px;padding:67px 9% 73px}
  .signature-copy h2{font-size:clamp(55px,12.8vw,83px);margin:23px 0}
  .signature-copy>p:not(.eyebrow){font-size:12px}
  .signature-copy .eyebrow{font-size:8px}
  .signature-paper{width:91%;margin:6px auto 17px;max-width:420px;transform:rotate(-7deg)}
  .signature-label{font-size:15px;right:14px;bottom:11px}
  .signature-index{bottom:23px;right:auto;left:9%;font-size:6px;letter-spacing:.11em}
  .workshops{padding-block:75px 50px}
  .section-top{margin-bottom:32px}
  .section-top>p:last-child{font-size:17px}
  .section-top .eyebrow{font-size:8px;max-width:170px}
  .workshop-layout{gap:33px}
  .workshop-image-wrap{height:auto;aspect-ratio:760/880;min-height:0;max-width:470px}
  .workshop-list h2{font-size:clamp(52px,12vw,75px);margin-bottom:20px}
  .activity{min-height:73px;padding:19px 0;gap:16px}
  .activity>span:nth-child(2){font-size:28px}
  #activity-panel p{font-size:12px}
  .workshop-small{font-size:10px}
  .gather{padding-top:40px;padding-bottom:85px;gap:67px}
  .gather-art{height:auto;aspect-ratio:1/1.16;width:95%;max-width:480px}
  .gather-art>img{border-radius:150px 150px 0 0}
  .gather-ticket{width:177px;padding:21px;bottom:-23px;right:-10px}
  .gather-ticket>span:nth-child(2){font-size:22px;line-height:1.2;margin-top:14px}
  .gather-ticket .eyebrow{font-size:7px}
  .gather-ticket svg{width:32px;height:29px;margin-top:14px}
  .gather h2{font-size:clamp(51px,11.8vw,78px);line-height:1.04;margin-block:24px}
  .gather-copy>p:not(.eyebrow){font-size:12px}
  .gather-types{font-size:8px;margin-top:29px}
  .faq{padding-block:12px 68px}
  .faq-list{margin-top:22px}
  .faq-list summary{font-size:23px;min-height:75px;padding-block:21px}
  .faq-list details p{font-size:12px;line-height:1.9}
  .next-events{padding-block:18px 74px}
  .next-events h2{font-size:clamp(45px,10.5vw,68px)}
  .next-events .section-top .eyebrow{max-width:none}
  .next-events .section-top>a{font-size:11px}
  .event-empty{grid-template-columns:1fr;gap:20px;padding:29px 26px}
  .event-empty-mark{font-size:52px}
  .event-empty h3{font-size:32px;line-height:1.15}
  .event-empty p{font-size:12px}
  .event-empty p br{display:none}
  .event-empty>a{justify-self:start;margin-top:3px;font-size:11px}
  .event-card{grid-template-columns:1fr;gap:16px;padding-block:28px}
  .event-card h3{font-size:34px}
  .closing{padding-block:76px 86px}
  .closing .eyebrow{font-size:8px}
  .closing h2{font-size:clamp(62px,14.6vw,104px);line-height:1.06;margin-block:25px 31px}
  .closing-star{font-size:330px;top:66px;left:-172px}
  .closing .button{font-size:11px}
  .closing-note{font-size:10px}
  .site-footer{padding:56px 6% max(106px,calc(86px + env(safe-area-inset-bottom)));gap:24px}
  .site-footer>.footer-statement{font-size:clamp(62px,15vw,106px);margin-bottom:26px;line-height:1.02}
  .site-footer>.wordmark .brand-top{font-size:28px}
  .site-footer>p:not(.footer-statement){font-size:22px}
  .footer-base{font-size:9px;margin-top:9px;gap:8px 15px}
  .footer-base span:nth-child(2){order:5;width:100%;margin-top:9px}
  .footer-base a{margin-left:0}
  .footer-base a:last-child{margin-left:auto}
  dialog{padding:47px 22px 30px;max-height:calc(100dvh - 24px);width:calc(100% - 24px)}
  .booking-header h2{font-size:49px}
  .form-grid{gap:19px}
  .form-grid label{font-size:11px}
  input,select,textarea{font-size:16px;padding:12px}
  .form-note,.privacy-note{font-size:11px;line-height:1.75}
  .review-actions{flex-direction:column}
  .review-actions .button{flex:auto;min-height:50px;font-size:12px}
  .past-hero .mobile-seat{display:flex;position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:6%;right:6%;z-index:12;min-height:61px;align-items:center;justify-content:space-between;gap:13px;padding:13px 20px;background:#303e2c;color:#f7f3e8;box-shadow:0 4px 20px #1b28162e;border:1px solid #adb99733;border-radius:3px}
  .mobile-seat>span{font-size:7px;letter-spacing:.08em;line-height:1.7;max-width:105px;text-align:left}
  .mobile-seat strong{font-weight:400;font-size:13px;display:flex;align-items:center;gap:17px}
  .mobile-seat strong span{font-size:21px}
  body.modal-open .mobile-seat{display:none}
  .toast{bottom:calc(90px + env(safe-area-inset-bottom));font-size:12px;width:max-content;max-width:88%}
}
@media(any-pointer:coarse){
  .canvas-frame canvas{touch-action:pan-y pinch-zoom;cursor:auto}
  .canvas-frame.is-painting canvas{touch-action:none}
  #enable-paint{display:flex;flex-shrink:0}
  #enable-paint[aria-pressed=true]{background:var(--olive);color:var(--paper)}
  .paint-mode{flex-wrap:wrap;gap:10px}
}
@media(max-width:390px){
  .site-header .brand-top{font-size:20px}
  .brand-bottom{font-size:12px}
  .header-cta{margin-right:7px;gap:10px;padding:10px 11px}
  .hero{padding-top:121px}
  .hero h1{font-size:16.3vw;min-height:116px}
  .hero .eyebrow{font-size:7px}
  .hero-description{font-size:11px}
  .hero-description br{display:none}
  .hero-actions{gap:18px}
  .hero-play{font-size:10px;gap:10px}
  .hero .button{padding-inline:18px;gap:24px}
  .hero-art figcaption>em{font-size:20px}
  .hero-photo-note{font-size:18px}
  .intro h2{font-size:10.4vw}
  .notes-heading h2{font-size:10.7vw}
  .journey-heading h2{font-size:31px}
  .journey-heading .eyebrow{font-size:7px}
  .table-scene{transform:translate(-50%,-50%) rotate(-3deg) scale(.39)}
  .journey-sticky{height:650px}
  .journey-colours{bottom:84px;gap:9px;flex-direction:column;align-items:center}
  .journey-colours>p{max-width:none;font-size:16px}
  .journey-progress>div{width:44px}
  .journey-next{gap:10px;font-size:9px}
  .paint-copy h2{font-size:13.4vw}
  .canvas-actions{width:100%;justify-content:flex-end}
  .canvas-hint{font-size:17px}
  .paint-access{font-size:9px}
  .paint-access button{font-size:10px}
  .signature-copy h2{font-size:14.2vw}
  .workshop-list h2{font-size:14vw}
  .activity>span:nth-child(2){font-size:25px}
  .closing h2{font-size:15.5vw}
  .closing .button{padding-inline:19px;gap:20px}
  .site-footer>.footer-statement{font-size:16vw}
}
@media(orientation:landscape) and (max-height:550px) and (min-width:761px){.hero{min-height:720px}.journey-sticky{height:700px}}
@media(prefers-reduced-motion:reduce){
  .hero-title-line,.hero-art,.hero-brush path{animation:none;clip-path:none}
  .journey{height:auto;min-height:0}
  .journey-sticky{position:relative;height:780px;min-height:0}
  .journey-colours{top:9%}
  .note-photo figure{transition:none}
}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.journey-sticky{height:690px}.journey-colours{top:auto;bottom:91px}.table-scene{transform:translate(-50%,-50%) rotate(-3deg) scale(.46)}}
@media(prefers-reduced-motion:reduce) and (max-width:390px){.journey-sticky{height:650px}.table-scene{transform:translate(-50%,-50%) rotate(-3deg) scale(.39)}.journey-colours{bottom:84px}}
