:root{
    --blue-900:#0b3a5b;
    --blue-700:#0f5b8c;
    --blue-500:#2d8fc9;
    --blue-100:#e7f3fa;
    --ice-50:#f6fbfd;
    --ink:#12202b;
    --ink-soft:#4a5c68;
    --line:#d8e6ee;
    --white:#ffffff;
    --amber:#b5760a;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    font-family:Tahoma,"Segoe UI",Arial,sans-serif;
    color:var(--ink);
    background:var(--white);
    line-height:1.6;
  }
  a{color:var(--blue-700);}
  img{max-width:100%;display:block;}
  .wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
  header.site{
    position:sticky;top:0;z-index:30;
    background:rgba(255,255,255,0.96);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(6px);
  }
  .navbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:1080px;margin:0 auto;gap:14px;}
  .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.15rem;color:var(--blue-900);text-decoration:none;letter-spacing:.2px;flex-shrink:0;}
  .brand .mark{
    width:32px;height:32px;border-radius:9px;
    background:linear-gradient(135deg,var(--blue-500),var(--blue-900));
    display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:800;
  }
  nav.links{display:flex;gap:26px;font-size:.95rem;flex:1;}
  nav.links a{color:var(--ink-soft);text-decoration:none;font-weight:600;white-space:nowrap;}
  nav.links a:hover{color:var(--blue-700);}
  .nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0;}

  .lang-switch{position:relative;}
  .lang-btn{
    display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:8px;
    padding:9px 12px;font-size:.85rem;font-weight:700;color:var(--blue-900);cursor:pointer;
  }
  .lang-btn:hover{border-color:var(--blue-500);}
  .lang-btn .caret{font-size:.65rem;color:var(--ink-soft);}
  .lang-menu{
    position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--line);border-radius:10px;
    box-shadow:0 16px 32px -12px rgba(11,58,91,.28);min-width:170px;padding:6px;display:none;z-index:40;
  }
  html[dir="rtl"] .lang-menu{right:auto;left:0;}
  .lang-menu.open{display:block;}
  .lang-opt{
    display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;
    padding:10px 12px;border-radius:7px;cursor:pointer;font-size:.9rem;color:var(--ink);font-family:inherit;
  }
  html[dir="rtl"] .lang-opt{text-align:right;}
  .lang-opt:hover{background:var(--blue-100);}
  .lang-opt.active{color:var(--blue-700);font-weight:700;}
  .lang-opt .code{
    width:26px;height:20px;border-radius:4px;background:var(--blue-100);color:var(--blue-700);
    display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;flex-shrink:0;
  }

  .hero{
    background:radial-gradient(1100px 480px at 80% -10%, var(--blue-100), transparent),
               linear-gradient(180deg, var(--ice-50), var(--white) 70%);
    padding:76px 0 64px;
    border-bottom:1px solid var(--line);
  }
  .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;}
  .eyebrow{
    display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    color:var(--blue-700);background:var(--blue-100);padding:5px 12px;border-radius:999px;margin-bottom:18px;
  }
  h1{font-size:2.6rem;line-height:1.15;margin:0 0 18px;color:var(--blue-900);letter-spacing:-.02em;}
  .hero p.lead{font-size:1.12rem;color:var(--ink-soft);max-width:46ch;margin:0 0 28px;}
  .cta-row{display:flex;gap:14px;flex-wrap:wrap;}
  .btn{
    display:inline-block;padding:13px 24px;border-radius:9px;font-weight:700;font-size:.95rem;
    text-decoration:none;border:1px solid transparent;transition:transform .15s ease, box-shadow .15s ease;cursor:pointer;
  }
  .btn-primary{background:var(--blue-700);color:#fff;box-shadow:0 8px 20px -8px rgba(15,91,140,.55);}
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px -8px rgba(15,91,140,.65);}
  .btn-ghost{background:#fff;color:var(--blue-900);border-color:var(--line);}
  .btn-ghost:hover{border-color:var(--blue-500);}

  .device-card{
    background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;
    box-shadow:0 24px 48px -28px rgba(11,58,91,.35);
  }
  .device-visual{
    border-radius:14px;overflow:hidden;background:var(--blue-100);
  }
  .device-visual img{width:100%;height:260px;object-fit:cover;}
  .spec-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin-top:18px;font-size:.9rem;padding:0 6px;}
  .spec-mini div{color:var(--ink-soft);}
  .spec-mini b{display:block;color:var(--ink);font-size:.98rem;}

  section{padding:72px 0;}
  section.alt{background:var(--ice-50);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .section-head{max-width:640px;margin:0 0 42px;}
  .kicker{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-700);margin-bottom:10px;}
  h2{font-size:1.9rem;margin:0 0 14px;color:var(--blue-900);letter-spacing:-.01em;}
  .section-head p{color:var(--ink-soft);font-size:1.02rem;margin:0;}

  .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;}
  .card h3{margin:0 0 8px;font-size:1.08rem;color:var(--blue-900);}
  .card p{margin:0;color:var(--ink-soft);font-size:.95rem;}
  .card .num{
    width:34px;height:34px;border-radius:9px;background:var(--blue-100);color:var(--blue-700);
    display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;margin-bottom:14px;
  }

  .tip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px;}
  .tip{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;text-align:center;}
  .tip .size{font-size:1.3rem;font-weight:800;color:var(--blue-700);}
  .tip .label{font-size:.82rem;color:var(--ink-soft);margin-top:4px;}

  .photo-row{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;margin-top:40px;}
  .photo-card{border-radius:14px;overflow:hidden;border:1px solid var(--line);}
  .photo-card img{width:100%;height:100%;object-fit:cover;}
  .photo-strip{margin-top:20px;border-radius:14px;overflow:hidden;border:1px solid var(--line);}

  /* Returns & Refills is a standalone page */
  .returns-page{padding:64px 0 88px;}
  nav.links a[aria-current="page"]{color:var(--blue-700);}

  /* ---- "We handle refills" explainer ---- */
  .refills-explainer{padding:0 0 64px;}
  .rx-box{
    background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue-500);
    border-radius:14px;padding:28px 30px;box-shadow:0 18px 40px -30px rgba(11,58,91,.5);
  }
  html[dir="rtl"] .rx-box{border-left:1px solid var(--line);border-right:4px solid var(--blue-500);}
  .rx-box h3{margin:0 0 10px;font-size:1.18rem;color:var(--blue-900);}
  .rx-box > p{margin:0 0 18px;color:var(--ink-soft);font-size:.98rem;max-width:70ch;}
  .rx-steps{margin:0;padding:0;list-style:none;counter-reset:rx;display:grid;gap:12px;}
  .rx-steps li{
    counter-increment:rx;position:relative;padding-left:38px;
    color:var(--ink-soft);font-size:.95rem;
  }
  html[dir="rtl"] .rx-steps li{padding-left:0;padding-right:38px;}
  .rx-steps li::before{
    content:counter(rx);position:absolute;left:0;top:1px;
    width:26px;height:26px;border-radius:8px;background:var(--blue-100);color:var(--blue-700);
    display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.82rem;
  }
  html[dir="rtl"] .rx-steps li::before{left:auto;right:0;}
  .rx-steps b{color:var(--ink);}
  .rx-link{
    display:inline-block;margin-top:18px;font-weight:700;font-size:.92rem;text-decoration:none;
  }
  .rx-link:hover{text-decoration:underline;}

  /* ---- Order section ---- */
  .order-band{
    background:linear-gradient(180deg,var(--white),var(--blue-100) 130%);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  }
  .order-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
  .order-item{
    background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;
    display:flex;flex-direction:column;gap:6px;
  }
  .order-item h3{margin:0;font-size:1.06rem;color:var(--blue-900);}
  .order-item .note{margin:0;color:var(--ink-soft);font-size:.9rem;}
  .order-price{margin-top:10px;display:flex;flex-direction:column;gap:2px;}
  .order-price .sek{font-size:1.5rem;font-weight:800;color:var(--blue-700);letter-spacing:-.01em;}
  .order-price .irr{font-size:.85rem;color:var(--ink-soft);}
  .qty{display:flex;align-items:center;gap:10px;margin-top:16px;}
  .qty-btn{
    width:38px;height:38px;flex-shrink:0;border-radius:9px;border:1px solid var(--line);
    background:#fff;color:var(--blue-900);font-size:1.2rem;font-weight:700;cursor:pointer;
    display:flex;align-items:center;justify-content:center;font-family:inherit;line-height:1;
  }
  .qty-btn:hover{border-color:var(--blue-500);background:var(--blue-100);}
  .qty-input{
    width:88px;height:38px;text-align:center;border:1px solid var(--line);border-radius:9px;
    font-size:1rem;font-weight:700;color:var(--ink);font-family:inherit;background:#fff;
  }
  .qty-input:focus{outline:2px solid var(--blue-500);outline-offset:1px;}
  .qty-label{font-size:.85rem;color:var(--ink-soft);}

  .tier-table{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px;}
  .tier{
    background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;
    transition:border-color .2s ease, box-shadow .2s ease;
  }
  .tier.active{border-color:var(--blue-500);box-shadow:0 8px 20px -12px rgba(15,91,140,.5);}
  .tier .t-qty{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);}
  .tier .t-off{font-size:1.25rem;font-weight:800;color:var(--blue-700);margin-top:2px;}
  .tier .t-hint{font-size:.82rem;color:var(--ink-soft);margin-top:2px;}

  .order-summary{
    margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;
  }
  .sum-row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;font-size:.95rem;color:var(--ink-soft);}
  .sum-row .v{color:var(--ink);font-weight:600;white-space:nowrap;}
  .sum-row.discount .v{color:#1d7a4c;}
  .sum-row.total{
    border-top:1px solid var(--line);margin-top:8px;padding-top:16px;
    font-size:1.15rem;color:var(--blue-900);font-weight:800;
  }
  .sum-row.total .v{font-size:1.3rem;font-weight:800;color:var(--blue-700);}
  .sum-irr{font-size:.88rem;color:var(--ink-soft);text-align:right;margin-top:-4px;padding-bottom:8px;}
  html[dir="rtl"] .sum-irr{text-align:left;}
  .order-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;}
  .bulk-note{
    margin-top:16px;border:1px solid #f0d9b5;background:#fef8ec;border-radius:10px;
    padding:14px 16px;color:#7a5416;font-size:.9rem;display:none;
  }
  .bulk-note.show{display:block;}
  .fx-note{margin-top:16px;font-size:.8rem;color:var(--ink-soft);}

  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
  .about-grid p{color:var(--ink-soft);margin:0 0 16px;}
  .about-photo{border-radius:16px;overflow:hidden;border:1px solid var(--line);}
  .fact-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px;}
  .fact-list li{
    display:flex;gap:12px;align-items:flex-start;font-size:.95rem;color:var(--ink-soft);
    background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;
  }
  .fact-list b{color:var(--ink);}

  .returns-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px;}
  .returns-step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;position:relative;}
  .returns-step .step-num{
    width:30px;height:30px;border-radius:8px;background:var(--blue-700);color:#fff;font-weight:800;
    display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:.9rem;
  }
  .returns-step h3{margin:0 0 8px;font-size:1.02rem;color:var(--blue-900);}
  .returns-step p{margin:0;color:var(--ink-soft);font-size:.92rem;}
  .turnaround-box{
    margin-top:24px;background:var(--blue-100);border-radius:12px;padding:18px 22px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;
  }
  .turnaround-box .t-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--blue-700);}
  .turnaround-box .t-value{font-size:1.05rem;font-weight:700;color:var(--blue-900);}

  .quality-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px;}
  .badge{
    border:1px solid var(--line);border-radius:12px;padding:18px 16px;text-align:center;background:#fff;
  }
  .badge .status{
    display:inline-block;margin-top:8px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
    padding:3px 9px;border-radius:999px;background:#fdf3e3;color:var(--amber);
  }
  .badge h4{margin:0;font-size:.98rem;color:var(--blue-900);}

  .warning-box{
    margin-top:36px;border:1px solid #f0d9b5;background:#fef8ec;border-radius:12px;padding:20px 22px;
    color:#7a5416;font-size:.92rem;
  }
  .warning-box b{color:#5c3f0f;}

  footer.contact{background:var(--blue-900);color:#dfeaf2;padding:64px 0 32px;}
  footer.contact h2{color:#fff;}
  footer.contact .section-head p{color:#b8cddb;}
  .contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;}
  .contact-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:28px;}
  .contact-row{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);}
  .contact-row:last-child{border-bottom:none;}
  .contact-row .k{width:150px;flex-shrink:0;color:#9fbdd0;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;}
  .contact-row .v{color:#eef5fa;font-size:.98rem;}
  footer.contact a{color:#bfe0f5;}
  .map-note{
    border-radius:14px;border:1px dashed rgba(255,255,255,.25);height:100%;min-height:180px;
    display:flex;align-items:center;justify-content:center;text-align:center;color:#9fbdd0;padding:24px;font-size:.9rem;
  }
  .bottom-bar{
    max-width:1080px;margin:40px auto 0;padding:20px 24px 0;border-top:1px solid rgba(255,255,255,.12);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.82rem;color:#8fadc0;
  }

  html[dir="rtl"] .navbar,html[dir="rtl"] .cta-row,html[dir="rtl"] .contact-row,html[dir="rtl"] .turnaround-box,html[dir="rtl"] .bottom-bar{
    direction:rtl;
  }
  html[dir="rtl"] .card .num,html[dir="rtl"] .returns-step .step-num{margin-left:0;}

  @media(max-width:860px){
    .hero-grid,.about-grid,.contact-grid,.photo-row{grid-template-columns:1fr;}
    .grid-3,.returns-grid,.order-grid{grid-template-columns:1fr;}
    .tier-table{grid-template-columns:1fr;}
    .tip-grid{grid-template-columns:repeat(2,1fr);}
    .quality-badges{grid-template-columns:repeat(2,1fr);}
    h1{font-size:2.1rem;}
    nav.links{display:none;}
  }

  /* ---- Refill request form + printable label ---- */
  .rr-block{margin-top:44px;padding-top:40px;border-top:1px solid var(--line);}
  .rr-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:26px;align-items:start;}
  .rr-form{
    background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;
    display:grid;gap:16px;align-content:start;
  }
  .rr-field{display:grid;gap:6px;}
  .rr-field label{font-size:.86rem;font-weight:700;color:var(--blue-900);}
  .rr-field input{
    height:42px;padding:0 12px;border:1px solid var(--line);border-radius:9px;
    font-size:.98rem;font-family:inherit;color:var(--ink);background:#fff;width:100%;
  }
  .rr-field input:focus{outline:2px solid var(--blue-500);outline-offset:1px;border-color:var(--blue-500);}
  .rr-field input[aria-invalid="true"]{border-color:#c0392b;background:#fdf6f5;}
  .rr-hint{font-size:.78rem;color:var(--ink-soft);}
  .rr-error{
    margin:0;padding:11px 13px;border-radius:9px;background:#fdf0ee;border:1px solid #f0c8c2;
    color:#a03325;font-size:.86rem;
  }
  .rr-preview{display:grid;gap:16px;align-content:start;}
  .rr-empty{
    border:1px dashed var(--line);border-radius:14px;padding:44px 24px;text-align:center;
    color:var(--ink-soft);font-size:.92rem;background:#fff;
  }
  .rr-label{background:#fff;border:2px solid var(--blue-900);border-radius:12px;padding:24px 26px;}
  .rr-l-top{
    display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;
    border-bottom:2px solid var(--blue-900);padding-bottom:12px;margin-bottom:16px;
  }
  .rr-l-brand{font-size:1.5rem;font-weight:800;color:var(--blue-900);letter-spacing:-.02em;}
  .rr-l-kind{font-size:.82rem;font-weight:800;letter-spacing:.14em;color:var(--blue-700);}
  .rr-l-ref{
    display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
    background:var(--blue-100);border-radius:9px;padding:12px 15px;margin-bottom:16px;
    font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--blue-700);
  }
  .rr-l-ref b{
    font-family:"Consolas","SFMono-Regular",ui-monospace,monospace;
    font-size:1.16rem;letter-spacing:.04em;color:var(--blue-900);text-transform:none;
  }
  .rr-l-rows{display:grid;grid-template-columns:auto 1fr;gap:9px 18px;margin:0 0 18px;}
  .rr-l-rows dt{font-size:.82rem;color:var(--ink-soft);font-weight:600;}
  .rr-l-rows dd{margin:0;font-size:.95rem;color:var(--ink);font-weight:700;overflow-wrap:anywhere;}
  .rr-l-send{border-top:1px solid var(--line);padding-top:14px;}
  .rr-l-send-h{
    font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;
    color:var(--blue-700);margin-bottom:6px;
  }
  .rr-l-send address{font-style:normal;font-size:.95rem;color:var(--ink);line-height:1.65;}
  .rr-l-note{
    margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);
    font-size:.8rem;color:var(--ink-soft);
  }
  .rr-actions{display:flex;gap:10px;flex-wrap:wrap;}
  .rr-steps{
    margin:30px 0 0;padding:0;list-style:none;counter-reset:rs;
    display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
  }
  .rr-steps li{
    counter-increment:rs;background:#fff;border:1px solid var(--line);border-radius:12px;
    padding:16px 18px 16px 46px;position:relative;font-size:.9rem;color:var(--ink-soft);
  }
  html[dir="rtl"] .rr-steps li{padding:16px 46px 16px 18px;}
  .rr-steps li::before{
    content:counter(rs);position:absolute;left:16px;top:16px;
    width:22px;height:22px;border-radius:7px;background:var(--blue-100);color:var(--blue-700);
    display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.76rem;
  }
  html[dir="rtl"] .rr-steps li::before{left:auto;right:16px;}
  .rr-steps b{color:var(--ink);}

  @media(max-width:860px){
    .rr-grid{grid-template-columns:1fr;}
    .rr-steps{grid-template-columns:1fr;}
  }

  /* Print: the label only, nothing else on the page. */
  @media print{
    body *{visibility:hidden !important;}
    #refillLabel, #refillLabel *{visibility:visible !important;}
    #refillLabel{
      position:absolute;left:0;top:0;width:100%;
      border:2px solid #000;border-radius:0;padding:24px;box-shadow:none;
    }
    .rr-l-top,.rr-l-ref b{color:#000;}
    .rr-l-ref{background:#eee;}
    @page{margin:16mm;}
  }
