@font-face {
  font-family:Manrope;
  src:url('/assets/fonts/Manrope-variable.ttf') format('truetype');
  font-style:normal;
  font-weight:200 800;
  font-display:swap
}
:root {
  --art-paper:#f7f8f3;
  --art-panel:#f1f3ec;
  --art-ink:#173c30;
  --art-copy:#3f5148;
  --art-muted:#617068;
  --art-line:#dce2d7;
  --art-red:#b52632;
  --art-red-hover:#981f2a;
  --art-white:#fff;
  --art-focus:#976710;
  --art-header:80px;
  --art-space:clamp(20px,5.55vw,88px);
  --art-type:Manrope,"Microsoft YaHei","PingFang SC",sans-serif;
  --art-ease:cubic-bezier(.16,1,.3,1);
  --art-wash-near:rgb(247 248 243 / .99);
  --art-wash-mid:rgb(247 248 243 / .93);
  --art-wash-light:rgb(247 248 243 / .3);
  --art-wash-clear:rgb(247 248 243 / 0);
  --brand:var(--art-ink);
  --brand-deep:var(--art-ink);
  --action:var(--art-red);
  --action-hover:var(--art-red-hover);
  --ink:var(--art-ink);
  --text:var(--art-copy);
  --muted:var(--art-muted);
  --line:var(--art-line);
  --surface:var(--art-panel);
  --paper:var(--art-paper);
  --white:var(--art-white);
  --red:var(--art-red);
  --ease:var(--art-ease)
}
html {
  scroll-padding-top:calc(var(--art-header) + 20px);
  scroll-behavior:smooth;
  background:var(--art-paper)
}
body.corporate-site {
  background:var(--art-paper);
  color:var(--art-copy);
  font-family:var(--art-type);
  font-size:16px;
  line-height:1.75
}
body:has(.site-header) {
  -webkit-tap-highlight-color:rgb(181 38 50 / .14)
}
.corporate-site h1,.corporate-site h2,.corporate-site h3 {
  font-family:var(--art-type);
  color:var(--art-ink);
  font-weight:700;
  letter-spacing:-.035em;
  text-wrap:balance
}
.corporate-site p {
  color:var(--art-copy);
  line-height:1.85
}
.corporate-site button,.corporate-site input,.corporate-site select,.corporate-site textarea {
  font:inherit
}
.container {
  width:calc(100% - var(--art-space)*2);
  max-width:1440px
}
.corporate-site .section {
  padding-block:clamp(64px,7.6vw,120px);
  background:var(--art-paper);
  scroll-margin-top:calc(var(--art-header) + 24px)
}
:focus-visible {
  outline:3px solid var(--art-focus);
  outline-offset:5px
}
.corporate-site .button {
  min-height:52px;
  border-radius:5px;
  padding:14px 25px;
  gap:28px;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  transition:background-color 180ms,color 180ms,border-color 180ms,transform 240ms var(--art-ease);
  box-shadow:none
}
.corporate-site .button.primary {
  background:var(--art-red);
  color:var(--art-white);
  border-color:var(--art-red)
}
.corporate-site .button.primary:hover {
  background:var(--art-red-hover);
  border-color:var(--art-red-hover)
}
.corporate-site .button.outline {
  background:transparent;
  border-color:var(--art-line);
  color:var(--art-ink)
}
.corporate-site .button.outline:hover {
  border-color:var(--art-ink);
  background:var(--art-panel);
  color:var(--art-ink)
}
.corporate-site .button:active {
  transform:translateY(1px) scale(.985)
}
.button>span,.text-link>span {
  display:inline-block;
  flex-shrink:0;
  transition:transform 240ms var(--art-ease)
}
.button:hover>span,.button:focus-visible>span,.text-link:hover>span {
  transform:translate(3px,-3px)
}
.corporate-site .text-link {
  font-size:14px;
  gap:22px;
  color:var(--art-ink);
  min-height:44px;
  text-underline-offset:6px
}
.corporate-site .text-link:hover {
  text-decoration:underline
}
.section-heading h2:after {
  display:none
}
.section-heading p {
  max-width:62ch;
  margin-inline:auto
}
/* A continuous paper-white navigation frame, including the homepage. */
.corporate-site .site-header,.corporate-site.home-page .site-header,.corporate-site.home-page .site-header.is-scrolled,.corporate-site.home-page .site-header.menu-active {
  height:var(--art-header);
  position:sticky;
  top:0;
  background:var(--art-paper);
  color:var(--art-ink);
  border-bottom:1px solid var(--art-line);
  box-shadow:none
}
.corporate-site .header-inner {
  width:calc(100% - 56px);
  max-width:1680px;
  gap:26px
}
.corporate-site .brand {
  gap:12px
}
.corporate-site .brand>img {
  height:48px;
  width:48px;
  object-fit:contain
}
.corporate-site .brand-name strong,.corporate-site.home-page .site-header .brand-name strong {
  font-size:24px;
  letter-spacing:.02em;
  line-height:1.15;
  color:var(--art-ink);
  font-weight:800
}
.corporate-site .brand-name small,.corporate-site.home-page .site-header .brand-name small {
  font-size:10px;
  letter-spacing:.015em;
  color:var(--art-muted);
  margin-top:4px
}
.corporate-site .main-nav {
  gap:clamp(19px,2.1vw,34px);
  height:100%
}
.corporate-site .main-nav .nav-link {
  height:var(--art-header);
  font-size:15px;
  font-weight:600;
  color:var(--art-ink)
}
.corporate-site .main-nav .nav-link:after,.corporate-site.home-page .main-nav .nav-link:after {
  bottom:19px;
  height:2px;
  background:var(--art-red)
}
.corporate-site.home-page .main-nav .nav-link:hover,.corporate-site.home-page .main-nav .nav-link[aria-current=page],.corporate-site .main-nav .nav-link:hover,.corporate-site .main-nav .nav-link[aria-current=page] {
  color:var(--art-red)
}
.header-actions {
  gap:10px
}
.corporate-site .lang-switch,.corporate-site .icon-button {
  height:44px;
  min-width:44px;
  border:1px solid var(--art-line);
  border-radius:5px;
  background:transparent;
  color:var(--art-ink);
  padding:8px 12px
}
.corporate-site .lang-switch:hover,.corporate-site .icon-button:hover {
  background:var(--art-panel);
  border-color:var(--art-ink)
}
.corporate-site .search-toggle img {
  filter:none;
  width:21px;
  height:21px
}
.corporate-site .nav-children {
  background:var(--art-paper);
  color:var(--art-ink);
  border:1px solid var(--art-line);
  border-radius:0 0 6px 6px;
  box-shadow:0 12px 24px rgb(23 60 48 / .07)
}
.corporate-site .nav-children a {
  color:var(--art-ink);
  font-size:14px;
  padding:13px 20px;
  min-height:46px;
  border-left:2px solid transparent;
  transition:background 180ms,border-color 180ms
}
.corporate-site .nav-children a:hover,.corporate-site .nav-children a:focus-visible {
  background:var(--art-panel);
  border-left-color:var(--art-red);
  color:var(--art-ink)
}
.corporate-site .nav-expand {
  display:none
}
.corporate-site .brand:focus-visible {
  border-radius:2px
}
/* Real photographs occupy the complete section; the text lives inside their paper wash. */
.art-stage {
  position:relative;
  isolation:isolate;
  min-height:680px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--art-paper);
  overflow:hidden;
  scroll-margin-top:var(--art-header)
}
.art-stage-hero {
  min-height:calc(100svh - var(--art-header));
  max-height:none
}
.art-backdrop,.art-wash,.art-photo {
  position:absolute;
  inset:0
}
.art-backdrop {
  z-index:-3
}
.art-photo {
  width:100%;
  height:100%
}
.art-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:68% center
}
.art-wash {
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,var(--art-wash-near) 0%,var(--art-wash-mid) 25%,var(--art-wash-light) 58%,var(--art-wash-clear) 82%)
}
.art-stage:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(180deg,var(--art-paper) 0%,var(--art-wash-clear) 14%,var(--art-wash-clear) 81%,var(--art-paper) 100%)
}
.art-stage-inner {
  position:relative;
  padding-block:84px 100px
}
.art-stage-copy {
  max-width:600px
}
.art-stage-copy h1 {
  font-size:clamp(40px,4.5vw,68px);
  line-height:1.2;
  letter-spacing:-.055em;
  margin-bottom:30px;
  max-width:12.5em
}
.art-stage-copy h2 {
  font-size:clamp(32px,3.25vw,49px);
  line-height:1.3;
  margin-bottom:30px;
  max-width:18ch
}
.art-stage-copy>p {
  max-width:45ch;
  font-size:18px;
  line-height:1.85;
  margin-bottom:22px;
  color:var(--art-ink)
}
.art-stage-copy>.button {
  margin-top:18px
}
.art-stage-hero .art-stage-copy>p {
  max-width:35ch;
  font-size:20px
}
.art-stage-bottom {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-bottom:40px
}
.art-stage-controls {
  display:flex;
  gap:14px;
  align-items:center
}
.art-stage-controls>button {
  height:44px;
  width:44px;
  border:1px solid var(--art-line);
  border-radius:50%;
  background:var(--art-paper);
  color:var(--art-ink);
  transition:background 180ms,transform 240ms var(--art-ease)
}
.art-stage-controls>button:hover {
  background:var(--art-panel);
  transform:translateX(2px)
}
.art-dots {
  display:flex;
  gap:3px
}
.art-dots button {
  position:relative;
  width:44px;
  height:44px;
  background:transparent;
  border:0;
  padding:0
}
.art-dots button>span {
  display:block;
  width:6px;
  height:6px;
  background:var(--art-muted);
  border-radius:20px;
  margin:auto;
  transition:width 220ms var(--art-ease),background 180ms
}
.art-dots button[aria-pressed=true]>span {
  width:26px;
  background:var(--art-red)
}
.art-photo-count {
  font-size:12px;
  font-variant-numeric:tabular-nums;
  color:var(--art-muted)
}
.art-stage-bottom .art-caption {
  font-size:12px;
  color:var(--art-ink);
  max-width:40ch;
  margin:0;
  background:var(--art-wash-mid);
  padding:6px 12px;
  border-radius:3px
}
.art-caption:empty {
  display:none
}
.art-load-status {
  position:absolute;
  bottom:5px;
  left:0;
  right:0;
  font-size:12px;
  color:var(--art-ink);
  min-height:20px;
  margin-block:0
}
.art-no-script-photos {
  display:flex;
  gap:24px;
  padding-bottom:20px;
  flex-wrap:wrap
}
.art-no-script-photos a {
  text-decoration:underline
}
.art-stage.without-photography .art-stage-inner {
  min-height:400px
}
.art-stage.without-photography .art-wash {
  display:none
}
/* Product selection is immediate, clean and based on the existing published order. */
.art-section-title {
  text-align:center;
  margin:0 auto 44px;
  max-width:940px
}
.art-section-title h2 {
  font-size:clamp(30px,3vw,44px);
  line-height:1.3;
  margin-bottom:16px
}
.art-section-title>p {
  max-width:64ch;
  margin-inline:auto;
  margin-bottom:0;
  font-size:17px
}
.art-category-row {
  display:flex;
  justify-content:center;
  gap:20px 36px;
  flex-wrap:wrap;
  margin:0 0 48px
}
.art-category-row a {
  font-size:14px;
  min-height:44px;
  display:flex;
  align-items:center;
  gap:24px;
  border-bottom:1px solid transparent
}
.art-category-row a:hover {
  border-bottom-color:var(--art-red)
}
.corporate-site .product-grid {
  gap:44px 30px;
  grid-template-columns:repeat(3,minmax(0,1fr))
}
.corporate-site .product-card {
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  border-radius:0;
  transition:transform 300ms var(--art-ease)
}
.corporate-site .product-media {
  aspect-ratio:1;
  background:var(--art-paper);
  border:0;
  border-radius:6px;
  overflow:hidden
}
.corporate-site .product-media img {
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform 560ms var(--art-ease);
  mix-blend-mode:multiply
}
.corporate-site .product-card:hover .product-media img,.corporate-site .product-card:focus-within .product-media img {
  transform:scale(1.035)
}
.corporate-site .product-card:hover {
  transform:none
}
.corporate-site .product-meta {
  padding:22px 0 0
}
.corporate-site .product-meta small {
  font-size:12px;
  color:var(--art-muted);
  letter-spacing:0
}
.corporate-site .product-meta h3 {
  font-size:22px;
  line-height:1.4;
  margin:9px 0 10px
}
.corporate-site .product-meta p {
  font-size:14px;
  margin-bottom:12px;
  max-width:46ch
}
.corporate-site .product-card-more {
  font-size:12px;
  display:inline-flex;
  align-items:center;
  gap:16px;
  min-height:40px;
  color:var(--art-ink);
  border-bottom:1px solid var(--art-line)
}
.corporate-site .product-card-model {
  font-variant-numeric:tabular-nums
}
.corporate-site .product-card-link:focus-visible {
  outline-offset:8px
}
.art-range .section-actions {
  margin-top:48px
}
/* The company name is a centred title, not an unrelated side column. */
.art-page-title {
  text-align:center;
  padding-block:56px 35px
}
.art-page-title h1 {
  font-size:clamp(30px,3.7vw,52px);
  line-height:1.35;
  margin:0 auto;
  max-width:26ch
}
.art-stage#about-introduction {
  min-height:720px
}
.art-stage#about-introduction .art-stage-copy {
  max-width:590px
}
.art-stage#about-introduction .art-stage-copy h2 {
  font-size:clamp(28px,2.7vw,40px);
  max-width:24ch
}
.art-stage#about-introduction .art-stage-copy>p {
  font-size:16px;
  max-width:56ch
}
.art-stage#about-introduction .art-stage-inner {
  padding-block:60px 75px
}
.art-team-photo {
  max-width:1200px;
  margin:auto;
  overflow:hidden;
  border-radius:6px
}
.art-team-photo img {
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:contain;
  background:var(--art-paper)
}
.art-team .art-section-title {
  max-width:790px
}
.art-documentary {
  max-width:1200px;
  margin:auto
}
.simple-photo-carousel {
  position:relative;
  min-width:0
}
.simple-photo-slides {
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:6px;
  background:var(--art-panel)
}
.simple-photo-slides figure {
  margin:0;
  height:100%;
  position:relative
}
.simple-photo-slides img {
  width:100%;
  height:100%;
  object-fit:contain
}
.simple-photo-slides figcaption {
  position:absolute;
  left:18px;
  bottom:14px;
  margin:0;
  background:var(--art-wash-mid);
  color:var(--art-ink);
  font-size:12px;
  padding:6px 12px;
  border-radius:3px
}
.simple-photo-slides figcaption:empty {
  display:none
}
.simple-photo-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin-top:20px
}
.simple-photo-controls button {
  height:46px;
  width:46px;
  border-radius:50%;
  border:1px solid var(--art-line);
  background:transparent;
  color:var(--art-ink)
}
.simple-photo-controls button:hover {
  background:var(--art-panel)
}
.simple-photo-controls output {
  font-variant-numeric:tabular-nums;
  font-size:12px;
  min-width:42px;
  text-align:center
}
.simple-photo-status {
  min-height:22px;
  font-size:12px;
  text-align:center;
  margin:10px 0 0
}
.art-workshop-title {
  padding-block:60px 0
}
.art-stage#about-workshop {
  min-height:650px
}
.art-stage#about-workshop .art-stage-copy>p {
  font-size:19px;
  max-width:30ch
}
.art-photo-story .art-section-title {
  max-width:800px
}
.art-downloads {
  text-align:center
}
.simple-photo-empty {
  min-height:240px;
  display:grid;
  place-items:center;
  background:var(--art-panel);
  color:var(--art-muted)
}
/* Catalogue and all subpages share the same ground, type scale and controls. */
.corporate-site .inner-banner {
  background:var(--art-paper);
  color:var(--art-ink);
  min-height:260px;
  padding:60px 0 42px;
  position:relative;
  isolation:isolate
}
.corporate-site .inner-banner:after {
  background:var(--art-wash-mid);
  opacity:.9
}
.corporate-site .inner-banner .banner-content {
  text-align:center;
  color:var(--art-ink);
  position:relative
}
.corporate-site .inner-banner h1 {
  font-size:clamp(34px,4vw,56px);
  line-height:1.25;
  color:var(--art-ink);
  margin:0 auto 18px;
  max-width:24ch
}
.corporate-site .inner-banner p {
  font-size:17px;
  color:var(--art-muted);
  max-width:58ch;
  margin:auto
}
.corporate-site .inner-banner-image {
  opacity:.15;
  object-position:center
}
.corporate-site .breadcrumb-strip {
  background:var(--art-paper);
  border-block:0
}
.corporate-site .breadcrumb {
  padding-block:14px 0;
  font-size:12px;
  gap:14px;
  color:var(--art-muted);
  flex-wrap:wrap
}
.corporate-site .catalog-section {
  padding-top:35px
}
.corporate-site .catalog-layout {
  display:block
}
.corporate-site .category-sidebar {
  position:static;
  display:flex;
  gap:12px 30px;
  flex-wrap:wrap;
  background:transparent;
  padding:0 0 25px;
  border:0;
  margin-bottom:28px;
  align-items:center;
  border-bottom:1px solid var(--art-line)
}
.corporate-site .category-sidebar h2 {
  width:100%;
  font-size:16px;
  margin:0
}
.corporate-site .category-sidebar a {
  font-size:14px;
  padding:8px 0;
  min-height:44px;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:var(--art-muted);
  border-radius:0
}
.corporate-site .category-sidebar a[aria-current],.corporate-site .category-sidebar a.active {
  background:transparent;
  border-bottom-color:var(--art-red);
  color:var(--art-ink);
  font-weight:700
}
.corporate-site .category-sidebar a>span {
  display:none
}
.corporate-site .catalog-search {
  max-width:580px
}
.corporate-site input,.corporate-site textarea,.corporate-site select {
  background:var(--art-paper);
  color:var(--art-ink);
  border:1px solid var(--art-line);
  border-radius:5px;
  min-height:48px;
  padding:12px 14px;
  max-width:100%
}
.corporate-site input:focus,.corporate-site textarea:focus,.corporate-site select:focus {
  border-color:var(--art-ink)
}
.catalog-status {
  padding-block:22px;
  font-size:13px
}
.catalog-search label {
  font-size:13px
}
.corporate-site .filters-reset {
  font-size:13px
}
.corporate-site .empty-state,.corporate-site .product-empty {
  background:transparent;
  border:1px solid var(--art-line);
  color:var(--art-copy)
}
.corporate-site .product-detail-hero,.corporate-site .product-overview,.corporate-site .detail-section,.corporate-site .product-detail,.corporate-site .pd-module,.corporate-site .pd-module-dark,.corporate-site .product-section-nav {
  background:var(--art-paper);
  color:var(--art-copy)
}
.corporate-site .detail-grid {
  gap:6vw
}
.corporate-site .detail-copy h1 {
  font-size:40px;
  line-height:1.25;
  letter-spacing:-.035em;
  color:var(--art-ink)
}
.corporate-site .pd-lead {
  font-size:17px;
  line-height:1.85;
  color:var(--art-copy)
}
.corporate-site .pd-kicker {
  font-size:12px;
  color:var(--art-muted)
}
.corporate-site .detail-stage {
  aspect-ratio:1;
  background:var(--art-paper);
  border:0;
  border-radius:6px;
  overflow:hidden
}
.corporate-site .detail-stage>img {
  object-fit:contain;
  mix-blend-mode:multiply
}
.corporate-site .detail-thumbnails button {
  border:1px solid var(--art-line);
  border-radius:4px;
  background:transparent;
  padding:4px;
  transition:border-color 180ms,transform 240ms var(--art-ease)
}
.corporate-site .detail-thumbnails button[aria-pressed=true] {
  border:2px solid var(--art-red)
}
.corporate-site .detail-thumbnails img {
  object-fit:contain;
  mix-blend-mode:multiply
}
.corporate-site .gallery-controls {
  background:transparent;
  border:0
}
.corporate-site .gallery-controls button {
  border:1px solid var(--art-line);
  border-radius:5px;
  background:transparent;
  color:var(--art-ink);
  min-height:44px
}
.corporate-site .gallery-controls button:hover {
  background:var(--art-panel)
}
.corporate-site .product-section-nav {
  border-block:1px solid var(--art-line);
  box-shadow:none;
  top:var(--art-header)
}
.corporate-site .product-section-nav a {
  font-size:13px;
  color:var(--art-ink)
}
.corporate-site .pd-summary .detail-actions {
  margin-top:28px
}
.corporate-site .pd-summary .detail-actions>.text-link {
  font-size:13px
}
.corporate-site .product-disclaimer {
  font-size:12px;
  color:var(--art-muted)
}
.corporate-site .pd-module h2,.corporate-site .pd-module p {
  color:var(--art-ink)
}
.corporate-site .product-video-section,.corporate-site .pd-video,.corporate-site .product-videos {
  background:var(--art-paper)
}
.corporate-site video {
  background:var(--art-panel);
  border-radius:6px
}
.corporate-site .gallery-status,.corporate-site .gallery-error {
  font-size:12px
}
.corporate-site .product-art {
  background:var(--art-panel)
}
.corporate-site .faq-section,.corporate-site .faq-group,.corporate-site .content-page,.corporate-site .career-section,.corporate-site .contact-section,.corporate-site .contact-layout,.corporate-site .simple-about-contact {
  background:var(--art-paper);
  color:var(--art-copy)
}
.corporate-site details.accordion {
  border:0;
  border-bottom:1px solid var(--art-line);
  border-radius:0;
  background:transparent;
  box-shadow:none
}
.corporate-site details.accordion summary {
  padding:24px 42px 24px 0;
  min-height:64px;
  font-size:18px;
  font-weight:600;
  color:var(--art-ink)
}
.corporate-site .accordion-body {
  padding-inline:0;
  max-width:76ch;
  color:var(--art-copy)
}
.corporate-site .faq-groups-nav a {
  min-height:44px;
  border-radius:4px
}
.corporate-site .contact-card,.corporate-site .inquiry-panel,.corporate-site .contact-details,.corporate-site .contact-form {
  background:transparent;
  border-color:var(--art-line);
  box-shadow:none;
  border-radius:6px
}
.corporate-site .contact-details h2,.corporate-site .inquiry-panel h2 {
  font-size:30px
}
.corporate-site .inquiry-form label,.corporate-site .contact-form label {
  font-size:13px;
  font-weight:600
}
.corporate-site .job-card,.corporate-site .job-row {
  background:transparent;
  border-radius:0;
  border-color:var(--art-line);
  box-shadow:none
}
.corporate-site .job-card:hover {
  background:var(--art-panel)
}
.corporate-site .career-job-body {
  max-width:75ch
}
.corporate-site .status-message {
  border-radius:5px
}
.corporate-site .search-dialog {
  background:var(--art-paper);
  border-radius:8px;
  border:1px solid var(--art-line);
  box-shadow:0 24px 100px rgb(23 60 48 / .18)
}
.corporate-site .search-dialog::backdrop {
  background:rgb(23 60 48 / .35)
}
.corporate-site .site-footer {
  background:var(--art-paper);
  color:var(--art-ink);
  border-top:1px solid var(--art-line);
  padding-top:60px
}
.corporate-site .footer-main {
  grid-template-columns:1.15fr .7fr 1.15fr;
  gap:50px;
  padding-bottom:45px
}
.corporate-site .footer-company b {
  font-size:24px;
  color:var(--art-ink);
  letter-spacing:.02em
}
.corporate-site .footer-company h2 {
  font-size:16px;
  font-weight:600;
  line-height:1.6;
  letter-spacing:0;
  margin:15px 0
}
.corporate-site .footer-company p,.corporate-site .site-footer address p {
  font-size:13px;
  color:var(--art-muted)
}
.corporate-site .footer-nav {
  gap:7px
}
.corporate-site .footer-nav a {
  min-height:36px;
  display:flex;
  align-items:center;
  font-size:14px;
  color:var(--art-ink)
}
.corporate-site .footer-nav a:hover {
  color:var(--art-red)
}
.corporate-site .site-footer address {
  font-style:normal;
  color:var(--art-ink);
  overflow-wrap:anywhere
}
.corporate-site .site-footer address>a {
  display:block;
  font-size:18px;
  color:var(--art-ink);
  line-height:1.8
}
.corporate-site .site-footer address>a:hover {
  text-decoration:underline;
  text-underline-offset:5px
}
.corporate-site .site-footer address>button {
  font-size:12px;
  color:var(--art-ink);
  background:transparent;
  border:1px solid var(--art-line);
  min-height:44px;
  border-radius:4px;
  padding:8px 12px
}
.corporate-site .footer-bottom {
  border-color:var(--art-line);
  color:var(--art-muted);
  font-size:11px;
  min-height:72px;
  align-items:center
}
.corporate-site .footer-bottom a {
  min-height:44px;
  display:inline-flex;
  align-items:center
}
.corporate-site .back-top {
  background:var(--art-paper);
  border:1px solid var(--art-line);
  color:var(--art-ink);
  width:44px;
  height:44px;
  border-radius:50%;
  box-shadow:0 4px 20px rgb(23 60 48 / .04)
}
.corporate-site .back-top:hover {
  background:var(--art-panel)
}
/* Retired chapter ornaments have no public display. Product model/category data stays meaningful. */
.corporate-site .nx-hero-topline,.corporate-site .nx-wordmark,.corporate-site .nx-eyebrow,.corporate-site .simple-eyebrow,.corporate-site .nx-section-note,.corporate-site .nx-section-heading,.corporate-site .nx-tile-number,.corporate-site .nx-company-bottom,.corporate-site .simple-next-screen {
  display:none!important
}
@media(min-width:1800px) {
  .art-stage-hero .art-stage-copy {
    max-width:680px
  }
  .art-stage-hero .art-stage-copy h1 {
    font-size:74px
  }
  .art-stage-hero .art-stage-copy>p {
    font-size:21px
  }
  .art-stage-inner {
    padding-block:100px 120px
  }
}
@media(max-width:1100px) {
  :root {
    --art-header:76px
  }
  .corporate-site .header-inner {
    width:calc(100% - 40px);
    gap:18px
  }
  .corporate-site .brand-name strong {
    font-size:22px
  }
  .corporate-site .brand>img {
    width:44px;
    height:44px
  }
  .corporate-site .menu-toggle {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column
  }
  .corporate-site .main-nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    height:auto;
    max-height:calc(100svh - var(--art-header));
    padding:16px 28px 25px;
    background:var(--art-paper);
    color:var(--art-ink);
    border-bottom:1px solid var(--art-line);
    overflow:auto;
    flex-direction:column;
    gap:0;
    align-items:stretch;
    box-shadow:0 16px 30px rgb(23 60 48 / .06)
  }
  .corporate-site .main-nav.is-open {
    display:flex
  }
  .corporate-site .main-nav .nav-link {
    height:54px;
    font-size:16px
  }
  .corporate-site .main-nav .nav-link:after {
    bottom:8px;
    right:auto;
    width:28px
  }
  .corporate-site .nav-expand {
    display:grid;
    width:44px;
    height:44px;
    place-items:center;
    background:transparent;
    border:0;
    color:var(--art-ink)
  }
  .corporate-site .nav-children {
    position:static;
    box-shadow:none;
    min-width:100%;
    padding:6px 0;
    margin-bottom:10px;
    border:0;
    border-left:1px solid var(--art-line);
    background:transparent
  }
  .corporate-site .header-actions .search-toggle {
    display:grid
  }
  .art-stage {
    min-height:620px
  }
  .art-stage-hero {
    min-height:calc(90svh - var(--art-header))
  }
  .art-stage-copy {
    max-width:54%
  }
  .art-stage-copy h1 {
    font-size:50px
  }
  .art-stage-copy h2 {
    font-size:38px
  }
  .art-stage-copy>p {
    font-size:16px
  }
  .art-stage-hero .art-stage-copy>p {
    font-size:18px
  }
  .art-wash {
    background:linear-gradient(90deg,var(--art-wash-near) 0%,var(--art-wash-mid) 30%,var(--art-wash-light) 70%,var(--art-wash-clear) 100%)
  }
  .corporate-site .product-grid {
    gap:32px 24px
  }
  .corporate-site .product-meta h3 {
    font-size:20px
  }
  .corporate-site .detail-copy h1 {
    font-size:34px
  }
  .corporate-site .footer-main {
    gap:30px
  }
  .corporate-site .site-footer address>a {
    font-size:16px
  }
  .art-stage#about-introduction .art-stage-copy {
    max-width:58%
  }
  .art-stage#about-introduction .art-stage-copy>p {
    font-size:15px
  }
}
@media(max-width:768px) {
  :root {
    --art-header:72px;
    --art-space:24px
  }
  .art-stage-hero {
    min-height:calc(90svh - var(--art-header))
  }
  .art-stage {
    min-height:650px;
    justify-content:flex-start;
    padding-top:0
  }
  .art-stage-copy {
    max-width:70%
  }
  .art-stage-copy h1 {
    font-size:43px
  }
  .art-stage-copy h2 {
    font-size:34px
  }
  .art-stage-inner {
    padding-block:70px 160px
  }
  .art-wash {
    background:linear-gradient(90deg,var(--art-wash-near) 0%,var(--art-wash-mid) 25%,var(--art-wash-light) 95%)
  }
  .art-stage-bottom {
    padding-bottom:25px;
    margin-top:auto
  }
  .art-stage-bottom .art-caption {
    display:none
  }
  .art-photo img {
    object-position:66% center
  }
  .corporate-site .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 20px
  }
  .art-section-title {
    margin-bottom:32px
  }
  .art-section-title h2 {
    font-size:32px
  }
  .art-section-title>p {
    font-size:16px
  }
  .art-category-row {
    gap:10px 24px;
    margin-bottom:32px
  }
  .art-category-row a {
    font-size:13px;
    gap:14px
  }
  .art-stage#about-introduction .art-stage-copy {
    max-width:76%
  }
  .art-stage#about-introduction {
    min-height:750px
  }
  .art-stage#about-introduction .art-stage-inner {
    padding-block:48px 60px
  }
  .art-stage#about-introduction .art-stage-copy>p {
    font-size:16px
  }
  .art-team-photo img {
    aspect-ratio:auto;
    height:auto
  }
  .corporate-site .footer-main {
    grid-template-columns:1fr 1fr
  }
  .corporate-site .footer-company {
    grid-column:1/-1
  }
  .corporate-site .inner-banner {
    min-height:220px;
    padding-block:48px 30px
  }
  .corporate-site .inner-banner h1 {
    font-size:38px
  }
  .corporate-site .detail-copy h1 {
    font-size:32px
  }
  .corporate-site .catalog-section {
    padding-top:28px
  }
  .corporate-site .detail-grid {
    gap:35px
  }
  .corporate-site .section-heading h2 {
    font-size:32px
  }
  .simple-photo-slides {
    aspect-ratio:4/3
  }
  .art-workshop-title {
    padding-top:25px
  }
  .art-page-title {
    padding-top:40px;
    padding-bottom:20px
  }
  .art-page-title h1 {
    font-size:34px
  }
}
@media(max-width:540px) {
  :root {
    --art-space:20px;
    --art-header:70px
  }
  .corporate-site .header-inner {
    width:calc(100% - 28px);
    gap:12px
  }
  .corporate-site .brand {
    gap:9px
  }
  .corporate-site .brand>img {
    width:40px;
    height:40px
  }
  .corporate-site .brand-name strong,.corporate-site.home-page .site-header .brand-name strong {
    font-size:19px;
    letter-spacing:0
  }
  .corporate-site .brand-name small {
    font-size:9px
  }
  .header-actions {
    gap:6px
  }
  .corporate-site .lang-switch {
    font-size:12px;
    min-width:40px;
    padding-inline:8px
  }
  .corporate-site .header-actions .search-toggle {
    display:none
  }
  .corporate-site .icon-button {
    width:40px;
    min-width:40px;
    padding:8px
  }
  .corporate-site .section {
    padding-block:58px
  }
  .art-stage {
    min-height:640px
  }
  .art-stage-hero {
    min-height:calc(92svh - var(--art-header))
  }
  .art-stage-inner {
    padding-top:52px;
    padding-bottom:200px
  }
  .art-stage-copy {
    max-width:100%
  }
  .art-stage-copy h1 {
    font-size:39px;
    line-height:1.25;
    max-width:10.5em;
    letter-spacing:-.045em;
    margin-bottom:22px
  }
  .art-stage-copy h2 {
    font-size:31px;
    max-width:15ch;
    line-height:1.35
  }
  .art-stage-copy>p,.art-stage-hero .art-stage-copy>p {
    font-size:16px;
    max-width:32ch
  }
  .art-stage-copy>.button {
    margin-top:10px
  }
  .art-wash {
    background:linear-gradient(180deg,var(--art-wash-near) 0%,var(--art-wash-mid) 34%,var(--art-wash-light) 78%,var(--art-wash-clear) 100%)
  }
  .art-photo img {
    object-position:68% center
  }
  .art-stage:after {
    background:linear-gradient(180deg,var(--art-paper) 0%,var(--art-wash-clear) 16%,var(--art-wash-clear) 85%,var(--art-paper) 100%)
  }
  .art-stage-controls {
    gap:10px
  }
  .art-stage-bottom {
    padding-bottom:22px
  }
  .art-photo-count {
    font-size:11px
  }
  .art-stage-controls>button {
    height:44px;
    width:44px
  }
  .corporate-site .button {
    padding:13px 22px;
    min-height:50px;
    font-size:14px
  }
  .art-section-title h2 {
    font-size:29px;
    line-height:1.35
  }
  .art-section-title>p {
    font-size:15px
  }
  .art-category-row {
    gap:6px 20px;
    justify-content:flex-start
  }
  .art-category-row a {
    font-size:12px;
    gap:10px
  }
  .corporate-site .product-grid {
    grid-template-columns:1fr;
    gap:36px
  }
  .corporate-site .product-meta {
    padding-top:18px
  }
  .corporate-site .product-meta h3 {
    font-size:22px
  }
  .art-stage#home-company-panel .art-stage-inner {
    padding-bottom:230px
  }
  .art-stage#about-introduction {
    min-height:0
  }
  .art-stage#about-introduction .art-stage-copy {
    max-width:100%
  }
  .art-stage#about-introduction .art-stage-inner {
    padding-top:35px;
    padding-bottom:200px
  }
  .art-stage#about-introduction .art-wash {
    background:linear-gradient(180deg,var(--art-wash-near) 0%,var(--art-wash-mid) 65%,var(--art-wash-light) 100%)
  }
  .art-stage#about-introduction .art-stage-copy h2 {
    font-size:29px;
    max-width:none
  }
  .art-stage#about-introduction .art-stage-copy>p {
    font-size:15px;
    line-height:1.9;
    max-width:none
  }
  .art-page-title h1 {
    font-size:29px;
    max-width:15ch
  }
  .art-team-photo {
    border-radius:3px
  }
  .simple-photo-slides {
    aspect-ratio:4/3
  }
  .simple-photo-slides figcaption {
    left:10px;
    bottom:10px;
    font-size:11px
  }
  .art-stage#about-workshop {
    min-height:570px
  }
  .art-stage#about-workshop .art-stage-copy>p {
    font-size:17px;
    max-width:31ch
  }
  .art-stage#about-workshop .art-stage-inner {
    padding-block:45px 170px
  }
  .corporate-site .inner-banner h1 {
    font-size:35px
  }
  .corporate-site .inner-banner p {
    font-size:15px
  }
  .corporate-site .category-sidebar {
    gap:8px 22px
  }
  .corporate-site .category-sidebar a {
    font-size:13px
  }
  .corporate-site .detail-copy h1 {
    font-size:32px
  }
  .corporate-site .detail-thumbnails {
    gap:8px
  }
  .corporate-site .detail-thumbnails button {
    min-width:58px
  }
  .corporate-site .footer-main {
    grid-template-columns:1fr;
    gap:25px
  }
  .corporate-site .footer-nav {
    display:flex;
    flex-wrap:wrap;
    gap:8px 22px;
    flex-direction:row
  }
  .corporate-site .footer-company {
    grid-column:auto
  }
  .corporate-site .footer-company h2 {
    font-size:16px
  }
  .corporate-site .footer-main address>a {
    font-size:17px
  }
  .corporate-site .footer-bottom {
    align-items:flex-start;
    gap:12px;
    padding-block:20px
  }
  .corporate-site .site-footer {
    padding-top:40px
  }
  .corporate-site .back-top {
    right:12px;
    bottom:15px
  }
  .corporate-site .pd-summary .detail-actions {
    gap:14px
  }
  .corporate-site .product-section-nav .container {
    gap:24px
  }
}
.corporate-site .product-detail-section {
  padding-block:48px 70px
}
.corporate-site .gallery-arrow {
  background:transparent;
  border:1px solid var(--art-line);
  border-radius:4px;
  color:var(--art-ink);
  min-height:46px;
  transition:background-color 180ms,border-color 180ms
}
.corporate-site .gallery-arrow:hover {
  background:var(--art-panel);
  border-color:var(--art-ink)
}
.corporate-site input[type=checkbox],.corporate-site input[type=radio] {
  width:20px;
  height:20px;
  min-height:20px;
  flex-shrink:0;
  accent-color:var(--art-ink)
}
.corporate-site .pd-zoom {
  background:var(--art-paper);
  border-color:var(--art-line);
  color:var(--art-ink)
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
  }
  .art-stage [data-art-reveal] {
    opacity:1!important;
    transform:none!important;
    visibility:visible!important
  }
}
@media(min-width:1101px) and (max-width:1200px) {
  .corporate-site .menu-toggle {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column
  }
  .corporate-site .main-nav {
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    height:auto;
    max-height:calc(100svh - var(--art-header));
    padding:16px 28px 25px;
    background:var(--art-paper);
    overflow:auto;
    flex-direction:column;
    gap:0;
    align-items:stretch;
    border-bottom:1px solid var(--art-line)
  }
  .corporate-site .main-nav.is-open {
    display:flex
  }
  .corporate-site .main-nav .nav-link {
    height:54px
  }
  .corporate-site .nav-expand {
    display:grid;
    width:52px;
    height:44px;
    place-items:center
  }
  .corporate-site .nav-children {
    position:static;
    box-shadow:none;
    border:0;
    border-left:1px solid var(--art-line);
    background:transparent
  }
}
.corporate-site .nav-expand span,.corporate-site .is-expanded .nav-expand span {
  transform:none;
  font-size:12px;
  font-weight:500
}
.corporate-site .nav-expand {
  min-width:44px
}
.corporate-site .nav-parent {
  justify-content:space-between
}
@media(min-width:360px) and (max-width:540px) {
  .corporate-site .header-actions .search-toggle {
    display:grid
  }
}
@media(prefers-contrast:more) {
  :root {
    --art-copy:#263d30;
    --art-muted:#3d5143;
    --art-line:#89988b;
    --art-wash-light:rgb(247 248 243 / .75)
  }
  .art-wash {
    opacity:1
  }
  .corporate-site .button {
    border-width:2px
  }
}
