/* Homepage V2: unlettered product assets and one real HTML CTA per action. */
.ty-home-refresh .ty-home-banner {width:100%;color:#111827;background:#fff}
.ty-home-banner__sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ty-home-refresh .ty-home-banner__carousel {display:grid;grid-template-columns:minmax(0,1fr);isolation:isolate;min-width:0;background:#f7f8fa}
.ty-home-refresh .ty-home-banner__viewport {grid-area:1/1;min-width:0;touch-action:pan-y pinch-zoom}
.ty-home-refresh .ty-home-banner__slide {display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);aspect-ratio:3/1;min-width:0}
/* Author grid display must not override the native hidden state. */
.ty-home-refresh .ty-home-banner [hidden] {display:none!important}
.ty-home-refresh .ty-home-banner__picture {display:flex;grid-area:1/2;align-items:center;justify-content:center;min-width:0;min-height:0;padding:clamp(20px,2.4vw,64px);margin:0;touch-action:pan-y pinch-zoom}
body.home #ty-brand-home .ty-home-banner__picture img {display:block;width:100%;max-width:820px;height:100%;min-height:0;object-fit:contain;object-position:center}
.ty-home-refresh .ty-home-banner__copy {display:flex;grid-area:1/1;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:clamp(28px,4vw,76px) clamp(24px,5vw,128px);padding-right:clamp(20px,2.5vw,64px);touch-action:pan-y pinch-zoom}
.ty-home-refresh .ty-home-banner__title {margin:0 0 18px;color:#111827;font:600 clamp(32px,3.7vw,72px)/1.12 var(--ty-home-font);letter-spacing:-.045em}
.ty-home-refresh .ty-home-banner__description {max-width:32em;margin:0 0 28px;color:#374151;font:400 clamp(15px,1.15vw,21px)/1.65 var(--ty-home-font)}
.ty-home-refresh .ty-home-banner__actions {display:flex;flex-wrap:wrap;gap:12px;width:100%}
.ty-home-refresh .ty-home-banner__cta {display:inline-flex;position:relative;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:13px 22px;border:1px solid #174b70;border-radius:6px;background:#174b70;color:#fff;font:600 14px/1.4 var(--ty-home-font);text-align:center;text-decoration:none;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.ty-home-refresh .ty-home-banner__cta--explore {border-color:#bac5ce;background:transparent;color:#174b70}
.ty-home-refresh .ty-home-banner__cta-label {display:inline-flex;align-items:center;justify-content:center;gap:9px}
.ty-home-refresh .ty-home-banner__cta:hover {border-color:#123b58;background:#123b58;color:#fff;box-shadow:0 3px 9px rgba(17,24,39,.1)}
.ty-home-refresh .ty-home-banner__cta--explore:hover {border-color:#174b70;background:#eaf0f5;color:#123b58}
.ty-home-refresh .ty-home-banner__cta:focus-visible,.ty-home-refresh .ty-home-banner__controls button:focus-visible {outline:3px solid #267ba7;outline-offset:4px}
.ty-home-refresh .ty-home-banner__controls {display:flex;grid-area:1/1;position:relative;z-index:2;align-self:end;justify-self:end;align-items:center;gap:12px;width:max-content;margin:0 clamp(24px,3vw,48px) 24px 0;padding:0;border:0;background:none;box-shadow:none}
.ty-home-refresh .ty-home-banner__controls button {display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;min-height:0;padding:0;margin:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(111,126,145,.65);color:#fff;cursor:pointer;transition:background-color 160ms ease,transform 160ms ease}
.ty-home-refresh .ty-home-banner__controls button:hover {background:rgba(131,146,163,.8);transform:scale(1.04)}
.ty-home-refresh .ty-home-banner__controls svg {width:20px;height:20px;pointer-events:none}
@media(max-width:1024px){
  /* The shared controls occupy the image's actual grid row: no vw positioning. */
  .ty-home-refresh .ty-home-banner__viewport,.ty-home-refresh .ty-home-banner__slide:not([hidden]) {display:contents}
  .ty-home-refresh .ty-home-banner__picture {grid-area:1/1;width:100%;aspect-ratio:3/2;padding:clamp(20px,4vw,40px)}
  .ty-home-refresh .ty-home-banner__copy {grid-area:2/1;padding:28px clamp(20px,4vw,40px) 34px;background:#fff}
  .ty-home-refresh .ty-home-banner__title {margin-bottom:12px;font-size:clamp(28px,4vw,42px);letter-spacing:-.035em}
  .ty-home-refresh .ty-home-banner__description {margin-bottom:22px;font-size:15px}
  .ty-home-refresh .ty-home-banner__controls {gap:10px;margin:0 20px 11px 0}
  .ty-home-refresh .ty-home-banner__controls button {flex-basis:44px;width:44px;height:44px}
  .ty-home-refresh .ty-home-banner__cta {padding-inline:18px}
}
@media(max-width:374px){
  .ty-home-refresh .ty-home-banner__actions {gap:10px}
  .ty-home-refresh .ty-home-banner__cta {flex:1 1 100%}
}
@media(prefers-reduced-motion:reduce){
  .ty-home-refresh .ty-home-banner *,.ty-home-refresh .ty-home-banner *::before,.ty-home-refresh .ty-home-banner *::after {transition:none;animation:none;scroll-behavior:auto}
  .ty-home-refresh .ty-home-banner__controls button:hover {transform:none}
}
