/* Home page: full-bleed editorial composition. */
.page-home { background: #f4f6f8; }
.page-home .hero { min-height: 88dvh; padding-block: clamp(8rem, 12vw, 11rem) clamp(4rem, 8vw, 7rem) !important; }
.page-home .hero-inner { width: min(calc(100% - 48px), 1400px) !important; max-width: 1400px !important; grid-template-columns: minmax(0, .82fr) minmax(460px, 1.18fr); align-items: stretch; gap: clamp(2rem, 5vw, 6rem) !important; }
.page-home .hero-content { display: flex; flex-direction: column; justify-content: center; max-width: 680px !important; }
.page-home .hero-content h1 { font-size: clamp(3.35rem, 7vw, 7.2rem) !important; letter-spacing: -.075em !important; line-height: .88 !important; text-wrap: balance; }
.page-home .hero-content h1 span:nth-child(2) { display: inline-block; transform: translateX(.4em); }
.page-home .hero-image { min-height: 620px; border-radius: 1.75rem !important; clip-path: polygon(0 0, 94% 0, 100% 7%, 100% 100%, 6% 100%, 0 93%); }
.page-home .hero-image img { object-position: 62% center; }
.page-home .service-showcase { width: min(calc(100% - 48px), 1400px); padding-block: clamp(6rem, 11vw, 10rem); }
.page-home .service-showcase__rail { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; gap: 1.25rem; }
.page-home .showcase-card { min-height: 300px; clip-path: polygon(0 0, 94% 0, 100% 8%, 100% 100%, 7% 100%, 0 92%); border-radius: 0; }
.page-home .showcase-proof { min-height: 300px; border-radius: 0; clip-path: polygon(0 8%, 7% 0, 100% 0, 100% 92%, 94% 100%, 0 100%); }
.page-home .services, .page-home .why-choose, .page-home .target-audience, .page-home .value-proposition { width: 100%; }
@media (max-width: 900px) { .page-home .hero-inner { grid-template-columns: 1fr; } .page-home .hero-image { min-height: 480px; } .page-home .service-showcase__rail { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .page-home .hero-inner, .page-home .service-showcase { width: calc(100% - 32px) !important; } .page-home .hero-content h1 { font-size: clamp(3rem, 15vw, 4.6rem) !important; } .page-home .hero-content h1 span:nth-child(2) { transform: none; } .page-home .hero-image { min-height: 350px; } }
