/*
Theme Name: Dr. Gomezese Medical
Theme URI: https://drgomezese.com/
Author: Graficon / OpenAI
Description: Tema médico ligero y editable para anestesiología, medicina del dolor, cuidados paliativos y psicología. Compatible con Gutenberg y Elementor.
Version: 1.4.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: drgomezese-medical
*/


:root{
  --dgm-blue:#123B5D;
  --dgm-green:#2E8B78;
  --dgm-light-blue:#DDEFF7;
  --dgm-light-green:#E4F3ED;
  --dgm-petrol:var(--dgm-blue);
  --dgm-sage:var(--dgm-green);
  --dgm-soft:var(--dgm-light-blue);
  --dgm-ivory:#F5F9FC;
  --dgm-gold:var(--dgm-green);
  --dgm-white:#FFFFFF;
  --dgm-ink:#172C38;
  --dgm-muted:#5F717C;
  --dgm-radius:22px;
  --dgm-shadow:0 18px 48px rgba(18,59,93,.11);
  --dgm-font-display:"Barlow Condensed",Arial Narrow,sans-serif;
  --dgm-font-body:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--dgm-ink);background:#fff;font-family:var(--dgm-font-body);line-height:1.55;font-size:18px}
body,button,input,textarea,select,optgroup,table,.elementor-widget,.elementor-widget-container,.elementor-button,.elementor-heading-title,.elementor-kit-1,.elementor-kit-2{font-family:var(--dgm-font-body)!important}
:root{--e-global-typography-primary-font-family:"Barlow Condensed";--e-global-typography-secondary-font-family:"Barlow Condensed";--e-global-typography-text-font-family:"Barlow Condensed";--e-global-typography-accent-font-family:"Barlow Condensed"}
h1,h2,h3,h4,h5,h6{font-family:var(--dgm-font-display);font-weight:700}
a{color:var(--dgm-petrol);text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--dgm-sage)}
img{max-width:100%;height:auto}
.dgm-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.dgm-site-main{min-height:55vh;background:var(--dgm-page-bg,#fff)}
.dgm-content{padding:64px 0}
.dgm-content.narrow{width:min(820px,calc(100% - 40px));margin-inline:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;background:#fff;color:#000;padding:10px;z-index:99999}

/* Header */
.dgm-topbar{background:var(--dgm-blue);color:#fff;font-size:.86rem}
.dgm-topbar-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.dgm-topbar-message{font-family:var(--dgm-font-display);font-weight:600;letter-spacing:.05em;text-transform:uppercase}
.dgm-topbar-right{display:flex;align-items:center;gap:16px;margin-left:auto}
.dgm-topbar a{color:#fff;text-decoration:none}
.dgm-topbar-email{font-weight:600;opacity:.94}
.dgm-socials{display:flex;align-items:center;gap:7px}
.dgm-socials a{width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;transition:transform .18s ease,background .18s ease}
.dgm-socials a:hover{background:var(--dgm-green);transform:translateY(-1px)}
.dgm-socials svg{width:15px;height:15px;fill:currentColor;stroke:currentColor;stroke-width:1.8}
.dgm-socials svg path{stroke:none}
.dgm-socials svg rect,.dgm-socials svg circle{fill:none}
.dgm-socials .dgm-social-dot{fill:currentColor;stroke:none}
.dgm-socials .dgm-social-play{fill:var(--dgm-blue);stroke:none}
.dgm-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(18,59,70,.08)}
.admin-bar .dgm-header{top:32px}
.dgm-header-inner{display:flex;align-items:center;gap:30px;min-height:82px}
.dgm-brand{display:flex;align-items:center;gap:14px;min-width:220px;text-decoration:none}
.dgm-brand .custom-logo{max-height:58px;width:auto}
.dgm-brand-title{font-family:var(--dgm-font-display);font-weight:800;line-height:1.05;color:var(--dgm-petrol);font-size:1.08rem}
.dgm-brand-subtitle{font-family:var(--dgm-font-display);font-size:.72rem;letter-spacing:.04em;color:var(--dgm-muted);text-transform:uppercase;display:block;margin-top:5px}
.dgm-nav{margin-left:auto}
.dgm-nav ul{display:flex;align-items:center;gap:22px;list-style:none;padding:0;margin:0}
.dgm-nav a{font-family:var(--dgm-font-display);display:block;color:var(--dgm-ink);text-decoration:none;font-weight:700;font-size:1.02rem;letter-spacing:.025em;padding:28px 0}
.dgm-nav a:hover,.dgm-nav .current-menu-item>a{color:var(--dgm-sage)}
.dgm-header-cta{font-family:var(--dgm-font-display);letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;background:var(--dgm-petrol);color:#fff!important;border-radius:999px;padding:11px 18px;text-decoration:none;font-weight:750;white-space:nowrap}
.dgm-menu-toggle{display:none;margin-left:auto;border:1px solid rgba(18,59,70,.15);background:#fff;border-radius:12px;padding:10px 13px;font-size:1.2rem}

/* Footer — intentionally has no phone output */
.dgm-footer{background:var(--dgm-petrol);color:#dce7e9;margin-top:70px}
.dgm-footer a{color:#fff}
.dgm-footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:44px;padding:58px 0 38px}
.dgm-footer h2,.dgm-footer h3{font-family:var(--dgm-font-display);color:#fff;margin-top:0}
.dgm-footer-brand{font-family:var(--dgm-font-display);font-size:1.5rem;font-weight:850;line-height:1.2}
.dgm-footer-meta{display:grid;gap:8px}
.dgm-footer-links{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.dgm-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;font-size:.88rem;color:#b8c9cd;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}

/* Gutenberg starter page classes */
.dgm-hero{padding:88px 0;background:radial-gradient(circle at 90% 10%,rgba(46,139,120,.18),transparent 38%),linear-gradient(135deg,#f8fbfd,var(--dgm-light-blue))}
.dgm-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:56px}
.dgm-eyebrow{font-family:var(--dgm-font-display);display:inline-flex;background:var(--dgm-soft);color:var(--dgm-petrol);border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.dgm-hero h1{font-family:var(--dgm-font-display);font-size:clamp(2.55rem,5.3vw,5rem);line-height:.98;letter-spacing:-.055em;margin:20px 0 24px;color:var(--dgm-petrol)}
.dgm-lead{font-size:1.18rem;color:#53666d;max-width:690px}
.dgm-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.dgm-btn,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px!important;padding:13px 22px!important;background:var(--dgm-petrol)!important;color:#fff!important;text-decoration:none!important;font-weight:800!important;border:0}
.dgm-btn.secondary,.is-style-outline>.wp-block-button__link{background:transparent!important;color:var(--dgm-petrol)!important;border:1px solid rgba(18,59,70,.28)!important}
.dgm-hero-card{min-height:430px;border-radius:32px;background:linear-gradient(145deg,var(--dgm-soft),#fff);box-shadow:var(--dgm-shadow);padding:32px;display:flex;align-items:flex-end;position:relative;overflow:hidden}
.dgm-hero-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(46,139,120,.16);right:-50px;top:-40px}
.dgm-hero-card strong{font-size:1.8rem;color:var(--dgm-petrol);max-width:330px;position:relative}
.dgm-hero-media{position:relative;min-height:500px;border-radius:34px;overflow:hidden;background:linear-gradient(145deg,var(--dgm-light-blue),#fff);box-shadow:var(--dgm-shadow);border:1px solid rgba(18,59,93,.08)}
.dgm-hero-image{display:block;width:100%;height:100%;min-height:500px;position:absolute;inset:0;object-fit:cover;object-position:var(--dgm-hero-position,center center)}
.dgm-hero-media:after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(to top,rgba(18,59,93,.34),transparent);pointer-events:none}
.dgm-hero-media-badge{position:absolute;z-index:2;left:22px;bottom:22px;background:rgba(255,255,255,.94);color:var(--dgm-blue);border-radius:999px;padding:9px 15px;font-family:var(--dgm-font-display);font-weight:700;letter-spacing:.03em;box-shadow:0 8px 20px rgba(18,59,93,.12)}
.dgm-hero-media-empty{display:grid;place-items:center;text-align:center;padding:40px;color:var(--dgm-blue);border:2px dashed rgba(18,59,93,.18)}
.dgm-hero-media-empty:after{display:none}
.dgm-hero-media-empty strong{display:block;font-family:var(--dgm-font-display);font-size:1.8rem;line-height:1.05}
.dgm-hero-media-empty span{display:block;margin-top:10px;color:var(--dgm-muted)}
.dgm-section{padding:78px 0}
.dgm-section.soft{background:#f6faf9}
.dgm-section.ivory{background:var(--dgm-ivory)}
.dgm-section-title{font-family:var(--dgm-font-display);font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.035em;line-height:1.05;color:var(--dgm-petrol);margin:0 0 18px}
.dgm-section-intro{font-size:1.08rem;color:var(--dgm-muted);max-width:760px}
.dgm-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.dgm-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:34px}
.dgm-card{padding:26px;border:1px solid rgba(18,59,70,.08);background:#fff;border-radius:var(--dgm-radius);box-shadow:0 10px 30px rgba(18,59,70,.05)}
.dgm-card h3{font-family:var(--dgm-font-display);font-size:1.38rem;margin:6px 0 10px;color:var(--dgm-petrol);}
.dgm-card p{margin-bottom:0;color:#5b6e74}
.dgm-icon{width:44px;height:44px;border-radius:13px;background:var(--dgm-soft);display:grid;place-items:center;color:var(--dgm-petrol);font-weight:900}
.dgm-split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.dgm-photo-placeholder{min-height:430px;border-radius:28px;background:linear-gradient(140deg,var(--dgm-soft),#e9efed);display:grid;place-items:center;text-align:center;color:var(--dgm-petrol);padding:30px;border:1px dashed rgba(18,59,70,.25)}
.dgm-note{border-left:4px solid var(--dgm-gold);padding:18px 22px;background:#fff;border-radius:0 16px 16px 0;box-shadow:0 8px 24px rgba(18,59,70,.05)}
.dgm-contact-strip{background:var(--dgm-petrol);color:#fff;border-radius:30px;padding:42px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.dgm-contact-strip h2{font-family:var(--dgm-font-display);color:#fff;margin:0 0 10px;font-size:2rem}
.dgm-contact-strip p{margin:0;color:#d4e0e2}
.dgm-contact-strip .dgm-btn{background:#fff!important;color:var(--dgm-petrol)!important}

/* Blog */
.dgm-page-head{padding:62px 0 46px;background:var(--dgm-page-head-bg,var(--dgm-ivory))}
.dgm-page-head h1{font-family:var(--dgm-font-display);font-size:clamp(2.3rem,5vw,4.2rem);letter-spacing:-.045em;line-height:1;margin:0;color:var(--dgm-petrol)}
.dgm-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dgm-post-card{border:1px solid rgba(18,59,70,.08);border-radius:20px;overflow:hidden;background:#fff}
.dgm-post-card .post-thumbnail img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.dgm-post-card-body{padding:22px}
.dgm-post-card h2{font-family:var(--dgm-font-display);font-size:1.3rem;line-height:1.2;margin:8px 0 12px}
.dgm-post-card h2 a{text-decoration:none}
.dgm-meta{font-size:.82rem;color:#718087}
.dgm-pagination{margin-top:40px}
.entry-content>*{max-width:820px;margin-left:auto;margin-right:auto}
.elementor-page .entry-content>.elementor,.elementor-page .entry-content>.elementor-location-single,.elementor-page .entry-content>.elementor-location-archive{max-width:none!important;width:100%;margin:0!important}
.elementor-page .entry-content{max-width:none!important;width:100%;margin:0;padding:0}
.entry-content>.alignwide{max-width:1180px}
.entry-content>.alignfull{max-width:none}
.entry-content h2,.entry-content h3{color:var(--dgm-petrol)}

/* Contact form shortcode */
.dgm-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:28px;background:#fff;border:1px solid rgba(18,59,70,.08);border-radius:24px;box-shadow:var(--dgm-shadow)}
.dgm-field{display:grid;gap:7px}
.dgm-field.full{grid-column:1/-1}
.dgm-field label{font-weight:750;color:var(--dgm-petrol)}
.dgm-field input,.dgm-field textarea,.dgm-field select{width:100%;border:1px solid #ccd8da;border-radius:12px;padding:12px 14px;font:inherit;background:#fff}
.dgm-field textarea{min-height:130px;resize:vertical}
.dgm-form button{justify-self:start;border:0;cursor:pointer}
.dgm-form-message{grid-column:1/-1;padding:12px 14px;border-radius:12px;background:var(--dgm-soft)}

/* WhatsApp */
.dgm-whatsapp{position:fixed;right:22px;bottom:22px;z-index:120;display:inline-flex;gap:9px;align-items:center;background:var(--dgm-green);color:#fff!important;text-decoration:none;font-weight:850;border-radius:999px;padding:13px 18px;box-shadow:0 15px 34px rgba(0,0,0,.18)}
.dgm-whatsapp .bubble{font-size:1.2rem}

@media(max-width:1120px){
 .dgm-menu-toggle{display:block}.dgm-header-cta{display:none}.dgm-nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;border-top:1px solid #edf1f2;padding:10px 20px 20px;box-shadow:0 16px 30px rgba(18,59,70,.08)}.dgm-nav.open{display:block}.dgm-nav ul{display:grid;gap:0}.dgm-nav a{padding:12px 0}.dgm-topbar-message{display:none}.dgm-topbar-inner{justify-content:center}.dgm-topbar-right{margin-left:0}.dgm-hero-grid,.dgm-split{grid-template-columns:1fr}.dgm-grid-3,.dgm-post-grid{grid-template-columns:repeat(2,1fr)}.dgm-footer-grid{grid-template-columns:1fr 1fr}.dgm-contact-strip{grid-template-columns:1fr}.admin-bar .dgm-header{top:46px}
}
@media(max-width:640px){
 .dgm-container{width:min(100% - 28px,1180px)}.dgm-header-inner{min-height:72px}.dgm-nav{top:72px}.dgm-brand-title{font-size:.96rem}.dgm-brand-subtitle{display:none}.dgm-hero{padding:62px 0}.dgm-hero h1{font-family:var(--dgm-font-display);font-size:2.75rem}.dgm-section{padding:58px 0}.dgm-grid-3,.dgm-grid-2,.dgm-post-grid,.dgm-footer-grid{grid-template-columns:1fr}.dgm-form{grid-template-columns:1fr}.dgm-field{grid-column:1/-1}.dgm-whatsapp{right:14px;bottom:14px;padding:12px 14px}.dgm-whatsapp .label{display:none}.dgm-contact-strip{padding:30px}.dgm-photo-placeholder{min-height:300px}.dgm-hero-media,.dgm-hero-image{min-height:410px}.dgm-topbar-email{display:none}.dgm-topbar-inner{min-height:38px}
}

/* ==========================================================
   Elementor native layout — v1.3
   These classes style the starter design while keeping every
   image/text/button/container individually editable in Elementor.
   ========================================================== */
.elementor-page .dgm-site-main{overflow:hidden}
.elementor-page .dgm-site-main article{margin:0;padding:0}
.elementor-page .elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-page .elementor-heading-title{font-family:var(--dgm-font-display)!important}

.dgm-el-section.e-con{width:100%;max-width:none!important;--padding-top:78px;--padding-bottom:78px;--padding-left:20px;--padding-right:20px}
.dgm-el-inner.e-con{width:min(1180px,100%);max-width:1180px!important;margin-inline:auto;--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0}
.dgm-el-row.e-con{--display:flex;--flex-direction:row;--align-items:center;--gap:54px 54px;display:flex!important;flex-direction:row!important;align-items:center;gap:54px}
.dgm-el-col.e-con{flex:1 1 0;min-width:0;--width:50%}
.dgm-el-copy.e-con{--display:flex;--flex-direction:column;display:flex!important;flex-direction:column!important;align-items:flex-start}

.dgm-el-hero.e-con{background:radial-gradient(circle at 90% 10%,rgba(46,139,120,.18),transparent 38%),linear-gradient(135deg,#f8fbfd,var(--dgm-light-blue));--padding-top:88px;--padding-bottom:88px}
.dgm-el-hero-row.e-con{align-items:center}
.dgm-el-eyebrow .elementor-heading-title{display:inline-block;background:var(--dgm-light-blue);color:var(--dgm-blue);border-radius:999px;padding:7px 13px;font-size:15px!important;font-weight:800!important;letter-spacing:.055em;text-transform:uppercase;line-height:1.15}
.dgm-el-hero-title .elementor-heading-title{font-size:clamp(48px,5.2vw,82px)!important;line-height:.96!important;letter-spacing:-.045em;color:var(--dgm-blue);margin:18px 0 0}
.dgm-el-lead{font-size:22px;color:var(--dgm-muted);line-height:1.45;max-width:690px;margin-top:20px}
.dgm-el-buttons.e-con{--display:flex;--flex-direction:row;--gap:12px 12px;display:flex!important;flex-direction:row!important;gap:12px;margin-top:26px;flex-wrap:wrap}
.dgm-el-btn.elementor-widget-button{width:auto!important;max-width:max-content}
.dgm-el-btn .elementor-button{font-family:var(--dgm-font-body)!important;font-size:18px;font-weight:700;border-radius:999px;padding:13px 23px;text-decoration:none;line-height:1.1}
.dgm-el-btn-primary .elementor-button{background:var(--dgm-blue);color:#fff}
.dgm-el-btn-primary .elementor-button:hover{background:var(--dgm-green)}
.dgm-el-btn-outline .elementor-button{background:transparent;color:var(--dgm-blue);border:1px solid rgba(18,59,93,.28)}
.dgm-el-btn-outline .elementor-button:hover{background:var(--dgm-light-blue);border-color:var(--dgm-blue)}
.dgm-el-btn-light .elementor-button{background:#fff;color:var(--dgm-blue)}
.dgm-el-media.e-con,.dgm-el-media-small.e-con{border-radius:34px;overflow:hidden;box-shadow:var(--dgm-shadow);background:var(--dgm-light-blue)}
.dgm-el-hero-image img{width:100%;height:510px!important;object-fit:cover;display:block}
.dgm-el-about-image img,.dgm-el-standard-image img{width:100%;height:440px!important;object-fit:cover;display:block}

:where(.dgm-el-about.e-con,.dgm-el-standard.e-con){background:transparent}
.dgm-el-section-title .elementor-heading-title{font-size:clamp(38px,4vw,54px)!important;line-height:1.02!important;letter-spacing:-.025em;color:var(--dgm-blue);margin-top:14px}
.dgm-el-section-text{font-size:20px;line-height:1.55;color:var(--dgm-muted);max-width:780px}
.dgm-el-note{border-left:4px solid var(--dgm-green);padding:16px 20px;background:#f7fbfd;border-radius:0 16px 16px 0;margin:18px 0 6px;font-size:18px;color:var(--dgm-muted)}

:where(.dgm-el-services.e-con){background:var(--dgm-section-soft-bg,#f5faff)}
.dgm-el-services-grid.e-con{--display:flex;--flex-direction:row;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px;width:100%}
.dgm-el-card.e-con{background:#fff;border:1px solid rgba(18,59,93,.09);border-radius:22px;padding:27px;box-shadow:0 10px 30px rgba(18,59,93,.05);display:flex!important;flex-direction:column!important;align-items:flex-start;min-height:220px}
.dgm-el-card-number .elementor-heading-title{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--dgm-light-blue);color:var(--dgm-blue);font-size:17px!important;font-weight:800}
.dgm-el-card-title .elementor-heading-title{font-size:27px!important;line-height:1.05!important;color:var(--dgm-blue);margin-top:14px}
.dgm-el-card-text{font-size:18px;color:var(--dgm-muted);line-height:1.5}

:where(.dgm-el-palliative.e-con){background:var(--dgm-section-soft-bg,linear-gradient(135deg,#f7fbfd,var(--dgm-light-blue)))}
.dgm-el-feature-card.e-con{background:#fff;border:1px solid rgba(18,59,93,.08);border-radius:24px;padding:38px;box-shadow:var(--dgm-shadow)}
.dgm-el-feature-card .dgm-el-card-title .elementor-heading-title{font-size:34px!important}
:where(.dgm-el-education.e-con){background:transparent;text-align:center}
.dgm-el-centered.e-con{align-items:center;text-align:center;display:flex!important;flex-direction:column!important}
.dgm-el-centered .dgm-el-section-text{max-width:720px}
.dgm-el-centered .dgm-el-btn{margin-top:14px}

:where(.dgm-el-cta.e-con){--padding-top:28px;--padding-bottom:28px;background:transparent}
.dgm-el-cta-box.e-con{background:var(--dgm-blue);border-radius:30px;padding:40px 44px;color:#fff;justify-content:space-between}
.dgm-el-cta-title .elementor-heading-title{color:#fff;font-size:40px!important;line-height:1;margin:0}
.dgm-el-cta-text{font-size:20px;color:#dcecf5;margin-top:8px}

:where(.dgm-el-page-head.e-con){background:var(--dgm-page-head-bg,linear-gradient(135deg,#f7fbfd,var(--dgm-light-blue)));--padding-top:60px;--padding-bottom:50px}
.dgm-el-page-title .elementor-heading-title{font-size:clamp(52px,6vw,76px)!important;line-height:.98!important;letter-spacing:-.035em;color:var(--dgm-blue);margin-top:14px}
:where(.dgm-el-contact-form.e-con){background:var(--dgm-section-soft-bg,#f5faff)}

@media(max-width:960px){
 .dgm-el-row.e-con{flex-direction:column!important;gap:34px}
 .dgm-el-col.e-con{width:100%!important;flex:1 1 100%}
 .dgm-el-services-grid.e-con{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dgm-el-hero-image img{height:470px!important}
 .dgm-el-about-image img,.dgm-el-standard-image img{height:390px!important}
 .dgm-el-cta-box.e-con{align-items:flex-start!important}
}
@media(max-width:640px){
 body{font-size:17px}
 .dgm-el-section.e-con{--padding-top:58px;--padding-bottom:58px;--padding-left:14px;--padding-right:14px}
 .dgm-el-hero-title .elementor-heading-title{font-size:48px!important}
 .dgm-el-lead{font-size:20px}
 .dgm-el-services-grid.e-con{grid-template-columns:1fr}
 .dgm-el-hero-image img{height:400px!important}
 .dgm-el-about-image img,.dgm-el-standard-image img{height:330px!important}
 .dgm-el-cta-box.e-con{padding:30px 25px}
 .dgm-el-buttons.e-con{flex-direction:column!important;align-items:stretch!important;width:100%}
 .dgm-el-btn.elementor-widget-button{max-width:none;width:100%!important}
 .dgm-el-btn .elementor-button{width:100%}
}


/* =========================================================
   v1.3 — Tipografía global + navegación limpia
   ========================================================= */
/* Una única familia tipográfica visible en todo el tema y en el contenido de Elementor.
   Los selectores se limitan a elementos de texto para no interferir con fuentes de iconos. */
html body,
html body p,
html body a,
html body li,
html body label,
html body button,
html body input,
html body textarea,
html body select,
html body option,
html body table,
html body th,
html body td,
html body blockquote,
html body figcaption,
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body .wp-block-button__link,
html body .elementor-heading-title,
html body .elementor-widget-text-editor,
html body .elementor-widget-text-editor p,
html body .elementor-widget-text-editor a,
html body .elementor-widget-text-editor li,
html body .elementor-button,
html body .elementor-button-text,
html body .elementor-icon-list-text,
html body .elementor-tab-title,
html body .elementor-tab-content,
html body .elementor-accordion-title,
html body .elementor-toggle-title,
html body .elementor-testimonial-content,
html body .elementor-testimonial-name,
html body .elementor-image-box-title,
html body .elementor-image-box-description,
html body .elementor-icon-box-title,
html body .elementor-icon-box-description,
html body .elementor-post__title,
html body .elementor-post__title a,
html body .elementor-post__excerpt,
html body .elementor-nav-menu a,
html body .elementor-search-form__input,
html body .elementor-field,
html body .elementor-field-label,
html body .elementor-widget-theme-post-content p,
html body .elementor-widget-theme-post-content li,
html body .elementor-widget-theme-post-content a,
html body .elementor-widget-theme-post-content h1,
html body .elementor-widget-theme-post-content h2,
html body .elementor-widget-theme-post-content h3,
html body .elementor-widget-theme-post-content h4,
html body .elementor-widget-theme-post-content h5,
html body .elementor-widget-theme-post-content h6{
  font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif!important;
}

/* Elementor 4/Atomic y widgets de terceros: heredan la misma fuente,
   sin tocar elementos que funcionan como iconos. */
html body .elementor *:not(i):not(svg):not(path):not([class^="eicon"]):not([class*=" eicon"]):not([class^="fa"]):not([class*=" fa"]):not([class^="dashicons"]):not([class*=" dashicons"]){
  font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif!important;
}

/* Sobrescribe las variables de tipografía global de Elementor. */
body.dgm-elementor-ready{
  --e-global-typography-primary-font-family:"Barlow Condensed";
  --e-global-typography-secondary-font-family:"Barlow Condensed";
  --e-global-typography-text-font-family:"Barlow Condensed";
  --e-global-typography-accent-font-family:"Barlow Condensed";
}

/* Header sin CTA: más aire para el menú y sin saltos de línea. */
.dgm-header .dgm-container,.dgm-topbar .dgm-container{width:min(100% - 40px,1320px)}
.dgm-header-inner{gap:22px}
.dgm-brand{min-width:190px;flex:0 1 auto}
.dgm-nav{margin-left:auto;min-width:0}
.dgm-nav ul{gap:18px;flex-wrap:nowrap}
.dgm-nav li{flex:0 0 auto}
.dgm-nav a{white-space:nowrap;font-size:.98rem}
.dgm-header-cta{display:none!important}

/* CTA de cita trasladado al footer. */
.dgm-footer-grid{grid-template-columns:1.05fr 1.15fr .85fr 1fr;gap:34px}
.dgm-footer-cta p{margin:0 0 16px;color:#dce7e9;line-height:1.45}
.dgm-footer-cta-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--dgm-green);color:#fff!important;text-decoration:none;border-radius:999px;padding:12px 20px;font-weight:700;font-size:1.02rem;white-space:nowrap;transition:transform .18s ease,filter .18s ease}
.dgm-footer-cta-btn:hover{transform:translateY(-1px);filter:brightness(1.06)}

@media (max-width:1100px){
  .dgm-header-inner{gap:16px}
  .dgm-brand{min-width:170px}
  .dgm-nav ul{gap:13px}
  .dgm-nav a{font-size:.92rem}
}
@media (max-width:960px){
  .dgm-footer-grid{grid-template-columns:1fr 1fr}
  .dgm-nav a{white-space:normal;font-size:1.02rem}
}
@media (max-width:620px){
  .dgm-footer-grid{grid-template-columns:1fr}
  .dgm-footer-cta-btn{width:100%}
}


/* =========================================================
   v1.4 — Fondos administrables y compatibles con Elementor
   ========================================================= */
/* El fondo general de una página se elige desde el editor de WordPress.
   Psicología y Educación para Pacientes usan verde claro por defecto. */
body.dgm-page-background--white{
  --dgm-page-bg:#fff;
  --dgm-page-head-bg:var(--dgm-ivory);
  --dgm-section-soft-bg:#f5faff;
}
body.dgm-page-background--light-blue{
  --dgm-page-bg:var(--dgm-light-blue);
  --dgm-page-head-bg:var(--dgm-light-blue);
  --dgm-section-soft-bg:var(--dgm-light-blue);
}
body.dgm-page-background--light-green{
  --dgm-page-bg:var(--dgm-light-green);
  --dgm-page-head-bg:var(--dgm-light-green);
  --dgm-section-soft-bg:var(--dgm-light-green);
}
body.dgm-page-background--custom{
  --dgm-page-bg:var(--dgm-custom-page-bg,#fff);
  --dgm-page-head-bg:var(--dgm-custom-page-bg,#fff);
  --dgm-section-soft-bg:var(--dgm-custom-page-bg,#fff);
}

/* Clases opcionales para cualquier contenedor/sección de Elementor.
   Se usan con :where() para que un color seleccionado directamente en Elementor
   tenga prioridad y nunca quede bloqueado por la plantilla. */
:where(.dgm-bg-light-blue){background:var(--dgm-light-blue)}
:where(.dgm-bg-light-green){background:var(--dgm-light-green)}
:where(.dgm-bg-white){background:#fff}
:where(.dgm-bg-transparent){background:transparent}

/* Si el usuario define el fondo de un contenedor desde Elementor > Estilo > Fondo,
   el CSS específico de Elementor tiene más prioridad que estas reglas del tema. */

/* Evita una franja blanca antes del footer cuando la página usa un fondo de color. */
body.dgm-page-background--light-blue .dgm-footer,
body.dgm-page-background--light-green .dgm-footer,
body.dgm-page-background--custom .dgm-footer{margin-top:0}
