/*
Theme Name: Socialdemokratiet Ballerup – godkendt opdeling
Template: socb-redesign
Version: 3.0.4
Description: Godkendt design af 5. oktober 2026. Bevarer personadministration og eksisterende sider.
Text Domain: socb-opdeling
*/
:root{--red:#e30613;--ink:#251c23;--muted:#776671;--pale:#f5eef1;--line:#e2d7dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:150px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}img{max-width:100%;display:block}.wrap{width:min(calc(100% - 48px),1200px);margin:auto}.previewnote{text-align:center;padding:7px;background:#251c23;color:white;font-size:11px;letter-spacing:.1em}.ribbon{background:var(--red);color:white;height:36px}.ribbon .wrap{height:100%;display:flex;align-items:center;gap:7px}.ribbon img{width:134px;filter:brightness(0) invert(1)}.ribbon span{font-size:11px;font-weight:bold;letter-spacing:.08em}header{position:sticky;top:0;background:white;z-index:10;border-bottom:1px solid var(--line);box-shadow:0 3px 16px #251c2309}.header{display:flex;align-items:center;gap:26px;min-height:100px}.brand{display:flex;gap:12px;align-items:center;margin-right:auto;font-weight:bold;font-size:17px;line-height:1.1}.brand img{width:46px;height:46px}.brand small{display:block;color:var(--red);letter-spacing:.16em;font-size:10px;margin-top:8px}nav{display:flex;gap:20px;align-items:center;font-size:14px;font-weight:bold}.navgroup{display:flex;align-items:center;gap:5px;position:relative}.navmain{padding:16px 0}.navmain.active{color:var(--red);border-bottom:2px solid var(--red)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.dropdown{position:absolute;top:55px;left:-18px;width:255px;background:white;padding:14px;box-shadow:0 12px 35px #251c2320;border:1px solid var(--line)}.dropdown a{display:block;padding:12px}.dropdown a:hover{background:var(--pale);color:var(--red)}.join{background:var(--red);color:white;white-space:nowrap;padding:13px 18px;font-weight:bold;font-size:14px}.join:hover{background:#bc0010}.mobile{display:none}.hero{background:#fbf8f9;border-bottom:1px solid var(--line);padding:48px 0 64px}.crumb{font-size:12px;color:var(--muted)}.eyebrow{font-size:11px;font-weight:bold;letter-spacing:.16em;color:var(--red);margin:36px 0 18px}h1,h2,h3{line-height:1.1;letter-spacing:-.04em}h1{font-size:clamp(48px,6vw,80px);font-weight:600;margin:20px 0 26px}.lead{max-width:700px;font-size:19px;color:var(--muted)}.content{padding:40px 0 85px}.quick{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:55px}.quick a{padding:12px 18px;border:1px solid var(--line);background:var(--pale);font-size:14px}.quick a:hover{border-color:var(--red)}section[id],article[id]{scroll-margin-top:140px}h2{font-size:40px;font-weight:600;margin:0 0 16px}.sectionlead{color:var(--muted);margin-bottom:30px}.people{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:65px}.person{background:#f7f2f4;border:1px solid var(--line);display:flex;min-height:168px}.person img,.placeholder{width:115px;min-width:115px;height:170px;object-fit:cover;object-position:center 25%}.placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e7dce2;font-size:44px;color:#895569}.placeholder span{font-size:11px;margin-top:8px;color:var(--muted)}.person>div:last-child:not(.placeholder){padding:22px 17px}.person h3{font-size:20px;margin:0 0 12px}.person p{font-size:13px;color:var(--muted);margin:0}.about{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.about article{background:var(--pale);padding:27px}.about .eyebrow{margin-top:0}.about h2{font-size:29px}.about p{font-size:15px;color:var(--muted)}.about a{color:var(--red);font-weight:bold;font-size:14px;border-bottom:1px solid #edb9be}.paths{display:grid;grid-template-columns:1fr 1fr;gap:24px}.paths>a{background:var(--pale);padding:36px;border-bottom:4px solid var(--red)}.paths .eyebrow{margin-top:0}.paths p{max-width:370px;color:var(--muted)}.paths span{display:block;margin-top:32px;color:var(--red);font-weight:bold}.paths a:hover{background:#efe2e8}.review{padding:25px 0;margin-top:30px;color:var(--muted);max-width:780px;font-size:14px}footer{background:var(--ink);color:white;padding:45px 0}footer .wrap>div{display:flex;gap:25px;margin:20px 0;font-size:14px}footer p{font-size:12px;color:#cbbfc5}@media(max-width:1120px){.header{gap:16px}nav{gap:12px;font-size:13px}.brand{font-size:15px}.people{grid-template-columns:1fr 1fr}}@media(max-width:900px){.header>nav{display:none}.mobile{display:block}.mobile summary{font-size:14px;padding:12px;border:1px solid var(--line)}.mobile>div{position:absolute;left:16px;right:16px;top:90px;background:white;border:1px solid var(--line);padding:15px;max-height:75vh;overflow:auto;box-shadow:0 15px 35px #251c2320}.mobile a{display:block;padding:11px;border-bottom:1px solid var(--line)}.header{min-height:90px}.join{font-size:13px;padding:12px}.people{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.quick{font-size:12px;gap:8px}}@media(max-width:600px){.wrap{width:calc(100% - 32px)}.brand span{display:none}.brand img{width:40px;height:40px}.header{gap:12px}.brand{margin-right:auto}.hero{padding:32px 0 40px}h1{font-size:48px}.lead{font-size:17px}.content{padding-top:25px}.people,.paths{grid-template-columns:1fr}.person img,.placeholder{width:125px;min-width:125px;height:180px}.person>div:last-child:not(.placeholder){padding:25px 20px}.quick{margin-bottom:40px}.quick a{padding:10px 12px}.paths>a{padding:27px}h2{font-size:33px}footer .wrap>div{flex-direction:column;gap:10px}.previewnote{font-size:9px}}

.profile-layout{display:grid;grid-template-columns:270px 1fr;gap:65px}.profilephoto{width:100%;height:345px;object-fit:cover;object-position:center top}.profiletext{max-width:730px}.profiletext>.eyebrow{margin-top:0}.profiletext h2{font-size:33px}.profiletext p{color:var(--muted)}.profilelink{color:var(--red);font-weight:bold;border-bottom:1px solid #edb9be}.historical{margin:40px 0;padding:30px;background:var(--pale)}.historical .eyebrow{margin-top:0}.historical h2{font-size:29px}.source{font-size:13px}.historical a{font-size:14px}@media(max-width:700px){.profile-layout{grid-template-columns:1fr;gap:30px}.profilephoto{width:220px;height:285px}.historical{padding:24px}}

.dsu-person{display:flex;gap:28px;background:var(--pale);padding:24px;margin:35px 0 50px}.dsu-person img{width:160px;height:205px;object-fit:cover}.dsu-person h2{font-size:28px}.dsu-person .eyebrow{margin-top:10px}.contact-card{padding:0 0 45px}.contact-card .eyebrow{margin-top:0}@media(max-width:600px){.dsu-person{flex-direction:column}}

.home-hero{background:#b60926;color:white;padding:55px 0 24px}.home-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px}.home-hero .eyebrow{color:white;margin-top:0}.home-hero h1{font-size:clamp(48px,5.5vw,74px)}.home-hero .lead{color:#f9dce3;max-width:520px}.home-hero figure{margin:0;background:#9b0620}.home-hero figure img{width:100%;height:auto}.home-hero figcaption{font-size:12px;padding:12px 16px}.hero-actions{display:flex;flex-wrap:wrap;gap:22px;margin-top:32px;align-items:center;font-weight:bold}.hero-actions a:first-child{background:white;color:#b60926;padding:14px 20px}.home-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;margin-top:44px;padding-top:20px;font-size:13px}.home-policy,.home-paths{margin-bottom:70px}.policy-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.policy-topics a{background:var(--pale);padding:28px;border:1px solid var(--line)}.policy-topics span{font-size:30px;color:var(--red)}.policy-topics h3{font-size:24px}.policy-topics p{font-size:15px;color:var(--muted)}.home-join{border-top:1px solid var(--line);margin-top:65px;padding:35px 0}.home-join .join{display:inline-block;margin-top:15px}.dsu-logo{width:190px;height:auto}.dsu-group{margin:30px 0;width:min(100%,300px)}.dsu-group img{width:100%;height:auto}.dsu-group figcaption{font-size:12px;color:var(--muted);padding-top:8px}@media(max-width:900px){.home-hero-grid{grid-template-columns:1fr;gap:35px}.home-hero figure{max-width:700px}.home-hero h1{font-size:56px}}@media(max-width:600px){.home-hero{padding-top:36px}.home-hero h1{font-size:48px}.home-bottom{gap:16px;flex-wrap:wrap}.policy-topics{grid-template-columns:1fr}.dsu-logo{width:145px}}

.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;font-weight:normal;color:var(--muted);line-height:1.6}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.breadcrumb a:hover{color:var(--red)}.breadcrumb [aria-current]{text-decoration:none}

.association-text{max-width:850px}.association-text h2,.association-text h3{margin:35px 0 20px}.association-text p{margin-bottom:22px}.association-text figure{margin:24px 0}.association-text img{max-width:min(100%,300px);height:auto}.association-text figcaption{font-size:12px;color:var(--muted)}.pdf-document{width:100%;height:75vh;min-height:450px;border:1px solid var(--line)}

.mobile .mobile-parent{font-weight:bold;color:var(--red)}.mobile .mobile-child{padding-left:26px;font-size:13px}

.political-themes{display:grid;gap:24px}.political-theme{background:var(--pale);border:1px solid var(--line);border-left:4px solid var(--red);padding:32px;max-width:850px}.political-theme .eyebrow{margin-top:0}.political-theme p:not(.eyebrow){color:var(--muted);max-width:720px}.political-theme .profilelink{display:inline-block;margin-top:14px}@media(max-width:600px){.political-theme{padding:24px}}

.admin-bar header{top:32px}.person a{display:block;font-size:12px;color:var(--red);margin-top:6px;overflow-wrap:anywhere}.person{min-width:0}.person>div:last-child{min-width:0}.person-status{font-size:12px;padding:3px 7px;background:#fff;border:1px solid var(--line);display:inline-block;margin-top:8px}.skip-link{position:fixed;left:16px;top:-100px;z-index:99999;background:white;padding:12px;color:var(--red)}.skip-link:focus{top:10px}.entry-content{max-width:960px}.entry-content a{color:var(--red);text-decoration:underline}.entry-content h2{margin-top:35px}.entry-content p{margin-bottom:22px}.association-text .panel-grid{max-width:100%}.person img{height:170px}.dsu-person img{flex-shrink:0}.profile-layout aside h2{font-size:33px}@media(max-width:782px){.admin-bar header{top:46px}}@media(max-width:600px){.person img{height:180px}.admin-bar header{top:0}}

/* Større navnebjælke med rose og lokalafdeling */
.ribbon{height:90px}.ribbon .wrap{gap:14px}.ribbon img{width:440px;height:auto}.ribbon span{font-size:24px;white-space:nowrap;letter-spacing:.05em}@media(max-width:700px){.ribbon{height:66px}.ribbon .wrap{gap:9px}.ribbon img{width:min(58vw,250px)}.ribbon span{font-size:clamp(11px,3.4vw,17px)}}

/* Politik: samlet læsebredde og konkrete prioriteringer */
.socb-page-politik .hero{padding:30px 0 34px}.socb-page-politik .hero .wrap,.socb-page-politik .content{max-width:1100px}.socb-page-politik .hero .eyebrow{margin-top:24px}.socb-page-politik h1{font-size:clamp(42px,5vw,64px);margin:16px 0 18px}.socb-page-politik .lead{margin-bottom:0}.socb-page-politik .quick{margin-bottom:28px}.socb-page-politik .political-theme{max-width:none;display:grid;grid-template-columns:1fr 1.15fr;gap:40px;padding:34px}.socb-page-politik .political-theme h2{font-size:36px}.socb-page-politik .theme-subtitle{font-size:21px;font-weight:bold;color:var(--ink)!important;line-height:1.35;margin:0 0 16px}.socb-page-politik .theme-intro>p:last-child{margin-bottom:0}.theme-priorities h3{font-size:17px;letter-spacing:0;margin:0 0 18px}.theme-priorities ul{list-style:none;padding:0;margin:0}.theme-priorities li{padding:15px 0;border-top:1px solid var(--line)}.theme-priorities li:first-child{padding-top:0;border:0}.theme-priorities li:last-child{padding-bottom:0}.theme-priorities strong,.theme-priorities span{display:block}.theme-priorities strong{font-size:16px;margin-bottom:4px}.theme-priorities span{font-size:15px;color:var(--muted)}.socb-page-politik .review{margin:0;padding:24px 0 32px;max-width:850px}.policy-programs>.eyebrow{margin-top:8px}.policy-programs>h2{font-size:32px;margin-bottom:24px}.policy-programs .paths h3{font-size:28px;margin:0 0 16px}.policy-programs .paths>a{padding:28px}.policy-programs .paths span{margin-top:22px}@media(max-width:760px){.socb-page-politik .political-theme{grid-template-columns:1fr;gap:26px;padding:24px}.socb-page-politik .political-theme h2{font-size:32px}.socb-page-politik .hero{padding:24px 0 30px}.socb-page-politik .paths{grid-template-columns:1fr}}

/* Centreret og større navnebjælke */
.ribbon{height:120px}.ribbon .wrap{justify-content:center;gap:18px}.ribbon img{width:560px;flex-shrink:0}.ribbon span{font-size:36px;letter-spacing:.025em;line-height:1.1}@media(max-width:1000px){.ribbon{height:105px}.ribbon img{width:54vw}.ribbon span{font-size:3.5vw}}@media(max-width:700px){.ribbon{height:78px}.ribbon .wrap{gap:8px}.ribbon img{width:58vw}.ribbon span{font-size:3.6vw;letter-spacing:0}}

/* Ens typografi i hele navnebjælken; original rose bevares */
.ribbon img{width:78px;height:94px;object-fit:cover;object-position:left center;flex-shrink:0}.ribbon span{font-family:Arial,Helvetica,sans-serif;font-size:36px;font-weight:700;letter-spacing:.025em;line-height:1.1}@media(max-width:1000px){.ribbon img{width:64px;height:78px}.ribbon span{font-size:3.5vw}}@media(max-width:700px){.ribbon img{width:38px;height:46px}.ribbon span{font-size:3.1vw;letter-spacing:0}.ribbon .wrap{gap:10px}}
