/* Preserve Aprendísimo's established visual language while replacing Joomla's runtime. */
html{scroll-behavior:smooth;scroll-padding-top:100px}
body.apr-replica{margin:0;overflow-x:hidden;font-family:Roboto,Arial,sans-serif;background-image:none!important}
.apr-replica img{max-width:100%;height:auto}
.apr-replica iframe{max-width:100%}
.apr-replica .apr-table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.apr-replica .animated{opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important}
.apr-replica .apr-skip{position:absolute;top:-100px;left:15px;z-index:99999;padding:12px 20px;background:white;color:#222}
.apr-replica .apr-skip:focus{top:10px}
.apr-replica :focus-visible{outline:3px solid #02aeff;outline-offset:4px}
.apr-replica .navbar-nav>li:hover>.dropdown-menu,.apr-replica .navbar-nav>li:focus-within>.dropdown-menu{display:block;opacity:1;visibility:visible}
.apr-replica .navbar-nav>li.current-menu-item>a,.apr-replica .navbar-nav>li.current-menu-ancestor>a{color:#6ea943}
.apr-replica .navbar-toggle:after{content:none}
.apr-replica .navbar-toggle{font-family:Arial,sans-serif;line-height:25px}
.apr-replica.admin-bar .header-wrapper{top:32px}
.apr-replica .header-wrapper.header-main-scrolled{top:0}
.apr-replica .header-wrapper.header-main-scrolled{background:#fff!important;box-shadow:0 2px 8px #0002}
.apr-replica .header-wrapper.header-main-scrolled .header-top{background:#333!important}
.apr-replica.admin-bar .header-wrapper.header-main-scrolled{top:32px}
.apr-replica .apr-home-slider{min-height:400px;position:relative}
.apr-replica .apr-home-slider .n2-ss-slider-controls-below,.apr-replica .apr-home-slider .n2-ss-control-thumbnail{display:none!important}
.apr-replica .apr-home-slider .n2-ss-divider,.apr-replica .apr-home-slider .n2-ss-shape-divider-inner{display:none!important}
.apr-replica #kt-scroll-up,.apr-replica #kt-scroll-up-reader{display:none!important}
.apr-replica .scrollup{position:fixed!important;right:20px!important;bottom:20px!important;left:auto!important;top:auto!important;width:44px!important;height:44px!important;display:flex!important;align-items:center;justify-content:center;background:#6ea943;color:#fff;border-radius:4px;z-index:1000;opacity:1!important}
.apr-replica .scrollup{min-width:44px!important;max-width:44px!important;padding:0!important;border:0!important}
.apr-replica .scrollup::after{display:none!important}
.apr-replica #slide-panel{display:none;padding:24px 0;background:#222}
.apr-replica.apr-search-open #slide-panel{display:block;position:fixed;top:0;left:0;right:0;transform:none;z-index:100001;box-shadow:0 6px 20px #0005;max-height:100vh;overflow-y:auto}
.apr-replica.admin-bar.apr-search-open #slide-panel{top:32px;max-height:calc(100vh - 32px)}
.apr-replica .apr-search-form{display:flex;align-items:center;gap:12px;position:relative}
.apr-replica .apr-search-form input{flex:1;min-width:0;padding:12px;color:#222;background:#fff;border:1px solid #bbb;border-radius:3px}
.apr-replica .apr-search-close{background:none;color:#fff;border:0;font-size:32px;padding:0 10px}
.apr-replica .apr-icon{font-style:normal;line-height:1.2;vertical-align:middle}
.apr-replica .apr-form{max-width:700px;margin:0 auto;text-align:left}
.apr-replica .apr-form>label{display:block;font-size:15px;font-weight:500;margin:15px 0 6px}
.apr-replica .apr-form input:not([type=checkbox]):not([type=hidden]),.apr-replica .apr-form textarea{width:100%;padding:12px;border:1px solid #bbb;background:#fff;color:#222;border-radius:3px;box-sizing:border-box;font:inherit}
.apr-replica .apr-form textarea{resize:vertical}
.apr-replica .apr-form input,.apr-replica .apr-form textarea{font-size:16px!important}
.apr-replica .apr-form .apr-consent{display:flex;align-items:flex-start;gap:9px;flex-wrap:wrap;margin:18px 0;font-weight:400;font-size:14px;line-height:1.6}
.apr-replica .apr-consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px}
.apr-replica .apr-form-note{font-size:12px;line-height:1.6;margin:15px 0;color:inherit}
.apr-replica .apr-honey{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.apr-replica .apr-form-result{max-width:700px;margin:15px auto;padding:18px;border:2px solid #6ea943;border-radius:5px;background:#f1f8ea;color:#253a15;text-align:left}
.apr-replica .apr-form-result.apr-error{border-color:#a63737;background:#fff0f0;color:#762727}
.apr-replica .apr-social-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1220px;margin:24px auto;text-align:left;padding:0 12px}
.apr-replica .apr-social-source{min-width:0}
.apr-replica .apr-social-source>h3{font-size:20px;padding-bottom:15px;border-bottom:3px solid #6ea943;text-align:center}
.apr-replica .apr-social-source>h3 a{color:#333}
.apr-replica .apr-social-source>h3 .fa{margin-right:9px}
.apr-replica .apr-social-source .fts-jal-single-fb-post{background:#fff;border:1px solid #ddd;border-radius:5px;padding:16px!important;box-sizing:border-box!important;width:100%!important;margin:0 0 18px;box-shadow:0 3px 12px #0000000a;color:#333}
.apr-replica .apr-facebook .fts-jal-fb-message.apr-clamped{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden;max-height:11.8em}
.apr-replica .apr-facebook .fts-jal-fb-message{font-size:14px;line-height:1.65}
.apr-replica .apr-facebook .fts-jal-fb-picture img{border-radius:3px}
.apr-replica .apr-read-post{border:0;background:none;padding:8px 0;color:#517f2f;font:inherit;font-size:13px;font-weight:600}
.apr-replica .apr-social-raw[hidden]{display:none!important}
.apr-replica .apr-instagram-card .apr-social-media{aspect-ratio:1}
.apr-replica .apr-instagram-card h4{text-transform:none}
.apr-replica.home .apr-instagram-cards>.apr-social-card:nth-child(n+3),.apr-replica.home .apr-youtube-cards>.apr-social-card:nth-child(n+3),.apr-replica.home .apr-facebook .fts-jal-single-fb-post:nth-of-type(n+3){display:none}
.apr-replica .main-wrapper-header h2 img[src*="/linea.png"]{display:block;width:60px;margin:26px auto 0}
.apr-replica .main-wrapper-header.apr-banner-line{padding-bottom:80px}
.apr-replica .apr-social-card{background:#fff;color:#333;border:1px solid #ddd;border-radius:5px;overflow:hidden;margin:0 0 18px;box-shadow:0 3px 12px #0000000a}
.apr-replica .apr-social-card h4{font-size:17px;line-height:1.45;padding:14px 16px 0;margin:0;color:#333;text-transform:none}
.apr-replica .apr-social-card time{font-size:12px;color:#666;display:block;padding:7px 16px}
.apr-replica .apr-social-card p{font-size:14px;line-height:1.6;padding:0 16px;margin:5px 0 12px}
.apr-replica .apr-social-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#eee}
.apr-replica .apr-social-media img{height:100%;width:100%;object-fit:cover;display:block}
.apr-replica .apr-instagram-card .apr-social-media img{object-fit:contain;background:#fafafa}
.apr-replica .apr-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#cc0000;color:white;padding:9px 18px;border-radius:10px;font-size:24px}
.apr-replica .apr-social-link{display:block;font-size:13px;padding:0 16px 16px;font-weight:500}
.apr-replica .apr-blog{max-width:1170px;padding-top:40px;padding-bottom:50px}
.apr-replica .footer-wrapper .apr-latest-posts{list-style:none;padding:0;margin:0}
.apr-replica .footer-wrapper .apr-latest-posts li{margin:0;padding:0}
.apr-replica .footer-wrapper .apr-latest-posts h3{font-size:12px;line-height:1.1;margin:0 0 10px}
.apr-replica .apr-attitude-row{display:flex;flex-wrap:wrap;align-items:stretch}
.apr-replica .apr-attitude-row>.col-md-6{float:none}
.apr-replica .apr-attitude-panel{display:flex;align-items:center;justify-content:center;padding:30px 15px}
.apr-replica .apr-attitude-panel>.vmiddle{position:static;top:auto;transform:none;width:100%}
.apr-replica .apr-attitude-panel h2{margin:0;line-height:1}
.apr-replica .apr-attitude-panel img{display:block;width:100%;max-width:630px;height:auto;margin:0 auto}
.apr-replica .apr-blog-entry{border-bottom:1px solid #ddd;padding:10px 0 40px;margin-bottom:40px}
.apr-replica .apr-blog-entry h2{font-size:28px;text-transform:none;line-height:1.35}
.apr-replica .apr-blog-entry p{font-size:17px;line-height:1.8}
.apr-replica .apr-blog-entry time{display:block;color:#777;margin:10px 0 20px}
.apr-replica .apr-blog-image{max-height:360px;width:100%;object-fit:contain;object-position:left}
.apr-replica .apr-pagination{display:flex;gap:10px;flex-wrap:wrap}
.apr-replica .apr-pagination a{padding:10px 16px;border:1px solid #ccc;border-radius:3px}
.apr-replica .apr-pagination a[aria-current=page]{background:#6ea943;color:white;border-color:#6ea943}
.apr-replica .apr-post>.container{padding-top:40px;padding-bottom:50px}
.apr-replica .apr-post .item-page>.page-header h1{font-size:32px;line-height:1.35}
.apr-replica .apr-search-results,.apr-replica .apr-error{padding-top:40px;padding-bottom:70px}
.apr-replica .apr-lightbox{max-width:95vw;max-height:95vh;border:0;padding:45px 12px 12px;background:#fff;border-radius:6px;box-shadow:0 10px 60px #0008}
.apr-replica .apr-lightbox::backdrop{background:#000c}
.apr-replica .apr-lightbox img{max-height:80vh;max-width:88vw;object-fit:contain;display:block}
.apr-replica .apr-lightbox button{position:absolute;right:8px;top:3px;background:none;color:#222;border:0;font-size:30px;padding:0 10px}
.apr-replica .apr-carousel-controls{display:flex;justify-content:center;gap:10px;padding:10px}
.apr-replica .apr-carousel-controls button{border:1px solid #6ea943;border-radius:3px;background:white;color:#333;padding:6px 16px}
@media(max-width:991px){
 .apr-replica .apr-attitude-row>.col-md-6{width:100%;min-height:0}
 .apr-replica .navbar-collapse.in{display:block!important;max-height:75vh;overflow-y:auto;background:#fff!important;color:#333}
 .apr-replica .navbar-toggle{color:#333!important;background:#fff!important}
 .apr-replica .navbar-collapse.in .navbar-nav>li>a{color:#333}
 .apr-replica .navbar-nav>li>.dropdown-menu{position:static;float:none;width:100%;display:block;box-shadow:none;background:#fafafa;opacity:1;visibility:visible}
 .apr-replica .navbar-nav>li>.dropdown-menu a{padding-left:30px}
 .apr-replica .apr-social-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
 .apr-replica .apr-youtube{grid-column:1/-1}
 .apr-replica .apr-youtube-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
}
@media(max-width:600px){
 .apr-replica .apr-social-wall{grid-template-columns:1fr;padding:0 6px;gap:20px}
 .apr-replica .apr-youtube-cards{grid-template-columns:1fr}
 .apr-replica .apr-youtube{grid-column:auto}
 .apr-replica .apr-home-slider{min-height:280px}
 .apr-replica .header-top-left{display:none}
 .apr-replica .header-top-right .top-menu{font-size:10px}
 .apr-replica .navbar .logo img{max-width:230px}
 .apr-replica .apr-search-form{flex-wrap:wrap}
 .apr-replica .apr-search-form label{width:100%}
 .apr-replica .apr-blog-entry h2{font-size:24px}
 .apr-replica .main-wrapper-header h1{font-size:27px;overflow-wrap:anywhere}
 .apr-replica h1,.apr-replica h2,.apr-replica h3,.apr-replica h4,.apr-replica h5{overflow-wrap:break-word}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.apr-replica *{animation:none!important;transition:none!important}}

/* Owner-selected visual revisions D04-D31. */
.apr-replica .apr-accordion-caption{font-size:14px;font-weight:500;line-height:1.4;text-align:left}
.apr-replica .apr-summer-subtitle img[src*="/linea.png"]{display:block!important;width:60px!important;height:2px!important;margin:25px auto 0!important}
.apr-replica .apr-pedagogy-title{color:#fff!important;font-weight:700;text-shadow:0 1px 2px #0007}
.apr-replica .apr-standard-banner{background:#086f9e!important}
.apr-replica .apr-standard-banner h1{color:#fff!important;font-size:32px;line-height:1.35;font-weight:700}
.apr-replica .apr-standard-banner .container{position:relative;z-index:1}
.apr-replica .apr-social-source>h3 a{color:#fff2bd;font-weight:700;text-shadow:0 1px 2px #642828}
.apr-replica .apr-services-card img{display:block;width:100%;max-width:550px;height:auto;margin:25px auto}
.apr-replica .apr-about-links>li{width:100%!important;float:none!important}
.apr-replica .apr-about-links .feature-box-intro>.white-space{height:25px!important}
.apr-replica .apr-about-links .iconbox{margin-bottom:15px}
.apr-replica .apr-about-links .iconbox-wrapper{margin-bottom:14px}
.apr-replica .apr-about-links .feature-box{min-height:220px}
.apr-replica .apr-archive-highlight{display:inline-block;padding:6px 12px;border-radius:3px;font-size:14px}
.apr-replica .apr-circuit-block{background:#f4f7ef;padding:22px 0;color:#343434}
.apr-replica .apr-archive-content .color-white{color:#343434!important;text-shadow:none}
.apr-replica .apr-search-results article{padding:14px 0;border-bottom:1px solid #ddd}
.apr-replica .apr-search-results h2{font-size:21px;line-height:1.4;margin:0;font-weight:500;text-transform:none}
.apr-replica .apr-search-results h2 a{color:#517e30}
.apr-replica .apr-captcha{margin:20px 0;padding:15px;background:#f6f8f0;border:1px solid #c6d4b2;border-radius:4px;color:#283523}
.apr-replica .apr-captcha>label{font-size:15px;font-weight:500;display:block;margin:0 0 8px}
.apr-replica .apr-captcha-help,.apr-replica .apr-captcha-status{font-size:13px;line-height:1.5;margin:6px 0 12px}
.apr-replica .apr-captcha-picture{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.apr-replica .apr-captcha-picture img{width:232px;height:76px;max-width:100%;border:1px solid #aaa}
.apr-replica .apr-captcha-refresh{font:inherit;font-size:13px;padding:8px 12px;background:#fff;border:1px solid #6c8b48;border-radius:3px;color:#34551b}
.apr-replica .apr-captcha-refresh:disabled{opacity:.6}
.apr-replica .apr-captcha input[name="apr_captcha_answer"]{max-width:232px;font-size:20px!important;letter-spacing:4px;text-transform:uppercase}
.apr-replica .apr-icon[data-name="cloud-bolts"]{position:relative}
.apr-replica .apr-icon[data-name="cloud-bolts"]::after{font-family:FontAwesome;content:"\f0e7";position:absolute;left:45%;top:52%;font-size:.65em;text-shadow:1px 1px #fff}
.apr-replica .apr-error{font-size:15px}
.apr-replica .apr-error .btn{margin-top:20px}
.apr-replica .apr-error-wrapper{background:#fff}
.apr-replica .apr-search-results p{color:#333;font-size:16px;font-weight:400;line-height:1.65}
.apr-replica .apr-search-results p strong{color:#222;font-weight:700}
.apr-replica .apr-school-related{display:flex;justify-content:center;flex-wrap:wrap}
.apr-replica .apr-school-related>[class*="col-md-"]{float:none}
.apr-replica .apr-interview-player{margin:18px auto 30px;text-align:center}
.apr-replica .apr-interview-player audio{display:block;width:100%;max-width:520px;margin:0 auto}
@media(max-width:600px){.apr-replica .apr-standard-banner h1{font-size:27px}.apr-replica .apr-search-results h2{font-size:19px}}

/* Owner-approved functional/mobile corrections. Desktop slider styles are untouched. */
.apr-replica .apr-service-poster{display:inline-block;position:relative;max-width:100%;line-height:0;vertical-align:middle}
.apr-replica .apr-service-poster>a{display:block;position:relative}
.apr-replica .apr-service-poster>a>img:first-child{display:block}
.apr-replica .apr-service-poster .apr-service-poster-hover{position:absolute;left:22%;top:90.85%;width:54.5%;height:9.15%;max-width:none;margin:0;opacity:0;pointer-events:none;object-fit:fill}
.apr-replica .apr-service-poster>a:hover .apr-service-poster-hover,.apr-replica .apr-service-poster>a:focus-visible .apr-service-poster-hover{opacity:1}
.apr-replica .apr-areas-return{max-width:100%;white-space:normal;box-sizing:border-box;line-height:1.4}
#n2-ss-2 .apr-mobile-slide{display:none}
@media(max-width:782px){.apr-replica.admin-bar.apr-search-open #slide-panel{top:46px;max-height:calc(100vh - 46px)}}
@media(max-width:600px){
 .apr-replica .apr-areas-return{font-size:18px;padding:14px 18px}
 .apr-replica .apr-english-contact .row{margin-left:0;margin-right:0}
 .apr-replica .apr-english-contact h3{overflow-wrap:anywhere;font-size:27px;line-height:1.35}
 .apr-replica .apr-summer-mobile-block{margin-left:15px;margin-right:15px}
 .apr-replica .apr-summer-mobile-block .row{margin-left:0;margin-right:0}
 .apr-replica .apr-summer-mobile-block .container{width:auto;max-width:100%;box-sizing:border-box}

 .apr-replica #n2-ss-2 .apr-has-mobile-layout>.n2-ss-layers-container{visibility:hidden!important;opacity:0!important;pointer-events:none}
 .apr-replica #n2-ss-2 .apr-has-mobile-layout>.n2-ss-layers-container *{visibility:hidden!important}
 .apr-replica #n2-ss-2 .apr-mobile-slide{display:flex;position:absolute;inset:0;box-sizing:border-box;padding:190px 24px 35px;overflow-y:auto;visibility:visible;opacity:1}
 .apr-replica #n2-ss-2 .apr-mobile-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;align-content:start}
 .apr-replica #n2-ss-2 .apr-mobile-subjects img{display:block;width:100%;height:auto}
 .apr-replica #n2-ss-2 .apr-mobile-testimonials{flex-direction:column;gap:6px;align-items:stretch}
 .apr-replica #n2-ss-2 .apr-mobile-testimonials>img{width:110px;height:auto;align-self:center;margin:0 0 12px;flex-shrink:0}
 .apr-replica #n2-ss-2 .apr-mobile-testimonials h2,.apr-replica #n2-ss-2 .apr-mobile-testimonials p{margin:0;padding:4px;text-align:center;color:#fff;background:#0008;text-shadow:0 1px 2px #000;text-transform:none;font-weight:700;flex-shrink:0;box-sizing:border-box}
 .apr-replica #n2-ss-2 .apr-mobile-testimonials h2{font-size:20px;line-height:1.3}
 .apr-replica #n2-ss-2 .apr-mobile-testimonials p{font-size:clamp(13px,3.6vw,15px);line-height:1.3}
}
