.hero-section{padding:0 0 var(--sp-lg)}.hero{aspect-ratio:2/1;border-radius:var(--radius-card);max-height:624px;overflow:hidden;position:relative}.hero-image{height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.hero-overlay{background:linear-gradient(70deg,rgba(34,129,131,.85) 9%,rgba(34,129,131,0) 76%);inset:0;position:absolute}.hero-content{display:flex;flex-direction:column;inset:0;justify-content:flex-end;padding:56px;position:absolute;z-index:2}.hero__heading{color:var(--cream);font-family:var(--serif);font-size:64px;font-weight:400;letter-spacing:-2.5px;line-height:1;margin:0 0 28px;max-width:720px}.hero__heading.fx-hero{position:relative}.hero__heading.fx-hero:before{-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(100deg,transparent,transparent 40%,hsla(0,0%,100%,.9) 50%,transparent 60%,transparent);background-position:100% 0;background-size:240% 100%;content:attr(data-text);inset:0;pointer-events:none;position:absolute;white-space:pre-line;-webkit-text-fill-color:transparent;animation:hero-shimmer 14s ease-in-out infinite;animation-delay:2.4s;color:transparent}@keyframes hero-shimmer{0%,82%{background-position:100% 0}to{background-position:-50% 0}}.fx-char{display:inline-block;filter:blur(14px);opacity:0;transform:translateY(3px);transition:opacity .7s ease,filter .7s ease,transform .7s ease;white-space:pre}.fx-char.is-clear{filter:blur(0);opacity:1;transform:translateY(0)}.hero__heading.fx-hero~.hero-cta-row>*{animation:hero-cta-in .7s ease forwards;opacity:0;transform:translateY(8px)}.hero__heading.fx-hero~.hero-cta-row>:first-child{animation-delay:1.75s}.hero__heading.fx-hero~.hero-cta-row>:nth-child(2){animation-delay:2.05s}@keyframes hero-cta-in{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.hero__heading.fx-hero:before{animation:none;opacity:0}.fx-char{filter:none;opacity:1;transform:none;transition:none}.hero__heading.fx-hero~.hero-cta-row>*{animation:none;opacity:1;transform:none}}.hero-cta-row{display:flex;flex-wrap:wrap;gap:12px}@media (max-width:1080px){.hero__heading{font-size:48px;letter-spacing:-1.5px}}@media (max-width:768px){.hero{aspect-ratio:4/5}.hero-content{padding:32px}.hero__heading{font-size:36px;letter-spacing:-1px}}