:root{--st-bg:#eeeeec;--st-text:#121212;--st-muted:#777;--st-orange:#ff5a00;--st-gap:clamp(8px,.75vw,14px)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body.st-home{background:var(--st-bg);color:var(--st-text);font-family:Arial,Helvetica,sans-serif;overflow:hidden}a{color:inherit;text-decoration:none}.st-shell{min-height:100svh;position:relative}.st-header{position:fixed;z-index:30;top:0;left:0;right:0;display:flex;justify-content:flex-end;padding:clamp(22px,2vw,34px) clamp(24px,3.2vw,62px);pointer-events:none}.st-nav{display:flex;gap:clamp(24px,3.2vw,62px);align-items:center;font-size:11px;letter-spacing:.06em;font-weight:600;pointer-events:auto}.st-nav a:hover{opacity:.5}.st-register{position:relative;padding-left:15px}.st-register:before{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--st-orange);left:0;top:50%;transform:translateY(-50%)}.st-menu-button{display:none}.st-indicators{position:fixed;z-index:20;left:clamp(24px,3.2vw,62px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:22px}.st-indicator{width:3px;height:28px;padding:0;border:0;background:rgba(18,18,18,.82);cursor:pointer;transition:.25s}.st-indicator:not(.is-active){opacity:.72}.st-indicator.is-active{background:var(--st-orange);transform:scaleY(1.12)}.st-gallery{position:fixed;inset:0;display:grid;place-items:center;pointer-events:none}.st-scene{position:absolute;width:min(72vw,1260px);height:min(58vh,650px);display:grid;gap:var(--st-gap);opacity:0;transform:translateY(18px) scale(.992);filter:blur(7px);transition:opacity .48s ease,transform .62s cubic-bezier(.2,.7,.2,1),filter .5s ease}.st-scene.is-active{opacity:1;transform:none;filter:none}.st-scene--3{grid-template-columns:repeat(3,1fr)}.st-scene--2{grid-template-columns:1.7fr 1fr}.st-image{margin:0;overflow:hidden;min-width:0;min-height:0;background:#ddd}.st-image img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}.st-auction{position:fixed;z-index:20;left:clamp(24px,3.2vw,62px);bottom:clamp(24px,3.2vw,58px);font-size:11px;letter-spacing:.05em}.st-auction__label{color:var(--st-muted);margin-bottom:10px}.st-auction__date{font-weight:600;margin-bottom:14px}.st-auction__countdown{display:flex;gap:20px;color:#666}.st-auction__countdown span{display:inline-flex;align-items:baseline;gap:5px}.st-auction__countdown b{font-size:12px;font-weight:500}.st-auction__countdown small{font-size:9px}.st-auction__links{display:flex;gap:22px;margin-top:14px;font-size:10px}.st-auction__links a:hover{opacity:.5}.st-scroll-cue{position:fixed;z-index:20;right:clamp(24px,3.2vw,62px);bottom:clamp(24px,3.2vw,58px);color:#777;font-size:9px;letter-spacing:.12em;display:flex;align-items:center;gap:12px}.st-scroll-cue span{display:inline-block;width:1px;height:28px;background:#777}.st-mobile-menu{display:none}
.st-info-overlay__nav a:last-child{
    grid-column:1 / -1;
    border-left:0;
    padding-left:0;
}

@media(max-width:820px){.st-header{padding:18px}.st-nav{display:none}.st-menu-button{display:block;pointer-events:auto;border:0;background:transparent;padding:6px 0 6px 12px}.st-menu-button span{display:block;width:24px;height:1px;background:#111;margin:5px 0}.st-indicators{left:18px;top:46%;gap:14px}.st-indicator{height:20px;width:2px}.st-scene{width:calc(100vw - 72px);height:56svh;left:52px;grid-template-columns:1fr 1fr!important}.st-scene--3 .st-image:nth-child(3){display:none}.st-scene--2{grid-template-columns:1.2fr .8fr!important}.st-auction{left:18px;right:18px;bottom:24px}.st-auction__countdown{gap:14px}.st-auction__links{gap:16px}.st-scroll-cue{display:none}.st-mobile-menu{display:block;position:fixed;z-index:25;inset:0;background:var(--st-bg);padding:88px 24px 30px}.st-mobile-menu[hidden]{display:none}.st-mobile-menu__inner{display:flex;flex-direction:column;gap:22px;font-size:16px;letter-spacing:.03em}}
.st-info-button{
    position:fixed;
    z-index:24;
    right:clamp(24px,3.2vw,62px);
    bottom:clamp(24px,3.2vw,58px);
    display:flex;
    align-items:center;
    gap:9px;
    padding:0;
    border:0;
    background:transparent;
    color:#666;
    font:inherit;
    font-size:9px;
    letter-spacing:.12em;
    cursor:pointer;
    transition:opacity .2s ease;
}
.st-info-button:hover{opacity:.45}
.st-info-button i{
    font-style:normal;
    font-size:13px;
    line-height:1;
    transform:translateY(-1px);
}
.st-info-overlay{
    position:fixed;
    z-index:100;
    inset:0;
    display:grid;
    grid-template-rows:auto 1fr auto;
    background:var(--st-bg);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(8px);
    transition:
        opacity .32s ease,
        visibility .32s ease,
        transform .48s cubic-bezier(.2,.7,.2,1);
}
.st-info-overlay.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
}
.st-info-overlay__header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    padding:clamp(22px,2vw,34px) clamp(24px,3.2vw,62px);
    font-size:10px;
    font-weight:600;
    letter-spacing:.06em;
}
.st-info-close{
    display:flex;
    gap:10px;
    align-items:center;
    border:0;
    padding:0;
    background:transparent;
    color:inherit;
    font:inherit;
    font-size:10px;
    font-weight:600;
    letter-spacing:.06em;
    cursor:pointer;
}
.st-info-close i{
    font-style:normal;
    font-size:16px;
    font-weight:300;
    line-height:1;
}
.st-info-close:hover{opacity:.45}
.st-info-overlay__body{
    width:min(86vw,1420px);
    margin:auto;
    display:grid;
    grid-template-columns:.38fr 1.62fr;
    gap:7vw;
    align-items:start;
}
.st-info-overlay__label{
    padding-top:15px;
    font-size:9px;
    letter-spacing:.14em;
    color:#777;
}
.st-info-overlay__nav{
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid rgba(18,18,18,.52);
}
.st-info-overlay__nav a{
    min-height:92px;
    position:relative;
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:14px;
    padding:0 20px 0 0;
    border-bottom:1px solid rgba(18,18,18,.18);
    transition:opacity .2s ease;
}
.st-info-overlay__nav a:nth-child(even){
    padding-left:24px;
    border-left:1px solid rgba(18,18,18,.18);
}
.st-info-overlay__nav a:hover{opacity:.42}
.st-info-overlay__nav small{
    font-size:8px;
    letter-spacing:.12em;
    color:#888;
}
.st-info-overlay__nav span{
    font-size:clamp(17px,1.65vw,28px);
    line-height:1;
    font-weight:300;
    letter-spacing:-.025em;
}
.st-info-overlay__nav i{
    font-style:normal;
    font-size:11px;
    color:#777;
}
.st-info-overlay__footer{
    display:flex;
    justify-content:space-between;
    padding:24px clamp(24px,3.2vw,62px) 30px;
    border-top:1px solid rgba(18,18,18,.12);
    font-size:8px;
    letter-spacing:.11em;
    color:#777;
}
.st-mobile-info-button{
    display:none;
    width:max-content;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font:inherit;
    font-size:16px;
    letter-spacing:.03em;
    text-align:left;
    cursor:pointer;
}
body.st-info-open .st-gallery,
body.st-info-open .st-auction,
body.st-info-open .st-indicators,
body.st-info-open .st-scroll-cue,
body.st-info-open .st-info-button{
    pointer-events:none;
}
@media(max-width:820px){
    .st-info-button{display:none}
    .st-mobile-info-button{display:block}
    .st-info-overlay__header{padding:20px 18px}
    .st-info-overlay__body{
        width:auto;
        margin:55px 18px auto;
        grid-template-columns:1fr;
        gap:30px;
    }
    .st-info-overlay__nav{grid-template-columns:1fr}
    .st-info-overlay__nav a{
        min-height:62px;
        grid-template-columns:34px 1fr auto;
        padding-right:4px;
    }
    .st-info-overlay__nav a:nth-child(even){
        padding-left:0;
        border-left:0;
    }
    .st-info-overlay__nav span{font-size:18px}
    .st-info-overlay__footer{
        padding:18px;
        flex-direction:column;
        gap:7px;
    }
}


@media(max-width:820px){
    .st-info-overlay__nav a:last-child{
        grid-column:auto;
    }
}


/* v1.11.4 窶� TOP / NEXT AUCTION information hierarchy */
@media (min-width: 821px) {
    .st-auction {
        font-size: 10px;
        letter-spacing: .045em;
    }

    .st-auction__label {
        margin-bottom: 7px;
        color: #858585;
        font-size: 8px;
        font-weight: 400;
        letter-spacing: .14em;
    }

    .st-auction__date {
        margin-bottom: 10px;
        color: #555;
        font-size: 10px;
        font-weight: 400;
        letter-spacing: .035em;
    }

    .st-auction__countdown {
        gap: 28px;
        color: #666;
    }

    .st-auction__countdown span {
        gap: 5px;
    }

    .st-auction__countdown b {
        color: #333;
        font-size: 11px;
        font-weight: 500;
        letter-spacing: .04em;
    }

    .st-auction__countdown small {
        color: #8a8a8a;
        font-size: 7px;
        font-weight: 400;
        letter-spacing: .08em;
    }

    .st-auction__links {
        align-items: center;
        gap: 28px;
        margin-top: 24px;
        font-size: 9px;
        letter-spacing: .075em;
    }

    .st-auction__register {
        position: relative;
        padding-left: 13px;
        color: #222;
        font-weight: 500;
    }

    .st-auction__register::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: #c4002f;
        transform: translateY(-50%);
    }

    .st-auction__instagram {
        color: #777;
        font-weight: 400;
    }
}


/* v1.12.3 窶� monogram + wordmark header brand */
.st-brand-link{display:inline-flex;align-items:center;gap:10px;line-height:1;white-space:nowrap}.st-brand-link:hover{opacity:.58}.st-brand-link__icon{display:block;width:22px;height:auto;flex:0 0 auto}.st-brand-link__text{display:block;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:1}.st-header{justify-content:space-between;align-items:flex-start}.st-header .st-header-brand{pointer-events:auto;font-size:11px;letter-spacing:.06em;font-weight:600}.st-page-header .st-brand-link,.st-results-header .st-brand-link,.st-about-header .st-brand-link,.st-rules-header .st-brand-link,.st-auth-header .st-brand-link,.st-condition-header .st-brand-link,.st-contact-header .st-brand-link,.st-how-header .st-brand-link,.st-payment-header .st-brand-link,.st-privacy-header .st-brand-link,.st-register-header .st-brand-link,.st-shipping-header .st-brand-link,.st-terms-header .st-brand-link{font-size:inherit;font-weight:inherit;letter-spacing:inherit}.st-info-overlay__header .st-info-overlay__brand{font-size:10px;font-weight:600;letter-spacing:.06em}@media(max-width:820px){.st-header{align-items:center}.st-header .st-header-brand{font-size:10px}.st-brand-link__icon{width:20px}}


/* ---------------------------------------------------------
 * v1.12.5 窶� TOP / smartphone composition
 * Desktop rules above remain unchanged.
 * --------------------------------------------------------- */
@media (max-width: 820px) {
    body.st-home {
        overflow: hidden;
    }

    /* Fixed brand header: monogram + SERI TOKYO / hamburger */
    .st-header {
        top: 0;
        left: 0;
        right: 0;
        min-height: 64px;
        padding: 18px 20px;
        align-items: center;
        background: linear-gradient(to bottom, rgba(238,238,236,.98), rgba(238,238,236,.92) 72%, rgba(238,238,236,0));
        pointer-events: none;
    }
    body.admin-bar .st-header {
        top: 46px;
    }
    .st-header .st-header-brand {
        pointer-events: auto;
        font-size: 10px;
        letter-spacing: .065em;
        font-weight: 600;
    }
    .st-header .st-brand-link {
        gap: 8px;
    }
    .st-header .st-brand-link__icon {
        width: 19px;
    }
    .st-header .st-brand-link__text {
        transform: translateY(.25px);
    }
    .st-menu-button {
        display: block;
        pointer-events: auto;
        width: 30px;
        height: 30px;
        padding: 6px 0 6px 8px;
        border: 0;
        background: transparent;
    }
    .st-menu-button span {
        width: 22px;
        height: 1px;
        margin: 5px 0;
        background: #121212;
        transform-origin: center;
        transition: transform .25s ease, opacity .2s ease;
    }
    .st-menu-button[aria-expanded="true"] span:first-child {
        transform: translateY(3px) rotate(45deg);
    }
    .st-menu-button[aria-expanded="true"] span:last-child {
        transform: translateY(-3px) rotate(-45deg);
    }

    /* One image per scene on smartphone. */
    .st-gallery {
        position: fixed;
        inset: 0;
        display: block;
        pointer-events: none;
    }
    .st-scene,
    .st-scene--2,
    .st-scene--3 {
        top: 104px;
        left: 72px;
        right: 18px;
        width: auto;
        height: min(66svh, 820px);
        display: grid;
        grid-template-columns: 1fr !important;
        gap: 0;
    }
    body.admin-bar .st-scene,
    body.admin-bar .st-scene--2,
    body.admin-bar .st-scene--3 {
        top: 150px;
    }
    .st-scene .st-image {
        display: none;
    }
    .st-scene .st-image:first-child {
        display: block;
        width: 100%;
        height: 100%;
    }
    .st-scene .st-image:first-child img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    /* Smaller, quieter gallery progress. */
    .st-indicators {
        left: 24px;
        top: 43%;
        gap: 12px;
    }
    body.admin-bar .st-indicators {
        top: 46%;
    }
    .st-indicator {
        width: 2px;
        height: 14px;
        border-radius: 0;
        opacity: .45;
    }
    .st-indicator.is-active {
        opacity: 1;
        transform: scaleY(1.08);
    }

    /* NEXT AUCTION: compact hierarchy below image. */
    .st-auction {
        left: 24px;
        right: 18px;
        bottom: 22px;
        font-size: 10px;
        letter-spacing: .045em;
    }
    .st-auction__label {
        margin-bottom: 7px;
        color: #858585;
        font-size: 8px;
        letter-spacing: .13em;
    }
    .st-auction__date {
        margin-bottom: 11px;
        color: #222;
        font-size: 10px;
        font-weight: 500;
        letter-spacing: .035em;
    }
    .st-auction__countdown {
        gap: 20px;
        color: #666;
    }
    .st-auction__countdown span {
        gap: 4px;
    }
    .st-auction__countdown b {
        color: #444;
        font-size: 11px;
        font-weight: 400;
    }
    .st-auction__countdown small {
        color: #929292;
        font-size: 7px;
    }
    .st-auction__links {
        align-items: center;
        gap: 25px;
        margin-top: 22px;
        font-size: 9px;
        letter-spacing: .065em;
    }
    .st-auction__register {
        position: relative;
        padding-left: 13px;
        color: #222;
        font-weight: 500;
    }
    .st-auction__register::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: #c4002f;
        transform: translateY(-50%);
    }
    .st-auction__instagram {
        color: #777;
        font-weight: 400;
    }

    /* INFO remains inside the hamburger menu on smartphone. */
    .st-info-button {
        display: none;
    }
    .st-mobile-menu {
        z-index: 28;
        padding: 108px 24px 34px;
    }
    body.admin-bar .st-mobile-menu {
        padding-top: 154px;
    }
    .st-mobile-menu__inner {
        gap: 24px;
        font-size: 15px;
        letter-spacing: .035em;
    }
    .st-mobile-info-button {
        display: block;
        font-size: 15px;
    }
}

/* WordPress mobile admin-bar height. */
@media (max-width: 782px) {
    body.admin-bar.st-home .st-header { top: 46px; }
}

/* Short phones: preserve room for NEXT AUCTION without crowding. */
@media (max-width: 820px) and (max-height: 760px) {
    .st-scene,
    .st-scene--2,
    .st-scene--3 {
        top: 94px;
        height: 56svh;
    }
    body.admin-bar .st-scene,
    body.admin-bar .st-scene--2,
    body.admin-bar .st-scene--3 {
        top: 140px;
    }
    .st-auction__links {
        margin-top: 16px;
    }
}


/* ---------------------------------------------------------
 * v1.12.6 窶� iPhone Safari viewport refinement
 * --------------------------------------------------------- */
@media (max-width: 820px) {
    /* Use the live Safari viewport when supported. */
    .st-shell {
        min-height: 100dvh;
        height: 100dvh;
        overflow: hidden;
    }

    /* Bring the editorial image slightly closer to the header. */
    .st-scene,
    .st-scene--2,
    .st-scene--3 {
        top: 96px;
        height: min(64dvh, 700px);
    }

    body.admin-bar .st-scene,
    body.admin-bar .st-scene--2,
    body.admin-bar .st-scene--3 {
        top: 142px;
    }

    /* Force the originally approved thin vertical indicators in Safari. */
    .st-indicator {
        -webkit-appearance: none !important;
        appearance: none !important;
        box-sizing: border-box;
        width: 2px !important;
        min-width: 2px !important;
        max-width: 2px !important;
        height: 15px !important;
        min-height: 15px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: rgba(18,18,18,.34);
    }
    .st-indicator.is-active {
        background: #c4002f;
    }

    /* Move NEXT AUCTION upward slightly so it visually belongs to the image. */
    .st-auction {
        bottom: max(30px, env(safe-area-inset-bottom));
    }
    .st-auction__links {
        margin-top: 18px;
    }
}

/* Safari with visible browser chrome behaves like a short viewport. */
@media (max-width: 820px) and (max-height: 760px) {
    .st-scene,
    .st-scene--2,
    .st-scene--3 {
        top: 90px;
        height: 60svh;
        height: 60dvh;
    }
    body.admin-bar .st-scene,
    body.admin-bar .st-scene--2,
    body.admin-bar .st-scene--3 {
        top: 136px;
    }
    .st-auction {
        bottom: max(28px, env(safe-area-inset-bottom));
    }
}


/* ---------------------------------------------------------
 * v1.12.7 窶� TOP smartphone full-width gallery + dot pager
 * --------------------------------------------------------- */
@media (max-width: 820px) {
    body.st-home {
        --st-mobile-image-top: 118px;
        --st-mobile-image-height: calc(125vw - 45px); /* 4:5 from 18px side margins */
        --st-mobile-image-gap: 18px;
        --st-mobile-pager-gap: 18px;
    }

    /* Use the available phone width for the visual. */
    .st-scene,
    .st-scene--2,
    .st-scene--3 {
        top: var(--st-mobile-image-top) !important;
        left: var(--st-mobile-image-gap) !important;
        right: var(--st-mobile-image-gap) !important;
        width: auto !important;
        height: var(--st-mobile-image-height) !important;
        grid-template-columns: 1fr !important;
    }

    body.admin-bar.st-home {
        --st-mobile-image-top: 164px;
    }

    .st-scene .st-image:first-child img {
        object-position: center center;
    }

    /* Horizontal circular pager immediately below the image. */
    .st-indicators {
        position: fixed;
        z-index: 22;
        top: calc(var(--st-mobile-image-top) + var(--st-mobile-image-height) + var(--st-mobile-pager-gap)) !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;
        transform: translateX(-50%) !important;
        flex-direction: row !important;
        align-items: center;
        justify-content: center;
        gap: 10px !important;
    }

    body.admin-bar .st-indicators {
        top: calc(var(--st-mobile-image-top) + var(--st-mobile-image-height) + var(--st-mobile-pager-gap)) !important;
    }

    .st-indicator {
        -webkit-appearance: none !important;
        appearance: none !important;
        width: 6px !important;
        min-width: 6px !important;
        max-width: 6px !important;
        height: 6px !important;
        min-height: 6px !important;
        max-height: 6px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: rgba(18,18,18,.30) !important;
        opacity: 1 !important;
        transform: none !important;
        transition: background-color .24s ease, transform .24s ease !important;
    }

    .st-indicator.is-active {
        background: #c4002f !important;
        transform: scale(1.08) !important;
    }

    /* Tie NEXT AUCTION to the gallery instead of the browser bottom edge. */
    .st-auction {
        top: calc(var(--st-mobile-image-top) + var(--st-mobile-image-height) + 68px) !important;
        left: 24px !important;
        right: 24px !important;
        bottom: auto !important;
    }

    .st-auction__label {
        margin-bottom: 14px;
    }

    .st-auction__date {
        margin-bottom: 24px;
    }

    .st-auction__links {
        margin-top: 30px;
    }
}

/* Compact iPhones / Safari with more browser chrome. */
@media (max-width: 820px) and (max-height: 740px) {
    body.st-home {
        --st-mobile-image-top: 96px;
        --st-mobile-image-gap: 28px;
        --st-mobile-image-height: calc(125vw - 70px); /* 4:5 with 28px side margins */
        --st-mobile-pager-gap: 14px;
    }

    body.admin-bar.st-home {
        --st-mobile-image-top: 142px;
    }

    .st-auction {
        top: calc(var(--st-mobile-image-top) + var(--st-mobile-image-height) + 54px) !important;
    }

    .st-auction__label {
        margin-bottom: 10px;
    }

    .st-auction__date {
        margin-bottom: 18px;
    }

    .st-auction__links {
        margin-top: 22px;
    }
}


/* ---------------------------------------------------------
 * v1.12.8 窶� TOP smartphone 4:5 portrait visual + open spacing
 * --------------------------------------------------------- */
@media (max-width: 820px) {
    .st-scene .st-image:first-child,
    .st-scene .st-image:first-child img {
        aspect-ratio: 4 / 5;
    }
    .st-scene .st-image:first-child img {
        object-fit: cover;
        object-position: center center;
    }
}


/* v1.12.11 窶� all lower pages use hamburger navigation on smartphone */
.st-lower-mobile-menu-button,
.st-lower-mobile-menu{
    display:none;
}

@media (max-width: 900px){
    .st-about-nav,
    .st-rules-nav,
    .st-auth-nav,
    .st-condition-nav,
    .st-contact-nav,
    .st-how-nav,
    .st-payment-nav,
    .st-privacy-nav,
    .st-register-nav,
    .st-results-nav,
    .st-shipping-nav,
    .st-terms-nav{
        display:none !important;
    }

    .st-lower-mobile-menu-button{
        display:block !important;
        flex:0 0 auto;
        width:34px;
        height:26px;
        padding:5px 0;
        border:0;
        background:transparent;
        cursor:pointer;
        pointer-events:auto;
        position:relative;
        z-index:1002;
    }
    .st-lower-mobile-menu-button span{
        display:block;
        width:30px;
        height:1px;
        margin:5px 0 5px auto;
        background:#121212;
    }

    .st-lower-mobile-menu{
        display:block !important;
        position:fixed;
        z-index:1000;
        inset:0;
        background:var(--st-bg, #eeeeec);
        padding:142px 34px 42px;
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
    }
    .st-lower-mobile-menu[hidden]{
        display:none !important;
    }
    body.admin-bar .st-lower-mobile-menu{
        top:46px;
    }
    .st-lower-mobile-menu .st-page-mobile-close{
        position:absolute;
        top:25px;
        right:24px;
        display:block;
        width:38px;
        height:38px;
        padding:0;
        border:0;
        background:transparent;
        color:#121212;
        font-family:Arial,Helvetica,sans-serif;
        font-size:30px;
        font-weight:300;
        line-height:1;
        text-align:center;
        cursor:pointer;
    }
    .st-lower-mobile-menu .st-mobile-menu__inner{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:30px;
        font-size:24px;
        line-height:1.25;
        letter-spacing:.01em;
        font-weight:400;
    }
    .st-lower-mobile-menu .st-mobile-menu__inner a,
    .st-lower-mobile-menu .st-mobile-info-button{
        color:#121212;
        text-decoration:none;
    }
    .st-lower-mobile-menu .st-mobile-info-button{
        display:block;
        width:auto;
        padding:0;
        border:0;
        background:transparent;
        font:inherit;
        text-align:left;
        cursor:pointer;
    }
}


/* ---------------------------------------------------------
 * v1.12.13 窶� unify all smartphone headers with TOP
 * The hamburger itself becomes the single close X when open.
 * --------------------------------------------------------- */
@media (max-width: 900px) {
    .st-lower-mobile-menu-button {
        display: block !important;
        pointer-events: auto;
        flex: 0 0 auto;
        width: 30px;
        height: 30px;
        padding: 6px 0 6px 8px;
        margin: 0;
        border: 0;
        background: transparent;
        position: relative;
        z-index: 1002;
        cursor: pointer;
        -webkit-appearance: none;
        appearance: none;
    }
    .st-lower-mobile-menu-button span {
        display: block;
        width: 22px;
        height: 1px;
        margin: 5px 0;
        background: #121212;
        transform-origin: center;
        transition: transform .25s ease, opacity .2s ease;
    }
    .st-lower-mobile-menu-button[aria-expanded="true"] span:first-child {
        transform: translateY(3px) rotate(45deg);
    }
    .st-lower-mobile-menu-button[aria-expanded="true"] span:last-child {
        transform: translateY(-3px) rotate(-45deg);
    }

    /* No separate close glyph: this prevents duplicate X marks. */
    .st-lower-mobile-menu .st-page-mobile-close,
    .st-page-mobile-menu .st-page-mobile-close {
        display: none !important;
    }

    /* Keep mobile menu hierarchy aligned with TOP. */
    .st-lower-mobile-menu {
        padding: 108px 24px 34px;
    }
    body.admin-bar .st-lower-mobile-menu {
        top: 0;
        padding-top: 154px;
    }
    .st-lower-mobile-menu .st-mobile-menu__inner {
        gap: 24px;
        font-size: 15px;
        line-height: 1.35;
        letter-spacing: .035em;
        font-weight: 400;
    }
    .st-lower-mobile-menu .st-mobile-info-button {
        font-size: 15px;
    }
}

/* ---------------------------------------------------------
 * v1.12.18 窶� TOP Auction Heritage depth carousel
 * Original SERI TOKYO motion system: six fixed chapters,
 * centered depth rotation, wheel / swipe control.
 * --------------------------------------------------------- */
body.st-home--heritage .st-gallery{display:none!important}
body.st-home--heritage .st-heritage-stage{
    position:fixed;
    z-index:10;
    left:50%;
    top:50%;
    width:min(58vw,980px);
    height:min(58vh,600px);
    transform:translate(-50%,-52%);
    perspective:1400px;
    perspective-origin:50% 45%;
    pointer-events:none;
}
body.st-home--heritage .st-heritage-track{
    position:absolute;
    inset:0;
    transform-style:preserve-3d;
}
body.st-home--heritage .st-heritage-card{
    --card-size:clamp(220px,20vw,350px);
    position:absolute;
    left:50%;
    top:46%;
    width:var(--card-size);
    height:var(--card-size);
    margin:0;
    overflow:hidden;
    background:#f4f2ec;
    transform-origin:50% 50%;
    backface-visibility:hidden;
    will-change:transform,opacity,filter;
    transition:
        transform .72s cubic-bezier(.16,.84,.2,1),
        opacity .58s ease,
        filter .62s ease;
}
body.st-home--heritage .st-heritage-card img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    user-select:none;
    -webkit-user-drag:none;
}
body.st-home--heritage .st-heritage-card[data-offset="0"]{
    z-index:9;
    opacity:1;
    filter:none;
    transform:translate3d(-50%,-50%,220px) rotateY(0deg) scale(1.24);
}
body.st-home--heritage .st-heritage-card[data-offset="-1"]{
    z-index:7;
    opacity:.90;
    filter:saturate(.92) blur(.08px);
    transform:translate3d(-136%,-48%,10px) rotateY(10deg) scale(.54);
}
body.st-home--heritage .st-heritage-card[data-offset="1"]{
    z-index:7;
    opacity:.90;
    filter:saturate(.92) blur(.08px);
    transform:translate3d(36%,-48%,10px) rotateY(-10deg) scale(.54);
}
body.st-home--heritage .st-heritage-card[data-offset="-2"]{
    z-index:5;
    opacity:.58;
    filter:saturate(.80) blur(.45px);
    transform:translate3d(-193%,-46%,-190px) rotateY(16deg) scale(.34);
}
body.st-home--heritage .st-heritage-card[data-offset="2"]{
    z-index:5;
    opacity:.58;
    filter:saturate(.80) blur(.45px);
    transform:translate3d(93%,-46%,-190px) rotateY(-16deg) scale(.34);
}
body.st-home--heritage .st-heritage-card[data-offset="-3"],
body.st-home--heritage .st-heritage-card[data-offset="3"]{
    z-index:1;
    opacity:0;
    filter:blur(2px);
    transform:translate3d(-50%,-42%,-460px) rotateY(0deg) scale(.18);
}
body.st-home--heritage .st-heritage-caption{
    position:absolute;
    left:50%;
    top:calc(46% + min(20vw,350px)/2 + 54px);
    transform:translateX(-50%);
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:9px;
    color:#666;
    font-size:9px;
    letter-spacing:.34em;
    white-space:nowrap;
}
body.st-home--heritage .st-heritage-caption small{
    font-size:8px;
    letter-spacing:.16em;
    color:#aaa;
}
body.st-home--heritage .st-heritage-caption b{font-weight:500;color:#555}
body.st-home--heritage .st-heritage-indicators .st-indicator{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#aaa;
    opacity:.9;
    transform:none;
}
body.st-home--heritage .st-heritage-indicators .st-indicator.is-active{
    background:#c4002f;
    transform:scale(1.08);
}

@media (max-width:820px){
    body.st-home--heritage{
        --st-heritage-top:116px;
        --st-heritage-stage-size:calc(100vw - 36px);
        --st-heritage-card-size:min(72vw,420px);
    }

    body.admin-bar.st-home--heritage{
        --st-heritage-top:162px;
    }

    /*
     * Smartphone keeps the same centered 3D coordinate system as desktop.
     * The stage remains visually large so the pager / NEXT AUCTION positions
     * stay close to the approved SP composition, while the actual cards are
     * slightly smaller to reveal the neighbouring depth cards.
     */
    body.st-home--heritage .st-heritage-stage{
        position:fixed;
        top:var(--st-heritage-top);
        left:0;
        right:0;
        width:100vw;
        height:var(--st-heritage-stage-size);
        transform:none;
        perspective:1000px;
        perspective-origin:50% 48%;
        overflow:visible;
        pointer-events:none;
    }

    body.st-home--heritage .st-heritage-track{
        position:absolute;
        inset:0;
        transform-style:preserve-3d;
        overflow:visible;
    }

    body.st-home--heritage .st-heritage-card{
        --card-size:var(--st-heritage-card-size);
        position:absolute;
        left:50%;
        top:50%;
        width:var(--card-size);
        height:var(--card-size);
        margin:0;
        transform-origin:50% 50%;
        backface-visibility:hidden;
        will-change:transform,opacity,filter;
        transition:none!important;
        pointer-events:none;
    }

    body.st-home--heritage .st-heritage-card img{
        display:block;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center center;
    }

    /* Inline transforms from main.js control every depth position on SP. */
    body.st-home--heritage .st-heritage-card[data-offset="0"],
    body.st-home--heritage .st-heritage-card[data-offset="-1"],
    body.st-home--heritage .st-heritage-card[data-offset="1"],
    body.st-home--heritage .st-heritage-card[data-offset="-2"],
    body.st-home--heritage .st-heritage-card[data-offset="2"],
    body.st-home--heritage .st-heritage-card[data-offset="-3"],
    body.st-home--heritage .st-heritage-card[data-offset="3"]{
        transition:none!important;
    }

    body.st-home--heritage .st-heritage-caption{
        display:none;
    }

    body.st-home--heritage .st-heritage-indicators{
        position:fixed;
        z-index:22;
        top:calc(var(--st-heritage-top) + var(--st-heritage-stage-size) + 18px)!important;
        left:50%!important;
        right:auto!important;
        bottom:auto!important;
        transform:translateX(-50%)!important;
        flex-direction:row!important;
        align-items:center;
        justify-content:center;
        gap:10px!important;
    }

    body.st-home--heritage .st-heritage-indicators .st-indicator{
        -webkit-appearance:none!important;
        appearance:none!important;
        width:6px!important;
        min-width:6px!important;
        max-width:6px!important;
        height:6px!important;
        min-height:6px!important;
        max-height:6px!important;
        padding:0!important;
        margin:0!important;
        border:0!important;
        border-radius:50%!important;
        background:rgba(18,18,18,.30)!important;
        opacity:1!important;
        transform:none!important;
        transition:background-color .24s ease,transform .24s ease!important;
    }

    body.st-home--heritage .st-heritage-indicators .st-indicator.is-active{
        background:#c4002f!important;
        transform:scale(1.08)!important;
    }

    body.st-home--heritage .st-auction{
        top:calc(var(--st-heritage-top) + var(--st-heritage-stage-size) + 66px)!important;
        bottom:auto!important;
    }
}

@media (max-width:820px) and (max-height:740px){
    body.st-home--heritage{
        --st-heritage-top:96px;
        --st-heritage-stage-size:calc(100vw - 56px);
        --st-heritage-card-size:min(68vw,360px);
    }

    body.admin-bar.st-home--heritage{
        --st-heritage-top:142px;
    }

    body.st-home--heritage .st-heritage-indicators{
        top:calc(var(--st-heritage-top) + var(--st-heritage-stage-size) + 14px)!important;
    }

    body.st-home--heritage .st-auction{
        top:calc(var(--st-heritage-top) + var(--st-heritage-stage-size) + 54px)!important;
    }
}

/* v1.12.23 窶� SP Heritage gallery now uses centered PC-like depth motion. */

/* v1.12.19 窶� smoother Heritage motion + caption simplification */
@media (min-width:821px){
    body.st-home--heritage .st-heritage-card{
        transition:none!important;
    }
    body.st-home--heritage .st-heritage-caption{
        top:calc(46% + min(20vw,350px)/2 + 48px);
        gap:0;
    }
    body.st-home--heritage .st-heritage-caption small{
        font-size:8px;
        letter-spacing:.18em;
        color:#9a9a9a;
    }
}

/* v1.12.20 窶� stronger focal hierarchy: center card enlarged, surrounding cards reduced. */