/* CSS dasar halaman produk (1-step, instant, 2-step). Dimuat di <head> halaman produk supaya hero tidak tampil tanpa gaya saat HTML masih diunduh. Salinan dari embed footer; embed footer dibiarkan (aturan identik, urutan tetap). */
:root{--pr-ink:#0b0b0b;--pr-body:#5e5e5e;--pr-mute:#7c7b7b;--pr-acc:#8aac4e;--pr-card:rgba(255,255,255,.6);--pr-bd:rgba(104,136,50,.5);--pr-sh:inset 0 1px 0 rgba(255,255,255,.85),0 12px 28px -16px rgba(18,38,32,.28);--pr-btn:#8aac4e;--pr-btnink:#fff;--pr-gbg:rgba(172,202,114,.1);--pr-gbd:#8aac4e;--pr-gink:#0b0b0b;--pr-fade:#fff;--pr-line:rgba(11,11,11,.1)}
:root.theme-dark{--pr-ink:#fff;--pr-body:#c4c4c4;--pr-mute:#7c7b7b;--pr-acc:#e1f976;--pr-card:rgba(17,19,17,.92);--pr-bd:rgba(255,255,255,.11);--pr-sh:inset 0 1px 0 rgba(255,255,255,.02);--pr-btn:#e1f976;--pr-btnink:#0b0b0b;--pr-gbg:rgba(225,249,118,.1);--pr-gbd:rgba(225,249,118,.35);--pr-gink:#fff;--pr-fade:#0b0b0b;--pr-line:rgba(255,255,255,.1)}
.pr_sec{padding:100px 80px}
.pr_in{max-width:1420px;margin:0 auto}
.pr_h2{margin:0;font:800 52px/1 "League Spartan",sans-serif;text-transform:uppercase;color:var(--pr-ink)}
.pr_h2 em{font-style:normal;color:var(--pr-acc)}
.pr_p{margin:0;font:400 18px/28px Inter,sans-serif;color:var(--pr-body)}
.pr_btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:62px;padding:0 32px;border-radius:999px;font:500 20px/1 "League Spartan",sans-serif;text-transform:uppercase;text-decoration:none;box-sizing:border-box;transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}
.pr_btn--p{background:var(--pr-btn);border:1px solid var(--pr-btn);color:var(--pr-btnink);padding-right:24px}
.pr_btn--g{background:var(--pr-gbg);border:1px solid var(--pr-gbd);color:var(--pr-gink)}
.pr_btn svg{width:22.6px;height:14.3px;flex:none}
@media (hover:hover){.pr_btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(138,172,78,.38);filter:brightness(1.07)}}
@media (max-width:991px){.pr_sec{padding:72px 40px}.pr_h2{font-size:44px}}
@media (max-width:767px){.pr_sec{padding:56px 20px}.pr_h2{font-size:34px}.pr_p{font-size:16px;line-height:24px}.pr_btn{height:48px;padding:0 20px;font-size:16px}}
.pr_hero{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:32px;min-height:1080px;max-width:1440px;margin-left:auto;margin-right:auto;box-sizing:border-box;padding:200px 80px 90px;background-color:#fff;background-size:cover;background-position:right center;background-repeat:no-repeat}
@media (min-width:992px) and (max-width:1439px){.pr_hero{background-position:right calc((1440px - 100vw)*-.55) center}}
@media (min-width:1441px){.pr_hero{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}}
.pr_hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,0) 36%,var(--pr-fade) 100%)}
.pr_hero_in{position:relative;z-index:1;display:flex;flex-direction:column;gap:50px;width:100%;max-width:1420px;margin:0 auto}
.pr_title{margin:0;font:800 96px/100px "League Spartan",sans-serif;letter-spacing:-3px;text-transform:uppercase}
.pr_t{display:block}.pr_t b{color:var(--pr-acc);font-weight:800}
.pr_t--w{color:var(--pr-ink)}.pr_t--a{color:var(--pr-acc)}.pr_t--m{color:var(--pr-mute)}
.pr_hero .pr_p{max-width:720px;margin-top:32px}
.pr_acts{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.pr_dots{position:absolute;right:80px;bottom:56px;z-index:2;display:flex;align-items:center;gap:6px}
.pr_dots a{display:block;width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.35);transition:background-color .2s ease,width .2s ease}
.pr_dots a.is-cur{width:24px;background:#e1f976}
:root:not(.theme-dark) .pr_dots a{background:rgba(11,11,11,.25)}
:root:not(.theme-dark) .pr_dots a.is-cur{background:#8aac4e}
@media (hover:hover){.pr_dots a:not(.is-cur):hover{background:#e1f976}}
.pr_mtabs{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:8px;margin-bottom:-16px;border-radius:999px;background:rgba(18,38,32,.55);border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:root:not(.theme-dark) .pr_mtabs{background:rgba(255,255,255,.65);border-color:var(--pr-bd);box-shadow:var(--pr-sh)}
.pr_mt{position:relative;display:flex;align-items:center;justify-content:center;padding:18px 40px;border-radius:999px;font:500 24px/1 "League Spartan",sans-serif;text-transform:uppercase;text-decoration:none;color:#fff;transition:background-color .2s ease,color .2s ease}
:root:not(.theme-dark) .pr_mt{color:var(--pr-ink)}
.pr_mt.is-cur{background:#8aac4e;color:#fff}
.pr_mt i{position:absolute;left:50%;top:-22px;transform:translateX(-50%);padding:5px 14px;border-radius:999px;border:1px solid #8aac4e;background:#0b0b0b;font:500 12px/1 Inter,sans-serif;font-style:normal;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;color:#e1f976}
:root:not(.theme-dark) .pr_mt i{background:#fff;color:#5e7a2a}
@media (hover:hover){.pr_mt:not(.is-cur):hover{background:rgba(138,172,78,.28)}}
.pr_stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:32px;border-radius:24px;background:linear-gradient(90deg,rgba(113,113,113,.1),rgba(113,113,113,.2));border:1px solid var(--pr-bd);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:root:not(.theme-dark) .pr_stats{background:rgba(255,255,255,.55);box-shadow:var(--pr-sh)}
.pr_st{display:flex;flex-direction:column;gap:16px;min-height:112px}
.pr_st b{font:800 clamp(28px,3.2vw,48px)/1 "League Spartan",sans-serif;text-transform:uppercase;color:var(--pr-ink)}
.pr_st b i{font:400 18px/28px Inter,sans-serif;font-style:normal;text-transform:none;color:var(--pr-acc);margin:0 6px 0 4px}
.pr_st span{font:400 16px/24px Inter,sans-serif;text-transform:uppercase;color:var(--pr-body)}
@media (max-width:991px){.pr_dots{right:40px;bottom:40px}.pr_hero{min-height:0;padding:150px 40px 64px;background-position:center top}.pr_title{font-size:64px;line-height:68px;letter-spacing:-2px}.pr_stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.pr_mtabs{align-self:stretch;margin-top:8px}.pr_mt{flex:1 1 0;padding:14px 6px;font-size:15px}.pr_mt i{top:-20px;font-size:9px;padding:4px 8px}.pr_hero{padding:120px 20px 40px;background-position:center top}.pr_hero_in{gap:36px}.pr_title{font-size:46px;line-height:46px;letter-spacing:-1.5px}.pr_hero .pr_p{margin-top:20px}.pr_acts{flex-direction:column;align-items:stretch}.pr_acts .pr_btn{width:100%}.pr_dots{display:none}.pr_hero_in{text-align:center}.pr_stats{grid-template-columns:1fr;padding:20px;gap:20px;text-align:left}.pr_st{min-height:0;gap:8px}.pr_st b{font-size:32px}.pr_st b i{font-size:14px}.pr_st span{font-size:12px;line-height:16px}}
.pr_how .pr_in{display:block}
.pr_how_h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 48px;align-items:end;margin-bottom:56px}
.pr_how_h>div{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.pr_fc{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.pr_fcard{grid-column:span 2;display:flex;flex-direction:column;gap:14px;padding:32px;border-radius:24px;border:1.1px solid var(--pr-bd);background:var(--pr-card);box-shadow:var(--pr-sh);box-sizing:border-box;min-width:0}
.pr_fcard:nth-child(n+4){grid-column:span 3}
.pr_fn{font:800 52px/1 "League Spartan",sans-serif;color:var(--pr-acc)}
.pr_fcard h3{margin:0;font:700 26px/1.1 "League Spartan",sans-serif;letter-spacing:-.3px;text-transform:uppercase;color:var(--pr-ink)}
.pr_fcard p{margin:0;font:400 16px/24px Inter,sans-serif;color:var(--pr-body)}
@media (max-width:991px){.pr_how_h{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:36px}.pr_fc{grid-template-columns:repeat(2,minmax(0,1fr))}.pr_fcard,.pr_fcard:nth-child(n+4){grid-column:span 1}.pr_fcard:last-child{grid-column:span 2}}
@media (max-width:767px){.pr_fc{grid-template-columns:minmax(0,1fr);gap:16px}.pr_fcard,.pr_fcard:nth-child(n+4),.pr_fcard:last-child{grid-column:span 1;padding:24px}.pr_fn{font-size:40px}.pr_fcard h3{font-size:22px}.pr_how_h .pr_btn{width:100%}}
.pr_rules{background:radial-gradient(ellipse 45% 38% at 50% 62%,rgba(63,63,63,.9),rgba(11,11,11,0) 100%)}
:root:not(.theme-dark) .pr_rules{background:radial-gradient(ellipse 45% 38% at 50% 62%,rgba(138,172,78,.14),rgba(255,255,255,0) 100%)}
.pr_rules .pr_in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}
.pr_rules_l{display:flex;flex-direction:column;gap:20px}
.pr_card{position:relative;overflow:hidden;box-sizing:border-box;border:1.1px solid var(--pr-bd);border-radius:20px;background:var(--pr-card);box-shadow:var(--pr-sh)}
.pr_panel{display:flex;flex-direction:column;gap:20px;padding:24px 32px}
.pr_tabs{display:flex;gap:16px;padding:5px;border-radius:40px;border:1.1px solid rgba(255,255,255,.08);background:#070907}
:root:not(.theme-dark) .pr_tabs{background:rgba(255,255,255,.7);border-color:var(--pr-bd)}
.pr_tab{flex:1 1 0;min-width:0;padding:20px 12px;border:0;border-radius:30px;background:transparent;cursor:pointer;white-space:nowrap;font:800 20px/1 "League Spartan",sans-serif;letter-spacing:-.5px;text-transform:uppercase;color:#a8aea0;transition:background-color .2s ease,color .2s ease}
.pr_tab[aria-selected=true]{background:#e1f976;color:#0b0b0b}
:root:not(.theme-dark) .pr_tab{color:#5e5e5e}
:root:not(.theme-dark) .pr_tab[aria-selected=true]{background:#8aac4e;color:#fff}
.pr_rl[hidden]{display:none}
.pr_rh,.pr_rr{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(var(--n,1),minmax(0,1fr));gap:12px;align-items:center}
.pr_rh{padding:0 0 10px;font:600 12px/16px Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--pr-mute)}
.pr_rr{min-height:44.9px;padding:12px 0;border-top:1.1px solid var(--pr-line);font:400 16px/20px Inter,sans-serif}
.pr_rr span:first-child{color:var(--pr-body)}.pr_rr span+span{color:var(--pr-ink);text-align:center}
.pr_n1 .pr_rh span+span,.pr_n1 .pr_rr span+span{text-align:right}
.pr_rh span+span{text-align:center}
@media (max-width:991px){.pr_rules .pr_in{grid-template-columns:minmax(0,1fr);gap:36px}}
@media (max-width:767px){.pr_panel{padding:20px 14px}.pr_tab{font-size:13px;padding:14px 6px}.pr_rr{font-size:13px;line-height:18px;gap:8px}.pr_rh{font-size:10px;gap:8px}}
.pr_cmp{--pr-tbg:#fff;--pr-hi:rgba(138,172,78,.14)}
:root.theme-dark .pr_cmp{--pr-tbg:#101310;--pr-hi:rgba(225,249,118,.08)}
.pr_cmp .pr_head{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;margin-bottom:48px}
.pr_cmp .pr_head .pr_p{max-width:640px}
.pr_tw{max-width:1420px;margin:0 auto;overflow-x:auto;border:1px solid var(--pr-bd);border-radius:22px;background:var(--pr-tbg);-webkit-overflow-scrolling:touch}
.pr_ti{--lw:210px;position:relative;min-width:980px}
.pr_ct{border-collapse:separate;border-spacing:0;width:100%;table-layout:fixed;position:relative;z-index:1}
.pr_ct th,.pr_ct td{padding:15px 12px;text-align:center;border-bottom:1px solid var(--pr-line);font:500 15px/22px Inter,sans-serif;color:var(--pr-ink);background:var(--pr-tbg)}
.pr_ct th:first-child,.pr_ct td:first-child{position:sticky;left:0;z-index:2;width:210px;text-align:left;padding-left:24px;font-weight:600}
.pr_ct tr:last-child td{border-bottom:0}
.pr_k{font:600 12px/16px Inter,sans-serif!important;letter-spacing:.1em;text-transform:uppercase;color:var(--pr-mute)!important}
.pr_gh{padding-top:28px!important;font:800 24px/1 "League Spartan",sans-serif!important;letter-spacing:-.3px;text-transform:uppercase}
.pr_mh{font:700 15px/1.2 "League Spartan",sans-serif!important;letter-spacing:.3px;text-transform:uppercase;color:var(--pr-acc)!important;border-bottom:1px dashed var(--pr-line)!important}
.pr_ct td.pr_v{color:var(--pr-body)}
.pr_ct td.pr_e{color:var(--pr-mute)}
.pr_ct[data-cur="1"] .g1,.pr_ct[data-cur="2"] .g2,.pr_ct[data-cur="3"] .g3{background:var(--pr-hi)}
.pr_ti[data-cur="1"] .g1,.pr_ti[data-cur="2"] .g2,.pr_ti[data-cur="3"] .g3{background:transparent}
.pr_hl{position:absolute;top:0;bottom:0;z-index:0;pointer-events:none;left:calc(var(--lw) + (100% - var(--lw))/3*(var(--c) - 1));width:calc((100% - var(--lw))/3);background:radial-gradient(ellipse 80% 34% at 50% 0,rgba(138,172,78,.45),rgba(138,172,78,0) 100%),#fff}
:root.theme-dark .pr_hl{background:radial-gradient(ellipse 80% 34% at 50% 0,rgba(225,249,118,.5),rgba(225,249,118,0) 100%),#0d1019}
.pr_ct[data-cur="1"] .g1.pr_gh,.pr_ct[data-cur="2"] .g2.pr_gh,.pr_ct[data-cur="3"] .g3.pr_gh{box-shadow:inset 0 3px 0 var(--pr-acc)}
.pr_ct .pr_bt{border-bottom:0;padding:22px 12px 26px}
.pr_ct .pr_bt .pr_btn{height:52px;width:100%;max-width:260px;padding:0 16px 0 20px;font-size:15px}
@media (max-width:767px){.pr_cmp .pr_head{margin-bottom:32px}.pr_tw{border-radius:16px}.pr_ti{--lw:128px;min-width:760px}.pr_ct th:first-child,.pr_ct td:first-child{width:128px;padding-left:12px;font-size:13px;line-height:18px;box-shadow:2px 0 0 var(--pr-line)}.pr_ct th,.pr_ct td{padding:12px 8px;font-size:13px;line-height:18px}.pr_gh{font-size:18px!important}.pr_ct .pr_bt .pr_btn{height:44px;font-size:12px;padding:0 10px}}
/* Hero produk dark mode: sama gelapnya dengan Figma (Product - Dark, Hero Section 2271:112189): kiri hampir hitam, pendar hijau di kanan tetap terlihat. */
:root.theme-dark .pr_hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.7) 30%,rgba(0,0,0,.28) 58%,rgba(0,0,0,.08) 100%)}
@media (max-width:991px){:root.theme-dark .pr_hero::before{background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.25) 100%)}}
/* FS 3.0 #6: hero produk tanpa teks abu. Dark = putih + lime; light = hitam + hijau. Subteks solid. */
:root:root .pr_hero .pr_t--m{color:var(--pr-ink)}
:root:root .pr_hero .pr_p,:root:root .pr_hero .pr_st span{color:var(--pr-ink)}
/* Strip Rewards (dark): gradasi hijau di sisi kiri layar dibuang (glow pusat di belakang angka tetap). */
:root:root:root.theme-dark .rewards_section{background-image:none}
:root:root:root.theme-dark .rewards_section::before{display:none}
@media (min-width:992px){
:root:root:root.theme-dark .page:has(.pr_hero) .rewards_section{background-color:transparent}
}
/* Statistik hero produk di mobile: 2 kolom. */
@media (max-width:767px){
:root:root:root .pr_stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding:20px}
:root:root:root .pr_st b{font-size:clamp(20px,6.2vw,26px);white-space:nowrap}
:root:root:root .pr_st b i{font-size:12px;margin:0 3px 0 2px}
:root:root:root .pr_st span{font-size:11px;line-height:15px}
}
/* Gradasi tepi kiri-kanan hero (layar >1440px): 420px, bertahap (ease), warna sama dengan latar halaman,
   dilukis di bawah konten sehingga teks tidak ikut memudar (menggantikan mask 7% lama). */
@media (min-width:1441px){
:root:root:root{--edge:#fff;--edge-g:linear-gradient(90deg,var(--edge) 0px,color-mix(in srgb,var(--edge) 97%,transparent) 40px,color-mix(in srgb,var(--edge) 90%,transparent) 80px,color-mix(in srgb,var(--edge) 80%,transparent) 120px,color-mix(in srgb,var(--edge) 68%,transparent) 160px,color-mix(in srgb,var(--edge) 55%,transparent) 200px,color-mix(in srgb,var(--edge) 42%,transparent) 240px,color-mix(in srgb,var(--edge) 30%,transparent) 280px,color-mix(in srgb,var(--edge) 19%,transparent) 320px,color-mix(in srgb,var(--edge) 10%,transparent) 360px,color-mix(in srgb,var(--edge) 4%,transparent) 390px,transparent 420px,transparent calc(100% - 420px),color-mix(in srgb,var(--edge) 4%,transparent) calc(100% - 390px),color-mix(in srgb,var(--edge) 10%,transparent) calc(100% - 360px),color-mix(in srgb,var(--edge) 19%,transparent) calc(100% - 320px),color-mix(in srgb,var(--edge) 30%,transparent) calc(100% - 280px),color-mix(in srgb,var(--edge) 42%,transparent) calc(100% - 240px),color-mix(in srgb,var(--edge) 55%,transparent) calc(100% - 200px),color-mix(in srgb,var(--edge) 68%,transparent) calc(100% - 160px),color-mix(in srgb,var(--edge) 80%,transparent) calc(100% - 120px),color-mix(in srgb,var(--edge) 90%,transparent) calc(100% - 80px),color-mix(in srgb,var(--edge) 97%,transparent) calc(100% - 40px),var(--edge) calc(100% - 0px))}
:root:root:root.theme-dark{--edge:#0b0b0b}
:root:root:root.theme-dark:has(.hero_1){--edge:#000}
:root:root:root :is(.pr_hero,.rw_hero,.aff_hero,.ct_hero){-webkit-mask-image:none;mask-image:none}
:root:root:root .pr_hero::after{background-image:var(--edge-g),linear-gradient(180deg,rgba(0,0,0,0) 36%,var(--pr-fade) 100%)}
:root:root:root .rw_hero::after{background-image:var(--edge-g),linear-gradient(180deg,rgba(11,11,11,0) 54%,var(--rw-bg) 93%)}
:root:root:root .aff_hero::before,:root:root:root .ct_hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:var(--edge-g)}
:root:root:root:not(.theme-dark) .hero_media::before{background-image:var(--edge-g),linear-gradient(180deg,rgba(255,255,255,0) 65%,#fff 100%)}
:root:root:root.theme-dark .hero_media::before{background-image:var(--edge-g),linear-gradient(180deg,rgba(0,0,0,0) 65%,#000 100%)}
}
/* Round 2 doc #25: headline fully visible, cards share one icon area + title baseline */
.aff_journey_title{line-height:1.08;padding-top:10px}
.aff_journey_head{gap:28px}
@media (min-width:992px){
.aff_step{height:528px;padding:0 24px 24px;justify-content:flex-end}
.aff_step_img{inset:auto;top:0;left:0;width:100%;height:318px;object-fit:cover;object-position:50% 0;border-radius:24px 24px 0 0}
.aff_step_body{height:188px;padding-top:28px;justify-content:flex-start;gap:8px;flex:none}
.aff_step_no{display:none}
}
@media (max-width:991px){
.aff_step{height:528px;padding:0 24px 24px;justify-content:flex-end}
.aff_step_img{inset:auto;top:0;left:0;width:100%;height:322px;object-fit:cover;object-position:50% 40%;border-radius:24px 24px 0 0}
.aff_step_body{height:188px;padding-top:28px;justify-content:flex-start;gap:8px;flex:none}
.aff_step_no{display:none}
}
@media (max-width:767px){
:root:root:root .aff_step{height:508px}
.aff_step_img{height:306px}
}
.aff_step_img{-webkit-mask-image:linear-gradient(180deg,#000 82%,transparent);mask-image:linear-gradient(180deg,#000 82%,transparent)}
/* Round 2 doc #9/13/15/16: FAQs note sits a fixed distance under the specs grid on every product */
#pricing .pricing_rules_body>.pricing_note{margin-top:12px}
#pricing .pricing_benefit_text{min-width:0}
#pricing .pricing_benefit_label{white-space:normal;line-height:1.25}
/* Affiliate milestone photos: dark/light variants (task 3) */
:root.theme-dark .aff_ms_photo_l{display:none}
:root:not(.theme-dark) .aff_ms_photo:not(.aff_ms_photo_l){display:none}
:root:not(.theme-dark) .aff_ms_tile:not(.aff_ms_title) .aff_ms_shade{background-color:rgba(8,12,6,.34)}
:root:not(.theme-dark) .aff_ms_tile:not(.aff_ms_title) :is(.aff_ms_name,.aff_ms_pill,p){text-shadow:0 2px 16px rgba(0,0,0,.55)}
/* 1 Step tab chip now comes from pricing.json (overrides the old Figma-era hide rule; mobile keeps all model chips hidden) */
@media (min-width:768px){[data-pricing-badge="model:1step"]:not(:empty){display:block!important}}
/* model tab chips sit above the glass rim line (.pricing_track::before z=1) */
.pricing_track .pricing_tab .pricing_badge{z-index:3}
/* Images keep their ratio: photos/textures cover their box, logos are contained */
.how_texture,.cta_pattern,.growth_glow,.trust_flag,.aff_ms_photo,.aff_step_img{object-fit:cover}
.growth_logo,.footer_wordmark{object-fit:contain}
/* Mobile round (2026-10-18) */
/* About: pill text on the dark principle cards must stay readable in light mode */
:root:not(.theme-dark) .ab_card_badge{color:#e1f976}
@media (max-width:767px){
/* Trust countries: the list was as wide as its content, so it never scrolled */
.trust_inner>.w-embed{min-width:0;max-width:100%;width:100%}
.trust_countries{max-width:100%}
/* Platform logos: share the row equally so left and right gutters match */
:root:root:root:root .platforms_logos{gap:8px;justify-content:space-between;align-items:center}
:root:root:root:root .platforms_logo_item{flex:1 1 0;min-width:0;width:auto;height:auto;display:flex;justify-content:center}
:root:root:root:root .platforms_logo{width:100%;max-width:100%;height:auto;max-height:34px;object-fit:contain}
/* Product hero tabs: chips straddle the top edge of the tab button */
:root:root .pr_mt i{top:-14px}
/* Affiliate carousels: room above/below so card glow is not cut by overflow */
:root:root:root :is(.aff_levels_grid,.aff_partner_cards,.aff_steps){padding-top:32px;padding-bottom:32px;margin-top:-32px;margin-bottom:-32px}
/* Affiliate creators: the single track child collapsed to 0 height in a column layout */
:root:root:root .aff_vid_track{flex-direction:row}
/* About story cards: image on top, text below, no overlap */
.ab_chapter{height:540px;background-size:100% auto;background-position:50% 0;background-repeat:no-repeat}
:root:not(.theme-dark) .ab_chapter_1{background-color:#e3e2de}
:root:not(.theme-dark) .ab_chapter_2{background-color:#fdfbf7}
:root:not(.theme-dark) .ab_chapter_3{background-color:#f0efeb}
}
/* About "How we operate" #3: new Fast Rewards image (asset 6ad498bf6bf8c2d6d9a2851d); mobile framing keeps bolt and chip in view */
:root .ab_card_3{background-image:url(https://cdn.prod.website-files.com/6ac1ba10a9cf24313e8f656e/6ad498bf6bf8c2d6d9a2851d_about-principle-3-fast-rewards.webp)}
@media (max-width:767px){:root .ab_card_3{background-size:auto 88%;background-position:72% 0;background-repeat:no-repeat}}
/* Home/Welcome: the "Explore About Us" button grows with its text (it had a fixed 192px width) */
:root:root:root .culture_head .btn_cta{width:auto;min-width:192px;flex:none;white-space:nowrap;padding-left:28px;padding-right:28px}
@media (max-width:767px){:root:root:root .culture_head .btn_cta{max-width:100%;min-width:0;font-size:clamp(15px,4.6vw,20px);padding-left:clamp(20px,6vw,32px);padding-right:clamp(16px,5vw,24px)}}
