:root {
    --cr-brown: #d5b288;
    --cr-dark: #222;
    --cr-soft: #f8f3ee;
}

body {
    color: #333;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    background: #fff;
}

.container {
    width: min(100% - 40px, 1320px);
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
}

.cr-topbar {
    background: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.cr-header {
    background: #fff;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}

.cr-header .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 88px;
    gap: 26px;
}

.cr-logo img {
    max-height: 72px;
    width: auto;
    display: block;
}

.cr-nav {
    display: flex;
    align-items: center;
    gap: 26px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.cr-nav a {
    color: #222;
    font-weight: 600;
    text-transform: none; /* client 7.14 #1: title-case nav (Home, About Us…), keep FAQ acronym */
    font-size: 14px;
}

.cr-nav a:hover {
    color: var(--cr-brown);
    text-decoration: none;
}

.cr-contact-strip {
    display: flex;
    justify-content: space-between;
    gap: 28px;
    padding: 10px 0;
    font-size: 13px;
}

.cr-contact-strip a {
    color: #333;
}

.cr-topbar-left,
.cr-topbar-right {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.cr-topbar-left a {
    color: #73442d;
    font-weight: 700;
}

.cr-header-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.cr-header-quote {
    background: var(--cr-brown);
    color: #fff;
    padding: 10px 16px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

.cr-header-quote:hover {
    color: #fff;
    text-decoration: none;
    background: #bd9665;
}

.cr-hero {
    position: relative;
    min-height: 690px;
    display: flex;
    align-items: center;
    color: #fff;
    overflow: hidden;
    background: #111;
}

.cr-hero video,
.cr-hero .cr-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .72;
}

.cr-hero-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
}

.cr-eyebrow {
    color: var(--cr-brown);
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
}

.cr-hero h1 {
    font-family: "DM Serif Display", serif;
    font-size: 64px;
    line-height: 1.05;
    margin: 18px 0;
}

.cr-hero p {
    font-size: 18px;
    line-height: 1.8;
}

.cr-btn {
    display: inline-block;
    background: var(--cr-brown);
    color: #fff;
    padding: 14px 34px;
    margin-top: 22px;
    text-transform: uppercase;
    font-weight: 700;
}

.cr-btn:hover {
    color: #fff;
    text-decoration: none;
    background: #bd9665;
}

.cr-btn-ghost {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, .75);
    margin-left: 12px;
}

.cr-btn-ghost:hover {
    background: #fff;
    color: #222;
}

.cr-section {
    padding: 70px 0;
    position: relative;
    clear: both;
    overflow: hidden;
}

.cr-section-title {
    text-align: center;
    margin-bottom: 42px;
}

.cr-left-title {
    text-align: left;
}

.cr-section-title h2 {
    font-family: "DM Serif Display", serif;
    font-size: 42px;
    margin: 8px 0;
}

.cr-cats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 1220px;
    margin: 0 auto;
}

.cr-cat {
    min-height: 155px;
    padding: 22px;
    background: var(--cr-soft);
    display: flex;
    align-items: flex-end;
    color: #222;
    font-weight: 700;
    border-bottom: 3px solid var(--cr-brown);
}

.cr-cat-image {
    min-height: 230px;
    color: #fff;
    font-size: 20px;
    position: relative;
    overflow: hidden;
    padding: 0;
    border-bottom: 4px solid var(--cr-brown);
}

.cr-cat-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(rgba(0, 0, 0, .06), rgba(0, 0, 0, .5));
    z-index: 1;
}

.cr-cat-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
    display: block;
}

.cr-cat-image span {
    position: relative;
    z-index: 2;
    padding: 22px;
}

.cr-cat-image:hover {
    color: #fff;
    text-decoration: none;
    transform: translateY(-3px);
    transition: transform .25s ease;
}

.cr-products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px 24px;
    align-items: stretch;
}

.cr-products-spaced {
    margin-top: 42px;
}

.cr-featured-products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 1220px;
    margin: 0 auto;
}

.cr-featured-products .cr-product-card img {
    height: 360px !important;
    object-fit: cover;
}

.cr-featured-products .cr-product-card h3 {
    min-height: 58px;
    font-size: 18px;
}

.cr-featured-products .cr-product-card p {
    padding-bottom: 24px;
}

.cr-product-card {
    background: #fff;
    border: 1px solid #ececec;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    overflow: hidden;
    transition: transform .22s ease, box-shadow .22s ease;
}

.cr-product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .08);
}

.cr-product-card a {
    display: flex;
    flex-direction: column;
    color: inherit;
}

.cr-product-card img {
    display: block;
    width: 100%;
    height: 330px !important;
    max-height: none;
    object-fit: cover;
    object-position: center;
    background: #f6f2ee;
}

.cr-product-card h3 {
    font-size: 16px;
    line-height: 1.45;
    min-height: 70px;
    margin: 0;
    padding: 16px 16px 6px;
    color: #222;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.cr-product-card a:hover {
    text-decoration: none;
}

.cr-product-card p {
    color: #777;
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    padding: 0 16px 18px;
}

.cr-checks {
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
    margin: 22px 0;
}

.cr-checks li::before {
    content: "✓";
    color: var(--cr-brown);
    font-weight: 700;
    margin-right: 8px;
}

.cr-mini-title {
    font-size: 18px;
    margin: 18px 0 8px;
    color: #222;
}

.cr-compact-checks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 16px;
    margin: 10px 0 18px;
}

.cr-content {
    font-size: 16px;
    line-height: 1.8;
}

.cr-content h2,
.cr-about-grid h2,
.cr-custom-grid h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 38px;
    margin: 0 0 18px;
    max-width: 760px;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}

.cr-about-page-layout {
    display: grid;
    grid-template-columns: minmax(420px, .92fr) minmax(0, 1.08fr);
    gap: 56px;
    align-items: start;
}

.cr-about-page-copy {
    min-width: 0;
}

.cr-about-page-copy h2 {
    font-family: "DM Serif Display", Georgia, serif;
    color: #73442d;
    font-size: 44px;
    line-height: 1.12;
    margin: 10px 0 22px;
}

.cr-about-page-copy p {
    font-size: 17px;
    line-height: 1.85;
    color: #444;
}

.cr-about-lead {
    font-size: 19px !important;
    color: #222 !important;
}

.cr-about-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin: 30px 0 24px;
}

.cr-about-info-card {
    background: var(--cr-soft);
    border-left: 4px solid var(--cr-brown);
    padding: 22px 24px;
}

.cr-about-info-card h3 {
    margin: 0 0 14px;
    font-size: 19px;
    color: #222;
}

.cr-about-info-card .cr-checks {
    margin: 0;
    gap: 8px;
}

.cr-about-info-card .cr-checks li {
    font-size: 15px;
}

.cr-about-closing {
    font-weight: 700;
    color: #222 !important;
}

.cr-about-collage {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    position: sticky;
    top: 120px;
}

.cr-about-collage img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    display: block;
    box-shadow: 0 12px 34px rgba(0,0,0,.08);
}

.cr-about-collage .cr-about-img-main {
    grid-column: 1 / -1;
    height: 360px;
}

.cr-product-detail {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 46px;
    align-items: start;
}

.cr-product-media,
.cr-product-summary {
    min-width: 0;
}

.cr-product-main-image {
    margin: 0;
    background: #f8f4ef;
    padding: 16px;
}

.cr-gallery-open,
.cr-product-thumb {
    appearance: none;
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    text-align: inherit;
    cursor: zoom-in;
}

.cr-product-main-image .cr-gallery-open {
    width: 100%;
    position: relative;
    display: block;
}

.cr-product-main-image .cr-gallery-open span {
    position: absolute;
    right: 18px;
    bottom: 18px;
    background: rgba(0, 0, 0, .68);
    color: #fff;
    padding: 8px 12px;
    font-size: 12px;
    letter-spacing: .4px;
    text-transform: uppercase;
}

.cr-product-main-image img,
.cr-product-detail img {
    width: 100%;
    height: auto;
    display: block;
}

.cr-product-thumbs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.cr-product-thumb {
    border: 2px solid transparent;
    background: #f8f4ef;
}

.cr-product-thumb.is-active {
    border-color: var(--cr-brown);
}

.cr-product-thumbs img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    display: block;
}

.cr-product-summary {
    background: #fff;
    padding: 10px 0 0;
}

.cr-product-summary h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 36px;
    color: #73442d;
    margin: 26px 0 12px;
}

.cr-product-service-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 20px;
}

.cr-product-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: 6px 0 26px;
}

.cr-btn-ghost-dark {
    background: transparent;
    color: #73442d;
    border: 1px solid var(--cr-brown);
}

.cr-btn-ghost-dark:hover {
    color: #fff;
    background: #73442d;
}

.cr-product-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
    margin: 22px 0;
}

.cr-product-specs div {
    padding: 14px 16px;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.cr-product-specs strong,
.cr-product-specs span {
    display: block;
}

.cr-product-specs strong {
    color: #222;
    margin-bottom: 6px;
}

.cr-product-specs span {
    color: #666;
    line-height: 1.45;
}

.cr-product-inquiry-card {
    background: #fffaf2;
    border-left: 4px solid var(--cr-brown);
    padding: 22px;
    margin: 24px 0;
}

.cr-product-inquiry-card h3 {
    margin: 0 0 10px;
    color: #73442d;
}

.cr-product-process-section {
    background: #fff;
}

.cr-detail-process {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.cr-detail-process article {
    background: #fffaf2;
    padding: 28px 24px;
    border-top: 4px solid var(--cr-brown);
}

.cr-detail-process span {
    color: var(--cr-brown);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 32px;
    font-weight: 700;
}

.cr-detail-process h3 {
    margin: 12px 0 10px;
}

.cr-product-rich-section {
    background: #fffaf2;
}

.cr-detail-masonry {
    column-count: 3;
    column-gap: 22px;
    margin-top: 42px;
}

.cr-detail-masonry figure {
    break-inside: avoid;
    margin: 0 0 22px;
    background: #fff;
    padding: 12px;
    box-shadow: 0 12px 34px rgba(0,0,0,.07);
}

.cr-detail-masonry .cr-gallery-open {
    width: 100%;
    display: block;
}

.cr-detail-masonry img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .25s ease, opacity .25s ease;
}

.cr-detail-masonry figure:hover img {
    opacity: .92;
    transform: scale(1.015);
}

.cr-product-copy-section {
    background: #fff;
}

.cr-product-copy-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
}

.cr-product-copy-card {
    background: #fffaf2;
    border-left: 4px solid var(--cr-brown);
    padding: 28px;
}

.cr-product-copy-card h3 {
    margin: 0 0 18px;
    color: #73442d;
    font-size: 22px;
}

.cr-product-copy-card .cr-content {
    max-height: 720px;
    overflow: auto;
    padding-right: 8px;
    color: #444;
}

.cr-lightbox {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .84);
    padding: 32px;
}

.cr-lightbox.is-open {
    display: flex;
}

.cr-lightbox-img {
    max-width: min(1180px, 92vw);
    max-height: 88vh;
    object-fit: contain;
    background: #fff;
}

.cr-lightbox-close,
.cr-lightbox-prev,
.cr-lightbox-next {
    position: absolute;
    border: 0;
    background: rgba(255, 255, 255, .9);
    color: #222;
    display: grid;
    place-items: center;
    cursor: pointer;
}

.cr-lightbox-close {
    right: 26px;
    top: 22px;
    width: 46px;
    height: 46px;
    font-size: 34px;
}

.cr-lightbox-prev,
.cr-lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    font-size: 42px;
}

.cr-lightbox-prev {
    left: 26px;
}

.cr-lightbox-next {
    right: 26px;
}

.cr-blog-preview {
    background: var(--cr-soft);
    padding: 28px;
    border-left: 4px solid var(--cr-brown);
}

.cr-blog-page-intro {
    max-width: 920px;
    margin: 0 auto 48px;
    text-align: center;
}

.cr-blog-page-intro h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 52px;
    color: #73442d;
    margin: 10px 0 14px;
}

.cr-blog-page-intro p {
    color: #6c6c6c;
    font-size: 20px;
    line-height: 1.6;
}

.cr-blog-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 34px;
}

.cr-blog-card {
    background: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .08);
    overflow: hidden;
}

.cr-blog-card-image {
    display: block;
    position: relative;
    height: 280px;
    overflow: hidden;
    background: #f8f3ee;
}

.cr-blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}

.cr-blog-card:hover .cr-blog-card-image img {
    transform: scale(1.04);
}

.cr-blog-date {
    position: absolute;
    left: 24px;
    top: 24px;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: #fff;
    color: #73442d;
    display: grid;
    place-items: center;
    text-align: center;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
}

.cr-blog-date strong,
.cr-blog-date em {
    display: block;
    font-style: normal;
}

.cr-blog-date strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    line-height: 1;
}

.cr-blog-date em {
    border-top: 1px solid #ddd;
    padding-top: 6px;
    margin-top: 4px;
}

.cr-blog-card-body {
    padding: 30px 34px 34px;
}

.cr-blog-card-body h3 {
    margin: 0 0 16px;
    font-size: 24px;
    line-height: 1.3;
}

.cr-blog-card-body h3 a {
    color: #111;
    text-decoration: none;
}

.cr-blog-card-body p {
    color: #666;
    font-size: 17px;
    line-height: 1.65;
    margin: 0 0 22px;
}

.cr-blog-read {
    color: #73442d;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.cr-about {
    background: var(--cr-soft);
}

.cr-about-grid,
.cr-custom-grid {
    display: grid;
    grid-template-columns: minmax(420px, .9fr) minmax(0, 1.1fr);
    gap: 52px;
    align-items: center;
    width: 100%;
    min-height: 0;
}

.cr-about-grid > div,
.cr-custom-grid > div {
    min-width: 0;
}

.cr-about img,
.cr-custom-grid img {
    width: 100%;
    height: 430px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.cr-about-grid img {
    aspect-ratio: 16 / 10;
}

.cr-packaging-section {
    background: #fffaf2;
    padding-top: 78px;
    padding-bottom: 78px;
}

.cr-company-photo-section {
    background: #fff;
    padding: 78px 0;
}

.cr-company-photo-layout {
    display: grid;
    grid-template-columns: minmax(330px, .72fr) minmax(0, 1.28fr);
    gap: 46px;
    align-items: center;
}

.cr-company-photo-layout h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 44px;
    line-height: 1.15;
    color: #73442d;
    margin: 10px 0 18px;
}

.cr-company-photo-layout p {
    color: #555;
    font-size: 17px;
    line-height: 1.75;
}

.cr-company-photo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.cr-company-photo-grid img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    display: block;
    box-shadow: 0 14px 34px rgba(0,0,0,.08);
}

.cr-company-photo-grid .cr-company-photo-wide {
    grid-column: 1 / -1;
    height: 330px;
}

.cr-packaging-layout {
    display: grid;
    grid-template-columns: minmax(390px, .78fr) minmax(0, 1.22fr);
    gap: 46px;
    align-items: center;
}

.cr-packaging-copy h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 42px;
    line-height: 1.15;
    color: #2c2c2c;
    margin: 10px 0 18px;
}

.cr-packaging-copy > p {
    color: #555;
    font-size: 17px;
    line-height: 1.75;
    margin: 0 0 24px;
}

.cr-packaging-options {
    display: grid;
    gap: 14px;
}

.cr-packaging-options article {
    background: #fff;
    border-left: 4px solid var(--cr-brown);
    padding: 18px 20px;
    box-shadow: 0 12px 30px rgba(92, 55, 35, .08);
}

.cr-packaging-options h3 {
    margin: 0 0 7px;
    color: #222;
    font-size: 18px;
}

.cr-packaging-options p {
    margin: 0;
    color: #666;
    font-size: 15px;
    line-height: 1.55;
}

.cr-packaging-image {
    margin: 0;
    background: #fff;
    padding: 18px;
    box-shadow: 0 18px 44px rgba(92, 55, 35, .11);
}

.cr-packaging-image img {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: contain;
    display: block;
}

.cr-lead {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    color: #222;
    margin: 0 0 16px;
}

.cr-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.cr-feature {
    text-align: center;
    padding: 26px 18px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}

.cr-about-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
    gap: 54px;
    align-items: center;
}

.cr-about-video {
    position: relative;
    overflow: hidden;
    background: #111;
}

.cr-about-video img,
.cr-about-video video {
    width: 100%;
    height: 460px;
    object-fit: cover;
    display: block;
}

.cr-about-video img {
    opacity: .86;
}

.cr-play {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 76px;
    height: 76px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--cr-brown);
    color: #fff;
    font-size: 28px;
    text-decoration: none;
}

.cr-about-copy h2,
.cr-service-layout h2,
.cr-message-panel h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 40px;
    line-height: 1.15;
    margin: 10px 0 18px;
}

.cr-about-copy p,
.cr-service-layout p,
.cr-message-panel p {
    font-size: 16px;
    line-height: 1.8;
}

.cr-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin: 26px 0 10px;
}

.cr-stats div {
    border-left: 3px solid var(--cr-brown);
    padding-left: 14px;
}

.cr-stats strong {
    display: block;
    font-size: 28px;
    color: #222;
}

.cr-stats span {
    color: #777;
    font-size: 13px;
    text-transform: uppercase;
}

.cr-factory-grid {
    display: grid;
    grid-template-columns: 1.3fr .9fr .9fr;
    gap: 20px;
}

.cr-process-section {
    padding: 72px 0 62px;
    background: #fff;
    overflow: hidden;
}

.cr-title-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 42px;
}

.cr-title-row h2,
.cr-certificate-section h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 52px;
    line-height: 1;
    color: #73442d;
    margin: 0;
}

.cr-slider-arrows,
.cr-cert-arrows {
    display: flex;
    gap: 14px;
}

.cr-slider-arrows span,
.cr-cert-arrows span {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eee;
    color: #333;
    font-size: 36px;
    line-height: 1;
}

.cr-slider-arrows span:last-child,
.cr-cert-arrows span:last-child {
    background: var(--cr-brown);
    color: #fff;
}

.cr-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 34px;
}

.cr-process-card img {
    width: 100%;
    height: 285px;
    object-fit: cover;
    display: block;
}

.cr-process-card h3 {
    text-align: center;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
    margin: 18px 0 0;
    color: #282828;
}

.cr-certificate-section {
    padding: 72px 0 86px;
    background:
        linear-gradient(rgba(255,255,255,.9), rgba(255,255,255,.95)),
        repeating-linear-gradient(0deg, #fff 0, #fff 18px, #f7f4ef 19px, #fff 36px);
    position: relative;
    overflow: hidden;
}

.cr-title-line {
    width: 52px;
    height: 5px;
    background: #73442d;
    margin: 20px auto 28px;
}

.cr-certificate-section .cr-section-title p {
    max-width: 900px;
    margin: 0 auto;
    font-size: 22px;
    color: #777;
    line-height: 1.5;
}

.cr-certificate-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 340px));
    gap: 40px;
    max-width: 1120px;
    margin: 72px auto 0;
    justify-content: center;
}

.cr-certificate-grid figure {
    margin: 0;
    background: #fff;
    padding: 16px;
    box-shadow: 0 10px 28px rgba(0,0,0,.06);
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease;
}

.cr-certificate-grid figure:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 44px rgba(0,0,0,.16);
}

.cr-certificate-grid img {
    width: 100%;
    height: 360px;
    object-fit: contain;
    display: block;
    transition: transform .45s ease;
}

.cr-certificate-grid figure:hover img {
    transform: scale(1.05);
}

.cr-cert-arrows {
    justify-content: space-between;
    max-width: 1320px;
    margin: -210px auto 170px;
    pointer-events: none;
}

.cr-fixed-contact {
    position: fixed;
    right: 0;
    top: 21vh;
    z-index: 1200;
    display: grid;
}

.cr-fixed-contact a {
    width: 70px;
    height: 70px;
    display: grid;
    place-items: center;
    background: var(--cr-brown);
    color: #fff;
    border-bottom: 1px solid rgba(255,255,255,.5);
    font-size: 29px;
    text-decoration: none;
}

.cr-factory-grid figure {
    margin: 0;
    overflow: hidden;
    background: #f6f2ee;
}

.cr-factory-grid figure:first-child {
    grid-row: span 2;
}

.cr-factory-grid img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    display: block;
    transition: transform .4s ease;
}

.cr-factory-grid figure:first-child img {
    height: 540px;
}

.cr-factory-grid figure:hover img {
    transform: scale(1.04);
}

.cr-soft-band {
    background: var(--cr-soft);
}

.cr-service-layout {
    display: grid;
    grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr);
    gap: 44px;
    align-items: start;
}

.cr-service-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.cr-service-card,
.cr-news-card,
.cr-message-panel {
    background: #fff;
    padding: 28px;
    border: 1px solid rgba(0, 0, 0, .06);
}

.cr-service-card h3,
.cr-news-card h3 {
    margin: 0 0 12px;
    font-size: 20px;
    color: #222;
}

.cr-news-section {
    padding: 84px 0 78px;
    background: #fff;
}

.cr-news-section .cr-section-title h2 {
    color: #73442d;
    font-size: 58px;
}

.cr-news-section .cr-section-title p {
    font-size: 25px;
    color: #6f6f6f;
    max-width: 980px;
    margin: 0 auto;
}

.cr-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 38px;
    margin-top: 54px;
}

.cr-news-card {
    background: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .08);
    overflow: hidden;
    position: relative;
}

.cr-news-image {
    position: relative;
    height: 350px;
    overflow: hidden;
    background: #f2eee9;
}

.cr-news-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cr-news-date {
    position: absolute;
    left: 30px;
    top: 30px;
    width: 118px;
    height: 118px;
    border-radius: 50%;
    background: #fff;
    display: grid;
    place-items: center;
    text-align: center;
    color: #73442d;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
}

.cr-news-date strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    line-height: 1;
}

.cr-news-date span {
    display: block;
    color: #73442d;
    font-size: 25px;
    border-top: 1px solid #ddd;
    padding-top: 10px;
    margin-top: 8px;
}

.cr-news-body {
    padding: 36px 44px 70px;
    min-height: 380px;
    position: relative;
}

.cr-news-body h3 {
    margin: 0 0 22px;
    font-size: 28px;
    line-height: 1.25;
    color: #000;
    font-weight: 700;
}

.cr-news-body p {
    color: #686868;
    font-size: 25px;
    line-height: 1.7;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.cr-news-more {
    position: absolute;
    right: 42px;
    bottom: 32px;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--cr-brown);
    color: #fff;
    display: grid;
    place-items: center;
    text-decoration: none;
    font-size: 44px;
    line-height: 1;
}

.cr-form {
    display: grid;
    gap: 14px;
}

.cr-form input,
.cr-form textarea {
    width: 100%;
    border: 1px solid #ddd;
    padding: 13px 15px;
}

.cr-form textarea {
    min-height: 130px;
}

.cr-form button {
    border: 0;
    background: var(--cr-brown);
    color: #fff;
    padding: 14px 28px;
    font-weight: 700;
}

.cr-message-section {
    padding: 88px 0;
    background: #fff;
}

.cr-message-layout {
    display: grid;
    grid-template-columns: minmax(360px, .85fr) minmax(0, 1.15fr);
    gap: 72px;
    align-items: stretch;
}

.cr-contact-panel,
.cr-message-panel {
    min-width: 0;
}

.cr-contact-panel h2,
.cr-message-panel h2 {
    font-family: "DM Serif Display", Georgia, serif;
    font-size: 48px;
    color: #73442d;
    margin: 0;
}

.cr-left-line {
    margin: 16px 0 28px;
}

.cr-contact-list {
    display: grid;
    gap: 28px;
    margin-top: 34px;
}

.cr-contact-item {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 22px;
    align-items: center;
}

.cr-contact-icon {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    background: #f8f4ef;
    display: grid;
    place-items: center;
    color: #666;
    font-size: 34px;
}

.cr-contact-item strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    color: #111;
    margin-bottom: 10px;
}

.cr-contact-item a,
.cr-contact-item p {
    display: block;
    color: #666;
    font-size: 22px;
    line-height: 1.5;
    margin: 0;
}

.cr-message-panel {
    background:
        linear-gradient(rgba(255,255,255,.84), rgba(255,255,255,.9)),
        url("https://www.chuangrongapparel.com/front/images/message_bg.jpg") center / cover;
    padding: 56px 60px;
}

.cr-message-panel p {
    font-size: 22px;
    color: #777;
    line-height: 1.55;
    margin: 0 0 34px;
}

.cr-message-panel .cr-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.cr-message-panel .cr-form textarea,
.cr-message-panel .cr-form button {
    grid-column: 1 / -1;
}

.cr-message-panel .cr-form input,
.cr-message-panel .cr-form textarea {
    height: 58px;
    border: 1px solid #ddd;
    background: rgba(255,255,255,.55);
    font-size: 20px;
    padding: 0 24px;
}

.cr-message-panel .cr-form textarea {
    height: 130px;
    padding-top: 18px;
}

.cr-message-panel .cr-form button {
    width: 175px;
    height: 58px;
    padding: 0;
    font-size: 18px;
}

.cr-footer {
    background: #191919;
    color: #cfcfcf;
    padding: 58px 0 24px;
}

.cr-footer h3 {
    color: #fff;
    font-size: 18px;
    margin-top: 0;
}

.cr-footer a {
    color: #cfcfcf;
}

.cr-footer-grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr 1.1fr;
    gap: 32px;
}

.cr-page-hero {
    min-height: 300px;
    background: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.45)), url("https://www.chuangrongapparel.com/storage/uploads/images/202507/04/1751618543_ONFyPHjBdt.jpg") center / cover;
    color: #fff;
    display: flex;
    align-items: center;
}

.cr-page-hero h1 {
    font-family: "DM Serif Display", serif;
    font-size: 54px;
}

@media (max-width: 991px) {
    .cr-header .container,
    .cr-contact-strip {
        display: block;
    }

    .cr-topbar-left,
    .cr-topbar-right,
    .cr-header-actions {
        margin-top: 12px;
    }

    .cr-nav {
        flex-wrap: wrap;
        gap: 12px 18px;
        padding-bottom: 16px;
    }

    .cr-hero {
        min-height: 560px;
    }

    .cr-hero h1 {
        font-size: 42px;
    }

    .cr-cats,
    .cr-products,
    .cr-featured-products,
    .cr-feature-grid,
    .cr-blog-card-grid,
    .cr-company-photo-grid,
    .cr-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cr-product-card img {
        height: 300px !important;
    }

    .cr-about-grid,
    .cr-about-page-layout,
    .cr-custom-grid,
    .cr-packaging-layout,
    .cr-company-photo-layout,
    .cr-about-feature,
    .cr-service-layout,
    .cr-message-layout,
    .cr-product-detail {
        grid-template-columns: 1fr;
    }

    .cr-detail-masonry {
        column-count: 2;
    }

    .cr-product-copy-grid,
    .cr-product-service-list,
    .cr-product-specs,
    .cr-detail-process {
        grid-template-columns: 1fr;
    }

    .cr-about-collage {
        position: static;
    }

    .cr-factory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cr-process-grid,
    .cr-certificate-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cr-factory-grid figure:first-child {
        grid-row: auto;
    }

    .cr-factory-grid figure:first-child img,
    .cr-factory-grid img,
    .cr-about-video img {
        height: 320px;
    }

    .cr-packaging-image img {
        max-height: none;
    }
}

@media (max-width: 560px) {
    .cr-products,
    .cr-featured-products,
    .cr-cats,
    .cr-feature-grid,
    .cr-blog-card-grid,
    .cr-company-photo-grid,
    .cr-footer-grid {
        grid-template-columns: 1fr;
    }

    .cr-section {
        padding: 52px 0;
    }

    .cr-product-card img {
        height: 280px !important;
    }

    .cr-service-grid,
    .cr-factory-grid,
    .cr-process-grid,
    .cr-certificate-grid,
    .cr-about-card-grid,
    .cr-news-grid,
    .cr-product-thumbs,
    .cr-detail-process,
    .cr-stats {
        grid-template-columns: 1fr;
    }

    .cr-detail-masonry {
        column-count: 1;
    }

    .cr-lightbox {
        padding: 14px;
    }

    .cr-lightbox-prev,
    .cr-lightbox-next {
        width: 42px;
        height: 42px;
        font-size: 30px;
    }

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

    .cr-about-collage .cr-about-img-main,
    .cr-about-collage img,
    .cr-company-photo-grid .cr-company-photo-wide,
    .cr-company-photo-grid img {
        height: 260px;
    }

    .cr-fixed-contact {
        display: none;
    }
}

/* ===== Floating inquiry widget — "Send A Message" popup (ref: chuangrongapparel.com #onlineService) ===== */
.ws-inquiry {
    position: fixed;
    right: 24px;
    bottom: 28px;
    z-index: 99990;
    font-size: 14px;
}
.ws-inq-toggle {
    position: relative;
    width: 56px;
    height: 56px;
    border: 0;
    border-radius: 50%;
    background: var(--cr-brown);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
    transition: background 0.3s ease;
}
.ws-inq-toggle:hover {
    background: #c79f6f;
}
.ws-inq-ico {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.25s ease;
}
.ws-inq-ico-close {
    position: absolute;
    font-size: 30px;
    line-height: 1;
    opacity: 0;
}
.ws-inquiry.is-open .ws-inq-ico-open {
    opacity: 0;
}
.ws-inquiry.is-open .ws-inq-ico-close {
    opacity: 1;
}
.ws-inq-pulse {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(213, 178, 136, 0.45);
    z-index: -1;
    animation: wsInqPulse 2.4s ease-out infinite;
}
.ws-inquiry.is-open .ws-inq-pulse {
    display: none;
}
@keyframes wsInqPulse {
    0% { transform: scale(1); opacity: 0.6; }
    100% { transform: scale(2.2); opacity: 0; }
}
.ws-inq-tip {
    position: absolute;
    right: calc(100% + 10px);
    top: 50%;
    transform: translateY(-50%);
    white-space: nowrap;
    background: #ebebeb;
    color: #43474e;
    font-weight: 600;
    font-size: 13px;
    padding: 7px 12px;
    border-radius: 4px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}
.ws-inq-toggle:hover .ws-inq-tip {
    opacity: 1;
}
.ws-inquiry.is-open .ws-inq-tip {
    display: none;
}
.ws-inq-card {
    position: absolute;
    right: 0;
    bottom: 72px;
    width: 350px;
    max-width: calc(100vw - 40px);
    background: #f9fafa;
    border-radius: 6px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 5px 30px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
.ws-inquiry.is-open .ws-inq-card {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.ws-inq-head {
    position: relative;
    background: var(--cr-brown);
    padding: 15px 20px 22px;
    overflow: hidden;
}
.ws-inq-head:after {
    content: "";
    position: absolute;
    left: -8px;
    right: -8px;
    bottom: -9px;
    height: 20px;
    background: var(--cr-brown);
    transform: skewY(-2.4deg);
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.21);
}
.ws-inq-title {
    position: relative;
    z-index: 2;
    display: block;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.ws-inq-scroll {
    max-height: min(70vh, 470px);
    overflow-y: auto;
    overflow-x: hidden;
    padding: 16px 20px 18px;
}
.ws-inq-scroll::-webkit-scrollbar { width: 5px; }
.ws-inq-scroll::-webkit-scrollbar-track { background: #ccc; }
.ws-inq-scroll::-webkit-scrollbar-thumb { background: #999; }
.ws-inq-scroll::-webkit-scrollbar-thumb:hover { background: var(--cr-brown); }
.ws-inq-intro {
    color: #808080;
    font-size: 14px;
    line-height: 1.5;
    margin: 0 0 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e5e5e5;
}
.ws-inq-form { display: block; }
.ws-inq-field {
    display: block;
    position: relative;
    margin-bottom: 10px;
}
.ws-inq-field input,
.ws-inq-field textarea {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 2px;
    padding: 0 12px;
    height: 40px;
    line-height: 38px;
    color: #666;
    font-size: 14px;
    font-family: inherit;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) inset;
}
.ws-inq-field textarea {
    height: 74px;
    line-height: 1.4;
    padding: 8px 12px;
    resize: vertical;
}
.ws-inq-field input:focus,
.ws-inq-field textarea:focus {
    outline: 0;
    border-color: var(--cr-brown);
    background: #fafafa;
    color: #333;
}
.ws-inq-req:before {
    content: "*";
    color: red;
    position: absolute;
    right: 9px;
    top: 11px;
    z-index: 2;
    font-size: 15px;
    line-height: 1;
}
.ws-inq-submit {
    border: 0;
    border-radius: 2px;
    background: var(--cr-brown);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    padding: 11px 28px;
    cursor: pointer;
    transition: opacity 0.3s ease;
}
.ws-inq-submit:hover { opacity: 0.9; }
.ws-inq-cid {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: var(--cr-brown);
    color: #fff;
    padding: 11px 15px;
    margin-top: 14px;
}
.ws-inq-cid-label { font-size: 17px; }
.ws-inq-cid a {
    color: #fff;
    font-size: 17px;
    font-weight: 400;
    text-decoration: none;
}
.ws-inq-cid a:hover { text-decoration: underline; }
.ws-inq-hours {
    text-align: center;
    color: #333;
    margin-top: 14px;
}
.ws-inq-hours-toggle {
    font-size: 14px;
    text-transform: capitalize;
    text-decoration: underline;
    cursor: pointer;
    margin: 0;
}
.ws-inq-hours-toggle:hover { color: var(--cr-brown); }
.ws-inq-hours-body {
    display: none;
    max-width: 320px;
    margin: 8px auto 4px;
    font-size: 14px;
    line-height: 1.6;
    color: #555;
}
.ws-inq-hours.is-open .ws-inq-hours-body { display: block; }
@media (max-width: 480px) {
    .ws-inquiry { right: 14px; bottom: 16px; }
    .ws-inq-card { bottom: 66px; }
}

/* ============ 7.10 client revisions ============ */
/* logo + company name beside it */
.cr-logo { display: flex; align-items: center; gap: 12px; }
.cr-logo-name { display: flex; flex-direction: column; line-height: 1.05; }
.cr-logo-name strong { font-family: "DM Serif Display", Georgia, serif; font-size: 20px; color: #73442d; font-weight: 400; white-space: nowrap; }
.cr-logo-name em { font-family: "DM Serif Display", Georgia, serif; font-style: normal; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: #8a6b52; }
@media (max-width: 680px) { .cr-logo-name { display: none; } }

/* About Us two-column feature list */
.cr-about-features { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 28px; margin: 18px 0 26px; align-items: start; }
.cr-about-features .cr-checks { margin: 0; grid-template-columns: 1fr; gap: 10px; }
@media (max-width: 600px) { .cr-about-features { grid-template-columns: 1fr; } }

/* section lead paragraph (Our Factory) */
.cr-section-lead { max-width: 920px; margin: 14px 0 28px; color: #5a5a5a; line-height: 1.7; font-size: 16px; }

/* contact: whatsapp two numbers stacked + factory note */
.cr-contact-item a { display: block; }
.cr-contact-factory { margin-top: 6px !important; font-size: 13px; color: #8a6b52; }

/* balance Our Services columns (was .78/1.22 → even) */
.cr-service-layout { grid-template-columns: minmax(380px, 1fr) minmax(0, 1fr) !important; gap: 52px !important; }

/* hover: factory + service cards lift with soft brown shadow */
.cr-process-card, .cr-service-card { transition: transform .25s ease, box-shadow .25s ease; }
.cr-process-card:hover, .cr-service-card:hover { transform: translateY(-6px); box-shadow: 0 14px 30px rgba(115, 68, 45, .18); }
.cr-process-card { overflow: hidden; }
.cr-process-card img { transition: transform .45s ease; }
.cr-process-card:hover img { transform: scale(1.06); }

/* image hover zoom (Customize showroom) */
.cr-zoom-figure { overflow: hidden; border-radius: 12px; margin: 0; }
.cr-zoom-figure img { display: block; width: 100%; height: auto; transition: transform .5s ease; }
.cr-zoom-figure:hover img { transform: scale(1.07); }
.cr-service-highlight { font-weight: 700; color: #73442d; font-size: 17px; line-height: 1.55; margin: 0 0 12px; }

/* ===== rich product detail (.det-rich) — client 7.10 问题二 ===== */
.det-rich h3 { font-family: "DM Serif Display", Georgia, serif; color: #73442d; font-size: 24px; margin: 30px 0 14px; padding-bottom: 8px; border-bottom: 2px solid #f0e6dd; }
.det-rich .det-lead { font-size: 18px; color: #222; margin: 0 0 10px; }
.det-rich > p { line-height: 1.7; color: #4a4a4a; }
.det-features { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 28px; margin: 8px 0; }
.det-feat h4 { margin: 0 0 4px; color: #222; font-size: 16px; }
.det-feat p { margin: 0; color: #666; font-size: 14px; line-height: 1.55; }
.det-benefits { list-style: none; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 24px; margin: 8px 0; }
.det-benefits li { position: relative; padding-left: 26px; color: #4a4a4a; line-height: 1.7; }
.det-benefits li:before { content: "✔"; position: absolute; left: 0; color: #73442d; font-weight: 700; }
.det-specs { width: 100%; border-collapse: collapse; margin: 6px 0; }
.det-specs th, .det-specs td { border: 1px solid #eadfd5; padding: 10px 14px; text-align: left; font-size: 14px; vertical-align: top; }
.det-specs th { background: #faf5f0; color: #73442d; font-weight: 600; width: 34%; white-space: nowrap; }
.det-custom { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px 24px; margin: 8px 0; }
.det-cgroup h4 { margin: 0 0 8px; color: #73442d; font-size: 15px; }
.det-cgroup ul { margin: 0; padding-left: 18px; color: #5a5a5a; font-size: 14px; line-height: 1.7; }
.det-apps { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px 18px; margin: 8px 0; }
.det-apps li { position: relative; padding-left: 16px; color: #5a5a5a; font-size: 14px; line-height: 1.7; }
.det-apps li:before { content: "•"; position: absolute; left: 0; color: #c9a57c; font-weight: 700; }
@media (max-width: 680px) { .det-features, .det-benefits, .det-custom, .det-apps { grid-template-columns: 1fr; } }
.cr-custom-options { margin-top: 40px; padding-top: 8px; }

/* product detail: rich detail moved full-width below top row (fix empty side-column, 7.10) */
.cr-product-detail { align-items: start; }
/* detail images stacked in LEFT media column (below thumbs); NO sticky — both columns scroll normally */
.cr-product-detail-imgs { margin-top: 16px; display: flex; flex-direction: column; gap: 14px; }
.cr-product-detail-imgs figure { margin: 0; }
.cr-product-detail-imgs button { display: block; width: 100%; border: 0; background: #fff; padding: 0; cursor: zoom-in; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,.06); }
.cr-product-detail-imgs img { display: block; width: 100%; height: auto; }
.cr-product-fulldetail-section { padding-top: 6px; }
.cr-product-fulldetail .det-rich > h3:first-child { margin-top: 0; }

/* ===== vertical contact rail (client 7.10, right-center, hover-expand) ===== */
.ws-rail { position: fixed; right: 0; top: 50%; transform: translateY(-50%); z-index: 99980; width: 52px; overflow: hidden; transition: width .35s ease; border-radius: 8px 0 0 8px; box-shadow: 0 6px 24px rgba(0,0,0,.18); }
.ws-rail:hover { width: 304px; }
.ws-rail-item { position: relative; display: flex; align-items: center; min-height: 52px; background: var(--cr-brown); color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.22); transition: background .2s; }
.ws-rail-item:last-child { border-bottom: 0; }
.ws-rail-item:hover { background: #c79f6f; }
.ws-rail-ic { flex: 0 0 52px; height: 52px; display: flex; align-items: center; justify-content: center; }
.ws-rail-ic svg { width: 24px; height: 24px; }
.ws-rail-tx { white-space: nowrap; font-size: 15px; opacity: 0; transition: opacity .3s .05s; }
.ws-rail:hover .ws-rail-tx { opacity: 1; }
.ws-rail-qr { align-items: flex-start; overflow: hidden; max-height: 52px; transition: max-height .35s ease; }
.ws-rail:hover .ws-rail-qr { max-height: 220px; }
.ws-rail-qr .ws-rail-tx { display: flex; flex-direction: column; gap: 6px; padding: 8px 14px 12px 0; }
.ws-rail-qr .ws-rail-tx b { font-size: 13px; font-weight: 700; }
.ws-rail-qr img { width: 120px; height: 120px; background: #fff; padding: 5px; border-radius: 5px; }
@media (max-width: 768px) { .ws-rail { display: none; } }

/* product page: concise sticky buy-box + full-width inquiry section (7.10) */
.cr-product-quote-note { font-size: 14px; color: #666; line-height: 1.6; margin-top: 6px; }
.cr-product-quote-note a { color: #73442d; font-weight: 600; }
.cr-inquiry-wrap { max-width: 720px; margin: 0 auto; }

/* fix: parent .cr-section overflow:hidden breaks sticky buy-box -> allow on product top section */
.cr-product-top { overflow: visible; }

/* ============ product page rebuilt to match reference (chuangrongapparel) layout ============ */
.cr-product-top { overflow: visible; }
.cr-product-intro { color: #666; line-height: 1.6; margin: 0 0 16px; font-size: 15px; }
.cr-product-spectable { width: 100%; border-collapse: collapse; border: 1px solid #eee; margin-bottom: 18px; }
.cr-product-spectable th, .cr-product-spectable td { text-align: left; font-size: 14px; padding: 9px 12px; border-bottom: 1px solid #eee; vertical-align: top; }
.cr-product-spectable th { background: #fafafa; color: #333; font-weight: 600; width: 34%; border-right: 1px solid #eee; white-space: nowrap; }
.cr-product-spectable td { color: #555; }
/* body: sticky Categories sidebar | Product Details content */
.cr-product-body { overflow: visible; }
.cr-product-body-grid { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 42px; align-items: start; }
.cr-product-cats { position: sticky; top: 90px; }
.cr-cats-box { border: 1px solid #eee; border-radius: 4px; margin-bottom: 20px; overflow: hidden; }
.cr-cats-box h3 { background: var(--cr-brown); color: #fff; font-size: 16px; margin: 0; padding: 12px 16px; font-family: "DM Serif Display", Georgia, serif; font-weight: 400; }
.cr-cats-box ul { list-style: none; margin: 0; padding: 6px 0; }
.cr-cats-box li a { display: block; padding: 9px 16px; color: #444; font-size: 14px; border-bottom: 1px solid #f2f2f2; text-decoration: none; transition: color .2s, background .2s; }
.cr-cats-box li:last-child a { border-bottom: 0; }
.cr-cats-box li a:hover, .cr-cats-box li a.is-current { color: var(--cr-brown); background: #faf5f0; }
.cr-cats-contact { padding: 14px 16px; }
.cr-cats-contact p { margin: 0 0 8px; font-size: 14px; }
.cr-cats-contact a { color: #73442d; word-break: break-word; }
.cr-cats-contact .cr-btn { margin-top: 10px; width: 100%; text-align: center; }
.cr-detail-tab { border-bottom: 2px solid #eee; margin-bottom: 24px; }
.cr-detail-tab span { display: inline-block; padding: 10px 24px; background: var(--cr-brown); color: #fff; font-weight: 600; font-size: 15px; border-radius: 4px 4px 0 0; }
.cr-detail-stack { display: flex; flex-direction: column; gap: 16px; margin: 24px 0 0; }
.cr-detail-stack figure { margin: 0; }
.cr-detail-stack button { display: block; width: 100%; border: 0; background: #fff; padding: 0; cursor: zoom-in; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,.06); }
.cr-detail-stack img { display: block; width: 100%; height: auto; }
@media (max-width: 900px) { .cr-product-body-grid { grid-template-columns: 1fr; } .cr-product-cats { position: static; } }

/* ===== Our Service section (ref chuangrong: 3 customization cards, centered) ===== */
.cr-ourservice-section { background: #f7f4f0; text-align: center; }
.cr-ourservice-head { max-width: 920px; margin: 0 auto 46px; }
.cr-ourservice-head h2 { font-family: "DM Serif Display", Georgia, serif; font-size: 40px; color: #73442d; margin: 0; }
.cr-ourservice-line { display: block; width: 48px; height: 2px; background: var(--cr-brown); margin: 16px auto 22px; }
.cr-ourservice-head p { color: #666; line-height: 1.7; font-size: 16px; margin: 0; }
.cr-ourservice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; max-width: 1040px; margin: 0 auto; }
.cr-ourservice-card { text-align: center; }
.cr-os-icon { width: 96px; height: 96px; margin: 0 auto 22px; border: 1.5px solid #333; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #333; transition: border-color .25s, color .25s, transform .25s; }
.cr-os-icon svg { width: 42px; height: 42px; }
.cr-ourservice-card:hover .cr-os-icon { border-color: var(--cr-brown); color: var(--cr-brown); transform: translateY(-4px); }
.cr-ourservice-card h3 { font-size: 18px; letter-spacing: .04em; text-transform: uppercase; color: #222; margin: 0 0 12px; font-weight: 700; }
.cr-ourservice-card > p { color: #666; font-size: 16px; line-height: 1.6; margin: 0; max-width: 260px; margin-left: auto; margin-right: auto; }
@media (max-width: 768px) { .cr-ourservice-grid { grid-template-columns: 1fr; gap: 34px; } .cr-ourservice-head h2 { font-size: 32px; } }

/* ===== FAQ accordion (ref chuangrong /faq: click-to-expand Q&A) ===== */
.cr-faq { max-width: 880px; margin: 0 auto; }
.cr-faq-intro { text-align: center; margin-bottom: 40px; }
.cr-faq-intro h2 { font-family: "DM Serif Display", Georgia, serif; font-size: 38px; color: #73442d; margin: 6px 0 14px; }
.cr-faq-intro p { color: #666; font-size: 16px; line-height: 1.7; margin: 0; }
.cr-faq-intro a { color: var(--cr-brown); text-decoration: underline; }
.cr-faq-accordion { border-top: 1px solid #e7e0d8; }
.cr-faq-item { border-bottom: 1px solid #e7e0d8; }
.cr-faq-q { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 4px; font-size: 17px; font-weight: 600; color: #2a2a2a; transition: color .2s; }
.cr-faq-q::-webkit-details-marker { display: none; }
.cr-faq-q:hover { color: var(--cr-brown); }
.cr-faq-mark { flex: 0 0 auto; position: relative; width: 18px; height: 18px; }
.cr-faq-mark::before, .cr-faq-mark::after { content: ""; position: absolute; background: var(--cr-brown); transition: transform .25s, opacity .25s; }
.cr-faq-mark::before { top: 8px; left: 0; width: 18px; height: 2px; }
.cr-faq-mark::after { left: 8px; top: 0; width: 2px; height: 18px; }
.cr-faq-item[open] .cr-faq-mark::after { transform: rotate(90deg); opacity: 0; }
.cr-faq-item[open] .cr-faq-q { color: var(--cr-brown); }
.cr-faq-a { padding: 0 4px 24px; color: #555; font-size: 15.5px; line-height: 1.8; }
.cr-faq-a p { margin: 0 0 12px; }
.cr-faq-a p:last-child { margin-bottom: 0; }
.cr-faq-a ul { margin: 0 0 12px; padding-left: 20px; }
.cr-faq-a li { margin-bottom: 6px; }
.cr-faq-a strong { color: #333; }
@media (max-width: 600px) { .cr-faq-intro h2 { font-size: 30px; } .cr-faq-q { font-size: 15.5px; padding: 18px 2px; } }

/* ===== Our Factory cards — hover overlay (brown veil + zoom-in magnifier) ===== */
.cr-process-media { position: relative; overflow: hidden; border-radius: 6px; }
.cr-process-media img { transition: transform .5s ease; }
.cr-process-card:hover .cr-process-media img { transform: scale(1.09); }
.cr-process-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: linear-gradient(180deg, rgba(115,68,45,.12), rgba(115,68,45,.58)); opacity: 0; transition: opacity .35s ease; }
.cr-process-card:hover .cr-process-overlay { opacity: 1; }
.cr-process-ic { width: 58px; height: 58px; border-radius: 50%; background: rgba(255,255,255,.94); color: var(--cr-brown); display: flex; align-items: center; justify-content: center; transform: scale(.55) translateY(10px); transition: transform .38s cubic-bezier(.2,.8,.3,1); box-shadow: 0 8px 20px rgba(0,0,0,.18); }
.cr-process-card:hover .cr-process-ic { transform: scale(1) translateY(0); }
.cr-process-ic svg { width: 26px; height: 26px; }
.cr-process-card h3 { transition: color .25s ease; }
.cr-process-card:hover h3 { color: var(--cr-brown); }

/* ===== Contact Us reply-time note (below address) ===== */
.cr-contact-reply { margin: 20px 0 0; padding: 12px 16px; background: #f7f4f0; border-left: 3px solid var(--cr-brown); color: #6a4a38; font-size: 14.5px; line-height: 1.6; border-radius: 0 6px 6px 0; }

/* ===== Blog single post header (date + hero image) ===== */
.cr-blog-meta { color: var(--cr-brown); font-size: 14px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; margin: 0 0 14px; }
.cr-blog-hero-img { margin: 0 0 28px; border-radius: 8px; overflow: hidden; }
.cr-blog-hero-img img { width: 100%; height: auto; display: block; }
.cr-content h2 { font-family: "DM Serif Display", Georgia, serif; color: #2a2a2a; font-size: 26px; margin: 30px 0 12px; }
.cr-content ul { margin: 0 0 16px; padding-left: 22px; }
.cr-content li { margin-bottom: 8px; }

/* ===== Breadcrumb navigation (SEO §4.2, client 7.14) ===== */
.cr-breadcrumb {
    background: var(--cr-soft);
    border-bottom: 1px solid #ece3d8;
    font-size: 13px;
}
.cr-breadcrumb ol {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 11px 0;
}
.cr-breadcrumb li {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #8a7a68;
}
.cr-breadcrumb li:not(:first-child)::before {
    content: "\203A";
    color: #c3b5a3;
    font-size: 14px;
}
.cr-breadcrumb a {
    color: #6f6152;
    text-decoration: none;
}
.cr-breadcrumb a:hover {
    color: var(--cr-brown);
}
.cr-breadcrumb li[aria-current="page"] span {
    color: var(--cr-dark);
    font-weight: 600;
}
@media (max-width: 600px) {
    .cr-breadcrumb ol { padding: 9px 0; font-size: 12px; }
}

/* ============================================================
   Mobile nav + bottom tab bar + floating WhatsApp
   client 7.14 #2 (mobile topbar dump) / #5 (header contact) / image2 (bottom bar)
   ============================================================ */
.cr-menu-toggle { display: none; }
.cr-nav-contact { display: none; }
.cr-nav-backdrop { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.42); z-index: 1050; }
body.cr-menu-open .cr-nav-backdrop { display: block; }
.cr-tabbar { display: none; }

.cr-header-actions { display: flex; align-items: center; gap: 12px; }
.cr-header-ic {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; border-radius: 50%;
    color: var(--cr-brown); background: var(--cr-soft);
    transition: background .25s, color .25s;
}
.cr-header-ic:hover { background: var(--cr-brown); color: #fff; }

/* Floating WhatsApp (desktop) — above the inquiry widget */
.ws-float-wa {
    position: fixed; right: 24px; bottom: 96px; z-index: 99990;
    width: 56px; height: 56px; border-radius: 50%;
    background: #25D366; color: #fff;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 6px 18px rgba(0,0,0,.22); transition: transform .2s;
}
.ws-float-wa:hover { transform: scale(1.06); color: #fff; }

@media (max-width: 991px) {
    /* keep header on ONE row (override the old display:block dump) */
    .cr-header .container { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; }
    .cr-topbar { display: none; }  /* kills the "顶部信息全部被列出来" stack; contact now in sticky header icons + drawer */

    .cr-menu-toggle {
        display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
        width: 44px; height: 44px; padding: 10px; border: 1px solid #e0d5c6; border-radius: 8px;
        background: #fff; cursor: pointer; flex: 0 0 auto;
    }
    .cr-menu-toggle span { display: block; height: 2px; width: 100%; background: #333; border-radius: 2px; transition: transform .25s, opacity .25s; }
    body.cr-menu-open .cr-menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    body.cr-menu-open .cr-menu-toggle span:nth-child(2) { opacity: 0; }
    body.cr-menu-open .cr-menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    .cr-nav-wrap {
        position: fixed; top: 0; right: 0; bottom: 0; width: 82%; max-width: 320px;
        background: #fff; box-shadow: -8px 0 30px rgba(0,0,0,.16);
        transform: translateX(100%); transition: transform .3s ease;
        z-index: 1100; padding: 80px 24px 30px; overflow-y: auto; display: block;
    }
    body.cr-menu-open .cr-nav-wrap { transform: translateX(0); }
    .cr-nav-wrap .cr-nav { flex-direction: column; align-items: flex-start; gap: 0; padding: 0; }
    .cr-nav-wrap .cr-nav li { width: 100%; }
    .cr-nav-wrap .cr-nav a { display: block; padding: 13px 0; border-bottom: 1px solid #f0e9df; font-size: 16px; width: 100%; }
    .cr-nav-contact { display: block; margin-top: 22px; padding-top: 18px; border-top: 2px solid var(--cr-soft); }
    .cr-nav-contact a { display: block; padding: 8px 0; font-size: 14px; color: #6f6152; }

    .cr-header-actions { margin-top: 0; gap: 8px; }
    .cr-header-quote { display: none; }
    .cr-header-ic { width: 40px; height: 40px; }

    /* Bottom tab bar (image2) */
    .cr-tabbar {
        display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 1000;
        background: #fff; border-top: 1px solid #ece3d8; box-shadow: 0 -4px 20px rgba(0,0,0,.08);
        padding: 6px 4px calc(6px + env(safe-area-inset-bottom)); justify-content: space-around; align-items: flex-end;
    }
    .cr-tab {
        flex: 1; display: flex; flex-direction: column; align-items: center; gap: 3px;
        background: none; border: 0; cursor: pointer; text-decoration: none;
        color: #6f6152; font-size: 11px; font-weight: 600; padding: 4px 0; font-family: inherit;
    }
    .cr-tab svg { width: 22px; height: 22px; }
    .cr-tab-wa { color: #128C4B; }
    .cr-tab-cta { margin-top: -22px; color: var(--cr-dark); }
    .cr-tab-cta .cr-tab-cta-ic {
        width: 52px; height: 52px; border-radius: 50%; background: var(--cr-brown); color: #fff;
        display: flex; align-items: center; justify-content: center;
        box-shadow: 0 4px 14px rgba(213,178,136,.6); margin-bottom: 2px;
    }
    .cr-tab-cta .cr-tab-cta-ic svg { width: 26px; height: 26px; }

    body { padding-bottom: 66px; }  /* room for the tab bar — never covers content */

    /* tab bar replaces the desktop floats */
    .ws-float-wa { display: none; }
    .ws-inq-toggle { display: none; }
    .ws-inquiry { right: 12px; bottom: 74px; }
    .ws-inq-card { bottom: 0; }
}

/* small-screen heading sizing — prevent horizontal overflow (client 7.14 #2 mobile fit) */
@media (max-width: 991px) {
    html, body { overflow-x: hidden; }
    .cr-hero h1, .cr-section-title h2, .cr-about-copy h2,
    .cr-ourservice-head h2, .cr-process-section h2 { overflow-wrap: break-word; }
}
@media (max-width: 560px) {
    .cr-hero h1 { font-size: 30px; line-height: 1.22; }
    .cr-hero p { font-size: 15px; }
    .cr-section-title h2, .cr-about-copy h2, .cr-ourservice-head h2,
    .cr-process-section h2, .cr-message-panel h2, .cr-contact-panel h2,
    .cr-custom-grid h2, .cr-company-photo-layout h2 { font-size: 25px; line-height: 1.28; }
    .cr-hero .cr-eyebrow { font-size: 12px; }
}

/* ===== Inquiry form status + popup close (client 7.14 询.1/询.2) ===== */
.winsun-form-status { margin: 8px 0 0; font-size: 13.5px; line-height: 1.5; display: none; }
.winsun-form-status.is-ok { display: block; color: #1b7a3d; background: #eaf7ef; border: 1px solid #bfe6cd; padding: 9px 12px; border-radius: 6px; }
.winsun-form-status.is-error { display: block; color: #b3261e; background: #fdecec; border: 1px solid #f3c4c1; padding: 9px 12px; border-radius: 6px; }
.ws-inq-close {
    position: absolute; top: 10px; right: 12px; z-index: 3;
    width: 26px; height: 26px; line-height: 1; border: 0; border-radius: 50%;
    background: rgba(255,255,255,.28); color: #fff; font-size: 20px; cursor: pointer;
    -webkit-appearance: none; appearance: none; display: flex; align-items: center; justify-content: center;
}
.ws-inq-close:hover { background: rgba(255,255,255,.5); }

/* ===== OEM/ODM customization table (client 7.14 二.1) ===== */
.cr-oem-table-wrap { overflow-x: auto; }
.cr-oem-table { width: 100%; border-collapse: collapse; background: #fff; font-size: 15px; box-shadow: 0 2px 16px rgba(0,0,0,.06); border-radius: 8px; overflow: hidden; }
.cr-oem-table thead th { background: var(--cr-brown); color: #fff; text-align: left; padding: 14px 18px; font-weight: 700; font-size: 14px; }
.cr-oem-table tbody td { padding: 15px 18px; border-bottom: 1px solid #efe7dc; vertical-align: top; color: #4a4238; }
.cr-oem-table tbody tr:last-child td { border-bottom: 0; }
.cr-oem-table tbody tr:nth-child(even) { background: #faf6f0; }
.cr-oem-table td strong { color: var(--cr-dark); }
.cr-cta-inline { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px 22px; margin-top: 24px; text-align: center; }
.cr-cta-inline span { color: #6f6152; font-size: 15px; }

/* ===== Full-width CTA band (client 7.14 二.2) ===== */
.cr-cta-band { background: linear-gradient(120deg, #2a2320, #3d332c); color: #fff; padding: 44px 0; }
.cr-cta-band .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 22px; }
.cr-cta-band-text h2 { color: #fff; font-size: 27px; margin: 0 0 6px; }
.cr-cta-band-text p { color: rgba(255,255,255,.82); margin: 0; font-size: 15px; }
.cr-cta-band-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.cr-cta-band .cr-btn-ghost { background: transparent; border: 1px solid rgba(255,255,255,.6); color: #fff; }
.cr-cta-band .cr-btn-ghost:hover { background: rgba(255,255,255,.12); }

@media (max-width: 680px) {
    .cr-oem-table thead { display: none; }
    .cr-oem-table, .cr-oem-table tbody, .cr-oem-table tr, .cr-oem-table td { display: block; width: 100%; }
    .cr-oem-table tr { margin-bottom: 14px; border: 1px solid #efe7dc; border-radius: 8px; overflow: hidden; }
    .cr-oem-table tbody td { border-bottom: 1px solid #f0e9df; padding: 10px 14px; }
    .cr-oem-table tbody td::before { content: attr(data-label) " · "; font-weight: 700; color: var(--cr-brown); }
    .cr-oem-table td[data-label="Type"]::before { content: ""; }
    .cr-cta-band .container { flex-direction: column; text-align: center; }
    .cr-cta-band-actions { justify-content: center; }
}

/* ===== Footer policy links (client 7.14 三.1) ===== */
.cr-footer-policies { display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: center; padding: 20px 0 4px; border-top: 1px solid rgba(255,255,255,.12); margin-top: 10px; }
.cr-footer-policies a { color: rgba(255,255,255,.75); font-size: 13.5px; }
.cr-footer-policies a:hover { color: #fff; text-decoration: underline; }

/* ===== Blog category nav (client 7.14 一.4) ===== */
.cr-blog-cats { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 0 0 30px; }
.cr-blog-cats a { padding: 8px 16px; border: 1px solid #e6dccd; border-radius: 30px; font-size: 14px; color: #6f6152; background: #fff; transition: all .2s; }
.cr-blog-cats a:hover { border-color: var(--cr-brown); color: var(--cr-brown); }
.cr-blog-cats a.is-active { background: var(--cr-brown); border-color: var(--cr-brown); color: #fff; }
.cr-blog-cats a span { opacity: .7; font-size: 12px; }
.cr-blog-pagination { display: flex; gap: 8px; justify-content: center; margin-top: 34px; }
.cr-blog-pagination .page-numbers { padding: 8px 14px; border: 1px solid #e6dccd; border-radius: 6px; color: #6f6152; }
.cr-blog-pagination .page-numbers.current { background: var(--cr-brown); color: #fff; border-color: var(--cr-brown); }

/* ============================================================
   Language switcher dropdown (client 7.14 一.3 — EN / RU / ES)
   ============================================================ */
.ws-lang { position: relative; display: inline-block; font-size: 13px; }
.ws-lang-btn {
    display: inline-flex; align-items: center; gap: 5px;
    background: transparent; border: 0; cursor: pointer; color: inherit;
    font: inherit; font-size: 13px; line-height: 1; padding: 4px 6px;
    -webkit-appearance: none; appearance: none;
}
.ws-lang-globe { opacity: .85; }
.ws-lang-caret { transition: transform .2s ease; opacity: .8; }
.ws-lang.is-open .ws-lang-caret { transform: rotate(180deg); }
.ws-lang-menu {
    position: absolute; top: calc(100% + 6px); left: 0; min-width: 132px;
    list-style: none; margin: 0; padding: 5px; z-index: 1200;
    background: #fff; border: 1px solid #ece3d8; border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,.14);
    opacity: 0; visibility: hidden; transform: translateY(-6px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}
.ws-lang.is-open .ws-lang-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.ws-lang-menu li { margin: 0; }
.ws-lang-menu a {
    display: block; padding: 8px 12px; border-radius: 6px;
    color: #4a4238; font-size: 14px; text-decoration: none; white-space: nowrap;
}
.ws-lang-menu a:hover { background: var(--cr-soft); color: var(--cr-brown); }
.ws-lang-menu a.is-current { color: var(--cr-brown); font-weight: 700; background: var(--cr-soft); }

/* compact (mobile header) variant — globe + caret only, menu right-aligned */
.ws-lang-compact { display: none; }
.ws-lang-compact .ws-lang-btn {
    border: 1px solid #e0d5c6; border-radius: 8px; padding: 9px 8px; background: #fff; color: var(--cr-dark);
}
.ws-lang-compact .ws-lang-cur { display: none; }
.ws-lang-compact .ws-lang-menu { left: auto; right: 0; }

/* drawer variant (inside mobile hamburger menu) */
.cr-nav-lang { display: none; }
.ws-lang-drawer { display: block; width: 100%; margin: 0 0 8px; }
.ws-lang-drawer .ws-lang-btn { width: 100%; justify-content: space-between; border: 1px solid #eadfce; border-radius: 8px; padding: 11px 12px; color: var(--cr-dark); background: #fff; }
.ws-lang-drawer .ws-lang-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 4px 0 0; min-width: 0; display: none; }
.ws-lang-drawer.is-open .ws-lang-menu { display: block; }

@media (max-width: 991px) {
    .ws-lang-compact { display: inline-block; }
    .cr-nav-lang { display: block; }

    /* Inquiry popup = non-blocking bottom sheet above the tab bar (client 7.14 询.1 "不强制遮挡内容") */
    .ws-inquiry { left: 0; right: 0; bottom: 0; }
    .ws-inq-card {
        position: fixed; left: 0; right: 0; bottom: 66px; width: auto; max-width: none;
        border-radius: 14px 14px 0 0; box-shadow: 0 -6px 30px rgba(0,0,0,.22);
    }
    .ws-inq-scroll { max-height: 48vh; }
}
