
  :root{
    /* Deep navy editorial palette */
    --cream:#F2F5FA;
    --cream-2:#E7EDF6;
    --paper:#FFFFFF;
    --blush:#3A6EA5;
    --blush-soft:#DDE8F5;
    --blush-2:#2F5C8C;
    --blush-deep:#1B3A63;
    --rose:#C9A227;
    --lilac:#CFDCEC;
    --lilac-soft:#EAF0F8;
    --lilac-2:#9FBBD8;
    --lilac-deep:#5B84B1;
    --purple:#1B3A63;
    --butter:#F0DFA6;
    --butter-soft:#FAF3DE;
    --butter-2:#E4C766;
    --butter-deep:#C9A227;
    --peach:#DCE7F3;
    --peach-soft:#EEF3FA;
    --mint:#BFD3E6;
    --mint-soft:#E6EEF7;
    --sky:#C7DDF0;
    --ink:#0E1B34;
    --text:#2B3A52;
    --text-soft:#64748B;
    --rule:#D7E1EE;

    --display:'Archivo Black', system-ui, sans-serif;
    --body:'Hind', system-ui, sans-serif;
    --hand:'Hind', system-ui, sans-serif;

    --container:1280px;
    --gutter:clamp(20px, 4vw, 56px);
    --r-sm:4px;
    --r-md:8px;
    --r-lg:12px;
  }


  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
  body{
    font-family:var(--body);
    background:var(--cream);
    color:var(--text);
    font-size:16px;
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;height:auto}
  a{color:inherit;text-decoration:none}
  button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}
  ::selection{background:var(--blush);color:var(--ink)}

  .wrap{
    max-width:var(--container);
    margin:0 auto;
    padding:0 var(--gutter);
    position:relative;
  }

  /* ============ DECORATIONS ============ */
  .sticker{
    position:absolute;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-family:var(--hand);
    font-weight:700;
    border-radius:3px;
    padding:8px 18px;
    box-shadow:0 6px 0 rgba(61,43,79,.08);
    z-index:5;
    pointer-events:none;
    transition:transform .3s ease;
  }
  .sparkle{
    color:var(--butter-deep);
    font-size:24px;
    display:inline-block;
    animation:twinkle 2.4s ease-in-out infinite;
  }
  @keyframes twinkle{
    0%,100%{transform:scale(1) rotate(0);opacity:1}
    50%{transform:scale(1.2) rotate(15deg);opacity:.7}
  }
  .squiggle{
    width:100%;
    height:24px;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24'><path d='M0 12 Q 15 0, 30 12 T 60 12 T 90 12 T 120 12' fill='none' stroke='%23D96E83' stroke-width='2.5' stroke-linecap='round'/></svg>");
    background-repeat:repeat-x;
    background-size:120px 24px;
  }
  .confetti{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    z-index:0;
  }

  /* ============ MARQUEE TOP ============ */
  .top-bar{
    background:var(--ink);
    color:var(--cream);
    overflow:hidden;
    position:relative;
  }
  .top-track{
    display:flex;
    gap:50px;
    padding:11px 0;
    white-space:nowrap;
    animation:marq 38s linear infinite;
    font-family:var(--body);
    font-weight:500;
    font-size:13px;
    letter-spacing:.04em;
  }
  .top-track span{display:inline-flex;align-items:center;gap:14px}
  .top-track .heart{color:var(--blush)}
  .top-track .star{color:var(--butter)}
  @keyframes marq{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }

  /* ============ HEADER ============ */
  .header{
    background:var(--cream);
    padding:18px 0;
    position:sticky;top:0;z-index:50;
    border-bottom:1px solid var(--rule);
  }
  .header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
  }
  .brand{
    display:flex;
    align-items:center;
    gap:10px;
    font-family:var(--display);
    color:var(--ink);
    font-size:22px;
    letter-spacing:-.01em;
  }
  .brand-emoji{
    width:36px;height:36px;
    border-radius:50%;
    background:var(--blush);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    box-shadow:inset 0 -3px 0 rgba(235,143,161,.4);
  }
  .header-meta{
    display:flex;
    align-items:center;
    gap:16px;
    font-family:var(--body);
    font-size:13px;
    font-weight:500;
    color:var(--text-soft);
  }
  .header-meta .pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 14px;
    border-radius:3px;
    background:var(--mint-soft);
    color:var(--ink);
    font-weight:600;
  }
  .header-meta .pill .live{
    width:8px;height:8px;
    border-radius:50%;
    background:#5BB678;
    animation:pulse 2s infinite;
  }
  @keyframes pulse{
    0%,100%{opacity:.4}
    50%{opacity:1}
  }
  @media (max-width:720px){
    .header-meta span:not(.pill){display:none}
  }

  /* ============ HERO ============ */
  .hero{
    padding:60px 0 90px;
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(ellipse 60% 50% at 0% 0%, var(--lilac-soft), transparent 60%),
      radial-gradient(ellipse 60% 50% at 100% 30%, var(--blush-soft), transparent 65%),
      radial-gradient(ellipse 50% 40% at 50% 100%, var(--butter-soft), transparent 70%),
      var(--cream);
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:80px;
    align-items:center;
    position:relative;
    z-index:1;
  }
  @media (max-width:980px){
    .hero{padding:40px 0 70px}
    .hero-grid{grid-template-columns:1fr;gap:50px}
  }
  .hero-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:8px 18px;
    border-radius:3px;
    background:var(--paper);
    border:1.5px solid var(--blush);
    font-family:var(--body);
    font-weight:600;
    font-size:13px;
    color:var(--ink);
    margin-bottom:28px;
    box-shadow:0 6px 0 var(--blush-soft);
  }
  .hero-eyebrow .em{font-size:16px}
  .hero h1{
    font-family:var(--display);
    font-weight:400;
    font-size:clamp(56px, 9vw, 124px);
    line-height:.92;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:28px;
  }
  .hero h1 .pill-word{
    display:inline-block;
    position:relative;
    z-index:1;
  }
  .hero h1 .pill-word::before{
    content:"";
    position:absolute;
    inset:8% -6% 12% -6%;
    background:var(--butter);
    border-radius:3px;
    z-index:-1;
    transform:rotate(-1deg);
  }
  .hero h1 .lilac-pill::before{background:var(--lilac)}
  .hero h1 .blush-pill::before{background:var(--blush)}
  .hero h1 .italic-word{
    font-family:var(--hand);
    font-style:italic;
    font-size:.78em;
    color:var(--rose);
    transform:rotate(-2deg);
    display:inline-block;
    margin-left:.1em;
  }
  .hero-lede{
    font-size:18px;
    line-height:1.65;
    color:var(--text);
    max-width:520px;
    margin-bottom:38px;
    min-height:120px;
    font-display:swap;
  }
  .hero-cta-row{
    display:flex;
    align-items:center;
    gap:22px;
    flex-wrap:wrap;
  }
  .btn-primary{
    display:inline-flex;
    align-items:center;
    gap:14px;
    background:var(--ink);
    color:var(--cream);
    padding:20px 32px;
    border-radius:3px;
    font-family:var(--body);
    font-weight:700;
    font-size:16px;
    letter-spacing:-.005em;
    box-shadow:0 8px 0 rgba(61,43,79,.15);
    transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
    position:relative;
  }
  .btn-primary::after{
    content:"";
    position:absolute;
    inset:-4px;
    border-radius:inherit;
    border:1.5px dashed var(--rose);
    opacity:0;
    transition:opacity .3s ease;
  }
  .btn-primary:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 0 rgba(61,43,79,.18);
    background:var(--rose);
  }
  .btn-primary:hover::after{opacity:1}
  .btn-primary .price-tag{
    background:var(--butter);
    color:var(--ink);
    padding:6px 12px;
    border-radius:3px;
    font-size:13px;
    font-weight:700;
  }
  .btn-primary .arrow{transition:transform .25s ease}
  .btn-primary:hover .arrow{transform:translateX(4px)}

  .hero-cta-note{
    display:flex;
    align-items:center;
    gap:8px;
    font-family:var(--hand);
    font-size:22px;
    font-weight:700;
    color:var(--rose);
    transform:rotate(-2deg);
  }

  /* hero product visual */
  .hero-visual{
    position:relative;
    padding:40px;
  }
  .hero-product{
    position:relative;
    background:var(--paper);
    border-radius:var(--r-md);
    padding:24px;
    box-shadow:0 30px 60px -20px rgba(61,43,79,.2);
    transform:rotate(2deg);
    transition:transform .5s cubic-bezier(.2,.8,.2,1);
  }
  .hero-product:hover{transform:rotate(0)}
  .hero-product::before{
    /* washi tape */
    content:"";
    position:absolute;
    top:-18px;left:50%;
    transform:translateX(-50%) rotate(-3deg);
    width:120px;height:36px;
    background:repeating-linear-gradient(45deg, var(--blush) 0 8px, var(--blush-2) 8px 16px);
    opacity:.85;
    box-shadow:0 4px 8px rgba(61,43,79,.1);
    z-index:2;
  }
  .hero-product img,
  .hero-product video{
    border-radius:var(--r-sm);
    width:100%;
    height:auto;
    object-fit:contain;
    display:block;
    background:linear-gradient(135deg, var(--blush-soft) 0%, var(--lilac-soft) 100%);
  }
  .hero-product-meta{
    margin-top:18px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-family:var(--body);
    font-size:13px;
    color:var(--text-soft);
    font-weight:500;
  }
  .hero-product-meta .badge{
    background:var(--mint-soft);
    color:#2D6B47;
    padding:4px 10px;
    border-radius:3px;
    font-weight:700;
    font-size:11px;
  }

  .sticker-1{
    top:-10px;right:-10px;
    background:var(--butter);
    color:var(--ink);
    transform:rotate(8deg);
    font-size:14px;
    z-index:10;
  }
  .sticker-2{
    bottom:20px;left:-30px;
    background:var(--lilac);
    color:var(--ink);
    transform:rotate(-12deg);
    font-size:14px;
    z-index:10;
  }
  .floating-sparkle{
    position:absolute;
    font-size:28px;
    z-index:3;
  }
  .fs-1{top:8%;right:20%;color:var(--butter-deep);animation:twinkle 2.6s infinite}
  .fs-2{bottom:18%;right:8%;color:var(--rose);animation:twinkle 3s .8s infinite}
  .fs-3{top:45%;left:5%;color:var(--purple);animation:twinkle 2.2s .4s infinite}

  /* hero floating shapes */
  .floating-shape{
    position:absolute;
    border-radius:50%;
    z-index:0;
    pointer-events:none;
  }
  .fsh-1{top:5%;left:8%;width:90px;height:90px;background:var(--blush);opacity:.4;animation:float 8s ease-in-out infinite}
  .fsh-2{bottom:10%;left:50%;width:60px;height:60px;background:var(--butter);opacity:.5;animation:float 6s ease-in-out 1s infinite}
  .fsh-3{top:30%;right:5%;width:50px;height:50px;background:var(--lilac-2);opacity:.4;animation:float 7s ease-in-out 2s infinite}
  @keyframes float{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-15px)}
  }

  /* ============ TRUST STRIP ============ */
  .trust-strip{
    background:var(--ink);
    color:var(--cream);
    padding:32px 0;
    position:relative;
  }

  /* ============ CAROUSELS (marquee infinito) ============ */
  .carousels-section{
    padding:80px 0 100px;
    background:
      radial-gradient(ellipse 50% 40% at 0% 50%, var(--blush-soft), transparent 60%),
      radial-gradient(ellipse 50% 40% at 100% 50%, var(--lilac-soft), transparent 60%),
      var(--paper);
    overflow:hidden;
  }
  @media (max-width:780px){
    .carousels-section{padding:60px 0 70px}
  }
  .carousels-head{
    text-align:center;
    max-width:680px;
    margin:0 auto 50px;
  }
  .carousels-head .section-tag{margin-bottom:18px}
  .carousels-head h2{
    font-family:var(--display);
    font-size:clamp(36px, 5.5vw, 60px);
    line-height:.98;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:16px;
  }
  .carousels-head h2 .italic{
    font-family:var(--hand);
    font-style:italic;
    color:var(--rose);
    font-size:.85em;
  }
  .carousels-head h2 .pill-y{
    position:relative;
    display:inline-block;
    z-index:1;
  }
  .carousels-head h2 .pill-y::before{
    content:"";
    position:absolute;
    inset:8% -4% 12% -4%;
    background:var(--butter);
    border-radius:3px;
    z-index:-1;
    transform:rotate(-1deg);
  }
  .carousels-head p{
    font-size:16px;
    color:var(--text);
    line-height:1.6;
    max-width:540px;
    margin:0 auto;
  }

  .carousel-row-head{
    text-align:center;
    max-width:760px;
    margin:50px auto 28px;
  }
  .carousel-row-head .section-tag{margin-bottom:12px}
  .carousel-row-head h3{
    font-family:var(--display);
    font-size:clamp(22px, 3.5vw, 34px);
    line-height:1.12;
    letter-spacing:-.02em;
    color:var(--ink);
  }

  .carousel{
    margin-bottom:28px;
    overflow:hidden;
    position:relative;
    -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%);
    mask-image:linear-gradient(90deg, transparent 0%, #000 6%, #000 94%, transparent 100%);
  }
  .carousel:last-child{margin-bottom:0}
  .carousel-track{
    display:flex;
    gap:18px;
    width:max-content;
    animation:slide 40s linear infinite;
  }
  .carousel-track.reverse{
    animation:slide-rev 35s linear infinite;
  }
  .carousel-track.faster{
    animation-duration:30s;
  }
  .carousel:hover .carousel-track{
    animation-play-state:paused;
  }
  @keyframes slide{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }
  @keyframes slide-rev{
    from{transform:translateX(-50%)}
    to{transform:translateX(0)}
  }
  .carousel-item{
    flex-shrink:0;
    width:220px;
    height:280px;
    border-radius:14px;
    overflow:hidden;
    background:var(--cream);
    box-shadow:0 10px 24px -12px rgba(61,43,79,.18);
    border:1.5px solid rgba(184,157,217,.2);
    transition:transform .3s ease;
  }
  .carousel-item:hover{
    transform:translateY(-4px) rotate(-1deg);
    box-shadow:0 18px 32px -14px rgba(61,43,79,.28);
  }
  .carousel-item img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  @media (max-width:780px){
    .carousel-item{width:170px;height:215px}
    .carousel-track{gap:14px}
  }

  /* ============ VIDEOS SECTION ============ */
  .videos-section{
    background:var(--paper);
    position:relative;
    overflow:hidden;
  }
  .videos-section::before{
    content:"";
    position:absolute;
    top:10%;right:-5%;
    width:200px;height:200px;
    background:var(--butter);
    border-radius:50%;
    opacity:.3;
    filter:blur(50px);
  }
  .videos-section::after{
    content:"";
    position:absolute;
    bottom:5%;left:-5%;
    width:200px;height:200px;
    background:var(--blush);
    border-radius:50%;
    opacity:.35;
    filter:blur(50px);
  }
  .videos-head{
    text-align:center;
    max-width:680px;
    margin:0 auto 50px;
    position:relative;
    z-index:1;
  }
  .videos-head .section-tag{margin-bottom:18px}
  .videos-head h2{
    font-family:var(--display);
    font-size:clamp(36px, 5.5vw, 64px);
    line-height:.98;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:16px;
  }
  .videos-head h2 .italic{
    font-family:var(--hand);
    font-style:italic;
    color:var(--rose);
    font-size:.85em;
  }
  .videos-head h2 .pill-l{
    position:relative;
    display:inline-block;
    z-index:1;
  }
  .videos-head h2 .pill-l::before{
    content:"";
    position:absolute;
    inset:8% -4% 12% -4%;
    background:var(--lilac);
    border-radius:3px;
    z-index:-1;
    transform:rotate(1deg);
  }
  .videos-head p{
    font-size:16px;
    color:var(--text);
    line-height:1.6;
    max-width:540px;
    margin:0 auto;
  }
  .videos-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px;
    max-width:880px;
    margin:0 auto;
    position:relative;
    z-index:1;
  }
  @media (max-width:700px){
    .videos-grid{grid-template-columns:1fr;gap:18px}
  }
  .video-card{
    background:var(--cream);
    border-radius:var(--r-md);
    overflow:hidden;
    box-shadow:0 14px 30px -14px rgba(61,43,79,.22);
    transition:transform .35s ease;
    padding:14px;
    position:relative;
  }
  .video-card:hover{
    transform:translateY(-6px) rotate(-.5deg);
  }
  .video-card.pink{background:var(--blush-soft)}
  .video-card.lilac{background:var(--lilac-soft)}
  .video-card.butter{background:var(--butter-soft)}
  .video-card .video-wrap{
    aspect-ratio:1/1;
    border-radius:14px;
    overflow:hidden;
    background:var(--ink);
    position:relative;
  }
  .video-card .video-wrap wistia-player{
    width:100%;
    height:100%;
    display:block;
  }
  .video-card .video-wrap wistia-player:not(:defined){
    width:100%;
    height:100%;
    background:#0E1B34 center / cover no-repeat;
  }
  .video-card .v-label{
    padding:14px 6px 4px;
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  .video-card .v-name{
    font-family:var(--display);
    font-size:18px;
    color:var(--ink);
    letter-spacing:-.01em;
  }
  .video-card .v-tag{
    font-family:var(--hand);
    font-weight:700;
    font-size:14px;
    color:var(--rose);
  }
  .video-card .tape{
    position:absolute;
    top:-10px;left:50%;
    transform:translateX(-50%) rotate(-3deg);
    width:80px;height:22px;
    background:repeating-linear-gradient(45deg, var(--blush) 0 6px, var(--blush-2) 6px 12px);
    opacity:.85;
    z-index:2;
    border-radius:2px;
  }
  .video-card.lilac .tape{background:repeating-linear-gradient(45deg, var(--lilac) 0 6px, var(--lilac-2) 6px 12px)}
  .video-card.butter .tape{background:repeating-linear-gradient(45deg, var(--butter) 0 6px, var(--butter-2) 6px 12px)}

  /* ============ FACEBOOK COMMENTS ============ */
  .fb-section{
    background:var(--cream);
    position:relative;
  }
  .fb-head{
    text-align:center;
    max-width:680px;
    margin:0 auto 50px;
  }
  .fb-head .section-tag{margin-bottom:18px}
  .fb-head h2{
    font-family:var(--display);
    font-size:clamp(36px, 5.5vw, 64px);
    line-height:.98;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:16px;
  }
  .fb-head h2 .italic{
    font-family:var(--hand);
    font-style:italic;
    color:var(--rose);
    font-size:.85em;
  }
  .fb-head p{
    font-size:16px;
    color:var(--text);
    line-height:1.6;
    max-width:540px;
    margin:0 auto;
  }
  .fb-box{
    max-width:720px;
    margin:0 auto;
    background:var(--paper);
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 20px 50px -20px rgba(61,43,79,.2);
    border:1.5px solid var(--rule);
  }
  .fb-box-head{
    background:#FFFFFF;
    padding:14px 22px;
    border-bottom:1px solid #E4E6EB;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-family:var(--body);
    font-size:14px;
    font-weight:600;
    color:#1C1E21;
  }
  .fb-box-head .fb-icon{
    display:inline-flex;
    align-items:center;
    gap:8px;
  }
  .fb-box-head .fb-logo{
    width:24px;height:24px;
    background:#1877F2;
    color:#fff;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-family:Georgia,serif;
    font-weight:700;
    font-size:16px;
    line-height:1;
  }
  .fb-box-head .count{
    color:#65676B;
    font-size:13px;
    font-weight:500;
  }
  .fb-comments{
    background:#FFFFFF;
    padding:14px 22px 22px;
  }
  .fb-comment{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:10px 0 6px;
  }
  .fb-comment.reply{
    margin-left:42px;
  }
  .fb-comment img.fb-avatar{
    width:36px;height:36px;
    border-radius:50%;
    object-fit:cover;
    flex-shrink:0;
  }
  .fb-comment .fb-body{
    flex:1;
    min-width:0;
  }
  .fb-comment .fb-bubble{
    background:#F0F2F5;
    padding:8px 12px;
    border-radius:18px;
    display:inline-block;
    max-width:100%;
  }
  .fb-comment .fb-name{
    font-family:'Helvetica Neue', system-ui, sans-serif;
    font-weight:600;
    font-size:13.5px;
    color:#050505;
    margin-bottom:2px;
    line-height:1.2;
  }
  .fb-comment .fb-text{
    font-family:'Helvetica Neue', system-ui, sans-serif;
    font-size:14.5px;
    color:#050505;
    line-height:1.35;
    word-wrap:break-word;
  }
  .fb-comment .fb-meta{
    font-family:'Helvetica Neue', system-ui, sans-serif;
    font-size:12px;
    color:#65676B;
    padding:4px 12px 0;
    display:flex;
    align-items:center;
    gap:14px;
  }
  .fb-comment .fb-meta a{
    color:#65676B;
    font-weight:600;
    cursor:pointer;
  }
  .fb-comment .fb-meta a:hover{
    text-decoration:underline;
  }
  .fb-comment .fb-meta .liked{
    color:#1877F2;
  }
  .fb-comment .fb-meta .reactions{
    display:inline-flex;
    align-items:center;
    gap:2px;
    margin-left:auto;
    color:#65676B;
  }
  .fb-comment .fb-meta .reactions::before{
    content:"♡";
    color:#F33E58;
    font-size:13px;
    margin-right:2px;
  }
  .fb-footer-note{
    border-top:1px solid #E4E6EB;
    padding:14px 22px;
    background:#F7F8FA;
    text-align:center;
    font-family:'Helvetica Neue', system-ui, sans-serif;
    font-size:12px;
    color:#65676B;
  }
  .trust-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
    align-items:center;
  }
  .trust-cell{
    display:flex;
    flex-direction:column;
    gap:4px;
    align-items:flex-start;
  }
  .trust-cell:not(:last-child){
    padding-right:30px;
    border-right:1px dashed rgba(255,248,238,.2);
  }
  .trust-cell .v{
    font-family:var(--display);
    font-size:36px;
    line-height:1;
    color:var(--cream);
  }
  .trust-cell .v .acc-pink{color:var(--blush)}
  .trust-cell .v .acc-yellow{color:var(--butter)}
  .trust-cell .v .acc-lilac{color:var(--lilac-2)}
  .trust-cell .l{
    font-size:12px;
    color:rgba(255,248,238,.7);
    font-weight:500;
    letter-spacing:.02em;
  }
  @media (max-width:780px){
    .trust-grid{grid-template-columns:1fr 1fr;gap:20px 30px}
    .trust-cell:not(:last-child){padding-right:0;border-right:none}
    .trust-cell .v{font-size:28px}
  }

  /* ============ SECTION DEFAULT ============ */
  .section{
    padding:110px 0;
    position:relative;
  }
  @media (max-width:780px){
    .section{padding:70px 0}
  }
  .section-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:60px;
    gap:30px;
    flex-wrap:wrap;
  }
  .section-tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 14px;
    border-radius:3px;
    font-family:var(--hand);
    font-weight:700;
    font-size:18px;
    background:var(--blush);
    color:var(--ink);
    transform:rotate(-1.5deg);
    margin-bottom:18px;
  }
  .section-tag.lilac{background:var(--lilac)}
  .section-tag.butter{background:var(--butter)}
  .section-tag.peach{background:var(--peach)}
  .section-tag.mint{background:var(--mint)}
  .section h2{
    font-family:var(--display);
    font-weight:400;
    font-size:clamp(40px, 6vw, 76px);
    line-height:.95;
    letter-spacing:-.02em;
    color:var(--ink);
    max-width:780px;
  }
  .section h2 .italic{
    font-family:var(--hand);
    font-style:italic;
    color:var(--rose);
    font-size:.85em;
    display:inline-block;
    transform:rotate(-1.5deg);
  }
  .section h2 .underline{
    position:relative;
    display:inline-block;
  }
  .section h2 .underline::after{
    content:"";
    position:absolute;
    left:-2%;right:-2%;bottom:0;
    height:18px;
    background:var(--butter);
    z-index:-1;
    border-radius:3px;
  }
  .section h2 .pill-y::before,
  .section h2 .pill-p::before,
  .section h2 .pill-l::before{
    content:"";
    position:absolute;
    inset:8% -4% 12% -4%;
    background:var(--butter);
    border-radius:3px;
    z-index:-1;
    transform:rotate(-1deg);
  }
  .section h2 .pill-y,
  .section h2 .pill-p,
  .section h2 .pill-l{
    position:relative;
    z-index:1;
    display:inline-block;
  }
  .section h2 .pill-p::before{background:var(--blush)}
  .section h2 .pill-l::before{background:var(--lilac)}
  .section-sub{
    font-size:17px;
    color:var(--text);
    max-width:480px;
    line-height:1.6;
    text-align:right;
  }
  @media (max-width:780px){
    .section-sub{text-align:left}
  }

  /* ============ WHAT IT IS ============ */
  .what-section{
    background:var(--paper);
  }
  .what-head{
    text-align:center;
    max-width:780px;
    margin:0 auto 56px;
  }
  .what-head .section-tag{margin-bottom:18px}
  .what-head h2{
    margin:0 auto 20px;
    max-width:none;
  }
  .what-lede{
    font-size:18px;
    line-height:1.65;
    color:var(--text);
    max-width:620px;
    margin:0 auto;
  }
  .what-list{
    list-style:none;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px 56px;
    max-width:980px;
    margin:0 auto;
  }
  @media (max-width:780px){
    .what-list{grid-template-columns:1fr;gap:18px}
  }
  .what-list li{
    display:flex;
    align-items:flex-start;
    gap:18px;
    padding:24px;
    border-radius:18px;
    background:var(--cream);
    transition:transform .3s ease, box-shadow .3s ease;
  }
  .what-list li:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 28px -16px rgba(61,43,79,.18);
  }
  .what-icon{
    flex-shrink:0;
    width:44px;height:44px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    color:var(--ink);
  }
  .what-icon.pink{background:var(--blush)}
  .what-icon.lilac{background:var(--lilac)}
  .what-icon.butter{background:var(--butter)}
  .what-icon.peach{background:var(--peach)}
  .what-icon.mint{background:var(--mint)}
  .what-item .title{
    font-weight:700;
    color:var(--ink);
    font-size:17px;
    margin-bottom:3px;
  }
  .what-item .desc{
    color:var(--text);
    font-size:14.5px;
    line-height:1.55;
  }

  /* ============ GALLERY ============ */
  .gallery-section{
    background:var(--cream);
    position:relative;
    overflow:hidden;
  }
  .gallery-section::before{
    content:"";
    position:absolute;
    top:10%;left:-5%;
    width:200px;height:200px;
    background:var(--lilac);
    border-radius:50%;
    opacity:.3;
    filter:blur(40px);
  }
  .gallery-section::after{
    content:"";
    position:absolute;
    bottom:10%;right:-5%;
    width:240px;height:240px;
    background:var(--blush);
    border-radius:50%;
    opacity:.35;
    filter:blur(40px);
  }
  .gallery{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
    position:relative;
    z-index:1;
  }
  .g-card{
    border-radius:var(--r-md);
    overflow:hidden;
    background:var(--paper);
    position:relative;
    transition:transform .35s ease, box-shadow .35s ease;
    box-shadow:0 8px 20px -10px rgba(61,43,79,.1);
  }
  .g-card:hover{
    transform:translateY(-6px) rotate(-1deg);
    box-shadow:0 20px 40px -15px rgba(61,43,79,.25);
  }
  .g-card .img-wrap,
  .g-card .icon-wrap{
    background:var(--blush-soft);
    padding:24px;
  }
  .g-card.bg-blush .img-wrap,
  .g-card.bg-blush .icon-wrap{background:var(--blush-soft)}
  .g-card.bg-lilac .img-wrap,
  .g-card.bg-lilac .icon-wrap{background:var(--lilac-soft)}
  .g-card.bg-butter .img-wrap,
  .g-card.bg-butter .icon-wrap{background:var(--butter-soft)}
  .g-card.bg-peach .img-wrap,
  .g-card.bg-peach .icon-wrap{background:var(--peach-soft)}
  .g-card.bg-mint .img-wrap,
  .g-card.bg-mint .icon-wrap{background:var(--mint-soft)}
  .g-card img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:var(--r-sm);
  }
  .g-card .icon-wrap{
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .g-card .icon-wrap svg{
    width:62%;
    height:auto;
    filter:drop-shadow(0 6px 12px rgba(61,43,79,.12));
    transition:transform .4s ease;
  }
  .g-card:hover .icon-wrap svg{
    transform:scale(1.06) rotate(-2deg);
  }
  .g-card .info{
    padding:18px 22px;
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  .g-card .info .name{
    font-family:var(--display);
    font-size:20px;
    color:var(--ink);
    letter-spacing:-.01em;
  }
  .g-card .info .count{
    font-size:12px;
    font-weight:600;
    color:var(--text-soft);
    background:var(--cream-2);
    padding:5px 11px;
    border-radius:3px;
  }
  @media (max-width:900px){
    .gallery{grid-template-columns:repeat(2,1fr);gap:18px}
  }
  @media (max-width:540px){
    .gallery{grid-template-columns:1fr}
  }
  .gallery-foot{
    text-align:center;
    margin-top:50px;
    font-family:var(--hand);
    font-weight:700;
    font-size:24px;
    color:var(--rose);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
  }
  .gallery-foot .sparkle{font-size:22px}

  /* ============ METHOD ============ */
  .method{
    background:var(--paper);
    position:relative;
  }
  .method-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    position:relative;
  }
  @media (max-width:900px){
    .method-grid{grid-template-columns:1fr;gap:30px}
  }
  .m-card{
    background:var(--cream);
    border-radius:var(--r-lg);
    padding:38px 32px;
    position:relative;
    transition:transform .35s ease;
  }
  .m-card:hover{transform:translateY(-6px)}
  .m-card.pink{background:var(--blush-soft)}
  .m-card.lilac{background:var(--lilac-soft)}
  .m-card.butter{background:var(--butter-soft)}
  .m-num{
    width:80px;height:80px;
    border-radius:50%;
    background:var(--paper);
    border:3px solid var(--ink);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--display);
    font-size:42px;
    color:var(--ink);
    margin-bottom:28px;
    position:relative;
    box-shadow:5px 5px 0 var(--rose);
  }
  .m-card.lilac .m-num{box-shadow:5px 5px 0 var(--purple)}
  .m-card.butter .m-num{box-shadow:5px 5px 0 var(--butter-deep)}
  .m-card h3{
    font-family:var(--display);
    font-size:28px;
    line-height:1.1;
    color:var(--ink);
    margin-bottom:14px;
    letter-spacing:-.01em;
  }
  .m-card p{
    font-size:15px;
    color:var(--text);
    line-height:1.6;
  }
  .m-card .sticker-tag{
    position:absolute;
    top:24px;right:24px;
    font-family:var(--hand);
    font-weight:700;
    font-size:16px;
    color:var(--ink);
    background:var(--paper);
    padding:6px 14px;
    border-radius:3px;
    transform:rotate(6deg);
    box-shadow:0 4px 0 rgba(61,43,79,.1);
  }

  /* ============ VOICES ============ */
  .voices-section{
    background:var(--cream);
    position:relative;
  }
  .voices-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
  }
  @media (max-width:780px){
    .voices-grid{grid-template-columns:1fr;gap:18px}
  }
  .voice{
    background:var(--paper);
    border-radius:var(--r-md);
    padding:28px 30px;
    position:relative;
    transition:transform .3s ease;
    box-shadow:0 8px 24px -12px rgba(61,43,79,.12);
    display:grid;
    grid-template-columns:auto 1fr;
    gap:24px;
    align-items:center;
  }
  .voice:hover{transform:translateY(-4px) rotate(-.4deg)}
  .voice.pink{background:var(--blush-soft)}
  .voice.lilac{background:var(--lilac-soft)}
  .voice.butter{background:var(--butter-soft)}
  .voice.peach{background:var(--peach-soft)}
  .voice.mint{background:var(--mint-soft)}
  .voice .tape{
    position:absolute;
    top:-12px;
    width:80px;height:24px;
    background:repeating-linear-gradient(45deg, var(--blush) 0 6px, var(--blush-2) 6px 12px);
    opacity:.85;
    box-shadow:0 4px 6px rgba(61,43,79,.08);
  }
  .voice.lilac .tape{background:repeating-linear-gradient(45deg, var(--lilac) 0 6px, var(--lilac-2) 6px 12px)}
  .voice.butter .tape{background:repeating-linear-gradient(45deg, var(--butter) 0 6px, var(--butter-2) 6px 12px)}
  .voice.peach .tape{background:repeating-linear-gradient(45deg, var(--peach) 0 6px, #FFB897 6px 12px)}
  .voice.mint .tape{background:repeating-linear-gradient(45deg, var(--mint) 0 6px, #A8D4B5 6px 12px)}
  .voice .tape.left{left:24px;transform:rotate(-4deg)}
  .voice .tape.right{right:24px;transform:rotate(3deg)}

  .voice-side{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    width:104px;
    flex-shrink:0;
  }
  .voice-side img{
    width:64px;height:64px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid var(--paper);
    box-shadow:0 0 0 1.5px var(--rule);
    margin-bottom:10px;
  }
  .voice-side .name{
    font-family:var(--display);
    font-size:16px;
    color:var(--ink);
    line-height:1.1;
    letter-spacing:-.01em;
    margin-bottom:3px;
  }
  .voice-side .meta{
    font-size:11px;
    color:var(--text-soft);
    font-weight:600;
    margin-bottom:8px;
  }
  .voice-side .voice-stars{
    color:var(--butter-deep);
    font-size:13px;
    letter-spacing:1px;
    margin-bottom:6px;
  }
  .voice-side .verified{
    display:inline-flex;
    align-items:center;
    gap:3px;
    font-family:var(--hand);
    font-weight:700;
    font-size:13px;
    color:#5BB678;
    background:var(--mint-soft);
    padding:2px 10px;
    border-radius:3px;
  }

  .voice-body{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding-top:6px;
  }
  .voice-text{
    font-family:var(--display);
    font-size:19px;
    line-height:1.4;
    color:var(--ink);
    letter-spacing:-.005em;
  }

  @media (max-width:600px){
    .voice{
      grid-template-columns:1fr;
      gap:16px;
      padding:24px;
    }
    .voice-side{
      flex-direction:row;
      width:100%;
      gap:14px;
      text-align:left;
      align-items:center;
    }
    .voice-side img{margin-bottom:0;width:56px;height:56px}
    .voice-side .name{margin-bottom:2px}
    .voice-side .meta{margin-bottom:0}
    .voice-side .voice-stars{margin-left:auto;margin-bottom:0;align-self:flex-start}
    .voice-side .verified{margin-left:auto}
    .voice-text{font-size:17px}
  }

  /* ============ BONUSES ============ */
  .bonuses-section{
    background:var(--paper);
    position:relative;
    overflow:hidden;
  }
  .bonuses-section .conf{position:absolute;width:14px;height:14px}
  .conf-1{top:10%;left:5%;background:var(--blush);transform:rotate(15deg)}
  .conf-2{top:20%;right:8%;background:var(--lilac-2);border-radius:50%}
  .conf-3{bottom:15%;left:10%;background:var(--butter-2);border-radius:50%}
  .conf-4{bottom:25%;right:5%;background:var(--peach);transform:rotate(45deg)}
  .conf-5{top:50%;left:48%;background:var(--mint);border-radius:50%;width:10px;height:10px}

  .bonus-intro{
    text-align:center;
    margin-bottom:60px;
    position:relative;
  }
  .bonus-intro .section-tag{margin-bottom:18px}
  .bonus-intro h2{
    margin:0 auto 16px;
  }
  .bonus-intro p{
    font-size:17px;
    color:var(--text);
    max-width:580px;
    margin:0 auto;
    line-height:1.6;
  }
  .bonus-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:30px;
  }
  .bonus-card{
    border-radius:var(--r-md);
    overflow:hidden;
    background:var(--cream);
    position:relative;
    transition:transform .35s ease;
    box-shadow:0 14px 30px -16px rgba(61,43,79,.18);
    min-width:0;
  }
  .bonus-card:hover{transform:translateY(-8px) rotate(-1deg)}
  .bonus-card.pink{background:var(--blush-soft)}
  .bonus-card.lilac{background:var(--lilac-soft)}
  .bonus-card.butter{background:var(--butter-soft)}
  .bonus-card.peach{background:var(--peach-soft)}
  .bonus-tag{
    position:absolute;
    top:18px;left:18px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-family:var(--hand);
    font-weight:700;
    font-size:15px;
    background:var(--ink);
    color:var(--cream);
    padding:5px 14px;
    border-radius:3px;
    transform:rotate(-3deg);
    z-index:2;
  }
  .bonus-card.super .bonus-tag{
    background:var(--rose);
  }
  .bonus-card .b-img{
    padding:20px 20px 8px;
  }
  .bonus-card .b-img-inner{
    background:var(--paper);
    border-radius:var(--r-sm);
    padding:14px;
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 12px -4px rgba(61,43,79,.1);
  }
  .bonus-card.pink .b-img-inner{background:#FFF0F3}
  .bonus-card.lilac .b-img-inner{background:#F7F0FC}
  .bonus-card.butter .b-img-inner{background:#FFFAE0}
  .bonus-card.peach .b-img-inner{background:#FFEFE2}
  .bonus-card .b-img img{
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    border-radius:0;
    aspect-ratio:auto;
  }
  .bonus-card .b-body{
    padding:8px 28px 28px;
  }
  .bonus-card h3{
    font-family:var(--display);
    font-size:24px;
    line-height:1.15;
    color:var(--ink);
    margin-bottom:10px;
    letter-spacing:-.01em;
  }
  .bonus-card p{
    font-size:14.5px;
    line-height:1.55;
    color:var(--text);
  }
  .bonus-card .b-value{
    margin-top:18px;
    padding-top:14px;
    border-top:1px dashed rgba(61,43,79,.15);
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:13px;
    font-weight:600;
    color:var(--text-soft);
  }
  .bonus-card .b-value .val{
    color:var(--rose);
    font-family:var(--display);
    font-size:20px;
  }
  .b-1,.b-2,.b-3,.b-4{grid-column:auto}
  @media (max-width:1000px){
    .bonus-grid{grid-template-columns:1fr}
  }

  /* ============ OFFER ============ */
  .offer-section{
    background:linear-gradient(180deg, var(--blush-soft) 0%, var(--lilac-soft) 100%);
    position:relative;
    overflow:hidden;
  }
  .offer-section::before{
    content:"";
    position:absolute;
    top:-100px;left:50%;
    transform:translateX(-50%);
    width:600px;height:600px;
    background:radial-gradient(circle, var(--butter-soft), transparent 60%);
    opacity:.6;
    pointer-events:none;
  }
  .offer-card{
    max-width:1080px;
    margin:0 auto;
    background:var(--paper);
    border-radius:var(--r-lg);
    overflow:hidden;
    box-shadow:0 30px 70px -25px rgba(61,43,79,.3);
    position:relative;
  }
  .offer-card::before{
    /* washi at top */
    content:"";
    position:absolute;
    top:-12px;left:50%;
    transform:translateX(-50%) rotate(-2deg);
    width:200px;height:32px;
    background:repeating-linear-gradient(45deg, var(--butter) 0 8px, var(--butter-2) 8px 16px);
    box-shadow:0 4px 8px rgba(61,43,79,.1);
    z-index:5;
  }
  .offer-grid{
    display:grid;
    grid-template-columns:1.1fr 1fr;
  }
  @media (max-width:880px){
    .offer-grid{grid-template-columns:1fr}
  }
  .offer-left{
    padding:55px 50px;
    border-right:1px dashed var(--rule);
  }
  @media (max-width:880px){
    .offer-left{border-right:none;border-bottom:1px dashed var(--rule);padding:36px}
  }
  .offer-stamp{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-family:var(--hand);
    font-weight:700;
    font-size:18px;
    background:var(--mint);
    color:var(--ink);
    padding:6px 14px;
    border-radius:3px;
    margin-bottom:18px;
    transform:rotate(-1.5deg);
  }
  .offer-left h2{
    font-family:var(--display);
    font-weight:400;
    font-size:38px;
    line-height:1.05;
    letter-spacing:-.02em;
    color:var(--ink);
    margin-bottom:10px;
  }
  .offer-left .sub{
    font-family:var(--hand);
    font-weight:700;
    font-size:20px;
    color:var(--rose);
    margin-bottom:30px;
  }
  .offer-list{
    list-style:none;
  }
  .offer-list li{
    padding:13px 0;
    border-bottom:1px dashed var(--rule);
    display:flex;
    align-items:start;
    gap:14px;
    font-size:15px;
    line-height:1.45;
    color:var(--text);
  }
  .offer-list li:last-child{border-bottom:none}
  .offer-list .check{
    flex-shrink:0;
    width:22px;height:22px;
    border-radius:50%;
    background:var(--rose);
    color:var(--cream);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    font-weight:700;
    margin-top:1px;
  }
  .offer-list .check.alt{background:var(--purple)}
  .offer-list .check.alt2{background:var(--butter-deep);color:var(--ink)}
  .offer-list .strong{color:var(--ink);font-weight:700}

  .offer-right{
    padding:55px 50px;
    background:linear-gradient(180deg, var(--butter-soft) 0%, var(--peach-soft) 100%);
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    position:relative;
  }
  @media (max-width:880px){
    .offer-right{padding:40px 36px}
  }
  .offer-right::before{
    content:"♡";
    position:absolute;
    top:24px;right:24px;
    font-size:32px;
    color:var(--rose);
    opacity:.4;
  }
  .offer-thumb{
    width:140px;
    margin:0 auto 24px;
    padding:10px 10px 14px;
    background:var(--paper);
    border-radius:14px;
    box-shadow:0 14px 28px -10px rgba(61,43,79,.22);
    transform:rotate(-3deg);
    transition:transform .4s cubic-bezier(.2,.8,.2,1);
    position:relative;
  }
  .offer-thumb:hover{transform:rotate(0)}
  .offer-thumb::before{
    /* mini washi tape */
    content:"";
    position:absolute;
    top:-8px;left:50%;
    transform:translateX(-50%) rotate(-4deg);
    width:48px;height:14px;
    background:repeating-linear-gradient(45deg, var(--blush) 0 4px, var(--blush-2) 4px 8px);
    opacity:.85;
  }
  .offer-thumb img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:8px;
  }
  @media (max-width:880px){
    .offer-thumb{width:120px}
  }
  .offer-right .reg-label{
    font-family:var(--body);
    font-size:13px;
    font-weight:600;
    color:var(--text-soft);
    margin-bottom:6px;
  }
  .offer-right .reg-price{
    font-family:var(--display);
    font-size:32px;
    color:var(--text-soft);
    text-decoration:line-through;
    text-decoration-thickness:2px;
    text-decoration-color:var(--rose);
    margin-bottom:14px;
  }
  .offer-right .now-label{
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:var(--ink);
    color:var(--cream);
    font-family:var(--hand);
    font-weight:700;
    font-size:15px;
    padding:5px 14px;
    border-radius:3px;
    margin-bottom:14px;
  }
  .offer-right .price-big{
    font-family:var(--display);
    font-size:110px;
    line-height:1;
    color:var(--ink);
    margin-bottom:6px;
    letter-spacing:-.03em;
    position:relative;
    display:inline-flex;
    align-items:flex-start;
    gap:2px;
  }
  .offer-right .price-big .cents{
    font-size:.42em;
    color:var(--rose);
    line-height:1;
    margin-top:.18em;
    font-weight:400;
    letter-spacing:-.01em;
  }
  .offer-right .price-big::after{
    content:"♡";
    position:absolute;
    top:-10px;right:-30px;
    font-size:32px;
    color:var(--blush-deep);
    animation:pulse 2s infinite;
  }
  .offer-right .one-time{
    font-size:13px;
    font-weight:600;
    color:var(--text);
    margin-bottom:30px;
  }
  .offer-right .btn-primary{
    width:100%;
    justify-content:center;
    padding:26px 24px;
    font-size:18px;
    font-weight:800;
    letter-spacing:.005em;
    background:linear-gradient(135deg, #FF6B8A 0%, var(--rose) 50%, #C94A6B 100%);
    background-size:200% 200%;
    color:#fff;
    box-shadow:
      0 10px 0 var(--blush-deep),
      0 20px 40px -10px rgba(217,110,131,.6),
      0 0 0 4px rgba(255,255,255,.4),
      inset 0 2px 0 rgba(255,255,255,.3);
    text-shadow:0 1px 2px rgba(0,0,0,.15);
    animation:btnPulse 2.4s ease-in-out infinite, gradientShift 4s ease infinite;
    position:relative;
    overflow:hidden;
    border:none;
    text-transform:uppercase;
  }
  .offer-right .btn-primary::before{
    content:"";
    position:absolute;
    top:0;left:-100%;
    width:100%;height:100%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent);
    animation:shimmer 3s ease-in-out infinite;
    pointer-events:none;
  }
  .offer-right .btn-primary::after{
    content:"";
    position:absolute;
    inset:-6px;
    border-radius:inherit;
    border:2px dashed rgba(255,255,255,.7);
    opacity:0;
    transition:opacity .3s ease;
    pointer-events:none;
  }
  .offer-right .btn-primary:hover{
    transform:translateY(-6px) scale(1.02);
    box-shadow:
      0 16px 0 var(--blush-deep),
      0 30px 50px -10px rgba(217,110,131,.7),
      0 0 0 4px rgba(255,255,255,.5),
      inset 0 2px 0 rgba(255,255,255,.3);
    background:linear-gradient(135deg, #FF8FA8 0%, #FF6B8A 50%, var(--rose) 100%);
    animation-play-state:paused;
  }
  .offer-right .btn-primary:hover::after{opacity:1}
  @keyframes btnPulse{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.025)}
  }
  @keyframes shimmer{
    0%{left:-100%}
    50%,100%{left:100%}
  }
  @keyframes gradientShift{
    0%,100%{background-position:0% 50%}
    50%{background-position:100% 50%}
  }
  .offer-right .btn-primary .price-tag{
    background:var(--butter);
    color:var(--ink);
  }
  .offer-right .secure{
    margin-top:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    font-size:12px;
    font-weight:600;
    color:var(--text-soft);
  }
  .offer-right .secure .dot{
    width:8px;height:8px;
    border-radius:50%;
    background:#5BB678;
  }

  /* ============ GUARANTEE ============ */
  .guarantee{
    background:var(--cream);
  }
  .guarantee-grid{
    display:grid;
    grid-template-columns:1fr 1.5fr;
    gap:80px;
    align-items:center;
  }
  @media (max-width:900px){
    .guarantee-grid{grid-template-columns:1fr;gap:40px;text-align:center}
  }
  .guarantee-seal{
    width:300px;height:300px;
    margin:0 auto;
    background:var(--blush);
    border:3px dashed var(--rose);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    box-shadow:0 30px 60px -20px rgba(61,43,79,.25);
    position:relative;
    transform:rotate(-4deg);
    transition:transform .5s cubic-bezier(.2,.8,.2,1);
  }
  .guarantee-seal:hover{transform:rotate(0)}
  .guarantee-seal .label-top{
    font-family:var(--hand);
    font-weight:700;
    font-size:18px;
    color:var(--ink);
  }
  .guarantee-seal .days{
    font-family:var(--display);
    font-size:120px;
    line-height:.8;
    color:var(--ink);
    margin:6px 0;
  }
  .guarantee-seal .label-bot{
    font-family:var(--display);
    font-size:24px;
    color:var(--rose);
  }
  .guarantee-seal::before{
    content:"♡";
    position:absolute;
    top:-12px;right:30px;
    font-size:32px;
    color:var(--rose);
    transform:rotate(15deg);
  }
  .guarantee-seal::after{
    content:"✦";
    position:absolute;
    bottom:-8px;left:30px;
    font-size:28px;
    color:var(--butter-deep);
  }
  .guarantee-text h2{
    margin-bottom:24px;
  }
  .guarantee-text p{
    font-size:17px;
    color:var(--text);
    margin-bottom:18px;
    line-height:1.65;
  }
  .guarantee-text .signature{
    margin-top:30px;
    display:flex;
    align-items:center;
    gap:14px;
  }
  @media (max-width:900px){
    .guarantee-text .signature{justify-content:center}
  }
  .guarantee-text .signature .sig-name{
    font-family:var(--hand);
    font-weight:700;
    font-size:28px;
    color:var(--ink);
  }
  .guarantee-text .signature .sig-meta{
    font-size:12px;
    color:var(--text-soft);
    font-weight:600;
    line-height:1.3;
  }

  /* ============ FAQ ============ */
  .faq-section{
    background:var(--paper);
  }
  .faq-head{
    text-align:center;
    max-width:680px;
    margin:0 auto 56px;
  }
  .faq-head .section-tag{margin-bottom:18px}
  .faq-head h2{
    font-size:clamp(36px, 5vw, 60px);
    margin:0 auto 18px;
  }
  .faq-head p{
    font-size:16px;
    color:var(--text);
    line-height:1.6;
    max-width:540px;
    margin:0 auto;
  }
  .faq-head .em{
    font-family:var(--hand);
    color:var(--rose);
    font-style:italic;
    font-size:1.1em;
  }
  .faq-list-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px 24px;
    align-items:start;
  }
  @media (max-width:780px){
    .faq-list-grid{grid-template-columns:1fr;gap:12px}
  }
  details{
    background:var(--cream);
    border-radius:18px;
    padding:0;
    transition:background .25s ease;
    border:1.5px solid transparent;
    align-self:start;
    height:fit-content;
  }
  details[open]{
    background:var(--blush-soft);
    border-color:var(--blush);
  }
  summary{
    list-style:none;
    cursor:pointer;
    padding:22px 26px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    font-family:var(--body);
    font-weight:700;
    font-size:17px;
    color:var(--ink);
    transition:color .2s ease;
  }
  summary::-webkit-details-marker{display:none}
  summary:hover{color:var(--rose)}
  .faq-icon{
    width:32px;height:32px;
    border-radius:50%;
    background:var(--paper);
    border:1.5px solid var(--ink);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--display);
    font-size:18px;
    flex-shrink:0;
    transition:transform .3s ease, background .25s ease, color .25s ease;
  }
  details[open] .faq-icon{
    transform:rotate(45deg);
    background:var(--rose);
    color:var(--cream);
    border-color:var(--rose);
  }
  .faq-ans{
    padding:0 26px 24px;
    font-size:15px;
    line-height:1.65;
    color:var(--text);
  }
  .faq-ans strong{color:var(--ink);font-weight:700}

  /* ============ FINAL CTA ============ */
  .final-cta{
    background:
      radial-gradient(ellipse 60% 50% at 20% 30%, var(--lilac-soft), transparent 65%),
      radial-gradient(ellipse 60% 50% at 80% 70%, var(--blush-soft), transparent 65%),
      var(--cream);
    padding:130px 0;
    text-align:center;
    position:relative;
    overflow:hidden;
  }
  .final-cta::before{
    content:"";
    position:absolute;
    top:10%;left:8%;
    width:24px;height:24px;
    background:var(--butter-2);
    border-radius:50%;
    animation:float 6s infinite;
  }
  .final-cta::after{
    content:"";
    position:absolute;
    bottom:15%;right:10%;
    width:32px;height:32px;
    background:var(--lilac-2);
    border-radius:50%;
    animation:float 7s 1s infinite;
  }
  .final-cta-tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-family:var(--hand);
    font-weight:700;
    font-size:22px;
    color:var(--rose);
    margin-bottom:20px;
  }
  .final-cta h2{
    font-family:var(--display);
    font-size:clamp(48px, 8vw, 110px);
    line-height:.95;
    letter-spacing:-.02em;
    color:var(--ink);
    margin:0 auto 30px;
    max-width:1000px;
  }
  .final-cta h2 .italic{
    font-family:var(--hand);
    font-style:italic;
    color:var(--rose);
    font-size:.85em;
  }
  .final-cta h2 .pill-y,
  .final-cta h2 .pill-l{
    position:relative;
    display:inline-block;
    z-index:1;
  }
  .final-cta h2 .pill-y::before{
    content:"";
    position:absolute;
    inset:5% -4% 12% -4%;
    background:var(--butter);
    border-radius:3px;
    z-index:-1;
    transform:rotate(-1deg);
  }
  .final-cta h2 .pill-l::before{
    content:"";
    position:absolute;
    inset:5% -4% 12% -4%;
    background:var(--lilac);
    border-radius:3px;
    z-index:-1;
    transform:rotate(1.5deg);
  }
  .final-cta p{
    font-size:18px;
    color:var(--text);
    max-width:600px;
    margin:0 auto 40px;
    line-height:1.6;
  }
  .final-cta .btn-primary{
    background:var(--rose);
    box-shadow:0 10px 0 var(--blush-deep);
    font-size:17px;
    padding:24px 36px;
  }
  .final-cta .btn-primary:hover{
    background:var(--ink);
    box-shadow:0 16px 0 rgba(61,43,79,.18);
  }
  .final-cta-meta{
    margin-top:36px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    flex-wrap:wrap;
    font-family:var(--body);
    font-size:13px;
    font-weight:600;
    color:var(--text);
  }
  .final-cta-meta .item{
    display:inline-flex;
    align-items:center;
    gap:6px;
  }
  .final-cta-meta .dot{
    width:8px;height:8px;
    border-radius:50%;
    background:var(--rose);
  }

  /* ============ FOOTER ============ */
  footer{
    background:var(--ink);
    color:var(--cream);
    padding:50px 0 36px;
    text-align:center;
  }
  .footer-inner{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    font-size:12px;
    font-weight:500;
    color:rgba(255,248,238,.6);
  }
  .footer-brand{
    font-family:var(--display);
    font-size:24px;
    color:var(--cream);
    display:flex;
    align-items:center;
    gap:10px;
  }
  .footer-brand .em{
    color:var(--blush);
  }

  /* ============ REVEAL ============ */
  .reveal,
  .reveal.in{
    opacity:1;
    transform:none;
    animation:none;
  }

  @media (prefers-reduced-motion:reduce){
    *,*::before,*::after{
      animation-duration:.01ms !important;
      transition-duration:.01ms !important;
    }
    .top-track{animation:none}
  }

  /* ============ SOCIAL PROOF TOAST ============ */
  .social-proof{
    position:fixed;
    bottom:20px;left:20px;
    width:min(340px, calc(100vw - 40px));
    background:#fff;
    border-radius:18px;
    box-shadow:0 18px 50px -10px rgba(61,43,79,.3), 0 0 0 1px rgba(61,43,79,.06);
    padding:14px 36px 14px 14px;
    display:flex;
    align-items:center;
    gap:12px;
    z-index:1000;
    transform:translateX(-130%);
    opacity:0;
    transition:transform .5s cubic-bezier(.34,1.56,.64,1), opacity .4s ease;
    pointer-events:none;
  }
  .social-proof.visible{
    transform:translateX(0);
    opacity:1;
    pointer-events:auto;
  }
  .sp-avatar{
    width:46px;height:46px;
    flex-shrink:0;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--display);
    color:#fff;
    font-size:20px;
    font-weight:700;
    box-shadow:0 4px 10px -2px rgba(61,43,79,.2);
    position:relative;
  }
  .sp-avatar::after{
    content:"";
    position:absolute;
    bottom:-2px;right:-2px;
    width:14px;height:14px;
    background:#5BB678;
    border-radius:50%;
    border:2.5px solid #fff;
    animation:spPulse 1.6s ease-in-out infinite;
  }
  @keyframes spPulse{
    0%,100%{box-shadow:0 0 0 0 rgba(91,182,120,.55)}
    50%{box-shadow:0 0 0 7px rgba(91,182,120,0)}
  }
  .sp-body{
    flex:1;
    min-width:0;
    line-height:1.3;
  }
  .sp-name{
    font-family:var(--body);
    font-weight:700;
    font-size:14px;
    color:var(--ink);
    margin-bottom:1px;
    display:flex;
    align-items:center;
    gap:5px;
  }
  .sp-flag{font-size:14px}
  .sp-action{
    font-size:12.5px;
    color:var(--text);
    font-weight:500;
  }
  .sp-action .product{
    color:var(--rose);
    font-weight:700;
  }
  .sp-time{
    font-size:11px;
    color:var(--text-soft);
    margin-top:4px;
    display:flex;
    align-items:center;
    gap:5px;
    font-weight:500;
  }
  .sp-time .verified{color:#5BB678}
  .sp-close{
    position:absolute;
    top:8px;right:10px;
    width:22px;height:22px;
    border-radius:50%;
    background:transparent;
    border:none;
    color:var(--text-soft);
    font-size:18px;
    line-height:1;
    cursor:pointer;
    opacity:.4;
    transition:opacity .2s, background .2s;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
  }
  .sp-close:hover{
    opacity:1;
    background:var(--rule);
  }
  @media (max-width:600px){
    .social-proof{
      bottom:12px;left:12px;right:12px;
      width:auto;
      max-width:calc(100vw - 24px);
      padding:12px 36px 12px 12px;
    }
    .sp-avatar{width:42px;height:42px;font-size:18px}
    .sp-name{font-size:13px}
    .sp-action{font-size:12px}
  }
  @media (prefers-reduced-motion: reduce){
    .sp-avatar::after{animation:none}
  }

  /* ============ REDESIGN 2.0 · DEEP NAVY EDITORIAL ============ */
  body{ letter-spacing:.005em; }
  h1,h2,h3,h4,
  [class*="title"],[class*="heading"]{ letter-spacing:-0.02em; }
  .sticker{
    font-family:var(--body);
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:12px;
    border-radius:2px;
    box-shadow:none;
    border:1px solid rgba(14,27,52,.14);
  }
  .squiggle{
    height:2px;
    background-image:none;
    background:linear-gradient(90deg,var(--ink) 0 50%,transparent 50% 100%);
    background-size:14px 2px;
    background-repeat:repeat-x;
    opacity:.35;
  }
  .sparkle{ color:var(--butter-deep); }
  .confetti{ border-radius:2px; opacity:.5; }
  .top-bar{ border-bottom:1px solid rgba(255,255,255,.08); }
  .top-track{ text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:600; }
  ::selection{ background:var(--butter-deep); color:var(--ink); }
  h1,h2,h3,h4{ font-weight:900; }

  /* ============ REDESIGN 3.0 · MASCOT + EDITORIAL DIFFERENTIATION ============ */
  .mascot{
    display:block;
    filter:drop-shadow(0 18px 30px rgba(14,27,52,.18));
    animation:mascot-float 5s ease-in-out infinite;
  }
  @keyframes mascot-float{
    0%,100%{transform:translateY(0) rotate(-2deg)}
    50%{transform:translateY(-14px) rotate(2deg)}
  }
  .mascot-hero{
    position:absolute;
    left:-38px;
    bottom:-26px;
    width:clamp(120px, 17vw, 210px);
    z-index:6;
    pointer-events:none;
  }
  .mascot-cta{
    width:clamp(150px, 22vw, 240px);
    margin:0 auto 18px;
  }
  @media (max-width:760px){
    .mascot-hero{left:-10px;bottom:-14px;width:110px}
  }
  @media (prefers-reduced-motion: reduce){
    .mascot{animation:none}
  }

  /* Carousel band: dark navy showcase, distinct from competitor's pastel band */
  .carousels-section{
    background:var(--ink);
    border-top:3px solid var(--butter-deep);
    border-bottom:3px solid var(--butter-deep);
  }
  .carousels-head h2,
  .carousels-head p{color:var(--cream)}
  .carousels-head p{opacity:.72}
  .carousels-head .section-tag{
    background:transparent;
    color:var(--butter-2);
    border:1px solid rgba(201,162,39,.5);
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:11px;
    font-weight:700;
    border-radius:2px;
  }
  .carousel-row-head h3{color:var(--cream)}
  .carousel-row-head .section-tag{
    background:transparent;
    color:var(--butter-2);
    border:1px solid rgba(201,162,39,.5);
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:11px;
    font-weight:700;
    border-radius:2px;
  }
  .carousel-item{
    border-radius:3px;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:none;
  }
  .carousel-item:hover{
    border-color:var(--butter-deep);
  }

  /* Editorial section labels with a rule */
  .section-tag{
    border-radius:2px;
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:11px;
    font-weight:700;
  }

  /* Flat cards with offset gold shadow instead of soft pastel blobs */
  .trust-strip{
    background:var(--paper);
    border-bottom:1px solid var(--rule);
  }
  .trust-cell{border-right:1px solid var(--rule)}
  .trust-cell:last-child{border-right:none}

  .btn-primary{
    border-radius:3px;
    box-shadow:6px 6px 0 var(--butter-deep);
    border:2px solid var(--ink);
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .btn-primary:hover{
    transform:translate(-2px,-2px);
    box-shadow:9px 9px 0 var(--butter-deep);
  }

  .final-cta{ text-align:center; }
  .trust-cell .l{ color:var(--text-soft); opacity:1; }
  .trust-cell .v{ color:var(--ink); }

/* Bônus temporariamente em branco */
.b-img-empty{
  display:block;
  min-height:200px;
  background:repeating-linear-gradient(135deg, rgba(14,27,52,.05) 0 10px, rgba(14,27,52,.02) 10px 20px);
  border:1px dashed rgba(14,27,52,.18);
  border-radius:3px;
}
