/*
Theme Name: Göteborgportalen
Theme URI: https://goteborgportalen.se/
Author: Göteborgportalen
Description: Svensk stadsportal för Göteborg med redaktionella guider, evenemangskalender, butikskatalog och väder.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: goteborgportalen
*/
:root{--ink:#132a31;--muted:#64747a;--paper:#f7f5f0;--white:#fff;--gold:#ad7935;--gold-dark:#815821;--line:#e5e0d6;--navy:#102d3a;--shadow:0 16px 44px rgba(19,42,49,.09);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}a:hover{color:var(--gold-dark)}img{max-width:100%;height:auto}button,input,select{font:inherit}.wrap{width:min(1200px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:12px;top:12px;z-index:1000;background:#fff;padding:10px}.topline{background:var(--navy);color:#dfe7e8;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.topline .wrap{display:flex;justify-content:space-between;padding:8px 0}.masthead{background:#fff;border-bottom:1px solid var(--line);text-align:center;padding:24px 20px 18px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink)}.brand-mark{width:52px;height:47px}.brand-name{font:700 clamp(27px,4vw,40px)/.98 var(--serif);letter-spacing:.025em;text-transform:uppercase}.brand-tag{display:block;font:10px/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:7px}.nav-shell{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.primary-nav{display:flex;justify-content:center;gap:0}.primary-nav>li{list-style:none;position:relative}.primary-nav>li>a{display:block;padding:15px 17px;font-size:13px;font-weight:700;letter-spacing:.04em}.primary-nav>li:hover>a,.primary-nav>li:focus-within>a{color:var(--gold-dark)}.primary-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:235px;padding:8px 0;margin:0;background:#fff;box-shadow:var(--shadow);border-top:2px solid var(--gold);list-style:none}.primary-nav li:hover>.sub-menu,.primary-nav li:focus-within>.sub-menu{display:block}.primary-nav .sub-menu a{display:block;padding:9px 16px;font-size:13px}.nav-inner{display:flex;justify-content:center}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.8fr 1fr;gap:6px;margin:18px auto 30px;min-height:440px}.hero-main,.hero-side article{position:relative;overflow:hidden;background:var(--navy);color:white;min-height:215px}.hero-main{min-height:440px}.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:6px}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-main:after,.hero-side article:after,.card-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,38,.82),rgba(7,29,38,.06) 85%)}.hero-side article:after{background:linear-gradient(0deg,rgba(7,29,38,.8),rgba(7,29,38,.05))}.hero-copy{position:absolute;z-index:1;left:clamp(22px,5vw,62px);bottom:44px;max-width:550px}.hero-copy h1{font:500 clamp(38px,5vw,66px)/1.02 var(--serif);margin:10px 0 13px;max-width:520px}.hero-copy p{max-width:440px;color:#eef1ec;margin:0 0 19px}.hero-side .hero-copy{left:25px;bottom:21px;right:18px}.hero-side h2{font:500 clamp(22px,2.6vw,31px)/1.1 var(--serif);margin:8px 0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--gold)}.btn{display:inline-flex;align-items:center;gap:9px;background:var(--gold);color:#fff;padding:11px 17px;font-size:12px;font-weight:700;letter-spacing:.055em;text-transform:uppercase;border:0}.btn:hover{background:var(--gold-dark);color:#fff}.btn-outline{background:transparent;border:1px solid currentColor}.section{padding:25px 0 40px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px;border-bottom:1px solid var(--line);padding-bottom:11px}.section-head h2,.page-title{font:500 clamp(29px,3.5vw,42px)/1.1 var(--serif);margin:0}.section-head p{margin:0;color:var(--muted);font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards.four{grid-template-columns:repeat(4,1fr)}.card{background:#fff;min-width:0;border:1px solid var(--line)}.card-visual{position:relative;display:block;height:205px;background:#173b49;overflow:hidden}.card-visual .hero-art{transition:transform .45s}.card:hover .card-visual .hero-art{transform:scale(1.04)}.card-visual:after{background:linear-gradient(0deg,rgba(6,29,37,.58),transparent 54%)}.card-visual span{position:absolute;z-index:2;bottom:14px;left:17px;color:#fff;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.card-copy{padding:17px 18px 20px}.card-copy h3{font:500 24px/1.13 var(--serif);margin:0 0 9px}.card-copy p{font-size:14px;color:var(--muted);margin:0 0 13px}.text-link{color:var(--gold-dark);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.finder{background:#fff;border:1px solid var(--line);padding:16px 18px;margin:0 0 24px;display:flex;align-items:center;gap:16px}.finder strong{font:500 23px var(--serif);white-space:nowrap}.finder select,.finder input{min-width:0;flex:1;background:var(--paper);border:1px solid var(--line);padding:10px 12px;color:var(--ink)}.finder .btn{cursor:pointer}.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:35px}.weather,.calendar-box,.info-box{background:#fff;border:1px solid var(--line);padding:23px}.weather-head{display:flex;justify-content:space-between;align-items:center}.weather h2,.calendar-box h2,.info-box h2{font:500 27px var(--serif);margin:0}.weather-days{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:17px}.weather-day{padding:13px 8px;text-align:center;background:var(--paper);font-size:12px}.weather-day b{display:block;font-size:19px;margin:4px}.weather-status{color:var(--muted);font-size:13px}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.cal-head button{border:0;background:var(--paper);padding:7px 11px;cursor:pointer}.cal-month{font:500 21px var(--serif)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-grid span,.cal-grid button{padding:6px 2px;font-size:12px}.cal-grid .weekday{color:var(--muted);font-size:10px;text-transform:uppercase}.cal-grid button{border:0;background:transparent;color:var(--ink);cursor:pointer;border-radius:50%}.cal-grid button.has-event{background:#f0e4d0;color:#57390f;font-weight:bold}.cal-grid button.selected{background:var(--gold);color:#fff}.cal-events{border-top:1px solid var(--line);margin-top:13px;padding-top:10px;font-size:13px}.event-row{padding:7px 0;border-bottom:1px solid var(--line)}.event-row time{display:inline-block;min-width:94px;color:var(--gold-dark);font-weight:700;font-size:11px}.banner-cta{background:var(--navy);color:#fff;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:20px}.banner-cta h2{font:500 29px var(--serif);margin:0}.banner-cta p{color:#d5dddf;margin:5px 0 0}.content-wrap{padding:45px 0 70px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:15px}.single-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px}.entry h1{font:500 clamp(36px,5vw,56px)/1.04 var(--serif);margin:7px 0 18px}.entry .lead{font:19px/1.55 var(--serif);color:#45565b;max-width:760px}.entry-content h2,.entry-content h3{font-family:var(--serif);font-weight:500;line-height:1.2;margin-top:1.6em}.entry-content h2{font-size:30px}.entry-content p,.entry-content li{color:#33484f}.meta-table{width:100%;border-collapse:collapse;margin:25px 0;background:#fff;font-size:14px}.meta-table th,.meta-table td{text-align:left;padding:12px 14px;border:1px solid var(--line);vertical-align:top}.meta-table th{width:31%;background:#f0eee8}.sidebox{background:#fff;border:1px solid var(--line);padding:20px;margin-bottom:18px}.sidebox h2{font:500 23px var(--serif);margin:0 0 12px}.map-frame{width:100%;height:220px;border:0}.related-list{padding:0;list-style:none}.related-list li{padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.archive-intro{max-width:800px;color:var(--muted);margin:14px 0 27px}.archive-title{padding:33px 0 5px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.archive-grid .card-visual{height:185px}.no-results{background:#fff;padding:25px}.site-footer{background:#0c2631;color:#e3e9e7;padding:46px 0 20px;margin-top:45px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:25px}.site-footer h2,.site-footer h3{font:500 19px var(--serif);color:#fff}.site-footer p,.site-footer li{font-size:13px;color:#c4d0d1}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:6px 0}.copyright{border-top:1px solid rgba(255,255,255,.15);padding-top:15px;margin-top:28px;color:#adc0c3;font-size:11px}.notice{background:#fff7e8;border-left:3px solid var(--gold);padding:12px 15px;font-size:13px;color:#624b2b}.searchform{display:flex;gap:7px}.searchform input{padding:10px;border:1px solid var(--line);min-width:0}.searchform button{background:var(--navy);color:white;border:0;padding:0 14px}.pagination{display:flex;gap:8px;margin:26px 0}.pagination a,.pagination span{padding:7px 11px;border:1px solid var(--line);background:#fff}.pagination .current{background:var(--navy);color:#fff}@media(max-width:900px){.primary-nav>li>a{padding:14px 9px;font-size:11px}.cards.four{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.wrap{width:min(100% - 26px,1200px)}.topline .wrap{font-size:10px}.masthead{padding:16px}.brand-mark{width:40px}.hero{grid-template-columns:1fr;margin-top:12px}.hero-main{min-height:390px}.hero-side{grid-template-columns:1fr 1fr;grid-template-rows:170px}.hero-side h2{font-size:21px}.hero-copy{left:24px;bottom:28px}.nav-shell{position:relative}.menu-toggle{display:block;background:#fff;border:0;padding:12px 15px;font-weight:bold;margin:auto}.primary-nav{display:none;flex-direction:column;align-items:stretch}.primary-nav.is-open{display:flex}.primary-nav>li>a{padding:11px 18px;border-top:1px solid var(--line);font-size:13px}.primary-nav .sub-menu{display:block;position:static;box-shadow:none;border:0;padding:0 0 7px 16px}.nav-inner{display:block}.cards,.cards.four,.archive-grid{grid-template-columns:1fr}.card-visual{height:225px}.finder{flex-wrap:wrap}.finder strong{width:100%}.finder select,.finder input{flex-basis:40%}.two-col,.single-grid{grid-template-columns:1fr}.weather-days{grid-template-columns:repeat(5,1fr);gap:4px}.weather-day{font-size:10px;padding:10px 2px}.weather-day b{font-size:16px}.entry h1{font-size:38px}.footer-grid{grid-template-columns:1fr 1fr}.banner-cta{display:block}.banner-cta .btn{margin-top:15px}}
.entry-art{margin:0 0 24px;height:330px;overflow:hidden;background:#173a48}.entry-art img{width:100%;height:100%;object-fit:cover}

.catalog-note{padding:13px 16px;background:#fff;border-left:3px solid var(--gold);color:var(--muted);font-size:14px;margin:18px 0 24px}
