.c-hero{display:block;position:relative;padding-block:var(--space-6);background:var(--color-bg);color:var(--color-text)}
.c-hero__viewport{position:relative;overflow:hidden}
.c-hero__track{position:relative}
.c-hero__slide{min-block-size:0}
.c-hero__slide[hidden]{display:none}
.c-hero__inner{display:grid;min-block-size:30rem;overflow:hidden;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm)}
.c-hero__content{display:grid;align-content:center;gap:var(--space-4);min-inline-size:0;padding:clamp(var(--space-7),4vw,var(--space-12))}
.c-hero__eyebrow{margin:0;color:var(--color-accent);font-size:var(--type-meta);font-weight:var(--font-weight-semibold);letter-spacing:.09em;text-transform:uppercase}
.c-hero__heading{max-inline-size:13ch;margin:0;color:var(--color-heading);font-size:clamp(2.5rem,4vw,3.75rem);line-height:1.02;letter-spacing:-.035em;overflow-wrap:anywhere}
.c-hero__text{max-inline-size:34rem;color:var(--color-text-muted);font-size:clamp(var(--step-0),1.2vw,var(--step-1));line-height:1.55}
.c-hero__text>:first-child{margin-block-start:0}.c-hero__text>:last-child{margin-block-end:0}
.c-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-block-start:var(--space-2)}
.c-hero__button,.c-hero__secondary-button{display:inline-flex;align-items:center;justify-content:center;min-block-size:var(--control-height);padding:var(--space-2) var(--space-5);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-xs);font-size:var(--step-0);font-weight:var(--font-weight-medium);line-height:1.2;text-decoration:none}
.c-hero__button{background:var(--color-accent);color:var(--color-on-accent)}
.c-hero__secondary-button{background:transparent;color:var(--color-accent)}
.c-hero__button:hover{filter:brightness(.94)}.c-hero__secondary-button:hover{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}
.c-hero__media{position:relative;min-inline-size:0;min-block-size:30rem;overflow:hidden;background:var(--media-bg)}
.c-hero__image{position:absolute;inset:0;display:block;inline-size:100%;block-size:100%;object-fit:cover;object-position:center}
.c-hero__overlay{position:absolute;inset:0;background:var(--hero-overlay-color,#000);opacity:var(--hero-overlay-opacity,0);pointer-events:none}
.c-hero__controls{position:absolute;inset-inline-end:max(var(--gutter),calc((100vw - var(--page-width))/2 + var(--space-4)));inset-block-end:var(--space-4);z-index:2;display:flex;align-items:center;gap:var(--space-2);inline-size:auto;min-block-size:auto;margin:0;padding:var(--space-2);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-bg) 96%,transparent);box-shadow:var(--shadow-sm)}
.c-hero__pagination{display:flex;align-items:center;gap:var(--space-1)}
.c-hero__slide.is-entering{animation:hero-slide-in .65s var(--ease-standard)}@keyframes hero-slide-in{from{opacity:.45;transform:translate3d(4%,0,0) scale(1.01)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.c-hero__pause,.c-hero__dot{display:grid;place-items:center;min-inline-size:2.25rem;min-block-size:2.25rem;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-text)}
.c-hero__pause:hover,.c-hero__dot:hover{background:var(--color-surface)}
.c-hero__dot::before{display:block;inline-size:.45rem;block-size:.45rem;border:var(--border-width) solid currentcolor;border-radius:50%;content:''}
.c-hero__dot[aria-current=true]::before{background:currentcolor}
.c-hero__count{min-inline-size:2.75rem;color:var(--color-text-muted);font-size:var(--type-meta);text-align:center}
.c-hero__pause{inline-size:auto;padding-inline:var(--space-3);border-radius:var(--radius-pill);font-size:var(--type-meta)}
.c-hero:not([data-ready=true]) .c-hero__controls,.no-js .c-hero__controls{display:none}
.no-js .c-hero__slide:not(:first-child){display:none}
@media(min-width:48rem){.c-hero__inner{position:relative;display:block;block-size:clamp(28rem,38vw,34rem)}.c-hero__media{position:absolute;inset:0;min-block-size:0}.c-hero__content{position:relative;z-index:1;inline-size:min(42%,34rem);block-size:calc(100% - (var(--space-12) * 2));min-block-size:22rem;margin:var(--space-12);padding:clamp(var(--space-6),3vw,var(--space-10));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) var(--hero-content-opacity,95%),transparent);box-shadow:var(--shadow-md)}}
@media(max-width:47.99rem){.c-hero{padding-block:var(--space-4)}.c-hero__inner{position:relative;display:block;min-block-size:clamp(31rem,138vw,39rem)}.c-hero__media{position:absolute;inset:0;min-block-size:0}.c-hero__content{position:absolute;inset-inline:var(--space-3);inset-block-end:var(--space-3);z-index:1;align-content:start;gap:var(--space-3);max-block-size:calc(100% - (var(--space-6) * 2));padding:var(--space-4);overflow:auto;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg) max(var(--hero-content-opacity,95%),97%),transparent);box-shadow:var(--shadow-md)}.c-hero .c-hero__heading,.c-hero .c-hero__heading--small,.c-hero .c-hero__heading--medium,.c-hero .c-hero__heading--large{font-size:clamp(1.9rem,9vw,2.5rem)}.c-hero__text{font-size:var(--step--1);line-height:1.45}.c-hero__actions{gap:var(--space-2);margin-block-start:0}.c-hero__button,.c-hero__secondary-button{flex:1 1 10rem;padding-inline:var(--space-3)}.c-hero__controls{inset-inline-end:calc(var(--gutter) + var(--space-3));inset-block-start:calc(var(--space-4) + var(--space-3));inset-block-end:auto;inline-size:auto;margin:0;padding:var(--space-1);background:color-mix(in srgb,var(--color-bg) 96%,transparent);box-shadow:var(--shadow-sm)}.c-hero__pagination{margin-inline:0}.c-hero__pause{display:none}}
@media(max-width:47.99rem){.c-hero--mobile-center .c-hero__content{inset-block-start:50%;inset-block-end:auto;transform:translateY(-50%)}.c-hero--mobile-center .c-hero__controls{inset-block-start:var(--space-5)}}
@media(max-width:47.99rem){.c-hero__content{background:color-mix(in srgb,var(--color-bg) var(--hero-content-opacity,95%),transparent)}}
@media(prefers-reduced-motion:reduce){.c-hero__slide{scroll-behavior:auto}.c-hero__slide.is-entering{animation:none}}
.c-hero__heading--small{font-size:clamp(2rem,3vw,2.75rem)}.c-hero__heading--medium{font-size:clamp(2.3rem,3.5vw,3.25rem)}.c-hero__heading--large{font-size:clamp(2.5rem,4vw,3.75rem)}
