/* FORMED VIP: isolated vector identity and accessible gold interaction layer.
   Load after existing page styles. No product imagery or scene geometry changes. */
:root {
  --vip-wordmark-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20290%2058%22%3E%3Cpath%20d%3D%22M15%2040V18H35M15%2028H30%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224.5%22%20stroke-linecap%3D%22square%22%20stroke-linejoin%3D%22miter%22%2F%3E%3Cpath%20d%3D%22M33%2038H37%22%20stroke%3D%22white%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M66.03%2039V18.12H78.558V21.519H69.429V26.861H76.818V30.259H69.429V39Z%20M90.878%2039.435Q87.749%2039.435%2085.518%2038.066Q83.286%2036.697%2082.097%2034.247Q80.908%2031.796%2080.908%2028.56Q80.908%2025.324%2082.097%2022.873Q83.286%2020.423%2085.518%2019.054Q87.749%2017.685%2090.878%2017.685Q94.007%2017.685%2096.239%2019.054Q98.47%2020.423%2099.659%2022.873Q100.848%2025.324%20100.848%2028.56Q100.848%2031.796%2099.659%2034.247Q98.47%2036.697%2096.239%2038.066Q94.007%2039.435%2090.878%2039.435ZM90.878%2036.222Q93.004%2036.245%2094.418%2035.289Q95.831%2034.334%2096.539%2032.6Q97.247%2030.866%2097.247%2028.56Q97.247%2026.254%2096.539%2024.542Q95.831%2022.83%2094.418%2021.875Q93.004%2020.921%2090.878%2020.898Q88.752%2020.875%2087.342%2021.829Q85.931%2022.783%2085.223%2024.519Q84.516%2026.254%2084.51%2028.56Q84.504%2030.866%2085.212%2032.577Q85.919%2034.288%2087.336%2035.243Q88.752%2036.199%2090.878%2036.222Z%20M104.645%2039V18.12H113.235Q113.54%2018.12%20114.015%2018.142Q114.491%2018.163%20114.894%2018.236Q116.692%2018.514%20117.871%2019.441Q119.05%2020.367%20119.623%2021.773Q120.195%2023.178%20120.195%2024.894Q120.195%2027.441%20118.908%2029.268Q117.62%2031.095%20114.975%2031.535L113.537%2031.669H108.044V39ZM116.681%2039%20112.563%2030.503%20116.019%2029.72%20120.543%2039ZM108.044%2028.479H113.096Q113.389%2028.479%20113.747%2028.45Q114.105%2028.421%20114.418%2028.34Q115.297%2028.119%20115.809%2027.562Q116.321%2027.006%20116.538%2026.294Q116.756%2025.582%20116.756%2024.894Q116.756%2024.207%20116.538%2023.495Q116.321%2022.783%20115.809%2022.226Q115.297%2021.67%20114.418%2021.449Q114.105%2021.365%20113.747%2021.338Q113.389%2021.31%20113.096%2021.31H108.044Z%20M124.627%2039V18.12H127.69L134.986%2033.09L142.265%2018.12H145.339V38.994H142.149V25.434L135.676%2039H134.29L127.817%2025.434V39Z%20M150.293%2039V18.12H163.749V21.31H153.692V26.605H162.009V29.795H153.692V35.81H163.749V39Z%20M168.129%2039V18.12H174.759Q175.031%2018.12%20175.812%2018.134Q176.592%2018.149%20177.311%2018.242Q179.79%2018.552%20181.497%2019.999Q183.204%2021.446%20184.082%2023.675Q184.961%2025.904%20184.961%2028.56Q184.961%2031.219%20184.082%2033.448Q183.204%2035.677%20181.497%2037.122Q179.79%2038.568%20177.311%2038.878Q176.595%2038.968%20175.81%2038.984Q175.026%2039%20174.759%2039ZM171.592%2035.787H174.759Q175.211%2035.787%20175.886%2035.761Q176.56%2035.735%20177.085%2035.636Q178.587%2035.346%20179.528%2034.298Q180.469%2033.249%20180.914%2031.74Q181.359%2030.23%20181.359%2028.56Q181.359%2026.832%20180.903%2025.322Q180.446%2023.813%20179.499%2022.788Q178.552%2021.762%20177.085%2021.484Q176.56%2021.374%20175.881%2021.353Q175.203%2021.333%20174.759%2021.333H171.592Z%20M233.769%2039%20227.145%2018.12H230.654L236.216%2035.677L241.854%2018.12H245.363L238.739%2039Z%20M248.822%2039V18.12H252.221V39Z%20M257.565%2039V18.12H266.155Q266.459%2018.12%20266.935%2018.142Q267.41%2018.163%20267.814%2018.236Q269.612%2018.514%20270.79%2019.441Q271.969%2020.367%20272.542%2021.773Q273.115%2023.178%20273.115%2024.894Q273.115%2026.611%20272.536%2028.016Q271.958%2029.421%20270.779%2030.348Q269.6%2031.274%20267.814%2031.553Q267.41%2031.611%20266.929%2031.64Q266.448%2031.669%20266.155%2031.669H260.964V39ZM260.964%2028.479H266.016Q266.308%2028.479%20266.667%2028.45Q267.025%2028.421%20267.338%2028.34Q268.217%2028.119%20268.729%2027.562Q269.24%2027.006%20269.458%2026.294Q269.675%2025.582%20269.675%2024.894Q269.675%2024.207%20269.458%2023.495Q269.24%2022.783%20268.729%2022.226Q268.217%2021.67%20267.338%2021.449Q267.025%2021.365%20266.667%2021.338Q266.308%2021.31%20266.016%2021.31H260.964Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
  --vip-ink: #17382b;
  --vip-gold-edge: #997131;
  --vip-gold-light: #f0dba5;
  --vip-foil: linear-gradient(112deg, #d0ad65 0%, #f0dba5 25%, #ddbd7b 48%, #f5e5b9 67%, #c6a05a 100%);
  --vip-letter-foil: linear-gradient(112deg, #ba8e40 0%, #f0dba5 22%, #d4ae61 43%, #fff2c9 54%, #cfaa63 70%, #e4c78b 100%);
}

/* Enlarge the actual wordmark, not its transparent canvas. All letters are paths. */
:is(.header, .public-footer, .site-header, .site-footer) .brand {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  flex-shrink: 0;
  border-radius: 5px;
  line-height: 0;
  isolation: isolate;
  filter: none;
}
.header .header-main { gap: clamp(20px, 2.4vw, 36px); }
.header .brand { max-width: 300px; }
.header .brand-wordmark { width: 300px; max-width: 100%; height: auto; }
.public-footer > .brand { align-self: start; }
.public-footer .brand-wordmark { width: 310px; max-width: 100%; height: auto; }
.site-header .brand img { width: 290px; max-width: 100%; height: auto; }
.site-footer .brand img { width: 300px; max-width: 100%; height: auto; }
:is(.header, .public-footer, .site-header, .site-footer) .brand > img {
  display: block;
  transition: filter .2s ease;
}
/* The self-contained mask contains only F / FORMED / VIP, not the green tile. */
:is(.header, .public-footer, .site-header, .site-footer) .brand::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: var(--vip-letter-foil);
  background-size: 180% 100%;
  background-position: 100% 50%;
  -webkit-mask: var(--vip-wordmark-mask) center / contain no-repeat;
  mask: var(--vip-wordmark-mask) center / contain no-repeat;
  opacity: 0;
  transition: opacity .18s ease, background-position .55s ease;
}
:is(.header, .public-footer, .site-header, .site-footer) .brand:focus-visible {
  outline: 3px solid var(--vip-gold-light);
  outline-offset: 6px;
  box-shadow: 0 0 0 7px #17382b;
}
:is(.header, .public-footer, .site-header, .site-footer) .brand:is(:focus-visible, :active)::after {
  opacity: 1;
  background-position: 0 50%;
}
:is(.header, .public-footer, .site-header, .site-footer) .brand:is(:focus-visible, :active) > img {
  filter: drop-shadow(0 0 7px #d4ae6133);
}

/* Keep the green surfaces at rest. Gold is the consistent action signal. */
:is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
:is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link) {
  -webkit-tap-highlight-color: #ddbd7b55;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
#showroom .primary,
#guide .guide-apply,
#compareTray > button:not(#clearCompare),
.product-summary .button:not(.secondary),
#inquiryCopy:not(:disabled) {
  background: var(--vip-foil);
  color: var(--vip-ink);
  border-color: var(--vip-gold-edge);
  box-shadow: inset 0 1px 0 #fff4d580, 0 6px 18px #001b141c;
}
#showroom .primary > span { color: #61451e; }

/* Keyboard and touch get the same gold surface as a precise pointing device. */
:is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
:is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link):not(:disabled):not([aria-disabled="true"]):not(.stage-photo-open):not(.photo-open):not(.light-handle):not(.curtain-handle):is(:focus-visible, :active) {
  background: var(--vip-foil);
  color: var(--vip-ink);
  border-color: var(--vip-gold-edge);
  box-shadow: inset 0 1px 0 #fff4d580, 0 3px 14px #73511e1f;
  filter: none;
}
:is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
:is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link):focus-visible,
.category-nav a:focus-visible {
  outline: 3px solid #b1873d;
  outline-offset: 3px;
  box-shadow: 0 0 0 6px #fff5d9;
}
/* An inset edge survives focus clipping inside scrollable lists and dialogs. */
:is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog)
button:not(:disabled):not(.stage-photo-open):not(.photo-open):not(.light-handle):not(.curtain-handle):active {
  background-position: 100% 50%;
  box-shadow: inset 0 2px 5px #684a2529, inset 0 0 0 1px #7a591f;
}
:is(#showroom .scene-tabs, #catalog .category-tabs, .care-presets) button:is(.active, [aria-pressed="true"]),
#catalog .compare-button[aria-pressed="true"],
.photo-choices button[aria-pressed="true"] {
  border-color: #c5a66d;
  box-shadow: inset 0 -2px 0 #c5a66d;
}
:is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog)
button:not(.light-handle):is(:focus-visible, :active) :is(span, small, i, strong, h3, p),
.site-header .header-phone:is(:focus-visible, :active) {
  color: inherit;
}
#showroom .hotspot:is(:focus-visible, :active) > span { background: transparent; border-color: var(--vip-gold-edge); }
/* Photo and scene handles must never become opaque over the product. */
:is(#showroom, #care, #catalog, dialog)
:is(.stage-photo-open, .photo-open, .light-handle, .curtain-handle):is(:focus-visible, :active) {
  outline: 3px solid var(--vip-gold-light);
  outline-offset: 3px;
  filter: none;
}
#showroom .stage-photo-open:is(:focus-visible, :active) > span,
:is(#showroom, #care) :is(.light-handle, .curtain-handle):is(:focus-visible, :active) {
  background: var(--vip-foil);
  border-color: var(--vip-gold-edge);
  color: var(--vip-ink);
}
/* Text navigation gets a leaf-gold underline rather than a crowded filled box. */
#siteHeader .main-navigation :is(a, button):is(:focus-visible, :active),
.site-header .header-nav a:not(.header-phone):is(:focus-visible, :active) {
  background: transparent;
  color: var(--vip-gold-light);
  box-shadow: inset 0 -2px 0 #c5a66d;
  text-decoration: none;
  filter: none;
}
.category-nav a:is(:focus-visible, :active) {
  background: var(--vip-foil);
  color: var(--vip-ink);
  border-color: var(--vip-gold-edge);
}

@media (hover: hover) and (pointer: fine) {
  :is(.header, .public-footer, .site-header, .site-footer) .brand:hover::after {
    opacity: 1;
    background-position: 0 50%;
  }
  :is(.header, .public-footer, .site-header, .site-footer) .brand:hover > img {
    filter: drop-shadow(0 0 7px #d4ae6133);
  }
  :is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
  :is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link):not(:disabled):not([aria-disabled="true"]):not(.stage-photo-open):not(.photo-open):not(.light-handle):not(.curtain-handle):hover {
    background: var(--vip-foil);
    color: var(--vip-ink);
    border-color: var(--vip-gold-edge);
    box-shadow: inset 0 1px 0 #fff4d580, 0 3px 14px #73511e1f;
    filter: none;
  }
  :is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog)
  button:not(.light-handle):hover :is(span, small, i, strong, h3, p) { color: inherit; }
  #showroom .stage-photo-open:hover > span,
  :is(#showroom, #care) :is(.light-handle, .curtain-handle):hover {
    background: var(--vip-foil);
    color: var(--vip-ink);
    border-color: var(--vip-gold-edge);
    filter: none;
  }
  #showroom .hotspot:hover > span { background: transparent; border-color: var(--vip-gold-edge); }
  #catalog .photo-open:hover { outline: none; filter: none; }
  #siteHeader .main-navigation :is(a, button):hover,
  .site-header .header-nav a:not(.header-phone):hover {
    background: transparent;
    color: var(--vip-gold-light);
    box-shadow: inset 0 -2px 0 #c5a66d;
    text-decoration: none;
    filter: none;
  }
  .category-nav a:hover { background: var(--vip-foil); color: var(--vip-ink); border-color: var(--vip-gold-edge); }
}

/* Larger wordmarks must not steal the space needed by search or navigation. */
@media (max-width: 1180px) and (min-width: 761px) {
  .header .brand { max-width: 270px; }
  .header .brand-wordmark { width: 270px; }
  .header .site-search-trigger { min-width: 0; }
  .header .site-search-trigger > span { overflow-wrap: anywhere; }
}
@media (max-width: 1100px) {
  .site-header .header-inner { flex-wrap: wrap; gap: 12px; padding-block: 15px; }
  .site-header .header-nav { width: 100%; flex-wrap: wrap; justify-content: flex-start; gap: 10px 24px; }
  .site-header .header-phone { position: static; margin-left: auto; }
  .site-header .header-nav a { flex: 0 0 auto; white-space: nowrap; overflow-wrap: normal; word-break: normal; hyphens: none; }
}
@media (max-width: 760px) {
  .header .header-main { grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; }
  .header .brand { max-width: 100%; min-width: 0; }
  .header .brand-wordmark { width: clamp(190px, 52vw, 250px); max-width: 100%; }
  .header .mobile-menu-toggle { width: 40px; padding-inline: 9px; }
  .header .mobile-menu-toggle > span { display: none; }
  .public-footer .brand-wordmark { width: 290px; max-width: 100%; }
  .site-header .brand img { width: 270px; max-width: 100%; }
  .site-header .header-nav { gap: 8px 18px; font-size: clamp(.72rem, 3.1vw, .8rem); }
  .site-header .header-nav a { min-height: 36px; display: inline-flex; align-items: center; }
  .site-header .header-phone { margin-left: 0; padding: 7px 12px; }
  .site-footer .brand img { width: 290px; max-width: 100%; }
  .article-intro h1 { font-size: clamp(1.65rem, 6.6vw, 2.25rem); line-height: 1.23; letter-spacing: -.025em; overflow-wrap: normal; word-break: normal; text-wrap: balance; }
  .article-intro .eyebrow { font-size: .65rem; line-height: 1.6; letter-spacing: .07em; overflow-wrap: normal; }
  .article-intro .article-summary { font-size: .92rem; line-height: 1.75; }
  .article-intro { padding-bottom: 25px; }
}
@media (max-width: 370px) {
  .header { padding-inline: 4%; }
  .header .brand-wordmark { width: 190px; }
  .header .compare-nav { width: 44px; min-width: 44px; justify-content: center; padding-inline: 5px; }
  .header .compare-nav svg { display: none; }
  .site-header .brand img { width: 260px; }
  .site-header .header-nav { gap: 7px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  :is(.header, .public-footer, .site-header, .site-footer) .brand > img,
  :is(.header, .public-footer, .site-header, .site-footer) .brand::after,
  :is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
  :is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link) {
    transition: none !important;
    animation: none !important;
  }
}
@media (forced-colors: active) {
  :is(.header, .public-footer, .site-header, .site-footer) .brand::after { display: none; }
  :is(.header, .public-footer, .site-header, .site-footer) .brand > img { filter: none !important; }
  :is(#siteHeader, #showroom, #care, #explore, #guide, #catalog, #compareTray, dialog, .site-header, .foot-contact, .product-summary, .closing, .article-back, .archive-card-body, .catalog-card)
  :is(button, .button, .primary, .header-phone, .card-cta, .archive-card-cta, .text-link):is(:hover, :focus-visible, :active),
  .category-nav a:is(:hover, :focus-visible, :active) {
    background: ButtonFace;
    color: ButtonText;
    border-color: ButtonText;
    box-shadow: none;
    filter: none;
  }
  :is(.header, .public-footer, .site-header, .site-footer) .brand:focus-visible,
  :is(button, .button, .primary, .header-phone, .category-nav a):focus-visible { outline: 3px solid Highlight; }
}
@media print {
  :is(.header, .public-footer, .site-header, .site-footer) .brand::after { display: none; }
}
