.hbest-wrap .hbest-wrap *{box-sizing:border-box;margin:0;padding:0}
.hbest-wrap{font-family:'Poppins',sans-serif;-webkit-font-smoothing:antialiased}



.hbest-wrap{
  --g:#1D9E75;--gt:#6ee7b7;
  --p1:#a259ec;--p2:#5b6dfa;
  --ink:#fff;--ink2:rgba(255,255,255,0.72);--ink3:rgba(255,255,255,0.42);
  --sf:#1a1f2e;--sf2:#232a3b;--bg:#0f172a;
  --bd:rgba(91,109,250,0.22);
  --r:12px;--rs:8px;
}
.hbest-wrap{font-family:'Poppins',sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}

/* ── Global reset: neutralisera WordPress-temats knappfärger ── */
.hbest-wrap button,
.hbest-wrap button:hover,
.hbest-wrap button:focus,
.hbest-wrap button:active {
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  outline: none !important;
}

/* PATH-knappar */
.hbest-wrap .path {
  background: rgba(26,31,46,0.95) !important;
  color: #fff !important;
  border: 1.5px solid rgba(91,109,250,0.3) !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.hbest-wrap .path:hover {
  background: rgba(91,109,250,0.08) !important;
  border-color: rgba(91,109,250,0.7) !important;
  box-shadow: 0 4px 20px rgba(91,109,250,0.15) !important;
}
.hbest-wrap .path.active {
  background: rgba(91,109,250,0.10) !important;
  border: 2px solid var(--p2) !important;
  box-shadow: 0 4px 20px rgba(91,109,250,0.2) !important;
}

/* btn-hero */
.hbest-wrap .btn-hero {
  background: linear-gradient(135deg,var(--p1),var(--p2)) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 20px rgba(91,109,250,0.3) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.hbest-wrap .btn-hero:hover {
  background: linear-gradient(135deg,var(--p1),var(--p2)) !important;
  box-shadow: 0 8px 30px rgba(91,109,250,0.4) !important;
}
/* ── Paketval-knappar ── */
.hbest-wrap .pkg-sel-btn {
    display: block !important;
    width: 100% !important;
    margin-top: 16px !important;
    padding: 12px 20px !important;
    background: linear-gradient(135deg, #a259ec, #5b6dfa) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(91,109,250,0.25) !important;
    transition: box-shadow .2s !important;
    text-decoration: none !important;
}
.hbest-wrap .pkg-sel-btn:hover {
    box-shadow: 0 8px 24px rgba(91,109,250,0.4) !important;
    background: linear-gradient(135deg, #b36ef5, #6b7dfa) !important;
}

/* ── Tillbaka-knapp ── */
.hbest-wrap .btn-s {
    padding: 10px 18px !important;
    background: rgba(35,42,59,0.8) !important;
    border: 1px solid rgba(91,109,250,0.3) !important;
    border-radius: 8px !important;
    color: rgba(255,255,255,0.72) !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all .15s !important;
    text-decoration: none !important;
}
.hbest-wrap .btn-s:hover {
    background: rgba(91,109,250,0.12) !important;
    border-color: rgba(91,109,250,0.5) !important;
    color: #fff !important;
}

/* btn-n */
.hbest-wrap .btn-n {
  background: linear-gradient(135deg,rgba(162,89,236,0.15),rgba(91,109,250,0.15)) !important;
  color: #fff !important;
  border: 1px solid rgba(91,109,250,0.3) !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.hbest-wrap .btn-n:hover {
  background: linear-gradient(135deg,rgba(162,89,236,0.25),rgba(91,109,250,0.25)) !important;
}
.hbest-wrap .btn-n:disabled {
  opacity: .35 !important;
  cursor: default !important;
}

/* tog-btn2 (Läs hela / Visa mindre) */
.hbest-wrap .tog-btn2 {
  background: none !important;
  color: #a5b4fc !important;
  border: none !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  padding: 0 !important;
}
.hbest-wrap .tog-btn2:hover {
  background: none !important;
  color: #c4b5fd !important;
}

/* tog-btn (Läs mer i why-grid) */
.hbest-wrap .tog-btn {
  background: none !important;
  color: #a5b4fc !important;
  border: none !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  padding: 0 !important;
}
.hbest-wrap .tog-btn:hover {
  background: none !important;
  color: #c4b5fd !important;
}

/* tool-close */
.hbest-wrap .tool-close {
  background: none !important;
  color: var(--ink3) !important;
  border: none !important;
  box-shadow: none !important;
}
.hbest-wrap .tool-close:hover {
  background: none !important;
  color: #fff !important;
}

/* qb-knappar (klassväljare +/-) */
.hbest-wrap .qb {
  background: rgba(35,42,59,0.8) !important;
  color: #fff !important;
  border: 1px solid var(--bd) !important;
  border-radius: 5px !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 26px !important;
  height: 26px !important;
  font-size: 15px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.hbest-wrap .qb:hover {
  background: rgba(91,109,250,0.15) !important;
  border-color: rgba(91,109,250,0.5) !important;
  color: #fff !important;
  box-shadow: none !important;
}

/* elev-ctrl knappar (+/-) */
.hbest-wrap .elev-ctrl button {
  background: rgba(35,42,59,0.8) !important;
  color: #fff !important;
  border: 1px solid var(--bd) !important;
  border-radius: 5px !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 15px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}
.hbest-wrap .elev-ctrl button:hover {
  background: rgba(91,109,250,0.15) !important;
  border-color: rgba(91,109,250,0.5) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder {
    color: rgba(255, 255, 255, 0.35) !important;
}
/* Skicka-knapp */
.hbest-wrap .wpforms-form .wpforms-submit-container {
    margin-top: 14px !important;
    padding: 0 !important;
}
.hbest-wrap .wpforms-form .wpforms-submit {
    background: linear-gradient(135deg, #a259ec, #5b6dfa) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 11px 24px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(91,109,250,0.25) !important;
    transition: box-shadow .2s !important;
}
.hbest-wrap .wpforms-form .wpforms-submit:hover {
    box-shadow: 0 8px 24px rgba(91,109,250,0.4) !important;
}

/* Bekräftelse */
.hbest-wrap .wpforms-confirmation-container-full,
.hbest-wrap .wpforms-confirmation-scroll {
    background: rgba(29,158,117,0.10) !important;
    border: 1px solid rgba(29,158,117,0.3) !important;
    border-radius: 8px !important;
    color: #6ee7b7 !important;
    padding: 14px 16px !important;
    font-size: 13px !important;
    font-family: 'Poppins', sans-serif !important;
    margin-top: 12px !important;
}

/* Page break */
.hbest-wrap .wpforms-page-indicator-page-title,
.hbest-wrap .wpforms-page-indicator {
    background: linear-gradient(135deg, #a259ec, #5b6dfa) !important;
    color: #fff !important;
}
/* Radio & checkbox */
.hbest-wrap .wpforms-form input[type="radio"],
.hbest-wrap .wpforms-form input[type="checkbox"] {
    accent-color: #a259ec !important;
    width: 16px !important;
    height: 16px !important;
    cursor: pointer !important;
}
.hbest-wrap .wpforms-form .wpforms-field-radio li label,
.hbest-wrap .wpforms-form .wpforms-field-checkbox li label {
    color: rgba(255,255,255,0.72) !important;
    font-size: 13px !important;
    font-family: 'Poppins', sans-serif !important;
    cursor: pointer !important;
}
/* Formulärrubrik */
.hbest-wrap .wpforms-form .wpforms-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
    font-family: 'Poppins', sans-serif !important;
    margin-bottom: 4px !important;
}
.hbest-wrap .wpforms-form .wpforms-description {
    font-size: 12px !important;
    color: var(--ink3) !important;
    font-family: 'Poppins', sans-serif !important;
}
/* Telefonfält */
.hbest-wrap .wpforms-form .wpforms-field-phone .iti,
.hbest-wrap .wpforms-form .wpforms-field-phone .iti__flag-container {
    background: transparent !important;
}
.hbest-wrap .wpforms-form .wpforms-field-phone .iti__selected-flag {
    background: rgba(15,23,42,0.8) !important;
    border-right: 1px solid rgba(91,109,250,0.25) !important;
}
/* Dölj formuläret som standard */
.hbest-tip-form {
    display: none;
    margin-top: 14px;
}
.hbest-tip-form.open {
    display: block;
}

/* ── Sökfält sponsor ── */
#sp-search-wrap {
    position: relative !important;
}
#sp-search-wrap > svg {
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
    z-index: 2 !important;
    color: var(--ink3) !important;
}
#sp-search-inp {
    position: relative !important;
    z-index: 1 !important;
}

/* HERO */
.hero{padding:3.5rem 0 2.5rem;border-bottom:1px solid var(--bd)}

/* Hero med bild — text vänster, bild höger på desktop */
.hero-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:48px;
}
.hero-text{flex:1 1 auto;min-width:0;max-width:680px}
.hero-image-wrap{
  flex:0 0 auto;
  width:300px;
  max-width:300px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-image{
  width:100%;
  height:auto;
  max-height:440px;
  object-fit:cover;
  border-radius:16px;
  box-shadow:0 24px 60px -16px rgba(0,0,0,0.55),
             0 0 0 1px rgba(255,255,255,0.06);
  display:block;
}
@media (max-width:1000px){
  .hero-image-wrap{width:240px;max-width:240px}
}
@media (max-width:768px){
  .hero-inner{flex-direction:column-reverse;gap:24px;align-items:stretch}
  .hero-image-wrap{width:100%;max-width:280px;margin:0 auto}
  .hero-text{max-width:100%}
}

/* slbl-meta — per-elev-rad bredvid "LICENSPRIS PER ÅR" */
.slbl-meta{
  text-transform:none;letter-spacing:0;
  color:var(--gt);font-weight:500;
  font-size:11px;margin-left:6px;
}
@media (max-width:640px){
  .slbl-meta{display:block;margin-left:0;margin-top:3px;font-size:11.5px}
}
.eyebrow{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,rgba(162,89,236,0.15),rgba(91,109,250,0.15));border:1px solid rgba(91,109,250,0.3);color:#a5b4fc;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 14px;margin-bottom:16px}
.eyebrow::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--p1)}
.hbest-wrap h1{font-size:42px;font-weight:700;line-height:1.1;letter-spacing:-.02em;margin-bottom:12px;text-wrap:balance}
.hbest-wrap h1 em{font-style:normal;background:linear-gradient(90deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-sub{font-size:15px;color:var(--ink2);line-height:1.65;max-width:560px;margin-bottom:1.5rem}
.trust-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:1.75rem}
.tp{display:flex;align-items:center;gap:6px;background:rgba(29,158,117,0.10);border:1px solid rgba(29,158,117,0.25);border-radius:999px;padding:5px 12px;font-size:12px;color:var(--gt);font-weight:500}
.cta-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* SPONSOR BANNER — synliggör att kommuner kan finansiera BE THE HERO */
.sponsor-banner{
  display:flex;align-items:center;gap:14px;
  margin-top:1.5rem;padding:14px 18px;
  width:100%;
  box-sizing:border-box;
  background:linear-gradient(135deg,rgba(29,158,117,0.10),rgba(91,109,250,0.06));
  border:1px solid rgba(29,158,117,0.28);
  border-radius:12px;
  cursor:pointer;
  transition:all .15s ease;
  font-family:'Poppins',sans-serif;
}
.sponsor-banner:hover{
  background:linear-gradient(135deg,rgba(29,158,117,0.16),rgba(91,109,250,0.10));
  border-color:rgba(29,158,117,0.45);
  transform:translateY(-1px);
}
.sponsor-banner .sb-icon{
  font-size:22px;flex-shrink:0;line-height:1;
}
.sponsor-banner .sb-text{
  flex:1;display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.45;color:var(--ink2);
}
.sponsor-banner .sb-text strong{color:#fff;font-weight:600}
.sponsor-banner .sb-text span{color:var(--ink3);font-size:12px}
.sponsor-banner .sb-arrow{
  font-size:18px;color:var(--gt);flex-shrink:0;font-weight:600;
  transition:transform .15s ease;
}
.sponsor-banner:hover .sb-arrow{transform:translateX(3px)}
@media (max-width:640px){
  .sponsor-banner{padding:12px 14px;gap:10px}
  .sponsor-banner .sb-icon{font-size:18px}
  .sponsor-banner .sb-text strong{font-size:12.5px}
  .sponsor-banner .sb-text span{font-size:11.5px}
}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;margin:2rem 0}
.stat{background:var(--sf);padding:1.5rem 1rem;text-align:center}
.stat-n{font-size:34px;font-weight:700;background:linear-gradient(135deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:5px}
.stat-l{font-size:12px;color:var(--ink3)}

/* SECTION */
.sec{padding:2rem 0;border-bottom:1px solid var(--bd)}
.slbl{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.slbl::after{content:'';flex:1;height:1px;background:var(--bd)}

/* PRICES */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}
.pc{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:1.1rem;text-align:center}
.pc-n{font-size:13px;font-weight:600;margin-bottom:2px}
.pc-g{font-size:12px;color:var(--ink3);margin-bottom:12px}
.pc-p{font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.pc-u{font-size:12px;color:var(--ink3)}
.price-note{background:rgba(29,158,117,0.08);border:1px solid rgba(29,158,117,0.25);border-radius:var(--rs);padding:11px 14px;font-size:12px;color:var(--gt);line-height:1.6;margin-bottom:8px;display:flex;gap:8px;cursor:pointer}
.moms-line{font-size:12px;color:var(--ink3);display:flex;align-items:center;gap:5px}
.moms-line::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--g);flex-shrink:0}

/* WHY */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wc{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:1.1rem;transition:border-color .2s}
.wc:hover{border-color:rgba(91,109,250,0.5)}
.wc-icon{width:32px;height:32px;border-radius:var(--rs);display:flex;align-items:center;justify-content:center;margin-bottom:10px;background:linear-gradient(135deg,rgba(162,89,236,0.2),rgba(91,109,250,0.2));border:1px solid rgba(91,109,250,0.3)}
.wc h4{font-size:13px;font-weight:600;margin-bottom:5px}
.wc-short{font-size:13px;color:var(--ink2);line-height:1.55}
.wc-more{font-size:13px;color:var(--ink3);line-height:1.55;margin-top:8px;padding-top:8px;border-top:1px solid var(--bd);display:none}
.wc-more.open{display:block}
.tog-btn{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:12px;font-weight:600;color:#a5b4fc;cursor:pointer;background:none;border:none;font-family:'Poppins',sans-serif;padding:0}

/* INCLUDED */
.inc-item{display:flex;gap:10px;align-items:flex-start;padding:10px 13px;background:var(--sf);border:1px solid var(--bd);border-radius:var(--rs);cursor:pointer;margin-bottom:6px;transition:border-color .2s}
.inc-item:hover{border-color:rgba(91,109,250,0.45)}
.inc-chk{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--g),#0F6E56);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.inc-title{font-size:13px;font-weight:500}
.inc-sub{font-size:12px;color:var(--ink3);margin-top:1px}
.inc-arrow{flex-shrink:0;color:var(--ink3);transition:transform .25s;display:flex;align-items:center;margin-left:auto}
.inc-item.open .inc-arrow{transform:rotate(180deg);color:#a5b4fc}
.inc-more{font-size:12px;color:var(--ink3);line-height:1.55;padding:8px 13px 6px 43px;display:none}
.inc-more.open{display:block}
/* "Kommande"-items — lila check istället för grön + liten badge */
.inc-item-coming{
  background:linear-gradient(135deg,rgba(162,89,236,0.05),rgba(91,109,250,0.04));
  border-color:rgba(91,109,250,0.20);
}
.inc-item-coming:hover{border-color:rgba(91,109,250,0.45)}
.inc-chk-coming{
  background:linear-gradient(135deg,var(--p1),var(--p2)) !important;
}
.inc-badge{
  display:inline-block;
  margin-left:8px;
  padding:2px 8px;
  background:linear-gradient(135deg,rgba(162,89,236,0.18),rgba(91,109,250,0.18));
  border:1px solid rgba(91,109,250,0.35);
  border-radius:999px;
  font-size:10px;
  font-weight:600;
  color:#a5b4fc;
  letter-spacing:0.04em;
  text-transform:uppercase;
  vertical-align:middle;
  line-height:1.4;
}

/* REVIEWS */
.rev{background:var(--sf);border:1px solid var(--bd);border-radius:var(--r);padding:1rem 1.1rem;margin-bottom:8px}
.rev-stars{color:#fbbf24;font-size:12px;letter-spacing:2px;margin-bottom:7px}
.rev-q{font-size:13px;line-height:1.6;font-style:italic;margin-bottom:10px}
.rev-foot{display:flex;align-items:center;justify-content:space-between}
.rev-av{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--p1),var(--p2));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-right:7px}
.rev-nm{font-size:12px;font-weight:500;color:var(--ink2)}
.rev-more{font-size:12px;color:var(--ink3);line-height:1.6;font-style:italic;padding-top:8px;border-top:1px solid var(--bd);margin-top:8px;display:none}
.rev-more.open{display:block}
.tog-btn2{font-size:12px;font-weight:600;color:#a5b4fc;cursor:pointer;background:none;border:none;font-family:'Poppins',sans-serif;padding:0}

/* PATHS */
.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
.path{background:rgba(26,31,46,0.95);border:1.5px solid rgba(91,109,250,0.3);border-radius:var(--r);padding:1.25rem;cursor:pointer;transition:all .2s;text-align:left;font-family:'Poppins',sans-serif}
.path:hover{border-color:rgba(91,109,250,0.7);background:rgba(91,109,250,0.08);transform:translateY(-2px);box-shadow:0 4px 20px rgba(91,109,250,0.15)}
.path.active{border:2px solid var(--p2);background:rgba(91,109,250,0.10);box-shadow:0 4px 20px rgba(91,109,250,0.2)}
.path h3{font-size:18px;font-weight:600;margin-bottom:5px;color:#fff}
.path-icon{width:32px;height:32px;border-radius:var(--rs);display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.path h3{font-size:18px;font-weight:700;margin-bottom:5px;color:#fff}
.path p{font-size:13px;color:var(--ink2);line-height:1.5;margin-top:2px}
.path-tag{display:inline-block;font-size:12px;font-weight:600;border-radius:999px;padding:5px 14px;margin-top:12px;letter-spacing:.01em}

/* CTA-trio CSS borttagen i v10.39 — inline styles på .path-elementen istället */

/* Dölj Tidio internal chat-code iframe (v10.41) — den ska vara osynlig
   men hade default browser iframe-border som syntes som vit ruta i botten. */
#tidio-chat-code{display:none !important}

/* Dölj hela Tidio chat-widget (v10.50) — den täckte över prissammanställning
   och rabattkod-knapp i kassan. Hela iframe-elementet + ev. fallback-kontainer. */
#tidio-chat,
#tidio-chat-iframe,
iframe[id^="tidio-chat"],
iframe[title*="Tidio"]{display:none !important}

/* Sponsor-card: "Spara upp till 100%"-badge i top-right (v10.40) */
.sponsor-savings-badge{
  position:absolute;
  top:10px;right:10px;
  background:linear-gradient(135deg,#1d9e75,#6ee7b7);
  color:#0a1f17;
  font-size:10.5px;
  font-weight:700;
  padding:4px 10px;
  border-radius:999px;
  letter-spacing:0.02em;
  box-shadow:0 4px 14px rgba(29,158,117,0.4);
  text-transform:uppercase;
  pointer-events:none;
  white-space:nowrap;
}
@media (max-width: 720px){
  .sponsor-savings-badge{display:none !important}
}

/* TOOL */
.hbest-tool{display:none}
.tool-panel{background:var(--sf);border:1.5px solid var(--p2);border-radius:var(--r);overflow:hidden;margin-bottom:2rem;box-shadow:0 8px 40px rgba(91,109,250,0.12)}
.tool-hd{background:linear-gradient(135deg,rgba(162,89,236,0.12),rgba(91,109,250,0.08));padding:13px 18px;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between}
.tool-hd h3{font-size:14px;font-weight:600}
.tool-close{background:none!important;border:none!important;font-size:20px;cursor:pointer;color:var(--ink3);font-family:'Poppins',sans-serif;line-height:1;padding:0;box-shadow:none!important}
.tool-close:hover{color:#fff!important;background:none!important}
.tool-.hbest-wrap{padding:1.25rem}

/* STEPBAR */
.stepbar{background:rgba(15,23,42,0.6);border:1px solid var(--bd);border-radius:var(--r);display:flex;align-items:center;padding:.75rem 1rem;margin-bottom:1.5rem;gap:0;overflow-x:auto}
.step{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink3);flex-shrink:0}
.step.active{color:#fff;font-weight:600}
.step.done{color:var(--p1)}
.step-n{width:22px;height:22px;border-radius:50%;border:1.5px solid rgba(91,109,250,0.3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;background:rgba(35,42,59,0.6);color:var(--ink3);flex-shrink:0}
.step.active .step-n{background:linear-gradient(135deg,var(--p1),var(--p2));border:none;color:#fff}
.step.done .step-n{background:linear-gradient(135deg,var(--p1),var(--p2));border:none;color:#fff}
.step-sep{width:20px;height:1px;background:var(--bd);margin:0 4px;flex-shrink:0}

/* SUB */
.sub{display:none}
.sub.on{display:block}

/* STAD */
.stad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:1rem}
.sc{background:rgba(35,42,59,0.6);border:1.5px solid var(--bd);border-radius:var(--r);padding:.9rem;cursor:pointer;transition:all .15s}
.sc:hover{border-color:rgba(91,109,250,0.5)}
.sc.sel{border:2px solid var(--p2);background:rgba(91,109,250,0.10)}
.sc h4{font-size:13px;font-weight:600;margin-bottom:1px}
.sc.sel h4{color:#a5b4fc}
.sc p{font-size:12px;color:var(--ink3)}

/* KLASSER */
.ksec{border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;margin-bottom:8px;background:rgba(35,42,59,0.5)}
.khead{display:grid;grid-template-columns:1fr 110px;padding:8px 14px;background:rgba(15,23,42,0.5);border-bottom:1px solid var(--bd)}
.khead span{font-size:12px;font-weight:600;color:var(--ink3);letter-spacing:.06em;text-transform:uppercase}
.khead span:last-child{text-align:center}
.krow{display:grid;grid-template-columns:1fr 110px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--bd)}
.krow:last-child{border-bottom:none}
.krow label{font-size:13px;font-weight:500}
.qty{display:flex;align-items:center;justify-content:center;gap:5px}
.qb{width:26px;height:26px;border:1px solid var(--bd);background:rgba(35,42,59,0.8);border-radius:5px;font-size:15px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;transition:all .15s}
.qb:hover{background:rgba(91,109,250,0.15);border-color:rgba(91,109,250,0.5)}
.qv{font-size:14px;font-weight:600;min-width:18px;text-align:center}

/* ELEV */
.elev-row{background:rgba(35,42,59,0.5);border:1px solid var(--bd);border-radius:var(--r);padding:12px 14px;margin-bottom:.9rem;display:flex;align-items:center;gap:14px}
.elev-row>div:first-child{flex:1}
.elev-row label{font-size:13px;font-weight:600}
.elev-row small{font-size:12px;color:var(--ink3);display:block;margin-top:1px}
.elev-ctrl{display:flex;align-items:center;gap:6px}
.elev-ctrl button{width:28px;height:28px;border:1px solid var(--bd);background:rgba(35,42,59,0.8);border-radius:5px;font-size:15px;cursor:pointer;color:#fff;font-family:'Poppins',sans-serif;transition:all .15s}
.elev-ctrl button:hover{background:rgba(91,109,250,0.15)}
.elev-ctrl input{width:64px;text-align:center;font-size:14px;font-weight:600;border:1px solid var(--bd);border-radius:var(--rs);padding:5px 6px;background:rgba(35,42,59,0.8);color:#fff;font-family:'Poppins',sans-serif}
.elev-ctrl input:focus{outline:none;border-color:var(--p2)}

/* LIVE */
.live{background:rgba(15,23,42,0.6);border:1px solid var(--bd);border-radius:var(--r);padding:.9rem;margin-bottom:1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ls{background:rgba(35,42,59,0.6);border-radius:var(--rs);padding:9px 10px;border:1px solid var(--bd);text-align:center}
.lv{font-size:17px;font-weight:700}
.lv.g{background:linear-gradient(135deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ll{font-size:12px;color:var(--ink3);margin-top:2px}

/* SP INLINE */
.sp-inline{background:rgba(29,158,117,0.08);border:1px solid rgba(29,158,117,0.25);border-radius:var(--rs);padding:10px 14px;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sp-inline p{font-size:13px;color:var(--gt)}
.sp-inline a{font-size:13px;font-weight:600;color:var(--g);text-decoration:none;cursor:pointer;white-space:nowrap}

/* DISC BADGE */
.disc-badge{background:rgba(29,158,117,0.10);border:1px solid rgba(29,158,117,0.3);border-radius:var(--rs);padding:10px 14px;margin-bottom:1rem;display:flex;align-items:center;gap:10px}
.disc-badge h4{font-size:13px;font-weight:600;color:var(--gt);margin-bottom:1px}
.disc-badge p{font-size:12px;color:rgba(110,231,183,0.7)}

/* BOX CARD */
.box-card{border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;margin-bottom:1rem;background:rgba(35,42,59,0.5)}
.box-imgs{display:grid;grid-template-columns:1fr 1fr}
.box-img{aspect-ratio:4/3;overflow:hidden}
.box-img img{width:100%;height:100%;object-fit:cover;display:block}
.box-.hbest-wrap{padding:1rem}
.box-body h4{font-size:13px;font-weight:600;margin-bottom:4px}
.box-body>p{font-size:13px;color:var(--ink2);margin-bottom:11px;line-height:1.55}
.box-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}
.bc{background:rgba(15,23,42,0.6);border:1px solid var(--bd);border-radius:var(--rs);padding:9px 11px}
.bc h5{font-size:12px;font-weight:600;color:#a5b4fc;margin-bottom:2px}
.bc p{font-size:12px;color:var(--ink3);line-height:1.4}
.box-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--bd);flex-wrap:wrap;gap:6px}
.box-footer strong{font-size:13px;font-weight:600}
.box-aff{font-size:12px;color:var(--ink3)}

/* PACKAGES */
.pkg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:1rem}
.pkg{background:rgba(35,42,59,0.6);border:1.5px solid var(--bd);border-radius:var(--r);padding:1.1rem;cursor:pointer;display:flex;flex-direction:column;transition:all .15s;position:relative}
.pkg:hover{border-color:rgba(91,109,250,0.5)}
.pkg.sel,.pkg.rec{border:2px solid var(--p2);background:rgba(91,109,250,0.06)}
.pkg-rec-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--p1),var(--p2));color:#fff;font-size:12px;font-weight:700;padding:3px 12px;border-radius:999px;white-space:nowrap}
.pbg{display:inline-block;font-size:12px;font-weight:600;border-radius:999px;padding:2px 9px;margin-bottom:7px}
.bg-bl{background:rgba(91,109,250,0.15);color:#a5b4fc;border:1px solid rgba(91,109,250,0.3)}
.bg-gn{background:linear-gradient(135deg,rgba(162,89,236,0.2),rgba(91,109,250,0.2));color:#c4b5fd;border:1px solid rgba(91,109,250,0.4)}
.pnm{font-size:15px;font-weight:600;margin-bottom:3px}
.psb{font-size:13px;color:var(--ink3);margin-bottom:12px;line-height:1.5;flex:1}
.ppr{font-size:26px;font-weight:700;background:linear-gradient(135deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:1px}
.pmo{font-size:12px;color:var(--ink3);margin-bottom:4px}
.ppe{font-size:12px;font-weight:600;color:var(--gt);margin-bottom:10px;background:rgba(29,158,117,0.12);border:1px solid rgba(29,158,117,0.2);display:inline-block;padding:2px 9px;border-radius:999px}
.pfs{display:flex;flex-direction:column;gap:4px;padding-top:9px;border-top:1px solid var(--bd);margin-top:auto}
.pfi{font-size:13px;color:var(--ink3);display:flex;gap:5px;align-items:flex-start;line-height:1.4}
.pfc{color:var(--g);flex-shrink:0}
.pfm{color:rgba(255,255,255,0.2);flex-shrink:0}
.pkg-sel-btn{width:100%;margin-top:10px;padding:9px;background:rgba(91,109,250,0.12);border:1px solid rgba(91,109,250,0.3);border-radius:var(--rs);color:#a5b4fc;font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;transition:all .15s}
.pkg-sel-btn:hover{background:rgba(91,109,250,0.2)}
.pkg.sel .pkg-sel-btn{background:linear-gradient(135deg,var(--p1),var(--p2));border:none;color:#fff}

/* CART */
.cart-wrap{background:rgba(15,23,42,0.8);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;margin-bottom:.75rem}
.cart-sec-hd{padding:7px 16px;background:linear-gradient(135deg,rgba(162,89,236,0.08),rgba(91,109,250,0.05));border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:8px}
.cart-sec-hd span{font-size:12px;font-weight:600;color:#a5b4fc;letter-spacing:.07em;text-transform:uppercase}
.cart-sec-icon{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--p1),var(--p2));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cart-row{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;border-bottom:1px solid var(--bd);font-size:13px}
.cart-row:last-of-type{border-bottom:none}
.cart-lbl{color:var(--ink3)}
.cart-val{font-weight:600}
.cart-val-g{color:var(--gt);font-weight:600}
.cart-val-str{color:rgba(255,255,255,0.25);text-decoration:line-through;font-size:12px;margin-right:4px}
.cart-val-disc{color:var(--gt);font-weight:600}
.cart-total-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:linear-gradient(135deg,rgba(162,89,236,0.08),rgba(91,109,250,0.05))}
.cart-total-lbl{font-size:13px;color:var(--ink3)}
.cart-total-moms{font-size:12px;color:var(--ink3)}
.cart-total-val{font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--p1),var(--p2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.cart-renew{background:rgba(29,158,117,0.08);border-top:1px solid rgba(29,158,117,0.2);padding:10px 16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.cart-renew-lbl{font-size:13px;color:var(--gt);display:flex;align-items:center;gap:6px}
.cart-renew-val{font-size:13px;font-weight:600;color:var(--gt)}

/* KASSA WRAP */
.kassa-wrap{background:linear-gradient(135deg,rgba(162,89,236,0.08),rgba(91,109,250,0.05));border:1px solid rgba(91,109,250,0.3);border-radius:var(--r);padding:1.25rem;margin-bottom:1rem}
.kassa-wrap h4{font-size:14px;font-weight:600;margin-bottom:4px}
.kassa-wrap p{font-size:13px;color:var(--ink3);margin-bottom:1rem;line-height:1.5}
.kassa-trust{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:1rem}
.kt{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--ink3)}

/* TERMS */
.terms{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:1rem}
.term{background:rgba(35,42,59,0.6);border:1px solid var(--bd);border-radius:var(--rs);padding:9px 11px}
.term-l{font-size:12px;font-weight:600;color:var(--ink3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.term-v{font-size:13px;line-height:1.4}

/* TIMELINE */
.tl{display:flex;flex-direction:column;margin-bottom:1rem}
.tli{display:flex;gap:10px;padding-bottom:13px}
.tli:last-child{padding-bottom:0}
.tll{display:flex;flex-direction:column;align-items:center}
.tld{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--p1),var(--p2));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}
.tlln{width:1px;flex:1;background:var(--bd);margin:2px 0}
.tli:last-child .tlln{display:none}
.tlc h4{font-size:13px;font-weight:600;padding-top:1px;margin-bottom:1px}
.tlc p{font-size:12px;color:var(--ink3);line-height:1.4}

/* MAT ROW */
.mat-row{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;background:rgba(35,42,59,0.5);border:1px solid var(--bd);border-radius:var(--rs);margin-bottom:7px}
.mat-info h4{font-size:13px;font-weight:600;margin-bottom:1px}
.mat-info p{font-size:12px;color:var(--ink3)}
.mat-right{display:flex;align-items:center;gap:9px}
.mat-price{font-size:13px;font-weight:600;color:#a5b4fc}
.mat-qty{display:flex;align-items:center;gap:5px}
.mat-qty button{width:24px;height:24px;border:1px solid var(--bd);background:rgba(35,42,59,0.8);border-radius:5px;font-size:14px;cursor:pointer;color:#fff;font-family:'Poppins',sans-serif}

/* SPONSOR */
.sp-search-wrap{position:relative;margin-bottom:1.25rem}
.sp-search-inp{width:100%;padding:13px 16px 13px 44px;background:rgba(35,42,59,0.8);border:1.5px solid var(--bd);border-radius:var(--r);color:#fff;font-size:14px;font-family:'Poppins',sans-serif;box-sizing:border-box;transition:border-color .15s}
.sp-search-inp:focus{outline:none;border-color:var(--p2)}
.sp-search-inp::placeholder{color:var(--ink3)}
.sp-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ink3);pointer-events:none}
.sp-autocomplete{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--sf2);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,0.4)}
.sp-card{display:none;background:var(--sf);border:1.5px solid rgba(29,158,117,0.4);border-radius:var(--r);overflow:hidden;margin-bottom:1rem}
.sp-card-hd{padding:1rem;border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:12px}
.sp-logo-wrap{width:56px;height:38px;background:rgba(255,255,255,0.06);border:1px solid var(--bd);border-radius:var(--rs);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}
.sp-card-name{font-size:14px;font-weight:600;margin-bottom:2px}
.sp-card-commune{font-size:13px;color:var(--ink3)}
.sp-card-.hbest-wrap{padding:1rem}
.sp-disc-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(29,158,117,0.12);border:1px solid rgba(29,158,117,0.3);border-radius:999px;padding:5px 12px;font-size:13px;color:var(--gt);font-weight:600;margin-bottom:10px}
.sp-desc{font-size:13px;color:var(--ink2);line-height:1.6;margin-bottom:14px}
.sp-code-wrap{background:rgba(15,23,42,0.6);border:1px solid rgba(29,158,117,0.25);border-radius:var(--rs);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.sp-code-lbl{font-size:12px;font-weight:600;color:var(--ink3);letter-spacing:.07em;text-transform:uppercase;margin-bottom:3px}
.sp-code-val{font-size:16px;font-weight:700;color:var(--gt);letter-spacing:.06em;font-family:monospace}
.sp-no-result{display:none;background:rgba(35,42,59,0.5);border:1px solid var(--bd);border-radius:var(--r);padding:1.5rem;text-align:center}

/* CONTACT */
.contact-bar{background:rgba(35,42,59,0.5);border:1px solid var(--bd);border-radius:var(--r);padding:1rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:1.5rem}
.contact-bar p{font-size:13px;color:var(--ink2)}
.contact-bar a{color:var(--p1);font-weight:600;text-decoration:none;font-size:13px}

/* PARTNERS */
.partners{display:flex;flex-wrap:wrap;gap:7px;padding:1.5rem 0;border-top:1px solid var(--bd);margin-top:2rem}
.plogo{font-size:12px;color:var(--ink3);background:var(--sf);border:1px solid var(--bd);border-radius:5px;padding:4px 10px}

/* BUTTONS */
.btn-hero{padding:13px 26px;background:linear-gradient(135deg,var(--p1),var(--p2));color:#fff;border:none;border-radius:var(--r);font-size:14px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;box-shadow:0 4px 20px rgba(91,109,250,0.3);transition:all .2s}
.btn-hero:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(91,109,250,0.4)}
.btn-trial{font-size:13px;color:var(--ink3);background:none;border:none;cursor:pointer;font-family:'Poppins',sans-serif;text-decoration:underline;text-underline-offset:3px}
.btn-p{padding:12px 24px;background:linear-gradient(135deg,var(--p1),var(--p2));color:#fff;border:none;border-radius:var(--r);font-size:14px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;box-shadow:0 4px 16px rgba(91,109,250,0.25);transition:all .2s}
.btn-p:hover{transform:translateY(-1px)}
.btn-p:disabled{opacity:.35;cursor:default;transform:none}
.btn-s{padding:10px 16px;background:rgba(255,255,255,0.06);border:1px solid var(--bd);border-radius:var(--rs);font-size:13px;cursor:pointer;color:var(--ink2);font-family:'Poppins',sans-serif;transition:all .15s}
.btn-s:hover{background:rgba(255,255,255,0.10)}
.btn-n{padding:10px 18px;background:linear-gradient(135deg,rgba(162,89,236,0.15),rgba(91,109,250,0.15));border:1px solid rgba(91,109,250,0.3);color:#fff;border-radius:var(--rs);font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;transition:all .15s}
.btn-n:disabled{opacity:.35;cursor:default}
.btn-lnk{font-size:13px;color:var(--ink3);background:none;border:none;cursor:pointer;font-family:'Poppins',sans-serif;text-decoration:underline;text-underline-offset:2px;padding:10px 0}
.sp-btn{padding:9px 16px;background:linear-gradient(135deg,var(--p1),var(--p2));color:#fff;border:none;border-radius:var(--rs);font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif;white-space:nowrap}
.sp-apply-btn{width:100%;padding:11px;background:linear-gradient(135deg,var(--p1),var(--p2));border:none;border-radius:var(--rs);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif}
.sp-copy-btn{padding:6px 14px;background:linear-gradient(135deg,var(--p1),var(--p2));border:none;border-radius:var(--rs);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:'Poppins',sans-serif}
.err{font-size:13px;color:#f87171;margin-top:5px;display:none}
.err.show{display:block}
.navrow{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:1rem}
.rf{background:rgba(24,95,165,0.08);border:1px solid rgba(91,109,250,0.3);border-radius:var(--r);overflow:hidden;margin-bottom:1rem}
.rf-hd{padding:1rem;border-bottom:1px solid rgba(91,109,250,0.2)}
.rf-hd h3{font-size:15px;font-weight:600;color:#a5b4fc;margin-bottom:3px}
.rf-hd p{font-size:13px;color:rgba(165,180,252,0.7)}
.rf-.hbest-wrap{padding:1rem}

/* TRIAL */
.trial-pt{display:flex;gap:7px;align-items:flex-start;font-size:13px;color:var(--ink2);line-height:1.5;margin-bottom:7px}
.tpc{color:var(--g);flex-shrink:0;font-weight:700}
.field-row{display:flex;gap:7px;margin-bottom:7px;flex-wrap:wrap}
.field{flex:1;min-width:150px;padding:9px 12px;border:1px solid var(--bd);border-radius:var(--rs);font-size:13px;font-family:'Poppins',sans-serif;background:rgba(35,42,59,0.8);color:#fff}
.field:focus{outline:none;border-color:var(--p2)}
.field::placeholder{color:var(--ink3)}

/* MODAL */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9999;align-items:center;justify-content:center;padding:1rem}
.modal-bg.open{display:flex}
.modal{background:var(--sf);border:1px solid var(--p2);border-radius:var(--r);padding:1.5rem;max-width:360px;width:100%;position:relative;box-shadow:0 20px 60px rgba(91,109,250,0.25)}
.modal h3{font-size:15px;font-weight:600;margin-bottom:5px}
.modal p{font-size:13px;color:var(--ink3);margin-bottom:13px;line-height:1.5}
.modal-close{position:absolute;top:10px;right:12px;font-size:20px;cursor:pointer;color:var(--ink3);background:none;border:none;font-family:'Poppins',sans-serif}
.modal-close:hover{color:#fff}
.modal-row{display:flex;gap:7px}

/* HERO BOX MODAL */
.box-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:9999;align-items:center;justify-content:center;padding:1rem}
.box-modal-bg.open{display:flex}
.box-modal{background:var(--sf);border:1px solid var(--p2);border-radius:var(--r);max-width:680px;width:100%;overflow:hidden;position:relative;max-height:90vh;overflow-y:auto}
.box-modal-imgs{display:grid;grid-template-columns:1fr 1fr}
.box-modal-img{aspect-ratio:4/3;overflow:hidden}
.box-modal-img img{width:100%;height:100%;object-fit:cover}
.box-modal-.hbest-wrap{padding:1.25rem}
.box-modal-close{position:absolute;top:10px;right:14px;font-size:22px;cursor:pointer;color:var(--ink3);background:none;border:none;font-family:'Poppins',sans-serif;z-index:1}

@media(max-width:700px){
  .path-grid,.why-grid,.stats,.price-grid,.stad-grid,.pkg-grid,.box-cards,.terms,.live{grid-template-columns:1fr}
  .hbest-wrap h1{font-size:28px}
  .box-imgs,.box-modal-imgs{grid-template-columns:1fr}
}

/* ── Section subtitle (mindre kontext-rad under slbl) ─────── */
.hbest-section-subtitle {
  text-align: center;
  font-size: 12.5px;
  color: var(--ink3);
  margin: -4px auto 24px;
  letter-spacing: 0.02em;
}

/* ── MID-PAGE CTA — knapp som scrollar till val-sektion ────── */
.hbest-midpage-cta {
  text-align: center;
  padding: 24px 0 8px !important;
}
.hbest-midpage-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: rgba(91, 109, 250, 0.08);
  border: 1px solid rgba(91, 109, 250, 0.30);
  color: #fff !important;
  font-family: 'Poppins', sans-serif;
  font-size: 14.5px;
  font-weight: 600;
  padding: 14px 28px;
  border-radius: var(--r);
  transition: transform 0.15s ease, background 0.15s ease, border-color 0.15s ease;
  text-decoration: none;
  cursor: pointer;
}
.hbest-midpage-btn:hover {
  background: rgba(91, 109, 250, 0.14);
  border-color: rgba(91, 109, 250, 0.5);
  transform: translateY(-1px);
}

/* ── SCHOOLS MARQUEE — vertikal text-cykel med 31 skolor
   v10.76: kompaktare section-padding + lägre mask/item-höjd så sektionen
   inte tar för mycket lodrätt utrymme. */
.home-schools-marquee {
  text-align: center;
  padding: 36px 0 !important;
}
.schools-marquee-eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--ink3);
  margin-bottom: 14px;
}
.schools-marquee-wrap {
  display: flex;
  justify-content: center;
}
.schools-marquee-mask {
  height: 52px;
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 720px;
  -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 35%, #000 65%, transparent 100%);
          mask-image: linear-gradient(180deg, transparent 0, #000 35%, #000 65%, transparent 100%);
}
.schools-track {
  display: flex;
  flex-direction: column;
  animation: schoolsCycle 62s linear infinite;
  will-change: transform;
}
.schools-marquee-mask:hover .schools-track {
  animation-play-state: paused;
}
.school-item {
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(15px, 1.8vw, 20px);
  font-weight: 700;
  letter-spacing: -0.01em;
  background: linear-gradient(90deg, var(--p1), var(--p2));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  flex-shrink: 0;
  white-space: nowrap;
  padding: 0 16px;
  font-family: 'Poppins', sans-serif;
}
.school-city {
  background: linear-gradient(90deg, var(--ink2), var(--ink2));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 500;
  margin-left: 4px;
}
@keyframes schoolsCycle {
  from { transform: translateY(0); }
  to   { transform: translateY(-50%); }
}
.schools-marquee-note {
  margin-top: 12px;
  font-size: 13px;
  color: var(--ink3);
  font-style: italic;
}

/* ── FYS-CAT-WIDE — extra rad som spänner full bredd ──────── */
.fys-cat-grid .fys-cat-wide {
  grid-column: 1 / -1;
  background: rgba(245,158,11,0.04);
  border-color: rgba(245,158,11,0.25);
}
.fys-cat-grid .fys-cat-wide .fys-cat-num {
  color: #fcd34d;
}

/* ═══════════════════════════════════════════════════════════
   HBEST TABS — kombinerad Licensen/HERO BOXEN/Affisch (v10.42)
   Slår ihop "Vad ingår i licensen" + "Fysiskt material" till
   en tabbed-sektion med 3 flikar och tydliga kostnadstyp-badges.
   ═══════════════════════════════════════════════════════════ */
.hbest-tabs-section { padding-top: 1.5rem; }
.hbest-tabs-lede {
  text-align: center;
  font-size: 13px;
  color: var(--ink3);
  margin: -8px auto 24px;
  max-width: 540px;
}
.hbest-tabs { margin-top: 16px; }

/* Tab-knapparnas rad — scopade selectors + !important för att överrida WP-tema */
.hbest-wrap .hbest-tab-buttons,
.hbest-tabs-section .hbest-tab-buttons {
  display: flex !important;
  justify-content: center !important;
  gap: 4px !important;
  margin-bottom: 28px !important;
  border: none !important;
  border-bottom: 1px solid var(--bd) !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
  background: transparent !important;
}
.hbest-wrap .hbest-tab-btn,
.hbest-tabs-section .hbest-tab-btn {
  position: relative !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: var(--ink3) !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 14px 22px !important;
  cursor: pointer !important;
  transition: color 0.2s ease !important;
  white-space: nowrap !important;
  letter-spacing: 0.01em !important;
  box-shadow: none !important;
  text-decoration: none !important;
  text-transform: none !important;
  line-height: 1.2 !important;
}
.hbest-wrap .hbest-tab-btn:hover,
.hbest-tabs-section .hbest-tab-btn:hover {
  color: #fff !important;
  background: transparent !important;
  background-color: transparent !important;
}
.hbest-wrap .hbest-tab-btn.active,
.hbest-tabs-section .hbest-tab-btn.active {
  color: #fff !important;
  font-weight: 600 !important;
}
.hbest-wrap .hbest-tab-btn.active::after,
.hbest-tabs-section .hbest-tab-btn.active::after {
  content: '' !important;
  position: absolute !important;
  bottom: -1px !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, var(--p1), var(--p2)) !important;
  border-radius: 2px !important;
}

/* Tab-paneler med fade-in */
.hbest-tab-panel { animation: hbestTabFadeIn 0.35s ease-out; }
.hbest-tab-panel[hidden] { display: none; }
@keyframes hbestTabFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Cost-badge per kostnadstyp */
.hbest-cost-badge {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 16px;
  padding: 14px 20px;
  border-radius: var(--r);
  margin-bottom: 26px;
}
.hbest-cost-yearly {
  background: linear-gradient(90deg, rgba(162,89,236,0.10), rgba(91,109,250,0.06));
  border: 1px solid rgba(91,109,250,0.30);
}
.hbest-cost-onetime {
  background: linear-gradient(90deg, rgba(29,158,117,0.10), rgba(110,231,183,0.05));
  border: 1px solid rgba(29,158,117,0.30);
}
.hbest-cost-optional {
  background: linear-gradient(90deg, rgba(245,158,11,0.10), rgba(252,211,77,0.05));
  border: 1px solid rgba(245,158,11,0.30);
}
.hbest-cost-included {
  background: linear-gradient(90deg, rgba(56,189,248,0.08), rgba(125,211,252,0.04));
  border: 1px solid rgba(56,189,248,0.30);
}
.hbest-cost-startkit {
  background: linear-gradient(90deg, rgba(244,114,182,0.08), rgba(251,207,232,0.04));
  border: 1px solid rgba(244,114,182,0.30);
}
.cost-type {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 11px;
  flex-shrink: 0;
}
.hbest-cost-yearly .cost-type  { color: #a5b4fc; }
.hbest-cost-onetime .cost-type { color: #6ee7b7; }
.hbest-cost-optional .cost-type { color: #fcd34d; }
.hbest-cost-included .cost-type { color: #7dd3fc; }
.hbest-cost-startkit .cost-type { color: #f9a8d4; }
.cost-amount {
  font-weight: 700;
  color: #fff;
  font-size: 14.5px;
  letter-spacing: -0.005em;
}
.cost-note {
  color: var(--ink3);
  font-size: 12px;
  flex-basis: 100%;
  margin-top: 2px;
}

/* Generic tab-grid (bild | content) för Tab 2 och 3 */
.hbest-tab-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px;
  align-items: center;
}
.hbest-tab-img {
  border-radius: var(--r);
  overflow: hidden;
  background: rgba(0,0,0,0.4);
  border: 1px solid var(--bd-2, rgba(255,255,255,0.08));
  position: relative;
  cursor: zoom-in;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.hbest-tab-img:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(91,109,250,0.18);
}
.hbest-tab-img img {
  width: 100%;
  height: auto;
  max-height: 380px;
  object-fit: cover;
  display: block;
}
.hbest-tab-content h4 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  color: #fff;
  letter-spacing: -0.01em;
}
.hbest-tab-content p {
  font-size: 14px;
  color: var(--ink2);
  line-height: 1.65;
  margin-bottom: 16px;
}
.hbest-tab-content p:last-child { margin-bottom: 0; }
.hbest-tab-note {
  font-size: 12.5px !important;
  color: var(--ink3) !important;
  font-style: italic;
  padding-top: 10px;
  border-top: 1px solid var(--bd);
}
.hbest-resa-images {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

@media (max-width: 800px) {
  .hbest-tab-btn { font-size: 13px; padding: 12px 14px; }
  .hbest-tab-grid { grid-template-columns: 1fr; gap: 18px; }
  .hbest-tab-img img { max-height: 280px; }
}

/* ═══════════════════════════════════════════════════════════
   FYSISKT MATERIAL — fullbredd, inline, ingen modal
   Två block: HERO-korten (F-9) + Klassens resa (F-3)
   ═══════════════════════════════════════════════════════════ */
.fys-section{padding-top:1.5rem}

/* Hero-bild: öppen HERO BOX — kompaktare, mörk lila bg, klickbar lightbox */
.fys-hero{
  border-radius:var(--r);
  overflow:hidden;
  margin-bottom:24px;
  background:rgba(35,42,59,0.5);
  border:1px solid var(--bd);
}
.fys-hero-img-wrap{
  width:100%;
  background:radial-gradient(ellipse at center, rgba(91,109,250,0.10), rgba(15,17,28,0.85));
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  position:relative;
}
.fys-hero-img{
  width:auto;
  max-width:100%;
  height:auto;
  max-height:320px;
  object-fit:contain;
  display:block;
}
.fys-hero-meta{
  padding:14px 18px;
  display:flex;flex-wrap:wrap;gap:8px;
  justify-content:center;
  background:rgba(15,23,42,0.6);
  border-top:1px solid rgba(91,109,250,0.18);
}
.fys-pill{
  font-size:12px;font-weight:600;
  padding:6px 13px;border-radius:999px;
  background:linear-gradient(135deg,var(--p1),var(--p2));
  color:#fff;
  letter-spacing:0.02em;
}
.fys-pill-muted{
  background:rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.85);
  font-weight:500;
  border:1px solid rgba(255,255,255,0.08);
}

/* Block-struktur */
.fys-block{
  background:rgba(26,31,46,0.6);
  border:1px solid var(--bd);
  border-radius:var(--r);
  padding:20px 22px;
  margin-bottom:14px;
}
.fys-block-head{
  display:flex;align-items:center;gap:12px;
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(91,109,250,0.15);
}
.fys-stage-tag{
  font-size:10.5px;font-weight:700;
  letter-spacing:0.06em;
  padding:5px 11px;
  border-radius:999px;
  background:rgba(91,109,250,0.18);
  color:#a5b4fc;
  border:1px solid rgba(91,109,250,0.4);
  text-transform:uppercase;
  flex-shrink:0;
}
.fys-stage-tag-low{
  background:rgba(245,158,11,0.15);
  color:#fcd34d;
  border-color:rgba(245,158,11,0.4);
}
.fys-block-title{
  font-size:15.5px !important;
  font-weight:600 !important;
  color:#fff !important;
  margin:0 !important;
  line-height:1.35 !important;
}

/* Body: 2-kolumns layout (bild | text) */
.fys-block-body-cards{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr);
  gap:22px;
  align-items:start;
}
.fys-img-wrap{
  border-radius:10px;
  overflow:hidden;
  background:rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.06);
}
.fys-img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.fys-block-text{display:flex;flex-direction:column;gap:14px}
.fys-block-desc{
  font-size:13.5px;
  color:var(--ink2);
  line-height:1.6;
  margin:0;
}
.fys-block-desc strong{color:#a5b4fc;font-weight:600}

/* Kategorier-grid (4 st i 2×2) */
.fys-cat-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.fys-cat{
  display:flex;align-items:flex-start;gap:10px;
  padding:10px 12px;
  background:rgba(91,109,250,0.05);
  border:1px solid rgba(91,109,250,0.18);
  border-radius:10px;
}
.fys-cat-num{
  font-size:18px;
  font-weight:700;
  color:#a5b4fc;
  line-height:1;
  flex-shrink:0;
  min-width:18px;
}
.fys-cat-body{flex:1;min-width:0}
.fys-cat-name{
  font-size:12px;
  font-weight:600;
  color:#fff;
  margin-bottom:3px;
}
.fys-cat-list{
  font-size:11px;
  color:var(--ink3);
  line-height:1.4;
}

/* Klassens resa: två bilder + text under */
.fys-block-body-resa{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.fys-resa-images{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.fys-img-wrap-affisch .fys-img{
  max-height:340px;
  object-fit:contain;
  background:rgba(0,0,0,0.4);
  padding:0;
}
.fys-img-wrap-stickers{
  background:rgba(0,0,0,0.4);
}
.fys-img-wrap-stickers .fys-img{
  max-height:340px;
  object-fit:contain;
}
.fys-block-desc-resa{
  font-size:13.5px;
  text-align:center;
  max-width:680px;
  margin:0 auto;
}

/* Trygghetsrad borttagen i v10.40 — info finns redan i prislisten + Så fungerar det */

/* Klickbar bild + zoom-hint som visas vid hover */
.fys-img-clickable{
  cursor:zoom-in;
  position:relative;
  transition:transform 0.2s ease, box-shadow 0.2s ease;
}
.fys-img-clickable:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(91,109,250,0.18);
}
.fys-img-zoom-hint{
  position:absolute;
  top:10px;right:10px;
  background:rgba(15,23,42,0.85);
  color:#fff;
  font-size:11px;
  font-weight:600;
  padding:5px 10px;
  border-radius:999px;
  letter-spacing:0.02em;
  opacity:0;
  transform:translateY(-4px);
  transition:opacity 0.2s ease, transform 0.2s ease;
  pointer-events:none;
  border:1px solid rgba(255,255,255,0.12);
  backdrop-filter:blur(8px);
}
.fys-img-clickable:hover .fys-img-zoom-hint,
.fys-img-clickable:focus-visible .fys-img-zoom-hint{
  opacity:1;
  transform:translateY(0);
}

/* Lightbox — fullskärms-overlay för förstorad bild */
.fys-lightbox{
  display:none;
  position:fixed;
  inset:0;
  z-index:99999;
  background:rgba(8,11,20,0.92);
  align-items:center;
  justify-content:center;
  padding:24px;
  cursor:zoom-out;
  animation:fysLightboxIn 0.18s ease-out;
}
.fys-lightbox.open{display:flex}
@keyframes fysLightboxIn{
  from{opacity:0}
  to{opacity:1}
}
.fys-lightbox img{
  max-width:96vw;
  max-height:92vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:8px;
  box-shadow:0 20px 80px rgba(0,0,0,0.6);
  cursor:default;
}
.fys-lightbox-close{
  position:fixed;
  top:18px;right:22px;
  width:42px;height:42px;
  background:rgba(15,23,42,0.85);
  color:#fff;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:50%;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-family:'Poppins',sans-serif;
  z-index:1;
  transition:background 0.15s ease, transform 0.15s ease;
}
.fys-lightbox-close:hover{
  background:rgba(91,109,250,0.5);
  transform:scale(1.06);
}

/* Responsivt: mobil stackar allt */
@media (max-width: 800px){
  .fys-block-body-cards{grid-template-columns:1fr;gap:16px}
  .fys-cat-grid{grid-template-columns:1fr}
  .fys-resa-images{grid-template-columns:1fr}
  .fys-hero-img{max-height:240px}
  .fys-hero-meta{padding:12px 14px;gap:6px}
  .fys-pill{font-size:11px;padding:5px 10px}
  .fys-block{padding:16px 14px}
  .fys-block-head{flex-wrap:wrap}
  .fys-block-title{font-size:14.5px !important}
  .fys-img-zoom-hint{font-size:10px;padding:4px 8px;top:8px;right:8px}
  .fys-lightbox-close{top:12px;right:14px;width:38px;height:38px;font-size:22px}
}

/* FAQ */
.faq-item{border-bottom:1px solid var(--bd);padding:14px 0;cursor:pointer;user-select:none}
.faq-item:first-of-type{border-top:1px solid var(--bd)}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:500;color:#fff}
.faq-arrow{flex-shrink:0;color:var(--ink3);transition:transform .2s}
.faq-item.open .faq-arrow{transform:rotate(180deg);color:#a5b4fc}
.faq-item.open .faq-q{color:#a5b4fc}
.faq-a{font-size:13px;color:var(--ink2);line-height:1.65;padding-top:10px;display:none}
.faq-item.open .faq-a{display:block}

/* Sponsor autocomplete — ge plats under sökrutan */
.hbest-wrap #tool-sponsor .tool-panel {
  overflow: visible !important;
}
.hbest-wrap #tool-sponsor .tool-body{overflow:visible!important;}
.hbest-wrap #tool-sponsor .sp-search-wrap {
  overflow: visible !important;
}

.hbest-wrap #sp-search-wrap > svg {
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

.hbest-wrap .path h3 { font-size: 18px !important; }

/* ── Padding på alla paneler och tool-areas ── */
.hbest-wrap .tool-panel { padding: 20px 24px !important; }
.hbest-wrap .tool-body  { padding: 20px 24px !important; }
.hbest-wrap .tool-hd    { padding: 16px 24px !important; }
.hbest-wrap .sub        { padding: 20px 24px !important; }
.hbest-wrap .price-grid { padding: 0 4px !important; }

/* Klassväljare — stadier sida vid sida */
.hbest-wrap #klass-area {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
  gap: 16px !important;
  margin-top: 16px !important;
}
.hbest-wrap .ksec {
  background: rgba(15,23,42,0.4) !important;
  border: 1px solid var(--bd) !important;
  border-radius: var(--r) !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.hbest-wrap .khead {
  padding: 10px 16px !important;
  background: rgba(91,109,250,0.08) !important;
  border-bottom: 1px solid var(--bd) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  display: flex !important;
  justify-content: space-between !important;
}
.hbest-wrap .krow {
  padding: 10px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.hbest-wrap .krow:last-child { border-bottom: none !important; }

/* Klassväljare grid — stadier sida vid sida */
.hbest-wrap .klass-grid-1 { display: grid !important; grid-template-columns: 1fr !important; gap: 16px !important; margin-top: 16px !important; align-items: start !important; }
.hbest-wrap .klass-grid-2 { display: grid !important; grid-template-columns: repeat(2,1fr) !important; gap: 16px !important; margin-top: 16px !important; align-items: start !important; }
.hbest-wrap .klass-grid-3 { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 16px !important; margin-top: 16px !important; align-items: start !important; }
.hbest-wrap .ksec-card { background: rgba(15,23,42,0.5) !important; border: 1px solid rgba(91,109,250,0.22) !important; border-radius: 10px !important; overflow: hidden !important; }

/* Max-width bara på plugin-innehållet, inte hela wrappern */
.hbest-wrap { max-width: none; margin: 0; }

.hbest-page{max-width:1200px;margin:0 auto;padding:0 1.5rem 4rem}

/* Logo-wrap storlek och vit bakgrund */
.hbest-wrap #sp-logo-wrap {
  width: 140px !important;
  height: 70px !important;
  background: #ffffff !important;
  padding: 6px !important;
  border-radius: 8px !important;
  border: none !important;
}
.hbest-wrap #sp-logo-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

/* hbest-tool: dold som standard, visas via JS-klass */
.hbest-wrap .hbest-tool {
  display: none !important;
}
.hbest-wrap .hbest-tool.hbest-open {
  display: block !important;
}

/* mat-qty knappar (+/-) i förnya-panelen */
.hbest-wrap .mat-qty button {
  background: rgba(35,42,59,0.8) !important;
  color: #fff !important;
  border: 1px solid var(--bd) !important;
  border-radius: 5px !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 24px !important;
  height: 24px !important;
  font-size: 14px !important;
  padding: 0 !important;
  cursor: pointer !important;
  font-family: 'Poppins', sans-serif !important;
}
.hbest-wrap .mat-qty button:hover {
  background: rgba(91,109,250,0.15) !important;
  border-color: rgba(91,109,250,0.5) !important;
  color: #fff !important;
  box-shadow: none !important;
}

/* ── REVIEWS (clean variant utan Läs hela-toggle) ───────────────────── */
.rev-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}
@media (max-width: 720px) {
  .rev-grid { grid-template-columns: 1fr; }
}
.rev-clean {
  margin-bottom: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rev-clean .rev-q {
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink);
  font-style: italic;
}
.rev-clean .rev-author {
  font-size: 13px;
  color: var(--ink3);
  font-weight: 500;
  margin-top: auto;
}
.rev-source-link {
  text-align: center;
  font-size: 13px;
  margin: 14px 0 0 0;
}
.rev-source-link a {
  color: var(--p1);
  text-decoration: none;
  border-bottom: 1px solid rgba(162,89,236,0.3);
  padding-bottom: 1px;
  transition: border-color 0.15s;
}
.rev-source-link a:hover {
  border-bottom-color: var(--p1);
}

/* ── PARTNERS WALL (mörk sektion med vita loggor — passar dark mode) ── */
.partners-wall {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 32px 24px;
  margin-top: 32px;
  margin-bottom: 16px;
}
.partners-wall-inner {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
}
.partners-wall-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
  margin: 0 0 22px 0;
}
/* ── MARQUEE: kontinuerlig scroll, pausar på hover ─────────
   Två sets av logos (set 2 är aria-hidden duplikat) ger
   seamless infinite loop när track translateX(-50%). */
.partners-marquee {
  position: relative;
  width: 100%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
          mask-image: linear-gradient(90deg, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
}
.partners-marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 88px;
  animation: partnersMarquee 35s linear infinite;
  will-change: transform;
}
.partners-marquee:hover .partners-marquee-track {
  animation-play-state: paused;
}
@keyframes partnersMarquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* v10.70: Uniform logga-storlek — gemensam container + gemensam logo-höjd
   via object-fit:contain. Ersätter tidigare transform:scale-hack som gjorde
   loggorna olika visuella storlek. Marquee-animationen är orörd. */
.partners-marquee .plogo-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 210px;
  height: 96px;
  flex-shrink: 0;
  opacity: 0.92;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.partners-marquee .plogo-link:hover {
  opacity: 1;
  transform: scale(1.06);
}
.partners-marquee .plogo-img {
  width: auto !important;
  height: 64px !important;
  max-width: 180px !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  transition: transform 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
  .partners-marquee-track {
    animation: none;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    gap: 32px;
  }
}

@media (max-width: 640px) {
  .partners-marquee-track {
    gap: 44px;
    animation-duration: 28s;
  }
  .partners-marquee .plogo-link {
    width: 170px;
    height: 78px;
  }
  /* v10.70: skala ner logo-höjden proportionellt på mobil */
  .partners-marquee .plogo-img {
    height: 52px !important;
    max-width: 150px !important;
  }
}

/* ── v10.71/72: STATISK PARTNER-GRID ──
   Aktiveras när .partners-marquee även har klassen .partners-static.
   Animationen, sidofadeen och horisontell scroll stängs av; loggorna
   ligger i en horisontell rad (wrappar naturligt på narrow screens). */
.partners-marquee.partners-static {
  -webkit-mask-image: none;
          mask-image: none;
  overflow: visible;
}
.partners-marquee.partners-static .partners-marquee-track {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px 20px;
  width: 100%;
  margin: 0 auto;
  animation: none;
}
/* v10.72: kompaktare logo-container så alla 5 ryms i en rad på desktop */
.partners-marquee.partners-static .plogo-link {
  width: 150px !important;
  height: 76px !important;
}
.partners-marquee.partners-static .plogo-img {
  height: 44px !important;
  max-width: 130px !important;
}
/* v10.72: per-logga höjdjusteringar — kompenserar för att vissa
   logofiler har stor inbyggd transparent padding så de visuellt
   ser ut att vara ungefär lika stora som loggorna utan padding. */
.partners-marquee.partners-static .plogo-link[href*="sormlandssparbank"] .plogo-img {
  height: 52px !important;
}
.partners-marquee.partners-static .plogo-link[href*="sparbankenskaraborg"] .plogo-img {
  height: 56px !important;
}
.partners-marquee.partners-static .plogo-link[href*="swedbank"] .plogo-img {
  height: 54px !important;
}
.partners-marquee.partners-static .plogo-link[href*="gripen"] .plogo-img {
  height: 48px !important;
}
@media (max-width: 640px) {
  .partners-marquee.partners-static .partners-marquee-track {
    gap: 10px 16px;
  }
  .partners-marquee.partners-static .plogo-link {
    width: 112px !important;
    height: 60px !important;
  }
  .partners-marquee.partners-static .plogo-img {
    height: 34px !important;
    max-width: 96px !important;
  }
  .partners-marquee.partners-static .plogo-link[href*="sormlandssparbank"] .plogo-img { height: 40px !important; }
  .partners-marquee.partners-static .plogo-link[href*="sparbankenskaraborg"] .plogo-img { height: 44px !important; }
  .partners-marquee.partners-static .plogo-link[href*="swedbank"] .plogo-img { height: 42px !important; }
  .partners-marquee.partners-static .plogo-link[href*="gripen"] .plogo-img { height: 38px !important; }
}

/* ── Stepper: framtida steg (Kassa, syns men inte aktivt) ──────────── */
.hbest-wrap .stepbar .step-future {
  opacity: 0.4;
}
.hbest-wrap .stepbar .step-future .step-n {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.25);
  color: rgba(255,255,255,0.45);
}

/* ═══════════════════════════════════════════════════════════
   SÅ HÄR FUNGERAR DET — pro 4-stegs timeline med större numbers + SVG-ikoner
   ═══════════════════════════════════════════════════════════ */
.how-it-works .hiw-steps{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:18px;
  position:relative;
}
.how-it-works .hiw-steps::before{
  /* Förbindelse-linje mellan stegen — subtil gradient */
  content:'';
  position:absolute;
  top:42px;left:10%;right:10%;height:2px;
  background:linear-gradient(90deg,
    rgba(162,89,236,0) 0%,
    rgba(162,89,236,0.4) 15%,
    rgba(91,109,250,0.5) 50%,
    rgba(29,158,117,0.4) 85%,
    rgba(29,158,117,0) 100%);
  z-index:0;
  border-radius:2px;
}
.how-it-works .hiw-step{
  position:relative;z-index:1;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.01));
  border:1px solid var(--bd);
  border-radius:var(--r);
  padding:32px 20px 22px;
  text-align:center;
  transition:transform 0.25s cubic-bezier(0.4,0,0.2,1),
             border-color 0.25s ease,
             box-shadow 0.25s ease;
}
.how-it-works .hiw-step:hover{
  transform:translateY(-6px);
  border-color:rgba(162,89,236,0.5);
  box-shadow:0 18px 40px -16px rgba(91,109,250,0.35);
}
.how-it-works .hiw-num{
  width:48px;height:48px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--p1),var(--p2));
  color:#fff;font-weight:700;font-size:18px;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 16px;
  box-shadow:0 8px 24px -4px rgba(91,109,250,0.45),
             0 0 0 4px rgba(15,23,42,1);
  letter-spacing:-0.02em;
}
.how-it-works .hiw-svg{
  color:#a5b4fc;
  margin:0 auto 12px;
  width:32px;height:32px;
  display:flex;align-items:center;justify-content:center;
  opacity:0.85;
  transition:opacity 0.2s ease, transform 0.2s ease, color 0.2s ease;
}
.how-it-works .hiw-step:hover .hiw-svg{
  opacity:1;
  transform:scale(1.1);
  color:#fff;
}
.how-it-works .hiw-step h4{
  font-size:14.5px;font-weight:600;
  color:var(--ink);margin:0 0 8px;
  letter-spacing:0.01em;
  line-height:1.3;
}
.how-it-works .hiw-step p{
  font-size:12.5px;color:var(--ink3);
  line-height:1.5;margin:0;
}
.how-it-works .hiw-step p strong{
  color:var(--ink2);font-weight:600;
}
@media (max-width:900px){
  .how-it-works .hiw-steps{grid-template-columns:repeat(2,1fr);gap:14px}
  .how-it-works .hiw-steps::before{display:none}
}
@media (max-width:560px){
  .how-it-works .hiw-steps{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════
   FEATURES GRID — Vad ingår i licensen (3-kolumns icon-grid)
   Mycket mer kompakt än gamla accordion-listan. Modern + cool.
   ═══════════════════════════════════════════════════════════ */
.features-section .feat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:16px;
}
.features-section .feat-card{
  position:relative;
  background:linear-gradient(180deg,rgba(255,255,255,0.035),rgba(255,255,255,0.01));
  border:1px solid var(--bd);
  border-radius:14px;
  padding:20px 18px 18px;
  transition:transform 0.25s cubic-bezier(0.4,0,0.2,1),
             border-color 0.25s ease,
             box-shadow 0.25s ease;
}
.features-section .feat-card:hover{
  transform:translateY(-4px);
  border-color:rgba(91,109,250,0.40);
  box-shadow:0 16px 32px -12px rgba(91,109,250,0.30);
}
.features-section .feat-icon{
  width:44px;height:44px;
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(29,158,117,0.18),rgba(29,158,117,0.06));
  border:1px solid rgba(29,158,117,0.30);
  color:#6ee7b7;
  margin-bottom:14px;
  transition:transform 0.2s ease;
}
.features-section .feat-card:hover .feat-icon{
  transform:scale(1.08);
}
.features-section .feat-icon-coming{
  background:linear-gradient(135deg,rgba(162,89,236,0.18),rgba(91,109,250,0.10));
  border-color:rgba(91,109,250,0.30);
  color:#a5b4fc;
}
.features-section .feat-title{
  font-size:14px;font-weight:600;
  color:var(--ink);margin:0 0 6px;
  letter-spacing:0.01em;
  line-height:1.3;
}
.features-section .feat-desc{
  font-size:12.5px;color:var(--ink3);
  line-height:1.5;margin:0;
}
.features-section .feat-card-coming{
  background:linear-gradient(180deg,rgba(162,89,236,0.04),rgba(91,109,250,0.02));
}
.features-section .feat-badge{
  position:absolute;top:14px;right:14px;
  font-size:9.5px;font-weight:600;
  letter-spacing:0.06em;
  text-transform:uppercase;
  padding:3px 8px;
  background:linear-gradient(135deg,rgba(162,89,236,0.22),rgba(91,109,250,0.18));
  border:1px solid rgba(91,109,250,0.40);
  border-radius:999px;
  color:#a5b4fc;
}
.features-section .feat-support{
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:14px;
  padding:18px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,0.025),rgba(255,255,255,0.01));
  border:1px solid var(--bd);
  border-radius:14px;
  transition:border-color 0.2s ease;
}
.features-section .feat-support:hover{
  border-color:rgba(91,109,250,0.40);
}
.features-section .feat-support .feat-icon{margin-bottom:0;flex-shrink:0}
.features-section .feat-support .feat-title{margin-bottom:4px}
.features-section .feat-support a{
  color:var(--gt);
  text-decoration:none;
  border-bottom:1px solid rgba(110,231,183,0.35);
}
.features-section .feat-support a:hover{
  border-bottom-color:var(--gt);
}
@media (max-width:900px){
  .features-section .feat-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .features-section .feat-grid{grid-template-columns:1fr;gap:10px}
  .features-section .feat-card{padding:16px 14px}
  .features-section .feat-support{flex-direction:row;padding:14px 16px}
}

/* ═══════════════════════════════════════════════════════════
   FAQ — vanliga frågor (accordion via <details>) — 2 kategorier
   ═══════════════════════════════════════════════════════════ */
.faq-section .faq-cats{
  display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:14px;
}
.faq-section .faq-cat-title{
  font-family:'Poppins',sans-serif;
  font-size:13px;font-weight:600;
  letter-spacing:0.06em;text-transform:uppercase;
  color:#a5b4fc;
  margin:0 0 12px 0;
  padding-bottom:8px;
  border-bottom:1px solid rgba(165,180,252,0.18);
}
.faq-section .faq-list{
  display:flex;flex-direction:column;gap:8px;
}
.faq-section .faq-item{
  background:var(--sf);
  border:1px solid var(--bd);
  border-radius:var(--rs);
  transition:border-color 0.2s ease;
}
.faq-section .faq-item:hover{border-color:rgba(91,109,250,0.35)}
.faq-section .faq-item[open]{
  border-color:rgba(91,109,250,0.40);
  background:linear-gradient(180deg,rgba(162,89,236,0.04),var(--sf));
}
.faq-section .faq-item summary{
  list-style:none;cursor:pointer;
  padding:14px 18px;
  font-size:14px;font-weight:500;color:var(--ink);
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  font-family:'Poppins',sans-serif;
}
.faq-section .faq-item summary::-webkit-details-marker{display:none}
.faq-section .faq-item summary::after{
  content:'';flex-shrink:0;
  width:10px;height:10px;
  border-right:1.5px solid var(--ink3);
  border-bottom:1.5px solid var(--ink3);
  transform:rotate(45deg);
  transition:transform 0.2s ease,border-color 0.2s ease;
  margin-top:-3px;
}
.faq-section .faq-item[open] summary::after{
  transform:rotate(-135deg);margin-top:3px;
  border-color:#a5b4fc;
}
.faq-section .faq-answer{
  padding:0 18px 16px;
  font-size:13px;line-height:1.65;color:var(--ink2);
}
.faq-section .faq-answer strong{color:var(--ink);font-weight:600}

/* (Sticky CTA borttagen — användaren ville inte ha den) */

/* ═══════════════════════════════════════════════════════════
   MOBILE RESPONSIVE — säkerställ att allt syns korrekt
   ═══════════════════════════════════════════════════════════ */
@media (max-width:768px){
  /* Hero: mindre rubrik, mindre padding */
  .hero{padding:2rem 0 1.5rem}
  .hbest-wrap h1{font-size:30px}
  .hero-sub{font-size:14px}
  .trust-row{gap:6px}
  .tp{font-size:11px;padding:4px 10px}

  /* Sponsor-banner: stacka vertikalt */
  .sponsor-banner{flex-wrap:wrap;padding:14px 16px}
  .sponsor-banner .sb-icon{font-size:20px}
  .sponsor-banner .sb-text strong{font-size:13px;line-height:1.4}
  .sponsor-banner .sb-text span{font-size:12px}
  .sponsor-banner .sb-arrow{display:none}

  /* Pris-cards: stacka vertikalt */
  .price-grid{grid-template-columns:1fr;gap:10px}

  /* Vad ingår: full bredd */
  .inc-item{padding:12px 14px}
  .inc-title{font-size:14px}
  .inc-sub{font-size:12px;margin-top:3px}
  .inc-badge{font-size:9px;padding:2px 7px}

  /* Stepper-text: text alltid synlig på mobil */
  .stepbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* Testimonials: 1 kolumn */
  .rev-grid{grid-template-columns:1fr;gap:12px}

  /* Partners marquee: snabbare animation, mindre containers redan från tidigare */

  /* FAQ: lite mindre + kategorier stackar */
  .faq-section .faq-cats{grid-template-columns:1fr;gap:24px}
  .faq-section .faq-item summary{padding:12px 14px;font-size:13px}
  .faq-section .faq-answer{padding:0 14px 14px;font-size:12.5px}

  /* Primary CTA: dölj andra meningen på mobil (v10.40) */
  .cta-hide-mobile{display:none}

  /* Generell: alla sec mindre padding */
  .sec{padding:1.5rem 0}

  /* Sekundära CTA-cards: stack vertikalt så texten inte trasas sönder */
  .hbest-wrap [style*="grid-template-columns:1fr 1fr"],
  .hbest-wrap [style*="grid-template-columns: 1fr 1fr"]{
    grid-template-columns:1fr !important;
  }

  /* Primary CTA-kort "Se pris för er skola": text wrap utan overflow */
  .path p,
  .hbest-wrap .path p{
    max-width:100% !important;
    word-break:normal;
    overflow-wrap:break-word;
  }
  .path{padding:1.25rem 1.25rem !important}

  /* "Se pris" card: beräkna-knappen full bredd så den inte trycks bredvid */
  .path #path-new + div,
  .path[id="path-new"] > div > div:last-child{
    margin-top:10px;
  }

  /* "Vad ingår"-titles får inte ha hård radbrytning på mobil */
  .inc-title{word-break:normal;overflow-wrap:break-word;hyphens:none}
}
@media (max-width:480px){
  .hbest-wrap h1{font-size:26px;line-height:1.15}
  .eyebrow{font-size:11px;padding:4px 10px}
}

/* — Sekundär hero-CTA (v10.51) — */
.hbest-wrap .btn-hero-alt{
  padding:13px 22px;
  background:transparent;
  color:#fff;
  border:1.5px solid rgba(91,109,250,0.4);
  border-radius:var(--r);
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  font-family:'Poppins',sans-serif;
  transition:background .15s, border-color .15s;
}
.hbest-wrap .btn-hero-alt:hover{
  background:rgba(91,109,250,0.10);
  border-color:rgba(91,109,250,0.7);
}

/* — Renare beslutssida (v10.52) — */
.hbest-wrap .hero-trust-line{
  font-size:12px;
  color:var(--ink3);
  margin-top:-8px;
  margin-bottom:14px;
}
.hbest-wrap .fys-cat{ padding:10px 12px; }
.hbest-wrap .fys-cat-name{ font-size:13px; }
.hbest-wrap .fys-cat-list{ font-size:11.5px; line-height:1.5; }
.hbest-wrap .rev-stars{ opacity:0.85; }
.hbest-wrap .schools-marquee-eyebrow{ opacity:0.85; }
.hbest-wrap .schools-marquee-note{ opacity:0.85; }


/* =================================================================
   v4 KÖPMODUL — Session 2 (v10.54)
   Port av bli-en-heroskola-v4.html-mockup.
   Allt scopat under .hbest-wrap. Använder live-variabler där möjligt.
   Befintlig CSS ovan är OFÖRÄNDRAD.
   Användas av v4-HTML/JS som läggs in i Session 3-4.
   ================================================================= */

/* ── Trygghets-pills i hero ── */
.hbest-wrap .bestall-hero-checks{list-style:none!important;padding:0!important;margin:14px 0 18px!important;display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important}
.hbest-wrap .bestall-hero-checks li{font-size:13px!important;color:var(--ink2)!important;display:inline-flex!important;align-items:center!important;gap:6px!important}
.hbest-wrap .bestall-hero-checks li::before{content:"\2713";color:var(--gt)!important;font-weight:700!important;font-size:12px!important}

/* ── DECISION CARDS (tre valkort under hero) ── */
.hbest-wrap .decision-section{padding:24px 0 36px!important}
.hbest-wrap .decision-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important;align-items:stretch!important}
@media (max-width:960px){.hbest-wrap .decision-grid{grid-template-columns:1fr!important}}
.hbest-wrap .decision-card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015))!important;border:1px solid var(--bd)!important;border-radius:var(--r)!important;padding:22px 20px 20px!important;display:flex!important;flex-direction:column!important;gap:10px!important;text-decoration:none!important;color:inherit!important;transition:border-color .2s ease,background .2s ease,transform .2s ease!important;position:relative!important;overflow:hidden!important;cursor:pointer!important;height:100%!important}
.hbest-wrap .decision-card:hover{border-color:rgba(91,109,250,.45)!important;transform:translateY(-2px)!important;background:linear-gradient(180deg,rgba(91,109,250,.07),rgba(255,255,255,.02))!important}
.hbest-wrap .decision-card.is-featured{border-color:rgba(91,109,250,.45)!important;background:linear-gradient(180deg,rgba(91,109,250,.10),rgba(162,89,236,.04))!important;box-shadow:0 12px 36px rgba(91,109,250,.18)!important}
/* v10.55: Förhindra WP-temats :visited-färg på decision-cards */
.hbest-wrap .decision-card:visited,.hbest-wrap .decision-card:active{color:inherit!important;text-decoration:none!important}
.hbest-wrap .decision-card:visited h3{color:var(--ink)!important}
.hbest-wrap .decision-card:visited p,.hbest-wrap .decision-card:visited .sub{color:var(--ink2)!important}
.hbest-wrap .decision-card:visited .arrow{color:#a5b4fc!important}
.hbest-wrap .decision-card:focus,.hbest-wrap .decision-card:focus-visible{outline:2px solid rgba(91,109,250,.5)!important;outline-offset:2px!important;color:inherit!important}
.hbest-wrap .decision-card-icon{width:40px!important;height:40px!important;border-radius:10px!important;background:linear-gradient(135deg,rgba(162,89,236,.20),rgba(91,109,250,.14))!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#a5b4fc!important;flex-shrink:0!important;box-shadow:0 0 0 1px rgba(91,109,250,.2) inset!important}
.hbest-wrap .decision-card-icon svg{width:20px!important;height:20px!important;stroke:currentColor!important;fill:none!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.hbest-wrap .decision-card h3{margin:4px 0 0!important;font-size:17px!important;font-weight:700!important;color:var(--ink)!important;line-height:1.3!important;letter-spacing:-.01em!important}
.hbest-wrap .decision-card .sub{margin:2px 0 0!important;font-size:12.5px!important;color:var(--ink3)!important}
.hbest-wrap .decision-card p{margin:0!important;font-size:13.5px!important;color:var(--ink2)!important;line-height:1.55!important;flex:1!important}
.hbest-wrap .decision-card .arrow{font-size:13.5px!important;font-weight:600!important;color:#a5b4fc!important;display:flex!important;align-items:center!important;gap:6px!important;margin-top:6px!important}
.hbest-wrap .decision-card .arrow svg{width:13px!important;height:13px!important;stroke:currentColor!important;fill:none!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .2s ease!important}
.hbest-wrap .decision-card:hover .arrow svg{transform:translateX(3px)!important}

/* ── PRISÖVERSIKT (centrerat, jämn höjd) ── */
.hbest-wrap .price-note-12m{text-align:center!important;font-size:13.5px!important;color:var(--ink2)!important;margin:18px auto 0!important;max-width:620px!important;line-height:1.55!important}
.hbest-wrap .price-note-12m strong{color:var(--ink)!important;font-weight:600!important}

/* ── KÖPMODUL — kalkylator-container ── */
.hbest-wrap .calc-module-section{padding:36px 0!important;position:relative!important}
.hbest-wrap .calc-module{max-width:1080px!important;margin:0 auto!important;background:linear-gradient(135deg,rgba(91,109,250,.10),rgba(162,89,236,.04))!important;border:1px solid rgba(91,109,250,.32)!important;border-radius:20px!important;padding:40px 36px!important;box-shadow:0 24px 56px rgba(15,23,42,.45),0 0 0 1px rgba(255,255,255,.03) inset!important;position:relative!important;overflow:hidden!important}
.hbest-wrap .calc-module::before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(700px 360px at 50% 0%,rgba(91,109,250,.16),transparent 60%)!important;pointer-events:none!important}
.hbest-wrap .calc-module > *{position:relative!important}
@media (max-width:680px){.hbest-wrap .calc-module{padding:28px 22px!important}}

.hbest-wrap .calc-head{text-align:center!important;margin-bottom:28px!important}
.hbest-wrap .calc-head .eyebrow{font-size:11px!important;font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:#a5b4fc!important;margin-bottom:8px!important;display:block!important}
.hbest-wrap .calc-head h2{font-size:clamp(24px,3vw,32px)!important;font-weight:700!important;line-height:1.2!important;letter-spacing:-.02em!important;margin:0 0 10px!important;color:var(--ink)!important}
.hbest-wrap .calc-head p{font-size:15px!important;color:var(--ink2)!important;margin:0 auto!important;max-width:540px!important;line-height:1.55!important}

/* ── TABS ── */
.hbest-wrap .calc-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:6px!important;background:rgba(0,0,0,.32)!important;border:1px solid var(--bd)!important;border-radius:14px!important;margin:0 auto 26px!important;max-width:600px!important}
.hbest-wrap .calc-tab{padding:13px 16px!important;border-radius:10px!important;border:none!important;background:transparent!important;cursor:pointer!important;font-family:inherit!important;font-size:14px!important;font-weight:600!important;color:var(--ink3)!important;letter-spacing:.01em!important;text-align:center!important;line-height:1.3!important;transition:background .15s ease,color .15s ease,box-shadow .15s ease!important;text-transform:none!important}
.hbest-wrap .calc-tab:hover{color:var(--ink)!important;background:rgba(255,255,255,.04)!important}
.hbest-wrap .calc-tab.is-active{background:linear-gradient(135deg,var(--p1),var(--p2))!important;color:#fff!important;box-shadow:0 6px 18px rgba(91,109,250,.32)!important}
.hbest-wrap .calc-tab .sub{display:block!important;font-size:11px!important;font-weight:500!important;opacity:.78!important;margin-top:2px!important}
@media (max-width:520px){.hbest-wrap .calc-tabs{grid-template-columns:1fr!important;gap:6px!important}}

.hbest-wrap .pane-notice{font-size:13.5px!important;color:var(--ink2)!important;background:rgba(91,109,250,.08)!important;border:1px solid rgba(91,109,250,.22)!important;border-radius:10px!important;padding:13px 16px!important;line-height:1.55!important;margin-bottom:22px!important}
.hbest-wrap .pane-notice strong{color:var(--ink)!important;font-weight:600!important}

.hbest-wrap .calc-grid{display:grid!important;grid-template-columns:1.4fr 1fr!important;gap:32px!important;align-items:start!important}
@media (max-width:880px){.hbest-wrap .calc-grid{grid-template-columns:1fr!important;gap:24px!important}}

.hbest-wrap .calc-pane{display:none!important}
.hbest-wrap .calc-pane.is-active{display:block!important}

.hbest-wrap .calc-field{margin-bottom:20px!important}
.hbest-wrap .calc-field > label,.hbest-wrap .calc-field .field-label{display:block!important;font-size:12.5px!important;font-weight:600!important;color:#a5b4fc!important;letter-spacing:.04em!important;text-transform:uppercase!important;margin-bottom:9px!important}
.hbest-wrap .calc-field .field-hint{font-size:12px!important;color:var(--ink3)!important;margin-top:5px!important;line-height:1.5!important}
.hbest-wrap .calc-field .field-hint strong{color:#a5b4fc!important;font-weight:600!important}

/* ── STADIE-CHECKBOXES ── */
.hbest-wrap .stadie-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important}
@media (max-width:520px){.hbest-wrap .stadie-grid{grid-template-columns:1fr!important}}
.hbest-wrap .stadie-option{display:flex!important;align-items:center!important;gap:10px!important;padding:13px!important;background:rgba(255,255,255,.04)!important;border:1px solid var(--bd)!important;border-radius:10px!important;cursor:pointer!important;transition:border-color .15s ease,background .15s ease!important}
.hbest-wrap .stadie-option:hover{border-color:rgba(91,109,250,.4)!important}
.hbest-wrap .stadie-option input[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;width:18px!important;height:18px!important;border-radius:5px!important;background:rgba(0,0,0,.32)!important;border:1.5px solid rgba(255,255,255,.22)!important;cursor:pointer!important;flex-shrink:0!important;display:grid!important;place-items:center!important;transition:all .15s ease!important;margin:0!important}
.hbest-wrap .stadie-option input[type="checkbox"]:checked{background:linear-gradient(135deg,var(--p1),var(--p2))!important;border-color:var(--p2)!important;box-shadow:0 0 0 1px rgba(91,109,250,.4),0 4px 12px rgba(91,109,250,.32)!important}
.hbest-wrap .stadie-option input[type="checkbox"]:checked::after{content:""!important;width:9px!important;height:5px!important;border-left:2px solid #fff!important;border-bottom:2px solid #fff!important;transform:rotate(-45deg) translate(1px,-1px)!important}
.hbest-wrap .stadie-option:has(input:checked){background:rgba(91,109,250,.12)!important;border-color:rgba(91,109,250,.45)!important}
.hbest-wrap .stadie-option .label-text{font-size:14px!important;color:var(--ink)!important;font-weight:500!important;line-height:1.3!important}
.hbest-wrap .stadie-option .label-text .age{display:block!important;font-size:11px!important;color:var(--ink3)!important;font-weight:400!important;margin-top:2px!important}

/* ── KLASS-SAMMANFATTNING ── */
/* v10.69: Transparent container + två separata stat-kort istället för chips/blå kapsel.
   Målet: ska inte se ut som ett ifyllt blått inputfält. */
.hbest-wrap .klass-summary{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;padding:0!important;background:transparent!important;border:none!important;border-radius:0!important}
.hbest-wrap .klass-summary .klass-lead{font-size:12.5px!important;color:var(--ink3)!important;line-height:1.5!important;margin:0!important}
.hbest-wrap .klass-stat-cards{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:10px!important}
.hbest-wrap .klass-stat-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:2px!important;padding:14px 16px!important;background:rgba(255,255,255,.025)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:10px!important;min-width:0!important}
.hbest-wrap .klass-stat-card .klass-stat-num{font-size:22px!important;font-weight:700!important;color:var(--ink)!important;line-height:1.15!important;letter-spacing:-.01em!important}
.hbest-wrap .klass-stat-card .klass-stat-num span{font-weight:700!important;color:var(--ink)!important}
.hbest-wrap .klass-stat-card .klass-stat-label{font-size:12px!important;font-weight:500!important;color:var(--ink3)!important;letter-spacing:.02em!important;text-transform:none!important}
.hbest-wrap .klass-actions{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:14px!important;margin-top:2px!important}
.hbest-wrap .klass-summary .elev-edit{display:inline-flex!important;align-items:center!important;gap:5px!important;font-size:12.5px!important;color:#a5b4fc!important;text-decoration:none!important;border-bottom:1px dashed rgba(165,180,252,.45)!important;cursor:pointer!important;font-weight:500!important;padding-bottom:1px!important}
.hbest-wrap .klass-summary .elev-edit:hover{color:var(--ink)!important;border-bottom-color:var(--ink)!important}
.hbest-wrap .klass-summary .toggle{display:inline-flex!important;align-items:center!important;gap:8px!important;background:rgba(91,109,250,.16)!important;border:1px solid rgba(91,109,250,.36)!important;color:#a5b4fc!important;font-family:inherit!important;font-size:12.5px!important;font-weight:600!important;padding:9px 14px!important;border-radius:9px!important;cursor:pointer!important;transition:all .15s ease!important;text-transform:none!important;letter-spacing:normal!important;flex-shrink:0!important}
.hbest-wrap .klass-summary .toggle:hover{background:rgba(91,109,250,.24)!important;color:var(--ink)!important;border-color:rgba(91,109,250,.5)!important}
.hbest-wrap .klass-summary .toggle svg{width:13px!important;height:13px!important;stroke:currentColor!important;fill:none!important;stroke-width:2.2!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .2s ease!important}
.hbest-wrap .klass-summary .toggle.is-open svg{transform:rotate(90deg)!important}
/* v10.69: Tom-state-ruta som visas när inget stadium är valt.
   OBS: display utan !important så JS kan dölja med inline style="display:none". */
.hbest-wrap .calc-empty-state{display:flex;align-items:flex-start!important;gap:10px!important;margin-top:14px!important;padding:14px 16px!important;background:rgba(255,255,255,.025)!important;border:1px dashed rgba(255,255,255,.14)!important;border-radius:10px!important;color:var(--ink2)!important;font-size:13.5px!important;line-height:1.5!important}
.hbest-wrap .calc-empty-state svg{flex-shrink:0!important;color:#a5b4fc!important;margin-top:1px!important}
.hbest-wrap .calc-empty-state span{flex:1!important;min-width:0!important}

/* ── ELEV-EDIT INLINE ── */
.hbest-wrap .elev-inline{display:none!important;align-items:center!important;gap:10px!important;margin-top:10px!important;padding:10px 14px!important;background:rgba(0,0,0,.18)!important;border:1px solid rgba(91,109,250,.22)!important;border-radius:10px!important}
.hbest-wrap .elev-inline.is-open{display:flex!important}
.hbest-wrap .elev-inline label{font-size:13px!important;color:var(--ink2)!important;font-weight:500!important}
.hbest-wrap .elev-inline .reset-link{font-size:12px!important;color:var(--ink3)!important;text-decoration:none!important;border-bottom:1px dashed rgba(255,255,255,.25)!important;cursor:pointer!important}
.hbest-wrap .elev-inline .reset-link:hover{color:var(--ink)!important}

/* ── PER-ÅRSKURS PANEL ── */
.hbest-wrap .per-year-panel{display:none!important;margin-top:12px!important;padding:16px!important;background:rgba(0,0,0,.18)!important;border:1px solid rgba(91,109,250,.22)!important;border-radius:12px!important}
.hbest-wrap .per-year-panel.is-open{display:block!important}
.hbest-wrap .per-year-cols{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:14px!important}
.hbest-wrap .per-year-stadium .stadium-label{font-size:11px!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#a5b4fc!important;margin-bottom:9px!important;display:flex!important;align-items:center!important;gap:8px!important}
.hbest-wrap .per-year-stadium .stadium-label::before{content:""!important;width:5px!important;height:5px!important;border-radius:50%!important;background:var(--p2)!important;box-shadow:0 0 10px var(--p2)!important}
.hbest-wrap .per-year-stadium .year-rows{display:flex!important;flex-direction:column!important;gap:6px!important}
.hbest-wrap .per-year-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important;padding:6px 9px!important;background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:8px!important}
.hbest-wrap .per-year-row .year-label{font-size:12.5px!important;color:var(--ink2)!important;font-weight:500!important}
.hbest-wrap .per-year-reset{display:block!important;margin-top:12px!important;font-size:12px!important;color:var(--ink3)!important;text-decoration:none!important;border-bottom:1px dashed rgba(255,255,255,.25)!important;cursor:pointer!important;width:fit-content!important}
.hbest-wrap .per-year-reset:hover{color:var(--ink)!important}

/* ── NUMBER INPUT ── */
.hbest-wrap .calc-number{display:flex!important;align-items:center!important;background:rgba(0,0,0,.32)!important;border:1px solid var(--bd)!important;border-radius:10px!important;width:fit-content!important;overflow:hidden!important}
.hbest-wrap .calc-number button{background:transparent!important;border:none!important;color:#a5b4fc!important;font-size:17px!important;font-weight:600!important;cursor:pointer!important;width:40px!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:background .15s ease!important;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important}
.hbest-wrap .calc-number button:hover:not(:disabled){background:rgba(91,109,250,.18)!important;color:var(--ink)!important}
.hbest-wrap .calc-number button:disabled{opacity:.35!important;cursor:not-allowed!important}
.hbest-wrap .calc-number input{width:60px!important;height:44px!important;border:none!important;background:transparent!important;color:#fff!important;-webkit-text-fill-color:#fff!important;caret-color:#fff!important;font-family:inherit!important;font-size:15px!important;font-weight:600!important;text-align:center!important;-moz-appearance:textfield!important;appearance:textfield!important}
.hbest-wrap .calc-number input::-webkit-outer-spin-button,.hbest-wrap .calc-number input::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important}
.hbest-wrap .per-year-row .calc-number{height:34px!important}
.hbest-wrap .per-year-row .calc-number button{width:28px!important;height:34px!important;font-size:14px!important;padding:0!important;line-height:1!important}
.hbest-wrap .per-year-row .calc-number input{width:46px!important;height:34px!important;font-size:14px!important;padding:0!important;line-height:1!important;text-indent:0!important;min-width:46px!important}

/* ── MATERIAL — HERO BOX + Affischer ── */
.hbest-wrap .material-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;margin-top:6px!important;align-items:stretch!important}
.hbest-wrap .material-grid.is-single{grid-template-columns:1fr!important}
@media (max-width:680px){.hbest-wrap .material-grid{grid-template-columns:1fr!important}}
.hbest-wrap .material-card{background:rgba(255,255,255,.04)!important;border:1px solid var(--bd)!important;border-radius:14px!important;padding:16px!important;display:flex!important;flex-direction:column!important;gap:11px!important;height:100%!important}
.hbest-wrap .material-card .head{display:flex!important;align-items:flex-start!important;gap:11px!important;flex:1!important}
.hbest-wrap .material-card .icon{width:34px!important;height:34px!important;border-radius:9px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}
.hbest-wrap .material-card .icon.is-box{background:rgba(255,180,80,.18)!important;color:#ffd599!important}
.hbest-wrap .material-card .icon.is-aff{background:rgba(91,109,250,.22)!important;color:#a5b4fc!important}
.hbest-wrap .material-card .icon svg{width:17px!important;height:17px!important;stroke:currentColor!important;fill:none!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.hbest-wrap .material-card h4{margin:0 0 3px!important;font-size:14px!important;font-weight:700!important;color:var(--ink)!important;line-height:1.3!important}
.hbest-wrap .material-card .head p{margin:0!important;font-size:12.5px!important;color:var(--ink2)!important;line-height:1.5!important}
.hbest-wrap .material-card .meta{font-size:11.5px!important;color:var(--ink3)!important;line-height:1.5!important}
.hbest-wrap .material-card .qty-row{display:flex!important;align-items:center!important;gap:11px!important;flex-wrap:wrap!important;padding-top:11px!important;border-top:1px solid rgba(255,255,255,.06)!important;margin-top:auto!important}
.hbest-wrap .material-card .qty-row .total{font-size:12.5px!important;color:var(--ink2)!important;font-weight:500!important}
.hbest-wrap .material-card .qty-row .total strong{color:var(--ink)!important;font-weight:600!important}

/* ── STARTDATUM-RADIOS ── */
.hbest-wrap .startdate-grid{display:flex!important;flex-direction:column!important;gap:8px!important}
.hbest-wrap .startdate-option{display:flex!important;align-items:center!important;gap:11px!important;padding:11px 14px!important;background:rgba(255,255,255,.04)!important;border:1px solid var(--bd)!important;border-radius:10px!important;cursor:pointer!important;transition:border-color .15s ease,background .15s ease!important}
.hbest-wrap .startdate-option:hover{border-color:rgba(91,109,250,.4)!important}
.hbest-wrap .startdate-option input[type="radio"]{appearance:none!important;-webkit-appearance:none!important;width:18px!important;height:18px!important;border-radius:50%!important;background:rgba(0,0,0,.32)!important;border:1.5px solid rgba(255,255,255,.22)!important;cursor:pointer!important;flex-shrink:0!important;display:grid!important;place-items:center!important;transition:all .15s ease!important;margin:0!important}
.hbest-wrap .startdate-option input[type="radio"]:checked{border-color:var(--p2)!important}
.hbest-wrap .startdate-option input[type="radio"]:checked::after{content:""!important;width:9px!important;height:9px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--p1),var(--p2))!important;box-shadow:0 0 12px rgba(91,109,250,.5)!important}
.hbest-wrap .startdate-option:has(input:checked){background:rgba(91,109,250,.12)!important;border-color:rgba(91,109,250,.45)!important}
.hbest-wrap .startdate-option .label-text{font-size:14px!important;color:var(--ink)!important;font-weight:500!important}
.hbest-wrap .startdate-option .label-text .sub{display:block!important;font-size:12px!important;color:var(--ink3)!important;font-weight:400!important;margin-top:2px!important}
.hbest-wrap .custom-date-row{margin-top:4px!important;display:none!important}
.hbest-wrap .custom-date-row.is-visible{display:block!important}
.hbest-wrap .custom-date-row input[type="date"]{font-family:inherit!important;font-size:14px!important;padding:11px 14px!important;background:rgba(0,0,0,.32)!important;border:1px solid rgba(91,109,250,.32)!important;border-radius:10px!important;color:var(--ink)!important;width:100%!important;color-scheme:dark!important;box-sizing:border-box!important}

/* ── SUMMARY ── */
.hbest-wrap .calc-summary{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015))!important;border:1px solid rgba(91,109,250,.32)!important;border-radius:16px!important;padding:22px!important;position:sticky!important;top:20px!important;box-shadow:0 12px 36px rgba(15,23,42,.4)!important}
@media (max-width:880px){.hbest-wrap .calc-summary{position:static!important}}
.hbest-wrap .calc-summary h3{margin:0 0 14px!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:#a5b4fc!important;display:flex!important;align-items:center!important;gap:9px!important}
.hbest-wrap .calc-summary h3::before{content:""!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--p2)!important;box-shadow:0 0 12px var(--p2)!important}
.hbest-wrap .summary-row{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;padding:7px 0!important;font-size:13.5px!important;color:var(--ink2)!important;line-height:1.5!important}
.hbest-wrap .summary-row.is-muted{color:var(--ink3)!important;font-size:12.5px!important}
.hbest-wrap .summary-row .label{flex:1!important}
.hbest-wrap .summary-row .value{color:var(--ink)!important;font-weight:600!important;text-align:right!important}
.hbest-wrap .summary-divider{height:1px!important;background:rgba(255,255,255,.08)!important;margin:11px 0!important}
.hbest-wrap .summary-total{display:flex!important;justify-content:space-between!important;align-items:baseline!important;padding:14px 0 6px!important;border-top:1px solid rgba(91,109,250,.32)!important;margin-top:8px!important}
.hbest-wrap .summary-total .label{font-size:12.5px!important;font-weight:700!important;letter-spacing:.10em!important;text-transform:uppercase!important;color:#a5b4fc!important}
.hbest-wrap .summary-total .value{font-size:26px!important;font-weight:700!important;color:var(--ink)!important;letter-spacing:-.01em!important}
.hbest-wrap .summary-total .value .unit{font-size:12.5px!important;font-weight:500!important;color:var(--ink2)!important;margin-left:4px!important}
.hbest-wrap .summary-per-elev{font-size:12px!important;color:var(--ink3)!important;text-align:right!important;padding:4px 0 0!important;line-height:1.5!important;margin:0!important}
.hbest-wrap .summary-per-elev strong{color:#a5b4fc!important;font-weight:600!important}
.hbest-wrap .summary-year2{font-size:11.5px!important;color:var(--ink3)!important;text-align:center!important;padding:10px 0 0!important;line-height:1.55!important;border-top:1px dashed rgba(255,255,255,.08)!important;margin:10px 0 0!important}
.hbest-wrap .summary-cta{margin-top:14px!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.hbest-wrap .summary-cta .btn-cta-primary{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:14px 20px!important;border-radius:11px!important;font-family:inherit!important;font-size:14.5px!important;font-weight:600!important;color:#fff!important;background:linear-gradient(135deg,var(--p1),var(--p2))!important;box-shadow:0 10px 28px rgba(91,109,250,.42)!important;text-decoration:none!important;border:none!important;cursor:pointer!important;transition:transform .15s ease,box-shadow .25s ease,opacity .15s ease!important;text-align:center!important;line-height:1.2!important;text-transform:none!important;letter-spacing:normal!important}
.hbest-wrap .summary-cta .btn-cta-primary:hover:not(.is-disabled){transform:translateY(-1px)!important;box-shadow:0 14px 36px rgba(91,109,250,.55)!important}
.hbest-wrap .summary-cta .btn-cta-primary.is-disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important;background:rgba(91,109,250,.2)!important;box-shadow:none!important}
.hbest-wrap .summary-cta .btn-cta-primary svg{width:14px!important;height:14px!important;stroke:currentColor!important;fill:none!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.hbest-wrap .summary-fine{font-size:12px!important;color:var(--ink3)!important;text-align:center!important;line-height:1.5!important;margin-top:4px!important}
.hbest-wrap .summary-warn{font-size:13px!important;color:#ffb86b!important;text-align:center!important;padding:13px 8px!important;background:rgba(255,184,107,.06)!important;border:1px solid rgba(255,184,107,.22)!important;border-radius:10px!important;margin:8px 0 4px!important;line-height:1.5!important}

/* ── LÅG+HÖG NOTIS ── */
.hbest-wrap #lowhigh-note-ny,.hbest-wrap #lowhigh-note-r{background:rgba(255,180,80,.08)!important;border:1px solid rgba(255,180,80,.24)!important;border-radius:8px!important;padding:10px 14px!important;margin-top:10px!important;color:#ffd599!important;font-size:12.5px!important;line-height:1.5!important}
.hbest-wrap #lowhigh-note-ny strong,.hbest-wrap #lowhigh-note-r strong{color:var(--ink)!important;font-weight:600!important}

/* ── HBOX-rec + AFF-info kort (i kalkylator) ── */
.hbest-wrap .hbox-rec{background:linear-gradient(135deg,rgba(255,180,80,.10),rgba(255,140,40,.04))!important;border:1px solid rgba(255,180,80,.28)!important;border-radius:12px!important;padding:16px!important;display:flex!important;align-items:flex-start!important;gap:13px!important;margin-bottom:11px!important}
.hbest-wrap .aff-info{background:linear-gradient(135deg,rgba(91,109,250,.10),rgba(162,89,236,.05))!important;border:1px solid rgba(91,109,250,.28)!important;border-radius:12px!important;padding:16px!important;display:flex!important;align-items:flex-start!important;gap:13px!important;margin-bottom:11px!important}
.hbest-wrap .qty-row{display:flex!important;align-items:center!important;gap:13px!important;flex-wrap:wrap!important}
.hbest-wrap .qty-row .rec-label{font-size:12px!important;color:var(--ink3)!important}
.hbest-wrap .qty-row .rec-label strong{color:#a5b4fc!important;font-weight:600!important}

/* ── INCLUDES-V4 ── */
.hbest-wrap .includes-v4{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:11px!important;margin-top:22px!important;max-width:880px!important;margin-left:auto!important;margin-right:auto!important}
@media (max-width:680px){.hbest-wrap .includes-v4{grid-template-columns:1fr!important}}
.hbest-wrap .includes-row{display:flex!important;gap:11px!important;align-items:flex-start!important;padding:13px 15px!important;background:rgba(255,255,255,.035)!important;border:1px solid var(--bd)!important;border-radius:10px!important}
.hbest-wrap .includes-row .check{width:22px!important;height:22px!important;border-radius:6px!important;background:linear-gradient(135deg,rgba(91,109,250,.22),rgba(162,89,236,.14))!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#a5b4fc!important;flex-shrink:0!important}
.hbest-wrap .includes-row .check svg{width:13px!important;height:13px!important;stroke:currentColor!important;fill:none!important;stroke-width:2.6!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.hbest-wrap .includes-row h4{margin:0!important;font-size:14px!important;font-weight:600!important;color:var(--ink)!important;line-height:1.35!important}
.hbest-wrap .includes-row h4 .soon{font-size:10px!important;font-weight:700!important;letter-spacing:.10em!important;text-transform:uppercase!important;color:#a5b4fc!important;background:rgba(91,109,250,.18)!important;padding:2px 7px!important;border-radius:5px!important;margin-left:6px!important;vertical-align:1px!important}
.hbest-wrap .includes-row p{margin:2px 0 0!important;font-size:12.5px!important;color:var(--ink2)!important;line-height:1.5!important}

/* ── HELP CARD (Nahir-rutan) ── */
.hbest-wrap .help-card-v4{max-width:820px!important;margin:28px auto 0!important;display:grid!important;grid-template-columns:auto 1fr!important;gap:24px!important;align-items:center!important;background:linear-gradient(135deg,rgba(91,109,250,.10),rgba(162,89,236,.05))!important;border:1px solid rgba(91,109,250,.26)!important;border-radius:16px!important;padding:24px 28px!important;box-shadow:0 12px 32px rgba(91,109,250,.12)!important}
@media (max-width:680px){.hbest-wrap .help-card-v4{grid-template-columns:1fr!important;text-align:center!important;padding:22px!important;gap:16px!important}}
.hbest-wrap .help-card-v4 .img{width:88px!important;height:88px!important;border-radius:50%!important;background:linear-gradient(135deg,rgba(91,109,250,.22),rgba(162,89,236,.14))!important;border:1px dashed rgba(91,109,250,.4)!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;overflow:hidden!important}
@media (max-width:680px){.hbest-wrap .help-card-v4 .img{margin:0 auto!important}}
.hbest-wrap .help-card-v4 .img svg{width:36px!important;height:36px!important;stroke:#a5b4fc!important;fill:none!important;stroke-width:1.5!important;stroke-linecap:round!important;stroke-linejoin:round!important;opacity:.6!important}
.hbest-wrap .help-card-v4 h3{margin:0 0 5px!important;font-size:17px!important;font-weight:700!important;color:var(--ink)!important}
.hbest-wrap .help-card-v4 p{margin:0 0 10px!important;font-size:13.5px!important;color:var(--ink2)!important;line-height:1.55!important}
.hbest-wrap .help-card-v4 .contact{display:flex!important;flex-wrap:wrap!important;gap:5px 14px!important;font-size:13px!important;color:var(--ink2)!important;align-items:center!important}
@media (max-width:680px){.hbest-wrap .help-card-v4 .contact{flex-direction:column!important;gap:5px!important;align-items:center!important}}
.hbest-wrap .help-card-v4 .contact .name{color:var(--ink)!important;font-weight:600!important}
.hbest-wrap .help-card-v4 .contact .sep{color:rgba(255,255,255,.25)!important}
@media (max-width:680px){.hbest-wrap .help-card-v4 .contact .sep{display:none!important}}
.hbest-wrap .help-card-v4 .contact a{color:#a5b4fc!important;text-decoration:none!important;border-bottom:1px solid rgba(165,180,252,.32)!important;white-space:nowrap!important}
.hbest-wrap .help-card-v4 .contact a:hover{color:var(--ink)!important}

@media (max-width:480px){
  .hbest-wrap .summary-cta .btn-cta-primary{width:100%!important}
}

/* === slut på v4-tillägg === */

/* ============================================================
   v10.66 — 3-stegs-rad, Prova 7 dagar, Sponsor-introduktion
   ============================================================ */

/* 3-stegs-rad ovanför kalkylator */
.hbest-wrap .calc-steps-section{padding-top:0!important;padding-bottom:1rem!important}
.hbest-wrap .calc-steps{display:flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;flex-wrap:wrap!important;padding:14px 18px!important;background:rgba(255,255,255,.025)!important;border:1px solid rgba(255,255,255,.06)!important;border-radius:12px!important}
.hbest-wrap .calc-steps .cs-step{display:inline-flex!important;align-items:center!important;gap:9px!important;font-family:inherit!important;color:var(--ink2)!important;font-size:13.5px!important;font-weight:500!important}
.hbest-wrap .calc-steps .cs-num{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--p1),var(--p2))!important;color:#fff!important;font-size:12px!important;font-weight:700!important;line-height:1!important;flex-shrink:0!important}
.hbest-wrap .calc-steps .cs-text{color:var(--ink)!important}
.hbest-wrap .calc-steps .cs-arrow{color:var(--ink3)!important;font-size:14px!important;font-weight:600!important}
@media (max-width:640px){
  .hbest-wrap .calc-steps{gap:10px!important;padding:12px 14px!important}
  .hbest-wrap .calc-steps .cs-arrow{display:none!important}
  .hbest-wrap .calc-steps .cs-step{font-size:12.5px!important}
}

/* Prova 7 dagar — diskret sekundär ruta */
.hbest-wrap .try-7-section{padding-top:.5rem!important;padding-bottom:1.5rem!important}
.hbest-wrap .try-7-card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:18px 22px!important;background:rgba(255,255,255,.025)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px!important;flex-wrap:wrap!important}
.hbest-wrap .try-7-card .try-7-text{flex:1 1 280px!important;min-width:0!important}
.hbest-wrap .try-7-card .try-7-text h3{font-family:inherit!important;font-size:15.5px!important;font-weight:600!important;color:var(--ink)!important;margin:0 0 4px!important;line-height:1.3!important;letter-spacing:-.005em!important}
.hbest-wrap .try-7-card .try-7-text p{font-family:inherit!important;font-size:13.5px!important;color:var(--ink2)!important;margin:0!important;line-height:1.5!important}
.hbest-wrap .try-7-card .try-7-btn{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:10px 18px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--ink)!important;font-family:inherit!important;font-size:13.5px!important;font-weight:600!important;text-decoration:none!important;border-radius:9px!important;transition:background .15s ease,border-color .15s ease!important;flex-shrink:0!important;line-height:1.2!important}
.hbest-wrap .try-7-card .try-7-btn:hover{background:rgba(91,109,250,.14)!important;border-color:rgba(91,109,250,.32)!important;color:var(--ink)!important}

/* Sponsor-introduktion */
.hbest-wrap .sponsor-intro{padding-top:1rem!important;padding-bottom:1.5rem!important;scroll-margin-top:80px!important}
.hbest-wrap .sponsor-intro-inner{background:linear-gradient(135deg,rgba(91,109,250,.10),rgba(162,89,236,.04))!important;border:1px solid rgba(91,109,250,.32)!important;border-radius:18px!important;padding:36px 32px!important;text-align:center!important;position:relative!important;overflow:hidden!important;box-shadow:0 18px 48px rgba(91,109,250,.14),0 0 0 1px rgba(255,255,255,.03) inset!important}
.hbest-wrap .sponsor-intro-inner::before{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(520px 240px at 50% 0%,rgba(91,109,250,.16),transparent 60%)!important;pointer-events:none!important}
.hbest-wrap .sponsor-intro-inner > *{position:relative!important}
.hbest-wrap .sponsor-intro-eyebrow{display:inline-flex!important;align-items:center!important;gap:7px!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#a5b4fc!important;background:rgba(91,109,250,.16)!important;border:1px solid rgba(91,109,250,.32)!important;padding:6px 13px!important;border-radius:999px!important;margin-bottom:18px!important}
.hbest-wrap .sponsor-intro h2{font-family:inherit!important;font-size:clamp(22px,2.6vw,28px)!important;font-weight:700!important;color:var(--ink)!important;margin:0 0 14px!important;line-height:1.25!important;letter-spacing:-.015em!important}
.hbest-wrap .sponsor-intro > .sponsor-intro-inner > p{font-family:inherit!important;font-size:15px!important;color:var(--ink2)!important;margin:0 0 22px!important;line-height:1.6!important;max-width:680px!important;margin-left:auto!important;margin-right:auto!important}
.hbest-wrap .sponsor-partners{margin:24px 0!important}
.hbest-wrap .sponsor-partners-label{font-family:inherit!important;font-size:11px!important;font-weight:700!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:var(--ink3)!important;margin:0 0 12px!important}
.hbest-wrap .sponsor-intro-fine{font-family:inherit!important;font-size:13px!important;color:var(--ink3)!important;margin:18px auto 22px!important;line-height:1.55!important;max-width:600px!important}
.hbest-wrap .sponsor-intro-fine strong{color:var(--ink2)!important;font-weight:600!important}
.hbest-wrap .sponsor-intro-cta{display:inline-flex!important;align-items:center!important;gap:9px!important;padding:14px 24px!important;background:linear-gradient(135deg,var(--p1),var(--p2))!important;color:#fff!important;border:none!important;font-family:inherit!important;font-size:15px!important;font-weight:600!important;border-radius:11px!important;cursor:pointer!important;box-shadow:0 10px 28px rgba(91,109,250,.42),0 0 0 1px rgba(255,255,255,.10) inset!important;transition:transform .15s ease,box-shadow .25s ease!important;letter-spacing:.01em!important;text-transform:none!important;line-height:1.2!important}
.hbest-wrap .sponsor-intro-cta:hover{transform:translateY(-1px)!important;box-shadow:0 14px 36px rgba(91,109,250,.55),0 0 0 1px rgba(255,255,255,.14) inset!important;color:#fff!important}
@media (max-width:640px){
  .hbest-wrap .sponsor-intro-inner{padding:28px 22px!important}
  .hbest-wrap .sponsor-intro-cta{width:100%!important;justify-content:center!important}
}

/* v11.04 — Loader-spinner i CTA-knappen
   .hbest-btn-loading sätts av hbest.js startLoading() och rensas i resetButton(). */
.hbest-btn-loading {
  cursor: progress !important;
  opacity: 0.85 !important;
}
.hbest-btn-spinner {
  display: inline-block;
  width: 14px;
  height: 14px;
  vertical-align: middle;
  margin-right: 8px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: #ffffff;
  border-radius: 50%;
  animation: hbest-btn-spin 0.65s linear infinite;
}
@keyframes hbest-btn-spin {
  to { transform: rotate(360deg); }
}
