:root{
  --ink:#060606;
  --paper:#ffffff;
  --soft:#f3f3f3;
  --warm:#f7f5f1;
  --line:#dedede;
  --muted:#666;
  --accent:#d8ff00;
  --shell:1540px;
  --sans:'Inter',sans-serif;
  --jp:'Noto Sans JP',sans-serif
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#090909;font-family:var(--sans);font-size:14px;line-height:1.55}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.site-shell{width:min(calc(100% - 64px),var(--shell));margin-inline:auto}
.section{padding:112px 0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eyebrow,.simple-heading p{margin:0 0 14px;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.simple-heading{text-align:center;margin-bottom:58px}
.simple-heading h2{margin:0;font-size:29px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}

/* Header */
.site-header{position:relative;z-index:60;background:#070707;color:#fff;border-bottom:1px solid rgba(255,255,255,.11)}
.site-header--overlay{position:absolute;top:0;left:0;right:0;background:transparent}
.site-header--overlay.is-scrolled{position:fixed;background:rgba(5,5,5,.95);backdrop-filter:blur(12px)}
.site-header__inner{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:42px}
.site-header__brand img,.site-header__brand .custom-logo{display:block;width:126px;max-height:50px;object-fit:contain}
.site-header__nav{justify-self:start}
.site-menu{display:flex;gap:34px;list-style:none;margin:0;padding:0}
.site-menu a,.site-header__actions a,.site-search-toggle{color:#fff;background:none;border:0;padding:0;font-size:10px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}
.site-menu a{position:relative}
.site-menu a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:#fff;transition:.25s}
.site-menu a:hover::after{width:100%}
.site-header__actions{display:flex;align-items:center;justify-self:end;gap:20px}
.site-search-toggle{font-size:22px;cursor:pointer}
.header-account{font-size:20px!important}
.site-header__cart-count{margin-left:5px}
.site-header__menu-toggle{display:none;background:none;border:0;color:#fff}
.site-header__menu-toggle span:not(.screen-reader-text){display:block;width:23px;height:1px;background:#fff;margin:6px}
.site-search{background:#fff;color:#111;padding:20px 0}
.site-search form{display:flex;gap:12px}
.site-search input[type=search]{flex:1;border:0;border-bottom:1px solid #111;padding:12px 0;font-size:24px}
.site-search input[type=submit]{border:0;background:#111;color:#fff;padding:0 22px}

/* Hero */
.home-hero{
  position:relative;
  min-height:920px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#030303 var(--hero-image) center/cover no-repeat;
  color:#fff
}
.home-hero__shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.78) 25%,rgba(0,0,0,.25) 55%,rgba(0,0,0,.12) 100%),
    linear-gradient(180deg,rgba(0,0,0,.3),transparent 55%,rgba(0,0,0,.45))
}
.home-hero__inner{position:relative;z-index:2}
.home-hero__copy{width:min(520px,44vw);padding-top:70px}
.home-hero__copy .eyebrow{margin-bottom:20px;color:#fff}
.home-hero__copy h1{
  margin:0;
  font-size:clamp(58px,6vw,94px);
  line-height:.95;
  font-weight:500;
  letter-spacing:.18em;
  text-transform:uppercase
}
.home-hero__jp{margin:13px 0 24px;color:#9b9b9b;font:500 15px/1 var(--jp);letter-spacing:.18em}
.home-hero__description{max-width:420px;margin:0;color:#d7d7d7;font-size:14px;line-height:1.75}
.home-hero__actions{margin-top:30px}
.hero-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:176px;
  min-height:50px;
  padding:0 24px;
  border:1px solid rgba(255,255,255,.62);
  color:#fff;
  font-size:9px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:.25s
}
.hero-button:hover{background:#fff;color:#050505}
.home-hero__scroll{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:#8f8f8f;font-size:8px;letter-spacing:.15em}
.home-hero__scroll i{display:block;width:46px;height:1px;background:#777}

/* Featured products */
.product-section{background:#fff}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:72px 40px;margin:0!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;text-align:center}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1.08;object-fit:contain;background:#fff;margin:0 0 18px!important;transition:.28s}
.woocommerce ul.products li.product:hover a img{transform:translateY(-4px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0!important;font-size:10px!important;font-weight:500;letter-spacing:.09em;text-transform:uppercase}
.woocommerce ul.products li.product .price{color:#666!important;font-size:10px!important}
.woocommerce ul.products li.product .button{display:none}
.woocommerce span.onsale{background:#050505!important;border-radius:999px!important;min-height:auto!important;line-height:1!important;padding:8px 11px!important;font-size:8px!important}

/* Category tiles */
.category-section{background:#f5f5f5;border-top:1px solid #ededed}
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.category-tile{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#ddd}
.category-tile img,.category-tile__placeholder{width:100%;height:100%;object-fit:cover;display:grid;place-items:center;transition:.4s}
.category-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.62))}
.category-tile>span:last-child{position:absolute;z-index:2;left:20px;bottom:18px;color:#fff;background:#050505;border-radius:999px;padding:9px 17px;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.category-tile:hover img{transform:scale(1.025)}
.category-tile__placeholder{color:#aaa;font-size:30px;font-weight:600}

/* Instagram replacement section */
.newsletter-banner{
  position:relative;
  min-height:430px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#050505 var(--newsletter-image) center/cover no-repeat;
  color:#fff
}
.newsletter-banner__overlay{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:grayscale(1)}
.newsletter-banner__inner{position:relative;text-align:center;max-width:700px}
.newsletter-banner__inner>p{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.newsletter-banner h2{margin:16px 0 11px;font-size:31px;font-weight:500;letter-spacing:.08em}
.newsletter-banner__inner>span{display:block;color:#c7c7c7;font-size:12px}
.newsletter-banner__form{margin-top:28px}
.newsletter-banner__form form{display:none!important}
.newsletter-banner__form::before{content:"FOLLOW @THETOKIYA";display:inline-flex;align-items:center;justify-content:center;min-width:190px;min-height:48px;border:1px solid rgba(255,255,255,.7);font-size:9px;font-weight:600;letter-spacing:.14em}

/* Collector feature */
.collector-feature{background:#fff}
.collector-feature__grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;max-width:1180px}
.collector-feature__media img{display:block;width:100%;height:520px;object-fit:contain}
.collector-feature__copy{max-width:480px}
.collector-feature__copy h2{margin:0 0 18px;font-size:35px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}
.collector-feature__copy>p:not(.eyebrow){margin:0 0 28px;color:#555}
.pill-button{display:inline-flex;align-items:center;justify-content:center;min-width:160px;min-height:46px;padding:0 22px;border-radius:999px;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.pill-button--dark{background:#050505;color:#fff}
.collector-products{margin-top:80px}

/* Blog */
.journal{background:#f1f1f1}
.journal__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;max-width:1050px;margin:auto}
.journal-card__image{display:block;aspect-ratio:1/1;overflow:hidden;background:#ddd}
.journal-card__image img{width:100%;height:100%;object-fit:cover;transition:.3s}
.journal-card:hover img{transform:scale(1.02)}
.journal-card h3{margin:16px 0 8px;font-size:14px;font-weight:500;letter-spacing:.07em;text-transform:uppercase}
.journal-card p{margin:0;color:#555;font-size:11px}
.journal-card__placeholder{display:grid;width:100%;height:100%;place-items:center}
.journal__action{text-align:center;margin-top:42px}

/* Who we are */
.who-section{
  position:relative;
  min-height:500px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#050505 var(--who-image) center/cover no-repeat;
  color:#fff;
  text-align:center
}
.who-section__overlay{position:absolute;inset:0;background:rgba(0,0,0,.83);backdrop-filter:grayscale(1)}
.who-section__inner{position:relative;max-width:730px}
.who-section__inner>p{font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.who-section h2{margin:16px 0;font-size:31px;font-weight:600;letter-spacing:.07em}
.who-section span{display:block;color:#d3d3d3;font-size:13px}
.who-section a{display:inline-block;margin-top:25px;border-bottom:1px solid #fff;padding-bottom:3px;font-size:9px;letter-spacing:.13em}

/* Trust and footer */
.trust-section{background:#fff}
.trust-section .simple-heading h2{font-size:25px}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:980px;margin:auto;border-top:1px solid #ddd}
.trust-grid>div{padding:30px 25px;text-align:center;border-bottom:1px solid #ddd}
.trust-grid strong{display:block;font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.trust-grid span{display:block;margin-top:8px;color:#666;font-size:11px}
.site-footer{background:#050505;color:#fff;padding:70px 0 25px}
.site-footer__top{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:60px}
.site-footer__logo{width:130px}
.site-footer h3{margin:0 0 18px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.site-footer p,.site-footer a{color:#aaa;font-size:11px}
.footer-menu{list-style:none;padding:0;margin:0}
.footer-menu li{margin:8px 0}
.site-footer__bottom{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid #252525;color:#666;font-size:9px}

@media(max-width:1000px){
  .site-header__menu-toggle{display:block}
  .site-header__inner{grid-template-columns:auto 1fr auto}
  .site-header__nav{display:none;position:absolute;top:82px;left:0;right:0;background:#050505;padding:20px 28px}
  .site-header__nav.is-open{display:block}
  .site-menu{display:block}
  .site-menu li{padding:12px 0;border-bottom:1px solid #222}
  .home-hero__copy{width:min(520px,56vw)}
  .category-grid{grid-template-columns:repeat(2,1fr)}
  .collector-feature__grid{grid-template-columns:1fr;gap:35px}
  .collector-feature__copy{max-width:none;text-align:center}
  .site-footer__top{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .site-shell{width:min(calc(100% - 28px),var(--shell))}
  .section{padding:74px 0}
  .home-hero{min-height:760px;background-position:62% center}
  .home-hero__shade{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.58))}
  .home-hero__copy{width:82%;padding-top:80px}
  .home-hero__copy h1{font-size:51px}
  .site-header__brand img,.site-header__brand .custom-logo{width:105px}
  .header-account{display:none}
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 14px}
  .category-grid{grid-template-columns:1fr}
  .collector-feature__media img{height:360px}
  .journal__cards{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:1fr}
  .site-footer__top{grid-template-columns:1fr}
  .site-footer__bottom{display:block}
}


/* v1.3 — lighter cinematic image sections */
.instagram-banner{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505 var(--instagram-image) center/cover no-repeat;
  color:#fff;
}
.instagram-banner__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.68) 0%,
    rgba(0,0,0,.36) 48%,
    rgba(0,0,0,.18) 100%
  );
}
.instagram-banner__inner{
  position:relative;
  z-index:2;
}
.instagram-banner__copy{
  max-width:520px;
}
.instagram-banner__copy>p{
  margin:0 0 15px;
  font-size:9px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.instagram-banner h2{
  margin:0 0 16px;
  font-size:36px;
  font-weight:500;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.instagram-banner__copy>span{
  display:block;
  max-width:470px;
  color:#dedede;
  font-size:13px;
}
.instagram-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:194px;
  min-height:49px;
  margin-top:28px;
  padding:0 24px;
  border:1px solid rgba(255,255,255,.72);
  color:#fff;
  font-size:9px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:.25s;
}
.instagram-button:hover{
  background:#fff;
  color:#050505;
}

.who-section{
  min-height:570px;
  justify-items:start;
  text-align:left;
}
.who-section__overlay{
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.72) 0%,
    rgba(0,0,0,.42) 48%,
    rgba(0,0,0,.16) 100%
  );
  backdrop-filter:none;
}
.who-section__inner{
  width:min(calc(100% - 64px),var(--shell));
  max-width:none;
}
.who-section__copy{
  max-width:560px;
}
.who-section__copy>p{
  margin:0 0 16px;
  font-size:9px;
  font-weight:600;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.who-section h2{
  margin:0 0 18px;
  font-size:38px;
  font-weight:600;
  letter-spacing:.07em;
}
.who-section span{
  max-width:520px;
  color:#e0e0e0;
  font-size:14px;
  line-height:1.7;
}
.who-section a{
  margin-top:28px;
}

/* v1.3 footer */
.site-footer{
  background:#050505;
  color:#fff;
  padding:78px 0 24px;
}
.site-footer__main{
  display:grid;
  grid-template-columns:1.35fr .9fr .9fr 1fr;
  gap:78px;
  min-height:250px;
}
.site-footer h3{
  margin:0 0 18px;
  color:#fff;
  font-size:9px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.site-footer p{
  margin:0;
  color:#b1b1b1;
  font-size:11px;
  line-height:1.75;
}
.site-footer__about p{
  max-width:315px;
}
.site-footer__social{
  display:flex;
  gap:18px;
  margin-top:42px;
}
.site-footer__social a{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  color:#bfbfbf;
  border:1px solid #303030;
  border-radius:50%;
  font-size:8px;
}
.footer-menu{
  list-style:none;
  margin:0;
  padding:0;
}
.footer-menu li{
  margin:0 0 10px;
}
.footer-menu a{
  color:#b8b8b8;
  font-size:11px;
}
.footer-menu a:hover{
  color:#fff;
}
.site-footer__follow p{
  max-width:270px;
}
.footer-follow-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:43px;
  margin-top:22px;
  padding:0 21px;
  border:1px solid #4a4a4a;
  border-radius:999px;
  color:#fff;
  font-size:8px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-follow-button:hover{
  background:#fff;
  color:#050505;
}
.site-footer__meta{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:25px;
  padding-top:28px;
  border-top:1px solid #222;
  color:#898989;
  font-size:8px;
  letter-spacing:.08em;
}
.site-footer__locale{
  display:flex;
  gap:25px;
}
.site-footer__copyright{
  text-align:center;
}
.site-footer__payments{
  display:flex;
  justify-content:flex-end;
  gap:7px;
}
.site-footer__payments span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:19px;
  padding:0 6px;
  border-radius:2px;
  background:#fff;
  color:#111;
  font-size:6px;
  font-weight:700;
}

@media(max-width:1000px){
  .site-footer__main{
    grid-template-columns:repeat(2,1fr);
    gap:55px;
  }
}
@media(max-width:680px){
  .instagram-banner{
    min-height:500px;
    background-position:62% center;
  }
  .instagram-banner__overlay,
  .who-section__overlay{
    background:rgba(0,0,0,.55);
  }
  .who-section{
    min-height:500px;
  }
  .who-section__inner{
    width:min(calc(100% - 28px),var(--shell));
  }
  .site-footer__main{
    grid-template-columns:1fr;
    gap:40px;
  }
  .site-footer__meta{
    grid-template-columns:1fr;
    text-align:left;
  }
  .site-footer__copyright{
    text-align:left;
  }
  .site-footer__payments{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}


/* v1.4 configurable product-section controls */
.simple-heading__description{
  display:block;
  max-width:560px;
  margin:16px auto 0;
  color:#666;
  font-size:12px;
  line-height:1.7;
}
.product-section__action{
  margin-top:54px;
  text-align:center;
}

.instagram-buttons{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:28px;
  flex-wrap:wrap;
}

.instagram-buttons .instagram-button{
  margin-top:0;
}

.instagram-button--ebay{
  background:#fff;
  border-color:#fff;
  color:#050505;
}

.instagram-button--ebay:hover{
  background:transparent;
  color:#fff;
}

@media(max-width:680px){
  .instagram-buttons{
    align-items:flex-start;
  }

  .instagram-buttons .instagram-button{
    width:100%;
    max-width:260px;
  }
}