:root{--navy:#172b45;--navy2:#203851;--red:#a80b2c;--red-dark:#8e0824;--ink:#17263f;--muted:#667388;--line:#e6ebf1;--surface:#f5f7fa;--white:#fff;--container:1190px;--shadow:0 5px 21px rgba(28,50,75,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}button,input{font:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #186bb8;outline-offset:3px}img{max-width:100%;display:block}.wrap{max-width:var(--container);width:calc(100% - 52px);margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;top:-100px;left:15px;background:#fff;color:var(--navy);padding:12px 18px;z-index:50}.skip-link:focus{top:10px}.prototype-bar{background:#f4f6fa;border-bottom:1px solid #dde4ed;color:#475a72;font-size:11px}.prototype-bar .wrap{display:flex;align-items:center;gap:12px;min-height:28px}.prototype-bar a{margin-left:auto;text-decoration:underline}.prototype-pill{font-weight:750;letter-spacing:.08em;color:#8e1130}.site-header{background:#fff;position:relative;z-index:10;box-shadow:0 2px 9px rgba(24,42,62,.055)}.head-main{min-height:81px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;flex:none}.brand:hover{text-decoration:none}.brand-mark{height:59px;width:52px;display:grid;place-items:center;background:#f8edf0;border:2px solid #c1a7b0;border-radius:6px;position:relative;color:var(--red);font-family:Georgia,serif;font-size:30px;font-weight:bold}.brand-mark:before{content:"";position:absolute;top:-7px;width:27px;height:6px;border-radius:7px 7px 0 0;background:#d3af51}.brand-name span{display:block;font-size:11px;font-weight:750;letter-spacing:.075em}.brand-name strong{display:block;font-size:28px;letter-spacing:.045em;line-height:1.05;color:var(--navy)}.header-right{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}.utility-links{display:flex;align-items:center;justify-content:flex-end;gap:22px;width:100%;font-size:11px;font-weight:600}.utility-links a:hover{color:var(--red)}.search-top{display:flex;align-items:center;gap:8px;border-bottom:1px solid #d4dce5;min-width:180px;max-width:225px;flex:1}.search-top svg{height:18px;width:18px;fill:none;stroke:var(--navy);stroke-width:2}.search-top input{min-width:0;border:0;outline:0;background:transparent;width:100%;padding:8px 2px;font-size:12px}.search-top input:focus-visible{outline:2px solid #186bb8;outline-offset:1px}.search-top button{font-size:0;border:0;background:none;padding:4px;cursor:pointer}.search-top button:before{content:"→";font-size:17px;color:var(--red)}.my-folder{background:var(--red);color:white;padding:12px 20px;font-size:12px;font-weight:700;transition:background .2s}.my-folder:hover{background:var(--red-dark);text-decoration:none}.main-nav{border-top:1px solid #f0f2f5}.nav-inner{display:flex;justify-content:flex-end;align-items:stretch;gap:31px;min-height:44px}.nav-home,.nav-direct,.nav-group summary{display:flex;align-items:center;font-weight:760;text-transform:uppercase;font-size:11px;letter-spacing:.01em;cursor:pointer;white-space:nowrap;min-height:43px}.nav-home:hover,.nav-direct:hover,.nav-group summary:hover{color:var(--red);text-decoration:none}.nav-group{position:relative}.nav-group summary{list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:"⌄";font-size:16px;line-height:1;padding-left:6px;font-weight:400}.nav-group[open] summary{color:var(--red)}.dropdown{position:absolute;top:100%;left:-18px;min-width:245px;box-shadow:0 13px 30px rgba(21,43,70,.16);background:#fff;border-top:3px solid var(--red);padding:10px 0;border-radius:0 0 8px 8px;z-index:20}.nav-group-wide .dropdown{min-width:275px}.dropdown a{display:block;padding:10px 17px;color:var(--ink);font-weight:600;font-size:12px}.dropdown a:hover{background:#f8f0f2;color:var(--red);text-decoration:none}.mobile-toggle{display:none}.hero{height:375px;background-image:linear-gradient(90deg,rgba(9,25,44,.78) 0%,rgba(11,35,54,.48) 39%,rgba(8,31,53,.10) 87%),url('assets/paisaje-conceptual.jpg');background-size:cover;background-position:center 47%;position:relative;color:#fff}.hero-content{position:relative;padding-top:62px;height:100%}.eyebrow{display:flex;align-items:center;gap:11px;letter-spacing:.155em;font-weight:700;font-size:11px;color:var(--navy2)}.eyebrow>span{height:2px;background:var(--red);width:25px;display:block;flex:none}.eyebrow.light{font-size:12px;color:#f3f6fa;font-weight:500;letter-spacing:.18em}.eyebrow.light>span{background:#fff}.hero h1{font-size:clamp(43px,4.4vw,65px);letter-spacing:-.033em;font-weight:800;line-height:1.02;margin:18px 0 13px;max-width:590px}.hero p{font-size:17px;line-height:1.45;margin:0 0 22px;text-shadow:0 1px 4px #1b2f44}.button{display:inline-flex;align-items:center;gap:13px;border-radius:7px;padding:12px 21px;font-weight:650;transition:transform .2s,background .2s}.button:hover{text-decoration:none;transform:translateY(-2px)}.button-red{background:var(--red);color:#fff}.button-red:hover{background:var(--red-dark)}.hero-photo-note{position:absolute;left:0;bottom:10px;font-size:10px;color:#fff;background:rgba(14,26,37,.49);padding:4px 8px;border-radius:3px}.hero-service{position:absolute;right:max(26px,calc((100% - var(--container))/2));top:38px;display:flex;align-items:center;gap:10px;color:white;border-radius:11px;padding:12px 18px;background:rgba(25,53,83,.55);backdrop-filter:blur(4px)}.hero-service strong,.hero-service small{display:block}.hero-service strong{font-size:14px}.hero-service small{font-size:11px;opacity:.9}.mini-icon{font-size:25px;color:#f8c94a}.quick-access{background:#fff;box-shadow:0 5px 22px rgba(19,41,66,.055)}.quick-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;padding:22px 0}.quick-link{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:740;line-height:1.35;min-width:0}.quick-link:hover{color:var(--red);text-decoration:none}.quick-link b{font-weight:500}.quick-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:13px;flex:none}.quick-icon svg{height:29px;width:29px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.rose{background:#fbe8e9;color:#b10d2e}.blue{background:#e5eeff;color:#1356c7}.green{background:#e2f4e7;color:#158339}.amber{background:#fff3d7;color:#c9870b}.violet{background:#eee8ff;color:#5e37c6}.news-area{display:grid;grid-template-columns:minmax(0,1fr) 326px;gap:20px;padding-top:30px;padding-bottom:28px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:18px}.section-top h2,.aside-head h2{margin:5px 0 0;font-size:25px;letter-spacing:-.025em;line-height:1.2}.section-more{font-size:12px;color:var(--red);font-weight:700;white-space:nowrap;margin-bottom:3px}.section-more:hover,.read-more:hover{color:var(--red-dark)}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.news-card{border:1px solid #e7eaf0;border-radius:7px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0}.news-card img{width:100%;height:140px;object-fit:cover}.news-card a:hover img{filter:brightness(.96)}.news-body{display:flex;flex-direction:column;align-items:flex-start;padding:12px 13px 14px;flex:1}.news-body time{font-size:10px;color:#596d87;letter-spacing:.05em;font-weight:700}.news-body h3{font-size:15px;line-height:1.22;margin:6px 0 10px;font-weight:760;letter-spacing:-.015em}.news-body p{color:#59687f;font-size:11.5px;line-height:1.5;margin:0 0 22px}.read-more{font-size:12px;color:var(--red);margin-top:auto;font-weight:750}.section-disclaimer{font-size:10px;margin:9px 0 0;color:#7a8597}.agenda-panel{background:#f7f8fa;border-radius:8px;padding:22px 22px 17px;min-height:386px;display:flex;flex-direction:column}.aside-head{display:flex;justify-content:space-between;gap:8px;align-items:start}.aside-head h2{font-size:22px;white-space:nowrap}.aside-head>a{color:var(--red);font-size:10px;font-weight:700;white-space:nowrap;margin-top:6px}.agenda-empty{text-align:center;margin:auto 0;padding:22px 8px}.agenda-empty-icon{margin:auto auto 12px;border-radius:13px;background:#e7eaf0;color:#445a74;font-size:34px;width:63px;height:63px;display:grid;place-items:center}.agenda-empty h3{font-size:15px;line-height:1.3;margin:0 0 8px}.agenda-empty p{font-size:12px;color:#5f6d81;margin:0 0 14px}.agenda-empty>a{font-size:12px;font-weight:760;color:var(--red)}.aside-bottom{border-top:1px solid #e0e5ec;padding-top:12px;font-size:11px;color:#67758a}.aside-bottom strong{font-size:11px;color:#334a64}.aside-bottom p{margin:3px 0}.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.topic{position:relative;isolation:isolate;min-height:158px;display:flex;align-items:center;gap:16px;padding:22px 28px;color:#fff;overflow:hidden}.topic:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(10,24,38,.70),rgba(10,24,38,.28)),var(--topic-image);background-size:cover;background-position:center;z-index:-1;transition:transform .3s}.topic:hover{text-decoration:none}.topic:hover:before{transform:scale(1.06)}.topic-symbol{font-size:39px;min-width:35px;font-weight:300}.topic strong{font-size:18px;display:block;line-height:1.2}.topic small{border:1px solid rgba(255,255,255,.92);border-radius:6px;padding:6px 11px;display:inline-block;font-size:11px;font-weight:600;margin-top:15px}.site-footer{background:var(--navy2);color:#fff}.footer-info{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 0}.footer-detail{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.45}.footer-detail strong,.footer-detail a,.footer-detail span>span{display:block}.footer-detail strong{font-weight:700}.footer-symbol{font-size:30px}.footer-right{align-items:flex-start;flex-direction:column;gap:3px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px 0 16px;border-top:1px solid rgba(255,255,255,.15);color:#ccd8e4;font-size:11px}.footer-bottom a:hover,.footer-detail a:hover{color:#fff}.page-view{min-height:570px;background:linear-gradient(180deg,#f6f8fb,#fff 65%)}.page-banner{background:#203952;padding:39px 0;color:#fff}.page-banner .wrap{display:flex;flex-direction:column;gap:8px}.breadcrumb{font-size:12px;color:#cedbe6}.breadcrumb a{text-decoration:underline}.page-banner h1{font-size:38px;margin:0;line-height:1.2;letter-spacing:-.03em}.page-banner p{max-width:690px;color:#e5edf6;margin:0;font-size:15px}.page-content{padding:34px 0 65px}.page-lead{font-size:15px;color:#495b70;max-width:770px;margin:0 0 24px}.page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.info-card{background:#fff;border-radius:9px;box-shadow:0 4px 17px rgba(13,35,59,.065);border:1px solid #e4eaf1;padding:23px;min-height:150px}.info-card .card-tag{font-size:10px;color:var(--red);letter-spacing:.11em;text-transform:uppercase;font-weight:750}.info-card h2,.info-card h3{font-size:17px;line-height:1.3;margin:7px 0 8px}.info-card p{font-size:12px;color:#56697c;margin:0 0 15px}.info-card a{font-size:12px;color:var(--red);font-weight:760}.info-card a:hover{text-decoration:underline}.page-section-heading{font-size:23px;margin:34px 0 17px}.link-list{background:#fff;border:1px solid #e2e9ef;border-radius:9px;max-width:830px;overflow:hidden}.link-list a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 20px;border-bottom:1px solid #e9edf2;font-weight:660}.link-list a:last-child{border-bottom:0}.link-list a:hover{background:#f8fafc;text-decoration:none;color:var(--red)}.info-box{border-left:4px solid #ce9b28;background:#fff8e8;padding:17px 20px;border-radius:4px;font-size:13px;max-width:900px;margin-bottom:22px;color:#51482e}.info-box p{margin:4px 0 0}.result-count{color:#5c6b7c;font-size:13px}.search-results{margin-top:20px}.backtop{position:fixed;right:17px;bottom:17px;background:var(--red);color:#fff;border:0;border-radius:100%;height:42px;width:42px;cursor:pointer;z-index:20;box-shadow:0 5px 16px #15283c33}
@media(max-width:1160px){.nav-inner{gap:19px}.quick-grid{gap:9px}.quick-link{gap:8px;font-size:11px}.quick-icon{height:50px;width:50px}.topic{padding:18px}.news-area{grid-template-columns:minmax(0,1fr) 295px}.agenda-panel{padding:20px 16px}.aside-head h2{font-size:20px}}
@media(max-width:950px){.utility-links{gap:12px}.header-right{gap:9px}.nav-inner{justify-content:space-between;gap:11px}.nav-home,.nav-direct,.nav-group summary{font-size:10px}.brand-name strong{font-size:24px}.quick-grid{grid-template-columns:repeat(3,1fr);gap:15px}.news-area{display:block}.agenda-panel{margin-top:22px;min-height:240px}.agenda-empty{padding:10px}.topic{gap:10px;min-height:165px}.topic strong{font-size:16px}.footer-info{flex-wrap:wrap}.footer-detail{flex:1 1 38%}.footer-right{align-items:flex-start}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.prototype-bar .wrap{gap:7px;flex-wrap:wrap;padding:6px 0;font-size:10px}.prototype-bar a{display:none}.site-header{position:relative}.head-main{min-height:76px}.brand-mark{height:51px;width:43px;font-size:26px}.brand-name span{font-size:9px}.brand-name strong{font-size:23px}.header-right{display:none}.mobile-toggle{display:flex;align-items:center;gap:7px;border:1px solid #cbd5df;background:#fff;color:var(--navy);border-radius:6px;padding:8px;font-size:12px;font-weight:760;cursor:pointer}.mobile-toggle span:first-child{font-size:18px}.main-nav{display:none;border-top:1px solid #e3e8ee}.main-nav.is-open{display:block}.nav-inner{width:100%;display:block;padding:5px 16px 12px}.nav-home,.nav-direct,.nav-group summary{font-size:13px;padding:12px 3px;min-height:44px;border-bottom:1px solid #edf1f5;justify-content:space-between}.dropdown{position:static;box-shadow:none;border-top:0;border-left:3px solid var(--red);border-radius:0;margin:3px 0 9px 9px;padding:0;background:#f9fafc}.dropdown a{font-size:12px;padding:11px}.hero{height:430px;background-position:55% center}.hero-content{padding-top:68px}.hero h1{font-size:47px}.hero p{font-size:15px}.hero-service{right:15px;top:14px;padding:7px 10px}.hero-service .mini-icon{font-size:17px}.hero-service strong{font-size:10px}.hero-service small{display:none}.hero-photo-note{font-size:9px;max-width:90%}.quick-grid{grid-template-columns:repeat(2,1fr);gap:9px;padding:18px 0}.quick-link{font-size:12px;padding:5px 0;gap:9px}.quick-icon{height:46px;width:46px;border-radius:10px}.quick-icon svg{height:25px;width:25px}.news-area{padding-top:26px}.section-top{align-items:start}.section-top h2{font-size:24px}.section-more{font-size:11px;white-space:normal;text-align:right}.news-grid{grid-template-columns:1fr}.news-card{display:grid;grid-template-columns:38% 1fr;min-height:160px}.news-card>a{height:100%}.news-card img{height:100%;min-height:160px}.news-body{padding:13px}.news-body h3{font-size:14px}.news-body p{margin:0 0 10px}.agenda-panel{margin-top:24px}.topic-grid{grid-template-columns:repeat(2,1fr)}.topic{min-height:180px;align-items:end}.topic-symbol{display:none}.topic strong{font-size:18px}.topic small{margin-top:11px}.footer-info{display:grid;grid-template-columns:1fr;gap:16px}.footer-detail{font-size:12px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.page-banner{padding:31px 0}.page-banner h1{font-size:30px}.page-grid{grid-template-columns:1fr}.page-content{padding:26px 0 45px}}
@media(max-width:420px){.hero h1{font-size:41px}.hero{height:407px}.news-card{grid-template-columns:34% 1fr}.news-card img{min-height:183px}.news-body h3{font-size:13px}.topic{min-height:155px;padding:14px}.topic strong{font-size:16px}.topic small{font-size:10px;padding:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.search-mobile{display:none}
@media(max-width:700px){.search-mobile{display:block;padding:10px 0 16px;border-bottom:1px solid #e9edf2}.search-mobile label{font-size:12px;font-weight:700;color:var(--navy)}.search-mobile>div{display:flex;gap:8px;margin-top:6px}.search-mobile input{min-width:0;flex:1;border:1px solid #bac8d5;border-radius:5px;padding:10px;font-size:14px}.search-mobile button{border:0;border-radius:5px;background:var(--red);color:white;padding:10px 13px;font-weight:700}}

/* ============================================================
   Librilla · revisión visual V1.1
   Composición ampliada, portada panorámica y paneles sin texto
   incrustado en las fotografías. Se mantiene la arquitectura V1.
   ============================================================ */
:root { --container: 1460px; --shadow: 0 8px 26px rgba(28,50,75,.075); }
body { font-size: 16px; }
.wrap { width: calc(100% - 88px); }
.prototype-bar { font-size: 12px; }
.prototype-bar .wrap { min-height: 30px; }
.head-main { min-height: 91px; }
.brand-mark { width: 58px; height: 66px; }
.brand-name span { font-size: 11px; }
.brand-name strong { font-size: 30px; }
.utility-links { font-size: 12px; }
.search-top input { font-size: 13px; }
.my-folder { font-size: 13px; padding: 14px 22px; }
.nav-inner { justify-content: space-between; gap: 22px; min-height: 53px; }
.nav-home,.nav-direct,.nav-group summary { font-size: 12px; min-height: 52px; }
.dropdown a { font-size: 13px; }
.hero {
  height: clamp(425px, 29vw, 485px);
  background-image:linear-gradient(90deg,rgba(9,25,44,.74) 0%,rgba(11,35,54,.40) 36%,rgba(8,31,53,.08) 80%),url('assets/paisaje-panoramico.jpg');
  background-position:center center;
  background-size:cover;
}
.hero-content { padding-top: clamp(66px, 5vw, 88px); }
.eyebrow.light { font-size: 13px; }
.hero h1 { font-size: clamp(58px, 5.2vw, 79px); margin: 22px 0 14px; max-width: 710px; }
.hero p { font-size: 19px; line-height: 1.48; margin-bottom: 24px; }
.button { font-size: 15px; padding: 14px 23px; }
.hero-photo-note { left:auto; right:0; bottom:12px; font-size:11px; max-width: 250px; line-height: 1.3; }
.hero-service { top:40px; right:max(44px,calc((100% - var(--container))/2)); padding: 14px 20px; }
.hero-service strong { font-size:15px; }
.hero-service small { font-size: 12px; }
.quick-grid { gap:22px; padding:28px 0; }
.quick-link { gap:14px; font-size:14px; }
.quick-icon { width:65px; height:65px; border-radius:15px; }
.quick-icon svg { height:31px; width:31px; }
.news-area { grid-template-columns: minmax(0,1fr) 355px; gap:26px; padding-top:42px; padding-bottom:34px; }
.section-top { margin-bottom:20px; }
.section-top h2 { font-size:31px; }
.aside-head h2 { font-size:26px; }
.section-more { font-size:13px; }
.news-grid { gap:20px; }
.news-card img { height:185px; }
.news-body { padding:16px 17px 19px; }
.news-body time { font-size:11px; }
.news-body h3 { font-size:18px; line-height:1.27; margin:9px 0 12px; }
.news-body p { font-size:13px; line-height:1.6; margin-bottom:25px; }
.read-more { font-size:13px; }
.section-disclaimer { font-size:11px; margin-top:13px; }
.agenda-panel { min-height:476px; padding:27px 25px 22px; }
.aside-head>a { font-size:12px; }
.agenda-empty h3 { font-size:17px; }
.agenda-empty p { font-size:13px; }
.agenda-empty>a { font-size:13px; }
.aside-bottom { font-size:12px; }
.aside-bottom strong { font-size:12px; }
.topic { min-height:211px; gap:20px; padding:32px; }
.topic:before { background-image:linear-gradient(90deg,rgba(9,25,42,.72),rgba(8,23,39,.32)),var(--topic-image); }
.topic-symbol { font-size:43px; }
.topic strong { font-size:22px; }
.topic small { margin-top:17px; padding:8px 13px; font-size:13px; }
.footer-info { padding:28px 0; }
.footer-detail { font-size:13px; }
.footer-bottom { font-size:12px; padding:14px 0 18px; }
.page-grid { gap:19px; }
.info-card { padding:26px; }
.info-card h2, .info-card h3 { font-size:20px; }
.info-card p,.info-card a { font-size:14px; }
@media (max-width:1250px) {
  .wrap { width:calc(100% - 56px); }
  .quick-grid { gap:12px; }
  .quick-link { gap:10px; font-size:12px; }
  .quick-icon { width:54px; height:54px; }
  .news-area { grid-template-columns:minmax(0,1fr) 320px; gap:18px; }
  .news-card img { height:160px; }
  .news-body h3 { font-size:16px; }
  .topic { gap:10px; padding:20px; }
  .topic strong { font-size:19px; }
  .topic-symbol { font-size:35px; }
}
@media (max-width:1000px) {
  .nav-inner { gap:9px; }
  .nav-home,.nav-direct,.nav-group summary { font-size:10px; }
  .news-area { display:block; }
  .agenda-panel { margin-top:27px; min-height:240px; }
  .quick-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
  .topic { min-height:175px; padding:16px; }
  .topic small { font-size:11px; }
}
@media (max-width:700px) {
  .wrap { width:calc(100% - 32px); }
  .prototype-bar .wrap { min-height:30px; }
  .head-main { min-height:76px; }
  .brand-mark { height:51px; width:43px; }
  .brand-name span { font-size:9px; }
  .brand-name strong { font-size:23px; }
  .nav-inner { width:100%; }
  .nav-home,.nav-direct,.nav-group summary { font-size:13px; }
  .hero {
    height:480px;
    background-image:linear-gradient(90deg,rgba(9,25,44,.80) 0%,rgba(11,35,54,.42) 76%,rgba(8,31,53,.20) 100%),url('assets/paisaje-conceptual.jpg');
    background-position:55% 52%;
  }
  .hero-content { padding-top:105px; }
  .hero h1 { font-size:clamp(44px,10vw,57px); margin:18px 0 15px; }
  .hero p { font-size:16px; }
  .hero-service { top:17px; right:16px; padding:8px 11px; }
  .hero-service strong { font-size:11px; }
  .hero-photo-note { bottom:10px; right:16px; font-size:10px; text-align:right; max-width:220px; }
  .quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 8px; padding:20px 0; }
  .quick-link { font-size:12px; }
  .quick-icon { width:48px; height:48px; }
  .news-area { padding-top:30px; }
  .section-top h2 { font-size:26px; }
  .section-more { font-size:11px; }
  .news-grid { grid-template-columns:1fr; gap:15px; }
  .news-card { display:flex; flex-direction:column; }
  .news-card>a { height:auto; }
  .news-card img { height:195px; min-height:0; width:100%; }
  .news-body { padding:16px; }
  .news-body h3 { font-size:18px; }
  .news-body p { font-size:13px; }
  .agenda-panel { margin-top:23px; }
  .agenda-empty h3 { font-size:16px; }
  .topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .topic { min-height:190px; align-items:flex-end; padding:17px; }
  .topic-symbol { display:none; }
  .topic strong { font-size:19px; }
  .topic small { font-size:11px; padding:7px 9px; }
  .footer-info { padding:24px 0; }
  .footer-detail { font-size:13px; }
  .page-grid { grid-template-columns:1fr; }
}
@media (max-width:390px) {
  .hero h1 { font-size:43px; }
  .quick-link { font-size:11px; }
  .quick-icon { height:44px; width:44px; }
  .topic { padding:13px; }
  .topic strong { font-size:17px; }
  .topic small { font-size:10px; }
}

/* V1.2: Escudo de Librilla suministrado, rasterizado del SVG original para evitar DTD/entidades XML. */
.brand-mark { height:76px; width:51px; border:0; border-radius:0; background:transparent; display:flex; align-items:center; justify-content:center; position:static; flex:none; }
.brand-mark::before { content:none; display:none; }
.brand-crest { display:block; object-fit:contain; object-position:center; width:auto; height:74px; max-width:51px; }
.brand { gap:15px; }
@media (max-width:700px) {
  .brand-mark { height:59px; width:39px; }
  .brand-crest { height:58px; max-width:39px; }
  .brand { gap:10px; }
}

/* V1.2.1: Iconografia vectorial coherente para los cuatro bloques tematicos. */
.topic-symbol {
  display: inline-flex;
  width: 42px;
  min-width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  font-size: 0;
  flex-shrink: 0;
}
.topic-symbol svg {
  display: block;
  width: 38px;
  height: 38px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 1250px) {
  .topic-symbol { width: 35px; min-width: 35px; height: 35px; }
  .topic-symbol svg { width: 32px; height: 32px; }
}
@media (max-width: 700px) {
  .topic { flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 10px; }
  .topic-symbol { display: inline-flex; width: 30px; min-width: 30px; height: 30px; }
  .topic-symbol svg { width: 27px; height: 27px; }
}
@media (max-width: 390px) {
  .topic { gap: 7px; }
  .topic-symbol { width: 26px; min-width: 26px; height: 26px; }
  .topic-symbol svg { width: 24px; height: 24px; }
}
