/* Festivalmate – sajtens stil (design: designhandoffen, Bricolage Grotesque + DM Sans). Laddas av Frontend::assets(). */
:root{--bg:#F7F5F0;--bg-tint:#F1EEE6;--surface:#fff;--ink:#0F0E0C;--ink-2:#2A2825;--muted:#6B6760;--muted-2:#94908A;--hairline:#EAE6DC;--hairline-strong:#DCD7CB;--accent:#F5A524;--accent-ink:#1A1407;--accent-soft:#FBE7BE;--accent-faint:#FDF3DC;--danger:#E5484D;--success:#2F8A55;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:24px;--r-pill:999px;--font-display:'Bricolage Grotesque',system-ui,sans-serif;--font-body:'DM Sans',system-ui,sans-serif}
body{background:var(--bg);color:var(--ink-2);font-family:var(--font-body);font-size:15px;line-height:1.45;letter-spacing:-.005em;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.022em;color:var(--ink);text-wrap:balance}
a{color:inherit}
.fm-muted{color:var(--muted)}
.fm-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font:700 10.5px/1.4 var(--font-body);letter-spacing:.05em;text-transform:uppercase;vertical-align:middle}
.fm-empty{padding:28px;border:1px dashed var(--hairline-strong);border-radius:var(--r-lg);color:var(--muted);text-align:center}
/* språkväxlare */
.fm-lang{font-weight:700;font-size:12.5px;text-decoration:none;color:var(--muted);padding:8px 10px;border-radius:var(--r-pill)}
.fm-lang:hover{background:var(--bg-tint);color:var(--ink)}
/* lineup + spelar på (FM Lineup / FM Spelar på) */
.fm-section-head{display:flex;align-items:baseline;justify-content:space-between;margin:48px 0 18px}
.fm-section-head h2{font-size:28px;letter-spacing:-.025em;margin:0}
.fm-day-bar{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;margin-bottom:8px}
.fm-day{min-width:92px;padding:12px 14px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--hairline);text-decoration:none;display:flex;flex-direction:column;gap:2px}
.fm-day .wd{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.fm-day .n{font:700 22px var(--font-display);color:var(--ink)}
.fm-day .c{font-size:11.5px;color:var(--muted)}
.fm-day:hover{border-color:var(--hairline-strong)}
.fm-day.active{background:var(--ink);border-color:var(--ink)}.fm-day.active .wd{color:var(--accent)}.fm-day.active .n{color:#fff}.fm-day.active .c{color:rgba(255,255,255,.6)}
.fm-day-title{font:700 13px var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:28px 0 10px;display:flex;align-items:center;gap:8px;scroll-margin-top:20px}
.fm-day-title::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent)}
.fm-rows{display:flex;flex-direction:column;gap:6px}
.fm-row{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:10px 14px 10px 10px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-md);text-decoration:none;color:inherit;transition:border-color .15s}
a.fm-row:hover{border-color:var(--hairline-strong)}
.fm-row.headliner{background:var(--accent-faint);border-color:#F0CD7C}
.fm-thumb{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;color:#fff;font:700 14px var(--font-display);letter-spacing:-.02em}
.fm-row-meta{display:flex;flex-direction:column;gap:3px;min-width:0}
/* artistens egna spelningar (FM Spelar på) */
.fm-tour .fm-section-head{flex-wrap:wrap;gap:6px 16px}
.fm-tour-site{font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap}
.fm-tour-site:hover{color:var(--ink)}
.fm-thumb.fm-date{background:var(--bg-tint);color:var(--ink);display:flex;flex-direction:column;line-height:1;gap:2px}
.fm-thumb.fm-date b{font:700 17px var(--font-display)}
.fm-thumb.fm-date small{font:600 10px var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.fm-show.is-festival{background:var(--accent-faint);border-color:#F0CD7C}
.fm-show.is-festival .fm-thumb.fm-date{background:var(--accent);color:var(--accent-ink)}
.fm-show.is-festival .fm-thumb.fm-date small{color:var(--accent-ink)}
/* "Har spelat på" – passerade upplagor år för år, hopfällbart */
.fm-played{margin-top:28px;border-top:1px solid var(--hairline)}
.fm-played summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:18px 0 6px}
.fm-played summary::-webkit-details-marker{display:none}
.fm-played summary span{font:700 22px var(--font-display);letter-spacing:-.02em;color:var(--ink)}
.fm-played summary span::after{content:'+';display:inline-block;margin-left:10px;color:var(--muted);font-weight:600}
.fm-played[open] summary span::after{content:'–'}
.fm-played summary small{color:var(--muted);font-size:13px;font-weight:600}
.fm-played-year{font:700 13px var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:18px 0 10px}
.fm-played .fm-row{opacity:.85}
.fm-tour-more{margin-top:6px}
.fm-tour-more summary{cursor:pointer;list-style:none;padding:12px 14px;border:1px dashed var(--hairline-strong);border-radius:var(--r-md);text-align:center;font-weight:600;font-size:14px;color:var(--ink)}
.fm-tour-more summary::-webkit-details-marker{display:none}
.fm-tour-more[open] summary{display:none}
.fm-tour-empty,.fm-tour-src{color:var(--muted);font-size:13px;margin:10px 0 0}
.fm-row-name{font:700 15.5px var(--font-display);letter-spacing:-.015em;color:var(--ink)}
.fm-row-sub{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:6px}
.fm-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.fm-row-time{font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-2);font-size:14px}
.fm-back{display:inline-block;margin-bottom:18px;font-size:13.5px;font-weight:600;color:var(--muted);text-decoration:none}
.fm-back:hover{color:var(--ink)}
.elementor-widget-theme-post-content{max-width:740px;margin-left:auto;margin-right:auto;font-size:17px;line-height:1.7;color:var(--ink-2)}
.elementor-widget-theme-post-content h2{font-size:30px;margin:40px 0 12px}
.elementor-widget-theme-post-content h3{font-size:22px;margin:32px 0 10px}
.elementor-widget-theme-post-content a{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
.elementor-widget-theme-post-content blockquote{border-left:4px solid var(--accent);padding:4px 0 4px 20px;margin:28px 0;font:500 22px/1.4 var(--font-display);color:var(--ink)}
.elementor-widget-theme-post-content img{border-radius:var(--r-lg);height:auto}
/* brödtext, kort, arkivsök */
.fm-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.fm-cover{position:relative;aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,var(--c1,#1F1A14) 0%,var(--c2,#5C3A1A) 55%,var(--c3,#E5894A) 130%);background-size:cover;background-position:center}
.fm-cover:not(.has-img)::after{content:'';position:absolute;inset:0;background:radial-gradient(120% 120% at 0% 0%,rgba(255,255,255,.16),transparent 60%)}
.fm-cover-cat{position:absolute;bottom:12px;left:12px;z-index:1;background:var(--surface);color:var(--ink);font-weight:700;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;padding:5px 10px;border-radius:var(--r-pill)}
.fm-search{display:flex;align-items:center;gap:10px;max-width:460px;height:46px;padding:0 16px;margin:-8px 0 28px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-pill);color:var(--muted)}
.fm-search input{flex:1;border:0!important;outline:0;background:transparent!important;font:15px var(--font-body);color:var(--ink);padding:0!important;box-shadow:none!important}
.fm-row-name{overflow-wrap:anywhere}
.elementor .elementor-widget-theme-post-content{max-width:740px;width:100%;margin-left:auto;margin-right:auto}
body.single-fm_festival .elementor .elementor-widget-theme-post-content,body.single-fm_artist .elementor .elementor-widget-theme-post-content{margin-left:0;margin-top:8px}
/* Header / footer / arkiv byggda med Elementor-widgetar */
body .e-con.fm-header{border-bottom:1px solid var(--hairline)}
body .e-con.fm-brand{text-decoration:none;flex:0 0 auto;width:auto}
body .fm-brand-mark .elementor-heading-title{height:28px;padding:0 11px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:6px;font:800 13px var(--font-display);letter-spacing:.02em;color:var(--ink)}
body .fm-brand-mark .elementor-heading-title::after{content:'';width:4px;height:4px;border-radius:50%;background:var(--ink)}
body .fm-brand-name .elementor-heading-title{font:700 19px var(--font-display);letter-spacing:-.02em;color:var(--ink)}
body .fm-mainnav{flex:1 1 auto;min-width:0}
body .fm-mainnav .elementor-nav-menu{flex-wrap:nowrap;gap:4px}
body .fm-mainnav .elementor-nav-menu a.elementor-item{padding:8px 14px!important;border-radius:var(--r-pill);color:var(--ink-2);font:500 14.5px var(--font-body);white-space:nowrap}
body .fm-mainnav .elementor-nav-menu a.elementor-item:hover{background:var(--bg-tint);color:var(--ink)}
body .fm-mainnav .elementor-nav-menu a.elementor-item-active,body .fm-mainnav .current-menu-item>a{background:var(--ink)!important;color:var(--surface)!important}
body .e-con.fm-header-right{flex:0 0 auto;width:auto;margin-left:auto}
body .fm-btn-el .elementor-button{background:var(--ink);color:#fff;border-radius:var(--r-pill);font:600 14px var(--font-body);padding:11px 18px;transition:transform .15s}
body .fm-btn-el .elementor-button:hover{transform:translateY(-1px);color:#fff}
body .fm-btn-el--light .elementor-button{background:var(--surface);color:var(--ink);border:1px solid var(--hairline)}
body .fm-btn-el--light .elementor-button:hover{color:var(--ink);border-color:var(--hairline-strong)}
body .fm-btn-el--accent .elementor-button{background:var(--accent);color:var(--accent-ink)}
body .fm-btn-el--accent .elementor-button:hover{color:var(--accent-ink)}
body .fm-btn-el--ghost .elementor-button{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
body .fm-btn-el .elementor-button:not([href]),body .fm-btn-el .elementor-button[href=""]{display:none}
body .e-con.fm-footer-wrap{margin-top:80px;border-top:1px solid var(--hairline)}
body .fm-footer-h .elementor-heading-title{font:700 11.5px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
body .fm-footer-text .elementor-heading-title{font:400 13.5px/1.5 var(--font-body);color:var(--muted);max-width:34ch}
body .fm-footnav .elementor-nav-menu a.elementor-item{padding:4px 0!important;color:var(--ink-2);font:400 14px var(--font-body)}
body .fm-footnav .elementor-nav-menu a.elementor-item:hover{color:var(--ink);text-decoration:underline}
body .fm-footer-legal-el{margin-top:36px;padding-top:18px;border-top:1px solid var(--hairline)}
body .fm-footer-legal-el .elementor-heading-title{font:400 12px var(--font-body);color:var(--muted)}
body .fm-arch-title .elementor-heading-title{font:700 56px/1.02 var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:0 0 10px}
body .fm-arch-lede .elementor-heading-title{font:400 19px/1.5 var(--font-body);color:var(--ink-2);max-width:60ch;margin-bottom:24px}
body .fm-arch-lede:has(.elementor-heading-title:empty){display:none}
body .fm-searchform .elementor-search-form__container{max-width:460px;border-radius:var(--r-pill)!important;border:1px solid var(--hairline)!important;background:var(--surface);overflow:hidden;margin-bottom:28px}
body .fm-searchform input.elementor-search-form__input{font:15px var(--font-body);padding-left:18px}
body .elementor-pagination{margin-top:40px;display:flex;gap:6px;justify-content:center}
body .elementor-pagination .page-numbers{min-width:38px;height:38px;display:inline-grid;place-items:center;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--hairline);text-decoration:none;font:600 14px var(--font-body);color:var(--ink);padding:0 12px}
body .elementor-pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}
body .fm-artist-grid .fm-cover{aspect-ratio:1}
body .fm-artist-grid .fm-card-title .elementor-heading-title{font-size:17px}
body .fm-artist-grid .fm-card-excerpt{display:none}
@media (max-width:1024px){body .fm-mainnav{order:3;flex-basis:100%;overflow-x:auto;scrollbar-width:none}}
@media (max-width:640px){body .fm-arch-title .elementor-heading-title{font-size:36px}body .fm-hide-mobile{display:none}body .fm-artist-grid .fm-card-title .elementor-heading-title{font-size:15px}}
/* Loop Builder-mallar (FM Loop – Kort / Upplaga / Nyare upplaga) */
body .e-con.fm-card{text-decoration:none;color:inherit;--gap:12px}
body .e-con.fm-cover{--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0}
body .fm-cover .fm-cover-img{position:absolute;inset:0;margin:0}
body .fm-cover .fm-cover-img img{width:100%;height:100%;object-fit:cover;display:block}
body .fm-cover .fm-cover-cat{position:absolute;top:auto;bottom:12px;left:12px;width:auto;max-width:calc(100% - 24px);z-index:2;padding:5px 10px;background:var(--surface);border-radius:var(--r-pill)}
body .fm-cover .fm-cover-cat .elementor-heading-title{font:700 10.5px/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
body .fm-cover .fm-cover-cat:has(.elementor-heading-title:empty),body .fm-card-excerpt:has(.elementor-heading-title:empty),body .fm-card-meta:has(.elementor-heading-title:empty),body .fm-edition-badge:has(.elementor-heading-title:empty){display:none}
body .fm-card-title .elementor-heading-title{font:700 20px/1.18 var(--font-display);letter-spacing:-.02em;color:var(--ink)}
body .e-con.fm-card:hover .fm-card-title .elementor-heading-title{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
body .fm-card-excerpt .elementor-heading-title{font:400 13.5px/1.5 var(--font-body);color:var(--muted)}
body .fm-card-meta .elementor-heading-title{font:400 12px/1.4 var(--font-body);color:var(--muted)}
body .e-con.fm-row{display:flex;text-decoration:none;--padding-top:10px;--padding-right:14px;--padding-bottom:10px;--padding-left:10px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-md)}
body .e-con.fm-row:hover{border-color:var(--hairline-strong)}
body .e-con.fm-row-meta{--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0;flex:1;min-width:0}
body .fm-year .elementor-heading-title{display:grid;place-items:center;width:48px;height:48px;border-radius:10px;background:var(--ink);color:var(--accent);font:700 13px var(--font-display)}
body .fm-row-name .elementor-heading-title{font:700 15.5px var(--font-display);letter-spacing:-.015em;color:var(--ink)}
body .fm-row-sub .elementor-heading-title{font:400 12.5px var(--font-body);color:var(--muted)}
body .fm-row-time .elementor-heading-title{font:600 14px var(--font-body);color:var(--ink-2)}
body .fm-edition-badge .elementor-heading-title{display:inline-block;padding:2px 8px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font:700 10.5px/1.4 var(--font-body);letter-spacing:.05em;text-transform:uppercase}
body .e-con.fm-callout{text-decoration:none;--padding-top:14px;--padding-right:18px;--padding-bottom:14px;--padding-left:18px;margin:24px 0 -8px;border-radius:var(--r-md);background:var(--accent-faint);border:1px solid #F0CD7C}
body .fm-callout .elementor-heading-title{font:600 14px var(--font-body);color:var(--accent-ink)}
body .fm-callout-text .elementor-heading-title{font-weight:700}
body .elementor-widget-loop-grid .e-loop-nothing-found-message{color:var(--muted)}
body .fm-hide-empty:has(.e-loop-nothing-found-message),body .fm-hide-empty:not(:has(.e-loop-item)){display:none}
/* Singelmallar (festival, artist, artikel, sida) byggda med Elementor-widgetar */
body .e-con.fm-hero-el{position:relative;border-radius:var(--r-xl);overflow:hidden;margin:32px 0 32px;background-color:#1A140C;background-image:linear-gradient(135deg,#1A140C 0%,#3A2A18 55%,#6B4A22 130%)}
body .e-con.fm-hero-el::after{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(15,14,12,.9) 0%,rgba(15,14,12,.65) 45%,rgba(15,14,12,.2) 100%),radial-gradient(80% 100% at 90% 0%,rgba(245,165,36,.35),transparent 60%)}
body .e-con.fm-hero-el>*{position:relative;z-index:1}
body .fm-hero-eyebrow .elementor-heading-title{font:600 11.5px var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.78)}
body .fm-hero-title .elementor-heading-title{font:700 56px/1.02 var(--font-display);letter-spacing:-.035em;color:#fff}
body .fm-hero-genres .elementor-heading-title{font:600 12.5px var(--font-body);color:rgba(255,255,255,.85);text-transform:lowercase}
body .fm-hero-genres:has(.elementor-heading-title:empty){display:none}
/* Bildkredit (fotograf/licens från utvald bilds bildtext) */
body .e-con.fm-hero-el>.fm-hero-credit{position:absolute;right:16px;bottom:10px;margin:0;z-index:1;max-width:60%}
body .fm-hero-credit .elementor-heading-title{font:500 11px var(--font-body);color:rgba(255,255,255,.6);text-align:right}
body .fm-hero-credit a,body .fm-image-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}
body .fm-image-credit .elementor-heading-title{font:500 12px var(--font-body);color:var(--muted,#6b6b6b);margin-top:-8px}
body .fm-hero-credit:has(.elementor-heading-title:empty),body .fm-image-credit:has(.elementor-heading-title:empty){display:none}
body .e-con.fm-hero-actions-el{--padding-left:0;--padding-right:0}
body .fm-prose-el{max-width:740px;font:400 17px/1.7 var(--font-body);color:var(--ink-2)}
body .fm-prose-el h2{font:700 30px/1.15 var(--font-display);margin:36px 0 12px;color:var(--ink)}
body .fm-prose-el h3{font:700 22px/1.2 var(--font-display);margin:28px 0 10px;color:var(--ink)}
body .fm-prose-el a{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
body .fm-section-title .elementor-heading-title{font:700 28px var(--font-display);letter-spacing:-.025em;color:var(--ink);margin:48px 0 18px}
body .e-con.fm-artist-hero{--gap:32px;margin:40px 0 8px}
body .fm-artist-photo img{width:200px;height:200px;object-fit:cover;border-radius:var(--r-xl);background:var(--bg-tint)}
body .fm-artist-eyebrow .elementor-heading-title{font:600 11.5px var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
body .fm-artist-name .elementor-heading-title{font:700 52px/1.02 var(--font-display);letter-spacing:-.035em;color:var(--ink)}
body .fm-artist-genres .elementor-heading-title{font:600 13px var(--font-body);color:var(--ink-2);text-transform:lowercase}
body .fm-artist-genres:has(.elementor-heading-title:empty){display:none}
body .fm-back .elementor-heading-title{font:600 13.5px var(--font-body);color:var(--muted)}
body .fm-back .elementor-heading-title a:hover{color:var(--ink)}
body .fm-pill-el .elementor-heading-title{display:inline-flex;padding:6px 12px;border-radius:var(--r-pill);background:var(--accent-faint);color:var(--accent-ink);font:700 11px var(--font-body);letter-spacing:.06em;text-transform:uppercase}
body .fm-pill-el:has(.elementor-heading-title:empty){display:none}
body .fm-article-title .elementor-heading-title{font:700 52px/1.02 var(--font-display);letter-spacing:-.035em;color:var(--ink)}
body .fm-article-lede .elementor-heading-title{font:400 19px/1.5 var(--font-body);color:var(--ink-2)}
body .fm-article-lede:has(.elementor-heading-title:empty){display:none}
body .fm-byline-el .elementor-heading-title{font:400 13.5px var(--font-body);color:var(--muted)}
body .fm-article-img img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-xl)}
body .fm-article-img:not(:has(img)){display:none}
@media (max-width:640px){body .fm-hero-title .elementor-heading-title,body .fm-artist-name .elementor-heading-title,body .fm-article-title .elementor-heading-title{font-size:36px}body .fm-artist-photo img{width:140px;height:140px}}
@media (max-width:640px){.fm-row{grid-template-columns:40px 1fr auto;gap:10px}.fm-thumb{width:40px;height:40px;font-size:12px}}
/* Startsida + 404 byggda med Elementor-widgetar */
body .e-con.fm-home-hero-el{padding:56px 0 8px;max-width:860px;gap:14px}
body .fm-home-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;font:600 12px var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
body .fm-home-eyebrow .elementor-heading-title::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--accent)}
body .fm-home-title-el .elementor-heading-title{font:700 60px/1.02 var(--font-display);letter-spacing:-.035em;color:var(--ink)}
body .fm-home-lede-el .elementor-heading-title{font:400 19px/1.5 var(--font-body);color:var(--ink-2);max-width:640px}
body .e-con.fm-home-section-el{gap:0;padding:0}
/* Kortrutnätet räknades som för lågt i flex-kolumnen (bildernas 4:3 mättes på fel bredd) och lade sig över app-rutan och sidfoten i mobilen. Block-layout mäter rätt. */
body .e-con.fm-home-section-el{display:block}
body .e-con.fm-home-section-el>.elementor-element{width:100%}
body .e-con.fm-404-el{max-width:620px;margin:64px auto 48px;text-align:center;gap:12px}
body .fm-404-code-el .elementor-heading-title{font:800 120px/1 var(--font-display);letter-spacing:-.05em;color:var(--accent)}
body .fm-404-title-el .elementor-heading-title{font:700 40px/1.1 var(--font-display);letter-spacing:-.03em;color:var(--ink)}
body .fm-404-lede-el .elementor-heading-title{font:400 17px/1.5 var(--font-body);color:var(--muted)}
body .fm-404-el .fm-searchform{width:100%;max-width:460px}
body .fm-404-el .fm-searchform .elementor-search-form__container{margin:12px auto 8px}
@media (max-width:640px){body .fm-home-title-el .elementor-heading-title{font-size:38px}body .e-con.fm-home-hero-el{padding-top:32px}body .fm-404-code-el .elementor-heading-title{font-size:88px}body .fm-404-title-el .elementor-heading-title{font-size:30px}}
body .fm-prose-el a,body .elementor-widget-theme-post-content a{color:var(--ink)}
body .fm-prose-el ul,body .fm-prose-el ol{margin:0 0 1em}
body .fm-footnav .elementor-nav-menu a.elementor-item.elementor-item-active{color:var(--ink);font-weight:600}
body .fm-footnav .elementor-item::before,body .fm-footnav .elementor-item::after{display:none}
body .fm-searchform .elementor-search-form__submit{background:var(--ink);color:#fff;font:600 14px var(--font-body);padding:0 20px}
body .fm-searchform .elementor-search-form__submit:hover{background:var(--ink-2)}
body .fm-search:focus-within{border-color:var(--hairline-strong);box-shadow:0 0 0 4px var(--accent-faint)}
body .fm-search-clear{font-size:13px;font-weight:600;color:var(--muted);text-decoration:none}
/* Loop Grid "Se äldre upplagor" (ladda fler) */
body .fm-editions-el .e-load-more-anchor+.elementor-button-wrapper,body .fm-editions-el .elementor-button-wrapper{margin-top:12px;text-align:left}
body .fm-editions-el .e-loop__load-more .elementor-button,body .fm-editions-el .elementor-button-wrapper .elementor-button{background:var(--surface);color:var(--ink);border:1px solid var(--hairline);border-radius:var(--r-pill);font:600 14px var(--font-body);padding:11px 20px}
body .fm-editions-el .e-loop__load-more .elementor-button:hover{border-color:var(--hairline-strong)}
/* Startsida enligt bloggskissen: utvalt inlägg, kategoripiller, grid + sidofält, app-CTA */
body .e-con.fm-feature{text-decoration:none;color:inherit;--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0}
body .e-con.fm-feature-cover{flex:0 0 58%;width:58%;aspect-ratio:16/10;border-radius:var(--r-xl)}
body .e-con.fm-feature-body{flex:1 1 0;min-width:0;--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0}
body .fm-feature-title .elementor-heading-title{font:700 44px/1.04 var(--font-display);letter-spacing:-.03em;color:var(--ink)}
body .e-con.fm-feature:hover .fm-feature-title .elementor-heading-title{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
body .fm-feature-excerpt .elementor-heading-title{font:400 17px/1.55 var(--font-body);color:var(--ink-2)}
body .fm-feature-excerpt:has(.elementor-heading-title:empty){display:none}
body .e-con.fm-home-pills{--gap:8px;flex-wrap:wrap}
body .fm-chip .elementor-button{white-space:nowrap;background:var(--surface);color:var(--ink-2);border:1px solid var(--hairline);border-radius:var(--r-pill);font:600 13.5px var(--font-body);padding:8px 16px}
body .fm-chip .elementor-button:hover{color:var(--ink);border-color:var(--hairline-strong)}
body .fm-chip--active .elementor-button,body .fm-chip--active .elementor-button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
body .fm-cat-filter{margin:-4px 0 22px}
body .fm-cat-filter .e-filter{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}
body .fm-cat-filter .e-filter-item{white-space:nowrap;background:var(--surface);color:var(--ink-2);border:1px solid var(--hairline);border-radius:var(--r-pill);font:600 13.5px var(--font-body);padding:8px 16px;cursor:pointer;transition:border-color .15s,background .15s}
body .fm-cat-filter .e-filter-item:hover{color:var(--ink);border-color:var(--hairline-strong)}
body .fm-cat-filter .e-filter-item[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
body .fm-cat-filter .e-filter-item[data-filter="__all"]{order:-1}body .fm-cat-filter .e-filter-item[data-filter="guide"]{order:1}body .fm-cat-filter .e-filter-item[data-filter="tip"]{order:2}body .fm-cat-filter .e-filter-item[data-filter="news"]{order:3}body .fm-cat-filter .e-filter-item[data-filter="crew-story"]{order:4}
body .fm-cat-filter .e-filter-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
body .e-con.fm-home-main .elementor-widget-loop-grid.e-loading{opacity:.5;transition:opacity .2s}
body .e-con.fm-home-split{--gap:48px;align-items:flex-start}
body .e-con.fm-home-main{flex:1 1 0;min-width:0}
body .e-con.fm-aside{flex:0 0 320px;width:320px;position:sticky;top:24px;margin-top:48px;--padding-top:20px;--padding-right:20px;--padding-bottom:20px;--padding-left:20px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);--gap:14px}
body .fm-aside-title .elementor-heading-title{font:700 11.5px var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
body .fm-aside .e-loop-item+.e-loop-item{margin-top:0}
body .e-con.fm-side-row{border-color:transparent;background:transparent;--padding-top:10px;--padding-right:10px;--padding-bottom:10px;--padding-left:10px;margin:0 -10px}
body .e-con.fm-side-row:hover{background:var(--bg-tint);border-color:transparent}
body .fm-side-thumb{flex:0 0 44px;width:44px;margin:0}
body .fm-side-thumb img{width:44px;height:44px;object-fit:cover;border-radius:10px;display:block;background:var(--bg-tint);color:transparent;font-size:0}
body .fm-side-thumb:not(:has(img)){display:none}
body .fm-side-row .fm-row-name .elementor-heading-title{font-size:14.5px}
body .fm-side-row .fm-row-sub .elementor-heading-title{font-size:12px}
body .fm-aside-link .elementor-heading-title{font:600 13.5px var(--font-body);color:var(--ink)}
body .fm-aside-link .elementor-heading-title a{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
body .e-con.fm-app-cta{border-radius:var(--r-xl);overflow:hidden;background-color:var(--ink);background-image:radial-gradient(80% 120% at 100% 0%,rgba(245,165,36,.35),transparent 60%);--padding-top:48px;--padding-right:48px;--padding-bottom:48px;--padding-left:48px;--gap:14px}
body .fm-app-cta .fm-home-eyebrow .elementor-heading-title{color:rgba(255,255,255,.7)}
body .fm-app-cta-title .elementor-heading-title{font:700 40px/1.06 var(--font-display);letter-spacing:-.03em;color:#fff;max-width:20ch}
body .fm-app-cta-lede .elementor-heading-title{font:400 17px/1.5 var(--font-body);color:rgba(255,255,255,.8);max-width:56ch}
/* Här bodde vi / Vi bodde här under (ReviewHotels) */
.fm-linked{margin:40px 0 0;padding:24px;background:var(--bg-tint);border-radius:var(--r-lg)}
.fm-linked-title{font-size:20px;margin:0 0 14px}
.fm-linked-list{display:flex;flex-direction:column;gap:8px}
.fm-linked-row{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-md);text-decoration:none;color:inherit;transition:border-color .15s}
.fm-linked-row:hover{border-color:var(--hairline-strong)}
.fm-linked-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.fm-linked-name{font:700 16px var(--font-display);letter-spacing:-.015em;color:var(--ink)}
.fm-linked-meta{font-size:13px;color:var(--muted)}
.fm-linked-badge{padding:3px 9px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-ink);font:700 12.5px var(--font-body)}
.fm-linked-arrow{color:var(--muted-2)}
/* Programpunkter som inte är konserter (SlotKind) */
.fm-badge.fm-kind{background:var(--bg-tint);color:var(--ink-2);border:1px solid var(--hairline-strong)}
.fm-badge.fm-kind-signing{background:var(--accent-faint);border-color:#F0CD7C}
/* Villkor (/terms): kontoradering överst */
.fm-terms-langs{font-size:14px;color:var(--muted)}
.fm-terms-box{margin:24px 0;padding:24px 28px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);scroll-margin-top:24px}
body .fm-terms-box h2,body .fm-prose-el .fm-terms-box h2{margin-top:0}
h2[id]{scroll-margin-top:24px}
/* Recensioner (FM – Recension, fälten fm_rv_* i ReviewView) */
body .fm-rv-subject .elementor-heading-title{font:500 15px/1.5 var(--font-body);color:var(--muted)}
body .fm-rv-subject .elementor-heading-title a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
body .fm-rv-html:not(:has(div,dl,a)),body .fm-rv-subject:has(.elementor-heading-title:empty){display:none}
body .fm-prose-el .fm-linked a,body .fm-prose-el .fm-linked a *{text-decoration:none}
body .fm-prose-el .fm-linked .fm-linked-title{font:700 20px/1.2 var(--font-display);margin:0 0 14px}
body .fm-prose-el .fm-linked-row{font-size:15px;line-height:1.4}
.fm-rv-score{display:flex;gap:28px;align-items:center;margin:8px 0 4px;padding:24px 28px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg)}
.fm-rv-overall{display:flex;flex-wrap:wrap;align-items:baseline;width:112px;flex:none}
.fm-rv-big{font:800 64px/1 var(--font-display);letter-spacing:-.04em;color:var(--ink)}
.fm-rv-of{font:700 22px var(--font-display);color:var(--muted-2);margin-left:2px}
.fm-rv-olabel{flex-basis:100%;margin-top:6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.fm-rv-ratings{list-style:none;margin:0;padding:0 0 0 28px;border-left:1px solid var(--hairline);flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px 24px}
.fm-rv-ratings li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-2)}
.fm-rv-rlabel{flex:1;min-width:0}
.fm-rv-score{flex-wrap:wrap}
.fm-rv-rlabel{display:flex;flex-direction:column;gap:1px}
.fm-rv-rby,.fm-rv-oby{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.fm-rv-oby{flex-basis:100%;margin-top:2px}
.fm-rv-bar{position:relative;width:72px;height:6px;flex:none;border-radius:var(--r-pill);background:var(--hairline-strong);overflow:hidden}
.fm-rv-bar span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--accent)}
.fm-rv-rnum{min-width:26px;text-align:right;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.fm-rv-gig{flex-basis:100%;display:flex;align-items:center;gap:16px;padding-top:18px;border-top:1px solid var(--hairline);font-size:14px;line-height:1.5;color:var(--ink-2)}
.fm-rv-gig-num{flex:none;font:800 28px/1 var(--font-display);letter-spacing:-.03em;color:var(--ink)}
.fm-rv-gig-num small{font-size:14px;color:var(--muted-2);margin-left:1px}
.fm-rv-gig a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:2px}
.fm-rv-proscons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.fm-rv-pc{padding:20px 22px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg)}
.fm-rv-pc h3{font-size:17px;margin:0 0 10px;display:flex;align-items:center;gap:8px}
.fm-rv-pc h3::before{content:'+';display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);font:800 14px/1 var(--font-body)}
.fm-rv-pc.minus h3::before{content:'–';background:var(--bg-tint);color:var(--ink-2)}
.fm-rv-pc ul{margin:0;padding-left:18px}
.fm-rv-pc li{margin:4px 0;line-height:1.5}
.fm-rv-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:8px 0 0;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);overflow:hidden}
.fm-rv-facts div{padding:14px 18px;box-shadow:-1px -1px 0 var(--hairline)}
.fm-rv-facts dt{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
.fm-rv-facts dd{margin:0;font:600 15px var(--font-body);color:var(--ink)}
.fm-rv-btn{display:inline-flex;align-items:center;gap:6px;padding:13px 22px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font:700 15px var(--font-body);text-decoration:none}
.fm-rv-btn:hover{background:#E8961A}
@media (max-width:767px){
	.fm-rv-score{flex-direction:column;align-items:stretch;gap:18px;padding:20px}
	.fm-rv-overall{width:auto}
	.fm-rv-ratings{padding:18px 0 0;border-left:0;border-top:1px solid var(--hairline);grid-template-columns:1fr}
	.fm-rv-proscons{grid-template-columns:1fr}
}
@media (max-width:1024px){body .e-con.fm-home-split{flex-direction:column}body .e-con.fm-aside{margin-top:32px;position:static;flex-basis:auto;width:100%}body .fm-feature-title .elementor-heading-title{font-size:36px}}
@media (max-width:767px){body .e-con.fm-feature-cover{flex-basis:auto;width:100%}body .fm-feature-title .elementor-heading-title{font-size:30px}body .fm-app-cta-title .elementor-heading-title{font-size:30px}body .e-con.fm-app-cta{--padding-top:32px;--padding-right:24px;--padding-bottom:32px;--padding-left:24px}body .e-con.fm-home-pills{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}}
