.tf-hero{position:relative;width:100vw;height:clamp(var(--hero-height-mobile, 320px), 45vw, var(--hero-height, 650px));margin-left:50%;transform:translateX(-50%);overflow:hidden}.tf-hero-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:var(--hero-focal,center center)}.tf-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,var(--hero-overlay,.25));pointer-events:none}.tf-hero-content{position:relative;z-index:2;width:1600px;max-width:90%;height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:center;color:#fff}.tf-hero-left .tf-hero-content{align-items:flex-start;text-align:left}.tf-hero-center .tf-hero-content{align-items:center;text-align:center}.tf-hero-right .tf-hero-content{align-items:flex-end;text-align:right}.tf-hero-title{max-width:1000px;margin:0;color:#fff;font-family:'Open Sans',sans-serif;font-size:clamp(var(--hero-title-size-mobile, 34px), 5vw, var(--hero-title-size, 80px));font-weight:600;line-height:1.05;text-align:inherit}.tf-hero-subtitle{max-width:750px;margin:1rem 0 0;color:#fff;font-family:'Lato',sans-serif;font-size:clamp(1rem, 1.5vw, 1.4rem);line-height:1.5;text-align:inherit}.tf-hero-button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;margin-top:2rem;padding:.9rem 1.4rem;background:#05C9BD;color:#fff;border:1px solid #05C9BD;border-radius:8px;font-size:.95rem;font-weight:600;line-height:1;letter-spacing:.02em;text-decoration:none;box-shadow:0 4px 14px rgb(0 0 0 / .12);transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.tf-hero-button i{display:inline-block;font-size:1.15em;line-height:1;color:inherit;transition:transform .25s ease}.tf-hero-button:hover,.tf-hero-button:focus{background:#339;border-color:#339;color:#fff;transform:translateY(-2px);box-shadow:0 7px 20px rgb(0 0 0 / .18);text-decoration:none}.tf-hero-button:hover i,.tf-hero-button:focus i{transform:translateX(4px)}.tf-hero-button:focus-visible{outline:2px solid #fff;outline-offset:3px}@media (max-width:768px){.tf-hero-content{max-width:88%}.tf-hero-subtitle{font-size:1rem}.tf-hero-button{margin-top:1.4rem;padding:.8rem 1.2rem;font-size:.9rem}}@media (prefers-reduced-motion:reduce){.tf-hero-button,.tf-hero-button i{transition:none}}