*,*:before,*:after{box-sizing:border-box}html{font-family:var(--ff-body);-webkit-font-smoothing:antialiased;overflow-x:hidden;scroll-behavior:smooth}body{margin:0;color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4{margin:0;font-family:var(--ff-display);font-weight:500;letter-spacing:-.005em;line-height:1.08;color:var(--ink)}p{margin:0}ul{list-style:none;padding:0;margin:0}.container{max-width:1240px;margin:0 auto;padding:0 32px}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--paper) 90%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid transparent;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.site-header[data-scrolled=true]{background:color-mix(in oklab,var(--paper) 96%,transparent);border-bottom-color:var(--hair);box-shadow:0 10px 30px -22px #1b1b1b38}.site-header__util{background:var(--teal-deep);color:var(--paper);font-size:11.5px;max-height:38px;overflow:hidden;transition:max-height .3s ease,opacity .25s ease}.site-header[data-scrolled=true] .site-header__util{max-height:0;opacity:0}.site-header__util-row{display:flex;justify-content:space-between;align-items:center;height:38px;font-family:var(--ff-mono);letter-spacing:.04em}.site-header__util-left,.site-header__util-right{display:flex;gap:12px;align-items:center}.site-header__util-right a{color:var(--paper);transition:color .15s ease}.site-header__util-right a:hover{color:var(--plywood-soft)}.site-header__util .dot{opacity:.5}.site-header__main{padding:14px 0;transition:padding .25s ease}.site-header[data-scrolled=true] .site-header__main{padding:10px 0}.site-header__row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0;color:var(--ink)}.brand__mark{display:inline-flex;align-items:center}.brand__lockup{display:flex;flex-direction:column;line-height:1.05}.brand__name{font-family:var(--ff-display);font-size:22px;font-weight:600;color:var(--ink);letter-spacing:.005em;font-style:italic}.brand__sub{font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-top:4px}.site-nav{justify-self:center}.site-nav ul{display:flex;gap:2px}.site-nav a{display:inline-block;padding:9px 14px;font-size:13.5px;font-weight:500;color:var(--ink-soft);border-radius:999px;transition:color .15s ease,background .15s ease}.site-nav a:hover{color:var(--teal-deep);background:color-mix(in oklab,var(--teal) 10%,transparent)}.site-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;background:var(--teal);color:var(--paper);border-radius:3px;font-size:13px;font-weight:600;letter-spacing:.01em;box-shadow:0 6px 18px -8px color-mix(in oklab,var(--teal) 70%,transparent);transition:transform .15s ease,background .2s ease;white-space:nowrap;border:1px solid var(--teal-deep)}.site-cta:hover{transform:translateY(-1px);background:var(--teal-deep);color:var(--paper)}.site-burger{display:none;flex-direction:column;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer;border-radius:4px}.site-burger:hover{background:color-mix(in oklab,var(--ink) 6%,transparent)}.site-burger span{display:block;width:22px;height:1.6px;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .2s ease}.site-burger[aria-expanded=true] span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.site-burger[aria-expanded=true] span:nth-child(2){opacity:0}.site-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.site-drawer{position:fixed;inset:0;background:var(--paper);z-index:49;padding:110px 32px 40px;display:flex;flex-direction:column;gap:32px;transform:translateY(-100%);transition:transform .3s ease}.site-drawer[aria-hidden=false]{transform:translateY(0)}.site-drawer nav{display:flex;flex-direction:column}.site-drawer nav a{font-family:var(--ff-display);font-size:28px;color:var(--ink);padding:14px 0;border-bottom:1px solid var(--hair);font-style:italic}.site-drawer nav a:hover{color:var(--teal-deep)}.site-drawer__foot{margin-top:auto;display:flex;flex-direction:column;gap:16px;padding-top:24px;border-top:1px solid var(--hair)}.site-drawer__email{font-family:var(--ff-display);font-size:22px;color:var(--ink);text-align:center;font-style:italic}.site-drawer__foot p{font-family:var(--ff-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;font-size:13.5px;font-weight:600;border-radius:3px;transition:all .18s ease;cursor:pointer;border:none;letter-spacing:.02em;text-align:center}.btn--teal{background:var(--teal);color:var(--paper);font-weight:700;border:1px solid var(--teal-deep)}.btn--teal:hover{background:var(--teal-deep);color:var(--paper)}.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--hair-deep)}.btn--ghost:hover{background:var(--paper-soft)}.btn--block{width:100%;padding:16px 20px}.hero{padding:clamp(56px,8vw,96px) 0;position:relative}.hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:center}.hero__copy{display:flex;flex-direction:column}.hero__eyebrow{display:inline-block;align-self:flex-start;padding:8px 18px;background:color-mix(in oklab,var(--teal) 10%,transparent);border:1px solid color-mix(in oklab,var(--teal) 30%,transparent);border-radius:999px;font-family:var(--ff-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;color:var(--teal-deep);margin-bottom:28px;text-transform:uppercase}.hero h1{font-size:clamp(40px,5.6vw,72px);color:var(--ink);line-height:1.05;font-weight:500;letter-spacing:-.015em}.hero h1 em{font-style:italic;color:var(--teal-deep);font-weight:500}.hero__lede{font-size:17.5px;color:var(--ink-soft);margin-top:28px;max-width:580px;line-height:1.65}.hero__badges{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px;padding:22px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.hero__badge{display:flex;flex-direction:column}.hero__badge strong{font-family:var(--ff-display);font-size:22px;color:var(--teal-deep);font-weight:500;font-style:italic;line-height:1.15}.hero__badge span{font-size:11px;color:var(--ink-mute);margin-top:4px;line-height:1.35;font-family:var(--ff-mono);letter-spacing:.04em;text-transform:uppercase}.hero__ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.hero__photo{margin:0;position:relative}.hero__photo img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:6px;box-shadow:var(--shadow-lift);border:1px solid var(--hair)}.hero__photo figcaption{margin-top:10px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;color:var(--ink-mute);text-align:right;text-transform:uppercase}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;gap:32px;flex-wrap:wrap}.eyebrow{display:block;font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;font-weight:600;color:var(--ink-mute);margin-bottom:10px;text-transform:uppercase}.eyebrow.gold{color:var(--teal-deep)}h2{font-size:clamp(28px,3.6vw,44px);color:var(--ink);font-weight:500}h2 em{font-style:italic;color:var(--teal-deep);font-weight:500}.link-arrow{font-size:13.5px;font-weight:600;color:var(--teal-deep);font-family:var(--ff-mono);letter-spacing:.04em}.link-arrow:hover{color:var(--oxblood)}.shelves{background:var(--paper);padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--hair)}.shelves__lede{color:var(--ink-soft);font-size:15.5px;line-height:1.7;max-width:780px;margin:6px 0 32px}.shelves__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.shelf-card{background:#fff;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-soft);display:grid;grid-template-columns:70px 1fr;min-height:240px;border:1px solid var(--hair);transition:transform .2s ease,box-shadow .2s ease}.shelf-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.shelf-card__spine{width:70px;height:100%;min-height:240px;display:block}.shelves__grid .shelf-card:nth-child(1) .shelf-card__spine{color:var(--teal)}.shelves__grid .shelf-card:nth-child(2) .shelf-card__spine{color:var(--plywood)}.shelves__grid .shelf-card:nth-child(3) .shelf-card__spine{color:var(--oxblood)}.shelves__grid .shelf-card:nth-child(4) .shelf-card__spine{color:var(--ink)}.shelf-card__body{padding:22px 22px 20px;display:flex;flex-direction:column;gap:6px}.shelf-card__tag{font-family:var(--ff-mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-deep);font-weight:700}.shelf-card h3{font-family:var(--ff-display);font-size:20px;font-weight:500;color:var(--ink);margin-top:4px;line-height:1.18;font-style:italic}.shelf-card p{color:var(--ink-soft);font-size:13.5px;line-height:1.6;margin-top:6px}.programme{background:color-mix(in oklab,var(--paper-soft) 70%,var(--paper));padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.programme__lede{color:var(--ink-soft);font-size:15.5px;line-height:1.7;max-width:780px;margin:6px 0 32px}.programme__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.programme-card{background:#fff;border-radius:4px;padding:28px 26px;border:1px solid var(--hair);border-top:3px solid var(--teal);box-shadow:var(--shadow-soft)}.programme-card__eyebrow{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-deep);font-weight:700}.programme-card h3{font-family:var(--ff-display);font-size:22px;font-weight:500;color:var(--ink);margin-top:10px;line-height:1.2;font-style:italic}.programme-card p{color:var(--ink-soft);font-size:14px;line-height:1.65;margin-top:10px}.heritage{padding:clamp(56px,8vw,96px) 0;background:linear-gradient(160deg,var(--teal-deep) 0%,#0F2A32 100%);color:var(--paper);position:relative;overflow:hidden}.heritage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse 50% 40% at 100% 0%,color-mix(in oklab,var(--plywood) 16%,transparent) 0%,transparent 60%);pointer-events:none}.heritage__inner{display:grid;grid-template-columns:1.3fr 1fr;gap:56px;align-items:start;position:relative;z-index:1}.heritage h2{color:var(--paper)}.heritage h2 em{font-style:italic;color:var(--plywood-soft)}.heritage .eyebrow.gold{color:var(--plywood-soft)}.heritage__copy p{font-size:16px;color:color-mix(in oklab,var(--paper) 86%,transparent);margin-top:22px;line-height:1.75}.heritage__copy p:first-of-type{margin-top:28px}.heritage__timeline{margin:32px 0 0;display:grid;gap:0;border-top:1px solid color-mix(in oklab,var(--paper) 18%,transparent)}.heritage__timeline div{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid color-mix(in oklab,var(--paper) 14%,transparent);align-items:baseline}.heritage__timeline dt{font-family:var(--ff-display);font-style:italic;font-size:20px;color:var(--plywood-soft);font-weight:500;margin:0}.heritage__timeline dd{margin:0;font-size:14px;color:color-mix(in oklab,var(--paper) 82%,transparent);line-height:1.6}.heritage__plate{position:sticky;top:90px}.heritage__plaque{margin:0;background:color-mix(in oklab,var(--paper) 8%,transparent);border:1px solid color-mix(in oklab,var(--plywood) 40%,transparent);border-radius:4px;overflow:hidden}.heritage__plaque img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block}.heritage__plaque figcaption{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;border-top:1px solid color-mix(in oklab,var(--plywood) 30%,transparent)}.heritage__plaque-tag{font-family:var(--ff-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--plywood-soft);font-weight:700}.heritage__plaque-text{font-family:var(--ff-display);font-style:italic;font-size:15.5px;color:color-mix(in oklab,var(--paper) 88%,transparent);line-height:1.55}.press{background:var(--paper);padding:clamp(56px,8vw,96px) 0}.press__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:12px}.press-card{margin:0;background:#fff;border:1px solid var(--hair);border-left:3px solid var(--teal);border-radius:4px;padding:28px 26px;display:flex;flex-direction:column;gap:16px}.press-card blockquote{margin:0;font-family:var(--ff-display);font-size:20px;font-style:italic;color:var(--ink);line-height:1.4;font-weight:500}.press-card figcaption{display:flex;flex-direction:column;gap:4px;padding-top:14px;border-top:1px solid var(--hair)}.press-card__pub{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep);font-weight:700}.press-card__date{font-family:var(--ff-mono);font-size:10.5px;color:var(--ink-mute);letter-spacing:.06em}.press-card__note{color:var(--ink-soft);font-size:13px;line-height:1.55;margin-top:6px}.visit{background:color-mix(in oklab,var(--paper-soft) 60%,var(--paper));padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}.visit__inner{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:start}.visit p{color:var(--ink-soft);font-size:15px;line-height:1.65}.visit p a{color:var(--teal-deep);border-bottom:1px solid var(--teal-deep)}.visit__list{margin-top:26px;display:grid;gap:4px 16px}.visit__list dt{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep);font-weight:700;margin-top:14px}.visit__list dd{margin:2px 0 0;color:var(--ink-soft);font-size:13.5px;line-height:1.55}.visit__hours{width:100%;margin-top:32px;border-collapse:collapse;background:#fff;border-radius:4px;overflow:hidden;border:1px solid var(--hair)}.visit__hours caption{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep);text-align:left;padding:14px 18px 6px;font-weight:700}.visit__hours th,.visit__hours td{padding:10px 18px;text-align:left;font-size:13.5px;border-top:1px solid var(--hair)}.visit__hours th{font-family:var(--ff-display);font-style:italic;font-weight:500;color:var(--ink)}.visit__hours td{color:var(--ink-soft);font-family:var(--ff-mono);font-size:12.5px}.visit__hours tr:first-child th,.visit__hours tr:first-child td{border-top:none}.visit__hours-note{margin-top:14px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-mute);line-height:1.55}.visit-map{margin:0;border:1px solid var(--hair-deep);border-radius:8px;overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}.visit-map iframe{display:block;width:100%;height:460px;border:0;filter:saturate(.92) contrast(1.02)}.visit-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-mute);background:var(--paper-soft);border-top:1px solid var(--hair)}.visit-map figcaption a{color:var(--teal-deep);font-weight:600;white-space:nowrap}.zine{background:var(--paper);padding:clamp(56px,8vw,96px) 0}.zine__inner{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;align-items:center}.zine__photo{margin:0}.zine__photo img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:6px;box-shadow:var(--shadow-lift);border:1px solid var(--hair)}.zine__copy p{color:var(--ink-soft);font-size:16px;line-height:1.75;margin-top:22px}.zine__quote{margin-top:24px!important;padding:22px 26px;background:var(--paper-soft);border-left:3px solid var(--teal);border-radius:2px;font-family:var(--ff-display);font-style:italic;font-size:19px;color:var(--ink)!important;line-height:1.55}.zine__quote-cite{display:block;margin-top:10px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-style:normal}.faq-section{background:color-mix(in oklab,var(--paper-soft) 50%,var(--paper));padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--hair)}.faq-section__inner{display:grid;grid-template-columns:1fr 1.6fr;gap:56px;align-items:start}.faq-list{display:grid;gap:14px}.faq-list details{background:#fff;border:1px solid var(--hair);border-radius:4px;padding:20px 24px;transition:border-color .2s ease}.faq-list details[open]{border-color:var(--teal)}.faq-list summary{font-family:var(--ff-display);font-size:19px;font-weight:500;cursor:pointer;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:16px;font-style:italic}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--teal);font-weight:700;font-size:22px;line-height:1}.faq-list p{margin-top:14px;color:var(--ink-soft);font-size:14.5px;line-height:1.7}.contact-strip{background:var(--paper);padding:clamp(56px,8vw,96px) 0;border-top:1px solid var(--hair)}.contact-strip__inner{max-width:720px;margin:0 auto}.contact-form{background:#fff;padding:36px 36px 32px;border-radius:6px;box-shadow:var(--shadow-soft);border-top:3px solid var(--teal)}.contact-form h3{font-family:var(--ff-display);font-size:26px;font-weight:500;font-style:italic;color:var(--ink);margin-bottom:22px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.form-row label{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:600}.form-row input,.form-row select,.form-row textarea{font-family:var(--ff-body);font-size:14px;padding:12px 14px;border:1px solid var(--paper-deep);border-radius:3px;background:var(--paper);color:var(--ink);resize:vertical}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid var(--teal);outline-offset:1px}.form-fine{margin-top:12px;font-family:var(--ff-mono);font-size:11px;color:var(--ink-mute);text-align:center}.form-thanks{font-family:var(--ff-display);font-style:italic;font-size:19px;color:var(--ink);text-align:center;padding:24px 0}.footer{background:var(--ink);color:color-mix(in oklab,var(--paper) 70%,transparent);padding:0}.footer .rainbow-band{margin-bottom:56px}.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;padding-bottom:56px}.footer__brandcol{display:flex;flex-direction:column;gap:16px}.footer .brand--footer,.footer .brand--footer .brand__name{color:var(--paper)}.footer .brand--footer .brand__sub{color:var(--plywood-soft)}.footer h4{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;font-weight:700;color:var(--plywood-soft);margin:18px 0 12px;text-transform:uppercase}.footer p{color:color-mix(in oklab,var(--paper) 70%,transparent);font-size:13.5px;line-height:1.6}.footer ul li{font-size:13px;padding:4px 0;color:color-mix(in oklab,var(--paper) 72%,transparent)}.footer ul li a{color:color-mix(in oklab,var(--paper) 72%,transparent);transition:color .15s ease}.footer ul li a:hover{color:var(--plywood-soft)}.footer__base{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-top:1px solid color-mix(in oklab,var(--paper) 12%,transparent);font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.04em}.footer__base a{color:var(--plywood-soft)}.footer__base a:hover{color:var(--paper)}@media(max-width:1180px){.footer__grid{grid-template-columns:1fr 1fr}.footer__brandcol{grid-column:span 2}.shelves__grid{grid-template-columns:repeat(2,1fr)}.programme__grid,.press__grid{grid-template-columns:1fr}}@media(max-width:1024px){.hero__inner{grid-template-columns:1fr;gap:40px}.hero__badges{grid-template-columns:repeat(2,1fr)}.heritage__inner,.visit__inner,.faq-section__inner,.zine__inner{grid-template-columns:1fr;gap:40px}.heritage__plate{position:static}}@media(max-width:960px){.site-header__util{display:none}.site-header__row{grid-template-columns:1fr auto;gap:12px}.site-nav,.site-cta:not(.btn--block){display:none}.site-burger{display:inline-flex}.brand__sub{display:none}.brand__name{font-size:19px}}@media(max-width:640px){.container{padding:0 20px}.hero h1{font-size:36px}.hero__badges{grid-template-columns:1fr 1fr}.shelves__grid,.footer__grid{grid-template-columns:1fr}.footer__brandcol{grid-column:span 1}.footer__base{flex-direction:column;gap:8px;text-align:center}.heritage__timeline div{grid-template-columns:100px 1fr;gap:12px}.heritage__timeline dt{font-size:17px}.visit-map iframe{height:300px}.visit-map figcaption{flex-direction:column;align-items:flex-start;gap:6px}}
