.hero{padding-inline:var(--site-padding);padding-block:var(--section-space-s) var(--section-space-m)}.hero__inner{gap:var(--space-xxl);max-inline-size:var(--content-width);grid-template-columns:1.2fr 1fr;align-items:center;margin-inline:auto;display:grid;@media (width<=45rem){gap:var(--space-xl);grid-template-columns:1fr}}.hero__text{align-items:flex-start;gap:var(--space-m);flex-direction:column;display:flex}.hero__eyebrow{font-size:var(--text-s);color:var(--primary)}.hero__lead{font-size:var(--text-l);color:var(--neutral);margin-block-end:var(--space-s)}.hero__button{&:hover{--btn-background:var(--primary);--btn-border-color:var(--primary)}}.portrait{aspect-ratio:1;inline-size:100%;max-inline-size:28.75rem;margin-inline-start:auto;position:relative;@media (width<=45rem){order:-1;max-inline-size:18.75rem;margin-inline:auto}}.portrait__bg{border-radius:calc(var(--radius-l) + var(--radius-s));background:radial-gradient(circle at 85% 15%, var(--tertiary-50), transparent 45%), radial-gradient(circle at 10% 90%, var(--accent-50), transparent 50%), linear-gradient(160deg, color-mix(in oklab, var(--primary) 85%, var(--white)) 0%, var(--primary) 45%, var(--primary-400) 100%);box-shadow:0 30px 60px -20px var(--primary-50);position:absolute;inset:20% 0 0;overflow:hidden;&:before{content:"";background-image:linear-gradient(var(--white-10) 1px, transparent 1px), linear-gradient(90deg, var(--white-10) 1px, transparent 1px);background-size:var(--space-l) var(--space-l);mask-image:radial-gradient(ellipse at 50% 30%, var(--black) 20%, transparent 75%);position:absolute;inset:0}&:after{content:"";aspect-ratio:1;border:1px solid var(--white-20);inline-size:70%;box-shadow:0 0 0 40px var(--white-10);border-radius:50%;position:absolute;inset-block-start:4%;inset-inline-start:15%}}.portrait__img{z-index:1;border-end-end-radius:calc(var(--radius-l) + var(--radius-s));border-end-start-radius:calc(var(--radius-l) + var(--radius-s));block-size:auto;inline-size:100%;position:absolute;inset-block-end:0;inset-inline-start:0}.portrait__chip{z-index:2;align-items:center;gap:var(--space-xs);padding-block:var(--space-xs);padding-inline:var(--space-s);background:var(--white-90);backdrop-filter:blur(8px);box-shadow:var(--shadow-m);font-size:var(--text-s);white-space:nowrap;border-radius:999px;animation:6s ease-in-out infinite portrait-float;display:inline-flex;position:absolute;@media (prefers-reduced-motion:reduce){animation:none}}.portrait__chip--top{inset-block-start:40%;inset-inline-start:-8%;@media (width<=45rem){inset-inline-start:-4%}}.portrait__chip--bottom{animation-delay:-3s;inset-block-end:9%;inset-inline-end:-6%;& .portrait__dot{background:var(--primary);box-shadow:0 0 0 3px var(--primary-20)}@media (width<=45rem){inset-inline-end:-4%}}.portrait__dot{background:var(--secondary);block-size:.5rem;inline-size:.5rem;box-shadow:0 0 0 3px var(--secondary-20);border-radius:50%}@keyframes portrait-float{50%{translate:0 -6px}}.stats{padding-inline:var(--site-padding);border-block:var(--border);background:var(--white)}.stats__grid{max-inline-size:var(--content-width);grid-template-columns:repeat(3,1fr);margin-inline:auto;display:grid;@media (width<=45rem){grid-template-columns:1fr}}.stats__item{gap:var(--space-xxs);padding-block:var(--space-l);padding-inline:var(--space-m);text-align:center;flex-direction:column;display:flex;&+&{border-inline-start:var(--border);@media (width<=45rem){border-inline-start:0;border-block-start:var(--border)}}}.stats__value{font-family:var(--font-heading);font-size:var(--h2)}.stats__label{font-size:var(--text-s);color:var(--neutral)}.services{padding-inline:var(--site-padding);padding-block:var(--section-space-m)}.services__inner{gap:var(--container-spacing);max-inline-size:var(--content-width);flex-direction:column;margin-inline:auto;display:flex}.services__grid{gap:var(--grid-gap);grid-template-columns:repeat(2,1fr);display:grid;@media (width<=45rem){grid-template-columns:1fr}}.service-card{gap:var(--space-xs);padding:var(--space-l);background:var(--white);border:var(--border);border-radius:var(--radius-m);flex-direction:column;display:flex}.service-card__text{color:var(--neutral)}.contact{padding-inline:var(--site-padding);padding-block-end:var(--section-space-m)}.contact__inner{align-items:center;gap:var(--space-s);max-inline-size:var(--content-width);text-align:center;flex-direction:column;margin-inline:auto;display:flex}.contact__text{color:var(--neutral)}.contact__mail{font-size:var(--h3);overflow-wrap:anywhere;text-decoration:none;&:hover{text-decoration:underline}}
