:root{
  --u-rose-100:#130a10;
  --u-rose-200:#190c15;
  --u-rose-300:#24121c;
  --u-rose-deep:#381520;
  --u-lilac:#150914;
  --u-lilac-strong:#1b141f;

  --u-card:#1a0f14;
  --u-card-soft:#1e151b;
  --u-card-strong:#2b1a23;

  --u-accent:#f3347a;
  --u-accent-600:#fd2f70;
  --pink-ink:#ff6f9a;
  --u-warm:#ff4f5c;
  --u-warm-strong:#ff3c50;
  --u-sun:#ff783b;
  --u-sun-strong:#ff6c24;
  --u-crimson:#fd3949;
  --u-blueviolet:#9ca2e0;
  --u-action-600:linear-gradient(95deg,var(--u-sun),var(--u-warm) 55%,var(--u-accent));

  --u-copy:#f3edf2;
  --u-copy-soft:#b6a8b0;
  --u-quiet:#887986;
  --u-divider:#3c2633;

  --u-invert:#fdfdff;
  --u-pure:#fdfdff;
  --u-valid:#91c4aa;
  --u-divider-soft:rgba(253,253,255,.07);
  --u-card-bg:rgba(20,8,15,.8);
  --u-veil:rgba(1,0,0,.6);
  --u-ft-bg:#100809;
  --u-ft:#c9bac4;
  --u-ft-strong:#f3edf2;
  --u-ft-soft:#8b7d87;
  --u-ft-edge:rgba(253,253,255,.07);

  --u-rad-sm:14px;
  --u-rad-md:20px;
  --u-rad-lg:28px;
  --u-rad-xl:36px;
  --u-rad-pill:999px;

  --u-sh-sm:0 6px 16px -8px rgba(1,0,0,.57);
  --u-sh-md:0 18px 38px -18px rgba(1,0,0,.6);
  --u-sh-lg:0 30px 60px -24px rgba(1,0,0,.66);

  --u-headline:"Trebuchet MS","Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  --u-ff:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;

  --u-wrap:1200px;
  --u-pad:24px;
  --u-section-pad:clamp(56px,7vw,104px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1200px 700px at 85% -8%, var(--u-rose-300) 0%, transparent 55%),
    radial-gradient(900px 600px at -10% 8%, var(--u-lilac) 0%, transparent 55%),
    linear-gradient(180deg, var(--u-rose-100) 0%, var(--u-card-soft) 40%, var(--u-rose-100) 100%);margin:0;color:var(--u-copy);background-attachment:fixed;
  font-family:var(--u-ff);
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}

.ram{padding-inline:var(--u-pad);max-width:var(--u-wrap);margin-inline:auto}
:focus-visible{border-radius:6px;outline:3px solid var(--u-accent);outline-offset:2px}

.prickChip{align-items:center;letter-spacing:.06em;border:1px solid var(--u-divider);border-radius:var(--u-rad-pill);padding:8px 16px;box-shadow:var(--u-sh-sm);color:var(--u-accent);display:inline-flex;font-weight:700;background:var(--u-card);font-size:.82rem;gap:8px}
.prickChip svg{height:16px;width:16px;color:var(--u-warm)}

.webTopbar{z-index:60;top:0;position:sticky;border-bottom:1px solid var(--u-divider);background:var(--u-card)}
.webTopbarInner{align-items:center;padding-block:12px;justify-content:space-between;gap:20px;min-height:74px;display:flex}
.titel{letter-spacing:-.02em;display:flex;font-family:var(--u-headline);gap:11px;color:var(--u-copy);align-items:center;font-weight:800;font-size:1.28rem}
.titel:hover{color:var(--u-copy)}
.titelIcon{justify-content:center;width:42px;height:42px;align-items:center;flex-shrink:0;border-radius:14px;box-shadow:0 8px 18px -8px rgba(236,78,148,.8);background:linear-gradient(135deg,var(--u-accent),var(--u-warm) 55%,var(--u-sun));color:var(--u-invert);display:inline-flex}
.titelIcon svg{width:22px;height:22px}
.medlemCard{overflow:hidden;border-radius:var(--u-rad-lg);background:var(--u-card);cursor:pointer;position:relative;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;border:1px solid var(--u-divider-soft)}
.medlemCard:hover{transform:translateY(-8px) scale(1.02);z-index:3;box-shadow:var(--u-sh-lg)}
.medlemAvatar{aspect-ratio:3/4;background:linear-gradient(160deg,var(--u-rose-200),var(--u-lilac-strong));display:block;overflow:hidden;position:relative}
.medlemAvatar img{width:100%;transition:transform .5s ease,filter .3s ease;display:block;object-fit:cover;height:100%}
.medlemCard:hover .medlemAvatar img{transform:scale(1.1);filter:brightness(.7)}
.medlemPrick{display:inline-flex;padding:5px 9px;background:linear-gradient(135deg,#102d48,#081e32);font-weight:800;border:1px solid #5b9bd7;align-items:center;border-radius:var(--u-rad-pill);gap:6px;position:absolute;top:10px;font-size:.68rem;right:10px;letter-spacing:.05em;box-shadow:0 2px 8px rgba(1,0,0,.18);z-index:3;color:#eaf3fd}
.medlemPrick .dot{color:transparent;width:8px;height:8px;background:var(--u-valid);border-radius:50%;box-shadow:0 0 6px rgba(145,196,170,.7);position:relative;font-size:0}
.medlemPrick .dot::after{border-radius:50%;background:var(--u-valid);position:absolute;animation:pulse 1.8s ease-out infinite;content:"";inset:0}
.medlemInner{background:linear-gradient(to top,rgba(1,0,0,.94),rgba(1,0,0,.7) 55%,rgba(1,0,0,0));padding:20px 15px 15px;left:0;text-align:left;right:0;position:absolute;transition:opacity .3s ease;z-index:2;bottom:0}
.medlemCard:hover .medlemInner{opacity:0}
.medlemSlogan{box-shadow:0 2px 8px rgba(1,0,0,.18);padding:4px 9px;gap:5px;border-radius:var(--u-rad-pill);background:rgba(24,46,45,.91);margin-bottom:8px;border:1px solid rgba(74,119,108,.88);align-items:center;font-size:.68rem;display:inline-flex;color:#eefaf8;letter-spacing:.02em;font-weight:700}
.medlemSlogan svg{height:14px;color:#a7e6cd;width:14px}
.medlemNamn{font-family:var(--u-headline);line-height:1.2;color:#fdfdff;font-weight:800;font-size:1.32rem}
.medlemNamn span{font-weight:600;font-size:.86rem;color:rgba(253,253,255,.8)}
.medlemAddr{font-size:.82rem;color:rgba(253,253,255,.88);display:flex;align-items:center;margin-top:3px;gap:6px}
.medlemAddr .pin svg{height:14px;width:14px;color:#fdfdff}
.medlemBakgrund{justify-content:center;align-items:flex-end;display:flex;inset:0;z-index:4;opacity:0;position:absolute;visibility:hidden;padding:20px;transition:opacity .3s ease,visibility .3s ease;background:linear-gradient(to bottom,rgba(1,0,0,.1),rgba(1,0,0,.88))}
.medlemCard:hover .medlemBakgrund{visibility:visible;opacity:1}
.medlemWrap{transition:transform .4s cubic-bezier(.175,.885,.32,1.275);text-align:center;transform:translateY(20px);width:100%}
.medlemCard:hover .medlemWrap{transform:translateY(0)}
.medlemStycke{font-size:.85rem;display:-webkit-box;margin:0 0 12px;text-shadow:0 2px 4px rgba(1,0,0,.8);line-height:1.4;overflow:hidden;-webkit-box-orient:vertical;color:#fdfdff;-webkit-line-clamp:2}
.medlemInkorg{border-radius:50%;align-items:center;box-shadow:0 4px 15px rgba(1,0,0,.29);color:var(--u-invert);width:50px;background:linear-gradient(135deg,var(--u-accent),var(--u-warm));display:inline-flex;height:50px;transition:transform .3s ease,box-shadow .3s ease;justify-content:center}
.medlemInkorg svg{height:22px;width:22px}
.medlemInkorg:hover{transform:scale(1.1);box-shadow:var(--u-sh-md)}
.medlemBlixt{height:34px;place-items:center;color:#fdfdff;top:10px;left:10px;z-index:6;display:grid;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px rgba(1,0,0,.28);transition:transform .2s ease,background .2s ease,color .2s ease;background:rgba(1,0,0,.41);position:absolute;width:34px;border:none}
.medlemBlixt svg{width:18px;height:18px}
.medlemBlixt:hover{background:rgba(1,0,0,.58);transform:scale(1.1)}
.medlemBlixt.done{background:var(--u-warm);color:var(--u-invert)}
.medlemBlixt.done svg{fill:currentColor}
.spar a:hover{color:var(--u-accent-600)}
ul{list-style:none;padding:0;margin:0}
button{font-family:inherit}
.h2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:800}
svg{display:block}
p{margin:0}
.radA{font-weight:600;color:var(--u-copy);font-size:.96rem;padding:9px 14px;border-radius:var(--u-rad-pill);transition:background .18s,color .18s}
.radA:hover{background:var(--u-card-strong);color:var(--u-accent-600)}
.radBlixt{padding:9px 12px;border:none;gap:7px;display:inline-flex;transition:background .18s ease,color .18s ease;align-items:center;border-radius:var(--u-rad-pill);cursor:pointer;color:var(--u-copy);font-weight:600;text-decoration:none;font-size:.96rem;position:relative;background:none}
.radBlixt:hover{background:var(--u-card-strong);color:var(--u-accent-600)}
.radBlixt svg{width:20px;color:var(--u-accent);height:20px}
.radBlixt:hover svg{color:var(--u-accent-600)}
.radBlixtStycke{white-space:nowrap}
.radBlixt .inkorgPrick{top:auto;position:static;right:auto}
.radBlixtMobile{border:none;text-align:left;color:var(--u-copy);width:100%;align-items:center;background:none;display:flex;font-weight:600;padding:14px 2px;border-bottom:1px solid var(--u-divider);text-decoration:none;gap:9px;font-size:15px;cursor:pointer}
.radBlixtMobile:hover{color:var(--u-accent-600)}
.radBlixtMobile svg{color:var(--u-accent);width:18px;height:18px}
figure{margin:0}

.tryck{
  white-space:nowrap;font-weight:700;border:1.5px solid transparent;font-size:1rem;
  border-radius:var(--u-rad-pill);display:inline-flex;cursor:pointer;justify-content:center;
  align-items:center;text-align:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease;gap:9px;
  padding:14px 26px;
}
.tryck svg{width:18px;height:18px}
.tryckSm{padding:10px 18px;font-size:.9rem}
.tryckWide{width:100%}
.tryckGo{color:var(--u-invert);box-shadow:0 14px 26px -12px rgba(251,76,100,.75);background:linear-gradient(95deg,var(--u-sun),var(--u-warm) 55%,var(--u-accent))}
.tryckGo:hover{box-shadow:0 20px 34px -12px rgba(251,76,100,.85);color:var(--u-invert);background:var(--u-action-600);transform:translateY(-2px)}
.tryckSoft{color:var(--u-accent);background:var(--u-card);border-color:var(--u-divider)}
.tryckSoft:hover{transform:translateY(-2px);background:var(--u-card-strong);color:var(--u-accent-600)}
.tryckWhite{background:var(--u-pure);color:var(--u-accent-600)}
.tryckWhite:hover{box-shadow:var(--u-sh-md);color:var(--u-accent-600);transform:translateY(-2px)}



.medlemmarLayout{gap:5px;display:grid;grid-template-columns:repeat(4,1fr)}
.mainRad{margin-left:auto;display:flex;gap:8px;align-items:center}

.burger{border:none;background:none;cursor:pointer;gap:5px;z-index:1105;flex-direction:column;display:none;padding:6px}
.burger span{width:26px;height:3px;border-radius:2px;transition:transform .3s ease,opacity .3s ease;background:var(--u-copy);display:block}
.burger.open span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}
.overrad{font-weight:800;font-size:.8rem;margin-bottom:10px;color:var(--u-accent);text-transform:uppercase;letter-spacing:.1em}
.picDone svg{fill:currentColor;stroke:none}
.lockbete{margin-top:14px;color:var(--u-copy-soft);font-size:1.06rem}
.radBakgrund{opacity:0;position:fixed;z-index:1090;visibility:hidden;background:var(--u-veil);inset:0;transition:opacity .3s ease}
.radBakgrund.open{opacity:1;visibility:visible}
::selection{background:rgba(236,78,148,.22)}
.asideMobile{box-shadow:-6px 0 30px rgba(43,39,46,.18);height:100vh;z-index:1100;padding:84px 22px 22px;top:0;position:fixed;height:100dvh;background:var(--u-card);transition:right .3s ease;max-width:320px;overflow-y:auto;right:-100%;width:80%}
.asideMobile.open{right:0}
.asideMobile nav{display:flex;flex-direction:column}
.asideMobile a:not(.tryck){padding:14px 2px;font-weight:600;border-bottom:1px solid var(--u-divider);font-size:15px;color:var(--u-copy)}
.asideMobile a:not(.tryck):hover{color:var(--u-accent-600)}
.asideMobile a.tryck{margin-top:22px}
.introHead{max-width:640px;text-align:center;margin:0 auto 44px}
.introHead .tryck{margin-top:24px}
.zon{padding-block:var(--u-section-pad)}
.zonOther{background:var(--u-card-strong)}
.hl{background:linear-gradient(92deg,var(--u-accent),var(--u-warm) 60%,var(--u-sun));color:transparent;-webkit-background-clip:text;background-clip:text}
.titel,.radA,.asideMobile a,.tryck,.spar a,.webBottenbjalke a,.platserMeny a,.medlemInkorg{text-decoration:none}
h1,h2,h3,h4{color:var(--u-copy);letter-spacing:-.01em;margin:0;font-family:var(--u-headline);line-height:1.12}
@media(max-width:768px){.medlemBakgrund{opacity:1;visibility:visible;inset:auto 7px 8px auto;width:auto;height:auto;padding:0;background:none}.medlemWrap{width:auto;transform:none}.medlemStycke{display:none}.medlemInkorg{width:34px;height:34px}.medlemInkorg svg{width:16px;height:16px}.medlemBlixt{top:8px;left:8px;width:30px;height:30px}.medlemBlixt svg{width:16px;height:16px}.medlemPrick{top:8px;right:8px;gap:4px;padding:3px 7px;font-size:9.5px;letter-spacing:.03em}.medlemPrick .dot{width:6px;height:6px}.medlemCard .medlemInner{padding:10px 9px 9px}.medlemSlogan{gap:3px;margin-bottom:5px;padding:3px 6px;font-size:9.5px}.medlemSlogan svg{width:12px;height:12px}.medlemNamn{font-size:.92rem;line-height:1.2;padding-right:40px}.medlemNamn span{font-size:.72rem;white-space:nowrap}.medlemAddr{font-size:.72rem;gap:4px;margin-top:2px;padding-right:40px}.medlemAddr .pin svg{width:12px;height:12px}}
@keyframes pulse{0%{opacity:.6;transform:scale(1)}100%{opacity:0;transform:scale(2.4)}}
.textboxEntry{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.textbox{transition:border-color .16s,box-shadow .16s;padding:13px 16px;border-radius:var(--u-rad-sm);font-family:inherit;border:1.5px solid var(--u-divider);width:100%;background:var(--u-card-soft);font-size:1rem;color:var(--u-copy)}
.textbox:focus{outline:none;box-shadow:0 0 0 3px rgba(236,78,148,.17);border-color:var(--u-accent)}
textarea.textbox{min-height:140px;resize:vertical}
.medlemSekvensRun{position:absolute;height:78px;place-items:center;top:50%;transform:translate(-50%,-50%);color:#fdfdff;border-radius:50%;z-index:3;line-height:1;cursor:pointer;background:rgba(1,0,0,.48);width:78px;border:none;transition:transform .15s ease,background .15s ease;font-size:1.9rem;padding-left:6px;display:grid;box-shadow:var(--u-sh-md);left:50%}
.medlemSekvensRun:hover{background:rgba(1,0,0,.7);transform:translate(-50%,-50%) scale(1.07)}
.medlemAside{position:sticky;top:96px}
.medlemIntro{flex-wrap:wrap;gap:12px;margin-top:14px;align-items:center;display:flex}
.medlemIntro .prickChip{flex:none}
.medlemLockbete{font-family:var(--u-headline);font-weight:800;line-height:1.1;font-size:clamp(1.7rem,3.2vw,2.3rem)}
.medlemLockbete span{color:var(--u-quiet);font-weight:600;font-size:.62em}
.medlemMeddelande{margin-top:10px;font-size:1.02rem;gap:7px;align-items:center;display:flex;color:var(--u-copy-soft)}
.medlemMeddelande .pin svg{height:18px;width:18px;color:var(--u-accent)}
.medlemMeddelande a{font-weight:600;color:var(--u-accent-600);border-bottom:1px solid transparent;text-decoration:none;transition:border-color .15s ease}
.medlemMeddelande a:hover{border-bottom-color:currentColor}
.medlemInfos{flex-wrap:wrap;margin-top:16px;display:flex;gap:8px}
.medlemAside .lockbete{margin-top:18px}
.medlemList{display:flex;flex-wrap:wrap;margin-top:24px;gap:12px}
.info{border-radius:var(--u-rad-md);border:1px solid var(--u-divider-soft);display:flex;box-shadow:var(--u-sh-sm);gap:12px;background:var(--u-card);padding:14px 16px;align-items:center}
.infoPic{height:40px;color:var(--u-accent);place-items:center;width:40px;display:grid;flex:none;border-radius:12px;background:var(--u-card-strong)}
.infoPic svg{width:18px;height:18px}
.infoStycke dt{color:var(--u-quiet);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}
.infoStycke dd{font-family:var(--u-headline);font-weight:800;font-size:.98rem;margin:2px 0 0}

.inblickTab{width:60px;box-shadow:var(--u-sh-lg);cursor:pointer;right:22px;height:60px;text-decoration:none;border-radius:50%;z-index:80;background:linear-gradient(135deg,var(--u-accent),var(--u-warm));align-items:center;border:none;justify-content:center;display:flex;position:fixed;color:var(--u-invert);bottom:22px}
.inblickTab svg{width:26px;height:26px;fill:currentColor;stroke:none}
.inblickTabStycke{height:auto;font-family:var(--u-headline);width:auto;gap:9px;font-weight:800;padding:13px 20px;border-radius:var(--u-rad-pill);max-width:calc(100vw - 44px);font-size:.95rem}
.inblickTabStycke svg{width:20px;height:20px}
.inblickStycke{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.historiaZon .spar,.spar:has(+ .introHead){justify-content:center}
.opening{margin-top:10px;display:grid;gap:4px}

.noter{grid-template-columns:1.2fr 1fr;display:grid;gap:clamp(28px,4vw,48px);align-items:start}
.noterInfos{gap:16px;grid-template-columns:1fr 1fr;display:grid}
.medlemFrameBlixt{top:14px;height:46px;right:14px;width:46px}
.medlemFrameBlixt svg{height:21px;width:21px}
.medlemLayout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,52px);margin-top:22px;align-items:start;display:grid}
.medlemPart{min-width:0}
.medlemFrame{overflow:hidden;position:relative;border-radius:var(--u-rad-lg);background:linear-gradient(160deg,var(--u-rose-200),var(--u-lilac-strong));margin:0;box-shadow:var(--u-sh-md)}
.medlemFrame img{object-fit:cover;display:block;height:auto;aspect-ratio:4/5;width:100%}
.medlemCtrl{display:grid;z-index:2;color:var(--u-accent-600);background:var(--u-card-bg);box-shadow:var(--u-sh-md);border-radius:50%;transform:translateY(-50%);cursor:pointer;height:44px;place-items:center;width:44px;top:50%;transition:transform .15s ease,background .15s ease;position:absolute;border:none}
.medlemCtrl:hover{transform:translateY(-50%) scale(1.07);background:var(--u-card-bg)}
.medlemCtrl svg{width:22px;height:22px}
.medlemPrev{left:12px}
.medlemFwd{right:12px}
.medlemTrack{display:flex;margin-top:12px;flex-wrap:wrap;gap:10px}
.medlemUnit{cursor:pointer;transition:transform .15s ease,border-color .15s ease;flex:0 0 auto;overflow:hidden;border:2px solid transparent;background:var(--u-card-strong);padding:0;width:72px;aspect-ratio:3/4;border-radius:var(--u-rad-sm);box-shadow:var(--u-sh-sm)}
.medlemUnit img{width:100%;display:block;height:100%;object-fit:cover}
.medlemUnit:hover{transform:translateY(-2px)}
.medlemUnit.done{border-color:var(--u-accent)}
.medlemPart [hidden]{display:none!important}
.medlemSekvens{background:#010000;width:100%;max-height:70vh;height:auto;display:block;object-fit:contain}
.medlemUnitSekvens{position:relative}
.cityhallNamn{margin-bottom:14px;font-family:var(--u-headline);font-weight:800}
.cityhallEntry{gap:10px;align-items:flex-start;font-size:.94rem;display:flex;margin-top:10px;color:var(--u-copy-soft)}
.cityhallEntry .pin{color:var(--u-accent);flex:none}
.cityhallEntry .pin svg{height:16px;width:16px}


.lockbeteZone{background:linear-gradient(100deg,var(--u-accent-600),var(--u-warm) 60%,var(--u-sun));display:flex;overflow:hidden;padding:clamp(38px,5vw,64px);gap:30px;position:relative;flex-wrap:wrap;border-radius:var(--u-rad-xl);box-shadow:var(--u-sh-lg);color:var(--u-invert);justify-content:space-between;align-items:center}
.lockbeteSplash{background:rgba(253,253,255,.12);right:-90px;border-radius:50%;height:320px;top:-120px;position:absolute;width:320px}
.lockbeteStycke{z-index:2;position:relative}
.lockbeteStycke h2{color:var(--u-invert);max-width:16ch}
.lockbeteStycke p{margin-top:10px;max-width:46ch;color:rgba(253,253,255,.91)}
.lockbeteZone .tryck{position:relative;z-index:2}

.ghost{padding-block:clamp(60px,10vw,140px);text-align:center}
.ghostNo{font-family:var(--u-headline);line-height:.9;font-weight:800;font-size:clamp(6rem,20vw,13rem)}
.ghostSet{justify-content:center;display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.historiaStycke .tryck{margin-top:26px}
.sekvensFrame{object-fit:cover;height:100%;display:block;background:#010000;width:100%;pointer-events:none}
.sekvensDot{border-radius:50%;font-size:.64rem;transform:translate(-50%,-50%);top:50%;line-height:1;place-items:center;left:50%;position:absolute;padding-left:2px;background:rgba(1,0,0,.57);display:grid;width:28px;height:28px;color:#fdfdff;box-shadow:var(--u-sh-sm);pointer-events:none}
.sekvensPrick{border-radius:var(--u-rad-pill);display:inline-flex;z-index:2;bottom:12px;box-shadow:var(--u-sh-sm);left:12px;gap:4px;position:absolute;font-weight:700;letter-spacing:.02em;padding:5px 9px;align-items:center;background:rgba(1,0,0,.6);color:#fdfdff;font-size:.7rem}

.historia{grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);display:grid;align-items:center}
.historiaStycke>p:not(.overrad){margin-top:16px;color:var(--u-copy-soft);font-size:1.04rem}
.historiaSlogan{margin-top:22px;font-family:var(--u-headline);font-size:1.1rem;font-weight:800;color:var(--u-accent-600)}

.webBottenbjalke{background:var(--u-ft-bg);color:var(--u-ft)}
.webBottenbjalke .ram{padding-block:56px 22px}
.webBottenbjalke a{color:var(--u-ft)}
.webBottenbjalke a:hover{color:var(--u-ft-strong)}

.historiaZon h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}
.historiaZon h2{margin-top:34px;font-size:1.35rem;font-weight:800;color:var(--u-accent-600)}
.historiaZon p{font-size:1.04rem;color:var(--u-copy-soft);margin-top:14px}
.historiaZon p a{font-weight:600}
.historiaZon ul{margin-top:14px;gap:10px;display:grid}
.historiaZon li{padding-left:24px;color:var(--u-copy-soft);position:relative}
.historiaZon li::before{background:var(--u-warm);border-radius:50%;left:0;position:absolute;width:10px;height:10px;top:.5em;content:""}
.when{display:flex;gap:12px;color:var(--u-copy-soft);justify-content:space-between;font-size:.9rem}
.zonCard{box-shadow:var(--u-sh-md);border-radius:var(--u-rad-lg);aspect-ratio:4/3;overflow:hidden;position:relative;border:1px solid var(--u-divider-soft);background:var(--u-lilac)}
.zonCard.zonAsync{cursor:pointer}
.zonGhost{inset:0;gap:10px;position:absolute;place-items:center;background:linear-gradient(160deg,var(--u-lilac-strong),var(--u-card-strong));padding:20px;text-align:center;display:grid}
.zonGhost p{font-weight:700;color:var(--u-copy)}
.zonPin{filter:drop-shadow(0 10px 12px rgba(251,76,100,.48));color:var(--u-warm)}
.zonPin svg{width:40px;fill:currentColor;stroke:none;height:40px}
.zonCard iframe{inset:0;border:0;width:100%;position:absolute;height:100%}
.zonCard.isLive .zonGhost{display:none}

.inkorgPrick{border-radius:var(--u-rad-pill);font-size:.72rem;background:var(--u-crimson);border:2px solid var(--u-card);place-items:center;display:grid;height:22px;font-weight:800;top:-3px;position:absolute;box-shadow:var(--u-sh-sm);color:var(--u-invert);line-height:1;min-width:22px;right:-3px;padding:0 6px}
.inkorgPrick[hidden]{display:none}

.pageScen{padding-block:clamp(40px,6vw,80px) 20px}
.pageScen h1{font-size:clamp(2rem,4.4vw,3.4rem);font-weight:800}
.pageScen p{color:var(--u-copy-soft);margin:16px auto 0;font-size:1.08rem}

.platser{flex-direction:column;gap:32px;display:flex}
.platserSet h2{margin-bottom:16px;font-size:1.15rem;color:var(--u-copy);font-weight:800}
.platserMeny{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid;gap:12px}
.platserMeny a{border:1px solid var(--u-divider);border-radius:var(--u-rad-md);background:var(--u-card);justify-content:space-between;box-shadow:var(--u-sh-sm);font-size:.92rem;gap:10px;font-weight:600;transition:transform .14s,box-shadow .14s,color .14s;color:var(--u-copy);align-items:center;padding:13px 16px;display:flex}
.platserMeny a:hover{transform:translateY(-3px);color:var(--u-accent-600);box-shadow:var(--u-sh-md)}
.platserMeny a .pin{place-items:center;display:grid;color:var(--u-accent);flex:none}
.platserMeny a .pin svg{height:16px;width:16px}

.begaran{background:var(--u-card);padding:clamp(24px,3vw,40px);border-radius:var(--u-rad-lg);box-shadow:var(--u-sh-md);border:1px solid var(--u-divider-soft)}
.begaranUnit{display:grid;margin-bottom:18px;gap:7px}
.begaranUnit label{font-weight:700;font-size:.92rem}

.dot{color:var(--u-valid);line-height:1;font-size:.6rem}

.filterBegaran{display:flex;border-radius:var(--u-rad-pill);padding:12px;border:1px solid var(--u-divider-soft);background:var(--u-card);margin:0 auto;gap:12px;box-shadow:var(--u-sh-md)}
.filterBegaran .textbox{background:transparent;box-shadow:none;border:none;font-size:1.06rem}
.filterBegaran .textbox:focus{box-shadow:none}
.filterBegaran+.platser{margin-top:40px}
.copyright{color:var(--u-ft-soft);margin-top:34px;padding-top:22px;border-top:1px solid var(--u-ft-edge);font-size:.86rem}
.bottenbjalkeLayout{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.bottenbjalkeTitel{display:flex;font-family:var(--u-headline);align-items:center;font-weight:800;color:var(--u-ft-strong);margin-bottom:12px;gap:10px;font-size:1.2rem}
.bottenbjalkePart>p:not(.bottenbjalkeNamn){color:var(--u-ft-soft);font-size:.94rem;max-width:34ch}
.bottenbjalkeNamn{font-size:1rem;font-weight:800;color:var(--u-ft-strong);margin-bottom:14px}
.bottenbjalkeMeny{font-size:.94rem;display:grid;gap:10px}
.begaranMeddelande{font-weight:700}
.begaranMeddelandeDone{color:var(--u-valid)}
.begaranMeddelandeHidden{color:var(--u-accent-600)}
.spar{color:var(--u-quiet);font-size:.86rem;gap:6px;flex-wrap:wrap;display:flex;justify-content:flex-start;margin-bottom:14px}
.plusList{margin-top:14px;gap:10px;display:grid}
.plusList li{color:var(--u-copy);position:relative;padding-left:24px}
.plusList li::before{border-radius:50%;background:var(--u-warm);left:0;content:"";position:absolute;height:10px;width:10px;top:.5em}
.historiaZon .spar{display:flex}.historiaZon .spar li{padding-left:0}.historiaZon .spar li::before{display:none}
.noterCityhall{box-shadow:var(--u-sh-md);padding:24px;border-radius:var(--u-rad-lg);background:var(--u-card);border:1px solid var(--u-divider-soft)}
.spar li:not(:last-child)::after{margin-left:6px;content:"\00203a";color:var(--u-quiet)}
.spar a{color:var(--u-copy-soft)}

.begaranWrap{max-width:640px}
.begaranGhost{overflow:hidden;height:1px;width:1px;position:absolute;left:-9999px}

@media (max-width:980px){
  .medlemmarLayout{grid-template-columns:repeat(3,1fr)}
  .medlemLayout{grid-template-columns:1fr}
  .medlemFrame{width:100%;max-width:380px;justify-self:start}
  .medlemAside{position:static}
  .historia,.noter{grid-template-columns:1fr}
  .bottenbjalkeLayout{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .mainRad{display:none}
  .burger{display:flex;position:fixed;top:22px;right:18px}
}
@media (min-width:861px){
  .asideMobile,.radBakgrund{display:none}
}
@media (max-width:600px){
  :root{--u-section-pad:clamp(30px,7vw,48px);--u-pad:8px}
  .bottenbjalkeLayout,.textboxEntry{grid-template-columns:1fr}
  .medlemmarLayout{grid-template-columns:repeat(2,1fr);gap:5px}
  .medlemCard{border-radius:var(--u-rad-sm)}
  .medlemInner{padding:16px 10px}
  .lockbeteZone{flex-direction:column;align-items:stretch;padding:32px 24px}
  .lockbeteZone .tryck{width:100%;white-space:normal}
  .filterBegaran{flex-direction:column;border-radius:var(--u-rad-lg)}
  .filterBegaran .tryck{width:100%}
  .zonMedlem{padding-top:0}
  .medlemFrame img{aspect-ratio:1/1;max-height:46vh}
  .medlemLayout{margin-top:0}
  .medlemAside{display:flex;flex-direction:column;margin-top:14px}
  .medlemIntro{order:1;margin-top:0}
  .medlemMeddelande{order:2}
  .medlemList{order:3;margin-top:16px;gap:10px}
  .medlemList .tryck{flex:1 1 auto}
  .medlemTrack{display:none}
  .medlemInfos{order:4}
  .medlemAside .lockbete{order:5}
  .noterInfos{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .info{padding:11px 12px;gap:8px;flex-direction:column;align-items:flex-start}
  .infoPic{width:34px;height:34px}
  .infoStycke{min-width:0}
  .infoStycke dd{font-size:.92rem;overflow-wrap:anywhere}
}
