/* source: site-button-theme.css */
/* Match the supplied SPICA pill button across primary actions site-wide. */
:where(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  input[type="submit"],
  button[type="submit"],
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
) {
  position: relative;
  display: inline-flex !important;
  min-height: 40px !important;
  align-items: center;
  justify-content: center;
  padding: 10px 42px !important;
  overflow: visible;
  border: 1px solid rgba(23, 26, 24, .18) !important;
  border-radius: 999px !important;
  outline: none !important;
  color: #171a18 !important;
  background: #fff !important;
  box-shadow: none !important;
  font-family: Outfit, Arial, sans-serif;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.15;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: normal;
  cursor: pointer;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

:is(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  input[type="submit"],
  button[type="submit"],
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
) {
  padding: 10px 42px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

:where(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  button[type="submit"],
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
)::after {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  content: "";
  box-shadow: 0 0 0 2px #222;
  z-index: 1;
  pointer-events: none;
}

:where(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  button[type="submit"],
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
):is(:hover, :focus-visible) {
  color: #171a18 !important;
  background: #f1f2ef !important;
  transform: translateY(-1px);
}

:where(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  button[type="submit"],
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
):is(:hover, :focus-visible)::after {
  background: #f1f2ef;
}

:where(
  a.btn:not(.btn-filter),
  button.btn:not(.btn-filter):not(#mobileMenuBtn),
  .btn-premium,
  .btn-outline-premium,
  .action:not(.text-link),
  .brand-button,
  .home-primary-action,
  .home-secondary-action,
  .home-closing > a,
  .editorial-hero-top > a,
  .editorial-hero-bottom .editorial-hero-link,
  .editorial-closing > a,
  .projects-closing > a,
  .showroom-card__button,
  .healthcare-enquiry-actions > a
) :is(i, svg, [aria-hidden="true"]) {
  display: none !important;
}

:where(a.btn:not(.btn-filter), button.btn:not(.btn-filter):not(#mobileMenuBtn), .btn-premium, .brand-button, .home-primary-action, .home-secondary-action):focus-visible {
  outline: 2px solid #f5a27d !important;
  outline-offset: 4px;
}

:where(button.btn:not(.btn-filter):not(#mobileMenuBtn), button[type="submit"]):disabled {
  cursor: not-allowed;
  opacity: .65;
}

@media (prefers-reduced-motion: reduce) {
  :where(a.btn:not(.btn-filter), button.btn:not(.btn-filter):not(#mobileMenuBtn), .btn-premium, .brand-button, .home-primary-action, .home-secondary-action) {
    transition: none;
  }
}

/* Keep homepage hero CTAs close to Sunon's compact 216 × 40 reference pill. */
.home-hero-actions > :is(.home-primary-action, .home-secondary-action) {
  width: 216px !important;
  max-width: 100%;
  min-height: 40px !important;
  box-sizing: border-box;
  justify-content: center !important;
  gap: 0 !important;
}

/* Hero image actions use the white treatment shown on the home page. */
:is(.home-editorial .home-video-hero,.products-page .products-hero,.category-page .products-hero,.brand-landing .brand-sector-hero,.company-editorial .editorial-hero,.showroom-page .showroom-hero,.contact-page .contact-hero) :is(.brand-button,.home-primary-action,.home-secondary-action,.editorial-hero-top > a,.editorial-hero-bottom .editorial-hero-link,.contact-hero-link,.showroom-pill,.products-hero-top > a) {
  color: #171a18 !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
}
:is(.home-editorial .home-video-hero,.products-page .products-hero,.category-page .products-hero,.brand-landing .brand-sector-hero,.company-editorial .editorial-hero,.showroom-page .showroom-hero,.contact-page .contact-hero) :is(.brand-button,.home-primary-action,.home-secondary-action,.editorial-hero-top > a,.editorial-hero-bottom .editorial-hero-link,.contact-hero-link,.showroom-pill,.products-hero-top > a)::after {
  background: #fff !important;
  box-shadow: 0 0 0 2px #222 !important;
}
:is(.home-editorial .home-video-hero,.products-page .products-hero,.category-page .products-hero,.brand-landing .brand-sector-hero,.company-editorial .editorial-hero,.showroom-page .showroom-hero,.contact-page .contact-hero) :is(.brand-button,.home-primary-action,.home-secondary-action,.editorial-hero-top > a,.editorial-hero-bottom .editorial-hero-link,.contact-hero-link,.showroom-pill,.products-hero-top > a):is(:hover,:focus-visible) {
  color: #171a18 !important;
  background: #f1f2ef !important;
}

/* Product archive hero CTA keeps the shared pill style over photography. */
:is(.products-page, .category-page) .products-hero-top > a {
  position: relative;
  display: inline-flex !important;
  min-height: 40px !important;
  align-items: center;
  justify-content: center;
  padding: 10px 42px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #171a18 !important;
  background: #fff !important;
  border: 1px solid rgba(23, 26, 24, .18) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

:is(.products-page, .category-page) .products-hero-top > a::after {
  position: absolute;
  display: block;
  top: -4px;
  right: -4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 2px #222;
  opacity: 1 !important;
  content: "";
}

/* Requested black pill treatment for the header quote CTA and home project CTA. */
.navbar-custom a.btn-premium,
.home-editorial .client-proof-link a.btn-premium {
  color: #fff !important;
  background: #171a18 !important;
  border: 0 !important;
  border-radius: 999px !important;
}
.navbar-custom a.btn-premium::after,
.home-editorial .client-proof-link a.btn-premium::after {
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #fff !important;
}
.navbar-custom a.btn-premium:is(:hover,:focus-visible),
.home-editorial .client-proof-link a.btn-premium:is(:hover,:focus-visible) {
  color: #fff !important;
  background: #303330 !important;
}

/* Keep the three solution enquiry actions equal in size and black. */
.brand-landing .healthcare-enquiry-actions > a {
  display:inline-flex !important;
  width:min(100%,240px) !important;
  min-height:50px !important;
  justify-content:center !important;
  padding:10px 24px !important;
  border:0 !important;
  border-radius:999px !important;
  color:#fff !important;
  background:#171a18 !important;
}
.brand-landing .healthcare-enquiry-actions > a::after {
  background:#171a18 !important;
  box-shadow:0 0 0 2px #fff !important;
}
.brand-landing .healthcare-enquiry-actions > a:is(:hover,:focus-visible) {
  color:#fff !important;
  background:#303330 !important;
}


/* Restore the round end marker on the three black solution contact pills. */
.brand-landing .healthcare-enquiry-actions > a { position:relative !important; overflow:visible !important; }
.brand-landing .healthcare-enquiry-actions > a::after { content:'' !important; display:block !important; position:absolute !important; top:-4px !important; right:-4px !important; width:20px !important; height:20px !important; border-radius:50% !important; background:#171a18 !important; box-shadow:0 0 0 2px #fff !important; z-index:3 !important; pointer-events:none !important; }

/* WhatsApp enquiry CTA: retain the shared pill and circle, with the requested black fill. */
.contact-page .contact-submit {
  position: relative !important;
  min-height: 50px !important;
  padding: 10px 34px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: #171a18 !important;
  font-family: Outfit, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}
.contact-page .contact-submit::after {
  position: absolute !important;
  top: -4px !important;
  left: auto !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #fff !important;
  content: "" !important;
  pointer-events: none !important;
}
.contact-page .contact-submit:is(:hover, :focus-visible) {
  color: #fff !important;
  background: #303330 !important;
}
.contact-page .contact-submit:is(:hover, :focus-visible)::after { background: #171a18 !important; }

/* Make the right-edge round marker explicit on the journal hero button. */
.spica-journal .journal-hero .editorial-hero-top > a { position: relative !important; overflow: visible !important; }
.spica-journal .journal-hero .editorial-hero-top > a::after {
  position: absolute !important;
  top: -4px !important;
  left: auto !important;
  right: -4px !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 0 0 2px #222 !important;
  content: "" !important;
  pointer-events: none !important;
}


/* Keep the round corner marker consistent on every prominent action button. */
.contact-page .contact-details > div > a {
  position: relative !important;
  overflow: visible !important;
}
.contact-page .contact-details > div > a::after {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #fff !important;
  content: "" !important;
  pointer-events: none !important;
}
.contact-page .contact-details > div > a:is(:hover, :focus-visible)::after {
  background: var(--spica-accent, #ed4b16) !important;
}

/* Match the showroom floor-tour action to the same 20px corner detail. */
.showroom-page .showroom-3d-button::after {
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
}


/* Every sector enquiry action gets the same round corner marker. */
.brand-landing .healthcare-enquiry-actions > a::after {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #f5f4f0 !important;
  content: "" !important;
  z-index: 3 !important;
  pointer-events: none !important;
}


/* Pin the corner roundel to the homepage closing CTA, even across legacy cascade rules. */
.home-editorial .home-closing > a {
  position: relative !important;
  overflow: visible !important;
}
.home-editorial .home-closing > a::after {
  display: block !important;
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 0 0 2px #222 !important;
  content: "" !important;
  z-index: 3 !important;
  pointer-events: none !important;
}

/* Product collection links use the site's pill button with the right-corner roundel. */
.products-page .products-collection-copy > .products-text-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 48px 0 22px !important;
  border: 1px solid #171a18 !important;
  border-radius: 999px !important;
  background: #171a18 !important;
  color: #fff !important;
  text-decoration: none !important;
  text-underline-offset: 0 !important;
  overflow: visible !important;
}
.products-page .products-collection-copy > .products-text-link::after {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #fff !important;
  content: "" !important;
  pointer-events: none !important;
}
.products-page .products-collection-copy > .products-text-link:is(:hover, :focus-visible) {
  border-color: #171a18 !important;
  background: #171a18 !important;
  color: #fff !important;
}
.products-page .products-collection-copy > .products-text-link:is(:hover, :focus-visible)::after {
  background: #171a18 !important;
  box-shadow: 0 0 0 2px #fff !important;
}


/* source: site-identity.css */
/* Shared Sunon by SPICA palette and image corner system. */
:root {
  --spica-accent: #a5360a;
  --spica-accent-hover: #842d0b;
  --spica-ink: #171a18;
  --spica-paper: #fff;
  --spica-ground: #f3f4f2;
  --spica-muted: #555b57;
  --spica-border: #dedfdb;
  --spica-card-radius: 28px;
  --spica-image-radius: 28px;

  --primary: var(--spica-accent);
  --primary-hover: var(--spica-accent-hover);
  --dark: var(--spica-ink);
  --light-gray: var(--spica-ground);
  --gray-text: var(--spica-muted);
  --border-color: var(--spica-border);
  --brand-paper: var(--spica-ground);
  --brand-ink: var(--spica-ink);
  --brand-soft: #e8e9e6;
  --brand-accent: var(--spica-accent);
}

body {
  color: var(--spica-ink);
  background: var(--spica-paper);
  font-family: Outfit, Arial, sans-serif;
}
.footer-studio p a.footer-credit,.footer-studio p a.footer-credit:hover{color:inherit;font:inherit;letter-spacing:inherit;text-decoration:none}
.footer-studio p a.footer-credit::after{display:none}

/* One typographic and image rhythm across the current page families. */
:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page){font-family:Outfit,Arial,sans-serif;color:var(--spica-ink)}
:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page) :is(h1,h2,h3){font-family:Outfit,Arial,sans-serif;text-wrap:balance}
:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page) :is(p,figcaption){text-wrap:pretty}
:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page) img{max-width:100%}
.company-editorial .about-showroom img{display:block;width:100%;height:auto!important;aspect-ratio:1.35;object-fit:cover}
.category-page .category-item-image img,.products-page .products-collection-image img,.products-page .products-seating-image img{display:block;width:100%;height:100%;object-position:center;}
.category-page .category-item-offset{margin-top:0}
.category-page .category-item-grid{align-items:stretch;gap:clamp(34px,4vw,62px) clamp(20px,3vw,44px)}
.category-page .category-item-image{aspect-ratio:1.32;background:#eef0ed}
.category-page.is-chair .category-item-image{aspect-ratio:1.18;background:#eef0ed}
.category-page.is-chair .category-item-image img[src*="sunon-chair-"]{object-fit:contain;padding:8%;background:transparent}
.category-page .category-item-image img[src*="sunon-up"]{object-fit:contain;padding:3%;background:#fff}
.category-page .category-item-copy{padding-top:18px}
.category-page .category-item-copy h3{font-size:clamp(22px,2.1vw,29px)}
.products-page .products-collection-image,.products-page .products-seating-image{background:#eef0ed}
.products-page .products-collection-image img[src*="sunon-chair-"]{object-fit:contain;padding:6%;background:transparent}
.products-page .products-seating-image img[src*="sunon-chair-"]{object-fit:contain;padding:8%;background:transparent}
.showroom-page{--showroom-ink:var(--spica-ink);--showroom-muted:var(--spica-muted);--showroom-ground:var(--spica-ground);--showroom-accent:var(--spica-accent)}
:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page) :is(a,button):active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){.category-motion .category-reveal,.products-motion .products-reveal{opacity:1!important;transform:none!important}}

:is(.home-editorial, .company-editorial) {
  --home-accent: var(--spica-accent);
  --home-ground: var(--spica-ground);
  --home-ink: var(--spica-ink);
  --home-muted: var(--spica-muted);
  --editorial-ink: var(--spica-ink);
  --editorial-paper: var(--spica-paper);
  --editorial-ground: var(--spica-ground);
  --editorial-muted: var(--spica-muted);
  --editorial-accent: var(--spica-accent);
}

:is(.brand-home, .brand-landing) {
  --brand-paper: var(--spica-ground);
  --brand-ink: var(--spica-ink);
  --brand-soft: #e8e9e6;
  --brand-accent: var(--spica-accent);
}

.products-page {
  --products-ink: var(--spica-ink);
  --products-paper: var(--spica-paper);
  --products-ground: var(--spica-ground);
  --products-accent: var(--spica-accent);
}

.category-page {
  --category-ink: var(--spica-ink);
  --category-paper: var(--spica-paper);
  --category-wash: var(--spica-ground);
  --category-orange: var(--spica-accent);
}

.home-editorial :is(.home-video-hero, .home-hero-media) {
  background-color: var(--spica-ink);
}

.home-editorial .home-hero-media::after {
  background: linear-gradient(90deg, rgba(15,17,16,.73), rgba(15,17,16,.22) 75%),
    linear-gradient(0deg, rgba(15,17,16,.72), rgba(15,17,16,.03) 72%);
}

.brand-landing #collections,
.brand-landing[data-solution="education"] #collections,
.brand-landing[data-solution="office-furniture"] #collections,
.spica-journey,
.experience-wrap {
  background: var(--spica-ground) !important;
}

.brand-landing #collections .brand-collection,
.brand-landing[data-solution="education"] #collections .brand-collection {
  border-color: var(--spica-border) !important;
}

:is(.home-editorial, .company-editorial, .brand-home, .brand-landing, .products-page, .category-page, .solution-page) :is(
  .editorial-kicker,
  .about-sector > span,
  .about-sector b,
  .journal-card-meta > span,
  .journal-related-card > p,
  .project-category-pill,
  .project-location i,
  .brand-text-link,
  .category-eyebrow,
  .category-all span,
  .category-tabs a[aria-current="page"]::after,
  .solution-card > span
) {
  color: var(--spica-accent) !important;
}

.spica-journey {
  color: var(--spica-ink) !important;
}

.spica-journey :is(.spica-journey-kicker, .spica-journey-range, .spica-journey-entry time, .spica-journey-entry:last-child h3) {
  color: var(--spica-accent) !important;
}

.spica-journey-entry > div::before {
  background: var(--spica-accent) !important;
}

.spica-journey-entry > div {
  border-color: var(--spica-border) !important;
}

.spica-journey-entry:last-child > div {
  border-image: linear-gradient(var(--spica-accent), transparent) 1;
}

.experience-kicker,
.experience-story-number strong,
.experience-editorial a:focus-visible {
  color: var(--spica-accent);
}
.experience-editorial a:focus-visible { outline-color: var(--spica-accent) !important; }

:is(.home-editorial, .company-editorial, .brand-home, .brand-landing, .products-page, .category-page, .solution-page) :focus-visible {
  outline-color: var(--spica-accent) !important;
}

.home-editorial :is(.home-sector, .home-collection, .home-story-image),
.company-editorial :is(.editorial-hero, .about-sector img, .about-showroom img, .simple-slider__slider, .journal-card-image, .journal-related-card img, .journal-article-image),
.products-page :is(.products-hero, .products-collection-image, .products-seating-image, .products-space img),
.category-page :is(.products-hero, .category-hero-visual, .category-card-image, .category-product-image),
.brand-home :is(.brand-home-hero, .brand-home-solutions img, .brand-showroom img),
.brand-landing :is(.brand-sector-hero, .brand-home-solutions img, .brand-collection img, .brand-gallery img, .healthcare-fold-view img),
.solution-page :is(.solution-hero img, .solution-card img, .solution-gallery img),
.showroom-card__img-container {
  overflow: hidden;
  border-radius: var(--spica-card-radius) !important;
}

.home-editorial .home-video-hero,
.company-editorial .editorial-hero,
.products-page .products-hero,
.category-page .products-hero,
.brand-landing .brand-sector-hero,
.brand-home .brand-home-hero,
.people-hero {
  overflow: hidden;
  border-radius: var(--spica-card-radius) !important;
}

:is(.home-editorial, .company-editorial, .brand-home, .brand-landing, .products-page, .category-page, .solution-page) :is(
  .home-sector img,
  .home-collection img,
  .home-story-image img,
  .about-sector img,
  .about-showroom img,
  .simple-slider__slider,
  .journal-card-image img,
  .journal-related-card img,
  .journal-article-image,
  .products-collection-image img,
  .products-seating-image img,
  .products-space img,
  .category-hero-visual img,
  .category-card-image img,
  .category-product-image img,
  .brand-home-solutions img,
  .brand-showroom img,
  .brand-collection img,
  .brand-gallery img,
  .healthcare-fold-view img,
  .solution-hero img,
  .solution-card img,
  .solution-gallery img,
  .showroom-card__img
) {
  border-radius: var(--spica-image-radius) !important;
}

@media (max-width: 740px) {
  :root {
    --spica-card-radius: 22px;
    --spica-image-radius: 22px;
  }
}

/* Match hero heading scale across the site, including the healthcare headline. */
.home-editorial .home-hero h1,
.company-editorial .editorial-hero h1,
.products-page .products-hero h1,
.category-page .category-hero.products-hero h1,
.brand-landing .brand-sector-copy h1,
.showroom-page .showroom-hero h1,
.contact-page .contact-hero h1 {
  font-family: Outfit, Arial, sans-serif !important;
  font-size: clamp(48px, 5.4vw, 82px) !important;
  font-weight: 650 !important;
  line-height: 1.03 !important;
  letter-spacing: -.052em !important;
  max-width: 16ch;
}

@media (max-width: 740px) {
  .home-editorial .home-hero h1,
  .company-editorial .editorial-hero h1,
  .products-page .products-hero h1,
  .category-page .category-hero.products-hero h1,
  .brand-landing .brand-sector-copy h1,
  .showroom-page .showroom-hero h1,
  .contact-page .contact-hero h1 {
    font-size: clamp(40px, 10vw, 58px) !important;
    line-height: 1.06 !important;
    max-width: 13ch;
  }
}

/* Keep contact details and navigation links visually consistent site-wide. */
body a,
body a:hover,
body a:focus-visible {
  text-decoration: none !important;
}
.showroom-page .showroom-visit-details address,
.contact-page .contact-details address {
  font-family: Outfit, Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.75;
}
.showroom-page .showroom-contact-links strong,
.showroom-page .showroom-tour-links a {
  font-family: Outfit, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
}

/* Legacy theme draws an underline as an ::after element on hovered links. */
body a:not([class])::after,
body .link::after,
.showroom-page :is(.showroom-tour-links a,.showroom-text-link,.showroom-outreach a)::after,
.contact-page :is(.contact-heading a,.contact-details a)::after {
  content: none !important;
  display: none !important;
}

/* White hero pills and corner dots match the supplied button reference. */
.home-editorial .home-hero-actions > :is(.home-primary-action,.home-secondary-action) {
  color: var(--spica-ink) !important;
  background: #fff !important;
}
.home-editorial .home-hero-actions > :is(.home-primary-action,.home-secondary-action)::after {
  top: -4px !important;
  right: -4px !important;
  width: 20px !important;
  height: 20px !important;
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(18,21,19,.9) !important;
}
.home-editorial .home-hero-actions > :is(.home-primary-action,.home-secondary-action):is(:hover,:focus-visible) {
  color: var(--spica-ink) !important;
  background: #f1f2ef !important;
}
.home-editorial .home-hero-actions > :is(.home-primary-action,.home-secondary-action):is(:hover,:focus-visible)::after {
  background: #f1f2ef !important;
}

/* Give the video hero a touch more presence than the other page titles. */
.home-editorial .home-video-hero h1 {
  font-size: clamp(51px, 5.8vw, 88px) !important;
}
.home-editorial :is(.home-story-copy > p:not(.editorial-kicker),.home-section-heading > p,.home-sector-description,.home-faq p),
.company-editorial :is(.about-introduction > p,.about-sector p,.about-showroom p,.journal-card p,.journal-article-page p),
.products-page :is(.products-intro > p,.products-collection-copy > p,.products-seating-copy > p,.products-space p),
.category-page :is(.category-intro,.category-section-heading > p,.category-item-copy > div > p),
.solution-page :is(.solution-intro,.solution-card p,.solution-gallery figcaption),
.showroom-page :is(.showroom-lede,.showroom-visit-details p,.showroom-gallery figcaption),
.contact-page :is(.contact-intro,.contact-details > div > p),
.spica-projects :is(.project-location,.project-summary),
.text-muted,.text-secondary,.text-body-secondary { color: var(--spica-muted) !important; }
.footer-studio .container > .row p { color: rgba(255,255,255,.72) !important; }
@media (max-width: 740px) {
  .home-editorial .home-video-hero h1 {
    font-size: clamp(45px, 7.5vw, 58px) !important;
  }
}



/* source: logo-orange-accent.css */
/* Use the SPICA logo orange consistently for accent copy across page families. */
:root {
  --spica-accent: #f24a00;
  --spica-accent-hover: #d94200;
  --primary: var(--spica-accent);
  --primary-hover: var(--spica-accent-hover);
  --brand-accent: var(--spica-accent);
  --editorial-accent: var(--spica-accent);
  --home-accent: var(--spica-accent);
  --products-accent: var(--spica-accent);
  --category-orange: var(--spica-accent);
  --solution-accent: var(--spica-accent);
  --showroom-accent: var(--spica-accent);
  --contact-accent: var(--spica-accent);
}

:is(.home-editorial,.company-editorial,.brand-home,.brand-landing,.products-page,.category-page,.solution-page,.showroom-page,.contact-page) {
  --home-accent: var(--spica-accent);
  --editorial-accent: var(--spica-accent);
  --brand-accent: var(--spica-accent);
  --products-accent: var(--spica-accent);
  --category-orange: var(--spica-accent);
  --solution-accent: var(--spica-accent);
  --showroom-accent: var(--spica-accent);
  --contact-accent: var(--spica-accent);
}

:is(.company-editorial, .home-editorial, .brand-home, .brand-landing, .products-page, .category-page, .solution-page, .showroom-page, .contact-page) :is(
  .editorial-kicker,
  .about-intro-copy a,
  .about-sector > span,
  .about-sector b,
  .about-showroom a,
  .about-careers a,
  .journal-card-meta > span,
  .journal-card-copy > p,
  .journal-read-link,
  .journal-back-link,
  .journal-article-copy a,
  .journal-related-card > p,
  .journal-article-footer a,
  .journal-not-found a,
  .project-category-pill,
  .project-location i,
  .category-eyebrow,
  .category-next-links span,
  .products-kicker,
  .brand-text-link,
  .contact-eyebrow,
  .contact-heading a,
  .contact-details address a,
  .solution-card > span,
  .solution-support a,
  .solution-link:hover,
  .solution-link[aria-current="page"],
  .showroom-visit .showroom-kicker,
  .showroom-contact-links a:hover strong,
  .showroom-tour-links a:hover,
  .showroom-directions-link:hover
) {
  color: var(--spica-accent) !important;
}

.company-editorial .about-sector b { border-color: var(--spica-accent) !important; }
.solution-page .btn-premium { background: var(--spica-accent) !important; }
.solution-page .btn-premium:hover { background: var(--spica-accent-hover) !important; }


/* source: site-motion.css */
@media (prefers-reduced-motion: no-preference) {
  .spica-motion-target {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
    transition: opacity .62s cubic-bezier(.2,.7,.2,1), transform .62s cubic-bezier(.2,.7,.2,1);
  }
  .spica-motion-target.is-visible { opacity: 1; transform: none; }
  :is(.home-editorial,.company-editorial,.brand-landing,.products-page,.category-page,.showroom-page,.contact-page) :is(.home-sector,.home-collection,.about-sector,.products-collection,.category-item,.journal-card,.products-space) img {
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .55s ease;
  }
  :is(.home-editorial,.company-editorial,.brand-landing,.products-page,.category-page,.showroom-page,.contact-page) :is(.home-sector,.home-collection,.about-sector,.products-collection,.category-item,.journal-card,.products-space):hover img {
    transform: scale(1.025);
  }
  :is(.home-editorial,.company-editorial,.brand-landing,.products-page,.category-page,.showroom-page,.contact-page) :is(a,button):active {
    transform: scale(.98);
    transition: transform .1s ease-out;
  }
  .showroom-page .showroom-gallery figure img,
  .contact-page .contact-hero-image img { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
  .showroom-page .showroom-gallery figure:hover img,
  .contact-page .contact-hero-image:hover img { transform: scale(1.018); }
}
@media (prefers-reduced-motion: reduce) {
  .spica-motion-target { opacity: 1 !important; transform: none !important; transition: none !important; }
  .whatsapp-float { animation: none !important; }
}

/* Lightweight stepped hero text reveal: preserves text layout and avoids per-letter nodes. */
@keyframes hero-typewriter-reveal { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0 0 0 0); } }
.hero-typewriter { clip-path: inset(0 100% 0 0); animation: hero-typewriter-reveal var(--hero-typewriter-duration, 500ms) steps(var(--hero-typewriter-steps, 24), end) var(--hero-typewriter-delay, 0ms) both; }
.hero-typewriter-inline { display: inline-block; max-width: 100%; white-space: normal; }
.hero-typewriter-complete .hero-typewriter { clip-path: inset(0) !important; animation: none !important; }
@media (prefers-reduced-motion: reduce) { .hero-typewriter { clip-path: inset(0) !important; animation: none !important; } }