@import url("fixes.css");
:root { --ink:#1e3633; --green:#315b57; --sage:#aebfb3; --cream:#f8f5ef; --peach:#e8c9b4; --line:#d9ded8; --white:#fffdf9; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:var(--cream); font-family:"DM Sans",sans-serif; line-height:1.55; } a { color:inherit; text-decoration:none; } .skip-link { position:absolute; left:-999px; } .skip-link:focus { left:1rem; top:1rem; z-index:20; background:white; padding:.75rem; }
.header { min-height:84px; padding:0 max(5vw,24px); display:flex; align-items:center; justify-content:space-between; background:var(--cream); position:sticky; top:0; z-index:10; border-bottom:1px solid transparent; } .header.scrolled { border-color:var(--line); } .brand { display:flex; align-items:center; gap:10px; font-size:.78rem; line-height:1.05; letter-spacing:.06em; text-transform:uppercase; } .brand strong { font-family:"Playfair Display",serif; font-size:1rem; letter-spacing:0; text-transform:none; } .brand-mark { width:37px; height:37px; display:grid; place-items:center; border:1px solid var(--green); border-radius:50%; color:var(--green); font-family:"Playfair Display",serif; font-size:.85rem; }
.nav { display:flex; gap:28px; align-items:center; font-size:.86rem; font-weight:600; } .nav>a:not(.nav-cta):hover, .footer a:hover { color:#a06150; } .nav-cta { color:white; background:var(--green); padding:12px 18px; border-radius:2px; }.menu-button{display:none;border:0;background:none;font-size:1.5rem;color:var(--green)}
.hero { min-height:calc(100vh - 84px); display:grid; grid-template-columns:1.12fr .88fr; } .hero-copy { padding:clamp(64px,10vw,140px) max(5vw,24px); max-width:800px; margin-left:auto; } .eyebrow { margin:0 0 18px; font-size:.7rem; letter-spacing:.16em; font-weight:700; color:#a06150; } h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:"Playfair Display",serif; line-height:1.08; font-weight:600; } h1 { font-size:clamp(3.1rem,6vw,6rem); letter-spacing:-.05em; margin-bottom:26px; } h1 em { color:#a06150; } .hero-text { max-width:540px; font-size:1.1rem; color:#506661; }.hero-actions,.location-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:36px; }.button { display:inline-flex; align-items:center; justify-content:center; gap:18px; padding:15px 20px; font-weight:700; font-size:.86rem; border-radius:2px; transition:transform .2s,background .2s; }.button:hover{transform:translateY(-2px)}.button-primary { color:white; background:var(--green); }.button-primary span,.button-light span { font-size:1.2rem; }.button-text,.text-link { color:var(--green); text-decoration:underline; text-underline-offset:5px; }.button-outline { border:1px solid var(--green); }.trust-row { display:flex; gap:36px; border-top:1px solid var(--line); padding-top:25px; margin-top:64px; }.trust-row div { display:grid; }.trust-row strong { font-family:"Playfair Display",serif; font-size:1.15rem; }.trust-row span { color:#687a76; font-size:.78rem; }
.trust-row .rating strong { color:#a06150; letter-spacing:.12em; font-family:"DM Sans",sans-serif; }
.hero-art { background:var(--sage); position:relative; overflow:hidden; min-height:460px; }.hero-art img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% 22%;}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,48,45,.72),rgba(24,48,45,.06) 65%)}.hero-art p{position:absolute;z-index:1;left:10%;bottom:10%;font-family:"Playfair Display",serif;font-size:clamp(1.7rem,3vw,3rem);line-height:1.1;color:#fffdf9}.hero-art em{color:#f1c79e}
.review-highlight{padding:25px max(5vw,24px);background:var(--green);color:#fffdf9;display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center}.review-highlight-stars{color:#f1c79e;font-size:1.25rem;letter-spacing:.18em;white-space:nowrap}.review-highlight p{margin:0;display:flex;gap:12px;align-items:baseline}.review-highlight p strong{font-family:"Playfair Display",serif;font-size:1.18rem}.review-highlight p span{font-size:.83rem;color:#c7d4cb}.review-highlight a{font-size:.83rem;font-weight:700;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.review-highlight a span{font-size:1.1rem;margin-left:6px}
.blog-section{padding:clamp(70px,10vw,130px) max(5vw,24px);background:#e6d1bc}.blog-section-heading{max-width:680px;margin-bottom:45px}.blog-section-heading h2{font-size:clamp(2.3rem,4vw,4.2rem);letter-spacing:-.045em;margin-bottom:18px}.blog-section-heading>p:not(.eyebrow){max-width:540px;color:#536660}.article-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.article-card{min-height:320px;padding:26px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.article-card:hover{transform:translateY(-5px);box-shadow:0 16px 28px #735e401c}.article-card span{font-size:.68rem;letter-spacing:.13em;font-weight:700;color:#a06150}.article-card h3{font:600 1.55rem/1.15 "Playfair Display",serif;margin:28px 0 14px}.article-card p{font-size:.86rem;color:#51645f}.article-card b{font-size:.76rem;margin-top:auto;color:#315b57}.article-card-rose{background:#f6e9df}.article-card-sage{background:#d7e0d6}.article-card-cream{background:#fffaf2}.article-card-peach{background:#eecab1}
.section { padding:clamp(70px,10vw,130px) max(5vw,24px); }.section-heading { max-width:680px; margin-bottom:45px; }.section-heading h2,.about h2,.location h2,.final-cta h2 { font-size:clamp(2.3rem,4vw,4.2rem); letter-spacing:-.045em; margin-bottom:18px; }.section-heading>p:last-child { max-width:570px; color:#60736e; }.services { background:var(--white); }.service-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }.service-card { min-height:250px; padding:27px 25px 18px 0; margin-right:24px; border-right:1px solid var(--line); display:flex; flex-direction:column; }.service-card:last-child{border:0}.service-card:hover{background:#f7f2e9;padding-left:14px;transition:.2s}.service-card b{font-size:.78rem;color:#a06150;margin-top:auto}.service-number { color:#a06150; font-size:.75rem; font-weight:700; }.service-grid h3,.journey-grid h3 { font-family:"Playfair Display",serif; font-size:1.6rem; line-height:1.15; margin:36px 0 12px; }.service-grid p,.journey-grid p { font-size:.91rem; color:#62736e; }
.about { display:grid; grid-template-columns:.8fr 1fr; gap:clamp(40px,9vw,140px); align-items:center; padding:clamp(70px,10vw,140px) max(5vw,24px); background:#e6d1bc; }.about-card { min-height:500px; margin:0; position:relative; overflow:hidden; background:var(--green); }.about-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,46,43,.76),rgba(21,46,43,0) 52%)}.about-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 24%;}.about-card figcaption{position:absolute;z-index:1;left:32px;right:32px;bottom:30px;color:#fffdf9;font:1.7rem/1.15 "Playfair Display",serif}.about-card figcaption em{color:#f1c79e}.about-copy{max-width:620px}.about-copy>p:not(.eyebrow){font-size:1.05rem}.training{margin:26px 0;border-top:1px solid #b6a998;padding-top:17px}.training p{margin-bottom:8px;font-size:.9rem}.training ul{margin:0;padding-left:18px;color:#4d625d;font-size:.88rem}.training li{margin:5px 0}.credentials{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.credentials span{font-size:.75rem;font-weight:700;letter-spacing:.08em;border:1px solid #87958b;padding:8px 10px}.text-link{font-weight:700}.text-link span{font-size:1.1rem}.journey { background:var(--white); text-align:center; }.journey .eyebrow{margin-bottom:12px}.journey-grid { display:grid; grid-template-columns:repeat(3,1fr); max-width:930px; margin:55px auto 0; }.journey-grid>div{position:relative;padding:0 35px}.journey-grid>div:not(:last-child):after{content:"";position:absolute;top:22px;left:60%;width:80%;border-top:1px solid #b8c4bb}.journey-grid span{width:46px;height:46px;border:1px solid var(--green);border-radius:50%;display:grid;place-items:center;margin:auto;background:var(--white);position:relative;z-index:1;font-family:"Playfair Display"}.journey-grid h3{margin:20px 0 7px}
.reviews { background:#e6d1bc; padding:clamp(70px,10vw,125px) max(5vw,24px); display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(35px,8vw,120px); align-items:center; }.reviews-heading h2 { font:600 clamp(2.3rem,4vw,4rem)/1.1 "Playfair Display",serif; letter-spacing:-.045em; margin:0 0 18px; }.reviews-heading>p:not(.eyebrow) { color:#5e716b; }.review-stage { display:grid; grid-template-columns:46px 1fr 46px; align-items:center; gap:14px; }.review-card { background:var(--white); min-height:300px; padding:clamp(30px,5vw,65px); display:flex; flex-direction:column; justify-content:center; box-shadow:0 15px 30px #5c50421a; }.stars { letter-spacing:.16em; color:#a06150; font-size:.9rem; }.review-card blockquote { font:italic clamp(1.35rem,2.2vw,2rem)/1.35 "Playfair Display",serif; margin:24px 0; }.review-card p { margin:0; color:#698078; font-weight:700; font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; }.review-arrow { width:42px; height:42px; border:1px solid #8e9a90; background:transparent; color:var(--green); border-radius:50%; cursor:pointer; font-size:1.2rem; transition:background .2s,color .2s; }.review-arrow:hover { background:var(--green); color:white; }.review-dots { grid-column:2; display:flex; gap:8px; justify-content:center; margin-top:20px; }.review-dot { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:#a9afa8; cursor:pointer; }.review-dot.active { background:#315b57; transform:scale(1.3); }
.location { display:grid; grid-template-columns:1fr 1fr; background:#dce1d6; }.location-copy { padding:clamp(70px,10vw,135px) max(5vw,70px); }.location-copy>p:not(.eyebrow){font-size:1.04rem;line-height:1.8}.map-card { position:relative; min-height:420px; overflow:hidden; background:#c7d0c0; }.map-card:before,.map-card:after { content:"";position:absolute;background:#e4dbc7;transform:rotate(-22deg);width:125%;height:65px;left:-15%;}.map-card:before{top:25%}.map-card:after{top:66%;transform:rotate(35deg);height:42px}.map-road{position:absolute;background:#f4efdf;height:22px;width:110%;left:-5%;z-index:1;transform:rotate(75deg)}.road-one{top:26%;}.road-two{top:70%;}.map-pin{position:absolute;z-index:2;left:52%;top:45%;width:72px;height:72px;border-radius:50% 50% 50% 0;background:#a06150;transform:rotate(-45deg);color:#f8f5ef;font-size:0;text-align:center}.map-pin:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:white;top:25px;left:25px}.map-label{position:absolute;z-index:3;left:calc(52% + 45px);top:47%;font-size:.78rem;font-weight:700;background:white;padding:8px 12px}.faq{background:var(--white);display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;list-style:none;font-weight:700;display:flex;justify-content:space-between;gap:12px}summary::-webkit-details-marker{display:none}summary span{font-size:1.3rem;color:#a06150}details[open] summary span{transform:rotate(45deg)}details p{font-size:.9rem;color:#61736e;margin:15px 28px 0 0}.final-cta{background:var(--green);color:#f9f6ee;text-align:center;padding:clamp(70px,10vw,130px) 24px}.final-cta .eyebrow{color:#e9c4a1}.final-cta h2{max-width:720px;margin:0 auto 32px}.button-light{background:#f9f6ee;color:var(--green)}.footer{padding:48px max(5vw,24px) 24px;background:#18302d;color:#e8e6dd;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}.footer .brand-mark{border-color:#e8e6dd;color:#e8e6dd}.footer p{font-size:.83rem;margin:0}.footer div{display:flex;gap:20px;font-size:.83rem;font-weight:700}.footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.18);padding-top:20px;font-size:.67rem;color:#b7c3bb}
@media (max-width:800px){.header{min-height:70px}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--cream);padding:20px 24px;box-shadow:0 12px 20px #1e36331c;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-button{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding-top:70px}.hero-art{min-height:390px}.review-highlight{grid-template-columns:auto 1fr;gap:16px}.review-highlight a{grid-column:2}.article-grid{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.about,.location,.faq,.reviews{grid-template-columns:1fr}.about{gap:44px}.about-card{min-height:300px}.location-copy{padding-bottom:60px}.map-card{min-height:300px}.faq{gap:0}.footer{grid-template-columns:1fr 1fr}.footer div{justify-content:flex-end}.footer small{grid-column:1/-1}}@media(max-width:500px){h1{font-size:3rem}.hero-text{font-size:1rem}.trust-row{gap:18px;justify-content:space-between}.trust-row strong{font-size:1rem}.review-highlight{display:block;padding:24px}.review-highlight p{display:block;margin:12px 0}.review-highlight p span{display:block;margin-top:5px}.review-highlight a{display:inline-block}.article-grid{grid-template-columns:1fr}.article-card{min-height:250px}.service-grid{grid-template-columns:1fr}.service-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:25px 0}.service-grid h3{margin:20px 0 8px}.journey-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.journey-grid>div:not(:last-child):after{top:50px;left:50%;width:0;height:40px;border-top:0;border-left:1px solid #b8c4bb}.review-stage{grid-template-columns:38px 1fr 38px;gap:8px}.review-arrow{width:36px;height:36px}.review-card{min-height:280px;padding:30px 24px}.footer{grid-template-columns:1fr}.footer div{justify-content:flex-start}.location-actions .button{width:100%}}
.guide-hero{padding:clamp(70px,10vw,140px) max(5vw,24px);background:#dce1d6}.guide-hero>div,.guide-content{max-width:860px;margin:auto}.breadcrumbs{font-size:.8rem;color:#667a74;margin-bottom:32px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.guide-hero h1{max-width:780px;font-size:clamp(2.8rem,5vw,5rem)}.guide-lead{font-size:1.18rem;max-width:690px;color:#4f6560}.guide-content{padding:clamp(55px,8vw,100px) 24px}.guide-content h2{font-size:clamp(2rem,3vw,3.1rem);margin:55px 0 18px}.guide-content h3{font:600 1.35rem "Playfair Display",serif;margin:28px 0 10px}.guide-content p,.guide-content li{color:#4d625d}.guide-content ul{padding-left:20px}.guide-note{background:#f4eadf;border-left:3px solid #a06150;padding:20px 22px;margin:36px 0}.guide-sources{border-top:1px solid var(--line);margin-top:55px;padding-top:30px}.guide-sources a{text-decoration:underline;text-underline-offset:3px}.guide-cta{margin-top:50px;background:var(--green);color:#fffdf9;padding:35px;display:flex;gap:24px;align-items:center;justify-content:space-between}.guide-cta h2{font-size:2rem;margin:0;max-width:430px}.guide-meta{font-size:.77rem;color:#6a7d77;margin-top:28px}@media(max-width:500px){.service-card{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:25px 0}.service-card h3{margin:20px 0 8px}.guide-content{padding-left:24px;padding-right:24px}.guide-cta{display:block}.guide-cta .button{margin-top:22px;width:100%}}

/* Social proof: patient reviews receive a dedicated, high-contrast section. */
.reviews{position:relative;overflow:hidden;background:#234945;color:#fffdf9;isolation:isolate}.reviews:before{content:"“";position:absolute;z-index:-1;right:4%;top:-.28em;font:clamp(14rem,28vw,30rem)/1 "Playfair Display",serif;color:rgba(255,255,255,.055)}.reviews .eyebrow{color:#efc8a8}.reviews-heading h2{color:#fffdf9;max-width:610px}.reviews-heading>p:not(.eyebrow){color:#d4dfd6;font-size:1.03rem;max-width:560px}.review-proof{display:flex;align-items:center;gap:15px;margin:32px 0}.review-proof>span{font-size:1.55rem;letter-spacing:.15em;color:#f1c79e;white-space:nowrap}.review-proof p{margin:0;display:grid;line-height:1.25}.review-proof strong{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.review-proof small{margin-top:4px;color:#c6d4ca;font-size:.8rem}.review-doctoralia-link{margin-top:4px;box-shadow:0 9px 20px rgba(9,33,29,.24)}.review-stage{position:relative}.review-card{min-height:350px;border-top:4px solid #efc8a8;box-shadow:0 20px 45px rgba(7,31,27,.3)}.review-card:before{content:"Avaliação pública";font-size:.68rem;font-weight:700;letter-spacing:.12em;color:#9b6755;text-transform:uppercase}.review-card blockquote{color:var(--ink)}.review-card p{color:#5c736b}.review-arrow{border-color:#b9c9bc;color:#f7eee4}.review-arrow:hover{background:#f7eee4;color:var(--green)}.review-dot{background:#80998d}.review-dot.active{background:#f1c79e}.reviews .button-light{background:#fffdf9}.reviews .button-light:hover{background:#f1c79e}@media(max-width:500px){.review-proof{gap:11px}.review-proof>span{font-size:1.2rem}.review-doctoralia-link{width:100%;justify-content:space-between}.review-card{min-height:310px}}

.review-window{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.review-window .review-card{min-height:330px;padding:26px 22px}.review-window .review-card blockquote{font-size:clamp(1.05rem,1.4vw,1.35rem);line-height:1.4;margin:20px 0}.review-window .review-card p{font-size:.65rem;line-height:1.45}.review-stage{grid-template-columns:42px minmax(0,1fr) 42px}@media(max-width:980px){.review-window{grid-template-columns:repeat(2,minmax(0,1fr))}.review-window .review-card:nth-child(3){display:none}}@media(max-width:500px){.review-window{grid-template-columns:1fr}.review-window .review-card:not(:first-child){display:none}.review-window .review-card{min-height:300px;padding:30px 24px}}
