/* ===== V30 final UI integrity pass ===== */
/* Desktop sphere: never crop the owner's artwork. Keep the compact layout height, let the full image continue behind the next section. Mobile sphere rules are intentionally untouched. */
@media (min-width:821px){
  .horizon-stage{height:clamp(190px,16vw,255px)!important;min-height:0!important;max-height:none!important;margin-bottom:0!important;overflow:visible!important;background:transparent!important;z-index:3!important}
  .horizon-stage::before{inset:auto!important;left:0!important;top:0!important;width:100%!important;height:calc(100vw * 793 / 1983)!important;max-height:none!important;background-image:var(--site-horizon-image)!important;background-size:100% 100%!important;background-position:center top!important;background-repeat:no-repeat!important;pointer-events:none!important}
  .horizon-stage + .section,.horizon-stage + section.section{position:relative!important;z-index:4!important;padding-top:26px!important}
}
/* Growth services: two equal wide cards per row on desktop; horizontal swipe on mobile. */
@media (min-width:821px){
  #services .cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;overflow:visible!important}
  #services .cards>.card{grid-column:auto!important;width:auto!important;max-width:none!important;min-width:0!important;min-height:205px!important;padding:27px!important}
  #services .cards>.card:nth-child(n){grid-column:auto!important}
}
@media (max-width:820px){
  #services .cards{display:flex!important;grid-template-columns:none!important;gap:12px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;padding:2px 14px 12px 2px!important;-webkit-overflow-scrolling:touch!important}
  #services .cards::-webkit-scrollbar{display:none!important}
  #services .cards>.card{flex:0 0 min(84vw,360px)!important;width:min(84vw,360px)!important;min-width:0!important;max-width:none!important;scroll-snap-align:start!important}
}
/* Five priced services: no hidden horizontal rail on mobile. Every price is visible in a two-column grid. */
#pricing.pricing-v27 .pricing-grid{overflow:visible!important}
@media (min-width:821px){
  #pricing.pricing-v27 .container{width:min(calc(100% - 36px),1720px)!important;max-width:1720px!important}
  #pricing.pricing-v27 .pricing-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;padding:0!important}
  #pricing.pricing-v27 .service-product-card,#pricing.pricing-v27 .service-product-card.featured{min-width:0!important;width:auto!important;padding:25px 20px 20px!important}
  #pricing.pricing-v27 .service-product-card>h3{font-size:clamp(17px,1.22vw,23px)!important;line-height:1.16!important;min-height:54px!important;overflow-wrap:anywhere!important}
  #pricing.pricing-v27 .service-product-card>.plan-term{max-width:58%!important;font-size:11px!important}
}
@media (max-width:820px){
  #pricing.pricing-v27 .container{width:min(calc(100% - 20px),1720px)!important}
  #pricing.pricing-v27 .pricing-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:0!important;scroll-snap-type:none!important}
  #pricing.pricing-v27 .service-product-card,#pricing.pricing-v27 .service-product-card.featured{display:grid!important;grid-template-rows:auto auto 82px auto auto!important;min-width:0!important;width:auto!important;max-width:none!important;min-height:294px!important;flex:none!important;padding:14px 11px 12px!important;border-radius:18px!important;overflow:hidden!important}
  #pricing.pricing-v27 .service-product-card>.plan-term{max-width:62%!important;margin-bottom:6px!important;font-size:8.5px!important;letter-spacing:.07em!important;white-space:normal!important;line-height:1.15!important}
  #pricing.pricing-v27 .service-product-card>h3{font-size:clamp(14px,4vw,17px)!important;line-height:1.17!important;min-height:40px!important;margin-bottom:5px!important;overflow-wrap:anywhere!important}
  #pricing.pricing-v27 .service-product-card>.plan-art-wrap{height:82px!important;min-height:82px!important;max-height:82px!important;margin:0 0 3px!important}
  #pricing.pricing-v27 .service-product-card .plan-art,#pricing.pricing-v27 .service-product-card:last-child .plan-art{max-width:88%!important;max-height:76px!important}
  #pricing.pricing-v27 .service-product-card>.price{margin:2px 0 6px!important;overflow:visible!important}
  #pricing.pricing-v27 .service-product-card .price-main{font-size:clamp(25px,7.8vw,34px)!important;white-space:nowrap!important}
  #pricing.pricing-v27 .service-product-card .price-from .price-main{font-size:clamp(21px,6.2vw,29px)!important}
  #pricing.pricing-v27 .service-product-card>.plan-overview{min-height:40px!important;padding:9px 7px!important;font-size:11px!important;border-radius:10px!important}
  #pricing.pricing-v27 .service-product-card .featured-badge{top:8px!important;right:7px!important;max-width:45%!important;font-size:7px!important;padding:4px 5px!important}
}
/* One glass shell only: remove obsolete purple underlays and nested outlines from inline Contact and service cost cards. */
.embedded-modal-contact,.modal.contact-connect{background:transparent!important;box-shadow:none!important}
.embedded-modal-contact::after,.modal.contact-connect::after,.service-price-card::after{background:transparent!important;opacity:0!important;box-shadow:none!important}
.embedded-modal-contact .inline-lead-shell{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin-top:0!important}
.embedded-modal-contact .embedded-popup-list{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.service-price-card{background:transparent!important;box-shadow:none!important}
.service-price-card.crystal-card:not(.modal)::after{background:transparent!important;opacity:0!important;box-shadow:none!important;inset:0!important}
/* Brand subtitle is literally spaced to the width of TRON. */
.brand .brand-copy>small{letter-spacing:.035em!important;white-space:pre!important}
/* Keep user-uploaded phone icon inside forms/popup only; the floating contact control retains its standard icon. */
.agency-contact-float img{content:url('/assets/contact-phone-v16.svg')!important}

/* V30 QA hardening: long service names and glass CTA borders never create internal overflow. */
#pricing.pricing-v27 .service-product-card>h3{white-space:normal!important;max-width:100%!important}
#pricing.pricing-v27 .service-product-card>.plan-overview{box-sizing:border-box!important;max-width:100%!important;overflow:hidden!important}
@media (min-width:821px) and (max-width:1180px){
  #pricing.pricing-v27 .pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #pricing.pricing-v27 .service-product-card,#pricing.pricing-v27 .service-product-card.featured{min-height:350px!important}
}
