/* R15: breathing room, compact mobile layouts and progressive filter feedback. */
/* R28: active component replaces the withdrawn handlebar, without an empty slot. */
.gh-hero__visual:has(.gh-hero__product) { padding-top: 30px; }
.gh-hero__product { margin: 0; padding: 25px 0 0; }
.gh-hero__product img { display:block; width:100%; height:clamp(290px,31vw,460px); object-fit:contain; filter:drop-shadow(0 20px 18px #06244320); }
.gh-hero__product figcaption { display:flex; justify-content:center; align-items:center; gap:12px; color:#062443; font-size:13px; margin:14px 0 0; }
.gh-hero__product figcaption strong { font-size:24px; }
.gh-hero__product figcaption span { border-left:1px solid #06244340; padding-left:12px; }
.gh-ranges { grid-template-columns:repeat(4,minmax(0,1fr)); }
.gh-ranges .gh-range { grid-column:auto; }
.gc-moto-ranges { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:1100px) and (min-width:701px) {
 .gh-ranges { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gh-ranges .gh-range--seat { grid-template-columns:1fr; grid-template-rows:180px auto auto; }
 .gh-ranges .gh-range--seat .gh-range__photo { grid-row:auto; }
 .gh-ranges .gh-range--seat .gh-range__button { grid-column:auto; }
}
@media (max-width:700px) {
 .gh-hero__visual:has(.gh-hero__product) { padding-top:16px; }
 .gh-hero__visual:has(.gh-hero__product) .gh-badge { width:74px; height:74px; right:0; top:0; }
 .gh-hero__visual:has(.gh-hero__product) .gh-badge strong { font-size:25px; }
 .gh-hero__visual:has(.gh-hero__product) .gh-badge span { font-size:7px; }
 .gh-hero__product img { height:clamp(220px,65vw,330px); }
 .gh-hero__product figcaption { font-size:11px; }
 .gh-ranges, .gc-moto-ranges { grid-template-columns:1fr; }
}
.gh-logo img, .gtu-brand img { width: 100px !important; }
.gh-header__inner, .gtu-header__inner { min-height: 92px; padding-block: 12px; }
.gtu-brand a { display: block; }
.gtu-header__inner { padding-inline: 0; }
.gh-header { border-bottom: 0; }
.gh-hero { border-top-width: 2px; }
.gtu-header { border-bottom: 2px solid var(--gtu-cyan); }

/* The selector already contains every line; don't repeat it as a wall of chips. */
.gc-line-nav { display: none; }
.gc-results a { font-weight: 600; white-space: nowrap; }
.gtu-contact-options { gap: 20px; }
.gtu-contact-option { border: 0; border-radius: 22px; min-height: 0; }
.gtu-contact-option > span { margin-bottom: 2rem; }
.gtu-contact-option h2 { font-size: clamp(1.65rem, 2.3vw, 2.6rem); overflow-wrap: anywhere; }
.gtu-contact-option strong { overflow-wrap: anywhere; }
.gtu-contact-location figure { box-shadow: none; }
.gtu-contact-location figure img { height: auto; aspect-ratio: auto; border-radius: 22px; }
.gtu-contact-location h2 { font-size: clamp(2rem, 3.8vw, 4rem); }
.gtu-contact-shortcuts nav a { grid-template-columns: minmax(0, 1fr) auto; }

:is(.gh-menu nav, .gtu-main-nav) a[aria-current="page"] { color: var(--gtu-cyan); }
.gtu-header .is-menu-open a[aria-current="page"] { color: var(--gtu-cyan); background: #ffffff0a; }
:is(.gh-menu nav, .gtu-main-nav) a.gtu-tap-selected,
.gtu-header .is-menu-open a.gtu-tap-selected { color: #fff; background: #007ab5; box-shadow: inset 4px 0 #08b8d8; border-radius: 8px; }
:is(.gh-button, .gc-button, .gh-range__button, .gh-product__button, .wp-element-button, .gtu-filter button):active { filter: brightness(.83); transform: translateY(1px); }
.gtu-filter.is-loading button, .gc-filter.is-loading button { opacity: .75; cursor: progress; }
.gtu-filter-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.gtu-filter-status--error { position: static; width: auto; height: auto; clip-path: none; white-space: normal; font-size: 13px; color: #a02a25; padding-block: 10px; }
.gtu-filter-status:empty { display: none; }
html:has(.gtu-updating-results) { scroll-behavior: auto !important; }
.gtu-updating-results { overflow-anchor: none; }

/* R18: JS owns each animation lifecycle; never reuse a completed CSS animation. */
.gh-menu[open] nav,
.gtu-header .is-menu-open .wp-block-navigation__responsive-close {
 transform-origin: top center;
 animation: none !important;
}
.gh-menu[open] .gtu-menu-motion[data-gtu-menu-state="closed"],
.gtu-header .is-menu-open .gtu-menu-motion[data-gtu-menu-state="closed"] { visibility: hidden; }

@media (max-width: 1024px) {
 .gh-header__inner, .gtu-header__inner { min-height: 88px; padding-block: 10px; }
}
@media (max-width: 700px) {
 .gh-section { padding-block: 40px; }
 .gh-world-grid { gap: 18px; }
 .gh-world__visual, .gh-world--moto .gh-world__visual { height: clamp(150px, 44vw, 210px); padding: 16px; margin: 0 18px; }
 .gh-world--moto .gh-world__visual { margin: 0; border-top-width: 4px; }
 .gh-world__visual > img { height: 85%; width: 100%; }
 .gh-world__visual > .gh-moto__handlebar { height: 100%; width: 100%; }
 .gh-world .gh-world__copy { padding: 18px 24px 24px; }
 .gh-world__copy h3 { font-size: 32px; margin-block: 8px 12px; }
 .gh-world__copy p { font-size: 15px; margin-bottom: 16px; }
 .gh-world__copy .gh-moto__brand { padding: 7px 12px; margin-block: 8px 12px; }
 .gh-moto__brand img { width: 165px; }
 .gh-world__copy .gh-line__link { margin-top: 0; }
 .gh-range { padding: 20px; grid-template-rows: 150px auto auto; gap: 14px; }
 .gh-range__photo { height: 150px; }
 .gh-range--handlebar { grid-template-rows: 108px auto auto; }
 .gh-range--handlebar .gh-range__photo { height: 108px; }
 .gh-service { min-height: 0; padding: 115px 24px 24px; }

 .gtu-directory-page .gtu-page-hero { padding-block: 36px; border-bottom-width: 3px; min-height: 0; }
 .gtu-directory-page .gtu-archive__content { padding-top: 28px; padding-bottom: 36px; }
 .gtu-locator-page .gtu-locator-intro { display: block; margin-bottom: 24px; }
 .gtu-locator-page .gtu-locator-intro__number { display: none; }
 .gtu-locator-page .gtu-locator-intro h2 { font-size: 26px; margin-block: 10px 14px; text-wrap: pretty; }
 .gtu-locator-intro p, .gtu-representatives-intro p { font-size: 14px; }
 .gtu-representatives-page .gtu-representatives-intro { margin-bottom: 24px; }
 .gtu-representatives-page .gtu-representatives-intro > div:first-child { margin-bottom: 20px; }
 .gtu-representatives-page .gtu-representatives-intro h2 { font-size: 26px; }
 .gtu-representatives-page .gtu-representatives-intro__points { gap: 12px; }
 .gtu-representatives-page .gtu-representatives-intro__points article { padding: 20px; min-height: 0; }
 .gtu-representatives-intro__points h3 { font-size: 20px; }
 .gtu-directory-page .gtu-internal-cta h2 { font-size: 28px; }
 .gtu-card-grid--stores .gtu-card, .gtu-card-grid--representatives .gtu-card { padding: 22px; }

 .gtu-about-numbers__grid { gap: 14px; }
 .gtu-about-numbers__grid article,
 .gtu-about-numbers__grid article:first-child,
 .gtu-about-numbers__grid article + article { padding: 22px; border: 0; border-radius: 18px; background: #f4f7f9; }
 .gtu-about-numbers__grid strong { font-size: 58px; }
 .gtu-about-numbers__grid span { font-size: 19px; }
 .gtu-about-numbers__grid p { font-size: 14px; margin-bottom: 0; }
 .gtu-about-worlds__grid a, .gtu-about-worlds__grid a:first-child { min-height: 300px; }
 .gtu-about-world > div { padding-top: 7rem; }
 .gtu-about-worlds__grid p { font-size: 14px; }
 .gtu-about-timeline li { padding: 20px; border: 0; background: #ffffff08; border-radius: 18px; }
 .gtu-about-timeline { gap: 12px; }

 .gtu-contact-hero { padding-block: 38px; }
 .gtu-contact-hero h1 { font-size: clamp(2rem, 9vw, 2.75rem); margin-block: 18px; }
 .gtu-contact-options { padding-block: 36px; gap: 16px; }
 .gtu-contact-option { padding: 24px; min-height: 0; }
 .gtu-contact-option > span { margin-bottom: 22px; }
 .gtu-contact-option h2 { font-size: 26px; }
 .gtu-contact-option p { font-size: 15px; }
 .gtu-contact-option strong { margin-top: 20px; font-size: 14px; }
 .gtu-contact-location { padding-block: 36px; }
 .gtu-contact-location__inner { gap: 26px; }
 .gtu-contact-location h2 { font-size: 30px; margin-block: 16px; }
 .gtu-contact-location address { font-size: 15px; }
 .gtu-contact-shortcuts { padding-block: 36px; gap: 24px; }
 .gtu-contact-shortcuts h2 { font-size: 28px; }
 .gtu-contact-shortcuts nav a { min-height: 84px; grid-template-columns: 1fr; gap: 8px; }
 .gtu-contact-shortcuts nav em { grid-column: 1; }

 .gc-breadcrumb { padding-block: 18px 22px; }
 .gc-catalog-hero { padding-bottom: 26px; }
 .gc-catalog-hero h1 { margin-block: 10px 14px; }
 .gc-catalog-hero .gc-actions { display: none; }
 .gc-listing { padding-top: 28px; }
 .gc-section-heading { margin-bottom: 20px; }
 .gc-section-heading h2 { font-size: 26px; }
 .gc-filter { gap: 12px; padding: 16px; }
 .gc-card__image { aspect-ratio: 1.8; padding: 18px 22px; }
 .gc-card__body { padding: 4px 22px 22px; }
 .gc-card h3 { font-size: 21px; margin-block: 8px 12px; }
 .gc-card .gc-code { margin-bottom: 16px; }
 .gc-moto-hero { padding-bottom: 28px; }
 .gc-moto-hero__grid { gap: 24px; }
 .gc-moto-hero__visual { padding: 54px 20px 20px; }
 .gc-moto-hero__visual > img { height: 150px; }
}
@media (prefers-reduced-motion: reduce) {
 :is(.gh-button, .gc-button, .gh-range__button, .gh-product__button, .wp-element-button, .gtu-filter button):active { transform: none; }
}

/* R16: stable fixed header with a compact scroll state, shared by both headers. */
:root { --gtu-header-space: 94px; --gtu-header-size: 94px; --gtu-header-inner-size: 92px; --gtu-header-top: 0px; }
body.gtu-has-compact-header { --gtu-header-size: 58px; --gtu-header-inner-size: 56px; }
html { scroll-padding-top: calc(var(--gtu-header-top) + var(--gtu-header-size) + 16px); }
.gtu-header-host { height: var(--gtu-header-space); margin-block: 0; }
.gtu-site .gtu-fixed-header { position: fixed; inset-inline: 0; top: var(--gtu-header-top); width: 100%; z-index: 1000; background: #fff; border-bottom: 2px solid var(--gtu-cyan); backdrop-filter: none; -webkit-backdrop-filter: none; transition: box-shadow 240ms ease; }
.gtu-fixed-header :is(.gh-header__inner, .gtu-header__inner) { height: var(--gtu-header-inner-size); min-height: 0; transition: height 240ms ease, padding 240ms ease; }
.gh-hero { border-top: 0; }
.gtu-fixed-header :is(.gh-logo, .gtu-brand) { max-width: 100px; min-height: 0; visibility: visible; transition: max-width 240ms ease, opacity 180ms ease, visibility 0s; }
.gtu-fixed-header :is(.gh-logo img, .gtu-brand img) { transition: width 240ms ease; }
.gtu-has-compact-header .gtu-fixed-header { box-shadow: 0 5px 18px #06244314; }
.gtu-has-compact-header :is(.gh-header__inner, .gtu-header__inner) { padding-block: 6px; }
.gtu-has-compact-header :is(.gh-logo img, .gtu-brand img) { width: 60px !important; }
.gtu-has-compact-header :is(.gh-nav a, .gtu-main-nav .wp-block-navigation-item__content) { padding-block: 10px; }
.gtu-has-compact-header .gh-header__actions > .gh-button,
.gtu-has-compact-header .gtu-header__cta .wp-block-button__link { min-height: 40px; padding-block: 8px; }
.gtu-fixed-header .gh-menu nav { top: calc(100% + 8px); max-height: calc(100dvh - var(--gtu-header-top) - var(--gtu-header-size) - 24px); }
.gtu-fixed-header .wp-block-navigation__responsive-container.is-menu-open { inset-block-start: var(--gtu-header-top); height: calc(100dvh - var(--gtu-header-top)); }
.gtu-fixed-header .is-menu-open .wp-block-navigation__responsive-close { margin-top: calc(var(--gtu-header-size) - 12px); max-height: calc(100dvh - var(--gtu-header-top) - var(--gtu-header-size) - 28px); overflow-y: auto; }
.gtu-fixed-header .is-menu-open .wp-block-navigation__responsive-container-content { max-height: calc(100dvh - var(--gtu-header-top) - var(--gtu-header-size) - 116px); }

/* All four timeline panels share the same complete outline and spacing. */
.gtu-about-page .gtu-about-timeline { display: grid; gap: 16px; }
.gtu-about-page .gtu-about-timeline > li { min-height: 0; border: 1px solid #ffffff33; border-radius: 18px; background: #ffffff08; padding: clamp(20px, 2.3vw, 32px); }
.gtu-about-page .gtu-about-timeline > li::before { display: none; }
.gtu-about-page .gtu-about-timeline p { margin-bottom: 0; }

/* Local original WhatsApp glyph, no third-party widget, pulse or automatic popup. */
.gtu-whatsapp { position: fixed; right: max(24px, env(safe-area-inset-right)); bottom: calc(24px + env(safe-area-inset-bottom)); z-index: 900; display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; padding: 10px; border: 1px solid #06244314; border-radius: 50%; background: #fff; box-shadow: 0 4px 18px #06244324; text-decoration: none; transition: box-shadow 180ms ease, opacity 180ms ease; }
.gtu-whatsapp img { display: block; width: 36px; height: 36px; }
.gtu-whatsapp:hover { box-shadow: 0 5px 22px #06244340; }
.gtu-whatsapp:focus-visible { outline: 3px solid var(--gtu-blue); outline-offset: 4px; }
body:has(.gh-menu[open], .gtu-header .is-menu-open) .gtu-whatsapp { opacity: 0; visibility: hidden; pointer-events: none; }
@media (max-width: 1024px) {
 :root { --gtu-header-space: 90px; --gtu-header-size: 90px; --gtu-header-inner-size: 88px; }
 body.gtu-has-compact-header { --gtu-header-size: 50px; --gtu-header-inner-size: 48px; }
 .gtu-fixed-header .gtu-menu-label,
 .gtu-fixed-header .wp-block-navigation__responsive-container-open::before { display: block; width: 0; overflow: hidden; white-space: nowrap; opacity: 0; transition: width 200ms ease, opacity 180ms ease; }
 .gtu-fixed-header :is(.gh-menu summary, .wp-block-navigation__responsive-container-open) { gap: 0; min-height: 44px; padding: 10px 12px; }
 .gtu-has-compact-header .gtu-fixed-header .gtu-menu-label,
 .gtu-has-compact-header .gtu-fixed-header .wp-block-navigation__responsive-container-open::before { width: 43px; opacity: 1; }
 .gtu-has-compact-header .gtu-fixed-header :is(.gh-menu summary, .wp-block-navigation__responsive-container-open) { gap: 10px; }
 .gtu-has-compact-header .gtu-fixed-header :is(.gh-header__inner, .gtu-header__inner) { padding-block: 0; }
 .gtu-has-compact-header .gtu-fixed-header :is(.gh-logo, .gtu-brand) { max-width: 0; overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none; transition: max-width 240ms ease, opacity 180ms ease, visibility 0s 180ms; }
 .gtu-has-compact-header .gtu-fixed-header :is(.gh-menu, nav.gtu-main-nav) { margin-left: auto; }
 .gtu-whatsapp { width: 46px; height: 46px; padding: 8px; right: calc(14px + env(safe-area-inset-right)); bottom: calc(14px + env(safe-area-inset-bottom)); }
 .gtu-whatsapp img { width: 28px; height: 28px; }
 body:has(input:focus, select:focus, textarea:focus) .gtu-whatsapp { opacity: 0; visibility: hidden; pointer-events: none; }
 .gtu-footer { padding-bottom: max(76px, env(safe-area-inset-bottom)); }
}
@media (max-width: 620px) {
 .gtu-about-page .gtu-about-timeline { grid-template-columns: minmax(0, 1fr); gap: 14px; }
 .gtu-about-page .gtu-about-timeline > li { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
 .gtu-fixed-header, .gtu-fixed-header *, .gtu-fixed-header *::before, .gtu-whatsapp { transition: none !important; }
}

/* R20: shared social invitation, lightweight SVG icons and no tracking embeds. */
.gtu-social-follow { width: 100%; max-width: none; margin: 0; padding-block: clamp(32px, 4vw, 56px); background: #f4f7f9; color: var(--gtu-navy); border-top: 1px solid #e2eaf0; }
.gtu-social-follow__inner { width: min(1680px, calc(100% - clamp(40px, 7vw, 128px))); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.gtu-social-follow__copy { min-width: 0; }
.gtu-social-follow__copy p { margin: 0; color: #596d7e; font-size: 14px; line-height: 1.6; }
.gtu-social-follow__copy .gtu-social-follow__kicker { color: var(--gtu-blue); font-size: 11px; font-weight: 700; line-height: 1.5; letter-spacing: .1em; text-transform: uppercase; }
.gtu-social-follow h2 { margin: 8px 0 10px; color: var(--gtu-navy); font-size: clamp(1.5rem, 2.3vw, 2.1rem); font-weight: 900; line-height: 1.2; letter-spacing: -.025em; }
.gtu-social-follow__links { display: flex; flex-shrink: 0; gap: 12px; }
.gtu-social-follow__links a { display: flex; align-items: center; gap: 12px; min-width: 172px; min-height: 68px; padding: 14px 18px; border: 1px solid #d6e2eb; border-radius: 16px; background: #fff; color: var(--gtu-navy); text-decoration: none; transition: background-color 180ms ease, border-color 180ms ease; }
.gtu-social-follow__links a:hover { background: #eaf5fb; border-color: var(--gtu-blue); }
.gtu-social-follow__links a:focus-visible { outline: 3px solid var(--gtu-blue); outline-offset: 4px; }
.gtu-social-follow__links a:active { background: #dceef8; }
.gtu-social-follow__links svg { display: block; flex-shrink: 0; color: var(--gtu-blue); }
.gtu-social-follow__label { display: grid; gap: 3px; line-height: 1.25; }
.gtu-social-follow__label strong { font-size: 14px; font-weight: 700; }
.gtu-social-follow__label > span { color: #596d7e; font-size: 12px; }
.gtu-social-follow + .gtu-footer { margin-block-start: 0; }
@media (max-width: 700px) {
 .gtu-social-follow { padding-block: 28px; }
 .gtu-social-follow__inner { display: grid; gap: 20px; }
 .gtu-social-follow__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
 .gtu-social-follow__links a { min-width: 0; min-height: 64px; gap: 10px; padding: 12px; border-radius: 14px; }
 .gtu-social-follow__links svg { width: 24px; height: 24px; }
 .gtu-social-follow__label strong { font-size: 13px; }
 .gtu-social-follow__label > span { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
 .gtu-social-follow__links a { transition: none; }
}

/* R21: color references remain below products, never between filters and results. */
.gtu-color-shell { width: min(1680px, calc(100% - clamp(40px, 7vw, 128px))); margin-inline: auto; }
.gtu-color-kicker { margin: 0 0 12px; color: var(--gtu-blue); font-size: 11px; font-weight: 700; line-height: 1.5; letter-spacing: .1em; text-transform: uppercase; }
.gtu-color-note { margin: 12px 0 0; color: #596d7e; font-size: 12px; line-height: 1.65; }
.gtu-color-teaser { padding-block: 40px; background: #f4f7f9; }
.gtu-color-teaser__inner { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 40px; }
.gtu-color-teaser h2 { margin: 0 0 14px; color: var(--gtu-navy); font-size: clamp(28px, 3vw, 42px); line-height: 1.1; font-weight: 900; letter-spacing: -.03em; }
.gtu-color-teaser__copy > p:not(.gtu-color-kicker) { margin: 0 0 20px; max-width: 460px; color: #596d7e; font-size: 15px; line-height: 1.65; }
.gtu-color-new-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.gtu-color-card { margin: 0; min-width: 0; padding: 18px; border: 1px solid #dce5ec; border-radius: 20px; text-align: center; }
.gtu-color-card--ferrari { background: #fff0eb; }
.gtu-color-card--violeta { background: #f2edfc; }
.gtu-color-card--turquesa { background: #e7f7fa; }
.gtu-color-card img { display: block; width: 100%; height: 125px; object-fit: contain; margin: 0 auto 14px; }
.gtu-color-card figcaption { color: var(--gtu-navy); font-size: 14px; font-weight: 700; line-height: 1.4; }
.gtu-color-guide { padding-block: 48px; background: #f4f7f9; scroll-margin-top: 16px; }
.gtu-color-guide__heading { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: center; margin-bottom: 28px; }
.gtu-color-guide h2 { margin: 0; color: var(--gtu-navy); font-size: clamp(28px, 3vw, 38px); line-height: 1.15; font-weight: 900; letter-spacing: -.03em; }
.gtu-color-guide__heading > p { margin: 0; color: #596d7e; font-size: 15px; line-height: 1.65; }
.gtu-color-guide h3 { margin: 0 0 18px; color: var(--gtu-navy); font-size: 18px; line-height: 1.3; font-weight: 700; }
.gtu-color-new { margin-bottom: 28px; }
.gtu-color-new .gtu-color-card img { height: 110px; }
.gtu-color-family { padding: 24px; border: 1px solid #dce5ec; border-radius: 20px; background: #fff; margin-bottom: 20px; }
.gtu-color-swatches { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 18px 14px; list-style: none; padding: 0; margin: 0; }
.gtu-color-swatches li { display: grid; align-content: start; justify-items: center; gap: 8px; min-width: 0; color: var(--gtu-navy); font-size: 12px; font-weight: 600; line-height: 1.35; text-align: center; }
.gtu-color-swatch { display: block; width: 46px; height: 46px; border: 1px solid #06244321; border-radius: 50%; background: var(--swatch); box-shadow: inset 0 0 0 3px #ffffff38; }
.gtu-color-families { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.gtu-color-swatches--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gtu-color-family--finishes { display: flex; align-items: center; gap: 32px; }
.gtu-color-family--finishes h3 { margin: 0; }
.gtu-color-family--finishes .gtu-color-swatches { grid-template-columns: repeat(2, minmax(0, 1fr)); width: min(260px, 100%); }
.gtu-color-guide__bottom { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.gtu-color-guide__bottom .gtu-color-note { margin: 0; max-width: 980px; }
.gtu-color-guide__bottom .gc-button { flex-shrink: 0; }
.gc-catalog-hero .gc-colors-shortcut { margin: 6px 0 0; }
.gc-colors-shortcut a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--gtu-blue); font-size: 13px; font-weight: 700; text-underline-offset: 4px; }
@media (max-width: 900px) {
 .gtu-color-teaser__inner { grid-template-columns: 1fr; gap: 24px; }
 .gtu-color-teaser__copy > p:not(.gtu-color-kicker) { max-width: 600px; }
 .gtu-color-guide__heading { grid-template-columns: 1fr; gap: 16px; }
 .gtu-color-swatches { grid-template-columns: repeat(4, minmax(0, 1fr)); }
 .gtu-color-families { grid-template-columns: 1fr; gap: 0; }
 .gtu-color-guide__bottom { align-items: flex-start; flex-direction: column; gap: 18px; }
}
@media (max-width: 600px) {
 .gtu-color-teaser { padding-block: 28px; }
 .gtu-color-teaser__inner { gap: 20px; }
 .gtu-color-teaser h2 { font-size: 28px; }
 .gtu-color-teaser__copy > p:not(.gtu-color-kicker) { font-size: 14px; margin-bottom: 16px; }
 .gtu-color-teaser .gh-button { min-height: 44px; font-size: 13px; padding: 12px 16px; }
 .gtu-color-new-grid { gap: 10px; }
 .gtu-color-card { padding: 10px 8px; border-radius: 16px; }
 .gtu-color-card img, .gtu-color-new .gtu-color-card img { height: 72px; margin-bottom: 10px; }
 .gtu-color-card figcaption { font-size: 11px; min-height: 30px; }
 .gtu-color-note { font-size: 11px; }
 .gtu-color-guide { padding-block: 32px; }
 .gtu-color-guide h2 { font-size: 28px; }
 .gtu-color-guide h3 { font-size: 17px; }
 .gtu-color-guide__heading > p { font-size: 14px; }
 .gtu-color-family { padding: 18px 14px; border-radius: 18px; }
 .gtu-color-swatches { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 10px; }
 .gtu-color-swatches--four { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 8px; }
 .gtu-color-swatches li { font-size: 11px; }
 .gtu-color-swatch { width: 42px; height: 42px; }
 .gtu-color-family--finishes { display: block; }
 .gtu-color-family--finishes h3 { margin-bottom: 18px; }
 .gtu-color-family--finishes .gtu-color-swatches { width: 100%; }
 .gtu-color-guide__bottom .gc-button { width: 100%; }
}
