@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#193d35;--muted:#65716a;--paper:#faf9f5;--line:#e2e6dd;--green:#255547;--peach:#f5b491}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c56d40;outline-offset:4px}header,main,footer{max-width:1240px;margin:auto}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;gap:20px}.brand{text-decoration:none;font:700 20px Manrope,sans-serif;display:flex;align-items:center;gap:12px}.brand b{font-weight:400}.logo{background:var(--green);color:white;width:40px;height:40px;border-radius:13px;text-align:center;font-size:31px;line-height:33px}.logo span{color:var(--peach)}nav{display:flex;gap:28px}nav a{text-decoration:none;font-size:14px}nav a:hover{text-decoration:underline}.local{font-size:13px;background:#ecefe7;border-radius:30px;padding:11px 16px}main{padding:0 36px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:38px;padding:54px 0 44px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;margin:0 0 18px}h1{font:700 clamp(36px,4.1vw,56px)/1.15 Manrope,sans-serif;letter-spacing:-2px;margin:0 0 22px}h1 em{font-style:normal;color:#5e7d60}.intro{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:28px}.primary{display:inline-flex;align-items:center;gap:30px;background:var(--green);color:#fff;padding:16px 21px;border-radius:12px;text-decoration:none;font-weight:600}.art{height:310px;border-radius:90px 22px 22px 22px;background:#e9eee2;position:relative;overflow:hidden}.sun{height:88px;width:88px;background:#f6bb8b;border-radius:50%;position:absolute;right:60px;top:26px}.hill{position:absolute;border-radius:50%;width:650px;height:320px;bottom:-225px;left:-100px;background:#88a285;transform:rotate(-14deg)}.hill.back{bottom:-190px;left:100px;background:#bdcdb1;transform:rotate(15deg)}.house{position:absolute;width:108px;height:96px;background:#f7ede0;bottom:73px;left:44%;border-radius:3px}.house:before{content:'';position:absolute;border-left:68px solid transparent;border-right:68px solid transparent;border-bottom:58px solid #42634f;top:-54px;left:-14px}.house i,.house b{position:absolute;width:19px;height:25px;background:#e8b77e;left:15px;top:22px}.house b{left:70px}.house span{position:absolute;width:23px;height:40px;background:#7d9380;bottom:0;left:43px}.tree{position:absolute;width:60px;height:102px;background:#65876b;border-radius:70% 70% 40% 40%;bottom:86px;left:20%}.tree:after{content:'';position:absolute;width:5px;height:45px;background:#46634c;bottom:-25px;left:28px}.tree.two{left:78%;bottom:78px;transform:scale(.7)}.floating{position:absolute;bottom:17px;left:18px;right:18px;background:#fffffff0;border-radius:15px;padding:15px 20px;box-shadow:0 6px 25px #2943330d}.floating span{font-size:9px;letter-spacing:1.5px;font-weight:800;display:block;color:#6c7e67}.floating b{display:block;font-size:20px;margin:5px 0}.floating small{font-size:11px;color:var(--muted)}.notice{background:#f1ece1;color:#69583f;border-radius:10px;padding:12px 16px;font-size:12px;line-height:1.6;display:flex;gap:15px}.notice span{font-weight:800;font-size:10px;white-space:nowrap}#kalender{padding-top:55px}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:20px}h2{font:700 30px/1.25 Manrope,sans-serif;letter-spacing:-1px;margin:0 0 20px}.sectionhead .eyebrow{margin-bottom:10px}.search{display:flex;gap:10px;align-items:center;background:white;border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:20px;width:355px}.search span{font-size:24px}.search input{border:0;background:none;width:100%;font:inherit;font-size:13px;color:var(--ink);outline-offset:7px}.filters{display:flex;gap:8px;flex-wrap:wrap;padding:7px 0 25px}button{border:1px solid var(--line);background:white;color:var(--ink);padding:11px 16px;border-radius:24px;transition:background .15s}.filters button:hover,.quick button:hover{background:#e9eee5}.selected{background:var(--green)!important;color:white!important;border-color:var(--green)!important}.toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line)}.weeknav{display:flex;align-items:center;gap:12px;margin-right:auto}.weeknav button{padding:7px 12px;border-radius:9px}.quick{display:flex;gap:4px}.quick button{font-size:12px;padding:8px 12px}.toolbar label{font-size:12px;display:flex;align-items:center;gap:5px}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:9px}.day{background:#f0f2eb;border:1px solid transparent;border-radius:13px;display:flex;flex-direction:column;align-items:center;padding:12px 5px;gap:5px}.day span{font-size:11px;text-transform:uppercase;letter-spacing:1px}.day b{font-size:23px;font-weight:600}.day small{font-size:10px;color:var(--muted)}.day.selected small{color:#ddd}.resultshead{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin:24px 0 14px}.events{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;position:relative;display:flex;flex-direction:column;min-height:235px;box-shadow:0 3px 3px #193d3502}.cardtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.tag{font-size:10px;letter-spacing:.3px;border-radius:6px;padding:6px 9px;font-weight:700;background:#e9eedc}.tag.Evenemang{background:#fbe4d6;color:#8c553b}.tag.Kommunen{background:#e6eafa;color:#545d8c}.save{border:0;font-size:24px;padding:0 4px;background:none;line-height:1;color:#6b7f71}.card .when{font-size:12px;color:var(--muted);margin-bottom:7px}.card h3{font:700 19px/1.35 Manrope,sans-serif;margin:0 0 10px;letter-spacing:-.4px}.card .location{font-size:12px;color:var(--muted);margin:0 0 18px}.cardbottom{margin-top:auto;padding-top:14px;border-top:1px solid #f0f0eb;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px}.cardbottom button{border:0;padding:5px 0;font-size:12px;font-weight:700}.example{font-size:10px;color:#8c653a;margin-bottom:10px}.empty{grid-column:1/-1;text-align:center;padding:40px;background:#edf0e7;border-radius:15px}.empty h3{font-size:21px}.reset{display:block;margin:22px auto;background:none;font-size:12px;border:0;text-decoration:underline}.community{margin:60px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.community p{line-height:1.8;color:var(--muted);max-width:420px}.community a{font-weight:600;text-underline-offset:5px;font-size:14px}.communitycard{padding:30px;background:#e8eddf;border-radius:22px;transform:rotate(-1deg)}.communitycard span{font-size:10px;letter-spacing:2px}.communitycard h3{font:600 27px/1.3 Manrope;margin:16px 0}.communitycard p{font-size:13px}.communitycard button{background:var(--green);color:white;border:0;border-radius:10px}.about{padding:30px 0 55px;border-top:1px solid var(--line)}.about h2{font-size:24px}.about>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.about b{font-size:14px}.about p{font-size:13px;line-height:1.75;color:var(--muted)}footer{padding:28px 36px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}footer .brand{font-size:16px;color:var(--ink)}dialog{border:0;padding:35px;border-radius:22px;color:var(--ink);max-width:520px;width:calc(100% - 32px);box-shadow:0 20px 90px #0003}dialog::backdrop{background:#183d3566;backdrop-filter:blur(4px)}.close{position:absolute;right:14px;top:12px;border:0;font-size:26px;padding:0 8px}dialog h2{margin-top:22px}dialog p{line-height:1.8}dialog a{display:inline-block;margin-top:14px}.detailmeta{background:#f0f2eb;border-radius:12px;padding:15px;font-size:14px;line-height:2}.detailnote{font-size:12px;color:var(--muted)}
@media(max-width:950px){header nav{display:none}.events{grid-template-columns:repeat(2,1fr)}.hero{gap:20px}.art{height:300px}.toolbar{gap:12px}.community{gap:30px}.sectionhead{align-items:start;flex-direction:column;gap:0}.search{width:100%}}@media(max-width:600px){header{height:78px;padding:0 20px}.brand{font-size:16px}.local{font-size:10px;padding:8px}main{padding:0 20px}.hero{grid-template-columns:1fr;padding:30px 0}.hero h1{font-size:39px}.art{height:230px}.hero .intro{font-size:14px}.notice{display:block}.notice span{display:block;margin-bottom:4px}.events{grid-template-columns:1fr}.day b{font-size:19px}.day small{font-size:8px}.days{gap:4px}.day{padding:10px 2px}.filters{gap:6px}.filters button{font-size:12px;padding:10px 12px}.weeknav{width:100%;justify-content:space-between}.resultshead>span:last-child{display:none}.community{grid-template-columns:1fr;gap:20px;margin:40px 0}.about>div{grid-template-columns:1fr;gap:15px}footer{padding:24px 20px;flex-direction:column;align-items:start}.search{margin-bottom:12px}h2{font-size:27px}.card{min-height:220px}.floating small{font-size:10px}}

[hidden]{display:none!important}.tag.Kyrkor{background:#efe5f5;color:#71517b}.access{font-size:11px;color:#65716a;margin:0 0 10px;line-height:1.4}.sourcegrid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:15px!important}.sourcegrid article{padding:20px;background:white;border:1px solid #e2e6dd;border-radius:15px}.sourcegrid a{text-decoration:none}.sourcegrid summary{font-size:12px;cursor:pointer}.notice a{white-space:nowrap;font-weight:bold}#upcoming{font-size:12px}#datepick{font:inherit;border:1px solid #e2e6dd;padding:7px;border-radius:8px;color:#193d35}@media(max-width:600px){.sourcegrid{grid-template-columns:1fr!important}.notice a{display:block;margin-top:5px}}
.tipsection{display:grid;grid-template-columns:1fr 1fr;gap:45px;background:#edf0e7;padding:35px;border-radius:22px;margin:45px 0}.tipsection p{line-height:1.8;color:var(--muted)}.tipsection form label{display:block;font-size:13px;font-weight:600;margin-bottom:15px}.tipsection input,.tipsection select,.tipsection textarea{display:block;width:100%;margin-top:7px;background:white;border:1px solid #cbd4c6;border-radius:9px;padding:11px;font:inherit;color:var(--ink)}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.honey{position:absolute!important;left:-10000px!important}.tipsection .primary{border:0}.tipsection button:disabled{opacity:.5}#tipresult{font-size:13px}.tipsection select{min-height:43px}@media(max-width:700px){.tipsection{grid-template-columns:1fr;padding:22px;gap:10px}}
#municipality-select{font:inherit;border:1px solid #c9d3c4;border-radius:9px;background:#fff;padding:8px;max-width:180px}#municipality-heading{font-size:clamp(35px,4vw,62px)}[hidden]{display:none!important}

/* Topics and accessible compact filters */
.topic-tags{display:flex;gap:6px;flex-wrap:wrap}.topic-tags .tag{text-transform:none;font-size:11px;letter-spacing:0;padding:6px 9px;border-radius:20px;background:#e6eee4;color:#244b3b}.topic-tags .topic-1{background:#ffebc1;color:#6a420b}.topic-tags .topic-2{background:#f0e2f5;color:#683778}.topic-tags .topic-3{background:#ffe0d7;color:#843622}.topic-tags .topic-4{background:#ddedde;color:#305b31}.topic-tags .topic-6{background:#ebe4fa;color:#5a4775}.topic-tags .topic-7{background:#dcebf5;color:#2b546a}.cardtop{align-items:flex-start;gap:10px}.cardtop .save{flex-shrink:0}.extra-filters{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0 6px}.extra-filters label{display:grid;gap:7px;font-size:13px;font-weight:600;flex:1;min-width:160px}.extra-filters input,.extra-filters select{font:inherit;padding:12px;border:1px solid #ccd5cb;border-radius:12px;background:#fff;width:100%;box-sizing:border-box}.filterhint{font-size:12px;color:#59645c;margin-bottom:20px}#allcategories{display:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c45c39;outline-offset:3px}@media(max-width:650px){#categories{display:flex;flex-wrap:wrap}#categories:not(.expanded) .more-category{display:none}#allcategories{display:inline-block;margin:8px 0}.extra-filters{gap:10px}.extra-filters label{min-width:140px}.filters button{font-size:13px;padding:10px 12px}}

/* Local municipal halls, painted from photographic references. */
.art.municipal-art{height:auto;margin:0;background:#eee8dc;border-radius:40px 16px 16px 16px;box-shadow:0 16px 40px #193d3510;display:block}.municipal-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.municipal-art figcaption{padding:14px 20px 16px;background:#f0ede3}.municipal-art figcaption>span{font:600 16px Manrope,sans-serif;display:block}.municipal-art small{font-size:11px;color:#65716a;display:block;margin-top:5px}.municipal-art a{text-underline-offset:3px}@media(max-width:700px){.art.municipal-art{display:block;width:100%;border-radius:25px 12px 12px 12px;max-width:560px;margin:0 auto}.hero{gap:26px}.municipal-art figcaption{padding:12px 16px}}

.art.municipal-art[hidden]{display:none}.hero.without-townhall{grid-template-columns:1fr}.hero.without-townhall>div{max-width:900px}
.local-ad{margin-top:24px;padding:20px;background:#f0ede1;border:1px solid #dedacb;border-radius:16px}.local-ad small{font-size:10px;letter-spacing:2px;color:#647164}.local-ad h2{font-size:21px;margin:10px 0}.local-ad p{font-size:14px;line-height:1.5}.local-ad strong{font-size:12px;display:block}.local-ad a{display:inline-block;margin-top:14px;color:#255547;font-weight:600}

.organizer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;max-height:560px;overflow:auto;padding:4px}.organizer-card{display:block;background:#fff;border:1px solid #ddd9cd;border-radius:20px;padding:24px;text-decoration:none;color:inherit}.organizer-card:hover{border-color:#32644d;background:#f1f6ee}.organizer-card span{font-size:11px;letter-spacing:1px;color:#526958}.organizer-card h3{font-size:21px;margin:14px 0}.organizer-card b{color:#32644d}.organizer-links{display:flex;flex-wrap:wrap;gap:16px}#organizer-profile{background:#eaf0e4;padding:28px;border-radius:24px;margin-bottom:32px}#organizer-profile[hidden]{display:none}

.organizer-grid{display:block;max-height:none;overflow:visible;list-style:none;padding:0}.organizer-grid>li{margin:0 0 8px}.organizer-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;padding:18px 22px;border-radius:12px}.organizer-card h3{margin:0;font-size:18px}.organizer-card p{margin:0;font-size:14px}.organizer-card b{font-size:14px}@media(max-width:650px){.organizer-card{grid-template-columns:1fr auto;gap:8px}.organizer-card h3{grid-column:1/-1}.organizer-card b{font-size:12px}}

.organizer-picker{display:flex;flex-direction:column;gap:10px;max-width:560px;font-weight:600}.organizer-picker select{width:100%;padding:16px;border:1px solid #b7c5b7;border-radius:12px;background:#fff;color:#263f32;font:inherit}#arrangorer{padding-top:24px;padding-bottom:24px}

#subcategory-wrap{margin:16px 0;max-width:400px}#subcategory-wrap label{display:block;margin-bottom:8px}#subcategory{width:100%;padding:12px;border:1px solid #b7c5b7;border-radius:10px;background:white;font:inherit}

.photo-submit{padding:18px;background:#f3f1e8;text-align:left}.photo-submit p{font-size:14px;line-height:1.6}.photo-submit button{padding:10px 14px;border:1px solid #b9c6ba;border-radius:8px;background:white;color:#254f40;cursor:pointer}.photo-submit label{display:block;margin:14px 0;font-size:14px}.photo-submit input:not([type=checkbox]){display:block;width:100%;max-width:100%;padding:8px;box-sizing:border-box}.municipal-art img[hidden]{display:none}.photo-controls{display:flex;gap:8px}.photo-controls[hidden]{display:none}
