/**
 * Renia Demo Page — demo.css v11
 * World-class luxury SaaS booking page. Mobile-first, premium desktop.
 * Calendly inline widget on desktop, popup on mobile.
 */

/* ——— Design tokens ——— */
:root{
  --d-ease:cubic-bezier(0.22,0.61,0.21,1);
  --d-ease-out:cubic-bezier(0.16,1,0.3,1);
  --d-ease-bounce:cubic-bezier(0.34,1.56,0.64,1);
  --d-ink:#0a0a0a;
  --d-ink-2:#111111;
  --d-ink-3:#1a1a1a;
  --d-body:#444444;
  --d-muted:#6e6e6e;
  --d-faint:#9a9a9a;
  --d-line:#e8e8e8;
  --d-line-2:#d4d4d4;
  --d-soft:#f5f5f5;
  --d-soft-2:#fafafa;
  --d-white:#ffffff;
  --d-champagne:#c9a86c;
  --d-champagne-light:#f3eadb;
  --d-glow:rgba(201,168,108,0.12);
  --d-shadow:0 1px 2px rgba(10,10,10,.04),0 12px 40px rgba(10,10,10,.06);
  --d-shadow-lg:0 1px 3px rgba(10,10,10,.05),0 24px 80px rgba(10,10,10,.10),0 0 0 1px rgba(10,10,10,.03);
  --d-shadow-xl:0 1px 3px rgba(10,10,10,.05),0 40px 100px rgba(10,10,10,.12);
}

/* ——— Base ——— */
.demo-body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.demo-body ::selection{background:rgba(10,10,10,0.11);color:var(--d-ink)}
.hide-mobile{display:none}

/* ——— Scroll reveal ——— */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .45s var(--d-ease-out),transform .45s var(--d-ease-out)}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ——— Page ——— */
.demo-page{
  background:var(--d-white);
  padding:0;
  overflow-x:hidden;
}
.demo-wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* ——— Hero ——— */
.demo-hero{
  position:relative;
  padding:88px 0 0;
  background:
    radial-gradient(ellipse 70% 55% at 50% 0%,#f2f2f2 0%,transparent 60%),
    linear-gradient(180deg,#fbfbfb 0%,var(--d-white) 100%);
  overflow:hidden;
}
.demo-hero-inner{position:relative;z-index:1;text-align:center}
.demo-kicker{
  display:inline-flex;align-items:center;gap:8px;
  font:600 11px/1.2 "Geist",monospace;
  letter-spacing:.14em;text-transform:uppercase;color:#777;
  margin:0 0 24px;padding:8px 16px;border-radius:100px;
  background:var(--d-white);border:1px solid #eaeaea;
  box-shadow:0 1px 2px rgba(10,10,10,.03);
}
.demo-kicker .dot{
  width:7px;height:7px;border-radius:50%;background:#10b981;
  box-shadow:0 0 10px rgba(16,185,129,.6);
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.demo-hero h1{
  font:600 clamp(40px,8.5vw,84px)/0.95 "Outfit",sans-serif;
  letter-spacing:-.05em;color:var(--d-ink);margin:0 auto 22px;
}
.demo-hero h1 .accent{
  background:linear-gradient(135deg,var(--d-ink) 0%,#3a3a3a 60%,#6a6a6a 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.demo-hero-sub{
  font-size:clamp(17px,2.6vw,20px);line-height:1.6;color:var(--d-body);
  max-width:620px;margin:0 auto 28px;
}
.demo-hero-trust{
  display:flex;flex-wrap:wrap;justify-content:center;gap:18px 28px;
}
.demo-hero-trust span{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;color:var(--d-muted);font-weight:500;
}
.demo-hero-trust .material-symbols-outlined{font-size:18px;color:var(--d-ink)}

/* ——— Trust bar ——— */
.trust-bar-section{
  margin:60px 0 0;
  content-visibility:auto;
  contain-intrinsic-size:auto 160px;
}
.trust-bar{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;
  gap:12px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  max-width:960px;margin:0 auto;
}
.trust-bar-label{
  font:600 11px/1 "Geist",monospace;letter-spacing:.12em;
  text-transform:uppercase;color:var(--d-faint);padding:0 10px;
  width:100%;text-align:center;
}
.trust-item{
  display:flex;align-items:center;gap:12px;
  padding:12px 18px;
  background:var(--d-white);
  border:1px solid var(--d-line);border-radius:16px;
  box-shadow:var(--d-shadow);
  text-decoration:none;
  transition:transform .2s var(--d-ease),box-shadow .2s,border-color .2s;
}
.trust-item:hover{transform:translateY(-2px);box-shadow:var(--d-shadow-lg);border-color:var(--d-line-2)}
.trust-icon{
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--d-ink);color:var(--d-white);flex:none;
}
.trust-icon .material-symbols-outlined{font-size:20px}
.trust-text{display:flex;flex-direction:column;gap:1px;text-align:left}
.trust-text strong{font:600 14px/1.3 "Outfit",sans-serif;color:var(--d-ink);letter-spacing:-.01em}
.trust-text span{font-size:11.5px;color:var(--d-muted)}
.trust-badge{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12.5px;color:var(--d-ink);font-weight:500;
  padding:7px 12px;border-radius:100px;
  background:var(--d-white);border:1px solid var(--d-line);
  transition:transform .2s var(--d-ease),background .2s,box-shadow .2s;
}
.trust-badge:hover{transform:translateY(-2px);background:var(--d-soft-2);box-shadow:var(--d-shadow)}
.trust-badge .material-symbols-outlined{font-size:16px;color:var(--d-ink)}

/* ——— Integration logos ——— */
.integrations-section{
  margin:44px 0 0;
  padding:0;
  text-align:center;
  background:transparent;
  border:0;
  content-visibility:auto;
  contain-intrinsic-size:auto 220px;
}
.integrations-label{
  font:600 11px/1.2 "Geist",monospace;letter-spacing:.14em;
  text-transform:uppercase;color:var(--d-faint);margin:0 0 28px;
}
.integrations-logos{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
  gap:14px;max-width:880px;margin:0 auto;
}
.integration-logo{
  display:flex;align-items:center;justify-content:center;
  flex:1 1 140px;max-width:200px;min-width:0;height:88px;padding:16px 18px;
  background:var(--d-white);border:1px solid var(--d-line);border-radius:14px;
  box-shadow:var(--d-shadow);
  text-decoration:none;
  transition:transform .25s var(--d-ease),box-shadow .25s,border-color .25s;
}
.integration-logo:hover{transform:translateY(-2px);box-shadow:var(--d-shadow-lg);border-color:var(--d-line-2)}
.integration-logo img{
  display:block;max-width:100%;max-height:44px;width:auto;height:auto;object-fit:contain;
  filter:grayscale(100%) brightness(0.35) contrast(1.15);
  opacity:.92;
}
.integrations-note{max-width:680px;margin:22px auto 0;font-size:11px;line-height:1.55;color:var(--d-faint)}

/* ——— Scheduler section ——— */
.scheduler-section{margin:60px 0 0}
.scheduler{
  position:relative;
  display:grid;grid-template-columns:1fr;
  background:var(--d-white);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--d-shadow-xl);
  border:1px solid var(--d-line);
}
.scheduler::before{
  content:"";position:absolute;inset:-1px;z-index:0;
  background:linear-gradient(135deg,rgba(201,168,108,.08) 0%,transparent 40%,transparent 60%,rgba(10,10,10,.03) 100%);
  border-radius:29px;pointer-events:none;
}

/* ——— Left panel ——— */
.scheduler-info{
  position:relative;z-index:1;
  padding:36px 26px;
  color:var(--d-white);
  display:flex;flex-direction:column;gap:28px;
  background:linear-gradient(160deg,var(--d-ink-2) 0%,var(--d-ink) 60%,#000 100%);
  overflow:hidden;
}
.scheduler-info::after{
  content:"";position:absolute;bottom:-30%;right:-30%;width:80%;height:80%;
  background:radial-gradient(circle,rgba(201,168,108,.10) 0%,transparent 55%);
  pointer-events:none;
}
.scheduler-info-top{display:flex;align-items:center;gap:14px;position:relative;z-index:1}
.mini-logo{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;
  background:var(--d-white);color:var(--d-ink);font:700 23px/1 "Outfit",sans-serif;
  letter-spacing:-.02em;box-shadow:0 4px 16px rgba(0,0,0,.3);
}
.scheduler-info .brand{
  font:600 14px/1.3 "Outfit",sans-serif;color:var(--d-white);letter-spacing:-.01em;position:relative;z-index:1;
}
.scheduler-info .brand small{display:block;font-size:11px;color:var(--d-faint);font-weight:400;margin-top:2px}
body.renia-mkt .scheduler-info h2,
.scheduler-info h2{
  position:relative;z-index:1;
  font:600 clamp(28px,4.5vw,38px)/1.1 "Outfit",sans-serif !important;
  color:#ffffff !important;margin:0;letter-spacing:-.03em;
}
.scheduler-info .description{
  position:relative;z-index:1;
  font-size:15px;line-height:1.65;color:#d4d4d4;margin:0;max-width:420px;
}

.meeting-meta{
  position:relative;z-index:1;
  display:grid;grid-template-columns:repeat(2,1fr);gap:12px;
}
.meeting-meta div{
  display:flex;align-items:center;gap:10px;
  font-size:13px;color:#d4d4d4;
  background:rgba(255,255,255,.04);padding:13px 14px;border-radius:12px;
  border:1px solid rgba(255,255,255,.07);
  transition:background .2s,border-color .2s;
}
.meeting-meta div:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12)}
.meeting-meta .material-symbols-outlined{font-size:18px;color:var(--d-white);flex:none}

.agenda{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.10);padding-top:24px}
.agenda-label{
  font:600 11px/1 "Geist",monospace;letter-spacing:.12em;
  text-transform:uppercase;color:var(--d-champagne);margin:0 0 18px;
}
.agenda ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.agenda li{
  font-size:14px;line-height:1.5;color:#d8d8d8;
  display:flex;gap:12px;align-items:flex-start;
}
.agenda li .material-symbols-outlined{
  font-size:16px;color:var(--d-white);flex:none;margin-top:1px;
  background:rgba(255,255,255,.08);border-radius:7px;padding:4px;
}

/* ——— Main: Calendly area ——— */
.scheduler-main{
  position:relative;z-index:1;
  background:var(--d-white);
  min-height:560px;
  display:flex;flex-direction:column;
}
.calendly-header{
  padding:24px 28px;border-bottom:1px solid var(--d-line);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--d-soft-2);
}
.calendly-header h3{
  font:600 16px/1.3 "Outfit",sans-serif;color:var(--d-ink);margin:0;letter-spacing:-.02em;
}
.calendly-header .badge{
  display:inline-flex;align-items:center;gap:6px;
  font:600 11px/1 "Geist",monospace;letter-spacing:.04em;
  text-transform:uppercase;color:var(--d-ink);
  padding:6px 12px;border-radius:100px;border:1px solid var(--d-line);background:var(--d-white);
}


.calendly-desktop{
  flex:1;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch;
  position:relative;
}
.calendly-desktop iframe{width:100% !important}

.calendly-skeleton{
  position:absolute;inset:0;display:flex;flex-direction:column;
  gap:18px;padding:28px;background:var(--d-white);z-index:5;
  transition:opacity .25s;pointer-events:none;
}
.calendly-skeleton .skeleton-line{
  height:18px;border-radius:6px;background:linear-gradient(90deg,var(--d-soft) 0%,#f0f0f0 50%,var(--d-soft) 100%);
  background-size:200% 100%;
}
.calendly-skeleton .skeleton-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0;
}
.calendly-skeleton .skeleton-block{
  aspect-ratio:1/1;border-radius:10px;background:var(--d-soft);
}

/* ——— Mobile booking card ——— */
.calendly-mobile{
  display:flex;flex:1;flex-direction:column;
  justify-content:center;align-items:center;
  padding:48px 28px;text-align:center;
}
.mobile-book-card{max-width:360px}
.mobile-book-icon{
  width:80px;height:80px;border-radius:22px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--d-ink),var(--d-ink-3));color:var(--d-white);
  margin:0 auto 26px;box-shadow:0 12px 32px rgba(10,10,10,.18);
}
.mobile-book-icon .material-symbols-outlined{font-size:36px}
.mobile-book-card h3{
  font:600 28px/1.2 "Outfit",sans-serif;color:var(--d-ink);margin:0 0 12px;letter-spacing:-.03em;
}
.mobile-book-card > p{
  font-size:16px;line-height:1.6;color:var(--d-muted);margin:0 0 32px;
}
.book-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:18px 36px;border-radius:100px;border:none;cursor:pointer;
  background:var(--d-ink);color:var(--d-white);
  font:600 16px "Geist",sans-serif;letter-spacing:-.01em;
  box-shadow:0 8px 24px rgba(10,10,10,.2);
  transition:transform .2s var(--d-ease),box-shadow .2s var(--d-ease),background .2s;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.book-btn:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(10,10,10,.25)}
.book-btn:active{transform:translateY(0);background:var(--d-ink-3)}
.book-btn .material-symbols-outlined{font-size:22px}
.mobile-book-meta{
  display:flex;justify-content:center;gap:22px;margin-top:28px;flex-wrap:wrap;
}
.mobile-book-meta span{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;color:var(--d-muted);
}
.mobile-book-meta .material-symbols-outlined{font-size:16px;color:var(--d-ink)}

/* ——— Stats ——— */
.stats-section{margin:80px 0 0;content-visibility:auto;contain-intrinsic-size:auto 360px}
.stats-section-head{text-align:center;margin-bottom:44px}
.stats-section-head .kicker{
  font:600 11px/1.2 "Geist",monospace;letter-spacing:.14em;
  text-transform:uppercase;color:var(--d-faint);margin:0 0 12px;
}
.stats-section-head h2{
  font:600 clamp(28px,4vw,44px)/1.1 "Outfit",sans-serif;
  letter-spacing:-.04em;color:var(--d-ink);margin:0;
}
.stats-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:16px;
}
.stat-card{
  background:var(--d-white);border:1px solid var(--d-line);border-radius:20px;
  padding:28px 24px;text-align:left;
  transition:transform .3s var(--d-ease),box-shadow .3s var(--d-ease),border-color .3s;
}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--d-shadow-lg);border-color:var(--d-line-2)}
.stat-card .stat-icon{
  width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  background:var(--d-soft);color:var(--d-ink);margin-bottom:16px;
  transition:background .3s,transform .3s var(--d-ease);
}
.stat-card:hover .stat-icon{background:var(--d-ink);color:var(--d-white);transform:scale(1.05)}
.stat-card .stat-icon .material-symbols-outlined{font-size:21px}
.stat-card .stat-num{
  font:600 36px/1 "Outfit",sans-serif;letter-spacing:-.04em;color:var(--d-ink);margin:0 0 6px;
}
.stat-card .stat-label{
  font-size:13px;line-height:1.5;color:var(--d-muted);margin:0;
}

/* ——— Timeline ——— */
.timeline-section{margin:80px 0 0;content-visibility:auto;contain-intrinsic-size:auto 520px}
.timeline-section-head{text-align:center;margin-bottom:44px}
.timeline-section-head .kicker{
  font:600 11px/1.2 "Geist",monospace;letter-spacing:.14em;
  text-transform:uppercase;color:var(--d-faint);margin:0 0 12px;
}
.timeline-section-head h2{
  font:600 clamp(28px,4vw,44px)/1.1 "Outfit",sans-serif;
  letter-spacing:-.04em;color:var(--d-ink);margin:0;
}
.timeline{
  display:grid;gap:0;
  position:relative;
}
.timeline::before{
  content:"";position:absolute;left:20px;top:0;bottom:0;width:1px;
  background:linear-gradient(180deg,var(--d-line) 0%,var(--d-line-2) 50%,var(--d-line) 100%);
}
.timeline-item{
  display:grid;grid-template-columns:48px 1fr;gap:20px;
  padding:0 0 32px;position:relative;
}
.timeline-item:last-child{padding-bottom:0}
.timeline-dot{
  width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
  background:var(--d-white);border:1px solid var(--d-line);color:var(--d-ink);
  font:600 14px "Outfit",sans-serif;z-index:1;box-shadow:0 0 0 6px var(--d-white);
  transition:background .3s,color .3s,border-color .3s;
}
.timeline-item:hover .timeline-dot{
  background:var(--d-ink);color:var(--d-white);border-color:var(--d-ink);
}
.timeline-item h3{
  font:600 18px/1.3 "Outfit",sans-serif;color:var(--d-ink);margin:0 0 6px;letter-spacing:-.02em;
}
.timeline-item p{font-size:14px;line-height:1.55;color:var(--d-muted);margin:0;max-width:520px}

/* ——— Features ——— */
.features-section{margin:80px 0 0;content-visibility:auto;contain-intrinsic-size:auto 420px}
.features-section-head{text-align:center;margin-bottom:44px}
.features-section-head .kicker{
  font:600 11px/1.2 "Geist",monospace;letter-spacing:.14em;
  text-transform:uppercase;color:var(--d-faint);margin:0 0 12px;
}
.features-section-head h2{
  font:600 clamp(28px,4vw,44px)/1.1 "Outfit",sans-serif;
  letter-spacing:-.04em;color:var(--d-ink);margin:0;
}
.features-grid{display:grid;grid-template-columns:1fr;gap:16px}
.feature-card{
  background:var(--d-soft-2);border:1px solid var(--d-line);border-radius:20px;
  padding:28px 24px;
  transition:transform .3s var(--d-ease),box-shadow .3s var(--d-ease),background .3s,border-color .3s;
}
.feature-card:hover{transform:translateY(-3px);box-shadow:var(--d-shadow-lg);background:var(--d-white);border-color:var(--d-line-2)}
.feature-card .ico{
  width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  background:var(--d-ink);color:var(--d-white);margin-bottom:18px;
  transition:transform .3s var(--d-ease-bounce),background .3s;
}
.feature-card:hover .ico{transform:scale(1.08) rotate(-2deg);background:var(--d-ink-3)}
.feature-card .ico .material-symbols-outlined{font-size:24px}
.feature-card h3{
  font:600 18px/1.25 "Outfit",sans-serif;color:var(--d-ink);margin:0 0 8px;letter-spacing:-.02em;
}
.feature-card p{font-size:14px;line-height:1.55;color:var(--d-muted);margin:0}

/* ——— FAQ ——— */
.faq-section{margin:80px 0 0;content-visibility:auto;contain-intrinsic-size:auto 500px}
.faq-section-head{text-align:center;margin-bottom:36px}
.faq-section-head h2{
  font:600 clamp(28px,4vw,44px)/1.1 "Outfit",sans-serif;
  letter-spacing:-.04em;color:var(--d-ink);margin:0;
}
.faq-list{max-width:760px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--d-line);padding:22px 0}
.faq-item:first-child{border-top:1px solid var(--d-line)}
.faq-item summary{
  font:600 17px/1.4 "Outfit",sans-serif;color:var(--d-ink);letter-spacing:-.02em;
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;
  align-items:center;gap:14px;
  -webkit-tap-highlight-color:transparent;
  transition:color .2s;
}
.faq-item summary:hover{color:var(--d-muted)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{
  content:"expand_more";font-family:"Material Symbols Outlined";
  font-size:24px;color:var(--d-muted);transition:transform .3s var(--d-ease);flex:none;
}
.faq-item[open] summary:after{transform:rotate(180deg)}
.faq-item p{font-size:15px;line-height:1.6;color:var(--d-body);margin:12px 0 0}

/* ——— Bottom CTA ——— */
.cta-section{
  margin:80px 0 80px;
  padding:56px 32px;
  background:linear-gradient(145deg,var(--d-ink-2) 0%,var(--d-ink) 100%);
  border-radius:28px;text-align:center;color:var(--d-white);
  position:relative;overflow:hidden;
}
.cta-section::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.06) 0%,transparent 50%);
  pointer-events:none;
}
body.renia-mkt .cta-section h2,
.cta-section h2{
  position:relative;z-index:1;
  font:600 clamp(28px,4vw,42px)/1.1 "Outfit",sans-serif !important;
  letter-spacing:-.04em;color:#ffffff !important;margin:0 0 16px;
}
.cta-section p{
  position:relative;z-index:1;
  font-size:16px;color:#d4d4d4;margin:0 auto 32px;max-width:480px;line-height:1.6;
}
.cta-btn{
  position:relative;z-index:1;
  display:inline-flex;align-items:center;gap:10px;
  padding:16px 34px;border-radius:100px;background:var(--d-white);color:var(--d-ink);
  font:600 16px "Geist",sans-serif;text-decoration:none;
  transition:transform .25s var(--d-ease),box-shadow .25s var(--d-ease),background .25s;
}
.cta-btn:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(255,255,255,.2);background:var(--d-soft-2)}
.cta-btn .material-symbols-outlined{font-size:20px}

/* ——— Sticky mobile CTA ——— */
.mobile-cta-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:50;
  background:rgba(255,255,255,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid var(--d-line);padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  transform:translateY(100%);transition:transform .35s var(--d-ease);
}
.mobile-cta-bar.visible{transform:translateY(0)}
.mobile-cta-info{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--d-muted);font-weight:500}
.mobile-cta-info .material-symbols-outlined{font-size:18px;color:var(--d-ink)}
.mobile-cta-btn{
  display:flex;align-items:center;gap:6px;
  padding:12px 22px;border-radius:100px;border:none;cursor:pointer;
  background:var(--d-ink);color:var(--d-white);font:600 14px "Geist",sans-serif;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
  transition:transform .2s,background .2s;
}
.mobile-cta-btn:active{transform:scale(.96);background:var(--d-ink-3)}
.mobile-cta-btn .material-symbols-outlined{font-size:18px}

/* ——— Desktop (>= 768px) ——— */
@media (min-width:768px){
  .hide-desktop{display:none}
  .hide-mobile{display:inline}

  .demo-hero{padding:110px 0 0}
  .demo-hero h1{font-size:clamp(56px,7vw,88px)}
  .demo-hero-sub{max-width:600px}

  .scheduler-section{margin:72px 0 0}
  .scheduler{
    grid-template-columns:minmax(320px,380px) minmax(0,1fr);
    min-height:680px;border-radius:32px;
  }
  .scheduler-info{padding:44px 34px;gap:32px}
  .scheduler-info h2{font-size:36px}
  .scheduler-info .description{font-size:16px}
  .meeting-meta{grid-template-columns:1fr;gap:12px}
  .meeting-meta div{padding:14px 16px;font-size:14px}

  .scheduler-main{min-height:680px}
  .calendly-desktop{display:block}
  .calendly-mobile{display:none}
  .calendly-header{padding:28px 32px}
  .calendly-skeleton{padding:32px}
  .calendly-skeleton .skeleton-grid{grid-template-columns:repeat(4,1fr);gap:14px}

  .trust-bar{gap:14px}
  .trust-bar-label{width:auto;text-align:left;padding:0}
  .trust-item{padding:14px 20px}
  .trust-icon{width:42px;height:42px}
  .trust-icon .material-symbols-outlined{font-size:22px}
  .trust-text strong{font-size:15px}
  .trust-text span{font-size:12px}

  .integrations-logos{gap:16px}
  .integration-logo{flex:1 1 150px;max-width:190px;height:84px;padding:14px 16px}
  .integration-logo img{max-height:40px}

  .stats-grid{grid-template-columns:repeat(4,1fr);gap:18px}
  .stat-card{padding:32px 28px}
  .stat-card .stat-num{font-size:44px}

  .timeline::before{left:24px}
  .timeline-item{grid-template-columns:56px 1fr;gap:24px}
  .timeline-dot{width:48px;height:48px;font-size:16px}
  .timeline-item h3{font-size:20px}
  .timeline-item p{font-size:15px}

  .features-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .feature-card{padding:32px 28px}

  .faq-section{margin-top:100px}
  .faq-item{padding:24px 0}
  .faq-item summary{font-size:18px}

  .cta-section{padding:64px 40px;margin:100px 0 100px}

  .mobile-cta-bar{display:none}
}

/* ——— Large desktop ——— */
@media (min-width:1100px){
  .scheduler{grid-template-columns:380px minmax(0,1fr);min-height:720px;border-radius:36px}
  .scheduler-info{padding:48px 38px}
  .scheduler-main{min-height:720px}
  .calendly-desktop{height:100%}
}

/* ——— Reduced motion ——— */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01s !important;transition-duration:.01s !important}
  .reveal{opacity:1;transform:none}
}

/* ——— Performance helpers ——— */
.integration-logo img{content-visibility:auto}
.renia-footer{content-visibility:auto;contain-intrinsic-size:auto 300px}
