.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:5%;min-height:750px;padding:60px 5.5% 95px;background:var(--purple)}
.hero-scene{opacity:.12}.hero::before{background:linear-gradient(90deg,#653394 0%,#653394aa 100%)}
.hero-copy{max-width:none}.hero h1{font-size:clamp(62px,7vw,106px)}
.hero-art{position:relative;inset:auto;width:100%;align-self:center;padding-bottom:75px;perspective:1000px}
.hero-products{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.hero-product{display:block;background:#fff;border-radius:24px;overflow:hidden;color:var(--deep);box-shadow:0 20px 45px #32154b35}
.hero-product>span{display:block;padding:18px 20px 12px;font-family:Bungee,sans-serif;font-size:22px}
.hero-product>div{height:300px;overflow:hidden}.hero-product img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.5)}
.hero-product small{display:block;padding:15px 16px;font-size:14px;font-weight:500}.vanilla-product{margin-top:65px;background:var(--yellow)}
.natural-product{background:#ff713f}.hero-mascots{position:absolute;bottom:0;left:2%;right:auto;width:190px;gap:5px;pointer-events:none}.hero-mascots img{width:48%;background:white;padding:4px}
.hero .art-note{position:absolute;bottom:15px;left:210px;right:0;text-align:left;font-size:14px}
.product-stage{background:white;border-radius:28px;padding-top:65px;box-shadow:0 0 0 1px #65339415;overflow:visible}
.product-word{font-size:35px;top:23px}.product-visuals{border-radius:0 0 28px 28px;aspect-ratio:1}
.product-visuals[data-size="100"] .flavour-photo{object-fit:cover;transform:scale(1.18);transform-origin:center 58%}
[data-flavour=vanilla] .product-visuals[data-size="100"] .vanilla-photo{transform:scale(1.18)}
.product-visuals[data-size="400"] .flavour-photo{object-fit:cover;object-position:center 47%;transform:scale(1.48)}
[data-flavour=vanilla] .product-visuals[data-size="400"] .vanilla-photo{transform:scale(1.48)}
.stage-friends{width:24%;bottom:-20px;right:-10px}
.buy{background:#f4eff9;max-width:none;padding:85px 6.5%}.buy>.section-heading{max-width:1350px;margin:0 auto 40px}.buy h2{font-size:clamp(34px,4vw,58px)}
.store-finder{max-width:1350px;margin:auto;display:grid;grid-template-columns:.85fr 1.4fr;background:white;border-radius:28px;overflow:hidden;box-shadow:0 15px 50px #44216409}
.store-sidebar{padding:36px;background:var(--purple);color:white}.store-kicker{font-size:16px;margin:0 0 18px}.store-sidebar>h3{font:38px/1.1 Bungee,sans-serif;margin:0 0 32px;color:var(--yellow)}
.retailer-picker{display:grid;gap:8px}.retailer-picker button{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:15px;border:1px solid #ffffff35;border-radius:12px;padding:16px;color:white;background:transparent;font:inherit;cursor:pointer}
.retailer-picker button span{font-size:17px;font-weight:500}.retailer-picker button small{font-size:12px;white-space:nowrap}.retailer-picker button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:var(--deep)}
.retailer-picker button:focus-visible{outline:3px solid white;outline-offset:2px}
.store-results{padding:36px;min-width:0}.store-results-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.store-results-heading p{font-size:14px;margin:0 0 5px;color:#665674}.store-results-heading h3{font-size:30px;line-height:1.25;margin:0}.store-results-heading>span{font-size:14px;background:#f4eff9;padding:8px 14px;border-radius:30px;white-space:nowrap}
.store-search{display:block;margin:26px 0 8px;font-size:14px}.store-search input{display:block;width:100%;margin-top:8px;padding:14px 16px;border:1px solid #65339430;border-radius:12px;background:#fcfbfd;color:var(--deep);font:inherit;font-size:16px}.store-search input:focus-visible{outline:3px solid var(--purple);outline-offset:2px}
#store-status{font-size:13px;color:#665674;margin:14px 0}.branch-results{list-style:none;padding:0;margin:0;max-height:330px;overflow-y:auto;scrollbar-color:#bda4d2 transparent;scrollbar-width:thin}.branch-results li+li{border-top:1px solid #65339418}.branch-results a{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 8px;font-size:16px}.branch-results a:hover{background:#f4eff9}.branch-results a small{font-size:12px;white-space:nowrap;color:var(--purple)}
.buy>.retail-note,.buy>.online-heading,.buy>.buy-options,.buy>.buy-note{max-width:1350px;margin-left:auto;margin-right:auto}.buy>.retail-note{margin-top:22px;margin-bottom:45px}.buy-options{gap:18px}.buy-option{padding:25px 28px;box-shadow:none;border:none}.buy-option h3{font-size:25px}.channel-label{margin-bottom:18px}
@media(max-width:1100px){.hero{gap:4%;padding-left:5%;padding-right:5%}.hero h1{font-size:clamp(52px,7vw,80px)}.hero-product>div{height:260px}.hero-product>span{font-size:19px;padding:15px}.hero-product small{font-size:12px;padding:12px}.hero-mascots{width:150px}.hero .art-note{left:165px;font-size:12px}.store-sidebar,.store-results{padding:26px}.retailer-picker button{padding:14px 12px}.retailer-picker button small{font-size:11px}.retailer-picker button span{font-size:15px}}
@media(max-width:850px){.store-finder{grid-template-columns:1fr}.store-sidebar>h3{font-size:32px}.retailer-picker{grid-template-columns:1fr 1fr}.store-sidebar{padding:26px}.store-results{padding:28px}.branch-results{max-height:350px}.product-stage{max-width:500px}.hero-product>div{height:230px}}
@media(max-width:700px){.hero{display:block;padding:35px 6% 75px;min-height:0}.hero h1{font-size:clamp(57px,15vw,90px)}.hero-copy{max-width:none}.hero-art{position:relative;inset:auto;width:100%;margin-top:40px;padding-bottom:95px}.hero-products{gap:14px}.hero-product>div{height:245px}.hero-product>span{font-size:17px}.hero-product small{font-size:11px}.vanilla-product{margin-top:35px}.hero-mascots{bottom:0;width:155px;left:0}.hero .art-note{left:170px;bottom:22px;font-size:12px}.hero-scene{inset:0;height:auto}.hero::before{background:#653394cc}.hero-bottom>span{max-width:170px}.buy{padding:60px 6%}.store-sidebar,.store-results{padding:23px}.store-results-heading h3{font-size:24px}.retailer-picker button{display:block}.retailer-picker button small{display:block;margin-top:5px}.store-results-heading>span{font-size:12px;padding:8px 10px}.branch-results a{font-size:15px}.branch-results a small{font-size:11px}.product-stage{border-radius:24px}.product-visuals{border-radius:0 0 24px 24px}}

/* Branch selection and embedded location preview. */
.store-map{margin:20px 0 12px;border:1px solid #65339422;border-radius:18px;overflow:hidden;background:#f4eff9}
.store-map[hidden]{display:none}.map-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px}.map-heading small{color:#665674;font-size:12px}.map-heading p{font-size:16px;font-weight:500;margin:3px 0 0;line-height:1.4}.map-heading a{flex-shrink:0;background:var(--yellow);border-radius:30px;padding:10px 15px;font-size:14px}.store-map iframe{display:block;width:100%;height:300px;border:0;background:#eee9f4}.map-note{font-size:11px;color:#665674;margin:0;padding:8px 16px}.branch-results{max-height:220px}.branch-results button{display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;padding:15px 12px;border:0;background:transparent;color:var(--deep);font:inherit;font-size:15px;text-align:left;cursor:pointer}.branch-results button small{font-size:12px;white-space:nowrap;color:var(--purple)}.branch-results button:hover,.branch-results button[aria-pressed=true]{background:#f4eff9}.branch-results button[aria-pressed=true]{box-shadow:inset 3px 0 var(--purple)}.branch-results button:focus-visible,.map-heading a:focus-visible{outline:3px solid var(--purple);outline-offset:-3px}
@media(max-width:700px){.store-map iframe{height:280px}.map-heading{padding:13px;gap:8px}.map-heading p{font-size:14px}.map-heading a{font-size:12px;padding:9px 12px}.branch-results button{font-size:14px}}

/* Campaign worlds use AI scenery with original photograph layers. */
.hero{grid-template-columns:.86fr 1.14fr;gap:1%;padding-right:2%;min-height:760px}.hero-scene{display:none}.hero::before{display:none}.hero h1{font-size:clamp(56px,6.8vw,100px)}
.campaign-hero.hero-art{padding:0;align-self:center;width:112%;margin-left:-4%;isolation:isolate}.hero-world{display:block;width:100%;height:auto;mask-image:linear-gradient(to right,transparent,#000 8%,#000 94%,transparent)}
.hero-pack{position:absolute;display:block;filter:drop-shadow(0 12px 8px #32154b3b)}.hero-pack svg{width:100%;height:auto;display:block}.hero-pack-natural{width:46%;left:15%;top:25%}.hero-pack-vanilla{width:45%;left:39%;top:54%}.hero-pack:hover{filter:drop-shadow(0 14px 12px #32154b65)}.hero-pack:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}
.product-stage{padding:0;background:transparent;overflow:hidden}.product-word{position:absolute;top:22px;left:26px;text-align:left;font-size:26px;color:var(--deep)}.product-visuals{border-radius:28px;aspect-ratio:1}.product-visuals .flavour-photo,.product-visuals[data-size="100"] .flavour-photo,.product-visuals[data-size="400"] .flavour-photo,[data-flavour=vanilla] .product-visuals[data-size="100"] .vanilla-photo,[data-flavour=vanilla] .product-visuals[data-size="400"] .vanilla-photo{transform:none;overflow:hidden}.campaign-backdrop{width:100%;height:100%;object-fit:cover;display:block}.campaign-pack{position:absolute;width:76%;left:12%;bottom:34%;filter:drop-shadow(0 10px 7px #382a2338)}.campaign-pack.size-100{width:88%;left:6%;bottom:30%}.campaign-pack svg{display:block;width:100%;height:auto}.stage-friends{display:none}
@media(max-width:1100px){.hero{min-height:690px}.hero h1{font-size:clamp(52px,6.6vw,80px)}}
@media(max-width:700px){.hero{padding:35px 6% 70px;min-height:0}.hero h1{font-size:clamp(57px,15vw,90px)}.campaign-hero.hero-art{width:114%;margin:10px -7% 0;padding:0}.hero-world{mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 95%,transparent)}.product-word{font-size:22px;top:16px;left:20px}.product-visuals{border-radius:24px}}

.hero-world{mask-image:linear-gradient(to right,transparent,#000 8%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 8%,#000 92%,transparent);mask-composite:intersect}

.vanilla-photo .campaign-pack.size-400{bottom:32%}.natural-photo .campaign-pack.size-100{bottom:32%}

/* Each fact has one primary location: specs in size selectors, LINE for orders, IG for updates. */
.size-switch{gap:12px}.size-switch button{flex:1;min-width:0;padding:15px;text-align:left}.size-switch button span{display:block;font-size:20px}.size-switch button small{display:block;font-size:13px;margin-top:6px;font-weight:400}.size-switch button b{font-weight:600}.product-description>p:last-child{min-height:0}.product-info .serving-note{margin:20px 0}.buy-options{grid-template-columns:1fr}.buy-line{min-height:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 22px}.buy-line h3{margin:0}.buy-line p{margin:0;font-size:16px}.buy-line .channel-action{grid-column:2;grid-row:1/3;margin:0}.store-sidebar>h3{font-family:Kanit,sans-serif;font-size:26px;margin-bottom:22px}.flavours .section-heading{margin-bottom:36px}.hero{min-height:640px;padding-top:35px;padding-bottom:35px}.product-stage{align-self:start}.product-info{padding-top:0}
@media(max-width:700px){.hero{min-height:0;padding:25px 6% 30px}.hero h1{font-size:clamp(48px,13vw,68px)}.hero-thai{margin:22px 0;font-size:18px}.campaign-hero.hero-art{margin-top:12px}.flavours{padding-top:60px;padding-bottom:60px}.product-info{padding:24px 0 0}.size-switch button{padding:12px}.size-switch button span{font-size:18px}.size-switch button small{font-size:12px}.buy-line{display:block}.buy-line p{margin:8px 0 18px}.contact{padding-top:50px;padding-bottom:50px}}

/* Final composition: state-led colour, compact purchasing, and mobile product visibility. */
#flavours{transition:background-color 250ms var(--ease-out);background:#fffaf5}#flavours[data-active-flavour=vanilla]{background:#fffde9}.flavour-layout{--flavour-accent:#f05529}.flavour-layout[data-flavour=vanilla]{--flavour-accent:#f9d908}.size-switch button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--flavour-accent)}
.campaign-pack{filter:drop-shadow(0 3px 2px #39241832)}.campaign-pack::before{content:"";position:absolute;left:12%;right:9%;height:6%;bottom:0;border-radius:50%;background:#46271540;filter:blur(5px);z-index:-1}.campaign-pack svg{position:relative}.hero-pack{filter:drop-shadow(0 4px 3px #32154b42)}
.purchase-switch{max-width:1350px;margin:0 auto 28px;display:flex;gap:10px}.purchase-switch button{font:inherit;font-size:18px;padding:14px 24px;border:1px solid #65339435;background:white;border-radius:100px;color:var(--deep);cursor:pointer}.purchase-switch button[aria-pressed=true]{background:var(--purple);color:white;border-color:var(--purple)}.purchase-switch button:focus-visible{outline:3px solid var(--purple);outline-offset:3px}.purchase-panel{max-width:1350px;margin:auto}.purchase-panel[hidden]{display:none!important}.purchase-panel .buy-options{margin:0}.purchase-panel .buy-line{padding:32px;min-height:155px}.purchase-panel .retail-note{font-size:13px;margin:18px 0 0}.retailer-mobile{display:none}.buy{padding-top:65px;padding-bottom:65px}.buy>.section-heading{margin-bottom:24px}.store-sidebar,.store-results{padding:25px}.store-sidebar>h3{font-size:23px}.store-search{margin-top:18px}.store-map iframe{height:280px}.branch-results{max-height:190px}
.everyday{padding-top:70px;padding-bottom:70px;gap:6%}.lifestyle-photo{border-radius:28px}.lifestyle-photo img{height:480px;object-fit:cover}.contact{padding-top:65px;padding-bottom:65px}.contact>img{width:210px;max-width:210px}.contact h2{font-size:clamp(32px,4vw,52px)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero-pack{transition:transform 200ms var(--ease-out)}.hero-pack:hover{transform:translateY(-3px)}}
@media(max-width:850px){.store-sidebar>h3,.retailer-picker{display:none}.retailer-mobile{display:block;font-size:14px}.retailer-mobile select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #ffffff66;border-radius:10px;background:white;color:var(--deep);font:inherit;font-size:16px}.store-sidebar{padding:20px}.store-finder{grid-template-columns:1fr}.store-results{padding:20px}.store-results-heading h3{font-size:23px}.contact>img{max-width:180px}}
@media(max-width:700px){.hero{display:flex;flex-direction:column;gap:0;padding:18px 6% 22px}.hero-copy{display:contents}.hero h1{order:0;font-size:clamp(36px,10vw,52px);width:100%;margin:0;line-height:1.05}.hero h1>span{display:inline}.hero h1>span:first-child::after{content:" ";display:block}.hero h1>span:nth-child(2)::after{content:" "}.hero-thai{order:1;align-self:flex-start;font-size:16px;margin:14px 0 0}.campaign-hero.hero-art{order:2;flex:none;width:min(110%,430px);margin:0 -5%;align-self:center;perspective:none}.hero-copy>.button{order:3;align-self:center;margin-top:4px;padding:12px 24px;font-size:16px}.ribbon{padding:17px 4%;font-size:16px}.flavours{padding-top:42px;padding-bottom:48px}.flavours .section-heading{margin-bottom:25px}.flavours .section-heading h2{font-size:30px}.product-stage{max-width:none}.product-info{padding-top:20px}.product-description h3{font-size:28px}.product-description>p:last-child{font-size:17px}.product-info .serving-note{font-size:12px}.buy{padding-top:45px;padding-bottom:45px}.buy h2{font-size:30px}.purchase-switch{gap:8px;margin-bottom:20px}.purchase-switch button{flex:1;padding:12px 8px;font-size:16px}.purchase-panel .buy-line{padding:25px;min-height:0}.purchase-panel .buy-line h3{font-size:24px}.store-results-heading{gap:8px}.store-results-heading>span{white-space:normal;text-align:center}.store-map iframe{height:250px}.map-heading{align-items:start}.map-heading a{padding:8px}.branch-results{max-height:170px}.everyday{padding:45px 6%;gap:28px}.lifestyle-photo img{height:340px}.everyday h2{font-size:32px}.contact{display:flex;align-items:center;gap:25px;padding:40px 6%;min-height:0}.contact>div{flex:1}.contact h2{font-size:25px;margin-top:0}.contact>img{width:95px;max-width:95px}.contact .button{font-size:13px;padding:11px 15px}.contact .button span{margin-left:8px}footer{gap:18px;padding:25px 6%}footer p{display:none}}
@media(prefers-reduced-motion:reduce){#flavours,.flavour-photo,.flavour-switch::before{transition:none!important}}

.store-search[hidden], #store-status[hidden], #branch-results[hidden] {display:none!important}
#flavours:has(.keyboard-change) {transition:none}

/* Thai heading uses the brand's Thai face instead of the Latin display fallback. */
#flavours-title {
  font-family: 'Kanit', sans-serif;
  font-weight: 600;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.3;
  letter-spacing: 0;
  text-wrap: balance;
}
.recipe-teaser{display:inline-block;margin-top:24px}.header nav .nav-recipes{display:inline-block}@media(max-width:700px){.header nav{gap:14px}.header nav .nav-recipes{font-size:14px}.header .brand img{max-width:105px}.header .nav-contact{padding:10px 14px}}
