@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root {
  --blue-950: #063653;
  --blue-900: #074a73;
  --blue-700: #0b6da8;
  --blue-500: #1d8dcc;
  --aqua: #20a9ad;
  --mint: #68c6aa;
  --mint-soft: #e9f8f2;
  --ice: #eef7fb;
  --paper: #f7fafc;
  --ink: #173447;
  --muted: #647985;
  --line: #dbe8ed;
  --white: #fff;
  --shadow: 0 24px 70px rgba(6, 54, 83, .13);
  --shadow-soft: 0 12px 34px rgba(6, 54, 83, .09);
  --radius-lg: 28px;
  --radius-md: 18px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: 'DM Sans', sans-serif;
  line-height: 1.5;
}
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
img { display: block; max-width: 100%; }
.container { width: min(1180px, calc(100% - 44px)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.topbar { background: var(--blue-950); color: rgba(255,255,255,.78); font-size: .78rem; }
.topbar-inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.topbar p { margin: 0; }
.topbar a { color: #fff; font-weight: 700; }
.topbar .topbar-phone { margin-left: 14px; color: var(--mint); white-space: nowrap; }
.topbar .municipality-link { display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border: 1px solid rgba(104,198,170,.75); border-radius: 999px; color: #e4fff4; background: rgba(104,198,170,.14); transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.topbar .municipality-link::before { content: '✦'; color: var(--mint); font-size: .82rem; }
.topbar .municipality-link:hover, .topbar .municipality-link:focus-visible { border-color: var(--mint); background: rgba(104,198,170,.28); transform: translateY(-1px); }
.topbar-dot { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--mint); animation: topbar-dot-blink 1.8s ease-in-out infinite; }

@keyframes topbar-dot-blink {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(91, 214, 177, .45); }
  50% { opacity: .45; box-shadow: 0 0 0 5px rgba(91, 214, 177, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .topbar-dot { animation: none; }
}

.site-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(219,232,237,.9); backdrop-filter: blur(16px); }
.nav { position: relative; min-height: 86px; display: grid; grid-template-columns: 215px minmax(0, 1fr); align-items: center; gap: 16px; }
.header-logos { display: contents; }
.brand { grid-column: 1; display: inline-flex; align-items: center; gap: 12px; min-width: 0; }
.brand img { width: 178px; height: auto; }
.nav-links .municipality-nav-logo { display: none; }
.municipality-nav-logo::after { display: none !important; }
.municipality-nav-logo img { display: block; width: 105px; height: auto; }
.municipality-nav-logo img[src*="Logo%20Principal"] { display: none; }
.nav-links { grid-column: 2; display: flex; align-items: center; justify-content: center; gap: 22px; min-width: 0; font-size: .87rem; font-weight: 700; }
.nav-links a { position: relative; padding: 8px 0; color: var(--blue-950); }
.nav-links a { white-space: nowrap; }
.nav-links a.nav-urgent { color: #b33e53; }
.nav-links a.nav-urgent::before { display: inline-block; width: 6px; height: 6px; margin: 0 6px 1px 0; border-radius: 50%; background: #d9566c; content: ''; }
.nav-links a:not(.nav-cta)::after { content: ''; position: absolute; right: 0; bottom: 2px; left: 0; height: 2px; background: var(--aqua); transform: scaleX(0); transform-origin: right; transition: transform .25s ease; }
.nav-links a:not(.nav-cta):hover::after, .nav-links a[aria-current='page']::after { transform: scaleX(1); transform-origin: left; }
.nav-cta, .btn-primary { color: var(--white) !important; background: var(--blue-700); border-radius: 12px; padding: 12px 16px !important; box-shadow: 0 8px 18px rgba(11,109,168,.2); }
.nav-links a[href="intranet.html"] { color: var(--white); background: var(--blue-950); border-radius: 12px; padding: 10px 14px; white-space: nowrap; box-shadow: 0 8px 18px rgba(6,54,83,.16); }
.nav-links a[href="intranet.html"]:hover { color: var(--white); background: var(--blue-900); }
.nav-links a[href="intranet.html"]::after { display: none; }
.municipality-hero-logo { position: fixed; z-index: 30; bottom: 24px; left: clamp(18px, 3vw, 32px); display: block; width: 124px; padding: 9px 12px; border-radius: 14px; background: rgba(255,255,255,.93); box-shadow: 0 10px 24px rgba(5,46,71,.18); transition: transform .2s ease, box-shadow .2s ease; }
.municipality-hero-logo:hover { box-shadow: 0 14px 30px rgba(5,46,71,.25); transform: translateY(-2px); }
.municipality-hero-logo img { width: 100%; height: auto; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 12px; color: var(--blue-950); background: var(--white); cursor: pointer; }
.menu-toggle span, .menu-toggle::before, .menu-toggle::after { display: block; width: 19px; height: 2px; margin: 4px auto; background: currentColor; content: ''; transition: transform .2s ease; }
.whatsapp-float { position: fixed; z-index: 30; right: 22px; bottom: 22px; display: inline-flex; align-items: center; gap: 8px; padding: 13px 17px; border-radius: 999px; color: var(--white); background: #19b957; box-shadow: 0 12px 28px rgba(15,127,62,.3); font-size: .82rem; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.whatsapp-float:hover { color: var(--white); background: #119b47; transform: translateY(-3px); }
.whatsapp-symbol { display: block; width: 27px; height: 27px; flex: 0 0 27px; fill: currentColor; }
.urgent-float { position: fixed; z-index: 31; right: 22px; bottom: 88px; display: inline-flex; align-items: center; gap: 8px; padding: 12px 17px; border: 2px solid var(--white); border-radius: 999px; color: var(--white); background: #d9566c; box-shadow: 0 12px 28px rgba(137,31,52,.3); font-size: .82rem; font-weight: 800; transition: transform .2s ease, background .2s ease; }
.urgent-float:hover { color: var(--white); background: #bd3f57; transform: translateY(-3px); }
.urgent-float > span:first-child { font-size: 1.05rem; line-height: 1; }

.hero { position: relative; min-height: 500px; overflow: hidden; color: var(--white); background: var(--blue-950); }
.hero::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(5,46,71,.93) 0%, rgba(5,46,71,.78) 37%, rgba(5,46,71,.18) 75%); content: ''; pointer-events: none; }
.hero::after { position: absolute; right: -10%; bottom: -130px; width: 65%; height: 230px; border-radius: 50%; background: rgba(104,198,170,.18); content: ''; filter: blur(3px); }
.hero-slides { position: absolute; z-index: 0; inset: 0; }
.hero-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.15s cubic-bezier(.22,.61,.36,1); }
.hero-slide.is-active { opacity: 1; }
@keyframes hero-zoom-out { from { transform: scale(1.07); } to { transform: scale(1.01); } }
.hero-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center 10%; transform: scale(1.07); }
.hero-slide img[src$="/1.jpg"] { object-position: center bottom; }
.hero-slide img[src$="/2.jpg"] { object-position: center bottom; }
.hero-slide img[src$="/3.jpg"] { object-position: center 65%; }
.hero-slide img[src$="/5.jpg"] { object-position: center 75%; }
.hero-slide img[src$="/7.jpg"] { object-position: center 20%; }
.hero-slide img[src$="/10.jpg"] { object-position: center center; }
.hero-slide img[src$="/11.jpg"] { object-position: center 40%; }
.hero-slide img[src$="/12.jpg"] { object-position: center 40%; }
.hero-slide img[src$="/13.jpg"] { object-position: center center; }
.hero-slide img[src$="/16.jpg"] { object-position: center 80%; }
.hero-slide.is-active img { animation: hero-zoom-out 3s ease-out forwards; }
.hero-controls { position: absolute; z-index: 3; top: 50%; right: 22px; left: 22px; display: flex; justify-content: space-between; transform: translateY(-50%); pointer-events: none; }
.carousel-control { display: grid; width: 43px; height: 43px; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: var(--white); background: rgba(5,46,71,.42); font-size: 1.3rem; cursor: pointer; pointer-events: auto; transition: background .2s ease, transform .2s ease; }
.carousel-control:hover { background: rgba(5,46,71,.78); transform: scale(1.06); }
.carousel-dots { position: absolute; z-index: 3; bottom: 24px; left: 50%; display: flex; gap: 8px; transform: translateX(-50%); }
.carousel-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.48); cursor: pointer; transition: width .2s ease, background .2s ease; }
.carousel-dot[aria-current="true"] { width: 25px; border-radius: 999px; background: var(--mint); }
.hero-inner { position: relative; z-index: 2; min-height: 500px; display: flex; align-items: center; padding: 55px 0 100px; }
.hero-copy { max-width: 670px; }
.eyebrow { color: var(--aqua); font-size: .75rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow-light { color: #86e1c5; }
.hero-kicker { display: inline-flex; align-items: center; gap: 9px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; color: rgba(255,255,255,.9); background: rgba(255,255,255,.11); font-size: .76rem; font-weight: 700; }
.hero-kicker i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); }
h1, h2, h3, h4 { font-family: 'Manrope', sans-serif; }
h1 { max-width: 730px; margin: 20px 0 18px; font-size: clamp(2.9rem, 6vw, 5.7rem); line-height: .98; letter-spacing: -.06em; }
.hero p { max-width: 590px; margin: 0; color: rgba(255,255,255,.82); font-size: 1.08rem; line-height: 1.75; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 29px; }
.btn { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 19px; border: 1px solid transparent; border-radius: 13px; font-weight: 700; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; cursor: pointer; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 12px 22px rgba(6,54,83,.15); }
.btn-light { color: var(--blue-950); background: var(--white); }
.btn-outline-light { color: var(--white); border-color: rgba(255,255,255,.35); background: rgba(255,255,255,.08); }
.btn-outline-light:hover { background: rgba(255,255,255,.16); }
.btn-secondary { color: var(--blue-950); background: var(--mint-soft); }

.quick-wrap { position: relative; z-index: 2; margin-top: -65px; }
.quick-card { padding: 24px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--white); box-shadow: var(--shadow); }
.quick-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin: 0 4px 18px; }
.quick-heading h2 { margin: 0; color: var(--blue-950); font-size: 1.55rem; letter-spacing: -.04em; }
.quick-heading p { margin: 0; color: var(--muted); font-size: .82rem; }
.quick-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.quick-item { position: relative; min-height: 130px; padding: 17px; border: 1px solid transparent; border-radius: 17px; background: var(--paper); transition: .2s ease; }
.quick-item:hover { border-color: #c7e1e8; background: var(--white); box-shadow: var(--shadow-soft); transform: translateY(-3px); }
.quick-icon { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 12px; color: var(--blue-700); background: var(--white); box-shadow: 0 6px 14px rgba(6,54,83,.08); font-size: 1.1rem; font-weight: 800; }
.quick-item b { display: block; margin-top: 15px; color: var(--blue-950); font-size: .85rem; line-height: 1.2; }
.quick-item small { display: block; margin-top: 4px; color: var(--muted); font-size: .7rem; }
.quick-arrow { position: absolute; top: 16px; right: 15px; color: #9aabb4; }

.vaccine-section { padding-top: 76px; background: linear-gradient(180deg, var(--white), #f1f8fa 45%, var(--white)); }
.vaccine-panel { overflow: hidden; border: 1px solid #cfe4e8; border-radius: 30px; background: var(--white); box-shadow: var(--shadow); }
.vaccine-intro { display: grid; grid-template-columns: auto 1fr; gap: 21px; align-items: center; padding: 38px 42px; color: var(--white); background: linear-gradient(115deg, var(--blue-950), var(--blue-900) 65%, #0b7890); }
.vaccine-intro-mark { width: 73px; height: 73px; display: flex; align-items: center; justify-content: center; gap: 3px; border: 1px solid rgba(255,255,255,.26); border-radius: 23px; background: rgba(104,198,170,.16); }
.vaccine-intro-mark svg { width: 32px; fill: none; stroke: #9ce6cf; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.3; }
.vaccine-intro-mark .vaccine-intro-vial { width: 31px; stroke: #fff; stroke-width: 2.1; }
.vaccine-intro h2 { margin: 7px 0 2px; font-size: clamp(2.2rem, 4vw, 3.35rem); letter-spacing: -.06em; }
.vaccine-lead { margin: 0; color: rgba(255,255,255,.84); font-size: 1.05rem; }
.vaccine-alert { display: inline-flex; gap: 8px; align-items: center; margin: 17px 0 0; padding: 8px 11px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #fff; background: rgba(255,255,255,.1); font-size: .74rem; font-weight: 700; }
.vaccine-alert span { width: 19px; height: 19px; display: grid; place-items: center; border-radius: 50%; color: var(--blue-950); background: #9ce6cf; font-weight: 900; }
.vaccine-audience, .vaccine-benefits, .vaccine-locations { padding: 29px 42px; }
.vaccine-benefits { border-top: 1px solid var(--line); background: var(--paper); }
.vaccine-section-label { display: flex; gap: 11px; align-items: center; color: var(--blue-950); }
.vaccine-section-label span { color: var(--aqua); font-family: 'Manrope', sans-serif; font-size: .7rem; font-weight: 800; letter-spacing: .1em; }
.vaccine-section-label strong { font-family: 'Manrope', sans-serif; font-size: .95rem; letter-spacing: -.025em; }
.vaccine-audience-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px; margin-top: 17px; }
.vaccine-audience-card { display: flex; gap: 15px; align-items: center; padding: 18px; border: 1px solid var(--line); border-radius: 17px; background: var(--paper); transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.vaccine-audience-card:hover { border-color: #a9d6dc; box-shadow: var(--shadow-soft); transform: translateY(-2px); }
.vaccine-icon { width: 45px; height: 45px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 14px; color: var(--blue-700); background: var(--mint-soft); }
.vaccine-icon svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.vaccine-audience-card strong, .vaccine-audience-card span { display: block; }
.vaccine-audience-card strong { color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: .94rem; }
.vaccine-audience-card span { margin-top: 3px; color: var(--muted); font-size: .78rem; }
.vaccine-benefit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; margin-top: 17px; }
.vaccine-benefit-card { min-height: 147px; display: flex; flex-direction: column; justify-content: space-between; gap: 22px; padding: 18px; border: 1px solid #d8e8eb; border-radius: 17px; background: var(--white); }
.vaccine-benefit-card .vaccine-icon { width: 42px; height: 42px; color: var(--aqua); }
.vaccine-benefit-card strong { max-width: 210px; color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: .87rem; line-height: 1.3; }
.vaccine-locations { border-top: 1px solid var(--line); }
.vaccine-location-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; }
.vaccine-location-heading > p { max-width: 360px; margin: 0 0 1px; color: var(--muted); font-size: .78rem; line-height: 1.55; text-align: right; }
.vaccine-location-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px; margin-top: 17px; }
.vaccine-location-card { padding: 19px; border: 1px solid #cfe4e8; border-radius: 17px; background: linear-gradient(135deg, #f7fbfc, #eef8f7); }
.location-card-title { display: flex; gap: 11px; align-items: center; color: var(--blue-950); }
.location-card-title strong { font-family: 'Manrope', sans-serif; font-size: .92rem; }
.location-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--white); background: var(--blue-700); }
.location-icon svg { width: 22px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.vaccine-location-card p { margin: 15px 0 0; color: var(--muted); font-size: .76rem; line-height: 1.6; }
.vaccine-location-card p + p { margin-top: 11px; padding-top: 11px; border-top: 1px solid #d9e9eb; }
.vaccine-location-card b { color: var(--blue-950); }
.vaccine-location-card .location-note { font-size: .71rem; }
.vaccine-footer { display: flex; gap: 10px; align-items: center; padding: 17px 42px; color: var(--blue-950); background: var(--mint-soft); font-size: .78rem; }
.vaccine-footer > span { width: 22px; height: 22px; display: grid; flex: 0 0 auto; place-items: center; border-radius: 50%; color: var(--white); background: var(--aqua); font-size: .75rem; font-weight: 900; }

.oirs-section { padding-top: 72px; background: linear-gradient(180deg, var(--white), var(--ice)); }
.oirs-panel { overflow: hidden; border-radius: var(--radius-lg); color: var(--white); background: var(--blue-950); box-shadow: var(--shadow); }
.oirs-panel-heading { display: flex; align-items: center; gap: 22px; padding: 30px 34px; background: linear-gradient(110deg, var(--blue-900), var(--blue-700)); }
.oirs-badge { display: grid; width: 74px; height: 74px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 22px; color: var(--blue-950); background: var(--white); font-family: 'Manrope', sans-serif; font-size: .78rem; font-weight: 800; text-align: center; }
.oirs-panel-heading h3 { margin: 0 0 6px; font-size: 1.65rem; letter-spacing: -.04em; }
.oirs-panel-heading p { margin: 0; color: rgba(255,255,255,.78); font-size: .92rem; }
.oirs-modes { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: rgba(255,255,255,.14); }
.oirs-mode { min-height: 310px; padding: 29px 32px; background: rgba(255,255,255,.06); }
.oirs-mode-number { color: var(--mint); font-family: 'Manrope', sans-serif; font-size: .76rem; font-weight: 800; letter-spacing: .12em; }
.oirs-mode h3 { margin: 17px 0 10px; font-size: 1.35rem; }
.oirs-mode p { max-width: 470px; margin: 0; color: rgba(255,255,255,.76); font-size: .88rem; line-height: 1.7; }
.oirs-mode p strong { color: var(--white); }
.oirs-detail { margin-top: 13px !important; padding-top: 13px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.6) !important; font-size: .79rem !important; }
.oirs-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 17px; }
.oirs-links a { padding: 8px 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 10px; color: var(--white); background: rgba(255,255,255,.08); font-size: .75rem; font-weight: 700; }
.oirs-links a:hover { border-color: var(--mint); background: rgba(104,198,170,.16); }
.oirs-links a span { margin-left: 3px; color: var(--mint); }
.oirs-phone { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin-top: 20px !important; }
.oirs-phone a { color: var(--white); font-size: .86rem; font-weight: 700; }
.oirs-phone strong { color: var(--mint); font-size: 1.05rem; }
.oirs-phone small { color: rgba(255,255,255,.55); font-size: .72rem; }
.oirs-footer { display: flex; align-items: center; gap: 23px; padding: 22px 32px; background: rgba(0,0,0,.14); }
.oirs-footer > strong { color: var(--mint); font-size: .83rem; white-space: nowrap; }
.oirs-types { display: flex; flex-wrap: wrap; gap: 9px; margin: 0; padding: 0; list-style: none; }
.oirs-types li { padding: 7px 11px; border-radius: 999px; color: rgba(255,255,255,.9); background: rgba(255,255,255,.1); font-size: .76rem; font-weight: 700; }
.oirs-types li::before { margin-right: 5px; color: var(--mint); content: '✓'; }

section { padding: 96px 0; }
.section-heading { display: grid; grid-template-columns: 1fr .75fr; align-items: end; gap: 40px; margin-bottom: 34px; }
.section-heading h2 { max-width: 660px; margin: 8px 0 0; color: var(--blue-950); font-size: clamp(2.25rem, 4.5vw, 3.6rem); line-height: 1.03; letter-spacing: -.06em; }
.section-heading p { margin: 0 0 3px; color: var(--muted); line-height: 1.75; }
.soft-section { background: var(--paper); }

.network-grid { display: grid; grid-template-columns: 1.25fr .9fr .9fr; grid-template-rows: 245px 245px; gap: 15px; }
.network-card { position: relative; min-height: 0; overflow: hidden; border-radius: 23px; color: var(--white); background: var(--blue-900); }
.network-card.featured { grid-row: 1 / 3; }
.network-card::after { position: absolute; inset: 0; background: linear-gradient(to top, rgba(5,42,65,.87), rgba(5,42,65,.03) 65%); content: ''; }
.network-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.network-card:hover img { transform: scale(1.04); }
.network-card[data-card-link] { cursor: pointer; }
.network-card-content { position: absolute; z-index: 1; right: 20px; bottom: 19px; left: 20px; }
.tag { display: inline-flex; padding: 6px 9px; border-radius: 999px; color: var(--blue-950); background: rgba(255,255,255,.94); font-size: .64rem; font-weight: 800; letter-spacing: .08em; }
.network-card h3 { margin: 9px 0 0; font-size: 1.2rem; letter-spacing: -.035em; }
.featured h3 { font-size: 1.85rem; }
.network-card p { margin: 5px 0 0; color: rgba(255,255,255,.78); font-size: .76rem; }
.circle-link { position: absolute; z-index: 2; top: 16px; right: 16px; width: 37px; height: 37px; display: grid; place-items: center; border-radius: 50%; color: var(--blue-950); background: var(--white); font-weight: 800; transition: transform .2s ease; }
.circle-link:hover { transform: rotate(-25deg); }

.intro-grid { display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 65px; }
.intro-image { position: relative; min-height: 480px; overflow: hidden; border-radius: 28px; }
.intro-image::after { position: absolute; inset: 0; background: linear-gradient(145deg, rgba(7,74,115,.08), rgba(7,74,115,.42)); content: ''; }
.intro-image img { width: 100%; height: 100%; min-height: 480px; object-fit: cover; }
.floating-note { position: absolute; z-index: 1; right: 19px; bottom: 20px; max-width: 240px; padding: 17px; border-radius: 18px; color: var(--white); background: rgba(6,54,83,.91); box-shadow: var(--shadow-soft); }
.floating-note strong { display: block; font-family: 'Manrope', sans-serif; font-size: 1.5rem; }
.floating-note span { display: block; margin-top: 3px; color: rgba(255,255,255,.7); font-size: .75rem; }
.intro-copy h2 { margin: 8px 0 16px; color: var(--blue-950); font-size: clamp(2.3rem, 4vw, 3.6rem); line-height: 1.03; letter-spacing: -.06em; }
.intro-copy p { color: var(--muted); line-height: 1.8; }
.check-list { display: grid; gap: 12px; margin: 25px 0 28px; padding: 0; list-style: none; }
.check-list li { display: flex; gap: 10px; align-items: flex-start; color: var(--ink); font-size: .92rem; }
.check-list li::before { width: 21px; height: 21px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; color: var(--blue-900); background: var(--mint-soft); content: '✓'; font-size: .72rem; font-weight: 800; }

.service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.service-card { padding: 23px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); transition: .2s ease; }
.service-card:hover { border-color: #c1dfe6; box-shadow: var(--shadow-soft); transform: translateY(-3px); }
.service-number { color: var(--aqua); font-family: 'Manrope', sans-serif; font-size: .72rem; font-weight: 800; }
.service-card h3 { margin: 19px 0 8px; color: var(--blue-950); font-size: 1.15rem; }
.service-card p { margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.65; }
.service-card a { display: inline-block; margin-top: 18px; color: var(--blue-700); font-size: .8rem; font-weight: 800; }

.callout { overflow: hidden; border-radius: var(--radius-lg); color: var(--white); background: var(--blue-950); }
.callout-inner { display: grid; grid-template-columns: 1fr .9fr; min-height: 390px; }
.callout-copy { display: flex; flex-direction: column; justify-content: center; padding: 48px; }
.callout h2 { max-width: 520px; margin: 10px 0 14px; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.04; letter-spacing: -.055em; }
.callout p { max-width: 520px; margin: 0; color: rgba(255,255,255,.74); line-height: 1.75; }
.callout p + p { margin-top: 16px; }
.callout .btn { align-self: flex-start; margin-top: 23px; }
.callout-image { min-height: 390px; background: linear-gradient(110deg, rgba(6,54,83,.12), transparent), url('imagenes/Cesfam%20Miguel%20Solar/Cesfam%20Miguel%20Solar%202.jpg') center/cover; }
.ambulance-alert { padding: 28px 0 42px; }
.ambulance-alert .content-card { border: 2px solid #d90c4f; border-left-width: 8px; background: #fff5f8; }
.ambulance-alert .eyebrow, .ambulance-alert strong { color: #d90c4f; }
.ambulance-icon { display: inline-block; margin-right: 8px; font-size: .8em; letter-spacing: normal; vertical-align: .08em; }
.emergency-schedule { background: linear-gradient(180deg, #eef7fb 0%, #fff 100%); }
.emergency-grid { max-width: 920px; margin: 0 auto; }
.schedule-panel { display: grid; gap: 17px; }
.schedule-block { position: relative; overflow: hidden; padding: 27px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); box-shadow: 0 8px 24px rgba(6,54,83,.06); }
.schedule-block::before { position: absolute; top: 0; bottom: 0; left: 0; width: 4px; background: var(--aqua); content: ''; }
.schedule-block:nth-child(2)::before { background: var(--blue-500); }
.schedule-block h3 { margin: 12px 0 17px; color: var(--blue-950); font-size: 1.35rem; letter-spacing: -.035em; }
.schedule-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 8px; padding: 14px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); }
.schedule-row strong { color: var(--blue-950); font-size: .82rem; }
.schedule-row span { color: var(--blue-700); font-size: .85rem; font-weight: 800; text-align: right; }
.schedule-note { margin: 16px 0 0; color: var(--muted); font-size: .75rem; line-height: 1.6; }
.triage-section { background: var(--white); }
.triage-note { display: flex; gap: 13px; align-items: center; margin: -12px 0 25px; padding: 14px 17px; border: 1px solid #f3d2df; border-radius: 14px; color: #7e173d; background: #fff5f8; }
.triage-note-mark { width: 25px; height: 25px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; color: var(--white); background: #d90c4f; font-weight: 900; }
.triage-note p { margin: 0; font-size: .8rem; line-height: 1.5; }
.triage-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; }
.triage-card { grid-column: span 6; overflow: hidden; border: 1px solid var(--line); border-top: 7px solid var(--triage-color); border-radius: 18px; background: var(--white); box-shadow: 0 8px 25px rgba(6,54,83,.06); }
.triage-card:nth-child(n+3) { grid-column: span 4; }
.triage-card--c1 { --triage-color: #e4002b; }
.triage-card--c2 { --triage-color: #f05a28; }
.triage-card--c3 { --triage-color: #e6b800; }
.triage-card--c4 { --triage-color: #22a447; }
.triage-card--c5 { --triage-color: #1769aa; }
.triage-card-top { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 20px 20px 15px; }
.triage-code { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 50%; color: var(--white); background: var(--triage-color); font-family: 'Manrope', sans-serif; font-size: 1.2rem; font-weight: 900; }
.triage-card-top div { display: grid; gap: 4px; }
.triage-card-top strong { color: var(--blue-950); font-size: .9rem; line-height: 1.2; }
.triage-card-top div span { color: var(--muted); font-size: .72rem; }
.triage-card-top b { padding: 7px 9px; border-radius: 999px; color: var(--triage-color); background: color-mix(in srgb, var(--triage-color) 12%, white); font-size: .65rem; line-height: 1.2; text-align: center; }
.triage-card ul { display: grid; gap: 8px; margin: 0; padding: 0 20px 22px 42px; color: var(--ink); font-size: .78rem; line-height: 1.45; }
.triage-card li::marker { color: var(--triage-color); }
.triage-card-note { min-height: 95px; margin: 0; padding: 0 20px 25px; color: var(--muted); font-size: .82rem; line-height: 1.65; }

.stats { background: var(--ice); }
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.stat { padding: 25px; border: 1px solid rgba(11,109,168,.1); border-radius: 20px; background: rgba(255,255,255,.72); }
.stat strong { display: block; color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: 2.2rem; letter-spacing: -.06em; }
.stat span { display: block; margin-top: 3px; color: var(--muted); font-size: .82rem; }
.facebook-section { background: var(--paper); }
.facebook-layout { display: grid; grid-template-columns: .82fr 1.18fr; align-items: start; gap: 58px; }
.facebook-copy { max-width: 470px; padding-top: 38px; }
.facebook-copy h2 { margin: 9px 0 14px; color: var(--blue-950); font-size: clamp(2.1rem, 4vw, 3.2rem); letter-spacing: -.05em; line-height: 1.05; }
.facebook-copy > p { margin: 0; color: var(--muted); line-height: 1.75; }
.facebook-note { margin-top: 29px; padding: 23px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); box-shadow: var(--shadow-soft); }
.facebook-note > strong, .facebook-note > span { display: block; }
.facebook-note > strong { color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: 1.05rem; }
.facebook-note > span { margin-top: 3px; color: var(--aqua); font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.facebook-note p { margin: 12px 0 18px; color: var(--muted); font-size: .82rem; line-height: 1.65; }
.facebook-card { display: flex; max-width: none; margin: 0; justify-content: flex-end; background: transparent; }
.facebook-embed { display: block; width: 500px; max-width: 100%; height: 650px; border: 0; border-radius: 20px; background: var(--white); box-shadow: var(--shadow-soft); }

.page-hero { position: relative; min-height: 330px; display: flex; align-items: end; overflow: hidden; color: var(--white); background: var(--blue-950); }
.page-hero::before { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,46,71,.92), rgba(5,46,71,.46)), var(--page-image, url('imagenes/Cesfam%20Miguel%20Solar/Cesfam%20Miguel%20Solar.jpg')) center/cover; content: ''; }
.page-hero-inner { position: relative; z-index: 1; padding: 75px 0 56px; }
.page-hero h1 { max-width: 770px; margin: 12px 0 0; font-size: clamp(2.7rem, 6vw, 4.8rem); }
.page-hero p { max-width: 620px; margin: 15px 0 0; color: rgba(255,255,255,.8); font-size: 1rem; }
.breadcrumbs { margin-bottom: 18px; color: rgba(255,255,255,.62); font-size: .78rem; }
.breadcrumbs a:hover { color: var(--white); }

.intranet-hero { min-height: 365px; }
.intranet-hero .page-hero-inner { min-height: 365px; }
.intranet-section { padding-top: 54px; background: linear-gradient(180deg, #f4fafb 0%, var(--white) 72%); }
.intranet-status { display: flex; align-items: center; gap: 9px; width: fit-content; margin: 0 auto 27px; padding: 9px 13px; border: 1px solid #bfe2d7; border-radius: 999px; color: #256d5a; background: #effaf5; font-size: .76rem; font-weight: 800; }
.intranet-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #31a878; box-shadow: 0 0 0 4px rgba(49,168,120,.14); }
.intranet-status-detail { padding-left: 9px; border-left: 1px solid #bfe2d7; color: #5c8276; font-weight: 600; }
.intranet-layout { display: grid; grid-template-columns: 1.15fr .85fr; overflow: hidden; border: 1px solid #cfe2e5; border-radius: 26px; background: var(--white); box-shadow: var(--shadow-soft); }
.intranet-welcome { padding: 46px; }
.intranet-welcome h2, .intranet-side h2, .intranet-modules h2 { margin: 10px 0 16px; color: var(--blue-950); font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.1; letter-spacing: -.055em; }
.intranet-welcome > p { max-width: 650px; margin: 0; color: var(--muted); line-height: 1.8; }
.intranet-login-form { max-width: 510px; margin-top: 26px; }
.intranet-login-form .field { margin-bottom: 15px; }
.intranet-login-form .field label { display: block; margin-bottom: 7px; }
.intranet-login-form .btn { width: 100%; margin-top: 5px; }
.intranet-login-form .form-note { margin: 13px 0 0; padding: 11px 13px; border-radius: 11px; color: #765f20; background: #fff8df; font-size: .78rem; line-height: 1.5; }
.intranet-help { margin-top: 18px; font-size: .78rem; font-weight: 700; }
.intranet-help a { color: var(--blue-700); }
.intranet-help a:hover { color: var(--blue-950); text-decoration: underline; }
.intranet-notice { display: flex; gap: 10px; align-items: flex-start; margin-top: 25px !important; padding: 14px 16px; border-radius: 14px; color: #44626c !important; background: var(--ice); font-size: .82rem; line-height: 1.55 !important; }
.intranet-notice span { flex: 0 0 19px; display: grid; width: 19px; height: 19px; place-items: center; border-radius: 50%; color: var(--white); background: var(--blue-700); font-size: .7rem; font-weight: 800; }
.intranet-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 27px; }
.intranet-actions .btn-secondary { border: 1px solid #cde2e4; background: var(--white); }
.intranet-side { display: flex; flex-direction: column; justify-content: center; padding: 46px; color: var(--white); background: linear-gradient(145deg, var(--blue-900), #063653 75%); }
.intranet-side h2 { color: var(--white); }
.intranet-side p { margin: 0; color: rgba(255,255,255,.75); line-height: 1.8; }
.intranet-side-icon { display: grid; width: 52px; height: 52px; margin-bottom: 30px; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 16px; color: #a2ead2; background: rgba(104,198,170,.14); }
.intranet-side-icon svg { width: 25px; fill: currentColor; }
.intranet-modules { display: none; margin-top: 28px; padding: 33px; border: 1px solid var(--line); border-radius: 23px; background: var(--white); }
.intranet-modules-heading { display: flex; justify-content: space-between; gap: 30px; align-items: end; }
.intranet-modules h2 { margin-bottom: 0; font-size: 1.65rem; }
.intranet-modules-heading > p { max-width: 310px; margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.65; text-align: right; }
.intranet-module-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 25px; }
.intranet-module { min-height: 177px; padding: 20px; border: 1px solid #d9e9eb; border-radius: 17px; background: var(--paper); }
.intranet-module-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: var(--blue-700); background: var(--white); box-shadow: 0 5px 12px rgba(6,54,83,.08); font-weight: 800; }
.intranet-module h3 { margin: 18px 0 6px; color: var(--blue-950); font-size: .98rem; }
.intranet-module p { margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.6; }

.content-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px; }
.content-card { padding: 31px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--white); box-shadow: 0 4px 18px rgba(6,54,83,.03); }
.content-card h2 { margin: 0 0 14px; color: var(--blue-950); font-size: 1.75rem; letter-spacing: -.045em; }
.content-card h3 { margin: 27px 0 7px; color: var(--blue-900); font-size: 1.1rem; }
.content-card p { margin: 0 0 15px; color: var(--muted); line-height: 1.8; }
.quote-card { color: var(--white); background: linear-gradient(145deg, var(--blue-900), var(--blue-950)); }
.quote-card h2, .quote-card p { color: var(--white); }
.quote-card p { color: rgba(255,255,255,.75); }
.quote-card .quote-mark { color: var(--mint); font-family: Georgia, serif; font-size: 4rem; line-height: .7; }
.quote-card .eyebrow { color: #8be2c5; }
.director-section { background: var(--white); }
.director-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 75px; align-items: center; }
.director-portrait { position: relative; max-width: 430px; }
.director-image-frame { position: relative; padding: 12px; border-radius: 30px 30px 30px 8px; background: linear-gradient(145deg, var(--mint-soft), #d8edf2); box-shadow: 0 18px 40px rgba(6,54,83,.12); }
.director-image-frame::before { position: absolute; top: -16px; left: -16px; width: 85px; height: 85px; border-top: 2px solid var(--aqua); border-left: 2px solid var(--aqua); border-radius: 18px 0 0; content: ''; }
.director-image-frame img { width: 100%; height: 540px; object-fit: cover; object-position: center 19%; border-radius: 21px 21px 21px 4px; }
.director-badge { position: absolute; right: -35px; bottom: 35px; display: grid; gap: 3px; min-width: 190px; padding: 15px 18px; border: 1px solid rgba(255,255,255,.65); border-radius: 15px; color: var(--white); background: var(--blue-950); box-shadow: 0 15px 28px rgba(6,54,83,.2); }
.director-badge span { color: #8be2c5; font-size: .62rem; font-weight: 800; letter-spacing: .12em; }
.director-badge strong { font-family: 'Manrope', sans-serif; font-size: 1.05rem; }
.director-copy { max-width: 650px; }
.director-copy h2 { max-width: 600px; margin: 9px 0 18px; color: var(--blue-950); font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: 1.03; letter-spacing: -.06em; }
.director-copy p { max-width: 620px; margin: 0 0 16px; color: var(--muted); line-height: 1.8; }
.director-signature { display: flex; align-items: center; gap: 14px; margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--line); }
.director-line { width: 42px; height: 3px; border-radius: 99px; background: var(--aqua); }
.director-signature strong, .director-signature span { display: block; }
.director-signature strong { color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: .98rem; }
.director-signature div span { margin-top: 2px; color: var(--muted); font-size: .75rem; }
.values-section { position: relative; overflow: hidden; color: var(--white); background: linear-gradient(135deg, #052f4b 0%, #063653 58%, #07546c 100%); }
.values-section::before { position: absolute; top: -180px; right: -120px; width: 460px; height: 460px; border: 1px solid rgba(104,198,170,.18); border-radius: 50%; box-shadow: 0 0 0 35px rgba(104,198,170,.035), 0 0 0 70px rgba(104,198,170,.025); content: ''; }
.values-section::after { position: absolute; bottom: -240px; left: -150px; width: 500px; height: 500px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; content: ''; }
.values-section > .container { position: relative; z-index: 1; }
.values-heading { align-items: end; }
.values-heading h2 { max-width: 580px; color: var(--white); }
.values-heading p { max-width: 480px; color: rgba(255,255,255,.72); }
.values-heading .eyebrow { color: #8be2c5; }

.facility-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.rural-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.facility-card { overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--white); box-shadow: 0 4px 18px rgba(6,54,83,.04); }
.facility-card-image { height: 215px; overflow: hidden; }
.facility-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.facility-card:hover img { transform: scale(1.04); }
.facility-body { padding: 23px; }
.facility-body h2 { margin: 7px 0 10px; color: var(--blue-950); font-size: 1.4rem; letter-spacing: -.04em; }
.facility-body p { margin: 0 0 13px; color: var(--muted); font-size: .84rem; line-height: 1.7; }
.detail-list { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; color: var(--ink); font-size: .8rem; }
.detail-list li { display: flex; gap: 8px; align-items: flex-start; }
.detail-list li::before { color: var(--aqua); content: '•'; font-size: 1.1rem; line-height: 1; }
.facility-card.wide { grid-column: 1 / -1; display: grid; grid-template-columns: .8fr 1.2fr; }
.facility-card.wide .facility-card-image { height: 100%; min-height: 250px; }
.rural-card .facility-card-image { height: 190px; }
.rural-card .facility-body { padding: 19px; }
.rural-card .facility-body h2 { font-size: 1.18rem; }
.rural-card .facility-body p { font-size: .78rem; }
.gallery-stack { display: grid; gap: 18px; }
.gallery-panel { display: grid; grid-template-columns: .7fr 1.3fr; gap: 25px; align-items: center; padding: 24px; border: 1px solid var(--line); border-radius: 22px; background: var(--white); box-shadow: 0 4px 18px rgba(6,54,83,.04); }
.gallery-panel-copy h2 { margin: 9px 0 10px; color: var(--blue-950); font-size: 1.55rem; letter-spacing: -.045em; }
.gallery-panel-copy p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.75; }
.photo-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.gallery-tile { position: relative; min-height: 145px; overflow: hidden; border-radius: 15px; background: var(--blue-900); }
.gallery-tile img { width: 100%; height: 165px; object-fit: cover; transition: transform .4s ease; }
.gallery-tile:hover img { transform: scale(1.05); }
.gallery-tile figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 28px 11px 10px; color: var(--white); background: linear-gradient(transparent, rgba(5,42,65,.88)); font-size: .68rem; line-height: 1.3; }
.gallery-panel-wide { grid-template-columns: .55fr 1.45fr; }
.gallery-panel-wide .photo-gallery { grid-template-columns: repeat(5, 1fr); }
.gallery-panel-wide .gallery-tile img { height: 175px; }

.spaces-section { background: var(--white); }
.spaces-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.space-card { grid-column: span 6; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--white); box-shadow: 0 4px 18px rgba(6,54,83,.04); }
.space-card-wide { grid-column: 1 / -1; }
.space-card-copy { padding: 25px 25px 18px; }
.space-card-copy h3 { max-width: 650px; margin: 10px 0 8px; color: var(--blue-950); font-size: 1.55rem; letter-spacing: -.045em; }
.space-card-copy p { max-width: 720px; margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.7; }
.space-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; padding: 0 20px 20px; }
.space-card:not(.space-card-wide) .space-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.space-gallery figure { position: relative; min-height: 165px; margin: 0; overflow: hidden; border-radius: 14px; background: var(--blue-950); }
.space-gallery img { width: 100%; height: 100%; min-height: 165px; object-fit: cover; transition: transform .4s ease; }
.space-gallery figure:hover img { transform: scale(1.04); }
.space-gallery figcaption { position: absolute; right: 0; bottom: 0; left: 0; padding: 27px 10px 9px; color: var(--white); background: linear-gradient(transparent, rgba(5,42,65,.86)); font-size: .68rem; line-height: 1.3; }

/* Actualidad */
.actualidad-hero { position: relative; overflow: hidden; color: var(--white); background: var(--blue-950); }
.actualidad-hero::before { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,46,71,.95) 0%, rgba(5,46,71,.82) 46%, rgba(5,46,71,.18) 100%), var(--actualidad-image) center/cover; content: ''; }
.actualidad-hero::after { position: absolute; right: -110px; bottom: -180px; width: 490px; height: 490px; border: 1px solid rgba(139,226,197,.4); border-radius: 50%; box-shadow: 0 0 0 42px rgba(139,226,197,.08), 0 0 0 84px rgba(139,226,197,.04); content: ''; }
.actualidad-hero-inner { position: relative; z-index: 1; padding: 54px 0 50px; }
.actualidad-hero h1 { max-width: 720px; margin: 12px 0 13px; font-size: clamp(2.7rem, 5vw, 4.55rem); }
.actualidad-hero p { max-width: 590px; margin: 0; color: rgba(255,255,255,.82); font-size: 1.05rem; line-height: 1.75; }
.actualidad-index { position: relative; z-index: 2; border-bottom: 1px solid var(--line); background: var(--white); }
.actualidad-index-inner { display: grid; grid-template-columns: repeat(5, 1fr); }
.actualidad-index a { display: flex; gap: 10px; align-items: center; padding: 21px 18px; border-right: 1px solid var(--line); color: var(--blue-950); font-size: .8rem; font-weight: 800; transition: background .2s ease, color .2s ease; }
.actualidad-index a:first-child { border-left: 1px solid var(--line); }
.actualidad-index a:hover { color: var(--blue-700); background: var(--mint-soft); }
.actualidad-index span { color: var(--aqua); font-family: 'Manrope', sans-serif; font-size: .68rem; }
.actualidad-feature-section { padding-bottom: 88px; }
.sar-news { display: grid; grid-template-columns: .88fr 1.12fr; overflow: hidden; margin-bottom: 22px; border: 1px solid #cce3e8; border-radius: 22px; background: linear-gradient(135deg, #eef8f8, #f8fbfc); }
.sar-news-gallery { display: grid; grid-template-columns: 1.18fr .82fr; gap: 8px; min-height: 295px; padding: 8px; }
.sar-photo { position: relative; min-height: 0; margin: 0; overflow: hidden; border-radius: 17px; background: var(--blue-950); }
.sar-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.sar-photo:hover img { transform: scale(1.04); }
.sar-photo-main { grid-row: 1 / 3; }
.sar-photo-secondary { min-height: 139px; }
.sar-photo figcaption { position: absolute; right: 12px; bottom: 10px; left: 12px; color: var(--white); font-size: .7rem; font-weight: 700; text-shadow: 0 1px 8px rgba(0,0,0,.4); }
.sar-news-copy { display: flex; flex-direction: column; justify-content: center; padding: 29px 34px; }
.sar-news-copy .update-label { color: var(--blue-700); }
.sar-news-copy h3 { max-width: 450px; margin: 10px 0 10px; color: var(--blue-950); font-size: clamp(1.6rem, 2.5vw, 2.15rem); line-height: 1.1; letter-spacing: -.05em; }
.sar-news-copy p { max-width: 490px; margin: 0 0 9px; color: var(--muted); font-size: .78rem; line-height: 1.6; }
.sar-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; }
.sar-facts div { padding: 10px 11px; border-radius: 11px; background: var(--white); box-shadow: 0 4px 12px rgba(6,54,83,.05); }
.sar-facts strong, .sar-facts span { display: block; }
.sar-facts strong { color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: .77rem; }
.sar-facts span { margin-top: 3px; color: var(--muted); font-size: .68rem; line-height: 1.3; }
.featured-update { display: grid; grid-template-columns: 1.05fr .95fr; overflow: hidden; border-radius: 26px; background: var(--blue-950); box-shadow: var(--shadow); }
.featured-update + .featured-update { margin-top: 22px; }
.featured-update-image { min-height: 385px; }
.featured-update-image img { width: 100%; height: 100%; object-fit: cover; }
.featured-update-copy { display: flex; flex-direction: column; justify-content: center; padding: 50px; color: var(--white); }
.update-label { color: var(--aqua); font-family: 'Manrope', sans-serif; font-size: .66rem; font-weight: 800; letter-spacing: .12em; }
.featured-update .update-label { color: #9ce6cf; }
.featured-update h3 { max-width: 440px; margin: 16px 0 15px; font-size: clamp(1.9rem, 3.2vw, 2.75rem); line-height: 1.08; letter-spacing: -.055em; }
.featured-update p { max-width: 440px; margin: 0; color: rgba(255,255,255,.74); line-height: 1.75; }
.text-link { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; margin-top: 27px; padding-bottom: 5px; border-bottom: 1px solid rgba(255,255,255,.36); color: var(--white); font-size: .82rem; font-weight: 800; }
.text-link span { color: var(--mint); font-size: 1.05rem; transition: transform .2s ease; }
.text-link:hover span { transform: translateX(4px); }
.update-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 16px; }
.update-card { display: flex; flex-direction: column; min-height: 244px; padding: 27px; border: 1px solid var(--line); border-radius: 20px; background: var(--white); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.update-card:hover { border-color: #bfdee7; box-shadow: var(--shadow-soft); transform: translateY(-4px); }
.update-card h3 { margin: 16px 0 10px; color: var(--blue-950); font-size: 1.24rem; line-height: 1.25; letter-spacing: -.04em; }
.update-card p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.7; }
.update-card a { display: inline-flex; gap: 7px; align-items: center; margin-top: auto; padding-top: 17px; color: var(--blue-700); font-size: .8rem; font-weight: 800; }
.care-paths { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.care-path { display: grid; grid-template-columns: 47px 1fr; gap: 17px; padding: 29px 25px; border-top: 3px solid var(--aqua); border-radius: 0 0 20px 20px; background: var(--white); box-shadow: 0 8px 22px rgba(6,54,83,.05); }
.care-path-number { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 13px; color: var(--blue-950); background: var(--mint-soft); font-family: 'Manrope', sans-serif; font-size: .77rem; font-weight: 800; }
.care-path h3 { margin: 6px 0 9px; color: var(--blue-950); font-size: 1.18rem; line-height: 1.25; letter-spacing: -.035em; }
.care-path p { margin: 0; color: var(--muted); font-size: .83rem; line-height: 1.7; }
.care-path ul { display: grid; gap: 7px; margin: 16px 0 0; padding: 0; list-style: none; color: var(--ink); font-size: .75rem; line-height: 1.5; }
.care-path li { display: flex; gap: 7px; }
.care-path li::before { color: var(--aqua); content: '•'; font-size: 1rem; line-height: .9; }
.territory-section { background: var(--white); }
.territory-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.territory-copy h2 { max-width: 500px; margin: 9px 0 16px; color: var(--blue-950); font-size: clamp(2.25rem, 4vw, 3.55rem); line-height: 1.04; letter-spacing: -.06em; }
.territory-copy > p { max-width: 510px; margin: 0; color: var(--muted); line-height: 1.8; }
.territory-list { display: grid; gap: 0; margin: 27px 0 28px; border-top: 1px solid var(--line); }
.territory-list div { display: grid; gap: 4px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.territory-list strong { color: var(--blue-950); font-size: .9rem; }
.territory-list span { color: var(--muted); font-size: .8rem; }
.territory-photo { position: relative; min-height: 475px; margin: 0; overflow: hidden; border-radius: 26px; background: var(--blue-950); }
.territory-photo::after { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(5,46,71,.8), transparent 50%); content: ''; }
.territory-photo img { width: 100%; height: 100%; object-fit: cover; }
.territory-photo figcaption { position: absolute; z-index: 1; right: 25px; bottom: 22px; left: 25px; color: var(--white); font-family: 'Manrope', sans-serif; font-size: 1.25rem; font-weight: 700; letter-spacing: -.03em; }
.official-section { padding-top: 0; background: var(--white); }
.official-panel { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 46px 52px; border-radius: 26px; color: var(--white); background: linear-gradient(115deg, var(--blue-950), var(--blue-900)); }
.official-panel h2 { max-width: 600px; margin: 9px 0 12px; font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1.1; letter-spacing: -.055em; }
.official-panel p { max-width: 640px; margin: 0; color: rgba(255,255,255,.73); line-height: 1.7; }
.official-actions { display: grid; flex: 0 0 205px; gap: 16px; }
.official-contact { color: rgba(255,255,255,.7); font-size: .76rem; text-align: center; }
.official-contact span { display: block; margin-top: 3px; color: #a7ead3; font-weight: 800; }
.values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 35px; }
.value-card { position: relative; min-height: 190px; overflow: hidden; padding: 25px; border: 1px solid rgba(255,255,255,.16); border-radius: 22px; background: rgba(255,255,255,.075); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(10px); transition: transform .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease; }
.value-card::before { position: absolute; top: 0; right: 25px; left: 25px; height: 2px; background: linear-gradient(90deg, var(--mint), transparent); content: ''; opacity: .9; }
.value-card:hover { border-color: rgba(104,198,170,.58); background: rgba(255,255,255,.13); box-shadow: 0 18px 35px rgba(0,20,35,.22); transform: translateY(-5px); }
.value-card-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; margin-bottom: 25px; }
.value-icon { display: grid; width: 49px; height: 49px; place-items: center; border: 1px solid rgba(104,198,170,.42); border-radius: 16px; color: #a8efd1; background: rgba(104,198,170,.12); font-size: 1.35rem; line-height: 1; }
.value-icon i { font-style: normal; }
.value-index { color: rgba(255,255,255,.47); font-family: 'Manrope', sans-serif; font-size: .7rem; font-weight: 800; letter-spacing: .14em; }
.value-card strong { position: relative; z-index: 1; display: block; color: var(--white); font-family: 'Manrope', sans-serif; font-size: 1.1rem; letter-spacing: -.025em; }
.value-card .value-description { position: relative; z-index: 1; display: block; max-width: 250px; margin-top: 7px; color: rgba(255,255,255,.68); font-size: .8rem; line-height: 1.6; }

.document-list { display: grid; gap: 12px; }
.document { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px 21px; border: 1px solid var(--line); border-radius: 15px; background: var(--white); }
.document strong { display: block; color: var(--blue-950); font-size: .92rem; }
.document span { display: block; margin-top: 3px; color: var(--muted); font-size: .75rem; }
.document .btn { min-height: 38px; padding: 0 13px; font-size: .76rem; }
.rehab-highlights { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 24px; }
.rehab-highlight { padding: 15px; border: 1px solid rgba(104,198,170,.28); border-radius: 15px; background: var(--mint-soft); }
.rehab-highlight strong { display: block; color: var(--blue-950); font-family: 'Manrope', sans-serif; font-size: 1.25rem; letter-spacing: -.04em; }
.rehab-highlight span { display: block; margin-top: 3px; color: var(--muted); font-size: .7rem; line-height: 1.35; }

.contact-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 22px; }
.contact-info { padding: 31px; border-radius: 23px; color: var(--white); background: var(--blue-950); }
.contact-info h2 { margin: 10px 0 14px; font-size: 2.2rem; line-height: 1.03; letter-spacing: -.05em; }
.contact-info p { color: rgba(255,255,255,.72); line-height: 1.7; }
.contact-row { padding: 15px 0; border-top: 1px solid rgba(255,255,255,.13); }
.contact-row strong { display: block; font-size: .8rem; }
.contact-row span { display: block; margin-top: 3px; color: rgba(255,255,255,.65); font-size: .78rem; }
.contact-form { padding: 31px; border: 1px solid var(--line); border-radius: 23px; background: var(--white); box-shadow: var(--shadow-soft); }
.contact-form h2 { margin: 0 0 7px; color: var(--blue-950); font-size: 1.65rem; letter-spacing: -.04em; }
.contact-form > p { margin: 0 0 23px; color: var(--muted); font-size: .85rem; }
.map-section { padding-top: 0; }
.map-card { padding: 31px; border: 1px solid var(--line); border-radius: 23px; background: var(--white); box-shadow: var(--shadow-soft); }
.map-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 21px; }
.map-heading h2 { margin: 6px 0 6px; color: var(--blue-950); font-size: 1.65rem; letter-spacing: -.04em; }
.map-heading p { margin: 0; color: var(--muted); font-size: .85rem; }
.map-frame { min-height: 360px; overflow: hidden; border-radius: 16px; background: var(--ice); }
.map-frame iframe { display: block; width: 100%; height: 360px; border: 0; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.field { display: grid; gap: 6px; }
.field.full { grid-column: 1 / -1; }
.field label { color: var(--blue-950); font-size: .78rem; font-weight: 800; }
.field input, .field textarea { width: 100%; border: 1px solid var(--line); border-radius: 11px; outline: 0; padding: 12px 13px; color: var(--ink); background: var(--paper); transition: border .2s ease, box-shadow .2s ease; }
.field textarea { min-height: 135px; resize: vertical; }
.field input:focus, .field textarea:focus { border-color: var(--blue-500); box-shadow: 0 0 0 3px rgba(29,141,204,.13); }
.form-note { margin: 13px 0 0; color: var(--muted); font-size: .72rem; }
.website-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.contact-form .form-note[hidden] { display: none; }
.contact-form .form-note.is-success, .contact-form .form-note.is-error { display: flex; gap: 10px; align-items: flex-start; padding: 14px 15px; border: 1px solid; border-radius: 12px; font-size: .8rem; font-weight: 700; line-height: 1.5; }
.contact-form .form-note.is-success { border-color: #a8dcca; color: #176047; background: #edf9f3; }
.contact-form .form-note.is-error { border-color: #efc5ca; color: #9a3140; background: #fff3f4; }
.contact-form .form-note.is-success::before, .contact-form .form-note.is-error::before { flex: 0 0 20px; display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: var(--white); font-size: .75rem; font-weight: 900; content: '✓'; }
.contact-form .form-note.is-success::before { background: #2b9c70; }
.contact-form .form-note.is-error::before { background: #cf5261; content: '!'; }
.contact-form .btn:disabled { cursor: wait; opacity: .7; transform: none; }

footer { margin-top: 25px; padding: 60px 0 25px; color: var(--white); background: #052d47; }
.footer-grid { display: grid; grid-template-columns: 1.45fr 1fr 1fr 1fr; gap: 30px; padding-bottom: 42px; }
.footer-brand { max-width: 330px; }
.footer-brand img { width: 185px; opacity: .94; }
.footer-brand p, footer a, footer .footer-col p { color: rgba(255,255,255,.63); font-size: .78rem; line-height: 1.7; }
footer h3 { margin: 0 0 13px; font-family: 'DM Sans', sans-serif; font-size: .83rem; }
footer a { display: block; margin: 8px 0; }
footer a:hover { color: var(--white); }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.11); color: rgba(255,255,255,.43); font-size: .7rem; }

[data-reveal] { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .hero-slide { transition: none; }
  .hero-slide.is-active img { animation: none; transform: scale(1.01); }
}

@media (max-width: 1050px) {
  .nav-links { position: absolute; top: calc(100% + 1px); right: 22px; left: 22px; display: none; flex-direction: column; align-items: stretch; gap: 4px; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); box-shadow: var(--shadow); }
  .nav-links .municipality-nav-logo { display: none; }
  .nav-links.is-open { display: flex; }
  .nav-links a { padding: 11px 10px; }
  .nav-cta { text-align: center; }
  .menu-toggle { display: block; }
  .quick-grid { grid-template-columns: repeat(3, 1fr); }
  .oirs-modes { grid-template-columns: 1fr; }
  .oirs-mode { min-height: 0; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .rural-grid { grid-template-columns: repeat(2, 1fr); }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .content-grid, .contact-grid, .intranet-layout { grid-template-columns: 1fr; }
  .facebook-layout { grid-template-columns: 1fr; gap: 32px; }
  .facebook-copy { max-width: 620px; padding-top: 0; }
  .facebook-card { justify-content: center; }
  .director-grid { gap: 45px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .gallery-panel, .gallery-panel-wide { grid-template-columns: 1fr; }
  .gallery-panel-wide .photo-gallery { grid-template-columns: repeat(3, 1fr); }
  .space-card, .space-card-wide { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  .whatsapp-float { right: 16px; bottom: 16px; width: 54px; height: 54px; justify-content: center; padding: 0; }
  .whatsapp-float-label { display: none; }
  .urgent-float { right: 16px; bottom: 82px; }
  .container { width: calc(100% - 28px); }
  .topbar-inner { min-height: 35px; }
  .topbar-inner p:last-child { display: none; }
  .nav { min-height: 72px; display: flex; }
  .brand { min-width: 0; }
  .brand img { width: 155px; }
  .municipality-nav-logo { justify-content: center; padding: 11px 10px; }
  .municipality-nav-logo img { width: 82px; }
  .municipality-hero-logo { bottom: 16px; left: 12px; width: 100px; padding: 7px 9px; border-radius: 12px; }
  .hero, .hero-inner { min-height: 500px; }
  .hero::before { background: linear-gradient(90deg, rgba(5,46,71,.94), rgba(5,46,71,.69)); }
  .hero-slide img { object-position: center 12%; }
  .facebook-embed { height: 560px; }
  h1 { font-size: 3.2rem; }
  .hero p { font-size: .95rem; }
  .quick-wrap { margin-top: -43px; }
  .quick-card { padding: 17px; }
  .quick-heading { display: block; }
  .quick-heading p { margin-top: 5px; }
  .quick-grid { grid-template-columns: 1fr 1fr; }
  .vaccine-section { padding-top: 58px; }
  .vaccine-intro { grid-template-columns: 1fr; gap: 15px; padding: 29px 23px; }
  .vaccine-intro-mark { width: 58px; height: 58px; border-radius: 18px; }
  .vaccine-intro-mark svg { width: 25px; }
  .vaccine-intro-mark .vaccine-intro-vial { width: 24px; }
  .vaccine-lead { font-size: .94rem; }
  .vaccine-alert { align-items: flex-start; border-radius: 15px; line-height: 1.35; }
  .vaccine-audience, .vaccine-benefits, .vaccine-locations { padding: 25px 21px; }
  .vaccine-audience-grid, .vaccine-benefit-grid, .vaccine-location-grid { grid-template-columns: 1fr; }
  .vaccine-location-heading { display: block; }
  .vaccine-location-heading > p { margin-top: 9px; text-align: left; }
  .vaccine-benefit-card { min-height: 0; }
  .vaccine-footer { align-items: flex-start; padding: 15px 21px; }
  .oirs-section { padding-top: 58px; }
  .oirs-panel-heading { align-items: flex-start; flex-direction: column; padding: 25px 21px; }
  .oirs-panel-heading h3 { font-size: 1.45rem; }
  .oirs-mode { padding: 25px 21px; }
  .oirs-footer { align-items: flex-start; flex-direction: column; gap: 13px; padding: 21px; }
  .oirs-footer > strong { white-space: normal; }
  section { padding: 70px 0; }
  .section-heading { grid-template-columns: 1fr; gap: 15px; }
  .section-heading h2 { font-size: 2.35rem; }
  .network-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
  .network-card, .network-card.featured { grid-row: auto; height: 285px; }
  .intro-grid, .callout-inner { grid-template-columns: 1fr; gap: 30px; }
  .director-grid { grid-template-columns: 1fr; }
  .director-portrait { max-width: 500px; margin: 0 auto; }
  .director-copy { max-width: none; }
  .director-badge { right: 18px; }
  .intro-image, .intro-image img { min-height: 350px; }
  .callout-copy { padding: 32px; }
  .callout-image { min-height: 280px; }
  .stats-grid, .facility-grid, .rural-grid { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: 1fr; }
  .rehab-highlights { grid-template-columns: 1fr; }
  .photo-gallery, .gallery-panel-wide .photo-gallery { grid-template-columns: repeat(2, 1fr); }
  .gallery-panel { padding: 18px; }
  .space-card-copy { padding: 22px 20px 15px; }
  .space-card-copy h3 { font-size: 1.35rem; }
  .space-gallery, .space-card:not(.space-card-wide) .space-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 14px 14px; }
  .space-gallery figure, .space-gallery img { min-height: 145px; }
  .facility-card.wide { display: block; grid-column: auto; }
  .facility-card.wide .facility-card-image { min-height: 220px; height: 220px; }
  .page-hero-inner { padding: 65px 0 42px; }
  .page-hero h1 { font-size: 3.1rem; }
  .intranet-hero, .intranet-hero .page-hero-inner { min-height: 330px; }
  .intranet-section { padding-top: 36px; }
  .intranet-status { display: grid; grid-template-columns: auto 1fr; width: 100%; margin-bottom: 19px; border-radius: 15px; }
  .intranet-status-detail { grid-column: 2; padding: 7px 0 0; border: 0; border-top: 1px solid #cbe7dc; }
  .intranet-welcome, .intranet-side { padding: 29px 24px; }
  .intranet-side-icon { margin-bottom: 22px; }
  .intranet-modules { margin-top: 18px; padding: 25px 20px; }
  .intranet-modules-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .intranet-modules-heading > p { text-align: left; }
  .intranet-module-grid { grid-template-columns: 1fr; margin-top: 19px; }
  .intranet-module { min-height: 0; }
  .content-card, .contact-info, .contact-form, .map-card { padding: 24px; }
  .map-heading { align-items: flex-start; flex-direction: column; }
  .map-frame, .map-frame iframe { min-height: 300px; height: 300px; }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .document { align-items: flex-start; flex-direction: column; }
  .schedule-row { align-items: flex-start; flex-direction: column; gap: 4px; }
  .schedule-row span { text-align: left; }
  .triage-card, .triage-card:nth-child(n+3) { grid-column: 1 / -1; }
  .triage-card-top { grid-template-columns: auto 1fr; }
  .triage-card-top b { grid-column: 2; justify-self: start; }
  .footer-grid { grid-template-columns: 1fr; gap: 23px; }
  .footer-bottom { display: block; }
  .footer-bottom span { display: block; margin-top: 6px; }
}

@media (max-width: 1050px) {
  .update-grid, .care-paths { grid-template-columns: 1fr; }
  .triage-card, .triage-card:nth-child(n+3) { grid-column: span 6; }
  .sar-news { grid-template-columns: 1fr; }
  .sar-news-gallery { min-height: 270px; }
  .sar-news-copy { padding: 26px; }
  .update-card { min-height: 0; }
  .territory-layout { grid-template-columns: 1fr; gap: 36px; }
  .territory-photo { min-height: 380px; }
  .official-panel { align-items: flex-start; flex-direction: column; }
  .official-actions { width: 100%; max-width: 320px; flex-basis: auto; }
}

@media (max-width: 700px) {
  .actualidad-hero-inner { padding: 47px 0 43px; }
  .actualidad-hero h1 { font-size: 2.75rem; }
  .actualidad-index-inner { grid-template-columns: 1fr 1fr; }
  .actualidad-index a { min-height: 62px; padding: 13px 11px; border-bottom: 1px solid var(--line); font-size: .72rem; }
  .actualidad-index a:nth-child(odd) { border-left: 1px solid var(--line); }
  .actualidad-feature-section { padding-bottom: 62px; }
  .featured-update { grid-template-columns: 1fr; }
  .sar-news-gallery { grid-template-columns: 1.15fr .85fr; min-height: 215px; padding: 7px; }
  .sar-news-copy { padding: 24px 21px 26px; }
  .sar-news-copy h3 { font-size: 1.85rem; }
  .featured-update-image { min-height: 245px; }
  .featured-update-copy { padding: 31px 25px; }
  .featured-update h3 { font-size: 2rem; }
  .update-grid { margin-top: 13px; }
  .update-card { padding: 24px; }
  .care-path { padding: 25px 20px; }
  .territory-photo { min-height: 330px; }
  .official-panel { gap: 28px; padding: 34px 25px; }
}
