body.cm-modern-home:has(.cm-general-medicine-page) { background:#fff; color:#315d94; font-family:"Inter","Segoe UI",sans-serif; }
.cm-general-medicine-page { overflow:hidden; }
.cm-general-medicine-page h1,.cm-general-medicine-page h2,.cm-general-medicine-page h3 { color:#123a74; letter-spacing:-.048em; }
.cm-gm-hero { padding:174px 0 104px; background:radial-gradient(circle at 85% 18%,rgba(61,150,218,.26),transparent 25%),linear-gradient(125deg,#f1f8ff 0%,#fff 57%,#e7f3fc); }
.cm-gm-hero-grid { display:grid; grid-template-columns:.98fr 1.02fr; align-items:center; gap:76px; }
.cm-gm-hero-copy { max-width:605px; }
.cm-gm-hero h1 { max-width:605px; margin:0 0 23px; font-size:clamp(3.1rem,5.4vw,5.2rem); line-height:.98; }
.cm-gm-hero h1 em,.cm-gm-intro h2 em { color:#0668ad; font-style:normal; }
.cm-gm-hero-copy>p:not(.cm-eyebrow) { max-width:545px; margin:0 0 32px; font-size:1.08rem; line-height:1.74; }
.cm-gm-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; }
.cm-gm-text-link { display:inline-flex; align-items:center; gap:7px; color:#0863a6; font-size:.84rem; font-weight:750; text-decoration:none; }
.cm-gm-text-link .cm-icon { width:17px; height:17px; transition:transform .2s ease; }
.cm-gm-text-link:hover .cm-icon { transform:translateX(4px); }
.cm-gm-hero-photo { position:relative; min-height:462px; }
.cm-gm-hero-photo:before { position:absolute; inset:25px -18px -17px 24px; border-radius:31px; background:#e97726; content:""; }
.cm-gm-hero-photo img { position:relative; display:block; width:100%; min-height:462px; border-radius:31px; object-fit:cover; object-position:right center; box-shadow:0 28px 65px rgba(7,33,71,.18); }
.cm-gm-photo-card { position:absolute; z-index:1; bottom:24px; left:-20px; display:grid; gap:3px; max-width:214px; padding:17px 20px; border:1px solid rgba(255,255,255,.4); border-radius:14px; background:#e97726; color:#fff; box-shadow:0 16px 34px rgba(160,67,13,.27); font-size:.75rem; line-height:1.48; }
.cm-gm-photo-card strong { color:#fff; font-size:.89rem; }
.cm-gm-assurances { position:relative; z-index:2; margin-top:-2px; padding:0 0 106px; background:linear-gradient(#f8fbff,#fff 47%); }
.cm-gm-assurances-grid { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:1px solid #d8e9f5; border-radius:19px; background:#fff; box-shadow:0 14px 38px rgba(18,58,116,.07); }
.cm-gm-assurances-grid>div { display:flex; align-items:center; gap:16px; padding:29px 31px; }
.cm-gm-assurances-grid>div+div { border-left:1px solid #dceaf4; }
.cm-gm-assurance-icon,.cm-gm-reason-icon { display:grid; flex:0 0 auto; place-items:center; width:46px; height:46px; border-radius:13px; background:#eaf5fc; color:#0868ad; }
.cm-gm-assurance-icon .cm-icon,.cm-gm-reason-icon .cm-icon { width:24px; height:24px; }
.cm-gm-assurances strong { display:block; margin-bottom:4px; color:#123a74; font-size:.91rem; line-height:1.25; }
.cm-gm-assurances small { display:block; color:#5879a0; font-size:.75rem; line-height:1.48; }
.cm-gm-intro { padding:23px 0 118px; }
.cm-gm-intro-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:102px; align-items:start; }
.cm-gm-intro h2,.cm-gm-section-heading h2,.cm-gm-family h2,.cm-gm-process h2,.cm-gm-cta h2 { margin:0; font-size:clamp(2.25rem,3.75vw,3.7rem); line-height:1.06; }
.cm-gm-intro-copy { max-width:615px; padding-top:24px; }
.cm-gm-intro-copy p { margin:0 0 16px; font-size:.97rem; line-height:1.78; }
.cm-gm-intro-copy .cm-gm-text-link { margin-top:7px; }
.cm-gm-reasons { padding:111px 0 119px; background:#eff7fc; }
.cm-gm-section-heading { display:flex; align-items:end; justify-content:space-between; gap:54px; margin-bottom:41px; }
.cm-gm-section-heading>p { max-width:365px; margin:0 0 4px; font-size:.91rem; line-height:1.72; }
.cm-gm-reasons-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.cm-gm-reasons-grid article { position:relative; min-height:282px; padding:29px 27px 27px; border:1px solid #d9eaf5; border-radius:20px; background:#fff; transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.cm-gm-reasons-grid article:hover { border-color:#c1ddf0; box-shadow:0 17px 34px rgba(18,58,116,.1); transform:translateY(-5px); }
.cm-gm-reasons-grid article>span { position:absolute; top:23px; right:23px; color:#bdd8e9; font-size:.74rem; font-weight:800; letter-spacing:.06em; }
.cm-gm-reason-icon { margin-bottom:31px; }
.cm-gm-reasons-grid h3 { margin:0 0 10px; font-size:1.07rem; line-height:1.17; }
.cm-gm-reasons-grid p { margin:0; color:#5879a0; font-size:.81rem; line-height:1.68; }
.cm-gm-family { padding:117px 0; }
.cm-gm-family-grid { display:grid; grid-template-columns:.94fr 1.06fr; gap:103px; align-items:center; }
.cm-gm-family-photo { position:relative; min-height:448px; }
.cm-gm-family-photo:after { position:absolute; right:-17px; bottom:-17px; width:119px; height:119px; border-radius:22px; background:#e97726; content:""; }
.cm-gm-family-photo img { position:relative; z-index:1; display:block; width:100%; min-height:448px; border-radius:26px; object-fit:cover; object-position:right center; }
.cm-gm-family-photo span { position:absolute; z-index:2; right:-31px; bottom:31px; padding:15px 20px; border-radius:14px; background:#0b396f; color:#fff; box-shadow:0 14px 30px rgba(6,39,79,.23); font-size:.79rem; font-weight:700; line-height:1.44; }
.cm-gm-family-copy { max-width:580px; }
.cm-gm-family h2 { margin-bottom:21px; }
.cm-gm-family-copy>p:not(.cm-eyebrow) { margin:0 0 25px; font-size:.93rem; line-height:1.74; }
.cm-gm-family ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.cm-gm-family li { display:flex; align-items:center; gap:10px; color:#234e83; font-size:.86rem; font-weight:650; line-height:1.45; }
.cm-gm-family li .cm-icon { flex:0 0 auto; width:20px; height:20px; color:#e97726; }
.cm-gm-process { padding:98px 0 105px; background:#0a3265; color:#cde2f4; }
/* This dark panel needs a self-contained contrast scale; the global blue heading token is intentionally overridden here. */
body.cm-modern-home .cm-gm-process h2,body.cm-modern-home .cm-gm-process h3 { color:#fff; }
body.cm-modern-home .cm-gm-process .cm-eyebrow,body.cm-modern-home .cm-gm-process li>span { color:#9bdcff; }
.cm-gm-process-heading { max-width:560px; margin-bottom:47px; }
.cm-gm-process ol { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin:0; padding:0; list-style:none; }
.cm-gm-process li { display:grid; grid-template-columns:auto 1fr; gap:18px; min-height:133px; padding:25px 23px 0 0; border-top:1px solid rgba(191,224,245,.46); }
.cm-gm-process li>span { font-size:1.02rem; font-weight:800; }
.cm-gm-process h3 { margin:0 0 9px; font-size:1.08rem; line-height:1.2; }
body.cm-modern-home .cm-gm-process p { margin:0; color:#d8edfc; font-size:.81rem; line-height:1.65; }
.cm-gm-cta { padding:105px 0; background:#f4f9fd; }
.cm-gm-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:55px; }
.cm-gm-cta-inner>div:last-child { max-width:350px; }
.cm-gm-cta-inner>div:last-child>p { margin:0 0 21px; font-size:.92rem; line-height:1.7; }
@media(max-width:1080px){.cm-gm-hero-grid,.cm-gm-family-grid{gap:52px}.cm-gm-intro-grid{gap:64px}.cm-gm-reasons-grid{grid-template-columns:repeat(2,1fr)}.cm-gm-reasons-grid article{min-height:235px}}
@media(max-width:960px){.cm-gm-hero{padding-top:145px}.cm-gm-hero-grid{grid-template-columns:1fr;gap:44px}.cm-gm-hero-copy{max-width:650px}.cm-gm-hero-photo{max-width:670px;width:100%;margin-left:auto}.cm-gm-intro-grid{gap:48px}.cm-gm-family-grid{gap:52px}.cm-gm-assurances-grid>div{padding:24px 20px}.cm-gm-assurances-grid>div{align-items:flex-start}.cm-gm-family-photo span{right:12px}.cm-gm-section-heading{align-items:start;flex-direction:column;gap:18px}.cm-gm-process ol{gap:17px}}
@media(max-width:640px){.cm-gm-hero{padding:130px 0 76px}.cm-gm-hero-grid,.cm-gm-intro-grid,.cm-gm-family-grid{grid-template-columns:1fr}.cm-gm-hero h1{font-size:clamp(2.85rem,13vw,4rem)}.cm-gm-hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.cm-gm-hero-photo,.cm-gm-hero-photo img{min-height:300px}.cm-gm-hero-photo:before{inset:14px -7px -9px 14px}.cm-gm-photo-card{bottom:-16px;left:9px}.cm-gm-assurances{padding-bottom:78px}.cm-gm-assurances-grid{grid-template-columns:1fr}.cm-gm-assurances-grid>div{padding:21px 24px}.cm-gm-assurances-grid>div+div{border-top:1px solid #dceaf4;border-left:0}.cm-gm-intro{padding-bottom:79px}.cm-gm-intro-grid{gap:18px}.cm-gm-intro-copy{padding-top:0}.cm-gm-reasons,.cm-gm-family,.cm-gm-cta{padding:79px 0}.cm-gm-reasons-grid{grid-template-columns:1fr;gap:12px}.cm-gm-reasons-grid article{min-height:0;padding:28px}.cm-gm-reason-icon{margin-bottom:25px}.cm-gm-family-grid{gap:51px}.cm-gm-family-photo{max-width:310px;min-height:360px;margin:0 auto}.cm-gm-family-photo img{min-height:360px}.cm-gm-family-photo span{right:-22px;bottom:23px}.cm-gm-process{padding:76px 0}.cm-gm-process-heading{margin-bottom:34px}.cm-gm-process ol{grid-template-columns:1fr;gap:24px}.cm-gm-process li{min-height:0;padding-top:21px}.cm-gm-cta-inner{align-items:flex-start;flex-direction:column;gap:25px}}
@media(prefers-reduced-motion:no-preference){.cm-gm-reasons-grid article{will-change:transform}}

/* Acento editorial compartido en los títulos de hero internos. */
.cm-gm-hero h1 em{color:#eb7624}
