/* AUTO: assets/css/inc/style.mobile.css → 勿直接改，请改 inc 后运行 sync_mobile_assets.php */

@media (max-width: 640px) {
    .front-pagination {
        padding-left: 12px;
        padding-right: 12px;
    }

    .front-pagination-main {
        gap: 10px 12px;
        max-width: 100%;
    }

    .front-pagination-arrow {
        min-width: 0;
        height: 48px;
        padding: 0 14px;
        font-size: 0.88rem;
    }

    .front-pagination-current {
        min-width: 72px;
        height: 48px;
        padding: 0 10px;
        font-size: 0.92rem;
    }
}

@media (max-width: 600px) {
    .product-detail-price-head {
        flex-direction: column;
        align-items: stretch;
    }

    .product-detail-price-num {
        font-size: clamp(1.25rem, 6vw, 1.65rem);
    }
}

@media (hover: none), (pointer: coarse) {
    .product-detail-gallery-zoom:focus,
    .product-detail-gallery-zoom:focus-visible,
    .product-lightbox-close:focus,
    .product-lightbox-close:focus-visible,
    .product-lightbox-nav:focus,
    .product-lightbox-nav:focus-visible,
    a.product-card-link:focus,
    a.product-card-link:focus-visible,
    .nav-toggle:focus,
    .nav-toggle:focus-visible,
    .main-nav a:focus,
    .main-nav a:focus-visible,
    .lang-switch-btn:focus,
    .lang-switch-btn:focus-visible {
        outline: none;
    }

    .product-detail-gallery-zoom:active,
    .nav-toggle:active {
        opacity: 0.92;
    }

    .main-nav a:active {
        background: rgba(255, 255, 255, 0.06);
        color: var(--text);
    }
}

@media (max-width: 520px) {
    .product-lightbox {
        padding: 44px 6px 72px;
    }

    .product-lightbox-frame,
    .product-lightbox-img {
        max-width: calc(100vw - 12px);
        max-height: min(86vh, calc(100vw - 12px));
    }

    .product-lightbox-nav {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 600px) {
    .product-detail-hero-deco {
        display: none;
    }

    .product-detail-main-deco {
        display: none;
    }

    .product-detail-gallery-head {
        flex-direction: column;
    }

    .product-detail-block-head {
        padding: 16px 18px 14px;
    }

    .product-detail-block-body {
        padding: 16px 18px 18px;
    }

    .product-detail-block-icon {
        width: 40px;
        height: 40px;
    }
}

@media (max-width: 600px) {
    .product-detail-hero-inner {
        padding-top: 18vh;
    }

    .product-detail-price-panel {
        max-width: none;
    }

    .product-detail-gallery {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .product-detail-gallery-item.is-featured {
        grid-column: auto;
    }

    .product-detail-gallery-wrap {
        padding: 20px 16px 24px;
    }

    .product-detail-gallery-item.is-featured .product-detail-gallery-media img,
    .product-detail-gallery-item--video.is-featured .product-detail-video {
        aspect-ratio: 16 / 10;
        max-height: min(56vh, 420px);
    }

    .product-detail-gallery-item--image .product-detail-gallery-media img {
        min-height: 200px;
    }

    .product-detail-gallery-zoom-hint {
        right: 10px;
        bottom: 10px;
        opacity: 0.45;
    }
}

@media (max-width: 720px) {
    .article-content .product-tpl-cols,
    .article-content .product-tpl--cols {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .site-footer {
        padding: 36px 20px 32px;
        padding-bottom: max(32px, calc(16px + env(safe-area-inset-bottom, 0px)));
    }

    .footer-ornament {
        margin-bottom: 28px;
    }

    .footer-ornament .footer-line {
        max-width: 72px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .footer-col {
        padding: 22px 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    }

    .footer-col--brand {
        padding-top: 0;
    }

    .footer-col--contact {
        border-bottom: none;
        padding-bottom: 8px;
    }

    .footer-col--brand {
        order: 1;
    }

    .footer-col--nav {
        order: 2;
    }

    .footer-col--contact {
        order: 3;
    }

    .footer-brand {
        display: flex;
        width: 100%;
    }

    .footer-brand-desc {
        max-width: none;
    }

    .footer-meta-list {
        flex-direction: column;
        gap: 8px;
    }

    .footer-meta-list li:not(:last-child)::after {
        content: none;
    }

    .footer-meta-list li {
        position: relative;
        padding-left: 12px;
    }

    .footer-meta-list li::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0.55em;
        width: 4px;
        height: 4px;
        border-radius: 50%;
        background: var(--gold-dim);
        opacity: 0.65;
    }

    .footer-social-links {
        gap: 4px 12px;
    }

    .footer-social-link {
        width: 44px;
        height: 44px;
    }

    .footer-text-link {
        min-height: 44px;
        align-items: center;
    }

    .footer-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 4px 12px;
    }

    .footer-links a {
        width: 100%;
        min-height: 44px;
        padding: 10px 12px;
        border-radius: 8px;
        box-sizing: border-box;
        background: rgba(255, 255, 255, 0.02);
    }

    .footer-links a:active {
        background: rgba(201, 169, 98, 0.08);
    }

    .footer-subheading {
        margin-top: 16px;
    }

    .footer-plain-list {
        padding-left: 0;
    }

    .footer-plain-list li {
        padding-left: 12px;
    }

    .footer-plain-list li::before {
        left: 0;
    }

    .footer-contact-line {
        padding: 10px 12px;
        margin-bottom: 8px;
        border-radius: 8px;
        background: rgba(255, 255, 255, 0.02);
        box-sizing: border-box;
    }

    .footer-contact-line--addr {
        padding: 12px;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        margin-top: 28px;
        padding-top: 22px;
    }

    .footer-bottom .footer-lang {
        order: 1;
        justify-content: center;
        padding-bottom: 4px;
    }

    .footer-bottom .footer-copy {
        order: 2;
        width: 100%;
        text-align: center;
        font-size: 0.74rem;
    }
}

@media (max-width: 560px) {
    .site-footer {
        padding-left: max(16px, env(safe-area-inset-left, 16px));
        padding-right: max(16px, env(safe-area-inset-right, 16px));
    }

    .footer-heading {
        letter-spacing: 0.14em;
        margin-bottom: 12px;
    }

    .footer-links {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}

@media (max-width: 1180px) {
    .product-grid--page.product-grid--cols-4 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 960px) {
    .product-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .product-grid--large {
        grid-template-columns: 1fr;
    }

    .product-grid--page.product-grid--cols-3,
    .product-grid--page.product-grid--cols-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 720px) {
    .nav-toggle {
        display: flex;
    }

    .main-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        flex-direction: column;
        padding: 12px 18px 20px;
        background: rgba(12, 13, 16, 0.98);
        border-bottom: 1px solid var(--line);
    }

    .main-nav.is-open {
        display: flex;
    }

    .header-inner {
        position: relative;
        flex-wrap: wrap;
    }

    .main-nav {
        order: 3;
        width: 100%;
    }

    .product-grid {
        grid-template-columns: 1fr;
    }

    .product-grid--page {
        grid-template-columns: 1fr !important;
    }

    .news-row {
        flex-direction: column;
    }

    .news-row--lux::before {
        left: 16px;
        right: 16px;
        top: 8px;
        bottom: auto;
        width: auto;
        height: 3px;
        background: linear-gradient(90deg, var(--gold), rgba(201, 169, 98, 0.2));
    }

    .news-row--lux {
        padding-top: 26px;
    }

    .news-hub-card__media {
        width: 100%;
    }

    .news-hub-card__media .news-thumb {
        width: 100%;
        min-height: 0;
        height: 180px;
    }

    .news-thumb {
        width: 100%;
        height: 160px;
    }

    .lux-pill-bar {
        padding: 14px 16px 18px;
    }

    .carousel-prev,
    .carousel-next {
        display: none;
    }

    .slide-content {
        padding: 14vh 18px 10vh;
    }

    .hero-carousel--inner .slide-content {
        padding: 9vh 18px 8vh;
    }

    .slide-content h1 {
        font-size: clamp(1.75rem, 7vw, 2.35rem);
        line-height: 1.32;
    }

    .slide-content p {
        font-size: 1rem;
        line-height: 1.6;
    }

    .about-grid {
        grid-template-columns: 1fr;
    }

    .contact-grid {
        grid-template-columns: 1fr;
    }

    .contact-map-wrap iframe {
        min-height: 260px;
    }
}

