/* =============================================================
   Landing Page — VAOMA style
   ============================================================= */
:root{
	--lp-cream:#F3EFE7;
	--lp-cream-dark:#EAE4D8;
	--lp-black:#181511;
	--lp-black-soft:#252017;
	--lp-brown:#6E4A34;
	--lp-white:#FFFFFF;
	--lp-line:#D9D2C4;
	--lp-radius-pill:999px;
	--lp-container:1360px;
}

.lp{
	background:var(--lp-cream);
	color:var(--lp-black);
	font-family:'Manrope', Arial, sans-serif;
	font-size:16px;
	line-height:1.5;
	overflow-x:hidden;
}
.lp *{box-sizing:border-box;}
.lp img{max-width:100%; display:block;}
.lp a{color:inherit; text-decoration:none;}
.lp .lp-container{max-width:var(--lp-container) !important; margin:0 auto; padding:0 24px;}

.lp h1,.lp h2,.lp h3,.lp .lp-display{
	font-family:'Unbounded', 'Manrope', Arial, sans-serif !important;
	font-weight:400 !important;
	letter-spacing:-0.01em;
	margin:0;
}

.lp .lp-label{
	display:inline-flex; align-items:center; gap:8px;
	font-size:12px; font-weight:400; letter-spacing:.14em; text-transform:uppercase;
	color:var(--lp-black);
	margin-bottom:16px;
}
.lp .lp-label:before{
	content:''; width:7px; height:7px; border-radius:50%; background:var(--lp-black); display:inline-block;
}
.lp .lp-label--light:before{background:var(--lp-white);}
.lp .lp-label--light{color:var(--lp-white);}

/* ---------- buttons ---------- */
.lp .lp-btn{
	display:inline-flex; align-items:center; justify-content:center;
	padding:16px 32px; border-radius:var(--lp-radius-pill);
	font-size:13px; font-weight:400; letter-spacing:.08em; text-transform:uppercase;
	transition:all .2s ease; border:1px solid var(--lp-black); white-space:nowrap;
}
.lp .lp-btn--solid{background:var(--lp-black); color:var(--lp-white);}
.lp .lp-btn--solid:hover{background:#000;}
.lp .lp-btn--outline{background:transparent; color:var(--lp-black);}
.lp .lp-btn--outline:hover{background:var(--lp-black); color:var(--lp-white);}
.lp .lp-btn--sm{padding:12px 22px; font-size:11px;}

.lp .lp-link{
	display:inline-flex; align-items:center; gap:8px;
	font-size:12px; font-weight:400; letter-spacing:.1em; text-transform:uppercase;
	border-bottom:1px solid currentColor; padding-bottom:4px; margin-top: 10px;
}

/* ---------- hero ---------- */
.lp-hero{position:relative; padding-bottom:0;}
.lp-hero-grid{display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:20px; min-height:640px;}
.lp-hero-left{padding:20px 0;}
.lp-hero-title{font-size: 50px; line-height:.95; margin-bottom:14px;}
.lp-hero-sub{display:flex; align-items:baseline; gap:14px; margin-bottom:18px;}
.lp-hero-sub .num{font-family:'Unbounded',sans-serif; font-weight:400; font-size:44px;}
.lp-hero-sub .frac{font-size:20px; font-weight:400; border-left:2px solid var(--lp-black); padding-left:10px; line-height:1.1;}
.lp-hero-tags{
	display:flex; gap:10px; align-items:center; justify-content:center;
	font-size:13px; font-weight:400; letter-spacing:.14em; text-transform:uppercase;
	margin:22px 0 18px; max-width:340px;
}
.lp-hero-tags span:not(:last-child):after{content:'|'; margin-left:10px; opacity:.4;}
.lp-hero-desc{max-width:360px; color:#4B463D; margin-bottom:34px;}
.lp-hero-buttons{display:flex; gap:14px; flex-wrap:wrap;}
.lp-hero-right{position:relative; height:100%; min-height:640px;}
.lp-hero-image{
	position:absolute; top:0; bottom:0; right:calc(50% - 50vw); left:0; width:auto;
	background-size:cover; background-position:center; border-radius:0 0 0 40px;
}
.lp-hero-video{
	position:absolute; top:0; bottom:0; right:calc(50% - 50vw); left:0; width:auto; height:100%;
	object-fit:cover; border-radius:0 0 0 40px;
}

/* ---------- about ---------- */
.lp-about{padding:100px 0;}
.lp-about-grid{display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;}
.lp-about-media{position:relative; border-radius:18px; overflow:hidden; aspect-ratio:16/11; background:#111;}
.lp-about-media img{width:100%; height:100%; object-fit:cover;}
.lp-play{
	position:absolute; top:50%; left:60px; transform:translateY(-50%);
	width:64px; height:64px; border-radius:50%; background:var(--lp-white);
	display:flex; align-items:center; justify-content:center; box-shadow:0 10px 30px rgba(0,0,0,.3);
	display: none;
}
.lp-play:before{content:''; border-left:14px solid var(--lp-black); border-top:9px solid transparent; border-bottom:9px solid transparent; margin-left:4px;}
.lp-about-title{font-size:36px; line-height:1.15; margin-bottom:18px;}
.lp-about-desc{color:#4B463D; margin-bottom:26px; max-width:460px;}

/* ---------- offer ---------- */
.lp-offer{padding:60px 0 100px;}
.lp-offer-grid{display:grid; grid-template-columns:280px 1fr; gap:50px;}
.lp-offer-title{font-size:32px; line-height:1.15; margin-bottom:20px;}
.lp-offer-carousel-wrap{overflow:hidden;}
.lp-offer-swiper{overflow:visible !important; padding-bottom:4px;}
.lp-offer-slide{height:auto;}
.lp-offer-slide .lp-product-card{height:100%;}
.lp-offer-pagination{display:flex; justify-content:center; gap:8px; padding-top:28px;}
.lp-offer-pagination .swiper-pagination-bullet{
	width:8px; height:8px; border-radius:50%; background:var(--lp-line); opacity:1; cursor:pointer;
}
.lp-offer-pagination .swiper-pagination-bullet-active{background:var(--lp-black);}
.lp-product-card{
	display:block !important;
	border:1px solid var(--lp-line) !important;
	border-radius:16px !important;
	overflow:hidden !important;
	background:var(--lp-white) !important;
}
.lp-product-card .lp-product-image{aspect-ratio:300/250; overflow:hidden;}
.lp-product-card .lp-product-image img{width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .3s ease;}
.lp-product-card:hover .lp-product-image img{transform:scale(1.08);}
.lp-product-info{padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:8px;}
.lp-product-name{font-size:12px; font-weight:400; letter-spacing:.06em; text-transform:uppercase;}
.lp-product-price{font-size:13px; font-weight:400; white-space:nowrap;}

/* ---------- banners (swiper) ---------- */
.lp-banners{background:var(--lp-cream); padding:0;}
.lp-banners-swiper{overflow:visible !important;}
.lp-banner-slide{width:62%;}

.lp-banner-split{
	display:flex; align-items:stretch; min-height:400px; overflow:hidden; text-decoration:none;
}

/* Alternating theme: 1st, 3rd, 5th... banner = dark; 2nd, 4th, 6th... = light.
   Colors are set explicitly (with !important) on every text element below
   rather than relying on `color:inherit`, because this site's own global
   CSS was overriding the inherited color and making dark-on-dark text
   invisible on the dark variant. */
.lp-banner-split--dark{background:var(--lp-black) !important;}
.lp-banner-split--dark .lp-label,
.lp-banner-split--dark .lp-banner-title,
.lp-banner-split--dark .lp-banner-link{color:var(--lp-white) !important;}
.lp-banner-split--dark .lp-label:before{background:var(--lp-white) !important;}
.lp-banner-split--dark .lp-banner-arrow{border-color:var(--lp-white) !important; color:var(--lp-white) !important;}

.lp-banner-split--light{background:var(--lp-cream-dark) !important;}
.lp-banner-split--light .lp-label,
.lp-banner-split--light .lp-banner-title,
.lp-banner-split--light .lp-banner-link{color:var(--lp-black) !important;}
.lp-banner-split--light .lp-label:before{background:var(--lp-black) !important;}
.lp-banner-split--light .lp-banner-arrow{border-color:var(--lp-black) !important; color:var(--lp-black) !important;}

.lp-banner-text{
	flex:0 0 40%; padding:48px 40px; display:flex; flex-direction:column; justify-content:center;
}
.lp-banner-title{font-size:28px; line-height:1.2; margin:10px 0 22px;}
.lp-banner-link{
	display:inline-flex; align-items:center; gap:14px;
	font-size:12px; font-weight:400; letter-spacing:.1em; text-transform:uppercase;
	border-bottom:1px solid currentColor; padding-bottom:4px; width:fit-content;
}
.lp-banner-image{flex:1; background-size:cover; background-position:center; background-color:var(--lp-cream-dark); min-height:100%;}
.lp-banner-arrow{
	width:44px; height:44px; border-radius:50%; border:1px solid currentColor;
	display:inline-flex; align-items:center; justify-content:center; margin-left:4px; flex:0 0 auto;
}

.lp-banners-pagination{display:flex; justify-content:center; gap:8px; padding:28px 0;}
.lp-banners-pagination .swiper-pagination-bullet{
	width:8px; height:8px; border-radius:50%; background:var(--lp-line); opacity:1; cursor:pointer;
}
.lp-banners-pagination .swiper-pagination-bullet-active{background:var(--lp-black);}

/* ---------- catalog (top-level category list) ---------- */
.lp-breadcrumb-wrap{padding-top:30px;}
.lp-catalog-head{padding:24px 0 30px;}
.lp-catalog-title{font-size: 30px; line-height:1.15; margin-top:10px;}
.lp-catalog-list{padding-bottom:80px;}
.lp-catalog-grid{display:grid; grid-template-columns:repeat(2, 1fr); gap:24px;}
.lp-catalog-grid .lp-catalog-row{min-height:340px; text-decoration:none !important; border-radius:18px; overflow:hidden;}
.lp-catalog-desc{font-size:14px; line-height:1.5; opacity:.85; margin:6px 0 18px; max-width:480px;}

/* ---------- decorative arcs (optional flourish) ---------- */
.lp-arcs{position:absolute; pointer-events:none; opacity:.5;}

/* ---------- responsive ---------- */
@media (max-width: 800px){
	.lp-catalog-grid{grid-template-columns:1fr;}
	.lp-hero-grid{grid-template-columns:1fr; min-height:auto; padding-top: 30px;}
	.lp-hero-right{min-height:300px; order:-1;}
	.lp-hero-image{position:relative; inset:auto; border-radius:24px; height:300px;}
	.lp-hero-video{position: relative;
    inset: auto;
    border-radius: 24px;
    height: 300px;
    width: 100%;}
	.lp-hero-title{font-size: 34px;}
	.lp-catalog-title{font-size:30px;}
	.lp-about-grid{grid-template-columns:1fr;}
	.lp-offer-grid{grid-template-columns:1fr;}
	.lp-banner-slide{width:88%;}
	.lp-banner-split{flex-direction:column;}
	.lp-banner-text{flex:none; padding:36px 28px;}
	.lp-banner-image{min-height: 160px;}
}
@media (max-width: 560px){
	.lp-hero-buttons{flex-direction:column; align-items:stretch;}
	.lp-hero-buttons .lp-btn{text-align:center;}
	.lp-banner-slide{width:96%;}
	.lp-banner-text{padding:28px 22px;}
	.lp-hero-sub .num {
  font-size: 30px;
}
.lp-hero-sub {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 18px;
  justify-content: center;
}
body.vdoma-theme h1, body.vdoma-theme h2, body.vdoma-theme h3, body.vdoma-theme h4, body.vdoma-theme h5, body.vdoma-theme h6 {
  text-align: center;
}
.lp .lp-btn {
  padding: 12px 32px;
}
.lp-about {
  padding: 50px 0;
}
.lp-hero-desc {
  margin-bottom: 24px;
}
.lp-about-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
.lp-about-desc {
  color: #4B463D;
  margin-bottom: 0px;
}
.lp-about-grid div, .lp-offer-grid div {
	text-align: center;
}
.lp-about-title {
  font-size: 28px;
  line-height: 1.15;
}
.lp-offer {
  padding: 10px 0 70px;
}
.lp-offer-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
.lp-banners .lp-banner-title {
  font-size: 24px;
  text-align: left;
  min-height: 86px;
}
.lp-banner-arrow {
  width: 34px;
  height: 34px;
}
.lp-banner-link .fa {
	font-size: 12px;
}

}
