:root{
    --pink:#FF6FA0;
    --pink-deep:#E8467A;
    --pink-pale:#FFE3EE;
    --cream:#FFF7EC;
    --cream-deep:#FFEFDA;
    --sky:#7DD8F0;
    --sky-pale:#DFF6FC;
    --mint:#BFF0DA;
    --brown:#9C7458;
    --ink:#3B2436;
    --ink-soft:#6B4E5C;
    --white:#FFFFFF;
    --radius-lg:28px;
    --radius-md:18px;
    --radius-sm:12px;
    --shadow-soft:0 10px 30px rgba(59,36,54,0.10);
    --shadow-pop:0 16px 40px rgba(232,70,122,0.22);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    font-family:'Nunito',sans-serif;
    color:var(--ink);
    background:var(--cream);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{
    font-family:'Fredoka',sans-serif;
    margin:0;
    font-weight:600;
    color:var(--ink);
  }
  p{line-height:1.6;margin:0 0 1em;}
  a{color:inherit;text-decoration:none;}
  ul{margin:0;padding:0;list-style:none;}
  img,svg{display:block;max-width:100%;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;}
  .container{max-width:1180px;margin:0 auto;padding:0 24px;}
  .eyebrow{
    font-family:'Space Mono',monospace;
    font-size:0.72rem;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--pink-deep);
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:10px;
  }
  .eyebrow::before{content:none;}
  .section-title{font-size:clamp(1.6rem,3.4vw,2.6rem);margin-bottom:14px;}
  .section-sub{max-width:560px;color:var(--ink-soft);font-size:1.02rem;}
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    padding:14px 28px;border-radius:999px;font-weight:800;font-size:0.98rem;
    transition:transform .18s cubic-bezier(.34,1.56,.64,1), box-shadow .18s ease;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-2px) scale(1.02);}
  .btn:active{transform:translateY(0) scale(0.98);}
  .btn-primary{background:var(--pink-deep);color:var(--white);box-shadow:var(--shadow-pop);}
  .btn-primary:hover{background:var(--pink);}
  .btn-outline{background:var(--white);color:var(--pink-deep);border:2px solid var(--pink-deep);}
  .btn-ghost{background:var(--white);color:var(--ink);box-shadow:var(--shadow-soft);}
  .btn-sm{padding:9px 18px;font-size:0.85rem;}
  .btn-full{width:100%;}
  .btn[disabled]{opacity:0.5;cursor:not-allowed;transform:none !important;}

  /* scallop dividers — signature stitched-fabric motif */
  .scallop{height:22px;width:100%;position:relative;z-index:2;}
  .scallop-cream-down{background:radial-gradient(circle at 11px 0, transparent 11px, var(--cream) 12px) 0 -11px/22px 22px repeat-x;}
  .scallop-pink-down{background:radial-gradient(circle at 11px 0, transparent 11px, var(--pink-pale) 12px) 0 -11px/22px 22px repeat-x;}
  .scallop-white-down{background:radial-gradient(circle at 11px 0, transparent 11px, var(--white) 12px) 0 -11px/22px 22px repeat-x;}
  .scallop-cream-up{background:radial-gradient(circle at 11px 22px, transparent 11px, var(--cream) 12px) 0 0/22px 22px repeat-x;}
  .scallop-sky-up{background:radial-gradient(circle at 11px 22px, transparent 11px, var(--sky-pale) 12px) 0 0/22px 22px repeat-x;}
  .scallop-muslin-up{background:radial-gradient(circle at 11px 22px, transparent 11px, var(--cream-deep) 12px) 0 0/22px 22px repeat-x;}

  .stitch{border-bottom:2px dashed rgba(59,36,54,0.28);}

  /* ---------- LEVITATING HEARTS (ambient, site-wide) ---------- */
  .hearts-layer{position:fixed;inset:0;pointer-events:none;z-index:4;overflow:hidden;}
  .levitate-heart{
    position:absolute;color:var(--pink-deep);opacity:0;
    animation:heart-drift ease-in-out forwards;will-change:transform,opacity;
  }
  @keyframes heart-drift{
    0%{transform:translate(0,0) scale(0.85);opacity:0;}
    18%{opacity:.4;}
    50%{transform:translate(var(--driftx,6px), -10px) scale(1);opacity:.5;}
    82%{opacity:.35;}
    100%{transform:translate(0,0) scale(0.85);opacity:0;}
  }
  @media (prefers-reduced-motion: reduce){
    .float-heart, .levitate-heart{animation:none !important;display:none;}
    html{scroll-behavior:auto;}
  }

  /* ---------- MUSLIN TEXTURE ZONE ---------- */
  .muslin-bg{
    background-color:var(--cream-deep);
    background-repeat:repeat;
    background-size:512px 512px;
  }
  .pat-muslin-hearts{
    background-color:#F7C9DA;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 5 C10 2 5 2 5 6 C5 9 10 13 10 13 C10 13 15 9 15 6 C15 2 10 2 10 5Z' fill='%23ffffff' opacity='0.6'/%3E%3C/svg%3E"),
      repeating-linear-gradient(90deg, rgba(255,255,255,0.4) 0 1px, transparent 1px 5px),
      repeating-linear-gradient(0deg, rgba(255,255,255,0.4) 0 1px, transparent 1px 5px);
    background-size:40px 40px, 5px 5px, 5px 5px;
  }

  /* ---------- HEADER ---------- */
  /* Klasse, ikke elementet <header>. Som ren elementselektor traff denne
     regelen ogsa .article-head i stell-og-vask, vilkar og hjelp, og
     .cat-head i kolleksjonssidene - de er ogsa <header>-elementer. De ble
     dermed sticky med samme z-index og bakgrunn som nettstedets header,
     la seg oppa den ved rulling og dekket trust-stripen. */
  .site-header{
    position:sticky;top:0;z-index:50;background:rgba(255,247,236,0.92);
    backdrop-filter:blur(8px);
    border-bottom:1px solid rgba(59,36,54,0.08);
  }
  .trust-strip{
    background:var(--ink);color:var(--cream);font-family:'Space Mono',monospace;
    font-size:0.72rem;letter-spacing:0.03em;text-align:center;padding:7px 12px;
  }
  .nav-row{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:20px;}
  .logo{font-family:'Fredoka',sans-serif;font-size:1.5rem;font-weight:700;color:var(--pink-deep);display:flex;align-items:center;gap:6px;}
  .logo span.dot{color:var(--sky);}
  nav.main-nav{display:flex;gap:26px;}
  nav.main-nav a{font-weight:700;font-size:0.92rem;position:relative;padding:4px 0;}
  nav.main-nav a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--pink-deep);transition:width .2s ease;}
  nav.main-nav a:hover::after{width:100%;}
  .header-actions{display:flex;align-items:center;gap:14px;}
  .lang-pill{
    display:flex;align-items:center;gap:6px;font-size:0.82rem;font-weight:700;
    background:var(--white);padding:7px 12px;border-radius:999px;box-shadow:var(--shadow-soft);
  }
  .cart-btn{
    position:relative;background:var(--pink-deep);color:white;width:44px;height:44px;
    border-radius:50%;display:flex;align-items:center;justify-content:center;
    box-shadow:var(--shadow-pop);flex-shrink:0;
  }
  .cart-count{
    position:absolute;top:-4px;right:-4px;background:var(--sky);color:var(--ink);
    font-family:'Space Mono',monospace;font-size:0.68rem;font-weight:700;
    width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    border:2px solid var(--cream);
  }
  .burger{display:none;background:var(--white);border-radius:12px;padding:9px 12px;box-shadow:var(--shadow-soft);flex-shrink:0;}

  /* ---------- HERO ---------- */
  .hero{position:relative;overflow:hidden;background:var(--cream);padding:56px 0 0;}
  .hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:48px;align-items:center;}
  .hero-copy h1{font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.08;margin-bottom:20px;}
  .hero-copy h1 em{font-style:normal;color:var(--pink-deep);}
  .hero-copy p.lede{font-size:1.08rem;color:var(--ink-soft);max-width:460px;margin-bottom:26px;}
  .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px;}
  .trust-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
  .trust-row .badge{
    display:flex;align-items:center;gap:7px;font-size:0.78rem;font-weight:700;color:var(--ink-soft);
    background:var(--white);padding:8px 12px;border-radius:999px;box-shadow:var(--shadow-soft);
  }
  .hero-art{position:relative;height:440px;}
  .float-heart{position:absolute;color:var(--pink);opacity:.35;font-size:1.4rem;animation:floaty 6s ease-in-out infinite;}
  @keyframes floaty{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-16px) rotate(8deg);}}
  .hero-card{
    position:absolute;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);
    display:flex;flex-direction:column;justify-content:flex-end;padding:18px;color:var(--white);
    overflow:hidden;
  }
  .hero-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
  .hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.55) 100%);z-index:1;pointer-events:none;}
  .hero-card .tag{
    align-self:flex-start;background:rgba(255,255,255,0.92);color:var(--pink-deep);
    font-family:'Space Mono',monospace;font-size:0.66rem;font-weight:700;letter-spacing:.05em;
    padding:5px 10px;border-radius:999px;margin-bottom:auto;
  }
  .hero-card .card-label{font-family:'Fredoka',sans-serif;font-weight:600;font-size:1.05rem;text-shadow:0 2px 8px rgba(0,0,0,.15);}
  .card-1{width:280px;height:340px;top:0;right:40px;z-index:2;}
  .card-2{width:200px;height:230px;bottom:0;left:0;z-index:1;transform:rotate(-6deg);}

  /* pattern fills used across product art */
  .pat-hearts{background-color:var(--pink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 5 C10 2 5 2 5 6 C5 9 10 13 10 13 C10 13 15 9 15 6 C15 2 10 2 10 5Z' fill='%23ffffff' opacity='0.55'/%3E%3C/svg%3E");}
  .pat-hearts-cream{background-color:#F4C9DA;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 5 C10 2 5 2 5 6 C5 9 10 13 10 13 C10 13 15 9 15 6 C15 2 10 2 10 5Z' fill='%23ffffff' opacity='0.7'/%3E%3C/svg%3E");}
  .pat-hearts-red{background-color:#FBD7DE;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 5 C10 2 5 2 5 6 C5 9 10 13 10 13 C10 13 15 9 15 6 C15 2 10 2 10 5Z' fill='%23E23B4D' opacity='0.85'/%3E%3C/svg%3E");}
  .pat-hearts-brown{background-color:#D8B79A;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 5 C10 2 5 2 5 6 C5 9 10 13 10 13 C10 13 15 9 15 6 C15 2 10 2 10 5Z' fill='%239C7458' opacity='0.75'/%3E%3C/svg%3E");}
  .pat-stripes{background:repeating-linear-gradient(115deg, var(--sky), var(--sky) 14px, #ffffff 14px, #ffffff 28px);}
  .pat-jersey-pink{background-color:#FFC3D9;background-image:radial-gradient(#ffffff 2px, transparent 2.4px);background-size:16px 16px;}
  .pat-jersey-white{background-color:#F3F0EC;background-image:radial-gradient(#FF6FA0 2px, transparent 2.4px);background-size:16px 16px;}
  .pat-transferly{background:radial-gradient(circle at 30% 30%, #FFEFDA, #EAD9C4 70%);background-image:radial-gradient(rgba(156,116,88,0.35) 1.6px, transparent 2px);background-size:12px 12px;}
  .pat-waffle{background-color:var(--pink);background-image:repeating-conic-gradient(rgba(255,255,255,0.28) 0% 25%, transparent 0% 50%);background-size:16px 16px;}
  .pat-solid-grey{background:#D8D3D6;}
  .pat-cream-dress{background-color:#FBEEDD;background-image:linear-gradient(180deg, rgba(255,255,255,.5), transparent 40%);}

  /* ---------- GENERIC SECTION ---------- */
  section{position:relative;}
  .section-pad{padding:76px 0;}
  .head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px;flex-wrap:wrap;}

  /* ---------- BESTSELGERE CAROUSEL ---------- */
  .carousel-wrap{position:relative;}
  .carousel{display:flex;gap:20px;overflow-x:auto;padding:6px 4px 20px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;}
  .carousel::-webkit-scrollbar{height:6px;}
  .carousel::-webkit-scrollbar-thumb{background:var(--pink-pale);border-radius:10px;}
  .carousel .product-card{min-width:250px;scroll-snap-align:start;}

  /* ---------- PRODUCT CARDS ---------- */
  .product-card{
    background:var(--white);border-radius:var(--radius-md);overflow:hidden;
    box-shadow:var(--shadow-soft);transition:transform .2s ease, box-shadow .2s ease;
    display:flex;flex-direction:column;
  }
  .product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-pop);}
  .product-media{height:210px;position:relative;overflow:hidden;}
  .product-media img, .hero-card img, .ci-media img, .result-media img, .omoss-media img, .ugc-tile img{width:100%;height:100%;object-fit:cover;display:block;}
  .product-media .badge-fly{
    position:absolute;top:10px;left:10px;background:var(--white);color:var(--pink-deep);
    font-family:'Space Mono',monospace;font-size:0.62rem;font-weight:700;letter-spacing:.03em;
    padding:5px 9px;border-radius:999px;box-shadow:var(--shadow-soft);
  }
  .product-media .badge-fly.low{color:#B23A3A;}
  .product-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1;}
  .product-cat{font-family:'Space Mono',monospace;font-size:0.64rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);}
  .product-name{font-family:'Fredoka',sans-serif;font-weight:600;font-size:1.0rem;}
  .swatch-row{display:flex;gap:6px;align-items:center;}
  .swatch{width:16px;height:16px;border-radius:50%;border:2px solid var(--white);box-shadow:0 0 0 1px rgba(59,36,54,0.18);flex-shrink:0;}
  .swatch-btn{width:20px;height:20px;border-radius:50%;border:2px solid var(--white);box-shadow:0 0 0 1px rgba(59,36,54,0.18);flex-shrink:0;cursor:pointer;padding:0;transition:transform .15s ease;background-size:12px 12px;}
  .swatch-btn:hover{transform:scale(1.12);}
  .swatch-btn.active{box-shadow:0 0 0 2px var(--pink-deep);}
  .swatch-btn:focus-visible, .size-pill:focus-visible, .filter-pill:focus-visible, .btn:focus-visible{
    outline:2.5px solid var(--pink-deep);outline-offset:2px;
  }
  .size-row{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0;}
  .size-pill{
    font-size:0.72rem;font-weight:700;padding:5px 10px;border-radius:999px;border:1.5px solid rgba(59,36,54,0.15);
    color:var(--ink-soft);
  }
  .size-pill.active{background:var(--pink-deep);border-color:var(--pink-deep);color:white;}
  .size-pill[disabled]{opacity:0.55;text-decoration:line-through;cursor:not-allowed;background:repeating-linear-gradient(135deg,rgba(59,36,54,0.06),rgba(59,36,54,0.06) 3px,transparent 3px,transparent 6px);}
  .price-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;gap:8px;flex-wrap:wrap;}
  .price{font-family:'Fredoka',sans-serif;font-weight:600;font-size:1.1rem;color:var(--ink);}
  .delivery-micro{font-size:0.7rem;color:var(--ink-soft);display:flex;align-items:center;gap:5px;}

  /* ---------- FILTER PILLS ---------- */
  .filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px;}
  .filter-pill{
    padding:9px 18px;border-radius:999px;font-weight:700;font-size:0.85rem;
    background:var(--white);box-shadow:var(--shadow-soft);color:var(--ink-soft);
    border:2px solid transparent;transition:all .15s ease;
  }
  .filter-pill.active{background:var(--pink-deep);color:white;box-shadow:var(--shadow-pop);}
  .product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}

  /* ---------- TILPASNING ---------- */
  .tilpasning-section{background:var(--pink-pale);}
  .tilpasning-box{
    background:var(--white);border-radius:var(--radius-lg);padding:44px;
    display:grid;grid-template-columns:1fr 1fr;gap:40px;box-shadow:var(--shadow-soft);
  }
  .tilpasning-list{display:flex;flex-direction:column;gap:16px;margin:20px 0 26px;}
  .tilpasning-item{display:flex;gap:12px;align-items:flex-start;}
  .tilpasning-item .ic{
    width:34px;height:34px;border-radius:50%;background:var(--sky-pale);color:var(--ink);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem;
  }
  .tilpasning-item strong{display:block;font-size:0.95rem;}
  .tilpasning-item span{font-size:0.85rem;color:var(--ink-soft);}
  .fee-note{
    background:var(--cream-deep);border-radius:var(--radius-sm);padding:14px 16px;font-size:0.85rem;
    display:flex;gap:10px;align-items:center;margin-bottom:22px;
  }
  .form-field{margin-bottom:14px;}
  .form-field label{display:block;font-size:0.82rem;font-weight:700;margin-bottom:6px;color:var(--ink-soft);}
  .form-field input, .form-field select, .form-field textarea{
    width:100%;padding:11px 14px;border-radius:12px;border:1.6px solid rgba(59,36,54,0.15);
    font-family:'Nunito',sans-serif;font-size:0.92rem;background:var(--cream);
  }
  .form-field textarea{resize:vertical;min-height:80px;}

  /* ---------- LEVERING ---------- */
  .levering-section{background:var(--sky-pale);}
  .levering-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
  .levering-card{
    background:var(--white);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-soft);
    position:relative;overflow:hidden;
  }
  .levering-card .ic-big{font-size:2.1rem;margin-bottom:14px;}
  .levering-card h3{font-size:1.3rem;margin-bottom:8px;}
  .levering-days{
    display:inline-flex;align-items:center;gap:8px;font-family:'Space Mono',monospace;
    font-size:0.78rem;font-weight:700;background:var(--cream-deep);padding:7px 12px;border-radius:999px;margin-top:14px;
  }
  .levering-card.oslo{border:2px solid var(--pink);}
  .levering-card ul{margin-top:14px;display:flex;flex-direction:column;gap:8px;}
  .levering-card li{font-size:0.88rem;color:var(--ink-soft);padding-left:20px;position:relative;}
  .levering-card li::before{content:"–";position:absolute;left:0;color:var(--ink-soft);font-size:0.85rem;top:0px;}

  /* ---------- QUIZ ---------- */
  .quiz-section{background:var(--cream);}
  .quiz-card{
    max-width:620px;margin:0 auto;background:var(--white);border-radius:var(--radius-lg);
    box-shadow:var(--shadow-pop);padding:40px;text-align:center;
  }
  .quiz-progress{display:flex;gap:6px;justify-content:center;margin-bottom:24px;}
  .quiz-dot{width:34px;height:6px;border-radius:6px;background:var(--pink-pale);}
  .quiz-dot.done{background:var(--pink-deep);}
  .quiz-q{font-family:'Fredoka',sans-serif;font-size:1.25rem;margin-bottom:22px;}
  .quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .quiz-opt{
    padding:16px;border-radius:16px;border:2px solid var(--pink-pale);font-weight:700;
    background:var(--cream);transition:all .15s ease;font-size:0.92rem;
  }
  .quiz-opt:hover{border-color:var(--pink-deep);background:var(--pink-pale);}
  .quiz-result{display:none;}
  .quiz-result.show{display:block;}
  .quiz-result .result-emoji{font-size:2.6rem;margin-bottom:6px;}
  .quiz-result .result-card{
    display:flex;gap:16px;align-items:center;text-align:left;background:var(--cream);
    border-radius:16px;padding:14px;margin:20px 0;
  }
  .quiz-result .result-media{width:76px;height:76px;border-radius:12px;flex-shrink:0;}
  .quiz-restart{margin-top:14px;font-size:0.85rem;color:var(--ink-soft);text-decoration:underline;cursor:pointer;}

  /* ---------- TRUST / SOCIAL PROOF ---------- */
  .trust-section{background:var(--white);}
  .stars-line{color:#F5B942;font-size:1.1rem;letter-spacing:2px;}
  .reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px;}
  .review-card{background:var(--cream);border-radius:var(--radius-md);padding:22px;}
  .review-card p{font-size:0.92rem;color:var(--ink-soft);}
  .review-name{font-weight:800;font-size:0.88rem;margin-top:10px;}
  .review-disclaimer{font-size:0.72rem;color:var(--ink-soft);margin-top:10px;font-style:italic;}
  .ugc-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:34px;}
  .ugc-tile{aspect-ratio:1;border-radius:14px;position:relative;overflow:hidden;}
  .ugc-tile .ig-mark{position:absolute;bottom:8px;right:8px;color:#fff;font-size:0.9rem;opacity:.85;}

  /* ---------- OM OSS (muslin texture zone) ---------- */
  .omoss-section{}
  .omoss-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:44px;align-items:center;}
  .omoss-media{height:380px;border-radius:var(--radius-lg);}
  .omoss-quote{font-family:'Fredoka',sans-serif;font-size:1.3rem;line-height:1.5;margin-bottom:18px;}
  .omoss-more{display:none;}
  .omoss-more.expanded{display:block;}
  .signature{font-family:'Space Mono',monospace;font-size:0.8rem;color:var(--pink-deep);margin-top:18px;}
  /* ---------- KONTAKT ---------- */
  .kontakt-section{background:var(--ink);color:var(--cream);}
  .kontakt-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
  .kontakt-section .section-title{color:var(--cream);}
  .kontakt-section .section-sub{color:rgba(255,247,236,0.7);}
  .social-row{display:flex;gap:14px;margin-top:24px;flex-wrap:wrap;}
  .social-btn{
    display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(255,247,236,0.1);
    color:var(--cream);border:1.5px solid rgba(255,247,236,0.2);transition:all .15s ease;font-size:0.82rem;font-weight:700;
  }
  .social-btn:hover{background:var(--pink-deep);border-color:var(--pink-deep);}
  .contact-card{background:rgba(255,247,236,0.06);border:1.5px solid rgba(255,247,236,0.15);border-radius:var(--radius-lg);padding:30px;}
  .contact-card p{color:rgba(255,247,236,0.75);font-size:0.92rem;}

  /* ---------- FOOTER ---------- */
  footer{background:#2E1C29;color:rgba(255,247,236,0.65);padding:44px 0 26px;font-size:0.85rem;}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;margin-bottom:30px;}
  .footer-grid h4{color:var(--cream);font-size:0.85rem;font-family:'Nunito',sans-serif;font-weight:800;margin-bottom:12px;letter-spacing:.02em;}
  .footer-grid li{margin-bottom:8px;}
  .footer-grid a:hover{color:var(--pink);}
  .footer-grid button.linklike{color:inherit;text-align:left;font-size:inherit;text-decoration:none;}
  .footer-grid button.linklike:hover{color:var(--pink);}
  .pay-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
  .pay-badge{
    background:rgba(255,247,236,0.08);padding:6px 12px;border-radius:8px;font-family:'Space Mono',monospace;
    font-size:0.7rem;font-weight:700;color:var(--cream);
  }
  .footer-bottom{
    border-top:1px solid rgba(255,247,236,0.12);padding-top:20px;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:0.76rem;
  }

  /* ---------- PRODUCT QUICK VIEW MODAL ---------- */
  .product-modal-overlay{position:fixed;inset:0;background:rgba(59,36,54,0.5);z-index:105;opacity:0;pointer-events:none;transition:opacity .25s ease;}
  .product-modal-overlay.show{opacity:1;pointer-events:auto;}
  .product-modal{
    position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(0.96);
    width:920px;max-width:94vw;max-height:90vh;background:var(--white);border-radius:var(--radius-lg);
    z-index:110;box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;transition:all .22s ease;
    display:flex;overflow:hidden;
  }
  .product-modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
  .pm-gallery{width:60%;flex-shrink:0;background:var(--cream);position:relative;display:flex;flex-direction:column;}
  .pm-main-media{flex:1;position:relative;min-height:460px;}
  .pm-main-media img{width:100%;height:100%;object-fit:cover;display:block;}
  .pm-nav{
    position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;
    background:rgba(255,255,255,0.85);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft);color:var(--ink);
  }
  .pm-nav.prev{left:10px;} .pm-nav.next{right:10px;}
  .pm-thumbs{display:flex;gap:8px;padding:10px;overflow-x:auto;}
  .pm-thumb{width:60px;height:60px;border-radius:10px;overflow:hidden;flex-shrink:0;border:2px solid transparent;opacity:0.6;}
  .pm-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
  .pm-thumb.active{border-color:var(--pink-deep);opacity:1;}
  .pm-info{width:40%;padding:28px;overflow-y:auto;position:relative;}
  .pm-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;background:var(--cream);box-shadow:var(--shadow-soft);display:flex;align-items:center;justify-content:center;}
  .pm-cat{font-family:'Space Mono',monospace;font-size:0.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--pink-deep);margin-bottom:6px;}
  .pm-name{font-family:'Fredoka',sans-serif;font-size:1.35rem;margin-bottom:10px;padding-right:30px;}
  .pm-price{font-family:'Fredoka',sans-serif;font-size:1.4rem;margin-bottom:16px;}
  .pm-badge{display:inline-block;font-family:'Space Mono',monospace;font-size:0.68rem;font-weight:700;background:var(--pink-pale);color:var(--pink-deep);padding:5px 10px;border-radius:999px;margin-bottom:14px;}
  .pm-secondary{margin-top:22px;padding-top:18px;border-top:1px solid rgba(59,36,54,0.1);}
  @media (max-width:700px){
    .product-modal{flex-direction:column;max-height:92vh;}
    .pm-gallery, .pm-info{width:100%;}
    .pm-main-media{min-height:300px;}
  }


  /* ---------- SIZE GUIDE MODAL ---------- */
  .size-modal-overlay{position:fixed;inset:0;background:rgba(59,36,54,0.5);z-index:115;opacity:0;pointer-events:none;transition:opacity .25s ease;}
  .size-modal-overlay.show{opacity:1;pointer-events:auto;}
  .size-modal{
    position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(0.96);
    width:560px;max-width:92vw;max-height:82vh;background:var(--white);border-radius:var(--radius-lg);
    z-index:120;box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;transition:all .22s ease;
    display:flex;flex-direction:column;
  }
  .size-modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
  .size-modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px dashed rgba(59,36,54,0.15);flex-shrink:0;}
  .size-modal-body{overflow-y:auto;padding:18px 24px 26px;}
  .size-table{width:100%;border-collapse:collapse;font-size:0.82rem;}
  .size-table th, .size-table td{padding:8px 6px;text-align:center;border-bottom:1px solid rgba(59,36,54,0.1);}
  .size-table th{font-family:'Space Mono',monospace;font-size:0.66rem;letter-spacing:.03em;text-transform:uppercase;color:var(--pink-deep);}
  .size-table td:first-child, .size-table th:first-child{text-align:left;font-weight:800;}
  .size-table tr:nth-child(even) td{background:var(--cream);}
  .size-tip{font-size:0.82rem;color:var(--ink-soft);margin-top:16px;background:var(--pink-pale);padding:12px 14px;border-radius:12px;}
  .size-tip a{color:var(--pink-deep);font-weight:800;text-decoration:underline;}
  .size-guide-link{font-size:0.78rem;font-weight:700;color:var(--pink-deep);text-decoration:underline;background:none;border:none;cursor:pointer;padding:0;}

  /* ---------- PRODUCT PAGE FIT / SHIPPING NOTES ---------- */
  .pm-fit-row{font-size:0.85rem;margin-bottom:16px;}
  .pm-fit-row strong{display:block;font-size:0.78rem;color:var(--ink-soft);font-weight:700;margin-bottom:10px;}
  .pm-fit-scale{position:relative;height:4px;background:var(--pink-pale);border-radius:2px;margin:0 4px 8px;}
  .pm-fit-dot{
    position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--pink-deep);
    transform:translate(-50%,-50%);box-shadow:0 0 0 3px var(--white), 0 2px 6px rgba(59,36,54,0.25);
    transition:left .2s ease;
  }
  .pm-fit-labels{display:flex;justify-content:space-between;font-size:0.68rem;color:var(--ink-soft);font-weight:700;}
  .pm-fit-labels span.active{color:var(--pink-deep);}
  .pm-replace-note{
    display:flex;gap:8px;align-items:flex-start;background:var(--mint);border-radius:12px;
    padding:10px 12px;font-size:0.8rem;color:var(--ink);margin-bottom:10px;
  }
  .pm-ship-badge{
    display:inline-flex;align-items:center;gap:6px;font-family:'Space Mono',monospace;font-size:0.72rem;
    font-weight:700;color:var(--ink-soft);margin-bottom:16px;
  }

  .overlay{position:fixed;inset:0;background:rgba(59,36,54,0.4);z-index:90;opacity:0;pointer-events:none;transition:opacity .25s ease;}
  .overlay.show{opacity:1;pointer-events:auto;}
  .cart-drawer{
    position:fixed;top:0;right:0;height:100%;width:400px;max-width:92vw;background:var(--cream);
    z-index:100;box-shadow:-10px 0 40px rgba(0,0,0,0.2);transform:translateX(100%);
    transition:transform .3s cubic-bezier(.34,1.1,.64,1);display:flex;flex-direction:column;
  }
  .cart-drawer.open{transform:translateX(0);}
  .cart-head{display:flex;justify-content:space-between;align-items:center;padding:22px 22px 14px;border-bottom:2px dashed rgba(59,36,54,0.15);}
  .cart-close{width:36px;height:36px;border-radius:50%;background:var(--white);box-shadow:var(--shadow-soft);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
  .cart-items{flex:1;overflow-y:auto;padding:16px 22px;}
  .cart-empty{text-align:center;padding:60px 20px;color:var(--ink-soft);}
  .cart-empty .emoji{font-size:2.4rem;margin-bottom:10px;}
  .cart-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid rgba(59,36,54,0.08);cursor:pointer;}
  .cart-item:hover .ci-name{color:var(--pink-deep);}

  /* ---------- CART SUGGESTIONS ("Fullfør settet") ---------- */
  .cart-suggestions{padding:14px 22px;border-top:2px dashed rgba(59,36,54,0.15);max-height:280px;overflow-y:auto;flex-shrink:0;}
  .cart-suggestions-title{font-family:'Fredoka',sans-serif;font-weight:600;font-size:0.92rem;margin-bottom:10px;}
  .suggestion-card{display:flex;gap:10px;align-items:flex-start;background:var(--cream);border-radius:14px;padding:10px;margin-bottom:10px;}
  .sg-media{width:56px;height:56px;border-radius:10px;flex-shrink:0;overflow:hidden;}
  .sg-media img{width:100%;height:100%;object-fit:cover;display:block;}
  .sg-body{flex:1;min-width:0;}
  .sg-name{font-weight:800;font-size:0.8rem;}
  .sg-price{font-size:0.76rem;color:var(--ink-soft);margin:2px 0 6px;}
  .sg-sizes{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px;}
  .sg-sizes .size-pill{font-size:0.64rem;padding:3px 8px;}
  .sg-add-btn{width:100%;}
  .cart-item .ci-media{width:64px;height:64px;border-radius:12px;flex-shrink:0;}
  .cart-item .ci-body{flex:1;min-width:0;}
  .cart-item .ci-name{font-weight:800;font-size:0.9rem;}
  .cart-item .ci-meta{font-size:0.78rem;color:var(--ink-soft);margin:2px 0 6px;}
  .qty-control{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
  .qty-control button{width:24px;height:24px;border-radius:50%;background:var(--pink-pale);font-weight:800;flex-shrink:0;}
  .ci-remove{font-size:0.74rem;color:#B23A3A;text-decoration:underline;margin-left:6px;}
  .cart-foot{padding:18px 22px 24px;border-top:2px dashed rgba(59,36,54,0.15);}
  .postnr-row{display:flex;gap:8px;margin-bottom:12px;}
  .postnr-row input{flex:1;padding:10px 12px;border-radius:10px;border:1.6px solid rgba(59,36,54,0.15);font-size:0.85rem;min-width:0;}
  .delivery-est{font-size:0.82rem;background:var(--mint);padding:9px 12px;border-radius:10px;margin-bottom:14px;display:none;}
  .delivery-est.show{display:block;}
  .subtotal-row{display:flex;justify-content:space-between;font-family:'Fredoka',sans-serif;font-size:1.02rem;margin-bottom:8px;}
  .subtotal-row.total{font-size:1.2rem;margin-top:6px;border-top:1px dashed rgba(59,36,54,0.2);padding-top:10px;}
  .pay-icons-row{display:flex;gap:8px;margin-top:12px;justify-content:center;}

  /* ---------- POLICY MODAL ---------- */
  .policy-overlay{position:fixed;inset:0;background:rgba(59,36,54,0.5);z-index:105;opacity:0;pointer-events:none;transition:opacity .25s ease;}
  .policy-overlay.show{opacity:1;pointer-events:auto;}
  .policy-modal{
    position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(0.96);
    width:700px;max-width:92vw;max-height:84vh;background:var(--white);border-radius:var(--radius-lg);
    z-index:110;box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;transition:all .22s ease;
    display:flex;flex-direction:column;
  }
  .policy-modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
  .policy-modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;border-bottom:2px dashed rgba(59,36,54,0.15);}
  .policy-modal-body{overflow-y:auto;padding:20px 26px 30px;font-size:0.88rem;color:var(--ink-soft);}
  .policy-modal-body h4{color:var(--ink);font-size:1rem;margin:20px 0 8px;}
  .policy-modal-body h4:first-child{margin-top:0;}
  .policy-modal-body p{margin-bottom:10px;}
  .policy-modal-body strong{color:var(--ink);}

  /* ---------- TOAST ---------- */
  .toast{
    position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);
    background:var(--ink);color:var(--cream);padding:12px 22px;border-radius:999px;font-weight:700;font-size:0.85rem;
    z-index:200;opacity:0;pointer-events:none;transition:all .3s ease;max-width:88vw;text-align:center;
  }
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

  .suggest-toast{
    position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);
    background:var(--white);color:var(--ink);padding:12px 14px 12px 16px;border-radius:18px;
    box-shadow:var(--shadow-pop);display:flex;align-items:center;gap:12px;
    z-index:200;opacity:0;pointer-events:none;transition:all .3s ease;max-width:92vw;
  }
  .suggest-toast.show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0);}
  .suggest-toast-thumb{width:44px;height:44px;border-radius:10px;overflow:hidden;flex-shrink:0;background:var(--cream);}
  .suggest-toast-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
  .suggest-toast-text{font-size:0.8rem;line-height:1.25;flex:1;min-width:0;}
  .suggest-toast-text strong{display:block;font-family:'Fredoka',sans-serif;font-size:0.88rem;font-weight:600;}
  .suggest-toast-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0;}
  .suggest-toast-add{background:var(--pink-deep);color:white;border:none;border-radius:999px;padding:7px 14px;font-size:0.76rem;font-weight:700;cursor:pointer;white-space:nowrap;}
  .suggest-toast-dismiss{background:none;border:none;color:var(--ink-soft);font-size:0.7rem;cursor:pointer;padding:2px;}
  @media (max-width:520px){ .suggest-toast{ left:12px; right:12px; transform:translateY(20px); max-width:none; } .suggest-toast.show{ transform:translateY(0); } }

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:980px){
    nav.main-nav{display:none;}
    nav.main-nav.nav-open{
      display:flex;position:absolute;top:60px;right:16px;left:16px;
      background:var(--white);flex-direction:column;padding:16px 22px;
      border-radius:16px;box-shadow:var(--shadow-pop);z-index:60;
    }
    .burger{display:flex;}
    .hero-grid, .tilpasning-box, .levering-grid, .omoss-grid, .kontakt-grid{grid-template-columns:1fr;}
    .hero-art{height:300px;margin-top:10px;}
    .card-1{width:230px;height:280px;right:10px;}
    .card-2{width:160px;height:190px;}
    .product-grid{grid-template-columns:repeat(2,1fr);}
    .reviews-grid{grid-template-columns:1fr;}
    .ugc-strip{grid-template-columns:repeat(3,1fr);}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .section-pad{padding:56px 0;}
    .omoss-media{height:260px;}
  }
  @media (max-width:560px){
    .container{padding:0 16px;}
    .nav-row{padding:12px 16px;}
    .product-grid{grid-template-columns:1fr 1fr;gap:12px;}
    .product-media{height:150px;}
    .quiz-options{grid-template-columns:1fr;}
    .quiz-card{padding:26px 20px;}
    .footer-grid{grid-template-columns:1fr;}
    .ugc-strip{grid-template-columns:repeat(3,1fr);}
    .hero-art{height:260px;}
    .card-1{width:190px;height:230px;top:0;right:0;}
    .card-2{width:130px;height:150px;bottom:0;left:0;}
    .trust-strip{font-size:0.62rem;line-height:1.4;padding:8px 10px;}
    .tilpasning-box{padding:22px;}
    .levering-card{padding:22px;}
    .hero-ctas .btn, .btn-full{width:100%;}
    .hero-ctas{flex-direction:column;}
    .cart-drawer{width:100vw;max-width:100vw;}
    .policy-modal{width:94vw;max-height:88vh;}
  }