
/* url() in a stylesheet resolves against the stylesheet, not <base>, so these
   are relative to /assets/bao.css - NOT prefixed with "assets/". */
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-var.woff2") format("woff2-variations");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/inter-var.woff2") format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}
/* Metric-matched fallbacks so swapping the webfont in causes no layout shift. */
@font-face{font-family:"Newsreader Fallback";src:local("Times New Roman"),local("Times");size-adjust:104%;ascent-override:96%;descent-override:26%;line-gap-override:0%}
@font-face{font-family:"Inter Fallback";src:local("Helvetica Neue"),local("Arial");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}

:root{
  /* Primary */
  --gallery-black:#11110F;
  --canvas-ivory:#F7F2E9;
  --exhibition-white:#FFFDF8;
  --plaster:#E8DED0;
  --museum-taupe:#B9A997;
  --artist-vermilion:#D5522D;
  /* Supporting */
  --deep-ink-blue:#293C52;
  --studio-sage:#74806A;
  --burnt-umber:#684536;
  /* Text */
  --text-primary:#11110F;
  --text-secondary:#5E5A54;
  --text-on-dark:#F7F2E9;
  /* Line */
  --border-subtle:rgba(17,17,15,0.16);
  --border-hairline:rgba(17,17,15,0.09);
  --border-on-dark:rgba(247,242,233,0.22);

  --serif:"Newsreader","Newsreader Fallback",Georgia,"Times New Roman",serif;
  --sans:"Inter","Inter Fallback",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;

  --gutter:clamp(20px,4.4vw,68px);
  --maxw:1480px;
  --section-y:clamp(56px,7.6vw,132px);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--canvas-ivory);color:var(--text-primary);
  font-family:var(--sans);font-size:16px;line-height:1.6;
  font-feature-settings:"kern" 1;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-0.01em;line-height:1.04;font-optical-sizing:auto}
p{margin:0;color:var(--text-secondary)}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--artist-vermilion);outline-offset:3px;border-radius:2px}
::selection{background:var(--artist-vermilion);color:#fff}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--section-y)}
.section--tight{padding-block:clamp(40px,5vw,84px)}
.section--ivory{background:var(--canvas-ivory)}
.section--plaster{background:var(--plaster)}
.section--dark{background:var(--gallery-black);color:var(--text-on-dark)}
.section--dark p{color:rgba(247,242,233,.72)}
.rule{height:1px;background:var(--border-subtle);border:0;margin:0}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:var(--gallery-black);color:var(--text-on-dark);padding:12px 18px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;transition:top .18s var(--ease)}
.skip-link:focus{top:12px}

/* ---------- Type scale ---------- */
.display{font-family:var(--serif);font-size:clamp(2.6rem,5.6vw,4.9rem);line-height:1;letter-spacing:-0.022em;text-wrap:balance}
.display--sub{display:block;font-size:clamp(1.45rem,2.9vw,2.4rem);line-height:1.1;color:var(--text-secondary);letter-spacing:-0.015em;margin-top:.26em}
h1.page-title{font-size:clamp(2.35rem,5.4vw,4.6rem);line-height:1.02}
h2.section-title{font-size:clamp(1.75rem,3.6vw,3.2rem);max-width:19ch}
h3{font-size:clamp(1.25rem,2vw,1.7rem)}
.eyebrow{display:flex;align-items:center;gap:9px;font-family:var(--sans);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.17em;color:var(--text-secondary);margin:0}
.eyebrow::before{content:"";width:16px;height:1px;background:var(--artist-vermilion);flex:0 0 16px}
.eyebrow--plain::before{display:none}
.lede{font-size:clamp(1.02rem,1.5vw,1.24rem);line-height:1.62;max-width:62ch;color:var(--text-secondary)}
.meta{font-size:.8rem;letter-spacing:.02em;color:var(--text-secondary)}
.label{font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary)}
.price{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-weight:500;color:var(--text-primary)}

.section-head{display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,1fr);gap:clamp(18px,3vw,56px);align-items:start;margin-bottom:clamp(28px,3.4vw,56px)}
.section-head__aside{display:grid;gap:14px;align-content:start}
.section-head__body{display:grid;gap:16px}
@media (max-width:860px){.section-head{grid-template-columns:1fr;gap:14px}}

/* ---------- Buttons & links ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:13px 24px;font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--gallery-black);background:transparent;color:var(--gallery-black);cursor:pointer;transition:background-color .22s var(--ease),color .22s var(--ease),border-color .22s var(--ease);text-align:center}
.btn--primary{background:var(--artist-vermilion);border-color:var(--artist-vermilion);color:#fff}
.btn--primary:hover{background:#b8411f;border-color:#b8411f}
.btn--dark{background:var(--gallery-black);color:var(--text-on-dark)}
.btn--dark:hover{background:var(--artist-vermilion);border-color:var(--artist-vermilion)}
.btn--ghost:hover{background:var(--gallery-black);color:var(--text-on-dark)}
.btn--on-dark{border-color:var(--border-on-dark);color:var(--text-on-dark)}
.btn--on-dark:hover{background:var(--text-on-dark);color:var(--gallery-black);border-color:var(--text-on-dark)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.arrow-link{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:500;color:var(--gallery-black);border-bottom:1px solid var(--border-subtle);padding-bottom:3px;transition:border-color .22s var(--ease),color .22s var(--ease)}
.arrow-link svg{transition:transform .25s var(--ease)}
.arrow-link:hover{color:var(--artist-vermilion);border-color:var(--artist-vermilion)}
.arrow-link:hover svg{transform:translateX(4px)}
.on-dark .arrow-link{color:var(--text-on-dark);border-color:var(--border-on-dark)}

/* ---------- Logo (owner's original bust-emblem raster mark) ---------- */
a>.logo,a>.logo--footer{pointer-events:none}
.site-header a:has(>.logo),.drawer__top a:has(>.logo),.site-footer a:has(>.logo){display:inline-flex;align-items:center;min-height:44px}
.logo{display:inline-flex;align-items:center;position:relative}
.logo img{display:block;height:40px;width:auto}
/* Source PNG has an opaque white background - fine on the ivory header, but
   needs a light card so it doesn't show as a white box on the dark footer. */
.logo--footer{background:var(--canvas-ivory);border-radius:12px;padding:10px 14px}
.logo--footer img{height:88px}

/* ---------- Strapline + header ---------- */
.strapline{background:var(--gallery-black);color:var(--text-on-dark);text-align:center;font-size:.68rem;letter-spacing:.17em;text-transform:uppercase;padding:9px 16px;line-height:1.4}
.site-header{position:sticky;top:0;z-index:60;background:rgba(247,242,233,.93);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-subtle)}
.header-inner{display:flex;align-items:center;gap:clamp(14px,2.4vw,40px);min-height:74px;padding-block:12px}
.site-nav{display:flex;align-items:center;gap:clamp(12px,1.9vw,30px);margin-left:auto}
.site-nav a{font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.13em;color:var(--text-primary);padding:8px 0;position:relative}
.site-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--artist-vermilion);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.site-nav a:hover::after,.site-nav a[aria-current="page"]::after{transform:scaleX(1)}
.site-nav a[aria-current="page"]{color:var(--artist-vermilion)}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:clamp(8px,1.4vw,22px)}
.icon-btn{display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;cursor:pointer;color:var(--gallery-black);border-radius:2px}
.icon-btn:hover{color:var(--artist-vermilion)}
.nav-cta{display:inline-flex;align-items:center;min-height:40px;padding:9px 16px;border:1px solid var(--gallery-black);font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;transition:background-color .22s var(--ease),color .22s var(--ease)}
.nav-cta:hover{background:var(--artist-vermilion);border-color:var(--artist-vermilion);color:#fff}
.menu-btn{display:none}

/* Header search panel */
.search-panel{border-bottom:1px solid var(--border-subtle);background:var(--exhibition-white);overflow:hidden}
.search-panel[hidden]{display:none}
.search-panel__inner{padding-block:clamp(20px,3vw,38px);display:grid;gap:14px}
.search-field{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--gallery-black);padding-bottom:10px}
.search-field input{flex:1;min-width:0;border:0;background:transparent;font-family:var(--serif);font-size:clamp(1.25rem,3vw,2.3rem);padding:6px 0;outline:0}
.search-field input::placeholder{color:var(--museum-taupe)}
.search-field .icon-btn{width:38px;height:38px}
.suggest{display:flex;flex-wrap:wrap;gap:8px}
.suggest a{border:1px solid var(--border-subtle);padding:8px 13px;font-size:.78rem;background:var(--canvas-ivory);transition:border-color .2s var(--ease),color .2s var(--ease)}
.suggest a:hover{border-color:var(--artist-vermilion);color:var(--artist-vermilion)}
.suggest__empty{font-size:.85rem;color:var(--text-secondary)}

/* Mobile drawer */
.drawer{position:fixed;inset:0;z-index:120;background:var(--canvas-ivory);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}
.drawer[hidden]{display:none}
.drawer__top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px var(--gutter);border-bottom:1px solid var(--border-subtle);min-height:74px}
.drawer__nav{display:grid;padding:8px var(--gutter) 28px}
.drawer__nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--serif);font-size:1.75rem;padding:17px 0;border-bottom:1px solid var(--border-hairline)}
.drawer__nav a[aria-current="page"]{color:var(--artist-vermilion)}
.drawer__foot{margin-top:auto;padding:24px var(--gutter) 34px;display:grid;gap:14px;background:var(--plaster)}
body.is-locked{overflow:hidden}

/* ---------- Artwork image frame ---------- */
.frame{position:relative;display:block;background:var(--plaster);overflow:hidden}
.frame img{width:100%;height:100%;object-fit:contain;transition:transform .55s var(--ease)}
.frame--cover img{object-fit:cover}
.frame.is-broken{background:var(--plaster)}
.frame.is-broken img{opacity:0}
.frame.is-broken::after{content:"Image unavailable";position:absolute;inset:0;display:grid;place-items:center;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--museum-taupe)}
@media (hover:hover){a:hover>.frame img,a:hover .frame img{transform:scale(1.028)}}

/* ---------- Artwork card ---------- */
.art-card{display:grid;background:transparent;min-width:0}
.art-card>a{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;width:100%;max-width:100%}
.art-card .frame,.art-card__body{min-width:0;width:100%;max-width:100%}
.art-card__body{display:grid;grid-template-columns:minmax(0,1fr);gap:3px}
.art-card__title{font-family:var(--serif);font-size:1.22rem;line-height:1.2}
.art-card__artist{font-size:.82rem;color:var(--text-secondary);overflow-wrap:anywhere}
.art-card__foot{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:5px;padding-top:9px;border-top:1px solid var(--border-hairline)}
.art-card__view{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--artist-vermilion);opacity:0;transform:translateX(-4px);transition:opacity .25s var(--ease),transform .25s var(--ease)}
.art-card>a:hover .art-card__view,.art-card>a:focus-visible .art-card__view{opacity:1;transform:translateX(0)}
@media (hover:none){.art-card__view{opacity:1;transform:none}}
.art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:clamp(20px,2.4vw,40px)}
.art-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.art-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.art-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.art-grid--4,.art-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.art-card__title{font-size:1.02rem}.art-card__view{display:none}}
@media (max-width:380px){.art-grid{grid-template-columns:1fr}}

/* ---------- Hero ---------- */
.hero{padding-block:clamp(34px,5vw,82px) clamp(42px,5.4vw,92px)}
.hero__grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(30px,5vw,88px);align-items:center}
.hero__copy{display:grid;gap:0;max-width:640px}
.hero__copy .display{max-width:12ch}
.hero__body{margin-top:22px;font-size:clamp(1rem,1.35vw,1.16rem);max-width:48ch}
.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}
.hero__search{margin-top:30px;max-width:520px;position:relative}
.hero__search .search-field input{font-size:clamp(1.02rem,1.7vw,1.32rem)}
.hero__quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.hero__quick a{font-size:.75rem;border:1px solid var(--border-subtle);padding:7px 12px;background:var(--exhibition-white);transition:border-color .2s var(--ease),color .2s var(--ease)}
.hero__quick a:hover{border-color:var(--artist-vermilion);color:var(--artist-vermilion)}
/* Asymmetric, but every piece keeps its true proportions - the artwork is
   never cropped to make a tidy grid. The right-hand stack is nudged down to
   give the composition the editorial offset the moodboard uses. */
.collage{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,.86fr);gap:clamp(12px,1.6vw,26px);align-items:start}
.collage__stack{display:grid;gap:clamp(12px,1.6vw,26px);margin-top:clamp(20px,4vw,62px)}
.collage__item{display:grid;gap:8px;align-content:start}
.collage__cap{font-size:.72rem;color:var(--text-secondary);display:grid;gap:1px;line-height:1.35}
.collage__cap b{font-weight:500;color:var(--text-primary)}
@media (max-width:980px){.hero__grid{grid-template-columns:1fr;gap:34px}.collage{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.collage__stack{margin-top:0}}
@media (max-width:520px){.collage__cap{font-size:.68rem}}
@media (max-width:520px){.collage{gap:12px}.collage__cap{font-size:.68rem}}

/* ---------- Homepage purchase path ---------- */
.home-proof{background:var(--deep-ink-blue);color:var(--text-on-dark);border-block:1px solid rgba(255,255,255,.1)}
.home-proof__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.home-proof__grid>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 13px;align-content:start;padding:clamp(22px,2.8vw,38px);border-right:1px solid rgba(255,255,255,.15)}
.home-proof__grid>div:last-child{border-right:0}
.home-proof__grid span{grid-row:1/3;font-family:var(--serif);font-size:1.4rem;color:#ef6a43}
.home-proof__grid strong{font-family:var(--serif);font-size:clamp(1.12rem,1.5vw,1.4rem);font-weight:400;line-height:1.15}
.home-proof__grid p{font-size:.8rem;line-height:1.5;color:rgba(247,242,233,.72);max-width:34ch}
.steps--editorial .step{background:var(--exhibition-white);padding:clamp(20px,2.5vw,34px);border:1px solid var(--border-subtle)}
.steps--editorial .step__n{font-size:.76rem;font-family:var(--sans);letter-spacing:.16em}
.faq-list{border-top:1px solid var(--border-subtle)}
.faq-list details{border-bottom:1px solid var(--border-subtle);padding:0}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:22px 0;font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.2;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-family:var(--sans);font-size:1.25rem;color:var(--artist-vermilion)}
.faq-list details[open] summary::after{content:"−"}
.faq-list details p{max-width:68ch;padding:0 52px 22px 0}
@media (max-width:760px){
  .home-proof__grid{grid-template-columns:1fr}
  .home-proof__grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding-inline:0}
  .home-proof__grid>div:last-child{border-bottom:0}
  .home-selection .art-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);padding-bottom:10px}
  .home-selection .art-grid::-webkit-scrollbar{display:none}
  .home-selection .art-card{flex:0 0 78vw;width:78vw;max-width:330px;scroll-snap-align:start}
}
@media (max-width:520px){
  .hero{padding-top:30px}
  .hero__actions{display:grid;grid-template-columns:1fr;margin-top:24px}
  .hero__actions .btn{width:100%}
  .hero__search{margin-top:24px}
  .hero__quick{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none}
  .hero__quick a{white-space:nowrap}
  .faq-list details p{padding-right:0}
}

/* ---------- Artist feature ---------- */
.feature{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(26px,4.4vw,76px);align-items:center}
.feature--flip .feature__media{order:2}
.feature__body{display:grid;gap:18px;align-content:start}
.feature__name{font-size:clamp(2rem,4vw,3.4rem)}
.feature__discipline{font-size:.76rem;text-transform:uppercase;letter-spacing:.15em;color:var(--burnt-umber)}
.feature__strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:4px}
.feature__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
@media (max-width:900px){.feature{grid-template-columns:1fr;gap:26px}.feature--flip .feature__media{order:0}}

/* ---------- Artist cards / placeholders ---------- */
.artist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,38px)}
@media (max-width:980px){.artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.artist-grid{grid-template-columns:1fr}}
.artist-card{display:grid;gap:16px;background:var(--exhibition-white);border:1px solid var(--border-hairline);padding:16px}
.artist-card__body{display:grid;gap:9px}
.artist-card__name{font-family:var(--serif);font-size:1.6rem;line-height:1.1}
.artist-card__thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.artist-row{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1fr);gap:clamp(22px,3.4vw,56px);align-items:center;padding-block:clamp(28px,3.6vw,54px);border-top:1px solid var(--border-subtle)}
.artist-row__body{display:grid;gap:14px;align-content:start}
@media (max-width:820px){.artist-row{grid-template-columns:1fr;gap:20px}}

.placeholder{position:relative;display:grid;gap:14px;padding:22px;border:1px solid var(--border-subtle);background:
  repeating-linear-gradient(45deg,rgba(17,17,15,.021) 0 2px,transparent 2px 5px),
  repeating-linear-gradient(-45deg,rgba(17,17,15,.021) 0 2px,transparent 2px 5px),
  var(--plaster);
  min-height:280px;align-content:end}
.placeholder::before{content:"";position:absolute;top:20px;left:22px;width:9px;height:9px;background:var(--artist-vermilion);border-radius:50%}
.placeholder__tag{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--burnt-umber)}
.placeholder__title{font-family:var(--serif);font-size:1.32rem;line-height:1.2;color:var(--text-primary)}
.placeholder__marks{position:absolute;top:0;right:0;width:46%;height:56%;opacity:.5;color:var(--museum-taupe);pointer-events:none}

/* ---------- Taxonomy cards ---------- */
.tax-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,30px)}
@media (max-width:1100px){.tax-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.tax-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:380px){.tax-grid{grid-template-columns:1fr}}
.tax-card{display:grid;gap:11px}
.tax-card__title{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-size:1.2rem}
.tax-card__count{font-size:.74rem;color:var(--text-secondary)}
.swatch{width:13px;height:13px;border-radius:50%;flex:0 0 13px;box-shadow:inset 0 0 0 1px rgba(17,17,15,.18)}

/* ---------- Guided discovery ---------- */
.guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle)}
.guide-card{display:grid;gap:7px;align-content:start;min-height:164px;padding:clamp(18px,2.3vw,30px);background:var(--exhibition-white);transition:background .2s var(--ease),color .2s var(--ease)}
.guide-card:hover{background:var(--gallery-black);color:var(--text-on-dark)}
.guide-card>span{font-size:.64rem;text-transform:uppercase;letter-spacing:.14em;color:var(--artist-vermilion)}
.guide-card>strong{font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.72rem);font-weight:400;line-height:1.08}
.guide-card>small{font-size:.78rem;line-height:1.55;color:var(--text-secondary)}
.guide-card:hover>small{color:rgba(247,242,233,.7)}
@media (max-width:900px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.guide-card{min-height:146px;padding:18px 16px}.guide-card>strong{font-size:1.22rem}}

/* ---------- Trust band ---------- */
.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border-on-dark)}
.trust-grid>div{background:var(--gallery-black);padding:clamp(22px,2.6vw,38px);display:grid;gap:10px;align-content:start}
.trust-grid q{font-family:var(--serif);font-size:clamp(1.12rem,1.7vw,1.44rem);line-height:1.22;quotes:none;color:var(--text-on-dark)}
.trust-grid span{font-size:.66rem;text-transform:uppercase;letter-spacing:.15em;color:var(--museum-taupe)}
@media (max-width:900px){.trust-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.trust-grid{grid-template-columns:1fr}}

/* ---------- Steps ---------- */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,52px)}
.step{display:grid;gap:11px;align-content:start;padding-top:18px;border-top:1px solid var(--border-subtle)}
.step__n{font-family:var(--serif);font-size:1.3rem;color:var(--artist-vermilion)}
@media (max-width:820px){.steps{grid-template-columns:1fr}}

/* ---------- Editorial prose ---------- */
.prose{display:grid;gap:18px;max-width:72ch}
.prose h2{font-size:clamp(1.5rem,2.6vw,2.3rem);margin-top:14px}
.prose p{font-size:1.02rem}
/* .cols-2 paints a 1px rule grid as its background. When it is also the
   .wrap element, that background bleeds into the page gutter, so the
   gutter is reproduced as transparent padding and the paint is confined
   to the content box. */
.cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle)}
.wrap.cols-2{background:transparent;border:0;padding-inline:var(--gutter);gap:0}
.wrap.cols-2>div{border-top:1px solid var(--border-subtle);border-left:1px solid var(--border-subtle)}
.wrap.cols-2>div:nth-child(2n){border-right:1px solid var(--border-subtle)}
.wrap.cols-2>div:nth-last-child(-n+2){border-bottom:1px solid var(--border-subtle)}
@media (max-width:760px){.wrap.cols-2>div{border-right:1px solid var(--border-subtle)}.wrap.cols-2>div:last-child{border-bottom:1px solid var(--border-subtle)}}
.cols-2>div{background:var(--canvas-ivory);padding:clamp(22px,3vw,44px);display:grid;gap:11px;align-content:start}
.cols-2 h3{font-size:1.35rem}
@media (max-width:760px){.cols-2{grid-template-columns:1fr}}

/* ---------- Breadcrumbs ---------- */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:.74rem;color:var(--text-secondary);padding-block:12px 0}
.crumbs a,.crumbs span[aria-current]{display:inline-flex;align-items:center;min-height:24px}
.crumbs a:hover{color:var(--artist-vermilion)}
.crumbs span[aria-hidden]{color:var(--museum-taupe)}

/* ---------- Artwork detail ---------- */
.detail{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:clamp(26px,4vw,72px);align-items:start;padding-block:clamp(24px,3vw,48px) var(--section-y)}
.detail__media{display:grid;gap:12px;position:relative}
.detail__zoom{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:7px;background:rgba(17,17,15,.82);color:var(--text-on-dark);border:0;padding:9px 13px;font-size:.68rem;text-transform:uppercase;letter-spacing:.11em;cursor:pointer}
.detail__zoom:hover{background:var(--artist-vermilion)}
.detail__panel{position:sticky;top:96px;display:grid;gap:18px;align-content:start}
.detail__title{font-size:clamp(1.9rem,3.4vw,2.9rem)}
.spec{display:grid;gap:0;border-top:1px solid var(--border-subtle)}
.spec>div{display:grid;grid-template-columns:minmax(96px,.4fr) minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px solid var(--border-hairline)}
.spec dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;color:var(--text-secondary)}
.spec dd{margin:0;font-size:.92rem}
.spec dd a{border-bottom:1px solid var(--border-subtle)}
.spec dd a:hover{color:var(--artist-vermilion);border-color:var(--artist-vermilion)}
.external-note{font-size:.8rem;color:var(--text-secondary);display:flex;gap:9px;align-items:flex-start}
.external-note svg{flex:0 0 15px;margin-top:3px;color:var(--artist-vermilion)}
.tagrow{display:flex;flex-wrap:wrap;gap:7px}
.tagrow a{font-size:.72rem;border:1px solid var(--border-subtle);padding:6px 11px;transition:border-color .2s var(--ease),color .2s var(--ease)}
.tagrow a:hover{border-color:var(--artist-vermilion);color:var(--artist-vermilion)}
@media (max-width:900px){.detail{grid-template-columns:1fr}.detail__panel{position:static}}

/* Sticky mobile CTA on artwork pages */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;gap:10px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:rgba(247,242,233,.96);backdrop-filter:blur(12px);border-top:1px solid var(--border-subtle)}
.sticky-cta .btn{flex:1;min-height:50px}
@media (max-width:900px){.sticky-cta{display:flex}body.has-sticky-cta{padding-bottom:78px}}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;z-index:150;background:rgba(17,17,15,.94);display:grid;place-items:center;padding:clamp(16px,4vw,56px)}
.lightbox[hidden]{display:none}
.lightbox img{max-width:100%;max-height:86vh;width:auto;height:auto;object-fit:contain}
.lightbox__close{position:absolute;top:14px;right:14px;width:48px;height:48px;display:grid;place-items:center;background:transparent;border:1px solid var(--border-on-dark);color:var(--text-on-dark);cursor:pointer}
.lightbox__close:hover{background:var(--artist-vermilion);border-color:var(--artist-vermilion)}
.lightbox__cap{position:absolute;left:0;right:0;bottom:16px;text-align:center;color:var(--museum-taupe);font-size:.78rem;padding-inline:16px}

/* ---------- Filters / toolbar ---------- */
.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-block:18px;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
.toolbar__count{font-size:.82rem;color:var(--text-secondary);margin-right:auto}
.select{position:relative;display:inline-flex;align-items:center}
.select select{appearance:none;border:1px solid var(--border-subtle);background:var(--exhibition-white);padding:11px 38px 11px 14px;font-size:.78rem;cursor:pointer;min-height:44px}
.select svg{position:absolute;right:13px;pointer-events:none;color:var(--text-secondary)}
.chiprow{display:flex;flex-wrap:wrap;gap:8px;padding-block:14px}
.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-subtle);background:var(--exhibition-white);padding:8px 13px;font-size:.76rem;cursor:pointer;min-height:38px}
.chip[aria-pressed="true"],.chip.is-on{background:var(--artist-vermilion);border-color:var(--artist-vermilion);color:#fff}
.chip--clear{border-style:dashed}
.filters{display:grid;gap:22px}
.filter-group{display:grid;gap:10px}
.filter-group>.label{margin-bottom:2px}
.layout-filters{display:grid;grid-template-columns:minmax(0,248px) minmax(0,1fr);gap:clamp(24px,3vw,52px);align-items:start}
.filter-rail{position:sticky;top:96px;display:grid;gap:22px;padding-right:8px}
.filter-btn{display:none}
@media (max-width:980px){
  .layout-filters{grid-template-columns:1fr}
  .filter-rail{position:fixed;inset:0;top:auto;height:88dvh;z-index:130;background:var(--canvas-ivory);border-top:1px solid var(--border-subtle);padding:0;overflow-y:auto;display:grid;grid-template-rows:auto 1fr auto;gap:0}
  .filter-rail[hidden]{display:none}
  .filter-rail__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px var(--gutter);border-bottom:1px solid var(--border-subtle);position:sticky;top:0;background:var(--canvas-ivory)}
  .filter-rail__body{padding:20px var(--gutter);display:grid;gap:22px}
  .filter-rail__foot{padding:14px var(--gutter) calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);display:flex;gap:10px;background:var(--canvas-ivory)}
  .filter-btn{display:inline-flex}
}
@media (min-width:981px){.filter-rail__head,.filter-rail__foot{display:none}.filter-rail__body{display:grid;gap:22px}}
.scrim{position:fixed;inset:0;z-index:125;background:rgba(17,17,15,.5)}
.scrim[hidden]{display:none}

/* ---------- Search results ---------- */
.results{display:grid;gap:0;margin-top:8px}
.result{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border-hairline)}
.result .frame{aspect-ratio:1}
.result__body{display:grid;gap:2px;min-width:0}
.result__title{font-family:var(--serif);font-size:1.1rem;line-height:1.2}
.result__meta{font-size:.78rem;color:var(--text-secondary)}
.result__type{font-size:.64rem;text-transform:uppercase;letter-spacing:.14em;color:var(--museum-taupe);white-space:nowrap}
.result mark{background:rgba(213,82,45,.16);color:inherit;padding:0 1px}
@media (max-width:520px){.result{grid-template-columns:60px minmax(0,1fr);}.result__type{display:none}}
.empty{display:grid;gap:12px;justify-items:start;padding:clamp(30px,5vw,64px) 0;border-top:1px solid var(--border-subtle)}
.empty h3{font-size:1.5rem}
.is-busy{opacity:.5;transition:opacity .15s linear}

/* ---------- Forms ---------- */
.form{display:grid;gap:16px}
.form__row{display:grid;gap:16px;grid-template-columns:1fr 1fr}
@media (max-width:620px){.form__row{grid-template-columns:1fr}}
.field{display:grid;gap:6px}
.field>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary)}
.field input,.field textarea,.field select{width:100%;border:1px solid var(--border-subtle);background:var(--exhibition-white);padding:13px 14px;min-height:48px;outline-offset:2px}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gallery-black)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#B3261E}
.field__err{font-size:.76rem;color:#B3261E;min-height:0}
.field__hint{font-size:.76rem;color:var(--text-secondary)}
.consent{display:flex;gap:11px;align-items:flex-start;font-size:.84rem;color:var(--text-secondary)}
.consent input{width:24px;height:24px;flex:0 0 24px;margin-top:0;accent-color:var(--artist-vermilion)}
.consent a{border-bottom:1px solid var(--border-subtle)}
.form__errors{display:none;border:1px solid #B3261E;background:rgba(179,38,30,.06);padding:14px;font-size:.86rem;color:#8C1D18}
.form__errors.is-on{display:grid;gap:6px}
.form__errors a{text-decoration:underline}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.newsletter{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,72px);align-items:start}
@media (max-width:860px){.newsletter{grid-template-columns:1fr;gap:24px}}

/* ---------- Footer ---------- */
.site-footer{background:var(--gallery-black);color:var(--text-on-dark)}
.footer-top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:clamp(28px,4vw,72px);padding-block:clamp(44px,5vw,82px)}
.footer-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,40px)}
.footer-cols h4{font-size:.68rem;font-family:var(--sans);font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--museum-taupe);margin-bottom:14px}
.footer-cols a{display:block;padding:6px 0;font-size:.88rem;color:rgba(247,242,233,.82)}
.footer-cols a:hover{color:var(--artist-vermilion)}
.footer-mission{margin-top:18px;color:rgba(247,242,233,.66);max-width:40ch;font-size:.92rem}
.footer-bottom{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;padding-block:20px;border-top:1px solid var(--border-on-dark);font-size:.76rem;color:rgba(247,242,233,.6)}
@media (max-width:860px){.footer-top{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.footer-cols{grid-template-columns:1fr}}

/* ---------- 2026-11-10 forest gallery moodboard ---------- */
:root{
  --gallery-black:#0F2A26;--canvas-ivory:#F7F3EC;--exhibition-white:#FFFDF8;
  --plaster:#E8D8C5;--museum-taupe:#A9957C;--artist-vermilion:#C25630;
  --deep-ink-blue:#0F2A26;--studio-sage:#829A88;--burnt-umber:#6C432B;
  --text-primary:#151712;--text-secondary:#5F5A50;--text-on-dark:#FFFDF8;
  --border-subtle:rgba(44,38,29,.18);--border-hairline:rgba(44,38,29,.10);
  --gutter:clamp(18px,3.2vw,44px);--maxw:1220px;--section-y:clamp(46px,5.2vw,78px)
}
body{background:var(--canvas-ivory)}
.wrap{width:100%}
h1,h2,h3,h4{letter-spacing:-.025em}
.section-title,.page-title{color:var(--gallery-black)}
.btn{min-height:44px;padding:11px 22px;border-radius:4px;font-size:.76rem;font-weight:750;letter-spacing:0;text-transform:none}
.btn--primary,.btn--copper{background:var(--artist-vermilion);border-color:var(--artist-vermilion);color:#fff}
.btn--dark{background:var(--gallery-black);border-color:var(--gallery-black)}
.btn--cream{background:var(--exhibition-white);border-color:var(--exhibition-white);color:var(--gallery-black)}
.btn--outline-light{border-color:rgba(255,255,255,.8);color:#fff}
.btn--outline-light:hover{background:#fff;color:var(--gallery-black)}
.eyebrow{font-weight:800}.eyebrow--gold{color:#E0B83E}.eyebrow--gold::before{display:none}

/* Wordmark supplied by the owner in the new moodboard. */
.logo,.logo--footer{display:grid!important;gap:1px;background:transparent!important;padding:0!important;border-radius:0!important;color:var(--gallery-black)}
.logo__line{display:flex;align-items:center;white-space:nowrap}
.logo strong{display:flex;align-items:baseline;gap:.2em;padding-bottom:5px;border-bottom:2px solid #D4A337;font-family:var(--serif);font-size:1.35rem;line-height:1;font-weight:650;letter-spacing:-.045em}
.logo__online{color:var(--artist-vermilion)}
.logo__domain{font-size:.62em;font-style:italic;font-weight:500;color:inherit}
.logo small{font-size:.5rem;line-height:1.25;letter-spacing:.09em;text-transform:uppercase;color:var(--text-secondary)}
.logo--light{color:#fff}.logo--light small{color:rgba(255,255,255,.7)}

.site-header{background:rgba(255,253,248,.96);border-bottom:1px solid var(--border-hairline);box-shadow:0 4px 18px rgba(39,29,19,.04)}
.header-inner{min-height:72px;padding-block:10px;gap:22px}
.site-nav{gap:clamp(18px,2.6vw,36px)}
.site-nav a{font-size:.74rem;text-transform:none;letter-spacing:0;font-weight:650}
.nav-cta{min-height:38px;border:0;border-radius:4px;background:var(--artist-vermilion);color:#fff;font-size:.72rem;font-weight:700;text-transform:none;letter-spacing:0;padding:9px 16px}
.nav-cta:hover{background:#a94122}.header-actions{gap:4px}.icon-btn{width:40px;height:40px}.heart-btn{display:grid}

.bao-hero{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);max-width:1220px;min-height:488px;margin:0 auto;background:var(--gallery-black);overflow:hidden}
.bao-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,5vw,72px);color:#fff}
.bao-hero__copy h1{margin:8px 0 18px;font-size:clamp(3rem,5.2vw,5rem);line-height:.9;color:#fff}
.bao-hero__copy>p:not(.eyebrow){max-width:43ch;color:rgba(255,255,255,.85);font-size:.98rem;line-height:1.55}
.bao-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.bao-hero__art{position:relative;display:block;min-height:488px;overflow:hidden;background:var(--gallery-black)}
.bao-hero__art .frame{display:grid;place-items:center;height:100%;aspect-ratio:auto!important;background:var(--gallery-black)}.bao-hero__art img{object-fit:contain}
.bao-hero__art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,42,38,.34),transparent 28%)}
.bao-hero__credit{position:absolute;right:14px;bottom:12px;z-index:2;padding:6px 9px;background:rgba(15,42,38,.78);color:#fff;font-size:.64rem;letter-spacing:.04em}

.bao-benefits{border-bottom:1px solid var(--border-hairline);background:#fff}
.bao-benefits__grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:18px}
.bao-benefits__grid>div{display:flex;align-items:center;justify-content:center;gap:13px;padding:7px 20px;border-right:1px solid var(--border-subtle);color:#6C432B}
.bao-benefits__grid>div:last-child{border-right:0}.bao-benefits__grid svg{flex:0 0 25px}
.bao-benefits__grid span{display:grid}.bao-benefits__grid strong{font-size:.75rem;color:var(--text-primary)}.bao-benefits__grid small{font-size:.62rem;color:var(--text-secondary)}

.bao-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.bao-heading h2{font-size:clamp(2rem,3.3vw,3rem);color:var(--gallery-black)}
.bao-heading p{margin-top:5px;font-size:.86rem}.bao-heading>a{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:700;white-space:nowrap}
.bao-heading--center{justify-content:center;text-align:center}.bao-heading--center h2{margin-inline:auto}
.bao-style-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.bao-style-grid .tax-card{gap:0;background:#fff;border:1px solid var(--border-hairline);border-radius:5px;overflow:hidden;box-shadow:0 8px 20px rgba(54,40,24,.05)}
.bao-style-grid .tax-card .frame{aspect-ratio:4/3!important}.bao-style-grid .tax-card__title{padding:11px 12px 3px;font-size:.88rem;font-family:var(--sans);font-weight:750}.bao-style-grid .tax-card__title::after{content:"→";margin-left:auto}.bao-style-grid .tax-card__count{padding:0 12px 11px;font-size:.62rem}
.bao-featured{padding-top:8px}
.bao-featured .artist-grid{grid-template-columns:repeat(3,1fr)}
.artist-card{gap:0;padding:0;border:1px solid var(--border-hairline);border-radius:5px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(54,40,24,.06)}
.artist-card__image{position:relative;display:block}.artist-card__image .frame{aspect-ratio:16/10!important}.artist-card__image img{object-fit:cover}
.artist-card__heart{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:rgba(15,42,38,.76);color:#fff}.artist-card__heart svg{width:16px;height:16px}
.artist-card__badge{position:absolute;left:10px;top:10px;padding:5px 9px;border-radius:3px;background:#E8B84B;color:#17211c;font-size:.61rem;font-weight:800}
.artist-card__body{gap:4px;padding:13px 15px 15px}.artist-card__name{font-size:1.13rem}.artist-card .feature__discipline{font-size:.67rem;letter-spacing:0;text-transform:none;color:var(--text-secondary)}
.artist-card__visit{display:inline-flex;align-items:center;gap:7px;width:max-content;margin-top:7px;padding-bottom:2px;border-bottom:1px solid #C25630;color:#A83F20;font-size:.68rem;font-weight:750}
.artist-card__visit svg{width:12px}

.bao-artist-cta{position:relative;background:linear-gradient(90deg,rgba(15,42,38,.98),rgba(15,42,38,.91)),var(--artist-banner) center/cover;color:#fff;padding-block:clamp(42px,5vw,68px);overflow:hidden}
.bao-artist-cta::after{content:"";position:absolute;right:-30px;top:-40px;width:380px;height:130%;background:var(--artist-banner) center/cover;opacity:.18;transform:rotate(-4deg)}
.bao-artist-cta__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center}
.bao-artist-cta h2{margin:8px 0 12px;font-size:clamp(2.2rem,4vw,3.6rem);color:#fff}.bao-artist-cta p:not(.eyebrow){max-width:58ch;color:rgba(255,255,255,.82)}.bao-artist-cta .btn{margin-top:22px}
.bao-artist-cta ul{display:grid;gap:12px}.bao-artist-cta li{font-size:.83rem}.bao-artist-cta li::before{content:"✓";margin-right:11px;color:#E6B53C;font-weight:900}

.bao-how{background:#fff}.bao-how__grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;margin:0 auto;text-align:center}
.bao-how__grid>div{display:grid;justify-items:center;gap:5px;padding:5px 34px;border-right:1px solid var(--border-subtle)}.bao-how__grid>div:last-child{border-right:0}.bao-how__grid svg{width:34px;height:34px;margin-bottom:8px;color:#6C432B}.bao-how__grid strong{font-family:var(--serif);font-size:1.15rem}.bao-how__grid strong span{font-family:var(--sans);font-size:.78rem}.bao-how__grid p{font-size:.72rem}
.bao-budget-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:28px}.bao-budget-links span{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.bao-budget-links a{padding:8px 12px;border:1px solid var(--border-subtle);border-radius:999px;background:#fff;font-size:.72rem;font-weight:700}.bao-budget-links a:hover{border-color:var(--artist-vermilion);color:var(--artist-vermilion)}
.bao-collector{padding-top:0}.bao-collector__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,6vw,84px);align-items:start}.bao-collector .section-title{max-width:14ch;margin:9px 0 18px}.bao-collector__grid>div>p:last-child{margin-top:18px;max-width:64ch}.bao-collector__grid a{text-decoration:underline;text-decoration-color:var(--artist-vermilion);text-underline-offset:3px}.bao-collector__points{display:grid;border-top:1px solid var(--border-subtle)}.bao-collector__points>div{padding:18px 0;border-bottom:1px solid var(--border-subtle)}.bao-collector__points strong{font-family:var(--serif);font-size:1.12rem}.bao-collector__points p{margin-top:4px;font-size:.78rem}
.bao-newsletter{padding-block:18px;background:var(--gallery-black);color:#fff}.bao-newsletter__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;align-items:center}.bao-newsletter__grid>div{display:flex;align-items:center;gap:14px}.bao-newsletter__grid>div>span{font-size:1.75rem}.bao-newsletter p{display:grid}.bao-newsletter strong{font-size:.82rem}.bao-newsletter small{font-size:.66rem;color:rgba(255,255,255,.7)}
.bao-newsletter .form{grid-template-columns:1fr auto;gap:8px;align-items:end}.bao-newsletter .form__errors,.bao-newsletter .consent,.bao-newsletter [data-kougouleu-form-status]{grid-column:1/-1}.bao-newsletter .field>span{display:none}.bao-newsletter .field input{min-height:40px;background:#fff;border:0}.bao-newsletter .consent{font-size:.62rem;color:rgba(255,255,255,.7)}.bao-newsletter .consent input{width:17px;height:17px;flex-basis:17px}.bao-newsletter .btn{min-height:40px;background:var(--artist-vermilion);border-color:var(--artist-vermilion)}

.site-footer{background:#08201c}.footer-top{padding-block:34px;grid-template-columns:.8fr 1.6fr}.footer-mission{font-size:.75rem}.footer-cols a{font-size:.75rem;padding:3px 0}.footer-cols h4{color:#E6B53C}.footer-bottom{font-size:.63rem}

/* Inner pages use the same card, form and colour language. */
.crumbs{padding-top:20px}.section--plaster{background:#EFE3D3}.section--dark{background:var(--gallery-black)}
.artist-grid{gap:18px}.page-title{color:var(--gallery-black)}
.feature{border-radius:8px}.feature__body .btn--primary{background:var(--artist-vermilion)}
.form{padding:clamp(20px,3vw,34px);background:#fff;border:1px solid var(--border-hairline);border-radius:8px}.bao-newsletter .form{padding:0;background:transparent;border:0}
.field input,.field textarea,.field select{border-radius:4px}.chip[aria-pressed="true"],.chip.is-on{background:var(--gallery-black);border-color:var(--gallery-black)}
.empty[hidden]{display:none!important}
.apply-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:28px;border:1px solid var(--border-subtle);border-radius:7px;overflow:hidden;background:#fff}.apply-steps span{display:flex;align-items:center;gap:9px;padding:13px 16px;border-right:1px solid var(--border-hairline);font-size:.72rem;font-weight:700;color:var(--text-secondary)}.apply-steps span:last-child{border-right:0}.apply-steps b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#E8D8C5;color:var(--gallery-black)}.apply-steps .is-active{color:var(--gallery-black)}.apply-steps .is-active b{background:var(--gallery-black);color:#fff}

@media(max-width:980px){
  .bao-style-grid{grid-template-columns:repeat(3,1fr)}.bao-benefits__grid{grid-template-columns:1fr 1fr}.bao-benefits__grid>div:nth-child(2){border-right:0}.bao-benefits__grid>div:nth-child(-n+2){border-bottom:1px solid var(--border-subtle)}
}
@media(max-width:760px){
  :root{--gutter:16px}.heart-btn{display:none}.header-inner{min-height:64px}.logo strong{font-size:1rem}.logo small{font-size:.4rem}.bao-hero{grid-template-columns:1fr;min-height:0}.bao-hero__copy{padding:34px 20px 28px}.bao-hero__copy h1{font-size:3.1rem}.bao-hero__copy>p:not(.eyebrow){font-size:.86rem}.bao-hero__actions{display:grid}.bao-hero__art{min-height:0;order:-1;aspect-ratio:4/3}.bao-hero__art::after{background:linear-gradient(0deg,rgba(15,42,38,.3),transparent 50%)}
  .bao-benefits__grid{grid-template-columns:1fr}.bao-benefits__grid>div{justify-content:flex-start;border-right:0;border-bottom:1px solid var(--border-subtle);padding:12px 6px}.bao-benefits__grid>div:last-child{border-bottom:0}
  .bao-hero{position:static;display:grid;min-height:0}.bao-hero__art{position:relative;inset:auto;min-height:0;order:-1}.bao-hero__copy{position:relative;z-index:2;min-height:0;justify-content:center;padding:34px 20px 28px;background:var(--gallery-black)}.bao-hero__art::after{display:none}
  .bao-heading{align-items:flex-start}.bao-heading h2{font-size:2rem}.bao-heading p{font-size:.78rem}.bao-heading>a{margin-top:8px}.bao-style-grid{grid-template-columns:1fr 1fr;gap:9px}.bao-featured .artist-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-16px;padding-inline:16px;scrollbar-width:none}.bao-featured .artist-card{flex:0 0 82%;scroll-snap-align:start}
  .bao-artist-cta__grid{grid-template-columns:1fr;gap:28px}.bao-artist-cta::after{opacity:.1}.bao-how__grid{grid-template-columns:1fr}.bao-how__grid>div{border-right:0;border-bottom:1px solid var(--border-subtle);padding:22px}.bao-how__grid>div:last-child{border-bottom:0}.bao-collector__grid{grid-template-columns:1fr}.bao-budget-links{justify-content:flex-start}
  .bao-newsletter__grid{grid-template-columns:1fr;gap:15px}.bao-newsletter .form{grid-template-columns:1fr}.bao-newsletter .btn{width:100%}.footer-top{grid-template-columns:1fr}.artist-grid{grid-template-columns:1fr}.apply-steps{grid-template-columns:1fr 1fr}.apply-steps span:nth-child(2){border-right:0}.apply-steps span:nth-child(-n+2){border-bottom:1px solid var(--border-hairline)}
}
@media(max-width:390px){.bao-style-grid{grid-template-columns:1fr 1fr}.bao-style-grid .tax-card__title{padding-inline:9px;font-size:.78rem}.bao-style-grid .tax-card__count{padding-inline:9px}.bao-hero__copy h1{font-size:2.7rem}}

/* Content always paints immediately. Motion must never be a prerequisite for visibility. */
.reveal{opacity:1;transform:none}

/* ---------- Responsive header ---------- */
@media (max-width:1080px){
  .site-nav{display:none}
  .nav-cta{display:none}
  .menu-btn{display:grid}
  .header-inner{min-height:66px}
}
@media (max-width:360px){
  :root{--gutter:16px}
  .logo{font-size:1.02rem}
  .logo__brush{width:36px;height:9px;bottom:-7px}
  .strapline{font-size:.6rem;letter-spacing:.12em}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .frame img{transition:none}
}
@media print{.site-header,.site-footer,.strapline,.sticky-cta,.drawer{display:none!important}}
