.hero{position:relative;padding:var(--space-4xl) 0;background-color:var(--color-black);color:var(--color-white);overflow:hidden}.hero__bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0f0f0fb8,#0f0f0f94);z-index:1}.hero .container{position:relative;z-index:2}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero__inner{max-width:52rem}.hero__headline{font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:700;line-height:1.05;letter-spacing:-.04em;margin-bottom:var(--space-lg);color:var(--color-white);animation:hero-fade-up .7s cubic-bezier(.22,1,.36,1) both;animation-delay:.1s}.hero__subheadline{font-size:var(--text-lg);line-height:1.7;color:#ffffffb3;max-width:46ch;margin-bottom:var(--space-2xl);font-weight:400;animation:hero-fade-up .7s cubic-bezier(.22,1,.36,1) both;animation-delay:.28s}.hero__cta{background-color:var(--color-white);color:var(--color-black);border-color:var(--color-white);padding:.9375rem 2.25rem;font-size:.9375rem;animation:hero-fade-up .7s cubic-bezier(.22,1,.36,1) both;animation-delay:.46s}.hero__cta:hover{background-color:#e8e8e8;border-color:#e8e8e8}@media(min-width:768px){.hero{padding:7rem 0}.hero__headline{font-size:var(--text-5xl)}.hero__subheadline{font-size:var(--text-xl)}}@media(min-width:1200px){.hero{padding:9rem 0}}.services{padding:var(--space-4xl) 0;background:var(--color-white);color:var(--color-black)}.services__title{text-align:left;margin-bottom:var(--space-3xl);color:var(--color-black)}.services__grid{list-style:none;display:grid;grid-template-columns:1fr;gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.services__card{background:var(--color-white);padding:var(--space-2xl) var(--space-xl);transition:background-color .2s}.services__card:hover{background-color:var(--color-black);color:var(--color-white)}.services__card:hover .services__card-title{color:var(--color-white)}.services__card:hover .services__card-desc{color:#ffffffb3}.services__icon{font-size:1.75rem;display:block;margin-bottom:var(--space-lg);line-height:1}.services__card-title{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;color:var(--color-black);margin-bottom:var(--space-sm);transition:color .2s}.services__card-desc{font-size:.9375rem;color:var(--color-text-muted);line-height:1.7;margin:0;transition:color .2s}@media(min-width:768px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.services__grid{grid-template-columns:repeat(4,1fr)}}.services[data-bg=light]{background:var(--color-surface-dark)}.services[data-bg=dark]{background:var(--color-black);color:var(--color-white)}.services[data-bg=dark] .services__title{color:var(--color-white)}.services[data-bg=dark] .services__grid{background:#ffffff1a;border-color:#ffffff1a}.services[data-bg=dark] .services__card{background:var(--color-black)}.services[data-bg=dark] .services__card:hover{background:var(--color-white);color:var(--color-black)}.services[data-bg=dark] .services__card-title{color:var(--color-white)}.services[data-bg=dark] .services__card:hover .services__card-title{color:var(--color-black)}.services[data-bg=dark] .services__card-desc{color:#ffffff8c}.services[data-bg=dark] .services__card:hover .services__card-desc{color:var(--color-gray)}.about{padding:var(--space-4xl) 0;background:var(--color-black);color:var(--color-white)}.about__inner{max-width:56rem}.about__title{color:var(--color-white);margin-bottom:var(--space-xl)}.about__body{font-size:var(--text-lg);line-height:1.85;color:#ffffffb8;border-left:2px solid var(--color-white);padding-left:var(--space-xl);font-weight:400}@media(min-width:768px){.about__body{font-size:var(--text-xl)}}.about[data-bg=light]{background:var(--color-surface-dark);color:var(--color-black)}.about[data-bg=light] .about__title{color:var(--color-black)}.about[data-bg=light] .about__body{color:var(--color-text-muted);border-left-color:var(--color-black)}.cta-banner{padding:var(--space-4xl) 0;background:var(--color-white);color:var(--color-black);border-top:1px solid var(--color-border)}.cta-banner__inner{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xl)}.cta-banner__headline{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--color-black);max-width:28ch}.cta-banner__btn{background-color:var(--color-black);color:var(--color-white);border-color:var(--color-black);white-space:nowrap;padding:.9375rem 2.25rem}.cta-banner__btn:hover{background-color:#2a2a2a;border-color:#2a2a2a}@media(min-width:768px){.cta-banner__inner{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-2xl)}.cta-banner__headline{font-size:var(--text-4xl);max-width:none}}.cta-banner[data-bg=light]{background:var(--color-surface-dark);color:var(--color-black);border-top-color:var(--color-border)}.cta-banner[data-bg=light] .cta-banner__headline{color:var(--color-black)}.cta-banner[data-bg=dark]{background:var(--color-black);color:var(--color-white);border-top-color:#ffffff1a}.cta-banner[data-bg=dark] .cta-banner__headline{color:var(--color-white)}.cta-banner[data-bg=dark] .cta-banner__btn{background-color:var(--color-white);color:var(--color-black);border-color:var(--color-white)}.cta-banner[data-bg=dark] .cta-banner__btn:hover{background-color:#e8e8e8;border-color:#e8e8e8}.featured-projects[data-astro-cid-a6trngsu]{padding-block:var(--space-4xl);background-color:var(--color-surface-dark)}.featured-projects__title[data-astro-cid-a6trngsu]{margin-bottom:var(--space-2xl)}.featured-projects__grid[data-astro-cid-a6trngsu]{list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-2xl);margin-bottom:var(--space-2xl)}@media(min-width:768px){.featured-projects__grid[data-astro-cid-a6trngsu]{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.featured-projects__grid[data-astro-cid-a6trngsu]{grid-template-columns:repeat(3,1fr)}}.featured-projects__footer[data-astro-cid-a6trngsu]{margin-top:var(--space-xl)}.featured-projects[data-astro-cid-a6trngsu][data-bg=dark]{background-color:var(--color-black);color:var(--color-white)}.featured-projects[data-astro-cid-a6trngsu][data-bg=dark] .featured-projects__title[data-astro-cid-a6trngsu]{color:var(--color-white)}.featured-projects[data-astro-cid-a6trngsu][data-bg=light]{background-color:var(--color-surface-dark)}
