/** Shopify CDN: Minification failed

Line 224:13 Expected identifier but found "{"
Line 224:14 Unexpected "{"
Line 224:23 Expected ":"

**/
/* START_SECTION:tk-announcement (INDEX:110) */
.tk-ann{
  width:100%;font-family:'DM Sans','Inter',system-ui,sans-serif;
  font-size:.78rem;font-weight:500;letter-spacing:.02em;
  border-bottom:1px solid rgba(255,255,255,.08);
  position:relative;z-index:60
}
.tk-ann-wrap{max-width:1240px;margin:0 auto;padding:9px 22px;overflow:hidden}

.tk-ann-item{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none;white-space:nowrap;line-height:1.4}
a.tk-ann-item{transition:opacity .2s ease}
a.tk-ann-item:hover{opacity:.78}
.tk-ann-icon{
  display:inline-flex;align-items:center;justify-content:center;
  color:#F0C36A;font-size:.86rem;line-height:1
}
.tk-ann-icon:has-text('油'),.tk-ann-icon{font-family:'Shippori Mincho','Zen Old Mincho',serif}
.tk-ann-txt{font-family:'DM Sans','Inter',sans-serif}

/* Rotator (default) */
.tk-ann--rotate .tk-ann-rotator{position:relative;height:1.4em;text-align:center}
.tk-ann--rotate .tk-ann-slide{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease;
  pointer-events:none
}
.tk-ann--rotate .tk-ann-slide.is-on{opacity:1;transform:translateY(0);pointer-events:auto}

/* Scroll marquee */
.tk-ann--scroll .tk-ann-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.tk-ann--scroll .tk-ann-track{
  display:inline-flex;align-items:center;gap:22px;white-space:nowrap;
  animation:tk-ann-scroll 30s linear infinite
}
.tk-ann--scroll .tk-ann-sep{color:#F0C36A;font-size:.74rem;opacity:.6}
@keyframes tk-ann-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

@media(max-width:640px){
  .tk-ann-wrap{padding:8px 14px}
  .tk-ann{font-size:.72rem}
}
/* END_SECTION:tk-announcement */
/* START_SECTION:tk-benefits (INDEX:111) */
.tk-benefits .tk-bgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 24px;max-width:1000px;margin:0 auto}
.tk-benefits .tk-bcard{text-align:center}
.tk-benefits .tk-bicon{color:var(--seal);margin:0 auto 18px;height:64px;display:grid;place-items:center}
.tk-benefits .tk-bcard h3{font-size:1.18rem;margin-bottom:9px}
.tk-benefits .tk-bcard p{font-size:.93rem;color:var(--slate)}
.tk-benefits .tk-benefits-foot{text-align:center;margin-top:58px}
.tk-benefits .tk-benefits-foot h3{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:10px}
.tk-benefits .tk-benefits-foot p{color:var(--slate);margin-bottom:22px}

@media(max-width:900px){
  .tk-benefits .tk-bgrid{grid-template-columns:1fr 1fr;gap:40px 18px}
}
@media(max-width:560px){
  .tk-benefits .tk-bgrid{grid-template-columns:1fr 1fr;gap:12px}
}
/* END_SECTION:tk-benefits */
/* START_SECTION:tk-bundle (INDEX:112) */
.tk-bundle .tk-sec-head .tk-trust{margin-top:14px}

.tk-bundle .tk-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:34px}
.tk-bundle .tk-tier{position:relative;text-align:left;background:#fff;border:2px solid var(--line);border-radius:26px;padding:24px 22px 20px;cursor:pointer;font-family:inherit;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
.tk-bundle .tk-tier:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.tk-bundle .tk-tier--feat{border-color:var(--sage-mid)}
/* Selected state — tint + check badge, distinct from the always-on red hero highlight */
.tk-bundle .tk-tier.is-active{border-color:var(--sage);background:var(--sage-wash);box-shadow:var(--shadow)}
.tk-bundle .tk-tier.is-active::after{content:"\2713";position:absolute;top:14px;right:14px;width:26px;height:26px;border-radius:50%;background:var(--sage);color:#fff;display:grid;place-items:center;font-size:.92rem;font-weight:800;line-height:1;box-shadow:0 2px 6px rgba(46,44,39,.18);z-index:3}
.tk-bundle .tk-tier .tk-tag{position:absolute;top:-12px;left:22px;background:var(--sage);color:#fff;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.tk-bundle .tk-tier--feat .tk-tag{background:var(--gold);color:var(--char)}
.tk-bundle .tk-tier--full .tk-tag{background:var(--seal);color:#fff}
.tk-bundle .tk-tier h3{font-size:1.42rem;margin-bottom:2px}
.tk-bundle .tk-tier h3 .tk-fw{color:var(--seal);font-weight:800;background:linear-gradient(transparent 58%, rgba(217,154,82,.55) 58%);padding:0 .12em;border-radius:2px}
.tk-bundle .tk-tier .tk-sub{font-size:.8rem;color:var(--slate);margin-bottom:13px;letter-spacing:.02em}
.tk-bundle .tk-tier .tk-price{display:flex;align-items:baseline;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.tk-bundle .tk-tier .tk-price b{font-family:"Shippori Mincho",Fraunces,serif;font-size:1.7rem}
.tk-bundle .tk-tier .tk-price s{color:var(--slate);opacity:.7;font-size:.95rem}
.tk-bundle .tk-tier .tk-price .tk-save{margin-left:auto;background:var(--sage-wash);color:var(--sage-deep);font-weight:700;font-size:.7rem;padding:4px 9px;border-radius:999px}
.tk-bundle .tk-tier .tk-ship{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:5px 11px;border-radius:999px;margin-bottom:14px}
.tk-bundle .tk-tier .tk-ship--on{color:#fff;background:var(--sage)}
.tk-bundle .tk-tier .tk-ship--off{color:var(--slate);background:var(--cream-deep)}
.tk-bundle .tk-tier .tk-perks{list-style:none;display:flex;flex-direction:column;gap:7px;font-size:.84rem;color:var(--slate);padding:0;margin:0}
.tk-bundle .tk-tier .tk-perks li{display:flex;gap:8px;align-items:center}
.tk-bundle .tk-tier .tk-perks svg{color:var(--sage);flex:0 0 auto}
/* Hero (Most Popular) — RED outline always on, so it catches the eye unprompted */
.tk-bundle .tk-tier--full{transform:scale(1.04);z-index:2;border-color:var(--seal);box-shadow:var(--shadow-sm)}
.tk-bundle .tk-tier--full:hover{transform:scale(1.04) translateY(-3px);box-shadow:0 0 0 1.5px var(--seal),var(--shadow)}
.tk-bundle .tk-tier--full.is-active{border-color:var(--seal);background:rgba(180,70,46,.07);box-shadow:0 0 0 2px var(--seal),var(--shadow)}
.tk-bundle .tk-tier--full.is-active::after{background:var(--seal)}
.tk-bundle .tk-tier--full.is-active .tk-tag{background:var(--seal);color:#fff}

.tk-builder{display:grid;grid-template-columns:1.45fr .9fr;gap:24px;align-items:start}
.tk-scents{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;scroll-margin-top:140px}
.tk-picker-head{display:flex;justify-content:space-between;align-items:center;font-family:"Shippori Mincho",Fraunces,serif;font-weight:600;font-size:1.15rem;margin-bottom:18px}
.tk-picker-head .tk-cnt{font-family:"DM Sans",sans-serif;font-size:.82rem;font-weight:700;color:var(--sage-deep);background:var(--sage-wash);padding:5px 12px;border-radius:999px}
.tk-scent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tk-scent-tile{border:1px solid var(--line);border-radius:18px;padding:10px;text-align:center;transition:border-color .15s,background .15s}
.tk-scent-tile.has{border-color:var(--sage);background:var(--sage-wash)}
.tk-scent-tile .tk-ph{aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--cream-deep);margin-bottom:9px}
.tk-scent-tile .tk-ph img{width:100%;height:100%;object-fit:cover}
.tk-scent-tile .tk-nm{font-weight:700;font-size:.82rem;line-height:1.2}
.tk-scent-tile .tk-sc{font-size:.68rem;color:var(--slate);margin-bottom:9px;min-height:1.6em}
.tk-stepper{display:flex;align-items:center;justify-content:center;gap:12px}
.tk-stepper button{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--sage);background:#fff;color:var(--sage-deep);font-weight:700;cursor:pointer;display:grid;place-items:center;font-size:1.05rem;line-height:1}
.tk-stepper button:hover:not(:disabled){background:var(--sage);color:#fff}
.tk-stepper button:disabled{opacity:.3;cursor:not-allowed}
.tk-stepper .tk-q{min-width:16px;font-weight:700;font-family:"Shippori Mincho",Fraunces,serif}

.tk-summary{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow-sm)}
.tk-ship-banner{display:flex;align-items:center;gap:9px;border-radius:12px;padding:12px 14px;font-weight:700;font-size:.86rem;margin-bottom:14px;transition:all .25s}
.tk-ship-banner--off{color:var(--sage-deep);background:var(--sage-wash);border:1px dashed var(--sage)}
.tk-ship-banner--on{color:#fff;background:var(--sage);border:1px solid var(--sage)}
.tk-ship-banner svg{flex:0 0 auto}
.tk-bar{height:8px;border-radius:999px;background:var(--cream-deep);position:relative;margin:0 0 16px;overflow:hidden}
.tk-bar .tk-fill{display:block;height:100%;border-radius:999px;background:var(--sage);width:0;transition:width .3s}

.tk-reward-chips{display:flex;flex-direction:column;gap:9px}
.tk-rchip{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--slate);font-weight:600}
.tk-rchip.on{color:var(--ink)}
.tk-rchip .tk-dot{width:21px;height:21px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;flex:0 0 auto;color:transparent;transition:all .2s}
.tk-rchip.on .tk-dot{background:var(--sage);border-color:var(--sage);color:#fff}

.tk-sub-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;padding:14px;margin:18px 0;cursor:pointer;transition:border-color .15s,background .15s}
.tk-sub-row.on{border-color:var(--sage);background:var(--sage-wash)}
.tk-sub-row .tk-sw{width:42px;height:24px;border-radius:999px;background:#cfc7b6;position:relative;flex:0 0 auto;transition:background .2s}
.tk-sub-row.on .tk-sw{background:var(--sage)}
.tk-sub-row .tk-sw::after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.tk-sub-row.on .tk-sw::after{transform:translateX(18px)}
.tk-sub-row .tk-t b{display:block;font-size:.9rem}
.tk-sub-row .tk-t span{font-size:.74rem;color:var(--slate)}

.tk-totals{border-top:1px solid var(--line);padding-top:16px}
.tk-totals .tk-row{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:9px;color:var(--slate)}
.tk-totals .tk-row--save,.tk-totals .tk-row--free{color:var(--sage-deep);font-weight:700}
.tk-totals .tk-row--tot{font-family:"Shippori Mincho",Fraunces,serif;font-weight:600;font-size:1.45rem;color:var(--ink);margin-bottom:0}

.tk-add{width:100%;margin-top:16px}
.tk-add:disabled{opacity:.45;cursor:not-allowed}
.tk-summary .tk-fine{text-align:center;font-size:.74rem;color:var(--slate);margin-top:12px}
.tk-bundle-note{text-align:center;font-size:.72rem;color:var(--slate);opacity:.7;margin-top:30px;font-style:italic;max-width:46rem;margin-left:auto;margin-right:auto}

.tk-scent-tile.is-disabled{opacity:.5;pointer-events:none}
.tk-scent-tile.is-disabled[data-soldout="1"]{opacity:1;pointer-events:none}
.tk-scent-tile[data-soldout="1"] .tk-stepper button{opacity:.35;pointer-events:none}
.tk-scent-tile .tk-ph{position:relative}
.tk-soldout{
  position:absolute;inset:0;
  display:grid;place-items:center;
  background:rgba(255,255,255,.78);
  font-family:'Shippori Mincho',Fraunces,serif;
  font-size:.78rem;font-weight:700;letter-spacing:.1em;
  color:var(--seal);text-transform:uppercase
}
.tk-bundle-warn{
  max-width:720px;margin:18px auto 0;text-align:center;
  background:#FCEFD9;border:1px solid var(--seal);color:var(--seal);
  border-radius:14px;padding:12px 18px;font-size:.86rem;font-weight:600
}

@media(max-width:900px){
  .tk-bundle .tk-tiers{grid-template-columns:1fr}
  .tk-builder{grid-template-columns:1fr}
  .tk-summary{position:static}
  .tk-bundle .tk-tier--full{transform:none}
  .tk-bundle .tk-tier--full:hover{transform:translateY(-3px)}
}
@media(max-width:560px){
  .tk-scent-grid{grid-template-columns:1fr 1fr}
}
/* END_SECTION:tk-bundle */
/* START_SECTION:tk-buybar (INDEX:113) */
.tk-buybar{
  display:none; /* desktop: hidden — only shown at <= 900px below */
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  box-sizing:border-box;
  align-items:center;justify-content:space-between;gap:14px;
  min-height:64px;
  padding:10px 16px;
  padding-bottom:calc(10px + env(safe-area-inset-bottom, 0px));
  background:#FFFFFF;
  box-shadow:0 -4px 18px rgba(20,30,40,.12);
  transform:translateY(0);
  transition:transform .3s cubic-bezier(.2,.7,.2,1)
}
.tk-buybar.is-hidden{
  transform:translateY(130%);
  pointer-events:none
}
.tk-buybar-info{display:flex;flex-direction:column;gap:1px;line-height:1.18;min-width:0}
.tk-buybar-deal{
  font-family:'DM Sans','Inter',system-ui,sans-serif;font-weight:700;
  font-size:.96rem;color:#2E2A24;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.tk-buybar-price{
  font-family:'DM Sans','Inter',system-ui,sans-serif;font-weight:600;
  font-size:.9rem;color:#6b675f
}
.tk-buybar-btn{
  flex:0 0 auto;
  background:#B14A2E;color:#fff;border:0;cursor:pointer;
  font-family:'DM Sans','Inter',system-ui,sans-serif;font-weight:700;
  font-size:.92rem;letter-spacing:.01em;
  padding:13px 24px;border-radius:999px;white-space:nowrap;
  transition:background .2s ease,transform .12s ease
}
.tk-buybar-btn:hover{background:#9E3F26}
.tk-buybar-btn:active{transform:scale(.97)}
.tk-buybar-btn[disabled]{opacity:.7;cursor:default}

@media(max-width:900px){
  .tk-buybar{display:flex}
}
/* END_SECTION:tk-buybar */
/* START_SECTION:tk-closing (INDEX:114) */
.tk-closing{
  background:{{ section.settings.bg_color | default: '#F2F0EA' }};
  padding:74px 0;text-align:center
}
.tk-closing-h{
  font-family:'Playfair Display','Fraunces','Shippori Mincho',serif;
  font-weight:600;color:#2E2A24;
  font-size:clamp(2rem,4.6vw,3rem);line-height:1.1;margin:0 auto;max-width:16ch
}
.tk-closing-btn{
  display:inline-flex;align-items:center;justify-content:center;
  margin:26px auto 0;
  background:#B14A2E;color:#fff;text-decoration:none;
  font-family:'DM Sans','Inter',system-ui,sans-serif;font-weight:700;font-size:1.04rem;
  padding:16px 34px;border-radius:999px;
  box-shadow:0 6px 18px rgba(177,74,46,.28);
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease
}
.tk-closing-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(177,74,46,.36);background:#9E3F26}
.tk-closing-trust{
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  font-size:.9rem;color:#7C8166;margin:16px 0 0;letter-spacing:.01em
}
/* END_SECTION:tk-closing */
/* START_SECTION:tk-compare (INDEX:115) */
.tk-compare{padding:60px 0}
.tk-compare-head{text-align:center;margin-bottom:30px}
.tk-eyebrow-clay{
  display:block;text-align:center;
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  font-size:.74rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:#B14A2E;margin-bottom:14px
}
.tk-compare-h{
  font-family:'Playfair Display','Fraunces','Shippori Mincho',serif;
  font-weight:600;color:#2E2A24;
  font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.14;margin:0 auto;max-width:20ch
}
.tk-compare-h em{font-style:italic}

.tk-cmp-scroll{
  margin:0 auto;max-width:880px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--line,#E7E3DA);border-radius:22px;background:#fff;
  box-shadow:0 3px 16px rgba(46,42,36,.05)
}
.tk-cmp-table{
  border-collapse:separate;border-spacing:0;width:100%;min-width:680px;
  font-family:'DM Sans','Inter',system-ui,sans-serif
}
.tk-cmp-table th,.tk-cmp-table td{
  padding:16px 14px;text-align:center;vertical-align:middle;
  border-bottom:1px solid #EFEBE2;font-size:.94rem;color:#2E2A24
}
.tk-cmp-table tbody tr:last-child th,
.tk-cmp-table tbody tr:last-child td{border-bottom:0}
.tk-cmp-table thead th{
  font-weight:700;font-size:.85rem;color:#6b675f;background:#FBFAF7;padding:18px 14px
}
.tk-cmp-rowhead{
  text-align:left;font-weight:600;color:#2E2A24;font-size:.88rem;
  width:160px;min-width:160px;
  background:#fff;position:sticky;left:0;z-index:2
}
.tk-cmp-table thead .tk-cmp-rowhead{background:#FBFAF7;z-index:4}
.tk-cmp-win{
  width:128px;min-width:128px;
  background:#FAF1EB;
  border-left:1.5px solid rgba(177,74,46,.20);
  border-right:1.5px solid rgba(177,74,46,.20);
  position:sticky;left:160px;z-index:2
}
.tk-cmp-table thead th.tk-cmp-win{
  color:#B14A2E;font-weight:800;font-size:.96rem;background:#F6E6DC;
  border-top:3px solid #B14A2E;z-index:3
}
.tk-yes{color:#5C6142;font-weight:800;font-size:1.18rem;line-height:1}
.tk-no,.tk-mid{color:#BBB6AC;font-weight:600;font-size:1.06rem;line-height:1}

@media(max-width:520px){
  .tk-cmp-rowhead{width:142px;min-width:142px;font-size:.82rem}
  .tk-cmp-win{left:142px}
  .tk-cmp-table th,.tk-cmp-table td{padding:13px 9px}
}
/* END_SECTION:tk-compare */
/* START_SECTION:tk-email-popup (INDEX:116) */
.tkpop{
  position:fixed;inset:0;z-index:120;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  opacity:0;visibility:hidden;transition:opacity .32s ease,visibility .32s ease
}
.tkpop.is-open{opacity:1;visibility:visible}
.tkpop[hidden]{display:none}

.tkpop-scrim{position:absolute;inset:0;background:rgba(24,22,18,.62);backdrop-filter:blur(3px)}

.tkpop-modal{
  position:relative;z-index:1;
  width:min(500px,100%);max-height:94vh;overflow:hidden auto;
  background:linear-gradient(178deg,#FBFAF7 0%,#F1EFE9 100%);
  border:1px solid var(--line,#E8E6E0);
  border-radius:26px;
  box-shadow:0 40px 90px -30px rgba(24,22,18,.6);
  padding:30px 28px 32px;
  text-align:center;
  transform:translateY(18px) scale(.98);
  transition:transform .4s cubic-bezier(.2,.8,.25,1)
}
.tkpop.is-open .tkpop-modal{transform:none}

.tkpop-x{
  position:absolute;top:12px;right:12px;z-index:3;
  width:34px;height:34px;border:0;border-radius:50%;
  background:rgba(46,44,39,.06);color:var(--ink,#2E2C27);
  display:grid;place-items:center;cursor:pointer;
  transition:background .2s ease
}
.tkpop-x:hover{background:rgba(46,44,39,.14)}

.tkpop-kanji{
  position:absolute;right:-14px;top:-26px;z-index:0;pointer-events:none;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;
  font-size:9rem;line-height:1;color:rgba(95,114,83,.06)
}

.tkpop-stage{position:relative;z-index:1}

.tkpop-eyebrow{
  display:inline-flex;align-items:center;gap:7px;
  font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--sage-deep,#46553B);margin-bottom:10px
}
.tkpop-eyebrow--win{color:var(--tkpop-accent)}
.tkpop-spark{color:var(--tkpop-accent)}

.tkpop-h{
  font-family:'Shippori Mincho','Fraunces',serif;font-weight:600;
  font-size:clamp(1.35rem,4.6vw,1.7rem);line-height:1.18;
  color:var(--ink,#2E2C27);margin:0 0 8px
}
.tkpop-h em{font-style:italic}
.tkpop-sub{
  font-size:.95rem;line-height:1.55;color:var(--slate,#6B665C);
  margin:0 auto 16px;max-width:34ch
}

/* ---- Game board ---- */
.tkpop-board{
  position:relative;width:100%;aspect-ratio:1 / 1;
  margin:4px auto 18px;border-radius:18px;overflow:hidden;
  background:
    radial-gradient(120% 80% at 50% -10%, rgba(217,164,65,.18), transparent 60%),
    linear-gradient(180deg,#2B3326 0%,#1E2419 100%);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.06), inset 0 -18px 40px rgba(0,0,0,.35);
  border:1px solid rgba(220,226,207,.14)
}
.tkpop-canvas{display:block;width:100%;height:100%}
.tkpop-board-hint{
  position:absolute;left:0;right:0;top:46%;transform:translateY(-50%);
  color:rgba(246,245,242,.82);font-size:.82rem;letter-spacing:.04em;
  padding:0 24px;pointer-events:none;transition:opacity .3s ease
}
.tkpop-board.is-playing .tkpop-board-hint{opacity:0}

/* ---- Play button ---- */
.tkpop-play{
  display:inline-flex;align-items:center;gap:9px;
  border:0;cursor:pointer;
  font-family:'DM Sans',sans-serif;font-weight:700;font-size:1rem;letter-spacing:.02em;
  color:#3A2A06;
  background:linear-gradient(180deg,var(--tkpop-coin),var(--tkpop-coin2));
  padding:14px 30px;border-radius:999px;
  box-shadow:0 10px 24px -8px rgba(169,118,31,.7), inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .16s ease,box-shadow .16s ease,opacity .2s ease
}
.tkpop-play:hover{transform:translateY(-2px);box-shadow:0 16px 30px -10px rgba(169,118,31,.8), inset 0 1px 0 rgba(255,255,255,.5)}
.tkpop-play:active{transform:translateY(0)}
.tkpop-play[disabled]{opacity:.45;cursor:default;transform:none;box-shadow:none}
.tkpop-play-coin{
  display:grid;place-items:center;width:24px;height:24px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #FFF3C4, var(--tkpop-coin2));
  color:#5A3D08;font-weight:800;font-size:.85rem;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)
}

/* ---- Win / email ---- */
.tkpop-prize{
  display:inline-block;margin:2px auto 16px;
  font-family:'Shippori Mincho','Fraunces',serif;font-weight:700;
  font-size:clamp(2rem,9vw,2.9rem);line-height:1;
  color:var(--tkpop-accent);
  text-shadow:0 2px 0 rgba(180,70,46,.12)
}

.tkpop-form{margin:6px auto 0;max-width:340px}
.tkpop-row{display:flex;gap:8px;background:#fff;border:1px solid var(--line,#E8E6E0);border-radius:999px;padding:5px;box-shadow:0 8px 20px -12px rgba(0,0,0,.3)}
.tkpop-input{flex:1;min-width:0;border:0;background:transparent;outline:none;padding:12px 16px;font-size:.95rem;color:var(--ink,#2E2C27);font-family:inherit}
.tkpop-input::placeholder{color:var(--slate,#6B665C);opacity:.65}
.tkpop-submit{
  border:0;cursor:pointer;white-space:nowrap;
  background:var(--sage,#5F7253);color:#fff;
  font-family:'DM Sans',sans-serif;font-weight:600;font-size:.9rem;
  padding:11px 20px;border-radius:999px;transition:background .2s ease
}
.tkpop-submit:hover{background:var(--tkpop-accent)}
.tkpop-submit[disabled]{opacity:.6;cursor:default}
.tkpop-err{margin:12px 0 0;font-size:.82rem;color:var(--tkpop-accent);background:rgba(180,70,46,.08);padding:8px 14px;border-radius:12px;display:inline-block}
.tkpop-fine{margin:16px auto 0;font-size:.72rem;letter-spacing:.03em;color:var(--slate,#6B665C);opacity:.85;max-width:36ch}

/* ---- Reveal ---- */
.tkpop-checkmark{
  display:grid;place-items:center;width:58px;height:58px;margin:0 auto 14px;border-radius:50%;
  background:var(--sage-wash,#E9EDDD);color:var(--sage-deep,#46553B)
}
.tkpop-code{
  display:flex;align-items:center;gap:12px;margin:8px auto 18px;
  background:repeating-linear-gradient(45deg,#FBFAF7,#FBFAF7 10px,#F3F1EB 10px,#F3F1EB 20px);
  border:2px dashed var(--tkpop-accent);border-radius:14px;
  padding:12px 16px;cursor:pointer;transition:transform .15s ease
}
.tkpop-code:hover{transform:scale(1.02)}
.tkpop-code-val{font-family:'DM Sans',monospace;font-weight:700;font-size:1.25rem;letter-spacing:.12em;color:var(--ink,#2E2C27)}
.tkpop-code-copy{
  font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;background:var(--tkpop-accent);padding:5px 10px;border-radius:999px
}
.tkpop-code.is-copied .tkpop-code-copy{background:var(--sage,#5F7253)}
.tkpop-shop{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--ink,#2E2C27);color:#fff;text-decoration:none;
  font-family:'DM Sans',sans-serif;font-weight:600;font-size:1rem;
  padding:14px 34px;border-radius:999px;transition:background .2s ease,transform .16s ease
}
.tkpop-shop:hover{background:var(--tkpop-accent);transform:translateY(-2px)}

/* Full-stage clipping layer: overflow:hidden stops the animating confetti
   from expanding the modal's scroll height (which caused the scrollbar to
   flicker every frame). */
.tkpop-burst{
  position:absolute;inset:0;
  overflow:hidden;pointer-events:none;z-index:2
}

.tkpop-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:480px){
  .tkpop{padding:14px}
  .tkpop-modal{padding:26px 20px 26px;border-radius:22px}
  .tkpop-row{flex-direction:column;background:transparent;border:0;box-shadow:none;padding:0;gap:8px}
  .tkpop-input{background:#fff;border:1px solid var(--line,#E8E6E0);border-radius:999px;padding:13px 18px}
  .tkpop-submit{width:100%;padding:13px}
  .tkpop-kanji{font-size:7rem}
}

@media(prefers-reduced-motion:reduce){
  .tkpop,.tkpop-modal{transition:none}
}
/* END_SECTION:tk-email-popup */
/* START_SECTION:tk-faq (INDEX:117) */
.tk-faq{background:var(--cream-deep)}
.tk-faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px}

.tk-faq-item{
  background:var(--paper);border-radius:18px;border:1px solid var(--line);
  overflow:hidden;transition:box-shadow .25s ease,border-color .25s ease
}
.tk-faq-item[open]{box-shadow:0 14px 36px rgba(20,30,40,.08);border-color:var(--sage-soft)}

.tk-faq-q{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:20px 24px;cursor:pointer;list-style:none;
  font-family:'Fraunces','Shippori Mincho',serif;font-weight:600;font-size:1.06rem;
  color:var(--ink);user-select:none
}
.tk-faq-q::-webkit-details-marker{display:none}
.tk-faq-q-txt{flex:1}
.tk-faq-icon{
  flex-shrink:0;width:32px;height:32px;border-radius:50%;
  background:var(--sage-wash);color:var(--sage-deep);
  display:grid;place-items:center;transition:transform .3s ease,background .2s ease
}
.tk-faq-item[open] .tk-faq-icon{transform:rotate(180deg);background:var(--sage-soft)}

.tk-faq-a{
  padding:0 24px 22px;color:var(--slate);font-size:.96rem;line-height:1.65;
  border-top:1px solid var(--line);padding-top:18px;margin-top:-2px
}
.tk-faq-a p{margin-bottom:10px}
.tk-faq-a p:last-child{margin-bottom:0}
.tk-faq-a a{color:var(--sage-deep);text-decoration:underline;text-underline-offset:3px}

.tk-faq-foot{text-align:center;margin-top:34px;color:var(--slate);font-size:.94rem}
.tk-faq-foot-link{color:var(--sage-deep);font-weight:600;margin-left:6px;text-decoration:underline;text-underline-offset:3px}

@media(max-width:640px){
  .tk-faq-q{padding:18px 20px;font-size:1rem}
  .tk-faq-a{padding-left:20px;padding-right:20px}
}
/* END_SECTION:tk-faq */
/* START_SECTION:tk-footer (INDEX:118) */
.tk-foot{
  background:var(--ink);color:var(--cream);
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  position:relative;overflow:hidden
}
.tk-foot-wrap{
  max-width:1240px;margin:0 auto;padding:80px 22px 28px;
  position:relative;z-index:1
}

.tk-foot-bg-kanji{
  position:absolute;right:-40px;bottom:-80px;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;
  font-size:22rem;line-height:1;color:rgba(255,255,255,.04);
  pointer-events:none;letter-spacing:-.04em;z-index:0
}

.tk-foot-top{
  display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(0,2fr);gap:60px;
  margin-bottom:54px;
  align-items:start
}
.tk-foot--has-right-logo .tk-foot-top{
  grid-template-columns:minmax(220px,1fr) minmax(0,1.6fr) minmax(180px,1fr)
}
.tk-foot-right{
  display:flex;align-items:center;justify-content:center;
  min-height:var(--foot-right-h,220px)
}
.tk-foot-right-img{
  display:block;width:auto;
  max-height:var(--foot-right-h,220px);
  max-width:100%;
  opacity:.92;
  filter:brightness(0) invert(1)
}

.tk-foot-brand .tk-foot-logo{display:block;height:44px;width:auto;max-width:220px;margin-bottom:18px;filter:brightness(0) invert(1)}
.tk-foot-wordmark{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.tk-foot-wm-en{font-family:'Fraunces','Shippori Mincho',serif;font-weight:600;font-size:1.86rem;color:var(--cream);letter-spacing:.02em}
.tk-foot-wm-jp{font-family:'Shippori Mincho','Zen Old Mincho',serif;font-size:1rem;letter-spacing:.22em;color:var(--sage-soft);opacity:.85}

.tk-foot-tag{font-size:.96rem;line-height:1.6;color:rgba(255,255,255,.7);max-width:36ch;margin-bottom:24px}

.tk-foot-seal{
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;
  width:84px;height:84px;border-radius:50%;
  background:var(--seal);color:#FCEFD9;
  transform:rotate(-6deg);text-align:center;line-height:1.05;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;
  box-shadow:0 8px 22px rgba(180,70,46,.32)
}
.tk-foot-seal-jp{font-size:1.3rem;letter-spacing:.04em}
.tk-foot-seal-en{font-size:.52rem;letter-spacing:.22em;text-transform:uppercase;margin-top:4px;opacity:.92}

.tk-foot-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:36px}
.tk-foot-col h4{
  font-family:'Fraunces','Shippori Mincho',serif;font-weight:600;font-size:.94rem;
  letter-spacing:.06em;color:var(--cream);margin:0 0 18px;text-transform:none
}
.tk-foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.tk-foot-col a{color:rgba(255,255,255,.68);text-decoration:none;font-size:.92rem;transition:color .2s ease}
.tk-foot-col a:hover{color:var(--cream)}

.tk-foot-text{color:rgba(255,255,255,.68);font-size:.92rem;line-height:1.6}
.tk-foot-text p{margin-bottom:8px}
.tk-foot-text p:last-child{margin-bottom:0}

.tk-foot-addr{color:rgba(255,255,255,.68);font-size:.92rem;line-height:1.55}

.tk-foot-divider{height:1px;background:rgba(255,255,255,.1);margin-bottom:24px}

.tk-foot-bottom{
  display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap
}
.tk-foot-legal{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:.78rem;color:rgba(255,255,255,.56)}
.tk-foot-copy{}
.tk-foot-policy{display:inline-flex;gap:14px;flex-wrap:wrap}
.tk-foot-policy a{color:rgba(255,255,255,.56);text-decoration:none;transition:color .2s ease}
.tk-foot-policy a:hover{color:var(--cream)}

.tk-foot-social{display:flex;gap:6px}
.tk-foot-social a{
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.06);color:var(--cream);
  display:grid;place-items:center;transition:background .2s ease
}
.tk-foot-social a:hover{background:var(--sage-deep)}

@media(max-width:900px){
  .tk-foot-wrap{padding:60px 20px 24px}
  .tk-foot-top{grid-template-columns:1fr;gap:42px;margin-bottom:38px}
  .tk-foot--has-right-logo .tk-foot-top{grid-template-columns:1fr}
  .tk-foot-cols{grid-template-columns:1fr 1fr;gap:30px}
  .tk-foot-right{min-height:auto;margin-top:8px}
  .tk-foot-right-img{max-height:140px}
  .tk-foot-wm-en{font-size:1.6rem}
  .tk-foot-bg-kanji{font-size:16rem;right:-50px;bottom:-60px}
  .tk-foot-bottom{flex-direction:column;align-items:flex-start;gap:14px}
}
@media(max-width:600px){
  .tk-foot-wrap{padding:48px 20px 22px}
  .tk-foot-bg-kanji{display:none}
  .tk-foot-cols{grid-template-columns:1fr 1fr;gap:28px 18px}
  .tk-foot-col h4{margin-bottom:12px}
}
/* END_SECTION:tk-footer */
/* START_SECTION:tk-header (INDEX:119) */
.tk-hdr{
  position:sticky;top:0;z-index:55;
  background:var(--paper);
  border-bottom:1px solid var(--line);
  font-family:'DM Sans','Inter',system-ui,sans-serif
}
.tk-hdr-wrap{
  max-width:1240px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;
  padding:10px 22px
}

.tk-hdr-burger{display:none}

.tk-hdr-logo{
  display:inline-flex;align-items:center;gap:12px;
  text-decoration:none;color:inherit;
  justify-self:start;
  min-width:0
}
.tk-hdr-logo-img{
  display:block;
  height:clamp(40px, 5vw, 52px);
  width:auto;max-width:140px;
  flex-shrink:0
}
/* When the logo image is present, tighten the wordmark a touch so the row fits */
.tk-hdr-logo--with-img .tk-hdr-wordmark{gap:8px}
.tk-hdr-wordmark{display:inline-flex;align-items:baseline;gap:10px}
.tk-hdr-wm-en{font-family:'Fraunces','Shippori Mincho',serif;font-weight:600;font-size:1.4rem;letter-spacing:.02em;color:var(--hdr-en-color, var(--ink))}
.tk-hdr-wm-jp{font-family:'Shippori Mincho','Zen Old Mincho',serif;font-size:.92rem;letter-spacing:.18em;color:var(--hdr-jp-color, var(--seal));opacity:.95}

.tk-hdr-nav{justify-self:center}
.tk-hdr-nav ul{list-style:none;padding:0;margin:0;display:flex;gap:36px}
.tk-hdr-nav a{
  color:var(--ink);text-decoration:none;font-size:.92rem;font-weight:500;letter-spacing:.04em;
  text-transform:uppercase;position:relative;padding:4px 0
}
.tk-hdr-nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;
  background:var(--sage-deep);transform:scaleX(0);transform-origin:left;
  transition:transform .25s ease
}
/* Underline only on hover / keyboard focus — never persistent */
.tk-hdr-nav a:hover::after,.tk-hdr-nav a:focus-visible::after{transform:scaleX(1)}

.tk-hdr-icons{display:flex;align-items:center;gap:18px;justify-self:end}
.tk-hdr-ic{
  position:relative;color:var(--ink);
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  transition:background .2s ease,color .2s ease
}
.tk-hdr-ic:hover{background:var(--sage-wash);color:var(--sage-deep)}

.tk-hdr-cart-count{
  position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;
  padding:0 5px;border-radius:999px;
  background:var(--seal);color:#FCEFD9;
  font-size:.66rem;font-weight:700;line-height:18px;text-align:center;
  font-family:'DM Sans',sans-serif
}
.tk-hdr-cart-count.is-empty{display:none}

/* Mobile drawer */
.tk-drawer{position:fixed;inset:0;z-index:80;visibility:hidden;pointer-events:none}
.tk-drawer.is-open{visibility:visible;pointer-events:auto}
.tk-drawer-scrim{position:absolute;inset:0;background:rgba(20,30,40,.5);opacity:0;transition:opacity .3s ease}
.tk-drawer.is-open .tk-drawer-scrim{opacity:1}
.tk-drawer-panel{
  position:absolute;top:0;bottom:0;left:0;width:min(86vw,360px);
  background:var(--paper);padding:22px 26px;
  transform:translateX(-100%);transition:transform .35s cubic-bezier(.2,.7,.2,1);
  display:flex;flex-direction:column;overflow-y:auto
}
.tk-drawer.is-open .tk-drawer-panel{transform:translateX(0)}
.tk-drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}
.tk-drawer-close{
  background:transparent;border:0;color:var(--ink);cursor:pointer;
  width:36px;height:36px;border-radius:50%;display:grid;place-items:center
}
.tk-drawer-close:hover{background:var(--sage-wash)}
.tk-drawer-nav ul{list-style:none;padding:0;margin:0}
.tk-drawer-nav li{border-bottom:1px solid var(--line)}
.tk-drawer-nav a{
  display:block;padding:18px 0;color:var(--ink);text-decoration:none;
  font-family:'Fraunces','Shippori Mincho',serif;font-size:1.4rem;font-weight:500
}
.tk-drawer-foot{
  margin-top:36px;display:flex;flex-direction:column;gap:14px;
  padding-top:24px;border-top:1px solid var(--line)
}
.tk-drawer-foot a{color:var(--slate);text-decoration:none;font-size:.92rem;letter-spacing:.06em}
.tk-drawer-foot a:hover{color:var(--sage-deep)}
.tk-drawer-jp{
  position:absolute;right:18px;bottom:18px;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;font-size:5.4rem;line-height:1;
  color:rgba(95,114,83,.08);writing-mode:vertical-rl;letter-spacing:.06em
}

@media(max-width:900px){
  .tk-hdr-wrap{grid-template-columns:auto 1fr auto;gap:12px;padding:14px 18px}
  .tk-hdr-burger{
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:36px;height:36px;border:0;background:transparent;cursor:pointer;padding:0
  }
  .tk-hdr-burger span{display:block;height:2px;width:20px;background:var(--ink);border-radius:1px}
  .tk-hdr-logo{justify-self:center}
  .tk-hdr-nav{display:none}
  .tk-hdr-icons{gap:8px}
  .tk-hdr-ic--acct{display:none}
  .tk-hdr-wm-en{font-size:1.2rem}
  .tk-hdr-wm-jp{display:none}
}
/* END_SECTION:tk-header */
/* START_SECTION:tk-hero (INDEX:120) */
.tk-hero{position:relative;overflow:hidden;padding:54px 0 86px;text-align:center}
.tk-hero-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 20% 30%, rgba(220,226,207,.6), transparent 60%),radial-gradient(circle at 80% 60%, rgba(231,225,206,.5), transparent 60%),var(--cream)}
.tk-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,#F7F8F9 0%,rgba(247,248,249,.72) 30%,rgba(247,248,249,.30) 58%,rgba(247,248,249,.06) 100%)}

/* When a hero background image is uploaded, hide the gradient and show the image */
.tk-hero--has-bg .tk-hero-bg{background:transparent}
.tk-hero--has-bg .tk-hero-bg::after{display:none}
.tk-hero-bg-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:var(--hero-bg-pos, center center);
  display:block;z-index:0
}
.tk-hero-bg-scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:rgba(246,245,242, var(--hero-bg-overlay, .6))
}
.tk-hero--has-bg .tk-hero-inner{position:relative;z-index:3}

@media(max-width:860px){
  .tk-hero--has-bg .tk-hero-bg-img{object-position:var(--hero-bg-pos-m, center center)}
}

.tk-hero-inner{position:relative;z-index:2}
.tk-hero h1{font-size:clamp(2.5rem,5.6vw,4.4rem);font-weight:500;letter-spacing:-.01em;max-width:15ch;margin:22px auto 0}
.tk-hero .tk-lede{font-size:1.12rem;color:var(--slate);max-width:42ch;margin:20px auto 28px}

/* Split layout */
.tk-hero-split{display:grid;grid-template-columns:0.9fr 1.1fr;gap:42px;align-items:center;text-align:left}
.tk-hero-copy{position:relative}
.tk-hero-copy .tk-pill--white{margin-bottom:20px}
.tk-hero-copy h1,
.tk-hero-copy .tk-lede{margin-left:0;margin-right:0}
.tk-hero-copy .tk-lede{max-width:520px}
.tk-hero-cta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:24px}
.tk-hero-copy .tk-trust{margin-top:20px;justify-content:flex-start}

/* Conversion CTA — one dominant terracotta pill + microcopy + trust ticks */
.tk-hero-buy{
  display:inline-flex;align-items:center;justify-content:center;text-align:center;
  background:#B14A2E;color:#fff;
  font-family:'DM Sans','Inter',system-ui,sans-serif;font-weight:700;
  font-size:1.02rem;letter-spacing:.01em;line-height:1.25;
  padding:16px 30px;border-radius:999px;text-decoration:none;
  box-shadow:0 6px 18px rgba(177,74,46,.28);
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease
}
.tk-hero-buy:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(177,74,46,.36);background:#9E3F26}
.tk-hero-micro{
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  font-size:14px;line-height:1.5;color:#7C8166;letter-spacing:.01em;margin:12px 0 0
}
.tk-hero-ticks{
  list-style:none;padding:0;margin:14px 0 0;
  display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center
}
.tk-hero-ticks li{
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  font-family:'DM Sans','Inter',system-ui,sans-serif;
  font-size:13px;font-weight:500;color:#2E2A24
}
.tk-hero-ticks .tk-tick{color:#5C6142;font-weight:800;line-height:1}

/* Before/after card */
.tk-hero-visual{position:relative}
.tk-ba-card{margin:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:6px solid #fff;background:#fff}
.tk-ba-card img{display:block;width:100%;height:auto}

/* Review chip under hero card */
.tk-hero-visual .tk-hero-review{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:13px 16px;margin-top:18px}
.tk-hero-review .tk-av{width:40px;height:40px;border-radius:50%;background:var(--sage);color:#fff;display:grid;place-items:center;font-family:"Shippori Mincho",Fraunces,serif;font-weight:600;flex:0 0 auto}
.tk-hero-review .tk-hr-body .tk-stars{color:var(--gold);font-size:.82rem;letter-spacing:1.5px}
.tk-hero-review .tk-hr-body p{font-size:.86rem;line-height:1.4;margin:3px 0;color:var(--ink)}
.tk-hero-review .tk-hr-body span{font-size:.76rem;color:var(--slate)}

/* JP decorations */
.tk-jp-seal{
  position:absolute;z-index:3;top:-4px;right:4px;
  width:64px;height:64px;border:2px solid var(--seal);border-radius:13px;
  color:var(--seal);background:rgba(255,255,255,.5);
  writing-mode:vertical-rl;text-orientation:upright;
  font-family:"Shippori Mincho","Zen Old Mincho",serif;font-weight:600;
  font-size:.96rem;letter-spacing:.14em;line-height:1;
  display:flex;align-items:center;justify-content:center;
  padding:7px 0;text-align:center
}
.tk-jp-vtext{
  position:absolute;z-index:1;left:10px;top:50%;transform:translateY(-50%);
  writing-mode:vertical-rl;font-family:"Shippori Mincho",serif;letter-spacing:.34em;
  color:var(--sage-deep);opacity:.15;font-size:1.05rem
}

@media(max-width:1024px){.tk-jp-vtext{display:none}}
@media(max-width:860px){
  .tk-hero{padding:24px 0 60px}
  .tk-hero-split{grid-template-columns:1fr;text-align:center;gap:28px}
  .tk-hero-copy .tk-pill--white{margin-bottom:10px}
  .tk-hero h1{margin-top:10px}
  .tk-hero-copy .tk-lede{max-width:none}
  .tk-hero-cta{flex-direction:column;align-items:center;gap:12px}
  .tk-hero-buy{width:100%}
  .tk-hero-micro{text-align:center}
  .tk-hero-ticks{justify-content:center}
  .tk-hero-copy .tk-trust{justify-content:center}
  .tk-hero-visual{margin-top:6px}

  /* Mobile seal — reposition so it doesn't overlap the centered pill */
  .tk-jp-seal{width:48px;height:48px;font-size:.82rem;padding:5px 0;letter-spacing:.1em;border-width:1.5px}
  .tk-jp-seal--m-top-left{top:-6px;right:auto;left:0}
  .tk-jp-seal--m-top-right{top:-6px;right:0;left:auto}
  .tk-jp-seal--m-above-pill,
  .tk-jp-seal--m-below-pill{
    position:relative;top:auto;right:auto;left:auto;
    display:inline-flex;margin:0 auto 18px
  }
  /* Inline beside the Shop Now button */
  .tk-jp-seal--m-next-to-cta{
    position:relative;top:auto;right:auto;left:auto;
    display:inline-flex;margin:0 auto;order:-1;
    width:50px;height:50px;font-size:.84rem;padding:6px 0;
    flex-shrink:0
  }
  .tk-jp-seal--m-hidden{display:none}
}
/* END_SECTION:tk-hero */
/* START_SECTION:tk-marquee (INDEX:122) */
#tk-marquee-section .tk-marquee-track{animation-duration:var(--tk-marquee-speed,34s)}
/* END_SECTION:tk-marquee */
/* START_SECTION:tk-press (INDEX:125) */
.tk-press{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.tk-press-k{text-align:center;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--slate);font-weight:600;margin:0 0 14px}

.tk-press-stage{
  position:relative;max-width:680px;margin:0 auto;padding:0 26px;
  min-height:40px
}
.tk-press-slide{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;gap:70px;
  opacity:0;visibility:hidden;
  transition:opacity .55s ease,visibility .55s ease
}
.tk-press-slide:first-child{position:relative}
.tk-press-slide.is-on{opacity:1;visibility:visible}

.tk-press-slot{flex:0 0 auto;display:flex;align-items:center;justify-content:center;min-width:100px}
.tk-press-lg{
  font-family:"Shippori Mincho",Fraunces,serif;font-weight:700;font-size:1.25rem;
  color:var(--char);opacity:.6;letter-spacing:.02em;white-space:nowrap
}
.tk-press-img{max-height:34px;width:auto;opacity:.7;filter:grayscale(100%);transition:opacity .2s,filter .2s}
.tk-press-slot:hover .tk-press-img{opacity:1;filter:grayscale(0)}
.tk-press-slot:hover .tk-press-lg{opacity:1}

.tk-press-note{text-align:center;font-size:.7rem;color:var(--slate);opacity:.7;margin-top:12px;font-style:italic}

@media(max-width:560px){
  .tk-press{padding:18px 0}
  .tk-press-stage{padding:0 18px;min-height:32px}
  .tk-press-slide{gap:36px}
  .tk-press-lg{font-size:1.04rem}
  .tk-press-img{max-height:28px}
}
/* END_SECTION:tk-press */
/* START_SECTION:tk-reasons (INDEX:127) */
.tk-reasons{background:var(--cream-deep)}
.tk-reasons .tk-rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1000px;margin:0 auto}
.tk-reasons .tk-rcard{text-align:center}
.tk-reasons .tk-ricon{color:var(--sage-deep);margin:0 auto 18px;height:60px;display:grid;place-items:center}
.tk-reasons .tk-rcard h3{font-size:1.42rem;margin-bottom:12px}
.tk-reasons .tk-rcard p{color:var(--slate)}

@media(max-width:900px){
  .tk-reasons .tk-rgrid{grid-template-columns:1fr;gap:46px}
}
/* END_SECTION:tk-reasons */
/* START_SECTION:tk-selfcare (INDEX:128) */
.tk-selfcare{background:var(--paper);position:relative}
.tk-selfcare::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 50% at 100% 0%,rgba(95,114,83,.07),transparent 60%);pointer-events:none}

.tk-care-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;
  max-width:1080px;margin:0 auto;position:relative
}

.tk-care-card{
  position:relative;background:var(--cream-deep);border-radius:24px;
  padding:38px 28px 28px;text-align:center;border:1px solid var(--line);
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease
}
.tk-care-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,30,40,.12)}

/* Image-mode card: image bleeds to top edge */
.tk-care-card--has-img{padding:0 0 28px;text-align:center}
.tk-care-card--has-img .tk-care-body{padding:24px 26px 0}

.tk-care-num{
  position:absolute;top:18px;right:22px;
  font-family:'Fraunces','Shippori Mincho',serif;font-style:italic;font-weight:600;
  font-size:1.5rem;color:var(--sage-deep);opacity:.55;letter-spacing:.02em
}
.tk-care-num--on-img{
  position:absolute;top:14px;left:16px;right:auto;z-index:2;
  background:rgba(255,255,255,.94);color:var(--sage-deep);
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;font-size:1.06rem;opacity:1;
  box-shadow:0 6px 16px rgba(0,0,0,.15)
}

.tk-care-icon{
  width:80px;height:80px;border-radius:50%;
  background:var(--sage-wash);color:var(--sage-deep);
  display:grid;place-items:center;margin:6px auto 18px
}

.tk-care-media{
  position:relative;
  width:100%;aspect-ratio:var(--care-img-aspect,4/5);
  overflow:hidden;background:var(--sage-wash);
  display:block
}
.tk-care-media img{
  position:absolute;inset:0;
  width:100%;height:100%;object-fit:cover;display:block
}

.tk-care-title{font-size:1.32rem;margin-bottom:6px;color:var(--ink)}
.tk-care-jp{
  display:inline-block;margin-bottom:12px;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;
  font-size:.86rem;letter-spacing:.18em;color:var(--sage-deep);opacity:.78
}
.tk-care-text{color:var(--slate);font-size:.96rem;line-height:1.6}

.tk-care-tip{
  margin-top:20px;display:inline-flex;align-items:center;gap:6px;
  font-size:.74rem;letter-spacing:.06em;font-weight:600;color:var(--sage-deep);
  background:var(--paper);border:1px solid var(--sage-soft);
  padding:6px 12px;border-radius:999px
}

.tk-care-foot{
  text-align:center;margin-top:40px;
  font-family:'Fraunces','Shippori Mincho',serif;font-style:italic;
  color:var(--slate);font-size:1.04rem;max-width:48rem;margin-left:auto;margin-right:auto
}

@media(max-width:900px){
  .tk-care-grid{grid-template-columns:1fr;gap:18px;max-width:480px}
}
/* END_SECTION:tk-selfcare */
/* START_SECTION:tk-story (INDEX:129) */
.tk-story{background:var(--paper);position:relative;overflow:hidden}
.tk-story::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 8% 12%,rgba(95,114,83,.08),transparent 60%);pointer-events:none;z-index:1}

/* Full-bleed background image mode */
.tk-story--has-bg{min-height:560px;padding:120px 0}
.tk-story--has-bg.tk-story--full-bleed{background:var(--ink)}
.tk-story--has-bg.tk-story--contained{background:var(--cream-deep)}
.tk-story--has-bg::before{display:none}
.tk-story-bg{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:var(--bg-pos, center center);
  display:block;z-index:0;
  image-rendering:auto
}

/* Contained: bg sits inside a margined frame with rounded corners */
.tk-story--contained .tk-story-bg,
.tk-story--contained .tk-story-scrim{
  top:var(--bg-margin,36px);
  left:var(--bg-margin,36px);
  right:auto;bottom:auto;
  width:calc(100% - (var(--bg-margin,36px) * 2));
  height:calc(100% - (var(--bg-margin,36px) * 2));
  border-radius:var(--bg-radius,32px)
}
.tk-story-scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(246,245,242,calc(var(--bg-overlay, .55) + .25)) 0%,
      rgba(246,245,242,var(--bg-overlay, .55)) 36%,
      rgba(246,245,242,calc(var(--bg-overlay, .55) - .15)) 100%)
}
.tk-story--has-bg .tk-wrap{position:relative;z-index:2}

/* In bg mode, drop the side card entirely — text sits directly on the scrim */
.tk-story--has-bg .tk-story-grid{grid-template-columns:minmax(0,640px);justify-content:center;gap:0}
.tk-story--has-bg .tk-story-body{
  background:transparent;border:0;border-radius:0;box-shadow:none;
  padding:0 8px;
  text-shadow:0 1px 2px rgba(255,255,255,.35)
}
.tk-story--has-bg .tk-story-body h2,
.tk-story--has-bg .tk-story-body .tk-story-intro,
.tk-story--has-bg .tk-story-body .tk-story-copy,
.tk-story--has-bg .tk-story-body .tk-eyebrow{
  text-shadow:0 1px 2px rgba(255,255,255,.4)
}
.tk-story--has-bg .tk-story-intro{color:var(--ink);font-weight:500}
.tk-story--has-bg .tk-story-copy p{color:var(--ink);font-weight:500}
.tk-story--has-bg .tk-story-role{color:var(--ink);opacity:.85}

@media(max-width:900px){
  .tk-story--has-bg{padding:60px 18px;min-height:560px}
  .tk-story-bg{object-position:var(--bg-pos-m, center center)}
  .tk-story-scrim{
    background:
      linear-gradient(180deg,
        rgba(246,245,242,calc(var(--bg-overlay, .55) - .1)) 0%,
        rgba(246,245,242,var(--bg-overlay, .55)) 50%,
        rgba(246,245,242,calc(var(--bg-overlay, .55) + .15)) 100%)
  }
  .tk-story--has-bg .tk-story-body{padding:0 4px}
  /* On mobile, image takes the entire section — full-bleed regardless of desktop setting.
     IMPORTANT: must explicitly set width/height to 100% (not auto) so the <img> element
     fills the section instead of using its intrinsic aspect ratio. */
  .tk-story--has-bg .tk-story-bg,
  .tk-story--has-bg .tk-story-scrim{
    top:0;left:0;right:0;bottom:0;
    width:100%;height:100%;
    border-radius:0
  }
}

.tk-story .tk-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:60px;align-items:center;max-width:1100px;margin:0 auto;position:relative}

.tk-story-media{position:relative;border-radius:30px;overflow:hidden;background:linear-gradient(160deg,var(--sage-soft),var(--cream-deep));aspect-ratio:4/5;box-shadow:0 26px 70px rgba(20,30,40,.16)}
.tk-story-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tk-story-ph{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(160deg,var(--sage-soft),var(--cream-deep))}
.tk-story-kanji{font-family:'Shippori Mincho','Zen Old Mincho',serif;font-size:5.4rem;color:rgba(95,114,83,.32);letter-spacing:.08em}

.tk-story-stamp{
  position:absolute;top:22px;right:22px;width:96px;height:96px;border-radius:50%;
  background:var(--seal);color:#FCEFD9;display:grid;place-items:center;text-align:center;
  transform:rotate(-8deg);box-shadow:0 10px 24px rgba(180,70,46,.32);
  font-family:'Shippori Mincho','Zen Old Mincho',serif;line-height:1.05
}
.tk-story-stamp-jp{font-size:1.6rem;display:block;letter-spacing:.04em}
.tk-story-stamp-en{font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;display:block;margin-top:4px;opacity:.92}

.tk-story-vert{
  position:absolute;left:18px;top:22px;writing-mode:vertical-rl;text-orientation:mixed;
  font-family:'Shippori Mincho','Zen Old Mincho',serif;font-size:.84rem;letter-spacing:.34em;
  color:rgba(255,255,255,.78);text-shadow:0 1px 3px rgba(0,0,0,.18)
}

.tk-story-body h2{margin-bottom:18px}
.tk-story-intro{font-size:1.04rem;color:var(--ink);margin-bottom:22px}
.tk-story-quote{
  position:relative;margin:22px 0 26px;padding:18px 22px 18px 38px;
  background:var(--sage-wash);border-radius:18px;border-left:3px solid var(--sage);
  font-family:'Fraunces','Shippori Mincho',serif;font-style:italic;font-size:1.12rem;
  line-height:1.55;color:var(--ink)
}
.tk-story-quote-mark{position:absolute;left:10px;top:-6px;font-size:3rem;color:var(--sage-deep);font-family:'Fraunces',serif;line-height:1}
.tk-story-quote cite{display:block;margin-top:10px;font-style:normal;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--sage-deep);font-weight:600}

.tk-story-copy p{margin-bottom:14px;color:var(--slate)}
.tk-story-copy p:last-child{margin-bottom:0}

.tk-story-foot{display:flex;align-items:center;gap:14px;margin-top:24px;flex-wrap:wrap}
.tk-story-sig{max-height:48px;width:auto}
.tk-story-sig-text{font-family:'Fraunces',serif;font-style:italic;font-size:1.4rem;color:var(--ink)}
.tk-story-role{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--slate);opacity:.8}

.tk-story-cta{margin-top:24px;display:inline-flex}

@media(max-width:900px){
  .tk-story .tk-story-grid{grid-template-columns:1fr;gap:36px}
  .tk-story-media{aspect-ratio:1/1;max-width:480px;margin:0 auto}
  .tk-story-stamp{width:80px;height:80px}
  .tk-story-stamp-jp{font-size:1.3rem}
}
/* END_SECTION:tk-story */
/* START_SECTION:tk-tones (INDEX:130) */
.tk-tones{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

.tk-ba-2col{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:780px;margin:0 auto}
.tk-ba-2col .tk-ba-slider{box-shadow:0 12px 36px rgba(20,30,40,.14)}

.tk-ba-slider{
  position:relative;width:100%;aspect-ratio:1/1;border-radius:26px;overflow:hidden;
  user-select:none;-webkit-user-select:none;touch-action:none;cursor:ew-resize;
  background:var(--cream-deep);box-shadow:0 18px 50px rgba(20,30,40,.16);outline:none
}
.tk-ba-slider:focus-visible{box-shadow:0 0 0 3px var(--sage-soft),0 18px 50px rgba(20,30,40,.16)}
.tk-ba-slider img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-drag:none}
.tk-ba-slider .tk-ba-before{clip-path:inset(0 calc(100% - var(--tk-pos)) 0 0)}
.tk-ba-divider{position:absolute;top:0;bottom:0;left:var(--tk-pos);transform:translateX(-50%);width:2px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.10);pointer-events:none}
.tk-ba-handle{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:46px;height:46px;border-radius:50%;background:#fff;
  display:flex;align-items:center;justify-content:center;
  letter-spacing:1px;font-size:17px;font-weight:700;color:var(--sage-deep);
  box-shadow:0 3px 12px rgba(0,0,0,.22)
}
.tk-ba-tag{
  position:absolute;top:12px;font-size:.66rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:999px;
  color:#fff;background:rgba(20,28,38,.55);backdrop-filter:blur(3px);pointer-events:none
}
.tk-ba-tag-before{left:12px}
.tk-ba-tag-after{right:12px;background:var(--sage-deep)}
.tk-ba-hint{
  position:absolute;left:50%;bottom:12px;transform:translateX(-50%);
  font-size:.66rem;font-weight:600;letter-spacing:.04em;color:#fff;
  background:rgba(20,28,38,.5);backdrop-filter:blur(3px);padding:5px 12px;border-radius:999px;
  pointer-events:none;white-space:nowrap;transition:opacity .3s;
  animation:tkBaPulse 2.4s ease-in-out infinite
}
.tk-ba-slider.dragged .tk-ba-hint{opacity:0}
@keyframes tkBaPulse{0%,100%{transform:translateX(-50%)}50%{transform:translateX(calc(-50% + 4px))}}

.tk-tone-foot{text-align:center;margin-top:34px;display:flex;flex-wrap:wrap;gap:12px 26px;justify-content:center}
.tk-tone-foot .tk-pill--white{font-size:.86rem}
.tk-tone-note{text-align:center;font-size:.72rem;color:var(--slate);opacity:.7;margin-top:16px;font-style:italic;max-width:46rem;margin-left:auto;margin-right:auto}

@media(max-width:640px){
  .tk-ba-2col{grid-template-columns:1fr;gap:18px}
}
/* END_SECTION:tk-tones */
/* START_SECTION:tk-ugc (INDEX:131) */
/* Section background image (optional) */
.tk-ugc{position:relative;overflow:hidden}
.tk-ugc-bg-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:var(--ugc-bg-pos, center center);
  display:block;z-index:0
}
.tk-ugc-bg-scrim{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:rgba(238,237,233, var(--ugc-bg-overlay, .55))
}
.tk-ugc--has-bg .tk-wrap{position:relative;z-index:2}

.tk-ugc-grid{
  display:grid;
  grid-template-columns:repeat(var(--ugc-cols-d,4),1fr);
  gap:var(--ugc-gap,20px);
  max-width:var(--ugc-max,1180px);
  margin-left:auto;margin-right:auto
}
.tk-ugc-grid .tk-ugc{
  position:relative;aspect-ratio:var(--ugc-aspect,9/13);
  border-radius:26px;overflow:hidden;
  background:linear-gradient(165deg,var(--sage-soft),var(--cream-deep));
  box-shadow:0 12px 32px rgba(20,30,40,.10);
  transition:transform .25s ease,box-shadow .25s ease
}
.tk-ugc-grid .tk-ugc:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(20,30,40,.14)}
.tk-ugc-grid .tk-ugc:nth-child(2){background:linear-gradient(165deg,var(--sage-wash),#E7E1CE)}
.tk-ugc-grid .tk-ugc:nth-child(3){background:linear-gradient(165deg,#E7E1CE,var(--sage-soft))}
.tk-ugc-grid .tk-ugc:nth-child(4){background:linear-gradient(165deg,var(--sage-mid),var(--sage-soft))}
.tk-ugc-grid .tk-ugc:nth-child(5){background:linear-gradient(165deg,var(--sage-soft),var(--sage-mid))}
.tk-ugc-grid .tk-ugc:nth-child(6){background:linear-gradient(165deg,#E7E1CE,var(--sage-wash))}
.tk-ugc-grid .tk-ugc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tk-ugc-grid .tk-ugc-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:1;background:#000}
.tk-ugc-grid .tk-ugc.is-playing .tk-play{opacity:0;pointer-events:none}
.tk-ugc-grid .tk-ugc.is-playing .tk-tag{opacity:0}

/* Horizontal scroll when there are more than 4 tiles */
.tk-ugc-grid--scroll{
  display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-width:thin
}
.tk-ugc-grid--scroll .tk-ugc{flex:0 0 clamp(185px,46vw,250px);scroll-snap-align:start}

.tk-ugc-grid .tk-play{
  position:absolute;inset:0;margin:auto;
  width:68px;height:68px;border-radius:50%;
  background:rgba(255,255,255,.94);
  display:grid;place-items:center;
  box-shadow:var(--shadow-sm);z-index:2;
  transition:transform .2s ease
}
.tk-ugc-grid .tk-ugc:hover .tk-play{transform:scale(1.08)}
.tk-ugc-grid .tk-tag{
  position:absolute;left:14px;bottom:14px;
  background:rgba(255,255,255,.94);border-radius:999px;
  padding:7px 14px;font-size:.78rem;font-weight:600;
  color:var(--sage-deep);z-index:2;
  box-shadow:0 4px 12px rgba(0,0,0,.08)
}

@media(max-width:1100px){
  .tk-ugc-grid{grid-template-columns:repeat(var(--ugc-cols-t,2),1fr)}
}
@media(max-width:560px){
  .tk-ugc-grid{grid-template-columns:1fr 1fr;gap:12px}
  .tk-ugc-grid .tk-play{width:52px;height:52px}
  .tk-ugc--has-bg .tk-ugc-bg-img{object-position:var(--ugc-bg-pos-m, center center)}
}
/* END_SECTION:tk-ugc */
/* START_SNIPPET:product-media-gallery-content-styles (INDEX:465) */
media-gallery:where(.media-gallery--grid) .media-gallery__grid {
    display: none;
  }

  media-gallery.media-gallery--grid .media-gallery__grid .product-media-container {
    /* Needed for safari to stretch to full grid height */
    height: 100%;
  }

  @media screen and (min-width: 750px) {
    .media-gallery--two-column .media-gallery__grid {
      grid-template-columns: repeat(2, 1fr);
    }

    /* Display grid view as a carousel on mobile, grid on desktop */
    media-gallery:is(.media-gallery--grid) slideshow-component {
      display: none;
    }

    media-gallery:where(.media-gallery--grid) .media-gallery__grid {
      display: grid;
    }
  }

  .product-media-container__zoom-button {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: var(--layer-flat);
    cursor: zoom-in;
    background-color: transparent;

    &:hover {
      background-color: transparent;
    }
  }

  slideshow-slide.product-media-container--tallest {
    content-visibility: visible;
  }

  .product-media__drag-zoom-wrapper {
    aspect-ratio: inherit;
    min-height: inherit;
    min-width: inherit;
    display: inherit;
    flex: inherit;
  }

  .media-gallery__mobile-controls {
    grid-area: auto;
  }

  .product-media-container--zoomable.product-media-container--image {
    cursor: zoom-in;
  }
/* END_SNIPPET:product-media-gallery-content-styles */
/* START_SNIPPET:quick-add-modal-styles (INDEX:469) */
#quick-add-dialog {
    display: contents;
  }

  @media screen and (min-width: 750px) {
    .quick-add-modal {
      width: var(--quick-add-modal-width);
      height: var(--quick-add-modal-height);
      max-width: none;
    }
  }

  .quick-add-modal {
    padding: 0;
    border: var(--style-border-popover);
    overflow: hidden;
    box-shadow: 0 5px 30px rgb(0 0 0 / var(--opacity-15));

    @media screen and (max-width: 749px) {
      position: fixed;
      margin: auto 0 0 0;
      min-height: unset;
      max-width: 100%;
      border-radius: 0;
      overflow: clip;
      height: fit-content;
    }
  }

  .quick-add-modal[open] {
    @media screen and (max-width: 750px) {
      border-top-left-radius: var(--style-border-radius-popover);
      border-top-right-radius: var(--style-border-radius-popover);
    }
  }

  .quick-add-modal[open] {
    @media screen and (min-width: 750px) {
      display: flex;
    }
  }

  .quick-add-modal .view-more-details__wrapper {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .quick-add-modal[open] {
    animation: modalSlideInTop var(--animation-speed) var(--animation-easing) forwards;
  }

  .quick-add-modal.dialog-closing {
    animation: modalSlideOutTop var(--animation-speed) var(--animation-easing) forwards;
  }

  .quick-add-modal__close {
    position: absolute;
    top: var(--margin-2xs);
    right: var(--margin-2xs);
    transition: transform 0.15s var(--animation-timing-bounce);
    z-index: var(--layer-raised);
    overflow: visible;
    transform-origin: center;
  }

  .quick-add-modal__close:active {
    transform: scale(0.99) translateY(1px);
  }

  .quick-add-modal__close {
    &:focus-visible {
      outline: none;
    }

    &:focus-visible::after {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: calc(var(--style-border-radius-popover) - var(--margin-2xs));
      outline: var(--focus-outline-width) solid currentColor;
    }
  }

  .quick-add-modal__content {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: 100% 1fr;
    position: relative;
    overflow-y: auto;
    max-height: 100vh;
    flex-grow: 1;

    @media screen and (max-width: 749px) {
      grid-template-columns: repeat(4, 1fr);
      grid-template-rows: auto;
      padding-inline: var(--padding-xl);
      padding-block: var(--padding-xl);
      gap: var(--gap-lg);
      flex: 1;
      min-height: 0;
      overflow-y: auto;
      height: auto; /* Prevent a bug in Safari where height:fit-content is not respected */
      max-height: 100vh;
    }
  }

  .quick-add-modal__content .media-gallery--grid .media-gallery__grid {
    grid-template-columns: 1fr;
  }

  .quick-add-modal__content .media-gallery--grid.media-gallery--two-column .product-media-container:first-child {
    grid-column: auto;
  }

  .quick-add-modal__content {
    /* One column */
    .media-gallery--grid:not(.media-gallery--two-column) .product-media > *,
      /* Two column, small first image */
      .media-gallery--grid.media-gallery--two-column:not(.media-gallery--large-first-image)
      .product-media-container:nth-of-type(odd)
      .product-media > *,
      /* Two column, large first image */
      .media-gallery--grid.media-gallery--two-column.media-gallery--large-first-image
        .product-media-container:is(:first-of-type, :nth-of-type(even))
        .product-media > *,
        /* Carousel */
      .media-gallery--carousel slideshow-container {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
  }

  .quick-add-modal__content .view-more-details__wrapper {
    display: flex;
    justify-content: flex-start;
    width: 100%;
  }

  .view-more-details__wrapper .view-more-details {
    display: flex;
    align-items: center;
    width: fit-content;
  }

  .quick-add-modal__content .product-header {
    @media screen and (max-width: 749px) {
      display: flex;
      flex-direction: column;
      grid-column: 2 / -1;
      grid-row: 1;
      padding-right: var(--padding-2xl);
    }
  }

  .quick-add-modal__content .product-header a:not(product-price *) {
    @media screen and (max-width: 749px) {
      font-size: var(--font-size--md);
      font-weight: 500;
      color: inherit;
      width: fit-content;
    }
  }

  .quick-add-modal__content variant-picker,
  .quick-add-modal__content product-form-component {
    @media screen and (max-width: 749px) {
      grid-column: 1 / -1;
    }
  }

  .quick-add-modal__content .product-media-container__zoom-button {
    cursor: default;
  }

  .quick-add-modal__content .product-details {
    grid-column: 4 / -1;
    grid-row: 1 / span 2;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    height: 100%;
    min-height: 0;
    overflow-y: auto;
    position: relative;

    dialog[open] & {
      animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
      animation-delay: 0.1s;
    }

    @media screen and (max-width: 749px) {
      grid-column: 2 / span 2;
      grid-row: span 1;
      max-height: 100%;
      height: 100%;
    }
  }

  @property --quick-add-modal-mask-start {
    syntax: '<length>';
    initial-value: 0px;
    inherits: false;
  }

  @property --quick-add-modal-mask-end {
    syntax: '<length>';
    initial-value: 0px;
    inherits: true;
  }

  @keyframes detect-scroll {
    from,
    to {
      --can-scroll: ;
    }
  }

  @supports (animation-timeline: scroll(self)) {
    dialog[open] .quick-add-modal__content .product-details {
      mask-image: linear-gradient(to bottom, transparent 0%, #000 var(--quick-add-modal-mask-start), #000 100%);
      animation: 0.3s var(--animation-timing-fade-in) 0.1s both fadeSlideIn, scrollStart 1s linear both,
        scrollEnd 1s linear both, detect-scroll 1ms linear none;
      animation-timeline: auto, scroll(self), scroll(self), scroll(self);
      animation-range: normal, 0px 48px, calc(100% - 48px) 100%, 0% 100%;
    }
  }

  @keyframes scrollStart {
    from {
      --quick-add-modal-mask-start: 0px;
    }
    to {
      --quick-add-modal-mask-start: 48px;
    }
  }

  @keyframes scrollEnd {
    from {
      --quick-add-modal-mask-end: 0px;
    }
    to {
      --quick-add-modal-mask-end: 48px;
    }
  }

  .quick-add-modal__content .product-details > .group-block {
    flex-grow: 1;
    width: auto;
  }

  .quick-add-modal__content > * {
    min-height: 0;
  }

  .quick-add-modal__content .product-details :is(.view-product-title, .buy-buttons-block) {
    flex: 0 0 auto;
  }
  .quick-add-modal__content .product-details :is(.buy-buttons-block) {
    margin-top: auto;
    position: sticky;
    bottom: 0;
    padding-bottom: var(--padding-3xl);
    background-color: var(--color-background);
    z-index: var(--layer-raised);

    &::before {
      --quick-add-modal-mask-end-progressive-enhanced: 0px;

      position: absolute;
      content: '';
      display: block;
      inset: auto 0 100% 0;
      pointer-events: none;
      height: min(var(--gap-2xl), var(--gap));
      background-color: inherit;
      mask-image: linear-gradient(
        to top,
        #000 0%,
        #000 calc(var(--gap-2xs)),
        transparent calc(100% - var(--quick-add-modal-mask-end-progressive-enhanced)),
        transparent
      );
    }
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) {
    position: static;
    padding-bottom: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) > product-form-component {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form) form {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .quick-add-modal__content .product-details .buy-buttons-block:has(gift-card-recipient-form)::before {
    display: none;
  }

  .quick-add-modal__content .product-details .buy-buttons-block__bar {
    display: block;
    position: sticky;
    bottom: 0;
    margin-top: auto;
    padding-block: var(--gap-md) var(--padding-3xl);
    background-color: var(--color-background);
    z-index: var(--layer-raised);

    &::before {
      --quick-add-modal-mask-end-progressive-enhanced: 0px;

      position: absolute;
      content: '';
      display: block;
      inset: auto 0 100% 0;
      pointer-events: none;
      height: min(var(--gap-2xl), var(--gap));
      background-color: inherit;
      mask-image: linear-gradient(
        to top,
        #000 0%,
        #000 calc(var(--gap-2xs)),
        transparent calc(100% - var(--quick-add-modal-mask-end-progressive-enhanced)),
        transparent
      );
    }
  }

  @supports (animation-timeline: scroll(self)) {
    .quick-add-modal__content .product-details :is(.buy-buttons-block)::before,
    .quick-add-modal__content .product-details .buy-buttons-block__bar::before {
      --mask-if-scroll: var(--can-scroll) var(--quick-add-modal-mask-end);
      --mask-if-no-scroll: 48px;
      --quick-add-modal-mask-end-progressive-enhanced: var(--mask-if-scroll, var(--mask-if-no-scroll));
      height: calc(var(--gap-2xs) + 48px);
    }
  }

  .quick-add-modal__content .product-details .variant-picker {
    flex: 0 0 auto;

    padding-block: min(var(--gap-2xl), var(--gap));
    margin-block-end: calc(var(--focus-outline-offset) + var(--focus-outline-width));
  }

  .quick-add-modal__content .variant-option--swatches {
    padding-inline-start: var(--padding-2xs);
  }

  .quick-add-modal__content .variant-option--swatches legend {
    margin-inline-start: calc(-1 * var(--padding-2xs));
  }

  .quick-add-modal__content:not(:has(.product-information__media)) .product-details {
    grid-column: 1 / -1;
  }

  .quick-add-modal__content .view-product-title {
    display: flex;
    padding-block: 0;
    margin-block-end: 12px;

    /* Prevent overlap between title and close button */
    padding-inline-end: calc(var(--padding-2xl) + calc(var(--minimum-touch-target) / 2));
  }

  .quick-add-modal__content .view-product-title a {
    color: inherit;
    text-decoration: none;
    text-align: left;
    font-size: var(--font-size--2xl);
    font-weight: 600;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.2s var(--animation-easing);
  }

  .quick-add-modal__content .product-details product-price {
    --text-align: left;
  }

  .quick-add-modal__content .product-details product-price.text-block--align-center {
    margin-inline: 0;
  }

  .quick-add-modal__content .product-details product-price.text-center {
    --text-align: left;
  }

  .quick-add-modal__content .product-details product-price > * {
    text-align: left;
  }

  .quick-add-modal__content
    .product-details
    *:not(
      .group-block,
      .group-block-content,
      .buy-buttons-block,
      .buy-buttons-block *,
      .view-product-title,
      .view-product-title *,
      variant-picker,
      variant-picker *,
      product-price,
      product-price *,
      product-inventory,
      product-inventory *,
      .view-more-details__wrapper,
      .view-more-details__wrapper *
    ) {
    @media screen and (min-width: 750px) {
      /* stylelint-disable-next-line declaration-no-important */
      display: none !important;
    }
  }

  .quick-add-modal__content
    .group-block:not(
      :has(
          .buy-buttons-block,
          .buy-buttons-block *,
          .view-product-title,
          .view-product-title *,
          variant-picker,
          variant-picker *,
          product-price,
          product-price *,
          product-inventory,
          product-inventory *,
          .view-more-details__wrapper,
          .view-more-details__wrapper *
        ),
      .buy-buttons-block
    ) {
    display: none;
  }

  @media screen and (min-width: 750px) {
    .quick-add-modal__content .group-block-content {
      gap: 0;
    }

    .quick-add-modal__content .media-gallery__grid {
      gap: min(var(--gap-2xs), var(--image-gap));
      border-radius: var(--style-border-radius-popover, 0);
    }

    .quick-add-modal__content .media-gallery--grid .product-media img {
      border-radius: 0;
    }
  }

  .quick-add-modal__content .product-details > .group-block {
    padding-block: var(--padding-3xl) 0;
  }

  .quick-add-modal__content :where(.product-details > .group-block > .group-block-content > *) {
    padding-inline: var(--padding-3xl);
  }

  .quick-add-modal__content slideshow-slide:not([aria-hidden='false']) {
    content-visibility: auto;
  }

  .quick-add-modal__content .product-information__media {
    width: 100%;
    grid-column: 1 / span 1;
    grid-row: 1;
    position: relative;
    top: 0;
    animation: fadeIn 0.4s var(--animation-timing-fade-in) both;

    @media screen and (min-width: 750px) {
      position: sticky;
      grid-column: 1 / 4;
      width: var(--quick-add-modal-gallery-width);
      overflow-y: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }

    &::-webkit-scrollbar {
      display: none;
    }
  }

  .quick-add-modal__content .product-information__media media-gallery {
    pointer-events: none;

    @media screen and (min-width: 750px) {
      position: absolute;
      inset: 0;
    }
  }

  .quick-add-modal media-gallery {
    padding: 0;
  }

  .quick-add-modal__content .product-information__media slideshow-arrows {
    display: none;
  }

  .quick-add-modal__content .product-information__media slideshow-container {
    display: block;
  }

  .quick-add-modal__content .product-information__media slideshow-slides {
    display: flex;
    flex-direction: column;
    gap: var(--gap-2xs);
    overflow: visible;
    scroll-snap-type: none;
  }

  .quick-add-modal__content .product-information__media slideshow-slide {
    width: 100%;
    flex: none;
    scroll-snap-align: unset;
    position: relative;
    transform: none;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s var(--animation-easing);
  }

  .quick-add-modal__content .product-information__media slideshow-slide[aria-hidden='true'] {
    @media screen and (max-width: 749px) {
      display: none;
    }
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(1) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(2) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
    animation-delay: 0.05s;
  }

  .quick-add-modal__content .product-information__media slideshow-slide:nth-child(3) {
    animation: fadeSlideIn 0.3s var(--animation-timing-fade-in) both;
    animation-delay: 0.1s;
  }

  .quick-add-modal__content .product-information__media :is(slideshow-controls, slideshow-controls[thumbnails]) {
    display: none;
  }

  .quick-add-modal__content .sticky-content,
  .quick-add-modal__content .sticky-content--desktop {
    top: 0;
  }

  .quick-add-modal__content .text-block.rte:not(product-price),
  .quick-add-modal__content .view-more-details__wrapper {
    display: none;
  }

  @keyframes fadeSlideIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }

    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
/* END_SNIPPET:quick-add-modal-styles */
/* START_SNIPPET:resource-card (INDEX:473) */
.resource-card {
    --resource-card-secondary-image-opacity: 0;
    --resource-card-primary-image-opacity: calc(1 - var(--resource-card-secondary-image-opacity));

    display: flex;
    flex-direction: column;
    row-gap: var(--padding-xs);
    position: relative;
    text-decoration: none;
    height: 100%;
    opacity: 0;
    animation: fadeIn var(--animation-speed-medium) var(--animation-timing-fade-in) forwards;
  }

  .resource-card__link {
    position: absolute;
    inset: 0;
    z-index: 1;
  }

  .resource-card__content {
    display: flex;
    flex-direction: column;
    color: var(--color-foreground);
    gap: var(--padding-3xs);

    .price {
      font-weight: 500;
    }

    .volume-pricing-note {
      display: block;
      margin-top: var(--padding-3xs);
      font-family: var(--font-body--family);
      font-weight: normal;
      font-size: min(0.85em, var(--font-paragraph--size));
      line-height: normal;
      letter-spacing: normal;
      text-transform: none;
      color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
    }
  }

  .resource-card[data-resource-type='article'] .resource-card__content,
  .resource-card[data-resource-type='page'] .resource-card__content {
    gap: var(--padding-xs);
  }

  .resource-card__image {
    aspect-ratio: var(--resource-card-aspect-ratio, auto);
    object-fit: cover;
    border-radius: var(--resource-card-corner-radius);
    opacity: var(--resource-card-primary-image-opacity);
  }

  .resource-card__image--secondary {
    position: absolute;
    top: 0;
    opacity: var(--resource-card-secondary-image-opacity);
    border-radius: var(--resource-card-corner-radius);
  }

  .resource-card__media:empty {
    display: none;
  }

  .resource-card__image-placeholder {
    padding: var(--padding-sm);
    font-size: var(--font-size--lg);
    line-height: var(--line-height--display-loose);
    word-break: break-word;
    background-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
    aspect-ratio: var(--resource-card-aspect-ratio, auto);
    border-radius: var(--resource-card-corner-radius);
    color: var(--color-foreground);
  }

  .resource-card__title {
    margin-block: 0;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.3;
    word-break: break-word;
    overflow-wrap: break-word;
  }

  .resource-card__title.paragraph {
    line-height: 1.3;
  }

  .resource-card--overlay {
    height: 100%;

    &::before {
      content: '';
      position: absolute;
      inset: 50% 0 0;
      background: var(--gradient-image-overlay);
      border-radius: var(--resource-card-corner-radius);
      pointer-events: none;
      z-index: var(--layer-flat);
    }
  }

  .resource-card--overlay .resource-card__image {
    height: 100%;
  }

  .resource-card--overlay .resource-card__content {
    position: absolute;
    inset: auto 0 0;
    padding: var(--padding-lg) var(--padding-lg) var(--padding-sm);
    z-index: var(--layer-raised);
  }

  .resource-card--overlay .resource-card__title {
    color: var(--color-white);
  }

  /* Collection images */
  .resource-card__image-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gap-2xs);
  }

  .resource-card__collection-image {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: calc(var(--card-corner-radius) - (var(--padding-xs) / 2));
  }

  .resource-card__subtext {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
    margin-block-start: 0;
  }

  .resource-card__subtext.paragraph {
    font-size: var(--font-size--body-sm);
    line-height: var(--line-height--body-tight);
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .resource-card:has(.resource-card__image--secondary) {
    &:hover,
    &:focus {
      --resource-card-secondary-image-opacity: 1;
    }
  }
/* END_SNIPPET:resource-card */
/* START_SNIPPET:search-modal (INDEX:478) */
/* Search modal style */
  .search-modal {
    --search-border-radius: var(--style-border-radius-popover);
    --search-border-width: var(--style-border-width);
  }

  .search-modal__content {
    /* Approx set the top so when the content is at max height, the modal is centered */
    --modal-top-margin: calc(50dvh - var(--modal-max-height) / 2 - 2rem);
    --modal-width: 66dvw;

    padding: 0;
    border: var(--style-border-popover);

    @media screen and (min-width: 750px) {
      width: var(--modal-width);
      margin-block-start: var(--modal-top-margin);
      overflow: hidden;
    }
  }

  /* Hide the default dialog backdrop on small screens */
  @media screen and (max-width: 749px) {
    .search-modal__content::backdrop {
      display: none;
    }
  }

  .dialog-modal[open].search-modal__content {
    transform-origin: bottom center;
    animation: search-element-slide-in-bottom 300ms var(--ease-out-quad) forwards;
    border-radius: var(--search-border-radius);
    box-shadow: var(--shadow-popover);

    @media screen and (max-width: 749px) {
      border-radius: 0;
    }
  }

  .dialog-modal.search-modal__content.dialog-closing {
    animation: search-element-slide-out-bottom 200ms var(--ease-out-quad) forwards;
  }

  .search-modal__content[open] {
    display: flex;
  }

  .search-modal__content :is(.predictive-search-dropdown, .predictive-search-form__content-wrapper) {
    position: relative;
  }

  .dialog-modal
    .predictive-search-form__header:has(
      .predictive-search__reset-button:not(.predictive-search__reset-button[hidden])
    )::before {
    content: '';
    position: absolute;
    right: calc(var(--padding-sm) + var(--minimum-touch-target));
    top: 0;
    bottom: 0;
    width: var(--border-width-sm);
    background-color: var(--color-border);
  }

  .dialog-modal
    .predictive-search-form__header:has(.predictive-search__reset-button:not(.predictive-search__reset-button[hidden]))
    > .predictive-search__close-modal-button {
    &::before {
      content: none;
    }
  }

  @media screen and (min-width: 750px) {
    .dialog-modal
      .predictive-search-form__header:has(
        .predictive-search__reset-button:not(.predictive-search__reset-button[hidden])
      )::before {
      right: calc(var(--padding-2xl) * 2);
    }
  }

  predictive-search-component {
    --resource-card-corner-radius: var(--product-corner-radius);

    display: flex;
    width: 100%;
    position: relative;
    margin-inline: auto;
    align-items: center;
    background-color: var(--color-background);
    z-index: var(--layer-heightened);
  }

  .predictive-search-form__footer {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;

    @media screen and (min-width: 750px) {
      --to-top-gradient-background: linear-gradient(
        to top,
        rgb(var(--color-background-rgb) / var(--opacity-90)),
        rgb(var(--color-background-rgb) / var(--opacity-80)),
        rgb(var(--color-background-rgb) / var(--opacity-40)),
        transparent
      );

      padding-block: var(--padding-xs) var(--padding-lg);
      background-image: var(--to-top-gradient-background);
    }
  }

  predictive-search-component:has([data-search-results]):not(:has(.predictive-search-results__no-results))
    .predictive-search-form__footer {
    display: block;
  }

  .predictive-search-form {
    position: relative;
    width: 100%;
    align-self: flex-start;
  }

  .predictive-search-form__content {
    max-height: 50dvh;
    overflow-y: auto;
    background-color: var(--color-background);

    /* Firefox */
    scrollbar-width: none;

    /* Webkit browsers */
    &::-webkit-scrollbar {
      display: none;
    }
  }

  .predictive-search-form__content-wrapper {
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
    z-index: var(--layer-raised);
    display: flex;
    flex-direction: column;
    border-radius: 0 0 var(--search-border-radius) var(--search-border-radius);
    transition: box-shadow var(--animation-speed) var(--animation-easing);
    transform: translateZ(0);
    will-change: transform, opacity;
    overflow: hidden;

    @media screen and (max-width: 749px) {
      border-radius: 0;
    }

    @media screen and (min-width: 750px) {
      max-height: var(--modal-max-height);
    }
  }

  /* Add new rule to apply bottom padding only when search button exists */
  .predictive-search-form__content-wrapper:has([data-search-results]):not(:has(.predictive-search-results__no-results))
    > .predictive-search-form__content {
    padding-block-end: var(--padding-6xl);
  }

  .predictive-search-form__header-inner {
    background: var(--color-background);
    border: var(--search-border-width) solid var(--color-border);
    color: var(--color-foreground);
    border-radius: var(--style-border-radius-popover);
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;

    @media screen and (max-width: 749px) {
      border-radius: var(--style-border-radius-inputs);
      border: none;
    }
  }

  .predictive-search-form__header-inner:focus-within {
    outline-offset: var(--focus-outline-offset);

    @media screen and (min-width: 750px) {
      outline: var(--focus-outline-width) solid var(--color-primary);
    }
  }

  .predictive-search-form__header {
    display: flex;
    position: sticky;
    top: 0;
    z-index: var(--layer-heightened);
    width: 100%;
    align-items: center;
    background-color: var(--color-input-background);
    border: var(--search-border-width) solid var(--color-border);
    border-radius: var(--style-border-radius-inputs);

    @media screen and (max-width: 749px) {
      padding: var(--padding-2xs) var(--padding-sm);
    }
  }

  .predictive-search-form__header:focus-within,
  .predictive-search-form__header-inner:focus-within,
  .predictive-search-form__header-inner:has(.search-input:is(:focus, :focus-visible)) {
    outline: none;
    box-shadow: none;
    /* stylelint-disable-next-line declaration-no-important */
    border-color: var(--color-border) !important;
  }

  input.search-input {
    border-radius: var(--style-border-radius-inputs);
    padding-block: var(--padding-sm);
    font-size: var(--font-size--md);
    width: 100%;
    color: var(--color-foreground);
    padding-inline: calc(var(--margin-lg) + var(--icon-size-lg)) 0;
    background: transparent;
    text-overflow: ellipsis;
    overflow: hidden;
    outline: none;
    border: 0;
  }

  .search-input::placeholder {
    color: rgb(var(--color-foreground-rgb) / var(--opacity-subdued-text));
  }

  .search-input,
  .search-input:is(:focus, :focus-visible, :focus-within),
  .predictive-search-form__header *:is(:focus, :focus-visible) {
    outline: none;
    box-shadow: none;
  }

  .search-input:hover {
    background-color: transparent;
  }

  .predictive-search__icon {
    position: absolute;
    left: var(--margin-xl);
    top: auto;
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
    color: rgb(var(--color-foreground-rgb) / var(--opacity-60));

    @media screen and (min-width: 750px) {
      left: var(--margin-md);
    }
  }

  .predictive-search__icon > svg {
    width: var(--icon-size-md);
    height: var(--icon-size-md);
  }

  .predictive-search__reset-button {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: var(--minimum-touch-target);
    height: var(--minimum-touch-target);
    padding: 0;
    margin-inline-end: var(--margin-md);
    background: transparent;
    color: var(--color-foreground);
    opacity: 0.68;
    transition: opacity var(--animation-speed-medium) var(--animation-timing-fade-out),
      visibility var(--animation-speed-medium) var(--animation-timing-fade-out);

    &:hover {
      color: var(--color-foreground);
    }

    &:active {
      transform: scale(0.9);
      transition: transform 100ms var(--animation-timing-active);
    }

    @media screen and (min-width: 750px) {
      margin-inline-end: var(--margin-2xs);
    }
  }

  .predictive-search__reset-button[hidden] {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
  }

  .predictive-search__reset-button-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
    transition: background-color var(--animation-speed-medium) ease-in-out,
      transform var(--animation-speed-medium) var(--animation-timing-bounce);
    border-radius: 50%;

    &:hover {
      background-color: rgb(var(--color-primary-hover-rgb) / var(--opacity-8));
    }
  }

  .predictive-search__reset-button:active .predictive-search__reset-button-icon {
    transform: scale(0.85);
    transition-timing-function: var(--animation-timing-active);
    transition-duration: 100ms;
  }

  .predictive-search__reset-button svg {
    width: var(--icon-size-md);
    height: var(--icon-size-md);
  }

  .predictive-search__reset-button-text {
    display: none;
  }

  .predictive-search__search-button {
    margin: auto;
    z-index: var(--layer-raised);
    transition: transform var(--animation-speed-medium) var(--animation-timing-bounce),
      box-shadow var(--animation-speed-medium) var(--animation-timing-hover);
    transform-origin: center;

    &:hover {
      transform: translateY(-2px);
      box-shadow: 0 4px 8px rgb(0 0 0 / var(--opacity-5));
    }

    &:active {
      transform: scale(0.97);
      transition: transform 100ms var(--animation-timing-active);
      box-shadow: none;
    }
  }

  .predictive-search__close-modal-button {
    --button-color: var(--color-foreground);
    --button-background-color: transparent;

    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--minimum-touch-target);
    height: var(--minimum-touch-target);
    margin-inline-start: var(--margin-sm);
    padding: 0;
    box-shadow: none;

    &:active {
      transform: scale(0.8);
      transition: transform 100ms var(--animation-timing-active);
    }

    .svg-wrapper,
    svg {
      width: var(--icon-size-xs);
      height: var(--icon-size-xs);
    }
  }

  .predictive-search__close-modal-button:hover {
    --button-color: var(--color-foreground);
    --button-background-color: transparent;
  }
/* END_SNIPPET:search-modal */
/* START_SNIPPET:skip-to-content-link (INDEX:482) */
.skip-to-content-link {
    position: absolute;
    left: -99999px;
  }

  .skip-to-content-link:focus {
    z-index: var(--layer-temporary);
    overflow: auto;
    width: auto;
    height: auto;
    padding: var(--padding-lg) var(--padding-4xl);
    left: var(--margin-lg);
    top: var(--margin-lg);
    background-color: var(--color-background);
    box-shadow: 0 0 0 var(--focus-outline-offset) var(--color-background);
  }
/* END_SNIPPET:skip-to-content-link */
