.local-template-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-height:0}
html[data-homepage-hero-state="loading"] section:has([data-hero-slide-index]){visibility:hidden}
html[data-homepage-hero-state="fallback"] section:has([data-hero-slide-index]){visibility:hidden}
.local-template-card{position:relative;display:block;min-width:0;aspect-ratio:9/16;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#252525;color:#fff;text-align:left;cursor:pointer;box-shadow:0 16px 42px rgba(0,0,0,.16);transition:transform .32s cubic-bezier(.2,.7,.2,1),border-color .25s ease,box-shadow .32s ease}
.local-template-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .62s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.local-template-card:hover{z-index:1;transform:translateY(-5px);border-color:rgba(255,255,255,.22);box-shadow:0 24px 56px rgba(0,0,0,.34)}
.local-template-card:hover img{transform:scale(1.055);filter:saturate(1.1) contrast(1.02)}
.local-template-card:before{content:"";position:absolute;z-index:1;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.12),transparent 28%);opacity:.45;pointer-events:none}
.local-template-card:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.92));pointer-events:none}
.local-template-card__badge{position:absolute;z-index:2;top:12px;left:12px;padding:5px 8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(10,10,12,.48);color:rgba(255,255,255,.9);font-size:10px;font-weight:650;line-height:1;backdrop-filter:blur(10px)}
.local-template-card__copy{position:absolute;z-index:2;left:14px;right:14px;bottom:14px;display:flex;flex-direction:column;gap:5px;padding-right:54px}
.local-template-card__copy strong{display:-webkit-box;overflow:hidden;font-size:14px;line-height:1.2;font-weight:680;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.local-template-card__copy small{overflow:hidden;color:rgba(255,255,255,.68);font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.local-template-card__copy em{color:rgba(255,255,255,.46);font-size:10px;font-style:normal;line-height:1.2}
.local-template-card__cta{position:absolute;z-index:3;right:12px;bottom:12px;display:flex;align-items:center;gap:3px;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:5px 8px;background:rgba(10,10,12,.42);color:#fff;font-size:10px;font-weight:650;opacity:0;transform:translateY(4px);backdrop-filter:blur(10px);transition:opacity .2s ease,transform .2s ease,background .2s ease}
.local-template-card__cta b{font-size:12px;font-weight:500}
.local-template-card:hover .local-template-card__cta,.local-template-card:focus-visible .local-template-card__cta{opacity:1;transform:translateY(0)}
.local-template-card:focus-visible{outline:2px solid var(--color-accent-default,#f45125);outline-offset:3px;border-color:rgba(255,255,255,.28)}
.local-template-card:active{transform:translateY(-1px) scale(.985)}

[data-homepage-showcase-active="true"]{position:relative}
[data-homepage-showcase-active="true"]>:not([data-homepage-showcase-hero]){display:none!important}
.homepage-hero{position:relative;height:clamp(500px,-33.333px + 33.3333vw,600px);overflow:hidden;border-radius:24px;background:#08080a;color:#fff;isolation:isolate}
.homepage-hero__viewport,.homepage-hero__slide{position:absolute;inset:0}
.homepage-hero__slide{overflow:hidden;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .72s ease,visibility .72s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.homepage-hero__slide[data-active="true"]{z-index:1;opacity:1;visibility:visible;transform:scale(1)}
.homepage-hero__cover,.homepage-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.homepage-hero__cover{z-index:0}
.homepage-hero__video{z-index:1;opacity:0;transition:opacity .35s ease;background:#08080a}
.homepage-hero__slide[data-video-playing="true"] .homepage-hero__video{opacity:1}
.homepage-hero__slide[data-video-failed="true"] .homepage-hero__video{display:none}
.homepage-hero__shade{position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.22) 50%,rgba(0,0,0,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 55%);pointer-events:none}
.homepage-hero__copy{position:absolute;z-index:3;left:40px;right:min(32%,420px);top:40px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-transform:uppercase;text-shadow:0 2px 24px rgba(0,0,0,.32)}
.homepage-hero__copy span{color:var(--color-accent-default,#ff5029);font-size:12px;font-weight:750;letter-spacing:.12em}
.homepage-hero__copy h1{max-width:860px;margin:0;font-size:clamp(34px,4.1vw,64px);font-weight:800;line-height:1.05;letter-spacing:-.03em}
.homepage-hero__copy p{margin:4px 0 0;color:rgba(255,255,255,.76);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:none}
.homepage-hero__arrow{position:absolute;z-index:5;top:50%;display:grid;width:44px;height:44px;place-items:center;transform:translateY(-50%);border:1px solid rgba(255,255,255,.32);border-radius:50%;background:rgba(8,8,10,.35);color:#fff;font-size:32px;line-height:1;cursor:pointer;backdrop-filter:blur(12px);transition:background .2s ease,border-color .2s ease,transform .2s ease}
.homepage-hero__arrow:hover{border-color:rgba(255,255,255,.7);background:rgba(8,8,10,.58)}
.homepage-hero__arrow:active{transform:translateY(-50%) scale(.94)}
.homepage-hero__arrow--previous{left:20px}
.homepage-hero__arrow--next{right:20px}
.homepage-hero__dots{position:absolute;z-index:5;left:50%;bottom:22px;display:flex;gap:8px;transform:translateX(-50%);padding:8px 10px;border-radius:999px;background:rgba(8,8,10,.28);backdrop-filter:blur(10px)}
.homepage-hero__dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.38);cursor:pointer;transition:width .25s ease,background .25s ease}
.homepage-hero__dots button[data-active="true"]{width:24px;border-radius:999px;background:#fff}
.homepage-hero__arrow:focus-visible,.homepage-hero__dots button:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media (max-width:1100px){
  .local-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .local-template-card:nth-child(n+4){display:none}
}

@media (max-width:767px){
  .homepage-hero{min-height:520px;height:calc(100svh - 88px);max-height:720px}
  .homepage-hero__video{transition-duration:.25s}
  .homepage-hero__shade{background:linear-gradient(180deg,rgba(0,0,0,.5),transparent 45%,rgba(0,0,0,.58))}
  .homepage-hero__copy{left:20px;right:20px;top:24px;gap:6px}
  .homepage-hero__copy h1{font-size:clamp(32px,10vw,48px);line-height:1.08}
  .homepage-hero__copy p{font-size:12px}
  .homepage-hero__arrow{top:auto;bottom:18px;width:40px;height:40px;transform:none;background:rgba(8,8,10,.48)}
  .homepage-hero__arrow:active{transform:scale(.94)}
  .homepage-hero__arrow--previous{left:18px}
  .homepage-hero__arrow--next{right:18px}
  .homepage-hero__dots{bottom:20px;max-width:calc(100% - 136px);overflow:hidden}
}

@media (max-width:640px){
  .local-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .local-template-card:nth-child(n+3){display:none}
  .local-template-card{border-radius:11px}
  .local-template-card__copy{left:11px;right:11px;bottom:11px;padding-right:0}
  .local-template-card__copy small{display:none}
  .local-template-card__cta{top:10px;right:10px;bottom:auto;padding:5px 7px;opacity:1}
  .local-template-card__badge{top:10px;left:10px}
}

@media (hover:none){
  .local-template-card__cta{opacity:1;transform:none}
  .local-template-card:hover{transform:none;box-shadow:0 16px 42px rgba(0,0,0,.16)}
}

@media (prefers-reduced-motion:reduce){
  .homepage-hero__slide,.homepage-hero__video,.homepage-hero__dots button,.local-template-card,.local-template-card img,.local-template-card__cta{transition:none}
}
