.booking-card{scroll-margin-top:110px}.booking-card form{display:grid;position:relative}.booking-card label{font-size:16px;font-weight:600}.booking-card input:not([type=checkbox]),.booking-card select,.booking-card textarea{font:inherit;width:100%;min-width:0;box-sizing:border-box;color:#482160}.booking-card h2{font-family:Lora,serif;font-weight:400;color:#482160}
.booking-card form>label:not(.booking-consent){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-card textarea,.booking-card .booking-consent,.booking-card .preview-note,.booking-card #booking-status{grid-column:1/-1}.booking-card .booking-consent{display:flex;font-weight:400}.booking-card .button{grid-column:1/-1;justify-self:start;justify-content:center;border-radius:32px;background:#89519e;color:#fff}.booking-card input::placeholder,.booking-card textarea::placeholder{color:#766481;opacity:1}
.reference-footer{display:grid;grid-template-columns:1.1fr 1fr .7fr;gap:48px;padding:48px 0}.reference-footer img{max-width:260px;height:auto}.reference-footer h3{font-size:24px;max-width:320px}.reference-footer h4{font-size:18px}.reference-footer p,.reference-footer a{font-size:16px;line-height:1.65}.reference-footer nav{display:grid;align-content:start;gap:8px}
@media(max-width:800px){.reference-footer{grid-template-columns:1fr;gap:24px}}
.reviews-section{background:#efe9f4}.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.review-card{background:white;padding:32px;border-radius:16px;border:1px solid #dfd8e6;display:flex;flex-direction:column}.review-source{font-size:14px;color:#64566c;margin:0 0 8px}.review-stars{color:#845a14;font-size:22px;letter-spacing:3px}.review-card blockquote{font-size:20px;line-height:1.6;margin:20px 0;color:#312637}.review-author{font-size:16px;font-weight:600;margin-top:auto}.header nav{flex-wrap:wrap}
@media(max-width:650px){.reviews-grid{grid-template-columns:1fr}.review-card{padding:24px}.review-card blockquote{font-size:18px}}

/* Compact hero and a single, clean professional portrait. */
.hero{background:#f3eef0;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f7f4effa 0%,#f7f4eff3 38%,#f1e7eed9 68%,#eee1ebb8 100%),url("assets/consulta.png") center 32%/cover no-repeat}
.hero-grid{width:min(1280px,calc(100% - 80px));grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:center;min-height:0;padding-block:56px}
.hero-copy{min-width:0}.hero h1{max-width:none;font-size:clamp(40px,4vw,58px);line-height:1.14;letter-spacing:-.045em}
.hero .lead{max-width:590px;font-size:18px;line-height:1.65;margin-top:22px}
.hero .actions{margin-top:24px;gap:20px}.hero-meta{margin-top:24px;flex-wrap:wrap;gap:18px}.hero-copy .micro{margin-top:12px!important}
.booking-card{width:100%;max-width:530px;justify-self:end;padding:26px 28px;background:#fffbfdf5;border:1px solid #e5d6e2;border-radius:18px;box-shadow:0 18px 48px #55374a12}
.booking-card>.eyebrow{margin-bottom:12px;font-size:11px}.booking-card h2{font-size:30px;line-height:1.2;margin-bottom:20px}
.booking-card form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;align-items:start}
.booking-card .booking-full{grid-column:1/-1}
.booking-card input:not([type=checkbox]),.booking-card select,.booking-card textarea{padding:12px;font-size:16px;line-height:1.4;min-height:46px;border:1px solid #e3d6e4;border-radius:7px;background:#fff}
.booking-card textarea{margin:0;min-height:72px;resize:vertical}
.booking-card .booking-consent{margin:2px 0;font-size:14px;gap:8px;line-height:1.45;align-items:flex-start}
.booking-card .booking-consent input{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;accent-color:#89519e}
.booking-card .booking-consent a{text-decoration:underline;text-underline-offset:3px}
.booking-card .button{padding:12px 24px;min-height:48px;font-size:17px}
.booking-card .preview-note{margin:0;font-size:13px!important;line-height:1.5;color:#716270}.booking-card #booking-status{margin:0;font-size:14px;line-height:1.5}.booking-card #booking-status:empty{display:none}
.doctor-grid{width:min(1280px,calc(100% - 80px));grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,72px);align-items:center}
.doctor-photo{width:100%;max-width:470px;min-height:0;aspect-ratio:4/5;background:#eee4e4;border-radius:20px;box-shadow:0 14px 40px #402a5010}
.doctor-photo::after{display:none}.doctor-photo>img{height:100%;width:100%;object-fit:cover;object-position:center 24%;border-radius:0}
.doctor-copy{max-width:650px;min-width:0}.doctor-copy h2{font-size:clamp(36px,3.5vw,48px)}.doctor-copy .large-copy{font-size:23px;line-height:1.45;margin-top:20px}.doctor-copy .eyebrow{margin-bottom:16px}
@media(max-width:1000px){.hero-grid{width:calc(100% - 56px);gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero h1{font-size:40px}.booking-card{padding:24px}.doctor-grid{width:calc(100% - 56px);gap:36px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;padding-block:36px;gap:28px}.hero-copy{max-width:650px}.booking-card{max-width:none;justify-self:stretch}.hero h1{font-size:clamp(38px,6.5vw,50px)}.hero::before{background:linear-gradient(180deg,#f7f4eff5,#f1e7eef0),url("assets/consulta.png") center/cover no-repeat}.doctor-grid{grid-template-columns:1fr;gap:28px}.doctor-photo{max-width:420px;justify-self:center}.doctor-copy{max-width:650px}.doctor-copy h2 br{display:none}.doctor-section{padding-block:60px}}
@media(max-width:550px){.hero-grid,.doctor-grid{width:calc(100% - 36px)}.booking-card{padding:22px 18px}.booking-card form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}.booking-card h2{font-size:28px}.booking-card input:not([type=checkbox]){padding:11px 9px}.booking-card .button{width:100%}.doctor-photo{max-width:360px}.doctor-copy .large-copy{font-size:21px}}
@media(max-width:350px){.booking-card form{grid-template-columns:1fr}}
.doctor-copy h2 br{display:initial}
