/* Forsiden (Frontpage). Bygger på tokens fra lydbog.css (.lb). */
.lb.lb-fp{max-width:1120px;padding-top:24px}
.lb-fp h1,.lb-fp h2{font-family:Montserrat,sans-serif;text-align:left}

/* Hero med søgning */
.lbf-hero{background:#2b2152;border-radius:24px;padding:48px 44px 40px;color:#fff;position:relative;z-index:2}
.lbf-kicker{margin:0 0 10px;font-size:14px;color:#d4ccf2}
.lb-fp .lbf-hero h1{margin:0 0 22px;font-size:40px;line-height:1.15;font-weight:800;color:#fff;max-width:640px}
.lb-fp .lbf-hero h1 span{color:var(--lb-yellow)}
.lbf-search{position:relative;display:flex;align-items:center;gap:8px;max-width:680px;background:#fff;border-radius:16px;padding:6px 6px 6px 18px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.lbf-search svg{color:var(--lb-purple);flex:none}
.lb .lbf-search input[type=search]{flex:1;min-width:0;border:0!important;box-shadow:none!important;background:transparent!important;height:50px;padding:0 6px!important;font:inherit;font-size:17px;color:var(--lb-text);outline:0;margin:0}
.lb .lbf-search button{height:50px;padding:0 26px;border:0;border-radius:12px;background:var(--lb-orange);color:#1f1b2e;font-family:Montserrat,sans-serif;font-weight:800;font-size:16px;cursor:pointer}
.lbf-search:focus-within{box-shadow:0 0 0 3px var(--lb-yellow),0 10px 30px rgba(0,0,0,.25)}
.lbf-pop{margin:16px 0 0;font-size:14px;color:#d4ccf2}
.lb .lbf-pop a{color:#fff;font-weight:600}
/* Autoforslag */
.lb .lbf-search .lb-sug{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:50;list-style:none;margin:0;padding:6px;background:#fff;border-radius:14px;box-shadow:0 12px 36px rgba(0,0,0,.28);max-height:420px;overflow:auto}
.lb .lbf-search .lb-sug li{margin:0}
.lb .lbf-search .lb-sug a{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--lb-text)}
.lb .lbf-search .lb-sug li.is-active a,.lb .lbf-search .lb-sug a:hover{background:#f1eef8}
.lb .lbf-search .lb-sug img{flex:0 0 40px;width:40px;height:40px;border-radius:6px;object-fit:cover}

/* Sektioner */
.lbf-sec{margin-top:48px}
.lbf-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.lb-fp .lbf-head h2{margin:0;font-size:24px;font-weight:800;color:#1f1b2e}
.lb .lbf-head a{font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}

/* Apps */
.lbf-apps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.lbf-app{background:#fff;border-radius:18px;box-shadow:0 0 0 1px var(--lb-line),0 6px 20px rgba(43,33,82,.06);padding:18px;display:flex;flex-direction:column;gap:10px}
.lb .lbf-app-top{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--lb-text)}
.lbf-app-top img{width:96px;height:48px;object-fit:contain;margin-bottom:6px}
.lbf-app-top b{font-size:19px}
.lbf-rating{font-size:14px;color:#1f1b2e}
.lbf-rating span{color:#e3a008}
.lbf-rating small,.lbf-price{font-size:13px;color:var(--lb-mut)}
.lbf-offer{align-self:flex-start;background:var(--lb-yellow);color:#1f1b2e;font-size:13px;font-weight:700;padding:5px 12px;border-radius:999px}
.lb .lbf-cta{margin-top:auto;display:block;text-align:center;background:var(--lb-orange);color:#1f1b2e;font-family:Montserrat,sans-serif;font-weight:800;font-size:15px;padding:12px;border-radius:12px;text-decoration:none}
.lb .lbf-cta:hover{filter:brightness(.95)}
.lb .lbf-review{text-align:center;font-size:14px;text-decoration:none}

/* Serier */
.lbf-series{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.lb .lbf-s{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:10px;box-shadow:0 0 0 1px var(--lb-line);text-decoration:none;color:var(--lb-text);min-width:0}
.lb .lbf-s:hover{box-shadow:0 0 0 2px var(--lb-purple)}
.lbf-s img{width:64px;height:64px;border-radius:10px;object-fit:cover;flex:none;background:#e7e1f7}
.lbf-s span{display:flex;flex-direction:column;min-width:0}
.lbf-s b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lbf-s small{font-size:13px;color:var(--lb-mut)}

/* Genrer */
.lbf-genres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.lb .lbf-g{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:4/3;text-decoration:none}
.lbf-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.lbf-g:hover img{transform:scale(1.04)}
.lbf-g span{position:absolute;left:0;right:0;bottom:0;padding:28px 16px 14px;background:linear-gradient(transparent,rgba(20,14,48,.85));color:#fff;font-family:Montserrat,sans-serif;font-weight:800;font-size:18px}

/* Podcasts */
.lbf-pods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.lb .lbf-pod{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--lb-text)}
.lbf-pod img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:14px;margin-bottom:6px}
.lbf-pod b{font-size:15px}
.lbf-stars{color:#e3a008;font-size:14px;letter-spacing:1px}
.lbf-stars .off{color:#d9d4e6}
.lbf-pod small{font-size:13px;color:var(--lb-mut);line-height:1.45}

/* Tillid */
.lbf-trust{margin-top:48px;background:#f1eefa;border-radius:18px;padding:20px 24px;font-size:15px;line-height:1.6}
.lbf-trust p{margin:0}
.lb .lbf-trust a{font-weight:600;text-decoration:none}
.lbf-trust .lbf-disc{margin-top:6px;font-size:13px;color:var(--lb-mut)}

@media (max-width:900px){
  .lbf-series,.lbf-genres,.lbf-pods{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .lbf-hero{padding:28px 20px 24px;border-radius:20px}
  .lb-fp .lbf-hero h1{font-size:28px}
  .lbf-search{padding:5px 5px 5px 14px;border-radius:14px}
  .lb .lbf-search input[type=search]{height:46px;font-size:16px}
  .lb .lbf-search button{height:46px;padding:0 16px;font-size:15px}
  .lbf-sec{margin-top:36px}
  .lbf-head{flex-direction:column;gap:4px}
  .lb-fp .lbf-head h2{font-size:21px}
  .lbf-apps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lbf-app{padding:14px;border-radius:16px}
  .lbf-app-top img{width:72px;height:36px}
  .lbf-app-top b{font-size:16px}
  .lb .lbf-cta{font-size:14px;padding:10px 6px}
  .lbf-series{grid-template-columns:1fr}
}
/* Genrebillederne har selv teksten – navnet er kun til skærmlæsere */
.lbf-g span{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lbf-g{box-shadow:0 6px 18px rgba(43,33,82,.12)}
@media (max-width:600px){
  .lbf-series{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .lb .lbf-s{flex-direction:column;align-items:flex-start;gap:8px}
  .lbf-s img{width:100%;height:auto;aspect-ratio:1}
}
/* Tilbuddet som mærke, der sidder halvt uden for kortets top (Casper, 29. sep.) */
.lbf-apps{padding-top:14px}
.lbf-app{position:relative;padding-top:26px}
.lbf-offer{position:absolute;top:0;left:18px;transform:translateY(-50%);box-shadow:0 4px 12px rgba(43,33,82,.18);white-space:nowrap;max-width:calc(100% - 36px);overflow:hidden;text-overflow:ellipsis}
@media (max-width:600px){
  .lbf-apps{row-gap:24px}
  .lbf-app{padding-top:22px}
  .lbf-offer{left:12px;font-size:12px;padding:4px 10px;max-width:calc(100% - 24px)}
}
.lb-fp .lbf-hero h1{margin-bottom:10px}
.lbf-sub{margin:0 0 22px;font-size:17px;line-height:1.5;color:#e4def7;max-width:620px}
@media (max-width:600px){.lbf-sub{font-size:15px;margin-bottom:18px}}
/* Overskriften i fuld bredde (Casper, 29. sep.) */
.lb-fp .lbf-hero h1{max-width:none}
.lbf-sub{max-width:760px}
/* App-kort v2 (Casper, 29. sep.): logo alene, grafiske stjerner, tydelig pris, centreret */
.lbf-app{align-items:stretch;text-align:center;padding:30px 20px 18px;gap:14px;border-radius:20px}
.lbf-offer{left:50%;transform:translate(-50%,-50%);max-width:calc(100% - 32px)}
.lb .lbf-app-top{align-items:center;gap:10px}
.lbf-logo{display:flex;align-items:center;justify-content:center;height:56px}
.lbf-logo img{width:auto;max-width:140px;height:auto;max-height:52px;object-fit:contain;margin:0}
.lbf-logo b{font-size:20px}
.lbf-rating{display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px}
.lbf-rating b{font-size:15px}
.lbf-rating small{font-size:12px;color:var(--lb-mut)}
.lbf-st{position:relative;display:inline-block;color:#e2dcef;font-size:15px;letter-spacing:1px;line-height:1}
.lbf-st span{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#e3a008}
.lbf-price{display:flex;flex-direction:column;align-items:center;background:#f6f4fb;border-radius:12px;padding:10px 8px;line-height:1.25}
.lbf-price b{font-family:Montserrat,sans-serif;font-size:24px;font-weight:800;color:#1f1b2e}
.lbf-price small{font-size:12px;color:var(--lb-mut)}
.lbf-app:hover{box-shadow:0 0 0 2px var(--lb-purple),0 10px 26px rgba(43,33,82,.12)}
@media (max-width:600px){
  .lbf-app{padding:26px 12px 14px;gap:10px}
  .lbf-logo{height:44px}
  .lbf-logo img{max-width:110px;max-height:40px}
  .lbf-rating{flex-wrap:wrap;gap:2px 5px}
  .lbf-rating small{width:100%}
  .lbf-price b{font-size:20px}
}
/* Plads til fem apps på én række (Podimo kom med 29. sep.) */
@media (min-width:601px){.lbf-apps{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}}
/* Stjernerne: grå baggrundsstjerner, guld kun så langt som karakteren (en ældre regel farvede alle stjerner guld) */
.lbf-rating .lbf-st{color:#e2dcef}
.lbf-rating .lbf-st span{color:#e3a008}
