@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=DM+Sans:wght@300;400;500&display=swap');

:root {
  --chalk: #F3F0E9;
  --paper: #F8F6F1;
  --ink: #1B1B19;
  --mineral: #6E6B65;
  --stone: #D6D1C8;
  --clay: #8A6758;
  --max: 1440px;
  --gutter: clamp(22px, 4vw, 64px);
  --section: clamp(88px, 11vw, 176px);
  --display: "Cormorant Garamond", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--chalk);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.65;
  font-weight: 300;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
::selection { background: var(--stone); }

.skip-link {
  position: fixed; left: 16px; top: -60px; z-index: 1000;
  background: var(--ink); color: white; padding: 10px 14px;
}
.skip-link:focus { top: 16px; }

.site-shell { min-height: 100vh; display: flex; flex-direction: column; }
.site-header {
  position: relative;
  z-index: 50;
  padding: 26px var(--gutter) 0;
}
.header-inner, .page-width {
  width: min(100%, var(--max));
  margin-inline: auto;
}
.header-inner {
  min-height: 56px;
  display: flex; align-items: center; justify-content: space-between;
  gap: 32px;
}
.brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  flex: 0 0 auto;
}
.brand-mark img { width: 100%; height: 100%; display: block; }
.nav-list {
  display: flex; gap: clamp(22px, 2.6vw, 42px);
  list-style: none; margin: 0; padding: 0;
  font-size: 12px; line-height: 1;
  text-transform: uppercase; letter-spacing: .16em;
}
.nav-list a { position: relative; color: var(--mineral); }
.nav-list a:hover, .nav-list a[aria-current="page"] { color: var(--ink); }
.nav-list a[aria-current="page"]::after {
  content: ""; position: absolute; left: 0; right: .16em; bottom: -9px;
  height: 1px; background: var(--ink);
}
.menu-toggle { display: none; border: 0; background: transparent; color: var(--ink); padding: 0; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; }

main { flex: 1; }
.section { padding: var(--section) var(--gutter) 0; }
.section.rule-top .page-width { border-top: 1px solid var(--stone); padding-top: clamp(34px, 4vw, 58px); }
.section-kicker, .eyebrow {
  font-size: 11px; font-weight: 500; letter-spacing: .19em; text-transform: uppercase;
  color: var(--mineral);
}
.display {
  font-family: var(--display);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.02em;
  margin: 0;
}
.display-xl { font-size: clamp(58px, 6.2vw, 94px); }
.display-lg { font-size: clamp(48px, 5.2vw, 78px); }
.display-md { font-size: clamp(38px, 4.3vw, 64px); }
.copy-large { font-family: var(--display); font-size: clamp(28px, 2.8vw, 42px); line-height: 1.16; }
.copy-narrow { max-width: 650px; color: var(--mineral); }
.micro { font-size: 12px; color: var(--mineral); line-height: 1.55; }
.text-link { display: inline-block; margin-top: 26px; font-size: 12px; letter-spacing: .13em; text-transform: uppercase; border-bottom: 1px solid var(--ink); padding-bottom: 4px; }

.hero { padding: clamp(64px, 9vw, 128px) var(--gutter) 0; }
.hero-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(20px, 2.2vw, 36px);
  align-items: end;
}
.hero-copy { grid-column: 1 / span 4; padding-bottom: clamp(14px, 2vw, 32px); }
.hero-copy p { max-width: 420px; margin: 32px 0 0; color: var(--mineral); }
.hero-media { grid-column: 6 / -1; }
.hero-note { margin-top: 16px; display: flex; justify-content: space-between; gap: 24px; }

.image-placeholder {
  background: var(--paper);
  min-height: 280px;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(27,27,25,.06);
}
.image-placeholder::before {
  content: "";
  position: absolute; inset: 10%;
  border: 1px solid var(--stone);
}
.image-placeholder::after {
  content: attr(data-label);
  position: absolute; left: 16px; bottom: 14px;
  font-size: 10px; line-height: 1; letter-spacing: .18em; text-transform: uppercase;
  color: var(--mineral); background: var(--paper); padding-right: 8px;
}
.image-placeholder.hero-image { aspect-ratio: 4 / 5; min-height: auto; }
.image-placeholder.landscape { aspect-ratio: 4 / 3; min-height: auto; }
.image-placeholder.portrait { aspect-ratio: 3 / 4; min-height: auto; }
.image-placeholder.square { aspect-ratio: 1; min-height: auto; }
.image-placeholder.wide { aspect-ratio: 16 / 9; min-height: auto; }

.section-heading-row { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: start; }
.section-heading-row .section-kicker { grid-column: 1 / span 2; padding-top: 10px; }
.section-heading-row .display { grid-column: 4 / span 7; }
.section-heading-row .text-link { grid-column: 11 / -1; justify-self: end; margin-top: 10px; }

.work-grid {
  margin-top: clamp(48px, 6vw, 92px);
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(44px, 6vw, 94px) clamp(18px, 2.2vw, 34px);
  align-items: start;
}
.work-card:nth-child(1) { grid-column: 1 / span 7; }
.work-card:nth-child(2) { grid-column: 9 / span 4; margin-top: 12vw; }
.work-card:nth-child(3) { grid-column: 2 / span 4; }
.work-card:nth-child(4) { grid-column: 7 / span 6; margin-top: 5vw; }
.work-card:nth-child(5) { grid-column: 1 / span 5; }
.work-card:nth-child(6) { grid-column: 8 / span 4; margin-top: 9vw; }
.work-card-meta { margin-top: 14px; display: flex; justify-content: space-between; gap: 16px; align-items: baseline; }
.work-title { font-family: var(--display); font-size: 25px; line-height: 1.1; }
.work-details { font-size: 11px; color: var(--mineral); text-transform: uppercase; letter-spacing: .1em; }

.study-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: start; }
.study-copy { grid-column: 1 / span 4; }
.study-copy .display { margin: 18px 0 30px; }
.study-copy p { color: var(--mineral); max-width: 410px; }
.study-media { grid-column: 6 / -1; }

.process-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: start; margin-top: 54px; }
.process-item:nth-child(1) { grid-column: 1 / span 4; }
.process-item:nth-child(2) { grid-column: 5 / span 3; margin-top: 8vw; }
.process-item:nth-child(3) { grid-column: 9 / span 4; margin-top: 3vw; }
.process-item figcaption { margin-top: 12px; font-size: 12px; color: var(--mineral); }

.about-preview { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: center; }
.about-preview-media { grid-column: 1 / span 6; }
.about-preview-copy { grid-column: 8 / span 4; }
.about-preview-copy .display { margin-bottom: 28px; }
.about-preview-copy p { color: var(--mineral); }

.page-intro { padding: clamp(78px, 10vw, 150px) var(--gutter) 0; }
.page-intro-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; }
.page-intro .display { grid-column: 1 / span 7; }
.page-intro .intro-copy { grid-column: 9 / -1; align-self: end; color: var(--mineral); margin: 0; }

.catalogue-grid { display: grid; grid-template-columns: repeat(12,1fr); gap: 72px 28px; }
.catalogue-card { grid-column: span 6; }
.catalogue-card:nth-child(4n+2), .catalogue-card:nth-child(4n+3) { grid-column: span 5; }
.catalogue-card:nth-child(4n+2) { margin-left: 8.333%; }
.catalogue-card .image-placeholder { aspect-ratio: 4/5; }
.catalogue-card:nth-child(even) .image-placeholder { aspect-ratio: 5/4; }

.work-hero { padding: clamp(72px, 9vw, 130px) var(--gutter) 0; }
.work-hero-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: start; }
.work-hero-media { grid-column: 1 / span 8; }
.work-info { grid-column: 10 / -1; position: sticky; top: 28px; }
.work-info .display { margin: 16px 0 26px; }
.info-list { margin: 28px 0 0; border-top: 1px solid var(--stone); }
.info-row { display: grid; grid-template-columns: 42% 58%; padding: 11px 0; border-bottom: 1px solid var(--stone); font-size: 12px; }
.info-row dt { color: var(--mineral); }
.info-row dd { margin: 0; }
.work-description { margin-top: 28px; color: var(--mineral); }
.work-sequence { display: grid; grid-template-columns: repeat(12, 1fr); gap: 64px 28px; }
.work-sequence .seq-1 { grid-column: 3 / span 8; }
.work-sequence .seq-2 { grid-column: 1 / span 5; }
.work-sequence .seq-3 { grid-column: 7 / span 6; margin-top: 9vw; }
.work-sequence .seq-4 { grid-column: 3 / span 7; }

.editorial-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; align-items: start; }
.editorial-main { grid-column: 2 / span 6; }
.editorial-side { grid-column: 9 / span 3; }
.editorial-side p, .editorial-main p { color: var(--mineral); }
.editorial-main .display-md { margin-bottom: 34px; }

.journal-list { border-top: 1px solid var(--stone); }
.journal-row { display: grid; grid-template-columns: 2fr 7fr 3fr; gap: 28px; padding: 30px 0; border-bottom: 1px solid var(--stone); align-items: baseline; }
.journal-row .journal-title { font-family: var(--display); font-size: 28px; }

.contact-grid { display: grid; grid-template-columns: repeat(12,1fr); gap: 28px; }
.contact-primary { grid-column: 1 / span 7; }
.contact-secondary { grid-column: 9 / -1; }
.contact-line { border-bottom: 1px solid var(--ink); display: inline-block; padding-bottom: 4px; }

.site-footer { padding: var(--section) var(--gutter) 28px; }
.footer-inner { border-top: 1px solid var(--stone); padding-top: 26px; display: grid; grid-template-columns: repeat(12, 1fr); gap: 28px; font-size: 11px; color: var(--mineral); text-transform: uppercase; letter-spacing: .12em; }
.footer-brand { grid-column: 1 / span 4; color: var(--ink); }
.footer-logo { display: inline-block; width: min(250px, 100%); }
.footer-logo img { display: block; width: 100%; height: auto; }
.about-brand-section { padding-top: clamp(58px, 7vw, 96px); }
.about-brand-lockup { width: min(380px, 78vw); margin-left: auto; margin-right: auto; }
.about-brand-lockup img { width: 100%; height: auto; display: block; }
.footer-links { grid-column: 6 / span 3; display: flex; flex-direction: column; gap: 4px; }
.footer-copy { grid-column: 10 / -1; text-align: right; }
.footer-credential { display: block; margin-bottom: 8px; color: inherit; text-transform: none; letter-spacing: .04em; }
.footer-credential a { color: inherit; text-decoration: none; }
.footer-credential a:hover, .footer-credential a:focus-visible { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }


@media (max-width: 900px) {
  :root { --gutter: 22px; --section: 96px; }
  .site-header { padding-top: 22px; }
  .menu-toggle { display: block; position: relative; z-index: 72; }
  .brand-mark { position: relative; z-index: 72; }
  .nav-list {
    display: none; position: fixed; inset: 0; width: 100%; height: 100dvh;
    background: var(--chalk); padding: 116px var(--gutter) 44px;
    flex-direction: column; align-items: flex-start; gap: 22px; font-size: 15px; line-height: 1.35;
    overflow-y: auto; z-index: 70;
  }
  .nav-list.is-open { display: flex; }
  body.nav-open { overflow: hidden; }
  .nav-list a[aria-current="page"]::after { display: none; }
  .brand-mark { width: 46px; height: 46px; }

  .hero { padding-top: 82px; }
  .hero-grid { gap: 50px; }
  .hero-copy { grid-column: 1 / -1; order: 1; }
  .hero-media { grid-column: 1 / -1; order: 2; }
  .hero-copy p { max-width: 520px; }
  .image-placeholder.hero-image { aspect-ratio: 4 / 5; }

  .section-heading-row .section-kicker { grid-column: 1 / -1; }
  .section-heading-row .display { grid-column: 1 / span 10; }
  .section-heading-row .text-link { grid-column: 1 / -1; justify-self: start; margin-top: 0; }

  .work-grid { gap: 62px; display: block; }
  .work-card, .work-card:nth-child(n) { margin: 0 0 62px; }
  .work-card:nth-child(even) { margin-left: 12vw; }
  .work-card:nth-child(odd) { margin-right: 12vw; }

  .study-copy { grid-column: 1 / span 10; }
  .study-media { grid-column: 2 / -1; margin-top: 36px; }

  .process-item:nth-child(1) { grid-column: 1 / span 7; }
  .process-item:nth-child(2) { grid-column: 7 / span 6; margin-top: 110px; }
  .process-item:nth-child(3) { grid-column: 2 / span 8; margin-top: 20px; }

  .about-preview-media { grid-column: 1 / span 7; }
  .about-preview-copy { grid-column: 8 / -1; }

  .page-intro .display { grid-column: 1 / span 10; }
  .page-intro .intro-copy { grid-column: 7 / -1; margin-top: 42px; }
  .catalogue-card, .catalogue-card:nth-child(n) { grid-column: span 6; margin-left: 0; }

  .work-hero-media { grid-column: 1 / span 7; }
  .work-info { grid-column: 8 / -1; }
  .work-sequence .seq-1 { grid-column: 2 / span 10; }
  .work-sequence .seq-2 { grid-column: 1 / span 6; }
  .work-sequence .seq-3 { grid-column: 7 / span 6; }
  .work-sequence .seq-4 { grid-column: 2 / span 9; }

  .editorial-main { grid-column: 1 / span 7; }
  .editorial-side { grid-column: 9 / -1; }
  .contact-primary { grid-column: 1 / span 8; }
}

@media (max-width: 640px) {
  body { font-size: 16px; }
  :root { --section: 82px; }
  .display-xl { font-size: clamp(50px, 15vw, 72px); }
  .display-lg { font-size: clamp(44px, 13vw, 62px); }
  .display-md { font-size: clamp(38px, 11vw, 52px); }
  .hero { padding-top: 62px; }
  .hero-note { flex-direction: column; gap: 3px; }
  .section-heading-row .display { grid-column: 1 / -1; }
  .work-card:nth-child(n) { margin-left: 0; margin-right: 0; }
  .work-card:nth-child(even) .image-placeholder { margin-left: 10vw; }
  .work-card:nth-child(odd) .image-placeholder { margin-right: 10vw; }
  .study-copy, .study-media, .process-item:nth-child(n), .about-preview-media, .about-preview-copy,
  .page-intro .display, .page-intro .intro-copy, .catalogue-card, .catalogue-card:nth-child(n),
  .work-hero-media, .work-info, .work-sequence .seq-1, .work-sequence .seq-2, .work-sequence .seq-3,
  .work-sequence .seq-4, .editorial-main, .editorial-side, .contact-primary, .contact-secondary {
    grid-column: 1 / -1;
    margin-left: 0; margin-top: 0;
  }
  .study-media, .about-preview-copy, .editorial-side, .contact-secondary { margin-top: 44px; }
  .process-grid { gap: 56px; }
  .process-item:nth-child(2) { margin-left: 12vw; }
  .process-item:nth-child(3) { margin-right: 9vw; }
  .page-intro .intro-copy { margin-top: 34px; }
  .catalogue-grid { display: block; }
  .catalogue-card { margin-bottom: 62px !important; }
  .catalogue-card:nth-child(even) { margin-left: 10vw !important; }
  .work-hero-grid { gap: 42px; }
  .work-info { position: static; }
  .work-sequence { gap: 56px; }
  .work-sequence .seq-2 { margin-right: 13vw; }
  .work-sequence .seq-3 { margin-left: 10vw; }
  .journal-row { grid-template-columns: 1fr; gap: 6px; }
  .footer-inner { gap: 34px; }
  .footer-brand, .footer-links, .footer-copy { grid-column: 1 / -1; text-align: left; }
  .footer-logo { width: min(240px, 72vw); }
  .brand-mark { width: 42px; height: 42px; }
}

/* V13 merged-draft additions: preserve canonical visual system while wiring real imagery. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-photo{display:block;width:100%;height:auto;background:var(--paper)}
.hero-photo{aspect-ratio:16/9;object-fit:cover}
.nav-item{position:relative}.subnav{display:none;position:absolute;top:22px;left:-18px;min-width:180px;list-style:none;margin:0;padding:15px 18px 12px;background:var(--chalk);border:1px solid var(--stone);z-index:100}.subnav li+li{margin-top:10px}.subnav a{white-space:nowrap}.has-subnav:hover>.subnav,.has-subnav:focus-within>.subnav{display:block}
.selected-grid{margin-top:clamp(48px,6vw,84px);display:grid;grid-template-columns:1fr 1fr;gap:72px 36px;align-items:start}.selected-card{display:block}.selected-card img{width:100%;aspect-ratio:1/1;object-fit:cover}.selected-card:nth-child(2) img,.selected-card:nth-child(4) img{aspect-ratio:4/5}.selected-card.selected-wide{grid-column:1/-1}.selected-card.selected-wide img{aspect-ratio:3/2}.selected-card:hover img{opacity:.96}
.studio-teaser{display:grid;grid-template-columns:repeat(12,1fr);gap:28px;align-items:center}.studio-teaser-copy{grid-column:1/span 4}.studio-teaser-copy .display{margin:18px 0 28px}.studio-teaser-copy p{color:var(--mineral)}.studio-teaser-media{grid-column:6/-1}.studio-teaser-media img{aspect-ratio:3/2;object-fit:cover}
.process-grid-photos .site-photo{object-fit:cover}.ratio-square{aspect-ratio:1/1}
.strand-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,80px)}.strand-card img{aspect-ratio:4/3;object-fit:cover}.strand-copy{padding-top:22px}.strand-copy .display{margin:12px 0 18px}.strand-copy p{color:var(--mineral);max-width:52ch}.strand-card:hover .text-link,.strand-card:hover h2{opacity:.75}
.photo-catalogue img{aspect-ratio:4/5;object-fit:cover}.photo-catalogue:nth-child(even) img{aspect-ratio:5/4}.photo-catalogue:nth-child(5) img{aspect-ratio:3/2}.catalogue-card{display:block}
.studio-stages{display:grid;gap:clamp(78px,10vw,150px)}.stage{display:grid;grid-template-columns:7fr 4fr;gap:clamp(38px,6vw,92px);align-items:center}.stage-reverse{grid-template-columns:4fr 7fr}.stage-reverse img{order:2}.stage-reverse>div{order:1}.stage img{max-height:760px;object-fit:cover}.stage-portrait{object-fit:contain;background:transparent;max-height:760px}.stage .display{margin:14px 0 24px}.stage p{color:var(--mineral)}
.process-story{display:grid;gap:clamp(90px,11vw,170px)}.process-step{display:grid;grid-template-columns:7fr 4fr;gap:clamp(38px,6vw,92px);align-items:center}.process-step-reverse{grid-template-columns:4fr 7fr}.process-step-reverse .process-step-media{order:2}.process-step-reverse .process-step-copy{order:1}.process-step-media>img{aspect-ratio:1/1;object-fit:cover}.process-step-copy .display{margin:14px 0 26px}.process-step-copy p{color:var(--mineral);max-width:54ch}.firing-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.firing-pair>img{aspect-ratio:1/1}.process-finish{border-top:1px solid var(--stone);padding-top:clamp(38px,5vw,64px)}.process-finish .process-step-copy{max-width:700px;margin-bottom:clamp(42px,6vw,72px)}.finish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.finish-grid img{aspect-ratio:1/1;object-fit:cover}
.work-detail-intro{padding:clamp(78px,10vw,140px) var(--gutter) 0}.back-link{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--mineral)}.work-detail-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-top:36px}.work-detail-meta{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--mineral);padding-bottom:10px}.work-detail-lead{padding:clamp(42px,5vw,64px) var(--gutter) 0}.work-detail-lead .page-width{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.work-lead-photo{grid-column:1/span 8;aspect-ratio:4/5;object-fit:cover}.work-support-single{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.work-support-single img{grid-column:4/span 6;aspect-ratio:1/1;object-fit:cover}.work-support-single img.wide-support{grid-column:2/span 10;aspect-ratio:3/2}

/* Studio Ceramics: authentic supplied process/detail images. */
.studio-gallery-heading{margin-bottom:clamp(46px,6vw,78px)}
.studio-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(28px,4vw,58px) 28px;align-items:start}
.studio-gallery-item{margin:0;display:block}
.studio-gallery-item img{width:100%;object-fit:cover}
.studio-gallery-feature{grid-column:1/span 5}.studio-gallery-feature img{aspect-ratio:4/5;object-position:50% 50%}
.studio-gallery-portrait{grid-column:7/span 4;margin-top:7vw}.studio-gallery-portrait img{aspect-ratio:4/5;object-position:50% 50%}
.studio-gallery-square{grid-column:2/span 4;margin-top:2vw}.studio-gallery-square img{aspect-ratio:1/1;object-position:50% 48%}
.studio-gallery-wide{grid-column:7/-1;margin-top:-1vw}.studio-gallery-wide img{aspect-ratio:4/3;object-position:50% 50%}
.studio-gallery-caption{display:block;margin-top:12px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mineral)}
.studio-gallery-feature:hover .studio-gallery-caption{color:var(--ink)}

/* Journal scrapbook treatment restored for source classes. */
.studio-journal-page{display:grid;gap:clamp(74px,10vw,140px)}.studio-note-page{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(46px,7vw,108px);align-items:start}.studio-note-page-reverse .scrapbook-page{order:2}.studio-note-page-reverse .studio-note-copy{order:1}.studio-note-copy{max-width:650px;padding-top:18px}.studio-note-copy h3{font-family:var(--display);font-weight:400;font-size:clamp(34px,4.6vw,66px);line-height:.98;letter-spacing:-.035em;margin:0 0 26px}.studio-note-copy p{font-size:clamp(15px,1.25vw,18px);line-height:1.78;margin:0 0 18px;max-width:62ch}.studio-note-copy .note-deck{font-family:var(--display);font-size:clamp(20px,2vw,28px);line-height:1.35;color:var(--mineral);margin-bottom:30px}.note-meta{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mineral);margin-bottom:18px}.note-tag{display:inline-block;margin-top:16px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:3px}.scrapbook-page{position:relative;min-height:clamp(500px,53vw,690px);padding:26px 20px 38px;background:linear-gradient(135deg,rgba(246,242,232,.82),rgba(235,229,216,.52));border:1px solid rgba(111,103,92,.16)}.photo-print-page{position:absolute;margin:0;background:#f8f5ed;padding:12px 12px 34px;box-shadow:0 18px 38px rgba(31,28,24,.16);border:1px solid rgba(84,76,67,.12)}.photo-print-page:before{content:"";position:absolute;z-index:3;width:112px;height:30px;top:-17px;left:50%;transform:translateX(-50%) rotate(-2deg);background:rgba(213,196,158,.72);box-shadow:0 1px 3px rgba(55,45,33,.1);clip-path:polygon(2% 12%,98% 0,96% 91%,3% 100%)}.photo-print-page img{display:block;width:100%;height:auto}.photo-print-page figcaption{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--mineral);padding-top:12px}.photo-main-page{left:5%;top:7%;width:72%;transform:rotate(-1.8deg)}.photo-main-right-page{left:auto;right:5%;transform:rotate(1.5deg)}.photo-small-page{width:45%;bottom:5%;right:3%;transform:rotate(3.5deg)}.photo-small-left-page{right:auto;left:2%;transform:rotate(-3deg)}.photo-third-page{width:36%;top:7%;right:2%;transform:rotate(3.1deg)}.photo-third-left-page{right:auto;left:4%;top:auto;bottom:2%;transform:rotate(-4.2deg)}.photo-third-right-page{right:2%;top:10%;transform:rotate(4deg)}.scrapbook-raku-tests .photo-main-page{width:65%;left:16%;top:8%;transform:rotate(-1.2deg)}.scrapbook-raku-tests .photo-small-page{width:40%;right:2%;bottom:3%;transform:rotate(3.7deg)}.scrapbook-raku-tests .photo-third-left-page{width:37%;left:2%;bottom:4%;transform:rotate(-4deg)}
@media (max-width:1100px){.nav-list{gap:18px;font-size:10px;letter-spacing:.12em}}
@media (max-width:900px){.subnav{display:block;position:static;border:0;padding:10px 0 0 18px;background:transparent}.subnav li+li{margin-top:10px}.selected-grid{gap:54px 24px}.studio-teaser-copy{grid-column:1/span 5}.studio-teaser-media{grid-column:6/-1}.stage,.stage-reverse,.process-step,.process-step-reverse{grid-template-columns:1fr 1fr}.studio-note-page,.studio-note-page-reverse{grid-template-columns:1fr;gap:42px}.studio-note-page-reverse .scrapbook-page,.studio-note-page-reverse .studio-note-copy{order:initial}.scrapbook-page{min-height:620px}.work-lead-photo{grid-column:1/span 9}.work-support-single img{grid-column:3/span 8}}
@media (max-width:640px){.hero-grid,.section-heading-row,.study-grid,.process-grid,.about-preview,.page-intro-grid,.work-hero-grid,.work-sequence,.editorial-grid,.contact-grid,.footer-inner,.work-detail-lead .page-width,.work-support-single{grid-template-columns:minmax(0,1fr)}.hero-grid{gap:40px}.process-grid{gap:46px}.footer-inner{gap:34px}.hero-photo{aspect-ratio:1/1}.selected-grid{grid-template-columns:1fr;gap:40px}.selected-card.selected-wide{grid-column:auto}.selected-card img,.selected-card:nth-child(2) img,.selected-card:nth-child(4) img,.selected-card.selected-wide img{aspect-ratio:auto;max-height:none}.studio-teaser{display:block}.studio-teaser-media{margin-top:40px}.strand-grid{grid-template-columns:1fr;gap:72px}.stage,.stage-reverse,.process-step,.process-step-reverse{grid-template-columns:1fr;gap:30px}.stage-reverse img,.stage-reverse>div,.process-step-reverse .process-step-media,.process-step-reverse .process-step-copy{order:initial}.firing-pair{grid-template-columns:1fr}.finish-grid{grid-template-columns:1fr;gap:28px}.work-detail-heading{display:block}.work-detail-meta{margin-top:14px}.work-lead-photo,.work-support-single img,.work-support-single img.wide-support{grid-column:1/-1}.scrapbook-page{min-height:470px;padding:18px 12px 28px}.studio-note-copy{max-width:none;padding-top:0}}

@media (max-width:900px){
  .nav-list .subnav{font-size:12px;letter-spacing:.12em;padding:12px 0 0 18px}
  .studio-gallery-feature{grid-column:1/span 6}.studio-gallery-portrait{grid-column:8/-1}.studio-gallery-square{grid-column:1/span 5}.studio-gallery-wide{grid-column:7/-1}
}
@media (max-width:640px){
  .studio-gallery{grid-template-columns:1fr;gap:42px}
  .studio-gallery-feature,.studio-gallery-portrait,.studio-gallery-square,.studio-gallery-wide{grid-column:1;margin-top:0}
  .studio-gallery-feature img,.studio-gallery-portrait img{aspect-ratio:4/5}
  .studio-gallery-square img{aspect-ratio:1/1}
  .studio-gallery-wide img{aspect-ratio:4/3}
  .scrapbook-page{min-height:560px}
  .photo-main-page{width:72%;left:3%;top:5%}
  .photo-small-page{width:48%;right:1%;bottom:4%}
  .photo-third-page{width:42%;right:1%;top:8%}
  .photo-third-left-page{right:auto;left:1%;top:auto;bottom:1%;width:42%}
  .scrapbook-raku-tests .photo-main-page{width:70%;left:13%;top:5%}
  .scrapbook-raku-tests .photo-small-page{width:44%;right:1%;bottom:2%}
  .scrapbook-raku-tests .photo-third-left-page{width:42%;left:1%;bottom:2%}
}


/* V17: quieter homepage intro bridge. */
.hero-copy .hero-bridge{margin-top:16px;font-size:15px;line-height:1.65;color:var(--ink);max-width:430px}

/* V17: single-image Selected Work fade carousel. */
.selected-carousel{margin-top:clamp(48px,6vw,84px)}
.selected-carousel-stage{position:relative;width:min(100%,980px);margin-inline:auto;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden}
.selected-slide{position:absolute;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .55s ease}
.selected-slide.is-active{opacity:1;pointer-events:auto;z-index:1}
.selected-slide img{width:100%;height:100%;object-fit:contain;object-position:center}
.selected-carousel-controls{width:min(100%,980px);margin:22px auto 0;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:18px}
.carousel-nav{border:0;border-bottom:1px solid var(--ink);background:transparent;padding:0 0 4px;color:var(--ink);font-size:11px;text-transform:uppercase;letter-spacing:.13em;cursor:pointer}
.carousel-status{font-size:11px;letter-spacing:.13em;color:var(--mineral);white-space:nowrap}
.carousel-dots{display:flex;justify-content:center;align-items:center;gap:9px}
.carousel-dot{width:6px;height:6px;border:1px solid var(--mineral);border-radius:50%;background:transparent;padding:0;cursor:pointer}
.carousel-dot.is-active{background:var(--ink);border-color:var(--ink)}
@media (prefers-reduced-motion:reduce){.selected-slide{transition:none}}

/* V17: genuine Scottish croft-house imagery on About. */
.croft-house-gallery{margin-top:clamp(48px,6vw,84px);display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,4vw,58px);align-items:end}
.croft-house-gallery figure{margin:0}.croft-house-single img{aspect-ratio:1/1;object-fit:cover}.croft-house-group img{aspect-ratio:3/2;object-fit:cover}
.croft-house-gallery figcaption{margin-top:12px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mineral)}

/* V17: fifth Studio gallery image. */
.studio-gallery-final{grid-column:3/span 7;margin-top:1vw}.studio-gallery-final img{aspect-ratio:4/3;object-position:50% 50%}
.contact-grid-simple{display:block}.contact-grid-simple .contact-secondary{max-width:520px;margin-left:auto}
@media (max-width:900px){.studio-gallery-final{grid-column:2/span 9}}
@media (max-width:640px){
  .selected-carousel-stage{aspect-ratio:1/1}
  .selected-carousel-controls{grid-template-columns:auto 1fr auto;gap:14px}
  .carousel-status{grid-column:2;text-align:center}.carousel-dots{grid-column:1/-1;grid-row:2}.carousel-prev{grid-column:1;grid-row:1}.carousel-next{grid-column:3;grid-row:1}
  .croft-house-gallery{grid-template-columns:1fr;gap:36px}
  .studio-gallery-final{grid-column:1;margin-top:0}
}


/* V18: robust full-viewport mobile navigation overlay. */
@media (max-width:900px){
  .site-header{z-index:10020}
  .nav-list{
    position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;
    max-width:none!important;margin:0!important;padding:112px max(var(--gutter),22px) 44px!important;
    background:var(--chalk)!important;z-index:10015!important;overflow-y:auto!important;overscroll-behavior:contain;
  }
  .nav-list.is-open{display:flex!important}
  body.nav-open::before{content:"";position:fixed;inset:0;background:var(--chalk);z-index:10010}
  body.nav-open .site-header{position:fixed;top:0;left:0;right:0;width:100%;padding-bottom:18px;background:var(--chalk);z-index:10020}
  body.nav-open main,body.nav-open .site-footer{pointer-events:none;user-select:none}
  .brand-mark,.menu-toggle{z-index:10025!important}
}

/* V19: preserve complete slipcast espresso cup and accurate apex-roof croft references. */
.work-lead-photo.espresso-full{aspect-ratio:1/1;object-fit:contain;background:var(--paper)}
.croft-house-single img,.croft-house-group img{aspect-ratio:auto;object-fit:contain;background:var(--paper)}


/* V20: mobile navigation overlay is the NAV panel itself. This avoids fixed-UL/Safari regressions. */
.primary-nav{display:block}
@media (max-width:900px){
  .site-header{z-index:20000}
  .menu-toggle,.brand-mark{position:relative;z-index:20030!important}
  .primary-nav{
    display:none;position:fixed;inset:0;z-index:20010;
    width:100vw;max-width:none;height:100vh;min-height:100svh;height:100dvh;
    margin:0;padding:112px max(var(--gutter),22px) 44px;
    background:var(--chalk);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  }
  .primary-nav.is-open{display:block}
  .primary-nav .nav-list{
    display:flex!important;position:static!important;inset:auto!important;width:auto!important;height:auto!important;
    max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;overflow:visible!important;
    flex-direction:column;align-items:flex-start;gap:22px;font-size:15px;line-height:1.35;
  }
  .primary-nav .nav-list .subnav{
    display:block;position:static;min-width:0;margin:0;padding:12px 0 0 18px;border:0;background:transparent;
    font-size:12px;letter-spacing:.12em;
  }
  .primary-nav .nav-list .subnav li+li{margin-top:10px}
  html.nav-open,body.nav-open{overflow:hidden!important;overscroll-behavior:none}
  body.nav-open .site-header{position:fixed;inset:0 0 auto 0;width:100%;padding-bottom:18px;background:var(--chalk);z-index:20020}
  body.nav-open main,body.nav-open .site-footer{pointer-events:none;user-select:none}
}


/* V21: scoped content/layout refinements. */
.croft-house-intro{max-width:700px;margin:clamp(24px,3vw,38px) 0 0;color:var(--mineral);font-size:clamp(16px,1.35vw,19px);line-height:1.7}
.about-wheel-support .page-width{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.about-wheel-support-figure{grid-column:3/span 8;margin:0}.about-wheel-support-figure img{aspect-ratio:1/1;object-fit:cover}.about-wheel-support-figure figcaption{margin-top:12px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mineral)}
.contact-editorial{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(32px,5vw,72px);align-items:center}.contact-image{grid-column:1/span 7;margin:0}.contact-image img{aspect-ratio:1/1;object-fit:cover}.contact-editorial .contact-secondary{grid-column:9/-1;margin:0}
.studio-gallery-detail{grid-column:1/span 5;margin-top:2vw}.studio-gallery-detail img{aspect-ratio:4/3;object-position:50% 50%}
.studio-gallery-use{grid-column:7/span 4;margin-top:7vw}.studio-gallery-use img{aspect-ratio:1/1;object-position:50% 50%}

/* Croft journal collage: clearer hierarchy with all three photographs visible. */
.scrapbook-croft-houses{min-height:clamp(650px,58vw,760px)}
.scrapbook-croft-houses .photo-main-page{width:63%;left:4%;right:auto;top:5%;transform:rotate(-1.5deg);z-index:1}
.scrapbook-croft-houses .photo-small-page{width:42%;left:auto;right:2%;bottom:4%;transform:rotate(3deg);z-index:3}
.scrapbook-croft-houses .photo-third-page{width:35%;left:4%;right:auto;top:auto;bottom:3%;transform:rotate(-3.5deg);z-index:4}

/* V21: one mobile-menu implementation, overriding all earlier experiments. */
@media (max-width:900px){
  .site-header{position:relative;z-index:30020}
  .header-inner{position:relative;z-index:30030}
  .brand-mark,.menu-toggle{position:relative;z-index:30040!important}
  .primary-nav{display:none!important;position:fixed!important;inset:0!important;z-index:30010!important;width:100%!important;height:100vh!important;height:100dvh!important;min-height:100svh!important;margin:0!important;padding:112px max(var(--gutter),22px) 44px!important;background:var(--chalk)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .primary-nav.is-open{display:block!important}
  .primary-nav .nav-list{display:flex!important;position:static!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:transparent!important;overflow:visible!important;flex-direction:column!important;align-items:flex-start!important;gap:22px!important;font-size:15px!important;line-height:1.35!important}
  .primary-nav .subnav{display:block!important;position:static!important;margin:0!important;padding:12px 0 0 18px!important;border:0!important;background:transparent!important}
  html.nav-open,body.nav-open{overflow:hidden!important;overscroll-behavior:none!important}
  body.nav-open .site-header{position:fixed!important;inset:0 0 auto 0!important;width:100%!important;background:var(--chalk)!important;z-index:30020!important}
  body.nav-open main,body.nav-open .site-footer{visibility:hidden!important;pointer-events:none!important}
}
@media (max-width:640px){
  .about-wheel-support .page-width,.contact-editorial{grid-template-columns:1fr}
  .about-wheel-support-figure,.contact-image,.contact-editorial .contact-secondary{grid-column:1;margin:0}
  .contact-editorial{gap:34px}.contact-image img{aspect-ratio:1/1}
  .studio-gallery-detail,.studio-gallery-use{grid-column:1;margin-top:0}
  .studio-gallery-detail img{aspect-ratio:4/3}.studio-gallery-use img{aspect-ratio:1/1}
  .scrapbook-croft-houses{min-height:760px}
  .scrapbook-croft-houses .photo-main-page{width:72%;left:5%;top:4%;transform:rotate(-1.5deg)}
  .scrapbook-croft-houses .photo-small-page{width:52%;right:1%;left:auto;bottom:4%;transform:rotate(3deg)}
  .scrapbook-croft-houses .photo-third-page{width:46%;left:1%;right:auto;bottom:3%;top:auto;transform:rotate(-3deg)}
}
/* V21.1: give the desktop croft scrapbook enough breathing room for all three captions. */
@media (min-width:641px){.scrapbook-croft-houses{min-height:820px}.scrapbook-croft-houses .photo-small-page{bottom:2%}.scrapbook-croft-houses .photo-third-page{bottom:2%}}
@media (min-width:641px){.scrapbook-croft-houses{min-height:900px}}


/* RAKU SHOP */
.shop-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:clamp(72px,8vw,120px) 28px;
}
.shop-card{
  grid-column:span 6;
}
.shop-card:nth-child(even){
  margin-top:clamp(42px,7vw,100px);
}
.shop-card-gift{
  grid-column:3 / span 8;
  margin-top:0;
}
.shop-image{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.shop-card-gift .shop-image{
  aspect-ratio:3/2;
}
.shop-copy{
  padding-top:22px;
}
.shop-copy .display{
  margin:12px 0 14px;
}
.shop-copy p{
  color:var(--mineral);
  max-width:54ch;
}
.shop-price{
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--mineral);
  margin-bottom:18px;
}
.shop-dispatch,
.shop-note{
  font-size:12px;
  color:var(--mineral);
}
@media (max-width:640px){
  .shop-grid{
    grid-template-columns:1fr;
    gap:72px;
  }
  .shop-card,
  .shop-card:nth-child(even),
  .shop-card-gift{
    grid-column:auto;
    margin-top:0;
  }
}


/* RAKU SHOP REFINEMENT V2 */

.shop-grid{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:64px;
  row-gap:100px;
  align-items:start;
}

.shop-card{
  grid-column:auto;
  width:100%;
  max-width:520px;
}

.shop-card:nth-child(even){
  margin-top:48px;
}

.shop-image{
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  display:block;
}

.shop-card-gift{
  grid-column:1 / -1;
  max-width:760px;
  margin:20px auto 0;
}

.shop-card-gift .shop-image{
  aspect-ratio:3 / 2;
}

.shop-copy{
  padding-top:20px;
}

.shop-copy .display{
  font-size:clamp(36px,3vw,52px);
  line-height:1.02;
}


/* Product detail */

.product-page{
  padding:clamp(70px,8vw,120px) 0;
}

.product-detail{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:clamp(55px,7vw,100px);
  align-items:start;
}

.product-detail-image{
  width:100%;
  height:auto;
  max-height:680px;
  object-fit:contain;
  display:block;
}

.product-detail-copy{
  padding-top:20px;
}

.product-detail-copy .display{
  margin:14px 0 18px;
}

.product-detail-price{
  font-size:13px;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:32px;
}

.product-detail-description,
.product-detail-note{
  max-width:46ch;
}

.product-detail-dispatch{
  margin-top:28px;
  max-width:46ch;
}

.product-back-link{
  display:inline-block;
  margin-top:40px;
}

@media (max-width:760px){

  .shop-grid{
    grid-template-columns:1fr;
    row-gap:70px;
  }

  .shop-card,
  .shop-card:nth-child(even),
  .shop-card-gift{
    grid-column:auto;
    max-width:none;
    margin-top:0;
  }

  .product-detail{
    grid-template-columns:1fr;
    gap:40px;
  }

  .product-page{
    padding-top:45px;
  }
}



/* PRODUCT STORY + PURCHASE */

.product-story{
  margin:34px 0 0;
  max-width:560px;
  padding:0;
  border:0;
  color:#65635f;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(20px,1.6vw,25px);
  line-height:1.45;
  font-style:italic;
}

.product-buy-button{
  display:inline-block;
  margin-top:34px;
  padding:15px 24px;
  background:#1c1c1a;
  color:#f4f1ea;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  transition:opacity .2s ease;
}

.product-buy-button:hover{
  opacity:.78;
}

.product-back-link{
  display:block;
  width:max-content;
  margin-top:30px;
}

@media (max-width:760px){
  .product-story{
    margin-top:24px;
    font-size:21px;
  }

  .product-buy-button{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }
}

/* PRODUCT STORY REFINEMENT */
.product-detail-media .product-story{
  margin:28px 0 0;
  max-width:none;
  padding:0 4px;
  color:#5f5d59;
  font-size:clamp(18px,1.4vw,22px);
  line-height:1.5;
  font-style:italic;
}


/* PRODUCT PAGE BUYER HIERARCHY */

.product-story-wrap{
  margin-top:28px;
}

.product-story-kicker{
  margin-bottom:10px;
}

.product-detail-media .product-story{
  margin:0;
  max-width:54ch;
  padding:0 4px;
  border:0;
  color:#625f5a;
  font-size:clamp(16px,1.15vw,18px);
  line-height:1.55;
  font-style:italic;
}

.product-buy-button{
  margin-top:28px;
}

.product-purchase-meta{
  margin-top:20px;
  max-width:46ch;
}

.product-purchase-meta p{
  margin:0 0 10px;
}

.product-purchase-meta .product-detail-dispatch,
.product-purchase-meta .product-delivery{
  font-size:13px;
  line-height:1.5;
  color:#625f5a;
}

.product-purchase-meta .product-detail-note{
  margin-top:20px;
}

.product-back-link{
  margin-top:28px;
}

@media (max-width:760px){
  .product-story-wrap{
    margin-top:22px;
  }

  .product-detail-media .product-story{
    font-size:16px;
  }
}


/* GIFT CARD PURCHASE PAGE */

.gift-card-detail-image{
  width:100%;
}

.gift-card-form{
  margin-top:34px;
  max-width:500px;
}

.gift-card-fieldset{
  margin:0 0 28px;
  padding:0;
  border:0;
}

.gift-card-legend{
  margin-bottom:13px;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.gift-card-values{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.gift-card-value input,
.gift-card-radio input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.gift-card-value span{
  display:inline-flex;
  min-width:66px;
  min-height:44px;
  box-sizing:border-box;
  align-items:center;
  justify-content:center;
  padding:10px 15px;
  border:1px solid #b9b5ad;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease;
}

.gift-card-value input:checked + span{
  border-color:#1c1c1a;
  background:#1c1c1a;
  color:#f4f1ea;
}

.gift-card-recipient-options{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
}

.gift-card-radio span{
  position:relative;
  display:inline-block;
  padding-left:23px;
  cursor:pointer;
}

.gift-card-radio span::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:12px;
  height:12px;
  border:1px solid #817d76;
  border-radius:50%;
  transform:translateY(-50%);
}

.gift-card-radio input:checked + span::after{
  content:"";
  position:absolute;
  left:4px;
  top:50%;
  width:6px;
  height:6px;
  background:#1c1c1a;
  border-radius:50%;
  transform:translateY(-50%);
}

.gift-card-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px 20px;
}

.gift-card-fields label{
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.gift-card-fields small{
  font-size:10px;
  letter-spacing:.04em;
  text-transform:none;
}

.gift-card-fields input,
.gift-card-fields textarea{
  width:100%;
  box-sizing:border-box;
  padding:12px 0;
  border:0;
  border-bottom:1px solid #aaa69f;
  border-radius:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-size:15px;
  letter-spacing:0;
  text-transform:none;
}

.gift-card-fields textarea{
  min-height:90px;
  resize:vertical;
}

.gift-card-fields input:focus,
.gift-card-fields textarea:focus{
  outline:none;
  border-bottom-color:#1c1c1a;
}

.gift-card-message{
  grid-column:1 / -1;
}

.gift-card-continue:disabled{
  opacity:.45;
  cursor:not-allowed;
}

@media (max-width:600px){
  .gift-card-fields{
    grid-template-columns:1fr;
  }

  .gift-card-message{
    grid-column:auto;
  }
}


/* V27 launch QA: desktop submenu and journal links */

/* Keep desktop Work submenu directly connected to its parent hover area. */
@media (min-width:901px){
  .has-subnav > .subnav{
    top:100%;
  }
}

/* Journal article headings are now semantically H2. */
.studio-note-copy h2{
  font-family:var(--display);
  font-weight:400;
  font-size:clamp(34px,4.6vw,66px);
  line-height:.98;
  letter-spacing:-.035em;
  margin:0 0 26px;
}

/* Quiet but visible contextual links within journal body copy. */
.studio-note-copy p a{
  color:inherit;
  text-decoration-line:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
}

.studio-note-copy p a:hover,
.studio-note-copy p a:focus-visible{
  text-decoration-thickness:2px;
}

/* V27 launch QA: quieter desktop image scale.
   Mobile and tablet layouts at 900px and below remain unchanged. */
@media (min-width:901px){

  /* Raku catalogue: retain the existing editorial grid,
     but stop individual photographs dominating the viewport. */
  .catalogue-card{
    width:100%;
    max-width:420px;
  }

  .catalogue-card:nth-child(odd){
    justify-self:start;
  }

  .catalogue-card:nth-child(even){
    justify-self:end;
  }

  /* Remove the older percentage offset now that cards
     have a controlled desktop width. */
  .catalogue-card:nth-child(4n+2){
    margin-left:0;
  }

  /* Individual work pages: smaller lead image and less
     vertical distance before the descriptive copy. */
  .work-detail-lead{
    padding-top:clamp(28px,3vw,42px);
  }

  .work-lead-photo{
    grid-column:1/span 6;
    width:100%;
    max-width:480px;
    justify-self:start;
  }

  .work-description-section{
    padding-top:clamp(40px,4vw,58px);
    padding-bottom:clamp(48px,5vw,72px);
  }

  /* Supporting image should remain secondary to the lead image. */
  .work-support-single img{
    grid-column:4/span 5;
    width:100%;
    max-width:520px;
    justify-self:center;
  }
}

/* V27 launch QA: second desktop image-scale refinement. */
@media (min-width:901px){

  /* Keep catalogue photography restrained, but bring the two
     columns closer together so the page reads as one collection. */
  .catalogue-grid{
    max-width:1100px;
    margin-left:auto;
    margin-right:auto;
  }

  /* Work detail photography should show the real image shape
     and leave room for the descriptive copy in the first scroll. */
  .work-lead-photo{
    width:auto;
    height:auto;
    max-width:400px;
    max-height:440px;
    aspect-ratio:auto;
    object-fit:contain;
  }
}


/* V27 launch QA: editorial work-detail composition */

/* Default/mobile layout keeps the existing image, text, image sequence. */
.work-detail-composition{
  padding:clamp(42px,5vw,64px) var(--gutter) var(--section);
}

.work-detail-composition-grid{
  display:block;
}

.work-detail-composition-copy{
  margin-top:var(--section);
}

/* Desktop becomes an editorial two-column composition. */
@media (min-width:901px){

  .work-detail-composition{
    padding:clamp(30px,3vw,44px) var(--gutter) 0;
  }

  .work-detail-composition-grid{
    display:grid;
    grid-template-columns:minmax(0,420px) minmax(280px,410px);
    column-gap:clamp(70px,8vw,135px);
    align-items:start;
  }

  .work-detail-composition-media .work-lead-photo{
    display:block;
    width:100%;
    height:auto;
    max-width:420px;
    max-height:460px;
    aspect-ratio:auto;
    object-fit:contain;
  }

  .work-detail-composition-copy{
    align-self:center;
    margin-top:0;
    max-width:410px;
  }

  .work-detail-composition-copy .section-kicker{
    margin-bottom:18px;
  }

  .work-detail-composition-copy .copy-large{
    margin:0;
    max-width:42ch;
    font-size:clamp(17px,1.15vw,19px);
    line-height:1.7;
    color:var(--mineral);
  }

  /* The second photograph becomes a deliberate secondary image. */
  .work-support-section{
    padding-top:clamp(64px,7vw,96px);
  }

  .work-support-single img{
    grid-column:4/span 5;
    width:100%;
    max-width:520px;
    justify-self:center;
  }
}

/* V27 launch QA: final work-detail desktop refinement. */
@media (min-width:901px){

  /* The page already identifies this as Raku work in the heading area. */
  .work-detail-composition-copy .section-kicker{
    display:none;
  }

  /* Keep the secondary image visually connected to the text column. */
  .work-support-section{
    padding-top:clamp(48px,5vw,72px);
  }

  .work-support-single img{
    grid-column:7/span 5;
    width:100%;
    max-width:520px;
    justify-self:start;
  }
}


/* V27 launch QA: legal and customer information */

.legal-layout{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:28px;
}

.legal-content{
  grid-column:2/span 8;
  max-width:820px;
}

.legal-block{
  padding-bottom:clamp(38px,5vw,62px);
  margin-bottom:clamp(38px,5vw,62px);
  border-bottom:1px solid var(--stone);
}

.legal-block-last{
  margin-bottom:0;
}

.legal-block h2{
  margin:0 0 22px;
  font-family:var(--display);
  font-weight:400;
  font-size:clamp(30px,3.2vw,46px);
  line-height:1.05;
  letter-spacing:-.025em;
}

.legal-block p,
.legal-address{
  max-width:66ch;
  margin:0 0 16px;
  color:var(--mineral);
  font-size:15px;
  line-height:1.75;
}

.legal-address{
  font-style:normal;
  padding:4px 0 8px;
}

.legal-block strong{
  color:var(--ink);
  font-weight:500;
}

.legal-block a{
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
}

.legal-form{
  margin-top:28px;
  padding:26px 0 8px;
  border-top:1px solid var(--stone);
}

.legal-updated{
  margin-top:32px!important;
  font-size:11px!important;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.product-legal-link{
  margin-top:14px;
  font-size:12px;
}

@media (max-width:640px){
  .legal-layout{
    grid-template-columns:1fr;
  }

  .legal-content{
    grid-column:1;
    max-width:none;
  }

  .legal-block p,
  .legal-address{
    font-size:16px;
  }
}

/* Shop basket */
.cart-item {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1.5rem;
  align-items: center;
  padding: 1.25rem 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.cart-item-name {
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.cart-item-price {
  font-size: 0.95rem;
  opacity: 0.75;
}

.cart-item-controls {
  display: flex;
  align-items: end;
  gap: 1rem;
}

.cart-item-controls label {
  display: grid;
  gap: 0.35rem;
  font-size: 0.9rem;
}

.cart-quantity {
  min-width: 4.5rem;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(0, 0, 0, 0.25);
  background: #fff;
  color: inherit;
  font: inherit;
}

.cart-remove {
  border: 0;
  background: transparent;
  padding: 0.55rem 0;
  cursor: pointer;
}

.cart-summary {
  margin-top: 2rem;
  max-width: 34rem;
}

.cart-summary #cart-subtotal {
  margin-left: 0.35rem;
}

@media (max-width: 700px) {
  .cart-item {
    grid-template-columns: 1fr;
  }

  .cart-item-controls {
    justify-content: space-between;
    align-items: end;
  }
}

/* ACCESSIBILITY: visible keyboard focus */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

.gift-card-fields input:focus-visible,
.gift-card-fields textarea:focus-visible {
  outline: 2px solid #1c1c1a;
  outline-offset: 4px;
  border-bottom-color: #1c1c1a;
}


/* Analytics preference control */
.analytics-preferences{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--stone);
}

.analytics-preference-control{
  appearance:none;
  background:none;
  color:inherit;
  cursor:pointer;
  border-left:0;
  border-right:0;
  border-top:0;
}

.analytics-preference-status{
  margin:14px 0 0;
  color:var(--mineral);
  font-size:13px;
}


/* Analytics consent banner */
.analytics-consent-banner{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:500;
  background:var(--chalk);
  border-top:1px solid var(--stone);
  box-shadow:0 -8px 28px rgba(0,0,0,.06);
}

.analytics-consent-inner{
  max-width:1440px;
  margin:0 auto;
  padding:18px var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.analytics-consent-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  max-width:760px;
  color:var(--mineral);
  font-size:13px;
  line-height:1.55;
}

.analytics-consent-copy strong{
  color:var(--ink);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:500;
}

.analytics-consent-copy a{
  border-bottom:1px solid currentColor;
}

.analytics-consent-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
}

.analytics-consent-actions button{
  cursor:pointer;
  border:1px solid var(--ink);
  padding:11px 16px;
  background:transparent;
  color:var(--ink);
  font-size:11px;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.analytics-consent-actions [data-analytics-accept]{
  background:var(--ink);
  color:var(--chalk);
}

@media (max-width:760px){
  .analytics-consent-inner{
    align-items:flex-start;
    flex-direction:column;
    gap:16px;
  }

  .analytics-consent-actions{
    width:100%;
  }

  .analytics-consent-actions button{
    flex:1;
  }
}

/* RAKU_STUDIO_20261015_SCRAPBOOK_LAYOUT_V2 */
/* Use a natural-height photo grid for this entry only. The original
   paper borders, shadows and tape remain from the site's scrapbook styles. */
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  align-items: start;
  column-gap: clamp(14px, 2.3vw, 26px);
  row-gap: clamp(22px, 3.2vw, 38px);
  min-height: 0;
  padding: clamp(22px, 3vw, 30px) clamp(18px, 3vw, 30px) clamp(28px, 4vw, 42px);
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page > .photo-print-page {
  position: relative;
  inset: auto;
  box-sizing: border-box;
  min-width: 0;
  margin: 0;
  width: 100%;
  transform: none;
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-main-page {
  grid-column: 1 / -1;
  width: 88%;
  justify-self: center;
  transform: rotate(-1.1deg);
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-small-page {
  grid-column: 1;
  width: 94%;
  justify-self: start;
  transform: rotate(-1.7deg);
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-third-page {
  grid-column: 2;
  width: 94%;
  justify-self: end;
  transform: rotate(1.8deg);
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page > .photo-print-page img {
  display: block;
  width: 100%;
  height: auto;
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-print-page figcaption {
  line-height: 1.5;
  overflow-wrap: break-word;
}
.studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page > .photo-print-page:not(.photo-main-page)::before {
  width: clamp(50px, 8vw, 76px);
  height: 21px;
  top: -12px;
}
@media (max-width: 640px) {
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page {
    column-gap: 14px;
    row-gap: 23px;
    padding: 22px 15px 28px;
  }
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-main-page {
    width: 96%;
  }
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-small-page,
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-third-page {
    width: 98%;
  }
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page > .photo-print-page {
    padding: 8px 8px 26px;
  }
  .studio-note-page[data-date="2026-10-15T16:30:00"] .scrapbook-page .photo-print-page figcaption {
    font-size: 8px;
    letter-spacing: .09em;
    padding-top: 9px;
  }
}

/* RAKU JOURNAL INDEX AND INDIVIDUAL ARTICLE PAGES V1 */
.journal-index-grid{display:grid;gap:clamp(50px,7vw,96px)}
.journal-index-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center;padding-bottom:clamp(40px,6vw,76px);border-bottom:1px solid rgba(111,103,92,.23)}
.journal-index-card:last-child{border-bottom:0;padding-bottom:0}
.journal-index-image{display:block;background:#f8f5ed;padding:clamp(10px,1.5vw,18px);border:1px solid rgba(84,76,67,.12);box-shadow:0 12px 28px rgba(31,28,24,.08)}
.journal-index-image img{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;margin:auto}
.journal-index-copy h2{font-family:var(--display);font-size:clamp(34px,4.2vw,60px);line-height:1.04;letter-spacing:-.03em;font-weight:400;margin:0 0 20px}
.journal-index-copy h2 a{color:inherit;text-decoration:none}
.journal-index-copy h2 a:hover,.journal-index-copy h2 a:focus-visible{text-decoration:underline;text-underline-offset:.12em}
.journal-index-copy p{font-size:clamp(15px,1.25vw,18px);line-height:1.75;max-width:60ch;margin:0 0 22px}
.journal-read-link,.journal-backlink a{display:inline-block;color:var(--ink);font-size:12px;letter-spacing:.08em;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px}
.journal-read-link:hover,.journal-backlink a:hover{text-decoration:none;opacity:.7}
.journal-backlink{margin-bottom:clamp(22px,4vw,45px)}
.journal-backlink-bottom{margin-top:clamp(40px,6vw,72px);margin-bottom:0}
@media(max-width:900px){.journal-index-card{grid-template-columns:1fr;gap:24px}.journal-index-image img{max-height:360px}}
@media(max-width:640px){.journal-index-grid{gap:56px}.journal-index-card{padding-bottom:46px}.journal-index-image img{max-height:300px}.journal-index-copy h2{font-size:clamp(32px,8vw,46px)}}
