/*
Theme Name: Colegio Institucional V5.23 Elegante
Theme URI: https://example.com/
Author: OpenAI
Description: Tema WordPress institucional para colegios, con slider, noticias, comunicados, ACLES, galería, horarios, documentos, contacto y colores corporativos configurables.
Version: 5.23.0
Requires at least: 5.2
Tested up to: 6.6
Requires PHP: 7.2
License: GPL v2 or later
Text Domain: colegio-institucional
*/
:root{--school-primary:#0b5da8;--school-secondary:#18a46b;--school-accent:#f4b942;--school-dark:#17324d;--school-light:#f4f7fa;--school-white:#fff;--school-text:#263544;--school-muted:#6b7a89;--school-radius:18px;--school-shadow:0 14px 35px rgba(23,50,77,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--school-text);background:#fff;line-height:1.55;font-size:15px}a{color:var(--school-primary);text-decoration:none}a:hover{text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1180px,92%);margin-inline:auto}
.site-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 2px 16px rgba(0,0,0,.08)}.topbar{background:var(--school-dark);color:#fff;font-size:.84rem}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:7px 0;flex-wrap:wrap}.top-contact{display:flex;gap:20px}.brand-row{display:flex;align-items:center;justify-content:flex-start;gap:18px;min-height:90px}.site-branding{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:0;color:inherit;margin-right:auto}.custom-logo-link{display:flex;align-items:center;flex:0 0 auto}.custom-logo{display:block;max-height:66px;max-width:155px;width:auto}.branding-text{display:block;color:inherit;white-space:nowrap}.school-name{display:block;font-size:1.08rem;font-weight:800;color:var(--school-dark);line-height:1.2}.school-tagline{display:block;font-size:.76rem;color:var(--school-muted)}.menu-toggle{display:none;border:0;background:var(--school-primary);color:#fff;padding:10px 13px;border-radius:10px;font-size:1.2rem;cursor:pointer}.primary-nav{flex:0 1 auto;margin-left:auto}.primary-nav ul{display:flex;gap:1px;list-style:none;margin:0;padding:0;align-items:center;justify-content:flex-end;flex-wrap:nowrap;white-space:nowrap}.primary-nav li{position:relative;flex:0 0 auto}.primary-nav a{display:block;color:var(--school-dark);font-weight:700;padding:12px 7px;border-radius:10px;font-size:.90rem;white-space:nowrap}.primary-nav a:hover,.primary-nav .current-menu-item>a{background:color-mix(in srgb,var(--school-primary) 10%,white);color:var(--school-primary)}
.primary-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;border-radius:0 0 12px 12px;box-shadow:0 10px 24px rgba(0,0,0,.12);padding:8px;z-index:1100;white-space:normal}.primary-nav .sub-menu li{width:100%}.primary-nav .sub-menu a{padding:10px 12px;font-size:.84rem;border-radius:8px;white-space:nowrap}.primary-nav .menu-item-has-children:hover>.sub-menu,.primary-nav .menu-item-has-children:focus-within>.sub-menu{display:block}.submenu-arrow{font-size:.72em;margin-left:3px}
.hero{position:relative;overflow:hidden;background:#dfe8ef}.school-slider{position:relative;min-height:590px}.school-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease;background-size:cover;background-position:center;display:flex;align-items:center}.school-slide.active{opacity:1;visibility:visible;z-index:2}.school-slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,31,52,.84) 0%,rgba(10,31,52,.52) 50%,rgba(10,31,52,.12) 78%)}.slide-content{position:relative;z-index:3;color:#fff;width:min(1180px,92%);margin:auto;padding:70px 0}.slide-copy{max-width:700px}.slide-kicker{display:inline-block;background:var(--school-accent);color:#1d2b37;font-weight:800;border-radius:999px;padding:7px 13px;margin-bottom:14px}.slide-content h1{font-size:clamp(2rem,4.6vw,4.25rem);line-height:1.02;margin:0 0 18px;font-weight:900;letter-spacing:-1px}.slide-content p{font-size:1.05rem;max-width:650px;margin:0 0 26px;color:#f1f5f8}.btn{display:inline-block;padding:13px 22px;border-radius:12px;font-weight:800;transition:.2s ease;border:2px solid transparent}.btn-primary{background:var(--school-primary);color:#fff}.btn-primary:hover{filter:brightness(.92);color:#fff}.btn-light{background:#fff;color:var(--school-dark)}.btn-outline{border-color:var(--school-primary);color:var(--school-primary);background:#fff}.btn-outline:hover{background:var(--school-primary);color:#fff}.slider-dots{position:absolute;z-index:5;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.slider-dot{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:transparent;cursor:pointer;padding:0}.slider-dot.active{background:#fff}
.quick-links{margin-top:-42px;position:relative;z-index:10}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.quick-card{background:#fff;border-radius:var(--school-radius);box-shadow:var(--school-shadow);padding:25px;min-height:178px;border-top:5px solid var(--school-primary);display:flex;flex-direction:column;justify-content:center;transition:transform .2s,box-shadow .2s}.quick-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(23,50,77,.16)}.quick-card:nth-child(2){border-color:var(--school-secondary)}.quick-card:nth-child(3){border-color:var(--school-accent)}.quick-card:nth-child(4){border-color:var(--school-dark)}.quick-icon{font-size:2rem;margin-bottom:7px}.quick-card h3{margin:0 0 5px;color:var(--school-dark);font-size:1rem}.quick-card p{margin:0;font-size:.86rem;color:var(--school-muted)}.quick-arrow{font-size:.82rem;font-weight:800;margin-top:10px}
.section{padding:78px 0}.section.alt{background:var(--school-light)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.section-heading>div{max-width:760px}.eyebrow{color:var(--school-primary);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.eyebrow.light{color:#fff}.section-heading h2,.docs-copy h2,.gallery-banner h2{font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.1;color:var(--school-dark);margin:6px 0 0}.heading-copy{max-width:680px;color:var(--school-muted);margin:12px 0 0}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-card{background:#fff;border-radius:var(--school-radius);overflow:hidden;box-shadow:var(--school-shadow);display:flex;flex-direction:column}.news-image{aspect-ratio:16/10;background:linear-gradient(135deg,#d9e3ec,#edf2f6);overflow:hidden;display:flex;align-items:center;justify-content:center}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.news-card:hover .news-image img{transform:scale(1.035)}.card-placeholder{font-size:.78rem;font-weight:900;letter-spacing:.2em;color:#748392}.news-body{padding:22px;display:flex;flex-direction:column;flex:1}.news-date{font-size:.82rem;color:var(--school-muted);font-weight:700}.news-card h3{font-size:1.12rem;line-height:1.25;margin:8px 0 10px;color:var(--school-dark)}.news-card p{margin:0 0 16px;color:var(--school-muted)}.read-more{margin-top:auto;font-weight:800}
.intro-section{padding-top:90px}.welcome-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}.welcome-box{background:linear-gradient(135deg,var(--school-primary),var(--school-dark));color:#fff;padding:42px;border-radius:24px;box-shadow:var(--school-shadow)}.welcome-box h2{margin-top:0;font-size:2.35rem;line-height:1.1}.welcome-box p{color:#edf6ff}.welcome-media{border-radius:24px;min-height:390px;background:linear-gradient(135deg,var(--school-secondary),var(--school-primary));position:relative;overflow:hidden}.welcome-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.image-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:30px}.image-placeholder span{font-size:4rem}.image-placeholder strong{font-size:1.35rem}.image-placeholder small{opacity:.86}
.acle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.acle-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--school-shadow);border:1px solid #edf1f4}.acle-image{height:180px;background:linear-gradient(135deg,var(--school-secondary),var(--school-primary));display:flex;align-items:center;justify-content:center;overflow:hidden;color:#fff;font-size:3rem}.acle-image img{width:100%;height:100%;object-fit:cover}.acle-body{padding:20px}.acle-body h3{margin:0 0 8px;color:var(--school-dark)}.acle-body p{font-size:.91rem;color:var(--school-muted);margin:0 0 14px}.acle-card.demo:nth-child(even) .acle-image{background:linear-gradient(135deg,var(--school-accent),var(--school-secondary))}
.notice-band{margin-top:20px;background:linear-gradient(135deg,var(--school-dark),var(--school-primary));color:#fff}.light-heading h2{color:#fff}.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.notice-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:24px;color:#fff;transition:.2s}.notice-card:hover{background:rgba(255,255,255,.14);transform:translateY(-3px)}.notice-card h3{color:#fff;margin:8px 0;line-height:1.25}.notice-card p{color:#dfe8ef;margin:0 0 14px}.notice-date{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--school-accent)}.notice-more{font-weight:800}
.docs-section{background:#fff}.docs-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.docs-copy p{color:var(--school-muted);max-width:520px}.docs-list{display:grid;gap:12px}.doc-link{display:flex;align-items:center;gap:15px;background:var(--school-light);border-radius:14px;padding:16px 18px;color:var(--school-dark);transition:.2s}.doc-link:hover{transform:translateX(4px);background:#eef4f9}.doc-link>span:nth-child(2){display:flex;flex-direction:column;flex:1}.doc-link small{color:var(--school-muted)}.doc-icon{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:var(--school-primary);color:#fff;font-size:.72rem;font-weight:900}.doc-link b{font-size:1.4rem;color:var(--school-primary)}
.gallery-home{padding-top:0}.gallery-banner{background:linear-gradient(120deg,var(--school-primary),var(--school-secondary));color:#fff;border-radius:26px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:var(--school-shadow)}.gallery-banner>div{max-width:740px}.gallery-banner h2{color:#fff}.gallery-banner p{margin-bottom:0;color:#edf7f6}
.site-main .entry{padding:60px 0}.entry-header h1{font-size:clamp(1.85rem,3.5vw,2.8rem);color:var(--school-dark);margin:0 0 25px}.entry-content{font-size:.98rem}.entry-content table{width:100%;border-collapse:collapse}.entry-content th,.entry-content td{border:1px solid #d9e1e8;padding:12px;text-align:left}.entry-content th{background:var(--school-primary);color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}
.site-footer{background:var(--school-dark);color:#dbe6ef;padding:56px 0 0}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:35px}.site-footer h3{color:#fff;margin-top:0}.site-footer a{color:#fff}.footer-brand p{max-width:320px}.social-links{display:flex;gap:9px;margin-top:18px}.social-links a{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;font-weight:900}.social-links a:hover{background:var(--school-primary)}.footer-bottom{margin-top:38px;border-top:1px solid rgba(255,255,255,.14);padding:18px 0;color:#b9c7d3;font-size:.88rem;display:flex;justify-content:space-between;gap:20px}.notice-empty{background:#fff;border:2px dashed #cbd6df;padding:28px;border-radius:16px;color:var(--school-muted);grid-column:1/-1}
@media(max-width:1120px) and (min-width:951px){.school-name{font-size:1.02rem}.school-tagline{font-size:.74rem}.custom-logo{max-width:125px}.primary-nav a{font-size:.86rem;padding:12px 5px}}
@media(max-width:1050px){.acle-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:950px){.menu-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:12px 4%;box-shadow:0 8px 22px rgba(0,0,0,.09)}.primary-nav.open{display:block}.primary-nav ul{display:block}.primary-nav a{padding:12px}.primary-nav .sub-menu{display:block;position:static;min-width:0;box-shadow:none;border-radius:0;padding:0 0 0 18px;background:#f7f9fb}.primary-nav .sub-menu a{padding:10px 12px;font-size:.9rem}.submenu-arrow{display:none}.quick-grid{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:repeat(2,1fr)}.welcome-grid,.docs-wrap{grid-template-columns:1fr}.notice-grid{grid-template-columns:1fr}.school-slider{min-height:520px}.gallery-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.topbar .container{display:block;text-align:center}.top-contact{justify-content:center;flex-wrap:wrap;gap:6px 16px}.brand-row{min-height:74px}.school-name{font-size:1.03rem}.school-tagline{display:none}.custom-logo{max-height:52px}.school-slider{min-height:500px}.slide-content h1{font-size:2.45rem}.slide-content p{font-size:1rem}.quick-grid,.news-grid,.footer-grid,.acle-grid{grid-template-columns:1fr}.quick-links{margin-top:0;padding-top:18px}.section{padding:55px 0}.section-heading{display:block}.section-heading .btn{margin-top:18px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-bottom{display:block}.gallery-banner{padding:28px}}


/* ===== Páginas internas con barra lateral de widgets ===== */
.internal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:38px;align-items:start}
.internal-layout.has-sidebar{grid-template-columns:minmax(0,2.25fr) minmax(250px,.9fr)}
.internal-content{min-width:0}
.internal-sidebar{min-width:0;display:grid;gap:20px;position:sticky;top:125px}
.internal-widget{background:#fff;border:1px solid #e5ebf0;border-radius:14px;padding:20px;box-shadow:0 8px 24px rgba(23,50,77,.08);font-size:.92rem;overflow:hidden}
.internal-widget .widget-title{margin:0 0 14px;padding:0 0 10px;border-bottom:3px solid var(--school-primary);font-size:1.05rem;line-height:1.25;color:var(--school-dark)}
.internal-widget ul{list-style:none;margin:0;padding:0}
.internal-widget li{padding:8px 0;border-bottom:1px solid #edf1f4}
.internal-widget li:last-child{border-bottom:0}
.internal-widget p:last-child{margin-bottom:0}
.internal-widget img{border-radius:10px}
.internal-widget input[type="search"],.internal-widget input[type="text"],.internal-widget input[type="email"],.internal-widget select{width:100%;max-width:100%;padding:10px 11px;border:1px solid #ccd6df;border-radius:8px;font:inherit}
.internal-widget button,.internal-widget input[type="submit"]{border:0;background:var(--school-primary);color:#fff;border-radius:8px;padding:10px 14px;font-weight:700;cursor:pointer}
.single-featured-image{border-radius:16px;margin-bottom:24px;width:100%;height:auto;display:block}
.entry-content h2{font-size:1.55rem}.entry-content h3{font-size:1.25rem}.entry-content h4{font-size:1.08rem}
@media(max-width:900px){.internal-layout.has-sidebar{grid-template-columns:1fr}.internal-sidebar{position:static;top:auto}}


/* ===== Carrusel de noticias de inicio ===== */
.home-news-section{overflow:hidden}
.news-heading{align-items:center}
.news-carousel-wrap{position:relative}
.news-carousel{display:flex;gap:24px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:4px 2px 22px;scrollbar-width:none;-ms-overflow-style:none}
.news-carousel::-webkit-scrollbar{display:none}
.news-carousel .news-card{flex:0 0 calc((100% - 48px)/3);min-width:0;scroll-snap-align:start}
.news-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border:0;border-radius:50%;background:#fff;color:var(--school-dark);box-shadow:0 8px 24px rgba(23,50,77,.20);font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;transition:.2s}
.news-carousel-btn:hover{background:var(--school-primary);color:#fff}
.news-carousel-btn:disabled{opacity:.35;cursor:default}
.news-prev{left:-23px}.news-next{right:-23px}
.news-mobile-more{display:none;text-align:center;margin-top:6px}
@media(max-width:950px){.news-carousel .news-card{flex-basis:calc((100% - 24px)/2)}.news-prev{left:-12px}.news-next{right:-12px}}
@media(max-width:640px){.news-heading .news-view-all{display:none}.news-carousel{gap:16px;padding-left:2px;padding-right:2px}.news-carousel .news-card{flex-basis:88%}.news-carousel-btn{width:40px;height:40px;font-size:1.7rem}.news-prev{left:2px}.news-next{right:2px}.news-mobile-more{display:block}}

/* ===== Resumen breve de noticias en inicio ===== */
.home-news-section .news-card .news-body > p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  line-clamp:3;
  max-height:calc(1.55em * 3);
  line-height:1.55;
  text-overflow:ellipsis;
}


/* ===== V5 Rediseño elegante institucional ===== */
body{font-family:"Inter",Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#f7f9fc 0,#ffffff 18%,#ffffff 100%);color:#314252;font-size:15px;letter-spacing:.01em}
h1,h2,h3,h4,h5,h6,.school-name,.primary-nav a,.btn,.section .eyebrow{font-family:"Montserrat",Arial,Helvetica,sans-serif}
p{line-height:1.72}
.site-header{background:rgba(255,255,255,.96);backdrop-filter:saturate(160%) blur(8px);box-shadow:0 6px 24px rgba(19,40,61,.08)}
.topbar{background:linear-gradient(90deg,var(--school-dark),color-mix(in srgb,var(--school-dark) 62%, var(--school-primary) 38%))}
.brand-row{min-height:96px;padding:8px 0}
.school-name{font-size:1.18rem;letter-spacing:.01em}.school-tagline{font-size:.78rem;letter-spacing:.02em}
.primary-nav a{font-size:.96rem;font-weight:700;padding:12px 10px;border-radius:999px}
.primary-nav a:hover,.primary-nav .current-menu-item>a{background:color-mix(in srgb,var(--school-primary) 11%,white);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--school-primary) 14%, white)}
.primary-nav .sub-menu{border-radius:16px;top:calc(100% + 10px);box-shadow:0 18px 42px rgba(23,50,77,.18);border:1px solid #edf2f7}
.primary-nav .sub-menu a{font-size:.85rem}
.hero{background:linear-gradient(180deg,#edf3f8 0%,#ffffff 100%)}
.school-slider{min-height:640px}
.school-slide::before{background:linear-gradient(90deg,rgba(11,29,49,.76) 0%,rgba(13,36,60,.58) 46%,rgba(10,31,52,.15) 82%)}
.slide-content{padding:88px 0}.slide-copy{max-width:760px}
.slide-kicker{padding:8px 14px;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 22px rgba(0,0,0,.12)}
.slide-content h1{font-size:clamp(2.35rem,5vw,4.8rem);line-height:.98;margin-bottom:18px}
.slide-content p{font-size:1.08rem;max-width:620px;color:#eef4f8}
.btn{padding:13px 24px;border-radius:999px;box-shadow:0 10px 24px rgba(18,39,58,.08)}
.btn-primary{background:linear-gradient(135deg,var(--school-primary),color-mix(in srgb,var(--school-primary) 72%, var(--school-dark) 28%))}
.btn-light{box-shadow:0 14px 30px rgba(0,0,0,.12)}
.quick-links{margin-top:-56px}.quick-grid{gap:18px}.quick-card{border-top:0;border:1px solid #ebf0f4;border-radius:22px;padding:28px 24px;min-height:190px;box-shadow:0 18px 40px rgba(23,50,77,.10)}
.quick-card:hover{transform:translateY(-7px);box-shadow:0 22px 46px rgba(23,50,77,.14)}
.quick-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--school-primary) 12%, white),color-mix(in srgb,var(--school-secondary) 9%, white));font-size:1.8rem;margin-bottom:16px}
.quick-card:nth-child(2) .quick-icon{background:linear-gradient(135deg,color-mix(in srgb,var(--school-secondary) 12%, white),#fff)}
.quick-card:nth-child(3) .quick-icon{background:linear-gradient(135deg,color-mix(in srgb,var(--school-accent) 18%, white),#fff)}
.quick-card:nth-child(4) .quick-icon{background:linear-gradient(135deg,color-mix(in srgb,var(--school-dark) 10%, white),#fff)}
.quick-card h3{font-size:1.06rem;margin-bottom:7px}.quick-card p{font-size:.9rem;line-height:1.62}.quick-arrow{margin-top:16px;color:var(--school-primary)}
.section{padding:92px 0}.section.alt{background:linear-gradient(180deg,#f8fafc 0,#f3f6fa 100%)}
.section-heading{margin-bottom:36px}.section-heading h2,.docs-copy h2,.gallery-banner h2{font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.02em}
.heading-copy{font-size:1rem}
.notice-band{margin-top:40px;background:transparent}.notice-band .container{background:linear-gradient(135deg,var(--school-dark),color-mix(in srgb,var(--school-primary) 60%, var(--school-dark) 40%));border-radius:30px;padding:42px 38px;box-shadow:0 24px 55px rgba(16,34,53,.18)}
.notice-grid{gap:20px}.notice-card{border-radius:20px;padding:25px;background:rgba(255,255,255,.10);backdrop-filter:blur(2px)}
.notice-card h3{font-size:1.12rem}.notice-card p{font-size:.95rem}
.home-news-section .container,.acles-section .container,.docs-section .container{position:relative}
.news-card{border:1px solid #ebf0f4;border-radius:24px;box-shadow:0 18px 38px rgba(23,50,77,.08)}
.news-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(23,50,77,.12)}
.news-image{aspect-ratio:16/9}.news-body{padding:22px 22px 24px}.news-card h3{font-size:1.08rem;line-height:1.32}.news-date{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--school-primary)}
.news-carousel-btn{background:#fff;border:1px solid #ebf0f4;width:50px;height:50px}
.acle-card{border:1px solid #ebf0f4;border-radius:22px;box-shadow:0 18px 38px rgba(23,50,77,.08)}
.acle-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(23,50,77,.12)}
.acle-image{height:205px}.acle-body{padding:22px}.acle-body h3{font-size:1.08rem}
.gallery-home{padding-top:18px}.gallery-banner{border-radius:30px;padding:46px;background:linear-gradient(120deg,color-mix(in srgb,var(--school-primary) 92%, white),color-mix(in srgb,var(--school-secondary) 82%, white));box-shadow:0 22px 50px rgba(23,50,77,.14)}
.docs-section{background:#fff}.docs-wrap{gap:56px}.docs-copy p{font-size:1rem;line-height:1.72}.docs-list{gap:14px}.doc-link{padding:18px 20px;border-radius:18px;border:1px solid #ecf1f5;box-shadow:0 10px 24px rgba(23,50,77,.05)}
.doc-link:hover{transform:translateX(6px) translateY(-2px);box-shadow:0 16px 30px rgba(23,50,77,.09)}
.doc-icon{border-radius:14px;width:52px;height:52px}
.site-main .entry{padding:72px 0}.entry-header h1{font-size:clamp(2rem,3.6vw,3.15rem);letter-spacing:-.02em}
.entry-content{font-size:1rem;line-height:1.78}.internal-widget{border-radius:18px;border:1px solid #e8eef4;box-shadow:0 14px 30px rgba(23,50,77,.07)}
.internal-widget .widget-title{font-size:1.08rem}
.site-footer{margin-top:32px;background:linear-gradient(180deg,var(--school-dark),#0f2235);padding-top:70px}.footer-grid{gap:40px}.site-footer h3{font-size:1.05rem;margin-bottom:14px}.footer-brand p,.site-footer p,.site-footer a{color:#d9e6ef;line-height:1.72}.social-links a{border-radius:12px}.footer-bottom{margin-top:44px;padding:20px 0}
@media(max-width:1120px) and (min-width:951px){.primary-nav a{font-size:.89rem;padding:11px 6px}.school-slider{min-height:600px}}
@media(max-width:950px){.brand-row{min-height:84px}.primary-nav{border-top:1px solid #eef2f6;border-radius:0 0 20px 20px}.primary-nav a{font-size:.95rem;padding:12px 14px;border-radius:12px}.section{padding:72px 0}.quick-links{margin-top:-28px}.notice-band .container{padding:30px 22px}}
@media(max-width:640px){body{font-size:14.5px}.slide-content{padding:70px 0 78px}.school-slider{min-height:530px}.slide-content h1{font-size:2.65rem}.quick-card{min-height:unset}.notice-band .container,.gallery-banner{border-radius:24px;padding:26px}.section{padding:58px 0}}


/* ===== V5.1 Flechas suaves del slider ===== */
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.42);background:rgba(13,35,56,.28);color:#fff;font-size:2.2rem;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(5px);box-shadow:0 10px 25px rgba(0,0,0,.10);transition:background .2s ease,transform .2s ease,opacity .2s ease;opacity:.82}
.slider-arrow:hover{background:rgba(13,35,56,.48);transform:translateY(-50%) scale(1.05);opacity:1}
.slider-prev{left:26px}.slider-next{right:26px}
@media(max-width:640px){.slider-arrow{width:44px;height:44px;font-size:1.9rem}.slider-prev{left:12px}.slider-next{right:12px}}


/* ===== V5.2 Comunicados con imagen y enlace configurable ===== */
.notice-grid{align-items:stretch}
.notice-card{overflow:hidden;position:relative;display:flex;flex-direction:column;min-height:255px;padding:0}
.notice-content{display:flex;flex-direction:column;flex:1;padding:24px;position:relative;z-index:2}
.notice-image{display:block;height:180px;overflow:hidden;background:rgba(255,255,255,.08)}
.notice-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.notice-card:hover .notice-image img{transform:scale(1.04)}
.notice-style-card.has-image{background:#fff;color:var(--school-dark);border-color:rgba(255,255,255,.45)}
.notice-style-card.has-image .notice-content{background:#fff}
.notice-style-card.has-image h3{color:var(--school-dark)}
.notice-style-card.has-image p{color:var(--school-muted)}
.notice-style-card.has-image .notice-date{color:var(--school-primary)}
.notice-style-card.has-image .notice-more{color:var(--school-primary)}
.notice-style-overlay{background-size:cover;background-position:center;justify-content:flex-end;min-height:330px}
.notice-style-overlay .notice-content{justify-content:flex-end;background:linear-gradient(180deg,transparent 0%,rgba(8,24,40,.12) 35%,rgba(8,24,40,.62) 100%)}
.notice-style-overlay h3{font-size:1.25rem;text-shadow:0 2px 12px rgba(0,0,0,.18)}
.notice-style-overlay p{color:#eef5fa}
.notice-style-overlay .notice-more{color:#fff}
.notice-card.no-image{padding:24px}
.notice-card.no-image .notice-content{padding:0}
@media(max-width:950px){.notice-style-overlay{min-height:300px}.notice-image{height:210px}}


/* ===== V5.3 Banners de Comunicados ===== */
.notice-band .section-heading{margin-bottom:24px}
.notice-banner-grid{display:grid;gap:18px}.notice-banner-grid.count-1{grid-template-columns:1fr}.notice-banner-grid.count-2{grid-template-columns:repeat(2,1fr)}.notice-banner-grid.count-3{grid-template-columns:repeat(3,1fr)}
.notice-banner,.notice-banner:focus{display:block;border-radius:22px;overflow:hidden;box-shadow:0 18px 38px rgba(8,24,40,.16);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.notice-banner img{display:block;width:100%;height:auto;aspect-ratio:16/6;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.notice-banner:hover img{transform:scale(1.03);filter:brightness(1.02)}
.notice-banner-carousel{position:relative}.notice-banner-track{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 10px}.notice-banner-track::-webkit-scrollbar{display:none}.notice-banner-item{flex:0 0 calc((100% - 36px)/3);min-width:0}
.notice-banner-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--school-dark);box-shadow:0 10px 24px rgba(10,25,42,.22);font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;transition:.2s}.notice-banner-btn:hover{background:#fff;color:var(--school-primary)}.notice-banner-btn:disabled{opacity:.35;cursor:default}.notice-banner-prev{left:-24px}.notice-banner-next{right:-24px}
.notice-banner-empty{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.2)}
@media(max-width:950px){.notice-banner-grid.count-2,.notice-banner-grid.count-3{grid-template-columns:1fr 1fr}.notice-banner-item{flex-basis:calc((100% - 18px)/2)}.notice-banner-prev{left:-10px}.notice-banner-next{right:-10px}}
@media(max-width:640px){.notice-banner-grid.count-2,.notice-banner-grid.count-3{grid-template-columns:1fr}.notice-banner img{aspect-ratio:16/7}.notice-banner-item{flex-basis:88%}.notice-banner-btn{width:40px;height:40px;font-size:1.7rem}.notice-banner-prev{left:2px}.notice-banner-next{right:2px}}


/* ===== V5.4 Banners independientes sin deformación ===== */
.notice-banner-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;justify-items:start}
.notice-banner-grid.count-1,.notice-banner-grid.count-2,.notice-banner-grid.count-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.notice-banner{width:auto;max-width:100%;align-self:start;justify-self:start;background:transparent}
.notice-banner img{width:auto;max-width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:left top}
.notice-banner-track{align-items:flex-start}.notice-banner-item{display:flex;align-items:flex-start;justify-content:flex-start}
.notice-banner-item .notice-banner{width:auto;max-width:100%}
@media(max-width:950px){.notice-banner-grid.count-1,.notice-banner-grid.count-2,.notice-banner-grid.count-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.notice-banner-grid.count-1,.notice-banner-grid.count-2,.notice-banner-grid.count-3{grid-template-columns:1fr}.notice-banner{justify-self:start}.notice-banner img{aspect-ratio:auto}}


/* ===== V5.6 Gestor de Documentos ===== */
.document-library{margin-top:28px}.document-filters{display:grid;grid-template-columns:1.35fr .85fr auto;gap:14px;align-items:end;background:#f7f9fc;border:1px solid #e7edf3;border-radius:18px;padding:18px;margin-bottom:26px}.document-filters label{display:block;font-size:.82rem;font-weight:800;color:var(--school-dark);margin-bottom:6px}.document-filters input,.document-filters select{width:100%;padding:11px 12px;border:1px solid #ccd7e1;border-radius:10px;background:#fff;font:inherit}.document-filter-actions{display:flex;gap:8px}.document-filter-actions .btn{padding:10px 16px;white-space:nowrap}.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.document-card{display:grid;grid-template-columns:78px 1fr;background:#fff;border:1px solid #e7edf3;border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(23,50,77,.07)}.document-type{display:grid;place-items:center;background:linear-gradient(160deg,var(--school-primary),var(--school-dark));color:#fff;font-family:"Montserrat",Arial,sans-serif;font-weight:800;font-size:.82rem;letter-spacing:.06em;padding:14px}.document-card-body{padding:18px}.document-cat{font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--school-primary);font-weight:800;margin-bottom:5px}.document-card h3{font-size:1.04rem;margin:0 0 8px;color:var(--school-dark)}.document-card p{font-size:.9rem;color:var(--school-muted);margin:0 0 10px}.document-meta{font-size:.78rem;color:var(--school-muted);margin-bottom:14px}.document-actions{display:flex;gap:8px;flex-wrap:wrap}.document-actions .btn{padding:9px 14px;font-size:.82rem}.document-pagination{display:flex;gap:7px;justify-content:center;margin-top:26px}.document-pagination a{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid #d8e1e9;background:#fff;color:var(--school-dark);font-weight:800}.document-pagination a.current,.document-pagination a:hover{background:var(--school-primary);color:#fff;border-color:var(--school-primary)}
@media(max-width:900px){.document-filters{grid-template-columns:1fr 1fr}.document-filter-actions{grid-column:1/-1}.document-grid{grid-template-columns:1fr}}
@media(max-width:600px){.document-filters{grid-template-columns:1fr}.document-filter-actions{grid-column:auto;flex-wrap:wrap}.document-card{grid-template-columns:64px 1fr}.document-actions .btn{width:100%;text-align:center}}


/* ===== V5.8 Gestor por carpetas y subcarpetas ===== */
.document-search-only{grid-template-columns:minmax(0,1fr) auto}.document-breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 24px;padding:12px 16px;background:#fff;border:1px solid #e7edf3;border-radius:14px;font-size:.86rem}.document-breadcrumbs a{font-weight:700}.document-breadcrumbs span{color:#94a3b0}.document-breadcrumbs strong{color:var(--school-dark)}
.document-folder-heading,.document-files-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:28px 0 18px}.document-folder-heading h2,.document-files-heading h2{font-size:1.55rem;margin:4px 0 0;color:var(--school-dark)}
.document-folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:34px}.document-folder-card{display:grid;grid-template-columns:54px minmax(0,1fr) 22px;align-items:center;gap:14px;padding:20px;background:#fff;border:1px solid #e7edf3;border-radius:18px;box-shadow:0 12px 28px rgba(23,50,77,.06);color:var(--school-dark);transition:.2s}.document-folder-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(23,50,77,.10);border-color:color-mix(in srgb,var(--school-primary) 28%,#e7edf3)}.document-folder-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:color-mix(in srgb,var(--school-primary) 9%,#fff);font-size:1.7rem}.document-folder-copy{display:flex;flex-direction:column;min-width:0}.document-folder-copy strong{font-family:"Montserrat",Arial,sans-serif;font-size:1rem}.document-folder-copy small{margin-top:4px;color:var(--school-muted);line-height:1.45}.document-folder-copy em{margin-top:7px;color:var(--school-primary);font-size:.76rem;font-style:normal;font-weight:800}.document-folder-arrow{font-size:1.8rem;color:var(--school-primary)}
@media(max-width:950px){.document-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.document-search-only{grid-template-columns:1fr}.document-folder-grid{grid-template-columns:1fr}.document-folder-heading,.document-files-heading{align-items:flex-start;flex-direction:column}.document-files-heading .btn{width:100%;text-align:center}}


/* ===== V5.9 Calendario de Actividades ===== */
.calendar-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.calendar-card{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #e8eef4;border-radius:20px;padding:20px;box-shadow:0 14px 30px rgba(23,50,77,.07);transition:.2s}.calendar-card:hover{transform:translateY(-4px);box-shadow:0 20px 38px rgba(23,50,77,.11)}.calendar-date{width:76px;min-width:76px;height:76px;border-radius:18px;background:linear-gradient(135deg,var(--school-primary),var(--school-secondary));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.calendar-date strong{font-family:"Montserrat",Arial,sans-serif;font-size:1.75rem;line-height:1}.calendar-date span{font-size:.72rem;font-weight:800;letter-spacing:.08em;margin-top:5px}.calendar-info h3{margin:0 0 6px;color:var(--school-dark);font-size:1.05rem}.calendar-info p{margin:0;color:var(--school-muted);font-size:.9rem}.calendar-archive-grid{display:grid;gap:18px}.calendar-archive-card{display:flex;gap:20px;align-items:flex-start;background:#fff;border:1px solid #e8eef4;border-radius:20px;padding:22px;box-shadow:0 12px 28px rgba(23,50,77,.06)}.calendar-archive-card h2{margin:0 0 6px;font-size:1.2rem}.calendar-archive-card p{margin:0 0 8px;color:var(--school-muted)}@media(max-width:760px){.calendar-grid{grid-template-columns:1fr}.calendar-card{padding:16px}.calendar-date{width:66px;min-width:66px;height:66px}.calendar-date strong{font-size:1.5rem}}


/* ===== V5.10 Calendario mensual en Inicio ===== */
.calendar-home{overflow:hidden}.calendar-heading-row{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.calendar-heading-row h2{font-family:"Montserrat",Arial,sans-serif;font-size:clamp(2rem,3.6vw,3rem);line-height:1.1;color:var(--school-dark);margin:6px 0 0;letter-spacing:-.02em}.calendar-actions{flex:0 0 auto}.month-calendar{background:#fff;border:1px solid #e8eef4;border-radius:28px;box-shadow:0 20px 48px rgba(23,50,77,.09);overflow:hidden}.month-calendar-toolbar{display:grid;grid-template-columns:48px 1fr 48px auto;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid #e9eff4;background:linear-gradient(180deg,#fff,#fbfcfe)}.month-nav{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--school-light);color:var(--school-dark);font-size:1.8rem;font-weight:700;transition:.2s}.month-nav:hover{background:var(--school-primary);color:#fff}.month-calendar-title{text-align:center;display:flex;justify-content:center;align-items:baseline;gap:10px}.month-calendar-title strong{font-family:"Montserrat",Arial,sans-serif;font-size:1.35rem;color:var(--school-dark);text-transform:capitalize}.month-calendar-title span{font-weight:700;color:var(--school-muted)}.month-today{justify-self:end;padding:9px 15px;border-radius:999px;background:color-mix(in srgb,var(--school-primary) 9%,white);color:var(--school-primary);font-weight:800;font-size:.84rem}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays{background:#f7f9fc;border-bottom:1px solid #e9eff4}.month-weekdays span{text-align:center;padding:11px 4px;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--school-muted);border-right:1px solid #e9eff4}.month-weekdays span:last-child{border-right:0}.month-day{min-height:142px;padding:9px;border-right:1px solid #e9eff4;border-bottom:1px solid #e9eff4;background:#fff;min-width:0}.month-day:nth-child(7n){border-right:0}.month-day.is-empty{background:#fafbfd}.month-day-number{display:flex;justify-content:flex-end;margin-bottom:7px}.month-day-number span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;font-size:.84rem;font-weight:800;color:var(--school-dark)}.month-day.is-today .month-day-number span{background:var(--school-primary);color:#fff}.month-day.has-events{background:linear-gradient(180deg,#fff 0%,color-mix(in srgb,var(--school-primary) 2%,white) 100%)}.month-day-events{display:grid;gap:5px}.month-event{display:block;min-width:0;padding:6px 7px;border-radius:9px;background:color-mix(in srgb,var(--school-primary) 10%,white);border-left:3px solid var(--school-primary);color:var(--school-dark);line-height:1.2;transition:.15s}.month-event:hover{background:color-mix(in srgb,var(--school-primary) 16%,white)}.month-event small{display:block;font-size:.64rem;color:var(--school-primary);font-weight:800;margin-bottom:2px}.month-event span{display:block;font-size:.72rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-more{font-size:.68rem;font-weight:800;color:var(--school-primary);padding:2px 5px}.calendar-full-btn{white-space:nowrap}
@media(max-width:900px){.month-day{min-height:116px;padding:6px}.month-event{padding:5px}.month-event span{font-size:.66rem}.month-event small{font-size:.6rem}}
@media(max-width:700px){.calendar-heading-row{display:block}.calendar-actions{margin-top:16px}.month-calendar{border-radius:22px;overflow-x:auto}.month-calendar-toolbar{position:sticky;left:0;min-width:650px;grid-template-columns:44px 1fr 44px auto;padding:14px 16px}.month-weekdays,.month-grid{min-width:650px}.month-day{min-height:96px;padding:5px}.month-day-number{margin-bottom:4px}.month-day-number span{width:25px;height:25px;font-size:.76rem}.month-event{padding:4px 5px;border-left-width:2px}.month-event small{display:none}.month-event span{font-size:.62rem}.month-weekdays span{font-size:.68rem;padding:8px 3px}.month-calendar-title strong{font-size:1.1rem}.month-calendar-title span{font-size:.86rem}.month-today{font-size:.76rem;padding:8px 12px}}


/* ===== V5.11 Calendario compacto en inicio ===== */
.compact-calendar-heading{align-items:center;margin-bottom:26px}.compact-calendar-shell{display:grid;grid-template-columns:minmax(320px,410px) minmax(0,1fr);gap:28px;align-items:stretch}.compact-calendar-card,.compact-calendar-detail{background:#fff;border:1px solid #e8eef4;border-radius:24px;box-shadow:0 18px 42px rgba(23,50,77,.08)}.compact-calendar-card{padding:18px}.compact-calendar-toolbar{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin-bottom:14px}.compact-month-nav{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f4f7fa;color:var(--school-dark);font-size:1.45rem;font-weight:800}.compact-month-nav:hover{background:var(--school-primary);color:#fff}.compact-month-title{text-align:center;display:flex;justify-content:center;gap:7px;align-items:baseline}.compact-month-title strong{font-family:"Montserrat",Arial,sans-serif;font-size:1rem;color:var(--school-dark);text-transform:capitalize}.compact-month-title span{font-size:.78rem;font-weight:700;color:var(--school-muted)}.compact-weekdays,.compact-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.compact-weekdays{margin-bottom:5px}.compact-weekdays span{text-align:center;font-size:.66rem;font-weight:800;color:var(--school-muted);padding:4px 0}.compact-day{appearance:none;border:0;background:transparent;aspect-ratio:1/1;border-radius:11px;display:grid;place-items:center;position:relative;font:700 .76rem/1 "Inter",Arial,sans-serif;color:var(--school-dark);cursor:pointer;padding:0}.compact-day:hover{background:#f3f7fa}.compact-day.empty{pointer-events:none}.compact-day.is-today{box-shadow:inset 0 0 0 1.5px var(--school-primary)}.compact-day.is-selected{background:var(--school-primary);color:#fff}.compact-day i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--school-accent);bottom:5px}.compact-day.is-selected i{background:#fff}.compact-calendar-detail{padding:24px;min-height:320px;display:flex;align-items:stretch}.compact-day-panel{display:none;width:100%}.compact-day-panel.active{display:block}.compact-detail-date{display:flex;align-items:baseline;gap:9px;padding-bottom:14px;border-bottom:1px solid #edf1f4;margin-bottom:14px}.compact-detail-date strong{font-family:"Montserrat",Arial,sans-serif;font-size:2rem;color:var(--school-primary);line-height:1}.compact-detail-date span{font-weight:800;color:var(--school-dark);text-transform:capitalize}.compact-event-list{display:grid;gap:10px}.compact-event{display:block;padding:12px 14px;border-radius:14px;background:#f7f9fc;border-left:3px solid var(--school-primary);color:var(--school-dark)}.compact-event:hover{background:#f0f5f9}.compact-event strong{display:block;font-size:.91rem}.compact-event small{display:block;margin-top:4px;color:var(--school-muted);font-size:.76rem}.compact-no-events{color:var(--school-muted);margin:4px 0}.calendar-full-btn{white-space:nowrap}
@media(max-width:850px){.compact-calendar-shell{grid-template-columns:1fr}.compact-calendar-card{max-width:440px;width:100%;margin:0 auto}.compact-calendar-detail{min-height:unset}.compact-calendar-heading{align-items:flex-start}}
@media(max-width:640px){.compact-calendar-heading{display:block}.compact-calendar-heading .calendar-full-btn{margin-top:14px}.compact-calendar-card{padding:14px;border-radius:20px}.compact-calendar-detail{padding:18px;border-radius:20px}.compact-day{font-size:.72rem;border-radius:9px}.compact-day i{bottom:4px}.compact-detail-date strong{font-size:1.7rem}}


/* ===== V5.12 Actividades simples del calendario ===== */
.compact-event{cursor:default}.compact-event p{margin:8px 0 0;color:var(--school-muted);font-size:.79rem;line-height:1.5}.compact-event:hover{background:#f7f9fc}
.month-event{cursor:default}.month-event em{display:block;margin-top:3px;font-size:.62rem;font-style:normal;color:var(--school-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-event:hover{background:color-mix(in srgb,var(--school-primary) 10%,white)}

/* V5.13 - descripción visible en calendario completo */
.full-calendar-view .month-event-description{margin:4px 0 3px;font-size:.74rem;line-height:1.35;color:var(--school-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.full-calendar-view .month-event span{font-weight:800;display:block}
.full-calendar-view .month-event em{display:block;margin-top:4px;font-size:.72rem}


/* ===== V5.14 Documentos aleatorios en Inicio ===== */
.docs-random-list .doc-link small{display:block;margin-top:3px}.docs-empty-home{padding:22px;border:1px dashed #ccd6df;border-radius:16px;background:var(--school-light);color:var(--school-muted);text-align:center}


/* ===== V5.15 Accesos rápidos configurables ===== */
.quick-grid{display:block}
.quick-grid-inner{display:grid;gap:20px;align-items:stretch}
.quick-grid-inner.count-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.quick-grid-inner.count-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:930px;margin:0 auto}
.quick-grid-inner.count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px;margin:0 auto}
.quick-grid-inner.count-1{grid-template-columns:minmax(280px,460px);justify-content:center}
.quick-card{text-align:center;align-items:center;justify-content:flex-start;padding:32px 24px 28px;min-height:220px}
.quick-icon{width:76px;height:76px;border-radius:24px;font-size:2.35rem;margin:0 auto 18px;box-shadow:0 12px 26px rgba(23,50,77,.10)}
.quick-card h3{font-size:1.13rem;margin:0 0 8px}.quick-card p{font-size:.91rem;max-width:260px}.quick-arrow{margin-top:auto;padding-top:18px}
@media(max-width:950px){.quick-grid-inner.count-4,.quick-grid-inner.count-3{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.quick-grid-inner.count-2{max-width:none}}
@media(max-width:640px){.quick-grid-inner.count-4,.quick-grid-inner.count-3,.quick-grid-inner.count-2,.quick-grid-inner.count-1{grid-template-columns:1fr;max-width:none}.quick-card{min-height:unset}.quick-icon{width:68px;height:68px;font-size:2.05rem}}


/* ===== V5.16 Huincha de Noticias ===== */
.news-ticker{display:flex;align-items:stretch;background:linear-gradient(90deg,var(--news-ticker-bg),color-mix(in srgb,var(--news-ticker-bg) 76%,var(--school-dark) 24%));color:#fff;border-top:1px solid color-mix(in srgb,var(--news-ticker-bg) 85%,#fff 15%);overflow:hidden;min-height:40px}
.news-ticker-label{flex:0 0 auto;display:flex;align-items:center;padding:0 18px;background:var(--school-dark);font-family:"Montserrat",Arial,sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.news-ticker-window{position:relative;flex:1;min-width:0;overflow:hidden;display:flex;align-items:center}
.news-ticker-track{display:flex;align-items:center;width:max-content;min-width:max-content;animation:colegiov516Ticker 38s linear infinite;will-change:transform}
.news-ticker-window:hover .news-ticker-track{animation-play-state:paused}
.news-ticker-item{display:inline-flex;align-items:center;gap:10px;padding:0 24px;min-height:40px;color:#fff;font-size:.86rem;font-weight:600;white-space:nowrap}
.news-ticker-item:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.news-ticker-dot{width:5px;height:5px;border-radius:50%;background:var(--school-accent);flex:0 0 auto}
@keyframes colegiov516Ticker{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.news-ticker-track{animation:none;transform:none}.news-ticker-window{overflow-x:auto;scrollbar-width:none}.news-ticker-window::-webkit-scrollbar{display:none}}
@media(max-width:640px){.news-ticker{min-height:36px}.news-ticker-label{padding:0 12px;font-size:.68rem}.news-ticker-item{min-height:36px;padding:0 18px;font-size:.78rem}.news-ticker-track{animation-duration:45s}}


/* V5.23: título del slider más compacto */
.slide-content h1{font-size:clamp(1.9rem,3.8vw,3.75rem);line-height:1.04;max-width:760px}
@media(max-width:640px){.slide-content h1{font-size:2.15rem;line-height:1.06}}
