/* Store Shared Layer */
/* Generated from the legacy store-home.css during the first engineering split. */

html {
    scroll-behavior: smooth;
}

body.store-home-template {
    --store-red: #9e2330;
    --store-red-deep: #7f1623;
    --store-ink: #1f2d36;
    --store-blue: #84653f;
    --store-gold: #cda16a;
    --store-sand: #f6efe5;
    --store-line: rgba(58, 45, 31, 0.12);
    --store-card-shadow: 0 24px 50px rgba(58, 45, 31, 0.08);
}

.store-refresh .wp {
    max-width: 1280px;
}

.store-topbar {
    position: relative;
    z-index: 9;
    background: linear-gradient(90deg, #8f6b46 0%, #4f3e31 50%, #7f1623 100%);
    color: #f8f3ec;
}

.store-topbar .wp {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 42px;
}

.store-topbar-copy,
.store-topbar-meta {
    display: flex;
    align-items: center;
    gap: 18px;
    font-size: 13px;
    line-height: 1.6;
}

.store-topbar-meta span,
.store-topbar-meta a {
    position: relative;
    color: inherit;
}

.store-topbar-meta span + span::before,
.store-topbar-meta span + a::before,
.store-topbar-meta a + span::before,
.store-topbar-meta a + a::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 50%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-radius: 50%;
    background: rgba(248, 243, 236, 0.55);
}

.store-refresh .menuBtn {
    display: none !important;
}

.store-refresh .header {
    position: sticky;
    top: 0;
    z-index: 8;
    padding: 8px 28px;
    background: rgba(255, 252, 248, 0.9);
    border-bottom: 1px solid rgba(20, 41, 58, 0.08);
    backdrop-filter: blur(18px);
    box-shadow: 0 16px 36px rgba(20, 41, 58, 0.06);
}

.store-refresh .header .store-header-shell {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    max-width: 1440px;
    margin: 0 auto;
    min-height: 48px;
}

.store-refresh .header .logo {
    float: none;
    width: auto;
    line-height: 1;
    position: relative;
    z-index: 2;
    flex-shrink: 0;
}

.store-refresh .header .logo img {
    height: 30px;
    width: auto;
}

.store-refresh .header .hd-r {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 1200px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.store-refresh .header .hd-r .rbox {
    display: flex;
    align-items: center;
    gap: 18px;
    width: auto;
}

.store-refresh .nav {
    position: static;
    left: auto;
    top: auto;
    width: auto;
    margin: 0;
    overflow: visible;
    text-align: left;
    position: relative;
    z-index: 4;
}

.store-refresh .nav > ul {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 4;
}

.store-refresh .nav li {
    padding: 0;
}

.store-refresh .nav .v1 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(20, 41, 58, 0.05);
    color: var(--store-ink);
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.store-refresh .nav .v1::after,
.store-refresh .nav .down {
    display: none !important;
}

.store-refresh .nav li.on .v1,
.store-refresh .nav .v1:hover {
    background: var(--store-red);
    color: #fff;
    transform: translateY(-1px);
}

.store-header-cta {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 4;
}

.store-header-phone {
    color: var(--store-ink);
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    position: relative;
    z-index: 4;
}

.store-header-button,
.store-page-hero-button,
.store-page-hero-link,
.store-mobile-dock-link-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--store-red) 0%, var(--store-gold) 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 18px 32px rgba(127, 22, 35, 0.18);
    position: relative;
    z-index: 4;
}

.store-page-hero-link {
    background: rgba(255, 250, 244, 0.88);
    color: var(--store-ink);
    box-shadow: none;
    border: 1px solid rgba(58, 45, 31, 0.08);
}

.store-refresh .g-right {
    right: 18px;
}

.store-refresh .store-rail-link {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 132px;
    min-height: 54px;
    padding: 0 14px;
    border-radius: 20px;
    background: rgba(255, 252, 248, 0.95);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: 0 18px 34px rgba(20, 41, 58, 0.12);
}

.store-refresh .store-rail-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #8f6b46 0%, #9e2330 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
}

.store-refresh .store-rail-text {
    color: var(--store-ink);
    font-size: 14px;
    font-weight: 600;
}

.store-mobile-dock {
    display: none;
}

.store-generated-video,
.store-generated-video img,
.store-generated-visual {
    width: 100%;
    height: 100%;
}

.store-generated-video {
    overflow: hidden;
    border-radius: inherit;
}

.store-generated-video img,
.store-generated-visual {
    display: block;
    object-fit: cover;
    background: linear-gradient(180deg, #fbf6ef 0%, #f0e5d6 100%);
}

.store-page-hero {
    position: relative;
    padding: 42px 0 20px;
}

.store-page-hero .wp {
    position: relative;
}

.store-page-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
    gap: 28px;
    align-items: stretch;
}

.store-page-hero-panel,
.store-page-hero-art,
.store-section-shell,
.store-intent-section .wp,
.store-contact-panel,
.store-refresh .m-details .wp,
.store-refresh .m-online.qm .wp,
.store-refresh .service-route-strip .wp,
.store-refresh .about-facts-section .wp,
.store-refresh .contact-facts-section .wp,
.store-refresh .about-entry-section .wp,
.store-refresh .contact-entry-section .wp,
.store-refresh .case-list-section .wp,
.store-refresh .path-page-panel .wp {
    border: 1px solid var(--store-line);
    border-radius: 28px;
    background: rgba(255, 253, 249, 0.96);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.05);
}

.store-page-hero-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 18px;
    padding: 42px 42px 38px;
}

.store-page-hero-art {
    min-height: 460px;
    overflow: hidden;
}

.store-page-hero-art img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.store-page-hero-eyebrow,
.store-section-heading strong {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(205, 161, 106, 0.12);
    color: #7d6241;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.store-page-hero h1,
.store-section-heading h2 {
    margin: 0;
    color: var(--store-ink);
    font-size: 44px;
    line-height: 1.14;
}

.store-page-hero p,
.store-section-heading p,
.store-intent-card p,
.store-quick-card p,
.store-trust-card p,
.store-step-card p,
.store-story-card p,
.store-check-card p,
.store-contact-list li {
    margin: 0;
    color: rgba(20, 41, 58, 0.78);
    font-size: 16px;
    line-height: 1.78;
}

.store-page-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.store-page-hero-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.store-page-hero-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(205, 161, 106, 0.12);
    color: var(--store-ink);
    font-size: 12px;
    font-weight: 700;
}

.store-page-hero-metrics,
.store-intent-grid,
.store-quick-grid,
.store-trust-grid,
.store-story-grid,
.store-check-grid,
.store-service-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.store-metric-card,
.store-intent-card,
.store-quick-card,
.store-trust-card,
.store-step-card,
.store-story-card,
.store-check-card {
    position: relative;
    min-height: 100%;
    padding: 22px 22px 24px;
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}

.store-metric-card strong,
.store-intent-card strong,
.store-quick-card strong,
.store-trust-card strong,
.store-step-card strong,
.store-story-card strong,
.store-check-card strong {
    display: block;
    margin-bottom: 10px;
    color: var(--store-ink);
    font-size: 18px;
    line-height: 1.45;
}

.store-metric-card span,
.store-intent-card span,
.store-quick-card span,
.store-trust-card span,
.store-step-card span,
.store-story-card span,
.store-check-card span {
    display: inline-block;
    margin-bottom: 12px;
    color: #8a6840;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.store-intent-section,
.store-shell-space {
    padding: 18px 0;
}

.store-intent-section .wp,
.store-section-shell,
.store-contact-panel {
    padding: 34px;
}

.store-section-heading {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.store-intent-card a,
.store-quick-card a,
.store-trust-card a,
.store-step-card a,
.store-story-card a,
.store-check-card a {
    display: inline-flex;
    align-items: center;
    margin-top: 16px;
    color: var(--store-blue);
    font-size: 14px;
    font-weight: 700;
}

.store-home-hybrid {
    background:
        radial-gradient(circle at top left, rgba(12, 84, 146, 0.08), transparent 26%),
        radial-gradient(circle at right top, rgba(217, 137, 43, 0.08), transparent 22%),
        linear-gradient(180deg, #f7fafc 0%, #ffffff 18%, #f6f9fc 100%);
}

.store-home-hybrid .store-page-hero {
    padding-top: 28px;
}

.store-home-hybrid .store-page-hero--hybrid .store-page-hero-panel {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(243, 248, 251, 0.94) 100%);
}

.store-home-hybrid .store-page-hero--hybrid .store-page-hero-panel h1 {
    max-width: 660px;
}

.store-home-hybrid .store-page-hero--hybrid .store-page-hero-art {
    display: grid;
    grid-template-rows: minmax(300px, 1fr) auto;
    gap: 16px;
    padding: 18px;
    background: linear-gradient(135deg, #0f172a 0%, #16304b 62%, #1d4f78 100%);
}

.store-home-hybrid .store-page-hero-mainvisual {
    overflow: hidden;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(126, 200, 255, 0.1) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

.store-home-hybrid .store-page-hero-mainvisual img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.store-home-hybrid .store-page-hero-quickgrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.store-home-hybrid .store-page-hero-quickcard {
    min-height: 100%;
    padding: 18px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(6px);
}

.store-home-hybrid .store-page-hero-quickcard span {
    display: inline-block;
    margin-bottom: 10px;
    color: rgba(215, 236, 255, 0.88);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.store-home-hybrid .store-page-hero-quickcard strong {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.4;
}

.store-home-hybrid .store-page-hero-quickcard p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 14px;
    line-height: 1.72;
}

.store-home-hybrid .store-page-hero-metrics {
    margin-top: 2px;
}

.store-home-hybrid .store-page-hero-metrics .store-metric-card {
    box-shadow: none;
}

.store-home-hybrid .home-section-head {
    gap: 10px;
}

.store-home-hybrid .home-section-intro {
    max-width: 700px;
}

.store-home-hybrid .home-case-grid .txt,
.store-home-hybrid .home-faq-grid .con .txt,
.store-home-hybrid .home-product-grid .txt {
    text-align: left;
}

.store-home-hybrid .row-a2.ls {
    padding: 10px 0 0;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line li {
    float: none;
    width: auto;
    margin: 0;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .con {
    display: flex;
    align-items: center;
    min-height: 128px;
    padding: 0 24px;
    border-radius: 26px;
    background: linear-gradient(180deg, #ffffff 0%, #f5f9fc 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: 0 18px 36px rgba(20, 41, 58, 0.08);
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .icon {
    width: 56px;
    height: 56px;
    margin-right: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: #edf4fa;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .icon img {
    max-width: 28px;
    max-height: 28px;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .txt {
    overflow: hidden;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .txt .tit {
    margin-bottom: 8px;
    color: var(--store-ink);
    font-size: 22px;
    line-height: 1.35;
}

.store-home-hybrid .row-a2.ls .ul-listl3.line .btn {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(20, 41, 58, 0.06);
    color: var(--store-ink);
    font-size: 13px;
    font-weight: 700;
}

.store-home-hybrid .footer {
    padding-top: 18px;
}

.store-home-hybrid .foot .contact .ll {
    min-width: 170px;
}

.store-inner-hybrid {
    background:
    radial-gradient(circle at top left, rgba(205, 161, 106, 0.14), transparent 24%),
    radial-gradient(circle at right top, rgba(159, 108, 66, 0.08), transparent 20%),
    linear-gradient(180deg, #faf6ef 0%, #fffdfa 18%, #f4ede3 100%);
}

.store-inner-hybrid .store-page-hero {
    padding-top: 28px;
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-panel {
    background: linear-gradient(180deg, rgba(255, 253, 249, 0.98) 0%, rgba(247, 241, 232, 0.94) 100%);
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-panel h1,
.store-inner-hybrid .store-page-hero--inner .store-page-hero-panel p {
    max-width: 660px;
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-art {
    padding: 22px;
    background: linear-gradient(145deg, #f1e3cf 0%, #e7d4bc 55%, #dac2a3 100%);
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-art img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    background:
        linear-gradient(180deg, rgba(255, 252, 247, 0.98) 0%, rgba(248, 240, 230, 0.94) 100%),
        repeating-linear-gradient(135deg, rgba(132, 101, 63, 0.06) 0, rgba(132, 101, 63, 0.06) 1px, transparent 1px, transparent 16px);
    border-radius: 24px;
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-art--photo {
    padding: 0;
    background: linear-gradient(180deg, #f5efe6 0%, #e8dfd3 100%);
}

.store-inner-hybrid .store-page-hero--inner .store-page-hero-art--photo img {
    object-fit: cover;
    background: none;
    border-radius: 0;
}

.store-inner-hybrid .store-page-hero-tags span {
    background: rgba(20, 41, 58, 0.06);
}

.store-inner-hybrid.about-page .g-boxl1,
.store-inner-hybrid.contact-page .g-boxl1 {
    display: grid;
    grid-template-columns: minmax(220px, 240px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.store-inner-hybrid.about-page .ul-leftl,
.store-inner-hybrid.contact-page .ul-leftl {
    float: none;
    width: auto;
    position: sticky;
    top: 96px;
    align-self: start;
    overflow: hidden;
    padding: 28px 0 18px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 253, 249, 0.98) 0%, rgba(247, 241, 232, 0.94) 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: 0 18px 36px rgba(20, 41, 58, 0.08);
}

.store-inner-hybrid.about-page .ul-leftl .tit,
.store-inner-hybrid.contact-page .ul-leftl .tit {
    margin: 0;
    padding: 0 24px 18px;
    color: var(--store-ink);
}

.store-inner-hybrid.about-page .ul-leftl ul,
.store-inner-hybrid.contact-page .ul-leftl ul {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0 14px;
}

.store-inner-hybrid.about-page .ul-leftl li,
.store-inner-hybrid.contact-page .ul-leftl li {
    margin: 0;
}

.store-inner-hybrid.about-page .ul-leftl .con,
.store-inner-hybrid.contact-page .ul-leftl .con {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 0 14px;
    border-radius: 16px;
    color: rgba(20, 41, 58, 0.82);
    transition: background-color 0.2s ease, color 0.2s ease;
}

.store-inner-hybrid.about-page .ul-leftl li.on .con,
.store-inner-hybrid.contact-page .ul-leftl li.on .con {
    background: #0f172a;
    color: #ffffff;
}

.store-inner-hybrid.about-page .g-ls,
.store-inner-hybrid.contact-page .g-ls {
    float: none;
    width: auto;
}

.store-home-template .ul-leftl {
    display: none !important;
}

.store-inner-hybrid.about-page .g-boxl1,
.store-inner-hybrid.contact-page .g-boxl1 {
    grid-template-columns: minmax(0, 1fr);
}

.store-inner-hybrid.about-page .m-details .wp,
.store-inner-hybrid.contact-page .m-details .wp,
.store-inner-hybrid.about-page .about-entry-section .wp,
.store-inner-hybrid.contact-page .contact-entry-section .wp,
.store-inner-hybrid.about-page .about-facts-section .wp,
.store-inner-hybrid.contact-page .contact-facts-section .wp,
.store-inner-hybrid.service-path-page .m-online.qm .wp,
.store-inner-hybrid.service-path-page .service-route-strip .wp,
.store-inner-hybrid.product-path-page .commercial-route-strip .wp,
.store-inner-hybrid.product-path-page .m-brand .wp,
.store-inner-hybrid.product-path-page .m-textq1 .wp,
.store-inner-hybrid.commercial-path-page .commercial-route-strip .wp,
.store-inner-hybrid.commercial-path-page .m-brand .wp,
.store-inner-hybrid.commercial-path-page .m-textq1 .wp {
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: 0 18px 36px rgba(20, 41, 58, 0.06);
}

.store-inner-hybrid.about-page .about-facts-section .wp,
.store-inner-hybrid.contact-page .contact-facts-section .wp,
.store-inner-hybrid.service-path-page .service-route-strip .wp,
.store-inner-hybrid.product-path-page .commercial-route-strip .wp,
.store-inner-hybrid.product-path-page .m-brand .wp,
.store-inner-hybrid.product-path-page .m-textq1 .wp,
.store-inner-hybrid.commercial-path-page .commercial-route-strip .wp,
.store-inner-hybrid.commercial-path-page .m-brand .wp,
.store-inner-hybrid.commercial-path-page .m-textq1 .wp {
    padding: 34px 38px 38px;
}

.store-inner-hybrid.service-path-page .m-online.qm .wp {
    padding: 36px 40px 40px;
}

.store-inner-hybrid.product-path-page .m-textq1 h1,
.store-inner-hybrid.product-path-page .m-brand h3,
.store-inner-hybrid.commercial-path-page .m-textq1 h1,
.store-inner-hybrid.commercial-path-page .m-brand h3,
.store-inner-hybrid.service-path-page .m-online.qm .g-titq2 h3 {
    color: var(--store-ink);
}

.store-inner-hybrid.product-path-page .m-textq1 .txt p,
.store-inner-hybrid.commercial-path-page .m-textq1 .txt p {
    color: #475569;
}

.store-inner-hybrid.product-path-page .m-textq1 .more,
.store-inner-hybrid.commercial-path-page .m-textq1 .more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 999px;
    background: #0f4c81;
    color: #ffffff;
}

.store-inner-hybrid .footer {
    padding: 24px 0 98px;
    background: transparent;
}

.store-inner-hybrid .foot {
    overflow: hidden;
    border-radius: 34px;
    background: linear-gradient(180deg, rgba(255, 252, 248, 0.98) 0%, rgba(243, 248, 251, 0.96) 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: var(--store-card-shadow);
}

.store-inner-hybrid .foot .top {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
    padding: 34px 36px 26px;
}

.store-inner-hybrid .foot .top .item {
    width: auto;
}

.store-inner-hybrid .foot .tit {
    color: var(--store-ink);
}

.store-inner-hybrid .foot .top a,
.store-inner-hybrid .copy p,
.store-inner-hybrid .foot .contact,
.store-inner-hybrid .foot .tel {
    color: rgba(20, 41, 58, 0.8);
}

.store-inner-hybrid .foot .contact {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin: 0;
    padding: 0 36px 28px;
    border: 0;
}

.store-inner-hybrid .foot .contact .ll {
    min-width: 170px;
    color: var(--store-ink);
    font-size: 22px;
    line-height: 1.4;
    font-weight: 700;
}

.store-inner-hybrid .foot .contact .rr {
    width: auto;
    margin: 0;
}

.store-inner-hybrid .copy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 8px 0;
}

.store-inner-hybrid .copy .ll img {
    height: 26px;
    width: auto;
    opacity: 0.82;
}

.store-contact-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
    gap: 22px;
    align-items: stretch;
}

.store-contact-map {
    overflow: hidden;
    border-radius: 28px;
    background: linear-gradient(180deg, #f6f1e8 0%, #ebf6fb 100%);
}

.store-contact-map img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.store-contact-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    justify-content: center;
}

.store-contact-list li {
    padding: 18px 20px;
    border-radius: 20px;
    background: rgba(20, 41, 58, 0.04);
}

.store-refresh .about-page .ul-leftl,
.store-refresh .contact-page .ul-leftl {
    display: none;
}

.store-refresh .about-page .g-boxl1,
.store-refresh .contact-page .g-boxl1 {
    margin: 0;
}

.store-refresh .about-page .g-ls,
.store-refresh .contact-page .g-ls {
    float: none;
    width: 100%;
}

.store-refresh .m-details .wp,
.store-refresh .m-online.qm .wp,
.store-refresh .service-route-strip .wp,
.store-refresh .about-facts-section .wp,
.store-refresh .contact-facts-section .wp,
.store-refresh .about-entry-section .wp,
.store-refresh .contact-entry-section .wp,
.store-refresh .case-list-section .wp,
.store-refresh .path-page-panel .wp {
    padding: 34px;
}

.store-refresh .m-details .title,
.store-refresh .m-online.qm .g-titq2 h3,
.store-refresh .g-titl2,
.store-refresh .case-module-head h3,
.store-refresh .path-page-panel h1 {
    color: var(--store-ink);
}

.store-refresh .about-facts-grid,
.store-refresh .contact-facts-grid,
.store-refresh .service-route-grid {
    gap: 18px;
}

.store-refresh .about-fact-card,
.store-refresh .contact-fact-card,
.store-refresh .service-route-card {
    min-height: 100%;
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f4f8fb 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: none;
}

.store-refresh .service-route-card strong,
.store-refresh .about-fact-card strong,
.store-refresh .contact-fact-card strong {
    color: var(--store-ink);
}

.store-refresh .ul-listl4 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.store-refresh .ul-listl4 > li {
    float: none;
    width: auto;
    margin: 0;
}

.store-refresh .ul-listl4 .con,
.store-refresh .case-module-card {
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(20, 41, 58, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 248, 251, 0.92) 100%);
    box-shadow: 0 18px 36px rgba(20, 41, 58, 0.08);
}

.store-refresh .ul-listl4 .pic,
.store-refresh .case-module-card .pic {
    height: 220px;
    overflow: hidden;
}

.store-refresh .ul-listl4 .pic img,
.store-refresh .case-module-card .pic img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.pic--editorial {
    position: relative;
    overflow: hidden;
}

.pic--editorial img {
    display: none !important;
}

.content-visual-card {
    position: relative;
    display: flex;
    min-height: 100%;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    padding: 28px;
    overflow: hidden;
    color: #fffaf2;
    background: linear-gradient(135deg, #194b59 0%, #3d7780 100%);
}

.content-visual-card::before,
.content-visual-card::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.content-visual-card::before {
    inset: 16px;
    border: 1px solid rgba(255, 255, 255, 0.18);
}

.content-visual-card::after {
    right: -18%;
    bottom: -30%;
    width: 64%;
    height: 76%;
    transform: rotate(-12deg);
    background: rgba(255, 255, 255, 0.12);
}

.content-visual-kicker,
.content-visual-card strong,
.content-visual-card em {
    position: relative;
    z-index: 1;
}

.content-visual-kicker {
    display: inline-flex;
    width: fit-content;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    color: rgba(255, 250, 242, 0.86);
    font-size: 12px;
    letter-spacing: 0.08em;
}

.content-visual-card strong {
    max-width: 9em;
    font-size: 28px;
    line-height: 1.22;
    font-weight: 700;
}

.content-visual-card em {
    display: block;
    max-width: 16em;
    color: rgba(255, 250, 242, 0.82);
    font-size: 14px;
    line-height: 1.6;
    font-style: normal;
}

.content-visual-card--family {
    background: linear-gradient(135deg, #7d2938 0%, #d08952 100%);
}

.content-visual-card--office {
    background: linear-gradient(135deg, #183f58 0%, #4e8b9a 100%);
}

.content-visual-card--retail {
    background: linear-gradient(135deg, #5d4630 0%, #b88a49 100%);
}

.content-visual-card--service {
    background: linear-gradient(135deg, #294b3d 0%, #75a06f 100%);
}

.content-visual-card--care {
    background: linear-gradient(135deg, #7d3e51 0%, #d29a86 100%);
}

.content-visual-card--knowledge {
    background: linear-gradient(135deg, #28516b 0%, #83a9b8 100%);
}

.content-visual-card--article {
    background: linear-gradient(135deg, #263f4b 0%, #9a9f7f 100%);
}

.content-visual-card--video {
    background: linear-gradient(135deg, #4c324e 0%, #9a6f8c 100%);
}

.store-refresh .ul-listl4 .txt {
    padding: 24px;
}

.store-refresh .ul-listl4 .txt .tit {
    color: var(--store-ink);
}

.store-refresh .case-module-grid {
    gap: 18px;
}

.store-refresh .footer {
    padding: 24px 0 98px;
    background: transparent;
}

.store-refresh .foot {
    overflow: hidden;
    border-radius: 34px;
    background: linear-gradient(180deg, rgba(255, 252, 248, 0.98) 0%, rgba(243, 248, 251, 0.96) 100%);
    border: 1px solid rgba(20, 41, 58, 0.08);
    box-shadow: var(--store-card-shadow);
}

.store-refresh .foot .top {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
    padding: 34px 36px 26px;
}

.store-refresh .foot .top .item {
    width: auto;
}

.store-refresh .foot .tit {
    color: var(--store-ink);
}

.store-refresh .foot .top a,
.store-refresh .copy p,
.store-refresh .foot .contact,
.store-refresh .foot .tel,
.store-refresh .foot .contact .ll {
    color: rgba(20, 41, 58, 0.8);
}

.store-refresh .foot .top a:hover {
    color: var(--store-red);
}

.store-refresh .foot .contact {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin: 0;
    padding: 0 36px 28px;
    border: 0;
}

.store-refresh .foot .contact .ll {
    min-width: 220px;
    font-size: 22px;
    line-height: 1.4;
    font-weight: 700;
}

.store-refresh .foot .contact .rr {
    width: auto;
    margin: 0;
}

.store-refresh .copy {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 20px 8px 0;
    text-align: center;
    flex-direction: column;
}

.store-refresh .copy .ll img {
    height: 26px;
    width: auto;
    opacity: 0.82;
}

.store-refresh .copy .ll {
    display: none;
}

.store-refresh .copy .rr {
    float: none;
    width: 100%;
    color: rgba(20, 41, 58, 0.64);
}

.store-footer-copyline,
.store-footer-note,
.store-legal-footer {
    margin: 0;
    text-align: center;
}

.store-footer-copyline {
    color: rgba(20, 41, 58, 0.76);
    font-size: 14px;
    line-height: 1.8;
}

.store-footer-note {
    color: rgba(20, 41, 58, 0.58);
    font-size: 13px;
    line-height: 1.8;
}

.store-legal-footer {
    position: static;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 18px;
    color: rgba(20, 41, 58, 0.64);
    font-size: 13px;
    line-height: 1.8;
}

.store-legal-footer a {
    color: inherit;
    text-decoration: none;
}

.store-legal-footer a:hover {
    color: var(--store-red);
}

.store-refresh .store-floating-home {
    right: 18px;
    bottom: 18px;
    border: 1px solid rgba(20, 41, 58, 0.08);
    background: rgba(255, 252, 248, 0.96);
    color: var(--store-ink);
}

.store-refresh .detail-mini-header .wp,
.store-refresh .article-main-panel,
.store-refresh .article-bottom-cta,
.store-refresh .article-side-card,
.store-refresh .article-hero-panel,
.store-refresh .detail-mini-footer .wp {
    border-color: rgba(20, 41, 58, 0.08);
    box-shadow: 0 18px 36px rgba(20, 41, 58, 0.08);
}

@media screen and (max-width: 1180px) {
    body.store-refresh {
        padding: 0;
    }

    .store-refresh .header {
        position: sticky;
        top: 0;
        display: flex;
        align-items: center;
        gap: 18px;
        height: auto;
        min-height: 64px;
        text-align: left;
        padding-left: 18px;
        padding-right: 18px;
        background: rgba(255, 252, 248, 0.98);
        backdrop-filter: none;
        box-shadow: 0 10px 22px rgba(20, 41, 58, 0.08);
    }

    .store-refresh .header .logo {
        flex: 0 0 auto;
        position: relative;
        left: auto;
        top: auto;
        transform: none;
        height: auto;
        line-height: 1;
        z-index: 2;
    }

    .store-refresh .header .logo img {
        height: 28px;
    }

    .store-refresh .header .hd-r {
        position: static;
        top: auto;
        left: auto;
        bottom: auto;
        display: flex !important;
        flex: 1 1 auto;
        width: auto;
        max-width: none;
        padding-bottom: 0;
        overflow: visible;
        background: transparent;
        transform: none;
        justify-content: center;
        z-index: 3;
    }

    .store-topbar .wp,
    .store-page-hero-grid,
    .store-contact-panel,
    .store-refresh .foot .contact {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }

    .store-refresh .header .store-header-shell {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
    }

    .store-refresh .header .hd-r,
    .store-refresh .header .hd-r .rbox {
        width: auto;
        flex-wrap: nowrap;
    }

    .store-refresh .header .hd-r .rbox {
        align-items: center;
        gap: 12px;
    }

    .store-refresh .nav {
        float: none;
        width: auto;
        overflow: visible;
        padding: 0;
        padding-bottom: 0;
        text-align: left;
    }

    .store-refresh .nav > ul {
        justify-content: center;
        gap: 8px;
    }

    .store-refresh .nav li {
        display: block;
        float: none;
        overflow: visible;
        text-align: left;
    }

    .store-refresh .nav .v1 {
        height: auto;
        line-height: 1;
        padding: 0 14px;
        overflow: visible;
        font-size: 13px;
    }

    .store-refresh .nav li .v1:before,
    .store-refresh .nav li.on .v1:after {
        display: none !important;
    }

    .store-header-cta {
        gap: 10px;
    }

    .store-refresh .foot .top,
    .store-page-hero-metrics,
    .store-intent-grid,
    .store-quick-grid,
    .store-trust-grid,
    .store-story-grid,
    .store-check-grid,
    .store-service-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .store-refresh .ul-listl4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .store-home-hybrid .store-page-hero-quickgrid,
    .store-home-hybrid .row-a2.ls .ul-listl3.line {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .store-inner-hybrid .foot .top {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .store-inner-hybrid .foot .contact,
    .store-inner-hybrid.about-page .g-boxl1,
    .store-inner-hybrid.contact-page .g-boxl1 {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }

    .store-inner-hybrid.about-page .ul-leftl,
    .store-inner-hybrid.contact-page .ul-leftl {
        position: static;
    }
}

@media screen and (max-width: 767px) {
    .store-topbar-copy {
        display: none;
    }

    body.store-refresh {
        padding: 0 0 44px;
    }

    .store-topbar .wp,
    .store-topbar-meta {
        flex-wrap: wrap;
        gap: 10px 16px;
    }

    .store-refresh .header {
        min-height: 52px;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .store-refresh .header .logo img {
        height: 30px;
    }

    .store-header-cta,
    .store-refresh .g-right {
        display: none;
    }

    .store-page-hero {
        padding-top: 18px;
    }

    .store-page-hero-panel,
    .store-intent-section .wp,
    .store-section-shell,
    .store-contact-panel,
    .store-refresh .m-details .wp,
    .store-refresh .m-online.qm .wp,
    .store-refresh .service-route-strip .wp,
    .store-refresh .about-facts-section .wp,
    .store-refresh .contact-facts-section .wp,
    .store-refresh .about-entry-section .wp,
    .store-refresh .contact-entry-section .wp,
    .store-refresh .case-list-section .wp,
    .store-refresh .path-page-panel .wp {
        padding: 24px 20px;
        border-radius: 24px;
    }

    .store-page-hero h1,
    .store-section-heading h2 {
        font-size: 32px;
    }

    .store-page-hero p,
    .store-section-heading p,
    .store-intent-card p,
    .store-quick-card p,
    .store-trust-card p,
    .store-step-card p,
    .store-story-card p,
    .store-check-card p,
    .store-contact-list li {
        font-size: 15px;
        line-height: 1.75;
    }

    .store-page-hero-art {
        min-height: 300px;
    }

    .store-home-hybrid .store-page-hero--hybrid .store-page-hero-art {
        grid-template-rows: auto;
    }

    .store-home-hybrid .store-page-hero-mainvisual {
        min-height: 260px;
    }

    .store-page-hero-metrics,
    .store-intent-grid,
    .store-quick-grid,
    .store-trust-grid,
    .store-story-grid,
    .store-check-grid,
    .store-service-steps,
    .store-refresh .foot .top,
    .store-refresh .ul-listl4 {
        grid-template-columns: 1fr;
    }

    .store-home-hybrid .store-page-hero-quickgrid,
    .store-home-hybrid .row-a2.ls .ul-listl3.line {
        grid-template-columns: 1fr;
    }

    .store-inner-hybrid .foot .top {
        grid-template-columns: 1fr;
    }

    .store-refresh .foot .top,
    .store-refresh .foot .contact {
        padding-left: 20px;
        padding-right: 20px;
    }

    .store-inner-hybrid .foot .top,
    .store-inner-hybrid .foot .contact,
    .store-inner-hybrid.about-page .about-facts-section .wp,
    .store-inner-hybrid.contact-page .contact-facts-section .wp,
    .store-inner-hybrid.service-path-page .m-online.qm .wp,
    .store-inner-hybrid.service-path-page .service-route-strip .wp,
    .store-inner-hybrid.product-path-page .commercial-route-strip .wp,
    .store-inner-hybrid.product-path-page .m-brand .wp,
    .store-inner-hybrid.product-path-page .m-textq1 .wp,
    .store-inner-hybrid.commercial-path-page .commercial-route-strip .wp,
    .store-inner-hybrid.commercial-path-page .m-brand .wp,
    .store-inner-hybrid.commercial-path-page .m-textq1 .wp {
        padding-left: 20px;
        padding-right: 20px;
    }

    .store-refresh .footer {
        padding-bottom: 90px;
    }

    .store-legal-footer {
        gap: 2px;
        flex-direction: column;
        font-size: 12px;
    }

    .store-inner-hybrid .footer {
        padding-bottom: 90px;
    }

    .store-home-hybrid .store-page-hero-tags span {
        min-height: 30px;
        padding: 0 12px;
    }

    .store-inner-hybrid .store-page-hero-tags span {
        min-height: 30px;
        padding: 0 12px;
    }

    .store-home-hybrid .row-a2.ls .ul-listl3.line .con {
        min-height: 0;
        padding: 18px 20px;
    }

    .store-home-hybrid .row-a2.ls .ul-listl3.line .txt .tit {
        font-size: 20px;
    }

    .store-mobile-dock {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 12px;
        z-index: 18;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        padding: 10px;
        border-radius: 22px;
        background: rgba(255, 251, 245, 0.98);
        border: 1px solid rgba(20, 41, 58, 0.08);
        box-shadow: 0 12px 24px rgba(20, 41, 58, 0.12);
        backdrop-filter: none;
    }

    .store-mobile-dock-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        border-radius: 16px;
        background: rgba(20, 41, 58, 0.06);
        color: var(--store-ink);
        font-size: 13px;
        font-weight: 700;
    }

    .store-mobile-dock-link-primary {
        min-height: 44px;
    }

    .store-floating-home {
        display: none;
    }
}

