/*
Theme Name: Socialdemokratiet Ballerup – nyt design
Theme URI: https://socb.dk/
Author: Socialdemokratiet Ballerup
Description: Moderne, redaktionelt WordPress-tema for Socialdemokratiet Ballerup. Bevarer eksisterende sider og SiteOrigin-indhold.
Version: 2.1.0
Text Domain: socb-redesign
*/
:root{--red:#e30613;--red-dark:#c9000c;--ink:#251c23;--muted:#776671;--pale:#f5eef1;--soft:#fbf8f9;--line:#e2d7dc;--white:#fff;--wrap:1200px;--shadow:0 18px 50px rgba(52,25,39,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(calc(100% - 48px),var(--wrap));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:9999;background:#fff;padding:12px 18px;border:2px solid var(--red)}.skip-link:focus{top:20px}
.brand-ribbon{background:var(--red);height:36px;color:#fff}.ribbon-lockup{height:36px;display:flex;align-items:center;gap:7px;width:max-content}.ribbon-lockup img{width:134px;height:auto;filter:brightness(0) invert(1)}.ribbon-lockup span{font-size:.71rem;font-weight:800;letter-spacing:.08em}.site-header{height:106px;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:13px;margin-right:auto;font-size:1.12rem;font-weight:700;line-height:1.05;letter-spacing:-.02em}.brand img{width:52px;height:52px;object-fit:contain}.brand small{display:block;color:var(--red);font-size:.66rem;letter-spacing:.17em;margin-top:7px}.primary-nav{display:flex;align-items:center;gap:29px}.primary-nav a{font-size:.89rem;font-weight:650;white-space:nowrap;border-bottom:2px solid transparent;padding:9px 0}.primary-nav a:hover,.primary-nav a:focus{color:var(--red);border-color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:#fff!important;border:0;padding:14px 21px;font-weight:750;font-size:.88rem;line-height:1.2;transition:.2s}.button:hover,.button:focus{background:var(--red-dark);transform:translateY(-1px)}.header-cta{padding:13px 18px}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;padding:9px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0}
.eyebrow{font-size:.7rem;letter-spacing:.16em;font-weight:800;margin:0 0 22px;text-transform:uppercase}.eyebrow.red{color:var(--red)}h1,h2,h3,h4{line-height:1.08;letter-spacing:-.045em;margin-top:0}h1{font-size:clamp(3.6rem,7vw,6.7rem);font-weight:650}h2{font-size:clamp(2.4rem,5vw,4.6rem);font-weight:600}h3{font-size:1.55rem}.text-link{display:inline-flex;gap:8px;align-items:center;color:var(--red);font-weight:750;border-bottom:1px solid #edb9be}.text-link:hover{border-color:var(--red)}
.home-hero{background:var(--red);color:#fff;padding:76px 0 28px}.home-hero-inner{display:grid;grid-template-columns:1fr 1.08fr;gap:58px;align-items:center}.hero-copy h1{margin:0 0 30px}.hero-copy>p:not(.eyebrow){font-size:1.11rem;line-height:1.65;opacity:.94}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}.button-light{background:#fff;color:var(--red)!important}.button-light:hover{background:#f9e9eb}.light-link{font-weight:750;border-bottom:1px solid rgba(255,255,255,.55);padding:9px 0}.hero-image{margin:0;position:relative;box-shadow:0 24px 70px rgba(90,0,10,.28);overflow:hidden}.hero-image img{width:100%;aspect-ratio:1.72;object-fit:cover}.hero-image figcaption{position:absolute;left:17px;bottom:17px;background:rgba(35,27,33,.86);padding:8px 12px;font-size:.72rem}.hero-image figcaption span{display:inline-block;width:6px;height:6px;background:var(--red);border-radius:50%;margin-right:4px}.hero-bottom{display:flex;justify-content:space-between;margin-top:48px;padding-top:25px;border-top:1px solid rgba(255,255,255,.35);font-size:.8rem;font-weight:700}.home-section{padding:110px 0}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:60px}.section-heading h2{margin-bottom:0}.section-heading>div:last-child{max-width:470px;padding-bottom:8px}.policy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.policy-grid>a{position:relative;min-height:320px;padding:30px;background:var(--soft);border:1px solid var(--line);transition:.2s}.policy-grid>a:hover{background:#fff;transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--red)}.policy-grid>a>span{position:absolute;right:26px;top:27px;color:#a38d98;font-size:.7rem}.policy-grid b{font-size:2.2rem;color:var(--red);font-weight:400}.policy-grid h3{margin:48px 0 12px}.policy-grid p{color:var(--muted);max-width:240px}.policy-grid i{position:absolute;right:26px;bottom:24px;width:42px;height:42px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-style:normal}.people-teaser{background:var(--pale);padding:110px 0}.people-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.people-links a{position:relative;background:#fff;min-height:190px;padding:28px;border-bottom:4px solid transparent;display:flex;flex-direction:column}.people-links a:hover{border-color:var(--red)}.people-links small{color:var(--red);font-weight:800;font-size:.67rem;letter-spacing:.14em}.people-links strong{font-size:1.38rem;margin-top:auto}.people-links span{position:absolute;right:25px;bottom:23px;color:var(--red)}.wp-front-content{padding:80px 0 0}.content-card{max-width:900px;margin:auto}.join-section{text-align:center;padding:120px 20px}.join-section h2{margin-bottom:25px}.join-section p:not(.eyebrow){color:var(--muted);margin-bottom:35px}
.page-hero{background:var(--soft);padding:62px 0 78px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3.3rem,6vw,6.1rem);margin:20px 0 28px;max-width:980px}.page-lead{font-size:1.15rem;line-height:1.7;max-width:750px;color:var(--muted)}.breadcrumb{font-size:.75rem;color:#826f79;display:inline-flex;gap:9px;align-items:center;margin-bottom:54px}.breadcrumb span{color:#bcaab3}.page-content{padding:80px 0 110px}.entry-content{max-width:960px;margin:0 auto}.entry-content>*:first-child{margin-top:0}.entry-content h1{font-size:3rem}.entry-content h2{font-size:clamp(2rem,4vw,3.2rem);margin:70px 0 24px}.entry-content h3{font-size:1.55rem;margin:45px 0 18px}.entry-content p,.entry-content li{color:#574852}.entry-content a{color:var(--red);text-decoration:underline;text-decoration-color:#f0b5ba;text-underline-offset:3px}.entry-content ul,.entry-content ol{padding-left:24px}.entry-content blockquote{margin:40px 0;padding:28px 32px;border-left:4px solid var(--red);background:var(--pale)}.entry-content table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.entry-content td,.entry-content th{border:1px solid var(--line);padding:13px;text-align:left}.entry-content img{border-radius:0}.entry-content .panel-grid,.entry-content .panel-layout{max-width:none}.entry-content .so-panel{margin-bottom:28px!important}.entry-content .widget-title{font-size:1.7rem}.about-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:80px}.about-grid a{position:relative;display:flex;flex-direction:column;min-height:190px;padding:25px;background:var(--pale);border:1px solid var(--line);transition:.2s}.about-grid a:hover{transform:translateY(-3px);border-color:var(--red);background:#fff}.about-grid span{font-size:.7rem;color:#9c8390;margin-bottom:30px}.about-grid strong{font-size:1.14rem}.about-grid small{font-size:.78rem;color:var(--muted);line-height:1.45;margin-top:8px;padding-right:18px}.about-grid i{position:absolute;right:20px;bottom:18px;color:var(--red);font-style:normal}.dsu-banner{display:grid;grid-template-columns:280px 300px;gap:24px;align-items:stretch;margin:0 auto 65px;max-width:960px}.dsu-banner img{width:100%;height:225px;object-fit:contain;background:var(--pale);padding:25px}.dsu-banner img:last-child{object-fit:cover;padding:0}.page-next{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--pale);padding:38px 42px;margin-top:80px}.page-next h2{font-size:2rem;margin:0}.posts-list>article{max-width:800px;padding:48px 0;border-bottom:1px solid var(--line)}.posts-list h2{font-size:2.7rem}.posts-list p{color:var(--muted)}
.site-footer{background:var(--ink);color:#fff;padding-top:70px}.footer-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:70px;padding-bottom:65px}.footer-brand{align-self:start}.site-footer .brand small{color:#ff6570}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-grid>div p{margin:0 0 12px;color:#cbbfc5}.footer-grid>div .eyebrow{color:#ff6d77;margin-bottom:10px}.footer-grid a:hover{color:#ff7b84}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #52434c;padding:22px 0;font-size:.72rem;color:#a99ca3}
@media(max-width:1050px){.primary-nav{gap:18px}.primary-nav a{font-size:.82rem}.header-cta{display:none}.about-grid{grid-template-columns:1fr 1fr}.home-hero-inner{gap:34px}}
@media(max-width:800px){.wrap{width:min(calc(100% - 32px),var(--wrap))}.site-header{height:84px}.brand img{width:45px;height:45px}.menu-toggle{display:block}.primary-nav{display:none;position:absolute;z-index:50;left:16px;right:16px;top:120px;background:#fff;box-shadow:var(--shadow);padding:22px;flex-direction:column;align-items:stretch;gap:0}.primary-nav.is-open{display:flex}.primary-nav a{font-size:1rem;padding:14px 5px;border-bottom:1px solid var(--line)}.home-hero{padding-top:50px}.home-hero-inner{grid-template-columns:1fr}.hero-copy h1{font-size:3.8rem}.hero-image{margin-top:20px}.section-heading{grid-template-columns:1fr;gap:24px}.policy-grid,.people-links{grid-template-columns:1fr}.policy-grid>a{min-height:250px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.page-content{padding-top:55px}.page-next{align-items:flex-start;flex-direction:column}.dsu-banner{grid-template-columns:240px 1fr}.page-hero{padding-top:42px}.breadcrumb{margin-bottom:38px}}
@media(max-width:540px){body{font-size:16px}.brand-ribbon{height:32px}.ribbon-lockup{height:32px}.ribbon-lockup img{width:118px}.site-header{height:78px}.primary-nav{top:110px}.brand{font-size:.96rem}.brand img{width:40px;height:40px}.home-hero{padding-top:38px}.hero-copy h1{font-size:3.25rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-bottom{flex-direction:column;gap:10px}.home-section,.people-teaser{padding:75px 0}.about-grid{grid-template-columns:1fr;margin-bottom:55px}.about-grid a{min-height:145px}.dsu-banner{grid-template-columns:1fr}.dsu-banner img{height:auto;max-height:260px}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.page-next{padding:28px}.page-hero h1{font-size:3.05rem}.join-section{padding:85px 12px}}

/* Visuel tilpasning til det godkendte redesign */
:root{--red:#c21332;--red-dark:#961029;--pale:#f6eef1;--soft:#f8f5f6;--wrap:1360px}
.wrap{width:calc(100% - 112px);max-width:var(--wrap)}
.brand-ribbon{height:auto;background:#ce1432;padding:6px 0;color:#fff}
.ribbon-lockup{height:auto;display:flex;align-items:center;justify-content:center;gap:16px;width:fit-content;max-width:100%;margin-inline:auto}
.ribbon-lockup img{width:440px;height:auto;filter:none;flex-shrink:1;min-width:0}
.ribbon-lockup span{font-size:1.85rem;letter-spacing:.075em;font-weight:350;line-height:1;white-space:nowrap}
.site-header{height:auto;min-height:104px;gap:28px}
.brand{font-size:1.22rem;font-weight:750;letter-spacing:-.035em}.brand img{width:48px;height:auto}.brand small{font-size:.7rem;letter-spacing:.24em;font-weight:600;margin-top:3px}
.primary-nav{gap:31px}.primary-nav a{font-size:.9rem;font-weight:550;padding:12px 0}
.search-button{width:44px;height:44px;display:grid;place-items:center;color:#6f5e68}.search-button:hover{color:var(--red)}
.button{min-height:52px;padding:14px 23px;font-size:.9rem;font-weight:650;gap:24px}.header-cta{padding-inline:23px}
.home-hero{position:relative;overflow:hidden;background:#790f2d;padding:0}.home-hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#841333 0%,#720e2b 60%,#620c26 100%)}
.home-hero-inner{position:relative;grid-template-columns:1fr 1.1fr;gap:50px;padding-block:74px 56px}.hero-copy h1{font-size:clamp(3.3rem,5.5vw,5.3rem);font-weight:680;letter-spacing:-.065em;line-height:1.04;margin:26px 0}.hero-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:#f0d9e1;max-width:430px}.home-hero .eyebrow{color:#f5b8c8}.hero-actions{gap:30px;margin-top:31px}.hero-image{box-shadow:none;overflow:visible;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-top:10px}.hero-image img{width:100%;height:350px;aspect-ratio:auto;object-fit:cover;object-position:48% center;border-radius:90px 0 0 0}.hero-image figcaption{position:static;background:transparent;padding:16px 0 0;color:#f0ced9;font-size:.72rem;display:flex;align-items:center;gap:8px}.hero-bottom{position:relative;margin-top:0;padding-block:21px;border-top:1px solid #ffffff25;color:#eecbd6}.hero-bottom a{color:#fff}
.home-section{padding-block:90px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:38px}.section-heading>div:last-child{max-width:365px}.section-heading h2{font-size:clamp(2.2rem,3.3vw,3.25rem);letter-spacing:-.055em;line-height:1.13;font-weight:650}.policy-grid{gap:20px}.policy-grid>a{padding:30px;min-height:245px;background:#f6f3f4}.policy-grid h3{font-size:1.3rem;margin:30px 0 8px}.policy-grid p{font-size:.9rem;line-height:1.6}.policy-grid i{background:transparent;color:var(--red);right:26px;bottom:26px}
.page-hero{background:var(--pale);padding:26px 0 60px}.breadcrumb{font-size:.8rem;margin-bottom:40px}.page-hero h1{font-size:clamp(2.8rem,4.8vw,4.7rem);letter-spacing:-.06em;line-height:1.08;font-weight:660;margin:20px 0 24px;color:#67122d;max-width:900px}.page-lead{font-size:1.08rem;line-height:1.8;max-width:680px;color:#6a535f}.page-content{padding:65px 0 80px}.entry-content{max-width:1100px}.about-grid{margin-bottom:65px}.about-grid a{min-height:185px;background:#f6f0f3}.page-next{background:#f6f0f3}
.site-footer{background:#251c23}.footer-grid{grid-template-columns:1.7fr 1fr 1fr;padding-block:58px}.footer-bottom{padding-block:22px}
@media(max-width:1100px){.primary-nav{gap:22px}.site-header{gap:20px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.site-header{min-height:88px}.search-button{margin-left:auto}.ribbon-lockup{gap:13px}.ribbon-lockup img{width:350px}.ribbon-lockup span{font-size:1.45rem}.home-hero-inner{grid-template-columns:1fr;gap:35px;padding-block:48px 30px}.hero-image{padding:0}.hero-image img{height:auto;aspect-ratio:1.85;border-radius:64px 0 0 0}.section-heading{align-items:flex-start;gap:25px;flex-direction:column}.section-heading>div:last-child{max-width:550px}.page-hero{padding-bottom:45px}.page-content{padding-block:45px 55px}}
@media(max-width:600px){.brand-ribbon{padding:6px 0 13px}.ribbon-lockup{flex-direction:column;gap:0}.ribbon-lockup img{width:min(330px,100%)}.ribbon-lockup span{font-size:1rem;letter-spacing:.18em}.search-button{display:none}}
@media(max-width:540px){.brand-ribbon,.ribbon-lockup{height:auto}.site-header{height:auto}.home-hero{padding:0}.hero-copy h1{font-size:3.45rem}.page-hero h1{font-size:2.7rem}.page-lead{font-size:1rem}.breadcrumb{margin-bottom:30px;font-size:.75rem}}

/* Redigerbare personer og DSU */
.people-section{margin-bottom:90px}.people-section>h2{font-size:clamp(2.25rem,4vw,3.7rem);color:#67122d;margin-bottom:38px}.people-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.person-card{display:grid;grid-template-columns:150px 1fr;min-height:190px;background:#f7f2f4;border:1px solid var(--line);overflow:hidden}.person-card>img,.person-placeholder{width:150px;height:100%;min-height:190px;object-fit:cover}.person-placeholder{display:grid;place-items:center;background:#e8dce1;color:#8d5268;font-size:3rem;font-weight:700}.person-card>div:last-child{padding:25px}.person-card h3{font-size:1.3rem;margin:0 0 8px}.person-card p{color:var(--muted);font-size:.9rem;margin:0 0 14px}.person-card a{display:block;color:var(--red);font-size:.83rem;overflow-wrap:anywhere;margin-top:4px}
.dsu-content{max-width:1100px;margin:auto}.dsu-intro{display:grid;grid-template-columns:1fr 300px;gap:70px;align-items:center;margin-bottom:60px}.dsu-intro h2{font-size:clamp(2.3rem,4vw,3.7rem);color:#67122d}.dsu-intro>div>p:last-child{color:var(--muted);max-width:650px}.dsu-logo{width:240px;max-height:210px;object-fit:contain;justify-self:center}.dsu-photos{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px;align-items:stretch}.dsu-photos figure{margin:0;background:#f5f0f2;padding:25px}.dsu-photos figure img{width:100%;height:290px;object-fit:contain}.dsu-photos figcaption{font-size:.75rem;color:var(--muted);margin-top:12px}.dsu-chair{display:flex;flex-direction:column;background:#f5f0f2}.dsu-chair>img{width:100%;height:290px;object-fit:cover;object-position:center top}.dsu-chair>div{padding:25px}.dsu-chair h3{margin:0 0 6px}.dsu-chair p{margin:0 0 8px;color:var(--muted)}.dsu-chair .eyebrow{color:var(--red);margin-bottom:12px}.dsu-chair a{color:var(--red);font-size:.86rem;overflow-wrap:anywhere}
@media(max-width:900px){.people-directory{grid-template-columns:1fr}.dsu-intro{grid-template-columns:1fr;gap:30px}.dsu-logo{justify-self:start}.dsu-photos{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.person-card{grid-template-columns:110px 1fr}.person-card>img,.person-placeholder{width:110px;min-height:165px}.person-card>div:last-child{padding:20px}.dsu-photos{grid-template-columns:1fr}.dsu-photos figure img{height:auto;max-height:260px}.dsu-chair>img{height:320px}}

/* Mere kompakt DSU-portræt */
.dsu-chair{display:grid;grid-template-columns:190px 1fr;align-items:center;align-self:start}.dsu-chair>img{width:190px;height:220px;object-fit:cover;object-position:center top}.dsu-chair>div{padding:24px}
@media(max-width:650px){.dsu-chair{grid-template-columns:125px 1fr}.dsu-chair>img{width:125px;height:170px}.dsu-chair>div{padding:18px}.dsu-chair h3{font-size:1.15rem}}
