body{background:radial-gradient(circle at 0 0,#020617 0,#000 55%,#020617 100%)}.section{padding:var(--space-8) 0}.section-shell{padding-top:var(--space-2);padding-bottom:var(--space-2)}.section-kicker{font-size:0.75rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2)}.section-title{font-size:var(--font-size-3xl);letter-spacing:0.12em;text-transform:uppercase;margin-bottom:var(--space-3)}.section-header{text-align:left;max-width:48rem;margin:0 auto var(--space-6)}.section-header.text-center{text-align:center}.section-header p{margin-bottom:0}.hero-age-note{font-size:0.78rem;color:var(--color-text-muted);max-width:40ch}.directory-card-media{margin-bottom:var(--space-4);border-radius:var(--radius-lg);overflow:hidden}.directory-card-image{width:100%;height:auto;object-fit:cover;display:block}.section-experience .section-copy,.section-about .section-copy{align-self:center}.media-frame{border-radius:var(--radius-xl);overflow:hidden;background:radial-gradient(circle at 0 0,rgba(248,250,252,0.04) 0,transparent 50%),rgba(15,23,42,0.98)}.media-image{width:100%;height:100%;object-fit:cover;display:block}.feature-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);margin-bottom:var(--space-3);padding-left:0}.feature-item{position:relative;padding-left:1.35rem;font-size:0.9rem;color:var(--color-text-secondary)}.feature-item::before{content:"";position:absolute;left:0;top:0.55rem;width:7px;height:7px;border-radius:999px;background:radial-gradient(circle at 30% 0,#f97373 0,#b91c1c 45%,#7f1d1d 100%);box-shadow:0 0 0 4px rgba(127,29,29,0.45)}.section-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3)}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);counter-reset:steps-counter;margin:0;padding:0}.step-card{position:relative;padding-top:var(--space-6);min-height:100%}.step-number{position:absolute;top:var(--space-4);left:var(--space-5);font-size:0.8rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--color-text-muted)}.step-title{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.step-link{text-decoration:underline;text-decoration-color:rgba(248,113,113,0.7);text-underline-offset:0.18em}.step-link:hover{color:var(--color-accent)}.testimonials-grid{align-items:stretch}.testimonial-card p{margin-bottom:var(--space-3)}.testimonial-meta{font-size:0.8rem;color:var(--color-text-muted)}.cases-grid .case-card{min-height:100%}.case-title{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.case-link{text-decoration:underline;text-decoration-color:rgba(148,163,184,0.8);text-underline-offset:0.18em;font-size:0.85rem;color:var(--color-text-secondary)}.case-link:hover{color:var(--color-accent)}.why-grid{margin-top:var(--space-3)}.why-item{padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);background:radial-gradient(circle at 0 0,rgba(248,250,252,0.02) 0,transparent 45%),rgba(15,23,42,0.95)}.why-title{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.legal-note{align-self:stretch;padding:var(--space-5);border-radius:var(--radius-xl);border:1px solid rgba(239,68,68,0.6);background:radial-gradient(circle at 0 0,rgba(248,113,113,0.18) 0,transparent 55%),rgba(15,23,42,0.97);box-shadow:0 22px 60px rgba(127,29,29,0.55)}.legal-title{font-size:var(--font-size-xl);margin-bottom:var(--space-3)}.legal-link{text-decoration:underline;text-decoration-color:rgba(248,113,113,0.85);text-underline-offset:0.2em;font-size:0.85rem}.faq-grid{align-items:flex-start}.faq-question{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.faq-link{text-decoration:underline;text-decoration-color:rgba(148,163,184,0.8);text-underline-offset:0.18em;font-size:0.85rem}.final-cta-shell{max-width:var(--layout-max-width)}.final-cta-content{border-radius:24px}.final-cta-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-6);margin-top:var(--space-4);align-items:flex-start}.final-cta-subtitle{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.final-cta-list{display:flex;flex-direction:column;gap:0.5rem;padding-left:0}.final-cta-link{text-decoration:underline;text-decoration-color:rgba(148,163,184,0.7);text-underline-offset:0.18em;font-size:0.9rem;color:var(--color-text-secondary)}.final-cta-link:hover{color:var(--color-accent)}.final-cta-note{font-size:0.8rem;margin-top:var(--space-2)}.final-cta-legal{margin-top:var(--space-4);font-size:0.8rem;color:var(--color-text-muted)}.inline-link{text-decoration:underline;text-decoration-color:rgba(148,163,184,0.9);text-underline-offset:0.16em}.inline-link:hover{color:var(--color-accent)}.faq-column,.testimonials-copy{display:flex;flex-direction:column;gap:var(--space-4)}@media(max-width:1024px){.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.final-cta-grid{grid-template-columns:1fr}}@media(max-width:768px){.section{padding:var(--space-6) 0}.section-title{font-size:var(--font-size-2xl)}.steps-grid{grid-template-columns:1fr}.final-cta-grid{grid-template-columns:1fr;gap:var(--space-4)}.legal-note{margin-top:var(--space-4)}}@media(max-width:640px){.section-header{text-align:left}.testimonials-grid{grid-template-columns:1fr}.faq-grid{grid-template-columns:1fr}}

/* Home mobile: keep legal / FAQ / CTAs inside viewport */
.legal-note,.section-header,.faq-grid,.final-cta-content,.final-cta-actions,.section-ctas{max-width:100%;min-width:0}
.section-ctas .btn,.final-cta-actions .btn{max-width:100%}
@media (max-width:768px){
  .section-title{letter-spacing:0.06em;font-size:clamp(1.25rem,5.5vw,1.5rem)}
  .legal-note{padding:var(--space-4);box-sizing:border-box}
  .legal-title{overflow-wrap:anywhere}
  .final-cta-actions{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%}
  .final-cta-actions .btn{width:100%}
  .section-ctas{width:100%}
  .section-ctas .btn{width:100%}
}

/* Content sections: tighter composed width than hero on large desktops */
.layout-main > .section > .container-wide,
.layout-main > .section .final-cta-shell{
  max-width:var(--layout-max-width);
  margin-left:auto;
  margin-right:auto;
}
.layout-main > .hero > .container-wide{
  max-width:var(--layout-max-width-wide);
}
.directory-title-block p,
.directory-card .card-body > p,
.section-copy > p{
  max-width:42rem;
}
.directory-header{
  gap:var(--space-5);
}
.directory-filters{
  flex-shrink:0;
}
@media (min-width:1100px){
  .directory-title-block{max-width:30rem}
}
