:root{--ink:#123e3a;--green:#d6f16c;--paper:#f5f6ef;--muted:#526964}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #497d03;outline-offset:6px}a:hover{text-decoration:underline}img{display:block;width:100%;object-fit:cover}p{line-height:1.6}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.045em}h2{font-size:clamp(32px,3.7vw,52px);line-height:1.08}.top{padding:11px 5%;background:var(--ink);color:white;display:flex;justify-content:space-between;font-size:12px}header{padding:27px 5%;display:flex;gap:35px;align-items:center;background:var(--paper)}.brand{display:flex;align-items:center;gap:12px}.brand small{font-size:9px;display:block;letter-spacing:2px;margin-bottom:6px}.brand strong{font-size:18px;font-weight:600;letter-spacing:-.5px}.symbol{font-size:38px;line-height:1}nav{display:flex;gap:28px;margin-left:auto;font-size:14px}.btn{padding:19px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:14px;border-radius:5px;line-height:1.3}.dark{background:var(--ink);color:white}.btn:hover{background:#265c50;text-decoration:none}.headerbtn{padding:15px 18px}.hero{display:grid;grid-template-columns:1.1fr 1fr;margin:10px 3% 0;min-height:590px}.hero-copy{padding:60px 6% 25px;background:#e9eddf;border-radius:14px 0 0 14px;display:flex;flex-direction:column}.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:bold;margin-bottom:26px}.eyebrow span{display:inline-block;width:7px;height:7px;background:#4e7d27;border-radius:50%;margin-right:7px}h1{font-size:clamp(48px,5.6vw,83px);line-height:1.02}h1 em{font-style:normal;color:#55755d}.intro{max-width:440px;margin:25px 0 32px;color:var(--muted);font-size:17px}.actions{display:flex;gap:28px;align-items:center}.textlink{font-size:14px}.textlink span{margin-left:16px}.hero-foot{margin-top:auto;padding-top:60px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;gap:10px}.hero-image{position:relative;overflow:hidden;border-radius:0 14px 14px 0;min-height:560px;background:#123e3a}.hero-image img{height:100%;position:absolute;opacity:.8}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0e393de6,transparent 65%)}.image-label{position:absolute;bottom:42px;left:35px;z-index:1;color:white}.image-label span{font-size:10px;letter-spacing:2px}.image-label b{display:block;font-size:34px;font-weight:400;letter-spacing:-1px;line-height:1.1;margin-top:18px}.image-plus{position:absolute;right:30px;top:20px;font-size:64px;color:white;font-weight:200}.portal-section{display:grid;grid-template-columns:1.1fr 1.1fr .8fr;gap:24px;padding:95px 6%}.portal-section>div>p:last-child{margin-top:22px;max-width:290px;color:var(--muted);font-size:15px}.portal-card,.medical-card{border-radius:12px;padding:28px;display:flex;flex-direction:column;min-height:310px;transition:transform .2s}.portal-card:hover,.medical-card:hover{transform:translateY(-5px);text-decoration:none}.portal-card{background:var(--green)}.medical-card{background:var(--ink);color:white}.card-top{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:1px;margin-bottom:42px}.card-top b{margin-left:auto;font-size:22px;font-weight:400}.lineicon{font-size:28px}.card-top>span:first-child{font-size:25px}.portal-section h3{font-size:30px;line-height:1.1}.portal-card p,.medical-card p{font-size:14px;margin-top:10px}.card-bottom{display:flex;justify-content:space-between;margin-top:auto;padding-top:25px;font-size:13px}.hospital{padding:70px 6% 90px;background:white}.section-title{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}.section-title>p{max-width:300px;font-size:15px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery img{height:240px;border-radius:9px}.gallery figcaption{display:flex;gap:16px;padding-top:20px}.gallery figcaption span{font-size:11px;color:var(--muted);padding-top:5px}.gallery h3{font-size:22px}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;padding:85px 6%}.contact-row{display:grid;grid-template-columns:95px 1fr;gap:20px;border-top:1px solid #cdd5c8;margin-top:26px;padding-top:20px}.contact-row>span{font-size:10px;letter-spacing:1px;padding-top:6px}.contact-row p{font-size:15px}.contact-copy>.btn{margin-top:28px}.map{min-height:490px;background:#dfe5d6;border-radius:12px;overflow:hidden}.map iframe{border:0;width:100%;height:100%;min-height:490px}footer{background:var(--ink);color:white;padding:42px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:12px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:16px;z-index:20}.skip:focus{top:10px}@media(min-width:1600px){main,header,footer,.top{padding-left:max(5%,calc((100vw - 1500px)/2));padding-right:max(5%,calc((100vw - 1500px)/2))}.hero{margin:10px 0}}@media(max-width:1000px){header{gap:20px}.brand strong{font-size:15px}nav{gap:15px}.headerbtn{display:none}.hero{grid-template-columns:1.15fr 1fr}.hero-copy{padding:40px 7% 25px}h1{font-size:53px}.actions{flex-wrap:wrap;gap:20px}.portal-section{grid-template-columns:1fr 1fr}.portal-section>div{grid-column:1/-1}.portal-section h2 br{display:none}.portal-section>div>p:last-child{max-width:none}.gallery img{height:180px}.contact{gap:30px}}@media(max-width:640px){.top{font-size:10px;padding:10px 5%}.top>a{display:none}header{padding:22px 5%;flex-wrap:wrap;gap:24px}.brand strong{font-size:17px}nav{margin:0;width:100%;justify-content:space-between}.hero{display:flex;flex-direction:column;margin:0 4%}.hero-copy{border-radius:12px 12px 0 0;padding:35px 7% 25px}h1{font-size:49px}.intro{font-size:16px}.hero-foot{padding-top:35px;font-size:8px}.hero-image{min-height:310px;border-radius:0 0 12px 12px}.image-label{bottom:25px;left:25px}.image-label b{font-size:28px}.portal-section{padding:60px 6%;grid-template-columns:1fr}.portal-section>div{grid-column:auto}.portal-card,.medical-card{min-height:275px}.hospital{padding:55px 6%}.section-title{display:block}.section-title>p{margin-top:20px}.gallery{grid-template-columns:1fr;gap:30px}.gallery img{height:230px}.contact{padding:55px 6%;grid-template-columns:1fr}.map,.map iframe{min-height:330px}footer{align-items:start;flex-direction:column}.contact-row{grid-template-columns:80px 1fr}.hero-foot span:last-child{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.directory{padding:75px 6%;background:#e9eddf}.directory label{display:block;font-size:13px;margin-bottom:12px}.directory input{font:inherit;padding:15px 18px;border:1px solid #79918a;border-radius:5px;width:100%;min-width:260px;color:var(--ink);background:var(--paper)}.phone-list{display:grid;grid-template-columns:1fr 1fr;column-gap:45px}.phone-item{padding:23px 0;border-top:1px solid #c3cdc0}.phone-item h3{font-size:18px;letter-spacing:-.4px;margin-bottom:9px}.phone-item p{font-size:16px}.phone-item a{text-decoration:underline;text-underline-offset:4px}.directory-note{font-size:12px;color:var(--muted);margin-top:25px}.turnos{margin-top:40px;border-top:1px solid #c3cdc0;padding-top:30px;display:flex;justify-content:space-between;gap:25px;align-items:center}.turnos h3{font-size:30px}.turnos p{font-size:14px;margin-top:9px}[hidden]{display:none!important}@media(max-width:640px){.directory{padding:55px 6%}.phone-list{grid-template-columns:1fr}.directory .section-title>div:last-child{margin-top:25px}.turnos{align-items:start;flex-direction:column}.directory input{min-width:0}}

/* Turnos y portal paciente: misma jerarquía y tamaño. */
.primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:470px}.primary-actions .btn{min-height:60px;gap:15px}.location-link{align-self:flex-start;margin-top:22px}.portal-section{grid-template-columns:repeat(2,minmax(0,1fr))}.services-intro{grid-column:1/-1}.portal-section .services-intro>p:last-child{max-width:none}.portal-section .medical-card{grid-column:1/-1;min-height:0;flex-direction:row;align-items:center;justify-content:space-between;gap:24px}.medical-card h3{font-size:24px}.medical-card .card-bottom{margin:0;padding:0;gap:25px}.portal-section .portal-card{min-height:310px}@media(max-width:640px){.portal-section{grid-template-columns:1fr}.services-intro{grid-column:auto}.primary-actions{width:100%;gap:10px}.primary-actions .btn{padding:17px 13px;font-size:13px}.portal-section .medical-card{padding:25px;gap:15px}.portal-section .portal-card{min-height:275px}}
