/*
Theme Name: AMPA La Presentació — Stitch
Theme URI: https://www.ampapresentacioreus.com/
Author: AMPA Col·legi La Presentació
Description: Tema WordPress creado a partir del diseño HTML generado por Stitch. Sin Tailwind CDN; estilos incluidos localmente.
Version: 2.0.0
Text Domain: ampa-presentacio
*/

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap');

:root{
  --primary:#00385d; --primary-container:#0f4f7e; --secondary:#206585;
  --secondary-container:#9cd9ff; --tertiary:#4a3100; --tertiary-container:#674600;
  --background:#f8f9ff; --surface:#f8f9ff; --surface-low:#f2f3fa;
  --surface-container:#eceef4; --surface-high:#e6e8ef; --surface-lowest:#fff;
  --on-surface:#191c21; --on-surface-variant:#564244; --on-primary:#fff;
  --outline-variant:#dcc0c2; --primary-fixed:#cfe5ff; --secondary-fixed:#c4e7ff; --tertiary-fixed:#ffdeae;
  --space-xs:.375rem; --space-sm:.75rem; --space-md:1.25rem; --space-lg:2rem; --space-xl:3.5rem;
}
html{scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--background);color:var(--on-surface);font-size:16px;line-height:1.625}
body *{box-sizing:border-box}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,textarea,select{font:inherit}
/.material-symbols-outlined{font-family:'Material Symbols Outlined';font-weight:normal;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased;font-feature-settings:'liga'}
/* Layout */
.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}
.top-0{top:0}.left-0{left:0}.right-0{right:0}.bottom-0{bottom:0}.top-full{top:100%}
.inset-0{top:0;right:0;bottom:0;left:0}.z-10{z-index:10}.z-50{z-index:50}
.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}.hidden{display:none}
.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-grow{flex-grow:1}.items-center{align-items:center}.items-end{align-items:flex-end}
.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}
.max-w-\[1180px\]{max-width:1180px}.max-w-5xl{max-width:64rem}.max-w-3xl{max-width:48rem}.max-w-2xl{max-width:42rem}.max-w-xl{max-width:36rem}.w-full{width:100%}.w-fit{width:fit-content}.w-8{width:2rem}.w-12{width:3rem}.w-96{width:24rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-20{height:5rem}.h-48{height:12rem}.h-52{height:13rem}.h-\[380px\]{height:380px}.h-full{height:100%}
.mx-auto{margin-left:auto;margin-right:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-space-md{margin-top:var(--space-md)}.mt-space-lg{margin-top:var(--space-lg)}.mb-2{margin-bottom:.5rem}.mb-6{margin-bottom:1.5rem}.mb-10{margin-bottom:2.5rem}.mb-space-sm{margin-bottom:var(--space-sm)}.mb-space-lg{margin-bottom:var(--space-lg)}.mr-auto{margin-right:auto}
.p-2{padding:.5rem}.p-3{padding:.75rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}
.p-space-md{padding:var(--space-md)}.px-margin-mobile{padding-left:1rem;padding-right:1rem}.py-space-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-space-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.pt-space-xs{padding-top:var(--space-xs)}.pt-space-md{padding-top:var(--space-md)}.pt-\[116px\]{padding-top:116px}.pt-\[150px\]{padding-top:150px}.pt-\[180px\]{padding-top:180px}.pb-space-xl{padding-bottom:var(--space-xl)}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-space-xs{gap:var(--space-xs)}.gap-space-sm{gap:var(--space-sm)}.gap-space-md{gap:var(--space-md)}.gap-gutter{gap:1.5rem}
.space-y-2>*+*{margin-top:.5rem}
.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}
.overflow-hidden{overflow:hidden}.object-cover{object-fit:cover}.object-contain{object-fit:contain}
.bg-background{background:var(--background)}.bg-surface-container-lowest{background:var(--surface-lowest)}.bg-surface-container-low{background:var(--surface-low)}.bg-surface-container{background:var(--surface-container)}.bg-surface-container-high{background:var(--surface-high)}
.bg-primary{background:var(--primary)}.bg-primary-container{background:var(--primary-container)}.bg-secondary{background:var(--secondary)}.bg-secondary-fixed{background:var(--secondary-fixed)}.bg-tertiary-container{background:var(--tertiary-container)}.bg-tertiary-fixed{background:var(--tertiary-fixed)}
.bg-primary-fixed{background:var(--primary-fixed)}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-tertiary{color:var(--tertiary)}.text-on-primary{color:var(--on-primary)}.text-on-secondary{color:#fff}.text-on-surface{color:var(--on-surface)}.text-on-surface-variant{color:var(--on-surface-variant)}.text-secondary-fixed{color:var(--secondary-fixed)}
.bg-surface-container-lowest\/95{background:rgba(255,255,255,.95)}.bg-surface-container-low\/80{background:rgba(242,243,250,.8)}.bg-secondary-fixed\/50{background:rgba(196,231,255,.5)}.bg-primary-fixed\/60{background:rgba(207,229,255,.6)}.bg-primary-fixed\/25{background:rgba(207,229,255,.25)}.bg-secondary-fixed\/30{background:rgba(196,231,255,.3)}
.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-semibold{font-weight:600}.font-normal{font-weight:400}
.font-headline-sm{font-family:'Plus Jakarta Sans',sans-serif}.font-headline-lg{font-family:'Plus Jakarta Sans',sans-serif}.font-headline-display{font-family:'Plus Jakarta Sans',sans-serif}.font-body-sm,.font-body-md,.font-label-sm,.font-label-md,.font-label-lg{font-family:'Plus Jakarta Sans',sans-serif}
.text-label-sm{font-size:11px;line-height:14px;font-weight:700}.text-label-md{font-size:13px;line-height:18px;font-weight:600}.text-label-lg{font-size:15px;line-height:20px;font-weight:600}
.text-body-sm{font-size:14px;line-height:22px}.text-body-md{font-size:16px;line-height:26px}.text-headline-sm{font-size:20px;line-height:28px;font-weight:600}.text-headline-md{font-size:24px;line-height:32px;font-weight:600}.text-headline-lg{font-size:32px;line-height:40px;font-weight:700}.text-headline-display{font-size:44px;line-height:52px;font-weight:800}
.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-\[26px\]{font-size:26px}.text-\[48px\]{font-size:48px}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}
.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}
.text-center{text-align:center}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}
.shadow-sm{box-shadow:0 1px 3px rgba(0,0,0,.08)}.shadow-md{box-shadow:0 4px 10px rgba(0,0,0,.10)}.shadow-lg{box-shadow:0 10px 24px rgba(34,37,42,.10)}.shadow-xl{box-shadow:0 16px 34px rgba(34,37,42,.14)}.shadow-header{box-shadow:0 2px 15px rgba(31,95,153,.15)}
.shadow-\[0_1px_8px_rgba\(0\,0\,0\,0\.04\)\]{box-shadow:0 1px 8px rgba(0,0,0,.04)}.shadow-\[0_8px_24px_rgba\(34\,37\,42\,0\.08\)\]{box-shadow:0 8px 24px rgba(34,37,42,.08)}
.border-t{border-top:1px solid var(--outline-variant)}.border{border:1px solid var(--outline-variant)}.border-outline-variant{border-color:var(--outline-variant)}
.transition-colors,.transition-all,.transition-transform{transition:all .25s cubic-bezier(.16,1,.3,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}
.transform{transform:translateZ(0)}.scale-105{transform:scale(1.05)}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:-translate-y-0\.5:hover{transform:translateY(-2px)}.hover\:-translate-y-1:hover{transform:translateY(-4px)}
.blur-3xl{filter:blur(64px)}.pointer-events-none{pointer-events:none}.backdrop-blur-md{backdrop-filter:blur(12px)}
.flex-grow{flex-grow:1}.min-h-screen{min-height:100vh}.w-auto{width:auto}.text-white{color:#fff}
.opacity-80{opacity:.8}.opacity-95{opacity:.95}.drop-shadow{filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}.drop-shadow-md{filter:drop-shadow(0 3px 3px rgba(0,0,0,.25))}
.group{position:relative}.group:hover .group-hover\:text-primary{color:var(--primary)}.group:hover .group-hover\:text-on-primary{color:#fff}.group:hover .group-hover\:bg-primary{background:var(--primary)}.group:hover .group-hover\:bg-secondary{background:var(--secondary)}.group:hover .group-hover\:translate-x-1{transform:translateX(.25rem)}.group:hover .group-hover\:shadow-lg{box-shadow:0 10px 24px rgba(34,37,42,.10)}
/* special shapes */
.ampa-mark{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;flex:0 0 auto}
.ampa-mark-light{background:rgba(255,255,255,.15)}
.site-header .custom-logo-link{display:flex;align-items:center}.site-header .custom-logo{max-height:32px;width:auto;display:block}
.ampa-menu,.ampa-menu ul,.ampa-mobile-menu{list-style:none;margin:0;padding:0}
.ampa-menu>li{position:relative}.ampa-menu>li>a{display:flex;align-items:center;padding:.5rem .75rem;border-radius:.5rem;font-size:15px;line-height:20px;font-weight:600;color:var(--on-surface-variant);transition:all .2s}
.ampa-menu>li>a:hover,.ampa-menu>li.current-menu-item>a,.ampa-menu>li.current_page_item>a{color:var(--primary);background:var(--primary-fixed)}
.ampa-menu .sub-menu{position:absolute;left:0;top:100%;min-width:190px;background:#fff;border-radius:.5rem;padding:.5rem 0;box-shadow:0 8px 24px rgba(34,37,42,.08);display:none}
.ampa-menu li:hover>.sub-menu{display:block}
.ampa-menu .sub-menu a{display:block;padding:.5rem 1.25rem;color:var(--on-surface-variant);font-size:13px;line-height:18px;font-weight:600;white-space:nowrap}
.ampa-menu .sub-menu a:hover{background:var(--surface-container);color:var(--on-surface)}
.mobile-menu{box-shadow:0 8px 20px rgba(0,0,0,.06)}
.ampa-mobile-menu li{border-bottom:1px solid var(--surface-high)}
.ampa-mobile-menu a{display:block;padding:.8rem .25rem;font-weight:600;color:var(--on-surface-variant)}
.ampa-mobile-menu .sub-menu{padding-left:1rem}
.site-page{min-height:70vh}
.content-card{background:#fff;border-radius:1rem;padding:clamp(1.25rem,3vw,2.5rem);box-shadow:0 4px 20px rgba(0,0,0,.05)}
.page-featured img{width:100%;max-height:560px;object-fit:cover;border-radius:.9rem}
.prose-ampa{font-size:17px;line-height:1.8;color:var(--on-surface)}
.prose-ampa h2{font-size:30px;line-height:1.25;color:var(--primary);margin:2rem 0 .75rem}.prose-ampa h3{font-size:23px;color:var(--primary);margin:1.5rem 0 .5rem}.prose-ampa p{margin:0 0 1rem}.prose-ampa img{border-radius:.75rem}.prose-ampa a{color:var(--secondary);text-decoration:underline}
footer a:hover{opacity:.8}
@media (min-width:640px){
 .sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:flex-row{flex-direction:row}
 .sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}
 .sm\:w-auto{width:auto}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
}
@media (min-width:768px){
 .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
 .md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:inline-block{display:inline-block}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}
 .md\:col-span-3{grid-column:span 3/span 3}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}
}
@media (min-width:1024px){
 .lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
 .lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:px-margin{padding-left:2rem;padding-right:2rem}
 .lg\:mt-0{margin-top:0}.lg\:py-space-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}
 .lg\:text-7xl{font-size:4.5rem;line-height:1}
}
@media (max-width:1023px){
 .site-header .h-20{height:4.5rem}.site-header .ampa-menu{display:none}
}
@media (max-width:767px){
 .text-headline-display{font-size:32px;line-height:40px}
 .grid-cols-3{grid-template-columns:1fr}
 .h-\[380px\]{height:300px}
 .site-header .bg-surface-container-low{display:none}
 .site-header .h-20{height:4.5rem}
 .site-header .font-headline-sm{font-size:16px;line-height:22px}
 .site-page{padding-top:120px}
}
@media (max-width:639px){
 .sm\:hidden{display:block}
}
@media (min-width: 1024px) {
    .lg\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
/* =====================================================
   NOTICIAS
   ===================================================== */
.news-grid > *:not(.news-card) {
    display: contents !important;
}
.news-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: 100% !important;
    align-items: stretch !important;
}

.news-card {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.news-grid #et-boc,
.news-grid #et_builder_outer_content,
.news-grid .et-l,
.news-grid .et_builder_inner_content {
    display: contents !important;
}
.ampa-blog-2col.et_pb_module {
  --no-of-columns: 2;
  --gutter: 24px;
  --padding: 20px;
}
@media (min-width: 981px) {
  .ampa-blog-2col .et_pb_salvattore_content[data-columns]::before {
    content: '2 .column.size-1of2' !important;
  }
  .ampa-blog-2col .column.size-1of2 {
    width: 48% !important;
    margin-right: 2%;
  }
}