/* Coloway visual system — B2C New Mirox */
:root { --cw-ink:#0b1220; --cw-muted:#5c6b80; --cw-line:#dce3ec; --cw-surface:#f7f9fc; --cw-orange:#ff6a00; --cw-cyan:#2bd9ff; --cw-lilac:#8b5cf6; --cw-radius:18px; }
html { scroll-behavior:smooth; }
body { background:var(--cw-surface); color:var(--cw-ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.f-header { position:relative; z-index:40; }
.f-header__desktop { background:rgba(247,249,252,.94); border-bottom:1px solid var(--cw-line); backdrop-filter:blur(16px); }
.f-menu__link--main { color:var(--cw-ink); font-size:14px; letter-spacing:.02em; }
.f-menu__link--main:hover { color:var(--cw-orange); }
.f-logo strong,.f-logo__text { letter-spacing:.16em; font-weight:800; color:var(--cw-ink); }
.f-promotion__text { font-size:12px !important; letter-spacing:.11em; text-transform:uppercase; }
.cw-hero .m-slide__content { max-width:620px; }
.cw-hero h1 { font-size:clamp(2.6rem,6vw,5.4rem); line-height:.98; letter-spacing:-.055em; font-weight:800; text-wrap:balance; }
.cw-hero .m-slide__description { max-width:470px; font-size:18px; line-height:1.55; }
.cw-hero .f-button { box-shadow:0 12px 28px rgba(11,18,32,.18); }
.cw-categories .m-collection-card { border-radius:var(--cw-radius); overflow:hidden; background:#fff; border:1px solid var(--cw-line); transition:transform .3s ease,box-shadow .3s ease; }
.cw-categories .m-collection-card:hover { transform:translateY(-5px); box-shadow:0 16px 32px rgba(11,18,32,.12); }
.cw-categories .m-collection-card img { aspect-ratio:1; object-fit:cover; }
.cw-categories .category-title { font-size:15px; letter-spacing:.01em; }
.cw-statement { background:#fff; border-top:1px solid var(--cw-line); border-bottom:1px solid var(--cw-line); }
.cw-statement h2 { font-size:clamp(2rem,4vw,3.6rem); letter-spacing:-.045em; line-height:1.02; }
.cw-statement .rte { max-width:650px; margin:0 auto; color:var(--cw-muted); }
.cw-product-row .m-product-card { border-radius:var(--cw-radius); overflow:hidden; background:#fff; border:1px solid var(--cw-line); transition:transform .3s ease,box-shadow .3s ease; }
.cw-product-row .m-product-card:hover { transform:translateY(-4px); box-shadow:0 18px 36px rgba(11,18,32,.12); }
.cw-product-row .m-product-card__media img { aspect-ratio:1; object-fit:cover; }
.cw-product-row .m-product-card__title { font-weight:650; color:var(--cw-ink); }
.cw-product-row .m-price { color:var(--cw-orange); font-weight:700; }
.cw-promo { color:#fff; overflow:hidden; }
.cw-promo:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(11,18,32,.9),rgba(11,18,32,.35)); pointer-events:none; }
.cw-promo .m-promotion-banner__content { position:relative; z-index:1; }
.cw-promo h2 { font-size:clamp(2rem,4vw,4rem); letter-spacing:-.045em; }
.cw-trust { background:#101a2b; color:#fff; }
.cw-trust .m-icon-box { border-color:rgba(255,255,255,.16); }
.cw-trust .m-icon-box__title { color:#fff; }
.cw-trust .m-icon-box__description { color:#b8c3d2; }
.f-footer { background:#101a2b; color:#dce7f2; border-top:1px solid #26344a; }
.f-footer a { color:#dce7f2; }
.f-footer a:hover { color:var(--cw-cyan); }
.m-collection-page-header,.f-page-title { background:linear-gradient(135deg,#101a2b,#1d2b46); color:#fff; }
.m-collection-page-header h1,.f-page-title h1 { color:#fff; letter-spacing:-.04em; }
.f-collection-list .m-collection-card,.f-collection-product-list .m-product-card { border-radius:var(--cw-radius); overflow:hidden; }
.f-product-page .m-product__title { letter-spacing:-.035em; }
.f-product-page .m-product__price { color:var(--cw-orange); font-weight:750; }
.f-product-page .f-button--primary,.m-cart-drawer .f-button--primary { background:var(--cw-orange); border-color:var(--cw-orange); }
.f-product-page .f-product-option--node__label { border-radius:999px; border-color:var(--cw-line); }
.f-product-page .f-product-option__input:checked + .f-product-option--node__label { background:var(--cw-ink); color:#fff; border-color:var(--cw-ink); }
.f-breadcrumb a { color:var(--cw-muted); }
.f-input,.f-select,input,textarea { border-radius:10px; border-color:var(--cw-line); }
@media (max-width:767px) { .cw-hero h1{font-size:2.6rem;} .cw-hero .m-slide__description{font-size:16px;} .cw-categories .m-collection-card{border-radius:14px;} }
/* Mirox's product and slide markup */
.cw-hero .f-slide__content { max-width: 620px; }
.cw-hero .f-slide__title { font-size: clamp(2.6rem, 6vw, 5.4rem); line-height: .98; letter-spacing: -.055em; font-weight: 800; }
.cw-hero .f-slide__description { max-width: 470px; font-size: 18px; line-height: 1.55; }
.cw-categories .f-collection-card { border-radius: var(--cw-radius); overflow: hidden; background: #fff; border: 1px solid var(--cw-line); transition: transform .3s ease, box-shadow .3s ease; }
.cw-categories .f-collection-card:hover { transform: translateY(-5px); box-shadow: 0 16px 32px rgba(11,18,32,.12); }
.cw-categories .f-collection-card img { aspect-ratio: 1; object-fit: cover; }
.cw-product-row .f-product-card { border-radius: var(--cw-radius); overflow: hidden; background: #fff; border: 1px solid var(--cw-line); transition: transform .3s ease, box-shadow .3s ease; }
.cw-product-row .f-product-card:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(11,18,32,.12); }
.cw-product-row .f-product-card__media img { aspect-ratio: 1; object-fit: cover; }
.cw-product-row .f-product-card__name { font-weight: 650; color: var(--cw-ink); }
.cw-product-row .f-product-card__price { color: var(--cw-orange); font-weight: 700; }
.f-product .f-product__title, .f-product__title { letter-spacing: -.035em; }
.f-product .f-product__price, .f-product__price { color: var(--cw-orange); font-weight: 750; }
.cw-product-main .f-main-product--media { border-radius: var(--cw-radius); overflow: hidden; }
.cw-product-main .f-main-product--info { padding-left: clamp(20px, 4vw, 64px); }
.cw-product-main .f-product-info--wrapper { max-width: 560px; }
.cw-product-main .f-product-info--wrapper .f-button--primary { background: var(--cw-orange); border-color: var(--cw-orange); }
.cw-product-main .f-product-option--node__label { border-radius: 999px; border-color: var(--cw-line); }

/* Expanded home modules and content pages */
.cw-marquee { background: var(--cw-orange); color: #fff; }
.cw-marquee .f-promotion__text { color: #fff; }
.cw-lighting-story, .cw-sign-story, .cw-business-story, .cw-about-lighting, .cw-about-signs, .cw-contact-hero { background: #fff; }
.cw-lighting-story img, .cw-sign-story img, .cw-business-story img, .cw-about-lighting img, .cw-about-signs img, .cw-contact-hero img { border-radius: var(--cw-radius); object-fit: cover; }
.cw-lighting-story h2, .cw-sign-story h2, .cw-business-story h2, .cw-about-lighting h2, .cw-about-signs h2 { font-size: clamp(2rem, 4vw, 3.8rem); letter-spacing: -.045em; line-height: 1.02; }
.cw-use-cases .f-collection-card, .cw-use-cases .m-collection-card { border: 1px solid var(--cw-line); border-radius: var(--cw-radius); background: #fff; }
.cw-use-cases .f-collection-card:hover, .cw-use-cases .m-collection-card:hover { box-shadow: 0 16px 34px rgba(11,18,32,.1); transform: translateY(-4px); }
.cw-buying-guide, .cw-support-note, .cw-faq-cta, .cw-about-principles, .cw-about-process, .cw-about-support, .cw-contact-followup { background: #fff; border-top: 1px solid var(--cw-line); border-bottom: 1px solid var(--cw-line); }
.cw-buying-guide h2, .cw-support-note h2, .cw-faq-cta h2, .cw-about-principles h2, .cw-about-process h2, .cw-about-support h2 { font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.045em; }
.cw-final-cta { color: #fff; }
.cw-final-cta:before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(11,18,32,.92), rgba(11,18,32,.35)); pointer-events: none; }
.cw-final-cta > * { position: relative; z-index: 1; }
.cw-service { background: var(--cw-ink); color: #fff; }
.cw-service .f-icon-box__heading, .cw-service .f-icon-box__description { color: #fff; }
.cw-service .f-icon-box__description { opacity: .75; }
.cw-faqs { background: #fff; }
.cw-faqs .f-accordion, .cw-faqs .m-accordion { border-color: var(--cw-line); }
.cw-faq-intro { max-width: 760px; margin: 0 auto 28px; text-align: center; }
.cw-kicker { color: var(--cw-orange); font-size: 12px; letter-spacing: .16em; font-weight: 750; text-transform: uppercase; }
.cw-about-pillars, .cw-about-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 28px; text-align: left; }
.cw-about-pillars > div, .cw-about-steps > div { padding: 22px; border: 1px solid var(--cw-line); border-radius: 14px; background: var(--cw-surface); }
.cw-about-pillars strong, .cw-about-steps span { color: var(--cw-orange); }
.cw-about-steps span { font-size: 14px; font-weight: 800; letter-spacing: .1em; }
.cw-contact-intro { background: #fff; }
.cw-contact-intro a, .cw-contact-followup a, .cw-about-support a, .cw-faq-support a { color: var(--cw-orange); font-weight: 700; }
.cw-contact-followup { text-align: center; }
@media (max-width: 767px) {
  .cw-about-pillars, .cw-about-steps { grid-template-columns: 1fr; }
  .cw-lighting-story h2, .cw-sign-story h2, .cw-business-story h2 { font-size: 2.2rem; }
}

/* cw-contrast-containment-20261017: keep banner overlays inside their own sections. */
.cw-promo, .cw-final-cta { position: relative; isolation: isolate; }
.cw-promo::before, .cw-final-cta::before { z-index: 0; }
.cw-promo > *, .cw-final-cta > * { position: relative; z-index: 1; }
.cw-hero .f-slide__content, .cw-about-hero .f-slide__content { color: #fff; }
.cw-hero h1, .cw-hero .f-slide__title, .cw-about-hero h1, .cw-about-hero .f-slide__title { color: #fff; }
