@import url('https://fonts.googleapis.com/css2?family=Readex+Pro:wght@160..700&display=swap');
html, body {  height: 100%; } 
body {font-family: "Readex Pro", sans-serif; font-optical-sizing: auto; font-weight: 300; font-style: normal;color:var(--color-marino);font-size:1.25rem !important;}
.readex-pro {font-family: "Readex Pro", sans-serif;font-optical-sizing: auto;font-style: normal;font-variation-settings: "HEXP" 0;
}
.fw-100{font-weight: 100 !important; } .fw-200{font-weight: 200 !important; } .fw-300{font-weight: 300 !important; }  .fw-400{font-weight: 400}  .fw-500{ font-weight:500 !important; } .fw-600{font-weight: 600 !important; } .fw-700{font-weight: 700 !important; }.fw-800{font-weight: 800 !important; }
a {color: #000; text-decoration: none; transition: all .2s ease-in-out;  -moz-transition: all .2s ease-in-out;  -webkit-transition: all .2s ease-in-out;  -o-transition: all .2s ease-in-out;} .z-1{ z-index: 1} .z-2{z-index: 2} .zinstitucional-download-link-0{ z-index: -1}
.letter-s{letter-spacing: 0.05em;}.letter-xs{letter-spacing: 0.02em;} .lh-75{line-height: .75rem;} .lh-initial{line-height: initial;}.fs-min{ font-size: .75rem}.fs-min2{ font-size: .85rem} 
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem;}
.pt-6 { padding-top: 4rem !important;}
.ps-md-6 { padding-left: 5rem !important;} .ps-6 { padding-left: 4.5rem;}
.lh-xs {  line-height: 1.12 !important;}
.bg-bordeau{background: var(--color-bordeau);} .rounded-16{border-radius: 16px}
.bg-marino{background: var(--color-marino);}
.ico-mirror { transform: scaleX(-1); display: inline-block; }
.text-marino{color:var(--color-marino);}
.text_balance { text-wrap: balance;}
.text-bordeau{ color: var(--color-bordeau);}
/***************************************************** Font Awesome Free 5.15.1 */
.sr-only { border: 0;clip: rect(0, 0, 0, 0);height: 1px;margin: -1px; overflow: hidden;padding: 0;position: absolute; width: 1px; }
.sr-only-focusable:active, .sr-only-focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static;width: auto; }
@font-face {font-family: 'Font Awesome 5 Brands'; font-style: normal;font-weight: 400;font-display: block; src: url("assets/fonts/fa-brands-400.eot"); src: url("assets/fonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("assets/fonts/fa-brands-400.woff2") format("woff2"), url("assets/fonts/fa-brands-400.woff") format("woff"), url("assets/fonts/fa-brands-400.ttf") format("truetype"), url("assets/fonts/fa-brands-400.svg#fontawesome") format("svg"); }

.fab { font-family: 'Font Awesome 5 Brands'; font-weight: 400; }
@font-face {font-family: 'Font Awesome 5 Free'; font-style: normal;font-weight: 400;font-display: block;src: url("assets/fonts/fa-regular-400.eot"); src: url("assets/fonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("assets/fonts/fa-regular-400.woff2") format("woff2"), url("assets/fonts/fa-regular-400.woff") format("woff"), url("assets/fonts/fa-regular-400.ttf") format("truetype"), url("assets/fonts/fa-regular-400.svg#fontawesome") format("svg"); }

.far { font-family: 'Font Awesome 5 Free';font-weight: 400; }
@font-face { font-family: 'Font Awesome 5 Free';font-style: normal;font-weight: 900;font-display: block;src: url("assets/fonts/fa-solid-900.eot");src: url("assets/fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("assets/fonts/fa-solid-900.woff2") format("woff2"), url("assets/fonts/fa-solid-900.woff") format("woff"), url("assets/fonts/fa-solid-900.ttf") format("truetype"), url("assets/fonts/fa-solid-900.svg#fontawesome") format("svg"); }
.fa,.fas { font-family: 'Font Awesome 5 Free'; font-weight: 900; }
/*Pro - 900 */
@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:900;font-display:block;src:url(assets/fonts/pro/fa-solid-900.eot);src:url(assets/fonts/pro/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(assets/fonts/pro/fa-solid-900.woff2) format("woff2"),url(assets/fonts/pro/fa-solid-900.woff) format("woff"),url(assets/fonts/pro/fa-solid-900.ttf) format("truetype"),url(assets/fonts/pro/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Pro";font-weight:900}
/* Pro - 400 */
@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:400;font-display:block;src:url(assets/fonts/pro/fa-regular-400.eot);src:url(assets/fonts/pro/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(assets/fonts/pro/fa-regular-400.woff2) format("woff2"),url(assets/fonts/pro/fa-regular-400.woff) format("woff"),url(assets/fonts/pro/fa-regular-400.ttf) format("truetype"),url(assets/fonts/pro/fa-regular-400.svg#fontawesome) format("svg")}.far-pro{font-family:"Font Awesome 5 Pro";font-weight:400;display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1;} .fa-hourglass-half::before { content: "\f252";} 
.fa-times-circle::before { content: "\f057";}
/* Pro 300*/
@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:300;font-display:block;src:url(assets/fonts/pro/fa-light-300.eot);src:url(assets/fonts/pro/fa-light-300.eot?#iefix) format("embedded-opentype"),url(assets/fonts/pro/fa-light-300.woff2) format("woff2"),url(assets/fonts/pro/fa-light-300.woff) format("woff"),url(assets/fonts/pro/fa-light-300.ttf) format("truetype"),url(assets/fonts/pro/fa-light-300.svg#fontawesome) format("svg")}.fal{font-family:"Font Awesome 5 Pro";font-weight:300}
.fa-exclamation-circle::before { content: "\f06a";}
/* Duo*/
@font-face{font-family:"Font Awesome 5 Duotone";font-style:normal;font-weight:900;font-display:block;src:url(assets/fonts/duo/fa-duotone-900.eot);src:url(assets/fonts/duo/fa-duotone-900.eot?#iefix) format("embedded-opentype"),url(assets/fonts/duo/fa-duotone-900.woff2) format("woff2"),url(assets/fonts/duo/fa-duotone-900.woff) format("woff"),url(assets/fonts/duo/fa-duotone-900.ttf) format("truetype"),url(assets/fonts/duo/fa-duotone-900.svg#fontawesome) format("svg")}.fad{position:relative;font-family:"Font Awesome 5 Duotone";font-weight:900}.fad:before{position:absolute;color:var(--fa-primary-color,inherit);opacity:1;opacity:var(--fa-primary-opacity,1)}.fad:after{color:var(--fa-secondary-color,inherit)}
.fad.fa-chevron-circle-right::after { content: "\10f138";color: rgba(255,255,255,.25);}.fa-chevron-circle-right::before { content: "\f138";}
/**/
.fa,.fas,.far,.fal,.fad,.fab {-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;display: inline-block;font-style: normal;font-variant: normal;text-rendering: auto;line-height: 1; }
.fa-lg {font-size: 1.33333em;line-height: 0.75em;vertical-align: -.0667em; }
.fa-xxs {font-size: .5em;}
.fa-xs { font-size: .75em; }.fa-sm { font-size: .875em; }.fa-1x {font-size: 1.2em; }.fa-2x { font-size: 2em; }.fa-3x {font-size: 3em; }.fa-4x { font-size: 4em; }.fa-5x { font-size: 5em; }.fa-6x { font-size: 6em; }.fa-7x {font-size: 7em; }.fa-8x { font-size: 8em; }.fa-9x {font-size: 9em; }.fa-10x { font-size: 10em; }.fa-fw {text-align: center; width: 1.25em; }.fa-ul {list-style-type: none; margin-left: 2.5em; padding-left: 0; }.fa-ul > li { position: relative; }.fa-li {left: -2em; position: absolute;text-align: center;width: 2em;line-height: inherit; }.fa-border { border: solid 0.08em #eee; border-radius: .1em; padding: .2em .25em .15em; }.fa-pull-left {float: left; }.fa-pull-right {float: right; }.fa.fa-pull-left,.fas.fa-pull-left,.far.fa-pull-left,.fal.fa-pull-left,.fab.fa-pull-left { margin-right: .3em; }.fa.fa-pull-right,.fas.fa-pull-right,.far.fa-pull-right,.fal.fa-pull-right,.fab.fa-pull-right { margin-left: .3em; }
.fa-h_small{ height: 1.5em} .fs-20{font-size: 20px;}
.fa-grip-lines:before{content:"\f7a4"} .fa-bars:before{content:"\f0c9"}.fa-facebook:before {content: "\f09a"; }  .fa-twitter:before {content: "\f099"; }  .fa-youtube:before {content: "\f167"; }  .fa-instagram:before {content: "\f16d"; } .fa-envelope:before {content: "\f0e0"; }.fa-chevron-left:before{content:"\f053"} .fa-chevron-right:before {content: "\f054"; }.fa-linkedin-in:before{content:"\f0e1"} .fa-arrow-right:before { content: "\f061"; }
.fa-times:before{content:"\f00d"}.fa-chevron-down:before{content:"\f078"}  .fa-heart:before{content:"\f004"} .fa-user::before {content: "\f007";}.fa-file-download::before { content: "\f56d";} .fa-whatsapp::before { content: "\f232";}.fa-phone-alt::before {  content: "\f879";} .fa-hand-point-right::before {content: "\f0a4";}
.fa-info-circle::before { content: "\f05a";} .fa-plus-circle::before { content: "\f055";} .fa-minus-circle::before {content: "\f056";} .fa-thumbs-up::before {content: "\f164";}
.fa-check::before { content: "\f00c";}.fa-phone::before { content: "\f095";}.fa-map-marker-alt::before { content: "\f3c5";} .fa-envelope::before { content: "\f0e0";} .fa-shopping-cart::before { content: "\f07a";} .fa-users::before { content: "\f0c0";}
.fa-user-friends::before {content: "\f500";}.fa-play-circle::before { content: "\f144";} .fa-folder-open::before { content: "\f07c";} .fa-smile-wink::before { content: "\f4da";} .fa-comment-lines::before { content: "\f4b0";} .fa-head-side-brain::before {content: "\f808";}  .fa-clipboard-list-check::before {content: "\f737";} .fa-search::before { content: "\f002";}.fa-plus::before { content: "\f067";} .fa-video::before {content: "\f03d";} .fa-play::before { content: "\f04b";} .fa-hands-heart::before { content: "\f4c3";}

:root{
    --color-bordeau:#9A1315;
    --color-marino:#002639; 
    }


/***************************************************** Nav */
.topbar-pattern{ background-color:#fff; background-image: url("assets/img/pattern-top.png");  background-repeat: repeat;}
.h-logo{ max-height: 200px; }
/* Links */
.main-nav .nav-link{ color:var(--color-marino); font-weight:300; text-decoration:none;}
/*#nav-dks li:first-child a { padding-left: 0;} #nav-dks li:last-child a {padding-right: 0;} */
#nav-dks .nav-link {position: relative; transition: color .3s ease; font-size: 1.2rem}
/* Línea base */
#nav-dks .nav-link::after { content: "";position: absolute;left: 50%;bottom: -6px;width: 0;height: 3px;background-color:#002639;border-radius: 4px; transform: translateX(-50%); transition: width .35s ease, background-color .35s ease;}
#nav-dks .nav-link:hover::after {width: 100%;}

/* Social icons */
.social-ico{font-size:2rem; }.social-ico:hover{ opacity:.75; color: var(--color-bordeau);}
/* Offcanvas*/
.navbar-toggler-icon.negroSVG { background-image: none !important;}
.navbar-toggler:focus { box-shadow: none !important;}
.navbar-toggler-icon svg { transition: transform .25s ease; transform-origin: 50% 50%; }
.navbar-toggler-icon.rotate svg { transform: rotate(90deg); }
.logo-max-h{max-height: 50px;}
/* =========================
   OFFCANVAS
   ========================= */
.offcanvas { will-change: transform; transition: transform .45s cubic-bezier(.16, 1, .3, 1); background: rgba(255,255,255,.92); backdrop-filter: blur(10px); }
#myOffcanvas { --bs-offcanvas-width: min(86vw, 340px); color:var(--color-marino); }
.offcanvas-backdrop { transition: opacity .35s ease; }
.offcanvas-backdrop.show { opacity: .5; }
#myOffcanvas .offcanvas-header { border-bottom: 1px solid rgba(0,38,57,.12); }
#myOffcanvas .offcanvas-title { color: var(--color-marino); font-weight: 600; }
#myOffcanvas .offcanvas-body .nav-link { opacity: 0; transform: translateX(-12px); transition: opacity .38s ease, transform .38s ease, color .2s ease, padding-left .2s ease; }
#myOffcanvas.show .offcanvas-body .nav-link { opacity: 1; transform: translateX(0); }
#myOffcanvas.show .offcanvas-body .nav-item:nth-child(1) .nav-link { transition-delay: .06s; }
#myOffcanvas.show .offcanvas-body .nav-item:nth-child(2) .nav-link { transition-delay: .12s; }
#myOffcanvas.show .offcanvas-body .nav-item:nth-child(3) .nav-link { transition-delay: .18s; }
#myOffcanvas.show .offcanvas-body .nav-item:nth-child(4) .nav-link { transition-delay: .24s; }
#myOffcanvas.show .offcanvas-body .nav-item:nth-child(5) .nav-link { transition-delay: .30s; }
#myOffcanvas .navbar-nav .nav-link { color: var(--color-marino); font-size: 1.35rem; font-weight: 500; line-height: 1.1; padding: .85rem 0; border-bottom: 1px solid rgba(0,38,57,.10); }
#myOffcanvas .navbar-nav .nav-link:hover { color: var(--color-bordeau); padding-left: .35rem; }
#myOffcanvas .offcanvas-body .social-ico { opacity: 0; transform: translateY(8px); transition: opacity .4s ease .36s, transform .4s ease .36s, background .2s ease, color .2s ease; }
#myOffcanvas.show .offcanvas-body .social-ico { opacity: 1; transform: translateY(0); }
#myOffcanvas .offcanvas-body .social-ico { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; color:var(--color-marino);}
#myOffcanvas .offcanvas-body .social-ico:hover { opacity: .75;}

/* =========================
   NAV HEADER SECONDARY
   ========================= */
#topbar-secondary { background: var(--color-bordeau); color: #fff; position: relative; height: 100px;}
.logo-absolute { position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 3;}
.h-logo-section { max-height: 150px;}
#nav-dks-secondary { align-items: center;}
#nav-dks-secondary a { color: rgba(255,255,255,1); padding-top: 0; padding-bottom: 0; line-height: 1;}
#nav-dks-secondary li:first-child a { padding-left: 0;} #nav-dks-secondary li:last-child a {padding-right: 0;} 

#nav-dks-secondary .nav-link {position: relative; color: #fff; padding: .25rem .1rem; transition: color .3s ease;font-size: 1.2rem;font-weight: 300;}
/* Línea base */
#nav-dks-secondary .nav-link::after { content: "";position: absolute;left: 50%;bottom: -6px;width: 0;height: 3px;background-color: rgba(255,255,255,.65);;border-radius: 4px; transform: translateX(-50%); transition: width .35s ease, background-color .35s ease;}

#nav-dks-secondary .nav-link:hover::after {width: 100%;}

/* ACTIVE */
#nav-dks-secondary .nav-link.active {color: #fff;}
#nav-dks-secondary .nav-link.active::after {width: 100%;background-color:rgba(255,255,255,.25);;animation: navPulse 1.8s ease-in-out infinite;}

/* Animación suave (respira) */
@keyframes navPulse {
  0%   { transform: translateX(-50%) scaleX(1); }
  50%  { transform: translateX(-50%) scaleX(1.1); }
  100% { transform: translateX(-50%) scaleX(1); }
}

.btn-borde { border: 1px solid rgba(0,38,57,.25); transition: border-color .3s ease, color .3s ease; color:var(--color-marino);}

.btn-borde:hover { border-color: var(--color-bordeau); color:rgba(0,38,57,.7)}
/***************************************************** carousel*/
.carousel { position: relative; overflow: hidden;}
.carousel-viewport { overflow: hidden;}
.carousel-track {display: flex;}
.carousel-track { transition:transform 0.6s cubic-bezier(0.4, 0.0, 0.2, 1),opacity   0.35s ease;}
.carousel.is-sliding .carousel-track {opacity: 0.35;}
.slide { transition: opacity 0.35s ease;}
/* Contenedor de la imagen */
.carousel[data-carousel="hero"] .slide-media { position: relative; width: 100%; aspect-ratio: 30 / 9; overflow: hidden;background: #000;}
/* Imagen centrada */
.carousel[data-carousel="hero"] .slide-media img {width: 100%; height: 100%;object-fit: cover; object-position: center;display: block;}
.carousel[data-carousel="hero"] .slide-media img { transition: transform .4s ease;}
.carousel[data-carousel="hero"] .slide-media:hover img { transform: scale(1.02);}
/* Botones*/
.carousel-btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 5; background: none; border: 0; padding: 0;}
.carousel-btn.prev { left: 16px; }
.carousel-btn.next { right: 16px; }
.arrow-circle { width: 44px; height: 44px; border-radius: 999px; background: var(--color-bordeau); color: #fff; display: flex; align-items: center;  justify-content: center; /* box-shadow: 0 10px 20px rgba(0,0,0,.18);*/}

/* Hero */
.carousel[data-carousel="hero"] .slide {flex: 0 0 100%;width: 100%;}
.carousel[data-carousel="hero"] .carousel-btn { opacity: 0;pointer-events: none;transition: opacity .25s ease;}
.carousel[data-carousel="hero"]:hover .carousel-btn { opacity: 1; pointer-events: auto;}
/*.carousel-dots { position: absolute; bottom: 14px; left: 0; right: 0; display: flex; justify-content: center; gap: 10px;}*/
.carousel-dots{position:relative;bottom:auto;left:auto;right:auto;margin-top:1rem;display:flex;justify-content:center;gap:10px;}
.carousel-dots .dot { width: 10px; height: 10px; border-radius: 99px; border: 0; background: var(--color-bordeau); opacity: .4;}
.carousel-dots .dot.active { opacity: 1;}

/* Modal Hero */
.hero-modal-body { padding: 0; text-align: center;}
.hero-modal-media { width: 100%;aspect-ratio: 30 / 9; overflow: hidden;}
.hero-modal-media img { width: 100%; height: 100%;  object-fit: cover;}

.hero-modal-content {  padding: 2rem 1.5rem; max-width: 720px; margin: 0 auto;}
.hero-modal-content h2 { font-size: clamp(1.6rem, 2.5vw, 2.5rem); font-weight: 700; line-height: 1.2;}
.hero-modal-content p { margin: 0;}

/* =========================
   Galeria · Carousel
========================= */

.galeria {background:#fff;margin:4rem auto;}
.carousel[data-carousel="gallery"] {position:relative;padding:0 3.5rem;}
.carousel[data-carousel="gallery"] .slide {position:relative;flex:0 0 50%;width:50%;box-sizing:border-box;padding:1.25rem;}
.carousel[data-carousel="gallery"] .slide img {width:100%;height:100%;object-fit:cover;display:block;background:#fff;transition:transform .4s ease;}
.carousel[data-carousel="gallery"] .slide:hover img {transform:scale(1.02);}
.carousel[data-carousel="gallery"] .carousel-track {transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .35s ease;}
.carousel[data-carousel="gallery"].is-sliding .carousel-track {opacity:.4;}
.carousel[data-carousel="gallery"] .carousel-btn.prev {left:0;}
.carousel[data-carousel="gallery"] .carousel-btn.next {right:0;}
.carousel[data-carousel="gallery"] .carousel-viewport {cursor:grab;touch-action:pan-y;}
.carousel[data-carousel="gallery"] .carousel-viewport:active {cursor:grabbing;}
.carousel[data-carousel="gallery"] img {user-select:none;-webkit-user-drag:none;}

/* Overlay lupa */

.carousel[data-carousel="gallery"] .slide-overlay {position:absolute;inset:1.25rem;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;cursor:pointer;z-index:2;transform:scale(1.02);}
.carousel[data-carousel="gallery"] .slide:hover .slide-overlay {opacity:1;}
.carousel[data-carousel="gallery"] .slide-overlay i {position:relative;width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.8rem;z-index:1;pointer-events:none;}
.carousel[data-carousel="gallery"] .slide-overlay i::after {content:"";position:absolute;inset:0;background:no-repeat center/contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none'><path d='M16 4H8a4 4 0 0 0-4 4v8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M48 4h8a4 4 0 0 1 4 4v8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M16 60H8a4 4 0 0 1-4-4v-8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M48 60h8a4 4 0 0 0 4-4v-8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");transition:opacity .3s ease,transform .3s ease;}

/* =========================
   Gallery · Modal
========================= */

#galleryModal .modal-content {position:relative;background:#fff;}
#galleryModal .modal-body {height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem !important;}
#galleryModal .gallery-modal-stage {width:100%;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y;cursor:grab;}
#galleryModal .gallery-modal-stage:active {cursor:grabbing;}
#galleryModal #galleryModalImg {display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none;}
#galleryModal .gallery-modal-nav {flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 0 calc(1rem + env(safe-area-inset-bottom));}
#galleryModal .gallery-modal-btn {position:static;width:48px;height:48px;border:0;border-radius:50%;background:var(--color-bordeau);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;}
#galleryModal .gallery-modal-close {position:absolute;top:1rem;right:1rem;z-index:20;width:42px;height:42px;background-color:rgba(255,255,255,.85);border-radius:50%;opacity:1;}

/* ==============================
   Galería · Estado vacío
============================== */

.carousel.carousel-empty {min-height:0;padding-top:0;padding-bottom:0;}
.carousel.carousel-empty .carousel-viewport {display:none;}
.carousel.carousel-empty .carousel-btn {display:none;}

/* =========================
   Galeria · Carousel
========================= */
/*
.galeria { background: #fff; margin: 4rem auto; }
.carousel[data-carousel="gallery"] { position: relative; padding: 0 3.5rem; }
.carousel[data-carousel="gallery"] .slide { position: relative; flex: 0 0 50%; width: 50%; box-sizing: border-box; padding: 1.25rem; }
.carousel[data-carousel="gallery"] .slide img { width: 100%; height: 100%; object-fit: cover; display: block; background: #fff; transition: transform .4s ease; }
.carousel[data-carousel="gallery"] .slide:hover img { transform: scale(1.02); }
.carousel[data-carousel="gallery"] .carousel-track { transition: transform .6s cubic-bezier(.4,0,.2,1), opacity .35s ease; }
.carousel[data-carousel="gallery"].is-sliding .carousel-track { opacity: .4; }
.carousel[data-carousel="gallery"] .carousel-btn.prev { left: 0; }
.carousel[data-carousel="gallery"] .carousel-btn.next { right: 0; }
.carousel[data-carousel="gallery"] .slide-overlay { position: absolute; inset: 1.25rem; background: rgba(0,0,0,.35); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .3s ease; cursor: pointer; z-index: 2; transform: scale(1.02); }
.carousel[data-carousel="gallery"] .slide:hover .slide-overlay { opacity: 1; }
.carousel[data-carousel="gallery"] .slide-overlay i { position: relative; width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 1.8rem; z-index: 1; pointer-events: none; }
.carousel[data-carousel="gallery"] .slide-overlay i::after { content: ""; position: absolute; inset: 0; background: no-repeat center/contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none'><path d='M16 4H8a4 4 0 0 0-4 4v8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M48 4h8a4 4 0 0 1 4 4v8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M16 60H8a4 4 0 0 1-4-4v-8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/><path d='M48 60h8a4 4 0 0 0 4-4v-8' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>"); transition: opacity .3s ease, transform .3s ease; }
#galleryModal .modal-body { display: flex; align-items: center; justify-content: center; }
#galleryModal img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }*/

/* ==============================
   Galería · Estado vacío
   ============================== */
/*
.carousel.carousel-empty { min-height: 0; padding-top: 0; padding-bottom: 0; }
.carousel.carousel-empty .carousel-viewport { display: none; }
.carousel.carousel-empty .carousel-btn { display: none; }*/

/* ==============================
   Home - 30/9/2026 cambios
   ============================== */
.section-proyecto .text-home-p{font-size: clamp(1rem, 2vw, 1.25rem);margin-bottom: clamp(2rem, 2vw, 3rem);}
.section-proyecto .text-home-white-bluebox {font-size: clamp(20px, 2vw, 23px); font-weight: 200; margin-bottom: 0; padding: 3rem; color: rgba(255,255,255,1.00); line-height: 1.25;align-items: center; display: flex;}
.section-proyecto .text-home-bordeauTitle{color: var(--color-bordeau); font-weight: 200;font-size: clamp(23px, 2vw, 32px); text-wrap: balance; text-align: center;padding: 3rem 0; }

@media (min-width: 1400px) { 	
.section-proyecto .text-home-white-bluebox { height: 370px}
    .section-proyecto .text-home-bordeauTitle{}
}
@media (max-width: 990px) {
    .section-proyecto .text-home-white-bluebox { padding-block: 0;}
}
/* =========================
   Proyecto educativo
========================= */
.section-ornament{ width: 34px; height: 8px; margin: 0 auto; border-radius: 99px; background:var(--color-bordeau); opacity:.85;}
.card-proyecto{ border:1px solid rgba(10,43,58,.25); border-radius: 0;}
.btn-vermas{ background:var(--color-bordeau);  color:#fff;  border-radius: 25px; font-size: 1.25em;  padding: 0.5em 1em;}
.btn-vermas:hover{ opacity:.9; color:#fff; }

/* =========================
   Frase
========================= */
.section-frase{ background:#F2F2F2; }

/* Nuestra Historia  */
.hero-internal { min-height: 200px; background-size: cover; background-position: center;}
.hero-nuestra-historia { background-image: url('assets/img/historia/hero.jpg');}
.info-highlight { background-color: #dff3ff; border: none;border-radius: 0;color:var(--color-marino);}
.info-highlight i { color:var(--color-marino);}
.img-cover{width: 100%;height: 100%; object-fit: cover; object-position: center; display: block;}
/* =========================
   Footer rojo
========================= */
.footer-main{ background: #F5F5F5}
.footer-logo{ max-width: 130px; height:auto; }
.footer-links{ list-style:none;padding:0; margin:0; }
.footer-links li{ margin-bottom: 6px; }
.footer-links a{font-size: 13px; font-weight: 300; text-decoration: none;color: #fff;letter-spacing: 0.012rem;}
.footer-links a:hover{ opacity:1; text-decoration: underline; }
.footer-bottom{ border-top: 1px solid rgba(255,255,255,.25); opacity:.9;}
/*.footer-cols > [class^="col"] { padding-left: 0;} .footer-cols > [class^="col"]:last-child { padding-right: 0;}
*/
.footer-col-divider {position: relative;} .footer-col-divider::after {content: "";position: absolute; top: 0;bottom: 0;left: 50%;  transform: translateX(50%);  width: 1px;  background: white;}

.footer_icon{font-family: "Font Awesome 5 Pro"; font-weight: 400; font-size: 1.1rem;margin: .5rem 0;} 
/*.footer_icon-map::before{content: "\f3c5";} .footer_icon-phone::before{content: "\f095";} */

.footer_icon-mail::before{content: "\f0e0";} 
.footer_text{/*margin-left: .5rem;*/font-family: "Readex Pro", sans-serif; font-optical-sizing: auto; font-weight: 300; font-style: normal;text-decoration: none;  color: rgba(255,255,255,1);  letter-spacing: 0.012rem;}
/*tooltip copiado */
.copy-icon{ position: relative; display: inline-flex; align-items: center;font-size: 2rem;}
.copy-tooltip{ position: absolute; top: 50%; left: 100%; transform: translateY(-50%); margin-left: 8px; /*background:#f09320; */color: #fff; font-size: 12px; padding: 3px 6px; border-radius: 4px; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .2s ease; z-index: 1000;}
.copy-tooltip.show{ opacity: 1; }

.fa-copy::before { content: "\f0c5";}
/***************************************************** Module Estructure */
.bg-dark-blue{ background-color: #303745;}
.module-estructure { padding: 3rem 0;}
.gradient-violeta{position: relative; overflow: hidden; background: linear-gradient(135deg,#2f3b4a 0%,#3a4f6b 50%,#4b3f6e 100%);}
.gradient-violeta::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 90px;background: #fff;clip-path: polygon(0 0, 100% 0, 100% 55%, 0 100%);  z-index: 1;}
.gradient-violeta::after {content: "";position: absolute;bottom: 0;left: 0;width: 100%;height: 90px;background: #fff;clip-path: polygon(0 45%, 100% 0, 100% 100%, 0 100%);z-index: 1;}

/* Masonry real SIN JS (CSS Columns) */
.estructure-grid { column-count: 3; column-gap: 1.5rem;}
/* Responsive */
@media (max-width: 991px) {
  .estructure-grid { column-count: 2; }
}

@media (max-width: 575px) {
  .estructure-grid { column-count: 1; }
}

/* Items */
.estructure-grid .grid-item { break-inside: avoid; margin-bottom: 1.5rem;}
/* Card */
.estructure-card {background-color: rgba(243, 243, 243, 0.17);border-radius: 4px;padding: 1.25rem;display: flex;flex-direction: column;}
/* Imagen */
.estructure-card .card-image img {width: 100%;height: auto; display: block;border-radius: 2px;margin-bottom: 1rem;}
.estructure-card .card-image { overflow: hidden;}
.estructure-card .card-image img { transition: transform 0.5s ease;}
.estructure-card:hover .card-image img { transform: scaleX(1.02) scaleY(1.02);}
/* Título */
.estructure-card .card-title {font-size: 1.1rem; margin-bottom: .5rem;}
/* Texto */
.estructure-card .card-text { font-size: .95rem;line-height: 1.5;}
/* Botón abajo */
.estructure-card .card-action { margin-top: auto;}

/*Card Home*/
.subtitle-card-home { font-size: 18px;}

@media (max-width:500px) {
   /*Card Home*/
   .subtitle-card-home { font-size: 16px;}
}


/***************************************************** CookiesYes */
.cky-notice-des *, .cky-preference-content-wrapper *, .cky-dma-content-wrapper *, .cky-accordion-header-des *, .cky-gpc-wrapper .cky-gpc-desc * {font-size: 0.75rem !important; line-height: 16px !important}
.cky-notice .cky-title { font-weight: 400 !important; }
.cky-btn {font-size: 0.75rem !important;}
.cky-revisit-bottom-left { display: none !important;}
.cky-btn-reject { color: #db9231!important; background: #fff!important;   background-color: rgba(255, 255, 255, 0); border: 1px solid #db9231 !important; }
.cky-consent-container [data-cky-tag="powered-by"], [data-cky-tag="detail-powered-by"] { display: none !important;}
.cky-btn {border-radius: 20px !important;font-weight: 600!important;border: 1px solid #db9231 !important; }
.cky-btn-accept {  background: #db9231!important; background-color: rgba(219,146,49,1.00)!important;  color: #fff;}
.cky-btn-customize {color: #7d4627 !important;}
.cky-btn-preferences{background-color: #7d4627!important;}

/***************************************************** Footer */
.whatsapp-float { position: fixed; width: 60px; height: 60px; bottom: 20px; right: 20px; background-color: #df9e47; color: #fff; border-radius: 50%; text-align: center; font-size: 32px; box-shadow: 2px 2px 8px rgba(0,0,0,0.3); z-index: 9999; display: flex; align-items: center; justify-content: center; transition: transform .2s ease;}
.whatsapp-float:hover { transform: scale(1.1); color: #fff;}

/***************************************************** Under construction */
.subrayado-fuerte { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 4px;text-decoration-color: #db9231;}

/* ==============================
   Institucional
   ============================== */
.hero-institucional { background: no-repeat url('assets/img/institucional/hero.jpg') 100% 50%; background-size: cover;}
.institucional-intro-text { font-size: clamp(1rem, 2vw, 1.25rem); /*font-weight: 300;*/}
.fa-map-marker-alt { position: relative; }
/*.fa-map-marker-alt::after { content: ""; position: absolute; left: 50%; top: 50%; width: .45em; height: .45em; background: rgba(255,255,255,1.00); border-radius: 999px; transform: translate(-50%, -72%); }*/
.text-shadow{text-shadow: -1px -1px 1px rgba(255,255,255,.1), 1px 1px 1px rgba(0,0,0,.5), 2px 2px 5px rgba(0,0,0,0.43);}
.institucional-media { position: relative; width: 100%; overflow: hidden; background-color: #111; }
.institucional-video-embed { overflow: hidden; background-color: #111; }
.institucional-media-local { overflow: hidden; background-color: #111; }
.institucional-video-lazy { background-color: #e9e9e9; background-repeat: no-repeat; background-size: cover; background-position: center; }
.institucional-video-lazy::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .08); z-index: 1; }
.institucional-video-element { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.institucional-play-btn { position: absolute; right: 2rem; bottom: 2rem; z-index: 2; width: 6.8rem; height: 6.8rem; border: 0; border-radius: 50%; background: var(--color-bordeau); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 2.4rem; line-height: 1; transition: transform .2s ease, background-color .2s ease; }
.institucional-play-btn:hover { background: #8f0d11; transform: scale(1.04); }
.institucional-play-btn i.fa-play { transform: translateX(.16rem); }
.institucional-media-placeholder { min-height: 24rem; border: 1px solid rgba(6, 50, 67, .2); background: rgba(6, 50, 67, .04); }
.institucional-team-grid { column-count: 2; column-gap: 1.5rem; margin-bottom: 3rem; }
.institucional-team-card { break-inside: avoid; margin-bottom: 1.5rem; display: inline-block; width: 100%; }
.institucional-team-card {border: 1px solid rgba(0, 38, 57, 0.55);  border-radius: 14px;
  background: #fff; padding: 3rem 2.5rem;}

.institucional-team-card h3 { margin: 0 0 1rem; line-height: .95; }
.institucional-team-card ul { list-style: none; margin: 0; padding: 0; }
.institucional-team-card li { position: relative; margin: 0 0 1.15rem; padding-left: 1.95rem; }

.institucional-team-card li:last-child { margin-bottom: 0; }
.institucional-team-card li::before { content: ""; position: absolute; top: .55rem; left: 0; width:1rem; height:1rem; border-radius: 50%; background: var(--color-bordeau); }
.institucional-team-card span { display: block;text-transform: uppercase; }


/*
.institucional-download-link .ico-download { width: 18px; height: 18px; min-width: 18px; display: inline-block; margin-left: auto !important; }
.institucional-download-link .ico-download-bordeau { background-color: var(--color-bordeau); }*/



.institucional-download-link { display: inline-flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 2.2rem; padding: .25rem 1.5rem; border: 1px solid var(--color-marino); border-radius: .95rem; background: #fff; color:var(--color-marino); text-decoration: none; }
.institucional-download-link:hover { background: var(--color-marino); color: #fff; }
.institucional-download-link i {}
.institucional-download-link:hover i { color: #fff; }
/*.ico-download { display: inline-block; width: 24px; height: 24px; background-image: url("assets/img/icon-download-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria-negative.svg"); background-repeat: no-repeat; background-position: center; background-size: contain; vertical-align: -.08em; }*/

.ico-download { flex: 0 0 24px; display: inline-block; width:24px; height: 24px; background-color: #fff; -webkit-mask-image: url("assets/img/icon-download-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria-negative.svg"); mask-image: url("assets/img/icon-download-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria-negative.svg"); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; vertical-align: -.12em; }
.ico-download-bordeau{background: var(--color-bordeau);}

.institucional-form-card { position: relative; min-height: 300px; display: flex; align-items: center; justify-content: center; overflow: hidden; background-color: var(--color-marino); background-size: cover; background-position: center; color: #fff; text-decoration: none; }
.institucional-form-card::before { content: ""; position: absolute; inset: 0; /*background: rgba(168, 15, 20, .58);*/ z-index: 1; transition: background-color .2s ease; }
.institucional-form-card span { position: relative; z-index: 2; }
.institucional-form-card i { position: relative; z-index: 2; }
.institucional-form-card:hover { color: #fff; }

.institucional-form-card::before { background: rgba(168, 15, 20, .7); }
.institucional-form-card_2::before { background:rgba(0,38,57,.7) !important; }

.institucional-form-card:hover::before { background: rgba(168, 15, 20, .9); }
.institucional-form-card_2:hover::before { background:rgba(0,38,57, .9) !important; }

/* ==============================
   Institucional · Banda contacto con patrón
   ============================== */
.institucional-contact-band { position: relative; background: var(--color-marino); color: #fff; overflow: hidden;mix-blend-mode: multiply; }
.institucional-contact-band::before { content: ""; position: absolute; inset: 0; background-image: url("assets/img/_patron-1-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria.webp"); background-repeat: repeat; background-position: center top; background-size: 1520px auto; background-attachment: fixed; mix-blend-mode: color-burn; opacity: .65; pointer-events: none; z-index: 1; }
.institucional-contact-band .container { position: relative; z-index: 2; }
.institucional-contact-band a { color: #fff; text-decoration: none; }
.institucional-contact-band .fab { font-size: 3rem; }
.institucional-phone-btn { min-width: 9.8rem; min-height: 3rem; display: inline-flex; align-items: center; justify-content: center; gap: .55rem; border: 1px solid rgba(255, 255, 255, .45); color: #fff; }

.institucional-phone-btn:hover { background: rgba(255, 255, 255, .12); color: #fff; }

.epigrafe-video { font-size: 0.85rem; display: block; margin-bottom: 1.5rem;}

@media (max-width: 991.98px) {
  .institucional-contact-band::before { background-attachment: scroll; }
}

.institucional-phone-btn:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.institucional-map-info { /*min-height: 22rem; padding: 2.5rem 1.5rem; */background: #fff; color: var(--color-bordeau); font-size: 1.1rem;  line-height: 1.1; }
.institucional-map-logo { width: min(13rem, 60%); height: auto; }
.institucional-map-frame { width: 100%; height: 100%; }
.institucional-map-frame iframe { width: 100%; height: 100%; border: 0; display: block; }
/* ==============================
   Institucional · Fondo patrón con parallax
   ============================== */
.institucional-pattern-section { position: relative; background-image: url("assets/img/_patron-1-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria.webp"); background-repeat: repeat; background-position: center top; background-size: 1520px auto; background-attachment: fixed; overflow: hidden; }

@media (max-width: 991.98px) {
  .institucional-team-grid { column-count: 1; }
  .institucional-play-btn { width: 5.4rem; height: 5.4rem; right: 1.25rem; bottom: 1.25rem; font-size: 2rem; }
}

@media (max-width: 575.98px) {
/*  .institucional-intro-text { font-size: 1.1rem; line-height: 1.2; }*/
  .institucional-team-card { padding: 1.25rem; }
  .institucional-form-card { min-height: 8rem; }
 /* .institucional-map-frame { height: 18rem; }*/
}


/* ==============================
   Nivel Inicial / Escuela Primaria · Bloques educativos
   ============================== */

.educational-page { background: #fff; }
.educational-pattern-section { position: relative; background-image: url("assets/img/_patron-1-La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria.webp"); background-repeat: repeat; background-position: center top; background-size: 1520px auto; background-attachment: fixed; overflow: hidden; }
.educational-feature-text { color: var(--color-bordeau); /*font-size: clamp(1.1rem, 1.8vw, 1.45rem); font-weight: 600;*/ }
/* ==============================
   Nivel  Primario · Talleres de arte 29/9/2026
   ============================== */
#talleres-arte{background: var(--color-marino); color: rgba(255,255,255,1.00);padding: 3rem 0;}
#talleres-arte .text-fs-4{font-size: clamp(1.1rem, 1.8vw, 1.45rem);margin-bottom: 2.5rem;}
#talleres-arte .text-parrafo{ font-size: 16px}
#talleres-arte .imagen-sello{margin-top: -3%;}

@media (min-width: 1200px) {
#talleres-arte .text-fs-4 {font-size: 1.5rem; }
#talleres-arte .text-parrafo{ font-size: 18px}    
}
@media (max-width: 575.98px) {
#talleres-arte .text-fs-4{margin-bottom:0;}
#talleres-arte .imagen-sello {margin-top:1rem; margin-bottom: 1rem;}
}
/* ==============================
   Nivel Inicial / Escuela Primaria · Hero educativo
   ============================== */

.educational-hero { position: relative; height: auto; background-size: cover; background-position: center; overflow: hidden; }
.educational-hero::before { content: ""; position: absolute; inset: 0; background: rgba(255,255,255,.08); z-index: 1; pointer-events: none; }
.educational-hero .container { position: relative; z-index: 2; }
.educational-hero-kicker { color: var(--color-marino); text-transform: uppercase; font-size: clamp(.95rem, 1.3vw, 1.25rem); font-weight: 700; letter-spacing: .03em; }
.educational-hero h1 { color: var(--color-marino); line-height: .9; }
.hero-nivel-inicial { background-image: url("assets/img/nivel-inicial/hero.webp"); }
.hero-escuela-primaria { background-image: url("assets/img/primaria/hero.webp"); }


/* ==============================
   Nivel Inicial / Escuela Primaria · Bloque azul con imagen
   ============================== */

.educational-split-band { background: var(--color-marino); color: #fff; }
.educational-split-band .row { min-height: 600px; }
.educational-split-content { background: var(--color-marino); }
.educational-split-content p, 
.educational-split-content h2 { text-wrap: balance;}
.educational-split-image { max-height: 600px; overflow: hidden; }
.educational-split-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }

/* ==============================
   Nivel Inicial · Carousel imagen única
   ============================== */

.carousel[data-carousel="gallery"].gallery-single .slide { flex: 0 0 100%; width: 100%; max-height: 700px; }
.carousel[data-carousel="gallery"].gallery-single .slide img { width: 100%; height: 100%; max-height: 700px; object-fit: cover; object-position: center; display: block; }
.carousel[data-carousel="gallery"].gallery-single .slide-overlay { inset: 1.25rem; }
.carousel[data-carousel="gallery"].gallery-single .carousel-track { align-items: stretch; }


/* ==============================
   Nivel Inicial / Escuela Primaria · Listas y destacados
   ============================== */

.educational-bullet-list { list-style: none; padding: 0; margin: 0; }
.educational-bullet-list li { position: relative; padding-left: 2.5rem; margin-bottom: 1.4rem; }
.educational-bullet-list li::before { content: "\f017"; font-family: "Font Awesome 5 Pro"; font-weight: 400; position: absolute; left: 0; color:var(--color-bordeau); }
.educational-bullet-list strong { color: var(--color-bordeau); }


/* ==============================
   Nivel Inicial / Escuela Primaria · Franja de imágenes
   ============================== */

.educational-image-band .col { max-height: 600px; }


/* ==============================
   Nivel Inicial · Talleres tabs
   ============================== */

.text-bordeau { color: var(--color-bordeau); }
.educational-tags button { display: inline-flex; align-items: center; justify-content: center; min-height: 2.2rem; padding: 0.5rem 1rem; border: 1px solid var(--color-marino); border-radius: 2em; background: #fff; color: var(--color-marino); font-size: 1.3rem; /*font-size: clamp(1.45rem, 1.5vw, 2.0625rem);*/ font-weight: 500; line-height: 1; transition: all .2s ease-in-out; }
.educational-tags button:hover { border-color: var(--color-bordeau); color: var(--color-bordeau); }
.educational-tags button.active { border-color: var(--color-bordeau); color: var(--color-bordeau); background: #fff; }
.educational-tabs-content { max-width: 960px; }
.educational-tab-image { width: 100%; max-height: 700px; object-fit: cover; object-position: center; display: block; }

.educational-tags-static span {display:inline-flex;align-items:center;padding:.35rem 1rem;border:1px solid var(--color-marino);border-radius:999px;color:var(--color-marino);background:transparent;cursor:default;}

/* ==============================
   Nivel Inicial / Escuela Primaria · Carga horaria
   ============================== */

.educational-schedule-section { background: var(--color-marino); }
.educational-schedule-list { display: flex; flex-direction: column; gap: .75rem; }
.educational-schedule-card {margin: 20px 0; padding-inline: 2rem;}
.educational-schedule-card .title { font-size: clamp(2rem, 2.5vw, 2.5rem); font-weight: 500; line-height: 1; }
.educational-schedule-card .hora { font-size: clamp(2rem, 2.3vw, 2.3rem); font-weight: 200; line-height: 1; text-align: center; color: #000; }
.educational-schedule-card .texto { color: var(--color-bordeau); font-size: clamp(1rem, 1.3vw, 1.3rem); font-weight: 200; line-height: 1.15; text-align: center; }


/* ==============================
   Nivel Inicial / Escuela Primaria · Responsive
   ============================== */

@media (max-width: 991.98px) {
  .educational-hero { min-height: 280px; }
  .educational-pattern-section { background-attachment: scroll; }
  .educational-split-band .row { min-height: auto; }
  .educational-split-image { max-height: 320px; }
}

@media (max-width: 575.98px) {
  .educational-hero { min-height: 240px; }
  .educational-schedule-card { grid-template-columns: 1fr; padding: 1.25rem; }
/*  .educational-schedule-card .title { font-size: 2rem; }*/
  .educational-schedule-card .hora { text-align: left; font-size: 1.65rem; }
  .educational-schedule-card small { grid-column: auto; text-align: left; font-size: .95rem; }
}
/* ==============================
   Escuela Primaria · Lista check
   ============================== */

.aldea-check-list { list-style: none; padding: 0; margin: 0; }

.aldea-check-list li { position: relative; padding-left: 2.2rem; margin-bottom: 1.4rem; color: var(--color-bordeau);line-height: 1.18; }

.aldea-check-list li::before { content: ""; position: absolute; left: 0; top: .1em; width: 1.5rem; height: 1.5rem; background-image: url("assets/img/li_circle-check-big.svg"); background-repeat: no-repeat; background-position: center; background-size: contain; }

@media (max-width: 575.98px) {
/*  .aldea-check-list li { padding-left: 1.9rem; margin-bottom: 1.15rem; font-size: 1.15rem; }
  .aldea-check-list li::before { width: 1.25rem; height: 1.25rem; top: .12em; }*/
}

/* ==============================
   Escuela Primaria · Accordion
   ============================== */

.aldea-accordion { --bs-accordion-border-width: 0; --bs-accordion-border-radius: 0; --bs-accordion-inner-border-radius: 0; --bs-accordion-btn-focus-box-shadow: none; --bs-accordion-active-bg: transparent; --bs-accordion-active-color: var(--color-marino); --bs-accordion-bg: transparent; }

.aldea-accordion-content .text-bordeau { font-size: 1.5rem;}
.aldea-accordion .accordion-item { background: transparent; border: 0; border-bottom: 1px solid rgba(0,38,57,.25); }
.aldea-accordion .accordion-item:last-child { border:none !important; }
.aldea-accordion .accordion-header { margin: 0; }
.aldea-accordion .accordion-button { position: relative; background: transparent; color: var(--color-marino); padding: 1.15rem 3rem 1.15rem 0; box-shadow: none; }
.aldea-accordion .accordion-button:not(.collapsed) { background: transparent; color: var(--color-marino); box-shadow: none; }
.aldea-accordion .accordion-button::after { width: 1.5rem; height: 1.5rem; background-image: url("assets/img/icon_circle-chevron-down.svg"); background-size: contain; background-position: center; background-repeat: no-repeat; opacity: 1; transform: rotate(0deg); transition: transform .25s ease; }
.aldea-accordion .accordion-button:not(.collapsed)::after { transform: rotate(180deg); }
.aldea-accordion .accordion-button span { color: var(--color-marino); line-height: .95; }
.aldea-accordion .accordion-body { padding: 0 0 3rem; }

.aldea-accordion-content { background: transparent; padding: .25rem 0 0; margin: 0; opacity: 0; transform: translateY(-8px); transition: opacity .42s ease, transform .42s ease; }
.aldea-accordion .accordion-collapse { transition: height .55s cubic-bezier(.16, 1, .3, 1); }
.aldea-accordion .accordion-collapse.show .aldea-accordion-content { opacity: 1; transform: translateY(0); }
.aldea-accordion .accordion-collapse.collapsing .aldea-accordion-content { opacity: 0; transform: translateY(-6px); transition: opacity .22s ease, transform .22s ease; }


.aldea-accordion-content p { max-width: 920px; }
.aldea-accordion-content .galeria { margin: 2rem auto 0; background: transparent; overflow: visible; }
.aldea-accordion-content .carousel[data-carousel="gallery"] { padding: 0 3rem; overflow: visible; }
.aldea-accordion-content .carousel-viewport { overflow: hidden; }
.aldea-accordion-content .carousel[data-carousel="gallery"].gallery-single .slide { padding: 0; }
.aldea-accordion-content .carousel[data-carousel="gallery"].gallery-single .slide img { max-height: 560px; }
.aldea-accordion-content .carousel[data-carousel="gallery"].gallery-duo .slide { flex: 0 0 50%; width: 50%; padding: .75rem; }
.aldea-accordion-content .carousel[data-carousel="gallery"].gallery-duo .slide img { max-height: 560px; }
.aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn { z-index: 10; opacity: 1; pointer-events: auto; }
.aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn.prev { left: .35rem; }
.aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn.next { right: .35rem; }
.aldea-accordion-content .arrow-circle { width: 28px; height: 28px; font-size: .75rem; background: var(--color-bordeau); color: #fff; }


@media (max-width: 991.98px) {
  .aldea-accordion-content .carousel[data-carousel="gallery"].gallery-duo .slide { flex: 0 0 100%; width: 100%; }
}

@media (max-width: 575.98px){
  .aldea-accordion .accordion-button{padding-right:2.25rem;}
  .aldea-accordion .accordion-button::after{width:1.25rem;height:1.25rem;}
  .aldea-accordion-content .carousel[data-carousel="gallery"]{padding:0 0 3.5rem;}
  .aldea-accordion-content .carousel[data-carousel="gallery"] .slide{padding:0;}
  .aldea-accordion-content .carousel[data-carousel="gallery"] .slide-overlay{inset:0;}
  .aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn{top:auto;bottom:0;transform:none;opacity:1;pointer-events:auto;}
  .aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn.prev{left:50%;transform:translateX(-115%);}
  .aldea-accordion-content .carousel[data-carousel="gallery"] .carousel-btn.next{right:auto;left:50%;transform:translateX(15%);}
  .aldea-accordion-content .text-bordeau { font-size: 1rem;}
}



/* ==============================
   Contacto
   ============================== */

.hero-contacto { background-image: url("assets/img/La-Aldea-proyecto-educativo-nivel-inicial-escuela-primaria.webp"); }

.contact-page .container { position: relative; z-index: 1; }

.contact-image { width: 100%; overflow: hidden; }

.contact-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }

.contact-form .form-control,
.contact-form .form-select { min-height: 2.35rem; border-radius: 0; border: 1px solid rgba(0,38,57,.18); color: var(--color-marino); font-size: 1.25rem; background-color: rgba(255,255,255,.82); }

.contact-form textarea.form-control { min-height: 150px; resize: vertical; }

.contact-form .form-control:focus,
.contact-form .form-select:focus { border-color: var(--color-bordeau); box-shadow: 0 0 0 .15rem rgba(154,19,21,.12); background-color: #fff; }

.contact-form ::placeholder { color: rgba(0,38,57,.6); }

.contact-submit { border: 0;
}

.contact-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 767.98px) {
  .contact-form { min-height: auto; }
}


/***************************************************** MEDIA Q*/

@media (min-width: 1750px) { 	

}
@media (min-width: 1400px) { 	

}
@media (max-width: 1399.98px) { 	
    
}
@media (min-width: 1200px) { 
    
}
@media (max-width: 1199.98px) { 

}

@media (min-width:992px){ 
    
}

@media (max-width: 991.98px) { 
    .carousel[data-carousel="gallery"] { padding: 0 2.25rem;}
    #nav-dks li a {padding: .5rem .7rem;}

}

@media (min-width: 768px){
 
}

@media (min-width: 768px) and (max-width: 991.98px) {
  
}
@media (min-width: 1px) and (max-width: 991.98px) {
    .carousel[data-carousel="gallery"] .slide { flex: 0 0 100%; width: 100%; }
}

@media (max-width: 767.98px) {
    .carousel[data-carousel="hero"] .slide-media { aspect-ratio: 4 / 3; }
    .hero-modal-media { aspect-ratio: 4 / 3; }
}

/* 2 columnas (576–767.98px) */
@media (min-width: 576px) and (max-width: 767.98px) {
}
@media (max-width: 575.98px){
  .carousel[data-carousel="gallery"]{padding:0 0 3.5rem;}
  .carousel[data-carousel="gallery"] .slide{padding:.75rem;}
  .carousel[data-carousel="gallery"] .carousel-btn{top:auto;bottom:0;transform:none;opacity:1;pointer-events:auto;}
  .carousel[data-carousel="gallery"] .carousel-btn.prev{left:50%;transform:translateX(-115%);}
  .carousel[data-carousel="gallery"] .carousel-btn.next{right:auto;left:50%;transform:translateX(15%);}
  .carousel[data-carousel="gallery"] .slide-overlay{inset:.75rem;}
  .btn-vermas{ font-size: .9em;}   
    .galeria{margin: 2.5rem auto 4rem;}
    .institucional-download-link{ font-size: 1.1rem !important}
    .institucional-map-frame {height: 300px;}
}


@media (max-width: 449.98px){
    
}

@media (max-width: 360.98px){
    
}