/* Shared type scale and spacing across English and Spanish pages. */
:root{--title-size:clamp(2.5rem,4.4vw,3.75rem);--section-size:clamp(2rem,3vw,2.625rem);--content-size:clamp(1.65rem,2.3vw,2rem);--card-size:1.5rem;--body-size:1rem;--body-leading:1.8;--section-space:clamp(3rem,5vw,4.5rem)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-size:var(--body-size);line-height:var(--body-leading)}
h1,h2,h3{text-wrap:balance}h1{font-size:var(--title-size);line-height:1.12;letter-spacing:-.035em}h2{font-size:var(--section-size);line-height:1.2;letter-spacing:-.025em}h3{font-size:var(--card-size);line-height:1.3;letter-spacing:-.012em}p{margin:0 0 1.1rem}p:last-child{margin-bottom:0}
.wrap{padding-top:var(--section-space);padding-bottom:var(--section-space)}.wrap.hero{padding:0}.eyebrow,.intro .eyebrow,.section-top .eyebrow,.about-bio .eyebrow,.family-message .eyebrow,.aside .eyebrow{font-size:.6875rem;line-height:1.5;letter-spacing:.16em;margin:0 0 1rem}.eyebrow:before{flex-shrink:0}
.hero h1,.page-hero h1,.about-hero h1{font-size:var(--title-size);line-height:1.12;letter-spacing:-.035em}.hero>div:first-child{padding-top:4rem;padding-bottom:4rem}.hero p:not(.eyebrow){font-size:var(--body-size);line-height:var(--body-leading);margin:1.5rem 0}.page-hero .wrap{padding-top:2.75rem;padding-bottom:3rem}.page-hero p:not(.eyebrow){font-size:1.125rem;line-height:1.65;margin:1.25rem 0 0}.breadcrumbs{font-size:.75rem;margin-bottom:1.5rem}
.intro{gap:3.5rem;align-items:start}.intro p,.section-top p,.process>div>p:not(.eyebrow),.step p,.about p:not(.eyebrow),.about-bio p,.about-values p,.about-focus p,.guide-intro p:not(.eyebrow),.guide-options p,.learning-grid p,.family-message p:not(.eyebrow),.contact>.wrap>p:not(.eyebrow){font-size:var(--body-size);line-height:var(--body-leading)}
.section-top{gap:2rem;margin-bottom:2rem;align-items:start}.section-top p{max-width:340px;margin:0}.section-top .eyebrow{margin-bottom:1rem}.section-top h2,.intro h2,.process h2,.about h2,.faq-grid h2,.learning h2,.contact h2,.about-bio h2,.about-focus h2,.reviews-section h2,.guide-intro h2{font-size:var(--section-size);line-height:1.2;letter-spacing:-.025em}
.service-grid{border:0;gap:1px;background:#d5dce2;padding:1px}.service{min-height:0;padding:1.75rem;box-shadow:0 3px 10px #12283e03;border:0}.service h3,.step h3,.learning-grid h3,.guide-options h3,.about-values h3{font-size:var(--card-size);line-height:1.3;letter-spacing:-.012em}.service p{font-size:var(--body-size);line-height:var(--body-leading);margin:1rem 0 1.5rem}.service .number{margin-bottom:1rem}.service a,.learning-grid a,.guide-intro>a,.reviews-section .section-top>a{font-size:.8125rem;line-height:1.6}.service a{padding-top:1rem}.number{font-size:.75rem}.service:hover{box-shadow:inset 0 3px 0 var(--gold);background:#fff}
.process,.faq-grid,.about .wrap,.about-hero,.about-bio .wrap{gap:3.5rem}.process>div>p:not(.eyebrow){margin-top:1.25rem;max-width:none}.step{padding:1.5rem 0}.step p{margin:.625rem 0 0}.planning-guide .wrap{gap:3.5rem}.guide-options>a{padding:1.25rem 0}.guide-options p{margin:.5rem 0 0}.family-message{padding:2.5rem}.family-message h2{font-size:var(--content-size);line-height:1.25;letter-spacing:-.02em}.family-feature{margin-bottom:var(--section-space)}.family-message p:not(.eyebrow){margin:1.25rem 0 0;max-width:none}
.about p:not(.eyebrow){margin:1.25rem 0 1.75rem}.about-hero h2{font-size:var(--content-size);line-height:1.25}.about-hero .lead{font-size:var(--body-size);line-height:var(--body-leading);margin:1.25rem 0 1.75rem}.about-role{font-size:.75rem;line-height:1.6;margin:1rem 0 1.75rem;letter-spacing:.08em}.credentials{font-size:.8125rem;line-height:1.65;margin:1.25rem 0}.about-values{margin-top:2rem}.about-values article,.learning-grid article{padding:1.75rem}.about-values p,.learning-grid p{margin:1rem 0 1.25rem}.about-focus{padding-top:0}
/* Clear reading rhythm and more deliberate service-page panels. */
.page-content{grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:3rem;align-items:start}.page-content>div{min-width:0}.page-content h2,.page-content .story-section h2,.privacy-content h2{font-size:var(--content-size);line-height:1.25;letter-spacing:-.02em;margin:0 0 .875rem}.page-content h3,.page-content .benefit-list h3{font-size:1.375rem;line-height:1.35;margin:0 0 .625rem}.page-content p,.page-content .lead,.page-content .benefit-list p,.privacy-content p{font-size:var(--body-size);line-height:var(--body-leading);max-width:68ch;margin:0 0 1.125rem}.page-content p:last-child{margin-bottom:0}.page-content .lead{background:#f2f5f7;border-left:3px solid var(--gold);padding:1.25rem 1.5rem}.service-photo{margin:0 0 2rem}.story-section{margin:2rem 0 0;padding-top:2rem;border-top:1px solid #dce2e7}.story-section>p{line-height:var(--body-leading)}.benefit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;border:0;margin-top:1.5rem}.benefit-list>div{padding:1.25rem;background:#f4f6f8;border:1px solid #e0e5ea;border-top:2px solid #b2996b}.page-content .benefit-list h3{font-size:1.25rem}.page-content .benefit-list p{font-size:var(--body-size)}.page-content .faq-heading{margin-top:2.5rem!important;margin-bottom:1.25rem}.page-content details,.faq-grid details{padding:1.125rem 0}.page-content summary,.faq-grid summary{font-size:var(--body-size);line-height:1.6;font-weight:600}.page-content details p,.faq-grid details p{font-size:var(--body-size);line-height:var(--body-leading);margin:1rem 0 0}.page-content .subtle{margin-top:1.5rem}
.aside{padding:1.5rem;background:linear-gradient(145deg,#eff3f6,#f8fafb);border:1px solid #d9e1e8;border-top:3px solid var(--gold);box-shadow:0 8px 28px #12283e06}.page-content .aside h3,.related-services h3{font-size:1.5rem;margin:0 0 1rem}.page-content .aside p,.aside li{font-size:.9375rem;line-height:1.75}.aside ul{margin:1rem 0;padding-left:1.125rem}.aside li{margin:.625rem 0}.aside .btn{width:100%;text-align:center;margin-top:1rem}.page-topics{margin-bottom:1.5rem;padding-bottom:1.5rem}.page-topics a,.related-services>a{font-size:.8125rem;line-height:1.6}.page-topics strong{font-size:.75rem}.sidebar-attorney{margin-top:1.5rem;padding-top:1.5rem}.sidebar-attorney strong{font-size:1.25rem}.sidebar-attorney a{font-size:.75rem;line-height:1.5}.related-services{margin-top:1.5rem;padding-top:1.5rem}.related-services>a{padding:.75rem 0}
.expanded-reviews .review-card{padding:1.5rem}.expanded-reviews blockquote{font-size:1.125rem;line-height:1.75;margin:1rem 0 1.5rem}.review-author strong{font-size:.8125rem}.review-author a{font-size:.75rem}.contact-grid{margin-top:2rem}.contact-card{padding:1.5rem 1.75rem}.contact-card h3{font-size:1.375rem}.contact-card>a{font-size:1.375rem;line-height:1.5;margin:.75rem 0}.contact-card small{font-size:.8125rem;line-height:1.7}.office-address address{font-size:var(--body-size)}.office-address .directions-link{font-size:.8125rem}.contact>.wrap>p:not(.eyebrow){margin:1.25rem auto}.footerlinks,.footer-contact span{font-size:.8125rem;line-height:1.7}.fine{font-size:.75rem;line-height:1.8}.footer-contact a{font-size:1.25rem}.footer-office address{font-size:1rem}.footer-office>a{font-size:.8125rem}.links{font-size:.8125rem}.service-dropdown>a{font-size:.875rem}.btn{font-size:.75rem;letter-spacing:.055em}.privacy-content section{margin-bottom:2rem}
@media(max-width:1100px){.page-content{grid-template-columns:minmax(0,1fr) 275px;gap:2rem}.benefit-list{grid-template-columns:1fr}}
@media(max-width:800px){.page-content{grid-template-columns:1fr}.process,.faq-grid,.about .wrap,.about-hero,.about-bio .wrap,.intro,.planning-guide .wrap{gap:2rem}.section-top{margin-bottom:1.75rem}.section-top p{margin-top:1rem;max-width:none}.family-message{padding:1.75rem}.page-hero .wrap{padding-top:2rem;padding-bottom:2.25rem}.hero>div:first-child{padding-top:3rem;padding-bottom:2.5rem}.links{font-size:1rem}.service{padding:1.5rem}.office-address .directions-link{grid-column:auto}.page-content .lead{padding:1.125rem 1.25rem}.expanded-reviews blockquote{font-size:1.125rem}}
@media(max-width:480px){.hero h1,.page-hero h1,.about-hero h1{font-size:2.5rem}.contact-card{padding:1.5rem}.service h3{font-size:var(--card-size)}}
.page-content .aside p.eyebrow{font-size:.6875rem;line-height:1.5;letter-spacing:.16em;margin-bottom:1rem;color:var(--gold)}
