
/* Sant Sadurní Auto — Home */

body.home {
    margin: 0;
    background: #f7f4ee;
    color: #27211d;
}

body.home .site-header,
body.home #site-navigation,
body.home .widget-area,
body.home .entry-header,
body.home .site-footer {
    display: none !important;
}

body.home .grid-container,
body.home .site-content,
body.home .content-area,
body.home #primary,
body.home .inside-article,
body.home .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.home .site-content {
    display: block !important;
}

.ssa-home {
    font-family: Arial, Helvetica, sans-serif;
    background: #faf8f4;
    color: #27211d;
}

.ssa-home h1,
.ssa-home h2,
.ssa-home h3 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    margin-top: 0;
}

.ssa-home a,
.ssa-header a {
    text-decoration: none;
}

.ssa-header {
    height: 86px;
    background: #faf8f4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 48px;
    border-bottom: 1px solid #e8e1d7;
    position: relative;
    z-index: 20;
    box-sizing: border-box;
}

.ssa-logo {
    color: #6f1d2b !important;
    line-height: 1;
}

.ssa-logo strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    font-weight: 400;
}

.ssa-logo span {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 13px;
    letter-spacing: 2px;
    margin-top: 6px;
}

.ssa-nav {
    display: flex;
    align-items: center;
    gap: 32px;
}

.ssa-nav a {
    color: #27211d !important;
    font-size: 12px;
    font-weight: 600;
}

.ssa-nav a:hover {
    color: #7b1e2b !important;
}

.ssa-menu-mobile {
    display: none;
    font-size: 24px;
    border: 0;
    background: none;
}

.ssa-section {
    max-width: 1240px;
    margin: auto;
    padding: 80px 40px;
    box-sizing: border-box;
}

.ssa-eyebrow,
.ssa-kicker,
.ssa-category {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #7b1e2b;
}

.ssa-hero {
    min-height: 620px;
    display: flex;
    align-items: center;
    position: relative;
    background:
        linear-gradient(
            90deg,
            rgba(25,20,17,.82) 0%,
            rgba(25,20,17,.52) 42%,
            rgba(25,20,17,.16) 75%,
            rgba(25,20,17,.05) 100%
        ),
        var(--ssa-hero-image);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.ssa-hero-content {
    position: relative;
    z-index: 2;
    max-width: 1240px;
    width: 100%;
    margin: auto;
    padding: 90px 40px;
    color: white;
    box-sizing: border-box;
}

.ssa-kicker {
    color: #eadac5;
    display: block;
    margin-bottom: 20px;
}

.ssa-hero h1 {
    font-size: clamp(58px, 8vw, 105px);
    line-height: .92;
    letter-spacing: -3px;
    margin-bottom: 28px;
    color: white;
    max-width: 750px;
}

.ssa-hero p {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    margin-bottom: 38px;
    color: white;
}

.ssa-search {
    width: 100%;
    max-width: 530px;
    height: 62px;
    background: white;
    display: flex;
    align-items: stretch;
    box-shadow: 0 12px 40px rgba(0,0,0,.18);
}

.ssa-search input {
    flex: 1;
    min-width: 0;
    border: 0;
    padding: 0 22px;
    font-size: 15px;
    background: white;
    color: #5c554f;
    outline: none;
}

.ssa-search button {
    width: 64px;
    border: 0;
    background: #7b1e2b;
    color: white;
    font-size: 25px;
    cursor: pointer;
}

.ssa-section-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
    gap: 20px;
}

.ssa-section h2,
.ssa-instagram h2 {
    font-size: 42px;
    line-height: 1.05;
    color: #6f1d2b;
    margin: 8px 0 0;
}

.ssa-section-head > a {
    color: #6f1d2b;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.ssa-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.ssa-card {
    background: white;
    padding: 32px;
    min-height: 260px;
    border: 1px solid #ebe5dc;
    transition: all .25s ease;
    box-sizing: border-box;
}

.ssa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 35px rgba(0,0,0,.08);
}

.ssa-card-date {
    display: inline-flex;
    align-items: baseline;
    gap: 7px;
    margin-bottom: 30px;
    color: #7b1e2b;
}

.ssa-card-date strong {
    font-family: Georgia, serif;
    font-size: 45px;
    font-weight: 400;
    line-height: 1;
}

.ssa-card-date span {
    font-size: 12px;
    font-weight: bold;
}

.ssa-card h3 {
    font-size: 27px;
    line-height: 1.15;
    margin: 10px 0 15px;
}

.ssa-card p {
    line-height: 1.6;
    color: #706963;
    margin: 0;
}

.ssa-light {
    max-width: none;
    background: #f1ece3;
    padding-left: max(40px, calc((100vw - 1160px) / 2));
    padding-right: max(40px, calc((100vw - 1160px) / 2));
}

.ssa-categories {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin-top: 45px;
    border-top: 1px solid #d8cec0;
    border-bottom: 1px solid #d8cec0;
}

.ssa-categories a {
    color: #27211d;
    padding: 35px 22px;
    border-right: 1px solid #d8cec0;
    min-height: 150px;
    transition: background .2s ease;
    box-sizing: border-box;
}

.ssa-categories a:last-child {
    border-right: 0;
}

.ssa-categories a:hover {
    background: white;
}

.ssa-categories strong {
    display: block;
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 10px;
}

.ssa-categories span {
    font-size: 13px;
    line-height: 1.5;
    color: #716a63;
}

.ssa-news {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid #ddd4c9;
}

.ssa-news article {
    padding: 35px 35px 35px 0;
    margin-right: 35px;
    border-right: 1px solid #ddd4c9;
}

.ssa-news article:last-child {
    border-right: 0;
}

.ssa-news article > span {
    color: #7b1e2b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.ssa-news h3 {
    font-size: 27px;
    margin: 14px 0;
    line-height: 1.2;
}

.ssa-news p {
    color: #706963;
    line-height: 1.6;
}

.ssa-instagram {
    text-align: center;
    background: #291f1c;
    color: white;
    padding: 90px 30px;
}

.ssa-instagram .ssa-eyebrow {
    color: #d8b6a2;
}

.ssa-instagram h2 {
    color: white;
    font-size: 52px;
    margin: 10px 0 18px;
}

.ssa-instagram p {
    color: #d4cec8;
    font-size: 17px;
    margin-bottom: 30px;
}

.ssa-button {
    display: inline-block;
    padding: 15px 27px;
    background: #7b1e2b;
    color: white !important;
    font-size: 14px;
    font-weight: 700;
}

.ssa-independent {
    padding: 22px;
    text-align: center;
    font-size: 12px;
    color: #b9aba3;
    background: #1e1715;
}

@media (max-width: 900px) {
    .ssa-header {
        height: 72px;
        padding: 0 22px;
    }

    .ssa-nav {
        display: none;
    }

    .ssa-menu-mobile {
        display: block;
    }

    .ssa-section {
        padding: 60px 24px;
    }

    .ssa-hero {
        min-height: 540px;
    }

    .ssa-hero-content {
        padding: 75px 24px;
    }

    .ssa-hero h1 {
        font-size: 62px;
        letter-spacing: -2px;
    }

    .ssa-hero p {
        font-size: 21px;
    }

    .ssa-cards,
    .ssa-news {
        grid-template-columns: 1fr;
    }

    .ssa-categories {
        grid-template-columns: 1fr;
    }

    .ssa-categories a {
        border-right: 0;
        border-bottom: 1px solid #d8cec0;
        min-height: auto;
    }

    .ssa-news article {
        border-right: 0;
        border-bottom: 1px solid #ddd4c9;
        margin: 0;
        padding-right: 0;
    }

    .ssa-section-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .ssa-light {
        padding-left: 24px;
        padding-right: 24px;
    }
}


.ssa-card-link,
.ssa-news article a {
    display: block;
    color: inherit !important;
    height: 100%;
}

.ssa-meta {
    font-size: 12px;
    font-weight: 700;
    color: #7b1e2b !important;
    margin-bottom: 8px !important;
}

.ssa-empty {
    grid-column: 1 / -1;
    padding: 34px;
    border: 1px solid #e5ded4;
    background: #fff;
    color: #706963;
}


/* Descobreix — banner visual. La imatge de raïm es podrà substituir sense tocar l'estructura. */
.ssa-discover {
    min-height: 330px;
    position: relative;
    display: flex;
    align-items: center;
    background:
        linear-gradient(90deg, rgba(35,25,22,.82) 0%, rgba(35,25,22,.48) 48%, rgba(35,25,22,.12) 100%),
        var(--ssa-discover-image);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.ssa-discover-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1240px;
    margin: auto;
    padding: 70px 40px;
    box-sizing: border-box;
    color: white;
}

.ssa-discover .ssa-eyebrow {
    color: #eadac5;
}

.ssa-discover h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: 48px;
    line-height: 1.05;
    margin: 10px 0 14px;
    color: white;
}

.ssa-discover p {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    margin: 0 0 28px;
}

.ssa-discover-button {
    display: inline-block;
    color: white !important;
    border-bottom: 1px solid rgba(255,255,255,.65);
    padding-bottom: 5px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

@media (max-width: 900px) {
    .ssa-discover-content { padding: 60px 24px; }
    .ssa-discover h2 { font-size: 40px; }
}


.ssa-source-link,
.ssa-news-source {
    display: inline-block;
    margin-top: 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .4px;
    color: #7b1e2b;
}

.ssa-discover {
    background-color: #33251f;
}


/* 0.5.7 — images for agenda and news */
.ssa-card {
    overflow: hidden;
}
.ssa-card-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    background-size: cover;
    background-position: center;
}
.ssa-card-body {
    padding: 22px;
}
.ssa-card.has-image .ssa-card-link {
    padding: 0;
}
.ssa-card:not(.has-image) .ssa-card-body {
    padding: 0;
}
.ssa-news-card > a {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 20px;
    align-items: start;
}
.ssa-news-image {
    width: 150px;
    height: 105px;
    object-fit: cover;
    border-radius: 2px;
}
@media (max-width: 700px) {
    .ssa-news-card > a {
        grid-template-columns: 105px 1fr;
        gap: 14px;
    }
    .ssa-news-image {
        width: 105px;
        height: 82px;
    }
}


/* 0.5.9 — guaranteed visual cards */
.ssa-card-image {
    min-height: 185px;
    background-color: #e9e3d9;
}
.ssa-news-image {
    background: #e9e3d9;
}

/* 0.6.0 */
.ssa-card-image{background-size:cover!important;background-position:center!important;}

/* 0.6.4 rebuilt home */
.ssa-agenda-home{width:100%;max-width:1320px;margin:auto;box-sizing:border-box}
.ssa-agenda-home .ssa-cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.ssa-agenda-home .ssa-card{min-width:0;overflow:hidden}
.ssa-agenda-home .ssa-card-image{width:100%;aspect-ratio:16/9;min-height:0;background-size:cover!important;background-position:center!important}
.ssa-editorial-social{width:100%;max-width:1320px;margin:auto;padding:56px;box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;gap:54px;background:#fff;clear:both}
.ssa-editorial-col{min-width:0}
.ssa-editorial-social .ssa-news-home,.ssa-editorial-social .ssa-instagram-home{width:100%;max-width:none;margin:0;padding:0;background:#fff;color:#221d19}
.ssa-editorial-social .ssa-news{display:block}
.ssa-editorial-social .ssa-news article{margin:0;padding:14px 0;border-right:0;border-bottom:1px solid #e5ded4}
.ssa-editorial-social .ssa-news article:last-child{border-bottom:0}
.ssa-editorial-social .ssa-news-card>a{display:grid;grid-template-columns:125px minmax(0,1fr);gap:18px}
.ssa-editorial-social .ssa-news-image{width:125px;height:90px;object-fit:cover}
.ssa-editorial-social .ssa-news h3{font-size:19px;line-height:1.2;margin:5px 0}
.ssa-editorial-social .ssa-news p{display:none}
.ssa-social-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}
.ssa-social-head h2{margin:4px 0 0;color:#7a1f2d;font-size:29px}
.ssa-social-head>a{color:#7a1f2d;font-size:11px;font-weight:700;text-decoration:none}
.ssa-instagram-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ssa-instagram-grid>div{aspect-ratio:1/1;background-size:cover;background-position:center;border-radius:4px}
@media(max-width:1000px){.ssa-agenda-home .ssa-cards{grid-template-columns:repeat(2,1fr)!important}.ssa-editorial-social{grid-template-columns:1fr;padding:44px 28px}}
@media(max-width:600px){.ssa-agenda-home .ssa-cards{grid-template-columns:1fr!important}.ssa-instagram-grid{grid-template-columns:repeat(2,1fr)}}

/* ==========================================================
   0.6.5 — visual tuning to original approved mockup
   ========================================================== */

/* Agenda: compact editorial cards */
.ssa-agenda-home{
    padding-top:42px!important;
    padding-bottom:42px!important;
}
.ssa-agenda-home .ssa-section-head{
    margin-bottom:20px;
}
.ssa-agenda-home .ssa-eyebrow{
    display:none;
}
.ssa-agenda-home .ssa-section-head h2{
    font-size:27px;
    text-transform:uppercase;
    letter-spacing:.2px;
}
.ssa-agenda-home .ssa-card{
    border:0!important;
    box-shadow:0 2px 10px rgba(35,28,22,.045)!important;
    background:#fff;
}
.ssa-agenda-home .ssa-card-link{
    display:block;
}
.ssa-agenda-home .ssa-card-image{
    aspect-ratio:1.46/1!important;
}
.ssa-agenda-home .ssa-card-body{
    padding:13px 14px 16px!important;
}
.ssa-agenda-home .ssa-card-date{
    display:flex;
    align-items:center;
    gap:5px;
    margin:0 0 6px!important;
}
.ssa-agenda-home .ssa-card-date strong,
.ssa-agenda-home .ssa-card-date span{
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:500!important;
    color:#514942!important;
}
.ssa-agenda-home .ssa-category,
.ssa-agenda-home .ssa-card-body > p:not(.ssa-meta),
.ssa-agenda-home .ssa-source-link{
    display:none!important;
}
.ssa-agenda-home .ssa-card h3{
    margin:0 0 6px!important;
    font-size:17px!important;
    line-height:1.18!important;
    font-weight:500;
}
.ssa-agenda-home .ssa-meta{
    display:block!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.3!important;
    color:#4f4944!important;
    font-weight:400!important;
}

/* Què fer: thinner, icon-led strip */
.ssa-light{
    padding-top:32px!important;
    padding-bottom:32px!important;
}
.ssa-light > .ssa-eyebrow{display:none}
.ssa-light > h2{
    text-align:center;
    text-transform:uppercase;
    font-size:24px!important;
    margin:0 0 18px!important;
}
.ssa-categories{
    margin-top:0!important;
    border:0!important;
}
.ssa-categories a{
    min-height:92px!important;
    padding:14px 12px!important;
    text-align:center;
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
}
.ssa-categories a:not(:last-child){
    border-right:1px solid #ddd5c9;
}
.ssa-cat-icon{
    display:block;
    height:25px;
    font-family:Georgia,serif;
    font-style:normal;
    font-size:24px;
    line-height:1;
    color:#3d3329;
}
.ssa-categories strong{
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:11px!important;
    text-transform:uppercase;
}
.ssa-categories span{
    font-size:10px!important;
    line-height:1.3;
}

/* Actualitat / Viu: compact like reference */
.ssa-editorial-social{
    padding-top:38px!important;
    padding-bottom:40px!important;
}
.ssa-editorial-social .ssa-section-head{
    margin-bottom:8px;
}
.ssa-editorial-social .ssa-section-head .ssa-eyebrow{
    display:none;
}
.ssa-editorial-social .ssa-section-head h2,
.ssa-social-head h2{
    font-size:25px!important;
    text-transform:uppercase;
}
.ssa-editorial-social .ssa-news article{
    padding:10px 0!important;
}
.ssa-editorial-social .ssa-news-card>a{
    grid-template-columns:105px minmax(0,1fr)!important;
    gap:14px!important;
}
.ssa-editorial-social .ssa-news-image{
    width:105px!important;
    height:72px!important;
}
.ssa-editorial-social .ssa-news h3{
    font-size:16px!important;
    line-height:1.2!important;
}
.ssa-editorial-social .ssa-news-body>span{
    font-size:9px!important;
}
.ssa-editorial-social .ssa-news-source{
    font-size:9px!important;
}
.ssa-instagram-grid{
    gap:6px!important;
}
.ssa-instagram-grid>div{
    border-radius:3px!important;
}

/* Discover slightly shorter, like mockup */
.ssa-discover{
    min-height:220px!important;
}
.ssa-discover-content{
    padding-top:38px!important;
    padding-bottom:38px!important;
}

@media(max-width:1000px){
    .ssa-agenda-home .ssa-card-body>p:not(.ssa-meta){display:none!important}
}

/* ==========================================================
   0.6.6 — fix blank gap + guaranteed Agenda visual fallback
   ========================================================== */
.ssa-editorial-social,
.ssa-editorial-social .ssa-editorial-col,
.ssa-editorial-social .ssa-news-home,
.ssa-editorial-social .ssa-instagram-home,
.ssa-instagram-grid{
    min-height:0!important;
    height:auto!important;
}

.ssa-editorial-social{
    align-items:start!important;
    padding-bottom:38px!important;
    margin-bottom:0!important;
}

.ssa-editorial-social .ssa-instagram-home{
    display:block!important;
}

.ssa-editorial-social .ssa-instagram-grid{
    margin-bottom:0!important;
    padding-bottom:0!important;
}

.ssa-editorial-social + .ssa-discover{
    margin-top:0!important;
    padding-top:0!important;
}

.ssa-discover{
    margin-top:0!important;
    clear:both!important;
}

/* Never leave the Agenda image area visually empty */
.ssa-agenda-home .ssa-card-image{
    background-image:url('../assets/fallback-general.jpg');
    background-color:#ddd4c6!important;
    background-repeat:no-repeat!important;
    background-size:cover!important;
    background-position:center!important;
}


/* ==========================================================
   0.6.7 — Agenda image proportions + print/PDF pagination fix
   ========================================================== */

/* Fixed visual frame. Original image proportions are preserved and cropped,
   never stretched. */
.ssa-agenda-home .ssa-card-image{
    width:100%!important;
    aspect-ratio:16/9!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    background:#e7dfd2!important;
    position:relative!important;
}

.ssa-agenda-home .ssa-card-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    position:absolute!important;
    inset:0!important;
    object-fit:cover!important;
    object-position:center!important;
}

/* Keep cards themselves from stretching unevenly. */
.ssa-agenda-home .ssa-card,
.ssa-agenda-home .ssa-card-link{
    height:100%;
}
.ssa-agenda-home .ssa-card-link{
    display:flex!important;
    flex-direction:column!important;
}
.ssa-agenda-home .ssa-card-body{
    flex:1 1 auto;
}

/* The large white band seen in full-page PDF captures is page-break behavior:
   prevent the editorial block / gallery from being split awkwardly. */
@media print{
    @page{
        margin:0;
        size:auto;
    }

    html,body,
    .ssa-home{
        height:auto!important;
        min-height:0!important;
        overflow:visible!important;
    }

    .ssa-editorial-social,
    .ssa-editorial-col,
    .ssa-news-home,
    .ssa-instagram-home,
    .ssa-instagram-grid,
    .ssa-discover{
        break-before:auto!important;
        break-after:auto!important;
        break-inside:auto!important;
        page-break-before:auto!important;
        page-break-after:auto!important;
        page-break-inside:auto!important;
    }

    .ssa-editorial-social{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        align-items:start!important;
        height:auto!important;
        min-height:0!important;
    }

    .ssa-instagram-grid{
        display:grid!important;
        grid-template-columns:repeat(3,1fr)!important;
    }

    .ssa-discover{
        margin-top:0!important;
    }
}


/* ==========================================================
   0.6.8 — corrected image proportions for "Aquesta setmana"
   ========================================================== */

/* Reference mockup uses a landscape ratio closer to 3:2 than 16:9. */
.ssa-agenda-home .ssa-card-image{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:3 / 2!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    background:#e9e2d7!important;
}

/* Preserve original image geometry. No stretching. */
.ssa-agenda-home .ssa-card-image img{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    min-width:0!important;
    min-height:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    aspect-ratio:auto!important;
    transform:none!important;
}

/* Neutralize generic theme rules that can distort post images. */
.ssa-agenda-home img{
    object-fit:cover!important;
    height:100%!important;
    width:100%!important;
}

/* Keep every card same visual geometry without stretching the image itself. */
.ssa-agenda-home .ssa-card{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
}
.ssa-agenda-home .ssa-card-link{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
}
.ssa-agenda-home .ssa-card-body{
    flex:1 1 auto!important;
}

/* On narrow screens, use the same 3:2 image ratio. */
@media(max-width:700px){
    .ssa-agenda-home .ssa-card-image{
        aspect-ratio:3 / 2!important;
    }
}


/* ==========================================================
   0.6.9 — definitive Agenda image rendering
   ========================================================== */

/* Render as CSS background, isolating the card image from theme img rules. */
.ssa-agenda-home .ssa-card-image{
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:0!important;
    min-height:0!important;
    max-height:none!important;
    padding-bottom:66.6667%!important; /* 3:2 */
    aspect-ratio:auto!important;
    overflow:hidden!important;

    background-color:#e9e2d7!important;
    background-repeat:no-repeat!important;
    background-position:center center!important;
    background-size:cover!important;

    transform:none!important;
}

/* Old image-element rules must not affect layout if cached markup survives briefly. */


/* Prevent theme rules from stretching the card/link. */
.ssa-agenda-home .ssa-card-link{
    display:block!important;
    height:auto!important;
}
.ssa-agenda-home .ssa-card{
    height:auto!important;
    min-height:0!important;
}
.ssa-agenda-home .ssa-card-body{
    height:auto!important;
    min-height:0!important;
}

/* Keep all four columns equal without forcing the photographs themselves. */
.ssa-agenda-home .ssa-cards{
    align-items:start!important;
}


/* ==========================================================
   0.7.0 — Agenda photos: robust real <img> rendering
   ========================================================== */

.ssa-agenda-home .ssa-card-image{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:3 / 2!important;
    overflow:hidden!important;
    background:#e9e2d7!important;
    padding:0!important;
}

/* Only this specific image is sized. No global .ssa-agenda-home img rule. */
.ssa-agenda-home .ssa-card-photo{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    min-width:0!important;
    min-height:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    aspect-ratio:auto!important;
    transform:none!important;
    margin:0!important;
    padding:0!important;
}

/* Neutralize obsolete background-image behavior from 0.6.9. */
.ssa-agenda-home .ssa-card-image{
    background-image:none!important;
    background-size:auto!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
}

/* Cards remain compact; images never determine text-area height. */
.ssa-agenda-home .ssa-card,
.ssa-agenda-home .ssa-card-link{
    height:auto!important;
    min-height:0!important;
}

@media(max-width:700px){
    .ssa-agenda-home .ssa-card-image{
        aspect-ratio:3 / 2!important;
    }
}


/* ==========================================================
   0.7.1 — remove legacy rule hiding Agenda photos
   ========================================================== */
.ssa-agenda-home .ssa-card-image img.ssa-card-photo{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;

    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    min-width:0!important;
    min-height:0!important;

    object-fit:cover!important;
    object-position:center center!important;
    aspect-ratio:auto!important;

    margin:0!important;
    padding:0!important;
    border:0!important;
    transform:none!important;
}

.ssa-agenda-home .ssa-card-image{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:3 / 2!important;
    height:auto!important;
    padding:0!important;
    overflow:hidden!important;
    background:#e9e2d7!important;
}


/* ==========================================================
   0.7.2 — trustworthy images + true proportions
   ========================================================== */

.ssa-agenda-home .ssa-card-image{
    position:relative!important;
    width:100%!important;
    height:190px!important;
    min-height:190px!important;
    aspect-ratio:auto!important;
    padding:0!important;
    overflow:hidden!important;
    background:#f2eee7!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}

/* Full source image, natural geometry: no crop, no stretch. */
.ssa-agenda-home .ssa-card-photo{
    position:static!important;
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:100%!important;
    min-width:0!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center!important;
    aspect-ratio:auto!important;
    transform:none!important;
    margin:auto!important;
}

/* Editorial fallback is intentionally not a fake photograph. */
.ssa-agenda-home .ssa-card-placeholder{
    width:100%!important;
    height:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:
        linear-gradient(135deg, rgba(122,31,45,.06), rgba(122,31,45,.015)),
        #eee8df!important;
    border-bottom:1px solid #e3dbcf;
}

.ssa-agenda-home .ssa-card-placeholder span{
    font-family:Arial,Helvetica,sans-serif;
    color:#7a1f2d;
    font-size:11px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

/* Explicitly override earlier cover/absolute rules. */
.ssa-agenda-home .ssa-card-image img.ssa-card-photo{
    position:static!important;
    inset:auto!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
}


/* ==========================================================
   0.7.3 — Viu Sant Sadurní sizing + source image extraction
   ========================================================== */

/* Keep the Instagram-style gallery fully inside its own column. */
.ssa-editorial-social{
    align-items:start!important;
}

.ssa-editorial-social .ssa-editorial-col,
.ssa-editorial-social .ssa-instagram-home{
    overflow:hidden!important;
    min-height:0!important;
    height:auto!important;
}

.ssa-instagram-grid{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
    grid-auto-rows:auto!important;
    align-content:start!important;
}

.ssa-instagram-grid > div{
    width:100%!important;
    aspect-ratio:1 / 1!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
}

.ssa-editorial-social + .ssa-discover{
    margin-top:0!important;
    clear:both!important;
}


/* ==========================================================
   0.7.4 — landscape Viu Sant Sadurní + exact-event image pages
   ========================================================== */
.ssa-instagram-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    align-content:start!important;
    overflow:hidden!important;
}

.ssa-instagram-grid > div{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:3 / 2!important;
    background-size:cover!important;
    background-position:center!important;
    overflow:hidden!important;
}

.ssa-editorial-social{
    align-items:start!important;
    padding-bottom:28px!important;
    margin-bottom:0!important;
    min-height:0!important;
    height:auto!important;
}

.ssa-editorial-social .ssa-editorial-col,
.ssa-editorial-social .ssa-instagram-home{
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
}

.ssa-editorial-social + .ssa-discover{
    margin-top:0!important;
    clear:both!important;
}

@media print{
    .ssa-instagram-grid > div{
        aspect-ratio:3 / 2!important;
    }
    .ssa-editorial-social{
        break-inside:avoid!important;
        page-break-inside:avoid!important;
    }
}


/* ==========================================================
   0.7.5 — compact Viu grid to remove normal-page whitespace
   ========================================================== */
.ssa-instagram-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
}

.ssa-instagram-grid > div{
    aspect-ratio:16 / 10!important;
    height:auto!important;
    min-height:0!important;
}

.ssa-editorial-social{
    padding-bottom:22px!important;
    gap:42px!important;
}

.ssa-editorial-social .ssa-instagram-home,
.ssa-editorial-social .ssa-editorial-col{
    align-self:start!important;
    height:auto!important;
    min-height:0!important;
}

.ssa-editorial-social + .ssa-discover{
    margin-top:0!important;
}


/* ==========================================================
   0.8.0 — trusted imagery: bad photos rejected, placeholders refined
   ========================================================== */
.ssa-agenda-home .ssa-card-placeholder{
    background:
        radial-gradient(circle at 82% 18%, rgba(122,31,45,.08), transparent 28%),
        linear-gradient(145deg, #f5f0e8, #e9dfd3)!important;
    border:1px solid rgba(122,31,45,.08)!important;
}

.ssa-agenda-home .ssa-card-placeholder span{
    max-width:78%;
    text-align:center;
    line-height:1.4;
    color:#7a1f2d!important;
    font-size:10px!important;
    letter-spacing:1.4px!important;
}

/* Trusted images are shown without distortion. */
.ssa-agenda-home .ssa-card-photo{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#f5f1ea!important;
}


/* ==========================================================
   0.8.1 — hybrid imagery: real event image or approved illustration
   ========================================================== */
.ssa-agenda-home .ssa-card-image{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:3 / 2!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#f1ede6!important;
}

.ssa-agenda-home .ssa-card-photo{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
}

/* Real source image: no distortion, no forced crop. */
.ssa-agenda-home .ssa-real-photo{
    object-fit:contain!important;
    object-position:center!important;
    background:#f4f0e9!important;
}

/* Approved illustrative fallback: photographic crop designed for the card. */
.ssa-agenda-home .ssa-illustrative-photo{
    object-fit:cover!important;
    object-position:center!important;
}

.ssa-illustrative-label{
    position:absolute;
    left:8px;
    bottom:7px;
    z-index:2;
    padding:3px 6px;
    border-radius:2px;
    background:rgba(20,17,14,.64);
    color:#fff;
    font-family:Arial,Helvetica,sans-serif;
    font-size:8px;
    line-height:1;
    letter-spacing:.4px;
    text-transform:uppercase;
}

/* Never show the old beige placeholder in home cards. */
.ssa-agenda-home .ssa-card-placeholder{
    display:none!important;
}


/* ==========================================================
   0.8.3 — hero principal més compacte
   ========================================================== */
.ssa-hero{
    min-height:430px!important;
    height:430px!important;
}

.ssa-hero-content{
    padding-top:48px!important;
    padding-bottom:48px!important;
}

.ssa-hero h1{
    font-size:clamp(58px,6vw,88px)!important;
    margin-bottom:18px!important;
}

.ssa-hero p{
    margin-bottom:22px!important;
}

@media(max-width:900px){
    .ssa-hero{
        min-height:400px!important;
        height:400px!important;
    }
}

@media(max-width:600px){
    .ssa-hero{
        min-height:360px!important;
        height:360px!important;
    }
}


/* ==========================================================
   0.8.4 — Instagram real: @viusantsadurni / Smash Balloon feed 1
   ========================================================== */
.ssa-instagram-live{
    width:100%;
    min-width:0;
    overflow:hidden;
}

/* Our section already has its own title/header. */
.ssa-instagram-live #sb_instagram .sb_instagram_header,
.ssa-instagram-live #sb_instagram .sbi_header_link,
.ssa-instagram-live #sb_instagram .sbi_load_btn,
.ssa-instagram-live #sb_instagram .sbi_follow_btn,
.ssa-instagram-live #sb_instagram .sbi_footer{
    display:none!important;
}

/* Turn Smash Balloon's output into the 3 x 2 editorial grid used by the site. */
.ssa-instagram-live #sb_instagram{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
}

.ssa-instagram-live #sb_instagram #sbi_images{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
    float:none!important;
}

.ssa-instagram-live #sb_instagram .sbi_item{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    float:none!important;
}

/* Home only needs the six most recent posts. */
.ssa-instagram-live #sb_instagram .sbi_item:nth-child(n+7){
    display:none!important;
}

.ssa-instagram-live #sb_instagram .sbi_photo_wrap,
.ssa-instagram-live #sb_instagram .sbi_photo{
    width:100%!important;
    height:auto!important;
    margin:0!important;
}

.ssa-instagram-live #sb_instagram .sbi_photo{
    display:block!important;
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    height:auto!important;
    background-size:cover!important;
    background-position:center!important;
    border-radius:3px!important;
    overflow:hidden!important;
}

/* Keep overlays/lightbox behaviour from Smash Balloon, but remove extra spacing. */
.ssa-instagram-live #sb_instagram .sbi_photo img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}

.ssa-instagram-notice{
    padding:28px;
    background:#f4f0e9;
    color:#7a1f2d;
    font-size:13px;
    text-align:center;
}

@media(max-width:600px){
    .ssa-instagram-live #sb_instagram #sbi_images{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}


/* ==========================================================
   0.8.6 — navigation only to real content
   ========================================================== */
#agenda,
#que-fer,
#actualitat,
#viu-sant-sadurni,
#descobreix{
    scroll-margin-top:92px;
}

html{
    scroll-behavior:smooth;
}

/* "Què fer" is intentionally non-clickable until its internal pages exist. */
.ssa-categories .ssa-category-card{
    text-decoration:none;
    color:inherit;
    padding:0 26px;
    min-height:132px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.ssa-categories .ssa-category-card:not(:last-child){
    border-right:1px solid rgba(72,53,41,.14);
}

.ssa-categories .ssa-category-card strong{
    display:block;
}

.ssa-categories .ssa-category-card span{
    display:block;
}

@media(max-width:900px){
    .ssa-categories .ssa-category-card{
        padding:20px 14px;
    }
}

@media(max-width:600px){
    #agenda,
    #que-fer,
    #actualitat,
    #viu-sant-sadurni,
    #descobreix{
        scroll-margin-top:72px;
    }
}


/* ==========================================================
   0.9.0 — Què fer: one simple page, five sections
   ========================================================== */
.ssa-que-fer-view .entry-header{
    display:none!important;
}

.ssa-que-fer-view .site-content,
.ssa-que-fer-view .content-area,
.ssa-que-fer-view .site-main,
.ssa-que-fer-view article.page,
.ssa-que-fer-view .inside-article,
.ssa-que-fer-view .entry-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}

.ssa-que-fer-page{
    background:#f6f2ec;
    color:#2a211c;
    width:100%;
}

.ssa-qf-hero{
    background:#7a1f2d;
    color:#fff;
    padding:78px 6vw 68px;
}

.ssa-qf-hero-inner{
    max-width:1200px;
    margin:0 auto;
}

.ssa-qf-back{
    display:inline-block;
    margin-bottom:48px;
    color:#f1dfd5;
    text-decoration:none;
    font:700 11px/1.2 Arial,sans-serif;
    letter-spacing:1.3px;
}

.ssa-qf-hero .ssa-eyebrow{
    color:#e7c9bb;
}

.ssa-qf-hero h1{
    margin:10px 0 18px;
    max-width:760px;
    color:#fff;
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(54px,7vw,94px);
    line-height:.95;
    font-weight:400;
    letter-spacing:-2px;
}

.ssa-qf-hero p{
    max-width:720px;
    margin:0;
    color:#f4e9e4;
    font-family:Georgia,'Times New Roman',serif;
    font-size:20px;
    line-height:1.55;
}

.ssa-qf-jump{
    position:sticky;
    top:0;
    z-index:20;
    display:flex;
    justify-content:center;
    gap:30px;
    padding:18px 28px;
    background:rgba(250,248,244,.97);
    border-bottom:1px solid rgba(70,45,35,.12);
    backdrop-filter:blur(9px);
}

.ssa-qf-jump a{
    color:#6f1d2a;
    text-decoration:none;
    font:700 11px/1.2 Arial,sans-serif;
    letter-spacing:.8px;
    text-transform:uppercase;
    white-space:nowrap;
}

.ssa-qf-content{
    max-width:1220px;
    margin:0 auto;
    padding:16px 34px 80px;
}

.ssa-qf-section{
    padding:78px 0 68px;
    border-bottom:1px solid rgba(70,45,35,.14);
    scroll-margin-top:76px;
}

.ssa-qf-section:last-child{
    border-bottom:0;
}

.ssa-qf-heading{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
    gap:58px;
    align-items:center;
    margin-bottom:38px;
}

.ssa-qf-heading-copy h2{
    margin:7px 0 12px;
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(38px,4vw,56px);
    line-height:1;
    color:#6f1d2a;
    font-weight:400;
}

.ssa-qf-heading-copy p{
    max-width:650px;
    margin:0;
    font-family:Georgia,'Times New Roman',serif;
    font-size:17px;
    line-height:1.6;
    color:#58483e;
}

.ssa-qf-heading-image{
    aspect-ratio:16/9;
    overflow:hidden;
    background:#e8e0d8;
}

.ssa-qf-heading-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.ssa-qf-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.ssa-qf-card{
    position:relative;
    min-height:250px;
    padding:26px 24px 24px;
    background:#fff;
    border:1px solid rgba(92,64,51,.09);
}

.ssa-qf-number{
    display:block;
    margin-bottom:42px;
    color:#a48f81;
    font:700 10px/1 Arial,sans-serif;
    letter-spacing:1px;
}

.ssa-qf-card h3{
    margin:0 0 12px;
    color:#2f2520;
    font-family:Georgia,'Times New Roman',serif;
    font-size:23px;
    line-height:1.08;
    font-weight:400;
}

.ssa-qf-card p{
    margin:0 0 38px;
    color:#66574d;
    font:400 13px/1.55 Arial,sans-serif;
}

.ssa-qf-card a{
    position:absolute;
    left:24px;
    bottom:22px;
    color:#7a1f2d;
    text-decoration:none;
    font:700 10px/1.2 Arial,sans-serif;
    letter-spacing:.65px;
    text-transform:uppercase;
}

.ssa-qf-card a:hover,
.ssa-qf-jump a:hover,
.ssa-qf-back:hover{
    text-decoration:underline;
}

/* Reactivated home category cards */
.ssa-categories a.ssa-category-card{
    cursor:pointer;
    text-decoration:none!important;
    transition:background .18s ease, transform .18s ease;
}

.ssa-categories a.ssa-category-card:hover{
    background:#f1ebe3;
}

@media(max-width:950px){
    .ssa-qf-jump{
        justify-content:flex-start;
        overflow-x:auto;
    }

    .ssa-qf-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .ssa-qf-heading{
        grid-template-columns:1fr;
        gap:28px;
    }

    .ssa-qf-heading-image{
        max-width:620px;
    }
}

@media(max-width:600px){
    .ssa-qf-hero{
        padding:54px 24px 48px;
    }

    .ssa-qf-back{
        margin-bottom:32px;
    }

    .ssa-qf-hero p{
        font-size:17px;
    }

    .ssa-qf-content{
        padding:0 18px 56px;
    }

    .ssa-qf-section{
        padding:52px 0 46px;
        scroll-margin-top:68px;
    }

    .ssa-qf-grid{
        grid-template-columns:1fr;
    }

    .ssa-qf-card{
        min-height:215px;
    }
}


/* ==========================================================
   0.9.1 — Què fer full width, no WordPress sidebar
   ========================================================== */
.ssa-que-fer-view #right-sidebar,
.ssa-que-fer-view #left-sidebar,
.ssa-que-fer-view .widget-area,
.ssa-que-fer-view .sidebar,
.ssa-que-fer-view aside#secondary{
    display:none!important;
}

.ssa-que-fer-view #primary,
.ssa-que-fer-view .content-area{
    width:100%!important;
    max-width:none!important;
    float:none!important;
    margin:0!important;
}

.ssa-que-fer-view .site.grid-container,
.ssa-que-fer-view .site-content,
.ssa-que-fer-view .container.grid-container{
    max-width:none!important;
    width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
}


/* ==========================================================
   0.9.2 — Què fer cleanup: no theme chrome + compact hero
   ========================================================== */

/* Hide GeneratePress' own header/navigation on this custom landing page.
   The site's custom Sant Sadurní header remains visible. */
.ssa-que-fer-view .site-header,
.ssa-que-fer-view #site-navigation,
.ssa-que-fer-view .main-navigation,
.ssa-que-fer-view .page-header{
    display:none!important;
}

/* Remove the native GeneratePress footer/credit. */
.ssa-que-fer-view .site-footer,
.ssa-que-fer-view .site-info,
.ssa-que-fer-view .copyright-bar{
    display:none!important;
}

/* No leftover spacing from the hidden theme chrome. */
.ssa-que-fer-view .site-content{
    padding-top:0!important;
    padding-bottom:0!important;
}

/* Compact burgundy introduction: same design, much less scroll. */
.ssa-qf-hero{
    padding:40px 6vw 38px!important;
}

.ssa-qf-back{
    margin-bottom:20px!important;
}

.ssa-qf-hero h1{
    margin:7px 0 12px!important;
    font-size:clamp(48px,5.4vw,72px)!important;
    line-height:.96!important;
}

.ssa-qf-hero p{
    max-width:680px!important;
    font-size:17px!important;
    line-height:1.45!important;
}

@media(max-width:600px){
    .ssa-qf-hero{
        padding:32px 24px 30px!important;
    }

    .ssa-qf-back{
        margin-bottom:16px!important;
    }

    .ssa-qf-hero h1{
        font-size:46px!important;
    }

    .ssa-qf-hero p{
        font-size:16px!important;
    }
}


/* ==========================================================
   0.9.3 — Descobreix Sant Sadurní
   ========================================================== */
.ssa-descobreix-view .entry-header,
.ssa-descobreix-view .site-header,
.ssa-descobreix-view #site-navigation,
.ssa-descobreix-view .main-navigation,
.ssa-descobreix-view .page-header,
.ssa-descobreix-view #right-sidebar,
.ssa-descobreix-view #left-sidebar,
.ssa-descobreix-view .widget-area,
.ssa-descobreix-view .sidebar,
.ssa-descobreix-view aside#secondary,
.ssa-descobreix-view .site-footer,
.ssa-descobreix-view .site-info,
.ssa-descobreix-view .copyright-bar{
    display:none!important;
}

.ssa-descobreix-view .site-content,
.ssa-descobreix-view .content-area,
.ssa-descobreix-view .site-main,
.ssa-descobreix-view article.page,
.ssa-descobreix-view .inside-article,
.ssa-descobreix-view .entry-content,
.ssa-descobreix-view #primary,
.ssa-descobreix-view .site.grid-container,
.ssa-descobreix-view .container.grid-container{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
}

.ssa-desc-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.ssa-desc-grid .ssa-qf-card{
    min-height:245px;
}

.ssa-discover-button{
    display:inline-block;
    margin-top:20px;
    padding-bottom:6px;
    border-bottom:1px solid rgba(255,255,255,.7);
    color:#fff!important;
    text-decoration:none!important;
    font:700 11px/1.2 Arial,sans-serif;
    letter-spacing:1px;
}

.ssa-discover-button:hover{
    border-color:#fff;
}

@media(max-width:900px){
    .ssa-desc-grid{
        grid-template-columns:1fr!important;
    }

    .ssa-desc-grid .ssa-qf-card{
        min-height:210px;
    }
}
