/*

Theme Name: Teleoptometría Bloques

Version: 0.6.15

Description: Tema de bloques para el piloto privado de Teleoptometría.

License: GPL-2.0-or-later

Text Domain: teleoptometria-bloques

*/

:root{--ink:#123542;--teal:#007f78;--green:#8ebc3d;--paper:#f4f8f7;--line:#dce6e2}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif}a{color:var(--teal);text-underline-offset:4px}a:hover{color:#005750}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d39b36;outline-offset:4px}h1,h2,h3{letter-spacing:-.02em;line-height:1.22;font-weight:500}h1{font-weight:400;line-height:1.16}p{line-height:1.75}img{max-width:100%;height:auto}figure{margin:0}button,input,select{font:inherit}button,.wp-block-button__link{cursor:pointer}.pilot-notice{display:flex;justify-content:center;align-items:center;gap:20px;background:#143942;color:#fff;padding:9px 22px;font-size:12px;letter-spacing:.02em}.pilot-notice a{color:#d7f0c2}.site-header{max-width:1200px;margin:auto;padding:25px 30px;border-bottom:1px solid var(--line)}.site-header .wp-block-group{margin:0}.site-logo img{width:220px}.site-nav{gap:30px;font-size:15px;font-weight:500}.site-nav a{text-decoration:none;color:var(--ink)}main{min-height:55vh}.wp-site-blocks>main{margin-block-start:0}.entry-wrap{max-width:1080px;margin:64px auto 90px;padding:0 30px}.entry-wrap>.wp-block-post-title{font-size:clamp(32px,4.2vw,52px);margin:0 0 36px}.entry-wrap .wp-block-post-content img{max-height:600px;object-fit:contain}.home-hero{padding:74px 30px 76px;max-width:1260px;margin:auto!important;gap:70px!important;align-items:center!important}.home-hero h1{font-size:clamp(38px,5vw,64px);max-width:650px;margin:14px 0 24px}.home-hero p{max-width:500px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px!important;font-weight:600;color:var(--teal)}.hero-image img{width:100%;height:430px;object-fit:cover;border-radius:22px}.hero-image{position:relative}.hero-image figcaption{padding:14px 0;font-size:12px;color:#567079}.section-soft{background:var(--paper);padding:64px 30px!important}.section-inner{max-width:1120px;margin:auto}.section-inner h2{font-size:clamp(30px,3.4vw,44px);margin:12px 0 26px}.service-card{background:white;border:1px solid var(--line);border-radius:16px;padding:28px!important;height:100%}.service-card h3{font-size:23px}.step-index{color:var(--teal);font-size:13px;font-weight:700}.home-directory{max-width:1120px;margin:72px auto;padding:0 30px}.home-directory h2{font-size:44px}.site-footer{background:#123542;color:#e4f0ed;padding:48px 30px;margin:0!important}.site-footer a{color:#d5edb8}.site-footer .wp-block-group{max-width:1120px;margin:auto}.site-footer small{color:#b7cdca}.to-section{margin:40px 0}.to-section .wp-block-columns{gap:35px}.to-section h2{font-size:32px}.to-section .wp-block-image img{border-radius:15px}.wp-block-button__link{padding:14px 24px;border-radius:8px;background:var(--teal);font-weight:600;font-size:15px}.is-style-outline .wp-block-button__link{background:transparent;border:1px solid var(--teal);color:var(--teal)}.wp-block-post-content p{overflow-wrap:anywhere}.wp-block-post-content iframe{max-width:100%}.wp-block-post-title a{color:var(--ink)}.wp-block-post-content .alignleft{float:none}.wp-block-post-content>p{max-width:820px}.wp-block-query .wp-block-post-title{font-size:27px}.wp-block-post-date{font-size:13px;color:#5b746e}

@media(max-width:780px){.pilot-notice{justify-content:space-between;gap:10px;font-size:11px}.pilot-notice span{display:none}.site-header{padding:20px}.site-header>.wp-block-group{gap:20px!important;flex-direction:column;align-items:flex-start!important}.site-logo img{width:180px}.site-nav{gap:16px!important;flex-wrap:wrap!important;font-size:14px}.home-hero{padding:40px 22px!important;gap:25px!important}.hero-image img{height:280px}.entry-wrap{padding:0 22px;margin-top:35px}.section-soft{padding:40px 22px!important}.home-directory{margin:44px auto;padding:0 22px}.home-directory h2{font-size:34px}.site-footer{padding:35px 22px}.wp-block-columns{flex-direction:column}.wp-block-column{flex-basis:100%!important}}

/* Archive, pagination and native navigation follow-up. */

.to-pagination{flex-wrap:wrap}.to-pagination span{padding:8px 15px;border-radius:6px}.to-card{min-width:0}.to-card h2,.to-address{overflow-wrap:anywhere}.to-publications time{font-size:12px;color:#536f6b}.wp-block-details{border:1px solid var(--line);border-radius:8px;padding:18px 22px;margin:14px 0}.wp-block-details summary{cursor:pointer;font-weight:600}.wp-block-navigation .wp-block-navigation__submenu-container{padding:12px;border:1px solid var(--line);border-radius:8px;min-width:235px;background:#fff}.wp-block-navigation__responsive-container.is-menu-open{padding:28px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{margin:8px 0}.wp-block-post-template{padding:0;gap:24px}.wp-block-post-content table{display:block;max-width:100%;overflow-x:auto}.wp-block-post-content td{min-width:80px}.wp-block-post-content pre{overflow-x:auto}.wp-block-post-content h3{font-size:24px;line-height:1.4}.wp-block-post-content h4{font-size:20px;line-height:1.5}@media(max-width:780px){.site-header>.wp-block-group{flex-direction:row;align-items:center!important}.site-header .site-nav{margin-left:auto}.wp-block-post-template.is-layout-grid{grid-template-columns:1fr!important}.to-pagination a,.to-pagination span{padding:7px 10px}}

.wp-block-navigation__responsive-container.is-menu-open{background:#fff!important;color:#123542!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch;max-width:560px;margin:auto;padding-top:44px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{align-items:flex-start;margin:0;width:100%;text-align:left}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:flex;align-items:center;min-height:44px;padding:8px 4px;width:100%;line-height:1.5}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{border:0;padding:0 0 12px 18px;min-width:0;align-items:flex-start}.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-height:44px;min-width:44px;align-items:center;justify-content:center}.wp-block-navigation__responsive-container-close{display:flex}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:8px;align-items:stretch}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.to-card{transition:none}}

.site-header .wp-block-navigation__responsive-container.is-menu-open{padding:24px!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:44px!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .site-nav{margin:0!important;width:100%;align-items:stretch!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{padding:0 0 12px 18px!important;width:100%}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{align-items:flex-start!important}



textarea:focus-visible,summary:focus-visible{outline:3px solid #d39b36;outline-offset:4px}


.to-media-animation{max-width:592px;margin:1.5rem 0;border:1px solid var(--line);padding:12px;border-radius:8px}.to-media-animation summary{cursor:pointer;color:var(--teal);font-weight:600}.to-media-animation summary span{display:block;padding:8px 0}.to-media-animation .to-animation-poster{display:block}.to-media-animation[open] .to-animation-poster{display:none}.to-media-animation>img{display:block;margin-top:8px}

/* Typography refinement: use installed system fonts, with no external font requests. */
body{font-weight:400}h1.wp-block-post-title,.home-hero h1{font-weight:400}.to-card h2,.wp-block-query .wp-block-post-title{font-weight:500;letter-spacing:-.015em}.wp-block-post-content h2,.wp-block-post-content h3,.wp-block-post-content h4{font-weight:500}.site-footer{font-size:16px;line-height:1.7}

/* Restore the original menu order and centered, two-row header (2026-11-04). */
.site-header.site-header-original{max-width:1280px;padding:24px 24px 10px;position:relative;z-index:20;background:#fff}
.site-header-original>.header-brand{justify-content:center!important;flex-direction:row!important;align-items:center!important;margin:0 0 18px!important}
.site-header-original .site-logo img{width:330px;display:block}
.site-header-original>.header-menu-row{gap:22px!important;flex-direction:row!important;align-items:center!important;justify-content:center!important}
.site-header-original .site-nav{margin:0!important;font-size:14px;font-weight:500;gap:22px}
.site-header-original .wp-block-navigation__container{gap:22px;flex-wrap:nowrap}
.site-header-original .wp-block-navigation-item__content{line-height:1.5}
.site-header-original .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:9px 10px;font-weight:400}
.site-header-original .wp-block-navigation__submenu-container{width:250px;box-shadow:0 8px 22px #12354212}
.site-header-original .site-nav>.wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container>li:last-child>.wp-block-navigation__submenu-container{right:0;left:auto}
.site-header-original .site-nav>.wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container>li:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{right:100%;left:auto}
.site-header-original .header-search{flex:0 0 auto;margin:0;position:relative}
.site-header-original .header-search .wp-block-search__button{background:transparent;color:var(--ink);border:0;padding:8px;margin:0;min-width:44px;min-height:44px;border-radius:4px}
.site-header-original .header-search .wp-block-search__inside-wrapper{padding:0;border:0}
.site-header-original .header-search .wp-block-search__input{min-width:0;border:1px solid var(--line);border-radius:5px;padding:8px 12px}
.site-header-original .header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{position:absolute;right:0;top:-22px;width:290px;background:#fff;box-shadow:0 4px 18px #12354220;border-radius:5px;z-index:5}
@media(max-width:1099px){
 .site-header.site-header-original{padding:18px 20px 8px}
 .site-header-original .site-logo img{width:260px}
 .site-header-original>.header-brand{margin-bottom:8px!important}
 .site-header-original>.header-menu-row{justify-content:flex-end!important;gap:12px!important}
 .site-header-original .site-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .site-header-original .site-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
 .site-header-original .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{flex-wrap:wrap;gap:8px}
 .site-header-original .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{box-shadow:none;width:100%;position:static}
 .site-header-original .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:16px}
}
@media(max-width:600px){.site-header-original .site-logo img{width:230px}.site-header-original .header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{width:min(290px,calc(100vw - 40px))}}

/* Keep the expanded search field inside the viewport, independent of core max-width. */
.site-header-original .header-search{width:44px;min-width:44px;flex:0 0 44px}
.site-header-original .header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{max-width:none!important;width:290px;right:0;left:auto}
.site-header-original .header-search .wp-block-search__input{flex:1 1 0}
.wp-block-query-title{overflow-wrap:anywhere}
@media(max-width:600px){.site-header-original .header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{width:min(290px,calc(100vw - 40px))}}

/* Final typography follows Historia/Misión; retain short, intentional emphasis. */
.wp-block-post-content .to-faq-question{font-size:18px;font-weight:500;line-height:1.65;margin:22px 0}
.home-resources h2{font-size:32px;font-weight:500;line-height:1.3}
.home-resources h3{font-weight:500}
.site-footer>.wp-block-group{align-items:flex-start;gap:32px}
.site-footer .footer-sections{max-width:360px;line-height:1.9}

/* Keep the corporate email whole in the repeated appointment contact block. */
.wp-block-post-content .wp-block-group:has(> .wp-block-buttons a[href="mailto:informes@teleoptometria.com"]){container-type:inline-size}
.wp-block-post-content .wp-block-group:has(> .wp-block-buttons a[href="mailto:informes@teleoptometria.com"])>h3{font-size:clamp(12px,6.1cqw,20px);white-space:nowrap;overflow-wrap:normal;word-break:normal}

/* Logo and header: compact on scroll, expand on return to the top. */
header.to-sticky-header{position:sticky;top:var(--to-header-top,0px);z-index:50;background:#fff;margin-block-start:0!important}
.to-sticky-header .site-header-original{transition:padding .4s ease-in-out}
.to-sticky-header .header-brand{transition:margin .4s ease-in-out}
.to-sticky-header .site-logo img{transition:width .4s ease-in-out}
.to-sticky-header.to-header-compact{box-shadow:0 3px 15px #12354210}
.to-header-compact .site-header.site-header-original{padding-top:8px;padding-bottom:4px}
.to-header-compact .site-header-original>.header-brand{margin-bottom:4px!important}
.to-header-compact .site-header-original .site-logo img{width:220px}
@media(max-width:1100px){.to-header-compact .site-header-original .site-logo img{width:190px}}
@media(max-width:600px){.to-header-compact .site-header-original .site-logo img{width:175px}}
@media(prefers-reduced-motion:reduce){.to-sticky-header .site-header-original,.to-sticky-header .header-brand,.to-sticky-header .site-logo img{transition:none}}

/* Video gallery: original thumbnails, accessible controls and opt-in playback. */
.to-video-gallery{max-width:1040px;margin:28px auto 40px}
.to-video-stage{position:relative;aspect-ratio:16/9;min-height:200px;background:#102731;border-bottom:7px solid #1275bd;border-radius:14px 14px 40px 0;overflow:hidden}
.to-video-stage .to-video-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#102731;color:white;display:block}
.to-video-stage .to-video-play[hidden],.to-video-gallery [hidden]{display:none!important}
.to-video-stage .to-video-play img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;border-radius:0}
.to-video-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#e82429;color:white;border-radius:14px;padding:8px 24px;font-size:32px;line-height:1.3}
.to-video-play-label{position:absolute;left:16px;bottom:16px;background:#102731e8;color:#fff;padding:10px 15px;border-radius:6px;font-size:15px;font-weight:500}
.to-video-stage iframe{display:block;position:absolute;inset:0;width:100%;height:100%;border:0}
.to-video-unavailable{height:100%;min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;color:white}
.to-video-title{font-size:19px;font-weight:500;line-height:1.5;margin:16px 0 8px}
.to-video-consent{font-size:13px;line-height:1.6;color:#4b6268;margin:8px 0}
.to-video-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:14px;margin:8px 0 20px}
.to-video-stop{font-size:13px;background:white;border:1px solid #a6bec2;padding:7px 12px;border-radius:5px;color:#123542}
.to-video-carousel{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:8px;align-items:center}
.to-video-thumbnails{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/4);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 3px 12px}
.to-video-thumb{scroll-snap-align:start;min-width:0;align-self:stretch;display:flex;flex-direction:column;padding:0;text-align:left;background:#f4f8f7;border:2px solid transparent;border-radius:10px;overflow:hidden;color:#123542;font-size:13px;line-height:1.4}
.to-video-thumb[aria-pressed="true"]{border-color:#007f78;background:#e9f5f2}
.to-video-thumb img,.to-video-placeholder{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;border-bottom:5px solid #1275bd;border-radius:0 0 36px 0}
.to-video-placeholder{display:grid;place-items:center;background:#dfe7e9;font-size:14px;color:#35525b}
.to-video-thumb-label{display:block;padding:10px;font-weight:400}
.to-video-previous,.to-video-next{min-height:44px;border:1px solid #dce6e2;border-radius:5px;background:white;color:#123542;font-size:30px;padding:0}
@media(max-width:700px){.to-video-thumbnails{grid-auto-columns:calc((100% - 12px)/2)}.to-video-stage{border-radius:10px 10px 24px 0}.to-video-play-label{left:8px;bottom:8px;font-size:12px;padding:7px}.to-video-title{font-size:17px}.to-video-carousel{grid-template-columns:26px minmax(0,1fr) 26px;gap:5px}}

/* Backgrounds follow the old site's pale blue-gray and blue contact sections. */
:root{--paper:#f1f5f7;--to-page-background:#f1f5f7}
body:not(.wp-admin){background:var(--to-page-background)}
.home-hero{background:linear-gradient(120deg,#f1f5f7 5%,#e5f1f7 100%);border-radius:0 0 32px 32px}
.section-soft{background:#e8f1f5}
.home-directory{background:#e3eff7;border:1px solid #d0e3ef;border-radius:24px;padding:40px}
.to-video-thumb{background:#fff}
.to-appointment-section{background:linear-gradient(120deg,#1769b7,#1b70bd);color:#fff;padding:clamp(24px,4vw,44px);border-radius:26px 26px 78px 26px;border-top:5px solid #2f8cff;margin-block:48px}
.wp-block-post-content .to-appointment-section h2,.wp-block-post-content .to-appointment-section h3,.wp-block-post-content .to-appointment-section p{color:#fff}
.to-appointment-section a{color:#fff}
.to-appointment-section .wp-block-button__link{background:#fff;color:#15578e;border:1px solid #fff;box-shadow:0 2px 8px #12354218}
.to-appointment-section .wp-block-button__link:hover{background:#e8f3ff;color:#104773}
.to-appointment-section .wp-block-image img{border-radius:0}
.to-appointment-section .wp-block-column{min-width:0}
@media(max-width:780px){.home-directory{margin-inline:22px;padding:28px 22px}.to-appointment-section{border-radius:20px 20px 48px 20px;padding:28px 22px}.to-appointment-section .wp-block-buttons{max-width:100%}.to-appointment-section .wp-block-button__link{max-width:100%;overflow-wrap:anywhere}}

/* Responsive close-out: prevent a video title from imposing intrinsic column width. */
.wp-block-post-content .wp-block-column:has(.to-video-gallery){min-width:0;width:100%}
.to-video-gallery{min-width:0;width:100%}
.to-video-thumb-label{overflow-wrap:anywhere}
/* Keep the contact anchor below the compact sticky header. */
#contacto{scroll-margin-top:150px}

.to-video-stage{width:100%}

/* Approved FAQs: native details, visible plus/minus and keyboard focus. */
.to-faq-list{max-width:960px;margin-inline:auto}
.to-faq-list .to-faq-item{border:1px solid #d4e3e6;background:#fff;border-radius:12px;margin-block:12px;overflow:hidden}
.to-faq-item>summary{position:relative;display:block;list-style:none;cursor:pointer;padding:20px 62px 20px 24px;font-size:19px;line-height:1.5;font-weight:500;color:#123542}
.to-faq-item>summary::-webkit-details-marker{display:none}
.to-faq-item>summary::marker{content:""}
.to-faq-item>summary::after{content:"+";position:absolute;right:22px;top:18px;color:#007f78;font-size:28px;line-height:1;font-weight:400}
.to-faq-item[open]>summary::after{content:"−"}
.to-faq-item[open]>summary{background:#edf6f5}
.to-faq-item>summary:hover{background:#f0f7f7}
.to-faq-item>summary:focus-visible{outline:3px solid #007f78;outline-offset:-4px;border-radius:10px}
.to-faq-item>p{padding:0 24px 22px;margin:18px 0 0;font-size:17px;line-height:1.8;font-weight:400;overflow-wrap:anywhere}
.to-faq-item a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.to-faq-item>summary{padding:17px 48px 17px 18px;font-size:17px}.to-faq-item>summary::after{right:17px;top:17px;font-size:25px}.to-faq-item>p{padding:0 18px 20px;font-size:16px}}

/* Shared contact footer and local WhatsApp / appointment panels. */
.to-shared-contact{background:linear-gradient(115deg,#1769b7,#1c74c9);color:#fff;text-align:center;padding:56px 24px 42px;margin:48px 0 0;isolation:isolate;position:relative;overflow:hidden}
.to-contact-inner{max-width:1150px;margin:auto;position:relative}
.to-contact-health svg{width:58px;height:58px}
.to-shared-contact h2{color:#fff;font-size:clamp(31px,4vw,48px);line-height:1.3;font-weight:300;margin:24px 0 20px;letter-spacing:0}
.to-contact-motto{color:#fff;font-size:18px;font-weight:400;margin:0 0 30px}
.to-contact-options{display:grid;grid-template-columns:.9fr 1.2fr 1.5fr;gap:24px;align-items:center}
.to-contact-options>a,.to-contact-options>p{display:flex;justify-content:center;align-items:center;gap:12px;color:#fff;font-size:16px;line-height:1.5;font-weight:500;text-decoration:none;margin:0;min-width:0}
.to-contact-options svg{flex:0 0 30px;width:30px;height:30px}
.to-contact-options a span{white-space:nowrap}
.to-appointment-open{display:inline-block;margin:30px 0 0;border-radius:32px;background:#fff;color:#126b2c;padding:16px 28px;text-decoration:none;font-size:16px;font-weight:500}
.to-shared-contact a:focus-visible,.to-whatsapp-widget a:focus-visible,.to-whatsapp-widget button:focus-visible{outline:3px solid #ffd675;outline-offset:4px}
.to-whatsapp-widget{position:fixed;left:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:90;font-family:'Segoe UI',Arial,sans-serif}
.to-whatsapp-widget svg{width:29px;height:29px;flex-shrink:0}
.to-whatsapp-toggle{display:flex;align-items:center;gap:8px;border:0;border-radius:30px;padding:12px 18px;background:#128c4a;color:#fff;font-size:17px;font-weight:600;box-shadow:0 3px 12px #12354240;cursor:pointer}
.to-whatsapp-panel{width:min(400px,calc(100vw - 36px));border-radius:28px;background:#f5fffa;box-shadow:0 5px 22px #12354240;overflow:hidden;margin-bottom:12px;color:#123542}
.to-whatsapp-panel[hidden]{display:none!important}
.to-whatsapp-heading{display:flex;justify-content:space-between;align-items:center;background:#128c4a;color:#fff;padding:17px 20px}
.to-whatsapp-heading>span{display:flex;align-items:center;gap:6px;font-weight:650;font-size:20px}
.to-whatsapp-heading button{width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#086c37;color:#fff;font-size:28px;line-height:1;cursor:pointer}
.to-whatsapp-body{padding:20px}
.to-whatsapp-body>p{background:white;border:1px solid #dce8e1;border-radius:25px;box-shadow:0 2px 4px #12354218;padding:15px 20px;font-size:16px;line-height:1.6;margin:0 0 32px;font-weight:400}
.to-whatsapp-launch{display:inline-flex;align-items:center;gap:12px;border-radius:30px;background:#128c4a;color:white!important;padding:10px 17px;text-decoration:none;font-size:16px;font-weight:600}
.to-appointment-dialog{width:min(820px,calc(100% - 32px));max-height:90vh;max-height:90dvh;padding:0;border:0;border-radius:20px;background:#32688d;color:white;overflow-y:auto;box-shadow:0 16px 70px #12354270}
.to-appointment-dialog::backdrop{background:rgba(9,29,40,.65)}
.to-appointment-dialog:not([open]){display:none}
.to-appointment-is-open{overflow:hidden}
.to-appointment-photo{padding:38px 28px;background:linear-gradient(rgba(34,85,122,.5),rgba(34,85,122,.72)),url('../../uploads/migracion/teleoptometria/2018/06/doctor-02.jpg') center/cover no-repeat;text-align:center}
.to-appointment-health svg{height:46px;width:46px;color:#fff}
.to-appointment-photo h2{color:#fff;font-size:clamp(27px,3.5vw,40px);font-weight:300;line-height:1.35;margin:18px auto 28px;max-width:690px}
.to-appointment-close{position:sticky;z-index:2;top:12px;float:right;right:12px;margin:12px 12px -48px 0;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#123542cc;color:#fff;font-size:30px;line-height:1;cursor:pointer}
.to-appointment-close:focus-visible{outline:3px solid #ffd675;outline-offset:3px}
.to-appointment-photo .to-media-form{max-width:720px;background:transparent;border:0;border-radius:0;margin:0 auto;padding:0;text-align:left}
.to-appointment-photo .to-media-form .to-form-fields{grid-template-columns:1fr 1fr;gap:18px}
.to-appointment-photo .to-media-form .to-form-required{color:#fff}
.to-appointment-photo .to-media-form .to-form-privacy .to-form-required{color:#28434e}
.to-appointment-photo .to-form-consent{color:#fff}
@media(max-width:1000px){.to-contact-options{grid-template-columns:1fr;gap:18px}.to-shared-contact{padding-top:40px}}
@media(max-width:600px){.to-shared-contact{padding:34px 18px}.to-contact-options>a,.to-contact-options>p{font-size:15px;gap:9px}.to-contact-options svg{width:24px;height:24px;flex-basis:24px}.to-whatsapp-widget{left:12px;bottom:max(12px,env(safe-area-inset-bottom))}.to-whatsapp-panel{width:min(400px,calc(100vw - 40px))}.to-whatsapp-toggle{font-size:15px;padding:10px 14px}.to-appointment-photo{padding:42px 18px 28px}.to-appointment-photo .to-media-form .to-form-fields{grid-template-columns:1fr;gap:14px}.to-appointment-dialog{width:calc(100% - 20px);max-height:94dvh;border-radius:16px}}

/* MetricSpot follow-up: preserve the palette while improving text contrast. */
:root{--teal:#006e68;--wp--preset--color--teal:#006e68}
.to-whatsapp-toggle,.to-whatsapp-heading,.to-whatsapp-launch{background:#0d7e42}
.wp-block-post-date,.to-article-author{color:#435f59}
.to-article-author{font-size:14px;margin:6px 0 20px}
.to-home-kicker{margin:0 0 14px}
