
  :root{
    --blue:#005293;--blue-dark:#003d6b;--pine:#00284a;
    --gold:#fecc00;--gold-soft:#fff3b0;
    --cream:#f4f6fa;--paper:#fbfcfe;--ink:#00284a;--muted:#4a6076;--line:#d6dde6;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--paper);color:var(--ink);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  img{max-width:100%;height:auto;display:block}
  a{color:var(--blue-dark)}
  h1,h2,h3,h4,h5{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:700;line-height:1.15;color:var(--pine);letter-spacing:-.015em}
  .container{max-width:1240px;margin:0 auto;padding:0 1.5rem}
  .kicker{display:inline-block;font-size:.74rem;letter-spacing:.3em;text-transform:uppercase;color:var(--blue);border-top:1px solid var(--blue);border-bottom:1px solid var(--blue);padding:.35rem 0;font-weight:700}
  .kicker.gold{color:var(--gold);border-color:var(--gold)}

  /* ===== HEADER (copied from styleguide) ===== */
  .site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
  .site-header__top{background:var(--pine);color:var(--cream);font-size:.78rem;letter-spacing:.05em}
  .site-header__top .container{display:flex;justify-content:space-between;align-items:center;padding-top:.45rem;padding-bottom:.45rem;gap:1rem;flex-wrap:wrap}
  .site-header__top a{color:var(--cream);text-decoration:none;opacity:.85}
  .site-header__top a:hover{opacity:1;color:var(--gold)}
  .site-header__top .lang{display:flex;gap:.75rem}
  .site-header__main{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.5rem;max-width:1240px;margin:0 auto;gap:2rem}
  .site-header__logo img{height:60px;width:auto;display:block}
  .site-nav ul.main{list-style:none;display:flex;gap:1.75rem;align-items:center}
  .site-nav ul.main>li{position:relative;padding:1.25rem 0}
  .site-nav ul.main>li>a{font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--pine);text-decoration:none}
  .site-nav ul.main>li>a:hover{color:var(--blue)}
  .site-nav ul.main>li>a::after{content:"";position:absolute;left:0;bottom:1rem;height:2px;background:var(--gold);width:0;transition:.3s}
  .site-nav ul.main>li:hover>a::after{width:100%}
  .site-nav .has-sub>a::after{display:none}
  .site-nav .has-sub>a{position:relative}
  .site-nav .submenu{display:none;position:absolute;top:100%;left:-1rem;background:#fff;min-width:260px;border-top:3px solid var(--gold);box-shadow:0 12px 24px -8px rgba(0,40,74,.18);padding:.5rem 0;list-style:none}
  .site-nav .has-sub:hover .submenu{display:block;animation:fadeUp .25s ease}
  .site-nav .submenu li a{display:block;padding:.6rem 1.25rem;color:var(--pine);text-decoration:none;font-size:.9rem;border-left:3px solid transparent}
  .site-nav .submenu li a:hover{background:var(--cream);border-left-color:var(--gold);color:var(--blue)}
  .site-search{display:flex;align-items:center;background:var(--cream);padding:.45rem .85rem;border:1px solid var(--line)}
  .site-search input{border:0;background:transparent;font-family:inherit;font-size:.85rem;outline:none;width:140px;color:var(--pine)}
  .site-search button{background:none;border:0;cursor:pointer;color:var(--blue);font-size:1rem}
  .mobile-toggle{display:none;background:none;border:0;cursor:pointer;font-size:1.6rem;color:var(--pine)}
  @media(max-width:980px){.site-nav ul.main{display:none}.mobile-toggle{display:block}.site-search{display:none}.site-header__logo img{height:46px}}

  /* ===== HERO ===== */
  .hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;background:
    radial-gradient(ellipse at 70% 30%,rgba(254,204,0,.18) 0%,transparent 55%),
    linear-gradient(140deg,#00284a 0%,#005293 55%,#1a6fb5 100%);color:var(--cream);padding:5rem 0 4rem}
  .hero::before{content:"";position:absolute;inset:0;
    background:url('https://www.schweden.net/wp-content/uploads/stockholm-altstadt.jpg') center/cover no-repeat;
    opacity:.32;mix-blend-mode:luminosity;animation:slowZoom 22s ease-in-out infinite alternate}
  @keyframes slowZoom{from{transform:scale(1.05)}to{transform:scale(1.15)}}
  .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,transparent 60%,rgba(0,40,74,.65) 100%);pointer-events:none}
  .hero-inner{position:relative;z-index:2;max-width:1240px;margin:0 auto;padding:0 1.5rem;width:100%;display:grid;grid-template-columns:1.3fr 1fr;gap:4rem;align-items:center}
  .hero-text .kicker{color:var(--gold);border-color:var(--gold)}
  .hero h1{font-size:clamp(2.6rem,6.4vw,5.6rem);color:var(--cream);margin:1.5rem 0 1.5rem;font-weight:700}
  .hero h1 em{color:var(--gold);font-style:italic;font-weight:400;display:inline-block;position:relative}
  .hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.05em;height:.18em;background:rgba(254,204,0,.25);z-index:-1;transform:skew(-8deg)}
  .hero-lead{font-size:1.18rem;color:rgba(244,246,250,.88);max-width:540px;margin-bottom:2rem;line-height:1.6}
  .hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem}
  .btn{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 2rem;background:var(--gold);color:var(--pine);text-decoration:none;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;border:1px solid var(--gold);transition:.25s;cursor:pointer}
  .btn:hover{background:transparent;color:var(--gold);transform:translateY(-2px)}
  .btn.ghost{background:transparent;color:var(--cream);border-color:rgba(244,246,250,.4)}
  .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
  .btn .arr{transition:.25s}
  .btn:hover .arr{transform:translateX(4px)}
  .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;border-top:1px solid rgba(254,204,0,.35);padding-top:1.5rem;max-width:520px}
  .hero-stats .num{font-size:2rem;color:var(--gold);font-weight:700;display:block;line-height:1}
  .hero-stats .lbl{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;opacity:.75;margin-top:.4rem;display:block}

  /* hero side collage */
  .hero-collage{position:relative;height:520px}
  .hero-collage .tile{position:absolute;overflow:hidden;background:#222;box-shadow:0 30px 60px -20px rgba(0,0,0,.55);border:6px solid #fff;transition:.5s}
  .hero-collage .tile img{width:100%;height:100%;object-fit:cover;transition:.8s}
  .hero-collage .tile:hover img{transform:scale(1.08)}
  .hero-collage .t1{top:0;left:0;width:62%;height:62%;transform:rotate(-3deg);z-index:2;animation:floatA 8s ease-in-out infinite}
  .hero-collage .t2{bottom:0;right:0;width:58%;height:55%;transform:rotate(4deg);z-index:3;animation:floatB 9s ease-in-out infinite}
  .hero-collage .t3{top:38%;left:38%;width:38%;height:38%;transform:rotate(-1deg);z-index:1;animation:floatC 10s ease-in-out infinite}
  .hero-collage .badge{position:absolute;top:-20px;right:-20px;width:120px;height:120px;background:var(--gold);color:var(--pine);border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;line-height:1.2;z-index:5;animation:spin 22s linear infinite;box-shadow:0 12px 24px rgba(0,0,0,.3)}
  @keyframes floatA{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-3deg) translateY(-10px)}}
  @keyframes floatB{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(4deg) translateY(-14px)}}
  @keyframes floatC{0%,100%{transform:rotate(-1deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-8px)}}
  @keyframes spin{to{transform:rotate(360deg)}}
  @keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

  /* scroll hint */
  .scroll-hint{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);color:rgba(244,246,250,.7);font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:.5rem;z-index:3}
  .scroll-hint .line{width:1px;height:40px;background:rgba(254,204,0,.6);animation:scrollPulse 2s ease-in-out infinite}
  @keyframes scrollPulse{0%,100%{transform:scaleY(.4);transform-origin:top}50%{transform:scaleY(1)}}

  /* ===== MARQUEE ===== */
  .marquee{background:var(--pine);color:var(--cream);padding:1.1rem 0;overflow:hidden;border-bottom:1px solid rgba(254,204,0,.2)}
  .marquee-track{display:flex;gap:3.5rem;white-space:nowrap;animation:scroll 38s linear infinite;font-size:.82rem;letter-spacing:.22em;text-transform:uppercase}
  .marquee-track span{display:flex;align-items:center;gap:3.5rem}
  .marquee-track .dot{color:var(--gold);font-size:1.2rem}
  @keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

  /* ===== SECTIONS ===== */
  section{padding:6rem 0;position:relative}
  .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:3rem;flex-wrap:wrap}
  .section-head h2{font-size:clamp(2rem,4vw,3.2rem)}
  .section-head h2 em{color:var(--blue);font-style:italic;font-weight:400}
  .section-head .more{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--blue);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:.3rem}
  .section-head .more:hover{color:var(--pine)}

  /* ===== FEATURED MAGAZINE GRID ===== */
  .featured{background:var(--paper)}
  .mag-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:1.25rem;height:620px}
  .mag-card{position:relative;overflow:hidden;color:#fff;text-decoration:none;display:flex;align-items:flex-end;padding:1.75rem;background:#222;transition:.4s}
  .mag-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transition:.8s}
  .mag-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,40,74,.92) 100%);z-index:1}
  .mag-card>*{position:relative;z-index:2}
  .mag-card:hover img{transform:scale(1.08)}
  .mag-card .meta{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;font-weight:700}
  .mag-card h3{color:#fff;font-size:1.35rem;line-height:1.25}
  .mag-card.big{grid-row:span 2}
  .mag-card.big h3{font-size:2.2rem;max-width:90%}
  .mag-card.big .meta{font-size:.78rem}
  .mag-card .read{display:inline-flex;align-items:center;gap:.4rem;margin-top:.8rem;font-size:.8rem;font-weight:700;letter-spacing:.05em;color:var(--gold);text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.35s}
  .mag-card:hover .read{opacity:1;transform:translateY(0)}

  /* ===== REISEZEIT / SEASONS ===== */
  .seasons{background:linear-gradient(180deg,var(--paper) 0%,var(--cream) 100%)}
  .seasons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
  .season-card{position:relative;background:#fff;border:1px solid var(--line);padding:2.25rem 1.75rem 2rem;display:flex;flex-direction:column;gap:1rem;transition:.35s;overflow:hidden}
  .season-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--accent,var(--gold))}
  .season-card::after{content:"";position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:var(--accent,var(--gold));opacity:.08;transition:.5s}
  .season-card:hover{transform:translateY(-8px);box-shadow:0 30px 50px -25px rgba(0,40,74,.25);border-color:var(--accent,var(--gold))}
  .season-card:hover::after{transform:scale(1.6);opacity:.14}
  .season-card .ico{font-size:2.2rem;line-height:1;position:relative;z-index:1}
  .season-card h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:1.6rem;color:var(--pine);margin:0;line-height:1.1}
  .season-card .months{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent,var(--gold));font-weight:700}
  .season-card .label{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:.4rem}
  .season-card ul{list-style:none;padding:0;margin:.3rem 0 0;display:flex;flex-direction:column;gap:.35rem}
  .season-card ul li{font-size:.92rem;color:var(--pine);padding-left:1rem;position:relative}
  .season-card ul li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;background:var(--accent,var(--gold));border-radius:50%}
  .season-card .chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.3rem}
  .season-card .chips span{font-size:.7rem;padding:.28rem .6rem;background:var(--cream);border:1px solid var(--line);color:var(--pine);border-radius:99px}
  .season-card.spring{--accent:#7fb069}
  .season-card.summer{--accent:#fecc00}
  .season-card.autumn{--accent:#c23b22}
  .season-card.winter{--accent:#005293}

  /* ===== SCHWEDENKUNDE (10 Fakten) ===== */
  .kunde{background:linear-gradient(180deg,var(--cream) 0%,#fff 100%)}
  .kunde-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
  .kunde-tile{position:relative;padding:1.75rem 1.25rem 1.5rem;background:#fff;border:1px solid var(--line);transition:.3s;text-align:left;overflow:hidden}
  .kunde-tile:hover{transform:translateY(-4px);box-shadow:0 18px 36px -18px rgba(0,40,74,.22);border-color:var(--gold)}
  .kunde-tile .no{position:absolute;top:.6rem;right:.9rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:2.6rem;font-weight:700;color:var(--gold);opacity:.18;line-height:1}
  .kunde-tile .ico{font-size:1.6rem;display:block;margin-bottom:.6rem}
  .kunde-tile h4{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:1rem;color:var(--pine);margin:0 0 .35rem;line-height:1.25}
  .kunde-tile p{font-size:.84rem;color:var(--muted);line-height:1.5;margin:0}

  /* ===== ANREISE ===== */
  .anreise{background:var(--pine);color:var(--cream);position:relative;overflow:hidden}
  .anreise::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(254,204,0,.1) 0%,transparent 50%),radial-gradient(circle at 10% 80%,rgba(0,82,147,.4) 0%,transparent 60%);pointer-events:none}
  .anreise .section-head h2{color:#fff}
  .anreise .section-head h2 em{color:var(--gold)}
  .anreise .section-head p{color:rgba(244,246,250,.7);max-width:420px}
  .anreise .section-head .more{color:var(--gold);border-color:var(--gold)}
  .anreise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;position:relative;z-index:1}
  .route-card{padding:2rem 1.75rem;background:rgba(255,255,255,.04);border:1px solid rgba(254,204,0,.2);text-decoration:none;color:var(--cream);transition:.3s;display:flex;flex-direction:column;gap:.75rem;backdrop-filter:blur(6px)}
  .route-card:hover{background:rgba(254,204,0,.08);border-color:var(--gold);transform:translateY(-6px)}
  .route-card .duration{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:700}
  .route-card h3{color:#fff;font-size:1.15rem;line-height:1.3}
  .route-card .price{font-size:1.8rem;font-weight:700;color:var(--gold);margin-top:auto;line-height:1}
  .route-card .price small{display:block;font-size:.7rem;color:rgba(244,246,250,.6);font-weight:400;text-transform:uppercase;letter-spacing:.1em;margin-top:.3rem}
  .route-card .arr{margin-top:.5rem;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}

  /* ===== INSPIRATION SPLIT ===== */
  .inspire{background:var(--paper)}
  .inspire-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
  .inspire-img{position:relative;min-height:600px;overflow:hidden}
  .inspire-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:1.2s}
  .inspire-img:hover img{transform:scale(1.05)}
  .inspire-img .frame{position:absolute;inset:1.5rem;border:1px solid rgba(255,255,255,.4);pointer-events:none}
  .inspire-img .tag{position:absolute;top:2rem;left:2rem;background:var(--gold);color:var(--pine);padding:.5rem .9rem;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
  .inspire-text{background:#fff;padding:5rem 4rem;display:flex;flex-direction:column;justify-content:center;border:1px solid var(--line);border-left:0}
  .inspire-text h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:1.25rem}
  .inspire-text h2 em{color:var(--blue);font-style:italic;font-weight:400}
  .inspire-text p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem}
  .inspire-text blockquote{border-left:3px solid var(--gold);padding-left:1.2rem;font-style:italic;color:var(--pine);font-size:1.1rem;margin:1.5rem 0}
  .inspire-text .btn{background:var(--pine);color:var(--cream);border-color:var(--pine);align-self:flex-start;margin-top:1rem}
  .inspire-text .btn:hover{background:transparent;color:var(--pine)}

  /* ===== STECKBRIEF / FACTS ===== */
  .facts{background:linear-gradient(180deg,var(--cream) 0%,#fff 100%)}
  .facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
  .fact-tile{padding:2rem;background:#fff;border-top:4px solid var(--gold);text-align:center;transition:.3s;border-bottom:1px solid var(--line);border-left:1px solid var(--line);border-right:1px solid var(--line)}
  .fact-tile:hover{transform:translateY(-6px);box-shadow:0 20px 40px -20px rgba(0,40,74,.2)}
  .fact-tile .ico{font-size:2.4rem;margin-bottom:.75rem;display:block}
  .fact-tile .v{font-size:1.6rem;font-weight:700;color:var(--pine);display:block;margin-bottom:.3rem}
  .fact-tile .l{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

  /* ===== CATEGORY CARDS ===== */
  .cats{background:#fff}
  .cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
  .cat-card{position:relative;overflow:hidden;aspect-ratio:1;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;background:#222;transition:.4s}
  .cat-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.7;transition:1s}
  .cat-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,40,74,.3) 0%,rgba(0,40,74,.92) 100%);z-index:1}
  .cat-card>*{position:relative;z-index:2}
  .cat-card:hover{transform:translateY(-6px)}
  .cat-card:hover img{transform:scale(1.1);opacity:.85}
  .cat-card .num{font-size:.78rem;letter-spacing:.3em;color:var(--gold);font-weight:700}
  .cat-card h3{color:#fff;font-size:1.8rem;line-height:1.2}
  .cat-card p{font-size:.9rem;color:rgba(244,246,250,.75);margin-top:.5rem}
  .cat-card .go{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-top:1rem;font-weight:700;display:flex;align-items:center;gap:.5rem}

  /* ===== NEWSLETTER ===== */
  .nl{background:
    linear-gradient(135deg,rgba(0,40,74,.92),rgba(0,82,147,.92)),
    url('https://www.schweden.net/wp-content/uploads/stockholm-altstadt.jpg') center/cover;
    color:var(--cream);text-align:center}
  .nl h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1rem}
  .nl h2 em{color:var(--gold);font-style:italic;font-weight:400}
  .nl p{max-width:540px;margin:0 auto 2.5rem;color:rgba(244,246,250,.85)}
  .nl form{display:flex;max-width:540px;margin:0 auto;gap:0;border:2px solid rgba(254,204,0,.5);background:rgba(0,40,74,.5);backdrop-filter:blur(6px)}
  .nl input{flex:1;border:0;background:transparent;padding:1.1rem 1.5rem;font-family:inherit;font-size:1rem;color:#fff;outline:none}
  .nl input::placeholder{color:rgba(244,246,250,.55)}
  .nl button{border:0;background:var(--gold);color:var(--pine);padding:1.1rem 2rem;font-family:inherit;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;cursor:pointer;transition:.25s}
  .nl button:hover{background:#fff}
  .nl small{display:block;margin-top:1rem;color:rgba(244,246,250,.55);font-size:.78rem}

  /* ===== INSTAGRAM / GALERIE ===== */
  .gallery{background:#fff;padding:6rem 0 4rem}
  .gallery .gal-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem;margin-top:2rem}
  .gallery .gal-grid a{aspect-ratio:1;overflow:hidden;background:#222;position:relative}
  .gallery .gal-grid a img{width:100%;height:100%;object-fit:cover;transition:.6s}
  .gallery .gal-grid a::after{content:"↗";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,40,74,.7);color:var(--gold);font-size:2rem;opacity:0;transition:.3s}
  .gallery .gal-grid a:hover::after{opacity:1}
  .gallery .gal-grid a:hover img{transform:scale(1.1)}

  /* ===== FOOTER ===== */
  .site-footer{background:var(--pine);color:rgba(244,246,250,.8);padding:5rem 0 0}
  .site-footer .foot-brand img{height:54px;background:#fff;padding:.4rem .6rem;margin-bottom:1rem}
  .site-footer p{font-size:.9rem;color:rgba(244,246,250,.7);line-height:1.6}
  .site-footer .foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}
  .site-footer h5{color:var(--gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;margin-bottom:1.25rem}
  .site-footer ul{list-style:none}
  .site-footer ul li{padding:.3rem 0}
  .site-footer ul li a{color:rgba(244,246,250,.75);text-decoration:none;font-size:.9rem;transition:.2s}
  .site-footer ul li a:hover{color:var(--gold);padding-left:4px}
  .site-footer .socials{display:flex;gap:.6rem;margin-top:1rem}
  .site-footer .socials a{width:36px;height:36px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:var(--cream);font-size:.9rem;text-decoration:none;transition:.2s}
  .site-footer .socials a:hover{background:var(--gold);color:var(--pine);border-color:var(--gold)}
  .site-footer .foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.5rem 0;font-size:.78rem;color:rgba(244,246,250,.55)}
  .site-footer .foot-bottom a{color:rgba(244,246,250,.7);text-decoration:none;margin-left:1.25rem}
  .site-footer .foot-bottom a:hover{color:var(--gold)}
  .site-footer .lang-row{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:1rem}
  .site-footer .lang-row a{display:inline-block;padding:.3rem .65rem;border:1px solid rgba(255,255,255,.2);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream);text-decoration:none}
  .site-footer .lang-row a:hover{border-color:var(--gold);color:var(--gold)}

  /* reveal animation */
  .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease}
  .reveal.in{opacity:1;transform:none}

  /* responsive */
  @media(max-width:980px){
    section{padding:4rem 0}
    .hero{min-height:auto}
    .hero-inner{grid-template-columns:1fr;gap:3rem}
    .hero-collage{height:380px;max-width:440px}
    .mag-grid{grid-template-columns:1fr;height:auto;grid-template-rows:none}
    .mag-card{aspect-ratio:16/10}
    .mag-card.big{aspect-ratio:16/12}
    .seasons-grid{grid-template-columns:1fr 1fr}
    .kunde-grid{grid-template-columns:repeat(2,1fr)}
    .anreise-grid{grid-template-columns:1fr 1fr}
    .inspire-grid{grid-template-columns:1fr}
    .inspire-text{padding:3rem 1.75rem;border-left:1px solid var(--line)}
    .facts-grid{grid-template-columns:1fr 1fr}
    .cat-grid{grid-template-columns:1fr}
    .gallery .gal-grid{grid-template-columns:repeat(3,1fr)}
    .site-footer .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:560px){
    .anreise-grid{grid-template-columns:1fr}
    .region-list{grid-template-columns:1fr}
    .kunde-grid{grid-template-columns:1fr 1fr}
    .seasons-grid{grid-template-columns:1fr}
    .nl form{flex-direction:column}
  }

/* v1.8: WordPress-Menü box2-menu + 4er Instagram-Galerie */
.site-nav ul.main > li.menu-item-has-children > a::after{display:none}
.site-nav ul.main > li.menu-item-has-children > a{position:relative}
.site-nav .sub-menu{display:none;position:absolute;top:100%;left:-1rem;background:#fff;min-width:260px;border-top:3px solid var(--gold);box-shadow:0 12px 24px -8px rgba(0,40,74,.18);padding:.5rem 0;list-style:none;z-index:80}
.site-nav li.menu-item-has-children:hover > .sub-menu{display:block;animation:fadeUp .25s ease}
.site-nav .sub-menu li a{display:block;padding:.6rem 1.25rem;color:var(--pine);text-decoration:none;font-size:.9rem;border-left:3px solid transparent}
.site-nav .sub-menu li a:hover{background:var(--cream);border-left-color:var(--gold);color:var(--blue)}
.gallery .gal-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.gallery .gal-grid{grid-template-columns:repeat(2,1fr)}}

/* v1.9 WordPress menu compatibility */
.site-nav .sub-menu{display:none;position:absolute;top:100%;left:-1rem;background:#fff;min-width:260px;border-top:3px solid var(--gold);box-shadow:0 12px 24px -8px rgba(0,40,74,.18);padding:.5rem 0;list-style:none;margin:0}
.site-nav li:hover>.sub-menu{display:block;animation:fadeUp .25s ease}
.site-nav .sub-menu li a{display:block;padding:.6rem 1.25rem;color:var(--pine);text-decoration:none;font-size:.9rem;border-left:3px solid transparent}
.site-nav .sub-menu li a:hover{background:var(--cream);border-left-color:var(--gold);color:var(--blue)}

.swnet-flagline{display:inline-flex;align-items:center;gap:.5rem}
.swnet-flag{width:22px;height:auto;display:inline-block;box-shadow:0 0 0 1px rgba(255,255,255,.25)}


/* schweden2026 v2.3 mobile navigation */
.mobile-toggle{display:none;background:none;border:0;cursor:pointer;font-size:1.8rem;line-height:1;color:var(--pine);padding:.35rem .5rem;z-index:80}
@media(max-width:980px){
  .site-header__main{position:relative;flex-wrap:wrap;gap:1rem}
  .mobile-toggle{display:block!important;margin-left:auto}
  .site-header .site-search{display:none!important}
  .site-header .site-nav{display:none!important;order:10;flex:0 0 100%;width:100%;background:#fff;border-top:1px solid var(--line);padding:.5rem 0 1rem}
  .site-header.nav-open .site-nav{display:block!important}
  .site-header .site-nav ul.main{display:block!important;gap:0!important;width:100%;margin:0!important;padding:0!important;list-style:none!important}
  .site-header .site-nav ul.main>li{display:block!important;padding:0!important;border-bottom:1px solid var(--line)}
  .site-header .site-nav ul.main>li>a{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:.95rem 1rem!important;font-size:.9rem!important;color:var(--pine)!important;text-decoration:none!important}
  .site-header .site-nav ul.main>li>a::after{display:none!important}
  .site-header .site-nav .sub-menu,.site-header .site-nav .submenu{position:static!important;display:none!important;min-width:0!important;box-shadow:none!important;border-top:0!important;background:var(--cream)!important;padding:.25rem 0!important;margin:0!important;list-style:none!important}
  .site-header .site-nav li.sub-open>.sub-menu,.site-header .site-nav li.sub-open>.submenu{display:block!important}
  .site-header .site-nav li:hover>.sub-menu,.site-header .site-nav li:hover>.submenu{display:none!important}
  .site-header .site-nav li.sub-open:hover>.sub-menu,.site-header .site-nav li.sub-open:hover>.submenu{display:block!important}
  .site-header .site-nav .sub-menu li a,.site-header .site-nav .submenu li a{display:block!important;padding:.72rem 1.5rem!important;border-left:0!important;color:var(--pine)!important;text-decoration:none!important}
}

/* ==== Performance / Core Web Vitals ==== */
.site-header{contain:layout paint;}
.site-header__logo{display:inline-flex;align-items:center;flex:0 0 auto;min-width:156px;min-height:48px;}
.site-header__logo img,.foot-brand img{aspect-ratio:260/80;object-fit:contain;}
.hero-collage .tile{contain:layout paint;}
.hero-collage .tile img,.feature-card img,.discover-card img,.mag-card img,.instagram-grid img{width:100%;height:100%;object-fit:cover;}
.feature-card,.discover-card,.mag-card{contain:layout paint;}
section:not(.hero),.site-footer{content-visibility:auto;contain-intrinsic-size:1px 760px;}
@media(max-width:980px){.site-header__logo{min-width:120px;min-height:46px}}
