/*
Theme Name: Dra Marcy Ortodoncia
Theme URI: https://dramarcyortodoncia.com/
Author: Marcy Dental Flow
Description: Sitio público y portal privado para Dra. Marcy Ortodoncia.
Version: 0.8.12
Text Domain: marcy-dental-flow
*/
:root{--ink:#292723;--muted:#746f67;--petrol:#174c52;--petrol-deep:#123d43;--olive:#75663b;--cream:#fff;--paper:#fff;--line:#e9e2d8;--gold:#b29451;--shadow:0 22px 60px rgba(39,35,29,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--petrol);color:#fff;padding:.65rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-inner{width:min(1160px,calc(100% - 36px));margin:auto;min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{width:58px;height:58px;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1.12}.brand-copy strong{font-size:.96rem;letter-spacing:-.02em}.brand-copy small{margin-top:5px;color:var(--muted);font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:27px;color:var(--muted);font-size:.9rem}.main-nav a:hover,.main-nav a:focus-visible{color:var(--petrol)}.login-link,.button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 20px;border:1px solid var(--petrol);border-radius:3px;background:var(--petrol);color:#fff;font-weight:800;cursor:pointer;transition:background .2s ease,transform .2s ease}.login-link:hover,.button:hover,.login-link:focus-visible,.button:focus-visible{background:var(--petrol-deep);transform:translateY(-1px)}.menu-toggle{display:none;border:0;background:transparent;padding:12px}.menu-toggle i{display:block;width:24px;height:1px;margin:5px 0;background:var(--ink)}.hero{padding:clamp(72px,11vw,150px) 20px 120px;background:#fff}.hero-inner{width:min(1160px,100%);margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.hero-copy{max-width:690px}.eyebrow{margin:0 0 15px;color:var(--olive);font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.hero h1,.contact-panel h2,.portal-intro h1,.portal-card h2,.private-heading h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.03}.hero h1{max-width:680px;font-size:clamp(3.1rem,7vw,6.5rem)}.hero-lead{max-width:550px;margin:26px 0 0;color:var(--muted);font-size:1.06rem}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:34px}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--petrol);font-weight:800;border-bottom:1px solid transparent}.text-link:hover,.text-link:focus-visible{border-color:currentColor}.text-link span{font-size:1.15em}.hero-art{min-height:440px;display:grid;place-items:center}.hero-art img{width:min(440px,85%);object-fit:contain}.contact-section{padding:0 20px 90px;background:#fff}.section-inner{width:min(1160px,100%);margin:auto}.contact-panel{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:clamp(38px,6vw,72px);background:var(--petrol-deep);color:#fff}.contact-panel h2{font-size:clamp(2.5rem,5vw,4.7rem)}.contact-panel p:not(.eyebrow){max-width:520px;color:#d9e6e4}.contact-panel .eyebrow{color:#d6bf82}.light-button{border-color:#fff;background:#fff;color:var(--petrol)}.light-button:hover{background:#f4eee2;color:var(--petrol-deep)}.site-footer{padding:42px 20px;background:#fff;border-top:1px solid var(--line)}.footer-inner{width:min(1160px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:50px;height:50px;object-fit:contain}.footer-brand strong,.footer-brand small{display:block}.footer-brand small{margin-top:5px;color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.footer-links{display:flex;gap:20px;color:var(--muted);font-size:.85rem}.footer-copy{color:var(--muted);font-size:.78rem}.portal-wrap{min-height:calc(100vh - 84px);padding:clamp(55px,9vw,120px) 20px;background:#fff}.portal-layout{width:min(980px,100%);margin:auto;display:grid;grid-template-columns:1fr .88fr;gap:80px;align-items:center}.portal-intro{max-width:450px}.portal-icon{width:150px;height:150px;object-fit:contain;margin-bottom:22px}.portal-intro h1{font-size:clamp(3rem,6vw,5.2rem)}.portal-intro>p:not(.eyebrow){margin:24px 0;color:var(--muted)}.portal-card{padding:clamp(28px,5vw,52px);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.portal-card h2{font-size:clamp(2rem,4vw,3.1rem)}#loginform{margin-top:30px}.login-username,.login-password{margin:0 0 20px}.login-username label,.login-password label{display:block;margin-bottom:8px;font-size:.84rem;font-weight:800}.login-username input,.login-password input{width:100%;min-height:50px;border:1px solid #cfc6b9;border-radius:2px;padding:0 13px;color:var(--ink);font:inherit}.login-username input:focus,.login-password input:focus{outline:2px solid rgba(23,76,82,.3);outline-offset:2px;border-color:var(--petrol)}.login-remember{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem}.login-submit{margin:24px 0 0}.login-submit .button{width:100%;border-radius:2px}.portal-help{margin:22px 0 0;font-size:.85rem}.portal-help a{color:var(--petrol);text-decoration:underline}.private-page{min-height:calc(100vh - 84px);padding:80px 20px}.private-shell{width:min(1080px,100%);margin:auto}.private-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.private-heading h1{font-size:clamp(2.7rem,6vw,5rem)}.private-heading p:not(.eyebrow){color:var(--muted)}.private-notice{padding:25px 28px;border-left:3px solid var(--gold);background:#f7f2e8}.private-notice p{margin:8px 0 0;color:var(--muted)}.private-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:55px;background:var(--line);border:1px solid var(--line)}.private-modules article{min-height:210px;padding:27px;background:#fff}.private-modules h2{margin:25px 0 5px;font-family:Georgia,"Times New Roman",serif;font-size:1.9rem;font-weight:400}.private-modules p{margin:0;color:var(--muted)}.entry-content{width:min(900px,calc(100% - 40px));margin:60px auto}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.main-nav{gap:14px}.hero-inner{grid-template-columns:1fr;gap:30px}.hero-art{min-height:300px}.hero-art img{width:min(330px,70%)}.contact-panel{align-items:flex-start;flex-direction:column}.footer-inner{flex-wrap:wrap}.portal-layout{grid-template-columns:1fr;gap:45px}}
@media(max-width:640px){.header-inner{min-height:74px;width:min(100% - 28px,1160px)}.brand-icon{width:48px;height:48px}.brand-copy strong{font-size:.84rem}.brand-copy small{font-size:.56rem}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:14px;right:14px;top:74px;padding:18px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.main-nav.is-open{display:flex}.main-nav a{padding:13px 5px;border-bottom:1px solid var(--line)}.main-nav .login-link{margin-top:12px;text-align:center;border-bottom:0}.hero{padding:65px 18px 75px}.hero h1{font-size:clamp(2.8rem,14vw,4.5rem)}.hero-art{min-height:245px}.hero-art img{width:72%}.contact-section{padding:0 18px 65px}.contact-panel{padding:32px 24px}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{flex-direction:column;gap:9px}.private-heading{align-items:flex-start;flex-direction:column}.private-modules{grid-template-columns:1fr;margin-top:35px}.portal-card{padding:27px 22px}}
