/* JUPACH official graphic guide. Additive layer for the current public site. */
@font-face{font-family:JupachMontserrat;font-style:normal;font-weight:400;font-display:swap;src:url('../images/fonts/jupach-montserrat-400.ttf') format('truetype')}
@font-face{font-family:JupachMontserrat;font-style:normal;font-weight:500;font-display:swap;src:url('../images/fonts/jupach-montserrat-500.ttf') format('truetype')}
@font-face{font-family:JupachMontserrat;font-style:normal;font-weight:600;font-display:swap;src:url('../images/fonts/jupach-montserrat-600.ttf') format('truetype')}
@font-face{font-family:JupachMontserrat;font-style:normal;font-weight:700;font-display:swap;src:url('../images/fonts/jupach-montserrat-700.ttf') format('truetype')}
@font-face{font-family:JupachMontserrat;font-style:normal;font-weight:800;font-display:swap;src:url('../images/fonts/jupach-montserrat-800.ttf') format('truetype')}
:root{--yellow:#FFEE41;--green:#008000;--red:#ED2100;--blue:#0F52BA;--orange:#F67239;--ink:#231F20;--navy:#102c4d;--muted:#40536b;--soft:#e9f4e3;--line:#d4dfeb}
body{font-family:JupachMontserrat,Montserrat,Arial,sans-serif;background:#fffbe3;color:var(--ink)}
body :is(h1,h2,h3,h4,.resource-cover,.product-image){font-family:JupachMontserrat,Montserrat,Arial,sans-serif!important}
body :is(button,input,select,textarea){font-family:inherit}
.site-header{background:#fffbdc;border-bottom:5px solid transparent;border-image:linear-gradient(90deg,#FFEE41 0 36%,#008000 36% 52%,#ED2100 52% 68%,#0F52BA 68% 84%,#F67239 84%) 1}
.site-header .brand.brand-official img{background:#fff;border-radius:8px;object-fit:contain}
.nav a{font-weight:600;color:var(--navy)}
.nav a:hover,.nav a.active{color:var(--blue);border-bottom-color:var(--yellow)}
.header-cta,.button.yellow{background:var(--yellow);color:var(--ink)}
.button.green{background:var(--green);color:#fff}
.button.blue{background:var(--blue);color:#fff}
.button.light{background:#fff;color:var(--navy)}
.hero,.page-hero{border-bottom:6px solid var(--yellow)}
.hero h1,.page-hero h1{font-weight:800;letter-spacing:-1.5px}
.hero h1 em,.hero .eyebrow,.page-hero .eyebrow{color:var(--yellow)}
.section-title h2{font-size:clamp(28px,3.8vw,46px);font-weight:800;letter-spacing:-1px;line-height:1.2}
.section-title .eyebrow,.intro .eyebrow{color:var(--green)}
.section-title h2,.section-title>.eyebrow{ text-align:center }
.section-title p:last-child,.intro p,.card p,.detail p{font-size:15px;line-height:1.85;color:var(--muted)}
/* Alternate broad colored panels with calm cards; retain every existing section. */
main>.section{background:#fff5b3;border-top:4px solid var(--yellow)}
main>.section.soft{background:#e4f1dd;border-top-color:var(--green)}
main>.section:nth-of-type(odd):not(.soft):not(.coordinations-section){background:#e7efff;border-top-color:var(--blue)}
main>.section.container{border-radius:24px;margin-top:35px;margin-bottom:35px;padding:45px 36px}
.value{background:#fff;border-top:5px solid var(--green);box-shadow:0 7px 20px #102c4d0b}
.intro{gap:38px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.intro>*{min-width:0}
.value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.value{min-width:0;padding:20px;overflow-wrap:break-word}
.value:nth-child(1)>span{background:var(--green)}
.value:nth-child(2)>span{background:var(--red)}
.value:nth-child(3)>span{background:var(--blue)}
.value:nth-child(4)>span{background:var(--orange)}
.value:nth-child(1){background:#e2f0db;border-color:var(--green)}
.value:nth-child(2){background:#ffe6dc;border-color:var(--red)}
.value:nth-child(3){background:#e0ebff;border-color:var(--blue)}
.value:nth-child(4){background:#fff7bd;border-color:var(--orange)}
.value h3,.card h3,.choice h3,.product h3{font-weight:700}
.value p{color:var(--muted);line-height:1.8;font-size:14px}
.card{background:#fffef8;border:1px solid #d6e1ed;border-top:5px solid var(--blue);box-shadow:0 8px 24px #102c4d10}
.card-grid>.card:nth-child(3n+1){border-top-color:var(--green)}
.card-grid>.card:nth-child(3n+3){border-top-color:var(--orange)}
.card-link{color:var(--blue);font-size:12px;line-height:1.7}
.resource,.product{background:#fffef8;border:1px solid #d6e1ed;border-top:5px solid var(--blue);box-shadow:0 8px 24px #102c4d10}
.resource:nth-child(3n+2),.product:nth-child(3n+2){border-top-color:var(--red)}
.resource:nth-child(3n+3),.product:nth-child(3n+3){border-top-color:var(--green)}
.resource p,.product p{color:var(--muted);font-size:14px;line-height:1.8}
.resource-cover{border-radius:12px}
.history-note{background:#fff4a3;border-left:5px solid var(--yellow)}
.detail{background:#fff8ce;border-radius:24px;margin-top:35px;margin-bottom:35px;padding:46px 32px;border-top:5px solid var(--blue)}
.detail>.eyebrow{color:var(--green)}
.detail .facts div{background:#e4eefc;border:1px solid #cfddf2}
.detail .facts div:nth-child(even){background:#e3f0dc;border-color:#c7dfbc}
.choice{background:#fff8ba;border:1px solid #e2cf6b;border-top:4px solid var(--yellow)}
.choice:nth-child(even){background:#e8f2e0;border-color:#c6ddbb;border-top-color:var(--green)}
.form{background:#fffef8;border-radius:18px;border-top:5px solid var(--blue);padding:25px;box-shadow:0 8px 25px #102c4d0e}
.form input,.form textarea{background:#fff;border-color:#b5c7de;color:var(--ink);font-size:14px}
.form :is(input,textarea,select):focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.gallery-carousel{border:5px solid var(--yellow);border-radius:22px;background:var(--blue)}
.gallery-carousel .carousel-btn{background:#fff8c5;color:var(--navy)}
.gallery-carousel .carousel-dots button.is-active{background:var(--yellow)}
/* The original full Chile map keeps its controls, clusters, geometry and data. */
.community-finder{--cm-blue:#0F52BA;--cm-green:#008000;--cm-red:#ED2100;--cm-navy:#102c4d;background:#e4f1dd;border-top:5px solid var(--green);font-family:JupachMontserrat,Montserrat,Arial,sans-serif}
.community-finder :is(button,input){font-family:JupachMontserrat,Montserrat,Arial,sans-serif}
.cm-heading .eyebrow{color:var(--green)}
.cm-filter[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:white}
.community-finder .contact-googleMap{border-top:5px solid var(--blue)}
.community-finder .cm-sidebar{border-top:5px solid var(--yellow)}
.cm-selection{background:#fff7bd}
/* Coordinations remain in their published position, with three original teams. */
.coordinations-section{background:#edf2ff!important;border-top-color:var(--blue)!important}
.coordinations-panel{background:#dbe6ff;box-shadow:none;border:1px solid #b9cdee}
.coordination-card{background:#fffef5;--coordination-accent:#008000}
.coordination-card:nth-child(2){--coordination-accent:#0F52BA}
.coordination-card:nth-child(3){--coordination-accent:#F67239}
.coordination-card__number{background:var(--yellow);font-family:JupachMontserrat,Montserrat,Arial,sans-serif!important}
/* News carousel retains its photos, navigation, shares and detail links. */
.jp-news-carousel{--news-accent:#ED2100;--news-ink:#231F20;--news-muted:#40536b;font-family:JupachMontserrat,Montserrat,Arial,sans-serif}
.jp-news-carousel .jn-card{border-radius:16px;background:#fffef5;border-top:5px solid var(--blue)}
.jp-news-carousel .owl-item:nth-child(3n+2) .jn-card{border-top-color:var(--red)}
.jp-news-carousel .owl-item:nth-child(3n+3) .jn-card{border-top-color:var(--orange)}
.jp-news-carousel .jn-category{background:var(--yellow);color:var(--ink);border-radius:8px}
.jp-news-carousel .jn-heading{color:var(--navy)}
.jp-news-carousel .jn-all,.jp-news-carousel .jn-arrow{background:var(--blue);color:white;border-color:var(--blue)}
.jp-news-carousel .jn-all:hover,.jp-news-carousel .jn-arrow:hover{background:#0b408e}
/* Calendar keeps the same dates and behavior; categories follow official colors. */
.jupach-calendar{--jc-green:#008000;--jc-ink:#231F20;--jc-muted:#40536b;--jc-line:#d4dfeb;font-family:JupachMontserrat,Montserrat,Arial,sans-serif}
.jupach-calendar::before{background:linear-gradient(135deg,#fff3ab,#e3f0dc 48%,#e7efff)}
.jupach-calendar__main{border-top:5px solid var(--blue)}
.jupach-calendar__sidebar{border-top:5px solid var(--green)}
.jupach-calendar__table th{background:#e7f2e0}
.jupach-calendar__badge{background:var(--yellow);color:var(--ink)}
.jupach-calendar__options{background:#fff9d6}
.jupach-calendar__quote{background:#e4f1dd}
.jupach-calendar [data-type=nacional]{--jc-type:#ED2100;--jc-type-bg:#ffede6}
.jupach-calendar [data-type=formacion]{--jc-type:#0F52BA;--jc-type-bg:#e7efff}
.jupach-calendar [data-type=encuentro]{--jc-type:#008000;--jc-type-bg:#e4f1dd}
.jupach-calendar [data-type=campamento]{--jc-type:#F67239;--jc-type-bg:#fff0e3}
.jupach-calendar [data-type=reunion]{--jc-type:#231F20;--jc-type-bg:#eeeae8}
#calendario-noticias.jupach-calendar .jupach-calendar__day[aria-pressed=true]{background:#fff6ac;box-shadow:inset 0 0 0 2px var(--yellow)}
/* Official logos retain their artwork and proportions; platform colors are separate. */
.footer{background:var(--blue);border-top:7px solid var(--yellow);color:white}
.footer h4{color:var(--yellow);font-size:13px;font-weight:700}
.footer>div>p,.footer>div>a:not(.brand),.footer>div>span,.copyright{color:#fff}
.footer>div>a:not(.brand),.footer>div>span{font-size:12px;line-height:1.8}
.footer .brand.brand-official img{background:#fff;border-radius:14px;object-fit:contain}
.copyright{border-top-color:#ffffff55;line-height:1.8}
@media(min-width:681px) and (max-width:1180px){.site-header{padding-inline:24px;gap:18px}.site-header .header-cta{display:none}.nav{gap:12px}.nav a{font-size:10px}}
@media(max-width:1180px){.intro{grid-template-columns:1fr;gap:28px}.value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.value-grid{grid-template-columns:1fr}}
@media(max-width:680px){.nav{background:#fffbdc}.nav a{font-size:13px}.hero h1,.page-hero h1{letter-spacing:-1px}.section-title h2{font-size:30px;letter-spacing:-.7px}main>.section.container{padding:32px 20px;margin-block:25px}.detail{padding:32px 20px;margin-block:25px}.form{padding:20px 16px}.section-title p:last-child,.intro p,.card p,.detail p{font-size:14px}.footer>div>a:not(.brand),.footer>div>span{font-size:13px}.jupach-calendar__title{font-size:27px}.cm-heading h2{font-size:31px}}
