/* Wong Oftalmólogos · ClinicMaster-inspired editable theme */
:root{--ink:#111;--paper:#fff;--mint:#cef2ce;--line:#d9dfd9;--muted:#414a43;--max:1200px;--serif:'Libre Baskerville',Georgia,serif;--sans:'Montserrat',system-ui,sans-serif;--ease:220ms ease-out}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--sans);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit}
a:hover{color:var(--ink)}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.skip-link{position:absolute;left:16px;top:-80px;padding:12px 16px;background:var(--mint);z-index:100}
.skip-link:focus{top:16px}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:30;background:var(--ink);color:var(--paper);border-bottom:1px solid #333}
.site-header :where(a,button):focus-visible{outline-color:var(--mint)}
.header-inner{min-height:88px;display:flex;align-items:center;gap:16px}
.brand{display:flex;align-items:center;flex:none;text-decoration:none}
.brand img{width:165px;height:auto;filter:brightness(0) invert(1)}
.nav{display:flex;align-items:center;gap:12px;margin-left:auto}
.nav a{color:var(--paper);font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap;padding:12px 0;border-bottom:2px solid transparent;transition:border-color var(--ease),color var(--ease)}
.nav a:hover,.nav a[aria-current=page]{border-color:var(--mint);color:var(--mint)}
.nav .nav-cta{display:none}
.nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;background:var(--ink);color:var(--paper)!important;text-decoration:none;font-size:15px;font-weight:700;white-space:nowrap;border:1px solid var(--ink);border-radius:8px;transition:background var(--ease),color var(--ease)}
.nav-cta:hover{background:var(--mint);color:var(--ink)!important}
.site-header .nav-cta{background:var(--mint);border-color:var(--mint);color:var(--ink)!important}
.site-header .nav-cta:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)!important}
.header-phone{order:2;display:inline-flex;align-items:center;gap:10px;min-height:48px;color:var(--paper);text-decoration:none;white-space:nowrap}
.header-phone:hover .header-phone-number{color:var(--mint)}
.header-phone-icon{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;color:var(--mint);transform-origin:center;animation:header-phone-ring 2.4s ease-in-out infinite}
.header-phone-icon svg{display:block;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.header-phone-text{display:grid;gap:2px;line-height:1.1}
.header-phone-label{display:block;color:var(--mint);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.header-phone-number{display:block;color:var(--paper);font-size:20px;font-weight:800;transition:color var(--ease)}
.header-inner>.nav-cta{order:3}
.nav{order:1}
.menu-toggle{order:4}
@keyframes header-phone-ring{0%,78%,100%{transform:rotate(0)}82%{transform:rotate(-12deg)}86%{transform:rotate(12deg)}90%{transform:rotate(-8deg)}94%{transform:rotate(6deg)}}
.menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--paper);border-radius:8px;background:var(--ink);margin-left:auto}
.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:20px;height:2px;background:var(--paper);content:'';position:relative}
.menu-toggle span:before{position:absolute;top:-6px}.menu-toggle span:after{position:absolute;top:6px}
.eyebrow{display:block;margin:0 0 16px;font-size:12px;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;font-weight:800}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.18;letter-spacing:-.035em}
h1{font-size:clamp(42px,5vw,76px)}
h2{font-size:clamp(32px,3.3vw,52px)}
h3{font-size:clamp(21px,2vw,29px)}
p{max-width:68ch}
.lead{font-size:18px;line-height:1.7;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 24px;border-radius:8px;border:1px solid var(--ink);text-decoration:none;font-weight:750;font-size:14px;line-height:1.4;transition:transform var(--ease),background var(--ease),color var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:var(--paper)}.btn-dark:hover{background:var(--mint);color:var(--ink)}
.btn-light{background:var(--paper);color:var(--ink)}.btn-light:hover{background:var(--mint)}
.btn-outline{background:transparent;color:var(--ink)}.btn-outline:hover{background:var(--mint)}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:32px}
.section{padding:96px 0}
.section-mint{background:var(--mint)}
.section-black{background:var(--ink);color:var(--paper)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:36px}
.section-head h2{max-width:700px;margin:0}
.section-head p{margin:0;max-width:390px}
.hero{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(206,242,206,.96) 0%,rgba(206,242,206,.84) 34%,rgba(206,242,206,.16) 65%,rgba(206,242,206,0) 100%),url('../images/wong/hero-background.jpg');background-size:cover;background-position:center center;background-repeat:no-repeat}
.hero-inner{display:flex;align-items:center;width:min(calc(100% - 48px),1360px);min-height:740px;padding-block:72px}
.hero-copy{position:relative;z-index:1;max-width:570px}
.hero-copy h1{max-width:none;margin-bottom:24px;font-size:clamp(38px,4.2vw,62px);line-height:1.14}
.hero-copy h1 span{display:block;white-space:nowrap}
.hero-copy p{font-size:18px;max-width:48ch}
.hero-visual{display:grid;grid-template-columns:1fr 1.2fr;align-items:end;gap:20px;position:relative}
.hero-visual:before{content:'';position:absolute;right:-24px;top:-44px;width:180px;height:120px;background:url('../images/wong/brand-mark.svg') center/contain no-repeat;z-index:0}
.hero-visual figure{margin:0;position:relative;z-index:1;background:var(--paper);border:8px solid var(--paper);border-radius:12px;overflow:hidden}
.hero-visual figure:first-child{margin-bottom:80px}
.hero-visual figure img{width:100%;height:auto}
.hero-visual figcaption{padding:12px 8px 4px;font-size:12px;font-weight:700;line-height:1.35}
.hero-note{position:absolute;left:8%;bottom:-22px;z-index:2;background:var(--ink);color:var(--paper);padding:16px 20px;font-size:13px;font-weight:700;max-width:260px;border-radius:8px}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}
.stat{display:grid;gap:4px;border-right:1px solid var(--line);padding-right:24px}
.stat:last-child{border:0}.stat strong{display:block;font-family:var(--serif);font-size:clamp(27px,3vw,42px);line-height:1.2}.stat span{display:block;font-size:13px;font-weight:700;color:var(--muted)}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,88px);align-items:center}
.split-photo{background:var(--mint);padding:20px;border-radius:12px}
.split-photo img{width:100%;height:auto;border-radius:8px}
.split-copy h2{margin-bottom:24px}
.split-copy p{margin-bottom:20px}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.service-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;background:var(--paper);transition:transform var(--ease),border-color var(--ease)}
.service-card:hover{transform:translateY(-4px);border-color:var(--ink)}
.service-card img{width:100%;height:auto}
.service-card-body{padding:24px;display:flex;flex-direction:column;flex:1}
.service-card h3{font-size:22px;margin:0 0 12px}
.service-card p{font-size:14px;line-height:1.6;margin-bottom:24px;color:var(--muted)}
.text-link{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:auto;font-weight:800;font-size:13px;text-decoration:none;border-bottom:2px solid var(--ink);padding-bottom:3px}
.specialty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.specialty-link{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:18px 20px;border:1px solid var(--ink);border-radius:8px;text-decoration:none;font-weight:700;background:var(--paper);line-height:1.35;transition:background var(--ease)}
.specialty-link:hover{background:var(--mint)}
.specialty-link span:last-child{font-size:22px;line-height:1}
.cta-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;background:var(--ink);color:var(--paper);border-radius:12px;padding:clamp(32px,5vw,72px)}
.cta-panel p{color:#e0e5e0}.cta-panel .btn-light{border-color:var(--paper)}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.team-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}
.team-card-photo{display:flex;align-items:flex-end;justify-content:center;height:320px;overflow:hidden;background:var(--mint)}
.team-card-photo img{display:block;flex:none;width:auto;max-width:none;height:100%;max-height:none;object-fit:contain;object-position:center bottom}
.team-card-body{padding:20px}.team-card h3{font-size:20px;margin-bottom:8px}.team-card p{font-size:16px;line-height:1.5;margin-bottom:8px;color:var(--muted)}
.quote-panel{padding:48px;background:var(--mint);border-radius:12px}
.quote-panel blockquote{margin:0;font:700 clamp(24px,2.5vw,36px)/1.35 var(--serif);max-width:850px}
.quote-panel cite{display:block;margin-top:20px;font:700 14px/1.5 var(--sans);font-style:normal}
.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.blog-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}
.blog-card img{width:100%;height:auto}.blog-card-body{padding:24px}.blog-card time{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}.blog-card h3{font-size:23px;margin-bottom:12px}.blog-card p{font-size:14px}
.locations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.location{border:1px solid var(--line);border-radius:12px;padding:32px;background:var(--paper)}
.location h3{margin-bottom:20px}.location p{margin-bottom:12px}.location a{text-decoration-thickness:1px;text-underline-offset:3px}
.site-footer{background:var(--ink);color:var(--paper);padding:72px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.25fr .75fr 1fr 1fr;gap:40px}
.footer-grid img{width:190px;filter:invert(1)}
.footer-grid h3{font:800 14px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px}
.footer-grid p,.footer-grid li{font-size:14px;line-height:1.7;color:#e4e8e4}
.footer-grid ul{list-style:none;padding:0;margin:0}.footer-grid li{margin-bottom:10px}.footer-grid a:hover{color:var(--mint)}
.footer-bottom{border-top:1px solid #424842;margin-top:48px;padding-top:24px;font-size:12px;color:#d2d8d2;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.page-hero{background:var(--mint);padding:88px 0}
.page-hero-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px}
.page-hero h1{max-width:13ch;margin-bottom:20px}.page-hero p{font-size:18px;max-width:50ch}
.page-hero img{width:100%;height:auto;border:12px solid var(--paper);border-radius:12px}
.breadcrumbs{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:700;margin-bottom:28px}
.breadcrumbs a{text-decoration:none;border-bottom:1px solid var(--ink)}
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.info-card{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.info-card h3{margin-bottom:16px}.info-card p:last-child{margin-bottom:0}
.timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.timeline-item{border-top:3px solid var(--ink);padding-top:20px}
.timeline-item strong{display:block;font:700 29px var(--serif);margin-bottom:12px}.timeline-item p{font-size:14px}
.list-plain{padding-left:20px}.list-plain li{margin-bottom:10px}
.category-list{display:grid;gap:24px}.category-row{display:grid;grid-template-columns:280px 1fr;gap:32px;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}
.category-row img{width:100%;height:auto}.category-row-body{padding:24px 28px 24px 0}.category-row h3{margin-bottom:12px}.category-row p{font-size:15px;margin-bottom:16px}
.form-shell{max-width:800px;margin-inline:auto;background:var(--paper);color:var(--ink);padding:clamp(24px,5vw,56px);border-radius:12px;border:1px solid var(--line)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.field{display:flex;flex-direction:column;gap:8px}.field-full{grid-column:1/-1}.field label{font-size:14px;font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #697169;border-radius:8px;background:var(--paper);color:var(--ink)}
.field textarea{min-height:120px;resize:vertical}.field small{font-size:13px;color:var(--muted)}
.field-error{min-height:0;color:#8d1515;font-size:13px;font-weight:700}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#8d1515}
.form-feedback{display:none;margin:0 0 24px;padding:16px;background:var(--mint);border-radius:8px;font-weight:700}
.form-feedback[data-show=true]{display:block}.form-feedback[data-kind=error]{background:#ffe8e6;color:#711}
.legal-note{font-size:13px;color:var(--muted);margin-top:20px}
.pill-list{display:flex;flex-wrap:wrap;gap:8px}.pill{padding:8px 12px;border:1px solid var(--ink);border-radius:99px;font-size:12px;font-weight:800}
@media(max-width:1100px){.nav{gap:14px}.nav a{font-size:12px}.header-inner{gap:18px}.brand img{width:160px}.service-grid,.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.menu-toggle{display:flex}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:16px 24px 24px;background:var(--ink);border-bottom:1px solid #333}.nav[data-open=true]{display:flex}.nav a{font-size:15px;padding:12px 4px}.nav .nav-cta{display:inline-flex;align-self:flex-start;padding:10px 20px;margin-top:12px}.header-inner>.nav-cta{display:none}.hero{background-position:35% center}.hero-inner{grid-template-columns:1fr;min-height:auto;gap:48px}.hero-copy h1{max-width:14ch}.hero-visual{max-width:650px;margin-inline:auto}.split,.page-hero-inner,.cta-panel{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.specialty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--max))}.header-inner{min-height:72px}.brand img{width:150px}.section{padding:64px 0}.hero-inner{padding-block:56px}.hero-copy h1{font-size:clamp(40px,11vw,58px)}.hero-visual{gap:12px}.hero-visual figure{border-width:5px}.hero-visual figure:first-child{margin-bottom:40px}.hero-note{position:static;grid-column:1/-1;max-width:none}.stats{grid-template-columns:1fr;gap:16px}.stat{border-right:0;border-bottom:1px solid var(--line);padding-bottom:16px}.stat:last-child{border-bottom:0}.section-head{display:block}.section-head p{margin-top:16px}.service-grid,.specialty-grid,.team-grid,.blog-grid,.locations,.content-grid,.timeline,.form-grid{grid-template-columns:1fr}.category-row{grid-template-columns:1fr}.category-row-body{padding:0 24px 24px}.page-hero{padding:56px 0}.page-hero-inner{gap:32px}.page-hero h1{font-size:clamp(38px,10vw,56px)}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-grid>div:first-child{grid-column:1/-1}.cta-panel{padding:28px}}
@media(max-width:390px){.footer-grid{grid-template-columns:1fr}.hero-visual figcaption{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

@media(max-width:900px){.hero{background-image:linear-gradient(90deg,rgba(206,242,206,.96),rgba(206,242,206,.78)),url('../images/wong/hero-background.jpg')}.hero-inner{min-height:650px}}
@media(max-width:600px){.hero{background-position:55% center;background-image:linear-gradient(90deg,rgba(206,242,206,.94),rgba(206,242,206,.82)),url('../images/wong/hero-background.jpg')}.hero-inner{min-height:610px}.hero-copy{max-width:100%}}
@media(min-width:901px) and (max-width:1100px){.menu-toggle{display:flex}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:16px 24px 24px;background:var(--ink);border-bottom:1px solid #333}.nav[data-open=true]{display:flex}.nav a{font-size:16px;padding:12px 4px}.nav .nav-cta{display:inline-flex;align-self:flex-start;padding:10px 20px;margin-top:12px}}
@media(max-width:900px){.hero-copy h1{max-width:none}}
@media(max-width:600px){.header-inner{gap:8px}.brand img{width:124px}.header-phone{gap:5px}.header-phone-icon{width:24px;height:24px}.header-phone-icon svg{width:22px;height:22px}.header-phone-label{display:none}.header-phone-number{font-size:15px}.menu-toggle{width:44px;height:44px}.hero-copy h1{font-size:clamp(34px,8.5vw,42px)}}
@media(prefers-reduced-motion:reduce){.header-phone-icon{animation:none}}

/* Wong home/about composition v2 */
:root{--wong-soft:#eef9ef;--wong-wide:1360px}
.site-header .header-inner{width:min(calc(100% - 48px),var(--wong-wide));max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand phone cta" "nav nav nav";column-gap:32px;row-gap:0;min-height:0;padding:16px 0 0}
.site-header .brand{grid-area:brand;align-self:center}
.site-header .brand img{width:220px;height:auto}
.site-header .header-phone{grid-area:phone;order:initial;min-height:56px;gap:12px}
.site-header .header-phone-number{font-size:22px}
.site-header .header-inner>.nav-cta{grid-area:cta;order:initial;min-height:56px;padding-inline:24px;font-size:16px}
.site-header .nav{grid-area:nav;order:initial;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:16px 0 0;padding:5px 0 9px;border-top:1px solid rgba(255,255,255,.2)}
.site-header .nav a{font-size:16px;padding:10px 0}
.site-header .menu-toggle{grid-area:menu}
.hero:after{content:"";position:absolute;right:0;bottom:0;left:0;height:112px;background:linear-gradient(180deg,rgba(238,249,239,0),var(--wong-soft));pointer-events:none}
.about-feature{background:linear-gradient(180deg,var(--wong-soft) 0%,var(--wong-soft) 76%,var(--mint) 100%);padding:88px 0 112px}
.about-layout{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);align-items:center;gap:clamp(56px,6vw,96px)}
.about-visual{position:relative;min-width:0;padding:24px 64px 16px 0}
.about-image-frame{position:relative;width:100%;aspect-ratio:5/6;overflow:hidden;border-radius:48% 48% 0 0 / 34% 34% 0 0;background:var(--ink)}
.about-image-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% center}
.about-inset{position:absolute;right:0;bottom:16px;width:176px;aspect-ratio:1;border:10px solid var(--paper);border-radius:28px;overflow:hidden;background:var(--paper);box-shadow:0 16px 36px rgba(0,0,0,.13)}
.about-inset img{display:block;width:100%;height:100%;object-fit:cover;object-position:66% center}
.about-seal{position:absolute;top:0;right:8px;display:grid;place-items:center;width:176px;aspect-ratio:1;border-radius:50%;background:var(--mint);color:var(--ink);box-shadow:0 12px 32px rgba(0,0,0,.12)}
.about-seal-ring{display:block;width:100%;height:100%;animation:wong-seal-rotate 22s linear infinite}
.about-seal-ring text{fill:currentColor;font:800 14px var(--sans);letter-spacing:1.1px}
.about-seal-icon{position:absolute;display:block;width:72px;height:72px;fill:none;stroke:var(--ink);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
@keyframes wong-seal-rotate{to{transform:rotate(360deg)}}
.about-copy .eyebrow{color:var(--ink);font-size:14px;letter-spacing:.09em}
.about-copy h2{max-width:14ch;margin-bottom:24px;font-size:clamp(34px,3.4vw,52px);line-height:1.16}
.about-copy p{max-width:58ch;margin-bottom:16px;font-size:18px;line-height:1.65}
.about-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0 36px}
.about-fact{min-width:0;gap:4px}
.about-fact strong{display:block;font-family:var(--serif);font-size:clamp(42px,4.2vw,60px);line-height:1.12;letter-spacing:-.04em;white-space:nowrap}
.about-fact span{display:block;font-size:16px;font-weight:700;line-height:1.45}
.about-copy>.btn{font-size:16px;min-height:56px}
@media(max-width:1100px){
 .site-header .header-inner{display:flex;min-height:94px;padding:12px 0;gap:24px}
 .site-header .brand{margin-right:auto}
 .site-header .brand img{width:190px}
 .site-header .header-phone{order:2}
 .site-header .header-inner>.nav-cta{order:3}
 .site-header .menu-toggle{display:flex;order:4;margin-left:0}
 .site-header .nav{position:absolute;top:100%;right:0;left:0;display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;margin:0;padding:16px 24px 24px;border-top:0;border-bottom:1px solid #333;background:var(--ink)}
 .site-header .nav[data-open=true]{display:flex}
 .site-header .nav a{font-size:16px;padding:12px 4px}
 .site-header .nav .nav-cta{display:inline-flex;align-self:flex-start;margin-top:12px;padding:10px 20px}
}
@media(max-width:900px){
 .about-layout{grid-template-columns:1fr;gap:48px}
 .about-visual{width:min(100%,580px);margin-inline:auto}
 .about-copy h2{max-width:18ch}
}
@media(max-width:700px){.site-header .header-inner>.nav-cta{display:none}}
@media(max-width:600px){
 .site-header .header-inner{width:min(calc(100% - 32px),var(--wong-wide));min-height:76px;gap:8px}
 .site-header .brand img{width:152px}
 .site-header .header-phone{gap:5px;min-height:44px}
 .site-header .header-phone-icon{width:24px;height:24px}
 .site-header .header-phone-icon svg{width:22px;height:22px}
 .site-header .header-phone-label{display:none}
 .site-header .header-phone-number{font-size:16px}
 .site-header .menu-toggle{width:44px;height:44px}
 .hero:after{height:80px}
 .about-feature{padding:56px 0 76px}
 .about-visual{padding:20px 48px 12px 0}
 .about-inset{right:0;bottom:12px;width:126px;border-width:7px;border-radius:20px}
 .about-seal{right:0;width:126px}
 .about-seal-ring text{font-size:15px}
 .about-seal-icon{width:52px;height:52px}
 .about-copy h2{font-size:clamp(34px,8vw,44px)}
 .about-copy p{font-size:17px}
 .about-facts{grid-template-columns:1fr;gap:0;margin:24px 0 28px}
 .about-fact{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(17,17,17,.18)}
 .about-fact strong{min-width:88px;font-size:40px}
 .about-fact span{font-size:16px}
}
@media(max-width:390px){.site-header .brand img{width:136px}.site-header .header-phone-number{font-size:16px}}
@media(prefers-reduced-motion:reduce){.about-seal-ring{animation:none!important}}

/* Portada: servicios, equipo y preparación de la cita */
.about-feature{background:linear-gradient(180deg,var(--wong-soft) 0%,var(--wong-soft) 76%,var(--paper) 100%)}
.about-image-frame img{object-position:center 36%}
.about-inset img{object-position:center}
.service-editorial{background:var(--paper)}
.service-editorial-head{max-width:760px;margin:0 auto 48px;text-align:center}
.service-editorial-head h2{margin:0}
.service-editorial-head p{max-width:56ch;margin:18px auto 0;font-size:18px;line-height:1.65}
.service-list{border-top:1px solid var(--line)}
.service-row{display:grid;grid-template-columns:48px minmax(0,1.15fr) minmax(0,.9fr) 152px 52px;gap:20px;align-items:center;min-height:142px;padding:16px 12px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;transition:background var(--ease)}
.service-row:hover,.service-row:focus-visible{background:color-mix(in oklch,var(--mint) 18%,var(--paper));color:var(--ink)}
.service-row-index{display:block;color:var(--muted);font-family:var(--serif);font-size:30px;font-weight:700;line-height:1}
.service-row h3{margin:0;font-size:clamp(22px,2vw,29px);line-height:1.25}
.service-row p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.service-row-preview{display:block;width:152px;aspect-ratio:4/3;overflow:hidden;border-radius:10px;opacity:0;transform:translateY(8px);transition:opacity 280ms ease-out,transform 280ms ease-out}
.service-row-preview img{display:block;width:100%;height:100%;object-fit:cover}
.service-row:hover .service-row-preview,.service-row:focus-visible .service-row-preview{opacity:1;transform:none}
.service-row-arrow{display:grid;place-items:center;width:52px;height:52px;border-radius:10px;background:var(--wong-soft);color:var(--ink);font-size:30px;line-height:1;transition:background var(--ease),transform var(--ease)}
.service-row:hover .service-row-arrow,.service-row:focus-visible .service-row-arrow{background:var(--mint);transform:translateX(3px)}
.service-editorial .actions{justify-content:center}
.team-showcase{background:var(--wong-soft)}
.team-showcase .section-head{align-items:end}
.team-card{display:flex;flex-direction:column;border:0;border-radius:18px;background:var(--paper);box-shadow:0 8px 28px rgba(17,17,17,.06)}
.team-card-photo{position:relative;height:320px;background:color-mix(in oklch,var(--ink) 13%,var(--paper))}
.team-card-body{display:flex;flex-direction:column;flex:1;padding:22px 22px 24px}
.team-card h3{font-size:20px;line-height:1.3;margin:0 0 8px}
.team-card p{font-size:16px;line-height:1.5;margin:0;color:var(--muted)}
.team-card p+p{margin-top:8px}
.team-card-more{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:52px;height:52px;border-radius:10px;background:var(--mint);color:var(--ink);font-size:30px;font-weight:400;line-height:1;text-decoration:none;transition:background var(--ease),transform var(--ease)}
.team-card-more:hover,.team-card-more:focus-visible{background:var(--paper);color:var(--ink);transform:translateY(-2px)}
.home-appointment{background:var(--mint)}
.appointment-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,6vw,88px);align-items:start}
.appointment-intro h2{max-width:13ch;margin-bottom:24px}
.appointment-intro p{max-width:48ch;font-size:18px;line-height:1.65}
.appointment-intro .text-link{margin-top:16px;font-size:16px}
.home-appointment .form-shell{max-width:none;margin:0;padding:clamp(24px,3vw,40px);box-shadow:0 16px 36px rgba(17,17,17,.08)}
.home-appointment .field label{font-size:16px}
.home-appointment .field input,.home-appointment .field select{font-size:16px}
.home-appointment .form-feedback{font-size:16px}
.home-appointment .legal-note{font-size:14px;line-height:1.5}
.home-appointment .form-submit{margin-top:4px}
.prep-section{background:var(--paper)}
.prep-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(48px,7vw,96px);align-items:start}
.prep-intro h2{max-width:13ch;margin-bottom:24px}
.prep-intro>p{max-width:46ch;font-size:18px;line-height:1.65}
.guide-disclosure{margin-top:28px}
.guide-disclosure>summary{list-style:none;cursor:pointer}
.guide-disclosure>summary::-webkit-details-marker{display:none}
.guide-disclosure>summary:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.guide-panel{display:grid;gap:16px;margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--wong-soft)}
.guide-panel article+article{padding-top:16px;border-top:1px solid var(--line)}
.guide-panel h3{margin:0 0 8px;font-size:20px}
.guide-panel p{margin:0;font-size:16px;line-height:1.6}
.guide-source{font-size:14px!important;color:var(--muted)}
.guide-source a{text-decoration:underline;text-underline-offset:3px}
.faq-column>h3{margin-bottom:28px;font-size:clamp(27px,2.5vw,36px)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:first-of-type{border-top:1px solid var(--line)}
.faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:16px 0;list-style:none;cursor:pointer;font-size:18px;font-weight:750;line-height:1.45}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.faq-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:8px;background:var(--wong-soft);font-size:25px;line-height:1;transition:transform var(--ease),background var(--ease)}
.faq-item[open] .faq-icon{transform:rotate(45deg);background:var(--mint)}
.faq-answer{padding:0 52px 20px 0}
.faq-answer p{margin:0;font-size:16px;line-height:1.65;color:var(--muted)}
.faq-answer a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){
 .service-row{grid-template-columns:42px minmax(0,1.1fr) minmax(0,.9fr) 120px 44px;gap:16px}
 .service-row-preview{width:120px}
 .service-row-arrow{width:44px;height:44px}
}
@media(max-width:900px){
 .appointment-layout,.prep-layout{grid-template-columns:1fr;gap:40px}
 .appointment-intro h2,.prep-intro h2{max-width:18ch}
}
@media(max-width:720px){
 .service-editorial-head{text-align:left;margin-bottom:28px}
 .service-editorial-head p{margin-left:0}
 .service-row{grid-template-columns:42px minmax(0,1fr) 44px;grid-template-areas:'number title arrow' 'number description description' '. image image';gap:8px 12px;min-height:0;padding:20px 0}
 .service-row-index{grid-area:number;align-self:start;padding-top:4px;font-size:25px}
 .service-row h3{grid-area:title;font-size:22px}
 .service-row p{grid-area:description}
 .service-row-preview{grid-area:image;width:min(100%,240px);margin-top:8px;opacity:1;transform:none}
 .service-row-arrow{grid-area:arrow}
 .faq-item summary{font-size:17px}
}
@media(hover:none){.service-row-preview{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.service-row-preview,.service-row-arrow,.team-card-more,.faq-icon{transition:none}}

/* Ajustes de la portada: identidad, lectura y fondo continuo */
:root{--wong-neutral:#595959;--service-preview-width:280px;--service-preview-angle:-5deg}
.about-seal-icon{color:var(--ink);fill:currentColor;stroke:none}
.about-inset img{object-position:72% center}
.about-copy h2{max-width:15ch}
.about-copy p{max-width:48ch}
.about-fact strong,.about-fact span{color:var(--wong-neutral)}
.about-copy>.btn{background:var(--mint);border-color:var(--ink);color:var(--ink)}
.about-copy>.btn:hover,.about-copy>.btn:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.services-specialties-flow{position:relative;isolation:isolate;overflow:hidden;background:var(--paper)}
.services-specialties-flow::before{content:"";position:absolute;top:var(--history-background-start,640px);right:0;bottom:-88px;left:0;z-index:0;pointer-events:none;background:url('../images/wong/history-specialties-background.png') center top/cover no-repeat;transform:translate3d(0,var(--flow-y,0px),0);will-change:transform}
.services-specialties-flow>.section{position:relative;z-index:1;background:transparent}
.service-editorial-head{margin-bottom:40px}
.service-editorial-head h2{max-width:none}
.service-row{position:relative;grid-template-columns:48px minmax(0,1fr) 200px 52px;gap:24px;min-height:150px;overflow:visible;transition:background 220ms ease-out}
.service-row:hover,.service-row:focus-visible{z-index:2;background:var(--mint);color:var(--ink)}
.service-row-preview{width:200px;overflow:hidden;opacity:0;transform:translateY(8px) scale(.96);transition:opacity 260ms ease-out,transform 300ms ease-out,box-shadow 300ms ease-out}
.service-row:hover .service-row-preview,.service-row:focus-visible .service-row-preview{opacity:1;transform:translateY(0) scale(1.2);box-shadow:0 18px 36px rgba(17,17,17,.2)}
.service-row:hover .service-row-arrow,.service-row:focus-visible .service-row-arrow{background:var(--paper)}
.services-specialties-flow .specialty-link{background:rgba(255,255,255,.88)}
.services-specialties-flow .specialty-link:hover,.services-specialties-flow .specialty-link:focus-visible{background:var(--mint);color:var(--ink)}
@media(max-width:1100px){.service-row{grid-template-columns:42px minmax(0,1fr) 160px 44px;gap:16px}.service-row-preview{width:160px}}
@media(max-width:720px){
 .service-row{grid-template-columns:42px minmax(0,1fr) 44px;grid-template-areas:'number title arrow' '. image image';gap:12px;min-height:0;padding:24px 0}
 .service-row-preview{grid-area:image;width:min(100%,220px);margin-top:8px;opacity:1;transform:none}
 .service-row:hover .service-row-preview,.service-row:focus-visible .service-row-preview{transform:none;box-shadow:none}
}
@media(hover:none){.service-row-preview{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.services-specialties-flow::before{transform:none!important;will-change:auto}.service-row-preview{transition:none}}

/* Fondo continuo y fotografías ampliadas: ajuste local de portada. */
.services-specialties-flow{background:linear-gradient(var(--wong-soft),var(--paper) 720px)}
.services-specialties-flow>.about-feature{background:transparent}
@media(min-width:721px){
 .services-specialties-flow .service-row{grid-template-columns:48px minmax(0,1fr) var(--service-preview-width) 52px;min-height:160px}
 .services-specialties-flow .service-row-preview{width:var(--service-preview-width);height:120px;aspect-ratio:auto;overflow:visible;border-radius:0;transform:none;position:relative}
 .services-specialties-flow .service-row-preview img{position:absolute;top:50%;left:0;width:100%;height:auto;border-radius:12px;transform:translateY(-50%) rotate(var(--service-preview-angle));box-shadow:0 16px 32px #11111126}
 .services-specialties-flow .service-row:hover .service-row-preview,.services-specialties-flow .service-row:focus-visible .service-row-preview{transform:none;box-shadow:none}
}
@media(min-width:721px) and (max-width:1100px){.services-specialties-flow{--service-preview-width:224px}.services-specialties-flow .service-row{grid-template-columns:40px minmax(0,1fr) var(--service-preview-width) 44px;gap:16px}}
@media(max-width:720px){
 .services-specialties-flow .service-row-preview{width:min(92%,320px);aspect-ratio:auto;overflow:visible;margin:16px 0}
 .services-specialties-flow .service-row-preview img{height:auto;border-radius:12px;transform:rotate(-3deg)}
}

/* Parallax: une fenêtre fixe conserve le début et la fin du fond. */
.services-specialties-flow::before{content:none}
.flow-parallax{position:absolute;top:var(--history-background-start,640px);bottom:0;left:0;right:0;z-index:0;overflow:hidden;pointer-events:none}
.flow-parallax-image{position:absolute;top:-448px;bottom:-448px;left:0;right:0;background-image:url('../images/wong/history-specialties-full.png');background-size:var(--background-pattern-width,100vw) auto;background-position:var(--background-circle-x,0px) calc(448px + var(--background-circle-y,0px));background-repeat:repeat-y;transform:translate3d(0,var(--flow-y,0px),0);will-change:transform}
@media(prefers-reduced-motion:reduce){.flow-parallax-image{transform:none;will-change:auto}}

/* Portada: fondos fotográficos con contenido y controles en flujo. */
.hero[data-hero-slider]{--hero-fade:1200ms;background:var(--mint);isolation:isolate}
.hero-slides{position:absolute;inset:0;z-index:-2;pointer-events:none}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity var(--hero-fade) ease-out}
.hero-slide.is-active{opacity:1}
.hero-slide:nth-child(1){background-image:url('../images/wong/hero-slide-01.png')}
.hero-slide:nth-child(2){background-image:url('../images/wong/hero-slide-02.png')}
.hero-slide:nth-child(3){background-image:url('../images/wong/hero-slide-03.png')}
.hero-slide:nth-child(4){background-image:url('../images/wong/consultation.jpg')}
.hero-slide:nth-child(5){background-image:url('../images/wong/exams.jpg')}
.hero[data-hero-slider]::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(206,242,206,.97),rgba(206,242,206,.86) 34%,rgba(206,242,206,.12) 67%,transparent)}
.hero[data-hero-slider]::after{z-index:-1}
.hero[data-hero-slider] .hero-inner{padding-bottom:40px}
.hero-slider-bar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-bottom:40px}
.hero-slider-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.hero-slider-controls button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;font-size:16px;font-weight:600;padding:8px 12px}
.hero-slider-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.hero-slider-controls button:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.hero-slider-controls button:disabled{cursor:default;opacity:.65}
.hero-image-note{max-width:38ch;margin:0;background:rgba(255,255,255,.94);padding:8px 12px;color:var(--ink);font-size:16px;line-height:1.5}
.hero-slider-status{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
@media(hover:hover){.hero-slider-controls button:hover{background:var(--mint);color:var(--ink)}}
@media(max-width:900px){.hero[data-hero-slider]::before{background:linear-gradient(90deg,rgba(206,242,206,.96),rgba(206,242,206,.80))}.hero-slide{background-position:65% center}}
@media(max-width:600px){.hero-slider-bar{padding-bottom:24px}.hero[data-hero-slider] .hero-inner{min-height:560px}.hero[data-hero-slider] h1 span{white-space:normal}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Portada: controles discretos, equipo y convenios */
:root{--wong-stat-gray:#707070;--partners-duration:48s;--partners-gap:48px}
.hero-slider-bar{justify-content:center}
.hero-slider-controls{position:relative;justify-content:center;flex-wrap:nowrap;gap:8px}
.hero-slider-controls button[data-slide]{width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink)}
.hero-slider-controls button[data-slide] span{display:block;width:8px;height:8px;border-radius:50%;background:var(--ink);opacity:.45;transition:opacity 200ms ease-out,transform 200ms ease-out}
.hero-slider-controls button[data-slide][aria-pressed=true]{background:transparent}
.hero-slider-controls button[data-slide][aria-pressed=true] span{opacity:1;transform:scale(1.25)}
.hero-slider-controls .hero-pause-accessible{position:absolute;left:50%;bottom:56px;clip-path:inset(50%);width:1px;height:1px;min-width:0;min-height:0;padding:0;overflow:hidden;white-space:nowrap}
.hero-slider-controls .hero-pause-accessible:focus{clip-path:none;width:auto;height:auto;min-height:44px;padding:8px 16px;overflow:visible;transform:translateX(-50%)}
.about-feature .about-fact strong{font-family:Montserrat,sans-serif;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.2;color:var(--wong-stat-gray)}
.about-feature .about-fact span{color:var(--wong-stat-gray);font-weight:500}
.about-feature .about-inset{aspect-ratio:auto}
.about-feature .about-inset img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.team-showcase{background:var(--mint)}
.home-appointment{background:#fff}
.home-appointment .form-shell{background:var(--mint)}
.home-appointment .legal-note{font-size:16px}
.partners-section{background:#fff;--od-gap:24px}
.partners-section .section-head p{max-width:65ch;margin:16px 0 0}
.partners-pause{flex:none;min-height:44px;padding:8px 16px;border:1px solid #707070;border-radius:8px;font:inherit;font-size:16px;color:var(--ink);background:#fff;cursor:pointer}
.partners-window{overflow:hidden;scrollbar-width:none;padding:24px 0}
.partners-track{display:flex;width:max-content;animation:partners-travel var(--partners-duration) linear infinite}
.partners-group{display:flex;align-items:center;gap:var(--partners-gap);padding:0 var(--partners-gap) 0 0;margin:0;list-style:none;flex:none}
.partner-logo{display:flex;align-items:center;justify-content:center;width:176px;min-height:104px;flex:none}
.partner-logo img{display:block;width:auto;max-width:100%;height:auto;max-height:88px;object-fit:contain}
.partner-bbva img{max-height:104px}
.partners-section.is-paused .partners-track,.partners-section:focus-within .partners-track{animation-play-state:paused}
.partners-pause:focus-visible,.partners-window:focus-visible{outline:3px solid #111;outline-offset:4px}
@keyframes partners-travel{to{transform:translateX(-50%)}}
@media(hover:hover){.hero-slider-controls button[data-slide]:hover{background:transparent}.hero-slider-controls button[data-slide]:hover span{opacity:1}.partners-pause:hover{background:var(--mint)}}
@media(max-width:767px){.partner-logo{width:144px}.partners-section{--partners-gap:32px}.partners-section .section-head{align-items:start;gap:24px}.partners-section h2{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.partners-track{animation:none;transform:none;width:100%}.partners-group{width:100%;flex-wrap:wrap;justify-content:center;padding-inline:24px}.partners-copy,.partners-pause{display:none}.hero-slider-controls button[data-slide] span{transition:none}}

/* Continuidad de citas y nueva división */
:root{--visit-shift:0px;--contact-clearance:88px}
.visit-flow{position:relative;isolation:isolate;background:#fff}
.visit-background{position:absolute;inset:0;z-index:-1;overflow:clip;pointer-events:none}
.visit-background::before{content:"";position:absolute;top:-400px;bottom:-400px;left:0;right:0;background:url('../images/wong/history-specialties-full.png') center top / 100% auto repeat-y;transform:translate3d(0,var(--visit-shift),0);will-change:transform}
.visit-flow>.section,.visit-flow>.partners-section,.visit-flow>.prep-section{background:transparent}
.visit-flow .form-shell{background:var(--mint)}
.division-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.vision-division{background:#fff}
.division-services{padding:32px;background:var(--mint);border-radius:16px;--od-gap:16px}
.division-services .btn{align-self:start}
.advanced-contact{margin-top:40px;padding-block:32px;border-top:1px solid #a4a4a4;--od-gap:16px}
.advanced-contact p{max-width:70ch;margin:0}
.whatsapp-dock{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:90}
.whatsapp-float{display:flex;align-items:center;gap:8px;min-height:56px;padding:12px 20px;color:#111;background:var(--mint);border:2px solid #111;border-radius:32px;box-shadow:0 4px 16px #0002;text-decoration:none;font-size:16px;font-weight:700}
.whatsapp-float svg{display:block;width:28px;height:28px;flex:none}
.whatsapp-float:focus-visible{outline:3px solid #111;outline-offset:4px}
.has-whatsapp{padding-bottom:var(--contact-clearance)}
.has-whatsapp :where(a,button,input,select,textarea){scroll-margin-bottom:112px}
@media(hover:hover){.whatsapp-float:hover{background:#fff;color:#111}}
@media(max-width:767px){.division-layout{grid-template-columns:1fr;gap:32px}.whatsapp-dock{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.whatsapp-float{padding:12px}.whatsapp-float span{display:none}.division-services{padding:24px}}
@media(prefers-reduced-motion:reduce){.visit-background::before{transform:none;will-change:auto}}

/* Nuevos servicios: fotografía y etiqueta comparten la transición */
.services-specialties-flow .service-row-new{grid-template-columns:48px minmax(0,1fr) var(--service-preview-width) 52px;padding:48px 12px 24px;gap:24px;--new-reveal:280ms}
.service-new-copy{--od-gap:8px;grid-column:2;grid-row:1}
.service-new-copy p{max-width:60ch;color:var(--muted)}
.service-new-badge{position:absolute;top:12px;right:12px;display:block;padding:4px 12px;background:#111;color:var(--mint);border-radius:4px;font-size:16px;font-weight:700;line-height:1.5;transform:rotate(-6deg);z-index:2}
.service-new-badge-rest{transition:opacity var(--new-reveal) ease-out,transform var(--new-reveal) ease-out}
.service-new-stage{display:block;position:relative;grid-column:3;grid-row:1;height:120px;pointer-events:none}
.service-new-media{display:block;position:absolute;top:50%;right:0;width:100%;opacity:0;transform:translateY(calc(-50% + 12px)) rotate(0deg);transition:opacity var(--new-reveal) ease-out,transform var(--new-reveal) ease-out}
#rehabilitacion-visual .service-new-media{width:76%}
.service-new-media img{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 16px 32px #11111126}
.service-row-new .service-row-arrow{grid-column:4;grid-row:1}
.service-row-new:focus-visible .service-new-media{opacity:1;transform:translateY(-50%) rotate(var(--service-preview-angle))}
.service-row-new:focus-visible .service-new-badge-rest{opacity:0;transform:translateY(8px) rotate(-6deg)}
@media(hover:hover){.service-row-new:hover .service-new-media{opacity:1;transform:translateY(-50%) rotate(var(--service-preview-angle))}.service-row-new:hover .service-new-badge-rest{opacity:0;transform:translateY(8px) rotate(-6deg)}}
@media(min-width:721px) and (max-width:1100px){.services-specialties-flow .service-row-new{grid-template-columns:40px minmax(0,1fr) var(--service-preview-width) 44px;gap:16px}}
@media(max-width:720px){.services-specialties-flow .service-row-new{grid-template-columns:32px minmax(0,1fr) 44px;grid-template-areas:none;gap:16px;padding:32px 12px}.service-row-new .service-row-index{grid-area:auto;grid-column:1;grid-row:1}.service-new-copy{grid-column:2;grid-row:1}.service-row-new .service-row-arrow{grid-area:auto;grid-column:3;grid-row:1}.service-new-copy h3{font-size:22px}.service-new-copy p{font-size:16px}.service-new-stage{grid-column:2 / -1;grid-row:2;height:auto;margin:16px 8px}.service-new-stage .service-new-media{position:relative;top:auto;right:auto;width:100%;max-width:280px;opacity:1;transform:rotate(-3deg)}#rehabilitacion-visual .service-new-media{width:76%;max-width:200px}.service-new-badge-rest{display:none}.service-row-new:is(:hover,:focus-visible) .service-new-media{transform:rotate(-3deg)}}
@media(hover:none) and (min-width:721px){.service-row-new .service-new-stage{height:auto}.service-row-new .service-new-media{position:relative;top:auto;right:auto;opacity:1;transform:rotate(-3deg)}.service-new-badge-rest{display:none}}
@media(prefers-reduced-motion:reduce){.service-new-media,.service-new-badge-rest{transition:none}}

/* Retratos integrados en el fondo, con encuadre uniforme a la cintura */
.team-grid{--portrait-height:320px;--portrait-shadow:8px 8px 12px rgba(17,17,17,.22);--portrait-zoom:1.04;--portrait-motion:240ms}
.team-grid .team-card{background:transparent;border:2px solid #fff;box-shadow:none;border-radius:16px;overflow:hidden}
.team-grid .team-card-photo{height:var(--portrait-height);background:transparent;align-items:flex-start;padding-top:16px;overflow:hidden;isolation:isolate}
.team-grid .team-card-photo img{height:calc(var(--portrait-height) - 16px);width:auto;max-width:none;flex:none;object-fit:contain;object-position:center top;filter:drop-shadow(var(--portrait-shadow));transform-origin:center bottom;transition:transform var(--portrait-motion) ease-out}
.team-grid .team-card-photo img[src$="jhon-zans-portrait.png"]{height:calc(var(--portrait-height) * 1.4);transform-origin:center 68%}
.team-grid .team-card-body{background:#fff;padding:24px;color:var(--ink)}
.team-grid .team-card-more{z-index:1}
.team-grid .team-card:focus-within .team-card-photo img{transform:scale(var(--portrait-zoom))}
@media(hover:hover){.team-grid .team-card:hover .team-card-photo img{transform:scale(var(--portrait-zoom))}}
@media(prefers-reduced-motion:reduce){.team-grid .team-card-photo img{transition:none}.team-grid .team-card:is(:hover,:focus-within) .team-card-photo img{transform:none}}

/* Alineación de la cifra de sedes en Sobre nosotros. */
.about-feature .about-fact-centered{text-align:center;justify-items:center}
@media(max-width:767px){.about-feature .about-fact-centered{justify-content:center}}

/* Iconos de las especialidades de la portada. */
.specialty-link:has(.specialty-icon){--specialty-icon-size:48px;display:grid;grid-template-columns:var(--specialty-icon-size) minmax(0,1fr) auto;gap:16px}
.specialty-link .specialty-icon{display:flex;align-items:center;justify-content:center;width:var(--specialty-icon-size);height:var(--specialty-icon-size);border-radius:8px;background:var(--mint);color:var(--ink)}
.specialty-icon svg{display:block;width:32px;height:32px}
.specialty-name{display:block;overflow-wrap:normal}

/* Acción principal al final de Servicios. */
.services-all-cta{--cta-gap:24px;--cta-radius:8px;--cta-motion:200ms;display:inline-flex;align-items:center;justify-content:space-between;gap:var(--cta-gap);max-width:100%;min-height:64px;padding:12px 16px 12px 24px;border:2px solid var(--ink);border-radius:var(--cta-radius);background:var(--ink);color:var(--paper);font-size:16px;font-weight:800;line-height:1.5;text-decoration:none}
.services-all-cta>span{display:block;min-width:0}
.services-all-cta .services-all-arrow{display:flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:var(--cta-radius);background:var(--mint);color:var(--ink);font-size:24px;transition:transform var(--cta-motion) ease-out}
.services-all-cta:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
@media(hover:hover){.services-all-cta:hover{background:var(--mint);color:var(--ink)}.services-all-cta:hover .services-all-arrow{background:var(--ink);color:var(--paper);transform:translateX(4px)}}
@media(max-width:480px){.services-all-cta{width:100%;--cta-gap:8px;padding-left:16px}}
@media(prefers-reduced-motion:reduce){.services-all-cta .services-all-arrow{transition:none;transform:none!important}}

/* WhatsApp clásico e iconos de especialidades sin fondo. */
.whatsapp-float{--whatsapp-green:#25d366;display:flex;justify-content:center;width:64px;height:64px;min-height:64px;padding:0;border:0;border-radius:50%;background:var(--whatsapp-green);color:#fff;box-shadow:0 4px 16px #0003}
.whatsapp-float svg{width:36px;height:36px}
.whatsapp-float span{display:none}
@media(hover:hover){.whatsapp-float:hover{background:#128c7e;color:#fff}}
.specialty-link .specialty-icon{background:transparent;border-radius:0;color:#000}
