/* BYJU’S Clone Landing Page — scoped styles.
   Every selector is prefixed with .byclone-wrapper so the page is isolated
   from the WordPress theme and Elementor CSS. */
/* ============================================================
   1. RESET
   ============================================================ */
.byclone-wrapper *, .byclone-wrapper *::before, .byclone-wrapper *::after{box-sizing:border-box}
/* Anchor-scroll landing offset for the fixed 72px header (matches scrollIntoView in script.js) */
.byclone-wrapper [id]{scroll-margin-top:88px}
.byclone-wrapper img, .byclone-wrapper svg{display:block;max-width:100%;height:auto}
.byclone-wrapper button{font:inherit;cursor:pointer;border:none;background:none}
.byclone-wrapper ul, .byclone-wrapper ol{margin:0;padding:0;list-style:none}
.byclone-wrapper a{color:inherit}



/* WhatsApp floating button (left edge, vertical center on desktop, lower-left on mobile) */
.whatsapp-icon {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  box-shadow: 0 4px 6px rgba(0,0,0,.1);
  z-index: 999;
  cursor: pointer;
  transition: all .3s ease;
  background-color: #25D366;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  padding: 4px;
}
.whatsapp-icon .icon {
  width: 34px;
  height: 34px;
  display: block;
}
@media (max-width: 767px) {
  .whatsapp-icon {
    top: auto;
    bottom: 50vh;
    transform: none;
  }
}

/* ============================================================
   2. CSS VARIABLES
   ============================================================ */
.byclone-wrapper{
  --by-brand:#6d28d9;
  --by-brand-dark:#5b21b6;
  --by-brand-light:#f3eeff;
  --by-brand-text:#5b21b6;
  --by-on-brand:#ffffff;
  --by-brand-on-dark:#a78bfa;
  --by-ink:#1e1533;
  --by-ink-soft:#4a5568;
  --by-ink-mute:#718096;
  --by-line:#e2e8f0;
  --by-bg:#ffffff;
  --by-bg-alt:#fafbfc;
  --by-bg-soft:#f7fafc;
  --by-success:#10b981;
  --by-shadow-sm:0 1px 3px rgba(30,21,51,0.06);
  --by-shadow-md:0 4px 16px rgba(30,21,51,0.08);
  --by-shadow-lg:0 24px 48px rgba(30,21,51,0.12);
  --by-radius-sm:8px;
  --by-radius-md:12px;
  --by-radius-lg:16px;
  --by-radius-xl:24px;
  margin:0;
  scroll-padding-top:88px;
  font-family:'Gilroy','Inter','Helvetica Neue',system-ui,-apple-system,sans-serif;
  font-size:16px;line-height:1.65;font-weight:400;
  color:var(--by-ink-soft);background:var(--by-bg);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}

/* ============================================================
   3. FONTS — Gilroy with system fallback
   ============================================================ */
@font-face{font-family:'Gilroy';font-weight:400;font-style:normal;font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/owl-themes/gilroy/Gilroy-Regular.woff2') format('woff2'),local('Gilroy-Regular'),local('Gilroy');}
@font-face{font-family:'Gilroy';font-weight:500;font-style:normal;font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/owl-themes/gilroy/Gilroy-Medium.woff2') format('woff2'),local('Gilroy-Medium');}
@font-face{font-family:'Gilroy';font-weight:600;font-style:normal;font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/owl-themes/gilroy/Gilroy-SemiBold.woff2') format('woff2'),local('Gilroy-SemiBold');}
@font-face{font-family:'Gilroy';font-weight:700;font-style:normal;font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/owl-themes/gilroy/Gilroy-Bold.woff2') format('woff2'),local('Gilroy-Bold');}
@font-face{font-family:'Gilroy';font-weight:800;font-style:normal;font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/owl-themes/gilroy/Gilroy-ExtraBold.woff2') format('woff2'),local('Gilroy-ExtraBold');}

/* ============================================================
   4. BASE TYPOGRAPHY
   ============================================================ */
.byclone-wrapper h1, .byclone-wrapper h2, .byclone-wrapper h3{color:var(--by-ink);margin:0 0 24px;letter-spacing:-0.02em}
.byclone-wrapper h1{font-size:40px;line-height:1.1;font-weight:800}
.byclone-wrapper h2{font-size:30px;line-height:1.2;font-weight:700}
.byclone-wrapper h3{font-size:22px;line-height:1.35;font-weight:700}
.byclone-wrapper p{margin:0 0 16px}
.byclone-wrapper a{color:var(--by-brand-text);text-decoration:none;transition:color 150ms ease-out}
.byclone-wrapper a:hover{color:var(--by-brand-text);text-decoration:underline;text-underline-offset:4px}
.byclone-wrapper :focus-visible{outline:2px solid var(--by-brand);outline-offset:3px;border-radius:4px}
.byclone-wrapper strong{font-weight:700;color:var(--by-ink)}

/* Verify/Placeholder tags — visual treatment */
.byclone-wrapper .by-verify, .byclone-wrapper .by-placeholder{font-style:italic;color:var(--by-ink-mute)}

@media (max-width: 768px) {
  .byclone-wrapper .by-award a.by-award__link {
    align-self: center !important;
  }
}


@media(min-width:768px){
  .byclone-wrapper h1{font-size:64px;line-height:1.05}
  .byclone-wrapper h2{font-size:44px;line-height:1.15}
  .byclone-wrapper h3{font-size:28px;line-height:1.3}
  .byclone-wrapper{font-size:18px}
}

/* ============================================================
   5. LAYOUT UTILITIES
   ============================================================ */
.byclone-wrapper .by-container{max-width:1200px;margin:0 auto;padding:0 20px}
@media(min-width:768px){.byclone-wrapper .by-container{padding:0 24px}}

.byclone-wrapper .by-section{padding:64px 0}
@media(min-width:768px){.byclone-wrapper .by-section{padding:96px 0}}

.byclone-wrapper .by-section--alt{background:var(--by-bg-alt)}
.byclone-wrapper .by-section--soft{background:var(--by-bg-soft)}

.byclone-wrapper .by-text-center{text-align:center}
.byclone-wrapper .by-mw-540{max-width:540px}
.byclone-wrapper .by-mw-640{max-width:640px;margin-left:auto;margin-right:auto}
.byclone-wrapper .by-mw-720{max-width:720px;margin-left:auto;margin-right:auto}
.byclone-wrapper .by-mw-800{max-width:800px;margin-left:auto;margin-right:auto}
.byclone-wrapper .by-mw-960{max-width:960px;margin-left:auto;margin-right:auto}
.byclone-wrapper .by-mw-1100{max-width:1100px;margin-left:auto;margin-right:auto}

.byclone-wrapper .by-lead{font-size:18px;line-height:1.5;font-weight:500;color:var(--by-ink-soft)}
@media(min-width:768px){.byclone-wrapper .by-lead{font-size:22px}}

.byclone-wrapper .by-eyebrow{display:inline-block;font-size:13px;text-transform:uppercase;
  font-weight:700;letter-spacing:0.08em;color:var(--by-brand-text);
  border:1px solid var(--by-brand);padding:6px 12px;border-radius:100px;
  margin-bottom:24px}

/* Skip link */
.byclone-wrapper .by-skip{position:absolute;top:-100px;left:16px;background:var(--by-ink);
  color:#fff;padding:12px 16px;border-radius:8px;z-index:1000;
  text-decoration:none;font-weight:600}
.byclone-wrapper .by-skip:focus{top:16px}

/* ============================================================
   6. BUTTONS
   ============================================================ */
.byclone-wrapper .by-btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:inherit;font-weight:600;font-size:16px;
  padding:14px 32px;border-radius:var(--by-radius-sm);
  transition:background-color 150ms ease-out,transform 150ms ease-out,box-shadow 150ms ease-out,border-color 150ms ease-out;
  text-decoration:none;border:1.5px solid transparent;line-height:1.2;
}
@media(min-width:768px){.byclone-wrapper .by-btn{font-size:18px}}
.byclone-wrapper .by-btn:hover{transform:translateY(-1px);text-decoration:none}
.byclone-wrapper .by-btn--primary{background:var(--by-brand);color:var(--by-on-brand)!important;box-shadow:var(--by-shadow-sm)}
.byclone-wrapper .by-btn--primary:hover{background:var(--by-brand-dark);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-btn--secondary{background:#fff!important;color:var(--by-ink)!important;border-color:var(--by-line)}
.byclone-wrapper .by-btn--secondary:hover,
.byclone-wrapper .by-btn--secondary:focus,
.byclone-wrapper .by-btn--secondary:focus-visible,
.byclone-wrapper .by-btn--secondary:active{background:var(--by-brand-light)!important;border-color:var(--by-brand-text)!important;color:var(--by-brand-text)!important}
.byclone-wrapper .by-btn--inverse{background:#fff;color:var(--by-brand-text)!important;border-color:#fff}
.byclone-wrapper .by-btn--inverse:hover{background:var(--by-brand-light);color:var(--by-brand-text)!important}
.byclone-wrapper .by-btn--dark{background:var(--by-ink);color:#fff!important;border-color:var(--by-ink)}
.byclone-wrapper .by-btn--dark:hover{background:#000}
.byclone-wrapper .by-btn--lg{padding:16px 40px}
.byclone-wrapper .by-btn-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.byclone-wrapper .by-btn-row--center{justify-content:center}

.byclone-wrapper .by-link-inline{color:var(--by-brand-text);font-weight:600;text-decoration:none;
  border-bottom:1px solid transparent;transition:border-color 150ms ease-out}
.byclone-wrapper .by-link-inline:hover{border-bottom-color:var(--by-brand-text);text-decoration:none}

/* ============================================================
   7. HEADER
   ============================================================ */
.byclone-wrapper .by-header{
  position:fixed;top:0;left:0;right:0;height:72px;z-index:100;
  display:flex;align-items:center;
  background:transparent;
  transition:background-color 200ms ease-out,box-shadow 200ms ease-out,backdrop-filter 200ms ease-out;
}
.byclone-wrapper .by-header.by-scrolled{
  background:rgba(255,255,255,0.9);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  box-shadow:var(--by-shadow-sm);
}
.byclone-wrapper .by-header__inner{
  width:100%;max-width:1200px;margin:0 auto;padding:0 20px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
@media(min-width:768px){.byclone-wrapper .by-header__inner{padding:0 24px}}
.byclone-wrapper .by-wordmark{font-family:inherit;font-weight:800;font-size:22px;
  color:var(--by-ink);text-decoration:none;letter-spacing:-0.02em;line-height:1;
  display:inline-flex;align-items:center}
.byclone-wrapper .by-wordmark span{color:var(--by-brand-text)}
.byclone-wrapper .by-wordmark:hover{text-decoration:none;color:var(--by-ink)}
.byclone-wrapper .by-wordmark img{height:36px;width:auto;display:block}
.byclone-wrapper .by-footer__brand .by-wordmark img{height:40px}

.byclone-wrapper .by-nav{display:none;gap:32px}
@media(min-width:1024px){.byclone-wrapper .by-nav{display:flex}}
.byclone-wrapper .by-nav a{color:var(--by-ink-soft);font-weight:500;font-size:15px;text-decoration:none}
.byclone-wrapper .by-nav a:hover{color:var(--by-ink)}

.byclone-wrapper .by-header-cta{display:none}
@media(min-width:1024px){.byclone-wrapper .by-header-cta{display:inline-flex}}
.byclone-wrapper .by-header-cta.by-btn{padding:12px 24px;font-size:15px}

.byclone-wrapper .by-burger{display:flex;flex-direction:column;gap:5px;padding:8px;
  background:transparent;border:none}
@media(min-width:1024px){.byclone-wrapper .by-burger{display:none}}
.byclone-wrapper .by-burger span{width:24px;height:2px;background:var(--by-ink);border-radius:2px;
  transition:transform 200ms ease-out,opacity 200ms ease-out}
/* When the menu is open the JS sets aria-expanded="true" on the burger.
   Turn the three bars into a clearly-visible X (close icon) — the burger sits
   inside the z-index:100 header, so it stays above the z-index:99 menu overlay. */
.byclone-wrapper .by-burger[aria-expanded="true"]{position:relative;z-index:101}
.byclone-wrapper .by-burger[aria-expanded="true"] span{background:var(--by-ink)}
.byclone-wrapper .by-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.byclone-wrapper .by-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.byclone-wrapper .by-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.byclone-wrapper .by-mobile-menu{
  position:fixed;inset:0;background:#fff;z-index:99;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;
  padding:88px 24px 40px;
  opacity:0;pointer-events:none;transition:opacity 200ms ease-out;
}
.byclone-wrapper .by-mobile-menu.by-open{opacity:1;pointer-events:auto}
.byclone-wrapper .by-mobile-menu a{font-size:24px;font-weight:600;color:var(--by-ink);text-decoration:none;text-align:center}

/* Anchor offset for sticky header */
/* overflow-x:clip contains any section that would otherwise bleed past the
   viewport (floating hero pills, edge-bleed rails, etc.) so no horizontal
   scrollbar appears on mobile. All fixed elements (header, mobile menu,
   modals, sticky CTA) sit OUTSIDE <main>, so they are never clipped. clip
   (not hidden) keeps the vertical axis a normal page scroll. */
.byclone-wrapper main{padding-top:72px;overflow-x:clip}

/* ============================================================
   8. SECTION 1 — HERO
   ============================================================ */
.byclone-wrapper .by-hero{
  background:linear-gradient(180deg,#fff 0%,var(--by-bg-alt) 100%);
  padding:48px 0 64px;
}
@media(min-width:768px){.byclone-wrapper .by-hero{padding:96px 0 96px}}
.byclone-wrapper .by-hero__grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:center}
@media(min-width:1024px){
  .byclone-wrapper .by-hero__grid{grid-template-columns:60% 40%;gap:32px}
}
.byclone-wrapper .by-hero__copy h1{margin-bottom:24px}
.byclone-wrapper .by-hero__lead{max-width:540px;margin-bottom:32px}
.byclone-wrapper .by-hero__trust{font-size:14px;color:var(--by-ink-mute);margin-top:24px;font-weight:500}
.byclone-wrapper .by-hero__trust span{display:inline-block;margin:0 8px;color:var(--by-line)}

.byclone-wrapper .by-hero__visual{
  position:relative;display:flex;justify-content:center;align-items:center;
  min-height:540px;
}
/* Fluid: width:100% + max-width so the hero artwork always scales down to its
   grid column instead of forcing the column (and the whole grid) wider. */
.byclone-wrapper .by-phone{
  position:relative;width:100%;max-width:380px;
  background:transparent;
}
@media(min-width:768px){.byclone-wrapper .by-phone{max-width:460px}}
@media(min-width:1024px){.byclone-wrapper .by-phone{max-width:520px}}
.byclone-wrapper .by-phone img{display:block;width:100%;height:auto;background:transparent}

.byclone-wrapper .by-pill{
  position:absolute;display:inline-flex;align-items:center;gap:8px;
  background:#fff;border:1px solid var(--by-line);
  padding:8px 16px;border-radius:var(--by-radius-md);
  font-size:14px;font-weight:600;color:var(--by-ink);
  box-shadow:var(--by-shadow-md);
  animation:by-float 4s ease-in-out infinite;
}
.byclone-wrapper .by-pill svg{width:18px;height:18px;color:var(--by-brand-text);flex-shrink:0}
.byclone-wrapper .by-pill--top{top:32px;right:0;animation-delay:0s}
.byclone-wrapper .by-pill--bottom{bottom:48px;left:0;animation-delay:2s}
@media(max-width:767px){
  .byclone-wrapper .by-pill--top{right:auto;left:50%;transform:translateX(40px);top:8px}
  .byclone-wrapper .by-pill--bottom{left:auto;right:50%;transform:translateX(-40px);bottom:8px}
}
@keyframes by-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}
@media(prefers-reduced-motion:reduce){
  .byclone-wrapper .by-pill{animation:none}
}

/* ============================================================
   9. SECTION 2 — TRUST STRIP
   ============================================================ */
.byclone-wrapper .by-trust{background:var(--by-bg-alt);padding:48px 0}
.byclone-wrapper .by-trust__row{
  display:grid;grid-template-columns:repeat(2,1fr);gap:24px 32px;
  align-items:center;justify-items:center;text-align:center;
}
@media(min-width:1024px){
  .byclone-wrapper .by-trust__row{
    grid-template-columns:repeat(4,auto);justify-content:space-between;gap:0;
  }
}
.byclone-wrapper .by-trust__item{
  display:flex;align-items:center;gap:8px;
  font-size:14px;font-weight:500;color:var(--by-ink-soft);
  position:relative;
  padding:0 16px;
}
@media(min-width:1024px){
  .byclone-wrapper .by-trust__item:not(:last-child)::after{
    content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);
    width:1px;height:32px;background:var(--by-line);
  }
}
.byclone-wrapper .by-trust__item strong{color:var(--by-ink);font-weight:600}
.byclone-wrapper .by-trust__item svg{width:16px;height:16px;color:var(--by-brand-text);flex-shrink:0}
.byclone-wrapper .by-trust__logos{display:flex;gap:12px;align-items:center;filter:grayscale(1);opacity:.7}
.byclone-wrapper .by-trust__logos img{height:24px;width:auto}

/* ============================================================
   9.5 SECTION 2.5 — CLIENT SHOWCASE MARQUEE
   ============================================================ */
.byclone-wrapper .by-clients{
  background:var(--by-ink);
  border-top:1px solid rgba(255,255,255,0.05);
  border-bottom:1px solid rgba(255,255,255,0.05);
  padding:24px 0;
  color:rgba(255,255,255,0.85);
}
.byclone-wrapper .by-clients__inner{
  max-width:1280px;margin:0 auto;padding:0 20px;
  display:flex;flex-direction:column;gap:18px;
}
@media(min-width:1024px){
  .byclone-wrapper .by-clients__inner{flex-direction:row;align-items:center;gap:32px;padding:0 32px;}
}
.byclone-wrapper .by-clients__stat{flex-shrink:0;line-height:1.2}
.byclone-wrapper .by-clients__stat-num{color:#fff;font-size:14px;font-weight:700;display:block}
.byclone-wrapper .by-clients__stat-label{
  color:rgba(255,255,255,0.5);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;margin-top:4px;display:block;
}
.byclone-wrapper .by-clients__divider{display:none}
@media(min-width:1024px){
  .byclone-wrapper .by-clients__divider{display:block;width:1px;height:40px;background:rgba(255,255,255,0.1);flex-shrink:0}
}
.byclone-wrapper .by-clients__viewport{
  position:relative;flex:1;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent);
}
.byclone-wrapper .by-marquee-track{
  display:flex;gap:0;width:max-content;
  animation:by-marquee 40s linear infinite;
}
@keyframes by-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.byclone-wrapper .by-marquee-track:hover{animation-play-state:paused}
.byclone-wrapper .by-marquee-set{display:flex;align-items:center;gap:40px;padding-right:40px}
.byclone-wrapper .by-client-card{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:12px;
  user-select:none;-webkit-user-select:none;cursor:default;
  filter:grayscale(1);opacity:.7;
  transition:filter .35s ease,opacity .25s ease;
}
.byclone-wrapper .by-client-card:hover{filter:grayscale(0);opacity:1}
.byclone-wrapper .by-client-icon{
  width:44px;height:44px;border-radius:999px;overflow:hidden;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:#1E293B;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.06),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 6px 14px -6px rgba(0,0,0,0.55);
}
.byclone-wrapper .by-client-icon img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  display:block;pointer-events:none;
}
.byclone-wrapper .by-client-name{
  color:#E2E8F0;font-family:inherit;font-weight:500;
  font-size:14px;letter-spacing:-0.005em;white-space:nowrap;line-height:1;
}
@media(prefers-reduced-motion:reduce){.byclone-wrapper .by-marquee-track{animation:none}}

/* ============================================================
   10. SECTION 3 — UNDERSTANDING BYJU’S CLONE DEVELOPMENT
   ============================================================ */
.byclone-wrapper .by-what{background:#fff}
.byclone-wrapper .by-what__inner{max-width:760px;margin:0 auto;text-align:center}
.byclone-wrapper .by-what__inner h2{margin-bottom:32px}
.byclone-wrapper .by-what__inner p{text-align:left;margin-bottom:24px;color:var(--by-ink-soft)}
.byclone-wrapper .by-what__inner p:last-child{margin-bottom:0}

/* ============================================================
   11. SECTION 4 — WHY 2026
   ============================================================ */
.byclone-wrapper .by-why{background:var(--by-bg-alt)}
.byclone-wrapper .by-why__grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:start}
@media(min-width:1024px){.byclone-wrapper .by-why__grid{grid-template-columns:40% 1fr;gap:64px}}
.byclone-wrapper .by-why__intro h2{margin-bottom:24px}
.byclone-wrapper .by-why__intro p{color:var(--by-ink-soft);margin-bottom:32px}
.byclone-wrapper .by-why__cards{display:flex;flex-direction:column;gap:24px}
.byclone-wrapper .by-force{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:24px;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-force{padding:32px}}
.byclone-wrapper .by-force:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-force__num{
  font-family:inherit;font-weight:800;font-size:16px;color:var(--by-brand-text);
  letter-spacing:0.05em;margin-bottom:8px;display:block;
}
.byclone-wrapper .by-force h3{font-size:20px;margin-bottom:12px}
@media(min-width:768px){.byclone-wrapper .by-force h3{font-size:22px}}
.byclone-wrapper .by-force p{margin:0;color:var(--by-ink-soft);font-size:16px;line-height:1.65}

/* ============================================================
   12. SECTION 5 — LIVE DEMO
   ============================================================ */
.byclone-wrapper .by-demo{background:#fff}
.byclone-wrapper .by-demo__inner{max-width:960px;margin:0 auto;text-align:center}
.byclone-wrapper .by-demo__lead{max-width:720px;margin:0 auto 48px}
.byclone-wrapper .by-demo__video{
  position:relative;border-radius:var(--by-radius-lg);overflow:hidden;
  box-shadow:var(--by-shadow-md);margin-bottom:32px;
  cursor:pointer;
}
.byclone-wrapper .by-demo__video img{width:100%;height:auto;display:block}
.byclone-wrapper .by-demo__play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:96px;height:96px;border-radius:50%;background:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--by-shadow-lg);
  animation:by-pulse 2.5s ease-in-out infinite;
}
.byclone-wrapper .by-demo__play svg{width:32px;height:32px;color:var(--by-brand-text);margin-left:4px}
@keyframes by-pulse{
  0%,100%{transform:translate(-50%,-50%) scale(1)}
  50%{transform:translate(-50%,-50%) scale(1.05)}
}
@media(prefers-reduced-motion:reduce){.byclone-wrapper .by-demo__play{animation:none}}

.byclone-wrapper .by-demo__thumbs{
  display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:48px;
}
@media(min-width:768px){.byclone-wrapper .by-demo__thumbs{grid-template-columns:repeat(3,1fr);gap:24px}}
.byclone-wrapper .by-thumb{
  border-radius:var(--by-radius-md);overflow:hidden;
  border:1px solid var(--by-line);background:#fff;
  text-align:left;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
  cursor:pointer;
}
.byclone-wrapper .by-thumb:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-thumb img{width:100%;display:block}
.byclone-wrapper .by-thumb figcaption{padding:12px 16px;font-size:14px;font-weight:600;color:var(--by-ink)}

/* ============================================================
   12.5 SECTION 5.5 — TRY IT YOURSELF (GATED DEMO ACCESS)
   ============================================================ */
.byclone-wrapper .by-tryit{background:var(--by-ink);color:rgba(255,255,255,0.85)}
.byclone-wrapper .by-tryit h2{color:#fff;margin-bottom:16px}
.byclone-wrapper .by-tryit__head{text-align:center;max-width:780px;margin:0 auto 48px}
.byclone-wrapper .by-tryit__head .by-lead{color:rgba(255,255,255,0.7)}
.byclone-wrapper .by-tryit__eyebrow{
  display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--by-brand-on-dark);
  padding:6px 14px;border:1px solid rgba(109,40,217,0.4);border-radius:100px;
  margin-bottom:20px;
}

.byclone-wrapper .by-tryit__layout{
  display:grid;grid-template-columns:1fr;gap:32px;
  max-width:1080px;margin:0 auto;align-items:start;
}
@media(min-width:960px){
  .byclone-wrapper .by-tryit__layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px}
}

.byclone-wrapper .by-tryit__form-card{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--by-radius-md);padding:32px 24px;
}
@media(min-width:768px){.byclone-wrapper .by-tryit__form-card{padding:40px}}

.byclone-wrapper .by-tryit-form{display:flex;flex-direction:column;gap:18px}
.byclone-wrapper .by-tryit-form__row{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:560px){.byclone-wrapper .by-tryit-form__row--2{grid-template-columns:1fr 1fr}}
.byclone-wrapper .by-tryit-form__group{display:flex;flex-direction:column;gap:6px}
.byclone-wrapper .by-tryit-form__group label{font-size:13px;font-weight:600;color:#fff}
.byclone-wrapper .by-tryit-form__group label .by-req{color:var(--by-brand-on-dark);margin-left:4px}
.byclone-wrapper .by-tryit-form__optional{font-weight:500;color:rgba(255,255,255,0.5);margin-left:4px}
.byclone-wrapper .by-tryit-form__hint{font-size:12px;color:rgba(255,255,255,0.55);margin:4px 0 0;line-height:1.5}
.byclone-wrapper .by-tryit-form__group input,
.byclone-wrapper .by-tryit-form__group select{
  width:100%;padding:12px 14px;
  font-family:inherit;font-size:15px;color:#fff;
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.15);
  border-radius:var(--by-radius-sm);
  transition:border-color 150ms ease-out,background 150ms ease-out;
}
.byclone-wrapper .by-tryit-form__group input::placeholder{color:rgba(255,255,255,0.4)}
.byclone-wrapper .by-tryit-form__group select{appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23ffffff' stroke-opacity='0.6' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer;
}
.byclone-wrapper .by-tryit-form__group select option{background:var(--by-ink);color:#fff}
.byclone-wrapper .by-tryit-form__group input:focus-visible,
.byclone-wrapper .by-tryit-form__group select:focus-visible{
  outline:2px solid var(--by-brand);outline-offset:2px;
  border-color:var(--by-brand-on-dark);background:rgba(255,255,255,0.08);
}
.byclone-wrapper .by-tryit-form__submit{
  margin-top:8px;padding:14px 24px;font-size:15px;
  justify-content:center;align-self:stretch;width:100%;
}
.byclone-wrapper .by-tryit-form__terms{
  font-size:12px;color:rgba(255,255,255,0.55);margin:0;line-height:1.55;text-align:center;
}

/* Preview side */
.byclone-wrapper .by-tryit__preview h3{
  font-size:13px;text-transform:uppercase;letter-spacing:.06em;
  color:rgba(255,255,255,0.5);margin:0 0 16px;font-weight:700;
}
.byclone-wrapper .by-tryit__preview ul{display:flex;flex-direction:column;gap:14px;list-style:none;padding:0;margin:0}
.byclone-wrapper .by-tryit__preview li{
  display:flex;gap:14px;font-size:14px;color:rgba(255,255,255,0.75);line-height:1.5;
}
.byclone-wrapper .by-tryit__preview li strong{color:#fff;font-weight:700;display:block;margin-bottom:2px}
.byclone-wrapper .by-tryit__preview-ico{
  flex-shrink:0;width:36px;height:36px;border-radius:8px;
  background:rgba(109,40,217,0.15);color:var(--by-brand-on-dark);
  display:inline-flex;align-items:center;justify-content:center;
}
.byclone-wrapper .by-tryit__preview-ico svg{width:18px;height:18px}

/* Granted state — shown after submit */
.byclone-wrapper .by-tryit__granted{display:none;grid-column:1/-1}
.byclone-wrapper .by-tryit__layout.is-submitted .by-tryit__form-card,
.byclone-wrapper .by-tryit__layout.is-submitted .by-tryit__preview{display:none}
.byclone-wrapper .by-tryit__layout.is-submitted .by-tryit__granted{display:block}
.byclone-wrapper .by-tryit__granted-head{margin-bottom:24px}
.byclone-wrapper .by-tryit__granted-head strong{display:block;color:#fff;font-size:20px;margin-bottom:6px}
.byclone-wrapper .by-tryit__granted-head p{color:rgba(255,255,255,0.7);font-size:14px;margin:0;line-height:1.6}
.byclone-wrapper .by-tryit__access-grid{
  display:grid;grid-template-columns:1fr;gap:16px;
}
@media(min-width:560px){.byclone-wrapper .by-tryit__access-grid{grid-template-columns:1fr 1fr}}
.byclone-wrapper .by-access-card{
  display:flex;flex-direction:column;gap:10px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--by-radius-md);padding:20px;
  text-decoration:none;color:inherit;
  transition:transform 200ms ease-out,border-color 200ms ease-out,background 200ms ease-out;
}
.byclone-wrapper .by-access-card:hover{
  transform:translateY(-2px);border-color:var(--by-brand-on-dark);
  background:rgba(109,40,217,0.08);text-decoration:none;
}
.byclone-wrapper .by-access-card__ico{
  width:40px;height:40px;border-radius:8px;
  background:rgba(109,40,217,0.15);color:var(--by-brand-on-dark);
  display:inline-flex;align-items:center;justify-content:center;
}
.byclone-wrapper .by-access-card__ico svg{width:22px;height:22px}
.byclone-wrapper .by-access-card strong{color:#fff;font-size:16px;font-weight:700}
.byclone-wrapper .by-access-card p{font-size:13px;color:rgba(255,255,255,0.6);margin:0;line-height:1.5}
.byclone-wrapper .by-access-card__open{
  margin-top:auto;font-size:13px;font-weight:700;color:var(--by-brand-on-dark);
  letter-spacing:.04em;text-transform:uppercase;
}
.byclone-wrapper .by-tryit__creds{
  margin-top:20px;padding:16px 20px;
  background:rgba(255,255,255,0.04);border:1px dashed rgba(255,255,255,0.15);
  border-radius:var(--by-radius-sm);font-size:13px;line-height:1.6;
}
.byclone-wrapper .by-tryit__creds strong{color:#fff;display:block;margin-bottom:6px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.byclone-wrapper .by-tryit__creds code{
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  background:rgba(0,0,0,0.3);padding:2px 6px;border-radius:4px;color:#fff;
}

/* ============================================================
   13. SECTION 6 — COMPLETE FEATURE SET
   ============================================================ */
.byclone-wrapper .by-features{background:var(--by-bg-alt)}
.byclone-wrapper .by-features__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-features__head h2{margin-bottom:24px}
.byclone-wrapper .by-features__list{
  max-width:1100px;margin:0 auto;
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-lg);
  overflow:hidden;
}
.byclone-wrapper .by-fcat{border-bottom:1px solid var(--by-line)}
.byclone-wrapper .by-fcat:last-child{border-bottom:none}
.byclone-wrapper .by-fcat__head{
  width:100%;display:flex;align-items:center;gap:16px;
  padding:24px;text-align:left;background:#fff;
  font-family:inherit;color:var(--by-ink);
  transition:background-color 150ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-fcat__head{padding:24px 32px}}
.byclone-wrapper .by-fcat__head:hover{background:var(--by-brand-light)}
.byclone-wrapper .by-fcat__icon{
  width:40px;height:40px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:var(--by-brand-light);border-radius:var(--by-radius-sm);
}
.byclone-wrapper .by-fcat__icon svg{width:22px;height:22px;color:var(--by-brand)}
/* min-width:0 lets the title shrink so it WRAPS instead of running under the
   count badge; overflow-wrap breaks long single tokens. */
.byclone-wrapper .by-fcat__title{flex:1;min-width:0;font-weight:700;font-size:18px;line-height:1.3;color:var(--by-ink);overflow-wrap:anywhere}
@media(min-width:768px){.byclone-wrapper .by-fcat__title{font-size:20px}}
.byclone-wrapper .by-fcat__count{
  font-size:13px;font-weight:600;color:var(--by-brand);
  background:var(--by-brand-light);padding:4px 10px;border-radius:100px;
  flex-shrink:0;white-space:nowrap;
}
/* Narrow phones: tighten spacing + sizes so a long title and the count badge
   have room and never overlap (fixed icon + fluid title + fixed count + chevron). */
@media(max-width:600px){
  .byclone-wrapper .by-fcat__head{gap:10px;padding:18px 16px}
  .byclone-wrapper .by-fcat__icon{width:36px;height:36px}
  .byclone-wrapper .by-fcat__icon svg{width:20px;height:20px}
  .byclone-wrapper .by-fcat__title{font-size:15px}
  .byclone-wrapper .by-fcat__count{font-size:11px;padding:3px 8px}
  .byclone-wrapper .by-fcat__chev{width:20px;height:20px}
}
.byclone-wrapper .by-fcat__chev{
  width:24px;height:24px;color:var(--by-ink-mute);flex-shrink:0;
  transition:transform 250ms ease-out;
}
.byclone-wrapper .by-fcat__head[aria-expanded="true"] .by-fcat__chev{transform:rotate(180deg)}
.byclone-wrapper .by-fcat__panel{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows 250ms ease-out;
}
.byclone-wrapper .by-fcat__panel-inner{overflow:hidden}
.byclone-wrapper .by-fcat__head[aria-expanded="true"] + .by-fcat__panel{grid-template-rows:1fr}
.byclone-wrapper .by-fcat__grid{
  display:grid;grid-template-columns:1fr;gap:16px 32px;
  padding:0 24px 24px;
}
@media(min-width:768px){
  .byclone-wrapper .by-fcat__grid{grid-template-columns:1fr 1fr;padding:0 32px 32px}
}
.byclone-wrapper .by-feat{display:flex;gap:12px;align-items:flex-start}
.byclone-wrapper .by-feat__check{
  width:18px;height:18px;flex-shrink:0;color:var(--by-brand);margin-top:3px;
}
.byclone-wrapper .by-feat__body strong{display:block;font-weight:600;color:var(--by-ink);font-size:16px;margin-bottom:2px}
.byclone-wrapper .by-feat__body span{font-size:14px;color:var(--by-ink-soft);line-height:1.55}

.byclone-wrapper .by-features__close{
  max-width:640px;margin:32px auto 0;text-align:center;
  font-style:italic;font-size:16px;color:var(--by-ink-soft);
}
.byclone-wrapper .by-features__cta{text-align:center;margin-top:24px}

/* ============================================================
   14. SECTION 7 — AI-POWERED FEATURES
   ============================================================ */
.byclone-wrapper .by-ai{
  background:#fff;position:relative;overflow:hidden;
}
.byclone-wrapper .by-ai::before{
  content:"";position:absolute;top:-200px;left:50%;transform:translateX(-50%);
  width:800px;height:800px;border-radius:50%;
  background:radial-gradient(circle,var(--by-brand-light) 0%,rgba(243,238,255,0) 70%);
  pointer-events:none;z-index:0;
}
.byclone-wrapper .by-ai__inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;text-align:center}
.byclone-wrapper .by-ai__badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--by-brand);color:var(--by-on-brand);
  padding:6px 14px;border-radius:100px;
  font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
  margin-bottom:16px;
}
.byclone-wrapper .by-ai__head h2{margin-bottom:24px}
.byclone-wrapper .by-ai__lead{max-width:760px;margin:0 auto 48px;text-align:center}
.byclone-wrapper .by-ai__grid{
  display:grid;grid-template-columns:1fr;gap:24px;text-align:left;
}
@media(min-width:768px){.byclone-wrapper .by-ai__grid{grid-template-columns:1fr 1fr;gap:32px}}
.byclone-wrapper .by-ai-card{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:24px;display:flex;gap:20px;align-items:flex-start;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-ai-card{padding:32px}}
.byclone-wrapper .by-ai-card:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-ai-card__icon{
  width:64px;height:64px;flex-shrink:0;
  background:var(--by-brand-light);border-radius:var(--by-radius-md);
  display:flex;align-items:center;justify-content:center;
}
@media(min-width:768px){.byclone-wrapper .by-ai-card__icon{width:80px;height:80px}}
.byclone-wrapper .by-ai-card__icon svg{width:32px;height:32px;color:var(--by-brand)}
.byclone-wrapper .by-ai-card h3{font-size:20px;margin-bottom:8px;color:var(--by-ink)}
@media(min-width:768px){.byclone-wrapper .by-ai-card h3{font-size:22px}}
.byclone-wrapper .by-ai-card p{margin:0;color:var(--by-ink-soft);font-size:15px;line-height:1.6}

/* ============================================================
   15. SECTION 8 — TECH STACK
   ============================================================ */
.byclone-wrapper .by-stack{background:var(--by-bg-alt)}
.byclone-wrapper .by-stack__inner{max-width:800px;margin:0 auto;text-align:center}
.byclone-wrapper .by-stack__inner h2{margin-bottom:24px}
.byclone-wrapper .by-stack__copy{text-align:center;color:var(--by-ink-soft);margin-bottom:48px}
.byclone-wrapper .by-stack__copy p{margin-bottom:20px}
.byclone-wrapper .by-stack__copy p:last-child{margin-bottom:0}
.byclone-wrapper .by-stack__platforms{
  display:grid;grid-template-columns:repeat(2,1fr);gap:24px;
  max-width:880px;margin:0 auto;
}
@media(min-width:768px){.byclone-wrapper .by-stack__platforms{grid-template-columns:repeat(4,1fr)}}
.byclone-wrapper .by-platform{display:flex;flex-direction:column;align-items:center;gap:12px}
.byclone-wrapper .by-platform__icon{
  width:88px;height:88px;border-radius:50%;
  background:#fff;border:1px solid var(--by-line);
  display:flex;align-items:center;justify-content:center;
  transition:transform 200ms ease-out,border-color 200ms ease-out;
}
.byclone-wrapper .by-platform:hover .by-platform__icon{transform:translateY(-2px);border-color:var(--by-brand)}
.byclone-wrapper .by-platform__icon svg{width:36px;height:36px;color:var(--by-ink)}
.byclone-wrapper .by-platform__label{font-size:14px;font-weight:600;color:var(--by-ink)}

/* ============================================================
   15b. STANDOUT — what sets vativeApps apart (dark section)
   ============================================================ */
.byclone-wrapper .by-stand{background:var(--by-ink);color:#fff}
.byclone-wrapper .by-stand h2{color:#fff}
.byclone-wrapper .by-stand .by-eyebrow{
  color:#fff;border-color:rgba(255,255,255,0.25);
  background:rgba(255,255,255,0.04);
}
.byclone-wrapper .by-stand__head{text-align:center;max-width:820px;margin:0 auto 48px}
.byclone-wrapper .by-stand__head .by-lead{color:rgba(255,255,255,0.75)}
.byclone-wrapper .by-stand__grid{
  display:grid;grid-template-columns:1fr;gap:24px;
  max-width:1280px;margin:0 auto;
}
@media(min-width:768px) and (max-width:1023px){.byclone-wrapper .by-stand__grid{grid-template-columns:1fr 1fr;gap:28px}}
@media(min-width:1024px){.byclone-wrapper .by-stand__grid{grid-template-columns:repeat(3,1fr);gap:28px}}
.byclone-wrapper .by-stand-card{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--by-radius-md);
  padding:32px 28px;
  transition:transform 200ms ease-out,border-color 200ms ease-out,background-color 200ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-stand-card{padding:40px 36px}}
.byclone-wrapper .by-stand-card:hover{
  transform:translateY(-2px);border-color:var(--by-brand-on-dark);
  background:rgba(109,40,217,0.06);
}
.byclone-wrapper .by-stand-card__icon{
  width:64px;height:64px;border-radius:var(--by-radius-md);
  background:rgba(109,40,217,0.15);
  display:flex;align-items:center;justify-content:center;margin-bottom:24px;
}
.byclone-wrapper .by-stand-card__icon svg{width:32px;height:32px;color:var(--by-brand-on-dark)}
.byclone-wrapper .by-stand-card h3{
  color:#fff;font-size:22px;margin:0 0 16px;letter-spacing:-0.01em;
}
@media(min-width:768px){.byclone-wrapper .by-stand-card h3{font-size:26px}}
.byclone-wrapper .by-stand-card p{
  color:rgba(255,255,255,0.78);font-size:16px;line-height:1.65;margin:0 0 20px;
}
.byclone-wrapper .by-stand-card__pill{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--by-brand);color:var(--by-on-brand);
  font-size:12px;font-weight:700;letter-spacing:0.06em;
  padding:6px 14px;border-radius:100px;
  text-transform:uppercase;
}
.byclone-wrapper .by-stand-card__pill svg{width:14px;height:14px;flex-shrink:0}

/* ============================================================
   16. SECTION 9 — MONETIZATION MODELS
   ============================================================ */
.byclone-wrapper .by-monetize{background:#fff}
.byclone-wrapper .by-monetize__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-monetize__head h2{margin-bottom:24px}
.byclone-wrapper .by-monetize__grid{
  display:grid;grid-template-columns:1fr;gap:24px;
}
@media(min-width:768px){.byclone-wrapper .by-monetize__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.byclone-wrapper .by-monetize__grid{grid-template-columns:repeat(4,1fr)}}
.byclone-wrapper .by-stream{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:24px;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-stream{padding:32px}}
.byclone-wrapper .by-stream:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-stream__num{
  font-family:inherit;font-weight:800;font-size:32px;color:var(--by-brand-text);
  line-height:1;margin-bottom:16px;display:block;
}
.byclone-wrapper .by-stream h3{font-size:18px;margin-bottom:12px;color:var(--by-ink)}
.byclone-wrapper .by-stream p{margin:0;font-size:14px;color:var(--by-ink-soft);line-height:1.6}

.byclone-wrapper .by-stream--cta{
  background:var(--by-brand);color:var(--by-on-brand);border-color:var(--by-brand);
  display:flex;flex-direction:column;justify-content:space-between;
}
.byclone-wrapper .by-stream--cta:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-lg)}
.byclone-wrapper .by-stream--cta h3{color:#fff;font-size:20px;margin-bottom:12px}
.byclone-wrapper .by-stream--cta p{color:rgba(255,255,255,0.92);margin-bottom:20px}
.byclone-wrapper .by-stream--cta .by-btn{align-self:flex-start;margin-top:auto}

/* ============================================================
   17. SECTION 10 — INDUSTRIES & USE CASES
   ============================================================ */
.byclone-wrapper .by-industries{background:var(--by-bg-alt)}
.byclone-wrapper .by-industries__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-industries__head h2{margin-bottom:24px}
.byclone-wrapper .by-industries__grid{
  display:grid;grid-template-columns:1fr;gap:24px;
}
@media(min-width:768px){.byclone-wrapper .by-industries__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.byclone-wrapper .by-industries__grid{grid-template-columns:repeat(3,1fr)}}
.byclone-wrapper .by-vertical{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  overflow:hidden;
  transition:border-color 300ms ease-out;
}
.byclone-wrapper .by-vertical:hover{border-color:var(--by-brand-text)}
.byclone-wrapper .by-vertical__img{overflow:hidden;background:var(--by-brand-light)}
.byclone-wrapper .by-vertical__img img{
  width:100%;height:auto;display:block;
  transition:transform 300ms ease-out;
}
.byclone-wrapper .by-vertical:hover .by-vertical__img img{transform:scale(1.03)}
.byclone-wrapper .by-vertical__body{padding:24px}
.byclone-wrapper .by-vertical h3{font-size:20px;margin-bottom:12px;color:var(--by-ink)}
.byclone-wrapper .by-vertical p{margin:0;font-size:14px;color:var(--by-ink-soft);line-height:1.65}

/* ============================================================
   18. SECTION 11 — COMPARISON TABLE
   ============================================================ */
.byclone-wrapper .by-compare{background:#fff}
.byclone-wrapper .by-compare__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-compare__head h2{margin-bottom:24px}
.byclone-wrapper .by-compare__wrap{
  max-width:1100px;margin:0 auto;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  padding-top:20px;
}
.byclone-wrapper .by-compare__table{
  width:100%;border-collapse:separate;border-spacing:0;
  min-width:720px;
  background:#fff;
  border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  position:relative;
}
.byclone-wrapper .by-compare__table thead th:first-child{border-top-left-radius:var(--by-radius-md)}
.byclone-wrapper .by-compare__table thead th:last-child{border-top-right-radius:var(--by-radius-md)}
.byclone-wrapper .by-compare__table tbody tr:last-child td:first-child{border-bottom-left-radius:var(--by-radius-md)}
.byclone-wrapper .by-compare__table tbody tr:last-child td:last-child{border-bottom-right-radius:var(--by-radius-md)}
.byclone-wrapper .by-compare__table th,
.byclone-wrapper .by-compare__table td{
  padding:16px 24px;text-align:left;
  border-bottom:1px solid var(--by-line);
  vertical-align:top;
  font-size:15px;color:var(--by-ink-soft);line-height:1.55;
}
.byclone-wrapper .by-compare__table th{
  font-size:13px;text-transform:uppercase;font-weight:600;
  letter-spacing:0.05em;color:var(--by-ink-mute);
  background:var(--by-bg-soft);
  position:relative;
}
.byclone-wrapper .by-compare__table tr:last-child td{border-bottom:none}
.byclone-wrapper .by-compare__table td:first-child,
.byclone-wrapper .by-compare__table th:first-child{font-weight:600;color:var(--by-ink)}
.byclone-wrapper .by-compare__table .by-rec{
  background:var(--by-brand-light);
  border-left:1px solid var(--by-brand);
  border-right:1px solid var(--by-brand);
}
.byclone-wrapper .by-compare__table th.by-rec{
  border-top:3px solid var(--by-brand);
  color:var(--by-brand-text);font-weight:700;
  position:relative;
}
.byclone-wrapper .by-compare__badge{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--by-brand);color:var(--by-on-brand);
  font-size:11px;font-weight:700;letter-spacing:0.08em;
  padding:4px 10px;border-radius:100px;
  text-transform:uppercase;white-space:nowrap;
}
.byclone-wrapper .by-compare__close{
  max-width:800px;margin:32px auto 0;text-align:center;
  font-size:16px;color:var(--by-ink-soft);
}

/* ============================================================
   19. SECTION 12 — GET A QUOTE / INQUIRY
   ============================================================ */
.byclone-wrapper .by-pricing{background:var(--by-bg-alt)}
.byclone-wrapper .by-pricing__head{text-align:center;max-width:760px;margin:0 auto 48px}
.byclone-wrapper .by-pricing__head h2{margin-bottom:16px}

.byclone-wrapper .by-quote{
  display:grid;grid-template-columns:1fr;gap:32px;
  max-width:1080px;margin:0 auto;align-items:start;
}
@media(min-width:960px){
  .byclone-wrapper .by-quote{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px}
}
.byclone-wrapper .by-quote__form-card{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:32px 24px;box-shadow:var(--by-shadow-md);
}
@media(min-width:768px){.byclone-wrapper .by-quote__form-card{padding:40px}}
.byclone-wrapper .by-quote-form{display:flex;flex-direction:column;gap:18px}
.byclone-wrapper .by-quote-form__row{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:560px){.byclone-wrapper .by-quote-form__row--2{grid-template-columns:1fr 1fr}}
.byclone-wrapper .by-quote-form__group{display:flex;flex-direction:column;gap:6px}
.byclone-wrapper .by-quote-form__group label{font-size:13px;font-weight:600;color:var(--by-ink)}
.byclone-wrapper .by-quote-form__group label .by-req{color:var(--by-brand-text);margin-left:4px}
.byclone-wrapper .by-quote-form__optional{font-weight:500;color:var(--by-ink-mute);margin-left:4px}
.byclone-wrapper .by-quote-form__hint{
  font-size:12px;color:var(--by-ink-mute);margin:4px 0 0;line-height:1.5;
}
.byclone-wrapper .by-quote-form__group input,
.byclone-wrapper .by-quote-form__group select,
.byclone-wrapper .by-quote-form__group textarea{
  width:100%;padding:12px 14px;
  font-family:inherit;font-size:15px;color:var(--by-ink);
  background:#fff;border:1px solid var(--by-line);
  border-radius:var(--by-radius-sm);
  transition:border-color 150ms ease-out,box-shadow 150ms ease-out;
}
.byclone-wrapper .by-quote-form__group textarea{resize:vertical;min-height:120px;line-height:1.55}
.byclone-wrapper .by-quote-form__group select{appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%234a5568' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer;
}
.byclone-wrapper .by-quote-form__group input:focus-visible,
.byclone-wrapper .by-quote-form__group select:focus-visible,
.byclone-wrapper .by-quote-form__group textarea:focus-visible{
  outline:2px solid var(--by-brand);outline-offset:2px;border-color:var(--by-brand-text);
}
.byclone-wrapper .by-quote-form__submit{
  margin-top:8px;padding:14px 24px;font-size:15px;
  justify-content:center;align-self:stretch;width:100%;
}
.byclone-wrapper .by-quote-form__terms{
  font-size:12px;color:var(--by-ink-mute);margin:0;line-height:1.55;text-align:center;
}
.byclone-wrapper .by-quote-form__success{
  display:none;background:var(--by-brand-light);border:1px solid var(--by-brand);
  border-radius:var(--by-radius-sm);padding:24px;text-align:center;
}
.byclone-wrapper .by-quote-form__success strong{display:block;color:var(--by-brand-text);font-size:18px;margin-bottom:6px}
.byclone-wrapper .by-quote-form__success p{font-size:14px;color:var(--by-ink-soft);margin:0;line-height:1.55}
.byclone-wrapper .by-quote-form.is-submitted .by-quote-form__success{display:block}
.byclone-wrapper .by-quote-form.is-submitted > *:not(.by-quote-form__success){display:none}

.byclone-wrapper .by-quote__aside{display:flex;flex-direction:column;gap:24px}
.byclone-wrapper .by-quote__promise{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);padding:24px;
}
.byclone-wrapper .by-quote__promise h3{
  font-size:13px;margin:0 0 16px;color:var(--by-ink);
  text-transform:uppercase;letter-spacing:.06em;font-weight:700;
}
.byclone-wrapper .by-quote__promise ul{display:flex;flex-direction:column;gap:14px;list-style:none;padding:0;margin:0}
.byclone-wrapper .by-quote__promise li{
  display:flex;gap:12px;font-size:14px;color:var(--by-ink-soft);line-height:1.5;
}
.byclone-wrapper .by-quote__promise svg{
  width:20px;height:20px;color:var(--by-brand-text);flex-shrink:0;margin-top:1px;
}
.byclone-wrapper .by-quote__step-num{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:var(--by-brand-light);color:var(--by-brand-text);
  display:inline-flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;margin-top:1px;
}
.byclone-wrapper .by-quote__promise li strong{color:var(--by-ink);font-weight:700;display:block;margin-bottom:2px}
.byclone-wrapper .by-quote__contact{
  background:var(--by-ink);color:rgba(255,255,255,0.85);
  border-radius:var(--by-radius-md);padding:24px;
}
.byclone-wrapper .by-quote__contact h3{
  font-size:13px;text-transform:uppercase;letter-spacing:.06em;
  color:rgba(255,255,255,0.6);margin:0 0 12px;font-weight:700;
}
.byclone-wrapper .by-quote__contact p{font-size:14px;line-height:1.6;margin:0 0 8px;color:rgba(255,255,255,0.85)}
.byclone-wrapper .by-quote__contact a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.byclone-wrapper .by-quote__contact a:hover{color:var(--by-brand-light)}

/* ============================================================
   20. SECTION 13 — DEVELOPMENT PROCESS / TIMELINE
   ============================================================ */
.byclone-wrapper .by-process{background:#fff}
.byclone-wrapper .by-process__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-process__head h2{margin-bottom:24px}

/* Mobile (default): vertical timeline */
.byclone-wrapper .by-process__steps{
  position:relative;display:flex;flex-direction:column;gap:32px;
  max-width:680px;margin:0 auto;padding-left:36px;
}
.byclone-wrapper .by-process__steps::before{
  content:"";position:absolute;left:24px;top:24px;bottom:24px;
  width:2px;background:var(--by-line);
}
.byclone-wrapper .by-step{position:relative}
.byclone-wrapper .by-step__num{
  position:absolute;left:-36px;top:0;width:48px;height:48px;
  border-radius:50%;background:var(--by-brand-light);
  display:flex;align-items:center;justify-content:center;
  font-weight:700;color:var(--by-brand-text);font-size:18px;
  border:4px solid #fff;
}
.byclone-wrapper .by-step__body{padding-left:36px}
.byclone-wrapper .by-step h3{font-size:18px;margin:0 0 4px;color:var(--by-ink)}
.byclone-wrapper .by-step__time{
  font-size:14px;color:var(--by-ink-mute);margin:0 0 8px;font-weight:500;
}
.byclone-wrapper .by-step p{font-size:14px;color:var(--by-ink-soft);line-height:1.65;margin:0}

@media(min-width:1024px){
  .byclone-wrapper .by-process__steps{
    flex-direction:row;gap:0;padding-left:0;max-width:1100px;
  }
  .byclone-wrapper .by-process__steps::before{
    left:48px;right:48px;top:24px;bottom:auto;
    width:auto;height:2px;
  }
  .byclone-wrapper .by-step{flex:1;padding:0 12px;text-align:center}
  .byclone-wrapper .by-step__num{
    position:relative;left:auto;top:auto;margin:0 auto 16px;
  }
  .byclone-wrapper .by-step__body{padding-left:0}
}

.byclone-wrapper .by-process__cta{text-align:center;margin-top:48px}

/* ============================================================
   21. SECTION 14 — WHITE-LABEL & SOURCE CODE
   ============================================================ */
.byclone-wrapper .by-wl{background:var(--by-bg-alt)}
.byclone-wrapper .by-wl__grid{
  display:grid;grid-template-columns:1fr;gap:48px;align-items:center;
}
@media(min-width:1024px){.byclone-wrapper .by-wl__grid{grid-template-columns:1fr 1fr;gap:64px}}
.byclone-wrapper .by-wl__copy h2{margin-bottom:24px}
.byclone-wrapper .by-wl__copy p{color:var(--by-ink-soft);margin-bottom:20px;font-size:16px;line-height:1.65}
.byclone-wrapper .by-wl__copy .by-btn{margin-top:16px}

.byclone-wrapper .by-wl__panel{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-lg);
  padding:24px;
}
@media(min-width:768px){.byclone-wrapper .by-wl__panel{padding:32px}}
.byclone-wrapper .by-wl__panel h3{font-size:22px;margin-bottom:24px;color:var(--by-ink)}
.byclone-wrapper .by-wl__list{display:flex;flex-direction:column;gap:16px}
.byclone-wrapper .by-wl__list li{
  display:flex;gap:12px;align-items:flex-start;
  font-size:16px;color:var(--by-ink-soft);line-height:1.55;
}
.byclone-wrapper .by-wl__list svg{
  width:20px;height:20px;color:var(--by-brand-text);flex-shrink:0;margin-top:3px;
}

/* ============================================================
   22. SECTION 15 — CASE STUDIES & TESTIMONIALS
   ============================================================ */
.byclone-wrapper .by-cases{background:#fff}
.byclone-wrapper .by-cases__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-cases__head h2{margin-bottom:24px}

.byclone-wrapper .by-cases__grid{
  display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:64px;
}
@media(min-width:768px){.byclone-wrapper .by-cases__grid{grid-template-columns:repeat(3,1fr);gap:32px}}
.byclone-wrapper .by-case{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
}
.byclone-wrapper .by-case:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-case__img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}
.byclone-wrapper .by-case__body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.byclone-wrapper .by-case__tag{
  font-size:12px;font-weight:700;letter-spacing:0.08em;
  text-transform:uppercase;color:var(--by-brand-text);
}
.byclone-wrapper .by-case h3{font-size:20px;margin:0;color:var(--by-ink)}
.byclone-wrapper .by-case__meta{font-size:14px;color:var(--by-ink-mute);margin:0}
.byclone-wrapper .by-case__metric{
  background:var(--by-brand-light);border-radius:var(--by-radius-sm);
  padding:12px 16px;
}
.byclone-wrapper .by-case__metric strong{
  display:block;font-size:24px;font-weight:800;color:var(--by-brand-text);line-height:1.1;
}
.byclone-wrapper .by-case__metric span{font-size:13px;color:var(--by-ink-soft);font-weight:500}
.byclone-wrapper .by-case__body p{font-size:14px;color:var(--by-ink-soft);line-height:1.6;margin:0}
.byclone-wrapper .by-case__link{margin-top:auto;color:var(--by-brand-text);font-weight:600;font-size:14px}

/* Reviews — verified Clutch reviews slider */
.byclone-wrapper .by-reviews{margin-top:80px}
.byclone-wrapper .by-reviews__head{
  display:flex;flex-direction:column;gap:24px;
  align-items:flex-start;justify-content:space-between;
  margin-bottom:32px;
}
@media(min-width:1024px){
  .byclone-wrapper .by-reviews__head{flex-direction:row;align-items:flex-end;gap:32px}
}
.byclone-wrapper .by-reviews__title-block{max-width:640px}
.byclone-wrapper .by-reviews__eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--by-brand-text);margin-bottom:14px;
}
.byclone-wrapper .by-reviews__eyebrow::before{
  content:"";width:6px;height:6px;border-radius:50%;background:var(--by-brand);
  animation:by-reviews-pulse 2s ease-in-out infinite;
}
@keyframes by-reviews-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(109,40,217,0.6)}
  50%{box-shadow:0 0 0 6px rgba(109,40,217,0)}
}
.byclone-wrapper .by-reviews__title{
  font-size:28px;line-height:1.15;font-weight:700;color:var(--by-ink);
  margin:0 0 12px;letter-spacing:-0.01em;
}
@media(min-width:768px){.byclone-wrapper .by-reviews__title{font-size:34px}}
.byclone-wrapper .by-reviews__sub{font-size:16px;line-height:1.55;color:var(--by-ink-soft);margin:0}
.byclone-wrapper .by-reviews__clutch{
  display:inline-flex;align-items:center;gap:12px;flex-shrink:0;
  border:1px solid var(--by-line);background:#fff;
  border-radius:14px;padding:12px 16px;
  text-decoration:none;color:inherit;
  transition:border-color 200ms ease-out,box-shadow 200ms ease-out;
}
.byclone-wrapper .by-reviews__clutch:hover{
  border-color:rgba(109,40,217,0.4);box-shadow:var(--by-shadow-md);
  text-decoration:none;
}
.byclone-wrapper .by-reviews__pile{display:flex;flex-shrink:0}
.byclone-wrapper .by-reviews__pile > *{margin-left:-8px;border:2px solid #fff;border-radius:50%}
.byclone-wrapper .by-reviews__pile > *:first-child{margin-left:0}
.byclone-wrapper .by-reviews__pile img{width:36px;height:36px;object-fit:cover;display:block}
.byclone-wrapper .by-reviews__pile-count{
  width:36px;height:36px;border-radius:50%;
  background:var(--by-ink);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:700;
}
.byclone-wrapper .by-reviews__rating-stars{display:flex;gap:1px;color:#FBBF24}
.byclone-wrapper .by-reviews__rating-stars svg{width:14px;height:14px}
.byclone-wrapper .by-reviews__rating-text{font-size:13px;color:var(--by-ink-soft);margin-top:4px}
.byclone-wrapper .by-reviews__rating-text strong{color:var(--by-ink);font-weight:600}

.byclone-wrapper .by-reviews__controls{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin-bottom:20px;
}
.byclone-wrapper .by-reviews__counter{
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--by-ink-mute);display:flex;align-items:center;gap:10px;
}
.byclone-wrapper .by-reviews__counter strong{color:var(--by-ink);font-weight:600}
.byclone-wrapper .by-reviews__progress{
  position:relative;width:96px;height:1px;background:var(--by-line);overflow:hidden;
  display:none;
}
@media(min-width:640px){.byclone-wrapper .by-reviews__progress{display:block}}
.byclone-wrapper .by-reviews__progress-fill{
  position:absolute;left:0;top:0;bottom:0;background:var(--by-brand);
  transition:width 300ms ease-out;
}
.byclone-wrapper .by-reviews__nav{display:flex;gap:8px}
.byclone-wrapper .by-reviews__nav-btn{
  width:40px;height:40px;border-radius:50%;
  border:1px solid var(--by-line);background:#fff;color:var(--by-ink-soft);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  transition:border-color 200ms ease-out,color 200ms ease-out;
  font-family:inherit;
}
.byclone-wrapper .by-reviews__nav-btn:hover{border-color:rgba(109,40,217,0.4);color:var(--by-brand-text)}
.byclone-wrapper .by-reviews__nav-btn svg{width:18px;height:18px}

.byclone-wrapper .by-reviews__rail-wrap{margin:0 -20px;padding:0 20px}
.byclone-wrapper .by-reviews__rail{
  display:flex;gap:20px;
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  padding:8px 0 16px;
  scrollbar-width:none;-ms-overflow-style:none;
}
.byclone-wrapper .by-reviews__rail::-webkit-scrollbar{display:none}

.byclone-wrapper .by-review-card{
  flex:0 0 calc(100% - 0rem);
  scroll-snap-align:start;
  background:#fff;border:1px solid var(--by-line);
  border-radius:var(--by-radius-md);padding:24px;
  display:flex;flex-direction:column;min-height:280px;
  text-decoration:none;color:inherit;
  transition:transform 200ms ease-out,border-color 200ms ease-out,box-shadow 200ms ease-out;
}
@media(min-width:640px){.byclone-wrapper .by-review-card{flex-basis:calc(50% - 10px)}}
@media(min-width:1024px){.byclone-wrapper .by-review-card{flex-basis:calc(33.333% - 13.333px)}}
.byclone-wrapper .by-review-card:hover{
  transform:translateY(-3px);border-color:rgba(109,40,217,0.35);
  box-shadow:0 14px 30px -16px rgba(15,23,42,0.18),0 2px 6px rgba(15,23,42,0.04);
  text-decoration:none;
}
.byclone-wrapper .by-review-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.byclone-wrapper .by-review-card__tag{
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--by-brand-text);
}
.byclone-wrapper .by-review-card__stars{display:flex;gap:1px;color:#FBBF24}
.byclone-wrapper .by-review-card__stars svg{width:11px;height:11px}
.byclone-wrapper .by-review-card__quote{
  font-size:15px;line-height:1.6;color:var(--by-ink);margin:0;flex:1;
  font-style:normal;
}
.byclone-wrapper .by-review-card__foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-top:16px;margin-top:20px;border-top:1px solid var(--by-line);
}
.byclone-wrapper .by-review-card__who{display:flex;align-items:center;gap:12px;min-width:0}
.byclone-wrapper .by-review-card__avatar{
  width:36px;height:36px;border-radius:50%;flex-shrink:0;
  overflow:hidden;display:flex;align-items:center;justify-content:center;
  background:var(--by-brand-light);color:var(--by-brand-text);
  font-weight:700;font-size:13px;
  border:1px solid var(--by-line);
}
.byclone-wrapper .by-review-card__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.byclone-wrapper .by-review-card__meta{min-width:0}
.byclone-wrapper .by-review-card__name{
  font-size:13px;font-weight:600;color:var(--by-ink);margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.byclone-wrapper .by-review-card__role{
  font-size:11px;color:var(--by-ink-mute);margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.byclone-wrapper .by-review-card__cta{
  display:inline-flex;align-items:center;gap:4px;flex-shrink:0;
  font-size:11px;font-weight:600;color:var(--by-ink-mute);
  transition:color 200ms ease-out;
}
.byclone-wrapper .by-review-card:hover .by-review-card__cta{color:var(--by-brand-text)}
.byclone-wrapper .by-review-card__cta svg{width:12px;height:12px}

/* Video review card — same shell as the text card, thumbnail replaces the quote */
.byclone-wrapper .by-review-card--video{padding:0;overflow:hidden;cursor:pointer}
.byclone-wrapper .by-review-card__video-thumb{
  position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#000;
}
.byclone-wrapper .by-review-card__video-thumb img,
.byclone-wrapper .by-review-card__video-thumb iframe{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;display:block;border:0;
}
.byclone-wrapper .by-review-card__video-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,0.95);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px rgba(0,0,0,0.35);pointer-events:none;
  transition:transform 200ms ease-out;
}
.byclone-wrapper .by-review-card--video:hover .by-review-card__video-play{transform:translate(-50%,-50%) scale(1.08)}
.byclone-wrapper .by-review-card__video-play svg{width:23px;height:23px;color:var(--by-brand-text);margin-left:3px}
.byclone-wrapper .by-review-card--video .by-review-card__foot{
  margin-top:auto;padding:16px 24px 20px;border-top:1px solid var(--by-line);
}
.byclone-wrapper .by-review-card--video .by-review-card__cta{color:var(--by-brand-text)}
@media(max-width:479px){
  .byclone-wrapper .by-review-card__video-play{width:48px;height:48px}
  .byclone-wrapper .by-review-card__video-play svg{width:19px;height:19px}
  .byclone-wrapper .by-review-card--video .by-review-card__foot{padding:14px 18px 18px}
}

.byclone-wrapper .by-reviews__source{
  text-align:center;font-size:12px;color:var(--by-ink-mute);margin-top:24px;
}
.byclone-wrapper .by-reviews__source a{
  font-weight:600;color:var(--by-ink);
  text-decoration:underline;text-decoration-color:var(--by-line);text-underline-offset:4px;
}
.byclone-wrapper .by-reviews__source a:hover{text-decoration-color:var(--by-brand-text)}

/* ============================================================
   23. SECTION 16 — E-E-A-T (Why vativeApps)
   ============================================================ */
.byclone-wrapper .by-eeat{background:var(--by-bg-alt)}
.byclone-wrapper .by-eeat__byline{
  display:flex;align-items:flex-start;justify-content:center;gap:16px;
  margin:0 auto 32px;max-width:720px;
  padding:18px 22px;background:#fff;
  border:1px solid var(--by-line);border-radius:var(--by-radius-md);
}
@media(max-width:560px){
  .byclone-wrapper .by-eeat__byline{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}
}
.byclone-wrapper .by-eeat__author-photo{
  width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0;
  border:2px solid var(--by-line);background:var(--by-brand-light);
}
.byclone-wrapper .by-eeat__author-meta{font-size:13px;color:var(--by-ink-mute);line-height:1.5;text-align:left}
.byclone-wrapper .by-eeat__author-meta strong{color:var(--by-ink);font-weight:700}
.byclone-wrapper .by-eeat__author-meta a{color:var(--by-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--by-line)}
.byclone-wrapper .by-eeat__author-meta a:hover{color:var(--by-brand-text);text-decoration-color:var(--by-brand-text)}
.byclone-wrapper .by-eeat__author-meta time{white-space:nowrap}
.byclone-wrapper .by-eeat__author-bio{margin-top:4px;margin-bottom:6px;color:var(--by-ink-soft);font-size:13px}
.byclone-wrapper .by-eeat__head{text-align:center;max-width:800px;margin:0 auto 48px}
.byclone-wrapper .by-eeat__head h2{margin-bottom:24px}
.byclone-wrapper .by-eeat__grid{
  display:grid;grid-template-columns:1fr;gap:24px;
  max-width:1100px;margin:0 auto;
}
@media(min-width:768px){.byclone-wrapper .by-eeat__grid{grid-template-columns:1fr 1fr;gap:32px}}
.byclone-wrapper .by-quad{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:24px;display:flex;gap:20px;align-items:flex-start;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
}
@media(min-width:768px){.byclone-wrapper .by-quad{padding:32px}}
.byclone-wrapper .by-quad:hover{transform:translateY(-2px);box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-quad__letter{
  width:56px;height:56px;flex-shrink:0;
  background:var(--by-brand-light);border-radius:var(--by-radius-sm);
  display:flex;align-items:center;justify-content:center;
  font-family:inherit;font-weight:800;font-size:28px;color:var(--by-brand-text);
}
@media(min-width:768px){.byclone-wrapper .by-quad__letter{width:64px;height:64px;font-size:32px}}
.byclone-wrapper .by-quad h3{font-size:20px;margin:0 0 12px;color:var(--by-ink)}
.byclone-wrapper .by-quad p{font-size:15px;color:var(--by-ink-soft);line-height:1.6;margin:0}

.byclone-wrapper .by-eeat__partners{
  display:flex;flex-wrap:wrap;justify-content:center;gap:34px;
  margin-top:48px;filter:grayscale(1);opacity:.7;
}
.byclone-wrapper .by-eeat__partners img{height:32px;width:auto}

/* ============================================================
   23.5 SECTION 16.5 — CERTIFICATIONS & AWARDS
   ============================================================ */
.byclone-wrapper .by-awards{background:#fff}
.byclone-wrapper .by-awards__head{text-align:center;max-width:760px;margin:0 auto 48px}
.byclone-wrapper .by-awards__head h2{margin-bottom:16px}
.byclone-wrapper .by-awards__head .by-lead{color:var(--by-ink-soft)}
.byclone-wrapper .by-award{
  background:#fff;border:1px solid var(--by-line);border-radius:var(--by-radius-md);
  padding:32px 28px;max-width:860px;margin:0 auto;
  display:flex;flex-direction:column;align-items:center;gap:24px;
  transition:transform 200ms ease-out,box-shadow 200ms ease-out;
  text-align:center;
}
@media(min-width:768px){
  .byclone-wrapper .by-award{flex-direction:row;align-items:center;text-align:left;padding:40px;gap:40px}
}
.byclone-wrapper .by-award:hover{box-shadow:var(--by-shadow-md)}
.byclone-wrapper .by-award__badge{flex-shrink:0;width:360px;max-width:100%;aspect-ratio:1/1;display:block;border:0}
.byclone-wrapper .by-award__body{display:flex;flex-direction:column;gap:12px;min-width:0}
.byclone-wrapper .by-award h3{font-size:22px;line-height:1.3;margin:0;color:var(--by-ink)}
.byclone-wrapper .by-award__meta{font-size:13px;color:var(--by-ink-mute);margin:0;letter-spacing:.04em;text-transform:uppercase;font-weight:600}
.byclone-wrapper .by-award p{font-size:15px;line-height:1.65;color:var(--by-ink-soft);margin:0}
.byclone-wrapper .by-award a.by-award__link{
  display:inline-flex;align-items:center;gap:6px;
  font-size:14px;font-weight:600;color:var(--by-brand-text);text-decoration:none;
  margin-top:4px;align-self:start;
}
.byclone-wrapper .by-award a.by-award__link:hover{text-decoration:underline}

/* ============================================================
   24. SECTION 17 — FAQ
   ============================================================ */
.byclone-wrapper .by-faq{background:#fff}
.byclone-wrapper .by-faq__inner{max-width:800px;margin:0 auto}
.byclone-wrapper .by-faq__head{text-align:center;margin-bottom:48px}
.byclone-wrapper .by-faq__list{
  border-top:1px solid var(--by-line);
}
.byclone-wrapper .by-faq__item{border-bottom:1px solid var(--by-line)}
.byclone-wrapper .by-faq__q{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding:24px 0;text-align:left;
  font-family:inherit;font-weight:600;font-size:18px;color:var(--by-ink);
  background:transparent;line-height:1.4;
  /* Theme/Elementor <button> rules can apply white-space:nowrap, which forces
     long FAQ questions onto a single line so they overflow the mobile
     viewport. Pin normal wrapping so the button reset can't be overridden. */
  white-space:normal;
  transition:background-color 150ms ease-out,padding 150ms ease-out;
}
.byclone-wrapper .by-faq__q:hover{background:var(--by-brand-light);padding-left:16px;padding-right:16px}
/* The question text is a flex item; min-width:0 lets it shrink below its
   intrinsic width so long questions wrap onto the next line instead of
   overflowing the screen. The icon keeps its fixed size (flex-shrink:0 above).
   The selector uses *:not(.by-faq__icon) rather than span:not(...) so it works
   no matter what element (span, div, p, …) wraps the question text. */
.byclone-wrapper .by-faq__q > *:not(.by-faq__icon){
  flex:1 1 auto;min-width:0;
  white-space:normal;overflow-wrap:break-word;word-break:break-word;
}
.byclone-wrapper .by-faq__icon{
  width:24px;height:24px;flex-shrink:0;color:var(--by-brand-text);
  position:relative;
}
.byclone-wrapper .by-faq__icon::before,
.byclone-wrapper .by-faq__icon::after{
  content:"";position:absolute;background:currentColor;border-radius:2px;
  transition:transform 250ms ease-out;
}
.byclone-wrapper .by-faq__icon::before{
  left:50%;top:11px;width:14px;height:2px;transform:translateX(-50%);
}
.byclone-wrapper .by-faq__icon::after{
  left:11px;top:50%;width:2px;height:14px;transform:translateY(-50%);
}
.byclone-wrapper .by-faq__q[aria-expanded="true"] .by-faq__icon::after{
  transform:translateY(-50%) rotate(90deg);
}
.byclone-wrapper .by-faq__panel{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows 250ms ease-out;
}
.byclone-wrapper .by-faq__panel-inner{overflow:hidden}
.byclone-wrapper .by-faq__q[aria-expanded="true"] + .by-faq__panel{grid-template-rows:1fr}
.byclone-wrapper .by-faq__a{
  font-size:16px;color:var(--by-ink-soft);line-height:1.65;
  padding:0 0 24px;margin:0;
}
.byclone-wrapper .by-faq__cta{text-align:center;margin-top:48px}

/* ============================================================
   25. SECTION 18 — FINAL CTA
   ============================================================ */
.byclone-wrapper .by-final{background:var(--by-brand-light);text-align:center}
.byclone-wrapper .by-final__inner{max-width:880px;margin:0 auto}
.byclone-wrapper .by-final h2{
  font-size:32px;line-height:1.15;margin-bottom:24px;
}
@media(min-width:768px){.byclone-wrapper .by-final h2{font-size:52px;line-height:1.05}}
.byclone-wrapper .by-final__lead{
  font-size:18px;line-height:1.5;font-weight:500;color:var(--by-ink-soft);
  max-width:720px;margin:0 auto 32px;
}
@media(min-width:768px){.byclone-wrapper .by-final__lead{font-size:22px}}
.byclone-wrapper .by-final__trust{
  font-size:14px;color:var(--by-ink-mute);margin-top:24px;font-weight:500;
}
.byclone-wrapper .by-final__trust span{display:inline-block;margin:0 8px;color:var(--by-line)}

/* ============================================================
   26. FOOTER
   ============================================================ */
.byclone-wrapper .by-footer{
  background:#fff;border-top:1px solid var(--by-line);
  padding:48px 0;
}
@media(min-width:768px){.byclone-wrapper .by-footer{padding:64px 0}}
.byclone-wrapper .by-footer__grid{
  display:grid;grid-template-columns:1fr;gap:32px;
}
@media(min-width:768px){.byclone-wrapper .by-footer__grid{grid-template-columns:2fr 1fr 1fr}}
.byclone-wrapper .by-footer__brand .by-wordmark{font-size:24px;display:inline-block;margin-bottom:12px}
.byclone-wrapper .by-footer__tag{
  font-size:14px;color:var(--by-ink-soft);line-height:1.55;
  max-width:360px;margin:0 0 16px;
}
.byclone-wrapper .by-footer__copy{font-size:13px;color:var(--by-ink-mute);margin:0}
.byclone-wrapper .by-footer__col h4{
  font-size:13px;text-transform:uppercase;letter-spacing:0.08em;
  font-weight:700;color:var(--by-ink);margin:0 0 16px;
}
.byclone-wrapper .by-footer__links{display:flex;flex-direction:column;gap:10px}
.byclone-wrapper .by-footer__links a{
  font-size:14px;color:var(--by-ink-soft);text-decoration:none;
  transition:color 150ms ease-out;
}
.byclone-wrapper .by-footer__links a:hover{color:var(--by-brand-text);text-decoration:none}
.byclone-wrapper .by-footer__social{display:flex;gap:12px}
.byclone-wrapper .by-footer__social a{
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--by-line);color:var(--by-ink-mute);
  transition:color 150ms ease-out,border-color 150ms ease-out;
}
.byclone-wrapper .by-footer__social a:hover{color:var(--by-brand-text);border-color:var(--by-brand-text)}
.byclone-wrapper .by-footer__social svg{width:18px;height:18px}

/* ============================================================
   27. STICKY MOBILE CTA
   ============================================================ */
.byclone-wrapper .by-sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:90;
  background:#fff;border-top:1px solid var(--by-line);
  box-shadow:0 -4px 16px rgba(30,21,51,0.08);
  padding:12px 16px;
  display:flex;align-items:center;gap:12px;
  transform:translateY(100%);
  transition:transform 250ms ease-out;
}
.byclone-wrapper .by-sticky-cta.by-sticky-visible{transform:translateY(0)}
.byclone-wrapper .by-sticky-cta .by-btn{flex:1;padding:12px 16px;font-size:16px}
.byclone-wrapper .by-sticky-cta__close{
  width:36px;height:36px;flex-shrink:0;
  border-radius:50%;background:transparent;
  display:flex;align-items:center;justify-content:center;
  color:var(--by-ink-mute);border:1px solid var(--by-line);
}
.byclone-wrapper .by-sticky-cta__close:hover{color:var(--by-ink);border-color:var(--by-ink)}
.byclone-wrapper .by-sticky-cta__close svg{width:16px;height:16px}
@media(min-width:1024px){.byclone-wrapper .by-sticky-cta{display:none}}

/* ============================================================
   27b. DEMO VIDEO MODAL
   ============================================================ */
.byclone-wrapper .by-video-overlay{
  position:fixed;inset:0;z-index:300;
  background:rgba(30,21,51,0.82);
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;
  padding:24px 16px;
  opacity:0;visibility:hidden;
  transition:opacity 260ms ease-out,visibility 260ms ease-out;
}
.byclone-wrapper .by-video-overlay.by-open{opacity:1;visibility:visible}
.byclone-wrapper .by-video-modal{
  position:relative;width:100%;max-width:960px;
  transform:translateY(18px) scale(0.97);
  transition:transform 300ms cubic-bezier(0.16,1,0.3,1);
}
.byclone-wrapper .by-video-overlay.by-open .by-video-modal{transform:translateY(0) scale(1)}
.byclone-wrapper .by-video-modal__frame{
  position:relative;width:100%;aspect-ratio:16/9;
  background:#000;border-radius:var(--by-radius-lg);overflow:hidden;
  box-shadow:var(--by-shadow-lg);
}
.byclone-wrapper .by-video-modal__frame video{
  position:absolute;inset:0;width:100%;height:100%;
  display:block;object-fit:contain;background:#000;border:none;
}
.byclone-wrapper .by-video-modal__close{
  position:absolute;top:-16px;right:-16px;z-index:2;
  width:44px;height:44px;border-radius:50%;
  background:#fff;border:none;color:var(--by-ink);
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,0.35);
  transition:background-color 150ms ease-out,color 150ms ease-out,transform 150ms ease-out;
}
.byclone-wrapper .by-video-modal__close:hover,
.byclone-wrapper .by-video-modal__close:focus-visible{
  background:var(--by-brand);color:var(--by-on-brand);transform:rotate(90deg);
}
.byclone-wrapper .by-video-modal__close svg{width:20px;height:20px}
@media(max-width:600px){
  .byclone-wrapper .by-video-modal__close{top:8px;right:8px;width:40px;height:40px}
}

/* ============================================================
   28. REVENUE CALCULATOR MODAL
   ============================================================ */
.byclone-wrapper .by-calc-overlay{
  position:fixed;inset:0;z-index:200;
  background:rgba(30,21,51,0.6);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  display:none;align-items:flex-start;justify-content:center;
  padding:24px 16px;overflow-y:auto;
}
.byclone-wrapper .by-calc-overlay.by-open{display:flex}
.byclone-wrapper body.by-modal-open{overflow:hidden}

/* ============================================================
   28b. BOOK A DEMO MODAL
   Reuses the dark .by-tryit-form field styling, so the modal
   itself is dark to match (same look as the "Try the App
   Yourself" section). Submits via the demo_access AJAX path,
   which emails the lead to the admin address.
   ============================================================ */
.byclone-wrapper .by-demo-overlay{
  position:fixed;inset:0;z-index:200;
  background:rgba(30,21,51,0.6);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  display:none;align-items:flex-start;justify-content:center;
  padding:24px 16px;overflow-y:auto;
}
.byclone-wrapper .by-demo-overlay.by-open{display:flex}
.byclone-wrapper .by-demo-modal{
  background:var(--by-ink);color:rgba(255,255,255,0.85);
  width:100%;max-width:560px;margin:auto;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--by-radius-lg);
  box-shadow:var(--by-shadow-lg);
  position:relative;
  padding:40px 32px 32px;
}
@media(max-width:560px){.byclone-wrapper .by-demo-modal{padding:32px 20px 24px}}
.byclone-wrapper .by-demo-modal__close{
  position:absolute;top:16px;right:16px;z-index:2;
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,0.08);border:1.5px solid rgba(255,255,255,0.22);
  display:flex;align-items:center;justify-content:center;
  color:#fff;cursor:pointer;
  transition:background-color 150ms ease-out,border-color 150ms ease-out,transform 150ms ease-out;
}
.byclone-wrapper .by-demo-modal__close:hover,
.byclone-wrapper .by-demo-modal__close:focus,
.byclone-wrapper .by-demo-modal__close:focus-visible{
  background:var(--by-brand);border-color:var(--by-brand);color:var(--by-on-brand);transform:rotate(90deg);
}
.byclone-wrapper .by-demo-modal__close svg{width:24px;height:24px;stroke:currentColor;display:block;flex-shrink:0}
.byclone-wrapper .by-demo-modal__head{margin:0 44px 24px 0}
.byclone-wrapper .by-demo-modal__head h2{color:#fff;font-size:24px;line-height:1.2;margin:0 0 8px}
.byclone-wrapper .by-demo-modal__head p{font-size:14px;color:rgba(255,255,255,0.7);margin:0;line-height:1.55}
.byclone-wrapper .by-demo-modal__success{display:none;text-align:center;padding:16px 8px 8px}
.byclone-wrapper .by-demo-modal__success-icon{
  width:56px;height:56px;border-radius:50%;margin:0 auto 16px;
  background:rgba(16,185,129,0.15);color:var(--by-success);
  display:flex;align-items:center;justify-content:center;
}
.byclone-wrapper .by-demo-modal__success-icon svg{width:28px;height:28px}
.byclone-wrapper .by-demo-modal__success strong{display:block;color:#fff;font-size:20px;margin-bottom:8px}
.byclone-wrapper .by-demo-modal__success p{color:rgba(255,255,255,0.7);font-size:14px;margin:0;line-height:1.6}
/* Submitted state — swap the form/head for the success message */
.byclone-wrapper .by-demo-modal.is-submitted .by-demo-modal__head,
.byclone-wrapper .by-demo-modal.is-submitted .by-tryit-form{display:none}
.byclone-wrapper .by-demo-modal.is-submitted .by-demo-modal__success{display:block}

/* ============================================================
   28c. BOOK A DEMO MODAL — LEAD VARIANT (.by-demo-modal--lead)
   Two-column lead-capture layout ported from the UberEats Clone
   plugin: trust column (Clutch + video testimonial + quote) on
   the left, form column on the right. Visual styling uses the
   BYJU’S Clone dark theme + --by-brand so it visually belongs on
   this page. Base .by-demo-overlay / .by-demo-modal rules are
   left untouched — the Feature Checklist (PDF) modal below
   continues to use them.
   ============================================================ */
/* Overlay variant — opacity/transform transitions instead of display toggle
   so the fade-in matches the UberEats popup's open behaviour. */
.byclone-wrapper .by-demo-overlay--lead{
  display:flex;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity 250ms ease,visibility 250ms ease;
}
.byclone-wrapper .by-demo-overlay--lead.by-open{
  opacity:1;visibility:visible;pointer-events:auto;
}
.byclone-wrapper .by-demo-modal--lead{
  max-width:840px;padding:0;overflow:hidden;
  transform:translateY(14px);
  transition:transform 250ms ease;
}
.byclone-wrapper .by-demo-overlay--lead.by-open .by-demo-modal--lead{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){
  .byclone-wrapper .by-demo-overlay--lead,
  .byclone-wrapper .by-demo-modal--lead{transition:none}
}

/* Close button — keep the existing dark pill style; just nudge it
   inside the rounded corner of the 2-column container. */
.byclone-wrapper .by-demo-modal--lead .by-demo-modal__close{top:14px;right:14px}

/* 2-column grid (stacks on mobile, side-by-side on ≥760px) */
.byclone-wrapper .by-demo-modal__grid{display:grid;grid-template-columns:1fr}
@media(min-width:760px){.byclone-wrapper .by-demo-modal__grid{grid-template-columns:0.9fr 1fr}}

/* Trust column — slightly lifted from the modal background so it
   reads as a distinct panel without breaking the dark theme. */
.byclone-wrapper .by-demo-modal__trust{
  background:rgba(255,255,255,0.04);
  border-bottom:1px solid rgba(255,255,255,0.08);
  padding:30px 24px;
  display:flex;flex-direction:column;gap:16px;
}
@media(min-width:760px){
  .byclone-wrapper .by-demo-modal__trust{
    border-bottom:none;
    border-right:1px solid rgba(255,255,255,0.08);
    padding:34px 28px;
  }
}
.byclone-wrapper .by-demo-modal__clutch{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:rgba(255,255,255,0.85)}
.byclone-wrapper .by-demo-modal__clutch strong{color:#fff}
.byclone-wrapper .by-demo-modal__stars{display:inline-flex;gap:1px;color:#FBBF24}
.byclone-wrapper .by-demo-modal__stars svg{width:15px;height:15px}

/* Video facade (YouTube thumbnail + play button) */
.byclone-wrapper .by-demo-modal__video{
  position:relative;border-radius:var(--by-radius-md);overflow:hidden;
  aspect-ratio:16/9;background:#000;cursor:pointer;
}
.byclone-wrapper .by-demo-modal__video img,
.byclone-wrapper .by-demo-modal__video iframe,
.byclone-wrapper .by-demo-modal__video video{width:100%;height:100%;object-fit:cover;display:block;border:0}
.byclone-wrapper .by-demo-modal__video-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,0.95);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px rgba(0,0,0,0.35);pointer-events:none;
}
.byclone-wrapper .by-demo-modal__video-play svg{width:23px;height:23px;color:var(--by-brand);margin-left:3px}

.byclone-wrapper .by-demo-modal__quote{font-size:14px;line-height:1.55;color:#fff;font-style:italic;margin:0;font-weight:500}
.byclone-wrapper .by-demo-modal__author{font-size:12.5px;color:rgba(255,255,255,0.7);margin:0;line-height:1.4}
.byclone-wrapper .by-demo-modal__author strong{color:#fff;font-weight:700;font-style:normal}
.byclone-wrapper .by-demo-modal__more{
  display:inline-block;align-self:flex-start;margin-top:2px;
  font-size:12.5px;font-weight:700;color:#fff;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,0.45);
  transition:color 150ms ease-out,border-color 150ms ease-out;
}
.byclone-wrapper .by-demo-modal__more:hover{color:var(--by-brand-on-dark);border-bottom-color:var(--by-brand-on-dark);text-decoration:none}

/* Form column */
.byclone-wrapper .by-demo-modal__formcol{padding:34px 24px 28px;position:relative}
@media(min-width:760px){.byclone-wrapper .by-demo-modal__formcol{padding:40px 32px 30px}}
.byclone-wrapper .by-demo-modal--lead .by-demo-modal__head{margin:0 44px 20px 0}
.byclone-wrapper .by-demo-modal--lead .by-demo-modal__head h2{font-size:22px;line-height:1.2}
.byclone-wrapper .by-demo-modal--lead .by-demo-modal__head p{font-size:13.5px;line-height:1.55}

/* Form layout overrides — slightly tighter gap than the demo-access form
   so the 4 fields + submit + terms all fit comfortably in the modal. */
.byclone-wrapper .by-tryit-form--lead{gap:14px}

/* Textarea — reuses the input styling from .by-tryit-form__group input. */
.byclone-wrapper .by-tryit-form--lead textarea{
  width:100%;padding:11px 13px;font-family:inherit;font-size:15px;
  color:#fff;background:rgba(255,255,255,0.05);
  border:1.5px solid rgba(255,255,255,0.22);
  border-radius:var(--by-radius-sm);
  min-height:80px;resize:vertical;
  transition:border-color 150ms ease-out,box-shadow 150ms ease-out;
}
.byclone-wrapper .by-tryit-form--lead textarea::placeholder{color:rgba(255,255,255,0.4)}
.byclone-wrapper .by-tryit-form--lead textarea:focus-visible{outline:none;border-color:var(--by-brand-on-dark);box-shadow:0 0 0 3px rgba(109,40,217,0.18)}
.byclone-wrapper .by-tryit-form--lead .by-tryit-form__submit{margin-top:4px}

.byclone-wrapper .by-demo-modal__terms{
  font-size:11px;color:rgba(255,255,255,0.5);
  text-align:center;margin:8px 0 0;line-height:1.5;
}

/* Submitted state for the lead variant — also collapse the trust column
   so the thank-you message gets the full width and reads cleanly. */
.byclone-wrapper .by-demo-modal--lead.is-submitted .by-demo-modal__trust{display:none}
.byclone-wrapper .by-demo-modal--lead.is-submitted .by-demo-modal__grid{grid-template-columns:1fr}

.byclone-wrapper .by-calc{
  background:#fff;width:100%;max-width:960px;margin:auto;
  border-radius:var(--by-radius-lg);
  box-shadow:var(--by-shadow-lg);
  position:relative;
}
.byclone-wrapper .by-calc__close{
  position:absolute;top:16px;right:16px;z-index:2;
  width:44px;height:44px;border-radius:50%;
  background:#fff!important;border:1.5px solid var(--by-line);
  display:flex;align-items:center;justify-content:center;
  color:var(--by-ink)!important;cursor:pointer;
  box-shadow:0 2px 6px rgba(30,21,51,0.08);
  transition:background-color 150ms ease-out,border-color 150ms ease-out,color 150ms ease-out,transform 150ms ease-out;
}
.byclone-wrapper .by-calc__close:hover,
.byclone-wrapper .by-calc__close:focus,
.byclone-wrapper .by-calc__close:focus-visible{
  background:var(--by-brand)!important;border-color:var(--by-brand-text)!important;
  color:#fff!important;transform:rotate(90deg);
}
.byclone-wrapper .by-calc__close svg{width:24px;height:24px;stroke:currentColor;display:block;flex-shrink:0}
.byclone-wrapper .by-calc__head{
  padding:32px 72px 24px 32px;border-bottom:1px solid var(--by-line);
}
@media(max-width:640px){.byclone-wrapper .by-calc__head{padding:24px 64px 20px 24px}}
.byclone-wrapper .by-calc__head h2{font-size:24px;line-height:1.2;margin:0 0 8px}
@media(min-width:768px){.byclone-wrapper .by-calc__head h2{font-size:28px}}
.byclone-wrapper .by-calc__head p{font-size:14px;color:var(--by-ink-soft);margin:0}

.byclone-wrapper .by-calc__body{display:grid;grid-template-columns:1fr;gap:0}
@media(min-width:768px){.byclone-wrapper .by-calc__body{grid-template-columns:340px 1fr}}

.byclone-wrapper .by-calc__inputs{
  padding:24px 32px;background:var(--by-bg-soft);
  border-right:1px solid var(--by-line);
}
@media(max-width:767px){
  .byclone-wrapper .by-calc__inputs{
    border-right:none;border-bottom:1px solid var(--by-line);padding:24px;
  }
}
.byclone-wrapper .by-calc__field{margin-bottom:24px}
.byclone-wrapper .by-calc__field:last-child{margin-bottom:0}
.byclone-wrapper .by-calc__label{
  display:flex;justify-content:space-between;align-items:center;
  font-size:12px;font-weight:700;color:var(--by-ink);
  text-transform:uppercase;letter-spacing:0.05em;
  margin-bottom:10px;
}
.byclone-wrapper .by-calc__value{
  color:var(--by-brand-text);font-weight:700;font-size:14px;
  text-transform:none;letter-spacing:0;
}
.byclone-wrapper .by-calc__field input[type="range"]{
  -webkit-appearance:none;appearance:none;
  width:100%;height:6px;background:var(--by-line);
  border-radius:100px;outline:none;
}
.byclone-wrapper .by-calc__field input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:20px;height:20px;border-radius:50%;background:var(--by-brand);
  cursor:pointer;border:2px solid #fff;
  box-shadow:0 1px 4px rgba(30,21,51,0.2);
}
.byclone-wrapper .by-calc__field input[type="range"]::-moz-range-thumb{
  width:20px;height:20px;border-radius:50%;background:var(--by-brand);
  cursor:pointer;border:2px solid #fff;
  box-shadow:0 1px 4px rgba(30,21,51,0.2);
}
.byclone-wrapper .by-calc__field select{
  width:100%;padding:10px 12px;
  font-family:inherit;font-size:14px;color:var(--by-ink);
  background:#fff;border:1px solid var(--by-line);
  border-radius:var(--by-radius-sm);cursor:pointer;
}

.byclone-wrapper .by-calc__results{padding:24px 32px}
@media(max-width:640px){.byclone-wrapper .by-calc__results{padding:24px}}
.byclone-wrapper .by-calc__streams{
  display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;
}
.byclone-wrapper .by-calc__stream{
  background:var(--by-bg-soft);border-radius:var(--by-radius-sm);
  padding:12px 14px;
}
.byclone-wrapper .by-calc__stream-name{
  font-size:12px;color:var(--by-ink-mute);font-weight:500;margin:0 0 4px;
}
.byclone-wrapper .by-calc__stream-val{
  font-size:16px;font-weight:700;color:var(--by-ink);margin:0;
  font-variant-numeric:tabular-nums;
}
.byclone-wrapper .by-calc__totals{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  padding:20px;background:var(--by-brand-light);
  border-radius:var(--by-radius-md);margin-bottom:20px;
}
.byclone-wrapper .by-calc__total{text-align:center}
.byclone-wrapper .by-calc__total span{
  display:block;font-size:11px;color:var(--by-ink-mute);
  text-transform:uppercase;letter-spacing:0.05em;font-weight:600;
  margin-bottom:6px;
}
.byclone-wrapper .by-calc__total strong{
  display:block;font-size:24px;font-weight:800;color:var(--by-brand-text);
  line-height:1.1;font-variant-numeric:tabular-nums;
}
@media(min-width:768px){.byclone-wrapper .by-calc__total strong{font-size:28px}}
.byclone-wrapper .by-calc__note{
  font-size:12px;color:var(--by-ink-mute);font-style:italic;
  margin:0 0 20px;line-height:1.55;
}
.byclone-wrapper .by-calc__cta{display:flex;flex-direction:column;gap:12px}
@media(min-width:480px){.byclone-wrapper .by-calc__cta{flex-direction:row}}
.byclone-wrapper .by-calc__cta .by-btn{flex:1;padding:12px 20px;font-size:15px;justify-content:center}

/* Calculator view-state machine: calc (default) | form | success */
.byclone-wrapper .by-calc__form-pane,
.byclone-wrapper .by-calc__success-pane{display:none}
.byclone-wrapper .by-calc[data-view="form"] .by-calc__results{display:none}
.byclone-wrapper .by-calc[data-view="form"] .by-calc__form-pane{display:block}
.byclone-wrapper .by-calc[data-view="success"] .by-calc__inputs,
.byclone-wrapper .by-calc[data-view="success"] .by-calc__results{display:none}
.byclone-wrapper .by-calc[data-view="success"] .by-calc__body{grid-template-columns:1fr}
.byclone-wrapper .by-calc[data-view="success"] .by-calc__success-pane{display:block}

/* Lead form */
.byclone-wrapper .by-calc__form-pane{padding:24px 32px}
@media(max-width:640px){.byclone-wrapper .by-calc__form-pane{padding:24px}}
.byclone-wrapper .by-calc__form-pane h3{font-size:22px;margin:0 0 8px;color:var(--by-ink)}
.byclone-wrapper .by-calc__form-pane > p{font-size:14px;color:var(--by-ink-soft);margin:0 0 24px;line-height:1.55}
.byclone-wrapper .by-form{display:flex;flex-direction:column;gap:16px}
.byclone-wrapper .by-form__group{display:flex;flex-direction:column;gap:6px}
.byclone-wrapper .by-form__group label{font-size:13px;font-weight:600;color:var(--by-ink)}
.byclone-wrapper .by-form__group input{
  width:100%;padding:12px 14px;
  font-family:inherit;font-size:15px;color:var(--by-ink);
  background:#fff;border:1px solid var(--by-line);
  border-radius:var(--by-radius-sm);
  transition:border-color 150ms ease-out;
}
.byclone-wrapper .by-form__group input:focus-visible{
  outline:2px solid var(--by-brand);outline-offset:2px;border-color:var(--by-brand-text);
}
.byclone-wrapper .by-form__actions{
  display:flex;flex-direction:column;gap:12px;margin-top:8px;align-items:stretch;
}
@media(min-width:480px){
  .byclone-wrapper .by-form__actions{flex-direction:row;align-items:center}
}
.byclone-wrapper .by-form__actions .by-btn{flex:1;justify-content:center;padding:12px 20px;font-size:15px}
.byclone-wrapper .by-form__back{
  background:none;color:var(--by-ink-mute);font-size:14px;font-weight:600;
  text-decoration:underline;text-underline-offset:4px;
  border:none;padding:8px 12px;cursor:pointer;font-family:inherit;
  align-self:center;border-radius:var(--by-radius-sm);
  transition:color 150ms ease-out,background-color 150ms ease-out;
}
.byclone-wrapper .by-form__back:hover,
.byclone-wrapper .by-form__back:focus,
.byclone-wrapper .by-form__back:focus-visible{
  color:var(--by-brand-text);background:var(--by-brand-light);text-decoration:underline;
}
.byclone-wrapper .by-form__terms{
  font-size:12px;color:var(--by-ink-mute);
  margin:16px 0 0;line-height:1.55;
}

/* Success state */
.byclone-wrapper .by-calc__success-pane{
  padding:48px 32px;text-align:center;
}
@media(max-width:640px){.byclone-wrapper .by-calc__success-pane{padding:40px 24px}}
.byclone-wrapper .by-calc__success-icon{
  width:64px;height:64px;border-radius:50%;background:var(--by-brand-light);
  display:flex;align-items:center;justify-content:center;margin:0 auto 20px;
}
.byclone-wrapper .by-calc__success-icon svg{width:32px;height:32px;color:var(--by-brand-text)}
.byclone-wrapper .by-calc__success-pane h3{font-size:24px;margin:0 0 12px;color:var(--by-ink)}
.byclone-wrapper .by-calc__success-pane > p{
  font-size:15px;color:var(--by-ink-soft);
  margin:0 auto 24px;line-height:1.6;max-width:440px;
}
.byclone-wrapper .by-calc__success-pane strong{color:var(--by-ink);font-weight:700}
.byclone-wrapper .by-calc__success-actions{
  display:flex;flex-direction:column;gap:12px;
  max-width:360px;margin:0 auto;
}
@media(min-width:480px){.byclone-wrapper .by-calc__success-actions{flex-direction:row}}
.byclone-wrapper .by-calc__success-actions .by-btn{flex:1;justify-content:center}

/* ============================================================
   28b. PRINT REPORT (PDF)
   ============================================================ */
.byclone-wrapper .by-print-report{display:none}
@media print{
  .byclone-wrapper{
    background:#fff!important;color:#1e1533!important;
    -webkit-print-color-adjust:exact;print-color-adjust:exact;
  }
  .byclone-wrapper > *{display:none!important}
  .byclone-wrapper > .by-print-report{display:block!important}

  /* ---- Explicitly nuke known third-party widgets that often survive print rules ---- */
  /* (These are injected outside .byclone-wrapper by WordPress / other plugins, so the
     rules above never reach them — e.g. Tidio chat badge, WhatsApp button.) */
  /* Tidio live chat */
  [class*="tidio"],[id*="tidio"],
  iframe[src*="tidio.co"],iframe[src*="tidio.com"],
  /* WhatsApp click-to-chat plugins (various WP plugins use these patterns) */
  [class*="whatsapp"],[id*="whatsapp"],
  [class*="wa-chat"],[id*="wa-chat"],
  [class*="wa-float"],[id*="wa-float"],
  a[href*="api.whatsapp.com"],a[href*="wa.me"],
  /* Generic floating chat widgets (Drift, Intercom, Crisp, Olark, HubSpot, LiveChat, Zendesk) */
  [class*="intercom"],[id*="intercom"],
  [class*="drift"],[id*="drift"],
  [class*="crisp"],[id*="crisp"],
  [class*="olark"],[id*="olark"],
  [class*="hubspot"],[id*="hubspot"],
  [class*="livechat"],[id*="livechat"],
  [class*="zendesk"],[id*="zendesk"],
  /* Cookie banners + miscellaneous floating widgets */
  [class*="cookie"],[id*="cookie"],
  [class*="cky-"],[id*="cky-"],
  [class*="floating"],[class*="float-btn"],
  [class*="chat-widget"],[id*="chat-widget"],
  /* Any iframe that isn't ours */
  body > iframe,
  /* Any explicitly fixed-position overlay */
  [style*="position: fixed"],[style*="position:fixed"]{
    display:none!important;visibility:hidden!important;opacity:0!important;
    width:0!important;height:0!important;overflow:hidden!important;
  }
  .byclone-wrapper .by-print-report{
    padding:32px 40px;
    font-family:'Gilroy','Inter','Helvetica Neue',sans-serif;color:#1e1533;
  }
  .byclone-wrapper .by-print-brand{
    font-size:22px;font-weight:800;margin:0 0 4px;letter-spacing:-0.02em;
  }
  .byclone-wrapper .by-print-brand span{color:#6d28d9}
  .byclone-wrapper .by-print-title{
    font-size:22px;margin:0 0 6px;color:#1e1533;font-weight:800;letter-spacing:-0.01em;
  }
  .byclone-wrapper .by-print-meta{font-size:13px;color:#4a5568;margin:0 0 28px}
  .byclone-wrapper .by-print-section{
    font-size:13px;margin:24px 0 10px;color:#1e1533;font-weight:700;
    text-transform:uppercase;letter-spacing:0.06em;
    border-bottom:2px solid #6d28d9;padding-bottom:4px;
  }
  .byclone-wrapper .by-print-table{width:100%;border-collapse:collapse;font-size:13px}
  .byclone-wrapper .by-print-table th, .byclone-wrapper .by-print-table td{
    text-align:left;padding:8px 12px;border-bottom:1px solid #e2e8f0;
  }
  .byclone-wrapper .by-print-table th{font-weight:600;width:50%;color:#1e1533}
  .byclone-wrapper .by-print-table td{color:#4a5568}
  .byclone-wrapper .by-print-totals{
    background:#f3eeff;padding:16px 20px;border-radius:8px;margin:24px 0 16px;
    display:flex;justify-content:space-between;gap:16px;
  }
  .byclone-wrapper .by-print-totals > div{flex:1}
  .byclone-wrapper .by-print-totals p{margin:0;font-size:13px;color:#4a5568}
  .byclone-wrapper .by-print-totals strong{
    display:block;font-size:22px;color:#6d28d9;font-weight:800;margin-top:4px;
  }
  .byclone-wrapper .by-print-disclaimer{
    font-size:11px;color:#718096;font-style:italic;
    margin:16px 0;line-height:1.55;
  }
  .byclone-wrapper .by-print-report footer{
    margin-top:24px;padding-top:14px;border-top:1px solid #e2e8f0;
    font-size:11px;color:#718096;
  }
  .byclone-wrapper .by-print-report footer p{margin:2px 0}
  @page{margin:14mm}
}

/* ============================================================
   29. REDUCED MOTION
   ============================================================ */
@media(prefers-reduced-motion:reduce){
  .byclone-wrapper *, .byclone-wrapper *::before, .byclone-wrapper *::after{
    animation-duration:0.01ms!important;animation-iteration-count:1!important;
    transition-duration:0.01ms!important;scroll-behavior:auto!important;
  }
}

.byclone-wrapper { text-align: left; }

/* Calculator modal locks scrolling on the real <body>, which lives OUTSIDE
   the wrapper. This is the one rule we intentionally leave unscoped. */
body.by-modal-open { overflow: hidden; }

/* ============================================================
   30. THEME / ELEMENTOR OVERRIDE GUARDS
   ------------------------------------------------------------
   Themes such as Hello Elementor and Astra ship aggressive
   global <button> rules — typically background:#000;color:#fff
   on default plus colour-swaps on :hover / :focus / :active.
   Those win on specificity for our two interactive toggle
   buttons (feature-category accordion + FAQ accordion) and
   make the labels unreadable. The rules below pin the colours
   the original landing page uses, across every state.
   ============================================================ */
.byclone-wrapper button { color: inherit; }

/* --- Feature category headers (Section 6) ------------------- */
.byclone-wrapper .by-fcat__head,
.byclone-wrapper .by-fcat__head:hover,
.byclone-wrapper .by-fcat__head:focus,
.byclone-wrapper .by-fcat__head:focus-visible,
.byclone-wrapper .by-fcat__head:active,
.byclone-wrapper .by-fcat__head[aria-expanded="true"] {
  color: var(--by-ink) !important;
}
.byclone-wrapper .by-fcat__head,
.byclone-wrapper .by-fcat__head[aria-expanded="true"] {
  background: #fff !important;
}
.byclone-wrapper .by-fcat__head:hover {
  background: var(--by-brand-light) !important;
}
.byclone-wrapper .by-fcat__head .by-fcat__title {
  color: var(--by-ink) !important;
  /* Some themes force white-space:nowrap on button text, which keeps the title
     on one line so it clips against the count badge. Force normal wrapping so a
     long title drops to a second line instead of being cut. */
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: anywhere;
  text-overflow: clip !important;
  min-width: 0 !important;
}
/* Ensure the header row itself never clips its wrapped title. */
.byclone-wrapper .by-fcat__head { overflow: visible !important; flex-wrap: nowrap !important; }
.byclone-wrapper .by-fcat__head .by-fcat__count {
  color: var(--by-brand-text) !important;
  background: var(--by-brand-light) !important;
  white-space: nowrap !important;
}
.byclone-wrapper .by-fcat__head .by-fcat__chev { color: var(--by-ink-mute) !important; }

/* --- FAQ accordion questions (Section 17) ------------------ */
.byclone-wrapper .by-faq__q,
.byclone-wrapper .by-faq__q:hover,
.byclone-wrapper .by-faq__q:focus,
.byclone-wrapper .by-faq__q:focus-visible,
.byclone-wrapper .by-faq__q:active,
.byclone-wrapper .by-faq__q[aria-expanded="true"] {
  color: var(--by-ink) !important;
}
.byclone-wrapper .by-faq__q,
.byclone-wrapper .by-faq__q[aria-expanded="true"] {
  background: transparent !important;
}
.byclone-wrapper .by-faq__q:hover {
  background: var(--by-brand-light) !important;
}
.byclone-wrapper .by-faq__q .by-faq__icon { color: var(--by-brand-text) !important; }

/* --- Mobile hamburger button (Section 7) -------------------
   Elementor kit ships `.elementor-kit-5 button:hover/:focus/
   :focus-visible/:active { background:#191919; color:#fff }`,
   which is specificity (0,2,1) and outranks `.byclone-wrapper
   .by-burger` (0,2,0). On focus/hover that paints the burger as
   a solid dark box, and the dark bars vanish against it. Pin the
   button transparent and the bars to --by-ink across every state
   so the icon stays visible. The browser's own :focus-visible
   outline (Section 4) still shows for keyboard users. */
.byclone-wrapper .by-burger,
.byclone-wrapper .by-burger:hover,
.byclone-wrapper .by-burger:focus,
.byclone-wrapper .by-burger:focus-visible,
.byclone-wrapper .by-burger:active,
.byclone-wrapper .by-burger[aria-expanded="true"] {
  background: transparent !important;
}
.byclone-wrapper .by-burger:hover span,
.byclone-wrapper .by-burger:focus span,
.byclone-wrapper .by-burger:focus-visible span,
.byclone-wrapper .by-burger:active span,
.byclone-wrapper .by-burger[aria-expanded="true"] span {
  background: var(--by-ink) !important;
}

/* ============================================================
   31. INTERNATIONAL PHONE INPUT (intl-tel-input) — integration overrides
   ------------------------------------------------------------
   The library wraps each phone <input> in a `.iti` element and (because
   dropdownParent = <body>) renders its searchable country dropdown on <body>,
   OUTSIDE the .byclone-wrapper scope. These rules keep the upgraded fields
   visually identical to the originals and make the dropdown render correctly
   above the Book-a-Demo / Checklist modals. Nothing here changes layout/design.
   ============================================================ */
/* Pin the widget to the input's 15px and keep it full-width like the original
   <input>. Without this the flag button + dial code inherit the wrapper base
   size (18px desktop), so "+1"/"+92" render larger than the number with a gap. */
.byclone-wrapper .iti{display:block;width:100%;font-size:15px}
/* The body-appended dropdown is the `.iti--detached-country-selector` element
   (intl-tel-input v29 — NOT `.iti--container`). It defaults to z-index:1060, so
   inside the modals (.by-demo-overlay z-index:200, .by-video-overlay 300) the
   country list rendered BEHIND the form. The doubled class (specificity 0,2,0)
   beats the library's own `.iti--detached-country-selector{z-index:1060}`
   regardless of stylesheet load order, lifting the list above every overlay. */
.iti.iti--detached-country-selector{z-index:100002}
/* The dropdown lives on <body>, outside .byclone-wrapper, so the active theme's
   global `input` padding leaks in and overrides the library's search box,
   collapsing the gap after the magnifying-glass icon (an `input[type=…]` theme
   selector outranks the library's single `.iti__search-input` class). Restore
   it; this descendant selector (0,2,0) outranks element/attribute theme rules. */
.iti--detached-country-selector .iti__search-input{padding-left:38px}
/* The library caps the country list at 185px, but that cap lives in the
   intlTelInput stylesheet. The library measures the popup's natural height to
   lock its box height; if its CSS hasn't applied when it measures, it sizes the
   box to the FULL uncapped list (~4500px), leaving a huge empty area below it.
   Duplicating the cap in OUR stylesheet (loaded before the library's deferred
   JS init) guarantees it is in effect at measurement time. Scoped to
   `.iti--inline-country-selector` (present for the desktop popup + the height
   measurement, NOT the mobile fullscreen popup) so mobile is untouched. */
.iti--inline-country-selector .iti__country-list{max-height:185px}
/* …but the library ALSO writes an explicit inline `height` onto the inner
   `.iti__country-selector` while positioning the popup (it sizes the box to the
   space available rather than to its content — most visibly when the dropdown
   FLIPS ABOVE the field). That inline height can exceed the content (search +
   the 185px-capped list), leaving a large empty area below the country list
   INSIDE the box. CSS can't delete an inline style, but `!important` overrides
   it: force the box to hug its content regardless of the value the library
   writes. (The list still scrolls via its own max-height + overflow.) */
.iti--detached-country-selector .iti__country-selector{height:auto!important}
/* Dark forms — the Try-It, Book-a-Demo, and Checklist forms all use
   `.by-tryit-form__group` (white text on a dark surface). Tint the dropdown
   arrow + hover and force the selected dial code white so they stay readable.
   The light Custom-Quote form (`.by-quote-form__group`) keeps the default dark. */
.byclone-wrapper .by-tryit-form__group .iti{--iti-icon-color:rgba(255,255,255,.7);--iti-hover-color:rgba(255,255,255,.08)}
.byclone-wrapper .by-tryit-form__group .iti__selected-dial-code{color:#fff}

/* ============================================================
   BYJU’S-SPECIFIC ADDITIONS (self-contained SVG/CSS visuals)
   ============================================================ */

/* Demo section — image banner poster; the play icon opens the video modal.
   object-fit:cover keeps the 16:9 frame exact whatever the artwork's ratio. */
.byclone-wrapper .by-demo__poster{aspect-ratio:16/9;background:#1e1533}
.byclone-wrapper .by-demo__poster > img{width:100%;height:100%;object-fit:cover;display:block}

/* Video modal frame also hosts the on-demand YouTube <iframe> */
.byclone-wrapper .by-video-modal__frame iframe{
  position:absolute;inset:0;width:100%;height:100%;
  display:block;background:#000;border:none;
}

/* Industry cards — photo header. A fixed aspect ratio + object-fit:cover keeps
   all six cards the same height whatever each source image's native ratio is
   (the base rules at Section 21 supply the hover zoom transition). */
.byclone-wrapper .by-vertical__img{
  aspect-ratio:16/10;
  background:linear-gradient(135deg,#f3eeff 0%,#ddd0fb 100%);
}
.byclone-wrapper .by-vertical__img img{width:100%;height:100%;object-fit:cover}

/* Case study cards — gradient banner + icon in place of a photo */
.byclone-wrapper .by-case__banner{
  display:flex;align-items:center;justify-content:center;
  aspect-ratio:16/9;color:#fff;
}
.byclone-wrapper .by-case__banner svg{width:64px;height:64px;opacity:.95}
.byclone-wrapper .by-case__banner--1{background:linear-gradient(135deg,#6d28d9 0%,#8b5cf6 100%)}
.byclone-wrapper .by-case__banner--2{background:linear-gradient(135deg,#1e1533 0%,#1b0a3d 100%)}
.byclone-wrapper .by-case__banner--3{background:linear-gradient(135deg,#5b21b6 0%,#6d28d9 100%)}

/* ============================================================
   BYJU’S — MOBILE RESPONSIVE HARDENING
   ============================================================ */

/* Belt-and-suspenders horizontal-overflow guard. `clip` (not hidden) does not
   create a scroll container, so it never breaks sticky/anchor scrolling, and
   fixed descendants (header, modals, sticky CTA) are positioned to the viewport
   so they are not clipped. Catches anything that would bleed past the wrapper
   (e.g. inside a theme container that does not clip). */
.byclone-wrapper{overflow-x:clip}

/* Grid/flex items default to min-width:auto, which refuses to shrink below the
   content's min-content width. That let the hero's fixed-width phone force its
   40% grid column wider than the container, pushing the whole hero grid past
   both edges. Allowing items to shrink is the fix. */
.byclone-wrapper *{min-width:0}

/* The client-logo marquee band must clip its (intentionally very wide)
   scrolling track. The inner viewport already sets overflow:hidden, but as a
   flex child in the mobile column layout it can be stretched to the track's
   max-content width; clipping at the section band guarantees the band never
   widens the page regardless of the flex cross-sizing. */
.byclone-wrapper .by-clients{overflow:hidden}
.byclone-wrapper .by-clients__viewport{max-width:100%;min-width:0}

/* Never let media or long unbreakable strings force a wider-than-viewport box. */
.byclone-wrapper img,
.byclone-wrapper svg,
.byclone-wrapper iframe,
.byclone-wrapper video{max-width:100%}
.byclone-wrapper h1,
.byclone-wrapper h2,
.byclone-wrapper h3{overflow-wrap:anywhere}

/* --- HERO: keep the phone visual + floating pills fully inside the viewport --- */
@media(max-width:767px){
  /* The floating pills were positioned with left:50% + translateX, but the
     by-float animation overwrites `transform`, so translateX was dropped and the
     pill drifted off the right edge. Position them with corner insets instead —
     the animation then owns `transform` (translateY only) without conflict. */
  .byclone-wrapper .by-pill{font-size:12px;padding:6px 12px;max-width:calc(100% - 12px)}
  .byclone-wrapper .by-pill--top{top:6px;right:6px;left:auto;transform:none}
  .byclone-wrapper .by-pill--bottom{bottom:6px;left:6px;right:auto;transform:none}
  /* Drop the fixed 540px floor so the hero doesn't reserve dead space, and cap
     the phone so its slight rotation never clips at the section edge. */
  .byclone-wrapper .by-hero__visual{min-height:auto}
  .byclone-wrapper .by-phone{max-width:320px}
  .byclone-wrapper .by-hero{padding:32px 0 48px}
}

/* --- HERO trust line: wrap cleanly instead of forcing width on tiny screens --- */
@media(max-width:420px){
  .byclone-wrapper .by-hero__trust span{margin:0 5px}
}
