/* Shared typography and language navigation for every storefront locale. */
/* Hide the visual rails without disabling page, dialog, or map scrolling. */
html,body,.sp-page .sp-archive,.image-dialog{scrollbar-width:none!important;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,.sp-page .sp-archive::-webkit-scrollbar,.image-dialog::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
html:lang(en) body,html:lang(ja) body,html:lang(ko) body,html:lang(ru) body{
  font-family:Inter,"Segoe UI","Noto Sans","Noto Sans CJK JP","Noto Sans CJK KR",Arial,sans-serif;
}
html:lang(en) .serif,html:lang(ja) .serif,html:lang(ko) .serif,html:lang(ru) .serif{
  font-family:inherit!important;font-style:normal!important;font-weight:400;
}
body{cursor:default}
a[href],button,summary,[role="button"]{cursor:pointer}
input,textarea,[contenteditable="true"]{cursor:text}
input[type="checkbox"],input[type="radio"],input[type="button"],input[type="submit"]{cursor:pointer}
img,canvas,svg image,.art,.product-picture,.sp-art,.unique-slide{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.language-nav{display:flex;align-items:center;gap:clamp(7px,.85vw,14px)!important;white-space:nowrap}
.language-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:20px;font:500 11px/1.4 system-ui,sans-serif;letter-spacing:.06em}
.language-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
.desktop-nav{min-width:0}
.desktop-nav a{white-space:nowrap}
[data-home-header="always"].site-header{z-index:1000}
@media (max-width:1080px){
  body:not(.sp-page):not(.header-reveal)>.site-header{position:sticky;top:0}
  .site-header .mobile-nav{z-index:1}
  .site-header .mobile-nav[open] nav{z-index:2}
}
[hidden]{display:none!important}
/* About and Contact share one centered grid and the storefront's restrained gold accent. */
.unique-about-page,.unique-contact-page{min-height:calc(100svh - var(--site-header-h,94px));display:grid;place-items:center;overflow:hidden}
.unique-about-stage,.unique-contact-stage{position:relative;isolation:isolate;width:100%;display:grid;place-items:center;padding:clamp(78px,10vh,120px) clamp(24px,6vw,80px)}
.unique-about-stage:before,.unique-contact-stage:before{content:"";position:absolute;z-index:-1;width:min(90vw,980px);height:min(75vw,650px);left:50%;top:45%;transform:translate(-50%,-50%);background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 8%,transparent),transparent 65%);filter:blur(34px);pointer-events:none}
.unique-about-content,.unique-contact-content{position:relative;width:min(100%,760px);text-align:center}
.unique-about-content:before,.unique-contact-content:before{content:"";position:absolute;z-index:-1;inset:-14% -12%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--bg) 84%,transparent) 0%,color-mix(in srgb,var(--bg) 62%,transparent) 46%,transparent 78%);filter:blur(18px);pointer-events:none}
.unique-page-kicker{margin:0 0 30px;color:var(--accent);font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.28em;text-transform:uppercase}
.unique-about-content h1,.unique-contact-content h1{margin:0;color:var(--fg);font-family:UniqueDisplay,Inter,"Segoe UI",Arial,sans-serif;font-weight:400;letter-spacing:-.045em;line-height:1.06;text-wrap:balance}
.unique-about-content h1{font-size:clamp(44px,7vw,88px)}
.unique-about-slogan{margin:24px auto 0;font-size:clamp(18px,1.8vw,24px);font-weight:300;line-height:1.42;letter-spacing:.01em;text-wrap:balance}
.unique-page-divider{display:block;width:56px;height:1px;margin:clamp(30px,4vw,42px) auto;background:var(--accent);opacity:.76}
.unique-about-text{width:min(100%,610px);margin:auto;color:color-mix(in srgb,var(--fg) 76%,transparent)}
html:lang(en) .unique-about-page .unique-about-text{width:min(100%,690px)}
.unique-about-text p{margin:0 auto 16px;font-size:clamp(15px,1.35vw,18px);line-height:1.9;text-wrap:pretty}
.unique-about-text p:last-child{margin-bottom:0}
.unique-contact-content h1{font-size:clamp(42px,6vw,78px)}
.unique-contact-intro{margin:20px auto 0;font-size:clamp(15px,1.4vw,18px);line-height:1.75;color:color-mix(in srgb,var(--fg) 73%,transparent);text-wrap:balance}
.unique-contact-channels{width:min(100%,650px);margin:clamp(38px,5vw,56px) auto 0;border-top:1px solid color-mix(in srgb,var(--fg) 23%,transparent)}
.unique-contact-row{width:100%;min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) 24px;align-items:center;column-gap:20px;padding:21px 8px;border-bottom:1px solid color-mix(in srgb,var(--fg) 23%,transparent);text-align:left;color:var(--fg);text-decoration:none;transition:background .35s ease,border-color .35s ease,transform .35s ease}
.unique-contact-row:hover,.unique-contact-row:focus-visible{background:color-mix(in srgb,var(--fg) 4%,transparent);border-color:var(--accent);transform:translateY(-2px)}
.unique-contact-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.unique-contact-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--fg) 24%,transparent);border-radius:50%;color:var(--accent)}
.unique-contact-icon svg{width:20px;height:20px}
.unique-contact-row-text{min-width:0;display:flex;flex-direction:column;gap:3px}
.unique-contact-label{font-size:10px;line-height:1.4;letter-spacing:.2em;color:var(--accent)}
.unique-contact-primary{font-size:clamp(15px,1.5vw,19px);line-height:1.4;overflow-wrap:anywhere}
.unique-contact-secondary{font-size:12px;line-height:1.5;letter-spacing:.06em;color:color-mix(in srgb,var(--fg) 63%,transparent)}
.unique-contact-arrow{width:19px;height:19px;color:color-mix(in srgb,var(--fg) 60%,transparent);transition:transform .35s ease,color .35s ease}
.unique-contact-row:hover .unique-contact-arrow{color:var(--accent);transform:translate(3px,-3px)}
.unique-partner-note{width:min(100%,650px);margin:clamp(38px,5vw,54px) auto 0;text-align:center}
.unique-partner-note h2{margin:0 0 12px;color:var(--fg);font-size:clamp(19px,2vw,25px);font-weight:400;letter-spacing:-.015em}
.unique-partner-note p{max-width:62ch;margin:0 auto;color:color-mix(in srgb,var(--fg) 68%,transparent);font-size:clamp(14px,1.2vw,16px);line-height:1.8;text-wrap:pretty}
@media (max-width:720px){
  .unique-about-stage,.unique-contact-stage{padding:100px 24px 76px}
  .unique-about-content h1{font-size:clamp(40px,12vw,70px)}
  .unique-contact-row{grid-template-columns:38px minmax(0,1fr) 20px;column-gap:14px;padding:17px 2px}
  .unique-contact-icon{width:38px;height:38px}
  .unique-contact-primary{font-size:15px}
}
@media (prefers-reduced-motion:reduce){.unique-contact-row,.unique-contact-arrow{transition:none}}
@media (min-width:851px){
  .unique-retail-page .product-detail{min-height:calc(100svh - var(--site-header-h,94px) - 54px)}
}
@media (min-width:721px) and (max-width:1080px){
  .site-header .desktop-nav{display:none}
  .site-header .mobile-nav{display:block;margin-left:0}
  .site-header .language-nav{margin-left:auto}
  .site-header .mobile-nav summary{display:flex;align-items:center;list-style:none;padding:10px;cursor:pointer}
  .site-header .mobile-nav summary::-webkit-details-marker{display:none}
  .site-header .mobile-nav summary svg{width:25px;height:25px}
  .site-header .mobile-nav nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;gap:4px;padding:18px 6%;background:var(--bg);border-bottom:1px solid color-mix(in srgb,var(--fg) 18%,transparent)}
  .site-header .mobile-nav nav a{display:block;padding:9px 0}
}
@media (max-width:720px){
  .site-header .brand-en{font-size:clamp(26px,8vw,33px)}
  .site-header .language-nav{gap:6px!important;margin-left:auto;margin-right:0}
  .site-header .language-nav a{font-size:10px;min-width:17px}
  .site-header .mobile-nav{margin-left:0}
}
