.landing-page{
  --bn-ink:#17231c;
  --bn-forest:#1f392d;
  --bn-forest-light:#315743;
  --bn-amber:#f2a93b;
  --bn-amber-light:#ffd88a;
  --bn-cream:#fff8e9;
  --bn-line:rgba(255,255,255,.1);
  --bn-card:var(--surface);
  --bn-card-soft:var(--surface-2);
  --bn-copy:var(--muted);
  padding-bottom:3.5rem;
  display:flex;
  flex-direction:column;
}

/* Prioritera deltagarvägarna innan den mer förklarande stegsektionen. */
.bn-hero{order:1}
.bn-results{order:2}
.bn-paths{order:3}
.bn-how{order:4}
.bn-organizer{order:5}

.landing-page h1,
.landing-page h2,
.landing-page h3{letter-spacing:-.035em}

.bn-kicker{display:inline-flex;align-items:center;gap:.55rem;color:#f3bd63;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.bn-kicker>span{display:inline-block;width:1.75rem;height:1px;background:currentColor}
.bn-section-heading{max-width:720px;margin-bottom:2rem}
.bn-section-heading--center{margin-inline:auto;text-align:center}
.bn-section-heading h2{margin:.65rem 0 .6rem;font-size:clamp(2rem,4vw,3.3rem);font-weight:800;line-height:1.04}
.bn-section-heading p{max-width:640px;margin:0;color:var(--bn-copy);font-size:1rem;line-height:1.65}
.bn-section-heading--center p{margin-inline:auto}

.bn-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:clamp(2rem,5vw,5rem);align-items:center;min-height:620px;padding:clamp(2rem,5vw,5rem);overflow:hidden;border:1px solid var(--bn-line);border-radius:32px;background:
  radial-gradient(circle at 10% 0%,rgba(87,139,104,.27),transparent 34%),
  linear-gradient(130deg,#13231b 0%,#1b3025 48%,#0f1b16 100%);
box-shadow:0 28px 80px rgba(5,14,9,.3);color:#fffdf6}
.bn-hero::before{position:absolute;z-index:-1;right:-8%;bottom:-35%;width:480px;height:480px;border:1px solid rgba(242,169,59,.15);border-radius:50%;box-shadow:0 0 0 55px rgba(242,169,59,.035),0 0 0 110px rgba(242,169,59,.025);content:""}
.bn-hero__glow{position:absolute;z-index:-1;top:-180px;left:-110px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(242,169,59,.16),transparent 68%);pointer-events:none}
.bn-hero__copy{position:relative;z-index:2}
.bn-hero h1{max-width:700px;margin:.85rem 0 1.25rem;font-size:clamp(3rem,6.5vw,5.4rem);font-weight:850;line-height:.96;letter-spacing:-.065em}
.bn-hero h1 em{display:block;color:var(--bn-amber-light);font-family:Georgia,"Times New Roman",serif;font-weight:500}
.bn-hero__copy>p{max-width:650px;margin:0 0 1.7rem;color:#ccd8d0;font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.65}

.bn-search{max-width:700px;padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.075);box-shadow:0 18px 50px rgba(0,0,0,.18);backdrop-filter:blur(10px)}
.bn-search label{display:block;margin:0 0 .55rem .15rem;color:#e9eee9;font-size:.8rem;font-weight:750}
.bn-search__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;overflow:hidden;border-radius:12px;background:#fff;color:#1b2b21}
.bn-search__icon{display:grid;width:3rem;height:3.65rem;place-items:center;color:#587062;font-size:1.05rem}
.bn-search input{width:100%;height:3.65rem;border:0;outline:0;background:transparent;color:#17231c;font-size:1rem}
.bn-search input::placeholder{color:#718078;opacity:1}
.bn-search input:focus{box-shadow:none}
.bn-search__row:focus-within{box-shadow:0 0 0 3px rgba(255,210,119,.55)}
.bn-search button{height:3.65rem;margin:.3rem;padding:0 1.15rem;border:0;border-radius:9px;background:var(--bn-amber);color:#17231c;font-weight:800;white-space:nowrap;transition:background .18s ease,transform .18s ease}
.bn-search button:hover{background:#ffc25e;transform:translateY(-1px)}
.bn-search button i{margin-left:.35rem}

.bn-hero__links{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;margin-top:1rem}
.bn-hero__links a{color:#d7e1da;font-size:.86rem;text-decoration:none}
.bn-hero__links a:hover{color:#fff}
.bn-hero__links i{margin-right:.25rem;color:var(--bn-amber)}
.bn-language-selector{display:inline-flex;align-items:center;gap:.45rem;color:#d7e1da;font-size:.86rem}
.bn-language-selector label{display:inline-flex;align-items:center;gap:.25rem;cursor:pointer}
.bn-language-selector select{border:1px solid rgba(215,225,218,.38);border-radius:.4rem;padding:.2rem 1.7rem .2rem .45rem;background:rgba(10,24,19,.55);color:#fff;font:inherit}
.bn-language-selector select:focus{border-color:var(--bn-amber);outline:2px solid rgba(242,184,75,.28);outline-offset:1px}

.bn-hero__visual{position:relative;align-self:stretch;min-height:460px}
.bn-hero__image-wrap{position:absolute;inset:2.5rem -8rem 1.2rem 0;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:#0d1b29;box-shadow:0 28px 60px rgba(0,0,0,.38);transform:rotate(1.5deg)}
.bn-hero__image-wrap::after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,27,22,.05),rgba(15,27,22,.1));content:""}
.bn-hero__image-wrap img{width:100%;height:100%;object-fit:cover}
.bn-hero__stamp{position:absolute;right:-1rem;bottom:0;display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem .7rem .7rem;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(17,31,24,.94);box-shadow:0 18px 40px rgba(0,0,0,.3);backdrop-filter:blur(12px);transform:rotate(-1.5deg)}
.bn-hero__stamp img{width:48px;height:48px}
.bn-hero__stamp span{display:flex;flex-direction:column}
.bn-hero__stamp strong{font-size:.9rem}
.bn-hero__stamp small{color:#aab9af;font-size:.73rem}
.bn-hero__signal{position:absolute;top:0;left:-1.5rem;padding:.65rem .85rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.08);color:#dbe4dd;font-size:.72rem;font-weight:700;backdrop-filter:blur(10px)}
.bn-hero__signal i{margin-right:.35rem;color:#6bd39e}

.bn-results{padding:clamp(4rem,8vw,7rem) 0 2rem;scroll-margin-top:1rem}
.bn-results__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.bn-event-card{display:flex;min-height:100%;flex-direction:column;gap:1.2rem;padding:1.45rem;border:1px solid var(--border-subtle);border-radius:22px;background:linear-gradient(145deg,var(--bn-card),var(--bn-card-soft));box-shadow:0 14px 38px rgba(2,8,18,.12)}
.bn-event-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.bn-event-card__date{display:grid;width:54px;height:58px;place-items:center;border-radius:14px;background:var(--bn-forest);color:#fff;line-height:1}
.bn-event-card__date strong{padding-top:.45rem;color:var(--bn-amber-light);font-size:1.4rem}
.bn-event-card__date span{padding-bottom:.45rem;font-size:.68rem;font-weight:750;text-transform:uppercase}
.bn-event-card__status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}
.bn-event-card__status span{padding:.35rem .55rem;border:1px solid rgba(65,153,104,.28);border-radius:999px;background:rgba(65,153,104,.11);color:#57bd82;font-size:.72rem;font-weight:700}
.bn-event-card__status span.is-closed{border-color:var(--border-subtle);background:rgba(148,163,184,.08);color:var(--bn-copy)}
.bn-event-card h3{margin:0 0 .65rem;font-size:1.5rem;font-weight:800}
.bn-event-card__meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.7rem;color:var(--bn-copy);font-size:.82rem}
.bn-event-card__meta span{display:inline-flex;align-items:center;gap:.3rem}
.bn-event-card__meta i{color:#d9952f}
.bn-event-card p{margin:0;color:var(--bn-copy);font-size:.92rem;line-height:1.6}
.bn-event-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:auto}
.bn-event-card__actions .btn{border-radius:10px;font-weight:700}
.bn-text-link{padding:.45rem;color:var(--primary);font-size:.84rem;font-weight:700;text-decoration:none}
.bn-text-link:hover{text-decoration:underline}
.bn-empty{display:flex;max-width:760px;align-items:center;gap:1rem;padding:1.4rem;border:1px dashed var(--border-subtle);border-radius:18px;background:var(--bn-card)}
.bn-empty>span{display:grid;flex:0 0 52px;width:52px;height:52px;place-items:center;border-radius:15px;background:rgba(242,169,59,.12);color:#eaa231;font-size:1.35rem}
.bn-empty strong{font-size:1rem}
.bn-empty p{margin:.2rem 0 0;color:var(--bn-copy);font-size:.88rem}
.bn-clear-search{display:inline-flex;align-items:center;gap:.3rem;margin-top:1rem;color:var(--bn-copy);font-size:.86rem}

.bn-how{padding:clamp(4rem,8vw,7rem) 0}
.bn-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.bn-steps li{position:relative;padding:1.5rem;border:1px solid var(--border-subtle);border-radius:20px;background:rgba(255,255,255,.025)}
.theme-light .bn-steps li{background:rgba(255,255,255,.68)}
.bn-step__number{position:absolute;top:1.15rem;right:1.25rem;color:var(--bn-copy);font-size:.68rem;font-weight:800;letter-spacing:.12em}
.bn-steps li>i{display:grid;width:46px;height:46px;margin-bottom:1.1rem;place-items:center;border-radius:14px;background:rgba(242,169,59,.13);color:#e9a436;font-size:1.15rem}
.bn-steps h3{margin:0 0 .45rem;font-size:1.15rem;font-weight:800}
.bn-steps p{margin:0;color:var(--bn-copy);font-size:.88rem;line-height:1.6}

.bn-paths{padding:1rem 0 clamp(4rem,8vw,7rem)}
.bn-paths__grid{display:grid;gap:1rem}
.bn-paths__grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.bn-paths__grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.bn-path{position:relative;display:flex;min-height:315px;flex-direction:column;padding:1.5rem;overflow:hidden;border:1px solid var(--border-subtle);border-radius:22px;background:linear-gradient(145deg,var(--bn-card),var(--bn-card-soft));box-shadow:0 14px 36px rgba(2,8,18,.1)}
.bn-path::before{position:absolute;top:0;left:0;width:100%;height:3px;content:""}
.bn-path--visitor::before{background:linear-gradient(90deg,#43c58d,transparent)}
.bn-path--brewer::before{background:linear-gradient(90deg,#f2a93b,transparent)}
.bn-path--organizer::before{background:linear-gradient(90deg,#70a5ff,transparent)}
.bn-path__icon{display:grid;width:50px;height:50px;margin-bottom:1rem;place-items:center;border-radius:15px;font-size:1.25rem}
.bn-path--visitor .bn-path__icon{background:rgba(67,197,141,.12);color:#43c58d}
.bn-path--brewer .bn-path__icon{background:rgba(242,169,59,.13);color:#eda233}
.bn-path--organizer .bn-path__icon{background:rgba(112,165,255,.12);color:#70a5ff}
.bn-path__label{color:var(--bn-copy);font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.bn-path h3{margin:.45rem 0 .65rem;font-size:1.45rem;font-weight:800}
.bn-path p{margin:0 0 1.25rem;color:var(--bn-copy);font-size:.91rem;line-height:1.6}
.bn-path a{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;font-size:.9rem;font-weight:750;text-decoration:none}
.bn-path a:hover{gap:.55rem}

.bn-organizer{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(2rem,5vw,4rem);overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:28px;background:
  radial-gradient(circle at 85% 10%,rgba(242,169,59,.13),transparent 30%),
  linear-gradient(130deg,#17291f,#0f1d17);
box-shadow:0 22px 60px rgba(3,12,7,.24);color:#fff}
.bn-organizer h2{margin:.65rem 0 0;font-size:clamp(2rem,4vw,3.2rem);font-weight:820;line-height:1.08}
.bn-organizer__points{display:grid;gap:.7rem}
.bn-organizer__points span{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.045);color:#dbe4dd;font-size:.88rem}
.bn-organizer__points i{color:#62d399;font-size:1.05rem}

.navbar-brand__logo{width:2.25rem;height:2.25rem}
.navbar-brand__word{color:#fff;font-size:1.15rem;letter-spacing:-.02em}

@media (prefers-reduced-motion:no-preference){
  .bn-event-card,.bn-path{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
  .bn-event-card:hover,.bn-path:hover{transform:translateY(-3px);border-color:rgba(242,169,59,.3);box-shadow:0 18px 44px rgba(2,8,18,.16)}
}

@media (max-width:991.98px){
  .bn-hero{grid-template-columns:1fr;min-height:0}
  .bn-hero__visual{min-height:390px}
  .bn-hero__image-wrap{inset:1.5rem 0 0}
  .bn-hero__signal{left:.75rem}
  .bn-hero__stamp{right:1rem}
  .bn-results__grid{grid-template-columns:1fr}
  .bn-paths__grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bn-paths__grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bn-paths__grid--three .bn-path--organizer{grid-column:1/-1;min-height:240px}
}

@media (max-width:767.98px){
  .landing-page{padding-bottom:2rem}
  .bn-hero{padding:1.6rem 1.15rem 2rem;border-radius:22px}
  .bn-hero h1{font-size:clamp(2.75rem,15vw,4rem)}
  .bn-search{padding:.75rem}
  .bn-search__row{grid-template-columns:auto minmax(0,1fr)}
  .bn-search button{grid-column:1/-1;width:calc(100% - .6rem);margin:0 .3rem .3rem}
  .bn-hero__visual{min-height:310px}
  .bn-hero__image-wrap{inset:1rem 0 0}
  .bn-hero__signal{display:none}
  .bn-hero__stamp{right:.6rem;bottom:-.5rem}
  .bn-hero__stamp img{width:42px;height:42px}
  .bn-results,.bn-how{padding:4rem 0}
  .bn-steps,.bn-paths__grid--three,.bn-paths__grid--two,.bn-organizer{grid-template-columns:1fr}
  .bn-paths__grid--three .bn-path--organizer{grid-column:auto}
  .bn-path{min-height:270px}
  .bn-organizer{padding:1.6rem;border-radius:22px}
}

@media (max-width:430px){
  .bn-hero__visual{min-height:275px}
  .bn-hero__image-wrap{border-radius:18px}
  .bn-hero__stamp{left:.5rem;right:auto}
  .bn-event-card__top{align-items:center}
  .bn-event-card__status{flex-direction:column;align-items:flex-end}
  .bn-event-card__actions .btn{width:100%}
  .bn-empty{align-items:flex-start}
}
