@charset "utf-8";

/*
Theme Name: Lassippers - Juice Bar & Shop HTML5 Template.
Author: Metropolitanthemes
Author URL: https://themeforest.net/user/metropolitantheme
Version: 1.0.0

%%%%%%% Table of CSS %%%%%%%

1. General
    1.1 Typography
    1.2 Spacing
    1.3 Buttons
    1.4 Section Title
    1.5 Colors & Backgrounds
    1.6 Cursor & Selection
2. Preloader
3. Header
    3.1 Offcanvas Menu
4. Hero
5. Marquee
6. About
7. Menu Categories
8. Menu Price List
9. Process
10. Video
11. Shop
12. Offer
13. Portfolio
14. Testimonial
15. Blog
16. Instagram Strip
17. CTA
18. Footer
19. Home Page Two
20. Back To Top
21. Inner Pages
22. Home Page Three
*/

/*======================
1. General
========================*/
:root {
  /* --lc-ff-display: 'Anton', 'Bricolage Grotesque', sans-serif; */
  --lc-ff-display: 'Bricolage Grotesque', serif;
  --lc-ff-heading: 'Bricolage Grotesque', serif;
  --lc-ff-body: 'DM Sans', sans-serif;
  --lc-fs-h1: clamp(46px, 6.4vw, 92px);
  --lc-fs-h2: clamp(34px, 3.9vw, 56px);
  --lc-fs-h3: 24px;
  --lc-fs-h4: 20px;
  --lc-fs-h5: 18px;
  --lc-fs-h6: 15px;
  --lc-fs-body: 17px;
  --lc-color-ink: #1F1A14;
  --lc-color-ink-rgb: 31, 26, 20;
  --lc-color-body: #5C5347;
  --lc-color-cream: #FBF4E6;
  --lc-color-cream-rgb: 251, 244, 230;
  --lc-color-cream-2: #F4E8D2;
  --lc-color-white: #FFFFFF;
  --lc-color-green: #16442E;
  --lc-color-green-rgb: 22, 68, 46;
  --lc-color-primary: #FC6D0F;
  --lc-color-primary-rgb: 252, 109, 15;
  --lc-color-primary-deep: #D4550A;
  --lc-color-border: #EDDFC6;
  --lc-color-border-2: #E2D2B4;
  --lc-color-muted: #b6b6b6;
  --lc-color-dark-soft: #2C5C42;
  --lc-radius: 28px;
  --lc-radius-sm: 16px;
}

/* === Keyframes === */
@keyframes lc-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes lc-blink {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.35;
  }
}

@keyframes lc-shine {
  100% {
    left: 135%;
  }
}

@keyframes lc-pulse {
  0% {
    transform: scale(1);
    opacity: 0.7;
  }

  100% {
    transform: scale(1.9);
    opacity: 0;
  }
}

@keyframes lc-wobble {

  0%,
  100% {
    transform: rotate(-5deg);
  }

  50% {
    transform: rotate(5deg);
  }
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
}

body {
  font-family: var(--lc-ff-body);
  font-size: var(--lc-fs-body);
  line-height: 1.65;
  font-weight: 400;
  color: var(--lc-color-body);
  background-color: var(--lc-color-white);
  overflow-x: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: inherit;
  transition: color 0.3s ease;
}

a:hover {
  color: var(--lc-color-ink);
}

ul.lc-reset {
  list-style: none;
  margin: 0;
  padding: 0;
}

button {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

button:focus,
*:focus {
  outline: none;
}

/* .container {
  max-width: 1320px;
} */

/*======================
1.1 Typography
========================*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--lc-ff-heading);
  color: var(--lc-color-ink);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.01em;
}

h1 {
  font-size: var(--lc-fs-h1);
  font-weight: 800;
  letter-spacing: -0.015em;
}

h2 {
  font-size: var(--lc-fs-h2);
}

h3 {
  font-size: var(--lc-fs-h3);
}

h4 {
  font-size: var(--lc-fs-h4);
}

h5 {
  font-size: var(--lc-fs-h5);
}

h6 {
  font-size: var(--lc-fs-h6);
}

.hero-title,
.section-title .title,
.cta-title,
.offer-title {
  font-family: var(--lc-ff-display);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.012em;
  line-height: 1.04;
}

.hero-title {
  font-size: clamp(44px, 5.6vw, 84px);
}

.section-title .title {
  font-size: clamp(38px, 4.4vw, 62px);
}

.lc-outline-word {
  /* color: transparent; */
  -webkit-text-stroke: 2.5px var(--lc-color-ink);
}

.hero-title .lc-accent-word {
  background-image: none;
  padding-bottom: 0;
}

.lc-accent-word {
  position: relative;
  color: var(--lc-color-primary-deep);
  font-weight: 800;
  padding-bottom: 8px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 Q 20 2 40 7 T 78 7 T 118 6' fill='none' stroke='%23FF8A3C' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 10px;
}

/*======================
1.2 Spacing
========================*/
.sec-pt-130 {
  padding-top: 130px;
}

.sec-pb-130 {
  padding-bottom: 130px;
}

.sec-pt-100 {
  padding-top: 100px;
}

.sec-pb-100 {
  padding-bottom: 100px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-minus-30 {
  margin-bottom: -30px;
}

/*======================
1.3 Buttons
========================*/
.lc-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 700;
  color: var(--lc-color-ink);
  background-color: #fff;
  border-radius: 999px;
  padding: 15px 92px 15px 30px;
  z-index: 2;
  box-shadow: 0 5px 0 var(--lc-color-primary-deep);
  transition: color 0.3s ease-out, transform 0.25s ease, box-shadow 0.25s ease;
}

.lc-btn::after {
  content: "";
  position: absolute;
  top: 5px;
  bottom: 5px;
  right: 6px;
  width: 68px;
  border-radius: 999px;
  background-color: var(--lc-color-green);
  transition: all 0.3s ease-out;
  z-index: -1;
}

.lc-btn:hover {
  color: var(--lc-color-cream);
  transform: translateY(3px);
  box-shadow: 0 2px 0 var(--lc-color-primary-deep);
}

.lc-btn:hover::after {
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}

.lc-btn .lc-btn-text {
  position: relative;
  display: inline-block;
}

.lc-btn .lc-btn-icon {
  position: absolute;
  top: 50%;
  right: 32px;
  transform: translateY(-50%);
  display: inline-flex;
  overflow: hidden;
  color: var(--lc-color-cream);
}

.lc-btn .lc-btn-icon i {
  font-size: 15px;
  line-height: 1;
  transform: rotate(-45deg);
  transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1);
}

.lc-btn .lc-btn-icon i:last-child {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-120%, 120%) rotate(-45deg);
}

.lc-btn:hover .lc-btn-icon i:first-child {
  transform: translate(120%, -120%) rotate(-45deg);
}

.lc-btn:hover .lc-btn-icon i:last-child {
  transform: translate(0, 0) rotate(-45deg);
}

.lc-btn.lc-btn-dark {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  box-shadow: 0 5px 0 #0C2B1C;
}

.lc-btn.lc-btn-dark::after {
  background-color: #fff;
}

.lc-btn.lc-btn-dark .lc-btn-icon {
  color: var(--lc-color-ink);
}

.lc-btn.lc-btn-dark:hover {
  color: var(--lc-color-ink);
  box-shadow: 0 2px 0 #0C2B1C;
}

.lc-btn.lc-btn-outline {
  background-color: transparent;
  border: 2px solid var(--lc-color-green);
  color: var(--lc-color-green);
  padding: 13px 90px 13px 28px;
  box-shadow: 0 5px 0 rgba(var(--lc-color-green-rgb), 0.25);
}

.lc-btn.lc-btn-outline::after {
  top: 3px;
  bottom: 3px;
  right: 4px;
}

.lc-btn.lc-btn-outline:hover {
  color: var(--lc-color-cream);
  box-shadow: 0 2px 0 rgba(var(--lc-color-green-rgb), 0.25);
}

.lc-btn.lc-btn-outline:hover::after {
  top: 0;
  bottom: 0;
  right: 0;
}

.lc-btn-group {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.lc-btn-circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 5px 0 #0C2B1C;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  flex-shrink: 0;
}

.lc-btn-circle:hover {
  transform: translateY(3px);
  box-shadow: 0 2px 0 #0C2B1C;
}

/*======================
1.4 Section Title
========================*/
.section-title .subtitle {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
  margin-bottom: 16px;
  padding-bottom: 10px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 Q 20 2 40 7 T 78 7 T 118 6' fill='none' stroke='%23FF8A3C' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 7px;
}

.section-title .title {
  margin-bottom: 0;
}

.section-title {
  position: relative;
}

.title-sticker {
  position: absolute;
  display: inline-block;
  background-color: var(--lc-color-primary);
  border-radius: 8px;
  padding: 6px 14px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(6deg);
  box-shadow: 0 3px 0 var(--lc-color-primary-deep);
  z-index: 2;
}

.title-sticker.style-green {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  box-shadow: 0 3px 0 #0C2B1C;
}

.section-title .small-text {
  margin-top: 18px;
  max-width: 480px;
}

.section-title.text-center .subtitle {
  justify-content: center;
}

.section-title.text-center .small-text {
  margin-left: auto;
  margin-right: auto;
}

/*======================
1.5 Colors & Backgrounds
========================*/
.bg-ink {
  background-color: var(--lc-color-ink);
}

.bg-cream {
  background-color: var(--lc-color-cream);
}

.bg-white {
  background-color: var(--lc-color-white);
}

.text-lime {
  color: var(--lc-color-primary);
}

.text-olive {
  color: var(--lc-color-primary-deep);
}

.text-muted-2 {
  color: var(--lc-color-muted);
}

/*======================
1.6 Cursor & Selection
========================*/
::selection {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

/* --- Section pattern texture --- */
.service-area,
.shop-area,
.testimonial-area,
.taste-area,
.gallery-area {
  background-color: var(--lc-color-cream);
  /* background-image: url(../img/bg/pattern-01.png); */
  background-size: 420px 420px;
}

.testimonial-area.style-2 {
  background-color: transparent;
  background-image: none;
}

/* --- Floating side shapes --- */
.lc-shape {
  position: absolute;
  z-index: 2;
  pointer-events: none;
}

.lc-shape img {
  display: block;
  width: 100%;
  height: auto;
}

.lc-shape.style-blur {
  filter: blur(2px);
  opacity: 0.9;
}

.story-area,
.reels-area,
.taste-area,
.carousel-area,
.promo-area,
.testimonial-area,
.gallery-area {
  position: relative;
}

.hero-two .shape-hero {
  top: 120px;
  right: 30px;
  width: 150px;
  z-index: 2;
}

.hero-two .shape-hero-mango {
  top: 0;
  left: 0;
  width: 320px;
  z-index: 1;
}

.hero-two .shape-hero-jar {
  bottom: -46px;
  right: 480px;
  width: 380px;
  z-index: 2;
}

.reels-area .shape-reels {
  top: 30px;
  right: 0;
  width: 260px;
}

.taste-area .shape-taste {
  top: 0;
  right: 0;
  width: 280px;
}

.carousel-area .shape-carousel {
  bottom: -10px;
  right: 0;
  width: 220px;
}

.promo-area .shape-promo {
  top: 50%;
  right: 40px;
  transform: translateY(-50%);
  width: 440px;
  z-index: 0;
}

.promo-area .container {
  position: relative;
  z-index: 1;
}

.testimonial-area .shape-testi-bg {
  inset: 0;
  width: 100%;
  height: 100%;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
}

.testimonial-area .shape-testi-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.1;
}

.testimonial-area .container {
  position: relative;
  z-index: 1;
}

.footer-area {
  position: relative;
}

.footer-area .shape-footer-mint {
  top: 70px;
  right: 26px;
  width: 150px;
}

.footer-area .shape-footer-mint2 {
  bottom: 210px;
  left: 26px;
  width: 140px;
}

.footer-area .shape-footer-citrus {
  bottom: 0;
  right: 0;
  width: 230px;
}

.gallery-area .shape-gallery {
  bottom: 0;
  right: 0;
  width: 240px;
}

/* --- Icon font sizing --- */
.lc-topbar .topbar-meta i {
  font-size: 13px;
  color: var(--lc-color-primary);
  margin-right: 7px;
}

.lc-social a i {
  font-size: 13px;
}

.lc-cart-btn i {
  font-size: 17px;
}

.hero-area .hero-social .stars i,
.testimonial-area .t-stars i {
  font-size: 13px;
  color: var(--lc-color-primary);
  margin-right: 2px;
}

.about-area .about-list li .check i {
  font-size: 11px;
}

.service-area .service-item .icon i,
.process-area .process-item .icon i {
  font-size: 30px;
  color: var(--lc-color-green);
}

.service-area .service-item.style-dark .icon i {
  color: var(--lc-color-cream);
}

.feature-area .feature-pill .icon i {
  font-size: 24px;
}

.taste-area .taste-tile .tile-arrow i,
.blog-area .blog-item .read-circle i {
  font-size: 14px;
}

.gallery-area .g-item .g-overlay i {
  font-size: 28px;
  color: var(--lc-color-white);
  transform: scale(0.7);
  transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.gallery-area .g-item:hover .g-overlay i {
  transform: scale(1);
}

.footer-area .footer-info .info-item .icon i {
  font-size: 17px;
  color: var(--lc-color-primary);
}

.footer-area .footer-newsletter .newsletter-form .submit-btn i {
  font-size: 14px;
}

.carousel-area .pc-btn i,
.hero-area .hero-nav-btn i {
  font-size: 15px;
}

.lc-backtop i {
  font-size: 15px;
}

.lc-offcanvas .lc-offcanvas-close i {
  font-size: 16px;
}

/*======================
2. Preloader
========================*/
.lc-preloader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
}

.lc-preloader .lc-preloader-bars {
  position: absolute;
  inset: 0;
  display: flex;
}

.lc-preloader .lc-preloader-bars .bar {
  flex: 1;
  background-color: var(--lc-color-green);
}

.lc-preloader .lc-preloader-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

.lc-preloader .preloader-mark {
  width: 62px;
  height: 62px;
  animation: lc-wobble 1.4s ease-in-out infinite;
  transform-origin: 50% 90%;
}

.lc-preloader .lc-preloader-brand {
  position: relative;
  font-family: var(--lc-ff-heading);
  font-size: clamp(32px, 5.2vw, 68px);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--lc-color-cream);
  display: flex;
}

.lc-preloader .lc-preloader-brand span {
  display: inline-block;
}

/*======================
3. Header
========================*/
.lc-topbar {
  position: relative;
  z-index: 998;
  background-color: var(--lc-color-green);
  color: rgba(var(--lc-color-cream-rgb), 0.85);
  font-size: 13.5px;
  font-weight: 500;
  padding: 8px 0;
}

.lc-topbar .topbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.lc-topbar .topbar-meta {
  display: flex;
  align-items: center;
  gap: 22px;
}

.lc-topbar .topbar-meta li {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.lc-topbar .topbar-meta li a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.lc-topbar .topbar-meta li a:hover {
  color: var(--lc-color-primary);
}

.lc-topbar .topbar-message {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 0;
  font-weight: 600;
  color: var(--lc-color-cream);
  text-align: center;
}

.lc-topbar .topbar-message i {
  font-size: 14px;
  color: var(--lc-color-primary);
  margin-right: 7px;
}

.lc-social {
  display: flex;
  align-items: center;
  gap: 6px;
}

.lc-social li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  color: rgba(var(--lc-color-cream-rgb), 0.8);
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.lc-social li a:hover {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
  transform: translateY(-2px);
}

.lc-social.style-dark li a {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background-color: rgba(var(--lc-color-cream-rgb), 0.08);
  color: var(--lc-color-cream);
}

.lc-social.style-dark li a:hover {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.header-area {
  position: absolute;
  top: 42px;
  left: 0;
  width: 100%;
  z-index: 999;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.header-sticky-spacer {
  height: 0;
  pointer-events: none;
}

.header-area .header-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 0;
  transition: padding 0.3s ease;
}

.header-area .lc-nav {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
  overflow: visible;
}

.header-area .lc-nav>ul {
  flex-wrap: nowrap;
  justify-content: center;
}

.header-area .lc-nav .menu-item-more>.sub-menu {
  left: auto;
  right: 0;
  min-width: 240px;
  max-height: min(70vh, 420px);
  overflow-y: auto;
}

.header-area.sticky-active {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #ffffff;
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 28px rgba(var(--lc-color-ink-rgb), 0.08);
  transform: translate3d(0, 0, 0);
}

.header-area.sticky-active.is-animating {
  animation: lcHeaderSlideIn 0.4s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes lcHeaderSlideIn {
  from {
    transform: translate3d(0, -100%, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

.header-area.sticky-active .header-main {
  padding: 14px 0;
}

.header-area.header-hidden {
  transform: translate3d(0, -110%, 0);
}

.header-area .lc-logo {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.lc-logo img {
  height: 44px;
  width: auto;
}

.lc-preloader .lc-preloader-brand .accent {
  color: var(--lc-color-primary);
}

.header-area .lc-nav ul {
  display: flex;
  gap: 8px;
}

.header-area .lc-nav ul li {
  position: relative;
}

.header-area .lc-nav ul li .sub-menu {
  position: absolute;
  top: calc(100% + 16px);
  left: 0;
  min-width: 275px;
  display: block;
  background-color: #ffffff;
  border: 1px solid var(--lc-color-border);
  border-radius: 14px;
  padding: 12px;
  box-shadow: 0 20px 44px rgba(var(--lc-color-ink-rgb), 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  z-index: 20;
}

.header-area .lc-nav ul li .sub-menu::before {
  content: "";
  position: absolute;
  top: -16px;
  left: 0;
  right: 0;
  height: 16px;
}

.header-area .lc-nav ul li:hover>.sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0);
}

.header-area .lc-nav ul li a>i {
  font-size: 12px;
  margin-left: 7px;
  transition: transform 0.25s ease;
}

.header-area .lc-nav>ul>li:hover>a>i {
  transform: rotate(180deg);
}

.header-area .lc-nav .sub-menu li {
  display: block;
  position: relative;
}

.header-area .lc-nav .sub-menu li+li {
  margin-top: 2px;
}

.header-area .lc-nav .sub-menu li a {
  display: block;
  padding: 10px 16px;
  border-radius: 9px;
  font-size: 15px;
  color: var(--lc-color-ink);
}

.header-area .lc-nav .sub-menu li a>i {
  float: right;
  margin-top: 5px;
  transform: rotate(-90deg);
}

.header-area .lc-nav .sub-menu .sub-menu {
  top: -12px;
  left: calc(100% + 8px);
  transform: translateX(10px);
}

.header-area .lc-nav .sub-menu .sub-menu::before {
  top: 0;
  bottom: 0;
  left: -8px;
  right: auto;
  width: 8px;
  height: auto;
}

.header-area .lc-nav .sub-menu li a:hover,
.header-area .lc-nav .sub-menu li.active a {
  background-color: var(--lc-color-cream-2);
  color: var(--lc-color-primary-deep);
}

.header-area .lc-nav ul li a {
  position: relative;
  display: inline-block;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1;
  color: var(--lc-color-ink);
  padding: 10px 14px;
  transition: color 0.25s ease;
}

.header-area .lc-nav>ul>li>a:hover,
.header-area .lc-nav>ul>li.active>a {
  color: var(--lc-color-primary-deep);
}

.header-area .header-right {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-shrink: 0;
}

.header-area .header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-height: 44px;
  padding: 11px 22px;
  border-radius: 999px;
  border: none;
  background-color: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  white-space: nowrap;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 0.25s ease, transform 0.25s ease, color 0.25s ease;
}

.header-area .header-cta::after,
.header-area .header-cta .lc-btn-icon {
  display: none;
}

.header-area .header-cta:hover {
  background-color: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: none;
}

.header-area .lc-cart-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--lc-color-white);
  color: var(--lc-color-ink);
  box-shadow: 0 4px 16px rgba(var(--lc-color-ink-rgb), 0.12);
  transition: background-color 0.3s ease, color 0.3s ease;
}

.header-area .lc-cart-btn:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.header-area .lc-cart-btn .count {
  position: absolute;
  top: -3px;
  right: -3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-white);
  color: var(--lc-color-ink);
  font-size: 11px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.header-area .lc-menu-toggle {
  display: none;
  flex-direction: column;
  gap: 6px;
  width: 30px;
}

.header-area .lc-menu-toggle span {
  display: block;
  height: 2px;
  width: 100%;
  background-color: var(--lc-color-ink);
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/*======================
3.1 Offcanvas Menu
========================*/
.lc-offcanvas {
  position: fixed;
  top: 0;
  right: -440px;
  width: 400px;
  max-width: 92vw;
  height: 100vh;
  height: 100dvh;
  background-color: #ffffff !important;
  background: #ffffff !important;
  z-index: 1001;
  padding: 36px 30px;
  display: flex;
  flex-direction: column;
  gap: 0;
  overflow-y: auto;
  box-shadow: -12px 0 40px rgba(0, 0, 0, 0.14);
  transition: right 0.45s cubic-bezier(0.65, 0, 0.35, 1);
}

.lc-offcanvas.open {
  right: 0;
}

.lc-offcanvas .lc-offcanvas-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(31, 26, 20, 0.08);
}

.lc-offcanvas .lc-logo {
  display: inline-flex;
  align-items: center;
}

.lc-offcanvas .lc-logo img {
  height: 40px;
  width: auto;
  object-fit: contain;
}

.lc-offcanvas .lc-offcanvas-close {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid rgba(31, 26, 20, 0.15);
  background-color: #f7f5f2;
  color: #1F1A14;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

.lc-offcanvas .lc-offcanvas-close:hover {
  background-color: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
  transform: rotate(90deg);
}

.lc-offcanvas .lc-offcanvas-close i {
  font-size: 16px;
  color: inherit;
}

.lc-offcanvas .lc-offcanvas-nav ul li a {
  display: block;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #1F1A14 !important;
  padding: 12px 0;
  border-bottom: 1px solid rgba(31, 26, 20, 0.08);
  transition: color 0.2s ease, padding-left 0.2s ease;
}

.lc-offcanvas .lc-offcanvas-nav ul li a:hover {
  color: #FC6D0F !important;
  padding-left: 8px;
}

.lc-offcanvas .lc-offcanvas-footer {
  margin-top: auto;
  padding-top: 22px;
  border-top: 1px solid rgba(31, 26, 20, 0.08);
  color: #5C5347;
  font-size: 14px;
}

.lc-offcanvas .lc-offcanvas-footer p {
  margin-bottom: 4px;
  color: #5C5347;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}

.lc-offcanvas .lc-offcanvas-footer a {
  color: #FC6D0F;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s ease;
}

.lc-offcanvas .lc-offcanvas-footer a:hover {
  color: #D4550A;
}

.lc-offcanvas-overlay {
  position: fixed;
  inset: 0;
  background-color: rgba(var(--lc-color-ink-rgb), 0.55);
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.lc-offcanvas-overlay.open {
  opacity: 1;
  visibility: visible;
}

/* --- Header style 3 (Home 03) --- */
.header-area.header-style-3 {
  position: relative;
  top: 0;
}

.header-style-3 .header-top {
  background-color: var(--lc-color-green);
  padding: 10px 0;
  font-size: 14px;
}

.header-style-3 .header-top-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.header-style-3 .contact-list {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

.header-style-3 .contact-list li {
  position: relative;
}

.header-style-3 .contact-list li+li {
  margin-left: 16px;
  padding-left: 16px;
}

.header-style-3 .contact-list li+li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 14px;
  background-color: rgba(var(--lc-color-cream-rgb), 0.25);
}

.header-style-3 .contact-list a {
  color: rgba(var(--lc-color-cream-rgb), 0.85);
  font-weight: 500;
}

.header-style-3 .contact-list a:hover {
  color: var(--lc-color-primary);
}

.header-style-3 .contact-list i {
  font-size: 13px;
  color: var(--lc-color-primary);
  margin-right: 8px;
}

.header-style-3 .header-top-right {
  display: flex;
  align-items: center;
  gap: 18px;
}

.header-style-3 .header-search {
  position: relative;
}

.header-style-3 .header-search .search-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: rgba(var(--lc-color-cream-rgb), 0.12);
  color: var(--lc-color-cream);
  font-size: 13px;
  transition: background-color 0.2s ease;
}

.header-style-3 .header-search .search-toggle:hover {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.header-style-3 .header-search.open .search-toggle {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.header-style-3 .search-form {
  position: absolute;
  top: calc(100% + 16px);
  right: 0;
  width: 320px;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: 16px;
  padding: 10px;
  box-shadow: 0 24px 48px rgba(var(--lc-color-ink-rgb), 0.14);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  z-index: 99;
}

.header-style-3 .header-search.open .search-form {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header-style-3 .search-form form {
  position: relative;
}

.header-style-3 .search-form input {
  width: 100%;
  border: none;
  background-color: var(--lc-color-cream);
  border-radius: 10px;
  padding: 12px 54px 12px 16px;
  font-family: var(--lc-ff-body);
  font-size: 14px;
  color: var(--lc-color-ink);
}

.header-style-3 .search-form input:focus {
  outline: none;
}

.header-style-3 .search-form input::placeholder {
  color: #A99F8F;
}

.header-style-3 .search-form button {
  position: absolute;
  top: 4px;
  right: 4px;
  bottom: 4px;
  width: 42px;
  border: none;
  border-radius: 8px;
  background-color: var(--lc-color-primary);
  color: var(--lc-color-white);
  transition: background-color 0.2s ease;
}

.header-style-3 .search-form button:hover {
  background-color: var(--lc-color-green);
}

.header-style-3 .header-nav-bar {
  background-color: #ffffff;
  border-bottom: 1px solid #888888
}

.header-style-3 .header-nav-bar .header-main {
  padding: 16px 0;
}

.header-area.header-style-3.sticky-active {
  position: fixed;
  top: 0;
}

.header-style-3.sticky-active .header-top {
  display: none;
}

.header-style-3.sticky-active .header-nav-bar {
  background-color: #ffffff;
  border-bottom: none;
}

/* --- Header cart dropdown --- */
.header-area .header-cart {
  position: relative;
}

.header-area .cart-dropdown {
  position: absolute;
  top: calc(100% + 18px);
  right: 0;
  width: 320px;
  background-color: var(--lc-color-white);
  border: 1px solid var(--lc-color-border);
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 20px 44px rgba(var(--lc-color-ink-rgb), 0.14);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  z-index: 30;
}

.header-area .cart-dropdown::before {
  content: "";
  position: absolute;
  top: -18px;
  left: 0;
  right: 0;
  height: 18px;
}

.header-area .header-cart:hover .cart-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header-area .cart-dropdown .dd-title {
  font-size: 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--lc-color-border-2);
  margin-bottom: 6px;
}

.header-area .cart-dropdown .dd-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
}

.header-area .cart-dropdown .dd-item img {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  object-fit: cover;
  background-color: var(--lc-color-cream);
  flex-shrink: 0;
}

.header-area .cart-dropdown .dd-info {
  flex: 1;
  min-width: 0;
}

.header-area .cart-dropdown .dd-info .name {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.header-area .cart-dropdown .dd-info .name:hover {
  color: var(--lc-color-primary);
}

.header-area .cart-dropdown .dd-info .meta {
  font-size: 13px;
  color: var(--lc-color-body);
}

.header-area .cart-dropdown .dd-remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 2px solid var(--lc-color-border);
  color: var(--lc-color-body);
  flex-shrink: 0;
  transition: background-color 0.2s ease;
}

.header-area .cart-dropdown .dd-remove i {
  font-size: 10px;
}

.header-area .cart-dropdown .dd-remove:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-white);
}

.header-area .cart-dropdown .dd-subtotal {
  display: flex;
  justify-content: space-between;
  padding: 14px 0;
  font-weight: 800;
  color: var(--lc-color-ink);
}

.header-area .cart-dropdown .dd-subtotal .amount {
  color: var(--lc-color-primary-deep);
}

.header-area .cart-dropdown .dd-actions {
  display: flex;
  gap: 10px;
}

.header-area .cart-dropdown .dd-btn {
  flex: 1;
  text-align: center;
  padding: 11px 10px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.header-area .cart-dropdown .dd-btn.outline {
  border: 2px solid var(--lc-color-green);
  color: var(--lc-color-green);
}

.header-area .cart-dropdown .dd-btn.outline:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.header-area .cart-dropdown .dd-btn.solid {
  border: 2px solid var(--lc-color-green);
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.header-area .cart-dropdown .dd-btn.solid:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

body.home-three .cart-dropdown .dd-btn {
  border-radius: 12px;
}

/*======================
4. Hero
========================*/
.hero-area {
  position: relative;
}

.hero-area.hero-card-style {
  padding: 28px 0 10px;
  background-color: #fff;
  overflow: hidden;
}

.hero-area .hero-soft-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: #fff;
}

.hero-area.hero-card-style>.container {
  position: relative;
  z-index: 2;
}

.hero-area .hero-slider {
  position: relative;
  height: auto;
  min-height: 0;
  max-height: none;
  overflow: visible;
  padding-bottom: 54px;
}

.hero-area .hero-card {
  position: relative;
  border-radius: 40px;
  overflow: hidden;
  background: #F4EBDD;
  box-shadow: 0 24px 50px rgba(var(--lc-color-ink-rgb), 0.12);
  min-height: 560px;
}

.hero-area .hero-card-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.hero-area .hero-card-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}

.hero-area .hero-card-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  min-height: 560px;
  padding: 56px 48px 165px 56px;
}

.hero-area .hero-card-content {
  position: relative;
  z-index: 3;
  max-width: 520px;
  color: #2D1F2D;
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
  border: none;
  padding: 0;
}

.hero-area .hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(45, 31, 45, 0.1);
  background-color: #ffffff;
  border-radius: 999px;
  padding: 8px 18px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #2D1F2D;
  margin-bottom: 22px;
  backdrop-filter: none;
}

.hero-area .hero-badge .pulse {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #FC6D0F;
  animation: lc-blink 1.8s ease infinite;
}

.hero-area .hero-title {
  margin-bottom: 18px;
  color: #2D1F2D;
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.05;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

.hero-area .hero-title .line {
  display: block;
  overflow: hidden;
}

.hero-area .hero-title .line-inner {
  display: inline-block;
  will-change: transform;
  color: #2D1F2D !important;
}

.hero-area .hero-title .lc-outline-word {
  color: #2D1F2D !important;
  -webkit-text-stroke: 1.5px rgba(45, 31, 45, 0.18);
  paint-order: stroke fill;
}

.hero-area .hero-text {
  font-size: 17px;
  line-height: 1.55;
  max-width: 460px;
  margin-bottom: 28px;
  color: #5C4B51;
}

.hero-area .hero-btns,
.hero-two .hero-btns {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.hero-area .hero-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 26px;
  border-radius: 999px;
  background-color: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(252, 109, 15, 0.28);
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.hero-area .hero-btn-primary:hover {
  color: #ffffff !important;
  background-color: #D4550A;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(252, 109, 15, 0.34);
}

.hero-area .hero-btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 24px;
  border-radius: 999px;
  border: 1.5px solid rgba(45, 31, 45, 0.18);
  color: #2D1F2D !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  background: #ffffff;
  backdrop-filter: none;
  transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.25s ease, color 0.25s ease;
}

.hero-area .hero-btn-ghost:hover {
  color: #D4550A !important;
  background-color: #ffffff;
  border-color: #FC6D0F;
  transform: translateY(-2px);
}

.hero-area .hero-card-visual,
.hero-area .hero-float-chip {
  display: none;
}

.hero-area .hero-mobile-media {
  display: none;
}

.hero-area .hero-pagination {
  position: absolute;
  left: 50%;
  bottom: 8px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  z-index: 5;
}

.hero-area .hero-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background-color: rgba(var(--lc-color-ink-rgb), 0.2);
  opacity: 1;
  transition: width 0.3s ease, background-color 0.3s ease;
}

.hero-area .hero-pagination .swiper-pagination-bullet-active {
  width: 26px;
  background-color: #FC6D0F;
}

.hero-area .hero-nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 6;
  width: 48px;
  height: 48px;
  padding: 0;
  border: none;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--lc-color-ink);
  background-color: #ffffff;
  box-shadow: 0 10px 24px rgba(31, 26, 20, 0.12);
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.hero-area .hero-nav-btn.hero-prev {
  left: -10px;
}

.hero-area .hero-nav-btn.hero-next {
  right: -10px;
}

.hero-area .hero-nav-btn:hover {
  background-color: var(--lc-color-primary);
  color: #ffffff;
}

.hero-area .hero-stamp {
  display: none;
}

.hero-area .hero-social {
  display: none;
}

.hero-area .hero-stats-bar {
  border-bottom: 1px solid var(--lc-color-border-2);
}

.hero-area .hero-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 30px 0;
}

.hero-area .hero-stats .stat-item {
  text-align: center;
}

.hero-area .hero-stats .stat-item+.stat-item {
  border-left: 1px solid var(--lc-color-border-2);
}

.hero-area .hero-stats .stat-item .number {
  font-family: var(--lc-ff-display);
  font-weight: 400;
  justify-content: center;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--lc-color-ink);
  line-height: 1;
  margin-bottom: 8px;
  display: flex;
  align-items: baseline;
}

.hero-area .hero-stats .stat-item .number .suffix {
  color: var(--lc-color-primary-deep);
}

.hero-area .hero-stats .stat-item .label {
  font-size: 14px;
}


/*======================
5. Marquee
========================*/
.marquee-area {
  background-color: var(--lc-color-green);
  padding: 24px 0;
  overflow: hidden;
}

.marquee-area .marquee-track {
  display: flex;
  align-items: center;
  gap: 44px;
  width: max-content;
  will-change: transform;
}

.marquee-area .marquee-item {
  display: flex;
  align-items: center;
  gap: 44px;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #fff !important;
  white-space: nowrap;
}

/*======================
6. About
========================*/
.about-area .about-thumb {
  position: relative;
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 560px;
}

.about-area .about-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1);
  will-change: transform;
}

.about-area .about-thumb .exp-card {
  position: absolute;
  bottom: 26px;
  left: 26px;
  background-color: var(--lc-color-primary);
  border-radius: 18px;
  padding: 22px 26px;
}

.about-area .about-thumb .exp-card .number {
  font-family: var(--lc-ff-heading);
  font-size: 40px;
  font-weight: 700;
  color: var(--lc-color-ink);
  line-height: 1;
}

.about-area .about-thumb .exp-card .label {
  font-size: 14px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

.about-area .about-content .lead-text {
  font-size: 19px;
  margin: 26px 0 24px 0;
}

.about-area .about-list {
  display: flex;
  flex-direction: column;
  margin-bottom: 36px;
}

.about-area .about-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
  color: var(--lc-color-ink);
  padding: 13px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
}

.about-area .about-list li:first-child {
  padding-top: 0;
}

.about-area .about-list li .check {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background-color: var(--lc-color-cream-2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/*======================
7. Menu Categories
========================*/
.service-area .service-item {
  position: relative;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 42px 36px;
  height: 100%;
  overflow: hidden;
  transition: transform 0.45s cubic-bezier(0.65, 0, 0.35, 1), box-shadow 0.45s ease;
}

.service-area .service-item:hover {
  transform: translateY(-10px);
  box-shadow: 0 30px 60px rgba(var(--lc-color-ink-rgb), 0.08);
}

.service-area .service-item .icon {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  background-color: #E7EFDF;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 26px;
  transition: background-color 0.4s ease;
}

.service-area .service-item:hover .icon {
  background-color: var(--lc-color-primary);
}

.service-area .service-item .title {
  margin-bottom: 14px;
}

.service-area .service-item .title a:hover {
  color: var(--lc-color-primary-deep);
}

.service-area .service-item p {
  margin-bottom: 24px;
}

.service-area .service-item .service-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  font-size: 15px;
  color: var(--lc-color-ink);
}

.service-area .service-item .service-link i {
  font-size: 13px;
  transition: transform 0.35s cubic-bezier(0.65, 0, 0.35, 1);
}

.service-area .service-item:hover .service-link i {
  transform: translateX(6px);
}

.service-area .service-item .index {
  position: absolute;
  top: 34px;
  right: 34px;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  color: #CDBB9B;
}

.service-area .service-item.style-dark {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
}

.service-area .service-item.style-dark .title,
.service-area .service-item.style-dark .title a {
  color: var(--lc-color-cream);
}

.service-area .service-item.style-dark p {
  color: var(--lc-color-muted);
}

.service-area .service-item.style-dark .icon {
  background-color: var(--lc-color-primary);
}

.service-area .service-item.style-dark .service-link {
  color: var(--lc-color-primary);
}

/*======================
8. Menu Price List
========================*/
.menu-list-area {
  background-color: var(--lc-color-green);
}

.menu-list-area .section-title .subtitle {
  color: var(--lc-color-primary);
}

.menu-list-area .section-title .title {
  color: var(--lc-color-cream);
}

.menu-list-area .menu-thumb {
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 620px;
}

.menu-list-area .menu-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.menu-list-area .menu-group .group-title {
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 700;
  color: var(--lc-color-primary);
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--lc-color-dark-soft);
}

.menu-list-area .menu-item-row {
  margin-bottom: 26px;
}

.menu-list-area .menu-item-row .item-head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 6px;
}

.menu-list-area .menu-item-row .name {
  font-family: var(--lc-ff-heading);
  font-size: 19px;
  font-weight: 700;
  color: var(--lc-color-cream);
  white-space: nowrap;
}

.menu-list-area .menu-item-row .dots {
  flex: 1;
  border-bottom: 2px dashed rgba(var(--lc-color-cream-rgb), 0.25);
  transform: translateY(-4px);
}

.menu-list-area .menu-item-row .price {
  font-family: var(--lc-ff-heading);
  font-size: 19px;
  font-weight: 800;
  color: var(--lc-color-primary);
  white-space: nowrap;
}

.menu-list-area .menu-item-row p {
  font-size: 15px;
  color: var(--lc-color-muted);
  margin-bottom: 0;
}

/*======================
9. Process
========================*/
.process-area .process-item {
  position: relative;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 42px 36px;
  height: 100%;
  text-align: center;
  transition: transform 0.45s cubic-bezier(0.65, 0, 0.35, 1), box-shadow 0.45s ease;
}

.process-area .process-item:hover {
  transform: translateY(-10px);
  box-shadow: 0 30px 60px rgba(var(--lc-color-ink-rgb), 0.08);
}

.process-area .process-item .ghost-num {
  position: absolute;
  top: 6px;
  right: 18px;
  font-family: var(--lc-ff-display);
  font-size: 96px;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 2px rgba(var(--lc-color-green-rgb), 0.16);
  pointer-events: none;
}

.process-area .process-item .icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background-color: #E7EFDF;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px auto;
  transition: background-color 0.4s ease;
}

.process-area .process-item:hover .icon {
  background-color: var(--lc-color-primary);
}

.process-area .process-item .title {
  margin-bottom: 12px;
}

.process-area .process-item p {
  margin-bottom: 0;
}

/*======================
10. Video
========================*/
.video-area .video-banner {
  position: relative;
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 520px;
}

.video-area .video-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1);
  will-change: transform;
}

.video-area .video-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(var(--lc-color-green-rgb), 0.45);
}

.video-area .video-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
}

.video-area .video-play {
  position: relative;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 5px 0 var(--lc-color-primary-deep);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.video-area .video-play:hover {
  transform: translateY(3px);
  box-shadow: 0 2px 0 var(--lc-color-primary-deep);
}

.video-area .video-play i {
  font-size: 20px;
  margin-left: 3px;
}

.video-area .video-play .pulse-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(var(--lc-color-cream-rgb), 0.65);
  animation: lc-pulse 2.2s ease-out infinite;
  pointer-events: none;
}

.video-area .video-play .pulse-ring.delay {
  animation-delay: 1.1s;
}

.video-area .video-label {
  font-family: var(--lc-ff-heading);
  font-size: 19px;
  font-weight: 700;
  color: var(--lc-color-cream);
}

.lc-video-modal .modal-content {
  background: transparent;
  border: 0;
}

.lc-video-modal .video-modal-close {
  position: absolute;
  top: -48px;
  right: 0;
  z-index: 3;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
  display: flex;
  align-items: center;
  justify-content: center;
}

.lc-video-modal .ratio {
  border-radius: var(--lc-radius-sm);
  overflow: hidden;
}

/* === Image shine sweep (hover) === */
.blog-area .blog-item .thumb::before,
.product-item .thumb::before,
.about-area .about-thumb::before,
.menu-list-area .menu-thumb::before,
.insta-area .insta-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: -90%;
  z-index: 2;
  width: 55%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-25deg);
  pointer-events: none;
}

.blog-area .blog-item:hover .thumb::before,
.product-item:hover .thumb::before,
.about-area .about-thumb:hover::before,
.menu-list-area .menu-thumb:hover::before,
.insta-area .insta-item:hover::before {
  animation: lc-shine 0.9s ease;
}

/*======================
11. Shop
========================*/
.product-item {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 12px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.product-item:hover {
  border-color: var(--lc-color-green);
  box-shadow: 6px 6px 0 rgba(var(--lc-color-ink-rgb), 0.08);
}

.product-item .thumb {
  position: relative;
  display: block;
  border-radius: var(--lc-radius-sm);
  background-color: var(--lc-color-cream);
  overflow: hidden;
  height: 300px;
}

.product-item .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.35s ease;
}

.product-item:hover .thumb img {
  transform: scale(1.06);
}

.product-item.has-hover-image .thumb {
  position: relative;
}

.product-item.has-hover-image .thumb .thumb-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #ffffff;
  padding: 18px;
  transform: none;
}

.product-item.has-hover-image .thumb .thumb-img-primary {
  opacity: 1;
  z-index: 1;
}

.product-item.has-hover-image .thumb .thumb-img-secondary {
  opacity: 0;
  z-index: 2;
}

.product-item.has-hover-image:hover .thumb .thumb-img-primary {
  opacity: 0;
  transform: none;
}

.product-item.has-hover-image:hover .thumb .thumb-img-secondary {
  opacity: 1;
  transform: none;
}

.product-item .thumb .badge-tag {
  position: absolute;
  top: 18px;
  left: 14px;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 8px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-4deg);
  box-shadow: 3px 3px 0 var(--lc-color-green);
}

.product-item .thumb .cart-btn {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  border-radius: 12px;
  padding: 13px 20px;
  font-size: 15px;
  font-weight: 600;
  transform: translateY(140%);
  transition: transform 0.45s cubic-bezier(0.65, 0, 0.35, 1), background-color 0.3s ease, color 0.3s ease;
}

.product-item:hover .thumb .cart-btn {
  transform: translateY(0);
}

.product-item .thumb .cart-btn:hover {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.product-item .product-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 16px 8px 6px 8px;
}

.product-item .product-content .product-foot {
  margin-top: auto;
}

.product-item .product-content .rating {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--lc-color-body);
  margin-bottom: 8px;
}

.product-item .product-content .rating .stars i {
  color: var(--lc-color-primary);
  font-size: 12px;
  margin-right: 2px;
}

.product-item .product-content .desc {
  font-size: 14.5px;
  line-height: 1.6;
  min-height: 3.2em;
  margin: 8px 0 16px 0;
}

.product-item .product-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.product-item .order-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 2px solid var(--lc-color-green);
  border-radius: 999px;
  padding: 10px 18px;
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-green);
  white-space: nowrap;
  transition: background-color 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}

.product-item .order-btn .btn-ic {
  position: relative;
  width: 16px;
  height: 15px;
  overflow: hidden;
}

.product-item .order-btn .btn-ic i {
  position: absolute;
  inset: 0;
  font-size: 14px;
  line-height: 15px;
  transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1);
}

.product-item .order-btn .btn-ic i:nth-child(2) {
  transform: translateX(-170%);
}

.product-item .order-btn:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.product-item .order-btn:hover .btn-ic i:nth-child(1) {
  transform: translateX(170%);
}

.product-item .order-btn:hover .btn-ic i:nth-child(2) {
  transform: translateX(0);
}

.product-item .product-content .cat {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
  margin-bottom: 6px;
  display: block;
}

.product-item .product-content .title {
  font-size: 20px;
  margin-bottom: 0;
}

.product-item .product-content .title a:hover {
  color: var(--lc-color-primary-deep);
}

.product-item .product-content .price {
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 700;
  color: var(--lc-color-cream);
  background-color: var(--lc-color-green);
  border-radius: 999px;
  padding: 7px 15px;
  white-space: nowrap;
}

/*======================
12. Offer
========================*/
.offer-area {
  background-color: var(--lc-color-green);
  position: relative;
  overflow: hidden;
}

.offer-area .offer-inner {
  position: relative;
}

.offer-area::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -80px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--lc-color-primary-rgb), 0.25) 0%, rgba(var(--lc-color-primary-rgb), 0) 70%);
}

.offer-badge {
  display: inline-block;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-cream);
  border-radius: 8px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-3deg);
  margin-bottom: 22px;
}

.offer-area .offer-title {
  color: var(--lc-color-cream);
  margin-bottom: 16px;
}

.offer-area .offer-text {
  color: var(--lc-color-muted);
  max-width: 480px;
  margin-bottom: 30px;
}

.offer-countdown {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.count-box {
  background-color: rgba(var(--lc-color-cream-rgb), 0.07);
  border: 2px dashed var(--lc-color-dark-soft);
  border-radius: var(--lc-radius-sm);
  padding: 22px 10px;
  text-align: center;
}

.count-box .num {
  display: block;
  font-family: var(--lc-ff-heading);
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
  color: var(--lc-color-cream);
  margin-bottom: 6px;
}

.count-box .label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lc-color-muted);
}

/*======================
13. Portfolio
========================*/
.portfolio-area .portfolio-item .thumb {
  position: relative;
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 420px;
  display: block;
}

.portfolio-area .portfolio-item .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s cubic-bezier(0.65, 0, 0.35, 1);
}

.portfolio-area .portfolio-item:hover .thumb img {
  transform: scale(1.07);
}

.portfolio-area .portfolio-item .thumb .cat {
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: rgba(var(--lc-color-cream-rgb), 0.92);
  border-radius: 999px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

.portfolio-area .portfolio-item .thumb .view-btn {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(16px);
  opacity: 0;
  transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.4s ease;
}

.portfolio-area .portfolio-item:hover .thumb .view-btn {
  transform: translateY(0);
  opacity: 1;
}

.portfolio-area .portfolio-item .portfolio-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 20px;
}

.portfolio-area .portfolio-item .portfolio-content .title {
  margin-bottom: 4px;
}

.portfolio-area .portfolio-item .portfolio-content .title a:hover {
  color: var(--lc-color-primary-deep);
}

.portfolio-area .portfolio-item .portfolio-content .meta {
  font-size: 14px;
}

/*======================
14. Testimonial
========================*/
.testimonial-area {
  position: relative;
}

.testimonial-area .testimonial-slider {
  overflow: hidden;
}

.testimonial-area .testimonial-item {
  position: relative;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 50px 56px;
  overflow: hidden;
}

.testimonial-area .testimonial-item .quote-watermark {
  position: absolute;
  top: 36px;
  right: 44px;
  font-size: 58px;
  color: var(--lc-color-primary);
  opacity: 0.2;
  pointer-events: none;
}

.testimonial-area .testimonial-item .t-stars {
  display: flex;
  gap: 4px;
  margin-bottom: 22px;
}

.testimonial-area .testimonial-item .quote-text {
  font-family: var(--lc-ff-heading);
  max-width: 920px;
  font-size: clamp(24px, 2.6vw, 38px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: var(--lc-color-ink);
  margin-bottom: 40px;
}

.testimonial-area .testimonial-item .quote-text .q-mark {
  color: var(--lc-color-primary-deep);
}

.testimonial-area .testimonial-item .author {
  display: flex;
  align-items: center;
  gap: 16px;
}

.testimonial-area .testimonial-item .author .avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  border: 3px solid var(--lc-color-cream-2);
}

.testimonial-area .testimonial-item .author .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.testimonial-area .testimonial-item .author .name {
  font-size: 17px;
  font-weight: 700;
  color: var(--lc-color-ink);
  margin-bottom: 2px;
}

.testimonial-area .testimonial-item .author .role {
  font-size: 14px;
  color: var(--lc-color-muted);
}

.testimonial-area .testimonial-controls {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-end;
}

.testimonial-area .testimonial-fraction {
  font-family: var(--lc-ff-display);
  font-size: 19px;
  letter-spacing: 0.05em;
  color: var(--lc-color-ink);
  margin-right: 10px;
}

.testimonial-area .testimonial-controls .t-btn {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  padding: 0;
  line-height: 0;
  border-radius: 50%;
  border: 2px solid var(--lc-color-green);
  background-color: var(--lc-color-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--lc-color-green);
  transition: background-color 0.2s ease;
}

.testimonial-area .testimonial-controls .t-btn:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.testimonial-area .testimonial-controls .t-btn i {
  font-size: 15px;
}

/*======================
15. Blog
========================*/
.blog-area .blog-item .thumb {
  position: relative;
  display: block;
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 280px;
  margin-bottom: 24px;
}

.blog-area .blog-item .thumb .tag-chip {
  position: absolute;
  top: 18px;
  left: 16px;
  z-index: 3;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 8px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-3deg);
  box-shadow: 2px 2px 0 var(--lc-color-green);
}

.blog-area .blog-item .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s cubic-bezier(0.65, 0, 0.35, 1);
}

.blog-area .blog-item:hover .thumb img {
  transform: scale(1.07);
}

.blog-area .blog-item .excerpt {
  margin: 12px 0 0 0;
  font-size: 15.5px;
}

.blog-area .blog-item .blog-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px dashed var(--lc-color-border-2);
}

.blog-area .blog-item .author {
  display: flex;
  align-items: center;
  gap: 12px;
}

.blog-area .blog-item .author img {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--lc-color-cream-2);
}

.blog-area .blog-item .author .author-meta {
  display: flex;
  flex-direction: column;
}

.blog-area .blog-item .author .name {
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.blog-area .blog-item .author .date {
  font-size: 13px;
}

.blog-area .blog-item .read-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 2px solid rgba(var(--lc-color-green-rgb), 0.3);
  color: var(--lc-color-green);
  flex-shrink: 0;
  transition: background-color 0.35s ease, color 0.35s ease, border-color 0.35s ease, transform 0.35s ease;
}

.blog-area .blog-item:hover .read-circle {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  transform: rotate(45deg);
}

.blog-area .blog-item .title {
  font-size: 24px;
  line-height: 1.3;
  margin-bottom: 0;
}

.blog-area .blog-item .title a:hover {
  color: var(--lc-color-primary-deep);
}

/*======================
16. Instagram Strip
========================*/
.insta-area .section-title .title a {
  display: inline-flex;
  align-items: center;
  gap: 0.22em;
}

.insta-area .section-title .title a:hover {
  color: var(--lc-color-primary-deep);
}

.insta-area .section-title .insta-logo {
  width: 0.78em;
  height: 0.78em;
  flex-shrink: 0;
  transform: translateY(-0.03em);
}

.insta-area .insta-marquee {
  overflow: hidden;
}

.insta-area .marquee-track {
  display: flex;
  width: max-content;
  will-change: transform;
}

.insta-area .marquee-item {
  display: flex;
}

.insta-area .insta-item {
  position: relative;
  display: block;
  width: 300px;
  height: 300px;
  overflow: hidden;
  flex-shrink: 0;
}

.insta-area .insta-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}

.insta-area .insta-item:hover img {
  transform: scale(1.08);
}

.insta-area .insta-item .insta-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(var(--lc-color-green-rgb), 0.55);
  opacity: 0;
  transition: opacity 0.4s ease;
}

.insta-area .insta-item .insta-overlay i {
  font-size: 30px;
  color: var(--lc-color-white);
  transform: scale(0.55);
  transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.insta-area .insta-item:hover .insta-overlay {
  opacity: 1;
}

.insta-area .insta-item:hover .insta-overlay i {
  transform: scale(1.35);
}

/*======================
17. CTA
========================*/
.cta-area {
  background: #fff;
  color: #000000;
}

.cta-area .cta-inner {
  padding-bottom: 0;
  border-bottom: none;
}

.cta-area .cta-title {
  margin: 0;
  max-width: none;
  font-family: var(--lc-ff-heading);
  font-size: clamp(28px, 3.8vw, 48px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.cta-area .cta-title .title-solid {
  display: block;
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.cta-area .cta-title .lc-accent-word {
  display: block;
  margin-top: 6px;
  color: #FC6D0F;
  -webkit-text-fill-color: #FC6D0F;
}

.cta-area .cta-email-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  border: none;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration: none;
  word-break: break-all;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.cta-area .cta-email-btn:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 767.98px) {
  .cta-area .text-md-end {
    text-align: left !important;
  }

  .cta-area .cta-email-btn {
    width: 100%;
  }
}

/*======================
18. Footer
========================*/
.footer-area {
  background-color: #131212
}

.footer-area .footer-top {
  padding: 80px 0 60px 0;
}

.footer-area .footer-brand-title {
  display: inline-block;
  font-family: var(--lc-ff-heading);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: none;
  color: #ffffff !important;
  text-decoration: none;
  line-height: 1.25;
  max-width: 340px;
}

.footer-area .footer-brand-title:hover {
  color: #FC6D0F !important;
}

.footer-area .footer-text {
  color: var(--lc-color-muted);
  margin-top: 16px;
  max-width: 340px;
  font-size: 15px;
  line-height: 1.7;
}

.footer-area .footer-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  padding: 56px 0;
  border-bottom: 1px solid var(--lc-color-dark-soft);
  text-align: center;
}

.footer-area .footer-info .info-item .icon {
  width: 62px;
  height: 62px;
  margin: 0 auto 16px auto;
  border-radius: 50%;
  background-color: rgb(255 255 255 / 16%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-area .footer-info .info-item .info-title {
  font-size: 17px;
  color: white !important;
  margin-bottom: 8px;
}

.footer-area .footer-info .info-item p {
  color: var(--lc-color-muted);
  margin-bottom: 0;
  font-size: 15px;
}

.footer-area .footer-info .info-item a {
  color: var(--lc-color-muted);
}

.footer-area .footer-info .info-item a:hover {
  color: var(--lc-color-primary);
}

.footer-area .footer-cin {
  color: var(--lc-color-muted);
  font-size: 13px;
  margin-top: 10px;
  margin-bottom: 0;
}

.footer-area .footer-bottom-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
}

.footer-area .footer-bottom-links a {
  color: var(--lc-color-muted);
}

.footer-area .footer-bottom-links a:hover {
  color: var(--lc-color-primary);
}

.footer-area {
  overflow: hidden;
}

.footer-area .footer-watermark {
  font-family: var(--lc-ff-display);
  font-weight: 400;
  text-transform: uppercase;
  font-size: clamp(120px, 20vw, 300px);
  line-height: 0.78;
  text-align: center;
  letter-spacing: 0.02em;
  color: transparent;
  -webkit-text-stroke: 2px rgba(251, 244, 230, 0.14);
  user-select: none;
  pointer-events: none;
  margin-bottom: -0.14em;
}

.footer-area .footer-title {
  font-size: 17px;
  color: #ffffff !important;
  margin-bottom: 22px;
}

.footer-area .footer-links li {
  margin-bottom: 12px;
}

.footer-area .footer-links li a {
  color: var(--lc-color-muted);
}

.footer-area .footer-links li a:hover {
  color: var(--lc-color-primary);
}

.footer-area .footer-newsletter p {
  color: var(--lc-color-muted);
  margin-bottom: 18px;
}

.footer-area .footer-newsletter .newsletter-form {
  display: flex;
  border: 2px solid var(--lc-color-dark-soft);
  border-radius: var(--lc-radius-sm);
  padding: 6px;
}

.footer-area .footer-newsletter .newsletter-form input {
  flex: 1;
  background: transparent;
  border: none;
  color: var(--lc-color-cream);
  font-family: var(--lc-ff-body);
  font-size: 15px;
  padding: 8px 16px;
  min-width: 0;
}

.footer-area .footer-newsletter .newsletter-form input::placeholder {
  color: var(--lc-color-muted);
}

.footer-area .footer-newsletter .newsletter-form .submit-btn {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background-color: var(--lc-color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.footer-area .footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  padding: 26px 0;
  border-top: 1px solid var(--lc-color-dark-soft);
  color: var(--lc-color-muted);
  font-size: 14px;
}

.footer-area .footer-social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
}

.footer-area .footer-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background-color: rgba(var(--lc-color-cream-rgb), 0.08);
  color: #ffffff !important;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.footer-area .footer-social a:hover {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
  transform: translateY(-2px);
}

/*======================
19. Home Page Two
========================*/
/* --- Header style 2 (over dark hero) --- */
.header-style-2 .logo-light {
  display: inline-block;
}

.header-style-2 .logo-dark {
  display: none;
}

.header-style-2.sticky-active .logo-light {
  display: none;
}

.header-style-2.sticky-active .logo-dark {
  display: inline-block;
}

.header-style-2:not(.sticky-active) .lc-nav>ul>li>a {
  color: var(--lc-color-cream);
}

.header-style-2:not(.sticky-active) .lc-nav>ul>li>a:hover,
.header-style-2:not(.sticky-active) .lc-nav>ul>li.active>a {
  color: var(--lc-color-primary);
}

.header-style-2:not(.sticky-active) .lc-cart-btn {
  background-color: rgba(var(--lc-color-cream-rgb), 0.14);
  color: var(--lc-color-cream);
  box-shadow: none;
}

.header-style-2:not(.sticky-active) .lc-cart-btn .count {
  border-color: var(--lc-color-green);
}

/* --- Hero two --- */
.hero-two {
  position: relative;
  overflow: hidden;
}

.hero-two .hero-slide-2 {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 100vh;
  padding: 180px 0 150px 0;
  overflow: hidden;
}

.hero-two .hero-bg {
  position: absolute;
  inset: 0;
}

.hero-two .hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.06);
}

.hero-two .hero-bg {
  z-index: 0;
}

.hero-two .hero-slide-2::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(var(--lc-color-green-rgb), 0.93) 0%, rgba(var(--lc-color-green-rgb), 0.78) 30%, rgba(var(--lc-color-green-rgb), 0.3) 62%, rgba(var(--lc-color-green-rgb), 0.05) 100%);
  z-index: 1;
}

.hero-two .hero-slide-2::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 180px;
  background: linear-gradient(180deg, rgba(var(--lc-color-green-rgb), 0) 0%, rgba(var(--lc-color-green-rgb), 0.55) 100%);
  z-index: 1;
}

.hero-two .container {
  position: relative;
  z-index: 2;
}

.hero-two .hero-inner {
  max-width: 680px;
  text-align: left;
}

.hero-two .hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(var(--lc-color-cream-rgb), 0.28);
  background-color: rgba(var(--lc-color-cream-rgb), 0.08);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 999px;
  padding: 9px 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--lc-color-cream);
  margin-bottom: 30px;
}

.hero-two .hero-badge .pulse {
  background-color: var(--lc-color-primary);
}

.hero-two .hero-title {
  color: var(--lc-color-cream);
}

.hero-two .lc-outline-word {
  -webkit-text-stroke-color: var(--lc-color-cream);
}

.hero-two .lc-accent-word {
  color: var(--lc-color-primary);
}

.hero-two .hero-text {
  color: rgba(var(--lc-color-cream-rgb), 0.88);
}

.hero-two .lc-btn-outline {
  border-color: rgba(var(--lc-color-cream-rgb), 0.7);
  color: var(--lc-color-cream);
  box-shadow: 0 5px 0 rgba(0, 0, 0, 0.25);
}

.hero-two .lc-btn-outline:hover {
  background-color: var(--lc-color-cream);
  color: var(--lc-color-green);
}

.hero-two .lc-btn-outline::after {
  background-color: var(--lc-color-primary);
}

.hero-two .hero-stats-2 {
  display: flex;
  gap: 18px;
  margin-top: 56px;
  flex-wrap: wrap;
}

.hero-two .stat-chip {
  min-width: 150px;
  text-align: left;
  background-color: rgba(var(--lc-color-cream-rgb), 0.1);
  border: 1px solid rgba(var(--lc-color-cream-rgb), 0.2);
  backdrop-filter: blur(8px);
  border-radius: 18px;
  padding: 20px 26px;
  text-align: center;
}

.hero-two .stat-chip .number {
  font-family: var(--lc-ff-display);
  font-size: 36px;
  line-height: 1;
  color: var(--lc-color-cream);
  display: flex;
  align-items: baseline;
  margin-bottom: 8px;
}

.hero-two .stat-chip .number .suffix {
  color: var(--lc-color-primary);
}

.hero-two .stat-chip .label {
  font-size: 13.5px;
  color: rgba(var(--lc-color-cream-rgb), 0.75);
}

/* --- Hero floating product card --- */
.hero-two .container {
  position: relative;
}

.hero-two .hero-card {
  position: absolute;
  right: 12px;
  bottom: 24px;
  z-index: 3;
  width: 380px;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-green);
  border-radius: 24px;
  padding: 16px;
  box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.28);
}

.hero-two .hero-card .product-item {
  background: none;
  border: none;
  border-radius: 0;
  padding: 0;
}

.hero-two .hero-card .product-item:hover {
  border: none;
  box-shadow: none;
}

.hero-two .hero-card .product-item .thumb {
  display: block;
  height: 306px;
}

.hero-two .hero-card .product-item .thumb::before {
  display: none;
}

.hero-two .hero-card .product-item:hover .thumb img {
  transform: none;
}

.hero-two .hero-card .product-item .thumb .cart-btn {
  transform: translateY(0);
}

.hero-two .hero-card .product-item .thumb img {
  height: 100%;
}

.hero-two .hero-card .product-item .product-content {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.hero-two .hero-card .product-item .product-content .rating {
  display: block;
  font-size: 13px;
  color: var(--lc-color-body);
  margin-top: 6px;
}

.hero-two .hero-card .product-item .product-content .rating i {
  font-size: 11px;
  color: var(--lc-color-primary);
  margin-right: 4px;
}

/* --- Hero slider arrows --- */
.hero-two .hero-nav-holder {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 104px;
  z-index: 3;
  pointer-events: none;
}

.hero-two .hero-nav-2 {
  display: inline-flex;
  gap: 12px;
  pointer-events: auto;
}

.hero-two .hero-nav-2 .hero-nav-btn {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  padding: 0;
  line-height: 0;
  border-radius: 50%;
  border: 2px solid rgba(var(--lc-color-cream-rgb), 0.35);
  background-color: transparent;
  color: var(--lc-color-cream);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}

.hero-two .hero-nav-2 .hero-nav-btn i {
  font-size: 15px;
}

.hero-two .hero-nav-2 .hero-nav-btn:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

/* --- Hero video slide + reel card --- */
.hero-two .hero-bg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-two .hero-card.style-video {
  display: block;
  height: 434px;
  padding: 10px;
}

.hero-two .hero-card.style-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 16px;
}

/* --- Plant moment image cards --- */
.reels-area .section-title {
  margin-bottom: 50px;
}

.reels-area .reel-card {
  position: relative;
  height: 360px;
  border-radius: var(--lc-radius);
  overflow: hidden;
  border: 2px solid var(--lc-color-border);
  background-color: var(--lc-color-cream);
}

.reels-area .reel-card.reel-card-content {
  height: auto;
  display: flex;
  flex-direction: column;
  transition: border-color 0.3s ease, transform 0.3s ease;
}

.reels-area .reel-card.reel-card-content:hover {
  border-color: var(--lc-color-primary);
  transform: translateY(-4px);
}

.reels-area .reel-card .reel-media {
  position: relative;
  height: 180px;
  overflow: hidden;
}

.reels-area .reel-card .reel-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.reels-area .reel-card.reel-card-content:hover .reel-media img {
  transform: scale(1.05);
}

.reels-area .reel-card .reel-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 22px 20px 24px;
}

.reels-area .reel-card .reel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background-color: rgba(var(--lc-color-primary-rgb), 0.14);
  color: var(--lc-color-primary);
  font-size: 18px;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.reels-area .reel-card.reel-card-content:hover .reel-icon {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.reels-area .reel-card .reel-title {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
  color: var(--lc-color-ink);
}

.reels-area .reel-card .reel-text {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: var(--lc-color-muted);
}

.reels-area .reel-card img,
.reels-area .reel-card video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.reels-area .reel-card:hover img {
  transform: scale(1.05);
}

.reels-area .reel-card .reel-tag {
  position: absolute;
  top: 18px;
  left: 18px;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 8px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-3deg);
  box-shadow: 3px 3px 0 var(--lc-color-green);
  z-index: 1;
}

@media (max-width: 991px) {
  .reels-area .reel-card {
    height: 300px;
  }

  .reels-area .reel-card.reel-card-content {
    height: auto;
  }

  .reels-area .reel-card .reel-media {
    height: 160px;
  }
}

@media (max-width: 575px) {
  .reels-area .reel-card {
    height: 260px;
  }

  .reels-area .reel-card.reel-card-content {
    height: auto;
  }

  .reels-area .reel-card .reel-media {
    height: 150px;
  }
}

/* --- Feature cards (overlap the hero) --- */
.feature-area {
  position: relative;
  z-index: 6;
  display: flow-root;
  background-color: var(--lc-color-green);
}

.feature-area .row {
  counter-reset: feature;
  margin-top: -80px;
}

.feature-area .feature-pill {
  counter-increment: feature;
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-green);
  border-radius: 20px;
  padding: 30px 28px;
  height: 100%;
  overflow: hidden;
  box-shadow: 7px 7px 0 var(--lc-color-green);
  transition: transform 0.35s cubic-bezier(0.65, 0, 0.35, 1), box-shadow 0.35s cubic-bezier(0.65, 0, 0.35, 1);
}

.feature-area .feature-pill:hover {
  transform: translate(-4px, -4px);
  box-shadow: 11px 11px 0 var(--lc-color-primary);
}

.feature-area .feature-pill::after {
  content: counter(feature, decimal-leading-zero);
  position: absolute;
  top: -12px;
  right: 8px;
  font-family: var(--lc-ff-display);
  font-size: 72px;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 1.5px rgba(var(--lc-color-ink-rgb), 0.14);
  pointer-events: none;
}

.feature-area .feature-pill .icon {
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  color: var(--lc-color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transform: rotate(-8deg);
  transition: transform 0.35s cubic-bezier(0.65, 0, 0.35, 1);
}

.feature-area .feature-pill:hover .icon {
  transform: rotate(0deg) scale(1.05);
}

.feature-area .feature-pill h3 {
  font-size: 18px;
  margin-bottom: 4px;
}

.feature-area .feature-pill p {
  font-size: 14px;
  margin-bottom: 0;
  color: var(--lc-color-body);
}

/* --- Story --- */
.story-area {
  background-color: var(--lc-color-green);
}

.story-area .story-statement {
  font-family: var(--lc-ff-display);
  font-size: clamp(34px, 3.6vw, 54px);
  line-height: 1.08;
  text-transform: uppercase;
  color: var(--lc-color-cream);
  letter-spacing: 0.012em;
  margin-bottom: 26px;
}

.story-area p {
  color: var(--lc-color-muted);
}

.story-area .story-founder {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 28px 0 34px 0;
}

.story-area .story-founder img {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--lc-color-dark-soft);
}

.story-area .story-founder .name {
  font-family: var(--lc-ff-heading);
  font-weight: 700;
  color: var(--lc-color-cream);
  display: block;
  font-size: 16px;
}

.story-area .story-founder .role {
  font-size: 13.5px;
  color: var(--lc-color-muted);
}

.story-area .story-img {
  position: relative;
  border-radius: var(--lc-radius);
  overflow: hidden;
  height: 600px;
}

.story-area .story-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.story-area .story-img .exp-card {
  position: absolute;
  bottom: 24px;
  left: 24px;
  background-color: var(--lc-color-primary);
  border-radius: 18px;
  padding: 20px 24px;
}

.story-area .story-img .exp-card .number {
  font-family: var(--lc-ff-display);
  font-size: 34px;
  color: var(--lc-color-ink);
  line-height: 1;
}

.story-area .story-img .exp-card .label {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

/* --- Taste tiles --- */
.taste-area .taste-tile {
  position: relative;
  display: block;
  border-radius: var(--lc-radius-sm);
  overflow: hidden;
  height: 350px;
}

.taste-area .taste-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}

.taste-area .taste-tile:hover img {
  transform: scale(1.07);
}

.taste-area .taste-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(var(--lc-color-green-rgb), 0) 40%, rgba(var(--lc-color-green-rgb), 0.85) 100%);
}

.taste-area .taste-tile .tile-content {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 20px;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

.taste-area .taste-tile .tile-content .name {
  font-family: var(--lc-ff-heading);
  font-size: 21px;
  font-weight: 700;
  color: var(--lc-color-cream);
  display: block;
  margin-bottom: 2px;
}

.taste-area .taste-tile .tile-content .count {
  font-size: 13px;
  color: rgba(var(--lc-color-cream-rgb), 0.75);
}

.taste-area .taste-tile .tile-arrow {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: rgba(var(--lc-color-cream-rgb), 0.16);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lc-color-cream);
  flex-shrink: 0;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.taste-area .taste-tile:hover .tile-arrow {
  background-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
  transform: rotate(45deg);
}

/* --- Product carousel section --- */
.carousel-area {
  background-color: var(--lc-color-green);
}

.carousel-area .section-title .subtitle {
  color: var(--lc-color-primary);
}

.carousel-area .section-title .title {
  color: var(--lc-color-cream);
}

.carousel-area .product-carousel {
  overflow: hidden;
  padding: 4px;
}

.carousel-area .pc-btn {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  padding: 0;
  line-height: 0;
  border-radius: 50%;
  border: 2px solid rgba(var(--lc-color-cream-rgb), 0.35);
  background-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--lc-color-cream);
  transition: background-color 0.2s ease;
}

.carousel-area .pc-btn:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-ink);
}

.carousel-area .carousel-controls {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-end;
}

/* --- Promo (orange) --- */
.promo-area {
  position: relative;
  background-color: var(--lc-color-primary);
  overflow: hidden;
}

.promo-area::before {
  content: "";
  position: absolute;
  top: -140px;
  right: -60px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--lc-color-cream-rgb), 0.4) 0%, rgba(var(--lc-color-cream-rgb), 0) 70%);
}

.promo-area .offer-badge {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-cream);
  color: var(--lc-color-cream);
}

.promo-area .promo-title {
  font-family: var(--lc-ff-display);
  text-transform: uppercase;
  font-size: clamp(38px, 4.4vw, 64px);
  line-height: 1.04;
  color: var(--lc-color-ink);
  margin-bottom: 16px;
}

.promo-area .promo-text {
  color: rgba(var(--lc-color-ink-rgb), 0.75);
  max-width: 480px;
  margin-bottom: 30px;
}

.promo-area .offer-countdown .count-box {
  background-color: var(--lc-color-cream);
  border: 2px solid var(--lc-color-ink);
  box-shadow: 4px 4px 0 rgba(var(--lc-color-ink-rgb), 0.22);
}

.promo-area .offer-countdown .count-box .num {
  color: var(--lc-color-ink);
}

.promo-area .offer-countdown .count-box .label {
  color: rgba(var(--lc-color-ink-rgb), 0.65);
}

.promo-area .promo-img {
  position: relative;
  text-align: center;
}

.promo-area .promo-img img {
  max-height: 430px;
  width: auto;
  border-radius: var(--lc-radius);
  box-shadow: 0 30px 60px rgba(var(--lc-color-ink-rgb), 0.25);
}

.promo-area .promo-img .title-sticker {
  top: 8px;
  right: 12%;
  transform: rotate(8deg);
}

.promo-area .promo-countdown {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 560px;
  margin-bottom: 34px;
}

.promo-area .promo-countdown .count-box {
  padding: 16px 8px;
}

.promo-area .promo-countdown .count-box .num {
  font-size: 32px;
}


.testimonial-area.style-2 .testimonial-slider {
  overflow: hidden;
}

/* --- Carousel view all --- */
.carousel-area .carousel-more {
  text-align: center;
  margin-top: 54px;
}

/* --- Video banner two --- */
.video-two .video-banner {
  border-radius: 0;
  height: 540px;
}

/* --- Testimonial style 2 --- */
.testimonial-area.style-2 .testimonial-item {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
}

.testimonial-area.style-2 .testimonial-item .quote-text {
  color: var(--lc-color-cream);
  font-size: clamp(19px, 1.6vw, 24px);
  line-height: 1.5;
}

.testimonial-area.style-2 .testimonial-item .q-mark {
  color: var(--lc-color-primary);
}

.testimonial-area.style-2 .testimonial-item .author .name {
  color: var(--lc-color-cream);
}

.testimonial-area.style-2 .testimonial-item .author .role {
  color: var(--lc-color-muted);
}

.testimonial-area.style-2 .testimonial-item .author .avatar {
  border-color: var(--lc-color-dark-soft);
}

.testimonial-area.style-2 .testimonial-item .quote-watermark {
  opacity: 0.25;
}

/* --- Gallery bento --- */
.gallery-area .gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 200px;
  gap: 16px;
}

.gallery-area .g-item {
  position: relative;
  display: block;
  border-radius: var(--lc-radius-sm);
  overflow: hidden;
}

.gallery-area .g-item.big {
  grid-column: span 2;
  grid-row: span 2;
}

.gallery-area .g-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.65, 0, 0.35, 1);
}

.gallery-area .g-item:hover img {
  transform: scale(1.07);
}

.gallery-area .g-item .g-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(var(--lc-color-green-rgb), 0.55);
  opacity: 0;
  transition: opacity 0.4s ease;
}

.gallery-area .g-item:hover .g-overlay {
  opacity: 1;
}

/* --- Blog two (featured + list) --- */
.blog-two .post-row {
  display: flex;
  gap: 20px;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
}

.blog-two .post-row:first-child {
  padding-top: 0;
}

.blog-two .post-row .thumb {
  position: relative;
  display: block;
  width: 170px;
  height: 140px;
  border-radius: 14px;
  overflow: hidden;
  flex-shrink: 0;
}

.blog-two .post-row .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.blog-two .post-row:hover .thumb img {
  transform: scale(1.07);
}

.blog-two .post-row .row-tag {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
}

.blog-two .post-row h3 {
  font-size: 20px;
  line-height: 1.35;
  margin: 6px 0 8px 0;
}

.blog-two .post-row h3 a:hover {
  color: var(--lc-color-primary-deep);
}

.blog-two .post-row .row-date {
  font-size: 13.5px;
}

/*======================
20. Back To Top
========================*/
.lc-backtop {
  position: fixed;
  right: 28px;
  bottom: 28px;
  width: 54px;
  height: 54px;
  z-index: 998;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease;
}

.lc-backtop.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.lc-backtop svg.progress-ring {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.lc-backtop svg.progress-ring circle {
  fill: rgba(var(--lc-color-cream-rgb), 0.9);
  stroke: var(--lc-color-green);
  stroke-width: 2;
  stroke-dasharray: 151;
  stroke-dashoffset: 151;
}

.lc-backtop .arrow {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* === Reveal helpers (GSAP-driven) === */
.fade-top,
.fade-in {
  opacity: 0;
}

.reveal-img {
  overflow: hidden;
}

html.no-js .fade-top,
html.no-js .fade-in {
  opacity: 1;
}


/*======================
21. Inner Pages
========================*/
/* --- Breadcrumb --- */
/* About page hero */
.about-page-hero {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  padding: clamp(72px, 10vw, 120px) 0 clamp(64px, 9vw, 104px);
  min-height: clamp(280px, 36vw, 400px);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.about-page-hero-intro {
  position: relative;
  max-width: 640px;
}

.about-page-hero-crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 600;
  color: rgba(31, 26, 20, 0.45);
}

.about-page-hero-crumb a {
  color: rgba(31, 26, 20, 0.55);
  text-decoration: none;
  transition: color 0.2s ease;
}

.about-page-hero-crumb a:hover {
  color: var(--lc-color-primary);
}

.about-page-hero-crumb .is-current {
  color: rgba(31, 26, 20, 0.78);
}

.about-page-hero-title {
  margin: 0 0 16px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 6.2vw, 72px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.02em;
  color: #1a1a1a;
  text-transform: uppercase;
}

.about-page-hero-lead {
  margin: 0;
  max-width: 34em;
  color: #4a4a4a;
  font-size: clamp(16px, 1.35vw, 18px);
  line-height: 1.7;
}

@media (max-width: 575.98px) {
  .about-page-hero {
    padding: 48px 0 40px;
    min-height: 0;
  }

  .about-page-hero-title {
    font-size: clamp(34px, 10vw, 44px);
  }
}

.breadcrumb-area {
  position: relative;
  background-color: var(--lc-color-green);
  /* background-image: linear-gradient(rgba(var(--lc-color-green-rgb), 0.92), rgba(var(--lc-color-green-rgb), 0.86)), url(../img/banner/slider-lassi-splash.jpg); */
  background-size: cover;
  background-position: center;
  padding: 100px 0 90px 0;
  overflow: hidden;
}

.breadcrumb-area .container {
  position: relative;
}

.breadcrumb-area .breadcrumb-inner {
  position: relative;
  z-index: 2;
}

.breadcrumb-area .subtitle {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--lc-color-primary);
  padding-bottom: 12px;
  margin-bottom: 10px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 Q 20 2 40 7 T 78 7 T 118 6' fill='none' stroke='%23FF8A3C' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 74px 8px;
}

.breadcrumb-area .page-title {
  /* font-family: var(--lc-ff-display); */
  font-family: 'Bricolage Grotesque', serif;
  font-size: clamp(44px, 6vw, 78px);
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--lc-color-cream);
  margin-bottom: 18px;
}

.breadcrumb-area .breadcrumb-nav {
  display: flex;
  align-items: center;
  gap: 14px;
  font-weight: 600;
  color: rgba(var(--lc-color-cream-rgb), 0.75);
}

.breadcrumb-area .breadcrumb-nav li+li::before {
  content: "/";
  margin-right: 14px;
  color: rgba(var(--lc-color-cream-rgb), 0.4);
}

.breadcrumb-area .breadcrumb-nav a:hover {
  color: var(--lc-color-primary);
}

.breadcrumb-area .breadcrumb-nav .active {
  color: var(--lc-color-primary);
}

.breadcrumb-area .breadcrumb-watermark {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--lc-ff-display);
  font-size: clamp(110px, 15vw, 210px);
  line-height: 1;
  letter-spacing: 0.02em;
  color: transparent;
  -webkit-text-stroke: 1.5px rgba(var(--lc-color-cream-rgb), 0.12);
  pointer-events: none;
  user-select: none;
}

/* --- Forms --- */
.lc-label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--lc-color-ink);
  margin-bottom: 8px;
}

.lc-input {
  width: 100%;
  background-color: #ffffff;
  border: 2px solid #dddddd;
  border-radius: 14px;
  padding: 13px 18px;
  font-family: var(--lc-ff-body);
  font-size: 15px;
  color: var(--lc-color-ink);
  transition: border-color 0.25s ease;
}

.lc-input:focus {
  outline: none;
  border-color: var(--lc-color-green);
}

.lc-input::placeholder {
  color: #A99F8F;
}

textarea.lc-input {
  resize: vertical;
}

select.lc-input {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--lc-color-ink) 50%), linear-gradient(135deg, var(--lc-color-ink) 50%, transparent 50%);
  background-position: calc(100% - 20px) calc(50% - 3px), calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 40px;
}

.contact-form .form-status {
  margin-top: 16px;
  font-weight: 600;
}

.contact-form .form-status a {
  color: var(--lc-color-green);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contact-form .field-hint {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--lc-color-muted);
}

.lc-phone-field {
  display: grid;
  grid-template-columns: minmax(118px, 132px) 1fr;
  gap: 0;
  align-items: stretch;
  border: 2px solid #dddddd;
  border-radius: 14px;
  background: #ffffff;
  overflow: visible;
  transition: border-color 0.25s ease;
}

.lc-phone-field:focus-within {
  border-color: var(--lc-color-green);
}

.lc-dial-select {
  position: relative;
  z-index: 8;
  min-width: 0;
}

.lc-dial-select.is-open {
  z-index: 55;
}

.contact-form .col-md-6:has(.lc-phone-field) {
  overflow: visible;
  position: relative;
  z-index: 7;
}

.lc-dial-trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 100%;
  min-height: 52px;
  padding: 10px 12px;
  border: 0;
  border-right: 1px solid #dddddd;
  border-radius: 12px 0 0 12px;
  background: #ffffff;
  cursor: pointer;
  text-align: left;
  font-family: var(--lc-ff-body);
  transition: background-color 0.2s ease;
}

.lc-dial-trigger:hover,
.lc-dial-select.is-open .lc-dial-trigger {
  background: var(--lc-color-cream);
}

.lc-dial-flag {
  width: 28px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lc-dial-flag img,
.lc-dial-flag-img {
  display: block;
  width: 24px;
  height: 18px;
  object-fit: cover;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
}

.lc-dial-label {
  font-size: 15px;
  font-weight: 700;
  color: var(--lc-color-ink);
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.lc-dial-caret {
  margin-left: auto;
  font-size: 11px;
  color: var(--lc-color-muted);
  transition: transform 0.2s ease;
}

.lc-dial-select.is-open .lc-dial-caret {
  transform: rotate(180deg);
}

.lc-dial-dropdown {
  display: none !important;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: min(320px, calc(100vw - 48px));
  z-index: 70;
  background: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

.lc-dial-select.is-open .lc-dial-dropdown {
  display: block !important;
}

.lc-dial-search-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--lc-color-border-2);
  color: var(--lc-color-muted);
}

.lc-dial-search {
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  font-family: var(--lc-ff-body);
  font-size: 14px;
  color: var(--lc-color-ink);
}

.lc-dial-list {
  max-height: 260px;
  overflow-y: auto;
  padding: 6px;
}

.lc-dial-option {
  display: grid;
  grid-template-columns: 28px 52px 1fr;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.lc-dial-option:hover,
.lc-dial-option.is-selected {
  background: var(--lc-color-cream);
}

.lc-dial-option.is-hidden {
  display: none !important;
}

.lc-dial-code-text {
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.lc-dial-country {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--lc-color-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lc-dial-empty {
  padding: 14px 16px;
  font-size: 14px;
  color: var(--lc-color-muted);
}

.lc-phone-number-wrap {
  position: relative;
  min-width: 0;
  display: flex;
  align-items: center;
}

.lc-phone-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--lc-color-green);
  font-size: 13px;
  pointer-events: none;
  z-index: 1;
}

.lc-phone-field .lc-phone-number {
  border: 0;
  border-radius: 0 12px 12px 0;
  padding-left: 40px;
  background: transparent;
  box-shadow: none;
}

.lc-phone-field .lc-phone-number:focus {
  border-color: transparent;
}

@media (max-width: 575px) {
  .lc-phone-field {
    grid-template-columns: 1fr;
  }

  .lc-dial-trigger {
    border-right: 0;
    border-bottom: 1px solid var(--lc-color-border-2);
    border-radius: 12px 12px 0 0;
    min-height: 48px;
  }

  .lc-phone-field .lc-phone-number {
    border-radius: 0 0 12px 12px;
  }

  .lc-dial-dropdown {
    width: 100%;
  }
}

.lc-country-select {
  position: relative;
  z-index: 5;
}

.lc-country-select.is-open {
  z-index: 50;
}

.contact-form .col-md-6:has(.lc-country-select) {
  overflow: visible;
  position: relative;
  z-index: 6;
}

.lc-country-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  text-align: left;
  cursor: pointer;
  background-color: var(--lc-color-white);
}

.lc-country-trigger:focus-visible {
  outline: none;
  border-color: var(--lc-color-green);
}

.lc-country-trigger-inner {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.lc-country-flag {
  width: 28px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--lc-color-green);
}

.lc-country-flag.is-placeholder {
  font-size: 15px;
}

.lc-country-flag img,
.lc-country-flag-img {
  display: block;
  width: 24px;
  height: 18px;
  object-fit: cover;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
}

.lc-country-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--lc-color-ink);
}

.lc-country-caret {
  font-size: 12px;
  color: var(--lc-color-muted);
  transition: transform 0.2s ease;
}

.lc-country-select.is-open .lc-country-caret {
  transform: rotate(180deg);
}

.lc-country-dropdown {
  display: none !important;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 60;
  background: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

.lc-country-select.is-open .lc-country-dropdown {
  display: block !important;
}

.lc-country-option.is-hidden {
  display: none !important;
}

.lc-country-search-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--lc-color-border-2);
  color: var(--lc-color-muted);
}

.lc-country-search {
  width: 100%;
  border: 0;
  outline: none;
  background: transparent;
  font-family: var(--lc-ff-body);
  font-size: 14px;
  color: var(--lc-color-ink);
}

.lc-country-list {
  max-height: 240px;
  overflow-y: auto;
  padding: 6px;
}

.lc-country-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.lc-country-option:hover,
.lc-country-option.is-selected {
  background: var(--lc-color-cream);
}

.lc-country-name {
  font-size: 14.5px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

.lc-country-empty {
  padding: 14px 16px;
  font-size: 14px;
  color: var(--lc-color-muted);
}

.contact-form .form-status:empty {
  display: none;
}

.contact-form .form-status.is-success {
  color: var(--lc-color-green);
}

.contact-form .form-status.is-error {
  color: #C0392B;
}

.contact-form .captcha-row {
  display: grid;
  grid-template-columns: minmax(160px, 220px) 1fr;
  gap: 12px;
  align-items: stretch;
}

.contact-form .captcha-box {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding: 10px 14px;
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  background: var(--lc-color-cream);
}

.contact-form .captcha-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
}

.contact-form .captcha-question {
  font-size: 15px;
  color: var(--lc-color-ink);
  letter-spacing: 0.04em;
}

.contact-form .captcha-refresh {
  margin-left: auto;
  width: 36px;
  height: 36px;
  border: 2px solid var(--lc-color-border);
  border-radius: 50%;
  background: var(--lc-color-white);
  color: var(--lc-color-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.contact-form .captcha-refresh:hover {
  background: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

@media (max-width: 575px) {
  .contact-form .captcha-row {
    grid-template-columns: 1fr;
  }
}

.lc-btn.w-100 {
  width: 100%;
}

/*======================
Cookie Consent
========================*/
.exiito-cookie-root {
  position: relative;
  z-index: 12000;
}

.exiito-cookie-overlay {
  position: fixed;
  inset: 0;
  background: rgba(20, 24, 22, 0.45);
  z-index: 12001;
}

.exiito-cookie-banner {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 12002;
  max-width: 1100px;
  margin: 0 auto;
  background: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  box-shadow: 0 18px 40px rgba(var(--lc-color-ink-rgb), 0.14);
}

.exiito-cookie-banner-inner {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 18px 20px;
}

.exiito-cookie-copy {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  flex: 1;
  min-width: 0;
}

.exiito-cookie-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--lc-color-cream-2);
  color: var(--lc-color-green);
  font-size: 18px;
}

.exiito-cookie-title {
  font-size: 18px;
  line-height: 1.3;
  margin: 0 0 6px;
  color: var(--lc-color-ink);
}

.exiito-cookie-text {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  color: var(--lc-color-body);
}

.exiito-cookie-text a {
  color: var(--lc-color-green);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.exiito-cookie-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  flex-shrink: 0;
  justify-content: flex-end;
}

/* Compact pills — site .lc-btn reserves space for arrow icon/::after */
.exiito-cookie-actions .cookie-btn,
.exiito-cookie-panel-btns .cookie-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  min-height: 44px;
  padding: 11px 20px !important;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: none !important;
  transform: none !important;
  z-index: 1;
}

.exiito-cookie-actions .cookie-btn::after,
.exiito-cookie-panel-btns .cookie-btn::after {
  display: none !important;
  content: none !important;
}

.exiito-cookie-actions .cookie-btn:hover,
.exiito-cookie-panel-btns .cookie-btn:hover {
  transform: none !important;
  box-shadow: none !important;
}

.exiito-cookie-actions .cookie-btn .lc-btn-text,
.exiito-cookie-panel-btns .cookie-btn .lc-btn-text {
  position: static;
  font-size: 13px;
  letter-spacing: 0.01em;
}

.exiito-cookie-actions .cookie-btn.lc-btn-dark,
.exiito-cookie-panel-btns .cookie-btn.lc-btn-dark {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  border: 2px solid var(--lc-color-green);
}

.exiito-cookie-actions .cookie-btn.lc-btn-dark:hover,
.exiito-cookie-panel-btns .cookie-btn.lc-btn-dark:hover {
  background-color: #0f2f22;
  border-color: #0f2f22;
  color: var(--lc-color-cream);
}

.exiito-cookie-actions .cookie-btn.lc-btn-outline,
.exiito-cookie-panel-btns .cookie-btn.lc-btn-outline {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-green);
  color: var(--lc-color-green);
}

.exiito-cookie-actions .cookie-btn.lc-btn-outline:hover,
.exiito-cookie-panel-btns .cookie-btn.lc-btn-outline:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.exiito-cookie-panel {
  position: fixed;
  inset: 0;
  z-index: 12003;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.exiito-cookie-panel[hidden],
.exiito-cookie-banner[hidden],
.exiito-cookie-overlay[hidden],
.exiito-cookie-root[hidden] {
  display: none !important;
}

.exiito-cookie-panel-card {
  width: min(720px, 100%);
  max-height: min(86vh, 780px);
  overflow: auto;
  background: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  box-shadow: 0 22px 48px rgba(var(--lc-color-ink-rgb), 0.18);
  padding: 22px 22px 18px;
}

.exiito-cookie-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.exiito-cookie-close {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--lc-color-border);
  background: var(--lc-color-cream);
  color: var(--lc-color-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.exiito-cookie-close:hover,
.exiito-cookie-close:focus-visible {
  background: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  outline: none;
}

.exiito-cookie-categories {
  display: grid;
  gap: 12px;
}

.exiito-cookie-category {
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  background: var(--lc-color-cream);
  padding: 14px 16px;
}

.exiito-cookie-category-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.exiito-cookie-category h3 {
  font-size: 16px;
  margin: 0 0 6px;
}

.exiito-cookie-category p {
  margin: 0;
  font-size: 13.5px;
  color: var(--lc-color-body);
}

.exiito-cookie-badge {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--lc-color-cream-2);
  border: 2px solid var(--lc-color-border);
  font-size: 12px;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.exiito-cookie-switch {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 30px;
  flex-shrink: 0;
}

.exiito-cookie-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.exiito-cookie-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background: #c9c4ba;
  border-radius: 999px;
  transition: background-color 0.2s ease;
}

.exiito-cookie-slider::before {
  content: '';
  position: absolute;
  height: 22px;
  width: 22px;
  left: 4px;
  top: 4px;
  background: #fff;
  border-radius: 50%;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.exiito-cookie-switch input:checked+.exiito-cookie-slider {
  background: var(--lc-color-green);
}

.exiito-cookie-switch input:checked+.exiito-cookie-slider::before {
  transform: translateX(22px);
}

.exiito-cookie-switch input:focus-visible+.exiito-cookie-slider {
  outline: 2px solid var(--lc-color-green);
  outline-offset: 2px;
}

.exiito-cookie-panel-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--lc-color-border-2);
  flex-wrap: wrap;
}

.exiito-cookie-policy-link {
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-green);
  text-decoration: underline;
  text-underline-offset: 2px;
  flex: 0 0 auto;
}

.exiito-cookie-panel-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  margin-left: auto;
}

body.cookie-panel-open {
  overflow: hidden;
}

.footer-bottom-links a:focus-visible,
.exiito-cookie-actions .cookie-btn:focus-visible,
.exiito-cookie-panel-btns .cookie-btn:focus-visible {
  outline: 2px solid var(--lc-color-green);
  outline-offset: 2px;
}

@media (max-width: 991px) {
  .exiito-cookie-banner-inner {
    flex-direction: column;
    align-items: stretch;
  }

  .exiito-cookie-actions {
    width: 100%;
  }

  .exiito-cookie-actions .cookie-btn {
    flex: 1 1 calc(50% - 10px);
  }

  .exiito-cookie-panel-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .exiito-cookie-panel-btns {
    width: 100%;
    margin-left: 0;
  }

  .exiito-cookie-panel-btns .cookie-btn {
    flex: 1 1 calc(50% - 10px);
  }
}

@media (max-width: 575px) {
  .exiito-cookie-banner {
    left: 10px;
    right: 10px;
    bottom: 10px;
  }

  .exiito-cookie-banner-inner {
    padding: 14px;
  }

  .exiito-cookie-actions .cookie-btn,
  .exiito-cookie-panel-btns .cookie-btn {
    flex: 1 1 100%;
  }

  .exiito-cookie-category-top {
    flex-direction: column;
  }

  .exiito-cookie-panel {
    padding: 12px;
    align-items: flex-end;
  }

  .exiito-cookie-panel-card {
    max-height: min(92vh, 780px);
    padding: 16px 14px 14px;
  }
}

/* --- Quantity stepper --- */
.qty-stepper {
  display: inline-flex;
  align-items: center;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-green);
  border-radius: 999px;
  overflow: hidden;
}

.qty-stepper .qty-btn {
  width: 44px;
  height: 44px;
  border: none;
  background-color: transparent;
  color: var(--lc-color-green);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}

.qty-stepper .qty-btn i {
  font-size: 11px;
}

.qty-stepper .qty-btn:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.qty-stepper .qty-input {
  width: 44px;
  border: none;
  background: transparent;
  text-align: center;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.qty-stepper .qty-input:focus {
  outline: none;
}

/* --- Shop listing --- */
.shop-area .shop-count {
  text-align: right;
  margin-bottom: 0;
}

ul.lc-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 60px;
}

.lc-pagination a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  height: 48px;
  padding: 0 10px;
  border-radius: 50%;
  border: 2px solid var(--lc-color-green);
  font-weight: 700;
  color: var(--lc-color-green);
  transition: background-color 0.2s ease;
}

.lc-pagination a i {
  font-size: 13px;
}

.lc-pagination .active a,
.lc-pagination a:hover {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.lc-pagination .is-ellipsis span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 48px;
  font-size: 18px;
  font-weight: 700;
  color: var(--lc-color-muted);
  letter-spacing: 0.08em;
  user-select: none;
}

@media (max-width: 575px) {
  .lc-pagination a {
    min-width: 40px;
    height: 40px;
    font-size: 14px;
  }

  .lc-pagination .is-ellipsis span {
    height: 40px;
    min-width: 24px;
  }
}

/* --- Shop details --- */
.shop-details-area .details-thumbs {
  display: flex;
  gap: 14px;
  margin-top: 16px;
}

.shop-details-area .details-thumbs button {
  width: 86px;
  height: 86px;
  padding: 6px;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: 14px;
  overflow: hidden;
  transition: border-color 0.25s ease;
}

.shop-details-area .details-thumbs button img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 9px;
}

.shop-details-area .details-thumbs li.active button,
.shop-details-area .details-thumbs button:hover {
  border-color: var(--lc-color-green);
}

.t-stars i {
  font-size: 13px;
  color: var(--lc-color-primary);
  margin-right: 2px;
}

/* --- Shop page: sidebar, toolbar, cards, pagination --- */
.shop-area .shop-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.shop-area .shop-toolbar .shop-count {
  margin-bottom: 0;
}

.shop-area .shop-sorting {
  position: relative;
}

.shop-area .shop-sorting select {
  appearance: none;
  -webkit-appearance: none;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: 999px;
  padding: 12px 48px 12px 22px;
  font-weight: 600;
  color: var(--lc-color-ink);
  cursor: pointer;
}

.shop-area .shop-sorting select:focus {
  outline: none;
  border-color: var(--lc-color-green);
}

.shop-area .shop-sorting i {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 14px;
  color: var(--lc-color-primary-deep);
}

.shop-sidebar .widget-post .price {
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-primary-deep);
}

.shop-sidebar .widget.widget-promo {
  position: relative;
  padding: 0;
  overflow: hidden;
  border-color: var(--lc-color-green);
}

.shop-sidebar .widget-promo img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  display: block;
}

.shop-sidebar .widget-promo .promo-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 26px;
  background: linear-gradient(180deg, rgba(var(--lc-color-ink-rgb), 0) 20%, rgba(var(--lc-color-ink-rgb), 0.86) 82%);
}

.shop-sidebar .widget-promo .promo-title {
  font-family: var(--lc-ff-display);
  font-size: 28px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--lc-color-cream);
  margin-bottom: 8px;
}

.shop-sidebar .widget-promo .promo-text {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(var(--lc-color-cream-rgb), 0.9);
  margin-bottom: 20px;
}

.shop-sidebar .widget-promo .lc-btn {
  font-size: 15px;
}

.shop-details-area .details-gallery {
  position: relative;
  background-color: var(--lc-color-cream);
  /* background-image: url(../img/bg/pattern-01.png); */
  background-size: 420px 420px;
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 30px;
  text-align: center;
}

.shop-details-area .details-gallery img {
  max-height: 520px;
  border-radius: var(--lc-radius-sm);
}

.shop-details-area .details-gallery .badge-tag {
  position: absolute;
  top: 24px;
  left: 24px;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 8px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-4deg);
  box-shadow: 3px 3px 0 var(--lc-color-green);
  z-index: 2;
}

.shop-details-area .details-content .cat {
  display: block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
  margin-bottom: 10px;
}

.shop-details-area .details-content .title {
  font-size: 40px;
  letter-spacing: 0;
  margin-bottom: 12px;
}

.shop-details-area .details-content .rating {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}

.shop-details-area .details-content .rating .count {
  font-size: 14px;
}

.shop-details-area .details-content .price {
  font-family: var(--lc-ff-display);
  font-size: 34px;
  color: var(--lc-color-green);
  margin-bottom: 16px;
}

.shop-details-area .details-content .desc {
  margin-bottom: 22px;
}

.details-points li,
.post-list li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
  color: var(--lc-color-ink);
  margin-bottom: 10px;
}

.details-points li i,
.post-list li i {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  border-radius: 50%;
  background-color: #E7EFDF;
  color: var(--lc-color-green);
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.shop-details-area .details-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 26px 0;
  flex-wrap: wrap;
}

.shop-details-area .details-meta {
  border-top: 1px dashed var(--lc-color-border-2);
  padding-top: 18px;
}

.shop-details-area .details-meta li {
  font-size: 14px;
  margin-bottom: 6px;
}

.shop-details-area .details-meta li span {
  font-weight: 700;
  color: var(--lc-color-ink);
}

.shop-details-area .details-meta a:hover {
  color: var(--lc-color-primary);
}

.shop-details-area .details-tabs {
  margin-top: 70px;
}

.details-tabs .nav-tabs {
  border-bottom: 2px solid var(--lc-color-border-2);
  gap: 6px;
}

.details-tabs .nav-tabs .nav-link {
  border: none;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 700;
  color: var(--lc-color-body);
  padding: 12px 22px;
  margin-bottom: -2px;
}

.details-tabs .nav-tabs .nav-link.active {
  color: var(--lc-color-ink);
  border-bottom-color: var(--lc-color-primary);
}

.details-tabs .tab-content {
  padding-top: 28px;
}

.details-tabs .tab-content p {
  max-width: 860px;
}

.details-tabs .review-row {
  display: flex;
  gap: 18px;
  padding: 22px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
}

.details-tabs .review-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.details-tabs .review-row img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.details-tabs .review-row .name {
  font-size: 17px;
  margin: 6px 0;
}

.details-tabs .review-row p {
  margin-bottom: 0;
}

/* --- Cart --- */
.cart-area .table-responsive {
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius-sm);
  background-color: var(--lc-color-white);
}

.cart-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
}

.cart-table thead th {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: left;
  padding: 16px 22px;
}

.cart-table td {
  padding: 18px 22px;
  border-bottom: 1px dashed var(--lc-color-border-2);
  vertical-align: middle;
}

.cart-table tbody tr:last-child td {
  border-bottom: none;
}

.cart-table .cart-thumb img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 12px;
  background-color: var(--lc-color-cream);
}

.cart-table .cart-name a {
  font-weight: 700;
  color: var(--lc-color-ink);
}

.cart-table .cart-name a:hover {
  color: var(--lc-color-primary);
}

.cart-table .cart-price,
.cart-table .cart-subtotal {
  font-weight: 700;
  color: var(--lc-color-green);
}

.cart-table .cart-remove a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid var(--lc-color-border);
  color: var(--lc-color-body);
  transition: background-color 0.2s ease;
}

.cart-table .cart-remove a i {
  font-size: 12px;
}

.cart-table .cart-remove a:hover {
  background-color: var(--lc-color-primary);
  border-color: var(--lc-color-primary);
  color: var(--lc-color-white);
}

.cart-area .coupon-form {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.cart-area .coupon-form .lc-input {
  flex: 1;
  min-width: 220px;
}

.cart-area .cart-totals {
  background-color: var(--lc-color-green);
  border-radius: var(--lc-radius);
  padding: 36px;
}

.cart-area .cart-totals .totals-title {
  font-family: var(--lc-ff-display);
  text-transform: uppercase;
  font-size: 24px;
  color: var(--lc-color-cream);
  margin-bottom: 18px;
}

.cart-area .cart-totals ul li {
  display: flex;
  justify-content: space-between;
  padding: 12px 0;
  border-bottom: 1px dashed rgba(var(--lc-color-cream-rgb), 0.18);
  color: rgba(var(--lc-color-cream-rgb), 0.85);
}

.cart-area .cart-totals ul li.grand {
  border-bottom: none;
  font-size: 18px;
  font-weight: 800;
  color: var(--lc-color-cream);
}

.cart-area .cart-totals ul li.grand span:last-child {
  color: var(--lc-color-primary);
}

.cart-area .cart-totals .lc-btn {
  margin-top: 20px;
}

/* --- Checkout --- */
.checkout-area .billing-box {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 40px;
}

.box-title {
  font-family: var(--lc-ff-display);
  text-transform: uppercase;
  font-size: 24px;
  margin-bottom: 26px;
}

.checkout-area .order-summary {
  background-color: var(--lc-color-cream);
  /* background-image: url(../img/bg/pattern-01.png); */
  background-size: 420px 420px;
  border: 2px solid var(--lc-color-green);
  border-radius: var(--lc-radius);
  padding: 40px;
}

.checkout-area .summary-list li {
  display: flex;
  justify-content: space-between;
  padding: 11px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
  color: var(--lc-color-body);
}

.checkout-area .summary-list li.sub {
  font-weight: 600;
  color: var(--lc-color-ink);
}

.checkout-area .summary-list li.grand {
  border-bottom: none;
  font-size: 18px;
  font-weight: 800;
  color: var(--lc-color-ink);
}

.checkout-area .summary-list li.grand span:last-child {
  color: var(--lc-color-primary-deep);
}

.checkout-area .payment-options {
  margin: 22px 0 26px 0;
}

.checkout-area .pay-option {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: var(--lc-color-ink);
  margin-bottom: 10px;
  cursor: pointer;
}

.checkout-area .pay-option input {
  accent-color: var(--lc-color-primary);
  width: 17px;
  height: 17px;
}

/* --- Blog details --- */
.blog-details .post-thumb {
  position: relative;
  border-radius: var(--lc-radius);
  overflow: hidden;
  margin-bottom: 26px;
}

.blog-details .post-thumb img {
  width: 100%;
  height: 480px;
  object-fit: cover;
}

.blog-details .post-thumb .tag-chip,
.blog-details-area .post-thumb .tag-chip {
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 8px;
  padding: 5px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-3deg);
  box-shadow: 3px 3px 0 var(--lc-color-green);
}

.blog-details .post-meta {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  font-size: 14px;
  margin-bottom: 16px;
}

.blog-details .post-meta .author {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

.blog-details .post-meta .author img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
}

.blog-details .post-meta i {
  color: var(--lc-color-primary);
  margin-right: 6px;
}

.blog-details .post-title {
  font-size: 34px;
  margin-bottom: 18px;
}

.blog-details .post-lead {
  font-size: 17px;
  font-weight: 600;
  color: var(--lc-color-ink);
  margin-bottom: 22px;
}

.blog-details-area .col-lg-8,
.blog-details-area .col-lg-4 {
  min-width: 0;
}

.blog-details {
  max-width: 100%;
  overflow: hidden;
}

.blog-details .post-content {
  max-width: 100%;
  overflow-x: auto;
  overflow-wrap: anywhere;
  word-break: break-word;
  color: var(--lc-color-body);
  line-height: 1.75;
}

.blog-details .post-content>* {
  max-width: 100%;
}

.blog-details .post-content p {
  margin-bottom: 1.1em;
}

.blog-details .post-content img,
.blog-details .post-content video,
.blog-details .post-content iframe,
.blog-details .post-content embed,
.blog-details .post-content object {
  display: block;
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  border-radius: 14px;
  margin: 1em 0;
}

.blog-details .post-content iframe {
  aspect-ratio: 16 / 9;
  width: 100% !important;
  min-height: 220px;
}

.blog-details .post-content table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
}

.blog-details .post-content pre,
.blog-details .post-content code {
  white-space: pre-wrap;
  word-break: break-word;
  max-width: 100%;
}

.blog-details .post-content ul,
.blog-details .post-content ol {
  padding-left: 1.25em;
  margin-bottom: 1.1em;
}

.blog-details .post-content blockquote {
  max-width: 100%;
  margin: 1.2em 0;
  padding: 14px 18px;
  border-left: 4px solid var(--lc-color-primary);
  background: rgba(var(--lc-color-cream-rgb), 0.55);
}

.blog-details .post-content h1,
.blog-details .post-content h2,
.blog-details .post-content h3,
.blog-details .post-content h4 {
  color: var(--lc-color-ink);
  margin: 1.4em 0 0.6em;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.blog-details .post-content h1 {
  font-size: clamp(24px, 3vw, 32px);
}

.blog-details .post-content h2 {
  font-size: clamp(22px, 2.6vw, 28px);
}

.blog-details .post-meta a {
  color: inherit;
  text-decoration: none;
}

.blog-details .post-meta a:hover {
  color: var(--lc-color-green);
}

.blog-details .post-quote {
  position: relative;
  background-color: var(--lc-color-green);
  border-radius: var(--lc-radius-sm);
  padding: 30px 36px;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--lc-color-cream);
  margin: 28px 0;
}

.blog-details .post-quote .q-mark {
  color: var(--lc-color-primary);
}

.blog-details .post-quote cite {
  display: block;
  margin-top: 12px;
  font-size: 14px;
  font-style: normal;
  color: var(--lc-color-muted);
}

.blog-details .post-sub {
  margin: 26px 0 14px 0;
}

.blog-details .post-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  border-top: 1px dashed var(--lc-color-border-2);
  margin-top: 30px;
  padding-top: 24px;
}

.post-tags a {
  display: inline-block;
  padding: 7px 15px;
  border: 2px solid var(--lc-color-border);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  color: var(--lc-color-body);
  margin: 0 6px 6px 0;
  transition: background-color 0.2s ease;
}

.post-tags a:hover {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.blog-details .author-box {
  display: flex;
  gap: 20px;
  background-color: var(--lc-color-cream);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius-sm);
  padding: 26px;
  margin-top: 34px;
}

.blog-details .author-box img {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.blog-details .author-box .role {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
}

.blog-details .author-box .name {
  margin: 4px 0 8px 0;
}

.blog-details .author-box p {
  margin-bottom: 0;
}

.blog-details .comment-form {
  margin-top: 44px;
}

.blog-sidebar .widget {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius-sm);
  padding: 26px;
  margin-bottom: 26px;
}

.blog-sidebar .widget-title {
  font-size: 18px;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--lc-color-border-2);
  margin-bottom: 20px;
}

.blog-sidebar .widget-search {
  position: relative;
}

.blog-sidebar .widget-search .lc-input {
  padding-right: 58px;
}

.blog-sidebar .widget-search button {
  position: absolute;
  top: 6px;
  right: 6px;
  bottom: 6px;
  width: 44px;
  border: none;
  border-radius: 10px;
  background-color: var(--lc-color-primary);
  color: var(--lc-color-white);
  transition: background-color 0.2s ease;
}

.blog-sidebar .widget-search button:hover {
  background-color: var(--lc-color-green);
}

.blog-sidebar .widget-post {
  display: flex;
  gap: 14px;
  margin-bottom: 18px;
}

.blog-sidebar .widget-post:last-child {
  margin-bottom: 0;
}

.blog-sidebar .widget-post .thumb img {
  width: 70px;
  height: 70px;
  object-fit: cover;
  border-radius: 12px;
}

.blog-sidebar .widget-post h4 {
  font-size: 15px;
  line-height: 1.4;
  margin-bottom: 4px;
}

.blog-sidebar .widget-post h4 a:hover {
  color: var(--lc-color-primary);
}

.blog-sidebar .widget-post .date {
  font-size: 13px;
}

.blog-sidebar .widget-cats li a {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px dashed var(--lc-color-border-2);
  font-weight: 600;
  color: var(--lc-color-body);
}

.blog-sidebar .widget-cats li:last-child a {
  border-bottom: none;
  padding-bottom: 0;
}

.blog-sidebar .widget-cats li a:hover {
  color: var(--lc-color-primary);
}

.blog-sidebar .widget-cats li a span {
  color: var(--lc-color-primary-deep);
}

.privacy-page .privacy-body {
  background: #ffffff;
  color: #1a1a1a;
}

.privacy-meta {
  margin: 0 0 28px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.6;
}

.privacy-page .legal-heading,
.privacy-page .legal-subheading {
  font-family: var(--lc-ff-heading);
  font-weight: 800;
  color: #111111;
  line-height: 1.25;
}

.privacy-page .legal-heading {
  margin: 32px 0 12px;
  font-size: clamp(22px, 2.4vw, 28px);
}

.privacy-page .legal-subheading {
  margin: 22px 0 10px;
  font-size: clamp(18px, 2vw, 22px);
}

.privacy-page p,
.privacy-page .legal-list li {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.75;
}

.privacy-page a {
  color: #FC6D0F;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.privacy-page a:hover {
  color: #D4550A;
}

.privacy-page .legal-quote {
  border-left: 3px solid #FC6D0F;
  background: #F6E8DA;
  border-radius: 0 18px 18px 0;
  color: #1a1a1a;
}

.privacy-page .legal-contact-box {
  margin-top: 16px;
  padding: 24px 22px;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
  background: #ffffff;
}

.privacy-page .legal-contact-box p {
  margin-bottom: 10px;
}

.privacy-page .legal-contact-box p:last-child {
  margin-bottom: 0;
}

/* --- Contact --- */
.contact-page .contact-area {
  background: #ffffff;
  color: #000000;
}

.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
  gap: 36px 48px;
  align-items: start;
}

.contact-intro {
  margin-bottom: 28px;
}

.contact-page .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.contact-page .about-display-title {
  margin: 0 0 14px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.4vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.contact-page .about-display-title .title-outline {
  color: #fc6d0f;
  -webkit-text-fill-color: #fc6d0f;
}

.contact-page .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
}

.contact-page .about-lead {
  margin: 0;
  max-width: 40em;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.contact-aside {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.contact-page .contact-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border: 0;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.contact-page .contact-submit:hover {
  background: #D4550A;
  transform: translateY(-1px);
}

.contact-page .map-area {
  background: #ffffff;
  padding: 0 0 50px;
}

.contact-page .map-area iframe {
  height: 380px;
  border-radius: 22px;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

@media (max-width: 991.98px) {
  .contact-layout {
    grid-template-columns: 1fr;
  }
}

.contact-area .contact-cards {
  margin-bottom: 60px;
}

.contact-area .contact-card {
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
  padding: 24px 22px;
  text-align: left;
  height: 100%;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.contact-area .contact-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.4);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
}

.contact-area .contact-card .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
  margin: 0 0 14px;
}

.contact-area .contact-card:hover .icon {
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
}

.contact-area .contact-card h3 {
  margin: 0 0 8px;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  color: #111111;
}

.contact-area .contact-card p,
.contact-area .contact-card a {
  margin-bottom: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.6;
  text-decoration: none;
}

.contact-area .contact-card a:hover {
  color: #FC6D0F;
}

.contact-area .contact-form {
  margin-top: 26px;
  overflow: visible;
}

.contact-area .contact-form .row {
  overflow: visible;
}

.contact-area .contact-img {
  position: relative;
}

.contact-area .contact-img img {
  width: 100%;
  border-radius: var(--lc-radius);
}

.contact-area .contact-img .title-sticker {
  position: absolute;
  top: 24px;
  right: 24px;
}

.map-area {
  line-height: 0;
}

.map-area iframe {
  width: 100%;
  height: 460px;
  border: none;
}

.contact-area .contact-img .title-sticker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 88px;
  min-height: 88px;
  padding: 12px;
  border-radius: 50%;
  background-color: var(--lc-color-primary);
  border: 3px solid var(--lc-color-green);
  color: var(--lc-color-ink);
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.06em;
  box-shadow: 4px 4px 0 var(--lc-color-green);
}

.legal-page .legal-heading {
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  margin: 28px 0 12px;
  color: var(--lc-color-ink);
}

.legal-page .legal-subheading {
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  margin: 20px 0 10px;
  color: var(--lc-color-ink);
}

.legal-page .legal-list {
  margin: 0 0 16px;
  padding-left: 1.25em;
}

.legal-page .legal-list li {
  margin-bottom: 8px;
  color: var(--lc-color-body);
  line-height: 1.65;
}

.legal-page .legal-quote {
  margin: 14px 0 18px;
  padding: 16px 18px;
  border-left: 4px solid var(--lc-color-primary);
  background: rgba(var(--lc-color-cream-rgb), 0.7);
  border-radius: 0 14px 14px 0;
  font-size: 15px;
  color: var(--lc-color-body);
}

.legal-page .legal-contact-box {
  margin-top: 12px;
  padding: 20px 22px;
  border: 2px solid var(--lc-color-border);
  border-radius: 18px;
  background: var(--lc-color-cream);
}

.legal-page .legal-contact-box p {
  margin-bottom: 10px;
}

.legal-page .legal-contact-box p:last-child {
  margin-bottom: 0;
}

.contact-form .privacy-consent {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 4px 0 8px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--lc-color-body);
  line-height: 1.55;
}

.contact-form .privacy-consent input {
  margin-top: 4px;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  accent-color: #FC6D0F;
}

.contact-form .privacy-consent a {
  color: #FC6D0F;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.sitemap-card {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 26px 22px;
  height: 100%;
}

.sitemap-card-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 2px solid var(--lc-color-border-2);
}

.sitemap-card-head .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background-color: var(--lc-color-cream-2);
  color: var(--lc-color-green);
}

.sitemap-card-head .title {
  font-size: 20px;
  margin: 0;
}

.sitemap-list li+li {
  margin-top: 8px;
}

.sitemap-list a {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  font-size: 14.5px;
  color: var(--lc-color-ink);
  transition: color 0.2s ease, transform 0.2s ease;
}

.sitemap-list a i {
  font-size: 11px;
  opacity: 0.45;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.sitemap-list a:hover {
  color: var(--lc-color-primary-deep);
}

.sitemap-list a:hover i {
  opacity: 1;
  transform: translateX(3px);
}

.cookie-page .cookie-body,
.sitemap-page .sitemap-body {
  background: #ffffff;
  color: #1a1a1a;
}

.cookie-copy {
  max-width: 860px;
}

.cookie-page .legal-heading {
  margin: 32px 0 12px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.cookie-page p,
.cookie-page .privacy-meta {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.75;
}

.cookie-page a {
  color: #FC6D0F;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cookie-page a:hover {
  color: #D4550A;
}

.cookie-types {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 18px 0 8px;
}

.cookie-type {
  padding: 22px 20px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.cookie-type-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.cookie-type h4 {
  margin: 0 0 8px;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  color: #111111;
}

.cookie-type p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
}

.cookie-points {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.cookie-points li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #111111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
}

.cookie-points i {
  margin-top: 3px;
  color: #FC6D0F;
  font-size: 12px;
}

.sitemap-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.sitemap-page .sitemap-card {
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
  padding: 24px 22px;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.sitemap-page .sitemap-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.4);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
}

.sitemap-page .sitemap-card-head {
  border-bottom: 1px solid rgba(51, 46, 46, 0.12);
}

.sitemap-page .sitemap-card-head .icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
}

.sitemap-page .sitemap-card-head .title {
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  color: #111111;
}

.sitemap-page .sitemap-list a {
  color: #111111;
  text-decoration: none;
}

.sitemap-page .sitemap-list a:hover {
  color: #FC6D0F;
}

.sitemap-page .sitemap-list a i {
  color: #FC6D0F;
  opacity: 1;
}

@media (max-width: 991.98px) {

  .sitemap-grid,
  .cookie-types {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 575.98px) {

  .sitemap-grid,
  .cookie-types {
    grid-template-columns: 1fr;
  }
}

/*======================
Product catalogue
========================*/
.category-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  overflow: hidden;
  transition: border-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.category-card .category-card-body {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.category-card:hover {
  border-color: var(--lc-color-green);
  box-shadow: 6px 6px 0 rgba(var(--lc-color-ink-rgb), 0.08);
  transform: translateY(-4px);
}

.category-card-thumb {
  height: 220px;
  background-color: var(--lc-color-cream);
  overflow: hidden;
}

.category-card-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.category-card:hover .category-card-thumb img {
  transform: scale(1.06);
}

.category-card-body {
  padding: 22px 20px 24px;
}

.category-card-body .count {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
  margin-bottom: 8px;
}

.category-card-body .title {
  font-size: 22px;
  margin-bottom: 8px;
}

.category-card-body p {
  margin-bottom: 14px;
  font-size: 15px;
}

.category-card-body .category-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  font-weight: 700;
  font-size: 14px;
  color: var(--lc-color-green);
}

.category-card:hover .category-link i {
  transform: translateX(3px);
}

.category-card-body .category-link i {
  transition: transform 0.2s ease;
}

.shop-cat-sidebar .lc-btn.w-100 {
  width: 100%;
  justify-content: center;
}

.product-item .product-content .desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8em;
}

.shop-details-area .details-gallery img {
  width: 100%;
  object-fit: contain;
  background-color: var(--lc-color-cream);
}

.related-products {
  border-top: 1px dashed var(--lc-color-border-2);
}

/*======================
Leadership & Team
========================*/
.team-page .lead-text {
  /* max-width: 720px; */
  margin: 0 auto 36px;
}

.team-page .section-title {
  margin-bottom: 12px;
}

.avatar-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: linear-gradient(145deg, var(--lc-color-cream-2), var(--lc-color-cream));
  color: var(--lc-color-green);
  font-family: var(--lc-ff-heading);
  font-size: 42px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.team-card-body .designation,
.team-modal .designation {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #FC6D0F;
  margin-bottom: 8px;
}

.team-card-body .short-bio,
.team-modal .short-bio {
  font-size: 14.5px;
  font-weight: 500;
  color: #1a1a1a;
  margin-bottom: 16px;
}

/* Leadership — Our Manufacturing alternating showcase */
.leadership-showcase-area {
  background: #F6E8DA;
}

.leadership-showcase-area .about-display-title {
  max-width: 760px;
}

.leadership-showcase-area .about-display-title .title-outline {
  color: #F6E8DA;
  -webkit-text-fill-color: #F6E8DA;
}

.leadership-showcase-area .mfg-showcase-row,
.leadership-showcase-area .mfg-showcase-row.is-flip {
  grid-template-columns: 350px minmax(0, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
}

.leadership-showcase-area .mfg-showcase-row.is-flip {
  grid-template-columns: minmax(0, 1fr) 350px;
}

.leadership-showcase-visual {
  width: 350px;
  max-width: 350px;
  height: 450px;
  max-height: 450px;
  aspect-ratio: auto;
  margin: 0;
  background: #ffffff;
}

.leadership-showcase-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.leadership-showcase-visual .avatar-fallback {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 6vw, 64px);
  font-weight: 800;
  color: #16442E;
  background: linear-gradient(145deg, #ffffff, #F6E8DA);
}

.leadership-showcase-role {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #FC6D0F;
}

.leadership-showcase-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.leadership-showcase-actions .icon-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(51, 46, 46, 0.18);
  color: #111111;
  background: #ffffff;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.leadership-showcase-actions .icon-link:hover {
  background-color: #16442E;
  border-color: #16442E;
  color: #F6E8DA;
}

.leadership-bio-link {
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
}

@media (max-width: 991.98px) {

  .leadership-showcase-area .mfg-showcase-row,
  .leadership-showcase-area .mfg-showcase-row.is-flip {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .leadership-showcase-area .mfg-showcase-row.is-flip .mfg-showcase-visual,
  .leadership-showcase-area .mfg-showcase-row.is-flip .mfg-showcase-copy {
    order: initial;
  }

  .leadership-showcase-visual {
    width: min(350px, 100%);
    max-width: 350px;
    height: 450px;
    max-height: 450px;
    margin: 0 auto;
  }

  .leadership-showcase-area .mfg-showcase-copy,
  .leadership-showcase-area .mfg-showcase-row.is-flip .mfg-showcase-copy {
    padding: 8px 4px 0;
    width: 100%;
    max-width: 520px;
  }

  .leadership-showcase-area .mfg-showcase-text {
    margin-left: auto;
    margin-right: auto;
  }

  .leadership-showcase-actions {
    justify-content: center;
  }
}

@media (max-width: 575.98px) {
  .leadership-showcase-visual {
    width: min(280px, 100%);
    max-width: 280px;
    height: 360px;
    max-height: 360px;
  }

  .leadership-showcase-area .about-display-title {
    font-size: clamp(26px, 7.5vw, 36px);
  }

  .leadership-showcase-actions .icon-link {
    width: 42px;
    height: 42px;
  }

  .leadership-bio-link {
    width: 100%;
    justify-content: center;
  }
}

.bio-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: none;
  background: transparent;
  padding: 0;
  margin: 4px 0 16px;
  font-weight: 700;
  font-size: 14px;
  color: var(--lc-color-green);
}

.bio-toggle i {
  transition: transform 0.25s ease;
  font-size: 12px;
}

.bio-toggle[aria-expanded="true"] i {
  transform: rotate(180deg);
}

.profile-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
}

.profile-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border: 2px solid var(--lc-color-border);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  color: var(--lc-color-ink);
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.profile-link:hover {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.profile-link.is-disabled {
  opacity: 0.45;
  cursor: default;
}

/* Our Team — organic circular grid */
.our-team-area {
  position: relative;
  overflow: hidden;
  background: #ffffff;
}

.our-team-blobs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.our-team-blob {
  position: absolute;
  display: block;
  border-radius: 50%;
}

.our-team-blob-a {
  top: -37px;
  left: -15px;
  width: 171px;
  height: 180px;
  background: #FC6D0F;
  /* border-radius: 50% 99% 96% 45% / 55% 50% 70% 60%; */
  opacity: 0.92;
}

.our-team-blob-b {
  top: 8%;
  left: 18%;
  width: 220px;
  height: 220px;
  background: rgba(0, 0, 0, 0.03);
}

.our-team-blob-c {
  top: 4%;
  right: 8%;
  width: 180px;
  height: 180px;
  background: rgba(0, 0, 0, 0.025);
}

.our-team-blob-d {
  bottom: 12%;
  right: -60px;
  width: 260px;
  height: 260px;
  background: rgba(0, 0, 0, 0.03);
}

.our-team-area .container {
  position: relative;
  z-index: 1;
}

.our-team-intro {
  margin-bottom: clamp(40px, 6vw, 72px);
}

.our-team-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 48px) clamp(16px, 3vw, 36px);
  align-items: center;
  justify-items: center;
  max-width: 1100px;
  margin: 0 auto;
}

.our-team-member {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  max-width: 220px;
}

.our-team-photo {
  position: relative;
  display: block;
  width: min(180px, 100%);
  aspect-ratio: 1;
  padding: 0;
  border: 0;
  margin: 0 0 18px;
  overflow: hidden;
  border-radius: 50%;
  background: #F6E8DA;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

button.our-team-photo {
  cursor: pointer;
}

button.our-team-photo:hover,
.our-team-member:hover .our-team-photo {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 18px 36px rgba(22, 68, 46, 0.12);
}

.our-team-photo img,
.our-team-photo .avatar-fallback {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.our-team-photo .avatar-fallback {
  font-size: clamp(28px, 4vw, 40px);
  background: linear-gradient(145deg, #ffffff, #F6E8DA);
  color: #16442E;
}

.our-team-name {
  margin: 0 0 4px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(16px, 1.6vw, 18px);
  font-weight: 800;
  color: #111111;
  line-height: 1.25;
}

.our-team-role {
  margin: 0;
  font-size: 13px;
  font-weight: 500;
  color: rgba(17, 17, 17, 0.62);
  line-height: 1.4;
}

.our-team-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 12px;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.our-team-member:hover .our-team-links,
.our-team-member:focus-within .our-team-links {
  opacity: 1;
  transform: translateY(0);
}

.our-team-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(51, 46, 46, 0.16);
  color: #16442E;
  background: #ffffff;
  font-size: 12px;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.our-team-icon:hover {
  background: #16442E;
  border-color: #16442E;
  color: #F6E8DA;
}

.our-team-bio-btn {
  border: none;
  background: transparent;
  padding: 0 4px;
  font-size: 12px;
  font-weight: 700;
  color: #FC6D0F;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.our-team-bio-btn:hover {
  color: #16442E;
}

@media (max-width: 991.98px) {
  .our-team-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .our-team-blob-a {
    width: 90px;
    height: 120px;
  }

  .our-team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 20px;
  }

  .our-team-photo {
    width: min(150px, 100%);
  }

  .our-team-links {
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 420px) {
  .our-team-grid {
    grid-template-columns: 1fr;
  }

  .our-team-photo {
    width: min(170px, 70vw);
  }
}

.team-modal .modal-content {
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
}

.team-modal .modal-header {
  border-bottom: 1px solid var(--lc-color-border-2);
  padding: 22px 24px;
}

.team-modal .modal-title {
  font-size: 24px;
  margin: 0;
}

.team-modal .modal-body {
  padding: 24px;
}

.team-modal-top {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 18px;
  margin-bottom: 18px;
  align-items: center;
}

.team-modal-top img,
.team-modal-top .avatar-fallback {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center top;
  font-size: 28px;
  background: #F6E8DA;
}

.team-modal-bio p {
  margin-bottom: 12px;
}

.product-cat-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.product-cat-filter .filter-chip {
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border: 2px solid var(--lc-color-border);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  color: var(--lc-color-ink);
  background-color: var(--lc-color-white);
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.product-cat-filter .filter-chip:hover,
.product-cat-filter .filter-chip.active {
  background-color: var(--lc-color-green);
  border-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.legal-page a {
  color: var(--lc-color-primary-deep);
  font-weight: 600;
}

.legal-page a:hover {
  color: var(--lc-color-green);
}

.footer-bottom a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.footer-bottom a:hover {
  color: var(--lc-color-primary);
}


/*======================
22. Home Page Three
========================*/
body.home-three {
  --lc-color-ink: #2E1A2B;
  --lc-color-ink-rgb: 46, 26, 43;
  --lc-color-body: #6B5264;
  --lc-color-cream: #FAEDE1;
  --lc-color-cream-rgb: 250, 237, 225;
  --lc-color-cream-2: #F3DFC9;
  --lc-color-white: #FFFBF6;
  --lc-color-green: #fc6d0f;
  --lc-color-green-rgb: 74, 27, 63;
  --lc-color-primary: #e8e5e2;
  --lc-color-primary-rgb: 255, 181, 60;
  --lc-color-primary-deep: #B8770A;
  --lc-color-border: #EFDACB;
  --lc-color-border-2: #E3C7B4;
  --lc-color-muted: #b6b6b6;
  --lc-color-dark-soft: #6E2F5F;
  --lc-radius: 18px;
  --lc-radius-sm: 12px;
}

/* squared button variant */
body.home-three .lc-btn {
  border-radius: 14px;
}

body.home-three .lc-btn::after {
  border-radius: 10px;
}

/* inline brand marks pick up the scheme */
body.home-three [fill="#FF8A3C"] {
  fill: var(--lc-color-primary);
}

body.home-three [stroke="#FF8A3C"] {
  stroke: var(--lc-color-primary);
}

body.home-three [fill="#16442E"] {
  fill: var(--lc-color-green);
}

body.home-three [stroke="#16442E"] {
  stroke: var(--lc-color-green);
}

body.home-three [fill="#3E7D53"] {
  fill: var(--lc-color-dark-soft);
}

body.home-three [fill="#FFFDF7"] {
  fill: var(--lc-color-white);
}

/* underline doodles in the new accent */
body.home-three .lc-accent-word,
body.home-three .section-title .subtitle {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 Q 20 2 40 7 T 78 7 T 118 6' fill='none' stroke='%23FFB53C' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* soft icon tiles in a plum tint */
body.home-three .service-area .service-item .icon,
body.home-three .process-area .process-item .icon {
  background-color: #F6E1EC;
}

/* --- HP3: card hero --- */
body.home-three .hero-area.hero-card-style {
  padding-top: 20px;
}

body.home-three .hero-area .hero-slider {
  height: auto;
  min-height: 0;
  max-height: none;
}

@media (max-width: 1199px) {

  .hero-area .hero-card,
  .hero-area .hero-card-grid {
    min-height: 500px;
  }

  .hero-area .hero-card-grid {
    padding: 44px 36px;
  }

  .hero-area .hero-card-content {
    max-width: 440px;
  }

  .hero-area .hero-nav-btn.hero-prev {
    left: 8px;
  }

  .hero-area .hero-nav-btn.hero-next {
    right: 8px;
  }
}

@media (max-width: 991px) {

  .hero-area .hero-card,
  .hero-area .hero-card-grid {
    min-height: 0;
  }

  .hero-area .hero-card {
    border-radius: 28px;
    background: #F7F1E8;
    box-shadow: 0 16px 36px rgba(31, 26, 20, 0.1);
  }

  .hero-area .hero-card-bg {
    display: none;
  }

  .hero-area .hero-card-grid {
    padding: 28px 22px 24px;
    align-items: stretch;
    min-height: 0;
  }

  .hero-area .hero-card-content {
    max-width: none;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 0;
    background: transparent;
    backdrop-filter: none;
    box-shadow: none;
  }

  .hero-area .hero-content-top,
  .hero-area .hero-content-bottom {
    width: 100%;
  }

  .hero-area .hero-mobile-media {
    display: block;
    width: 100%;
    border-radius: 18px;
    overflow: hidden;
    background: aliceblue;
  }

  .hero-area .hero-mobile-media img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    background: aliceblue;
  }

  .hero-area .hero-title {
    margin-bottom: 0;
    font-size: clamp(30px, 7vw, 42px);
  }

  .hero-area .hero-text {
    margin-bottom: 16px;
    font-size: 15px;
    max-width: none;
  }

  .hero-area .hero-btns {
    gap: 10px;
  }

  .hero-area .hero-btn-primary,
  .hero-area .hero-btn-ghost {
    min-height: 48px;
  }

  .hero-area .hero-nav-btn {
    width: 42px;
    height: 42px;
  }
}

@media (max-width: 575px) {
  .hero-area.hero-card-style {
    padding: 16px 0 6px;
  }

  .hero-area .hero-card {
    border-radius: 22px;
  }

  .hero-area .hero-card-grid {
    padding: 22px 16px 20px;
  }

  .hero-area .hero-mobile-media {
    border-radius: 14px;
  }

  .hero-area .hero-title {
    font-size: clamp(28px, 8.2vw, 36px);
  }

  .hero-area .hero-text {
    font-size: 14px;
  }

  .hero-area .hero-btn-primary,
  .hero-area .hero-btn-ghost {
    width: 100%;
    min-height: 46px;
  }

  .hero-area .hero-nav-btn {
    display: none;
  }
}

/* --- HP3: what-we-pour icon contrast fix --- */
body.home-three .service-area .service-item.style-dark .icon {
  background-color: var(--lc-color-green);
}

body.home-three .service-area .service-item.style-dark .icon i {
  color: var(--lc-color-primary);
}

/* --- HP3: about style-3 --- */
.about-area.style-3.about-showcase {
  background: #fff;
  color: #000000;
  overflow: hidden;
}

.about-area.style-3 .about-stack {
  position: relative;
  padding: 0;
  width: 100%;
}

.about-area.style-3 .main-img {
  border-radius: 28px;
  overflow: hidden;
  height: 520px;
  background: #EDE4D6;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.1);
}

.about-area.style-3 .main-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transform: none !important;
}

.about-area.style-3 .about-copy {
  max-width: 560px;
  color: #000000;
  padding-left: 8px;
}

.about-area.style-3 .about-kicker {
  display: inline-block;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.about-area.style-3 .about-display-title {
  margin: 0 0 22px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 560px;
}

.about-area.style-3 .about-display-title .title-outline,
.about-area.style-3 .about-display-title .title-solid {
  display: inline;
}

.about-area.style-3 .about-display-title .title-outline {
  color: #ffffff !important;
  -webkit-text-fill-color: rgb(252, 109, 15);
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
  text-shadow: none;
}

.about-area.style-3 .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
  paint-order: normal;
  text-shadow: none;
}

.about-area.style-3 .about-lead {
  margin: 0 0 22px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
  max-width: 520px;
}

.about-area.style-3 .about-points-wrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 28px;
  margin: 0 0 8px;
  max-width: 560px;
}

.about-area.style-3 .about-points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.about-area.style-3 .about-points li {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #000000;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
}

.about-area.style-3 .about-points li i {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 11px;
}

.about-area.style-3 .about-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 22px;
  margin-top: 26px;
}

.about-area.style-3 .about-btn-text {
  display: inline-flex;
  align-items: center;
  color: #000000 !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  background: transparent;
  border: none;
  padding: 0;
  transition: color 0.25s ease;
}

.about-area.style-3 .about-btn-text:hover {
  color: #FC6D0F !important;
}

.about-area.style-3 .about-btn-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.14);
  color: #000000 !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  background: #ffffff;
  text-decoration: none;
  box-shadow: none;
  transition: border-color 0.25s ease, color 0.25s ease, background-color 0.25s ease;
}

.about-area.style-3 .about-btn-light:hover {
  background: #ffffff;
  border-color: #FC6D0F;
  color: #FC6D0F !important;
}

.about-area.style-3 .founder-row {
  display: flex;
  align-items: center;
  gap: 16px;
  border-top: 1px dashed var(--lc-color-border-2);
  margin-top: 26px;
  padding-top: 26px;
}

.about-area.style-3 .founder-row>img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
}

.about-area.style-3 .founder-meta .name {
  display: block;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.about-area.style-3 .founder-meta .role {
  font-size: 13px;
  color: var(--lc-color-body);
}

.about-area.style-3 .founder-row .lc-btn {
  margin-left: auto;
}

/* --- HP3: menu tabs --- */
.menu-tabs-area.sec-pb-130 {
  padding-bottom: 70px;
}

.menu-tabs-area .menu-tab-nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 34px;
  margin-bottom: 44px;
  border: none;
}

.menu-tabs-area .menu-tab-nav .nav-link {
  border: 2px solid var(--lc-color-green);
  border-radius: 999px;
  background: transparent;
  padding: 11px 24px;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  color: var(--lc-color-green);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.menu-tabs-area .menu-tab-nav .nav-link:hover,
.menu-tabs-area .menu-tab-nav .nav-link.active {
  background-color: var(--lc-color-green);
  color: var(--lc-color-cream);
}

.menu-tabs-area .menu-tab-content {
  max-width: 1160px;
  margin: 0 auto;
}

.menu-tabs-area .menu-tab-content .tab-pane {
  column-count: 2;
  column-gap: 64px;
}

.menu-tabs-area .menu-row {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 16px;
  border-bottom: 1px dashed var(--lc-color-border-2);
  border-radius: 14px;
  break-inside: avoid;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.menu-tabs-area .menu-row:last-child {
  border-bottom: none;
}

.menu-tabs-area .menu-row:hover {
  background-color: var(--lc-color-cream);
  transform: translateX(8px);
}

.menu-tabs-area .menu-row .row-thumb {
  width: 78px;
  height: 78px;
  border-radius: 14px;
  overflow: hidden;
  flex-shrink: 0;
  background-color: var(--lc-color-cream);
}

.menu-tabs-area .menu-row .row-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.menu-tabs-area .menu-row:hover .row-thumb img {
  transform: scale(1.12);
}

.menu-tabs-area .menu-row .row-name {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  font-weight: 800;
  color: var(--lc-color-ink);
  transition: color 0.2s ease;
}

.menu-tabs-area .menu-row:hover .row-name {
  color: var(--lc-color-primary-deep);
}

.menu-tabs-area .menu-row .row-desc {
  display: block;
  font-size: 14px;
  color: var(--lc-color-body);
  margin-top: 3px;
}

.menu-tabs-area .menu-row .row-tag {
  background-color: var(--lc-color-primary);
  border: 2px solid var(--lc-color-green);
  border-radius: 7px;
  padding: 2px 9px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  transform: rotate(-2deg);
  flex-shrink: 0;
}

.menu-tabs-area .menu-row .row-dots {
  flex: 1;
  border-bottom: 2px dotted var(--lc-color-border-2);
  margin: 0 10px;
  min-width: 40px;
  align-self: center;
}

.menu-tabs-area .menu-row .row-price {
  font-family: var(--lc-ff-display);
  font-size: 27px;
  color: var(--lc-color-primary-deep);
  flex-shrink: 0;
  min-width: 76px;
  text-align: right;
}

/* --- HP3: video style-3 --- */
.video-area.style-3 .video-fullbleed {
  position: relative;
  height: 560px;
  overflow: hidden;
}

.video-area.style-3 .video-fullbleed>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.video-area.style-3 .video-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  text-align: center;
  background: linear-gradient(180deg, rgba(var(--lc-color-green-rgb), 0.18) 0%, rgba(var(--lc-color-green-rgb), 0.55) 100%);
}

.video-area.style-3 .video-kicker {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--lc-color-primary);
}

.video-area.style-3 .video-title {
  font-family: var(--lc-ff-display);
  font-size: clamp(42px, 6vw, 74px);
  text-transform: uppercase;
  color: var(--lc-color-cream);
  margin-bottom: 6px;
}

.video-area.style-3 .video-title .lc-outline-word {
  -webkit-text-stroke-color: var(--lc-color-cream);
}

/* --- HP3: offer style-3 (Mango Week) --- */
.offer-area.style-3 {
  position: relative;
  display: flow-root;
  overflow: visible;
  background-color: var(--lc-color-primary);
  padding: 0 0 100px 0;
}

.offer-area.style-3::after {
  content: "";
  position: absolute;
  top: 30px;
  right: 0;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.35) 0%, rgba(255, 255, 255, 0) 70%);
}

.offer-area.style-3 .offer-stripe {
  position: relative;
  z-index: 5;
  background-color: var(--lc-color-green);
  transform: rotate(-1.2deg) scale(1.02);
  margin-top: -26px;
  margin-bottom: 74px;
  padding: 13px 0;
  overflow: hidden;
}

.offer-area.style-3 .offer-stripe .marquee-track {
  display: flex;
  white-space: nowrap;
  width: max-content;
}

.offer-area.style-3 .offer-stripe .marquee-item {
  display: flex;
  align-items: center;
  gap: 34px;
  padding-right: 34px;
  font-family: var(--lc-ff-display);
  font-size: 17px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lc-color-cream);
}

.offer-area.style-3 .offer-stripe .marquee-item i {
  font-size: 13px;
  color: var(--lc-color-primary);
}

.offer-area.style-3 .offer-grid {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 60px;
}

.offer-area.style-3 .offer-left {
  flex: 1;
}

.offer-area.style-3 .offer-flash {
  display: inline-block;
  background-color: var(--lc-color-green);
  border-radius: 10px;
  padding: 7px 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--lc-color-cream);
  transform: rotate(-2deg);
  box-shadow: 4px 4px 0 rgba(var(--lc-color-ink-rgb), 0.25);
  margin-bottom: 20px;
}

.offer-area.style-3 .offer-big {
  font-family: var(--lc-ff-display);
  font-size: clamp(58px, 8vw, 112px);
  line-height: 0.98;
  text-transform: uppercase;
  color: var(--lc-color-ink);
  margin-bottom: 16px;
}

.offer-area.style-3 .offer-big .lc-outline-word {
  -webkit-text-stroke-color: var(--lc-color-ink);
}

.offer-area.style-3 .offer-sub {
  max-width: 500px;
  color: rgba(var(--lc-color-ink-rgb), 0.78);
  margin-bottom: 30px;
}

.offer-area.style-3 .offer-countdown {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: 560px;
  margin-bottom: 34px;
}

.offer-area.style-3 .count-box {
  background-color: var(--lc-color-cream);
  border: 2px solid var(--lc-color-ink);
  box-shadow: 5px 5px 0 rgba(var(--lc-color-ink-rgb), 0.25);
  padding: 18px 8px;
}

.offer-area.style-3 .count-box .num {
  font-family: var(--lc-ff-display);
  font-weight: 400;
  font-size: 38px;
  color: var(--lc-color-ink);
}

.offer-area.style-3 .count-box .label {
  color: var(--lc-color-body);
}

.offer-area.style-3 .offer-right {
  flex: 0 0 360px;
}

.offer-area.style-3 .offer-img {
  position: relative;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-ink);
  border-radius: var(--lc-radius);
  padding: 16px;
  transform: rotate(3deg);
  box-shadow: 10px 10px 0 rgba(var(--lc-color-ink-rgb), 0.25);
}

.offer-area.style-3 .offer-img img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  border-radius: var(--lc-radius-sm);
}

.offer-area.style-3 .off-badge {
  position: absolute;
  top: -30px;
  right: -24px;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background-color: var(--lc-color-green);
  color: var(--lc-color-primary);
  font-family: var(--lc-ff-display);
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(10deg);
  border: 3px solid var(--lc-color-cream);
}

/* --- HP3: testimonial style-3 (twin marquee) --- */
.testimonial-area.style-3 {
  background-color: var(--lc-color-green);
  overflow: hidden;
}

.testimonial-area.style-3 .section-title .title {
  color: var(--lc-color-cream);
}

.testimonial-area.style-3 .t-marquee {
  overflow: hidden;
  margin-top: 20px;
}

.testimonial-area.style-3 .t-marquee.row-2 {
  margin-top: 24px;
  margin-left: -160px;
}

.testimonial-area.style-3 .marquee-track {
  display: flex;
  width: max-content;
}

.testimonial-area.style-3 .marquee-item {
  display: flex;
  gap: 24px;
  padding-right: 24px;
}

.testimonial-area.style-3 .t-mini-card {
  width: 400px;
  flex-shrink: 0;
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: 18px;
  padding: 24px;
}

.testimonial-area.style-3 .t-mini-card p {
  font-size: 15px;
  font-weight: 500;
  color: var(--lc-color-ink);
  margin: 10px 0 16px 0;
}

.testimonial-area.style-3 .t-mini-card .t-who {
  display: flex;
  align-items: center;
  gap: 12px;
}

.testimonial-area.style-3 .t-mini-card .t-who img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
}

.testimonial-area.style-3 .t-mini-card .t-who .name {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--lc-color-ink);
}

.testimonial-area.style-3 .t-mini-card .t-who .role {
  font-size: 12px;
  color: var(--lc-color-body);
}

/* Partner voices — home section quote slider */
.partner-voices-area {
  background: #ffffff;
  color: #000000;
}

.partner-voices-area .about-display-title .title-outline {
  color: hsl(0, 0%, 100%);
  -webkit-text-fill-color: #F6E8DA;
}

.partner-voices-slider-wrap {
  position: relative;
}

.partner-voices-slider {
  overflow: hidden;
  padding: 4px 2px 8px;
}

.partner-voices-slider .swiper-slide {
  height: auto;
}

.partner-voices-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 220px;
  padding: 28px 24px 26px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  transition: box-shadow 0.25s ease;
}

.partner-voices-slider .swiper-slide-active .partner-voices-card {
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.partner-voices-num {
  position: absolute;
  top: 22px;
  right: 22px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #000000;
}

.partner-voices-quote {
  margin: 0 0 22px;
  padding-right: 36px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
  flex: 1;
}

.partner-voices-who {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
}

.partner-voices-who img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  background: #F6E8DA;
}

.partner-voices-who .name {
  display: block;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 800;
  color: #111111;
  line-height: 1.3;
}

.partner-voices-who .role {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  font-weight: 600;
  color: #FC6D0F;
}

.partner-voices-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 24px;
}

.partner-voices-controls .testimonial-fraction {
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #111111;
  margin-right: 6px;
}

.partner-voices-controls .t-btn {
  width: 48px;
  height: 48px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid rgba(51, 46, 46, 0.18);
  background: #ffffff;
  color: #111111;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.partner-voices-controls .t-btn:hover {
  background: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
}

@media (max-width: 767.98px) {
  .partner-voices-controls {
    justify-content: center;
  }
}

/* --- HP3: blog style-3 (editorial list) --- */
.blog-area.style-3 {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

.blog-area.style-3 .blog-list {
  margin: 0 auto;
}

.blog-area.style-3 .blog-row {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 22px 18px;
  border-top: 1px dashed rgba(51, 46, 46, 0.16);
  border-radius: 16px;
  background-color: transparent;
  transition: background-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
}

.blog-area.style-3 .blog-row:last-child {
  border-bottom: 1px dashed rgba(51, 46, 46, 0.16);
}

.blog-area.style-3 .blog-row:hover {
  background-color: #FAF6F0;
  transform: translateX(4px);
}

.blog-area.style-3 .row-date {
  flex: 0 0 74px;
  text-align: center;
}

.blog-area.style-3 .row-date .day {
  display: block;
  font-family: var(--lc-ff-display);
  font-size: 38px;
  line-height: 1;
  color: #FC6D0F;
}

.blog-area.style-3 .row-date .mon {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #5C5347;
}

.blog-area.style-3 .row-main {
  flex: 1;
  min-width: 0;
}

.blog-area.style-3 .row-tag {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #1f1a14;
  margin-bottom: 6px;
}

.blog-area.style-3 .row-title {
  display: block;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.3;
  color: #1F1A14;
  transition: color 0.2s ease;
}

.blog-area.style-3 .blog-row:hover .row-title {
  color: #FC6D0F;
}

.blog-area.style-3 .row-thumb {
  flex: 0 0 150px;
  height: 94px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.blog-area.style-3 .row-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.blog-area.style-3 .blog-row:hover .row-thumb img {
  transform: scale(1.08);
}

.blog-area.style-3 .row-arrow {
  flex: 0 0 48px;
  height: 48px;
  border-radius: 50%;
  border: 2px solid #FC6D0F;
  color: #FC6D0F;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-45deg);
  transition: background-color 0.25s ease, transform 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.blog-area.style-3 .blog-row:hover .row-arrow {
  background-color: #FC6D0F;
  color: #ffffff;
  transform: rotate(0deg);
}

.blog-area.style-3 .featured-products-actions {
  margin-top: 42px;
}

.blog-area.style-3 .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  border: none;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.blog-area.style-3 .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

/*======================
About pages
========================*/
.section-padding {
  padding: 50px 0px;
}

.about-sidebar {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius);
  padding: 28px 22px;
  position: sticky;
  top: 120px;
}

.about-sidebar-title {
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  margin-bottom: 18px;
  color: var(--lc-color-ink);
}

.about-sidebar-nav li+li {
  margin-top: 6px;
}

.about-sidebar-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  font-weight: 600;
  font-size: 14px;
  color: var(--lc-color-ink);
  transition: background-color 0.25s ease, color 0.25s ease;
}

.about-sidebar-nav a i {
  font-size: 12px;
  opacity: 0.45;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.about-sidebar-nav a:hover,
.about-sidebar-nav a.active {
  background-color: var(--lc-color-cream-2);
  color: var(--lc-color-primary-deep);
}

.about-sidebar-nav a:hover i,
.about-sidebar-nav a.active i {
  opacity: 1;
  transform: translateX(3px);
}

.about-area .lead-text {
  font-size: 19px;
  margin: 18px 0 18px 0;
}

/*======================
FAQs
========================*/
.faq-group {
  margin-bottom: 36px;
}

.faq-group-title {
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  margin-bottom: 16px;
  color: var(--lc-color-ink);
}

.faq-accordion .faq-item {
  background-color: var(--lc-color-white);
  border: 2px solid var(--lc-color-border);
  border-radius: var(--lc-radius-sm);
  margin-bottom: 12px;
  overflow: hidden;
}

.faq-accordion .accordion-button {
  font-family: var(--lc-ff-heading);
  font-size: 17px;
  font-weight: 700;
  color: var(--lc-color-ink);
  background-color: transparent;
  box-shadow: none;
  padding: 18px 22px;
}

.faq-accordion .accordion-button:not(.collapsed) {
  color: var(--lc-color-primary-deep);
  background-color: var(--lc-color-cream-2);
}

.faq-accordion .accordion-button::after {
  background-size: 14px;
}

.faq-accordion .accordion-button:focus {
  box-shadow: none;
  border-color: transparent;
}

.faq-accordion .accordion-body {
  padding: 0 22px 20px;
  color: var(--lc-color-body);
  font-size: 15.5px;
  line-height: 1.7;
}

.faq-cta {
  margin-top: 20px;
  padding: 32px 24px;
  border: 2px dashed var(--lc-color-border-2);
  border-radius: var(--lc-radius);
  background-color: var(--lc-color-cream);
}

.faq-cta p {
  margin-bottom: 18px;
  font-size: 18px;
  font-weight: 600;
  color: var(--lc-color-ink);
}

/* FAQs — unique desk layout, home color combination */
.faq-desk-area,
.faq-desk-cta-area {
  background: #ffffff;
  color: #000000;
}

.faq-desk-intro {
  margin-bottom: 42px;
}

.faq-desk-area .about-kicker,
.faq-desk-cta-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.faq-desk-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 720px;
}

.faq-desk-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.faq-desk-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.faq-desk-area .about-lead {
  margin: 0 auto;
  max-width: 560px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.faq-desk {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 36px;
  align-items: start;
}

.faq-desk-nav {
  position: sticky;
  top: 110px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 18px 14px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.faq-desk-nav-label {
  padding: 4px 12px 10px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.faq-desk-nav-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.faq-desk-nav-link:hover {
  background: rgba(252, 109, 15, 0.1);
  color: #FC6D0F;
}

.faq-desk-nav-num {
  flex: 0 0 auto;
  color: #FC6D0F;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.06em;
}

.faq-desk-group {
  margin-bottom: 28px;
  scroll-margin-top: 110px;
}

.faq-desk-group:last-child {
  margin-bottom: 0;
}

.faq-desk-group-head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 12px;
}

.faq-desk-group-num {
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.faq-desk-group-title {
  margin: 0;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
}

.faq-desk-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.faq-desk-item {
  border: 1px solid rgb(51 46 46 / 19%) !important;
  border-radius: 18px !important;
  background: #ffffff;
  overflow: hidden;
}

.faq-desk-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 18px 20px;
  border: 0;
  background: #ffffff;
  box-shadow: none !important;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.35;
  text-align: left;
}

.faq-desk-question::after {
  display: none;
}

.faq-desk-question:not(.collapsed) {
  color: #111111;
  background: #ffffff;
}

.faq-desk-question:focus {
  box-shadow: none;
}

.faq-desk-q {
  flex: 1 1 auto;
}

.faq-desk-toggle {
  position: relative;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
}

.faq-desk-toggle::before,
.faq-desk-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  background: #FC6D0F;
  transform: translate(-50%, -50%);
}

.faq-desk-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: opacity 0.2s ease;
}

.faq-desk-question:not(.collapsed) .faq-desk-toggle::after {
  opacity: 0;
}

.faq-desk-answer {
  padding: 0 20px 18px 20px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.7;
}

.faq-desk-cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 36px 40px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.faq-desk-cta-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.faq-desk-cta-text {
  margin: 0;
  max-width: 36em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.faq-desk-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.faq-desk-cta-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.faq-desk-cta-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.faq-desk-cta-area .quality-cert-btn-light {
  color: #111111 !important;
  border-color: rgb(51 46 46 / 19%);
  background: #ffffff;
}

.faq-desk-cta-area .quality-cert-btn-light:hover {
  border-color: rgba(252, 109, 15, 0.45);
  color: #FC6D0F !important;
}

@media (max-width: 991.98px) {
  .faq-desk {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .faq-desk-nav {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
  }

  .faq-desk-nav-label {
    width: 100%;
  }

  .faq-desk-cta {
    padding: 28px 22px;
  }
}

@media (max-width: 575.98px) {
  .faq-desk-cta-actions {
    width: 100%;
    flex-direction: column;
  }

  .faq-desk-cta-actions .featured-products-cta,
  .faq-desk-cta-actions .quality-cert-btn-light {
    width: 100%;
  }
}

/* FAQs — open sheets, home color combination */
.faq-sheet-area,
.faq-sheet-cta-area {
  background: #ffffff;
  color: #000000;
}

.faq-sheet-intro {
  margin-bottom: 42px;
}

.faq-sheet-area .about-kicker,
.faq-sheet-cta-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.faq-sheet-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 720px;
}

.faq-sheet-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  -webkit-text-stroke: 0;
  paint-order: stroke fill;
}

.faq-sheet-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.faq-sheet-area .about-lead {
  max-width: 560px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.faq-sheet-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.faq-sheet {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 28px;
  padding: 28px 28px 12px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.faq-sheet-side {
  padding-top: 6px;
}

.faq-sheet-num {
  display: block;
  margin-bottom: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.faq-sheet-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
}

.faq-sheet-count {
  margin: 0;
  color: #1a1a1a;
  font-size: 14px;
}

.faq-sheet-answers {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.faq-sheet-item {
  border: 1px solid rgb(51 46 46 / 19%) !important;
  border-radius: 16px !important;
  background: #ffffff;
  overflow: hidden;
}

.faq-sheet-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 16px 18px;
  border: 0;
  background: #ffffff;
  box-shadow: none !important;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.35;
  text-align: left;
}

.faq-sheet-question::after {
  display: none;
}

.faq-sheet-question:not(.collapsed),
.faq-sheet-question:focus {
  color: #111111;
  background: #ffffff;
  box-shadow: none;
}

.faq-sheet-q {
  flex: 1 1 auto;
}

.faq-sheet-toggle {
  position: relative;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
}

.faq-sheet-toggle::before,
.faq-sheet-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  background: #FC6D0F;
  transform: translate(-50%, -50%);
}

.faq-sheet-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq-sheet-question:not(.collapsed) .faq-sheet-toggle::after {
  opacity: 0;
}

.faq-sheet-answer {
  padding: 0 18px 16px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.7;
}

.faq-sheet-cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 36px 40px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.faq-sheet-cta-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.faq-sheet-cta-text {
  margin: 0;
  max-width: 36em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.faq-sheet-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.faq-sheet-cta-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.faq-sheet-cta-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
}

.faq-sheet-cta-area .quality-cert-btn-light {
  color: #111111 !important;
  border-color: rgb(51 46 46 / 19%);
  background: #ffffff;
}

.faq-sheet-cta-area .quality-cert-btn-light:hover {
  border-color: rgba(252, 109, 15, 0.45);
  color: #FC6D0F !important;
}

@media (max-width: 991.98px) {
  .faq-sheet {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 22px 20px 8px;
  }
}

@media (max-width: 575.98px) {
  .faq-sheet-cta {
    padding: 28px 22px;
  }

  .faq-sheet-cta-actions {
    width: 100%;
    flex-direction: column;
  }

  .faq-sheet-cta-actions .featured-products-cta,
  .faq-sheet-cta-actions .quality-cert-btn-light {
    width: 100%;
  }
}

.blog-sidebar .widget-post .title {
  font-size: 15px;
  line-height: 1.35;
  margin-bottom: 4px;
}

.blog-sidebar .widget-post .title a:hover {
  color: var(--lc-color-primary-deep);
}

.blog-sidebar .widget-post .date {
  font-size: 13px;
  color: var(--lc-color-muted);
}

/* OEM / Why Choose home blocks */
.process-area .section-title .lead-text,
.feature-area .section-title .lead-text {
  max-width: 720px;
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  color: var(--lc-color-body);
}

.feature-area.section-padding {
  padding-top: 0;
}

.feature-area .feature-pill {
  height: 100%;
}

.service-item .service-sub {
  display: block;
  margin: -4px 0 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
}

.service-abbr {
  margin-top: -8px;
  margin-bottom: 14px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lc-color-primary-deep);
}

/* Manufacturing capabilities highlights */
.caps-highlight-area {
  margin-top: -10px;
  margin-bottom: 10px;
  background: #ffffff;
}

.caps-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--lc-color-border);
  border-radius: 22px;
  overflow: hidden;
  background: #ffffff;
}

.caps-highlight-item {
  padding: 28px 20px;
  text-align: center;
  border-right: 1px solid var(--lc-color-border-2);
}

.caps-highlight-item:last-child {
  border-right: 0;
}

.caps-highlight-num {
  display: block;
  font-family: var(--lc-ff-display);
  font-size: clamp(32px, 4vw, 44px);
  line-height: 1;
  font-weight: 800;
  color: var(--lc-color-ink);
  margin-bottom: 8px;
}

.caps-highlight-label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--lc-color-body);
}

@media (max-width: 991px) {
  .caps-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .caps-highlight-item:nth-child(2) {
    border-right: 0;
  }

  .caps-highlight-item:nth-child(1),
  .caps-highlight-item:nth-child(2) {
    border-bottom: 1px solid var(--lc-color-border-2);
  }
}

@media (max-width: 575px) {
  .caps-highlight-grid {
    grid-template-columns: 1fr;
  }

  .caps-highlight-item {
    border-right: 0;
    border-bottom: 1px solid var(--lc-color-border-2);
  }

  .caps-highlight-item:last-child {
    border-bottom: 0;
  }
}

/* Manufacturing Capabilities page — unique layouts, same brand UI */
.caps-intro-area {
  background: #ffffff;
  color: #000000;
}

.caps-intro-area .about-kicker,
.caps-intro-area .mfg-showcase-title,
.caps-intro-area .mfg-showcase-text {
  color: #000000;
}

.caps-intro-area .mfg-showcase-link {
  color: #FC6D0F;
}

.caps-intro-visual {
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.1);
}

.caps-intro-visual img {
  object-fit: cover;
}

.caps-strengths-area {
  background: #ffffff;
  color: #000000;
}

.caps-strengths-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.caps-rail {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  max-width: 1080px;
  margin: 0 auto;
}

.caps-rail-item {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: start;
  gap: 16px 18px;
  padding: 26px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.12);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.caps-rail-item:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.caps-rail-num {
  font-family: var(--lc-ff-heading);
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.02em;
  color: rgba(252, 109, 15, 0.85);
  min-width: 2ch;
}

.caps-rail-icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 17px;
}

.caps-rail-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.caps-rail-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.caps-process-area {
  background: #ffffff;
  color: #000000;
}

.caps-process-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.caps-timeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 24px;
  max-width: 1080px;
  margin: 0 auto;
}

.caps-timeline-step {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 16px;
  align-items: start;
}

.caps-timeline-marker {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 100%;
}

.caps-timeline-dot {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 800;
  z-index: 1;
}

.caps-timeline-line {
  flex: 1 1 auto;
  width: 2px;
  min-height: 28px;
  margin-top: 8px;
  background: linear-gradient(180deg, rgba(252, 109, 15, 0.55), rgba(252, 109, 15, 0.08));
}

.caps-timeline-title {
  margin: 8px 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.caps-timeline-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.65;
}

.caps-models-area {
  background: #ffffff;
  color: #000000;
}

.caps-models-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.caps-models-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.caps-model-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 230px;
  padding: 28px 24px 24px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.12);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.caps-model-card:hover {
  transform: translateY(-4px);
  border-color: rgba(252, 109, 15, 0.4);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
  color: inherit;
}

.caps-model-num {
  position: absolute;
  right: 18px;
  top: 16px;
  font-family: var(--lc-ff-heading);
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
  color: rgba(0, 0, 0, 0.06);
  pointer-events: none;
}

.caps-model-icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 17px;
}

.caps-model-name {
  position: relative;
  z-index: 1;
  margin-bottom: 8px;
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  font-weight: 800;
  color: #111111;
}

.caps-model-text {
  position: relative;
  z-index: 1;
  margin-bottom: 16px;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.6;
}

.caps-model-go {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.caps-model-card:hover .caps-model-go i {
  transform: translateX(3px);
}

.caps-model-go i {
  transition: transform 0.2s ease;
}

.caps-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 40px;
}

.caps-models-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.caps-models-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {

  .caps-rail,
  .caps-timeline,
  .caps-models-grid {
    grid-template-columns: 1fr 1fr;
  }

  .caps-timeline-line {
    display: none;
  }
}

@media (max-width: 767.98px) {

  .caps-rail,
  .caps-timeline,
  .caps-models-grid {
    grid-template-columns: 1fr;
  }

  .caps-rail-item {
    grid-template-columns: auto 1fr;
  }

  .caps-rail-num {
    grid-column: 1 / -1;
  }
}

@media (max-width: 575.98px) {
  .caps-actions {
    flex-direction: column;
  }

  .caps-models-area .featured-products-cta,
  .caps-models-area .quality-cert-btn-light {
    width: 100%;
  }
}

/* Factory infrastructure — home-style */
.factory-intro-area {
  background: #F6E8DA;
}

.factory-intro-area .about-kicker {
  color: #000000;
}

.factory-intro-visual {
  background: #ffffff;
}

.factory-intro-visual img {
  object-fit: cover;
  object-position: center;
}

.factory-gallery-area {
  background: #ffffff;
}

.factory-gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 210px;
  gap: 16px;
}

.factory-gallery-item {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 22px;
  text-decoration: none;
  color: inherit;
  border: 1px solid rgba(51, 46, 46, 0.12);
  background: #F6E8DA;
}

.factory-gallery-item.is-big {
  grid-column: span 2;
  grid-row: span 2;
}

.factory-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.factory-gallery-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 4px;
  padding: 18px;
  background: linear-gradient(180deg, rgba(22, 68, 46, 0.02) 20%, rgb(0 0 0) 100%);
  color: #F6E8DA;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.factory-gallery-item:hover img {
  transform: scale(1.05);
}

.factory-gallery-item:hover .factory-gallery-overlay {
  opacity: 1;
}

.factory-gallery-label {
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.15;
  color: #ffffff;
}

.factory-gallery-caption {
  font-size: 13.5px;
  color: rgba(246, 232, 218, 0.88);
}

.factory-gallery-zoom {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #FC6D0F;
  color: #ffffff;
  font-size: 13px;
}

.factory-zones-area {
  background: #ffffff;
}

.factory-zones-area .about-display-title .title-outline {
  color: #FC6D0F;
  -webkit-text-fill-color: #FC6D0F;
}

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

.factory-zone-card {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 0;
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
  background: #ffffff;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.factory-zone-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.factory-zone-media {
  position: relative;
  min-height: 180px;
  background: #F6E8DA;
}

.factory-zone-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.factory-zone-num {
  position: absolute;
  left: 12px;
  bottom: 12px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #ffffff;
  background: rgba(22, 68, 46, 0.75);
  border-radius: 999px;
  padding: 4px 10px;
}

.factory-zone-body {
  padding: 24px 22px;
}

.factory-zone-body .icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-bottom: 12px;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.factory-zone-body .title {
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 8px;
  color: #111111;
}

.factory-zone-body p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #1a1a1a;
}

@media (max-width: 991px) {
  .factory-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 190px;
  }

  .factory-gallery-item.is-big {
    grid-column: span 2;
    grid-row: span 1;
    min-height: 240px;
  }

  .factory-zones-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .factory-gallery-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 220px;
  }

  .factory-gallery-item.is-big {
    grid-column: span 1;
  }

  .factory-gallery-overlay {
    opacity: 1;
  }

  .factory-zone-card {
    grid-template-columns: 1fr;
  }

  .factory-zone-media {
    height: 200px;
  }
}

/* USP + text card sections */
.usp-area,
.usp-block-area {
  position: relative;
}

.usp-area {
  background: #ffffff;
}

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

.usp-card {
  padding: 28px 22px 24px;
  border-radius: 22px;
  border: 1px solid rgb(51 46 46 / 19%);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.usp-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.usp-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.usp-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.usp-num {
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #000000
}

.usp-card-title {
  margin: 0 0 10px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.usp-card-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  .usp-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .usp-grid {
    grid-template-columns: 1fr;
  }
}

.usp-block-area {
  background-color: var(--lc-color-white);
}

.usp-block-area.is-alt {
  background-color: rgba(var(--lc-color-cream-rgb), 0.45);
}

.usp-block-area .section-title .lead-text {
  max-width: 680px;
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  color: var(--lc-color-body);
}

.text-card {
  height: 100%;
  padding: 30px 26px;
  border-radius: 20px;
  border: 1px solid var(--lc-color-border);
  background-color: var(--lc-color-white);
  transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}

.usp-block-area.is-alt .text-card {
  background-color: var(--lc-color-white);
}

.text-card:hover {
  border-color: rgba(var(--lc-color-primary-rgb), 0.55);
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(19, 18, 18, 0.06);
}

.text-card-title {
  position: relative;
  font-family: var(--lc-ff-display);
  font-size: 22px;
  line-height: 1.25;
  color: var(--lc-color-ink);
  margin: 0 0 12px;
  padding-bottom: 14px;
}

.text-card-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 36px;
  height: 3px;
  border-radius: 99px;
  background-color: var(--lc-color-primary);
}

.text-card-text {
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--lc-color-body);
}

.text-card.text-card-media {
  padding: 0;
  overflow: hidden;
}

.text-card-media-wrap {
  height: 180px;
  overflow: hidden;
}

.text-card-media-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.text-card.text-card-media:hover .text-card-media-wrap img {
  transform: scale(1.05);
}

.text-card-body {
  padding: 24px 22px 26px;
}

.rdqc-top-gallery {
  background-color: rgba(var(--lc-color-cream-rgb), 0.35);
}

.rdqc-gallery-card {
  height: 220px;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid var(--lc-color-border);
  background-color: var(--lc-color-cream);
}

.rdqc-gallery-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}

.rdqc-gallery-card:hover img {
  transform: scale(1.04);
}

@media (max-width: 767px) {
  .text-card {
    padding: 24px 20px;
  }

  .text-card.text-card-media {
    padding: 0;
  }

  .text-card-title {
    font-size: 20px;
  }

  .rdqc-gallery-card,
  .text-card-media-wrap {
    height: 180px;
  }
}

/* Mission & Vision — home showcase layout */
.mission-vision-showcase {
  background: #F6E8DA;
  color: #000000;
}

.mission-vision-showcase .about-display-title .title-outline {
  color: #F6E8DA;
  -webkit-text-fill-color: #F6E8DA;
}

.mission-vision-visual {
  background: #ffffff;
}

.mission-vision-visual img {
  object-position: center;
}

@media (max-width: 991.98px) {

  .mission-vision-showcase .mfg-showcase-row,
  .mission-vision-showcase .mfg-showcase-row.is-flip {
    text-align: left;
  }

  .mission-vision-showcase .mfg-showcase-copy {
    max-width: none;
  }
}

/* Beverage categories — bento promo grid */
.category-bento-area {
  background: #fff;
  color: #000000;
}

/* Shared home section header (Featured / USP / Manufacturing) */
.home-section-style {
  color: #000000;
}

.home-section-style .home-section-intro,
.home-section-style .category-bento-intro {
  margin-bottom: 42px;
}

.home-section-style .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.home-section-style .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 720px;
}

.home-section-style .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
  text-shadow: none;
}

.featured-products-area .about-display-title .title-outline,
.blog-area.style-3 .about-display-title .title-outline {
  color: #fc6d0f;
  -webkit-text-fill-color: #fc6d0f;
}

.home-section-style .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
  paint-order: normal;
  text-shadow: none;
}

.home-section-style .about-lead {
  margin: 0 auto;
  max-width: 580px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.featured-products-area,
.blog-area.style-3 {
  background: #ffffff;
}

.category-bento-area .category-bento-intro {
  margin-bottom: 42px;
}

.category-bento-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.category-bento-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 640px;
}

.category-bento-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
  text-shadow: none;
}

.category-bento-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
  paint-order: normal;
  text-shadow: none;
}

.category-bento-area .about-lead {
  margin: 0 auto;
  max-width: 560px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

/* Soft product card — white-section style */
.product-card-soft {
  display: block;
  height: 100%;
  text-decoration: none;
  color: inherit;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgb(51 46 46 / 19%);
}

.product-card-soft {
  background: #f6f6f6 !important;
}

.product-card-soft .pcs-media {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1.05;
  overflow: hidden;
  border-radius: 18px;
  background: transparent;
}

.product-card-soft .pcs-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1.5px solid #000000;
  background: #ffffff;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  /* keep badge solid so blend does not wash it out */
  isolation: isolate;
}

.product-card-soft .pcs-media .thumb-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 28px 22px 18px;
  /* Knock out photo white so section/card color shows through */
}

.product-card-soft.is-light .pcs-media .thumb-img {
  /* On white product-list cards, darken also drops pure white cleanly */
  mix-blend-mode: darken;
}

.product-card-soft .pcs-media .thumb-img-primary {
  opacity: 1;
  z-index: 1;
}

.product-card-soft .pcs-media .thumb-img-secondary {
  opacity: 0;
  z-index: 2;
}

.product-card-soft.has-hover-image:hover .pcs-media .thumb-img-primary {
  opacity: 0;
}

.product-card-soft.has-hover-image:hover .pcs-media .thumb-img-secondary {
  opacity: 1;
}

.product-card-soft .pcs-body {
  padding: 16px 4px 0;
}

.product-card-soft .pcs-title {
  margin: 0 0 6px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: 800;
  line-height: 1.25;
  text-transform: none;
}

.product-card-soft .pcs-meta {
  margin: 0;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
}

.featured-products-area .featured-products-actions {
  margin-top: 42px;
}

/* How we work — home Our process layout (v3) */
.process-journey-area .oem-side-outline {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  -webkit-text-stroke: 2px #000000;
  paint-order: stroke fill;
}

/* About Us page — home section language */
.about-who-area {
  background: #ffffff;
}

.about-who-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.about-who-visual {
  background: #F6E8DA;
}

.about-explore-area {
  background: #ffffff;
  color: #000000;
}

.about-explore-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.about-explore-bento {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.about-explore-tile {
  position: relative;
  grid-column: span 4;
  display: flex;
  flex-direction: column;
  min-height: 220px;
  padding: 28px 24px 24px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.about-explore-tile.is-feature {
  grid-column: span 8;
  min-height: 260px;
  background: #ffffff;
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 10px 28px rgba(252, 109, 15, 0.08);
}

.about-explore-tile:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
  border-color: rgba(252, 109, 15, 0.4);
  color: inherit;
}

.about-explore-tile-num {
  position: absolute;
  right: 18px;
  top: 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(0, 0, 0, 0.06);
  pointer-events: none;
}

.about-explore-tile.is-feature .about-explore-tile-num {
  color: rgba(252, 109, 15, 0.12);
}

.about-explore-tile-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.about-explore-tile-name {
  position: relative;
  z-index: 1;
  margin-bottom: 8px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 800;
  line-height: 1.2;
  color: #111111;
}

.about-explore-tile.is-feature .about-explore-tile-name {
  font-size: clamp(28px, 3vw, 40px);
}

.about-explore-tile-text {
  position: relative;
  z-index: 1;
  margin-bottom: 18px;
  max-width: 28em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.6;
}

.about-explore-tile.is-feature .about-explore-tile-text {
  font-size: 16px;
}

.about-explore-tile-go {
  position: relative;
  z-index: 1;
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.about-explore-tile-go i {
  font-size: 11px;
  transition: transform 0.25s ease;
}

.about-explore-tile:hover .about-explore-tile-go i {
  transform: translateX(4px);
}

@media (max-width: 991.98px) {

  .about-explore-tile,
  .about-explore-tile.is-feature {
    grid-column: span 6;
    min-height: 210px;
  }
}

@media (max-width: 575.98px) {

  .about-explore-tile,
  .about-explore-tile.is-feature {
    grid-column: span 12;
    min-height: 190px;
  }

  .about-explore-tile:hover {
    transform: none;
  }
}

/* Product detail page */
.product-detail-area {
  background: #ffffff;
  color: #000000;
  padding-top: clamp(40px, 6vw, 72px);
}

.product-detail-crumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 28px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.45);
}

.product-detail-crumb a {
  color: rgba(0, 0, 0, 0.55);
  text-decoration: none;
  transition: color 0.2s ease;
}

.product-detail-crumb a:hover {
  color: #FC6D0F;
}

.product-detail-crumb .is-current {
  color: rgba(0, 0, 0, 0.8);
}

.product-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}

.product-detail-gallery {
  position: relative;
  aspect-ratio: 1 / 1.05;
  border-radius: 22px;
  overflow: hidden;
  background: #F6E8DA;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.product-detail-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 12px;
  border-radius: 999px;
  border: 0;
  background: #ffffff;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.product-detail-main-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 36px 28px 28px;
  mix-blend-mode: multiply;
  display: block;
}

.product-detail-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}

.product-detail-thumbs button {
  width: 72px;
  height: 72px;
  padding: 6px;
  border-radius: 14px;
  border: 1px solid rgba(51, 46, 46, 0.14);
  background: #ffffff;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.product-detail-thumbs button img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.product-detail-thumbs li.is-active button,
.product-detail-thumbs button:hover {
  border-color: #FC6D0F;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}

.product-detail-copy .about-kicker {
  margin-bottom: 12px;
}

.product-detail-title {
  margin: 0 0 14px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(28px, 3.6vw, 44px);
  font-weight: 800;
  line-height: 1.15;
  color: #111111;
}

.product-detail-lead {
  margin: 0 0 14px;
  max-width: 36em;
  color: #1a1a1a;
  font-size: 17px;
  line-height: 1.7;
}

.product-detail-desc {
  margin: 0 0 22px;
  max-width: 38em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.75;
}

.product-long-area {
  background: #ffffff;
  color: #000000;
  border-top: 1px solid rgba(51, 46, 46, 0.1);
}

.product-long {
  max-width: 100%;
}

.product-long .about-kicker {
  display: inline-block;
  margin-bottom: 16px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.product-long .product-richtext {
  max-width: none;
  font-size: 16px;
}

.product-richtext {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.75;
  overflow-wrap: anywhere;
}

.product-richtext p,
.product-richtext ul,
.product-richtext ol,
.product-richtext blockquote {
  margin: 0 0 14px;
}

.product-richtext h1,
.product-richtext h2,
.product-richtext h3,
.product-richtext h4 {
  margin: 22px 0 10px;
  font-family: var(--lc-ff-heading);
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.product-richtext h2 {
  font-size: clamp(22px, 2.4vw, 28px);
}

.product-richtext h3,
.product-richtext h4 {
  font-size: clamp(18px, 2vw, 22px);
}

.product-richtext strong,
.product-richtext b {
  font-weight: 700;
  color: inherit;
}

.product-richtext ul,
.product-richtext ol {
  padding-left: 1.25em;
}

.product-richtext li {
  margin-bottom: 8px;
}

.product-richtext a {
  color: #FC6D0F;
  text-decoration: underline;
}

.product-richtext blockquote {
  padding-left: 16px;
  border-left: 3px solid #FC6D0F;
}

.product-detail-points {
  display: grid;
  gap: 10px;
  margin: 0 0 26px;
}

.product-detail-points li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  color: #111111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
}

.product-detail-points li i {
  margin-top: 3px;
  color: #FC6D0F;
  font-size: 12px;
}

.product-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 33px;
}

.product-detail-area .featured-products-cta,
.product-detail-btn-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.product-detail-area .featured-products-cta {
  background: #FC6D0F;
  color: #ffffff !important;
}

.product-detail-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.product-detail-btn-light {
  border: 1.5px solid rgba(0, 0, 0, 0.16);
  background: #ffffff;
  color: #111111 !important;
}

.product-detail-btn-light:hover {
  border-color: #FC6D0F;
  color: #FC6D0F !important;
}

.product-detail-info-area {
  background: #ffffff;
  color: #000000;
}

.product-detail-info-area .about-display-title {
  margin: 0;
  max-width: none;
  text-align: left;
}

.product-detail-info-area .about-display-title .title-outline {
  color: #fc6d0f;
  -webkit-text-fill-color: #fc6d0f;
}

.product-detail-info-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
}

.product-detail-info-list {
  display: grid;
  gap: 12px;
  margin: 0;
}

.product-detail-info-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0;
  padding: 16px 18px;
  border-radius: 16px;
  background: #F6E8DA;
  border: 1px solid rgba(0, 0, 0, 0.04);
  color: #111111;
  font-size: 15px;
  line-height: 1.55;
}

.product-detail-info-list li i {
  margin-top: 4px;
  color: #FC6D0F;
  font-size: 12px;
}

.product-detail-pack-grid {
  display: grid;
  gap: 16px;
}

.product-detail-pack-card {
  background: #F6E8DA;
  border: 1px solid rgba(0, 0, 0, 0.04);
}

.product-detail-pack-meta {
  margin: 10px 0 0;
  color: #555555;
  font-size: 14px;
  font-weight: 600;
}

@media (max-width: 991.98px) {
  .product-detail-layout {
    grid-template-columns: 1fr;
  }

  .product-detail-info-area .about-display-title {
    text-align: center;
  }

  .product-detail-info-area .home-section-intro {
    text-align: center;
  }
}

@media (max-width: 575.98px) {

  .product-detail-actions .featured-products-cta,
  .product-detail-btn-light {
    width: 100%;
  }

  .product-detail-thumbs button {
    width: 64px;
    height: 64px;
  }
}

/* Why Choose Us */
.why-choose-area {
  background: #ffffff;
  color: #000000;
}

.why-choose-area .category-bento-intro {
  margin-bottom: 42px;
}

.why-choose-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.why-choose-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 640px;
}

.why-choose-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
  text-shadow: none;
}

.why-choose-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.why-choose-area .about-lead {
  margin: 0 auto;
  max-width: 560px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.why-choose-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.why-choose-card {
  position: relative;
  padding: 28px 24px 26px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.why-choose-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.why-choose-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.why-choose-num {
  position: absolute;
  top: 22px;
  right: 22px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #000000;
}

.why-choose-title {
  margin: 0 0 10px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.why-choose-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  .why-choose-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .why-choose-grid {
    grid-template-columns: 1fr;
  }
}

/* Distribution — professional home-palette layout */
/* Distribution � professional home-palette layout */
.network-reach-area {
  background: #ffffff;
  color: #000000;
}

.network-reach-area .category-bento-intro {
  margin-bottom: 42px;
}

.network-reach-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.network-reach-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 720px;
}

.network-reach-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.network-reach-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.network-reach-area .about-lead {
  margin: 0 auto;
  max-width: 560px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.network-reach-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.network-reach-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 28px 24px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.network-reach-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.network-reach-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.network-reach-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.network-reach-index {
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  /* color: rgba(0, 0, 0, 0.28); */
}

.network-reach-title {
  margin: 0 0 10px;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.network-reach-text {
  margin: 0 0 18px;
  flex: 1;
  font-size: 15px;
  line-height: 1.65;
  color: #1a1a1a;
}

.network-reach-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.network-reach-link i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.network-reach-card:hover .network-reach-link i {
  transform: translateX(4px);
}

.network-reach-actions {
  margin-top: 36px;
}

.network-reach-actions .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.network-reach-actions .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {
  .network-reach-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .network-reach-grid {
    grid-template-columns: 1fr;
  }
}

/* Our Network — same color combination as home */
.net-route-area,
.net-layers-area,
.net-coverage-area,
.net-journey-area,
.net-join-area {
  background: #ffffff;
  color: #000000;
}

.net-route-area .about-kicker,
.net-layers-area .about-kicker,
.net-coverage-area .about-kicker,
.net-journey-area .about-kicker,
.net-join-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.net-route-area .about-display-title,
.net-layers-area .about-display-title,
.net-coverage-area .about-display-title,
.net-journey-area .about-display-title {
  margin: 0 0 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.net-layers-area .about-display-title,
.net-journey-area .about-display-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
}

.net-route-area .about-display-title .title-outline,
.net-layers-area .about-display-title .title-outline,
.net-coverage-area .about-display-title .title-outline,
.net-journey-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.net-route-area .about-display-title .title-solid,
.net-layers-area .about-display-title .title-solid,
.net-coverage-area .about-display-title .title-solid,
.net-journey-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.net-route-area .about-lead,
.net-layers-area .about-lead,
.net-coverage-area .about-lead,
.net-journey-area .about-lead {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.net-route-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap: 48px;
  align-items: center;
}

.net-route-copy .about-lead {
  max-width: 36em;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.net-route-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.net-route-spine {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  width: 100%;
  padding: 10px 8px 10px 10px;
}

.net-route-spine-line {
  position: absolute;
  left: 29px;
  top: 34px;
  bottom: 34px;
  width: 2px;
  background: linear-gradient(180deg, #FC6D0F, rgba(252, 109, 15, 0.2));
  pointer-events: none;
}

.net-route-node {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 6px 0;
}

.net-route-node-num {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #ffffff;
  border: 2px solid #FC6D0F;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  box-shadow: 0 0 0 4px #ffffff;
}

.net-route-node-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.net-route-node-body strong {
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 800;
  color: #111111;
}

.net-route-node-body span {
  font-size: 13px;
  line-height: 1.45;
  color: #1a1a1a;
}

.net-layers {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.net-layer {
  display: grid;
  grid-template-columns: 64px 52px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 22px 26px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.net-layer:hover {
  transform: translateX(6px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
  color: inherit;
}

.net-layer-index {
  font-family: var(--lc-ff-heading);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(0, 0, 0, 0.18);
}

.net-layer-icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.net-layer-title {
  margin: 0 0 4px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.net-layer-text {
  margin: 0;
  max-width: 42em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.6;
}

.net-layer-go {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.net-layer-go i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.net-layer:hover .net-layer-go i {
  transform: translateX(4px);
}

.net-coverage-head {
  max-width: 640px;
  margin-bottom: 32px;
}

.net-coverage-band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgb(51 46 46 / 19%);
  border-radius: 22px;
  overflow: hidden;
  background: #ffffff;
}

.net-coverage-cell {
  padding: 28px 24px;
  border-right: 1px solid rgb(51 46 46 / 19%);
  background: #ffffff;
}

.net-coverage-cell:last-child {
  border-right: 0;
}

.net-coverage-cell:nth-child(even) {
  background: #ffffff;
}

.net-coverage-num {
  display: block;
  margin-bottom: 14px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
}

.net-coverage-title {
  margin: 0 0 10px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.3;
}

.net-coverage-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.65;
}

.net-journey {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.net-journey-step {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 28px 28px 28px 0;
  margin: 0;
}

.net-journey-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 48px;
  right: 12px;
  left: 72px;
  height: 2px;
  background: linear-gradient(90deg, rgba(252, 109, 15, 0.55), rgba(252, 109, 15, 0.08));
}

.net-journey-mark {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.net-journey-copy h3 {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.net-journey-copy p {
  margin: 0;
  max-width: 28em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.net-join-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 32px;
  align-items: end;
  padding: 40px 42px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.net-join-copy .about-kicker {
  display: inline-block;
  margin-bottom: 12px;
}

.net-join-title {
  margin: 0 0 12px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.net-join-text {
  margin: 0 0 18px;
  max-width: 40em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.net-join-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
}

.net-join-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.5;
}

.net-join-list i {
  margin-top: 3px;
  color: #FC6D0F;
}

.net-join-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 220px;
}

.net-route-area .featured-products-cta,
.net-join-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.net-route-area .featured-products-cta:hover,
.net-join-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.net-route-area .quality-cert-btn-light,
.net-join-area .quality-cert-btn-light {
  color: #111111 !important;
  border-color: rgb(51 46 46 / 19%);
  background: #ffffff;
}

.net-route-area .quality-cert-btn-light:hover,
.net-join-area .quality-cert-btn-light:hover {
  border-color: rgba(252, 109, 15, 0.45);
  color: #FC6D0F !important;
}

@media (max-width: 991.98px) {
  .net-route-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .net-route-spine {
    max-width: 420px;
  }

  .net-coverage-band {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .net-coverage-cell:nth-child(2) {
    border-right: 0;
  }

  .net-coverage-cell:nth-child(1),
  .net-coverage-cell:nth-child(2) {
    border-bottom: 1px solid rgb(51 46 46 / 19%);
  }

  .net-journey {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .net-journey-step:not(:last-child)::after {
    display: none;
  }

  .net-join-panel {
    grid-template-columns: 1fr;
    padding: 32px 28px;
  }

  .net-join-actions {
    flex-direction: row;
    flex-wrap: wrap;
    min-width: 0;
  }
}

@media (max-width: 767.98px) {
  .net-layer {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px 14px;
    padding: 20px 18px;
  }

  .net-layer-icon {
    display: none;
  }

  .net-layer-go {
    grid-column: 2;
  }

  .net-coverage-band {
    grid-template-columns: 1fr;
  }

  .net-coverage-cell,
  .net-coverage-cell:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgb(51 46 46 / 19%);
  }

  .net-coverage-cell:last-child {
    border-bottom: 0;
  }

  .net-join-list {
    grid-template-columns: 1fr;
  }

  .net-route-actions,
  .net-join-actions {
    flex-direction: column;
  }

  .net-route-actions .featured-products-cta,
  .net-route-actions .quality-cert-btn-light,
  .net-join-actions .featured-products-cta,
  .net-join-actions .quality-cert-btn-light {
    width: 100%;
  }
}

/* Network channel detail pages — unique UI, home color combo */
.netch-hero-area,
.netch-pillars-area,
.netch-split-area,
.netch-flow-area,
.netch-more-area,
.netch-cta-area {
  background: #ffffff;
  color: #000000;
}

.netch-hero-area .about-kicker,
.netch-pillars-area .about-kicker,
.netch-split-area .about-kicker,
.netch-flow-area .about-kicker,
.netch-more-area .about-kicker,
.netch-cta-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.netch-hero-area .about-display-title,
.netch-pillars-area .about-display-title,
.netch-flow-area .about-display-title,
.netch-more-area .about-display-title {
  margin: 0 0 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.netch-pillars-area .about-display-title,
.netch-flow-area .about-display-title,
.netch-more-area .about-display-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
}

.netch-hero-area .about-display-title .title-outline,
.netch-pillars-area .about-display-title .title-outline,
.netch-flow-area .about-display-title .title-outline,
.netch-more-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.netch-pillars-area .about-display-title .title-solid,
.netch-flow-area .about-display-title .title-solid,
.netch-more-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.netch-hero-area .about-lead {
  margin: 0 0 12px;
  max-width: 40em;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.netch-section-intro {
  margin-bottom: 36px;
}

.netch-hero {
  display: block;
  padding: 28px;
  border: 1px solid rgb(51 46 46 / 19%);
  border-radius: 28px;
  background: #ffffff;
}

.netch-hero-body {
  margin: 0 0 22px;
  max-width: 40em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.7;
}

.netch-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.netch-pillars {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.netch-pillar {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 26px 22px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.netch-pillar:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.netch-pillar-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}

.netch-pillar-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.netch-pillar-num {
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.28);
}

.netch-pillar-title {
  margin: 0 0 10px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.netch-pillar-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.65;
}

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

.netch-split-panel {
  padding: 32px 28px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.netch-split-title {
  margin: 0 0 18px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
}

.netch-check-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.netch-check-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.55;
}

.netch-check-list li:last-child {
  margin-bottom: 0;
}

.netch-check-list i {
  margin-top: 3px;
  color: #FC6D0F;
}

.netch-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.netch-flow-step {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 8px 28px 8px 0;
  margin: 0;
}

.netch-flow-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 36px;
  right: 12px;
  left: 72px;
  height: 2px;
  background: linear-gradient(90deg, rgba(252, 109, 15, 0.55), rgba(252, 109, 15, 0.08));
}

.netch-flow-num {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.netch-flow-copy h3 {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.netch-flow-copy p {
  margin: 0;
  max-width: 28em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.netch-more-head {
  max-width: 640px;
  margin-bottom: 32px;
}

.netch-more-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.netch-more-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 26px 22px 22px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.netch-more-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
  color: inherit;
}

.netch-more-index {
  margin-bottom: 12px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.28);
}

.netch-more-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.netch-more-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
}

.netch-more-text {
  margin: 0 0 16px;
  flex: 1;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.6;
}

.netch-more-go {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.netch-more-go i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.netch-more-card:hover .netch-more-go i {
  transform: translateX(4px);
}

.netch-cta-panel {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 36px 40px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
}

.netch-cta-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.netch-cta-text {
  margin: 0;
  max-width: 36em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.netch-cta-actions,
.netch-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.netch-hero-area .featured-products-cta,
.netch-cta-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.netch-hero-area .featured-products-cta:hover,
.netch-cta-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.netch-hero-area .quality-cert-btn-light,
.netch-cta-area .quality-cert-btn-light {
  color: #111111 !important;
  border-color: rgb(51 46 46 / 19%);
  background: #ffffff;
}

.netch-hero-area .quality-cert-btn-light:hover,
.netch-cta-area .quality-cert-btn-light:hover {
  border-color: rgba(252, 109, 15, 0.45);
  color: #FC6D0F !important;
}

@media (max-width: 991.98px) {
  .netch-hero {
    padding: 22px;
  }

  .netch-pillars,
  .netch-more-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .netch-flow {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .netch-flow-step:not(:last-child)::after {
    display: none;
  }
}

@media (max-width: 767.98px) {

  .netch-pillars,
  .netch-split,
  .netch-more-grid {
    grid-template-columns: 1fr;
  }

  .netch-cta-panel {
    padding: 28px 22px;
  }

  .netch-hero-actions,
  .netch-cta-actions {
    flex-direction: column;
  }

  .netch-hero-actions .featured-products-cta,
  .netch-hero-actions .quality-cert-btn-light,
  .netch-cta-actions .featured-products-cta,
  .netch-cta-actions .quality-cert-btn-light {
    width: 100%;
  }
}

/* Partner Manufacturing — top title + same title on side + timeline */
.oem-journey-area {
  background: #ffffff;
  color: #000000;
}

.oem-journey-area .oem-journey-intro {
  margin-bottom: 42px;
}

.oem-journey-area .oem-journey-intro .about-display-title {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.oem-journey-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.oem-journey-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.oem-journey-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}

.oem-journey-side {
  position: sticky;
  top: 110px;
  text-align: left;
}

.oem-side-kicker {
  display: inline-block;
  margin-bottom: 16px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #000000;
}

.oem-side-title {
  margin: 0 0 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: left;
}

.oem-side-outline,
.oem-side-solid {
  display: block;
}

.oem-side-outline {
  paint-order: stroke fill;
}

.oem-side-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.oem-side-lead {
  margin: 0 0 26px;
  max-width: 30em;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
  text-align: left;
}

.oem-side-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.oem-side-btn i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.oem-side-btn:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.oem-side-btn:hover i {
  transform: translateX(4px);
}

.oem-journey-track {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.oem-journey-track::before {
  content: "";
  position: absolute;
  left: 19px;
  top: 18px;
  bottom: 18px;
  width: 2px;
  background: linear-gradient(180deg, #FC6D0F, rgba(22, 68, 46, 0.2));
}

.oem-journey-step {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.oem-journey-node {
  position: relative;
  z-index: 1;
  width: 40px;
  height: 40px;
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #FC6D0F;
  box-shadow: 0 0 0 6px #ffffff;
}

.oem-journey-node-num {
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: #ffffff;
}

.oem-journey-card {
  padding: 20px 22px 18px;
  border-radius: 18px;
  background: #ffffff;
  border: 1px solid rgb(51 46 46 / 19%);
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.oem-journey-step:hover .oem-journey-card {
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
  transform: translateX(4px);
}

.oem-journey-card-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}

.oem-journey-icon {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 15px;
}

.oem-journey-step-title {
  margin: 0;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.oem-journey-step-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14px;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  .oem-journey-layout {
    grid-template-columns: 1fr;
  }

  .oem-journey-side {
    position: static;
  }
}

@media (max-width: 575.98px) {
  .oem-journey-track::before {
    left: 17px;
  }

  .oem-journey-node {
    width: 36px;
    height: 36px;
  }

  .oem-journey-step {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
  }
}

/* Our Manufacturing � unique alternating showcase */
.mfg-showcase-area {
  background: #ffffff;
  color: #000000;
}

.mfg-showcase-area .category-bento-intro {
  margin-bottom: 48px;
}

.mfg-showcase-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.mfg-showcase-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 640px;
}

.mfg-showcase-area .about-display-title .title-outline {
  color: #ffffff;
  -webkit-text-fill-color: rgb(252, 109, 15);
  ;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
}

.mfg-showcase-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.mfg-showcase-area .about-lead {
  margin: 0 auto;
  max-width: 580px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.mfg-showcase-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.mfg-showcase-row {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  padding: 18px;
  border-radius: 28px;
  /* background: #F6E8DA; */
  /* border: 1px solid rgba(0, 0, 0, 0.04); */
}

.mfg-showcase-row.is-flip {
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
}

.mfg-showcase-row.is-flip .mfg-showcase-visual {
  order: 2;
}

.mfg-showcase-row.is-flip .mfg-showcase-copy {
  order: 1;
}

.mfg-showcase-visual {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  aspect-ratio: 16 / 11;
  background: #ffffff;
}

.mfg-showcase-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.mfg-showcase-row:hover .mfg-showcase-visual img {
  transform: scale(1.04);
}

.mfg-showcase-num {
  position: absolute;
  left: 16px;
  bottom: 16px;
  z-index: 1;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  pointer-events: none;
}

.mfg-showcase-copy {
  padding: 8px 12px 8px 4px;
}

.mfg-showcase-row.is-flip .mfg-showcase-copy {
  padding: 8px 4px 8px 12px;
}

.mfg-showcase-title {
  margin: 0 0 12px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 2.6vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.mfg-showcase-text {
  margin: 0 0 16px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.mfg-showcase-points {
  list-style: none;
  margin: 0 0 22px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mfg-showcase-points li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #111111;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
}

.mfg-showcase-points li i {
  margin-top: 3px;
  color: #FC6D0F;
  font-size: 12px;
}

.mfg-showcase-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.mfg-showcase-link i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.mfg-showcase-link:hover {
  color: #D4550A;
}

.mfg-showcase-link:hover i {
  transform: translateX(4px);
}

.mfg-showcase-actions {
  margin-top: 40px;
}

.service-content-area {
  background: #ffffff;
}

.service-content-block {
  padding: 32px 28px;
  border-radius: 22px;
  background: #F6E8DA;
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.service-content-block h3 {
  margin: 0 0 14px;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 800;
  color: #111111;
}

.service-content-block p {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.service-process-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 991.98px) {
  .service-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .service-process-grid {
    grid-template-columns: 1fr;
  }
}

.mfg-showcase-actions .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.mfg-showcase-actions .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {

  .mfg-showcase-row,
  .mfg-showcase-row.is-flip {
    grid-template-columns: 1fr;
  }

  .mfg-showcase-row.is-flip .mfg-showcase-visual,
  .mfg-showcase-row.is-flip .mfg-showcase-copy {
    order: initial;
  }

  .mfg-showcase-copy,
  .mfg-showcase-row.is-flip .mfg-showcase-copy {
    padding: 4px 4px 8px;
  }
}

/* Quality Assurance page */
.qa-intro {
  background: #ffffff;
}

.qa-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.qa-display-title {
  margin: 0 0 16px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.4vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.qa-display-title .title-outline {
  color: #fc6d0f;
  -webkit-text-fill-color: #fc6d0f;
}

.qa-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
}

.qa-lead {
  margin: 0;
  max-width: 620px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.qa-stages-head {
  max-width: 760px;
  margin: 0 auto 40px;
  text-align: center;
}

.qa-stages-head .qa-lead {
  margin-left: auto;
  margin-right: auto;
}

.qa-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
  gap: 36px 64px;
  align-items: center;
}

.qa-text-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.qa-text-link i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.qa-text-link:hover {
  color: #D4550A;
}

.qa-text-link:hover i {
  transform: translateX(4px);
}

.qa-path ol {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}

.qa-path ol::before {
  content: "";
  position: absolute;
  left: 41px;
  top: 40px;
  bottom: 40px;
  width: 2px;
  background: rgba(252, 109, 15, 0.28);
}

.qa-path a {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  padding: 12px 14px;
  border-radius: 18px;
  text-decoration: none;
  color: inherit;
  transition: background-color 0.2s ease;
}

.qa-path a:hover,
.qa-path a:focus-visible {
  background: #F6E8DA;
}

.qa-path-num {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 800;
}

.qa-path-title {
  display: block;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  color: #111111;
}

.qa-path-note {
  display: block;
  margin-top: 3px;
  font-size: 14px;
  line-height: 1.45;
  color: #333333;
}

.qa-stages {
  background: #ffffff;
}

.qa-stage-list {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.qa-stage {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: 24px 36px;
  align-items: center;
  padding: 16px;
  border-radius: 28px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  scroll-margin-top: 110px;
}

.qa-stage.is-flip .qa-stage-visual {
  order: 2;
}

.qa-stage.is-flip .qa-stage-copy {
  order: 1;
}

.qa-stage-visual {
  margin: 0;
  overflow: hidden;
  border-radius: 20px;
  background: #F6E8DA;
  max-height: 380px;
}

.qa-stage-visual img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 380px;
  object-fit: cover;
  object-position: center;
}

.qa-stage-copy {
  padding: 8px 12px 8px 4px;
}

.qa-stage.is-flip .qa-stage-copy {
  padding: 8px 4px 8px 12px;
}

.qa-stage-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.qa-stage-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 14px;
}

.qa-stage-title {
  margin: 0 0 10px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(26px, 2.2vw, 34px);
  font-weight: 800;
  line-height: 1.15;
  color: #111111;
}

.qa-stage-text {
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: #1a1a1a;
}

.qa-stage-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 16px 0 0;
  color: #111111;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

.qa-stage-note i {
  margin-top: 3px;
  color: #FC6D0F;
  font-size: 12px;
}

.qa-pillars {
  background: #ffffff;
}

.qa-pillar-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.qa-pillar {
  height: 100%;
  padding: 24px 20px 22px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.qa-pillar-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 16px;
}

.qa-pillar-num {
  display: block;
  margin-bottom: 8px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: #FC6D0F;
}

.qa-pillar-title {
  margin: 0 0 8px;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  color: #111111;
}

.qa-pillar-text {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: #1a1a1a;
}

.qa-close {
  display: flex;
  justify-content: center;
  margin-top: 36px;
}

.qa-close a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.qa-close a:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {

  .qa-intro-grid,
  .qa-stage {
    grid-template-columns: 1fr;
  }

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

  .qa-stage.is-flip .qa-stage-visual,
  .qa-stage.is-flip .qa-stage-copy {
    order: initial;
  }

  .qa-stage-copy,
  .qa-stage.is-flip .qa-stage-copy {
    padding: 6px 8px 12px;
  }
}

@media (max-width: 575.98px) {
  .qa-pillar-grid {
    grid-template-columns: 1fr;
  }

  .qa-stage {
    padding: 12px;
  }

  .qa-stage-visual,
  .qa-stage-visual img {
    max-height: 260px;
  }

  .qa-path a {
    padding-right: 0;
  }
}

/* R&D and QC — unique lab component */
.rdqc-page {
  background: #ffffff;
  color: #000000;
}

.rdqc-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.rdqc-title {
  margin: 0 0 16px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.4vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
}

.rdqc-title .title-outline {
  color: #fc6d0f;
  -webkit-text-fill-color: #fc6d0f;
}

.rdqc-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
}

.rdqc-lead {
  margin: 0;
  max-width: 640px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.rdqc-head {
  max-width: 760px;
  margin: 0 auto 36px;
  text-align: center;
}

.rdqc-head .rdqc-lead {
  margin-left: auto;
  margin-right: auto;
}

.rdqc-shot {
  margin: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 18px;
  background: #F6E8DA;
}

.rdqc-shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.rdqc-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 14px;
}

.rdqc-hero {
  background: #ffffff;
}

.rdqc-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.9fr);
  gap: 36px 56px;
  align-items: center;
}

.rdqc-hero-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.rdqc-hero-links a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.rdqc-hero-links a i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.rdqc-hero-links a:hover {
  color: #D4550A;
}

.rdqc-hero-links a:hover i {
  transform: translateX(4px);
}

.rdqc-board {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.rdqc-board figure {
  margin: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(51, 46, 46, 0.14);
  background: #F6E8DA;
}

.rdqc-board img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.rdqc-develop {
  background: #ffffff;
}

.rdqc-dev-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.rdqc-dev-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 12px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.rdqc-dev-card:hover,
.rdqc-check:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
  border-color: rgba(252, 109, 15, 0.4);
}

.rdqc-watermark {
  position: absolute;
  right: 4px;
  top: 8px;
  z-index: 1;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 4vw, 56px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(0, 0, 0, 0.06);
  pointer-events: none;
}

.rdqc-dev-body {
  position: relative;
  padding: 16px 8px 8px;
}

.rdqc-dev-meta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.rdqc-dev-body h3,
.rdqc-check-copy h3,
.rdqc-join h3 {
  margin: 0 0 8px;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2;
  color: #111111;
}

.rdqc-dev-body p,
.rdqc-check-copy p,
.rdqc-join p {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.rdqc-control {
  background: #ffffff;
}

.rdqc-check-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.rdqc-check {
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  padding: 12px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.rdqc-together {
  background: #ffffff;
}

.rdqc-join {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.rdqc-join article {
  padding: 28px 24px 26px;
}

.rdqc-join article+article {
  border-left: 1px solid rgba(51, 46, 46, 0.14);
}

.rdqc-join .rdqc-icon {
  margin-bottom: 16px;
}

.rdqc-join-num {
  display: block;
  margin-bottom: 8px;
  color: rgba(252, 109, 15, 0.85);
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.rdqc-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.rdqc-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

.rdqc-actions a.is-line {
  background: #ffffff;
  color: #111111;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.rdqc-actions a:hover {
  background: #D4550A;
  color: #ffffff;
}

.rdqc-actions a.is-line:hover {
  background: #ffffff;
  color: #FC6D0F;
  border-color: #FC6D0F;
}

@media (max-width: 991.98px) {

  .rdqc-hero-grid,
  .rdqc-check {
    grid-template-columns: 1fr;
  }

  .rdqc-dev-grid,
  .rdqc-check-list {
    grid-template-columns: 1fr 1fr;
  }

  .rdqc-check .rdqc-shot {
    max-width: 280px;
  }

  .rdqc-join {
    grid-template-columns: 1fr;
  }

  .rdqc-join article+article {
    border-left: 0;
    border-top: 1px solid rgba(51, 46, 46, 0.14);
  }
}

@media (max-width: 575.98px) {

  .rdqc-dev-grid,
  .rdqc-check-list {
    grid-template-columns: 1fr;
  }

  .rdqc-dev-card:hover,
  .rdqc-check:hover {
    transform: none;
  }
}

/* Certifications logos — We Are Registered strip */
.cert-logos-area {
  background: #ffffff;
  color: #000000;
}

.cert-logos-intro {
  margin-bottom: 36px;
}

.cert-logos-area .about-kicker {
  color: #000000;
}

.cert-logos-area .about-display-title {
  max-width: none;
}

.cert-logos-area .about-display-title .title-outline {
  color: #FC6D0F;
  -webkit-text-fill-color: #FC6D0F;
}

.cert-logos-area .about-display-title .title-solid,
.cert-logos-area .about-lead {
  color: #1a1a1a;
  -webkit-text-fill-color: #1a1a1a;
}

.cert-logos-strip {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: clamp(28px, 4vw, 48px) clamp(32px, 4.5vw, 56px);
  max-width: 1100px;
  margin: 0 auto;
}

.cert-logo-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: auto;
  max-width: 160px;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.cert-logo-item img {
  display: block;
  width: auto;
  height: clamp(54px, 7vw, 78px);
  max-width: 150px;
  object-fit: contain;
  filter: drop-shadow(0 1px 0 rgba(255, 255, 255, 0.2));
}

.cert-logo-name {
  margin: 0;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  color: #111111;
  text-align: center;
}

.cert-logos-actions {
  margin-top: 36px;
}

.cert-logos-actions .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.cert-logos-actions .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.cert-page-intro-area {
  background: #ffffff;
  color: #000000;
}

.cert-page-intro-visual {
  background: #F7F4EF;
}

.cert-page-intro-visual img {
  object-fit: contain;
  padding: 28px;
}

.cert-page-systems-area {
  background: #ffffff;
}

.cert-page-systems-area .usp-card {
  background: #ffffff;
}

@media (max-width: 767.98px) {
  .cert-logos-strip {
    gap: 24px 28px;
  }

  .cert-logo-item img {
    height: 52px;
    max-width: 120px;
  }
}

@media (max-width: 420px) {
  .cert-logo-item img {
    height: 46px;
    max-width: 100px;
  }
}

/* Quality & Certifications */
.quality-cert-area {
  background: #ffffff;
  color: #000000;
}

.quality-cert-area .category-bento-intro {
  margin-bottom: 36px;
}

.quality-cert-area .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  background: none;
  padding: 0;
}

.quality-cert-area .about-display-title {
  margin: 0 auto 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(30px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: #000000;
  max-width: 720px;
}

.quality-cert-area .about-display-title .title-outline {
  color: #F7F4EF;
  -webkit-text-fill-color: #F7F4EF;
  -webkit-text-stroke: 0px #000000;
  paint-order: stroke fill;
  text-shadow: none;
}

.quality-cert-area .about-display-title .title-solid {
  color: #000000;
  -webkit-text-fill-color: #000000;
  -webkit-text-stroke: 0;
}

.quality-cert-area .about-lead {
  margin: 0 auto;
  max-width: 580px;
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.7;
}

.quality-cert-badges {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 28px;
}

.quality-cert-badge {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 18px;
  background: #F6E8DA;
  border: 1px solid rgba(0, 0, 0, 0.04);
}

.quality-cert-badge-icon {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(22, 68, 46, 0.12);
  color: #16442E;
  font-size: 18px;
}

.quality-cert-badge-label {
  display: block;
  margin-bottom: 4px;
  color: #555555;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.quality-cert-badge-value {
  display: block;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
  word-break: break-word;
}

.quality-cert-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.quality-cert-card {
  padding: 26px 22px 24px;
  border-radius: 20px;
  background: #F6E8DA;
  border: 1px solid rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.quality-cert-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.quality-cert-icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 17px;
}

.quality-cert-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.quality-cert-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.65;
}

.quality-cert-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 36px;
}

.quality-cert-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.quality-cert-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.quality-cert-btn-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  border: 1.5px solid rgba(0, 0, 0, 0.16);
  background: #ffffff;
  color: #000000 !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: border-color 0.25s ease, color 0.25s ease;
}

.quality-cert-btn-light:hover {
  border-color: #FC6D0F;
  color: #FC6D0F !important;
}

@media (max-width: 991.98px) {

  .quality-cert-badges,
  .quality-cert-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {

  .quality-cert-badges,
  .quality-cert-grid {
    grid-template-columns: 1fr;
  }

  .quality-cert-actions {
    flex-direction: column;
  }

  .quality-cert-area .featured-products-cta,
  .quality-cert-btn-light {
    width: 100%;
  }
}

.featured-products-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 28px;
  border-radius: 999px;
  border: none;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.featured-products-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.product-card-soft.is-light .pcs-title {
  color: #000000;
}

.product-card-soft.is-light .pcs-meta {
  color: #555555;
}

.category-bento {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(230px, 1fr));
  gap: 22px;
  min-height: 520px;
}

.category-bento-bottom {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 22px;
}

.category-bento-card.category-bento-wide {
  min-height: 220px;
  grid-column: auto;
  grid-row: auto;
}

.category-bento-card.category-bento-wide.is-left {
  flex-direction: row-reverse;
  text-align: right;
}

.category-bento-card.category-bento-wide.is-left .category-bento-copy {
  align-items: flex-end;
}

.category-bento-card.category-bento-wide.is-left .category-bento-media {
  margin: -22px 0 -22px -20px;
}

.category-bento-card.category-bento-wide.is-right {
  flex-direction: row;
  text-align: left;
}

.category-bento-card.category-bento-wide .category-bento-title {
  max-width: 14ch;
  font-size: clamp(22px, 2.2vw, 28px);
}

.category-bento-card.category-bento-wide .category-bento-media {
  flex: 0 0 42%;
  width: 42%;
  max-width: 260px;
}

.category-bento-card {
  position: relative;
  display: flex !important;
  align-items: center;
  gap: 12px;
  min-height: 230px;
  padding: 22px 20px;
  overflow: hidden;
  border-radius: 28px;
  background: #F6E8DA;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.category-bento-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.08);
}

.category-bento-card.is-tl {
  grid-column: 1;
  grid-row: 1;
  flex-direction: row-reverse;
  text-align: right;
}

.category-bento-card.is-bl {
  grid-column: 1;
  grid-row: 2;
  flex-direction: row-reverse;
  text-align: right;
}

.category-bento-card.is-feature {
  grid-column: 2;
  grid-row: 1 / span 2;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  padding: 32px 28px 0;
  min-height: 100%;
}

.category-bento-card.is-tr {
  grid-column: 3;
  grid-row: 1;
  flex-direction: row;
  text-align: left;
}

.category-bento-card.is-br {
  grid-column: 3;
  grid-row: 2;
  flex-direction: row;
  text-align: left;
}

.category-bento-card.is-all {
  grid-column: 3;
  grid-row: 1 / span 2;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  padding: 32px 28px 0;
  min-height: 100%;
}

.category-bento-card.is-all .category-bento-copy {
  align-items: center;
  width: 100%;
}

.category-bento-card.is-all .category-bento-title {
  max-width: 12ch;
  font-size: clamp(24px, 2.4vw, 32px);
}

.category-bento-card.is-all .category-bento-media {
  flex: 1 1 auto;
  width: calc(100% + 56px);
  max-width: none;
  min-height: 240px;
  margin: 16px -28px 0;
}

.category-bento-card.is-all .category-bento-media img {
  object-fit: cover;
  object-position: center;
}

.category-bento-copy {
  position: relative;
  z-index: 2;
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.category-bento-card.is-tl .category-bento-copy,
.category-bento-card.is-bl .category-bento-copy {
  align-items: flex-end;
}

.category-bento-card.is-feature .category-bento-copy {
  align-items: center;
  width: 100%;
}

.category-bento-eyebrow {
  display: block;
  color: #E11D48;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.category-bento-title {
  margin: 0;
  max-width: 11ch;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 800;
  line-height: 1.2;
}

.category-bento-card.is-feature .category-bento-title {
  max-width: 14ch;
  font-size: clamp(26px, 2.6vw, 34px);
}

.category-bento-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 4px;
  min-height: 40px;
  padding: 10px 18px;
  border-radius: 8px;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  transition: background-color 0.25s ease;
}

.category-bento-card:hover .category-bento-btn {
  background: #D4550A;
}

.category-bento-media {
  position: relative;
  z-index: 1;
  flex: 0 0 60%;
  min-height: 170px;
  align-self: stretch;
  pointer-events: none;
}

.category-bento-card.is-tl .category-bento-media,
.category-bento-card.is-bl .category-bento-media {
  margin: -22px 0 -22px -20px;
}

.category-bento-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: transform 0.45s ease;
}

.category-bento-card:hover .category-bento-media img {
  transform: scale(1.05);
}

.category-bento-card.is-feature .category-bento-media {
  flex: 1 1 auto;
  width: calc(100% + 56px);
  max-width: none;
  min-height: 280px;
  margin: 16px -28px 0;
  border-radius: 0;
}

.category-bento-card.is-feature .category-bento-media img {
  object-position: center bottom;
}

@media (max-width: 991.98px) {
  .category-bento {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    min-height: 0;
  }

  .category-bento-card.is-feature {
    grid-column: 1 / -1;
    grid-row: auto;
    min-height: 420px;
    order: -1;
  }

  .category-bento-card.is-tl,
  .category-bento-card.is-bl,
  .category-bento-card.is-tr,
  .category-bento-card.is-br {
    grid-column: auto;
    grid-row: auto;
  }

  .category-bento-card.is-all {
    grid-column: 1 / -1;
    grid-row: auto;
    min-height: 320px;
    order: 10;
  }
}

@media (max-width: 767.98px) {
  .category-bento {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .category-bento-bottom {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 16px;
  }

  .category-bento-card,
  .category-bento-card.is-tl,
  .category-bento-card.is-bl,
  .category-bento-card.is-tr,
  .category-bento-card.is-br,
  .category-bento-card.category-bento-wide,
  .category-bento-card.category-bento-wide.is-left,
  .category-bento-card.category-bento-wide.is-right {
    flex-direction: row;
    text-align: left;
    min-height: 190px;
    padding: 20px 18px 0 18px;
  }

  .category-bento-card.category-bento-wide.is-left .category-bento-copy {
    align-items: flex-start;
  }

  .category-bento-card.category-bento-wide.is-left .category-bento-media {
    margin: -20px -18px 0 0;
  }

  .category-bento-card.is-tl .category-bento-copy,
  .category-bento-card.is-bl .category-bento-copy {
    align-items: flex-start;
  }

  .category-bento-card.is-feature {
    min-height: 380px;
    padding: 28px 22px 0;
  }

  .category-bento-title {
    max-width: none;
  }

  .category-bento-media {
    flex: 0 0 42%;
    width: 42%;
    max-width: 150px;
  }

  .category-bento-area .category-bento-intro {
    margin-bottom: 28px;
  }
}

/*======================
Careers — home colors
========================*/
.career-intro-area {
  background: #ffffff;
  color: #000000;
}

.career-intro-area .about-kicker,
.career-intro-area .mfg-showcase-title,
.career-intro-area .mfg-showcase-text {
  color: #000000;
}

.career-intro-area .mfg-showcase-link {
  color: #16442E;
}

.career-intro-area .mfg-showcase-link:hover {
  color: #FC6D0F;
}

.career-intro-area .mfg-showcase-visual {
  background: #ffffff;
}

.career-why-area {
  background: #ffffff;
}

.career-why-area .about-kicker,
.career-vacancies-area .about-kicker {
  color: #000000;
}

.career-vacancies-area {
  background: #ffffff !important;
  color: #000000;
}

.career-vacancies-area .about-display-title .title-outline,
.career-why-area .about-display-title .title-outline {
  color: #FC6D0F;
  -webkit-text-fill-color: #FC6D0F;
}

.career-vacancies-area .about-display-title .title-solid,
.career-why-area .about-display-title .title-solid,
.career-vacancies-area .about-lead,
.career-why-area .about-lead {
  color: #000000;
  -webkit-text-fill-color: #000000;
}

.career-filter {
  margin: 0 0 28px;
  padding: 18px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.career-filter-row {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.8fr) auto;
  gap: 12px;
  align-items: center;
}

.career-filter .form-control,
.career-filter .form-select {
  min-height: 48px;
  border: 1px solid rgba(51, 46, 46, 0.16);
  border-radius: 999px;
  background: #ffffff;
  padding: 10px 18px;
  color: #111111;
}

.career-filter-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border: none;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.career-filter-submit:hover {
  background: #D4550A;
  transform: translateY(-1px);
}

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

.career-job-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 26px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.16);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.career-job-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

.career-job-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.career-job-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1.5px solid #16442E;
  background: #ffffff;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.career-job-num {
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #000000;
}

.career-job-title {
  margin: 0 0 12px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(20px, 2.2vw, 26px);
  font-weight: 800;
  line-height: 1.2;
}

.career-job-title a {
  color: #111111;
  text-decoration: none;
}

.career-job-title a:hover {
  color: #FC6D0F;
}

.career-job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-bottom: 12px;
  font-size: 13px;
  font-weight: 600;
  color: #555555;
}

.career-job-meta i {
  color: #FC6D0F;
  margin-right: 6px;
}

.career-detail-meta {
  margin-top: 18px;
  justify-content: center;
}

.career-job-excerpt {
  margin: 0 0 20px;
  flex: 1;
  font-size: 15px;
  line-height: 1.65;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.career-job-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  align-self: flex-start;
  min-height: 44px;
  padding: 11px 22px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.career-job-cta i {
  font-size: 12px;
  transition: transform 0.25s ease;
}

.career-job-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.career-job-cta:hover i {
  transform: translateX(3px);
}

.career-empty {
  text-align: center;
  padding: 48px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.career-empty p {
  margin: 0 0 16px;
  font-size: 16px;
  color: #1a1a1a;
}

.career-pagination ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
}

.career-pagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(51, 46, 46, 0.16);
  background: #ffffff;
  color: #111111;
  font-weight: 700;
  text-decoration: none;
}

.career-pagination a.is-active,
.career-pagination a:hover {
  background: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
}

.career-detail-area {
  background: #ffffff !important;
}

.career-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: clamp(24px, 3.5vw, 40px);
  align-items: start;
  width: 100%;
  max-width: 100%;
}

.career-detail-copy {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  background: #ffffff;
  border-radius: 22px;
  padding: clamp(24px, 3vw, 36px);
  border: 1px solid rgba(51, 46, 46, 0.14);
}

.career-detail-copy .product-detail-title {
  color: #111111;
  word-break: break-word;
}

.career-detail-copy .about-kicker,
.career-apply-panel .about-kicker {
  display: inline-block;
  margin-bottom: 12px;
  color: #000000;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.career-detail-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 24px;
}

.career-detail-tags li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  padding: 4px 12px;
  border-radius: 999px;
  border: 1.5px solid #16442E;
  background: #ffffff;
  color: #111111;
  font-size: 12px;
  font-weight: 700;
}

.career-detail-tags li i {
  color: #FC6D0F;
}

.career-detail-block {
  margin-bottom: 0;
  padding-top: 8px;
  min-width: 0;
  max-width: 100%;
}

.career-detail-block .mfg-showcase-title {
  margin-bottom: 14px;
  color: #111111;
}

.career-richtext {
  font-size: 15.5px;
  line-height: 1.75;
  color: #1a1a1a;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-wrap: break-word;
  word-break: break-word;
  white-space: normal;
}

.career-richtext * {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}

.career-richtext h2,
.career-richtext h3 {
  margin: 22px 0 10px;
  font-family: var(--lc-ff-heading);
  font-weight: 800;
  color: #000000;
  line-height: 1.25;
}

.career-richtext h2 {
  font-size: clamp(22px, 2.4vw, 28px);
}

.career-richtext h3 {
  font-size: clamp(18px, 2vw, 22px);
  color: #000000 !important;
}

.career-richtext p {
  margin-bottom: 12px;
}

.career-richtext ul,
.career-richtext ol {
  padding-left: 1.2em;
  margin: 0 0 14px;
}

.career-richtext li {
  margin-bottom: 8px;
}

.career-apply-panel {
  min-width: 0;
  max-width: 100%;
  padding: 28px 26px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  position: sticky;
  top: 110px;
}

.career-apply-panel .mfg-showcase-title {
  color: #111111;
}

.career-apply-panel .mfg-showcase-text {
  color: #1a1a1a;
}

.career-apply-note {
  margin-bottom: 20px !important;
}

.career-upload {
  position: relative;
}

.career-upload-input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
}

.career-upload-label {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 84px;
  padding: 14px 16px;
  border: 1.5px dashed rgba(252, 109, 15, 0.55);
  border-radius: 16px;
  background: #F6E8DA;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.career-upload:hover .career-upload-label,
.career-upload-input:focus+.career-upload-label {
  border-color: #FC6D0F;
  background: #fff7f0;
}

.career-apply-form .form-control,
.career-apply-form .form-select {
  background: #ffffff;
}

.career-upload-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #FC6D0F;
  color: #ffffff;
  font-size: 18px;
  flex-shrink: 0;
}

.career-upload-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.career-upload-text strong {
  font-size: 14px;
  color: #111111;
  word-break: break-all;
}

.career-upload-text small {
  font-size: 12px;
  color: rgba(17, 17, 17, 0.6);
}

.career-apply-form .form-label {
  font-size: 13px;
  font-weight: 700;
  color: #111111;
}

.career-apply-form .form-control,
.career-apply-form .form-select {
  border: 1px solid rgba(51, 46, 46, 0.18);
  border-radius: 12px;
  min-height: 46px;
  background: #ffffff;
}

.career-apply-form textarea.form-control {
  min-height: 110px;
}

.career-apply-form .form-status {
  min-height: 24px;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 600;
}

.career-apply-form .form-status.is-error {
  color: #b42318;
}

.career-apply-form .form-status.is-success {
  color: #16442E;
}

.career-apply-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  padding: 14px 24px;
  border: none;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  cursor: pointer;
  box-shadow: none;
  transition: background-color 0.25s ease, transform 0.25s ease, opacity 0.2s ease;
}

.career-apply-submit i {
  font-size: 13px;
  transition: transform 0.25s ease;
}

.career-apply-submit:hover {
  background: #D4550A;
  color: #ffffff;
  transform: translateY(-1px);
}

.career-apply-submit:hover i {
  transform: translateX(3px);
}

.career-apply-submit:disabled {
  opacity: 0.7;
  cursor: not-allowed;
  transform: none;
}

@media (max-width: 991.98px) {
  .career-filter-row {
    grid-template-columns: 1fr;
  }

  .career-job-grid {
    grid-template-columns: 1fr;
  }

  .career-detail-layout {
    grid-template-columns: 1fr;
  }

  .career-apply-panel {
    position: static;
  }
}

/* Company Profile */
.cp-intro-area {
  background: #ffffff;
  color: #000000;
}

.cp-intro-area .about-kicker,
.cp-intro-area .mfg-showcase-title,
.cp-intro-area .mfg-showcase-text {
  color: #000000;
}

.cp-intro-visual {
  background: #F6E8DA;
}

.cp-intro-visual img {
  object-fit: cover;
}

.cp-facts-area {
  background: #ffffff;
  color: #000000;
}

.cp-facts-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.cp-facts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.cp-fact {
  padding: 26px 24px 24px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.12);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.cp-fact:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
}

.cp-fact-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.cp-fact-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 16px;
}

.cp-fact-num {
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.35);
}

.cp-fact-label {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.cp-fact-value {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
  word-break: break-word;
}

.cp-sales-area {
  background: #ffffff;
  color: #000000;
}

.cp-sales-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.cp-sales-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  max-width: 920px;
  margin: 0 auto;
}

.cp-sales-card {
  padding: 32px 28px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.1);
}

.cp-sales-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.cp-sales-name {
  margin: 0 0 18px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.2;
}

.cp-sales-link {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  color: #1a1a1a !important;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s ease;
}

.cp-sales-link i {
  width: 18px;
  color: #FC6D0F;
}

.cp-sales-link:hover {
  color: #FC6D0F !important;
}

.cp-hours {
  margin: 28px 0 0;
  color: rgba(0, 0, 0, 0.62);
  font-size: 14px;
  line-height: 1.6;
}

.cp-hours span {
  display: inline;
}

.cp-links-area {
  background: #ffffff;
  padding-top: 0 !important;
}

.cp-links-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
}

.cp-links-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.cp-links-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {
  .cp-facts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .cp-sales-grid {
    grid-template-columns: 1fr;
  }

  .cp-links-row {
    flex-direction: column;
  }

  .cp-links-area .featured-products-cta,
  .cp-links-area .quality-cert-btn-light {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .cp-facts-grid {
    grid-template-columns: 1fr;
  }
}

/* Products list page */
.plist-area {
  background: #ffffff;
  color: #000000;
}

.plist-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.plist-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0 0 28px;
}

.plist-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 18px;
  border-radius: 999px;
  border: 1.5px solid rgba(0, 0, 0, 0.14);
  background: #ffffff;
  color: #1a1a1a !important;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.plist-chip:hover {
  border-color: #FC6D0F;
  color: #FC6D0F !important;
}

.plist-chip.is-active {
  border-color: #FC6D0F;
  background: #FC6D0F;
  color: #ffffff !important;
}

.plist-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.plist-count {
  margin: 0;
  color: #4a4a4a;
  font-size: 14.5px;
}

.plist-count strong {
  color: #111111;
  font-weight: 700;
}

.plist-categories-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F !important;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.plist-categories-link i {
  transition: transform 0.2s ease;
}

.plist-categories-link:hover i {
  transform: translateX(3px);
}

.plist-empty {
  padding: 48px 20px;
  color: #4a4a4a;
}

.plist-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.plist-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.plist-area ul.lc-pagination {
  margin-top: 48px;
}

.plist-area .lc-pagination a {
  border-color: #FC6D0F;
  color: #FC6D0F;
  border-radius: 999px;
}

.plist-area .lc-pagination .active a,
.plist-area .lc-pagination a:hover {
  background-color: #FC6D0F;
  color: #ffffff;
}

.plist-area .product-card-soft {
  background: #f6f6f6;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.plist-area .product-card-soft:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.06);
}

@media (max-width: 575.98px) {
  .plist-toolbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .plist-filters {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
    -webkit-overflow-scrolling: touch;
  }

  .plist-chip {
    flex: 0 0 auto;
  }
}

/* Product Categories page */
.pcat-page-area {
  background: #ffffff;
  color: #000000;
}

.pcat-page-area .about-display-title .title-outline {
  color: #fc6d0f;
}

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

.pcat-card {
  min-height: 240px;
  grid-column: auto;
  grid-row: auto;
}

.pcat-card.is-left {
  flex-direction: row-reverse;
  text-align: right;
}

.pcat-card.is-left .category-bento-copy {
  align-items: flex-end;
}

.pcat-card.is-left .category-bento-media {
  margin: -9px 0 -3px -10px;
}

.pcat-card.is-right {
  flex-direction: row;
  text-align: left;
}

.pcat-card.is-right .category-bento-media {
  margin: -22px -20px -22px 0;
}

.pcat-card .category-bento-title {
  max-width: 16ch;
  font-size: clamp(24px, 2.4vw, 32px);
}

.pcat-card .category-bento-media {
  flex: 0 0 46%;
  width: 46%;
  max-width: 280px;
  min-height: 180px;
}

.pcat-card-text {
  margin: 0;
  max-width: 28em;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.pcat-card.is-left .pcat-card-text {
  text-align: right;
}

.pcat-empty {
  padding: 40px 20px;
  color: #4a4a4a;
}

.pcat-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 40px;
}

.pcat-page-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.pcat-page-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {
  .pcat-grid {
    grid-template-columns: 1fr;
  }

  .pcat-card.is-left,
  .pcat-card.is-right {
    flex-direction: row;
    text-align: left;
  }

  .pcat-card.is-left .category-bento-copy,
  .pcat-card.is-right .category-bento-copy {
    align-items: flex-start;
  }

  .pcat-card.is-left .pcat-card-text {
    text-align: left;
  }

  .pcat-card.is-left .category-bento-media,
  .pcat-card.is-right .category-bento-media {
    margin: -22px -20px -22px 0;
  }
}

@media (max-width: 575.98px) {
  .pcat-card {
    flex-direction: column !important;
    text-align: center !important;
    min-height: 0;
    padding: 24px 20px 0;
  }

  .pcat-card .category-bento-copy {
    align-items: center !important;
    width: 100%;
  }

  .pcat-card .category-bento-title {
    max-width: 14ch;
  }

  .pcat-card-text {
    text-align: center !important;
  }

  .pcat-card .category-bento-media {
    flex: 1 1 auto;
    width: calc(100% + 40px);
    max-width: none;
    min-height: 200px;
    margin: 12px -20px 0 !important;
  }

  .pcat-actions {
    flex-direction: column;
  }

  .pcat-page-area .featured-products-cta,
  .pcat-page-area .quality-cert-btn-light {
    width: 100%;
  }
}

/* Services pages */
.svc-intro-area {
  background: #ffffff;
  color: #000000;
}

.svc-intro-area .about-kicker,
.svc-intro-area .mfg-showcase-title,
.svc-intro-area .mfg-showcase-text {
  color: #000000;
}

.svc-intro-area .mfg-showcase-link {
  color: #FC6D0F;
}

.svc-intro-area .mfg-showcase-link:hover {
  color: #D4550A;
}

.svc-intro-visual {
  background: #F6E8DA;
}

.svc-intro-visual img {
  object-fit: cover;
}

.svc-detail-abbr {
  margin: -6px 0 14px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.svc-list-area {
  background: #F7F4EF;
  color: #000000;
}

.svc-list-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.svc-bento {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.svc-tile {
  position: relative;
  grid-column: span 4;
  display: flex;
  flex-direction: column;
  min-height: 240px;
  padding: 28px 24px 24px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.12);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.svc-tile.is-feature {
  grid-column: span 8;
  min-height: 280px;
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 10px 28px rgba(252, 109, 15, 0.08);
}

.svc-tile:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
  border-color: rgba(252, 109, 15, 0.4);
  color: inherit;
}

.svc-tile-num {
  position: absolute;
  right: 18px;
  top: 18px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.03em;
  color: rgba(0, 0, 0, 0.06);
  pointer-events: none;
}

.svc-tile.is-feature .svc-tile-num {
  color: rgba(252, 109, 15, 0.12);
}

.svc-tile-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 18px;
}

.svc-tile-name {
  position: relative;
  z-index: 1;
  margin-bottom: 6px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 800;
  line-height: 1.2;
  color: #111111;
}

.svc-tile.is-feature .svc-tile-name {
  font-size: clamp(28px, 3vw, 40px);
}

.svc-tile-sub {
  position: relative;
  z-index: 1;
  margin-bottom: 10px;
  color: #FC6D0F;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.svc-tile-text {
  position: relative;
  z-index: 1;
  margin-bottom: 18px;
  max-width: 34em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.6;
}

.svc-tile-go {
  position: relative;
  z-index: 1;
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.svc-tile-go i {
  transition: transform 0.2s ease;
}

.svc-tile:hover .svc-tile-go i {
  transform: translateX(3px);
}

/* Services — Wana-style offer grid */
.svc-offer-area {
  background: #ffffff;
  color: #000000;
}

.svc-offer-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.svc-offer-intro {
  margin-bottom: 40px;
}

.svc-offer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.svc-offer-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 32px 28px 28px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.12);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.svc-offer-card:hover {
  transform: translateY(-4px);
  border-color: rgba(252, 109, 15, 0.35);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
}

.svc-offer-label {
  display: inline-block;
  margin-bottom: 14px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.svc-offer-headline {
  margin: 0 0 14px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(22px, 2.2vw, 28px);
  font-weight: 800;
  line-height: 1.25;
}

.svc-offer-text {
  margin: 0 0 22px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.7;
  flex: 1 1 auto;
}

.svc-offer-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  color: #FC6D0F !important;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.svc-offer-link i {
  transition: transform 0.2s ease;
}

.svc-offer-card:hover .svc-offer-link i {
  transform: translateX(3px);
}

.svc-offer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 40px;
}

.svc-offer-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.svc-offer-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {
  .svc-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .svc-offer-grid {
    grid-template-columns: 1fr;
  }

  .svc-offer-actions {
    flex-direction: column;
  }

  .svc-offer-area .featured-products-cta,
  .svc-offer-area .quality-cert-btn-light {
    width: 100%;
  }
}

/* Service detail — same offer UI */
.svc-detail-hero {
  background: #ffffff;
  color: #000000;
}

.svc-detail-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: 40px;
  align-items: center;
}

.svc-detail-hero-title {
  margin: 0 0 14px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(28px, 3.4vw, 42px);
  font-weight: 800;
  line-height: 1.2;
}

.svc-detail-hero-copy .svc-offer-text {
  flex: 0 1 auto;
  max-width: 40em;
}

.svc-detail-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 8px;
}

.svc-detail-hero-media {
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(51, 46, 46, 0.1);
  background: #F7F4EF;
  aspect-ratio: 4 / 3;
}

.svc-detail-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.svc-definition-offer {
  max-width: 860px;
  margin: 0 auto;
}

.svc-definition-offer .svc-definition-more,
.svc-definition-offer .svc-offer-text+.svc-offer-text {
  margin-top: 14px;
}

a.svc-offer-card-link {
  text-decoration: none;
  color: inherit;
}

a.svc-offer-card-link:hover {
  color: inherit;
}

.svc-cat-offer-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.svc-split-area .svc-offer-card .svc-offer-headline {
  margin-bottom: 18px;
}

.svc-split-area .svc-offer-card .svc-split-list {
  margin-top: 0;
}

@media (max-width: 991.98px) {
  .svc-detail-hero-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .svc-detail-hero-media {
    order: -1;
    max-width: 520px;
  }

  .svc-cat-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .svc-detail-hero-actions {
    flex-direction: column;
  }

  .svc-detail-hero-actions .featured-products-cta,
  .svc-detail-hero-actions .quality-cert-btn-light {
    width: 100%;
  }

  .svc-cat-offer-grid {
    grid-template-columns: 1fr;
  }
}

.svc-cta-area {
  background: #ffffff;
}

.svc-cta-panel {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 36px 40px;
  border-radius: 28px;
  background: #F7F4EF;
  border: 1px solid rgba(51, 46, 46, 0.1);
}

.svc-cta-copy .about-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.svc-cta-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 800;
  line-height: 1.2;
}

.svc-cta-text {
  margin: 0;
  max-width: 36em;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.svc-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.svc-cta-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.svc-cta-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.svc-definition-area {
  background: #ffffff;
}

.svc-definition-block {
  max-width: 860px;
  margin: 0 auto;
  padding: 36px 40px;
  border-radius: 24px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.1);
  text-align: center;
}

.svc-definition-block .about-kicker {
  display: inline-block;
  margin-bottom: 14px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.svc-definition-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 17px;
  line-height: 1.7;
}

.svc-definition-text.svc-definition-more {
  margin-top: 14px;
}

.svc-points-area,
.svc-categories-area,
.svc-process-area,
.svc-support-area,
.svc-features-area,
.svc-related-area {
  background: #ffffff;
  color: #000000;
}

.svc-points-area .about-display-title .title-outline,
.svc-categories-area .about-display-title .title-outline,
.svc-process-area .about-display-title .title-outline,
.svc-support-area .about-display-title .title-outline,
.svc-features-area .about-display-title .title-outline,
.svc-related-area .about-display-title .title-outline {
  color: #fc6d0f;
}

.svc-categories-area,
.svc-support-area,
.svc-split-area,
.svc-related-area {
  background: #ffffff;
}

.svc-points-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 20px;
  max-width: 920px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.svc-point {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 18px;
  border-radius: 16px;
  background: #F7F4EF;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.55;
}

.svc-point i {
  margin-top: 3px;
  color: #FC6D0F;
}

.svc-cat-grid,
.svc-support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.svc-cat-card,
.svc-support-card {
  position: relative;
  padding: 24px 22px 22px;
  border-radius: 20px;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.1);
}

.svc-cat-num,
.svc-support-num {
  display: block;
  margin-bottom: 10px;
  font-family: var(--lc-ff-heading);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #FC6D0F;
}

.svc-cat-text,
.svc-support-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.65;
}

.svc-process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.svc-process-card {
  padding: 26px 22px 24px;
  border-radius: 22px;
  background: #F7F4EF;
  border: 1px solid rgba(51, 46, 46, 0.08);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.svc-process-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.3);
}

.svc-process-num {
  display: block;
  margin-bottom: 12px;
  font-family: var(--lc-ff-heading);
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  color: rgba(252, 109, 15, 0.85);
}

.svc-process-title {
  margin: 0 0 8px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.svc-process-text {
  margin: 0;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.65;
}

.svc-split-area {
  background: #ffffff;
}

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

.svc-split-card {
  padding: 32px 28px;
  border-radius: 24px;
  background: #F7F4EF;
  border: 1px solid rgba(51, 46, 46, 0.1);
}

.svc-split-card.is-accent {
  background: #ffffff;
  border-color: rgba(252, 109, 15, 0.28);
  box-shadow: 0 10px 28px rgba(252, 109, 15, 0.06);
}

.svc-split-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.svc-split-title {
  margin: 0 0 18px;
  color: #111111;
  font-family: var(--lc-ff-heading);
  font-size: 24px;
  font-weight: 800;
}

.svc-split-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.svc-split-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  color: #1a1a1a;
  font-size: 15px;
  line-height: 1.55;
}

.svc-split-list li:last-child {
  margin-bottom: 0;
}

.svc-split-list i {
  margin-top: 3px;
  color: #FC6D0F;
}

.svc-features-area .usp-card {
  background: #ffffff;
}

.svc-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.svc-related-card {
  display: flex;
  flex-direction: column;
  min-height: 220px;
  padding: 26px 22px 22px;
  border-radius: 22px;
  background: #F7F4EF;
  border: 1px solid rgba(51, 46, 46, 0.1);
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.svc-related-card:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.35);
  color: inherit;
}

.svc-related-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  border-radius: 50%;
  background: rgba(252, 109, 15, 0.14);
  color: #FC6D0F;
  font-size: 16px;
}

.svc-related-name {
  margin-bottom: 8px;
  font-family: var(--lc-ff-heading);
  font-size: 20px;
  font-weight: 800;
  color: #111111;
}

.svc-related-text {
  margin-bottom: 16px;
  color: #1a1a1a;
  font-size: 14.5px;
  line-height: 1.6;
}

.svc-related-go {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
}

.svc-related-actions {
  margin-top: 36px;
}

.svc-related-area .featured-products-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 26px;
  border-radius: 999px;
  background: #FC6D0F;
  color: #ffffff !important;
  font-family: var(--lc-ff-heading);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.svc-related-area .featured-products-cta:hover {
  background: #D4550A;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 991.98px) {

  .svc-tile,
  .svc-tile.is-feature {
    grid-column: span 6;
    min-height: 220px;
  }

  .svc-cat-grid,
  .svc-support-grid,
  .svc-process-grid,
  .svc-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {

  .svc-tile,
  .svc-tile.is-feature {
    grid-column: span 12;
  }

  .svc-cta-panel {
    padding: 28px 22px;
  }

  .svc-cta-actions {
    width: 100%;
    flex-direction: column;
  }

  .svc-cta-area .featured-products-cta,
  .svc-cta-area .quality-cert-btn-light {
    width: 100%;
  }

  .svc-points-grid,
  .svc-split-grid,
  .svc-cat-grid,
  .svc-support-grid,
  .svc-process-grid,
  .svc-related-grid {
    grid-template-columns: 1fr;
  }

  .svc-definition-block {
    padding: 28px 22px;
  }
}

/* Blog listing and article */
.blog-page .blog-feed,
.blog-page .blog-details-area {
  background: #ffffff;
  color: #1a1a1a;
}

.blog-article .about-page-hero-intro {
  max-width: 820px;
}

.blog-article .about-page-hero-title {
  font-size: clamp(32px, 4vw, 52px);
  text-transform: none;
  letter-spacing: -0.03em;
  line-height: 1.12;
}

.blog-feed-head {
  max-width: 640px;
  margin-bottom: 28px;
}

.blog-page .about-kicker {
  display: block;
  margin-bottom: 10px;
  font-family: var(--lc-ff-heading);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #000000;
}

.blog-feed-title {
  margin: 0 0 10px;
  font-family: var(--lc-ff-heading);
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 800;
  line-height: 1.1;
  color: #111111;
}

.blog-feed-title .title-outline {
  color: #FC6D0F;
}

.blog-feed-title .title-solid {
  color: #111111;
}

.blog-feed-count,
.blog-empty {
  margin: 0;
  color: #4a4a4a;
  font-size: 16px;
}

.blog-empty {
  padding: 28px 0 8px;
}

.blog-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
}

.blog-filter {
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 999px;
  background: #ffffff;
  color: #111111;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.blog-filter:hover,
.blog-filter.is-active {
  background: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
}

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

.bcard {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.bcard:hover {
  transform: translateY(-3px);
  border-color: rgba(252, 109, 15, 0.4);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.06);
}

.bcard-media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  background: #F6E8DA;
  overflow: hidden;
}

.bcard-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.bcard:hover .bcard-media img {
  transform: scale(1.04);
}

.bcard-tag {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 1;
  max-width: calc(100% - 28px);
  padding: 6px 10px;
  border-radius: 999px;
  background: #ffffff;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bcard-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px 20px 18px;
}

.bcard-title {
  margin: 0 0 10px;
  font-family: var(--lc-ff-heading);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.bcard-title a {
  color: inherit;
  text-decoration: none;
}

.bcard-title a:hover {
  color: #FC6D0F;
}

.bcard-excerpt {
  margin: 0 0 16px;
  color: #4a4a4a;
  font-size: 15px;
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bcard-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(51, 46, 46, 0.12);
}

.bcard-date {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #111111;
  font-size: 14px;
  font-weight: 700;
}

.bcard-date i {
  color: #FC6D0F;
}

.bcard-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #FC6D0F;
  font-family: var(--lc-ff-heading);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.bcard-more:hover {
  color: #D4550A;
}

.blog-page .lc-pagination a {
  border-color: rgba(51, 46, 46, 0.18);
  color: #111111;
}

.blog-page .lc-pagination .active a,
.blog-page .lc-pagination a:hover {
  background: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
}

.blog-page .blog-details .post-thumb {
  border-radius: 22px;
  background: #F6E8DA;
}

.blog-page .blog-details .post-thumb img {
  height: auto;
  max-height: 460px;
  object-fit: cover;
}

.blog-page .post-thumb .tag-chip {
  border: 0;
  border-radius: 999px;
  background: #ffffff;
  color: #FC6D0F;
  box-shadow: none;
  transform: none;
}

.blog-page .post-meta {
  color: #111111;
  font-weight: 700;
}

.blog-page .post-meta i,
.blog-page .post-meta a {
  color: #FC6D0F;
}

.blog-page .post-meta a:hover {
  color: #D4550A;
}

.blog-page .post-content a {
  color: #FC6D0F;
}

.blog-page .blog-sidebar .widget {
  background: #ffffff;
  border: 1px solid rgba(51, 46, 46, 0.14);
  border-radius: 22px;
}

.blog-page .blog-sidebar .widget-title {
  color: #111111;
}

.blog-page .widget-cats li a:hover,
.blog-page .widget-post .title a:hover {
  color: #FC6D0F;
}

.blog-page .lc-btn-dark {
  background: #FC6D0F;
  border-color: #FC6D0F;
  color: #ffffff;
}

.blog-page .lc-btn-dark:hover {
  background: #D4550A;
  border-color: #D4550A;
  color: #ffffff;
}

@media (max-width: 991.98px) {
  .blog-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 575.98px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }

  .blog-article .about-page-hero-title {
    font-size: clamp(28px, 8vw, 36px);
  }
}