.bp{
  --white:#FFFFFF; --lav:#F3F0F8; --lilac:#DCD4E8; --ink:#2B2240; --soft:#6A6378;
  --plum:#33254F; --plum2:#5A4784;
  --champ:#EFE6D6; --sand:#D8C3A1; --gold:#9C7A48;
  --rose:linear-gradient(90deg,#E6A596 0%,#F7DDD4 35%,#C98468 62%,#F1C4BA 100%);
  --line:#E4DFEC;
  --font:'Montserrat','Prompt',system-ui,sans-serif;
  background:var(--white);color:var(--ink);font-family:var(--font);font-weight:400;font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased
}
.bp *,.bp *::before,.bp *::after{box-sizing:border-box}
.bp[data-lang="en"] .th,.bp[data-lang="th"] .en{display:none!important}
.bp[data-lang="th"]{font-family:'Prompt','Montserrat',system-ui,sans-serif;font-weight:300;line-height:1.8}
.bp img{display:block;max-width:100%}
.bp a{color:inherit}
.bp :focus-visible{outline:2px solid var(--plum2);outline-offset:3px;border-radius:6px}
.bp-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.bp h1,.bp h2,.bp h3{margin:0;color:inherit}
.bp h1{font-size:clamp(34px,4.6vw,60px);line-height:1.05;font-weight:800;text-transform:uppercase;letter-spacing:.01em}
.bp h2{font-size:clamp(28px,3.4vw,44px);line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:.01em}
.bp h3{font-size:17px;line-height:1.3;font-weight:600}
.bp[data-lang="th"] h1,.bp[data-lang="th"] h2{font-weight:600;line-height:1.3}
.bp[data-lang="th"] h1{font-size:clamp(30px,3.8vw,50px)}
.bp p{margin:0;max-width:60ch}
.bp-rule{height:3px;width:120px;background:var(--rose);border-radius:2px;margin:26px 0}
.bp-grad{background:var(--rose);-webkit-background-clip:text;background-clip:text;color:transparent}

/* nav */
.bp-nav{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
.bp-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.bp-brand img{width:40px;height:40px;border-radius:50%;object-fit:cover;transform:scale(1.02)}
.bp-brand b{font-weight:800;font-size:17px;letter-spacing:.06em}
.bp-right{display:flex;gap:26px;align-items:center;font-size:14px;font-weight:500}
.bp-right>a{text-decoration:none;color:var(--soft)}
.bp-right>a:hover{color:var(--ink)}
.bp-lang{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px}
.bp-lang button{border:0;background:none;font:inherit;font-size:13px;padding:5px 12px;border-radius:999px;cursor:pointer;color:var(--soft)}
.bp-lang button[aria-pressed="true"]{background:var(--ink);color:#fff}

/* buttons */
.bp-btn{display:inline-block;text-decoration:none;font-size:14px;font-weight:600;padding:14px 26px;border-radius:999px;border:0;cursor:pointer;font-family:inherit;transition:background .2s,color .2s}
.bp-btn--ink{background:var(--ink);color:#fff!important}
.bp-btn--ink:hover{background:var(--plum2)}
.bp-btn--line{box-shadow:inset 0 0 0 1.5px var(--ink);color:var(--ink)!important;background:transparent}
.bp-btn--line:hover{background:var(--ink);color:#fff!important}
.bp-btn--rose{background:var(--rose);color:var(--ink)!important}
.bp-btn--rose:hover{filter:brightness(1.05)}

/* hero */
.bp-hero{background:var(--lav)}
.bp-hero .bp-wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding-top:56px;padding-bottom:72px}
.bp-hero p{color:var(--soft);font-size:18px}
.bp-hero .bp-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.bp-duo{position:relative;height:clamp(420px,46vw,580px)}
.bp-duo figure{position:absolute;margin:0;overflow:hidden;box-shadow:0 30px 60px -30px rgba(43,34,64,.5)}
.bp-duo figure img{width:100%;height:100%;object-fit:cover}
.bp-duo .d1{left:0;top:0;width:56%;height:88%;border-radius:220px 220px 20px 20px}
.bp-duo .d2{right:0;bottom:0;width:48%;height:78%;border-radius:20px 20px 220px 220px}

/* dark product stage */
.bp-stage{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:radial-gradient(ellipse at 72% 20%,rgba(190,168,230,.7) 0,rgba(190,168,230,0) 48%),linear-gradient(150deg,#1d1530 0%,#34254f 55%,#6a55a0 100%)}
.bp-stage::before{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.07) 40.3%,rgba(255,255,255,.07) 57%,transparent 57.3%)}
.bp-stage::after{content:"";position:absolute;left:22%;right:22%;bottom:5%;height:5%;border-radius:50%;background:rgba(0,0,0,.5);filter:blur(12px)}
.bp .bp-stage img{position:relative;z-index:1;height:84%;width:auto;max-width:90%;object-fit:contain;filter:drop-shadow(0 20px 26px rgba(0,0,0,.35))}
.bp .bp-tile .bp-stage img{height:210px}
.bp-stage--light{background:radial-gradient(ellipse at 30% 18%,#FFFBF3 0,rgba(255,251,243,0) 55%),linear-gradient(160deg,#F7F0E3 0%,#EBDDC3 60%,#DCC6A2 100%)}
.bp-stage--light::before{background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.28) 40.3%,rgba(255,255,255,.28) 57%,transparent 57.3%)}
.bp-stage--light::after{display:none}
.bp .bp-stage--light img{filter:none;mix-blend-mode:multiply;height:auto;width:96%;max-width:96%}
.bp .bp-tile .bp-stage--light img{height:250px;width:auto}
.bp .bp-duo .bp-stage--light img{transform:translate(-9%,-6%) scale(1.12)}
.bp-gal[data-line="pigment"] .bp-gal-main,.bp-gal[data-line="pigment"] .bp-thumbs button{background:#F5EFE4}

/* lines */
.bp-lines{padding:88px 0}
.bp-lines>.bp-wrap>p{color:var(--soft);margin-top:14px}
.bp-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.bp-tile{border-radius:24px;overflow:hidden;display:flex;flex-direction:column;min-height:420px}
.bp-tile-img{flex:1;min-height:240px;background-size:cover;background-position:center}
.bp-tile-body{padding:24px 26px 26px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.bp-tile-body p{font-size:15px;margin-top:6px}
.bp-tile--pig{background:var(--champ)}
.bp-tile--pig .bp-tile-body p{color:#6f5f49}
.bp-tile--lift{background:var(--plum);color:#fff}
.bp-tile--serum{background:#E9E4F2}
.bp-tile--serum .bp-tile-img{background-color:#E9E4F2;background-blend-mode:multiply;background-size:cover;background-position:center 45%}
.bp-tile--serum .bp-tile-body p{color:var(--soft)}
.bp-tile--lift .bp-tile-body p{color:var(--lilac)}
.bp-tile h3{font-size:24px;font-weight:800;letter-spacing:.02em}
.bp-tile .bp-btn{white-space:nowrap}

/* feature bands */
.bp-band{padding:88px 0}
.bp-band .bp-wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.bp-band figure{margin:0;border-radius:24px;overflow:hidden;aspect-ratio:4/5}
.bp-band figure img{width:100%;height:100%;object-fit:cover}
.bp-band p{font-size:17px}
.bp-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:32px 0 30px}
.bp-facts div{border-radius:18px;padding:20px}
.bp-facts b{display:block;font-size:30px;font-weight:800;line-height:1.1;margin-bottom:6px}
.bp-facts span{font-size:14px}
.bp-note{font-size:12px!important;margin-top:22px!important;opacity:.75}
.bp-band--pig{background:var(--champ)}
.bp-band--pig p{color:#5f513e}
.bp-band--pig .bp-facts div{background:rgba(255,255,255,.6)}
.bp-band--pig .bp-facts b{color:var(--gold)}
.bp-band--lift{background:linear-gradient(135deg,#1F1733 0%,var(--plum) 55%,var(--plum2) 100%);color:#fff}
.bp-band--lift .bp-wrap>div:first-child{order:2}
.bp-band--lift p{color:var(--lilac)}
.bp-band--lift .bp-facts div{background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.bp-band--lift .bp-facts span{color:var(--lilac)}
.bp-lift-title{font-size:clamp(40px,5.4vw,68px);font-weight:800;line-height:1;letter-spacing:.005em;margin-bottom:18px}

/* products */
.bp-products{padding:88px 0}
.bp-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap}
.bp-chips{display:flex;gap:8px;flex-wrap:wrap}
.bp-chips button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 18px;font:inherit;font-size:14px;font-weight:500;cursor:pointer;color:var(--soft)}
.bp-chips button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.bp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 20px;margin-top:40px}
/* product cards */
.bp-tag{font-size:12px;font-weight:600;margin:16px 0 4px;letter-spacing:.03em}
.bp-card[data-line="pigment"] .bp-tag{color:var(--gold)}
.bp-card[data-line="lift"] .bp-tag,.bp-card[data-line="serum"] .bp-tag{color:var(--plum2)}
.bp-card[data-line="soon"] .bp-tag{color:var(--soft)}
.bp-card[data-line="soon"] .bp-shot{background:#F6F5F8}
.bp-card{display:flex;flex-direction:column;background:none;border:0;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.bp-card[hidden]{display:none}
.bp-card[data-soon]{cursor:default}
.bp-shot{position:relative;aspect-ratio:1;border-radius:22px;overflow:hidden;background:var(--lav)}
.bp-shot img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transform:scale(var(--z,1.14));transition:transform .5s ease}
.bp-card:not([data-soon]):hover .bp-shot img{transform:scale(calc(var(--z,1.14) * 1.05))}
.bp-card[data-line="pigment"] .bp-shot{background:#F5EFE4}
.bp-shot .bp-badge{position:absolute;left:12px;top:12px;font-size:11px;font-weight:600;background:#fff;color:var(--ink);padding:4px 10px;border-radius:999px}
.bp-shot .bp-soon{position:absolute;inset:auto 12px 12px 12px;font-size:12px;color:var(--soft);background:rgba(255,255,255,.85);padding:6px 10px;border-radius:10px;text-align:center}
.bp-card h3{margin-top:2px}
.bp-card .bp-short{color:var(--soft);font-size:14px;margin-top:8px;flex-grow:1}
.bp-card .bp-cfda{display:block;margin-top:8px;font-size:11px;color:var(--soft);letter-spacing:.02em}
.bp-card .bp-more{margin-top:14px;font-size:14px;font-weight:600;color:var(--plum2);text-decoration:underline;text-underline-offset:4px}

/* modal */
.bp-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px}
.bp-modal[hidden]{display:none}
.bp-modal-bg{position:absolute;inset:0;background:rgba(31,23,51,.55);backdrop-filter:blur(4px)}
.bp-sheet{position:relative;background:#fff;border-radius:28px;width:min(1080px,100%);max-height:calc(100vh - 48px);overflow:auto;overscroll-behavior:contain;
  animation:bp-up .35s cubic-bezier(.2,.7,.2,1)}
@keyframes bp-up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.bp-sheet{animation:none}}
.bp-x{position:sticky;top:14px;float:right;margin:14px 14px 0 0;z-index:2;border:0;background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:600;padding:9px 16px;border-radius:999px;cursor:pointer}
.bp-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:36px}
.bp-gal{position:sticky;top:0;align-self:start}
.bp-gal-main{aspect-ratio:1;border-radius:22px;background:var(--lav);overflow:hidden}
.bp-gal-main img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.bp-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px}
.bp-thumbs button{aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--lav);border:2px solid transparent;padding:0;cursor:pointer}
.bp-thumbs button[aria-current="true"]{border-color:var(--ink)}
.bp-thumbs img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.bp-sheet .bp-tag{margin-top:0}
.bp-sheet h3{font-size:clamp(24px,2.6vw,32px);font-weight:800;line-height:1.15;text-transform:uppercase}
.bp[data-lang="th"] .bp-sheet h3{font-weight:600;text-transform:none}
.bp-sub{font-size:17px;font-weight:600;margin-top:10px;color:var(--plum2)}
.bp-meta{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 18px}
.bp-meta span{font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--lav)}
.bp-fda{font-size:13px!important;color:var(--soft);margin:-6px 0 16px!important}
.bp-fda b{color:var(--ink);font-weight:600;letter-spacing:.02em}
.bp-desc{color:var(--soft);font-size:15px}
.bp-sheet h4{font-size:14px;font-weight:700;margin:28px 0 12px;letter-spacing:.02em}
.bp-benefits{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.bp-benefits li{position:relative;padding-left:22px;font-size:15px}
.bp-benefits li::before{content:"";position:absolute;left:0;top:.55em;width:9px;height:9px;border-radius:50%;background:var(--rose)}
.bp-stats{display:grid;gap:10px}
.bp-stat{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;background:linear-gradient(135deg,#231a39,var(--plum));color:#fff;border-radius:16px;padding:14px 18px}
.bp-stat b{font-size:30px;font-weight:800;line-height:1}
.bp-stat span{font-size:14px;color:var(--lilac)}
.bp-ingr{display:flex;flex-wrap:wrap;gap:8px}
.bp-ingr span{font-size:13px;padding:7px 13px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line)}
.bp-sheet details{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bp-sheet summary{cursor:pointer;padding:12px 0;font-size:14px;font-weight:600;list-style:none;display:flex;justify-content:space-between}
.bp-sheet summary::-webkit-details-marker{display:none}
.bp-sheet summary::after{content:"+";font-size:18px;line-height:1}
.bp-sheet details[open] summary::after{content:"–"}
.bp-sheet details p{font-size:12px;color:var(--soft);padding-bottom:14px;max-width:none}
.bp-buyrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.bp-buyrow .bp-btn{padding:12px 20px}
.bp-routine{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bp-step{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;font-size:14px;color:var(--ink);background:#fff;border:0;border-radius:14px;padding:10px 14px;box-shadow:inset 0 0 0 1px var(--line)}
.bp-step b{flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--lav)}
.bp-step span{flex:1}
.bp-step em{font-style:normal;font-size:12px;font-weight:600;color:var(--soft)}
.bp-step.is-cur{box-shadow:inset 0 0 0 1.5px var(--ink)}
.bp-step.is-cur b{background:var(--ink);color:#fff}
.bp-step.is-link{cursor:pointer}
.bp-step.is-link em{color:var(--plum2);text-decoration:underline;text-underline-offset:3px}
.bp-step.is-link:hover{background:var(--lav)}
.bp-fn{font-size:11px!important;color:var(--soft);margin-top:18px!important}
@media (max-width:860px){
  .bp-modal{padding:0;align-items:flex-end}
  .bp-sheet{border-radius:24px 24px 0 0;max-height:94vh}
  .bp-sheet-grid{grid-template-columns:1fr;gap:24px;padding:20px}
  .bp-gal{position:static;max-width:420px;margin:0 auto;width:100%}
}

/* buy */
.bp-buy{background:var(--lav);padding:88px 0}
.bp-buy .bp-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.bp-buy .bp-wrap>div>p{color:var(--soft);margin-top:14px}
.bp-shops{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bp-shop{background:#fff;border-radius:20px;padding:22px;text-decoration:none;display:flex;flex-direction:column;gap:4px;min-height:132px;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s}
.bp-shop:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.bp-shop b{font-weight:700;font-size:19px}
.bp-shop span{font-size:13px;color:var(--soft)}
.bp-shop em{margin-top:auto;font-style:normal;font-weight:600;font-size:14px}
.bp .bp-shop--line{background:var(--ink);color:#fff;box-shadow:none}
.bp-shop--line span{color:var(--lilac)}
.bp-shop--line em{color:#F1C4BA}

/* contact */
.bp-contact{background:var(--ink);color:#fff;padding:64px 0 40px}
.bp-contact .bp-wrap{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end}
.bp-contact address{font-style:normal;color:var(--lilac);line-height:1.9}
.bp-contact address a{color:#fff}
.bp-foot{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;margin-top:24px;font-size:12px;color:#a79fb8}

@media (max-width:980px){
  .bp-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
  .bp-right>a{display:none}
  .bp-hero .bp-wrap,.bp-band .bp-wrap,.bp-buy .bp-wrap,.bp-contact .bp-wrap{grid-template-columns:1fr}
  .bp-band--lift .bp-wrap>div:first-child{order:0}
  .bp-tiles{grid-template-columns:1fr}
  .bp-tile{min-height:360px}
  .bp-duo{height:440px}
  .bp-lines,.bp-band,.bp-products,.bp-buy{padding:64px 0}
}
@media (max-width:520px){
  .bp-grid{gap:24px 12px}
  .bp-shops{grid-template-columns:1fr}
  .bp-facts b{font-size:22px}
  .bp-duo{height:380px}
}
