/*
 Custom CSS overrides
 Add your custom changes here.
 This file loads after style.css.
*/

/* Footer social icons - direct image version */
.footer-some {
  display: flex;
  align-items: center;
  gap: 18px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-some .wRqKW {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-some .social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  text-decoration: none;
  transition:
    opacity 0.2s ease,
    transform 0.2s ease;
}

.footer-some .social-link:hover {
  opacity: 0.8;
  transform: translateY(-1px);
}

.footer-some .social-img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

.footer-some .social-linkedin {
  width: 20px;
  height: 19px;
}

.footer-some .social-x {
  width: 22px;
  height: 22px;
}

.footer-some .social-facebook {
  width: 10px;
  height: 21px;
}

.footer-some .social-youtube {
  width: 24px;
  height: 17px;
}

/* Header announcement close button */
.announcement-close,
button[aria-label='Close'] {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #29adcf;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  transition: all 0.2s ease;
}

.announcement-close:hover,
button[aria-label='Close']:hover {
  background: rgba(41, 173, 207, 0.15);
}

.announcement-close svg,
button[aria-label='Close'] svg {
  width: 16px;
  height: 16px;
  stroke-width: 2;
}

/* Header dropdown icons */
.nav-chevron,
[data-icon='chevron'] {
  opacity: 1;
  color: #ffffff;
}

/* Announcement close icon - CSS drawn X fallback */
#close-announcement-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  cursor: pointer;
}

#close-announcement-bar .custom-close-icon {
  position: relative;
  width: 16px;
  height: 16px;
  display: block;
}

#close-announcement-bar .custom-close-icon::before,
#close-announcement-bar .custom-close-icon::after {
  content: '';
  position: absolute;
  top: 7px;
  left: 0;
  width: 16px;
  height: 2px;
  background: #111111;
}

#close-announcement-bar .custom-close-icon::before {
  transform: rotate(45deg);
}

#close-announcement-bar .custom-close-icon::after {
  transform: rotate(-45deg);
}

#close-announcement-bar:hover {
  background: rgba(41, 173, 207, 0.15);
}

@media (max-width: 1024px) {
  .UgKuJ > section:first-child {
    padding-top: 300px;
  }
}
@media (max-width: 767px) {
  .UgKuJ > section:first-child {
    padding-top: 200px;
  }
}

/* ================================================================
   Inner pages — archive, single article and contact
   Matches Apptly homepage: Matter SQ, near-black canvas, cyan accents.
   ================================================================ */
body:not(.home){background:#121011;color:#fff;font-family:'Matter SQ','MatterSQ',Arial,sans-serif;margin:0}.apptly-inner-topbar{background:#f3f0ee;color:#181617;text-align:center;font-size:12px;padding:8px 24px}.apptly-inner-header{height:76px;max-width:1440px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:34px;border-bottom:1px solid rgba(255,255,255,.08)}.apptly-inner-logo img{width:100px;display:block}.apptly-inner-nav{margin-left:auto}.apptly-inner-nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}.apptly-inner-nav a,.apptly-post-card a,.apptly-article-aside a{color:#fff;text-decoration:none}.apptly-inner-nav a{font-size:14px}.apptly-outline-btn,.apptly-solid-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #25b8de;border-radius:999px;padding:12px 22px;color:#fff;text-decoration:none;background:transparent}.apptly-solid-btn{background:#25b8de;color:#101010;border:0;cursor:pointer;font:inherit}.apptly-page-shell{max-width:1440px;margin:0 auto;padding:0 32px 110px}.apptly-archive-hero,.apptly-single-hero{padding:220px 0 70px;max-width:920px}.apptly-eyebrow{font-size:13px;letter-spacing:.08em;color:#25b8de;margin:0 0 18px}.apptly-archive-hero h1,.apptly-single-hero h1,.apptly-contact-hero h1{font-weight:400;letter-spacing:-.045em;line-height:.98;margin:0}.apptly-archive-hero h1{font-size:clamp(54px,7vw,96px)}.apptly-archive-hero>p:last-child{font-size:20px;line-height:1.5;color:#c7c4c4;max-width:700px;margin-top:28px}.apptly-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 28px}.apptly-card-media{display:block;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#252525}.apptly-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.apptly-post-card:hover .apptly-card-media img{transform:scale(1.025)}.apptly-media-fallback{display:block;width:100%;height:100%;background:radial-gradient(circle at 78% 35%,#25b8de 0,rgba(37,184,222,.22) 20%,transparent 42%),#252525}.apptly-card-copy{padding:20px 2px 0}.apptly-card-meta,.apptly-single-meta{font-size:13px;color:#929090}.apptly-card-copy h2{font-size:28px;line-height:1.08;font-weight:400;letter-spacing:-.025em;margin:10px 0}.apptly-card-copy>p:not(.apptly-card-meta){color:#aaa6a7;line-height:1.55}.apptly-text-link{display:inline-block;margin-top:8px;color:#25b8de!important}.apptly-pagination{padding-top:70px}.apptly-pagination .nav-links{display:flex;gap:8px}.apptly-pagination a,.apptly-pagination span{border:1px solid #393536;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;color:#fff;text-decoration:none}.apptly-pagination .current{background:#25b8de;color:#111;border-color:#25b8de}.apptly-single-shell{max-width:1240px}.apptly-single-hero{max-width:1000px}.apptly-single-hero h1{font-size:clamp(48px,6.3vw,88px)}.apptly-single-meta{margin-top:26px}.apptly-deck{font-size:22px;line-height:1.45;color:#c9c6c7;max-width:820px;margin-top:30px}.apptly-featured{margin:0 0 76px}.apptly-featured img{width:100%;height:auto;max-height:700px;object-fit:cover;border-radius:22px}.apptly-article-layout{display:grid;grid-template-columns:150px minmax(0,760px);justify-content:center;gap:50px}.apptly-article-aside{display:flex;flex-direction:column;gap:10px;font-size:13px;color:#777;position:sticky;top:170px;align-self:start}.apptly-entry-content{font-size:19px;line-height:1.72;color:#e5e2e3}.apptly-entry-content h2,.apptly-entry-content h3{color:#fff;font-weight:400;letter-spacing:-.025em;line-height:1.15;margin:2em 0 .7em}.apptly-entry-content h2{font-size:38px}.apptly-entry-content h3{font-size:28px}.apptly-entry-content a{color:#25b8de}.apptly-entry-content img{max-width:100%;height:auto;border-radius:16px}.apptly-entry-content blockquote{border-left:2px solid #25b8de;margin:2em 0;padding:5px 0 5px 28px;font-size:26px;line-height:1.4;color:#fff}.apptly-article-footer{max-width:960px;margin:70px auto 0;padding-top:36px;border-top:1px solid #302d2e}.apptly-contact-hero{min-height:480px;padding:220px 0 100px;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;overflow:hidden}.apptly-contact-hero h1{font-size:clamp(52px,6.5vw,94px);max-width:850px}.apptly-contact-hero>div:first-child>p:last-child{font-size:20px;color:#c1bfc0;max-width:600px;line-height:1.5; margin-top: 28px;}.apptly-contact-orb{justify-self:end;width:min(33vw,420px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 48% 48%,#18272b 0 48%,#23b7da 58%,#123d48 68%,transparent 72%);filter:drop-shadow(0 0 35px rgba(37,184,222,.25)); margin-right: 50px;}.apptly-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding:80px 0 0;border-top:1px solid #302d2e}.apptly-contact-intro h2{font-size:42px;font-weight:400;margin:0 0 20px}.apptly-contact-intro>p{color:#aaa6a7;font-size:18px;line-height:1.55}.apptly-contact-note{margin-top:50px;padding:26px;border-radius:16px;background:#242223}.apptly-contact-note p{color:#aaa6a7;margin-bottom:0;line-height:1.5;margin-top: 5px;}.apptly-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.apptly-contact-form label{display:flex;flex-direction:column;gap:9px;font-size:14px}.apptly-contact-form label:nth-of-type(4){grid-column:1/-1}.apptly-contact-form input,.apptly-contact-form textarea{width:100%;box-sizing:border-box;background:#211f20;border:1px solid #3b3839;border-radius:12px;color:#fff;padding:16px;font:inherit;outline:none}.apptly-contact-form input:focus,.apptly-contact-form textarea:focus{border-color:#25b8de}.apptly-contact-form .apptly-solid-btn{justify-self:start}.apptly-form-status{grid-column:1/-1;padding:14px 16px;border-radius:10px;background:#332728}.apptly-form-status.success{background:#17342d; text-align: center;line-height: 24px;}

.apptly-entry-content > p {
	margin-bottom: 20px;
}

@media(max-width:800px){.apptly-inner-header{padding:0 20px;height:66px}.apptly-inner-nav{display:none}.apptly-inner-header .apptly-outline-btn{margin-left:auto;padding:9px 14px;font-size:12px}.apptly-page-shell{padding-left:20px;padding-right:20px}.apptly-archive-hero,.apptly-single-hero{padding-top:220px}.apptly-post-grid{grid-template-columns:1fr;gap:48px}.apptly-card-copy h2{font-size:24px}.apptly-article-layout{display:block}.apptly-article-aside{position:static;flex-direction:row;margin-bottom:30px}.apptly-entry-content{font-size:17px}.apptly-contact-hero{grid-template-columns:1fr;min-height:auto}.apptly-contact-orb{display:none}.apptly-contact-grid{grid-template-columns:1fr;gap:50px}.apptly-contact-form{grid-template-columns:1fr}.apptly-contact-form label:nth-of-type(4){grid-column:auto}}

/* Dynamic homepage insights: retain the original homepage card geometry. */
.apptly-home-insight-media{display:block;text-decoration:none}.apptly-home-insight-media figure{margin:0}.apptly-home-insight-media .LPqIl{overflow:hidden}.apptly-home-insight-media img{width:100%;height:100%;object-fit:cover;display:block}.apptly-home-placeholder{display:block;width:100%;height:100%;min-height:220px;background:radial-gradient(circle at 70% 35%,#25b8de 0,rgba(37,184,222,.2) 22%,transparent 45%),#242223}.apptly-home-insight .dSxiQ{text-decoration:none}

/* Shared site alignment: inner pages follow the same horizontal gutter as the homepage header/footer. */
body:not(.home) .apptly-page-shell{
  width:min(92vw,1400px);
  max-width:none;
  box-sizing:border-box;
  margin-left:auto;
  margin-right:auto;
  padding-left:0;
  padding-right:0;
}
body:not(.home) .apptly-single-shell{
  width:min(92vw,1400px);
  max-width:none;
}
@media (max-width:800px){
  body:not(.home) .apptly-page-shell,
  body:not(.home) .apptly-single-shell{
    width:calc(100% - 40px);
    padding-left:0;
    padding-right:0;
  }
}

/* News card interaction UX */
.apptly-card-copy h2 a,.apptly-text-link{transition:color .2s ease,opacity .2s ease}
.apptly-card-copy h2 a:hover,.apptly-card-copy h2 a:focus-visible{color:#25b8de!important}
.apptly-text-link:hover,.apptly-text-link:focus-visible{color:#fff!important}

/* Single news UX enhancements */
.apptly-share-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.apptly-share-links a{width:38px;height:38px;border:1px solid #3b3839;border-radius:50%;display:grid;place-items:center;transition:border-color .2s ease,background .2s ease,transform .2s ease}.apptly-share-links a:hover,.apptly-share-links a:focus-visible{border-color:#25b8de;background:#25b8de;transform:translateY(-2px);outline:0}.apptly-share-links svg{width:17px;height:17px;fill:currentColor}.apptly-share-links a:hover svg,.apptly-share-links a:focus-visible svg{fill:#101010}.apptly-post-navigation{width:100%;max-width:none;margin:76px 0 0;padding-top:34px;padding-bottom:34px;border-top:1px solid #302d2e;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}.apptly-post-nav-side{min-width:0}.apptly-post-nav-side span{display:block;color:#858182;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.apptly-post-nav-side a{color:#fff;text-decoration:none;font-size:17px;line-height:1.3;transition:color .2s ease}.apptly-post-nav-side a:hover,.apptly-post-nav-side a:focus-visible{color:#25b8de;outline:0}.apptly-post-nav-next{text-align:right}.apptly-related-news{padding-top:74px;border-top:1px solid #302d2e}.apptly-related-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:40px}.apptly-related-heading .apptly-eyebrow{margin-bottom:12px}.apptly-related-heading h2{font-size:clamp(38px,4.2vw,58px);font-weight:400;letter-spacing:-.04em;line-height:1;margin:0}.apptly-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.apptly-related-media{display:block;aspect-ratio:16/10;border-radius:18px;overflow:hidden;background:#252525}.apptly-related-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.apptly-related-card:hover .apptly-related-media img{transform:scale(1.025)}.apptly-related-copy{padding-top:17px}.apptly-related-copy h3{font-size:22px;line-height:1.12;font-weight:400;letter-spacing:-.025em;margin:9px 0 5px}.apptly-related-copy h3 a{color:#fff;text-decoration:none;transition:color .2s ease}.apptly-related-copy h3 a:hover,.apptly-related-copy h3 a:focus-visible{color:#25b8de;outline:0}
@media(max-width:800px){.apptly-share-links{margin-left:auto}.apptly-post-navigation{grid-template-columns:1fr;gap:30px}.apptly-post-nav-next{text-align:left}.apptly-related-news{padding-top:54px}.apptly-related-heading{align-items:flex-start;flex-direction:column}.apptly-related-grid{grid-template-columns:1fr;gap:44px}}

/* Related news: keep CTA clean without browser-default underline */
.apptly-related-news .apptly-text-link,
.apptly-related-news .apptly-text-link:hover,
.apptly-related-news .apptly-text-link:focus,
.apptly-related-news .apptly-text-link:focus-visible {
  text-decoration: none;
}

/* Related news: stronger hover/focus state for Explore all news */
.apptly-related-heading .apptly-outline-btn {
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.apptly-related-heading .apptly-outline-btn:hover,
.apptly-related-heading .apptly-outline-btn:focus-visible {
  background:#25b8de;
  border-color:#25b8de;
  color:#101010;
  transform:translateY(-2px);
  outline:0;
}

/* Contact page UX enhancements */
.apptly-contact-image{margin:0 0 20px;aspect-ratio:16/6;border-radius:22px;overflow:hidden;background:#242223}.apptly-contact-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.apptly-contact-image:hover img{transform:scale(1.015)}.apptly-contact-form select{width:100%;box-sizing:border-box;background:#211f20;border:1px solid #3b3839;border-radius:12px;color:#fff;padding:16px;font:inherit;outline:none;appearance:auto}.apptly-contact-form select:focus{border-color:#25b8de}.apptly-contact-form .apptly-message-field{grid-column:1/-1}.apptly-required{color:#25b8de;font-weight:600}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.apptly-contact-image{aspect-ratio:4/3;border-radius:16px}.apptly-contact-form .apptly-message-field{grid-column:auto}}

/* Contact form UX refinements */
.apptly-contact-form label{display:grid;grid-template-columns:max-content max-content;column-gap:4px;row-gap:9px;align-items:center}
.apptly-contact-form label input,.apptly-contact-form label select,.apptly-contact-form label textarea{grid-column:1/-1}
.apptly-contact-form label:nth-of-type(3){grid-column:1}
.apptly-contact-form label:nth-of-type(4){grid-column:2}
.apptly-contact-form .apptly-message-field{grid-column:1/-1}
.apptly-contact-form .apptly-solid-btn{transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}
.apptly-contact-form .apptly-solid-btn:hover,.apptly-contact-form .apptly-solid-btn:focus-visible{background:#fff;color:#101010;transform:translateY(-2px)}
@media(max-width:800px){.apptly-contact-form label:nth-of-type(3),.apptly-contact-form label:nth-of-type(4),.apptly-contact-form .apptly-message-field{grid-column:auto}}

/* Contact two-column field alignment */
.apptly-contact-form .apptly-company-field{grid-column:1!important}
.apptly-contact-form .apptly-inquiry-field{grid-column:2!important}
@media(max-width:800px){.apptly-contact-form .apptly-company-field,.apptly-contact-form .apptly-inquiry-field{grid-column:1!important}}

/* Contact form visual refinement: balanced two-column layout */
.apptly-contact-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(56px,6vw,96px);align-items:start}
.apptly-contact-form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:24px;align-items:start}
.apptly-contact-form label{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px;font-size:14px;min-width:0}
.apptly-contact-form label input,.apptly-contact-form label select,.apptly-contact-form label textarea{flex:0 0 100%;width:100%;min-width:0;margin-top:5px}
.apptly-contact-form input,.apptly-contact-form select{min-height:54px}
.apptly-contact-form textarea{min-height:150px;resize:vertical}
.apptly-contact-form .apptly-company-field{grid-column:1!important}
.apptly-contact-form .apptly-inquiry-field{grid-column:2!important}
.apptly-contact-form .apptly-message-field{grid-column:1/-1!important}
.apptly-contact-form .apptly-solid-btn{grid-column:1/-1;justify-self:start;margin-top:0}
.apptly-contact-form .apptly-form-status{grid-column:1/-1}
@media(max-width:800px){.apptly-contact-grid{grid-template-columns:1fr;gap:50px}.apptly-contact-form{grid-template-columns:1fr;gap:20px}.apptly-contact-form .apptly-company-field,.apptly-contact-form .apptly-inquiry-field,.apptly-contact-form .apptly-message-field,.apptly-contact-form .apptly-solid-btn{grid-column:1!important}}

/* Contact UX refinement: site-matched CTA hover and inquiry select */
.apptly-contact-form .apptly-solid-btn{
  border:1px solid #25b8de;
  background:#25b8de;
  color:#101010;
  transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}
.apptly-contact-form .apptly-solid-btn:hover,
.apptly-contact-form .apptly-solid-btn:focus-visible{
  background:transparent;
  color:#25b8de;
  border-color:#25b8de;
  transform:none;
}
.apptly-contact-form .apptly-inquiry-field{position:relative}
.apptly-contact-form .apptly-inquiry-field select{
  appearance:none;
  -webkit-appearance:none;
  min-height:54px;
  padding:15px 48px 15px 16px;
  background-color:#211f20;
  border:1px solid #3b3839;
  border-radius:12px;
  color:#fff;
  cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 17px center;
  background-size:14px 8px;
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.apptly-contact-form .apptly-inquiry-field select:hover{border-color:#6b6668}
.apptly-contact-form .apptly-inquiry-field select:focus,
.apptly-contact-form .apptly-inquiry-field select:focus-visible{
  border-color:#25b8de;
  box-shadow:0 0 0 1px #25b8de;
  outline:none;
}
.apptly-contact-form .apptly-inquiry-field select option{
  background:#211f20;
  color:#fff;
}
.apptly-contact-form .apptly-inquiry-field select option:disabled{color:#969294}

/* Custom Apptly inquiry dropdown — replaces browser-native select popup */
.apptly-contact-form .apptly-custom-select-field{grid-column:2!important;display:block;position:relative;min-width:0;font-size:14px}
.apptly-custom-select-field>label{display:block;margin:0 0 9px;font-size:14px;color:#fff}
.apptly-select-trigger{width:100%;min-height:54px;padding:14px 17px;background:#211f20;border:1px solid #3b3839;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;font:inherit;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.apptly-select-trigger svg{width:14px;height:8px;flex:none;transition:transform .2s ease}.apptly-select-trigger svg path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.apptly-select-trigger:hover{border-color:#6b6668}.apptly-select-trigger:focus-visible,.apptly-custom-select-field.is-open .apptly-select-trigger{outline:none;border-color:#25b8de;box-shadow:0 0 0 1px #25b8de}.apptly-custom-select-field.is-open .apptly-select-trigger svg{transform:rotate(180deg)}
.apptly-select-menu{position:absolute;z-index:50;left:0;right:0;top:calc(100% + 8px);padding:8px;background:#211f20;border:1px solid #3b3839;border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.38);overflow:hidden}
.apptly-select-menu[hidden]{display:none}.apptly-select-menu button{width:100%;padding:11px 12px;border:0;border-radius:8px;background:transparent;color:#fff;text-align:left;font:inherit;cursor:pointer;transition:background-color .18s ease,color .18s ease}.apptly-select-menu button:hover,.apptly-select-menu button:focus-visible{outline:none;background:#2c292a;color:#25b8de}.apptly-select-menu button[aria-selected="true"]{background:#25b8de;color:#101010}
.apptly-custom-select-field.has-error .apptly-select-trigger{border-color:#25b8de}
@media(max-width:800px){.apptly-contact-form .apptly-custom-select-field{grid-column:1!important}}

/* Contact routing cards */
.apptly-contact-routes{margin-top:28px;display:grid;gap:16px}
.apptly-contact-route{display:block;padding:22px 24px;border:1px solid #3b3839;border-radius:16px;background:#181617;color:#fff;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}
.apptly-contact-route:hover,.apptly-contact-route:focus-visible{outline:none;border-color:#25b8de;background:#211f20;transform:translateY(-2px)}
.apptly-contact-route-kicker{display:block;margin-bottom:10px;color:#25b8de;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.apptly-contact-route-email{display:block;margin-bottom:8px;color:#fff;font-size:18px;line-height:1.3}
.apptly-contact-route-copy{display:block;color:#aaa6a7;font-size:14px;line-height:1.5}
@media(max-width:800px){.apptly-contact-routes{margin-top:24px}.apptly-contact-route{padding:20px}}

/* Contact direct routes: full-width row between hero and form */
.apptly-contact-routes-section{padding:44px 0}
.apptly-contact-routes-section .apptly-contact-routes{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.apptly-contact-routes-section .apptly-contact-route{height:100%;box-sizing:border-box;padding:26px 28px}
@media(max-width:900px){.apptly-contact-routes-section .apptly-contact-routes{grid-template-columns:1fr}}

/* Contact direct routes: matching top divider */
.apptly-contact-routes-section{
  border-top:1px solid #302d2e;
}

/* Contact AJAX status: prevent transient grid overflow after submission. */
.apptly-contact-grid,.apptly-contact-form{min-width:0}
.apptly-contact-form>*{min-width:0;max-width:100%}
.apptly-form-status{min-width:0;max-width:100%;width:auto;box-sizing:border-box;overflow-wrap:anywhere;word-break:break-word}

/* Homepage cards start - continuous rotation
 * Rotate the asset wrapper, not the <video>. The theme's entry animation
 * controls transform on the video itself, which otherwise conflicts.
 */
.cards_custom .card-item.has-video figure.asset .GwIiD {
    animation: apptlyCardRotate360 6s linear infinite !important;
    transform-origin: 50% 50% !important;
    will-change: transform;
}

@keyframes apptlyCardRotate360 {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

/* Keep the theme's video entrance transform separate from our endless spin. */
.cards_custom .card-item.has-video figure.asset video {
    animation: none !important;
}
/* Homepage cards end  */

/* Homepage stats: guaranteed continuous visible rotation.
 * .GwIiD is display:contents in the generated theme, so transforms cannot
 * animate it. This real nested wrapper owns the endless rotation while the
 * existing <video> keeps the theme's entrance transform independently.
 */
.cards_custom .card-item.has-video figure.asset .apptly-continuous-rotation {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    transform: rotate(0deg);
    transform-origin: 50% 50%;
    animation: apptlyVisibleRotate360 20s linear infinite !important;
    will-change: transform;
    pointer-events: none;
}

.cards_custom .card-item.has-video figure.asset .apptly-continuous-rotation > video {
    width: 100%;
    height: 100%;
}

@keyframes apptlyVisibleRotate360 {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Disable the earlier ineffective rule on .GwIiD (display:contents). */
.cards_custom .card-item.has-video figure.asset .GwIiD {
    animation: none !important;
}

/* Homepage stats: keep card/asset entrance, remove ONLY the video's entrance rotation.
 * The dedicated nested wrapper provides the independent infinite 360deg spin.
 */
.cards_custom[data-entry-animation] .card-item.has-video figure.asset video,
.cards_custom[data-entry-animation][data-entry-visible] .card-item.has-video figure.asset video {
    transform: none !important;
    transition: none !important;
    animation: none !important;
}

.cards_custom .card-item.has-video figure.asset .apptly-continuous-rotation {
    animation: apptlyVisibleRotate360 20s linear infinite !important;
    animation-play-state: running !important;
}


/* =========================================================
   Homepage partner logo slider
   First 10 unique logos are repeated once in the markup for
   seamless scrolling. Keep every logo visually consistent.
   ========================================================= */
.apptly-partner-logo-slider .TbrZP.logo {
    --logo-max-height: 48px !important;
    --logo-min-height: 48px !important;
    --logo-max-height-mobile: 32px !important;
}

.apptly-partner-logo-slider .TbrZP.logo .LPqIl,
.apptly-partner-logo-slider .TbrZP.logo picture {
    display: flex;
    align-items: center;
    justify-content: center;
}

.apptly-partner-logo-slider .TbrZP.logo img {
    width: auto !important;
    height: 48px !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

@media (max-width: 767px) {
    .apptly-partner-logo-slider .TbrZP.logo {
        --logo-max-height: 32px !important;
        --logo-min-height: 32px !important;
        --logo-max-height-mobile: 32px !important;
    }

    .apptly-partner-logo-slider .TbrZP.logo img {
        height: 32px !important;
    }
}

/* =========================================================
   Partner logo slider — responsive viewport fit
   Keeps each logo in a consistent slot and prevents wide
   source canvases/aspect ratios from creating oversized boxes.
   ========================================================= */
.apptly-partner-logo-slider {
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
}

.apptly-partner-logo-slider .logos-animated-wrapper {
    align-items: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo {
    box-sizing: border-box !important;
    flex: 0 0 calc(100vw / 7) !important;
    width: calc(100vw / 7) !important;
    min-width: 0 !important;
    height: 72px !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo > .LPqIl,
.apptly-partner-logo-slider .TbrZP.logo .LPqIl,
.apptly-partner-logo-slider .TbrZP.logo picture {
    width: 100% !important;
    height: 72px !important;
    aspect-ratio: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo img {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    max-width: 180px !important;
    max-height: 48px !important;
    object-fit: contain !important;
    object-position: center !important;
}

@media (max-width: 960px) {
    .apptly-partner-logo-slider .TbrZP.logo {
        flex-basis: 25vw !important;
        width: 25vw !important;
        height: 60px !important;
        padding: 0 12px !important;
    }

    .apptly-partner-logo-slider .TbrZP.logo > .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo picture {
        height: 60px !important;
    }

    .apptly-partner-logo-slider .TbrZP.logo img {
        height: 38px !important;
        max-height: 38px !important;
        max-width: 150px !important;
    }
}

@media (max-width: 600px) {
    .apptly-partner-logo-slider .TbrZP.logo {
        flex-basis: 40vw !important;
        width: 40vw !important;
        height: 54px !important;
        padding: 0 10px !important;
    }

    .apptly-partner-logo-slider .TbrZP.logo > .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo picture {
        height: 54px !important;
    }

    .apptly-partner-logo-slider .TbrZP.logo img {
        height: 32px !important;
        max-height: 32px !important;
        max-width: 130px !important;
    }
}


/* =========================================================
   Partner logo slider — final 12 unique logos
   No duplicate logo markup; responsive, equal-height slots.
   ========================================================= */
.apptly-partner-logo-slider {
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
}

.apptly-partner-logo-slider .logos-animated-wrapper {
    display: flex !important;
    align-items: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo {
    box-sizing: border-box !important;
    flex: 0 0 calc(100vw / 6) !important;
    width: calc(100vw / 6) !important;
    min-width: 0 !important;
    height: 72px !important;
    padding: 0 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo .LPqIl,
.apptly-partner-logo-slider .TbrZP.logo picture {
    width: 100% !important;
    height: 72px !important;
    aspect-ratio: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.apptly-partner-logo-slider .TbrZP.logo img {
    display: block !important;
    width: 100% !important;
    height: 48px !important;
    max-width: 180px !important;
    max-height: 48px !important;
    object-fit: contain !important;
    object-position: center !important;
}

@media (max-width: 960px) {
    .apptly-partner-logo-slider .TbrZP.logo {
        flex-basis: 25vw !important;
        width: 25vw !important;
        height: 60px !important;
        padding: 0 12px !important;
    }
    .apptly-partner-logo-slider .TbrZP.logo .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo picture { height: 60px !important; }
    .apptly-partner-logo-slider .TbrZP.logo img {
        height: 38px !important;
        max-height: 38px !important;
        max-width: 150px !important;
    }
}

@media (max-width: 600px) {
    .apptly-partner-logo-slider .TbrZP.logo {
        flex-basis: 40vw !important;
        width: 40vw !important;
        height: 54px !important;
        padding: 0 10px !important;
    }
    .apptly-partner-logo-slider .TbrZP.logo .LPqIl,
    .apptly-partner-logo-slider .TbrZP.logo picture { height: 54px !important; }
    .apptly-partner-logo-slider .TbrZP.logo img {
        height: 32px !important;
        max-height: 32px !important;
        max-width: 130px !important;
    }
}
