/* Red & White Marketplace — visual adaptation of a modern digital-goods storefront.
   Design layer only. Backend, payment routes and database are unchanged. */
:root {
    --base-h: 349 !important;
    --base-s: 85% !important;
    --base-l: 42% !important;
    --rw-red: #c8102e;
    --rw-red-dark: #a60924;
    --rw-red-pale: #fff1f3;
    --rw-white: #ffffff;
    --rw-ink: #20202c;
    --rw-muted: #6e7280;
    --rw-stroke: #e9e8eb;
    --rw-surface: #f8f8fa;
    --rw-radius: 18px;
    --rw-shadow: 0 12px 42px rgba(31, 21, 35, .055);
}
html {scroll-behavior: smooth; scroll-padding-top: 110px;}
body {background: #fff; color: var(--rw-ink); font-family: 'Inter', 'Nunito', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; line-height: 1.6;}
h1,h2,h3,h4,h5,h6 {color: var(--rw-ink); letter-spacing: -.035em; font-family: inherit; font-weight: 800;}
a {transition: color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;}
a:hover {color: var(--rw-red);}
button {transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;}
:focus-visible {outline: 3px solid #ff9baa !important; outline-offset: 3px;}
.container {max-width: 1200px;}
.section-bg {background: var(--rw-surface) !important;}
.text--base,.text--base:hover {color: var(--rw-red) !important;}
.bg--base {background: var(--rw-red) !important;}
.btn.btn--base,.btn--base,.btn.btn--base.btn--sm,.btn.btn--base.btn--md {display: inline-flex; gap: 9px; justify-content: center; align-items: center; background: var(--rw-red) !important; color: #fff !important; border: 1px solid var(--rw-red) !important; border-radius: 11px !important; font-weight: 700; padding: 12px 20px; text-decoration: none; box-shadow: none; line-height: 1.3;}
.btn.btn--base:hover,.btn--base:hover {background: var(--rw-red-dark) !important; color: #fff !important; border-color: var(--rw-red-dark) !important; transform: translateY(-1px);}
.btn.btn--base[disabled],.btn--base[disabled] {opacity: .48; cursor: not-allowed; transform: none;}
.btn-outline--base {color: var(--rw-red) !important; border: 1px solid #f4c8d1 !important; background: transparent !important; border-radius: 11px !important;}
.btn-outline--base:hover {color: #fff !important; background: var(--rw-red) !important;}
.form--control,.form-control,.form-select,.select2-container--default .select2-selection--single {border: 1px solid #e5e5eb !important; color: var(--rw-ink); background-color: #fff; border-radius: 10px !important; box-shadow: none !important; min-height: 48px;}
.form--control:focus,.form-control:focus,.form-select:focus {border-color: var(--rw-red) !important; box-shadow: 0 0 0 4px rgba(200, 16, 46, .08) !important;}
.form--label {font-weight: 700; color: var(--rw-ink);}
.rw-announcement {background: #9f0922; color: #fff; font-size: 12px; font-weight: 600;}
.rw-announcement__inner {display: flex; justify-content: space-between; align-items: center; min-height: 34px; gap: 16px;}
.rw-announcement i {opacity: .9; margin-right: 7px;}
.rw-announcement a {color: #fff; text-decoration: none;}
.rw-announcement a:hover {color: #ffe3e8;}
.rw-header,.header.rw-header {position: relative; top: auto; left: auto; width: 100%; z-index: 100; padding: 0; background: white; box-shadow: 0 1px 0 rgba(36, 37, 48, .08);}
.rw-header.fixed-header,.header.rw-header.fixed-header {position: sticky; top: 0; width: 100%; animation: none; background: white; box-shadow: 0 6px 20px rgba(31,21,35,.08);}
.rw-navbar.navbar {display: flex; flex-wrap: wrap; align-items: center; min-height: 83px; padding: 12px 0 !important; gap: 14px;}
.rw-brand {display: inline-flex !important; gap: 11px; align-items: center; flex-shrink: 0; margin: 0 !important; text-decoration: none; max-width: 260px;}
.rw-brand__mark {background: var(--rw-red); color: white; width: 42px; height: 42px; border-radius: 12px; display: inline-grid; place-items: center; font-size: 18px; transform: rotate(-5deg); flex-shrink: 0;}
.rw-brand__mark i {transform: rotate(5deg);}
.rw-brand__text {display: flex; min-width: 0; flex-direction: column; font-size: 20px; line-height: 1.1; color: #171824; font-weight: 850; letter-spacing: -.045em; overflow-wrap: anywhere;}
.rw-brand__text small {font-size: 10px; line-height: 1.7; color: var(--rw-muted); font-weight: 650; text-transform: uppercase; letter-spacing: .135em;}
.rw-header-actions {display: flex; align-items: center; gap: 17px; margin-left: auto; flex-shrink: 0;}
.rw-header-login {display: inline-flex; gap: 8px; align-items: center; font-size: 14px; font-weight: 700; color: var(--rw-ink); white-space: nowrap;}
.rw-header-login i {font-size: 18px; color: var(--rw-red);}
.btn.rw-header-signup {font-size: 13px; padding: 12px 16px !important; white-space: nowrap;}
.rw-navigation {flex: 1; min-width: 0;}
.rw-navbar .nav-menu {gap: 1px; padding: 0;}
.rw-navbar .nav-menu .nav-item {padding: 0 !important;}
.rw-navbar .nav-menu .nav-link,.header.rw-header .nav-link {color: #33343d !important; padding: 10px 9px !important; font-size: 13px; font-weight: 700; border-radius: 8px; white-space: nowrap;}
.rw-navbar .nav-menu .nav-link:hover,.rw-navbar .nav-menu .active > .nav-link,.rw-header .nav-menu .nav-item:hover .nav-link {color: var(--rw-red) !important;}
.rw-nav-categories .dropdown-menu {padding: 9px; margin-top: 10px; border: 1px solid var(--rw-stroke); border-radius: 14px; box-shadow: var(--rw-shadow); min-width: 180px;}
.rw-nav-categories .dropdown-item {font-size: 14px; color: var(--rw-ink); font-weight: 600; padding: 9px 12px; border-radius: 7px;}
.rw-nav-categories .dropdown-item:hover {background: var(--rw-red-pale); color: var(--rw-red);}
.rw-nav-search {display: none;}
.rw-nav-search input {width: 100%; border: 1px solid var(--rw-stroke); border-radius: 8px; padding: 10px 40px 10px 13px;}
.rw-nav-search button {position: absolute; right: 15px; top: 10px; color: var(--rw-red); background: none; border: 0;}
.rw-nav-toggle.navbar-toggler {display: none; background: #fff5f6; color: var(--rw-red); border: 1px solid #f4cbd3; width: 42px; height: 42px; border-radius: 10px; padding: 0; box-shadow: none; font-size: 17px;}
/* Hero */
.rw-hero {position: relative; background: linear-gradient(125deg, #b20b28 0%, #c8102e 53%, #e11c45 100%); color: white; overflow: hidden;}
.rw-hero::before {content: ''; position: absolute; width: 620px; height: 620px; border-radius: 50%; border: 1px solid rgba(255,255,255,.13); left: -210px; top: -310px; box-shadow: 0 0 0 85px rgba(255,255,255,.035), 0 0 0 170px rgba(255,255,255,.02); pointer-events: none;}
.rw-hero::after {content:''; position: absolute; width: 530px; height: 530px; right: -220px; bottom: -350px; border: 90px solid rgba(255,255,255,.055); border-radius: 50%; pointer-events: none;}
.rw-hero__container {padding-top: 96px; padding-bottom: 100px; position: relative; z-index: 2;}
.rw-eyebrow {display: inline-flex; align-items: center; gap: 9px; padding: 8px 13px; border-radius: 100px; background: rgba(255,255,255,.12); color: white; font-size: 12px; font-weight: 700; letter-spacing: .03em; border: 1px solid rgba(255,255,255,.2);}
.rw-dot {width: 7px; height: 7px; background: #fff; border-radius: 100%; box-shadow: 0 0 0 4px rgba(255,255,255,.13);}
.rw-hero__copy h1 {font-size: clamp(39px,4.4vw,64px); line-height: 1.1; margin: 22px 0 21px; color: #fff; letter-spacing: -.06em; max-width: 650px;}
.rw-hero__copy p {font-size: 16px; line-height: 1.85; color: #ffe0e6; max-width: 540px; margin: 0;}
.rw-hero__buttons {display: flex; align-items: center; gap: 26px; flex-wrap: wrap; margin-top: 32px;}
.btn.rw-btn-white,.rw-btn-white {display: inline-flex; align-items: center; justify-content: center; gap: 13px; background: #fff; color: var(--rw-red); border: 1px solid #fff; border-radius: 11px; padding: 14px 20px; font-weight: 800; font-size: 14px; box-shadow: 0 7px 20px rgba(79,0,16,.10);}
.btn.rw-btn-white:hover,.rw-btn-white:hover {color: #9b0920; background: #fff5f6; transform: translateY(-2px);}
.rw-hero__secondary {display: inline-flex; gap: 10px; align-items: center; font-size: 14px; font-weight: 700; color: #fff;}
.rw-hero__secondary:hover {color: #fff; text-decoration: underline;}
.rw-hero__secondary i {font-size: 24px;}
.rw-hero__assurances {display: flex; flex-wrap: wrap; gap: 14px 21px; margin-top: 37px; font-size: 12px; font-weight: 650; color: #fff0f2;}
.rw-hero__assurances i {margin-right: 5px;}
.rw-hero-preview {position: relative; max-width: 495px; margin-left: auto; border: 1px solid rgba(255,255,255,.55); border-radius: 22px; overflow: visible; padding: 0; background: white; color: var(--rw-ink); box-shadow: 0 25px 60px rgba(75,6,24,.25); transform: rotate(1.2deg);}
.rw-preview-top {display: flex; justify-content: space-between; align-items: center; background: #f9f9fb; border-radius: 22px 22px 0 0; padding: 15px 23px; border-bottom: 1px solid #eeedf0; color: #858696; font-size: 11px; font-weight: 700;}
.rw-preview-top i.fa-lock {color: #1b9a6e;}
.rw-preview-window-dots {display: inline-flex; gap: 6px;}
.rw-preview-window-dots i {display: block; background: #e5e3e7; width: 8px; height: 8px; border-radius: 50%;}
.rw-preview-window-dots i:first-child {background: #ff7786;}
.rw-preview-window-dots i:nth-child(2) {background: #ffcc65;}
.rw-preview-window-dots i:nth-child(3) {background: #7cd7aa;}
.rw-preview-body {padding: 24px 27px 27px;}
.rw-preview-heading {display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
.rw-preview-label {display: block; font-size: 10px; letter-spacing: .15em; font-weight: 800; color: var(--rw-red); margin-bottom: 5px;}
.rw-preview-heading h3 {font-size: 20px; margin: 0;}
.rw-preview-icon {display: grid; place-items: center; color: var(--rw-red); width: 44px; height: 44px; background: var(--rw-red-pale); border-radius: 12px;}
.rw-preview-product {display: flex; align-items: center; gap: 13px; padding: 12px 0; border-bottom: 1px solid #f1f1f3; color: var(--rw-ink);}
.rw-preview-product:hover {color: var(--rw-red);}
.rw-preview-product__photo {width: 50px; height: 50px; flex: 0 0 50px; border-radius: 11px; background: #f7f7fa; overflow: hidden; padding: 6px;}
.rw-preview-product__photo img {width: 100%; height: 100%; object-fit: contain;}
.rw-preview-product__title {flex: 1; min-width: 0;}
.rw-preview-product__title strong {display: block; font-size: 13px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.rw-preview-product__title small {display: block; font-size: 11px; color: #888a97; margin-top: 4px;}
.rw-preview-product__price {font-size: 13px; font-weight: 850; white-space: nowrap; color: var(--rw-red);}
.rw-preview-placeholder {padding: 26px 10px; text-align: center; font-size: 13px; color: var(--rw-muted);}
.rw-preview-placeholder i {display: block; color: var(--rw-red); font-size: 27px; margin-bottom: 12px;}
.rw-preview-browse {display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 22px; padding: 12px; font-size: 12px; font-weight: 800; color: var(--rw-red); background: var(--rw-red-pale); border-radius: 9px;}
.rw-preview-browse:hover {color: var(--rw-red-dark);}
.rw-preview-decoration {position: absolute; z-index: -1; border-radius: 16px; border: 1px solid rgba(255,255,255,.2);}
.rw-preview-decoration--one {width: 100%; height: 100%; top: 16px; left: 18px;}
.rw-preview-decoration--two {width: 90px; height: 90px; left: -40px; bottom: -36px; background: rgba(255,255,255,.12); border-radius: 50%;}
.rw-trust-strip {background: #fff; border-bottom: 1px solid var(--rw-stroke);}
.rw-trust-strip__inner {display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; padding: 21px 0;}
.rw-trust-strip__inner span {display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 12px; color: #545563; font-weight: 750;}
.rw-trust-strip__inner i {font-size: 16px; color: var(--rw-red);}
/* Sections */
.rw-section {padding: 91px 0;}
.rw-platforms {background: #fff;}
.rw-featured-section {background: #faf9fa;}
.rw-benefits {background: #fff;}
.rw-how {background: #fff7f8;}
.rw-section-heading {margin-bottom: 35px;}
.rw-section-heading--center {max-width: 730px; margin: 0 auto 39px; text-align: center;}
.rw-section-heading--split {display: flex; justify-content: space-between; align-items: flex-end; gap: 20px;}
.rw-kicker {color: var(--rw-red); font-size: 11px; font-weight: 850; letter-spacing: .18em; line-height: 2; text-transform: uppercase;}
.rw-section-heading h2,.rw-cta h2 {font-size: clamp(27px,3vw,39px); line-height: 1.2; margin: 7px 0 10px;}
.rw-section-heading p {max-width: 680px; color: var(--rw-muted); font-size: 14px; line-height: 1.8; margin: 0;}
.rw-section-heading--center p {margin: 0 auto;}
.rw-text-link {display: inline-flex; align-items: center; gap: 10px; color: var(--rw-red); font-weight: 800; font-size: 14px;}
.rw-center-action {text-align: center; padding-top: 32px;}
.rw-outlined-link {display: inline-flex; justify-content: center; align-items: center; gap: 10px; flex-shrink: 0; color: var(--rw-red); background: white; border: 1px solid #edc7d0; padding: 10px 15px; border-radius: 9px; font-size: 13px; font-weight: 800;}
.rw-outlined-link:hover {background: var(--rw-red); color: white; border-color: var(--rw-red);}
/* Categories */
.rw-platform-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px;}
.rw-platform-card {position: relative; display: flex; flex-direction: column; align-items: flex-start; min-width: 0; min-height: 174px; padding: 23px; border-radius: 16px; border: 1px solid #edecf0; background: #fff; color: var(--rw-ink); box-shadow: 0 3px 10px rgba(30,30,40,.02);}
.rw-platform-card:hover {border-color: #e9adb9; box-shadow: 0 16px 30px rgba(143,14,45,.08); color: var(--rw-ink); transform: translateY(-4px);}
.rw-platform-card__icon {width: 49px; height: 49px; display: grid; place-items: center; border-radius: 13px; background: #fff1f3; color: var(--rw-red); font-size: 22px; margin-bottom: 16px;}
.rw-platform-card strong {font-weight: 800; font-size: 15px; line-height: 1.25; overflow-wrap: anywhere;}
.rw-platform-card small {font-size: 12px; color: var(--rw-muted); margin-top: 4px;}
.rw-platform-card__arrow {position: absolute; top: 23px; right: 23px; font-size: 11px; color: #c7bbc0; transform: rotate(45deg);}
.rw-platform-card:hover .rw-platform-card__arrow {color: var(--rw-red);}
/* Product cards */
.rw-product-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px;}
.rw-product-card {display: flex; flex-direction: column; background: white; border: 1px solid #edecef; border-radius: 16px; overflow: hidden; min-width: 0; box-shadow: 0 4px 17px rgba(30,20,35,.025); transition: box-shadow .22s ease, transform .22s ease;}
.rw-product-card:hover {box-shadow: 0 19px 35px rgba(45,20,40,.09); transform: translateY(-4px);}
.rw-product-card__image {height: 175px; display: grid; place-items: center; background: linear-gradient(150deg,#fff1f3,#f8f5f7); position: relative; overflow: hidden; padding: 25px;}
.rw-product-card__image img {max-height: 130px; max-width: 100%; height: auto; width: auto; object-fit: contain; transition: transform .25s ease;}
.rw-product-card:hover .rw-product-card__image img {transform: scale(1.055);}
.rw-product-card__badge {position: absolute; top: 12px; left: 12px; background: white; padding: 4px 10px; border-radius: 30px; font-size: 10px; font-weight: 850; color: #237e5b; box-shadow: 0 2px 8px rgba(0,0,0,.05);}
.rw-product-card__body {display: flex; flex-direction: column; flex: 1; padding: 19px 19px 18px;}
.rw-product-card__category {color: var(--rw-red); font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 6px;}
.rw-product-card__category i {margin-right: 4px;}
.rw-product-card__title {font-size: 16px; line-height: 1.4; margin: 0 0 7px; letter-spacing: -.018em;}
.rw-product-card__title a {color: var(--rw-ink); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
.rw-product-card__title a:hover {color: var(--rw-red);}
.rw-product-card__description {color: var(--rw-muted); font-size: 12px; line-height: 1.7; margin: 0 0 15px; min-height: 41px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
.rw-product-card__meta {display: flex; align-items: center; justify-content: space-between; gap: 5px; margin-top: auto; border-top: 1px solid #f0eff1; padding: 13px 0 10px; font-size: 11px; color: var(--rw-muted);}
.rw-product-card__meta i {color: var(--rw-red); margin-right: 4px;}
.rw-product-card__bottom {display: flex; align-items: center; justify-content: space-between; gap: 8px;}
.rw-product-card__bottom strong {font-size: 17px; color: var(--rw-ink); font-weight: 850; white-space: nowrap;}
.rw-product-card__bottom .btn {padding: 9px 12px !important; border-radius: 9px !important; font-size: 11px !important; white-space: nowrap; flex-shrink: 0;}
/* Why shop and how it works */
.rw-benefits-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px;}
.rw-benefit {background: white; padding: 28px 24px; border: 1px solid var(--rw-stroke); border-radius: 16px;}
.rw-benefit__icon {display: grid; place-items: center; width: 53px; height: 53px; background: var(--rw-red-pale); color: var(--rw-red); border-radius: 13px; font-size: 20px; margin-bottom: 20px;}
.rw-benefit h3 {font-size: 16px; margin: 0 0 10px;}
.rw-benefit p {font-size: 13px; line-height: 1.8; color: var(--rw-muted); margin: 0;}
.rw-steps-grid {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px;}
.rw-step {position: relative; text-align: center; padding: 30px 18px 8px;}
.rw-step__number {display: block; font-size: 11px; font-weight: 850; letter-spacing: .2em; color: #c36f7d; margin-bottom: 15px;}
.rw-step__icon {display: grid; place-items: center; width: 78px; height: 78px; border-radius: 23px; background: white; color: var(--rw-red); font-size: 28px; margin: 0 auto 22px; box-shadow: 0 8px 22px rgba(150,26,44,.06); border: 1px solid #f6d9df;}
.rw-step h3 {font-size: 17px; margin: 0 0 12px;}
.rw-step p {font-size: 13px; color: var(--rw-muted); margin: 0; line-height: 1.8;}
/* CTA */
.rw-cta {background: linear-gradient(120deg,#a80924,#d91539); padding: 65px 0; color: white;}
.rw-cta__inner {display: flex; justify-content: space-between; align-items: center; gap: 30px;}
.rw-kicker--white {color: #ffc5d0;}
.rw-cta h2 {color: white; margin: 7px 0 9px;}
.rw-cta p {font-size: 14px; color: #ffe1e7; margin: 0;}
.rw-cta__actions {display: flex; flex-direction: column; gap: 12px; min-width: 192px;}
.rw-cta__outline {text-align: center; padding: 13px 19px; border: 1px solid rgba(255,255,255,.5); border-radius: 11px; color: white; font-size: 13px; font-weight: 750;}
.rw-cta__outline:hover {background: rgba(255,255,255,.13); color: white;}
/* Breadcrumb and catalog */
.rw-breadcrumb {background: linear-gradient(115deg,#fff6f7,#fff); border-bottom: 1px solid #faeaee; padding: 43px 0 41px;}
.rw-breadcrumb__inner {display: flex; justify-content: space-between; align-items: center; gap: 25px;}
.rw-breadcrumb h1 {font-size: clamp(27px,3vw,38px); margin: 2px 0 0; line-height: 1.2;}
.rw-breadcrumb nav {display: flex; align-items: center; gap: 11px; font-size: 12px; color: var(--rw-muted);}
.rw-breadcrumb nav a {color: var(--rw-red); font-weight: 750;}
.rw-breadcrumb nav i {font-size: 10px;}
.rw-catalog-page {padding-top: 65px; background: #fdfdfe;}
.rw-catalog-search {position: relative; display: flex; align-items: center; margin-bottom: 44px; padding: 7px; background: white; border: 1px solid var(--rw-stroke); border-radius: 13px; box-shadow: 0 5px 18px rgba(40,30,45,.025);}
.rw-catalog-search > i {position: absolute; left: 20px; font-size: 17px; color: #aaa3ab;}
.rw-catalog-search input {height: 45px; flex: 1; min-width: 0; border: 0; background: transparent; padding: 10px 15px 10px 44px; outline: none; font-size: 14px;}
.rw-catalog-search input:focus {box-shadow: none;}
.rw-catalog-search .btn {min-width: 100px;}
.rw-catalog-category {margin-bottom: 55px;}
.rw-catalog-category__heading {display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 20px;}
.rw-catalog-category__heading h3 {font-size: 23px; margin: 3px 0 0;}
.rw-category-label {font-size: 10px; color: var(--rw-red); letter-spacing: .17em; font-weight: 800;}
.rw-empty-state {padding: 65px 18px; background: white; border: 1px dashed #e1d4d7; border-radius: 17px; text-align: center; margin: 15px 0;}
.rw-empty-state i {display: block; font-size: 38px; color: #d69aa7; margin-bottom: 15px;}
.rw-empty-state h3 {font-size: 20px; margin-bottom: 8px;}
.rw-empty-state p {font-size: 13px; color: var(--rw-muted); margin-bottom: 10px;}
.rw-grid-empty {grid-column: 1/-1;}
.rw-pagination {margin-top: 27px;}
.pagination .page-link {color: var(--rw-red); border-color: var(--rw-stroke);}
.pagination .page-item.active .page-link {background: var(--rw-red); border-color: var(--rw-red); color: white;}
/* Product details */
.rw-product-detail-page {background: #faf9fa; padding-top: 50px;}
.rw-back-link {display: inline-flex; align-items: center; gap: 10px; font-size: 13px; color: var(--rw-red); font-weight: 750; margin-bottom: 25px;}
.rw-detail-layout {display: grid; grid-template-columns: .9fr 1.1fr; gap: 43px; align-items: start; padding: 28px; border-radius: 20px; background: #fff; border: 1px solid var(--rw-stroke); box-shadow: var(--rw-shadow);}
.rw-detail-image {display: flex; align-items: center; justify-content: center; min-height: 370px; padding: 48px; background: linear-gradient(150deg,#fff0f3,#f8f5f8); border-radius: 15px;}
.rw-detail-image img {width: 100%; max-height: 330px; object-fit: contain;}
.rw-detail-info {padding: 10px 5px 8px 0;}
.rw-detail-info h1 {font-size: clamp(27px,3vw,39px); margin: 8px 0 17px;}
.rw-detail-status {display: flex; align-items: center; gap: 16px; padding-bottom: 20px; border-bottom: 1px solid var(--rw-stroke); color: var(--rw-muted); font-size: 13px;}
.rw-detail-status i {font-size: 7px; margin-right: 5px;}
.rw-stock-available {color: #21845f; font-weight: 800;}
.rw-stock-out {color: var(--rw-red); font-weight: 800;}
.rw-detail-description {font-size: 14px; color: #62636c; line-height: 1.85; padding: 25px 0; overflow-wrap: anywhere;}
.rw-detail-description * {max-width: 100%;}
.rw-detail-purchase {display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 19px 0; border-top: 1px solid var(--rw-stroke);}
.rw-detail-purchase small {display: block; font-size: 10px; font-weight: 800; color: var(--rw-muted); letter-spacing: .1em;}
.rw-detail-purchase strong {display: block; color: var(--rw-ink); font-size: 29px; letter-spacing: -.04em;}
.rw-detail-note {font-size: 11px; margin: 4px 0 0; color: var(--rw-muted);}
.rw-detail-note i {color: var(--rw-red); margin-right: 4px;}
.rw-related-products {padding-top: 65px;}
/* Footer */
.rw-footer {background: #780a20; color: #f8d9e0; padding-top: 72px;}
.rw-footer-grid {display: grid; grid-template-columns: 1.6fr .85fr .85fr 1.1fr; gap: 42px; padding-bottom: 62px;}
.rw-footer .rw-brand__mark {width: 42px; height: 42px;}
.rw-footer .rw-brand__text {color: #fff;}
.rw-footer .rw-brand__text small {color: #ffd0da;}
.rw-footer p {font-size: 13px; line-height: 1.9; color: #f8d9e0; margin-top: 17px;}
.rw-footer-intro p {max-width: 305px;}
.rw-footer h3 {color: white; font-size: 14px; letter-spacing: 0; margin: 9px 0 23px;}
.rw-footer ul {list-style: none; margin: 0; padding: 0;}
.rw-footer li {margin: 0 0 13px;}
.rw-footer li a,.rw-footer-email {font-size: 13px; color: #f5d0d9;}
.rw-footer li a:hover,.rw-footer-email:hover {color: #fff;}
.rw-footer-socials {display: flex; align-items: center; gap: 9px; margin-top: 22px; flex-wrap: wrap;}
.rw-footer-socials a {color: #fff; width: 34px; height: 34px; display: grid; place-items: center; background: rgba(255,255,255,.15); border-radius: 8px; font-size: 14px;}
.rw-footer-socials a:hover {background: var(--rw-red); color: white;}
.rw-footer-email {display: inline-flex; gap: 9px; align-items: center; overflow-wrap: anywhere;}
.rw-footer-support {display: flex; align-items: center; gap: 9px; width: fit-content; margin-top: 17px; color: #ff98ac; font-size: 13px; font-weight: 800;}
.rw-footer-support:hover {color: white;}
.rw-footer-bottom {display: flex; justify-content: space-between; align-items: center; gap: 15px; border-top: 1px solid rgba(255,255,255,.2); padding: 22px 0; font-size: 12px; color: #fad6df;}
.rw-footer-bottom > div {display: flex; gap: 19px; flex-wrap: wrap;}
.rw-footer-bottom a {color: #fad6df; font-size: 12px;}
.rw-footer-bottom a:hover {color: white;}
/* Existing pages, dashboards, support, checkout modal and CMS pages */
.account {background: linear-gradient(150deg,#fff3f5,#fff); padding: 68px 0 84px;}
.account-inner {padding: 0;}
.account-form {border: 1px solid var(--rw-stroke); border-radius: 19px; padding: 35px !important; background: #fff; box-shadow: var(--rw-shadow);}
.account-form__title {color: var(--rw-ink); font-size: 28px;}
.account-form__desc {color: var(--rw-muted); font-size: 13px;}
.have-account {font-size: 13px;}
.custom--card,.card,.custom--card-two {border: 1px solid var(--rw-stroke); border-radius: 13px; box-shadow: 0 2px 12px rgba(30,20,35,.025);}
.card-header {border-radius: 12px 12px 0 0 !important;}
.custom--card-two {background: white;}
.custom--table thead th,.table thead th {background: #fff2f4; color: var(--rw-ink);}
.table .btn,.modal .btn {border-radius: 8px;}
.modal-content {border: 0; border-radius: 17px !important; overflow: hidden; box-shadow: 0 25px 70px rgba(30,20,35,.17);}
.modal-header {border-bottom: 1px solid var(--rw-stroke); padding: 20px 25px;}
.modal-title {font-weight: 800; color: var(--rw-ink);}
.modal-body {padding: 22px 25px;}
.modal-footer {padding: 19px 25px;}
#purchaseModal .modal-footer .btn.w-100 {border-radius: 0 0 13px 13px !important; padding: 16px 18px !important;}
#purchaseModal .preview-details .list-group-item {background: transparent; padding: 11px 0;}
#purchaseModal .preview-details .list-group-item span:last-child {font-weight: 750;}
.rw-account-header .rw-navbar {min-height: 77px;}
.rw-account-header + .rw-breadcrumb {padding: 38px 0;}
.notice,.alert {border-radius: 11px;}
.section-heading__subtitle,.section-heading__title::first-letter {color: var(--rw-red);}
.section-heading__title {color: var(--rw-ink);}
.feature-item,.how-work-item,.testimonial-item,.blog-item {border-radius: 16px !important; border: 1px solid var(--rw-stroke); box-shadow: var(--rw-shadow); background: white;}
.feature-item__icon,.how-work-item__icon {color: var(--rw-red) !important;}
.about-us,.features,.testimonials,.blog,.how-we-work {background: white;}
.about-us,.features,.testimonials,.blog,.how-we-work {scroll-margin-top: 100px;}
.counter {background: #b60b2b !important;}
.scroll-top {background: var(--rw-red) !important;}
.scroll-top i {color: #fff;}
.cookies-card {border: 1px solid var(--rw-stroke); border-radius: 15px; box-shadow: var(--rw-shadow);}
/* Tablet */
@media(max-width:1199px){
  .rw-navbar .nav-menu .nav-link,.header.rw-header .nav-link {font-size: 12px; padding-left: 7px !important; padding-right: 7px !important;}
  .rw-brand__text {font-size: 18px;}
  .rw-brand__mark {width: 37px;height: 37px;}
  .rw-header-actions {gap: 10px;}
  .rw-footer-grid {gap: 25px;}
  .rw-product-grid {grid-template-columns: repeat(3,minmax(0,1fr));}
}
@media(max-width:991px){
  .rw-nav-toggle.navbar-toggler {display: inline-grid; place-items: center;}
  .rw-navbar.navbar {min-height: 75px; position: relative;}
  .rw-navigation.navbar-collapse {width: 100%; flex-basis: 100%; order: 4 !important; padding: 12px 0 19px; flex-grow: 0;}
  .rw-navigation .nav-menu {display: flex; align-items: stretch !important; margin: 0 !important; gap: 1px;}
  .rw-navbar .nav-menu .nav-link,.header.rw-header .nav-link {font-size: 14px; padding: 11px 13px !important; border-radius: 9px;}
  .rw-navbar .nav-menu .nav-link:hover {background: #fff3f5;}
  .rw-nav-search {display: block; position: relative; margin: 12px 0 0;}
  .rw-header.fixed-header,.header.rw-header.fixed-header {position: relative;}
  .body-overlay.show {pointer-events: none; opacity: 0;}
  .rw-hero__container {padding-top: 75px; padding-bottom: 82px;}
  .rw-hero-preview {margin: 6px auto 0; transform: none;}
  .rw-platform-grid,.rw-benefits-grid,.rw-steps-grid {grid-template-columns: repeat(2,minmax(0,1fr));}
  .rw-footer-grid {grid-template-columns: repeat(2,minmax(0,1fr)); gap: 35px;}
  .rw-trust-strip__inner {grid-template-columns: repeat(2,1fr);}
}
@media(max-width:767px){
  .rw-announcement {font-size: 10px;}
  .rw-announcement__inner {padding-top: 7px; padding-bottom: 7px;}
  .rw-announcement__inner a {font-size: 0;}
  .rw-announcement__inner a i {font-size: 12px;}
  .rw-section {padding: 65px 0;}
  .rw-product-grid {grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px;}
  .rw-cta__inner,.rw-breadcrumb__inner {align-items: flex-start; flex-direction: column;}
  .rw-cta__actions {flex-direction: row; flex-wrap: wrap;}
  .rw-detail-layout {grid-template-columns: 1fr; gap: 22px; padding: 15px;}
  .rw-detail-image {min-height: 280px; padding: 35px;}
  .rw-detail-info {padding: 5px 4px 10px;}
  .rw-section-heading--split {align-items: flex-start; flex-direction: column;}
  .rw-breadcrumb {padding: 33px 0;}
  .account {padding: 48px 0;}
}
@media(max-width:520px){
  .rw-brand__mark {width: 34px; height: 34px; border-radius: 10px; font-size: 14px;}
  .rw-brand__text {font-size: 16px;}
  .rw-brand__text small {font-size: 8px;}
  .rw-header-actions {gap: 9px;}
  .rw-navbar.navbar {min-height: 69px;}
  .rw-hero__container {padding-top: 57px; padding-bottom: 70px;}
  .rw-hero__copy h1 {font-size: clamp(36px,9vw,47px);}
  .rw-hero__copy p {font-size: 14px;}
  .rw-hero__assurances {font-size: 11px; gap: 10px;}
  .rw-preview-body {padding: 20px 17px;}
  .rw-preview-top {padding: 12px 18px;}
  .rw-trust-strip__inner {gap: 14px 7px;}
  .rw-trust-strip__inner span {font-size: 10px; line-height: 1.5; text-align: left; justify-content: flex-start;}
  .rw-platform-grid,.rw-benefits-grid,.rw-steps-grid {grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px;}
  .rw-platform-card {padding: 17px; min-height: 156px;}
  .rw-platform-card strong {font-size: 13px;}
  .rw-platform-card__icon {width: 41px; height: 41px; font-size: 18px;}
  .rw-benefit {padding: 20px 15px;}
  .rw-benefit h3 {font-size: 14px;}
  .rw-benefit p {font-size: 12px;}
  .rw-steps-grid {grid-template-columns: 1fr;}
  .rw-step {padding: 12px 18px 18px;}
  .rw-product-card__image {height: 135px; padding: 16px;}
  .rw-product-card__image img {max-height: 112px;}
  .rw-product-card__body {padding: 13px;}
  .rw-product-card__title {font-size: 13px;}
  .rw-product-card__description {font-size: 11px;}
  .rw-product-card__meta {font-size: 10px;}
  .rw-product-card__meta span:last-child {display: none;}
  .rw-product-card__bottom {flex-wrap: wrap; gap: 10px;}
  .rw-product-card__bottom strong {font-size: 15px;}
  .rw-product-card__bottom .btn {font-size: 10px !important; width: 100%;}
  .rw-catalog-search .btn {min-width: 80px; padding: 11px 14px;}
  .rw-catalog-search input {font-size: 12px; padding-left: 37px;}
  .rw-catalog-category__heading h3 {font-size: 20px;}
  .rw-footer-grid {grid-template-columns: 1fr 1fr; gap: 28px 20px;}
  .rw-footer-intro {grid-column: 1/-1;}
  .rw-footer-bottom {align-items: flex-start; flex-direction: column;}
  .rw-detail-purchase {flex-wrap: wrap;}
  .account-form {padding: 23px !important;}
}
@media(max-width:355px){
  .rw-brand {gap: 7px;}
  .rw-brand__text {font-size: 14px;}
  .rw-header-actions {gap: 7px;}
  .rw-platform-grid,.rw-product-grid {grid-template-columns: 1fr;}
  .rw-product-card__image {height: 170px;}
  .rw-footer-grid {grid-template-columns: 1fr;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*:before,*:after{transition:none !important;animation-duration:.01ms !important;}}

/* ================================================================
   KennyLogs-inspired homepage v2 — ORIGINAL red/white adaptation.
   Kept separate from the original theme so existing inner pages,
   authentication, product modals, routes and admin stay operational.
   ================================================================ */
:root { --kl-red: #d11235; --kl-red-dark: #a70827; --kl-ink: #171b29; --kl-soft: #fff5f6; }
.kl-header, .header.kl-header { background: #fff !important; border-bottom: 1px solid #eff0f2; box-shadow: none !important; }
.kl-header.fixed-header, .header.kl-header.fixed-header { box-shadow: 0 9px 25px rgba(24,29,48,.055) !important; }
.kl-navbar.navbar { min-height: 82px; padding: 14px 0 !important; }
.kl-brand .rw-brand__text { display: inline-block; color: var(--kl-ink); font-size: 24px; font-weight: 900; letter-spacing: -.065em; max-width: 260px; }
.kl-brand__mark { background: linear-gradient(135deg,#f13252,#b80a2b); border-radius: 13px; transform: none; }
.kl-brand__mark i { transform: none; }
.kl-navigation .nav-menu { gap: 11px; }
.kl-navbar .nav-menu .nav-link { font-size: 14px !important; font-weight: 700; color: #3b4354 !important; padding: 12px 9px !important; }
.kl-navbar .nav-menu .nav-link:hover { color: var(--kl-red) !important; }
.kl-login { font-size: 14px; font-weight: 800; color: var(--kl-ink); }
.kl-login:hover { color: var(--kl-red); }
.kl-header-actions { gap: 20px; }
.kl-signup.btn { border-radius: 9px !important; padding: 12px 21px !important; font-size: 13px; background: var(--kl-red) !important; border-color: var(--kl-red) !important; }
.kl-signup.btn:hover { background: var(--kl-red-dark) !important; }
.kl-hero { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 49% 14%,#ed3150 0,#d7173a 34%,#c60c31 66%,#9c0725 100%); color: #fff; }
.kl-hero::before { content: ''; z-index: -1; position: absolute; width: 940px; height: 940px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; top: -540px; left: calc(50% - 470px); box-shadow: 0 0 0 145px rgba(255,255,255,.035),0 0 0 300px rgba(255,255,255,.022),0 0 0 445px rgba(255,255,255,.013); }
.kl-hero::after { content: ''; z-index: -1; position: absolute; left: 0; right: 0; bottom: 0; height: 180px; background: linear-gradient(0deg,rgba(82,0,23,.24),transparent); }
.kl-hero__glow { position: absolute; z-index: -1; border-radius: 50%; filter: blur(3px); border: 1px solid rgba(255,255,255,.1); pointer-events: none; }
.kl-hero__glow--one { width: 120px; height: 120px; top: 155px; left: 7%; background: rgba(255,255,255,.055); }
.kl-hero__glow--two { width: 190px; height: 190px; top: 115px; right: 6%; background: rgba(255,255,255,.05); }
.kl-hero__content { text-align: center; padding-top: 112px; padding-bottom: 91px; }
.kl-hero__badge { display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 10px 18px; border: 1px solid rgba(255,255,255,.30); background: rgba(255,255,255,.11); color: #fff; border-radius: 50px; letter-spacing: .015em; font-size: 12px; font-weight: 750; backdrop-filter: blur(8px); }
.kl-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px rgba(255,255,255,.14); }
.kl-hero h1 { max-width: 935px; margin: 27px auto 21px; color: #fff; font-size: clamp(42px,5.5vw,77px); line-height: 1.085; font-weight: 900; letter-spacing: -.064em; text-wrap: balance; }
.kl-hero h1 span { color: #ffe2e8; }
.kl-hero p { max-width: 690px; margin: 0 auto; color: #ffedf0; font-size: 17px; line-height: 1.85; }
.kl-hero__actions { display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: 15px; margin-top: 32px; }
.kl-btn { display: inline-flex; gap: 12px; justify-content: center; align-items: center; min-height: 52px; padding: 13px 24px; border-radius: 11px; text-decoration: none; font-weight: 800; font-size: 14px; transition: transform .22s,background .22s,box-shadow .22s; }
.kl-btn:hover { transform: translateY(-3px); }
.kl-btn--white { background: #fff; color: #b3082c; border: 1px solid #fff; box-shadow: 0 10px 28px rgba(83,0,19,.13); }
.kl-btn--white:hover { background: #fff0f2; color: #a20927; }
.kl-btn--outline { color: #fff; border: 1px solid rgba(255,255,255,.58); background: rgba(255,255,255,.09); }
.kl-btn--outline:hover { background: rgba(255,255,255,.2); color: #fff; }
.kl-hero__metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); max-width: 820px; margin: 80px auto 0; align-items: center; }
.kl-metric { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 4px 14px; border-right: 1px solid rgba(255,255,255,.25); }
.kl-metric:last-child { border-right: 0; }
.kl-metric strong { color: #fff; font-size: 31px; font-weight: 900; letter-spacing: -.04em; line-height: 1.25; }
.kl-metric strong i { font-size: 29px; }
.kl-metric span { color: #ffe5e9; font-size: 12px; font-weight: 650; }
.kl-ticker { overflow: hidden; background: #fff; border-bottom: 1px solid #f4e2e6; white-space: nowrap; }
.kl-ticker__track { display: flex; width: max-content; animation: kl-scroll 35s linear infinite; }
.kl-ticker__run { display: flex; align-items: center; flex: 0 0 auto; gap: 47px; padding: 18px 25px; }
.kl-ticker__run span { display: inline-flex; align-items: center; gap: 9px; font-weight: 800; font-size: 13px; letter-spacing: .015em; color: #545968; }
.kl-ticker__run i { color: var(--kl-red); }
@keyframes kl-scroll { to { transform: translateX(-50%); } }
.kl-ticker:hover .kl-ticker__track { animation-play-state: paused; }
.kl-section-heading h2 { color: var(--kl-ink); font-size: clamp(29px,3.3vw,42px); font-weight: 900; letter-spacing: -.045em; margin: 8px 0 13px; text-wrap: balance; }
.kl-section-heading p { color: #747888; font-size: 15px; line-height: 1.85; }
.kl-section-tag { display: inline-flex; align-items: center; justify-content: center; color: var(--kl-red); letter-spacing: .115em; font-size: 11px; font-weight: 900; }
.kl-platforms { padding: 102px 0; background: #fff; }
.kl-platform-grid { gap: 18px; }
.kl-platform-card { min-height: 203px; border-radius: 17px; padding: 27px 23px 23px; border: 1px solid #ececf0; background: #fff; box-shadow: 0 8px 18px rgba(30,33,49,.025); }
.kl-platform-card:hover { border-color: #f1b4c1; box-shadow: 0 16px 40px rgba(121,11,42,.09); }
.kl-platform-card__icon { width: 54px; height: 54px; margin-bottom: 22px; border-radius: 13px; font-size: 24px; background: #fff0f2; color: var(--kl-red); }
.kl-platform-card:nth-child(4n+2) .kl-platform-card__icon { background: #ffe9eb; }
.kl-platform-card:nth-child(4n+3) .kl-platform-card__icon { background: #fff5f5; }
.kl-platform-card strong { font-size: 16px; color: #252a36; }
.kl-platform-card small { font-size: 12px; color: #888b98; }
.kl-platform-card__go { display: grid; place-items: center; position: absolute; top: 25px; right: 23px; width: 26px; height: 26px; border-radius: 50%; color: #c3c5ce; font-size: 11px; transition: background .2s,color .2s; }
.kl-platform-card:hover .kl-platform-card__go { background: #ffe8ed; color: var(--kl-red); }
.kl-inline-action { color: var(--kl-red); font-size: 14px; font-weight: 850; display: inline-flex; align-items: center; gap: 10px; }
.kl-inline-action:hover { color: var(--kl-red-dark); }
.kl-features { padding: 99px 0; background: #f9f9fb; }
.kl-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.kl-feature-card { background: #fff; padding: 31px; border: 1px solid #ebecef; border-radius: 18px; box-shadow: 0 8px 22px rgba(25,29,45,.018); }
.kl-feature-card:hover { border-color: #f1b7c2; box-shadow: 0 16px 35px rgba(40,24,35,.055); }
.kl-feature-card__icon { background: #fff0f2; color: var(--kl-red); display: grid; place-items: center; width: 56px; height: 56px; border-radius: 14px; font-size: 23px; margin-bottom: 22px; }
.kl-feature-card h3 { color: var(--kl-ink); font-size: 17px; font-weight: 850; margin: 0 0 11px; }
.kl-feature-card p { color: #737887; font-size: 13px; line-height: 1.85; margin: 0; }
.kl-process { padding: 100px 0 105px; background: white; }
.kl-steps-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px; }
.kl-step { text-align: center; position: relative; padding: 12px 11px 6px; }
.kl-step:not(:last-child)::after { content: ''; position: absolute; top: 87px; left: calc(50% + 58px); right: calc(-50% + 58px); border-top: 2px dashed #f2cdd4; }
.kl-step__num { display: block; color: #b96475; font-size: 12px; font-weight: 900; letter-spacing: .13em; margin-bottom: 18px; }
.kl-step__icon { position: relative; z-index: 1; display: grid; place-items: center; width: 87px; height: 87px; margin: 0 auto 24px; border-radius: 23px; background: #fff2f4; color: var(--kl-red); font-size: 31px; }
.kl-step h3 { font-size: 17px; font-weight: 850; margin: 0 0 12px; color: var(--kl-ink); }
.kl-step p { font-size: 13px; color: #737887; line-height: 1.8; margin: 0; }
.kl-products { background: #fbfafb; padding: 87px 0 102px; }
.kl-products__heading { margin-bottom: 33px; }
.kl-experience { background: #fff; padding: 95px 0 108px; }
.kl-experience-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.kl-experience-card { border: 1px solid #ececf1; border-radius: 18px; padding: 32px 29px; background: #fff; box-shadow: 0 9px 30px rgba(28,31,46,.035); }
.kl-experience-card__stars { color: var(--kl-red); font-size: 22px; margin-bottom: 19px; }
.kl-experience-card h3 { font-size: 17px; color: var(--kl-ink); font-weight: 850; margin: 0 0 12px; }
.kl-experience-card p { font-size: 14px; color: #666d7d; line-height: 1.8; min-height: 83px; margin: 0 0 18px; }
.kl-experience-card span { border-top: 1px solid #efedf1; padding-top: 15px; display: block; color: #9f1836; font-weight: 800; font-size: 12px; }
.kl-experience-card span i { margin-right: 6px; }
.kl-bottom-cta { background: linear-gradient(110deg,#af0927 0%,#d8153a 52%,#bd0b2f 100%); color: white; text-align: center; position: relative; overflow: hidden; padding: 82px 0 91px; }
.kl-bottom-cta::before,.kl-bottom-cta::after { content: ''; position: absolute; pointer-events: none; border: 75px solid rgba(255,255,255,.06); border-radius: 50%; width: 440px; height: 440px; }
.kl-bottom-cta::before { top: -270px; left: -190px; }
.kl-bottom-cta::after { bottom: -300px; right: -120px; }
.kl-bottom-cta__inner { position: relative; z-index: 1; }
.kl-bottom-cta__symbol { display: grid; place-items: center; height: 48px; width: 48px; margin: 0 auto 20px; border-radius: 15px; background: rgba(255,255,255,.15); color: #fff; font-size: 22px; }
.kl-bottom-cta h2 { color: white; font-size: clamp(29px,3.7vw,47px); font-weight: 900; letter-spacing: -.045em; margin: 0 0 12px; }
.kl-bottom-cta p { margin: 0 auto; max-width: 610px; color: #ffe1e8; font-size: 15px; }
.kl-bottom-cta__actions { display: flex; justify-content: center; align-items: center; gap: 14px; margin-top: 27px; flex-wrap: wrap; }
/* Maintain responsive behavior even on devices where the parent theme
   attaches its own menu and fixed-header styles. */
@media (max-width: 1199px) {
  .kl-brand .rw-brand__text { font-size: 20px; }
  .kl-navigation .nav-menu { gap: 4px; }
}
@media (max-width: 991px) {
  .kl-header, .header.kl-header { position: relative; }
  .kl-navbar .nav-menu { padding: 5px 0; }
  .kl-navbar .nav-menu .nav-link { font-size: 14px !important; padding: 12px 14px !important; }
  .kl-hero__content { padding-top: 82px; padding-bottom: 75px; }
  .kl-hero h1 { max-width: 690px; font-size: clamp(40px,6vw,59px); }
  .kl-feature-grid, .kl-experience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kl-steps-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 35px 18px; }
  .kl-step::after { display: none; }
  .kl-platforms,.kl-features,.kl-process,.kl-products,.kl-experience { padding-top: 76px; padding-bottom: 80px; }
}
@media (max-width: 767px) {
  .kl-navbar.navbar { min-height: 70px; }
  .kl-brand .rw-brand__text { font-size: 19px; }
  .kl-hero__content { padding-top: 66px; padding-bottom: 64px; }
  .kl-hero h1 { font-size: clamp(38px,8vw,51px); }
  .kl-hero p { font-size: 15px; }
  .kl-hero__metrics { margin-top: 59px; }
  .kl-metric strong { font-size: 26px; }
  .kl-ticker__run { gap: 28px; }
  .kl-section-heading h2 { font-size: 32px; }
  .kl-feature-grid, .kl-experience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .kl-feature-card { padding: 23px 20px; }
  .kl-experience-card { padding: 24px 21px; }
  .kl-experience-card p { min-height: 0; }
  .kl-products__heading { align-items: flex-start; }
}
@media (max-width: 575px) {
  .kl-header-actions { gap: 10px; }
  .kl-login { font-size: 12px; }
  .kl-hero h1 { margin: 23px auto 18px; font-size: clamp(37px,10vw,47px); }
  .kl-hero__content { padding-top: 58px; padding-bottom: 53px; }
  .kl-hero__badge { font-size: 10px; }
  .kl-hero p { font-size: 14px; line-height: 1.8; }
  .kl-hero__actions { flex-direction: column; align-items: stretch; gap: 12px; margin-top: 25px; }
  .kl-btn { width: 100%; }
  .kl-hero__metrics { grid-template-columns: repeat(2,1fr); gap: 27px 0; margin-top: 49px; }
  .kl-metric { border-right: 0; padding: 5px 7px; }
  .kl-metric:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.23); }
  .kl-metric span { font-size: 11px; }
  .kl-metric strong { font-size: 26px; }
  .kl-platform-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .kl-platform-card { min-height: 169px; padding: 17px; }
  .kl-platform-card__icon { width: 44px; height: 44px; font-size: 19px; margin-bottom: 15px; }
  .kl-platform-card strong { font-size: 13px; }
  .kl-platform-card__go { top: 17px; right: 14px; }
  .kl-section-heading h2 { font-size: 29px; }
  .kl-section-heading p { font-size: 13px; }
  .kl-feature-grid,.kl-experience-grid { grid-template-columns: 1fr; }
  .kl-feature-card { padding: 24px; }
  .kl-feature-card__icon { margin-bottom: 15px; width: 46px; height: 46px; font-size: 19px; }
  .kl-steps-grid { grid-template-columns: 1fr; gap: 15px; }
  .kl-step { padding: 17px 11px; }
  .kl-step__icon { margin-bottom: 15px; }
  .kl-bottom-cta { padding: 64px 0 72px; }
  .kl-bottom-cta__actions { flex-direction: column; align-items: stretch; }
  .kl-platforms,.kl-features,.kl-process,.kl-products,.kl-experience { padding-top: 65px; padding-bottom: 69px; }
}
@media (prefers-reduced-motion: reduce) {
 .kl-ticker__track { animation: none; }
}


/* Magiclogs privacy notice — red/white theme, desktop and mobile. */
.cookies-card.ml-cookie {
  box-sizing: border-box;
  width: min(480px, calc(100vw - 40px));
  max-width: calc(100vw - 40px);
  padding: 29px 30px 27px;
  bottom: 24px !important;
  left: 24px;
  right: auto;
  z-index: 999999;
  text-align: left;
  color: #242433;
  background: #fff;
  border: 1px solid #f0d7dc;
  border-radius: 20px;
  box-shadow: 0 23px 68px rgba(54, 14, 25, .20), 0 3px 12px rgba(31, 21, 35, .06);
  opacity: 1;
  transform: translateY(0);
  transition: transform .38s ease, opacity .38s ease;
  overflow: hidden;
}
.cookies-card.ml-cookie::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, #ab0925, #ec3451);
}
.cookies-card.ml-cookie.hide {
  bottom: 24px !important;
  opacity: 0;
  pointer-events: none;
  transform: translateY(calc(100% + 60px));
}
.ml-cookie__close {
  display: inline-grid;
  place-items: center;
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 10px;
  color: #81808a;
  background: #f7f6f8;
  font-size: 13px;
  cursor: pointer;
}
.ml-cookie__close:hover { color: #a60924; background: #fff0f3; }
.ml-cookie__header { display: flex; gap: 15px; align-items: center; padding-right: 30px; }
.ml-cookie__icon {
  flex: 0 0 54px;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  color: #c8102e;
  background: #fff0f3;
  border: 1px solid #f7d0d8;
  border-radius: 15px;
  font-size: 24px;
}
.ml-cookie__eyebrow { display: block; color: #ae1230; font-size: 10px; font-weight: 800; letter-spacing: .12em; line-height: 1.3; }
.ml-cookie__heading h2 { margin: 4px 0 0; color: #222332; font-size: 20px; line-height: 1.3; letter-spacing: -.035em; font-weight: 850; }
.ml-cookie__description { margin: 20px 0 22px; font-size: 13px; line-height: 1.85; color: #626672; overflow-wrap: anywhere; }
.ml-cookie__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px 22px; }
.ml-cookie__accept {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  min-height: 46px;
  border: 1px solid #c8102e;
  border-radius: 11px;
  padding: 12px 18px;
  background: #c8102e;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 6px 17px rgba(200, 16, 46, .17);
}
.ml-cookie__accept:hover { background: #a60924; border-color: #a60924; }
.ml-cookie__accept:disabled { opacity: .66; cursor: progress; }
.ml-cookie__policy { color: #a60924; font-size: 13px; font-weight: 750; text-decoration: none; }
.ml-cookie__policy i { font-size: 10px; margin-left: 5px; }
.ml-cookie__policy:hover { color: #79051a; text-decoration: underline; }
.ml-cookie__error { margin: 13px 0 0; font-size: 12px; color: #a60924; }
.ml-cookie__error[hidden] { display: none; }
@media (max-width: 575px) {
  .cookies-card.ml-cookie { width: calc(100vw - 24px); max-width: calc(100vw - 24px); left: 12px; bottom: 12px !important; padding: 25px 21px 22px; border-radius: 18px; }
  .cookies-card.ml-cookie.hide { bottom: 12px !important; }
  .ml-cookie__header { gap: 12px; }
  .ml-cookie__icon { width: 48px; height: 48px; flex-basis: 48px; font-size: 21px; }
  .ml-cookie__heading h2 { font-size: 18px; }
  .ml-cookie__description { font-size: 12.5px; margin: 17px 0 19px; line-height: 1.75; }
  .ml-cookie__actions { gap: 13px 16px; }
  .ml-cookie__accept { padding: 11px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .cookies-card.ml-cookie { transition: none; }
}
