/* V10: ONLY responsive fixes requested for reviews, hero laptop, phone pairing. */
/* Review title and Google badge centered in phone layout */
@media(max-width:760px){
  #reviews .nx-section-head{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:26px!important}
  #reviews .nx-section-head>div:first-child{text-align:center!important;width:100%}
  #reviews .nx-section-head .nx-label{text-align:center!important}
  #reviews .vx-google-review-callout{align-items:center!important;text-align:center!important;margin:0 auto!important;width:100%!important}
  #reviews .vx9-google-badge{text-align:center!important;margin:auto!important}
  #reviews .vx-google-link{align-self:center!important}
}
/* Restore circular orbit instead of the V9 grid. Position follows existing scroll JS on >=761. */
@media(min-width:761px){
 #reviews .vx-orbit,#reviews .vx-orbit:has(details[open]){display:block!important;position:relative!important;min-height:660px!important;height:660px!important;max-width:1120px!important;overflow:hidden!important;margin:35px auto 0!important}
 #reviews .vx-orbit:has(details[open]){height:950px!important}
 #reviews .vx-orbit-people{display:block!important;position:absolute!important;inset:0!important;height:1050px!important;width:100%!important;pointer-events:none!important;mask-image:linear-gradient(#000 0 440px,transparent 640px)!important}
 #reviews .vx-review-avatar{position:absolute!important;display:block!important;inset:0 auto auto 0!important;width:clamp(67px,6vw,92px)!important;height:clamp(67px,6vw,92px)!important;aspect-ratio:1!important;opacity:1;pointer-events:auto!important;will-change:transform!important}
 #reviews .vx-review-avatar[data-review-copy]{display:block!important}
 #reviews .vx-orbit-review{position:absolute!important;top:158px!important;left:50%!important;transform:translateX(-50%)!important;width:min(430px,49%)!important;margin:0!important;padding:0!important;z-index:4}
 #reviews .vx-review-text blockquote{font-size:20px!important;min-height:144px!important}
}
@media(min-width:761px) and (max-width:1050px){
 #reviews .vx-orbit-review{top:145px!important;width:48%!important}
 #reviews .vx-review-text blockquote{font-size:18px!important;min-height:162px!important}
}
/* Compact circular portrait arrangement on small screens, with a clear central quote */
@media(max-width:760px){
 #reviews .vx-orbit,#reviews .vx-orbit:has(details[open]){display:block!important;position:relative!important;width:100%!important;max-width:540px!important;height:630px!important;min-height:630px!important;overflow:visible!important;margin:28px auto 0!important}
 #reviews .vx-orbit-people{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;mask-image:none!important;pointer-events:none!important}
 #reviews .vx-review-avatar{position:absolute!important;display:block!important;width:clamp(43px,12vw,64px)!important;height:clamp(43px,12vw,64px)!important;inset:auto!important;opacity:1!important;transform:none!important;pointer-events:auto!important;border-width:4px!important}
 #reviews .vx-review-avatar[data-review-copy]{display:none!important}
 #reviews .vx-review-avatar:nth-child(1){top:2%;left:9%}
 #reviews .vx-review-avatar:nth-child(2){top:1%;right:9%}
 #reviews .vx-review-avatar:nth-child(3){top:20%;left:0}
 #reviews .vx-review-avatar:nth-child(4){top:20%;right:0}
 #reviews .vx-review-avatar:nth-child(5){top:51%;left:0}
 #reviews .vx-review-avatar:nth-child(6){top:51%;right:0}
 #reviews .vx-review-avatar:nth-child(7){bottom:2%;left:11%}
 #reviews .vx-review-avatar:nth-child(8){bottom:2%;right:11%}
 #reviews .vx-orbit-review{position:absolute!important;left:50%!important;top:110px!important;transform:translateX(-50%)!important;width:calc(100% - 106px)!important;max-width:350px!important;margin:0!important;padding:0!important;z-index:4}
 #reviews .vx-review-text{min-height:0!important}
 #reviews .vx-review-text blockquote{font-size:clamp(14px,3.8vw,18px)!important;line-height:1.55!important;min-height:130px!important;padding:0!important}
 #reviews .vx-quote-mark{font-size:60px!important;margin-bottom:8px!important}
 #reviews .nx-stars{margin-top:12px!important;padding-top:13px!important;font-size:16px!important}
 #reviews figcaption{font-size:12px!important;margin-top:9px!important}
 #reviews .vx-orbit-controls{margin-top:10px!important}
}
@media(max-width:400px){
 #reviews .vx-orbit,#reviews .vx-orbit:has(details[open]){height:590px!important;min-height:590px!important}
 #reviews .vx-orbit-review{top:110px!important;width:calc(100% - 98px)!important}
 #reviews .vx-review-avatar:nth-child(3),#reviews .vx-review-avatar:nth-child(5){left:-6px}
 #reviews .vx-review-avatar:nth-child(4),#reviews .vx-review-avatar:nth-child(6){right:-6px}
}
/* Side-by-side phone section at desktop/tablet width 1024+ */
@media(min-width:1024px) and (max-width:1200px){
 .vx7-phone-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(22px,3vw,44px)!important;align-items:center!important}
 .vx7-phone-copy{min-width:0!important;max-width:none!important}
 .vx7-phone-copy .nx-heading{font-size:clamp(36px,3.6vw,50px)!important}
 .vx7-phone-scene.vx7-dual-phones{width:100%!important;max-width:none!important;min-height:570px!important;overflow:visible!important}
 .vx7-phone-back{left:0!important;top:135px!important;width:205px!important;height:428px!important}
 .vx7-phone-front{right:0!important;top:30px!important;width:228px!important;height:478px!important}
 .vx7-feature-row{gap:8px!important}
 .vx7-feature-row span{font-size:11px!important;padding:10px!important}
}
/* Diagonal floating phone pair, same supplied two website screenshots. */
.vx7-dual-phones .vx7-phone-shell{transform-style:preserve-3d;backface-visibility:hidden}
.vx7-dual-phones .vx7-phone-back{transform:rotate(-19deg) rotateY(13deg) rotateX(5deg)!important;animation:vx10-back-drift 7s ease-in-out infinite!important}
.vx7-dual-phones .vx7-phone-front{transform:rotate(13deg) rotateY(-13deg) rotateX(5deg)!important;animation:vx10-front-drift 7.7s ease-in-out infinite!important}
@keyframes vx10-back-drift{0%,100%{transform:translateY(0) rotate(-19deg) rotateY(13deg) rotateX(5deg)}50%{transform:translateY(-12px) rotate(-17deg) rotateY(11deg) rotateX(5deg)}}
@keyframes vx10-front-drift{0%,100%{transform:translateY(0) rotate(13deg) rotateY(-13deg) rotateX(5deg)}50%{transform:translateY(-14px) rotate(11deg) rotateY(-11deg) rotateX(5deg)}}
/* Tablet header: separate laptop from text and allow sufficient headroom/footroom */
@media(min-width:600px) and (max-width:1023px){
 .vx-scroll-stage .vx-site-header{min-height:1020px!important;height:1020px!important}
 .vx-site-header .vx-hero-content{width:100%!important;max-width:100%!important;padding:80px clamp(30px,4vw,58px) 0!important}
 .vx-site-header .vx-hero-description{max-width:590px!important}
 .vx-site-header .vx-laptop-scene{top:auto!important;bottom:65px!important;right:12%!important;width:62%!important;height:390px!important}
}
@media(min-width:600px) and (max-width:820px){
 .vx-site-header .vx-hero-content{padding-top:85px!important}
 .vx-site-header .vx-laptop-scene{bottom:65px!important;width:66%!important;right:17%!important;height:360px!important}
}
@media(max-width:599px){
 .vx-scroll-stage .vx-site-header{min-height:830px!important}
 .vx-site-header .vx-hero-content{padding-bottom:300px!important}
 .vx-site-header .vx-laptop-scene{top:auto!important;bottom:38px!important}
}
@media(prefers-reduced-motion:reduce){.vx7-dual-phones .vx7-phone-shell{animation:none!important}}
