/*
Theme Name:AsiaFnb
Theme URI:Author:ASIA FOOD
Author URI:Description:Custom WooCommerce Theme for Asia Food and Beverage. Built with clean CSS and fast load times.
Version:1.0.0
License:License URI:Text Domain:asiafnb
Tags:custom-background,custom-logo,custom-menu,featured-images,threaded-comments,translation-ready
*/

:root {
  --asia-green:#43B649;
  --asia-green-dark:#1F7A3A;
  --asia-orange:#F26522;
  --asia-orange-dark:#D94E12;
  --asia-white:#FFFFFF;
  --asia-soft-green:#F3FAF4;
  --asia-cream:#FFF7EF;
  --asia-text:#1F2933;
  --asia-muted:#6B7280;
  --asia-border:#E5E7EB;
  --wc-overlay:rgba(26,77,46,0.6);
  --wc-cream:#FAF7F2;
  --wc-amber:#E8A020;
  --wc-dark-green:#1A4D2E;
  --cert-hero-overlay:rgba(26,77,46,0.7);
}

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

body {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;
  color:#333;
  font-size:16px;
  background-color:#f9f9f9;
  overflow-x:hidden;
}

a {
  color:inherit;
  text-decoration:none;
  transition:.3s;
}

.article-content li,
p {
  margin-bottom:10px;
}

.container {
  max-width:1350px;
  width:100%;
  margin:0 auto;
  padding:0 20px;
}

.has-submenu,
.relative,
.section-header {
  position:relative;
}

.eyebrow,
.hero-bottom-text h2,
.nav-list>li>a {
  text-transform:uppercase;
}

.hero-content,
.text-center {
  text-align:center;
}

.process-card .process-image,
.process-card .process-image:before {
  mask:right 0 bottom calc(var(--size-corner) + var(--border-radius)) var(--_border-right-left),right calc(var(--size-corner) + var(--border-radius)) bottom 0 var(--_border-right-left),radial-gradient(var(--size-corner) at 100% 100%,#0000 99%,#000 101%) calc(-1 * var(--border-radius)) calc(-1 * var(--border-radius)) no-repeat,conic-gradient(from 90deg at calc(100% - var(--size-corner) - 2 * var(--border-radius)) calc(100% - var(--size-corner) - 2 * var(--border-radius)),#0000 25%,#000 0);
}

#footer,
.header-top {
  background-color:#43b649e8;
}

.brands-card,
.categories-item,
.cta-box,
.default-btn,
.header-top,
.hero-video,
.news-card-image,
.process-card,
.service-card,
.sub-menu,
.why-choose-item {
  overflow:hidden;
}

.cert-pill,
.quote-modal {
  backdrop-filter:blur(5px);
}

.form-control,
.search-form input,
.sort-select {
  font-family:inherit;
}

header {
  position:sticky;
  top:0;
  z-index:999;
  transition:transform .3s ease-in-out;
}

header.scrolled {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:1000;
  box-shadow:0 4px 15px rgba(0,0,0,.05);
}

.header-top {
  color:#fff;
  transition:max-height .4s cubic-bezier(.25,1,.5,1),opacity .3s;
  max-height:100px;
}

.header-main,
.header-main .logo,
.header-main .logo img {
  transition:.4s cubic-bezier(.25,1,.5,1);
}

header.scrolled .header-top {
  max-height:0;
  opacity:0;
}

.header-top a,
.section-quality h2 {
  color:var(--asia-white);
}

.content-block h4,
.header-top a:hover,
.hero-bottom-text h2,
.nav-list>li>a,
.product-content h3 a {
  color:var(--asia-green-dark);
}

.header-top-inner {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:15px;
  font-weight:300;
  padding:8px;
}

.header-main {
  background-color:#fffffff0;
  box-shadow:0 0 0 transparent;
}

.cat-products,
.header-main:hover,
.section-brands,
.section-products,
.sub-menu {
  background-color:#fff;
}

.faq-question,
.header-main-inner {
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.header-main .logo {
  padding:2px 0;
}

.header-main .logo a,
.quote-modal.active {
  display:flex;
}

.header-main .logo img {
  height:82px;
}

header.scrolled .header-main {
  background-color:var(--asia-white);
  box-shadow:0 4px 20px rgba(0,0,0,.08);
}

header.scrolled .header-main .logo {
  padding:6px 0;
}

header.scrolled .header-main .logo img {
  height:55px;
}

header.scrolled .nav-list>li>a {
  padding:20px 0;
}

.main-nav {
  display:flex;
  margin:0 60px 0 auto;
}

.nav-list {
  list-style:none;
  display:flex;
  gap:35px;
  align-items:center;
}

.nav-list>li>a {
  font-weight:600;
  font-size:18px;
  color: var(--asia-green);
  padding:30px 0;
  display:flex;
  align-items:center;
  gap:5px;
}

.nav-list>li>a:hover,
.news-card-body a:hover {
  color:var(--asia-orange);
}

.nav-list>li>a .arrow {
  font-size:12px;
}

.sub-menu {
  position:absolute;
  top:100%;
  left:0;
  border-top:2px solid var(--asia-green);
  list-style:none;
  min-width:220px;
  box-shadow:0 10px 6px rgb(0 0 0 / 45%);
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:.3s;
  border-radius:0 0 10px 10px;
  z-index:1000;
}

.has-submenu:hover .sub-menu {
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.sub-menu li a {
  display:block;
  padding:12px 20px;
  color:var(--asia-text);
  border-bottom:1px solid var(--asia-border);
  transition:background-color .2s;
  font-size:15px;
}

.comparison-table tr:last-child td,
.data-card ul li:last-child,
.matrix-table tr:last-child td,
.sub-menu li:last-child a {
  border-bottom:none;
}

.sub-menu li a:hover {
  background-color:var(--asia-soft-green);
  color:var(--asia-green);
}

.mobile-menu-toggle {
  display:none;
  flex-direction:column;
  justify-content:space-between;
  width:30px;
  height:21px;
  margin-right: 20px;
  cursor:pointer;
  z-index:1001;
}

.mobile-menu-toggle span {
  display:block;
  height:3px;
  width:100%;
  background-color:var(--asia-white);
  border-radius:3px;
  transition:.3s;
}

.mobile-menu-toggle.active span:first-child {
  transform:translateY(9px) rotate(45deg);
  background-color:var(--asia-text);
}

.mobile-menu-toggle.active span:nth-child(2) {
  opacity:0;
}

.mobile-menu-toggle.active span:nth-child(3) {
  transform:translateY(-9px) rotate(-45deg);
  background-color:var(--asia-text);
}

.hero-video {
  position:relative;
  width:100%;
  height:100vh;
  min-height:600px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:-128px;
}

.hero-bg-video {
  position:absolute;
  top:50%;
  left:50%;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:translate(-50%,-50%);
  z-index:1;
}

.hero-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgb(0 0 0 / 3%) 0,rgba(18,53,36,.8) 100%);
  z-index:2;
}

.default-btn,
.hero-content {
  position:relative;
  color:#fff;
}

#footer,
.section-why-choose {
  background-image:url(https://ap-agrile.myshopify.com/cdn/shop/files/h1-bg02.png);
  background-repeat:no-repeat;
  background-size:contain;
  background-position:bottom center;
}

.hero-content {
  z-index:3;
  max-width:1000px;
  padding:0 20px;
  text-shadow:0 2px 15px rgba(0,0,0,.6);
}

.hero-content .hero-sub-title {
  display:inline-block;
  border:1px solid rgba(255,255,255,.4);
  background:rgba(255,255,255,.15);
  backdrop-filter:blur(4px);
  padding:8px 20px;
  border-radius:30px;
  color:#fff;
  line-height:24px;
  font-weight:500;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:1px;
}

.about-hero h1,
.hero-content h1 {
  font-size:60px;
  line-height:1.2;
  margin-bottom:20px;
  margin-top:20px;
  font-weight:700;
  letter-spacing:-.5px;
}

.hero-content p {
  font-size:18px;
  margin-bottom:40px;
  font-weight:300;
  opacity:.95;
  line-height:1.6;
}

.default-btn {
  display:inline-block;
  padding:16px 35px;
  background-color:var(--asia-green);
  text-decoration:none;
  border-radius:35px;
  font-weight:600;
  text-shadow:none;
  -webkit-transition:.4s;
  transition:.4s;
  border:none;
  cursor: pointer;
  z-index:1;
}

.default-btn::before,
.primary-btn {
  background-color:var(--asia-orange);
}

.default-btn::before {
  position:absolute;
  content:"";
  left:0;
  top:0;
  height:100%;
  width:0%;
  -webkit-transition:.3s;
  transition:.3s;
  z-index:-1;
  border-radius:inherit;
}

.about-image img,
.b2b-quote-form .form-group:nth-last-child(2),
.default-btn:hover::before,
.w-100 {
  width:100%;
}

.about-bullets li i,
.brands-card,
.mission-box {
  background-color:var(--asia-soft-green);
}

.custom-checkbox input:checked~.checkmark,
.primary-btn::before {
  background-color:var(--asia-green);
}

.hero-bottom-slider {
  position:absolute;
  bottom:40px;
  left:0;
  width:100%;
  padding:0 10%;
  z-index:99;
}

.certifications-slider .swiper-wrapper,
.hero-bottom-slider .swiper-wrapper {
  transition-timing-function:linear !important;
}

.hero-bottom-slider .swiper-slide {
  display:flex;
  align-items:center;
  justify-content:space-around;
}

.hero-bottom-text h2 {
  font-size:40px;
  line-height:1.1em;
  -webkit-text-stroke-width:1px;
  stroke-width:1px;
  font-weight:700;
  -webkit-text-stroke-color:var(--asia-green);
  stroke:var(--asia-green);
}

.hero-cta {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:20px;
}

.hero-cta button{
	padding: 19px 50px;
}

.section-padding {
  position:relative;
  display:block;
}

.about-inner {
  display:flex;
  align-items:center;
  gap:100px;
}

.about-image,
.about-text,
.form-group.half {
  flex:1;
}

.eyebrow {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--asia-orange);
  font-weight:700;
  letter-spacing:2px;
  font-size:14px;
  margin-bottom:12px;
}

.eyebrow::before {
  content:'';
  display:block;
  width:25px;
  height:2px;
  background-color:var(--asia-orange);
}

.section-header h2 {
  color:var(--asia-green);
  font-weight:700;
  font-size:45px;
  line-height:1.2;
  max-width:900px;
  margin:0 auto 20px;
}

.section-header p {
  max-width:900px;
  margin:0 auto 20px;
  color:var(--asia-muted);
  font-size:16px;
  line-height:1.6;
}

.about-text h2 {
  font-size:40px;
  line-height:1.2;
  color:var(--asia-green-dark);
  margin-bottom:24px;
  font-weight:700;
}

.about-text p {
  color:var(--asia-muted);
  font-size:16px;
  margin-bottom:20px;
  line-height:1.7;
}

.mission-box {
  border-left:4px solid var(--asia-green);
  padding:16px 24px;
  margin:30px 0;
  border-radius:0 8px 8px 0;
}

.mission-box h3 {
  color:var(--asia-green-dark);
  font-size:20px;
  margin-bottom:10px;
}

.mission-box p {
  margin-bottom:0;
  color:var(--asia-text);
  font-style:italic;
  font-size:18px;
}

.about-bullets li,
.categories-content h3,
.widget-categories li,
.widget-filter li {
  margin-bottom:12px;
}

.about-bullets {
  list-style:none;
  margin-top:20px;
}

.about-bullets li {
  display:flex;
  align-items:flex-start;
  gap:12px;
  color:var(--asia-text);
  font-weight:500;
  font-size:16px;
}

.about-bullets li i {
  display:flex;
  align-items:center;
  justify-content:center;
  height:30px;
  width:30px;
  color:var(--asia-green);
  font-size:18px;
  border-radius:50%;
}

.brands-card h3,
.categories-content h3 a {
  color:var(--asia-green-dark);
  text-transform:uppercase;
}

.products-categories {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
}

.categories-item {
  position:relative;
  height:370px;
  border-radius:16px;
}

.categories-content {
  position:absolute;
  bottom:30px;
  left:20px;
  right:20px;
  text-align:left;
  z-index:2;
}

.app-card,
.cat-card,
.cert-box,
.cert-text-box,
.contact-header,
.cta-box,
.form-note,
.opportunity-card,
.page-header,
.product-actions .default-btn,
.products-cta,
.quote-modal-header,
.req-step,
.section-cert-hero,
.service-card,
.snapshot-grid,
.tab-btn,
.trend-item,
.value-item,
.widget-cta {
  text-align:center;
}

.categories-content h3 a {
  font-size:25px;
  font-weight:900;
  text-decoration:none;
  line-height:1.1;
  text-shadow:0 2px 20px rgb(255 255 255),1px 1px 0 rgb(255 255 255);
  letter-spacing:.5px;
}

.categories-content .btn-link {
  color:var(--asia-text);
  font-weight:500;
  font-size:14px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  transition:.3s;
  background:rgba(255,255,255,.65);
  backdrop-filter:blur(4px);
  padding:5px 16px;
  border-radius:30px;
  box-shadow:0 4px 10px rgba(0,0,0,.05);
}

.categories-content .btn-link i {
  color:var(--asia-green);
  font-size:16px;
}

.categories-image {
  width:100%;
  height:100%;
}

.categories-image a {
  display:block;
  position:relative;
  height:100%;
  transition:transform .5s cubic-bezier(.25,1,.5,1);
}

.categories-image a:before {
  position:absolute;
  content:'';
  inset:0;
  background:linear-gradient(180deg,rgb(0 0 0 / 0%) 0,rgb(63 143 15 / 73%) 100%);
  z-index:1;
}

.categories-image img {
  width:100%;
  height:370px;
  object-fit:cover;
  display:block;
}

.categories-item:hover .categories-image a:before {
  background:0 0;
}

.categories-item:hover .categories-image a,
.news-card-image:hover img,
.news-card:hover .news-thumb img,
.product-card:hover .product-thumb img {
  transform:scale(1.05);
}

.products-cta {
  margin-top:40px;
}

.brands-content {
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.brands-card {
  position:relative;
  padding:30px;
  border:1px solid var(--asia-border);
  border-radius:16px;
  transition:.4s;
}

.brands-card:hover {
  box-shadow:0 10px 25px rgba(0,0,0,.08);
  border-color:var(--asia-green);
}

.brands-card:hover::after {
  right:-40px;
  bottom:-40px;
}

.brands-logo img {
  height:80px;
}

.brands-card h3 {
  font-size:22px;
  margin:30px 0 6px;
}

.brands-card span {
  color:var(--asia-orange);
  font-style:italic;
}

.brands-card p {
  color:var(--asia-muted);
  font-size:16px;
  line-height:1.4;
  margin-top:10px;
}

.brands-card a,
.trend-name,
.why-choose-item .icon {
  color:var(--asia-green-dark);
}

.brands-card a {
  display:block;
  font-weight:600;
  margin-top:20px;
  transition:.2s;
}

.brands-card a:hover {
  color:var(--asia-orange);
  transform:translateX(5px);
}

.section-brands,
.section-cta,
.section-opportunity {
  padding-top:0;
}

.why-choose-content {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.why-choose-item {
  position:relative;
  background-color:var(--asia-white);
  border-radius:16px;
  padding:20px 25px;
  border:1px solid var(--asia-border);
  transition:.3s;
}

.service-card:hover,
.why-choose-item:hover {
  transform:translateY(-5px);
  box-shadow:0 10px 25px rgba(0,0,0,.08);
  border-color:var(--asia-green-dark);
}

.service-card:hover .service-icon,
.why-choose-item:hover .icon {
  background-color:var(--asia-green-dark);
  color:var(--asia-white);
  transform:scale(1.1);
}

.why-choose-item .icon {
  display:flex;
  align-items:center;
  justify-content:center;
  background-color:var(--asia-soft-green);
  width:50px;
  height:50px;
  border-radius:14px;
  font-size:25px;
  transition:.3s;
}

.why-choose-item h3 {
  font-size:20px;
  font-weight:500;
  color:var(--asia-text);
  margin:10px 0;
}

.certifications-slider {
  padding:40px 0;
  overflow:hidden;
}

.certifications-slider .swiper-slide {
  display:flex;
  align-items:center;
  justify-content:center;
  height:120px;
  padding:20px;
  background:#fff;
  border:1px solid #eee;
  border-radius:12px;
}

.certifications-slider .swiper-slide img {
  max-width:160px;
  max-height:85px;
  width:auto;
  height:auto;
  object-fit:contain;
  transition:.3s;
}

.certifications-slider .swiper-slide:hover img {
  transform:scale(1.2);
}

.opportunity-content {
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.opportunity-card {
  background-color:var(--asia-soft-green);
  border:1px solid var(--asia-green);
  border-radius:16px;
  padding:20px;
}

.opportunity-card .card-num {
  font-size:28px;
  font-weight:800;
  color:var(--asia-orange);
}

.opportunity-card .card-label {
  font-size:14px;
  margin-top:4px;
  line-height:1.4;
}

.section-opportunity-content h3.sub {
  font-size:16px;
  font-weight:700;
  color:var(--asia-muted);
  letter-spacing:1px;
  text-transform:uppercase;
  margin-bottom:15px;
  margin-top:30px;
}

.section-process .section-header p,
.service-card h3 {
  color:var(--asia-text);
}

.trending-grid {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
}

.trend-item {
  background-color:#fff;
  border:1px solid var(--asia-border);
  border-radius:10px;
  padding:16px;
}

.bg-white,
.news-card {
  background-color:var(--asia-white);
}

.trend-icon {
  font-size:24px;
  margin-top:4px;
}

.trend-icon img {
  height:30px;
}

.trend-name {
  font-size:14px;
  font-weight:700;
  margin-bottom:4px;
}

.trend-note {
  font-size:14px;
  color:var(--asia-muted);
  line-height:1.4;
}

.section-process {
  position:relative;
  background-image:url(../images/whychosse-bg.webp);
  background-position:bottom;
  background-repeat:no-repeat;
  background-size:cover;
}

.section-process:before {
  position:absolute;
  content:'';
  top:0;
  width:100%;
  height:100%;
  inset:0;
  background:linear-gradient(180deg,#fff 0,rgb(32 122 58 / 92%) 100%);
  z-index:2;
}

.cta-box,
.news-card,
.news-card-image,
.process-card,
.process-content-inner,
.service-card {
  position:relative;
}

.process-card .process-step,
.process-card .process-time,
.socical a:hover {
  background-color:var(--asia-green-dark);
}

.section-process .section-header {
  position:relative;
  z-index:9;
}

.process-content-inner {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:20px;
  z-index:9;
}

.process-card {
  transition:.3s ease-in-out;
  height:350px;
  width:166px;
  cursor:pointer;
  --border-radius:21px;
  --size-corner:40px;
  --_border-right-left:/calc(2*var(--border-radius)) calc(2*var(--border-radius)) radial-gradient(#000 70%,#0000 74%) no-repeat;
  border-radius:16px 16px 0;
}

.process-card .process-image {
  height:100%;
}

.process-card .process-image:before {
  position:absolute;
  content:"";
  width:100%;
  height:50%;
  bottom:0;
  left:0;
  opacity:0;
  z-index:1;
  transition:opacity .3s ease-in-out;
  background:linear-gradient(360deg,#0a170b 0,rgba(23,21,10,0) 100%);
  border-radius:16px 16px 0;
}

.process-card .process-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.3s ease-in-out;
}

.process-card .process-step {
  position:absolute;
  bottom:0;
  right:0;
  display:flex;
  justify-content:center;
  align-items:center;
  width:50px;
  height:50px;
  color:var(--asia-white);
  border-radius:50%;
  font-size:20px;
  font-weight:600;
  z-index:9;
}

.process-card .process-time {
  position:absolute;
  top:30px;
  left:35px;
  opacity:0;
  color:var(--asia-white);
  border-radius:100px;
  padding:4px 12px;
  font-size:12px;
  font-weight:600;
}

.process-card .process-content {
  position:absolute;
  bottom:0;
  opacity:0;
  padding:42px;
  transition:opacity .3s ease-in-out;
  text-shadow:0 2px 15px rgba(0,0,0,.6);
  z-index:1;
}

.process-card .process-content h3 {
  font-size:22px;
  margin-bottom:5px;
}

.process-card .process-content p {
  margin:0;
  font-size:16px;
  line-height:1.4;
}

.process-card.hover-effect {
  width:370px;
  transition:.3s ease-in-out;
}

.process-card.hover-effect .process-content,
.process-card.hover-effect .process-image:before {
  opacity:1;
  color:#fff;
}

.dest-node,
.process-card.hover-effect .process-time {
  opacity:1;
}

.section-news .section-header h2 {
  margin:0 0 20px;
}

.news-content {
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr;
  gap:24px;
}

.news-card {
  border:1px solid var(--asia-border);
}

.news-card-image img {
  width:100%;
  max-height:380px;
  object-fit:cover;
  transition:.3s;
}

.news-card-image:nth-child(2) img,
.news-card-image:nth-child(3) img {
  max-height:400px;
}

.news-card-body {
  padding:20px;
}

.news-card-body .news-cat {
  text-transform:uppercase;
  font-weight:600;
  font-size:14px;
  border-radius: 8px;
}

#footer,
.news-card:nth-child(2) h3,
.news-card:nth-child(3) h3 {
  font-size:16px;
}

.news-card-body h3 {
  font-size:20px;
  line-height:1.4;
  margin:10px 0;
}

.news-card-body .time {
  font-size:14px;
  color:var(--asia-muted);
  margin-top:10px;
}

.cta-box {
  padding:72px 80px;
  background-color:var(--asia-green);
  border-radius:20px;
  color:#fff;
}

.cta-box::before {
  content:'';
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:640px;
  height:640px;
  border-radius:50%;
  border:80px solid rgb(244 255 244 / 5%);
}

.cat-card:hover,
.cert-card:hover,
.cert-img-box:hover,
.cert-text-box:hover,
.channel-card:hover,
.news-card:hover,
.reason-card:hover,
.value-item:hover {
  transform:translateY(-5px);
}

.brands-card::after,
.cta-box::after {
  content:'';
  position:absolute;
  right:-60px;
  bottom:-60px;
  width:240px;
  height:240px;
  border-radius:50%;
  background:rgba(242,101,40,.07);
  transition:.4s;
}

.cta-box h2 {
  font-size:35px;
}

.cta-box a:hover,
.cta-box h2 span,
.footer-top a:hover {
  color:var(--asia-orange-dark);
}

.cta-box p {
  font-size:18px;
  margin:10px 0 20px;
}

.cta-box .default-btn:first-child,
.cta-box .primary-btn:hover {
  background-color:var(--asia-green-dark) !important;
  color:var(--asia-white);
}

.cta-box .primary-btn:hover::before {
  background-color:var(--asia-green-dark) !important;
}

.cta-box ul {
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:30px;
  margin-top:30px;
}

#footer {
  color:#fff;
  font-weight:300;
  padding-top:60px;
}

.footer-top {
  display:grid;
  grid-template-columns:4fr 1fr 1fr;
  gap:48px;
  margin-bottom:20px;
}

.footer-top .description,
.share-links {
  display:flex;
  gap:10px;
}

.footer-top .logo {
  height:85px;
}

.footer-top ul li {
  list-style:none;
  padding:4px 0;
}

.footer-top h3 {
  font-weight:600;
  font-size:18px;
  text-transform:uppercase;
}

.brand-footer h3 {
  font-size:24px;
  font-weight:700;
  margin-bottom:2px;
}

.brand-footer p {
  margin-bottom:6px;
}

.brand-footer strong {
  font-weight:600;
}

.brand-footer span {
  display:inline-flex;
  align-items:center;
  padding:3px 10px;
  border-radius:999px;
  background-color:#56aa59;
  font-size:13px;
  line-height:1.2;
  margin-left:10px;
}

.socical,
.socical a {
  align-items:center;
  display:flex;
}

.socical {
  gap:10px;
  margin-top:20px;
}

.socical a {
  justify-content:center;
  width:34px;
  height:34px;
  font-size:15px;
  border:1px solid var(--asia-cream);
  border-radius:8px;
  transition:.3s;
}

.socical a:hover {
  border-color:var(--asia-green-dark);
  color:var(--asia-white);
}

.services-content {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
  margin-top:40px;
}

.service-card {
  background-color:var(--asia-soft-green);
  border:1px solid var(--asia-border);
  padding:40px 30px;
  border-radius:16px;
  transition:.3s;
}

.service-card .service-icon {
  width:70px;
  height:70px;
  background-color:var(--asia-white);
  color:var(--asia-green-dark);
  font-size:32px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 20px;
  box-shadow:0 4px 10px rgba(0,0,0,.05);
  transition:.3s;
}

.service-card h3 {
  font-size:20px;
  font-weight:600;
  margin-bottom:15px;
}

.service-card p {
  color:var(--asia-muted);
  font-size:15px;
  line-height:1.6;
  margin-bottom:0;
}

.footer-bottom {
  border-top:1px solid var(--asia-green);
  padding:20px 0;
}

@media (max-width:1200px) {
  .products-categories,
  .services-content {
    grid-template-columns:repeat(2,1fr);
  }
  .brands-content,
  .footer-top,
  .news-content,
  .opportunity-content,
  .why-choose-content {
    gap:20px;
  }
  .trending-grid {
    grid-template-columns:repeat(3,1fr);
  }
}

@media (max-width:992px) {
  .nav-list>li>a,
  header.scrolled .nav-list>li>a {
    padding:15px 20px;
  }
  body {
    overflow-x:hidden;
  }
  .header-left,
  .header-main .header-cta {
    display:none;
  }
  .about-inner {
    flex-direction:column;
    gap:40px;
  }
  .about-text h2 {
    font-size:32px;
  }
  .mobile-menu-toggle {
    display:flex;
  }
  .main-nav {
    position:fixed;
    top:0;
    right:-100%;
    width:300px;
    height:100vh;
    background-color:var(--asia-white);
    box-shadow:-2px 0 5px rgba(0,0,0,.1);
    transition:right .3s;
    flex-direction:column;
    padding-top:80px;
    padding-bottom:120px;
    z-index:1000;
    overflow-y:auto;
  }
  .nav-list,
  .process-card,
  .process-card.hover-effect {
    width:100%;
  }
  img {
    -webkit-touch-callout:none;
    -webkit-user-drag:none;
    user-select:none;
  }
  .main-nav.active {
    right:0;
    margin:0;
  }
  .nav-list {
    flex-direction:column;
    gap:0;
    align-items:flex-start;
  }
  .nav-list>li {
    width:100%;
    border-bottom:1px solid var(--asia-border);
  }
  .nav-list>li>a {
    color:var(--asia-text);
    display:flex;
    justify-content:space-between;
  }
  .nav-list>li>a:hover {
    background-color:var(--asia-soft-green);
  }
  .sub-menu {
    position:static;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    transform:none;
    display:none;
    background-color:#f9f9f9;
    min-width:100%;
    border-radius:0;
  }
  .has-submenu.active .sub-menu {
    display:block;
  }
  .sub-menu li a {
    padding-left:25px;
  }
  .brands-content,
  .footer-top,
  .news-content,
  .opportunity-content,
  .why-choose-content {
    grid-template-columns:repeat(2,1fr);
  }
  .process-content-inner {
    grid-template-columns:repeat(3,1fr);
  }
}

@media (max-width:768px) {
  html {
    font-size:14px;
  }
  .header-top {
    display:none;
  }
  .header-top-inner {
    flex-direction:column;
    gap:10px;
    text-align:center;
  }
  .header-main {
    background-color:#43b649e8 !important;
  }
  .hero-content h1 {
    font-size:36px;
  }
  .cta-box h2,
  .section-header h2 {
    font-size:28px;
  }
  .about-hero,
  .hero-video {
    min-height:800px;
    margin-top:0 !important;
  }
  .section-padding {
    padding:60px 0;
  }
  .section-certifications {
    padding-bottom:0;
  }
  .brands-content,
  .footer-top,
  .news-content,
  .opportunity-content,
  .process-content-inner,
  .products-categories,
  .services-content,
  .trending-grid,
  .why-choose-content {
    grid-template-columns:1fr;
  }
  .process-card {
    height:250px;
  }
  .process-card .process-content,
  .process-card .process-image:before,
  .process-card .process-time {
    opacity:1;
    color:#fff;
  }
  .cta-box {
    padding:40px 20px;
  }
  .cta-box ul {
    flex-direction:column;
    gap:15px;
  }
  .hero-bottom-slider {
    padding:0 5%;
  }
  .hero-bottom-text h2 {
    font-size:24px;
  }
  .process-card .process-content {
    padding:40px 22px 30px;
  }
}

.quote-modal {
  display:none;
  position:fixed;
  z-index:1000;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-color:rgba(0,0,0,.5);
  overflow:auto;
  align-items:center;
  justify-content:center;
}

.quote-modal-content {
  background-color:#fff;
  margin:auto;
  padding:40px;
  border-radius:12px;
  width:90%;
  max-width:500px;
  position:relative;
  box-shadow:0 10px 30px rgba(0,0,0,.1);
  animation:.3s ease-out modalFadeIn;
}

@keyframes modalFadeIn {
  from {
    opacity:0;
    transform:translateY(-20px);
  }
  to {
    opacity:1;
    transform:translateY(0);
  }
}

.close-modal {
  position:absolute;
  top:20px;
  right:20px;
  color:#999;
  font-size:28px;
  font-weight:700;
  cursor:pointer;
  transition:color .2s;
}

.close-modal:focus,
.close-modal:hover {
  color:#333;
  text-decoration:none;
}

.quote-modal-header {
  margin-bottom:24px;
}

.quote-modal-header .title{
  font-size:24px;
  font-weight: 700;
  color:#1a1a1a;
  margin-bottom:8px;
}

.quote-modal-header p {
  color:#666;
  font-size:14px;
}

.form-control {
  border:1px solid var(--asia-border);
  transition:.3s;
  background-color:#fff;
}

.form-control:focus {
  border-color:var(--asia-orange);
  box-shadow:0 0 0 3px rgba(246,139,31,.2);
  background-color:#fafafa;
}

.b2b-quote-form textarea,
textarea.form-control {
  resize:vertical;
}

#quoteForm .submit-btn {
  width:100%;
  border:none;
  cursor:pointer;
  justify-content:center;
  padding:14px;
  font-size:16px;
}

@media (prefers-reduced-motion:reduce) {
  *,
  ::after,
  ::before {
    animation-duration:0s !important;
    animation-iteration-count:1 !important;
    transition-duration:0s !important;
    scroll-behavior:auto !important;
  }
}

.about-hero,
.section-why-hero {
  position:relative;
  display:flex;
  align-items:center;
  height:100vh;
  color:#fff;
  text-align:center;
  margin-top:-128px;
  overflow:hidden;
}

.about-hero-video {
  position:absolute;
  top:50%;
  left:50%;
  min-width:100%;
  min-height:100%;
  width:auto;
  height:auto;
  transform:translateX(-50%) translateY(-50%);
  z-index:-2;
  object-fit:cover;
}

.about-hero-overlay {
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:rgba(31,122,58,.75);
  z-index:-1;
}

.about-hero .eyebrow {
  color:var(--asia-orange);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:2px;
  margin-bottom:15px;
}

.data-card ul li strong,
.page-header .breadcrumb,
.product-cat-label,
.snapshot-item p {
  letter-spacing:1px;
  text-transform:uppercase;
}

.about-hero p.sub-text {
  font-size:17.6px;
  max-width:800px;
  margin:0 auto 40px;
  line-height:1.6;
}

.about-hero .cta-group,
.why-hero-cta {
  display:flex;
  justify-content:center;
  gap:20px;
  margin-bottom:50px;
}

.trust-pills,
.why-trust-pills {
  display:flex;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.2);
  padding-top:30px;
}

.trust-pill {
  display:flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,.1);
  padding:10px 20px;
  border-radius:30px;
  font-size:15.2px;
  font-weight:500;
}

.align-items-center,
.section-overview .row {
  align-items:center;
}

.data-card {
  background:var(--asia-soft-green);
  padding:40px;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.05);
  border-top:5px solid var(--asia-green-dark);
}

.data-card h3 {
  margin-bottom:20px;
  color:var(--asia-green-dark);
}

.b2b-specs-highlight ul,
.business-hours-list,
.comp-list,
.contact-details-list,
.data-card ul,
.dest-list,
.doc-card ul,
.widget-categories ul,
.widget-filter .filter-list {
  list-style:none;
  padding:0;
  margin:0;
}

.data-card ul li {
  padding:12px 0;
  border-bottom:1px solid rgba(0,0,0,.05);
  display:flex;
  flex-direction:column;
}

.data-card ul li strong {
  color:var(--asia-green);
  font-size:13.6px;
  margin-bottom:5px;
}

.v-m-cards {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  margin-bottom:50px;
}

.vm-card {
  background:var(--asia-green);
  color:#fff;
  padding:40px;
  border-radius:12px;
}

.vm-card h3 {
  font-size:32px;
  margin-bottom:15px;
}

.vm-card p {
  font-size:17.6px;
  line-height:1.6;
}

.core-values-grid {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:20px;
}

.value-item {
  padding:20px;
  background:var(--asia-soft-green);
  border-radius:10px;
  transition:transform .3s;
}

.value-item i {
  font-size:40px;
  color:var(--asia-green);
  margin-bottom:15px;
  display:block;
}

.value-item h4 {
  font-size:17.6px;
  margin-bottom:10px;
  color:var(--asia-green-dark);
}

.value-item p {
  font-size:14.4px;
  color:#555;
}

@media(max-width:991px) {
  .core-values-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

.app-grid,
.core-reasons-grid,
.dest-grid,
.product-grid,
.what-we-do-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

.do-card {
  background:#fff;
  padding:30px;
  border:1px solid #eee;
  border-radius:10px;
  transition:.3s;
}

.do-card:hover {
  box-shadow:0 15px 30px rgba(0,0,0,.08);
  border-color:var(--asia-green);
}

.do-card i {
  font-size:32px;
  color:var(--asia-orange);
  margin-bottom:20px;
  display:block;
}

.adv-list h4,
.do-card h3 {
  color:var(--asia-green-dark);
}

.do-card h3 {
  font-size:20px;
  margin-bottom:15px;
}

@media(max-width:991px) {
  .what-we-do-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

.advantage-wrapper {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  align-items:center;
}

.adv-map-container {
  position:relative;
  width:100%;
  min-height:350px;
  background:rgba(31,122,58,.95);
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:hidden;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.1);
}

.network-svg {
  width:100%;
  height:100%;
  display:block;
}

.world-map-bg {
  opacity:.15;
  filter:invert(1);
}

.route-line {
  fill:none;
  stroke:var(--asia-orange);
  stroke-width:3;
  stroke-dasharray:10 10;
  opacity:1;
  animation:20s linear infinite dash-anim;
}

@keyframes dash-anim {
  from {
    stroke-dashoffset:1000;
  }
  to {
    stroke-dashoffset:0;
  }
}

.node {
  fill:var(--asia-orange);
}

.vn-node {
  fill:#fff;
}

.vn-pulse {
  fill:none;
  stroke:#fff;
  stroke-width:2;
  animation:2s ease-out infinite pulse-anim;
}

@keyframes pulse-anim {
  0% {
    r:10;
    opacity:1;
  }
  100% {
    r:40;
    opacity:0;
  }
}

.map-label {
  fill:#fff;
  font-size:18px;
  font-weight:700;
  opacity:1;
}

.section-portfolio .section-title,
.section-title,
.section-v-m .section-title,
.section-what-we-do .section-title {
  font-size:35.2px;
}

.adv-list,
.contact-sidebar ul {
  list-style:none;
  padding:0;
}

.adv-list li {
  margin-bottom:25px;
  padding-left:40px;
  position:relative;
}

.adv-list li::before {
  content:'\F26A';
  font-family:bootstrap-icons;
  position:absolute;
  left:0;
  top:2px;
  font-size:24px;
  color:var(--asia-green);
}

.adv-list h4 {
  margin-bottom:5px;
}

.section-quality,
.widget-cta .default-btn:hover {
  background:var(--asia-green-dark);
  color:#fff;
}

.qa-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
}

.qa-certs-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.cert-img-box,
.cert-text-box {
  background:#fff;
  border-radius:8px;
  padding:15px;
  display:flex;
  justify-content:center;
  align-items:center;
  box-shadow:0 5px 15px rgba(0,0,0,.1);
  transition:transform .3s;
  height:90px;
}

.cert-text-box,
.doc-item:hover {
  background:rgba(255,255,255,.1);
}

.cert-img-box img {
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.cert-text-box {
  color:#fff;
  font-weight:700;
  border:1px solid rgba(255,255,255,.2);
  box-shadow:none;
}

.qa-docs-list {
  display:flex;
  flex-direction:column;
  gap:20px;
}

.doc-item {
  display:flex;
  align-items:flex-start;
  gap:20px;
  background:rgba(255,255,255,.05);
  padding:20px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.1);
  transition:background .3s;
}

.doc-info h4 {
  color:#fff;
  margin-bottom:5px;
  font-size:17.6px;
}

.doc-info p {
  color:rgba(255,255,255,.8);
  font-size:15.2px;
  line-height:1.5;
}

.final-cta-wrapper {
  display:grid;
  grid-template-columns:3fr 2fr;
  gap:50px;
  background:var(--asia-soft-green);
  padding:50px;
  border-radius:12px;
}

.cta-form select.form-control {
  appearance:auto;
}

.contact-sidebar {
  background:var(--asia-green);
  color:#fff;
  padding:40px;
  border-radius:10px;
}

.contact-sidebar h3 {
  color:var(--asia-white);
  margin-bottom:25px;
}

.contact-sidebar ul li {
  margin-bottom:20px;
  display:flex;
  align-items:center;
  gap:15px;
}

.contact-sidebar ul li i {
  font-size:24px;
}

.cat-card:hover .cat-icon i,
.cat-card:hover h3,
.cat-card:hover p,
.cat-final-cta h2,
.contact-sidebar ul li a {
  color:#fff;
}

.overview-row {
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:60px;
}

.section-title {
  color:var(--asia-green-dark);
  margin-bottom:25px;
}

.section-title-lg {
  font-size:40px;
}

.overview-text {
  font-size:17.6px;
  line-height:1.7;
  color:#555;
  margin-bottom:20px;
}

.bg-white,
.widget-cta h3::after {
  background:#fff;
}

.section-header {
  margin-bottom:50px;
}

.section-subtitle {
  color:#555;
  max-width:600px;
  margin:0 auto;
}

.mt-40 {
  margin-top:40px;
}

.mt-30 {
  margin-top:30px;
}

.qa-subtitle {
  margin-bottom:25px;
  color:var(--asia-soft-green);
}

.cta-subtitle {
  color:#555;
  margin-bottom:30px;
}

.no-border {
  border:none;
  cursor:pointer;
}

.overview-slider-container {
  margin-top:40px;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  width:100%;
}

.channel-card,
.comparison-table,
.matrix-table,
.reason-card {
  box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.overview-slider .swiper-slide {
  display:flex;
  justify-content:center;
  align-items:center;
}

.overview-zoom-img {
  width:100%;
  height:300px;
  object-fit:cover;
}

.overview-content {
  min-width:0;
}

@media(max-width:991px) {
  .advantage-wrapper {
    grid-template-columns:1fr;
  }
  .advantage-wrapper,
  .overview-row,
  .qa-grid {
    grid-template-columns:1fr;
    gap:40px;
  }
  .qa-certs-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .final-cta-wrapper {
    grid-template-columns:1fr;
    padding:30px;
  }
  .adv-map-container {
    min-height:250px;
  }
  .section-portfolio .section-title,
  .section-title,
  .section-v-m .section-title,
  .section-what-we-do .section-title {
    font-size:28px !important;
  }
  .section-title-lg {
    font-size:32px !important;
  }
  .about-hero h1 {
    font-size:42px;
  }
  .about-hero p.sub-text {
    font-size:16px;
  }
}

.bg-soft-green {
  background:var(--asia-soft-green);
}

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

.bg-dark-green {
  background:var(--wc-dark-green);
  color:#fff;
}

.contact-details-list li a:hover,
.text-amber,
.trust-pill-item i {
  color:var(--wc-amber);
}

.cert-hero-bg,
.why-hero-bg {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:-2;
}

.why-hero-overlay {
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:var(--wc-overlay);
  z-index:-1;
}

.z-index-1 {
  z-index:1;
}

.cert-hero-title,
.why-hero-title {
  font-size:56px;
  font-weight:700;
  margin-bottom:25px;
  line-height:1.2;
}

.why-hero-sub {
  font-size:18px;
  max-width:800px;
  margin:0 auto 40px;
  line-height:1.6;
  color:rgba(255,255,255,.9);
}

.outline-btn-white {
  background:0 0;
  color:#fff;
  border:2px solid #fff;
}

.outline-btn-white:hover {
  background:#fff;
  color:var(--asia-green-dark);
}

.trust-pill-item {
  font-size:15px;
  font-weight:500;
  display:flex;
  align-items:center;
  gap:8px;
}

.trust-pill-item i {
  font-size:18px;
}

.snapshot-item h2,
.snapshot-item span {
  color:var(--wc-dark-green);
  font-weight:700;
}

.section-trust-snapshot {
  padding:40px 0;
  border-bottom:1px solid #eae1d3;
}

.snapshot-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
}

.snapshot-item h2 {
  font-size:48px;
  margin-bottom:5px;
  display:inline-block;
}

.snapshot-item span {
  font-size:40px;
}

.snapshot-item p {
  color:#555;
  font-size:15px;
  font-weight:500;
}

.reason-card {
  background:#fff;
  padding:40px 30px;
  border-radius:12px;
  transition:transform .3s;
  border:1px solid #f0f0f0;
}

.reason-card:hover {
  border-color:var(--wc-amber);
}

.reason-icon {
  width:60px;
  height:60px;
  background:rgba(232,160,32,.1);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:25px;
}

.reason-icon i {
  font-size:28px;
  color:var(--wc-amber);
}

.reason-card h3 {
  font-size:20px;
  color:var(--wc-dark-green);
  margin-bottom:15px;
}

.cert-card p,
.channel-card p,
.reason-card p {
  color:#666;
  line-height:1.6;
  margin:0;
}

.vn-advantage-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}

.rounded-custom {
  border-radius:16px;
}

.vn-adv-list {
  list-style:none;
  padding:0;
  margin:30px 0 0;
}

.vn-adv-list li {
  display:flex;
  align-items:flex-start;
  gap:15px;
  margin-bottom:20px;
  font-size:17px;
  color:#444;
}

.vn-adv-list li i {
  font-size:24px;
  margin-top:-2px;
}

.article-meta i,
.btn-link:hover,
.custom-checkbox:hover,
.faq-box summary:hover,
.faq-question i,
.news-card-content h3 a:hover,
.news-meta i,
.recent-info h4 a:hover,
.search-form button:hover,
.text-green {
  color:var(--asia-green);
}

.cat-card h3,
.cat-icon i {
  color:var(--asia-green-dark);
  transition:.4s;
}

@media(max-width:991px) {
  .core-reasons-grid,
  .snapshot-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .why-hero-title {
    font-size:40px;
  }
  .snapshot-grid {
    gap:40px;
  }
  .vn-advantage-row {
    grid-template-columns:1fr;
    gap:40px;
  }
}

.portfolio-category-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
  margin-bottom:30px;
}

.cat-card {
  background:#fff;
  padding:40px 30px;
  border-radius:12px;
  border:1px solid #eaeaea;
  transition:.4s;
  cursor:pointer;
}

.cat-card:hover {
  background:var(--asia-green);
  color:#fff;
  box-shadow:0 15px 30px rgba(67,182,73,.2);
  border-color:var(--asia-green);
}

.cat-icon {
  width:70px;
  height:70px;
  background:var(--asia-soft-green);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 20px;
  transition:.4s;
}

.cat-card:hover .cat-icon {
  background:rgba(255,255,255,.2);
}

.cat-icon i {
  font-size:32px;
}

.cat-card h3 {
  font-size:22px;
  margin-bottom:15px;
}

.cert-card,
.channel-card,
.faq-question i {
  transition:transform .3s;
}

.cat-card p {
  color:#666;
  margin:0;
  font-size:15px;
  line-height:1.6;
}

@media(max-width:1199px) {
  .portfolio-category-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

.text-white-50 {
  color:rgba(255,255,255,.7);
}

.compliance-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
}

.compliance-col {
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  padding:40px;
  border-radius:12px;
}

.compliance-col h3 {
  color:#fff;
  font-size:24px;
  margin-bottom:25px;
  display:flex;
  align-items:center;
  gap:10px;
}

.comp-list li {
  display:flex;
  align-items:center;
  gap:12px;
  color:rgba(255,255,255,.9);
  font-size:17px;
  margin-bottom:15px;
}

.comp-list li i {
  color:var(--wc-amber);
  font-size:20px;
}

.b2b-channels-grid,
.docs-grid,
.qc-process-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
}

.channel-card {
  background:#fff;
  padding:40px 30px;
  border-radius:12px;
  border-top:4px solid var(--asia-green);
}

.channel-icon {
  width:60px;
  height:60px;
  background:var(--asia-soft-green);
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
}

.channel-icon i {
  font-size:28px;
  color:var(--asia-green-dark);
}

.channel-card h3,
.doc-card h3 {
  font-size:20px;
  color:var(--asia-green-dark);
  margin-bottom:15px;
}

@media(max-width:991px) {
  .compliance-row {
    grid-template-columns:1fr;
  }
  .b2b-channels-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .final-cta-wrapper {
    grid-template-columns:1fr !important;
    padding:40px !important;
  }
}

@media(max-width:575px) {
  .b2b-channels-grid,
  .core-values-grid,
  .portfolio-category-grid,
  .v-m-cards,
  .what-we-do-grid {
    grid-template-columns:1fr;
  }
  .overview-zoom-img {
    height:200px;
  }
  .about-hero h1 {
    font-size:36px;
  }
  .about-hero .cta-group {
    flex-direction:column;
    gap:15px;
  }
  .about-hero .cta-group .default-btn {
    width:100%;
  }
  .trust-pills {
    flex-direction:column;
    align-items:center;
    gap:15px;
  }
}

.comparison-table-wrapper,
.matrix-table-wrapper {
  overflow-x:auto;
}

.comparison-table,
.matrix-table {
  width:100%;
  border-collapse:collapse;
  background:#fff;
  border-radius:12px;
  overflow:hidden;
}

.comparison-table td,
.comparison-table th {
  padding:20px;
  text-align:left;
  border-bottom:1px solid #eee;
  font-size:17px;
}

.comparison-table th {
  background:#f8f8f8;
  color:#333;
  font-size:18px;
  font-weight:700;
}

.comparison-table .highlight-col {
  background:var(--asia-soft-green);
  color:var(--asia-green-dark);
  font-weight:600;
}

.logo-carousel-wrapper {
  overflow:hidden;
  padding:40px 0;
  position:relative;
  width:100%;
}

.logo-carousel-wrapper::after,
.logo-carousel-wrapper::before {
  content:"";
  position:absolute;
  top:0;
  width:100px;
  height:100%;
  z-index:2;
}

.logo-carousel-wrapper::before {
  left:0;
  background:linear-gradient(to right,#f9f9f9,transparent);
}

.logo-carousel-wrapper::after {
  right:0;
  background:linear-gradient(to left,#f9f9f9,transparent);
}

.logo-carousel-track {
  display:flex;
  width:calc(200px * 12);
  animation:20s linear infinite scroll;
}

.logo-slide {
  width:200px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.logo-slide img {
  max-width:120px;
  max-height:60px;
}

@keyframes scroll {
  0% {
    transform:translateX(0);
  }
  100% {
    transform:translateX(calc(-200px * 6));
  }
}

.section-padding {
  padding:80px 0;
}

.section-cert-hero {
  position:relative;
  display:flex;
  align-items:center;
  min-height:80vh;
  color:#fff;
  overflow:hidden;
}

.cert-hero-overlay {
  position:absolute;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:var(--cert-hero-overlay);
  z-index:-1;
}

.cert-hero-sub {
  font-size:18px;
  max-width:900px;
  margin:0 auto 40px;
  line-height:1.6;
  color:rgba(255,255,255,.9);
}

.cert-trust-pills {
  display:flex;
  justify-content:center;
  gap:15px;
  flex-wrap:wrap;
}

.cert-pill {
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.3);
  padding:10px 20px;
  border-radius:50px;
  font-size:15px;
  font-weight:500;
  display:flex;
  align-items:center;
  gap:8px;
}

.cert-pill i {
  color:var(--asia-green);
  font-size:18px;
}

@media(max-width:991px) {
  .cert-hero-title {
    font-size:40px;
  }
  .docs-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

.cert-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:30px;
}

.cert-card {
  background:#fff;
  padding:40px;
  border-radius:12px;
  border:1px solid #eaeaea;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  box-shadow:0 5px 20px rgba(0,0,0,.02);
}

.cert-card-icon,
.doc-icon {
  align-items:center;
  display:flex;
}

.cert-card:hover {
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  border-color:var(--asia-green);
}

.cert-card-icon {
  height:60px;
  background:var(--asia-soft-green);
  padding:10px 20px;
  border-radius:8px;
  justify-content:center;
  margin-bottom:25px;
}

.cert-card h3 {
  font-size:22px;
  color:var(--asia-green-dark);
  margin-bottom:15px;
}

.matrix-table td,
.matrix-table th {
  padding:20px 25px;
  text-align:left;
  border-bottom:1px solid #eee;
  font-size:16px;
}

.matrix-table th {
  background:var(--asia-green);
  color:#fff;
  font-size:18px;
  font-weight:600;
}

.doc-icon i,
.qc-step h3 {
  color:var(--asia-green-dark);
}

.faq-question:hover,
.matrix-table tr:hover td {
  background:#fdfdfd;
}

.doc-card {
  background:#fff;
  border:1px solid #eaeaea;
  border-radius:12px;
  padding:30px;
  transition:.3s;
}

.doc-card:hover {
  border-color:var(--asia-green);
  box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.news-card:hover,
.product-card:hover {
  box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.doc-icon {
  width:50px;
  height:50px;
  background:var(--asia-soft-green);
  border-radius:8px;
  justify-content:center;
  margin-bottom:20px;
}

.dest-card,
.qc-step {
  border-radius:12px;
  background:#fff;
}

.doc-icon i {
  font-size:24px;
}

.doc-card ul li {
  position:relative;
  padding-left:20px;
  margin-bottom:10px;
  color:#555;
  font-size:15px;
}

.doc-card ul li::before {
  content:"•";
  position:absolute;
  left:0;
  top:0;
  color:var(--asia-green);
  font-weight:700;
}

.qc-step {
  padding:40px 30px;
  box-shadow:0 5px 20px rgba(0,0,0,.03);
  position:relative;
  border-top:4px solid var(--asia-green);
}

.qc-number {
  font-size:48px;
  font-weight:800;
  color:var(--asia-soft-green);
  position:absolute;
  top:20px;
  right:30px;
  line-height:1;
  z-index:1;
}

.news-thumb,
.qc-step h3,
.qc-step p {
  position:relative;
}

.qc-step h3 {
  font-size:20px;
  margin:40px 0 15px;
  z-index:2;
}

.qc-step p {
  color:#666;
  font-size:15px;
  line-height:1.6;
  margin:0;
  z-index:2;
}

.dest-card {
  padding:40px;
  border:1px solid #eaeaea;
}

.dest-header {
  display:flex;
  align-items:center;
  gap:15px;
  margin-bottom:25px;
  border-bottom:1px solid #eaeaea;
  padding-bottom:20px;
}

.dest-flag {
  width:40px;
  height:40px;
  object-fit:contain;
}

.dest-header h3 {
  margin:0;
  color:var(--asia-green-dark);
  font-size:22px;
}

.dest-list li {
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-bottom:15px;
  color:#555;
  font-size:16px;
}

.dest-list li i {
  color:var(--asia-green);
  font-size:20px;
  margin-top:-2px;
}

@media(max-width:991px) {
  .qc-process-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .dest-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:767px) {
  .cert-hero-title,
  .why-hero-title {
    font-size:32px;
  }
  .why-hero-cta {
    flex-direction:column;
  }
  .why-trust-pills {
    flex-direction:column;
    align-items:center;
  }
  .cert-grid,
  .core-reasons-grid,
  .docs-grid,
  .qc-process-grid,
  .snapshot-grid {
    grid-template-columns:1fr;
  }
  .comparison-table td,
  .comparison-table th {
    padding:12px;
    font-size:14px;
  }
  .cert-trust-pills {
    flex-direction:column;
    align-items:stretch;
  }
  .cert-pill {
    justify-content:center;
  }
  .matrix-table td,
  .matrix-table th {
    padding:15px;
    font-size:14px;
  }
}

.request-process-wrapper {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  background:#fff;
  padding:50px;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.04);
}

.req-step {
  flex:1;
}

.req-icon {
  width:60px;
  height:60px;
  background:var(--asia-green);
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  font-weight:700;
  margin:0 auto 20px;
  box-shadow:0 5px 15px rgba(67,182,73,.3);
}

.req-step h4 {
  font-size:18px;
  color:var(--asia-green-dark);
  margin-bottom:10px;
}

.req-step p {
  color:#666;
  font-size:14px;
  margin:0;
}

.req-arrow i {
  font-size:32px;
  color:#ddd;
}

.faq-item {
  box-shadow:0 2px 10px rgba(0,0,0,.02);
}

.faq-question h4 {
  margin:0;
  font-size:18px;
  color:var(--asia-green-dark);
  font-weight:600;
}

.faq-answer {
  display:none;
}

.faq-answer p {
  margin:0;
  line-height:1.6;
}

@media(max-width:991px) {
  .request-process-wrapper {
    flex-direction:column;
    gap:40px;
  }
  .req-arrow {
    transform:rotate(90deg);
  }
  .final-cta-wrapper {
    grid-template-columns:1fr !important;
    padding:40px !important;
  }
}

.contact-header {
  padding:80px 0 60px;
}

.contact-header .eyebrow {
  color:var(--asia-green);
  font-weight:700;
  text-transform:uppercase;
  margin-bottom:10px;
}

.contact-header h1 {
  font-size:48px;
  margin-bottom:20px;
}

.contact-header p {
  max-width:700px;
  margin:0 auto 30px;
  font-size:17.6px;
  color:#555;
}

.trust-line {
  font-weight:600;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.contact-grid {
  display:grid;
  grid-template-columns:3fr 2fr;
  gap:50px;
}

.contact-form-col {
  background:#fff;
  padding:40px;
  border-radius:12px;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
}

.contact-form-col h2 {
  margin-bottom:15px;
}

.form-intro {
  margin-bottom:30px;
  color:#666;
}

.article-content p,
.form-group {
  margin-bottom:20px;
}

.form-group label {
  display:block;
  margin-bottom:8px;
  font-weight:600;
  font-size:15.2px;
}

.form-control {
  width:100%;
  padding:12px 15px;
  border:1px solid #ddd;
  border-radius:8px;
  font-size:16px;
}

.form-control:focus {
  border-color:var(--asia-green);
  outline:0;
}

.form-row {
  display:flex;
  gap:20px;
}

.submit-btn {
  width:100%;
  padding:15px;
  font-size:17.6px;
  border:none;
  cursor:pointer;
}

.form-note {
  font-size:13.6px;
  color:#888;
  margin-top:15px;
}

.contact-info-card {
  background:var(--asia-green-dark);
  color:#fff;
  padding:40px;
  border-radius:12px;
  margin-bottom:30px;
}

.contact-info-card h3 {
  color:#fff;
  margin-bottom:25px;
  border-bottom:1px solid rgba(255,255,255,.1);
  padding-bottom:15px;
}

.business-hours-list li,
.contact-details-list li {
  display:flex;
  gap:15px;
  margin-bottom:25px;
}

.business-hours-list li i,
.contact-details-list li i {
  font-size:24px;
  color:var(--wc-amber);
  margin-top:3px;
}

.business-hours-list li strong,
.contact-details-list li strong {
  display:block;
  margin-bottom:5px;
  font-size:17.6px;
}

.contact-details-list li a {
  color:#fff;
  text-decoration:none;
  transition:.3s;
}

.factory-note {
  font-size:13.6px;
  color:rgba(255,255,255,.7);
  margin-top:5px;
}

.timezone-note {
  font-size:14.4px;
  color:rgba(255,255,255,.8);
  margin-top:20px;
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:20px;
}

.news-filter,
.trust-badges-wrap {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:15px;
  margin-bottom:40px;
}

.trust-badge {
  background:#fff;
  padding:10px 20px;
  border-radius:30px;
  border:1px solid #eee;
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:600;
  box-shadow:0 3px 10px rgba(0,0,0,.03);
}

.hero-b2b-points i,
.trust-badge i {
  color:var(--asia-green);
  font-size:19.2px;
}

.cert-note {
  color:#666;
  font-size:15.2px;
  max-width:600px;
  margin:0 auto;
}

.btn-link,
.faq-question h3,
.news-card-content h3 a {
  color:var(--asia-green-dark);
}

.quick-links {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:20px;
  align-items:center;
  margin-top:40px;
}

.btn-link {
  font-weight:600;
  text-decoration:underline;
}

.map-container {
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 5px 20px rgba(0,0,0,.1);
}

.faq-accordion {
  max-width:100%;
  margin:0 auto;
}

.faq-item {
  background:#fff;
  border:1px solid #eee;
  border-radius:8px;
  margin-bottom:15px;
  overflow:hidden;
}

.faq-question {
  padding:20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  background:#fff;
  transition:.3s;
}

.faq-question h3 {
  margin:0;
  font-size:17.6px;
}

.faq-question i {
  font-size:19.2px;
}

.faq-answer {
  padding:0 20px;
  max-height:0;
  overflow:hidden;
  transition:max-height .3s ease-out,padding .3s ease-out;
}

.faq-answer p {
  margin-bottom:20px;
  color:#555;
}

.faq-item.active .faq-question {
  background:#f9f9f9;
}

.faq-box[open] summary i,
.faq-item.active .faq-question i {
  transform:rotate(180deg);
}

.faq-item.active .faq-answer {
  display:block;
  max-height:500px;
  padding:20px;
  border-top:1px solid #eee;
}

.product-page,
.section-news-list {
  background:#fbfbfb;
}

.filter-btn {
  padding:8px 20px;
  border-radius:30px;
  border:1px solid #ddd;
  color:#555;
  font-weight:500;
  transition:.3s;
  background:#fff;
}

.news-cat,
.page-dots,
.page-link,
.read-more {
  font-weight:600;
}

.filter-btn.active,
.filter-btn:hover {
  background-color:var(--asia-green);
  color:#fff;
  border-color:var(--asia-green);
}

.news-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
  margin-bottom:50px;
}

.news-card {
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 4px 15px rgba(0,0,0,.04);
  transition:transform .3s,box-shadow .3s;
}

.article-main,
.product-toolbar,
.sidebar-widget {
  box-shadow:0 4px 15px rgba(0,0,0,.03);
}

.news-thumb {
  display:block;
  overflow:hidden;
  padding-top:60%;
}

.news-thumb img {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}

.news-cat {
  position:absolute;
  top:15px;
  left:15px;
  background:var(--asia-green);
  color:#fff;
  font-size:12.8px;
  padding:4px 12px;
  border-radius:6px;
  z-index:2;
  text-transform:uppercase;
}

.news-card-content {
  padding:25px;
}

.news-meta {
  font-size:13.6px;
  color:#888;
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:5px;
}

.news-card-content h3 {
  font-size:20px;
  line-height:1.4;
  margin-bottom:15px;
  font-weight:700;
}

.news-card-content h3 a {
  transition:color .3s;
}

.news-card-content p {
  color:#666;
  font-size:15.2px;
  margin-bottom:20px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.article-content h2,
.article-header h1,
.read-more {
  color:var(--asia-green-dark);
}

.product-content p {
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.read-more {
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:.3s;
}

.read-more:hover {
  color:var(--asia-green);
  gap:12px;
}

.pagination {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin-top:40px;
}

.page-link {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background-color:#fff;
  color:#333;
  border:1px solid #ddd;
  transition:.3s;
}

.page-link.active,
.page-link:hover {
  background:var(--asia-green);
  color:#fff;
  border-color:var(--asia-green);
}

.page-dots {
  color:#888;
}

.article-page {
  background:#fbfbfb;
  padding-bottom:60px;
}

.article-layout {
  display:grid;
  grid-template-columns:2.5fr 1fr;
  gap:40px;
  margin-top:30px;
}

.article-main {
  background:#fff;
  padding:40px;
  border-radius:12px;
}

.article-header,
.specs-mini-table {
  margin-bottom:30px;
}

.article-category {
  display:inline-block;
  background:var(--asia-green);
  color:#fff;
  font-size:13.6px;
  font-weight:600;
  padding:6px 14px;
  border-radius:4px;
  text-transform:uppercase;
  margin-bottom:15px;
}

.article-header h1 {
  font-size:35.2px;
  line-height:1.3;
  margin-bottom:20px;
  font-weight:700;
}

.article-meta {
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  color:#777;
  font-size:15.2px;
  font-weight:500;
  border-bottom:1px solid #eee;
  padding-bottom:20px;
}

.article-meta span {
  display:flex;
  align-items:center;
  gap:6px;
}

.article-featured-image {
  margin-bottom:30px;
  border-radius:8px;
  overflow:hidden;
}

.article-featured-image img {
  width:100%;
  display:block;
  object-fit:cover;
}

.article-content {
  font-size:16.8px;
  line-height:1.8;
  color:#444;
}

.article-content .lead {
  font-size:18.4px;
  font-weight:500;
  color:#333;
  margin-bottom:30px;
}

.article-content h2 {
  font-size:25.6px;
  margin:35px 0 20px;
  font-weight:700;
}

.article-content h3{
	margin-bottom: 12px;
}

.article-content ol,
.article-content ul {
  margin-bottom:25px;
  padding-left:20px;
}

.article-content blockquote {
  font-size:17.6px;
  font-style:italic;
  color:#555;
  background:#f9f9f9;
  border-left:4px solid var(--asia-green);
  padding:20px;
  margin:30px 0;
  border-radius:4px;
}

.article-content img {
  max-width:100%;
  height:auto;
  display:block;
}

.article-share {
  margin-top:40px;
  padding-top:30px;
  border-top:1px solid #eee;
  display:flex;
  align-items:center;
  gap:15px;
  font-weight:600;
  color:#333;
}

.share-btn {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#f5f5f5;
  color:#555;
  transition:.3s;
}

.share-btn:hover {
  background:var(--asia-green);
  color:#fff;
  transform:translateY(-3px);
}

.article-sidebar,
.product-sidebar {
  display:flex;
  flex-direction:column;
  gap:30px;
}

.sidebar-widget {
  background:#fff;
  padding:25px;
  border-radius:12px;
}

.sidebar-widget h3 {
  font-size:19.2px;
  color:var(--asia-green-dark);
  margin-bottom:20px;
  padding-bottom:10px;
  border-bottom:2px solid #eee;
  position:relative;
}

.sidebar-widget h3::after {
  content:'';
  position:absolute;
  left:0;
  bottom:-2px;
  width:40px;
  height:2px;
  background:var(--asia-green);
}

.search-form {
  display:flex;
  position:relative;
}

.search-form input {
  width:100%;
  padding:12px 50px 12px 15px;
  border:1px solid #ddd;
  border-radius:6px;
}

.search-form input:focus {
  outline:0;
  border-color:var(--asia-green);
}

.search-form button {
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  background:0 0;
  border:none;
  font-size:17.6px;
  color:#777;
  cursor:pointer;
  width:40px;
  height:40px;
  display:flex;
  justify-content:center;
  align-items:center;
}

.b2b-specs-highlight li:last-child,
.widget-categories li:last-child,
.widget-filter li:last-child {
  margin-bottom:0;
}

.widget-categories a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#555;
  transition:.3s;
}

.widget-categories a:hover {
  color:var(--asia-green);
  padding-left:5px;
}

.widget-categories span {
  font-size:13.6px;
  color:#999;
  background:#f5f5f5;
  padding:2px 8px;
  border-radius:12px;
}

.recent-item {
  display:flex;
  gap:15px;
  margin-bottom:15px;
  padding-bottom:15px;
  border-bottom:1px solid #eee;
}

.recent-item:last-child {
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:none;
}

.recent-thumb {
  flex-shrink:0;
  width:70px;
  height:70px;
  border-radius:6px;
  overflow:hidden;
}

.recent-thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.3s;
}

.recent-item:hover .recent-thumb img {
  transform:scale(1.1);
}

.recent-info h4 {
  font-size:15.2px;
  line-height:1.4;
  margin-bottom:5px;
  font-weight:600;
}

.recent-info h4 a {
  color:#333;
  transition:.3s;
}

.recent-info span {
  font-size:12.8px;
  color:#888;
}

.widget-cta {
  background:var(--asia-green);
  color:#fff;
}

.widget-cta h3 {
  color:#fff;
  border-color:rgba(255,255,255,.2);
}

.widget-cta p {
  font-size:15.2px;
  margin-bottom:20px;
  opacity:.9;
}

.widget-cta .default-btn {
  background:#fff;
  color:var(--asia-green);
}

.product-badge.new,
.tab-btn.active::after {
  background:var(--asia-green);
}

.product-layout {
  display:grid;
  grid-template-columns:1fr 3fr;
  gap:40px;
}

.custom-checkbox {
  display:flex;
  align-items:center;
  position:relative;
  padding-left:30px;
  cursor:pointer;
  font-size:15.2px;
  color:#555;
  user-select:none;
  transition:.3s;
}

.custom-checkbox input {
  position:absolute;
  opacity:0;
  cursor:pointer;
  height:0;
  width:0;
}

.checkmark {
  position:absolute;
  top:0;
  left:0;
  height:18px;
  width:18px;
  background-color:#eee;
  border-radius:4px;
  transition:.3s;
}

.custom-checkbox:hover input~.checkmark {
  background-color:#ccc;
}

.checkmark:after {
  content:"";
  position:absolute;
  display:none;
}

.custom-checkbox input:checked~.checkmark:after {
  display:block;
}

.custom-checkbox .checkmark:after {
  left:6px;
  top:2px;
  width:5px;
  height:10px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

.product-toolbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#fff;
  padding:15px 20px;
  border-radius:8px;
  margin-bottom:30px;
}

.toolbar-left {
  font-size:15.2px;
  color:#666;
  font-weight:500;
}

.sort-select {
  padding:8px 15px;
  border:1px solid #ddd;
  border-radius:6px;
  outline:0;
  color:#444;
  background:#fdfdfd;
  cursor:pointer;
}

.sort-select:focus,
.thumb-item.active {
  border-color:var(--asia-green);
}

.product-card {
  box-shadow:0 4px 15px rgba(0,0,0,.04);
  display:flex;
  flex-direction:column;
}

.product-badge {
  color:#fff;
  text-transform:uppercase;
}

.product-content {
  flex-grow:1;
  display:flex;
  flex-direction:column;
}

.product-content h3 a:hover {
  color:var(--asia-green);
  color:var(--asia-green-dark);
}

.product-content p {
  display:-webkit-box;
  flex-grow:1;
}

.cat-packaging,
.product-detail-page {
  padding-bottom:60px;
}

.product-detail-top {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  background:#fff;
  padding:40px;
  border-radius:12px;
  box-shadow:0 4px 15px rgba(0,0,0,.03);
  margin-bottom:40px;
}

.gallery-main,
.thumb-item {
  background:#f9f9f9;
  overflow:hidden;
  position:relative;
}

.gallery-main {
  border-radius:8px;
  padding-top:100%;
  margin-bottom:15px;
}

.gallery-main img,
.thumb-item img {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  mix-blend-mode:multiply;
}

.gallery-thumbs {
  display:flex;
  gap:15px;
}

.thumb-item {
  width:calc(33.333% - 10px);
  padding-top:calc(33.333% - 10px);
  border-radius:6px;
  cursor:pointer;
  border:2px solid transparent;
  transition:.3s;
}

.thumb-item:hover {
  border-color:#ddd;
}

.product-cat-label {
  font-size:14.4px;
  color:#888;
  font-weight:600;
  margin-bottom:10px;
}

.product-title {
  font-size:35.2px;
  font-weight:700;
  color:var(--asia-green-dark);
  margin-bottom:20px;
  line-height:1.3;
}

.product-short-desc {
  font-size:16.8px;
  color:#555;
  line-height:1.7;
  margin-bottom:30px;
}

.b2b-specs-highlight {
  background:#f8fcf9;
  border:1px solid #e1efe5;
  border-radius:8px;
  padding:25px;
  margin-bottom:30px;
}

.b2b-specs-highlight li {
  margin-bottom:15px;
  font-size:16px;
  color:#444;
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.b2b-specs-highlight li i {
  color:var(--asia-green);
  font-size:19.2px;
  margin-top:2px;
}

.b2b-specs-highlight li strong {
  color:#222;
  font-weight:600;
  min-width:110px;
  display:inline-block;
}

.product-actions {
  display:flex;
  gap:15px;
  margin-bottom:30px;
}

.product-actions .default-btn {
  flex:1;
  justify-content:center;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:16.8px;
}

.outline-btn {
  background:0 0;
  border:2px solid var(--asia-green);
  color:var(--asia-green);
}

.outline-btn:hover,
.product-badge.new,
.product-share a:hover {
  background:var(--asia-green);
  color:#fff;
}

@media (max-width:575px) {
  .product-toolbar {
    flex-direction:column;
    gap:15px;
    text-align:center;
  }
  .product-actions {
    flex-direction:column;
  }
}

.product-share {
  display:flex;
  align-items:center;
  gap:15px;
  color:#666;
  font-weight:600;
}

.b2b-modal-overlay,
.product-share a {
  justify-content:center;
  transition:.3s;
}

.product-share a {
  display:inline-flex;
  align-items:center;
  width:35px;
  height:35px;
  border-radius:50%;
  background:#f1f1f1;
  color:#555;
}

.product-detail-tabs {
  background:#fff;
  border-radius:12px;
  margin-bottom:30px;
  box-shadow:0 4px 15px rgba(0,0,0,.03);
  overflow:hidden;
}

.product-detail-tabs img {
  max-width: 100%;
  height: auto;
}

@media (min-width: 992px) {
  iframe[src*="youtube.com"], 
  iframe[src*="youtu.be"] {
    display: block;
    margin: 0 auto;
    min-width: 900px !important;
    height: 506px; /* standard 16:9 for 900px width */
    max-width: 100%;
  }
}

.tabs-header {
  display:flex;
  background:#f5f5f5;
  border-bottom:1px solid #ddd;
  flex-wrap:wrap;
}

.tab-btn {
  flex:1;
  min-width:200px;
  padding:20px 15px;
  background:0 0;
  border:none;
  font-size:16.8px;
  font-weight:600;
  color:#555;
  cursor:pointer;
  transition:.3s;
  position:relative;
}

.tab-btn.active,
.tab-btn:hover {
  color:var(--asia-green);
  background:#fff;
}

.tab-btn.active::after {
  content:'';
  position:absolute;
  bottom:-1px;
  left:0;
  width:100%;
  height:3px;
}

.tabs-content {
  padding:40px;
}

.tab-pane {
  display:none;
  font-size:16.8px;
  line-height:1.8;
  color:#555;
}

.tab-pane.active {
  display:block;
  animation:.5s fadeInTab;
}

@keyframes fadeInTab {
  from {
    opacity:0;
    transform:translateY(10px);
  }
  to {
    opacity:1;
    transform:translateY(0);
  }
}

.tab-pane h3 {
  font-size:24px;
  color:var(--asia-green-dark);
  margin-bottom:20px;
  font-weight:700;
}

.tab-pane h4 {
  font-size:19.2px;
  color:#333;
  margin:25px 0 15px;
  font-weight:600;
}

.tab-pane ul {
  margin-bottom:20px;
  padding-left:20px;
}

.tab-pane li {
  margin-bottom:8px;
}

.specs-table {
  width:100%;
  border-collapse:collapse;
  margin-bottom:20px;
}

.specs-table td,
.specs-table th {
  padding:15px 20px;
  border:1px solid #eee;
  text-align:left;
}

.specs-table th {
  background:#fdfdfd;
  font-weight:600;
  color:#333;
  width:30%;
}

.specs-table thead th {
  background:#f5f5f5;
  width:auto;
  color:var(--asia-green-dark);
}

.oem-feature {
  background:#f9f9f9;
  padding:25px;
  margin-bottom:20px;
  border-radius:8px;
  height:100%;
}

.oem-feature i {
  font-size:32px;
  color:var(--asia-green);
  margin-bottom:15px;
  display:block;
}

.oem-feature h4 {
  margin-top:0;
}

.b2b-modal-overlay {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,.6);
  z-index:9999;
  display:flex;
  align-items:center;
  opacity:0;
  visibility:hidden;
  backdrop-filter:blur(4px);
}

.b2b-modal-overlay.active {
  opacity:1;
  visibility:visible;
}

.b2b-modal-content {
  background:#fff;
  width:90%;
  max-width:650px;
  border-radius:12px;
  padding:40px;
  position:relative;
  transform:translateY(20px);
  transition:.4s;
  max-height:90vh;
  overflow-y:auto;
  box-shadow:0 10px 40px rgba(0,0,0,.1);
}

.b2b-modal-overlay.active .b2b-modal-content {
  transform:translateY(0);
}

.b2b-modal-close {
  position:absolute;
  top:20px;
  right:20px;
  font-size:19.2px;
  color:#888;
  cursor:pointer;
  transition:.3s;
  width:32px;
  height:32px;
  display:flex;
  justify-content:center;
  align-items:center;
  background:#f5f5f5;
  border-radius:50%;
}

.b2b-modal-close:hover {
  color:#fff;
  background:#e74c3c;
}

.b2b-modal-content .title {
  font-size:25.6px;
  color:var(--asia-green-dark);
  margin-bottom:10px;
  font-weight:700;
}

.b2b-modal-content p {
  color:#666;
  font-size:15.2px;
  margin-bottom:25px;
}

.b2b-quote-form {
  display:flex;
  flex-wrap:wrap;
  gap:15px;
}

.b2b-quote-form .form-group {
  width:calc(50% - 7.5px);
  margin-bottom:0;
}

.b2b-quote-form label {
  display:block;
  font-size:14.4px;
  font-weight:600;
  color:#444;
  margin-bottom:6px;
}

.seo-hero .product-info-wrap {
  order:1;
}

.seo-hero .product-gallery {
  order:2;
}

.cert-badges {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:25px;
}

.cert-badges .badge {
  background:#eef7f1;
  color:var(--asia-green-dark);
  padding:5px 12px;
  border-radius:4px;
  font-size:13.6px;
  font-weight:600;
  display:inline-flex;
  align-items:center;
  gap:5px;
  border:1px solid #d4ebdc;
}

.feature-cards-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  margin-bottom:25px;
}

.feature-card {
  display:flex;
  align-items:center;
  gap:12px;
  background:#fff;
  border:1px solid #eee;
  padding:15px;
  border-radius:8px;
  box-shadow:0 2px 8px rgba(0,0,0,.02);
}

.feature-card i {
  font-size:24px;
  color:var(--asia-green);
}

.faq-accordion,
.feature-card div {
  display:flex;
  flex-direction:column;
}

.feature-card span {
  font-size:12.8px;
  color:#777;
  text-transform:uppercase;
  letter-spacing:.5px;
}

.feature-card strong {
  font-size:15.2px;
  color:#222;
}

.specs-mini-table table {
  width:100%;
  border-collapse:collapse;
  font-size:14.4px;
}

.specs-mini-table th {
  text-align:left;
  padding:8px 10px;
  background:#f9f9f9;
  color:#555;
  border:1px solid #eee;
  width:20%;
  font-weight:600;
}

.specs-mini-table td {
  padding:8px 10px;
  border:1px solid #eee;
  color:#333;
}

.b2b-faq-section {
  background:#fff;
  padding:40px;
  border-radius:12px;
  margin-bottom:40px;
  box-shadow:0 4px 15px rgba(0,0,0,.03);
}

.faq-box {
  background:#f9f9f9;
  border:1px solid #eee;
  border-radius:8px;
  overflow:hidden;
}

.faq-box summary {
  padding:18px 25px;
  font-size:17.6px;
  font-weight:600;
  color:#333;
  cursor:pointer;
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  transition:.3s;
}

.faq-box summary::-webkit-details-marker {
  display:none;
}

.faq-box[open] summary {
  border-bottom:1px solid #eee;
  color:var(--asia-green);
}

.faq-content {
  padding:20px 25px;
  color:#555;
  font-size:16px;
  line-height:1.6;
  background:#fff;
}

.mobile-sticky-cta {
  display:none;
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  background:#fff;
  padding:10px 15px;
  box-shadow:0 -4px 10px rgba(0,0,0,.08);
  z-index:999;
  gap:10px;
}

.mobile-sticky-cta .default-btn {
  flex:1;
  padding:12px;
  font-size:16px;
  justify-content:center;
}

.whatsapp-btn {
  background:#25d366;
  color:#fff;
  border:none;
}

.whatsapp-btn:hover {
  background:#1ebe5d;
  color:#fff;
}

.product-grid.related-grid {
  grid-template-columns:repeat(4,1fr);
}

@media (max-width:1199px) {
  .product-grid,
  .product-grid.related-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

.cat-subtitle {
  display:block;
  font-size:14.4px;
  font-weight:600;
  color:var(--asia-green);
  text-transform:uppercase;
  letter-spacing:2px;
  margin-bottom:10px;
}

.cat-title {
  font-size:44.8px;
  font-weight:700;
  color:var(--asia-green-dark);
  margin-bottom:20px;
  line-height:1.2;
}

.cat-desc {
  font-size:17.6px;
  color:#555;
  margin-bottom:25px;
  line-height:1.6;
}

.hero-b2b-points {
  list-style:none;
  padding:0;
  margin-bottom:30px;
}

.hero-b2b-points li {
  font-size:16.8px;
  color:#444;
  margin-bottom:12px;
  display:flex;
  align-items:center;
  gap:10px;
}

.cat-hero {
	background: linear-gradient(181deg, #e3f0e3 0%, #fff 100%);
	padding-bottom: 0;
}

.cat-hero-img {
  border-radius:12px;
  width:100%;
  max-height:450px;
  object-fit:cover;
}

.hero-actions .default-btn {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-right:15px;
  margin-bottom:10px;
}

.app-card {
  background:#fff;
  padding:40px 30px;
  border-radius:12px;
  box-shadow:0 5px 20px rgba(0,0,0,.03);
  transition:.3s;
}

.app-card:hover {
  transform:translateY(-5px);
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.app-card i {
  font-size:48px;
  color:var(--asia-green);
  margin-bottom:20px;
  display:inline-block;
}

.app-card h4 {
  font-size:20.8px;
  color:var(--asia-green-dark);
  margin-bottom:15px;
  font-weight:700;
}

.app-card p {
  color:#666;
  font-size:15.2px;
  line-height:1.6;
  margin:0;
}

.cat-packaging h2 {
  margin-bottom:10px;
  font-size:32px;
  color:var(--asia-green-dark);
}

.pack-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:15px;
}

.pack-item {
  background:var(--asia-border);
  padding:15px 20px;
  border-radius:8px;
  border-left:4px solid var(--asia-green);
}

.pack-item strong {
  display:block;
  color:var(--asia-green-dark);
  font-size:16.8px;
}

.pack-item span {
  color:#666;
  font-size:14.4px;
}

.cat-packaging .private-label {
  padding:16px;
}

.cert-flex {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:30px;
}

.cert-box {
  color:#fff;
}

.cert-box i {
  color:var(--asia-green);
  display:block;
}

.cert-box span {
  font-weight:600;
  letter-spacing:.5px;
}

.content-block h3 {
  color:var(--asia-green-dark);
  margin-top:30px;
  margin-bottom:15px;
  font-size:22.4px;
  font-weight:700;
}

.content-block li,
.content-block p {
  color:#555;
  font-size:16.8px;
  line-height:1.7;
  margin-bottom:15px;
}

.product-card {
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
  border:1px solid #f0f0f0;
  transition:transform .3s,box-shadow .3s;
  display:flex;
  flex-direction:column;
}

.product-card:hover {
  transform:translateY(-5px);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}

.product-thumb {
  position:relative;
  overflow:hidden;
  padding-top:100%;
  background:#f8f9fa;
  display:block;
}

.product-thumb img {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
  mix-blend-mode:multiply;
}

.product-badge {
  position:absolute;
  top:15px;
  left:15px;
  font-size:12.8px;
  font-weight:700;
  padding:6px 14px;
  border-radius:6px;
  text-transform:uppercase;
  z-index:2;
  letter-spacing:.5px;
}

.product-badge.hot {
  background:#e74c3c;
  color:#fff;
}

.product-content {
  padding:25px 20px;
  flex-grow:1;
  display:flex;
  flex-direction:column;
}

.product-cat {
	position: absolute;
    top: 30px;
    right: auto;
    background-color: #1f7a3ac4;
    border: 1px solid #e5e7eb54;
    color: var(--asia-soft-green);
    border-radius: 15px;
    font-size: 12px;
    font-weight: 600;
    text-transform: none;
    padding: 2px 12px;
}

.product-content h3 {
  font-size:20px;
  line-height:1.4;
  margin-bottom:15px;
  font-weight:700;
}

.product-content h3 a {
  color:var(--asia-green);
  transition:color .3s;
  text-decoration:none;
}

.product-content p {
  color:#555;
  font-size:16px;
  line-height:1.6;
  margin-bottom:25px;
  display:-webkit-box;
  overflow:hidden;
}

.product-card .read-more {
	margin-top: auto;
    font-weight: 600;
    color: var(--asia-green);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: 0.3s;
    font-size: 14px;
    background-color: var(--asia-green);
    color: #ffffff;
    padding: 8px 10px;
    justify-content: center;
    border-radius: 27px;
}

.product-card .read-more i {
  font-weight:400;
}

.product-card .read-more:hover {
  gap:12px;
}

.row {
  display:flex;
  flex-wrap:wrap;
  margin-left:-15px;
  margin-right:-15px;
}

.row>* {
  padding-left:15px;
  padding-right:15px;
}

.col-md-6 {
  width:50%;
}

.col-lg-8 {
  width:66.666667%;
}

.mx-auto {
  margin-left:auto;
  margin-right:auto;
}

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

.rounded {
  border-radius:8px;
}

.shadow {
  box-shadow:0 4px 15px rgba(0,0,0,.08);
}

.bg-light {
  background-color:#f8f9fa !important;
}

.bg-dark {
  background-color:#343a40 !important;
}

.text-white {
  color:#fff !important;
}

.text-light {
  color:#f8f9fa !important;
}

.text-success {
  color:var(--asia-green) !important;
}

.mb-0 {
  margin-bottom:0 !important;
}

.mb-2 {
  margin-bottom:8px !important;
}

.mb-3 {
  margin-bottom:16px !important;
}

.mb-4 {
  margin-bottom:24px !important;
}

.mb-5 {
  margin-bottom:48px !important;
}

.mt-4 {
  margin-top:24px !important;
}

.mt-5 {
  margin-top:48px !important;
}

.gap-3 {
  gap:16px !important;
}

.border {
  border:1px solid #dee2e6 !important;
}

.list-unstyled {
  padding-left:0;
  list-style:none;
}

.small {
  font-size:.875em;
}

.text-muted {
  color:#6c757d !important;
}

@media (max-width:991px) {
  .section-padding {
    padding:50px 0;
  }
  .contact-grid,
  .product-layout {
    grid-template-columns:1fr;
  }
  .app-grid,
  .news-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .article-layout {
    grid-template-columns:1fr;
    gap:30px;
  }
  .product-detail-top {
    grid-template-columns:1fr;
    gap:30px;
    padding:25px;
  }
  .cat-title {
    font-size:35.2px;
  }
  .hero-actions .default-btn {
    display:block;
    width:100%;
    text-align:center;
    margin-right:0;
  }
  .cat-hero-img {
    margin-top:30px;
  }
  .col-lg-8 {
    width:100%;
  }
}

.p-4 {
  padding:24px !important;
}

.p-md-5 {
  padding:48px !important;
}

@media (max-width:767px) {
  .app-grid,
  .news-grid,
  .pack-grid,
  .product-grid,
  .product-grid.related-grid {
    grid-template-columns:1fr;
  }
  .article-main {
    padding:25px;
  }
  .article-header h1 {
    font-size:28.8px;
  }
  .specs-table th {
    width:40%;
  }
  .specs-table td,
  .specs-table th {
    padding:12px 10px;
  }
  .product-detail-tabs .tabs-header {
    flex-wrap:nowrap;
    overflow-x:auto;
    white-space:nowrap;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }
  .product-detail-tabs .tabs-header::-webkit-scrollbar {
    height:4px;
  }
  .product-detail-tabs .tabs-header::-webkit-scrollbar-thumb {
    background:#ddd;
    border-radius:4px;
  }
  .product-detail-tabs .tab-btn {
    flex:0 0 auto;
    min-width:auto;
    padding:15px 25px;
  }
  .b2b-modal-content {
    padding:25px 20px;
    width:95%;
  }
  .b2b-quote-form .form-group {
    width:100%;
    margin-bottom:10px;
  }
  .cert-flex {
    gap:20px;
  }
  .cert-box {
    width:calc(50% - 10px);
  }
  .col-md-6 {
    width:100%;
  }
  .row {
    margin-bottom:20px;
  }
  .p-md-5 {
    padding:24px !important;
  }
}

.shadow-sm {
  box-shadow:0 2px 4px rgba(0,0,0,.075) !important;
}

.h-100 {
  height:100% !important;
}

.bg-white {
  background-color:#fff !important;
}

.text-dark {
  color:#343a40 !important;
}

.me-2 {
  margin-right:8px !important;
}

.cat-final-cta {
  background-color:var(--asia-orange);
  color:#fff;
}

.cat-final-cta p {
  color:rgba(255,255,255,.9);
  font-size:17.6px;
  max-width:600px;
  margin:0 auto;
}

.cta-actions {
  display:flex;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
  margin-top:30px;
}

.cta-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 32px;
  font-size:16.8px;
  font-weight:700;
  border-radius:8px;
  transition:.3s;
  text-decoration:none;
}

.cta-btn.primary {
  background:#fff;
  color:var(--asia-green);
  border:2px solid #fff;
}

.cta-btn.primary:hover {
  background:var(--asia-green-dark);
  color:#fff;
  border-color:var(--asia-green-dark);
}

.cta-btn.secondary {
  background:0 0;
  color:#fff;
  border:2px solid rgba(255,255,255,.5);
}

.cta-btn.secondary:hover {
  background:#fff;
  color:var(--asia-green);
  border-color:#fff;
}

.product-cat-description h2 {
  color:var(--asia-text);
  font-size:32px;
  margin-bottom:20px;
}

.page-header {
  position:relative;
  padding:80px 0;
  background-image: url('../asiafnb/assets/images/header-bg.jpg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  color:#fff;
  overflow:hidden;
}

.products-header {
  background-image:url('../asiafnb/assets/images/products-bg.jpg');
}

.page-header .container {
  position:relative;
  z-index:2;
}

.page-header::before {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:linear-gradient(135deg,rgba(0,0,0,.6) 0,rgba(22,160,133,.5) 100%);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  z-index:1;
}

.page-header .breadcrumb {
  display:inline-block;
  background:rgba(255,255,255,.2);
  padding:8px 20px;
  border-radius:30px;
  font-size:14.4px;
  margin-bottom:25px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-weight:600;
  color:#fff;
  border:1px solid rgba(255,255,255,.1);
}

.page-header-content h1 {
  font-size:56px;
  font-weight:800;
  margin-bottom:20px;
  color:#fff;
  text-shadow:0 3px 15px rgba(0,0,0,.5);
  letter-spacing:-.5px;
}

.page-header-content p {
  font-size:18.4px;
  max-width:700px;
  margin:0 auto 20px;
  color:rgba(255,255,255,.95);
  line-height:1.7;
  text-shadow:0 2px 10px rgba(0,0,0,.4);
}

@media (max-width:768px) {
  .form-row {
    flex-direction:column;
    gap:0;
  }
  .seo-hero .product-info-wrap {
    order:2;
  }
  .seo-hero .product-gallery {
    order:1;
  }
  .feature-cards-grid {
    grid-template-columns:1fr;
  }
  .specs-mini-table th {
    width:30%;
  }
  .mobile-sticky-cta {
    display:flex;
  }
  .desktop-cta {
    display:none !important;
  }
  .product-detail-page {
    padding-bottom:80px;
  }
  .page-header {
    padding:80px 0;
  }
  .page-header-content h1 {
    font-size:40px;
  }
  .page-header-content p {
    font-size:16px;
  }
}

.mobile-menu-toggle.active span {
  background-color:var(--asia-text) !important;
}

.mobile-menu-overlay {
  display:none;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background-color:rgba(0,0,0,.5);
  z-index:999;
  opacity:0;
  transition:opacity .3s;
}

.mobile-menu-overlay.active {
  display:block;
  opacity:1;
}

.cat-certs {
  padding:40px 0;
}

.cert-flex {
  gap:40px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}

.cert-box {
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:center;
}

.cert-box i {
  margin-bottom:0;
  font-size:28.8px;
}

.cert-box span {
  font-size:17.6px;
  text-align:left;
  line-height:1.2;
}

.cat-seo-faq h2.text-dark {
  font-size:32px;
}

.content-block p.text-muted {
  font-size:16.8px;
  line-height:1.8;
}

.content-block ul.list-unstyled {
  font-size:16px;
  line-height:1.7;
}

.faq-accordion {
  gap:15px;
  display:flex;
  flex-direction:column;
}

.error-404-page .section-padding {
  min-height:70vh;
  background:linear-gradient(135deg,#f8f9fa 0,#e9ecef 100%);
}

.error-404-page .error-content {
  background:rgba(255,255,255,.9);
  padding:60px 40px;
  border-radius:20px;
  box-shadow:0 10px 30px rgba(0,0,0,.05);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.2);
  max-width:800px;
  margin:0 auto;
}

.error-404-page .error-icon {
  font-size:5rem;
  color:var(--asia-green,#28a745);
  animation:3s ease-in-out infinite float;
}

.error-404-page h1 {
  font-size:6rem;
  color:var(--asia-green,#28a745);
  text-shadow:2px 4px 10px rgba(40,167,69,.2);
}

.error-404-page h2 {
  font-weight:700;
}

.error-404-page p.desc {
  max-width:500px;
  margin:0 auto;
  font-size:1.1rem;
  line-height:1.8;
}

.error-404-page .btn-group {
  gap:15px;
  display:flex;
  justify-content:center;
}

.error-404-page .default-btn {
  padding:12px 30px;
  font-weight:600;
}

.error-404-page .help-text {
  border-top:1px solid #dee2e6;
  margin-top:40px;
  padding-top:20px;
}

.error-404-page .help-text a {
  color:var(--asia-green,#28a745);
  text-decoration:none;
  font-weight:700;
}

@keyframes float {
  0%,
  100% {
    transform:translateY(0) rotate(0);
  }
  50% {
    transform:translateY(-15px) rotate(5deg);
  }
}
/* Cookie Consent Banner */
.cookie-consent-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    padding: 20px 5%;
    box-shadow: 0 -5px 20px rgba(0,0,0,0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 99999;
    transform: translateY(110%);
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    border-top: 1px solid #eee;
}
.cookie-consent-banner.show {
    transform: translateY(0);
}
.cookie-content {
    flex: 1;
    margin-right: 30px;
}

.cookie-content a{
	text-decoration: underline;
}
.cookie-content p {
    margin: 0;
    font-size: 14px;
    color: #444;
    line-height: 1.5;
}
.cookie-buttons {
    display: flex;
    gap: 12px;
}
.cookie-buttons .default-btn {
    padding: 10px 24px;
    font-size: 14px;
    border-radius: 8px;
    white-space: nowrap;
}

@media (max-width: 768px) {
    .cookie-consent-banner {
        flex-direction: column;
        text-align: left;
        padding: 20px;
    }
    .cookie-content {
        margin-right: 0;
        margin-bottom: 15px;
    }
    .cookie-buttons {
        width: 100%;
        flex-direction: column;
    }
    .cookie-buttons .default-btn {
        width: 100%;
        text-align: center;
    }
}

/* Cookie Settings Modal */
.cookie-modal {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.6);
    z-index: 100000;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s;
}
.cookie-modal.active {
    display: flex;
    opacity: 1;
}
.cookie-modal-content {
    background: #fff;
    width: 90%;
    max-width: 600px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
    transform: translateY(20px);
    transition: transform 0.3s;
}
.cookie-modal.active .cookie-modal-content {
    transform: translateY(0);
}
.cookie-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 25px;
    border-bottom: 1px solid #eee;
}
.cookie-modal-header h3 {
    margin: 0;
    font-size: 20px;
}
.close-cookie-modal {
    font-size: 28px;
    cursor: pointer;
    color: #888;
    line-height: 1;
}
.cookie-modal-body {
    padding: 25px;
    max-height: 60vh;
    overflow-y: auto;
}
.cookie-modal-body p {
    font-size: 14px;
    color: #666;
    margin-bottom: 20px;
    line-height: 1.5;
}
.cookie-option {
    margin-bottom: 20px;
    border: 1px solid #eee;
    padding: 20px;
    border-radius: 8px;
    background: #fafafa;
}
.cookie-option:last-child {
    margin-bottom: 0;
}
.cookie-option-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}
.cookie-option-header h4 {
    margin: 0;
    font-size: 16px;
    color: #333;
}
.always-active {
    font-size: 13px;
    color: var(--asia-green, #43b649);
    font-weight: bold;
}
.cookie-modal-footer {
    padding: 20px 25px;
    border-top: 1px solid #eee;
}

/* Toggle Switch */
.switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  margin: 0;
}
.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}
.slider {
  position: absolute;
  cursor: pointer;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: #ccc;
  transition: .4s;
}
.slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: .4s;
}
input:checked + .slider {
  background-color: var(--asia-green, #43b649);
}
input:checked + .slider:before {
  transform: translateX(20px);
}
.slider.round {
  border-radius: 24px;
}
.slider.round:before {
  border-radius: 50%;
}

/* Article Content Tables */
.article-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 25px 0;
  font-size: 15px;
  background-color: #fff;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
  border-radius: 8px;
  overflow: hidden;
  display: block;
  overflow-x: auto;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .article-content table {
    display: table;
    white-space: normal;
  }
}
.article-content th,
.article-content td {
  padding: 12px 15px;
  border: 1px solid #eee;
  text-align: left;
}
.article-content th {
  background-color: #f5f7fa;
  color: #333;
  font-weight: 600;
}
.article-content tr:nth-child(even) {
  background-color: #fafbfc;
}
.article-content tr:hover {
  background-color: #f0f4f8;
}

/* Mobile Menu Optimizations */
.mobile-menu-overlay {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}
.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}
@media (max-width: 992px) {
	.about-hero,
	.section-why-hero,
	.section-cert-hero{
		padding-top: 40px;
		padding-bottom: 20px;
		margin-top: 0;
	    min-height: 100vh;
	    height: auto;
	}
    .mobile-menu-toggle {
        z-index: 1001 !important; /* Above menu */
    }
    .submenu-expand {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 60px;
        height: 100%;
        margin-left: auto; /* Push to the right */
        border-left: 1px solid #eee;
        cursor: pointer;
        transition: 0.3s;
    }
    .has-submenu.active .submenu-expand svg {
        transform: rotate(180deg);
    }
    .nav-list > li > a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: 0 !important; /* Let expand handle right padding */
    }
}
