/* All styles scoped under .li-md — theme-safe */
.li-md {
--li-gold: #c9a84c;
--li-gold-light: #e5c07b;
--li-gold-dark: #a6853b;
--li-gold-pale: #f5efe0;
--li-gold-glow: rgba(201,168,76,0.15);
--li-border-gold: rgba(201,168,76,0.3);
--li-text: #1a1a2e;
--li-text-mid: #4a4a68;
--li-text-light: #8a8aa0;
--li-white: #ffffff;
--li-cream: #fdfcf8;
--li-border: #ececec;
--li-shadow-md: 0 8px 32px rgba(201,168,76,0.12);
--li-shadow-lg: 0 20px 60px rgba(201,168,76,0.18);
--li-ease: all 0.5s cubic-bezier(0.25,0.46,0.45,0.94);
--li-serif: 'Cormorant Garamond', Georgia, serif;
--li-sans: 'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
font-family: var(--li-sans);
color: var(--li-text);
line-height: 1.7;
font-size: clamp(15px, 1.6vw, 16px);
background: var(--li-white);
box-sizing: border-box;
-webkit-tap-highlight-color: transparent;
/* Full-bleed support — do NOT add overflow or max-width here
(overflow-x:hidden breaks position:sticky nav) */
flex: 0 0 auto;
width: 100%;
}
.li-md, .li-md *, .li-md *::before, .li-md *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
.li-md img { max-width: 100%; height: auto; }
.li-md a { text-decoration: none; }
.li-md ul { list-style: none; }
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Jost:wght@300;400;500;600;700&display=swap');
.li-md .li-container {
max-width: 1140px;
margin: 0 auto;
padding: 0 clamp(16px, 4vw, 24px);
width: 100%;
}
/* ============================================
SCROLL PROGRESS
============================================ */
.li-md .li-progress {
position: fixed;
top: 0; left: 0;
width: 0%;
height: 3px;
background: linear-gradient(90deg, var(--li-gold), var(--li-gold-light), var(--li-gold));
background-size: 200% auto;
z-index: 99999;
transition: width 0.1s;
animation: liShimmer 3s linear infinite;
}
@keyframes liShimmer { to { background-position: 200% center; } }
/* ============================================
TOP BAR
============================================ */
.li-md .li-topbar {
background: var(--li-text);
color: var(--li-gold);
padding: 10px 0;
font-size: clamp(11px, 2.8vw, 13px);
letter-spacing: 0.5px;
position: relative;
z-index: 100;
}
.li-md .li-topbar-inner {
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.li-md .li-top-item {
display: flex;
align-items: center;
gap: 6px;
white-space: nowrap;
}
.li-md .li-top-item svg { width: 13px; height: 13px; fill: var(--li-gold); flex-shrink: 0; }
.li-md .li-topbar a { color: var(--li-gold); font-weight: 600; }
.li-md .li-live-dot {
width: 6px; height: 6px;
background: #4ade80;
border-radius: 50%;
flex-shrink: 0;
animation: liPulse 2s infinite;
}
@keyframes liPulse {
0%,100% { box-shadow: 0 0 0 0 rgba(74,222,128,0.5); }
50% { box-shadow: 0 0 0 6px rgba(74,222,128,0); }
}
/* ============================================
NAV (sticky)
============================================ */
.li-md .li-nav {
background: rgba(255,255,255,0.96);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-bottom: 1px solid var(--li-border);
position: sticky;
top: 0;
z-index: 9000;
}
.li-md .li-nav-inner {
display: flex;
justify-content: space-between;
align-items: center;
padding: 14px 0;
gap: 12px;
}
.li-md .li-logo {
font-family: var(--li-serif);
font-size: clamp(1.2rem, 4vw, 1.6rem);
font-weight: 700;
color: var(--li-text);
letter-spacing: -0.5px;
}
.li-md .li-logo em { color: var(--li-gold); font-style: italic; }
.li-md .li-nav-links { display: flex; gap: clamp(18px, 3vw, 36px); }
.li-md .li-nav-links a {
color: var(--li-text-mid);
font-weight: 500;
font-size: clamp(11px, 2.5vw, 14px);
letter-spacing: 0.5px;
text-transform: uppercase;
position: relative;
padding: 6px 0;
transition: color 0.3s;
}
.li-md .li-nav-links a::after {
content: '';
position: absolute;
bottom: 0; left: 50%;
width: 0; height: 1.5px;
background: var(--li-gold);
transition: all 0.4s;
}
.li-md .li-nav-links a:hover { color: var(--li-gold); }
.li-md .li-nav-links a:hover::after { width: 100%; left: 0; }
.li-md .li-nav-cta {
color: var(--li-gold);
padding: 10px 20px;
border: 1.5px solid var(--li-gold);
border-radius: 50px;
font-weight: 600;
font-size: clamp(11px, 2.5vw, 13px);
letter-spacing: 1px;
text-transform: uppercase;
transition: var(--li-ease);
position: relative;
overflow: hidden;
z-index: 1;
white-space: nowrap;
}
.li-md .li-nav-cta::before {
content: '';
position: absolute;
inset: 0;
background: var(--li-gold);
transform: scaleX(0);
transform-origin: right;
transition: transform 0.5s;
z-index: -1;
}
.li-md .li-nav-cta:hover::before { transform: scaleX(1); transform-origin: left; }
.li-md .li-nav-cta:hover { color: white; }
/* ============================================
SECTIONS BASE
============================================ */
.li-md section { padding: clamp(56px, 9vw, 100px) 0; position: relative; }
/* ============================================
HERO
============================================ */
.li-md .li-hero {
background: linear-gradient(180deg, var(--li-cream) 0%, var(--li-white) 100%);
overflow: hidden; /* section-level clip — sticky nav is outside, safe */
padding: clamp(48px, 8vw, 100px) 0 clamp(40px, 7vw, 80px);
}
.li-md .li-hero::before {
content: '';
position: absolute;
top: -200px; right: -200px;
width: 600px; height: 600px;
background: radial-gradient(circle, var(--li-gold-glow) 0%, transparent 70%);
animation: liBlob 20s ease-in-out infinite;
pointer-events: none;
}
@keyframes liBlob {
0%,100% { transform: translate(0,0) scale(1); }
33% { transform: translate(40px,-40px) scale(1.1); }
66% { transform: translate(-30px,30px) scale(0.95); }
}
.li-md .li-hero-grid {
display: grid;
grid-template-columns: 1.15fr 0.85fr;
gap: clamp(36px, 6vw, 70px);
align-items: center;
position: relative;
z-index: 2;
}
.li-md .li-eyebrow {
display: inline-flex;
align-items: center;
gap: 10px;
color: var(--li-gold);
font-size: clamp(10px, 2.6vw, 13px);
font-weight: 600;
letter-spacing: 3px;
text-transform: uppercase;
margin-bottom: 20px;
animation: liFadeUp 0.8s 0.3s both;
}
.li-md .li-eyebrow::before,
.li-md .li-eyebrow::after {
content: '';
width: 28px; height: 1px;
background: var(--li-gold);
}
.li-md .li-hero h1 {
font-family: var(--li-serif);
font-size: clamp(2rem, 6.5vw, 3.8rem);
line-height: 1.1;
font-weight: 600;
letter-spacing: -1px;
margin-bottom: 20px;
color: var(--li-text);
}
.li-md .li-hero h1 .li-w {
display: inline-block;
opacity: 0;
transform: translateY(30px);
animation: liWordIn 0.7s both;
}
@keyframes liWordIn { to { opacity: 1; transform: translateY(0); } }
.li-md .li-gold-acc { color: var(--li-gold); font-style: italic; }
.li-md .li-hero-sub {
font-size: clamp(0.95rem, 3.2vw, 1.1rem);
color: var(--li-text-light);
margin-bottom: 32px;
max-width: 500px;
font-weight: 300;
animation: liFadeUp 0.8s 1s both;
}
@keyframes liFadeUp {
from { opacity: 0; transform: translateY(30px); }
to { opacity: 1; transform: translateY(0); }
}
.li-md .li-benefits {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 36px;
animation: liFadeUp 0.8s 1.2s both;
}
.li-md .li-benefit {
display: flex;
align-items: center;
gap: 12px;
color: var(--li-text-mid);
font-size: clamp(13px, 3.2vw, 15px);
}
.li-md .li-benefit-ic {
width: 26px; height: 26px;
border: 1.5px solid var(--li-gold);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
min-width: 26px;
transition: var(--li-ease);
}
.li-md .li-benefit:hover .li-benefit-ic { background: var(--li-gold); }
.li-md .li-benefit-ic svg { width: 12px; height: 12px; fill: var(--li-gold); transition: fill 0.3s; }
.li-md .li-benefit:hover .li-benefit-ic svg { fill: white; }
.li-md .li-hero-actions {
display: flex;
gap: 16px;
flex-wrap: wrap;
animation: liFadeUp 0.8s 1.4s both;
}
.li-md .li-btn-gold {
background: linear-gradient(135deg, var(--li-gold), var(--li-gold-dark));
color: white;
padding: 15px 32px;
border-radius: 50px;
font-size: clamp(14px, 3.5vw, 15px);
font-weight: 600;
letter-spacing: 1px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
min-height: 48px;
transition: var(--li-ease);
box-shadow: 0 8px 24px rgba(201,168,76,0.35);
position: relative;
overflow: hidden;
}
.li-md .li-btn-gold::after {
content: '';
position: absolute;
top: -50%; left: -50%;
width: 200%; height: 200%;
background: linear-gradient(45deg, transparent, rgba(255,255,255,0.3), transparent);
transform: rotate(45deg) translate(-150%,-150%);
transition: transform 0.8s;
}
.li-md .li-btn-gold:hover::after { transform: rotate(45deg) translate(150%,150%); }
.li-md .li-btn-gold:hover {
transform: translateY(-3px);
box-shadow: 0 15px 40px rgba(201,168,76,0.5);
}
.li-md .li-btn-gold svg { width: 18px; height: 18px; fill: white; flex-shrink: 0; }
.li-md .li-btn-ghost {
color: var(--li-text);
padding: 15px 32px;
border: 1.5px solid var(--li-border);
border-radius: 50px;
font-weight: 500;
letter-spacing: 1px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
min-height: 48px;
transition: var(--li-ease);
}
.li-md .li-btn-ghost:hover {
border-color: var(--li-gold);
color: var(--li-gold);
transform: translateY(-3px);
}
.li-md .li-btn-ghost svg { width: 16px; height: 16px; fill: currentColor; }
.li-md .li-hero-stats {
margin-top: clamp(32px, 5vw, 50px);
padding-top: clamp(24px, 4vw, 36px);
border-top: 1px solid var(--li-border);
display: flex;
gap: clamp(24px, 5vw, 50px);
flex-wrap: wrap;
animation: liFadeUp 0.8s 1.6s both;
}
.li-md .li-stat-num {
font-family: var(--li-serif);
font-size: clamp(1.8rem, 6vw, 2.6rem);
font-weight: 700;
color: var(--li-gold);
display: block;
line-height: 1.1;
margin-bottom: 4px;
}
.li-md .li-stat-lab {
font-size: clamp(10px, 2.5vw, 12px);
color: var(--li-text-light);
letter-spacing: 1.5px;
text-transform: uppercase;
font-weight: 500;
}
/* Hero Card */
.li-md .li-hero-visual {
position: relative;
animation: liScaleIn 1s 0.6s both;
}
@keyframes liScaleIn {
from { opacity: 0; transform: scale(0.92); }
to { opacity: 1; transform: scale(1); }
}
.li-md .li-hcard {
background: var(--li-white);
border: 1px solid var(--li-border-gold);
border-radius: clamp(16px, 4vw, 24px);
padding: clamp(24px, 5vw, 36px);
box-shadow: var(--li-shadow-lg);
position: relative;
overflow: hidden;
animation: liFloat 6s ease-in-out infinite;
}
@keyframes liFloat {
0%,100% { transform: translateY(0); }
50% { transform: translateY(-12px); }
}
.li-md .li-hcard::before {
content: '';
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--li-gold), var(--li-gold-light), var(--li-gold));
background-size: 200% auto;
animation: liShimmer 3s linear infinite;
}
.li-md .li-hcard-head {
display: flex;
align-items: center;
gap: 14px;
margin-bottom: 22px;
padding-bottom: 18px;
border-bottom: 1px solid var(--li-border);
}
.li-md .li-hcard-ic {
width: 50px; height: 50px;
background: var(--li-gold-pale);
border-radius: 14px;
display: flex;
align-items: center;
justify-content: center;
position: relative;
flex-shrink: 0;
}
.li-md .li-hcard-ic::after {
content: '';
position: absolute;
inset: -4px;
border: 1px dashed var(--li-border-gold);
border-radius: 18px;
animation: liSpin 20s linear infinite;
}
@keyframes liSpin { to { transform: rotate(360deg); } }
.li-md .li-hcard-ic svg { width: 24px; height: 24px; fill: var(--li-gold); }
.li-md .li-hcard-head h3 {
font-family: var(--li-serif);
font-size: clamp(1rem, 3.5vw, 1.25rem);
font-weight: 600;
}
.li-md .li-hcard-head p { font-size: 12px; color: var(--li-text-light); }
.li-md .li-mstep {
display: flex;
gap: 14px;
padding: 11px 0;
position: relative;
}
.li-md .li-mstep:not(:last-child)::before {
content: '';
position: absolute;
left: 14px; top: 38px; bottom: 0;
width: 1px;
background: linear-gradient(180deg, var(--li-gold), transparent);
}
.li-md .li-mdot {
width: 29px; height: 29px;
border: 1.5px solid var(--li-gold);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
font-weight: 600;
color: var(--li-gold);
flex-shrink: 0;
background: var(--li-white);
transition: var(--li-ease);
z-index: 2;
}
.li-md .li-mstep:hover .li-mdot { background: var(--li-gold); color: white; }
.li-md .li-mstep h4 { font-size: 14px; font-weight: 600; }
.li-md .li-mstep span { font-size: 11.5px; color: var(--li-gold); font-weight: 500; }
.li-md .li-hcard-foot {
margin-top: 20px;
padding-top: 18px;
border-top: 1px solid var(--li-border);
text-align: center;
}
.li-md .li-hcard-foot p { font-size: 13px; color: var(--li-text-light); margin-bottom: 8px; }
.li-md .li-card-phone {
font-family: var(--li-serif);
font-size: clamp(1.3rem, 5vw, 1.7rem);
font-weight: 700;
color: var(--li-gold);
display: inline-block;
transition: letter-spacing 0.3s;
}
.li-md .li-card-phone:hover { letter-spacing: 2px; }
/* ============================================
SECTION HEADERS
============================================ */
.li-md .li-shead { text-align: center; margin-bottom: clamp(40px, 6vw, 70px); }
.li-md .li-stag {
display: inline-flex;
align-items: center;
gap: 12px;
color: var(--li-gold);
font-size: clamp(10px, 2.6vw, 12px);
font-weight: 600;
letter-spacing: 4px;
text-transform: uppercase;
margin-bottom: 14px;
}
.li-md .li-stag::before,
.li-md .li-stag::after {
content: '';
width: 32px; height: 1px;
background: linear-gradient(90deg, transparent, var(--li-gold), transparent);
}
.li-md .li-stitle {
font-family: var(--li-serif);
font-size: clamp(1.6rem, 5.5vw, 2.6rem);
font-weight: 600;
letter-spacing: -0.5px;
margin-bottom: 16px;
line-height: 1.2;
}
.li-md .li-ssub {
color: var(--li-text-light);
font-size: clamp(0.9rem, 3vw, 1.05rem);
max-width: 560px;
margin: 0 auto;
font-weight: 300;
}
/* ============================================
PAIN POINTS
============================================ */
.li-md .li-pain-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
gap: clamp(18px, 3vw, 28px);
}
.li-md .li-pcard {
background: var(--li-cream);
border: 1px solid var(--li-border);
border-radius: 20px;
padding: clamp(24px, 5vw, 36px) clamp(20px, 4vw, 30px);
position: relative;
overflow: hidden;
transition: var(--li-ease);
opacity: 0;
transform: translateY(40px);
}
.li-md .li-pcard.li-vis { opacity: 1; transform: translateY(0); }
.li-md .li-pcard::before {
content: '';
position: absolute;
top: 0; left: 0;
width: 100%; height: 0;
background: linear-gradient(180deg, var(--li-gold-glow), transparent);
transition: height 0.6s;
}
.li-md .li-pcard:hover::before { height: 100%; }
.li-md .li-pcard:hover {
transform: translateY(-6px);
border-color: var(--li-border-gold);
box-shadow: var(--li-shadow-md);
}
.li-md .li-pnum {
font-family: var(--li-serif);
font-size: 3rem;
color: var(--li-border-gold);
position: absolute;
top: 14px; right: 20px;
line-height: 1;
transition: color 0.3s;
}
.li-md .li-pcard:hover .li-pnum { color: var(--li-gold); }
.li-md .li-pquote {
font-family: var(--li-serif);
font-size: clamp(1.05rem, 4vw, 1.3rem);
font-style: italic;
margin-bottom: 12px;
position: relative;
z-index: 2;
line-height: 1.4;
}
.li-md .li-ptext {
font-size: clamp(13px, 3.2vw, 14.5px);
color: var(--li-text-light);
line-height: 1.7;
position: relative;
z-index: 2;
}
.li-md .li-solution {
margin-top: clamp(32px, 5vw, 50px);
background: linear-gradient(135deg, var(--li-white), var(--li-gold-pale));
border: 1px solid var(--li-border-gold);
border-radius: 20px;
padding: clamp(24px, 5vw, 40px);
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap;
position: relative;
overflow: hidden;
}
.li-md .li-solution::before {
content: '';
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--li-gold);
}
.li-md .li-solution h3 {
font-family: var(--li-serif);
font-size: clamp(1.2rem, 4.5vw, 1.6rem);
margin-bottom: 6px;
}
.li-md .li-solution p { color: var(--li-text-light); font-size: clamp(13px, 3.3vw, 15px); }
.li-md .li-sol-btn {
background: var(--li-gold);
color: white;
padding: 14px 30px;
border-radius: 50px;
font-weight: 600;
font-size: clamp(12px, 3vw, 14px);
letter-spacing: 1px;
white-space: nowrap;
display: inline-flex;
align-items: center;
gap: 10px;
min-height: 48px;
transition: var(--li-ease);
box-shadow: 0 6px 20px rgba(201,168,76,0.3);
}
.li-md .li-sol-btn:hover {
background: var(--li-gold-dark);
transform: translateY(-3px);
box-shadow: 0 12px 30px rgba(201,168,76,0.45);
}
.li-md .li-sol-btn svg { width: 16px; height: 16px; fill: white; }
/* ============================================
PROCESS
============================================ */
.li-md .li-proc { background: var(--li-cream); }
.li-md .li-psteps {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 20px;
position: relative;
}
.li-md .li-pline {
position: absolute;
top: 37px; left: 10%; right: 10%;
height: 1px;
background: linear-gradient(90deg, transparent, var(--li-gold), var(--li-gold), transparent);
transform: scaleX(0);
transition: transform 2s ease-out;
}
.li-md .li-proc-wrap.li-vis .li-pline { transform: scaleX(1); }
.li-md .li-pstep {
text-align: center;
opacity: 0;
transform: translateY(30px);
transition: var(--li-ease);
}
.li-md .li-pstep.li-vis { opacity: 1; transform: translateY(0); }
.li-md .li-pcirc {
width: clamp(58px, 16vw, 74px);
height: clamp(58px, 16vw, 74px);
background: var(--li-white);
border: 1.5px solid var(--li-border-gold);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 16px;
position: relative;
transition: var(--li-ease);
z-index: 2;
}
.li-md .li-pcirc svg { width: clamp(24px, 6vw, 30px); height: clamp(24px, 6vw, 30px); fill: var(--li-gold); transition: var(--li-ease); }
.li-md .li-pstep:hover .li-pcirc {
border-color: var(--li-gold);
background: var(--li-gold);
transform: scale(1.1);
box-shadow: 0 10px 30px rgba(201,168,76,0.4);
}
.li-md .li-pstep:hover .li-pcirc svg { fill: white; }
.li-md .li-ptime {
display: inline-block;
font-size: 11px;
font-weight: 600;
color: var(--li-gold);
letter-spacing: 1.5px;
text-transform: uppercase;
margin-bottom: 8px;
padding: 4px 12px;
background: var(--li-gold-pale);
border-radius: 20px;
}
.li-md .li-pstep h3 {
font-family: var(--li-serif);
font-size: clamp(1rem, 3.2vw, 1.15rem);
font-weight: 600;
margin-bottom: 6px;
}
.li-md .li-pstep p { font-size: clamp(12px, 3vw, 13.5px); color: var(--li-text-light); line-height: 1.6; }
/* ============================================
COMPARISON
============================================ */
.li-md .li-cmp-wrap {
border: 1px solid var(--li-border);
border-radius: 20px;
overflow: hidden;
box-shadow: 0 2px 12px rgba(201,168,76,0.08);
}
.li-md .li-cmp-table { width: 100%; border-collapse: collapse; }
.li-md .li-cmp-table th {
background: var(--li-text);
color: white;
padding: clamp(14px, 3.5vw, 22px) clamp(12px, 3.5vw, 28px);
text-align: left;
font-family: var(--li-serif);
font-size: clamp(0.9rem, 3vw, 1.15rem);
font-weight: 600;
}
.li-md .li-cmp-table th:first-child { background: var(--li-gold); }
.li-md .li-cmp-table th.li-gcol { color: var(--li-gold); }
.li-md .li-cmp-table td {
padding: clamp(12px, 3vw, 18px) clamp(12px, 3.5vw, 28px);
border-bottom: 1px solid var(--li-border);
font-size: clamp(12px, 3vw, 14.5px);
color: var(--li-text-mid);
}
.li-md .li-cmp-table tr:last-child td { border-bottom: none; }
.li-md .li-cmp-table tbody tr:hover { background: var(--li-cream); }
.li-md .li-tdlab { font-weight: 600; color: var(--li-text) !important; }
.li-md .li-tdmut {
color: var(--li-text) !important;
font-weight: 500;
background: rgba(201,168,76,0.04);
}
.li-md .li-tdmut svg, .li-md .li-tdcon svg {
width: 15px; height: 15px;
vertical-align: middle;
margin-right: 6px;
}
.li-md .li-tdmut svg { fill: var(--li-gold); }
.li-md .li-tdcon svg { fill: #ccc; }
/* ============================================
DOCUMENTS
============================================ */
.li-md .li-docs { background: var(--li-cream); }
.li-md .li-docs-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
gap: 16px;
}
.li-md .li-dcard {
background: var(--li-white);
border: 1px solid var(--li-border);
border-radius: 16px;
padding: clamp(20px, 4vw, 26px) clamp(16px, 3.5vw, 22px);
transition: var(--li-ease);
position: relative;
overflow: hidden;
opacity: 0;
transform: translateY(24px);
}
.li-md .li-dcard.li-vis { opacity: 1; transform: translateY(0); }
.li-md .li-dcard::after {
content: '';
position: absolute;
bottom: 0; left: 0;
width: 100%; height: 2px;
background: var(--li-gold);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.5s;
}
.li-md .li-dcard:hover::after { transform: scaleX(1); }
.li-md .li-dcard:hover {
transform: translateY(-5px);
border-color: var(--li-border-gold);
box-shadow: var(--li-shadow-md);
}
.li-md .li-dic {
width: 46px; height: 46px;
background: var(--li-gold-pale);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 14px;
transition: var(--li-ease);
}
.li-md .li-dcard:hover .li-dic { background: var(--li-gold); transform: rotate(-8deg); }
.li-md .li-dic svg { width: 22px; height: 22px; fill: var(--li-gold); transition: fill 0.3s; }
.li-md .li-dcard:hover .li-dic svg { fill: white; }
.li-md .li-dcard h4 { font-size: 14.5px; font-weight: 600; margin-bottom: 3px; }
.li-md .li-dcard p { font-size: 12.5px; color: var(--li-text-light); }
/* ============================================
WHY US
============================================ */
.li-md .li-why {
background: linear-gradient(160deg, #1a1a2e 0%, #12122a 100%);
color: white;
overflow: hidden;
}
.li-md .li-why .li-stitle { color: white; }
.li-md .li-why .li-ssub { color: rgba(255,255,255,0.6); }
.li-md .li-why-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
gap: clamp(20px, 3vw, 28px);
position: relative;
z-index: 2;
}
.li-md .li-wcard {
background: rgba(255,255,255,0.03);
border: 1px solid rgba(201,168,76,0.2);
border-radius: 20px;
padding: clamp(26px, 5vw, 38px) clamp(22px, 4vw, 32px);
transition: var(--li-ease);
opacity: 0;
transform: translateY(30px);
}
.li-md .li-wcard.li-vis { opacity: 1; transform: translateY(0); }
.li-md .li-wcard:hover {
border-color: var(--li-gold);
transform: translateY(-6px);
background: rgba(255,255,255,0.05);
}
.li-md .li-wic {
width: 56px; height: 56px;
background: linear-gradient(135deg, var(--li-gold), var(--li-gold-dark));
border-radius: 16px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
position: relative;
}
.li-md .li-wic::after {
content: '';
position: absolute;
inset: -5px;
border: 1px dashed var(--li-gold);
border-radius: 20px;
opacity: 0;
transition: opacity 0.4s;
}
.li-md .li-wcard:hover .li-wic::after {
opacity: 0.6;
animation: liSpin 12s linear infinite;
}
.li-md .li-wic svg { width: 26px; height: 26px; fill: white; }
.li-md .li-wcard h3 {
font-family: var(--li-serif);
font-size: clamp(1.1rem, 3.8vw, 1.3rem);
margin-bottom: 10px;
color: white;
}
.li-md .li-wcard p {
font-size: clamp(13px, 3.2vw, 14.5px);
color: rgba(255,255,255,0.65);
line-height: 1.7;
}
/* ============================================
TESTIMONIALS
============================================ */
.li-md .li-marquee-wrap {
position: relative;
overflow: hidden;
padding: 16px 0;
}
.li-md .li-marquee-wrap::before,
.li-md .li-marquee-wrap::after {
content: '';
position: absolute;
top: 0; bottom: 0;
width: 80px;
z-index: 2;
pointer-events: none;
}
.li-md .li-marquee-wrap::before {
left: 0;
background: linear-gradient(90deg, var(--li-white), transparent);
}
.li-md .li-marquee-wrap::after {
right: 0;
background: linear-gradient(270deg, var(--li-white), transparent);
}
.li-md .li-marquee {
display: flex;
gap: 24px;
width: max-content;
animation: liMarquee 45s linear infinite;
}
.li-md .li-marquee-wrap:hover .li-marquee { animation-play-state: paused; }
@keyframes liMarquee {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
.li-md .li-tcard {
background: var(--li-cream);
border: 1px solid var(--li-border);
border-radius: 18px;
padding: clamp(22px, 4vw, 30px);
width: min(340px, 82vw);
flex-shrink: 0;
transition: var(--li-ease);
position: relative;
}
.li-md .li-tcard::before {
content: '"';
font-family: var(--li-serif);
font-size: 4rem;
color: var(--li-gold-pale);
position: absolute;
top: 8px; right: 20px;
line-height: 1;
}
.li-md .li-tcard:hover {
border-color: var(--li-border-gold);
transform: scale(1.02);
box-shadow: var(--li-shadow-md);
}
.li-md .li-tstars { color: var(--li-gold); font-size: 14px; letter-spacing: 3px; margin-bottom: 12px; }
.li-md .li-ttext {
font-family: var(--li-serif);
font-size: clamp(0.95rem, 3.4vw, 1.05rem);
color: var(--li-text-mid);
line-height: 1.8;
font-style: italic;
margin-bottom: 16px;
}
.li-md .li-tauth { display: flex; align-items: center; gap: 12px; }
.li-md .li-tav {
width: 44px; height: 44px;
background: linear-gradient(135deg, var(--li-gold), var(--li-gold-light));
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: 600;
font-size: 14px;
color: white;
flex-shrink: 0;
}
.li-md .li-tinfo h5 { font-size: 14px; font-weight: 600; }
.li-md .li-tinfo span { font-size: 12px; color: var(--li-text-light); }
/* ============================================
FAQ
============================================ */
.li-md .li-faq { background: var(--li-cream); }
.li-md .li-faq-list { max-width: 780px; margin: 0 auto; }
.li-md .li-fitem {
background: var(--li-white);
border: 1px solid var(--li-border);
border-radius: 16px;
margin-bottom: 12px;
overflow: hidden;
transition: var(--li-ease);
}
.li-md .li-fitem.li-act { border-color: var(--li-gold); box-shadow: var(--li-shadow-md); }
.li-md .li-fq {
padding: clamp(18px, 4vw, 24px) clamp(16px, 4vw, 28px);
display: flex;
justify-content: space-between;
align-items: center;
gap: 14px;
cursor: pointer;
font-weight: 500;
font-size: clamp(14px, 3.5vw, 15.5px);
color: var(--li-text);
min-height: 48px;
user-select: none;
-webkit-user-select: none;
}
.li-md .li-fitem.li-act .li-fq,
.li-md .li-fitem:hover .li-fq { color: var(--li-gold); }
.li-md .li-fic {
width: 32px; height: 32px;
border: 1.5px solid var(--li-border-gold);
border-radius: 50%;
transition: var(--li-ease);
flex-shrink: 0;
position: relative;
}
.li-md .li-fic::before,
.li-md .li-fic::after {
content: '';
position: absolute;
background: var(--li-gold);
transition: var(--li-ease);
}
.li-md .li-fic::before { width: 12px; height: 1.5px; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.li-md .li-fic::after { width: 1.5px; height: 12px; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.li-md .li-fitem.li-act .li-fic {
background: var(--li-gold);
border-color: var(--li-gold);
transform: rotate(180deg);
}
.li-md .li-fitem.li-act .li-fic::before,
.li-md .li-fitem.li-act .li-fic::after { background: white; }
.li-md .li-fitem.li-act .li-fic::after { height: 0; }
.li-md .li-fa {
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease, padding 0.5s ease;
padding: 0 clamp(16px, 4vw, 28px);
}
.li-md .li-fitem.li-act .li-fa { max-height: 500px; padding-bottom: 22px; }
.li-md .li-fa p {
font-size: clamp(13px, 3.3vw, 14.5px);
color: var(--li-text-light);
line-height: 1.8;
}
.li-md .li-fa strong { color: var(--li-gold); }
/* ============================================
FINAL CTA
============================================ */
.li-md .li-cta {
background: linear-gradient(135deg, var(--li-cream), var(--li-white));
text-align: center;
overflow: hidden;
position: relative;
}
.li-md .li-cta::before {
content: '';
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%,-50%);
width: min(800px, 200vw);
height: min(800px, 200vw);
background: radial-gradient(circle, var(--li-gold-glow) 0%, transparent 60%);
animation: liCtaPulse 6s ease-in-out infinite;
pointer-events: none;
}
@keyframes liCtaPulse {
0%,100% { opacity: 0.5; transform: translate(-50%,-50%) scale(1); }
50% { opacity: 0.8; transform: translate(-50%,-50%) scale(1.05); }
}
.li-md .li-cta-in { position: relative; z-index: 2; }
.li-md .li-cta-tag {
display: inline-block;
color: var(--li-gold);
font-size: clamp(10px, 2.6vw, 12px);
font-weight: 600;
letter-spacing: 3px;
text-transform: uppercase;
margin-bottom: 18px;
padding: 8px 22px;
border: 1px solid var(--li-border-gold);
border-radius: 50px;
background: var(--li-white);
}
.li-md .li-cta h2 {
font-family: var(--li-serif);
font-size: clamp(1.8rem, 7vw, 3rem);
font-weight: 600;
margin-bottom: 16px;
line-height: 1.2;
}
.li-md .li-cta h2 em { color: var(--li-gold); }
.li-md .li-cta-in > p {
font-size: clamp(0.95rem, 3.2vw, 1.1rem);
color: var(--li-text-light);
margin-bottom: 36px;
max-width: 520px;
margin-left: auto; margin-right: auto;
font-weight: 300;
}
.li-md .li-cta-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 14px;
background: linear-gradient(135deg, var(--li-gold), var(--li-gold-dark));
color: white;
padding: clamp(16px, 4.5vw, 22px) clamp(28px, 8vw, 52px);
border-radius: 60px;
font-family: var(--li-serif);
font-size: clamp(1.2rem, 5.5vw, 1.8rem);
font-weight: 700;
transition: var(--li-ease);
box-shadow: 0 15px 50px rgba(201,168,76,0.4);
position: relative;
overflow: hidden;
min-height: 56px;
max-width: 100%;
}
.li-md .li-cta-btn::after {
content: '';
position: absolute;
top: -50%; left: -50%;
width: 200%; height: 200%;
background: linear-gradient(45deg, transparent, rgba(255,255,255,0.25), transparent);
transform: rotate(45deg) translate(-150%,-150%);
animation: liShine 3s infinite;
}
@keyframes liShine {
0% { transform: rotate(45deg) translate(-150%,-150%); }
100% { transform: rotate(45deg) translate(150%,150%); }
}
.li-md .li-cta-btn:hover {
transform: translateY(-4px) scale(1.02);
box-shadow: 0 25px 60px rgba(201,168,76,0.55);
}
.li-md .li-cta-btn svg {
width: clamp(22px, 6vw, 30px);
height: clamp(22px, 6vw, 30px);
fill: white;
animation: liRing 2.5s infinite;
flex-shrink: 0;
}
@keyframes liRing {
0%,100% { transform: rotate(0deg); }
5% { transform: rotate(-15deg); }
10% { transform: rotate(15deg); }
15% { transform: rotate(-10deg); }
20% { transform: rotate(10deg); }
25% { transform: rotate(0deg); }
}
.li-md .li-cta-micro {
margin-top: 26px;
display: flex;
justify-content: center;
gap: clamp(14px, 4vw, 30px);
flex-wrap: wrap;
}
.li-md .li-cta-micro span {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: clamp(11px, 2.8vw, 13px);
color: var(--li-text-light);
}
.li-md .li-cta-micro svg { width: 14px; height: 14px; fill: var(--li-gold); flex-shrink: 0; }
/* ============================================
FOOTER
============================================ */
.li-md .li-footer {
background: var(--li-text);
color: rgba(255,255,255,0.55);
padding: clamp(44px, 7vw, 70px) 0 30px;
}
.li-md .li-fgrid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
gap: clamp(28px, 5vw, 44px);
margin-bottom: 40px;
}
.li-md .li-flogo {
font-family: var(--li-serif);
font-size: 1.6rem;
font-weight: 700;
color: white;
margin-bottom: 14px;
display: block;
}
.li-md .li-flogo em { color: var(--li-gold); font-style: italic; }
.li-md .li-fdesc { font-size: 13.5px; line-height: 1.8; font-weight: 300; }
.li-md .li-fcol h4 {
color: var(--li-gold);
font-size: 13px;
font-weight: 600;
letter-spacing: 2px;
text-transform: uppercase;
margin-bottom: 18px;
}
.li-md .li-flinks li { margin-bottom: 10px; }
.li-md .li-flinks a {
color: rgba(255,255,255,0.55);
font-size: 13.5px;
transition: color 0.3s;
}
.li-md .li-flinks a:hover { color: var(--li-gold); }
.li-md .li-fcontact {
display: flex;
gap: 12px;
margin-bottom: 16px;
align-items: flex-start;
}
.li-md .li-fcontact svg {
width: 16px; height: 16px;
fill: var(--li-gold);
flex-shrink: 0;
margin-top: 3px;
}
.li-md .li-fcontact p { font-size: 13.5px; line-height: 1.7; font-weight: 300; }
.li-md .li-fcontact strong {
color: white;
font-family: var(--li-serif);
font-size: 1.1rem;
font-weight: 600;
}
.li-md .li-fbot {
border-top: 1px solid rgba(255,255,255,0.08);
padding-top: 24px;
font-size: 12px;
text-align: center;
font-weight: 300;
}
.li-md .li-fbot .g { color: var(--li-gold); }
/* ============================================
FLOATING CALL
============================================ */
.li-md .li-float {
position: fixed;
bottom: 20px;
right: 20px;
width: 58px;
height: 58px;
background: linear-gradient(135deg, var(--li-gold), var(--li-gold-dark));
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 10px 30px rgba(201,168,76,0.45);
z-index: 9500;
transition: var(--li-ease);
animation: liFloatPulse 3s infinite;
}
@keyframes liFloatPulse {
0%,100% { box-shadow: 0 10px 30px rgba(201,168,76,0.45), 0 0 0 0 rgba(201,168,76,0.3); }
50% { box-shadow: 0 10px 30px rgba(201,168,76,0.45), 0 0 0 16px rgba(201,168,76,0); }
}
.li-md .li-float:hover { transform: scale(1.1) rotate(10deg); }
.li-md .li-float svg { width: 24px; height: 24px; fill: white; }
/* ============================================
REVEAL
============================================ */
.li-md .li-rev {
opacity: 0;
transform: translateY(40px);
transition: all 0.9s cubic-bezier(0.25,0.46,0.45,0.94);
}
.li-md .li-rev.li-vis { opacity: 1; transform: translateY(0); }
/* ============================================
RESPONSIVE
============================================ */
@media (max-width: 1024px) {
.li-md .li-hero-grid { grid-template-columns: 1fr; gap: 40px; }
.li-md .li-psteps { grid-template-columns: repeat(3, 1fr); gap: 32px; }
.li-md .li-pline { display: none; }
}
@media (max-width: 768px) {
.li-md .li-nav-links { display: none; }
.li-md section { padding: clamp(40px, 10vw, 56px) 0; }
.li-md .li-topbar-inner { flex-direction: column; gap: 6px; text-align: center; }
.li-md .li-hero-actions { flex-direction: column; }
.li-md .li-btn-gold, .li-md .li-btn-ghost { width: 100%; }
.li-md .li-hero-stats {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
text-align: center;
}
.li-md .li-solution { flex-direction: column; text-align: center; }
.li-md .li-psteps { grid-template-columns: repeat(2, 1fr); gap: 28px; }
.li-md .li-pline { display: none; }
/* TABLE → STACKED CARDS */
.li-md .li-cmp-wrap { border: none; overflow: visible; box-shadow: none; }
.li-md .li-cmp-table,
.li-md .li-cmp-table tbody,
.li-md .li-cmp-table tr,
.li-md .li-cmp-table td { display: block; width: 100%; }
.li-md .li-cmp-table thead { display: none; }
.li-md .li-cmp-table tr {
border: 1px solid var(--li-border);
border-radius: 16px;
margin-bottom: 14px;
padding: 14px;
background: var(--li-white);
overflow: hidden;
}
.li-md .li-cmp-table td {
border: none;
padding: 10px 12px;
display: flex;
align-items: center;
gap: 10px;
}
.li-md .li-cmp-table td::before {
content: attr(data-label);
font-weight: 600;
color: var(--li-text);
font-size: 12px;
min-width: 80px;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.li-md .li-cmp-table td.li-tdmut {
background: rgba(201,168,76,0.04);
border-radius: 8px;
margin: 2px 0;
}
.li-md .li-tdmut svg, .li-md .li-tdcon svg { margin-right: 0; }
}
@media (max-width: 480px) {
.li-md { font-size: 15px; }
.li-md .li-psteps { grid-template-columns: 1fr; }
.li-md .li-pcirc { margin-bottom: 12px; }
.li-md .li-hero-stats { grid-template-columns: 1fr 1fr; }
.li-md .li-hero-stats > div:first-child { grid-column: 1 / -1; }
.li-md .li-marquee { animation-duration: 60s; }
.li-md .li-tcard { width: 86vw; }
.li-md .li-cta-btn { width: 100%; font-size: 1.15rem; padding: 18px 20px; }
.li-md .li-pnum { font-size: 2.4rem; }
.li-md .li-fbot { font-size: 11px; line-height: 1.6; }
}
@media (max-width: 360px) {
.li-md .li-container { padding: 0 14px; }
.li-md .li-hero h1 { font-size: 1.75rem; }
.li-md .li-stitle { font-size: 1.45rem; }
.li-md .li-hero-stats { grid-template-columns: 1fr; }
.li-md .li-float { bottom: 14px; right: 14px; width: 52px; height: 52px; }
}
@media (hover: none) and (pointer: coarse) {
.li-md .li-hcard { animation: none; }
.li-md .li-hero::before { animation: none; }
.li-md .li-marquee { animation-duration: 70s; }
}
@media (prefers-reduced-motion: reduce) {
.li-md *, .li-md *::before, .li-md *::after {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.01ms !important;
}
}
Available Now — Free Consultation
Sector 4, Dwarka, Delhi
Mutual Divorce Specialists · Dwarka
Elegant
Divorce
Solutions,
Done
Right.
When both partners agree, divorce doesn't have to be a battle. Our Dwarka-based advocates complete mutual consent divorces in 6-8 months — with dignity, privacy, and zero drama.
Complete privacy — no public court proceedings
Fixed transparent fees — no surprise bills
Only 2 court appearances required
0
Cases Completed
0
Success Rate
0
Years Experience
Your Divorce Journey
Five refined steps to freedom
1
Free Consultation Day One
2
File First Motion Week 2-3
3
Cooling Period 6 Months · Waivable
Does This Sound Familiar?
The Hidden Cost of Waiting
Every month of delay makes separation harder. Here's what our clients experienced before reaching out:
01
"I've been unhappy for years…"
You keep postponing the decision, hoping things will improve. But they don't. Meanwhile, months turn into years, and resentment only deepens.
02
"I'm afraid of court battles…"
You've heard horror stories — 5-year contested cases, public hearings, ₹10 lakh in legal fees. That fear keeps you trapped in limbo.
03
"What about my children?"
You worry about the emotional toll on your kids. But research shows children suffer more in high-conflict marriages than in amicable separations.
There Is a Better Way — Mutual Divorce
When both spouses agree, the process becomes simple, fast, and private.
Talk To Us — Free
Simple & Transparent
Five Steps to Your Freedom
We manage the paperwork, court appearances, and legal formalities. You attend court just twice.
Day One
Consultation
Discuss your situation. Get honest advice and exact costs.
Week 2-3
Petition Filing
We draft and file the joint petition in Dwarka Family Court.
6 Months*
Cooling Period
Mandatory waiting time. *Can be waived to just weeks.
One Day
Second Motion
Both appear in court. Consent recorded. Settlement confirmed.
2-4 Weeks
Final Decree
Court grants divorce. You're free to begin your new chapter.
Make An Informed Choice
Mutual vs Contested Divorce
Factor
Mutual Divorce
Contested Divorce
Time
6-8 months
3-10 years
Cost
₹25K - ₹75K
₹2 - 10 Lakhs+
Court Visits
Only 2 required
20-50+ hearings
Privacy
Fully confidential
Public proceedings
Stress
Minimal
Extremely high
Control
You both decide
Judge decides
Come Prepared
Documents You'll Need
Marriage Certificate Or wedding card + photos
Address Proof Aadhar, passport, or voter ID
Income Proof Salary slips or ITR
Property Papers If division is involved
Settlement Terms Agreed alimony & custody
Photographs Passport size of both
Bank Statements Last 6 months
Children's Documents Birth certificates
Why Clients Trust Us
More Than Lawyers — Your Partners in Transition
Absolute Confidentiality
Your matter remains strictly between us. No details shared, no public exposure. We honor the sensitivity of your situation.
Fixed Transparent Fees
One clear quote, no hidden charges. Know exactly what you'll pay before we begin. Flexible installment options available.
500+ Success Stories
Families guided across Delhi NCR. 98% of our mutual divorce cases complete successfully without complications.
Client Voices
Stories of New Beginnings
★★★★★
"I was terrified of the process. Their team made it remarkably simple. Just 2 court visits and 7 months later, it was complete."
RS
Rajesh S. Sector 12, Dwarka
★★★★★
"The 6-month waiver saved us invaluable time. Approved in the first hearing. Incredibly professional team."
★★★★★
"As an NRI, they handled everything via video calls. Highly recommend for NRIs seeking divorce in India."
AK
Amit K. NRI Client · USA
★★★★★
"Transparent fees, zero hidden charges, regular updates. The settlement protected my interests perfectly."
SG
Sunita G. Sector 4, Dwarka
★★★★★
"Complex property division handled with expertise. Both parties satisfied. Convenient Dwarka office."
VB
Vikas B. Sector 6, Dwarka
★★★★★
"I was terrified of the process. Their team made it remarkably simple. Just 2 court visits and 7 months later, it was complete."
RS
Rajesh S. Sector 12, Dwarka
★★★★★
"The 6-month waiver saved us invaluable time. Approved in the first hearing. Incredibly professional team."
★★★★★
"As an NRI, they handled everything via video calls. Highly recommend for NRIs seeking divorce in India."
AK
Amit K. NRI Client · USA
★★★★★
"Transparent fees, zero hidden charges, regular updates. The settlement protected my interests perfectly."
SG
Sunita G. Sector 4, Dwarka
★★★★★
"Complex property division handled with expertise. Both parties satisfied. Convenient Dwarka office."
VB
Vikas B. Sector 6, Dwarka
Your Questions Answered
Frequently Asked Questions
How long does mutual divorce take in Delhi?
Typically 6-8 months including the cooling period. Following the 2023 Supreme Court judgment, this can be waived — reducing to 2-3 months. Call 8447435082 to check eligibility.
What is the total cost in Dwarka?
Between ₹25,000 to ₹75,000 depending on complexity — including all fees. Transparent, fixed pricing with no hidden costs.
Can we complete faster than 6 months?
Yes! The Supreme Court's 2023 judgment allows waiving the cooling period if settlement is complete and reconciliation has failed.
Do both spouses need to appear in court?
Yes, for first and second motions — just 2 visits total. Video conferencing may be available for certain hearings for NRIs.
Is alimony mandatory?
No fixed rule — depends on mutual agreement. Some opt for lumpsum, others monthly, some waive entirely.
Where is your office located?
Manish Twin Plaza, T-2/B, Plot no.3, Sector 4, Dwarka, Delhi - 110078 — near Dwarka Sector 4 Metro. Call 8447435082 .
Every Day of Delay is a Day Lost
Your New Life isOne Call Away
Stop putting your happiness on hold. Speak with a divorce expert today — free and confidential.
8447 435 082
Free First Consultation
100% Confidential
No Obligation
(function() {
'use strict';
var liRoot = document.getElementById('liMutualDivorce');
// Debounce helper
function liDeb(fn, wait) {
var t;
return function() {
var ctx = this, args = arguments;
clearTimeout(t);
t = setTimeout(function(){ fn.apply(ctx, args); }, wait);
};
}
/* ============================================
★ FULL-WIDTH BREAKOUT ★
Stretches .li-md to exact viewport width,
breaking out of ANY boxed Elementor container.
Uses clientWidth (excludes scrollbar) = no
horizontal scroll, even on Windows.
============================================ */
function liFullWidth() {
if (!liRoot) return;
var vw = document.documentElement.clientWidth;
if (!vw || vw < 10) return;
// Reset previous application to measure natural position
liRoot.style.width = '';
liRoot.style.marginLeft = '';
liRoot.style.marginRight = '';
liRoot.style.maxWidth = '';
// Measure where the block naturally sits
var rect = liRoot.getBoundingClientRect();
var docLeft = rect.left + (window.scrollX || window.pageXOffset || 0);
// Apply full-bleed: exact viewport width, pinned to left edge
liRoot.style.width = vw + 'px';
liRoot.style.marginLeft = (-docLeft) + 'px';
liRoot.style.marginRight = '0';
liRoot.style.maxWidth = 'none';
// Unblock any ancestor that would clip the breakout
var p = liRoot.parentElement;
for (var i = 0; i 0 ? (window.scrollY / h) * 100 : 0;
if (prog) prog.style.width = sc + '%';
}, { passive: true });
// ===== SCROLL REVEAL =====
var revealEls = liRoot.querySelectorAll('.li-rev, .li-pcard, .li-dcard, .li-wcard, .li-pstep');
if ('IntersectionObserver' in window) {
var obs = new IntersectionObserver(function(entries) {
entries.forEach(function(e) {
if (e.isIntersecting) e.target.classList.add('li-vis');
});
}, { threshold: 0.1, rootMargin: '0px 0px -30px 0px' });
revealEls.forEach(function(el) { obs.observe(el); });
var pw = document.getElementById('liProcWrap');
if (pw) {
var pobs = new IntersectionObserver(function(entries) {
entries.forEach(function(e) {
if (e.isIntersecting) pw.classList.add('li-vis');
});
}, { threshold: 0.3 });
pobs.observe(pw);
}
} else {
revealEls.forEach(function(el) { el.classList.add('li-vis'); });
}
// ===== COUNTERS =====
var counters = liRoot.querySelectorAll('.li-stat-num');
function runCounter(el) {
var target = parseInt(el.getAttribute('data-count'), 10);
var suffix = el.getAttribute('data-suffix') || '';
var cur = 0;
var inc = target / 40;
var t = setInterval(function() {
cur += inc;
if (cur >= target) { cur = target; clearInterval(t); }
el.textContent = Math.floor(cur) + suffix;
}, 40);
}
if ('IntersectionObserver' in window) {
var cobs = new IntersectionObserver(function(entries) {
entries.forEach(function(e) {
if (e.isIntersecting) {
runCounter(e.target);
cobs.unobserve(e.target);
}
});
}, { threshold: 0.5 });
counters.forEach(function(el) { cobs.observe(el); });
} else {
counters.forEach(runCounter);
}
// ===== FAQ TOGGLE =====
liRoot.querySelectorAll('.li-fq').forEach(function(q) {
q.addEventListener('click', function() {
var item = this.parentElement;
var was = item.classList.contains('li-act');
liRoot.querySelectorAll('.li-fitem').forEach(function(i) {
i.classList.remove('li-act');
});
if (!was) item.classList.add('li-act');
});
});
}
// ===== BOOT =====
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', liInit);
} else {
liInit();
}
// ★ Re-apply full-width on all layout changes
window.addEventListener('load', liFullWidth);
window.addEventListener('resize', liDeb(liFullWidth, 150));
window.addEventListener('orientationchange', function() {
setTimeout(liFullWidth, 150);
});
if (document.fonts && document.fonts.ready) {
document.fonts.ready.then(liFullWidth);
}
// ★ Elementor editor + container size changes
if (window.jQuery) {
jQuery(window).on('elementor/frontend/init', function() {
setTimeout(liFullWidth, 100);
setTimeout(liFullWidth, 500);
});
}
if (window.ResizeObserver) {
var ro = new ResizeObserver(liDeb(liFullWidth, 120));
if (liRoot && liRoot.parentElement) ro.observe(liRoot.parentElement);
ro.observe(document.documentElement);
}
})();