:root{--ink:#173747;--muted:#586971;--green:#009fe3;--dark:#163e54;--paper:#ffffff;--sand:#eef9fe;--line:#d5eaf4;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.75}a{color:var(--green);text-underline-offset:5px}a:hover{color:#006e9e}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #006e9e;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{line-height:1.22;letter-spacing:-.035em;margin:0 0 24px;font-weight:500}h1,h2{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(40px,5vw,72px)}h2{font-size:clamp(32px,3.5vw,48px)}h3{font-size:27px}h4{font-size:24px}h6{font-size:17px}p{margin:0 0 24px}p:last-child{margin-bottom:0}ul,ol{padding-left:25px}li{margin:10px 0}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}.site-header{max-width:1320px;margin:auto;min-height:102px;padding:20px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;flex-shrink:0}.brand img{width:180px;height:64px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:29px}.site-header nav a{text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;padding:8px 0}.site-header nav a[aria-current]{border-bottom:2px solid var(--green)}.site-header nav a:last-child{background:var(--green);color:white;border-radius:100px;padding:12px 24px;border:0}.site-header nav a:last-child:hover{background:var(--dark)}.menu-toggle{display:none}.hero{max-width:1320px;margin:0 auto 32px;display:grid;grid-template-columns:1.05fr 1fr;min-height:355px;background:var(--sand);border-radius:0 0 36px 36px;overflow:hidden}.hero-copy{padding:70px 60px;align-self:center}.hero-subtitle{font-size:21px;color:var(--muted);line-height:1.5}.hero-visual{min-height:330px;height:100%}.hero-visual img{height:100%;width:100%;object-fit:cover}.home-hero{min-height:580px;grid-template-columns:1.12fr 1fr}.home-hero h1{font-size:clamp(40px,4.3vw,62px);line-height:1.13}.hero-copy a[role=button],a[role=button]{display:inline-flex;align-items:center;gap:28px;text-decoration:none;font-size:15px;font-weight:600;line-height:1.4}a[role=button]:after{content:'↗';font-size:22px}.hero-copy a[role=button]{background:var(--green);color:white;padding:17px 27px;border-radius:100px;margin-top:10px}.content-section{max-width:1180px;margin:auto;padding:64px 36px}.intro{max-width:930px;text-align:center;padding-top:72px;padding-bottom:72px}.intro p{max-width:780px;margin-left:auto;margin-right:auto}.intro p:last-child{font-weight:600;color:var(--green)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:38px}.service-card{padding:32px;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;background:#fff}.service-card:nth-child(2){background:#eef9fe}.service-card p:last-child{margin-top:auto}.card-number{font-size:13px;letter-spacing:.15em;color:var(--muted);margin-bottom:42px}.service-card h3{font-family:Georgia,serif;font-size:33px}.service-card p{font-size:16px}.tinted{background:#eef9fe;border-radius:var(--radius);margin-top:30px;margin-bottom:50px}.split{display:grid;grid-template-columns:.85fr 1fr;gap:60px;align-items:start}.split .photo{position:sticky;top:35px}.split .photo img{border-radius:160px 160px 18px 18px;aspect-ratio:4/5;object-fit:cover}.split h3{margin-top:40px}.therapy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.therapy-card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:white;display:flex;flex-direction:column}.therapy-card>img{height:90px;width:92px;object-fit:contain;align-self:flex-start;margin-bottom:26px}.therapy-card p{font-size:16px}.therapy-card p:has(a){margin-top:auto}.faq{max-width:1108px;padding:56px}.faq h2{margin-bottom:30px}.faq details{border-bottom:1px solid #cce8f5;padding:22px 0}.faq summary{cursor:pointer;font-size:19px;font-weight:600;line-height:1.5;padding-right:15px}.faq details p{margin:20px 0 0;max-width:870px}.faq>h3{margin-top:45px}.reading{max-width:850px;margin:auto}.reading .content-section{padding:35px 35px}.reading h2{font-size:35px;margin-top:15px}.reading h3,.reading h4{margin-top:40px}.reading img{width:100%;max-height:450px;object-fit:cover;border-radius:16px;margin:30px 0}.page-body{max-width:1050px;margin:auto}.page-body .content-section{padding-top:32px;padding-bottom:32px}.page-body h3,.page-body h4{margin-top:38px}.page-body img{max-height:440px;object-fit:contain;margin:38px auto;border-radius:20px}.page-body li{padding:5px 0}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.contact-grid aside{padding:35px;background:var(--sand);border-radius:var(--radius);align-self:start}.contact-grid aside h3{font-family:Georgia,serif;font-size:32px}.contact-grid aside h6{margin-top:40px;margin-bottom:8px}label{display:block;font-size:13px;font-weight:bold;letter-spacing:.04em;margin-bottom:8px}input,textarea{width:100%;border:1px solid #97ddfb;background:#fff;padding:13px 16px;border-radius:8px;color:var(--ink)}textarea{resize:vertical;min-height:160px}form button{border:0;background:var(--green);color:white;padding:13px 32px;border-radius:50px;cursor:pointer}form button:disabled{background:#808080;cursor:not-allowed}#form-status{font-size:14px;margin-top:20px;color:var(--muted)}footer{margin-top:70px;background:var(--dark);color:#ffffff;padding:48px max(30px,calc((100vw - 1108px)/2)) 24px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:35px;border-bottom:1px solid #ffffff35;padding-bottom:30px}.footer-brand{background:white;border-radius:8px;padding:8px 14px}.footer-inner nav{display:flex;gap:20px;flex-wrap:wrap}.footer-inner a{color:white;font-size:14px;text-decoration:none}footer>p{font-size:12px;color:#d5edf9;margin-top:24px}p:empty{display:none}@media(min-width:1500px){.hero{border-radius:32px}}@media(max-width:1000px){.site-header{padding:18px 25px}.site-header nav{gap:16px}.hero-copy{padding:45px 35px}.home-hero h1{font-size:46px}.therapy-grid{grid-template-columns:repeat(2,1fr)}.split{gap:30px}.service-card{padding:24px}.contact-grid{gap:30px}}@media(max-width:760px){body{font-size:16px}.site-header{position:relative;flex-wrap:wrap;min-height:85px;padding:12px 22px}.brand img{width:150px;height:54px}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:12px;background:transparent;border:1px solid #97ddfb;border-radius:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--green)}.site-header nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 16px}.js .site-header nav{display:none}.js .site-header nav.open{display:flex}.site-header nav a{padding:12px}.site-header nav a[aria-current]{background:#eef9fe;border:0;border-radius:6px}.site-header nav a:last-child{text-align:center;margin-top:10px}.hero,.home-hero{display:flex;flex-direction:column;min-height:0;border-radius:0 0 24px 24px;margin-bottom:10px}.hero-copy{padding:42px 25px 35px}.hero h1,.home-hero h1{font-size:40px}.hero-visual{height:245px;min-height:0}.home-hero .hero-visual{height:310px}.hero-subtitle{font-size:19px}.content-section{padding:40px 24px}.intro{text-align:left}.service-grid,.therapy-grid,.split,.contact-grid{grid-template-columns:1fr;gap:20px}.service-card{padding:28px}.card-number{margin-bottom:25px}.therapy-card{padding:27px}.therapy-card>img{height:76px}.split .photo{position:static}.split .photo img{max-height:320px;aspect-ratio:4/3;object-fit:cover;border-radius:18px}.tinted{border-radius:0;margin:10px 0 24px}.faq{padding:35px 24px}.faq summary{font-size:17px}.reading .content-section{padding:26px 24px}.reading h2{font-size:30px}.contact-grid aside{padding:27px}.footer-inner{flex-direction:column;align-items:start}.footer-inner nav{gap:16px 25px}footer{padding:35px 24px 20px;margin-top:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.site-header,footer,.skip,.menu-toggle{display:none}.hero{min-height:0;background:white}.hero-visual{display:none}.hero-copy{padding:20px 0}.hero{display:block}.content-section{padding:20px 0}.reading{max-width:none}details{display:block}details>*{display:block!important}body{font-size:12pt;background:white;color:black}a{color:black}.service-grid,.therapy-grid{display:block}.service-card,.therapy-card{break-inside:avoid;margin-bottom:20px}}

.brand{align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand img{width:56px;height:56px}.brand>span{font-family:Georgia,serif;font-size:24px;line-height:1.1;letter-spacing:-.03em}.brand>span>span{display:block;font:12px Arial,sans-serif;letter-spacing:.06em;margin-top:5px}.footer-inner .brand{color:var(--ink)}@media(max-width:1000px){.site-header nav{gap:14px}.site-header{padding-left:22px;padding-right:22px}.brand>span{font-size:22px}}

/* Reference-inspired refinement. User palette retained exactly. */
:root{--blue:#009fe3;--sky:#97ddfb;--aqua:#57bfea;--gray:#808080;--ink:#173747;--muted:#586971;--green:#006e9e;--dark:#163e54;--paper:#fff;--sand:#eef9fe;--line:#d5eaf4;--radius:12px}
body{color:var(--muted);line-height:1.8;font-size:16px}
h1,h2,h3,h4,h5,h6{color:var(--ink)}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em}
h1,h2{font-weight:600}h3{font-weight:500}
.site-header{min-height:104px;padding:22px 52px;background:#fff}
.site-header nav a{font-size:14px;font-weight:500;color:var(--muted)}
.site-header nav a:hover,.site-header nav a[aria-current]{color:#006e9e}
.site-header nav a[aria-current]{border-color:var(--blue)}
.site-header nav a:last-child{background:var(--sky);color:var(--ink);font-weight:600;padding:12px 25px}
.site-header nav a:last-child:hover{background:var(--aqua);color:var(--ink)}
.hero{background:#eef9fe;border-radius:0;min-height:370px;margin-bottom:0}
.hero-copy{padding:60px 58px}.hero h1{font-size:clamp(42px,4.5vw,66px)}
.home-hero{min-height:570px;grid-template-columns:1.06fr 1fr}
.home-hero h1{font-size:clamp(40px,4.05vw,60px);line-height:1.13}
.hero-visual{position:relative;overflow:hidden}.hero-visual img{object-position:center}
.hero-copy a[role=button]{background:var(--blue);color:#102f40;border:1px solid var(--blue);padding:13px 16px 13px 26px;font-weight:600;gap:26px}
.hero-copy a[role=button]:after{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#006e9e}
.hero-copy a[role=button]:hover{background:var(--aqua);border-color:var(--aqua)}
.content-section{padding:76px 36px}.intro{max-width:1080px;padding:78px 70px 66px}.intro h2{max-width:650px;margin-left:auto;margin-right:auto}
.intro p{max-width:820px}.intro p:last-child{font-weight:500;color:#006e9e}
.content-section:has(>.service-grid){display:grid;grid-template-columns:.82fr 2fr;gap:0 34px;align-items:start}
.content-section:has(>.service-grid)>h2{font-size:34px;grid-column:1;margin-bottom:18px}
.content-section:has(>.service-grid)>p{grid-column:1;font-size:15px;margin:0}
.service-grid{grid-column:2;grid-row:1/3;gap:16px;margin-top:0;height:100%}
.service-card,.service-card:nth-child(2){border:0;border-top:3px solid var(--sky);border-radius:6px;background:#f5fbfe;padding:27px 22px}
.service-card:nth-child(2){border-top-color:var(--blue);background:#eef9fe}
.service-card h3{font-size:26px}.service-card p{font-size:15px;line-height:1.7}
.card-number{color:#006e9e;letter-spacing:.08em;margin-bottom:30px}
a[role=button]{color:#006e9e}.service-card a[role=button]{font-size:14px;gap:12px}
.tinted{background:#eef9fe;border-radius:12px;margin-top:34px;margin-bottom:55px}
.content-section.tinted:has(>.split){background:var(--dark);color:white;padding:48px}
.split{grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.split .photo{position:static}.split .photo img{border-radius:8px;aspect-ratio:4/5;object-fit:cover}
.split h2,.split h3{color:white}.split h2{font-size:42px}.split h3{margin-top:28px;font-size:27px}
.split p{font-size:15px;line-height:1.8}.split a[role=button]{background:var(--sky);color:var(--ink);border-radius:40px;padding:11px 22px}
.split a[role=button]:hover{background:var(--aqua)}
.therapy-grid{gap:22px}.therapy-card{border-color:#e0edf3;border-radius:10px;padding:30px;background:#fff;border-top:3px solid var(--sky)}
.therapy-card h3{font-size:26px}.therapy-card>img{height:86px;width:88px;margin-bottom:26px}
.faq{padding:56px}.faq h2{text-align:center;margin-bottom:30px}.faq summary{font-size:18px;font-weight:500;color:var(--ink)}
.faq details{border-color:#cce8f5}.faq details[open] summary{color:#006e9e}.faq>h3{font-family:Georgia,serif;text-align:center;font-size:30px;color:var(--ink)}
.reading{max-width:880px}.reading p{line-height:1.9}.reading .content-section{padding-top:32px;padding-bottom:32px}.reading h2{font-size:36px}
.page-body{max-width:1040px}.page-body .content-section{padding-top:40px;padding-bottom:40px}.page-body h3{font-size:28px}
.contact-grid{gap:60px}.contact-grid aside{background:#eef9fe;border-top:4px solid var(--sky);border-radius:10px;padding:36px}
label{color:var(--ink);font-weight:500}input,textarea{border-color:#cfdee6;border-radius:6px;background:#fcfeff}
input:focus,textarea:focus{border-color:var(--blue)}
form button{background:var(--blue);color:#102f40;font-weight:600}form button:disabled{background:#808080;color:white}
#form-status{color:#586971}
footer{background:var(--dark);border-top:5px solid var(--aqua);padding-top:50px}
.footer-inner{padding-bottom:38px;align-items:center}.footer-inner nav{gap:20px 27px}.footer-inner nav a:hover{text-decoration:underline;color:var(--sky)}
.footer-brand{background:white;border-radius:10px;padding:12px 18px}.footer-inner .brand{color:var(--ink)}footer>p{color:#d5edf9}
@media(max-width:1100px){.site-header{padding:20px 28px}.site-header nav{gap:18px}.hero-copy{padding:45px 36px}.content-section:has(>.service-grid){display:block}.content-section:has(>.service-grid)>h2{max-width:600px}.content-section:has(>.service-grid)>p{margin-bottom:30px}.service-grid{margin-top:28px}.split{gap:32px}.content-section.tinted:has(>.split){padding:36px}}
@media(max-width:850px) and (min-width:761px){.site-header{gap:12px;padding:18px}.site-header nav{gap:12px}.site-header nav a{font-size:13px}.site-header nav a:last-child{padding:10px 16px}.brand img{width:44px;height:44px}.brand>span{font-size:20px}}
@media(max-width:760px){body{font-size:16px}.site-header{min-height:86px;padding:14px 22px}.site-header nav a{font-size:15px}.hero,.home-hero{border-radius:0;min-height:0}.hero-copy{padding:42px 25px}.hero h1,.home-hero h1{font-size:39px}.hero-visual{height:245px}.home-hero .hero-visual{height:300px}.content-section,.intro{padding:44px 24px}.intro{text-align:left}.intro h2{margin-left:0}.content-section:has(>.service-grid)>h2{font-size:32px}.service-grid{gap:18px;margin-top:26px}.service-card{padding:27px}.service-card h3{font-size:29px}.card-number{margin-bottom:22px}.tinted{border-radius:0;margin:14px 0 34px}.content-section.tinted:has(>.split){padding:32px 24px}.split{gap:28px}.split .photo img{aspect-ratio:4/3;max-height:330px;border-radius:8px}.split h2{font-size:34px}.split p{font-size:16px}.therapy-grid{gap:18px}.therapy-card{padding:26px}.faq{padding:38px 24px}.faq h2,.faq>h3{text-align:left}.faq summary{font-size:17px}.reading h2{font-size:30px}.reading .content-section{padding:26px 24px}.page-body .content-section{padding:32px 24px}.contact-grid{gap:28px}.contact-grid aside{padding:26px}.footer-inner{align-items:start}.footer-inner nav{gap:16px 24px}footer{margin-top:35px;padding:36px 24px 20px}}
@media print{.hero,.tinted,.content-section.tinted:has(>.split){background:white;color:black}.split h2,.split h3{color:black}.hero-copy{padding:20px 0}.hero h1{font-size:30pt}.content-section:has(>.service-grid){display:block}}

/* Contact buttons: white fill, blue outline, consistent on all pages. */
.site-header nav a:last-child,
.site-header nav a:last-child[aria-current],
a[role="button"][href*="contacto/"],
.hero-copy a[role="button"][href*="contacto/"],
.split a[role="button"][href*="contacto/"]{background:#fff;color:#006e9e;border:2px solid #009fe3;border-radius:999px}
.site-header nav a:last-child:hover,
a[role="button"][href*="contacto/"]:hover,
.hero-copy a[role="button"][href*="contacto/"]:hover,
.split a[role="button"][href*="contacto/"]:hover{background:#eef9fe;color:#006e9e;border-color:#009fe3}
.contact-button{padding:12px 25px}.breadcrumb{max-width:1180px;margin:0 auto;padding:18px 36px;font-size:14px;color:var(--muted)}
.topic-hero{grid-template-columns:1.4fr .6fr;min-height:330px}.topic-hero h1{font-size:clamp(36px,4.4vw,60px);overflow-wrap:break-word}
.topic-icon{display:flex;align-items:center;justify-content:center;padding:45px;background:#f5fbfe;min-height:280px}
.topic-icon img{width:min(230px,100%);height:auto;max-height:240px;object-fit:contain}
.topic-contact{background:#eef9fe;border-radius:12px;margin-top:24px}.topic-contact h2{font-size:32px}.topic-sources{font-size:14px}.topic-sources h2{font-size:24px}
@media(max-width:760px){.breadcrumb{padding:15px 24px}.topic-hero .hero-copy{padding-bottom:25px}.topic-hero .hero-visual{height:190px;min-height:0;padding:20px}.topic-icon img{height:150px;width:auto}.topic-contact{border-radius:0}.topic-hero h1{font-size:36px}}

/* Homepage refinement: concise lines, left alignment, and coherent section groups. */
.home-page .content-section.home-intro{max-width:1180px;padding:88px 36px 72px;text-align:left;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:64px;align-items:start}
.home-page .home-intro h2{font-size:clamp(32px,3.4vw,46px);margin:0;max-width:390px;line-height:1.18}
.home-page .intro-heading:before{content:'';display:block;width:48px;height:4px;background:#009fe3;border-radius:2px;margin-bottom:24px}
.home-page .intro-copy p{max-width:65ch;margin:0 0 22px;color:var(--muted);font-size:17px;line-height:1.85;font-weight:400}
.home-page .intro-copy>p:first-child{color:var(--ink);font-size:18px;line-height:1.8}
.home-page .intro-callout{border-left:3px solid #009fe3;background:#eef9fe;padding:20px 24px;border-radius:0 10px 10px 0;margin-top:28px}
.home-page .intro-callout p{margin:0;color:#173747;font-size:16px;line-height:1.75}
.home-page .content-section.home-services{display:block;padding-top:56px;padding-bottom:80px;border-top:1px solid #d5eaf4}
.home-page .services-heading{margin-bottom:32px;max-width:680px}
.home-page .services-heading h2{font-size:clamp(32px,3.4vw,44px);margin:0 0 12px}
.home-page .services-heading p{margin:0;font-size:17px;line-height:1.7}
.home-page .home-services .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;height:auto;margin:0}
.home-page .home-services .service-card{padding:28px 30px 26px;min-width:0;border-radius:10px}
.home-page .home-services .card-number{margin-bottom:22px;font-size:13px}
.home-page .home-services h3{font-size:30px;margin-bottom:16px}
.home-page .home-services .service-card p{font-size:16px;line-height:1.75}
.home-page .home-services .service-card p:last-child{padding-top:14px;margin-bottom:0}
.home-page main a.consult-button[role="button"][href*="contacto/"]{background:#009fe3;color:#fff;border:2px solid #009fe3;font-size:18px;font-weight:700;border-radius:999px;padding:12px 24px;gap:20px}
.home-page main a.consult-button[role="button"][href*="contacto/"]:hover{background:#006e9e;border-color:#006e9e;color:#fff}
.home-page main a.consult-button[role="button"]:after{background:transparent;color:#fff;border-radius:0;width:auto;height:auto;font-size:22px}
@media(max-width:1000px){.home-page .content-section.home-intro{gap:36px;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr)}.home-page .home-services .service-card{padding:24px}.home-page .home-services .service-grid{gap:18px}}
@media(max-width:760px){.home-page .content-section.home-intro{display:block;padding:44px 24px}.home-page .intro-heading{margin-bottom:28px}.home-page .home-intro h2{font-size:34px;max-width:none}.home-page .intro-copy p,.home-page .intro-copy>p:first-child{font-size:16px;line-height:1.8}.home-page .intro-callout{padding:18px 20px;margin-top:24px}.home-page .content-section.home-services{padding:38px 24px 44px}.home-page .services-heading{margin-bottom:24px}.home-page .services-heading h2{font-size:32px}.home-page .services-heading p{font-size:16px}.home-page .home-services .service-grid{grid-template-columns:1fr;gap:18px}.home-page .home-services .service-card{padding:25px}.home-page .home-services .service-card p:last-child{padding-top:4px}.home-page main a.consult-button[role="button"][href*="contacto/"]{font-size:18px}}
