/* Trovi AI homepage mobile pass v10
   Mobile-only refinements. Desktop remains untouched. */
html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;touch-action:pan-y!important}
body.luxury-theme{position:relative}
body.luxury-theme main,body.luxury-theme section,body.luxury-theme .wrap,body.luxury-theme .trovi-home-hero,body.luxury-theme .trovi-home-shell,body.luxury-theme .trovi-home-copy{width:100%!important;max-width:100vw!important;min-width:0!important;box-sizing:border-box!important}

/* ---------- mobile header ---------- */
body.luxury-theme .nav-wrap{position:sticky;top:0;z-index:200;width:100%!important;max-width:100vw!important}
body.luxury-theme .nav{width:100%!important;max-width:100vw!important;height:68px!important;padding:0 14px!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:36px minmax(92px,1fr) auto!important;align-items:center!important;gap:9px!important}
body.luxury-theme .burger{order:1;grid-column:1;display:flex!important;width:36px!important;height:36px!important;margin:0!important;border:1px solid rgba(243,206,120,.28);border-radius:9px}
body.luxury-theme .burger span{width:17px!important;background:#fff!important}
body.luxury-theme .logo{order:2;grid-column:2;justify-self:start;min-width:0!important}
body.luxury-theme .logo-image{width:112px!important;max-height:31px!important}
body.luxury-theme .nav-menu{display:none!important}
body.luxury-theme .nav-actions{order:3;grid-column:3;display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:0!important}
body.luxury-theme .nav-actions .btn--line{display:none!important}
body.luxury-theme .nav-actions .btn--accent{display:flex!important;width:auto!important;min-width:0!important;height:34px!important;min-height:34px!important;padding:0 10px!important;border-radius:9px!important;white-space:nowrap!important;font-size:10.5px!important;line-height:1!important;letter-spacing:-.01em!important}
body.luxury-theme .nav-actions .btn--accent::before,body.luxury-theme .nav-actions .cta-arrow{display:none!important}
body.luxury-theme .m-nav{top:68px!important;width:100%!important;max-width:100vw!important}

/* ---------- hero: centered + vertically compact ---------- */
body.luxury-theme .trovi-home-shell{min-height:0!important;display:block!important;padding:27px 0 34px!important}
body.luxury-theme .trovi-home-copy{padding:0 18px!important;margin:0 auto!important;text-align:center!important}
body.luxury-theme .trovi-home-copy h1{width:100%!important;max-width:100%!important;margin:0 auto!important;text-align:center!important;font-size:clamp(42px,11.7vw,51px)!important;line-height:.94!important;letter-spacing:-.052em!important;overflow:visible!important}
body.luxury-theme .trovi-word-line{max-width:calc(100vw - 36px)!important;margin:0 auto!important;justify-content:center!important}
body.luxury-theme .trovi-word{white-space:nowrap!important}
body.luxury-theme .trovi-home-copy p{width:100%!important;max-width:350px!important;margin:22px auto 13px!important;text-align:center!important;font-size:15px!important;line-height:1.48!important}
body.luxury-theme .trovi-home-copy p br{display:none}
body.luxury-theme .trovi-home-actions,body.luxury-theme .trovi-demo-panel{display:none!important}

/* ---------- one mobile demo card ---------- */
.mobile-demo-v8{width:100%!important;max-width:100%!important;margin:10px auto 0!important;overflow:hidden!important}
.mobile-demo-v8__viewport{width:100%!important;max-width:100%!important;overflow:hidden!important}
.mobile-demo-v8__track{display:flex;width:100%;transition:transform .36s cubic-bezier(.22,.72,.18,1);will-change:transform}
.mobile-demo-v8__item{flex:0 0 100%;width:100%;min-width:0;padding:0;box-sizing:border-box;display:flex;justify-content:center}
.mobile-demo-v8 .signal-card{width:min(286px,calc(100vw - 68px))!important;max-width:286px!important;min-width:0!important;height:258px!important;margin:0 auto!important;padding:14px 15px 14px!important;border-radius:19px!important;box-sizing:border-box!important}
.mobile-demo-v8 .signal-orb{width:86px!important;height:86px!important;flex-basis:86px!important;margin-top:2px!important}
.mobile-demo-v8 .signal-card-title{margin-top:8px!important;font-size:18px!important;line-height:1.1!important}
.mobile-demo-v8 .signal-card-copy{min-height:34px!important;margin-top:5px!important;font-size:12.5px!important;line-height:1.3!important}
.mobile-demo-v8 .signal-player{width:auto!important;margin:10px auto 0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important}
.mobile-demo-v8 .signal-play{width:38px!important;height:38px!important;flex:0 0 38px!important}
.mobile-demo-v8 .signal-wave{width:112px!important;height:28px!important;flex:0 0 112px!important}
.mobile-demo-v8__controls{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:8px}
.mobile-demo-v8__arrow{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(243,206,120,.4);background:rgba(3,8,18,.8);color:#fff;font-size:19px;line-height:1}
.mobile-demo-v8__dots{min-width:76px;display:flex;justify-content:center;gap:6px}.mobile-demo-v8__dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.25)}.mobile-demo-v8__dots i.active{background:#f3ce78;box-shadow:0 0 10px rgba(243,206,120,.45)}
.mobile-demo-v8__book{width:min(286px,calc(100vw - 68px));height:39px;margin:8px auto 0;border:1px solid rgba(243,206,120,.58);border-radius:11px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,rgba(24,19,10,.8),rgba(3,7,17,.94));color:#fff;text-decoration:none;font-size:13px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.2)}
body.luxury-theme .trovi-home-count{width:min(286px,calc(100vw - 68px))!important;max-width:286px!important;margin:19px auto 0!important;grid-template-columns:36px auto!important;gap:4px 10px!important;text-align:left!important}
body.luxury-theme .trovi-home-count>span:last-child{grid-column:2;font-size:12px!important;line-height:1.3!important}body.luxury-theme .trovi-home-count strong{font-size:24px!important}

/* ---------- center mobile section copy ---------- */
body.luxury-theme .stats-head,body.luxury-theme .story-head,body.luxury-theme .story-body,body.luxury-theme .tcar-head,body.luxury-theme .tcard-review,body.luxury-theme .faq-head{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
body.luxury-theme .stats-head .sub,body.luxury-theme .story-head p,body.luxury-theme .story-body p{margin-left:auto!important;margin-right:auto!important}
body.luxury-theme .h-lg{font-size:clamp(31px,9vw,40px)!important;line-height:1.03!important;text-align:center!important}

/* ---------- stats: one centered swipe card at a time ---------- */
body.luxury-theme .band-dark>.wrap{padding-left:0!important;padding-right:0!important;overflow:hidden!important}
body.luxury-theme .stats-head{padding:0 24px!important;margin-bottom:28px!important}
body.luxury-theme .stat-grid{display:flex!important;grid-template-columns:none!important;gap:14px!important;width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;scroll-padding:0 8vw!important;padding:0 8vw 10px!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}
body.luxury-theme .stat-grid::-webkit-scrollbar{display:none!important}
body.luxury-theme .stat-card{flex:0 0 84vw!important;width:84vw!important;max-width:330px!important;min-height:390px!important;scroll-snap-align:center!important;margin:0!important;padding:25px 22px 28px!important;text-align:center!important}
body.luxury-theme .stat-card .label{text-align:center!important;font-size:11px!important}
body.luxury-theme .stat-bottom{text-align:center!important}
body.luxury-theme .stat-num{font-size:58px!important;margin-bottom:13px!important;text-align:center!important}
body.luxury-theme .stat-desc{max-width:245px!important;margin:0 auto!important;text-align:center!important;font-size:15px!important}
body.luxury-theme .mobile-stat-hint{display:block;text-align:center;color:#9faac0;font-size:12px;margin:9px auto 0;letter-spacing:.02em}

/* ---------- centered story / reviews / FAQ ---------- */
body.luxury-theme .story-head,body.luxury-theme .story-body,body.luxury-theme .tcar-head,body.luxury-theme .faq-head{padding-left:20px!important;padding-right:20px!important}
body.luxury-theme .story-body .eyebrow,body.luxury-theme .story-link,body.luxury-theme .logo-txt,body.luxury-theme .review-stars,body.luxury-theme .cite{text-align:center!important}
body.luxury-theme .tcar-head{display:block!important}.tcar-arrows{justify-content:center!important;margin-top:15px!important}
body.luxury-theme .tcard blockquote{text-align:center!important}
body.luxury-theme .faq-q{text-align:center!important;justify-content:center!important;gap:10px!important}.faq-q .ico{position:static!important;flex:0 0 auto!important}.faq-a p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}

/* ---------- footer: compact accordion dropdowns on mobile ---------- */
body.luxury-theme footer{padding:36px 0 30px!important;margin-top:0!important}
body.luxury-theme footer .wrap{padding:0 22px!important}
body.luxury-theme .f-grid{display:block!important;text-align:center!important}
body.luxury-theme .f-brand{text-align:center!important;margin-bottom:26px!important}
body.luxury-theme .f-brand .logo{display:flex!important;justify-content:center!important}
body.luxury-theme .f-brand p{max-width:290px!important;margin:14px auto!important;text-align:center!important}
body.luxury-theme .f-live{justify-content:center!important}
body.luxury-theme .f-grid>div:not(.f-brand){border-top:1px solid rgba(181,199,255,.16)!important;text-align:center!important;margin:0!important;padding:0!important}
body.luxury-theme .f-grid>div:not(.f-brand):last-child{border-bottom:1px solid rgba(181,199,255,.16)!important}
body.luxury-theme .f-grid>div:not(.f-brand) h5{position:relative!important;margin:0!important;padding:17px 32px!important;cursor:pointer!important;text-align:center!important;font-size:13px!important;letter-spacing:.11em!important}
body.luxury-theme .f-grid>div:not(.f-brand) h5::after{content:'+';position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:400;color:#f3ce78}
body.luxury-theme .f-grid>div:not(.f-brand).is-open h5::after{content:'−'}
body.luxury-theme .f-grid>div:not(.f-brand) a{display:none!important;text-align:center!important;padding:7px 8px!important;margin:0!important}
body.luxury-theme .f-grid>div:not(.f-brand).is-open a{display:block!important}
body.luxury-theme .f-grid>div:not(.f-brand).is-open{padding-bottom:13px!important}
body.luxury-theme .f-bottom{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:8px!important;padding-top:24px!important}

@media(max-width:390px){body.luxury-theme .nav{padding:0 10px!important;gap:7px!important;grid-template-columns:34px minmax(84px,1fr) auto!important}body.luxury-theme .burger{width:34px!important;height:34px!important}body.luxury-theme .logo-image{width:101px!important}body.luxury-theme .nav-actions .btn--accent{height:33px!important;min-height:33px!important;padding:0 8px!important;font-size:9.5px!important}body.luxury-theme .trovi-home-copy h1{font-size:clamp(40px,11.2vw,48px)!important}.mobile-demo-v8 .signal-card{width:min(276px,calc(100vw - 58px))!important}.mobile-demo-v8__book,body.luxury-theme .trovi-home-count{width:min(276px,calc(100vw - 58px))!important}}

/* =====================================================================
   V11 MOBILE POLISH
   Keeps desktop untouched; these rules load only at <=720px.
   ===================================================================== */

/* Center the rotating gold word itself, regardless of word length.
   The decorative orb is taken out of the centering calculation. */
body.luxury-theme .trovi-word-line{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  position:relative!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.luxury-theme .trovi-word{
  display:inline-block!important;
  width:auto!important;
  max-width:calc(100vw - 58px)!important;
  text-align:center!important;
  white-space:nowrap!important;
}
body.luxury-theme .trovi-word-orb{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin-left:8px!important;
}

/* Exact centered stats carousel: first card, every following card, and
   the active card all sit on the visual center line. */
body.luxury-theme .stat-grid{
  --stat-card-w:min(318px,calc(100vw - 74px));
  gap:16px!important;
  padding-left:calc((100vw - var(--stat-card-w))/2)!important;
  padding-right:calc((100vw - var(--stat-card-w))/2)!important;
  scroll-padding-left:calc((100vw - var(--stat-card-w))/2)!important;
  scroll-padding-right:calc((100vw - var(--stat-card-w))/2)!important;
}
body.luxury-theme .stat-card{
  flex:0 0 var(--stat-card-w)!important;
  width:var(--stat-card-w)!important;
  max-width:var(--stat-card-w)!important;
  scroll-snap-align:center!important;
  scroll-snap-stop:always!important;
}
body.luxury-theme .mobile-stat-hint{display:none!important}

/* Dots + arrows underneath the stats cards, matching the demo controls. */
.mobile-stat-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:12px auto 2px;
  width:100%;
}
.mobile-stat-arrow{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid rgba(243,206,120,.42);
  background:rgba(3,8,18,.88);
  color:#fff;
  font-size:20px;
  line-height:1;
  box-shadow:0 8px 20px rgba(0,0,0,.2);
}
.mobile-stat-dots{
  min-width:84px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}
.mobile-stat-dots i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(255,255,255,.24);
  transition:background .2s ease,transform .2s ease,box-shadow .2s ease;
}
.mobile-stat-dots i.active{
  background:#f3ce78;
  transform:scale(1.08);
  box-shadow:0 0 10px rgba(243,206,120,.5);
}

/* Footer: keep the brand centered, but make each menu a distinct black
   accordion block with its heading and plus control grouped on the left. */
body.luxury-theme .f-grid>div:not(.f-brand){
  background:rgba(0,2,8,.90)!important;
  border:1px solid rgba(181,199,255,.13)!important;
  border-radius:12px!important;
  margin:8px 0!important;
  overflow:hidden!important;
  box-shadow:0 10px 26px rgba(0,0,0,.18)!important;
}
body.luxury-theme .f-grid>div:not(.f-brand):last-child{
  border-bottom:1px solid rgba(181,199,255,.13)!important;
}
body.luxury-theme .f-grid>div:not(.f-brand) h5{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:11px!important;
  text-align:left!important;
  padding:16px 17px!important;
  color:#fff!important;
}
body.luxury-theme .f-grid>div:not(.f-brand) h5::after{
  position:static!important;
  transform:none!important;
  margin:0!important;
  order:-1!important;
  width:18px!important;
  text-align:center!important;
  flex:0 0 18px!important;
  color:#f3ce78!important;
}
body.luxury-theme .f-grid>div:not(.f-brand) a{
  text-align:left!important;
  padding:8px 17px 8px 46px!important;
  color:#d5dbea!important;
}
body.luxury-theme .f-grid>div:not(.f-brand).is-open{
  padding-bottom:10px!important;
}
