/* Mobile audit illustration follows the existing blue card styling. */
.home-page .mobile-audit-art{position:absolute;right:18px;bottom:-25px;transform:rotate(10deg);pointer-events:none}
.home-page .audit-phone{width:105px;height:151px;border:5px solid #aac6ea;border-radius:16px;background:#f0f6ff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;box-shadow:5px 5px 0 #d1e3fa;color:#28528c}
.home-page .audit-phone svg{width:65px;height:65px}
.home-page .audit-phone span{font-size:10px;font-weight:700}
.home-page .audit-verified{position:absolute;right:-10px;top:18px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#1d4ed8;border:3px solid #f0f6ff;color:#fff;font-size:17px;font-weight:700}
/* Homepage remote support follows the existing blue card styling. */
.home-page .remote-panel{min-width:0;padding:22px;border:1px solid #dce6f3;border-radius:12px;background:linear-gradient(120deg,#f0f5ff,#fff)}
.home-page .remote-overview{display:flex;align-items:center;gap:18px}
.home-page .remote-overview .icon-disc{flex-shrink:0}
.home-page .remote-overview h3{font-size:22px;margin-bottom:6px}
.home-page .remote-panel p,.home-page .remote-steps{font-size:13px;line-height:1.6;color:#263e5b}
.home-page .remote-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:20px 0;padding-left:20px}
.home-page .remote-steps li{padding-left:3px}
.home-page .remote-steps strong,.home-page .remote-steps span{display:block}
.home-page .remote-steps strong{color:#102d55;margin-bottom:5px}
.home-page .remote-details{border-top:1px solid #dce6f3;padding-top:14px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.home-page .remote-details p{flex:1 1 280px;font-size:12px}
.home-page .remote-details a{font-size:13px}
.home-page .self-hosted h3{line-height:1.3}
.home-page .self-hosted p{position:relative;z-index:1}
@media(max-width:767.98px){.home-page .remote-steps{grid-template-columns:1fr;gap:14px}.home-page .remote-panel{padding:18px}.home-page .remote-overview{align-items:flex-start}.home-page .remote-overview h3{font-size:20px}}
/* Reference-inspired layered hero, using ITCloudSoft blues. */
.home-page .hero-wrap{background:#f8fbff}
.home-page .hero-wrap:before{inset:0;width:100%;height:100%;background:linear-gradient(90deg,#f8fbff 0%,rgba(248,251,255,.96) 26%,rgba(248,251,255,.72) 43%,rgba(248,251,255,.16) 65%,transparent 80%),url('../images/home-office-reference.png') center 65%/cover no-repeat;-webkit-mask-image:none;mask-image:none}
.home-page .hero{min-height:390px;padding-bottom:30px}
.home-page .hero-art{height:350px;transform:none;isolation:isolate}
.home-page .asset-stack{left:5%;top:10px;width:238px;height:220px;transform:rotate(4deg) skew(-5deg);background:#c6d7ec;border-radius:12px;box-shadow:5px 9px 0 #f4f7fb,9px 18px 0 #dce6f3,13px 27px 0 #f1f5fa,17px 36px 0 #b4c9e3,20px 43px 0 #8eaace,23px 51px 18px #253b542d;z-index:2}
.home-page .asset-card{background:linear-gradient(125deg,#fffefa,#f5f8fd);border-color:#fffdf8;padding:18px 21px;color:#183253;box-shadow:0 4px 10px #27385018}
.home-page .device-heading{gap:13px;margin-bottom:12px}
.home-page .device-heading strong{font-size:18px}
.home-page .device-heading small{font-size:13px;font-weight:500;color:#183253}
.home-page .device-thumbnail{padding:5px;background:#eaf0f8;border-radius:6px}
.home-page .device-thumbnail svg{width:39px;height:32px}
.home-page .asset-card p{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:500;margin:10px 0;color:#183253}
.home-page .asset-card p svg{width:15px;height:15px;stroke-width:2;color:#28528c}
.home-page .status{font-size:12px;font-weight:600;background:#dbe9fb;color:#153b70;bottom:14px;padding:4px 10px}
.home-page .flow{min-width:145px;gap:12px;padding:16px 17px;border-radius:8px;transform:skewY(5deg);background:#f7faffed;border:1px solid #ffffffd9;box-shadow:0 8px 22px #273b4c12;z-index:3;color:#102d55;font-size:14px;font-weight:600}
.home-page .flow svg{width:29px;height:29px;stroke-width:1.8}
.home-page .flow span{font-size:14px;line-height:1.4}
.home-page .flow-new{right:13%;top:0;background:#f4f8ffed}
.home-page .flow-assigned{right:5%;top:105px;background:#e4eefbed}
.home-page .flow-audit{right:-3%;top:210px;background:#d9e8f9ed}
.home-page .flow-connector{position:absolute;width:64px;height:70px;stroke:#355b88;stroke-width:1.25;stroke-dasharray:3 4;z-index:2;overflow:visible}
.home-page .connector-one{right:6%;top:48px}
.home-page .connector-two{right:-2%;top:153px}
.home-page .capability-card{background:linear-gradient(120deg,#f4f7fc,#eef4fc);border-color:#e0e8f2}
@media(min-width:1400px){.home-page .asset-stack{left:10%;width:255px;height:225px}.home-page .flow-new{right:16%}.home-page .flow-assigned{right:8%}.home-page .flow-audit{right:0}.home-page .connector-one{right:9%}.home-page .connector-two{right:1%}}
@media(max-width:991.98px){.home-page .hero{padding-bottom:22px}.home-page .hero-wrap:before{inset:0;width:100%;height:100%;background:linear-gradient(180deg,#f8fbff 0%,rgba(248,251,255,.94) 30%,rgba(248,251,255,.4) 56%,transparent 85%),url('../images/home-office-reference.png') center bottom/cover no-repeat;-webkit-mask-image:none;mask-image:none}.home-page .hero-art{height:350px;width:min(100%,600px);margin-top:1.5rem}.home-page .asset-stack{left:8%}.home-page .flow-new{right:12%}.home-page .flow-assigned{right:6%}.home-page .flow-audit{right:0}.home-page .connector-one{right:5%;top:48px}.home-page .connector-two{right:-1%;top:153px}}
@media(max-width:479.98px){.home-page .hero-art{height:330px;display:block;padding:0;width:100%;margin-top:2rem}.home-page .asset-stack{position:absolute;left:2%;top:20px;width:185px;height:205px;margin:0;transform:rotate(3deg) skew(-3deg)}.home-page .asset-card{padding:14px}.home-page .device-heading{gap:8px}.home-page .device-heading strong{font-size:16px}.home-page .device-thumbnail svg{width:28px;height:28px}.home-page .asset-card p{font-size:12px;gap:6px}.home-page .device-heading small{font-size:11px}.home-page .status{font-size:11px}.home-page .flow{position:absolute;min-width:100px;flex-direction:row;padding:12px 9px;gap:6px;transform:skewY(5deg)}.home-page .flow svg{width:23px;height:23px}.home-page .flow span{font-size:12px}.home-page .flow-new{inset:0 9% auto auto}.home-page .flow-assigned{inset:105px 3% auto auto}.home-page .flow-audit{inset:210px 0 auto auto}.home-page .flow-connector{width:42px;height:60px}.home-page .connector-one{right:1%;top:49px}.home-page .connector-two{right:-3%;top:155px}}
@media(max-width:359px){.home-page .asset-stack{width:163px;left:0}.home-page .flow{min-width:90px;padding:10px 7px}.home-page .flow svg{width:20px;height:20px}}

/* Stronger contrast for small copy against the pale brand backgrounds. */
.home-page .hero-description{color:#142d4e;font-weight:500}
.home-page .eyebrow{color:#12376b;font-weight:700;letter-spacing:.18em;font-size:11px}
.home-page .header nav a,.home-page .text-link{color:#102d55;font-weight:600}
.home-page .card-copy p,.home-page .section-intro>p:last-child,.home-page .hosting-card p,.home-page .resource-card p,.home-page .footer p,.home-page .footer nav{color:#263e5b}
@media(max-width:479.98px){.home-page .hero-wrap:before{height:100%}.home-page .eyebrow{font-size:10px;letter-spacing:.12em}.home-page .asset-card{padding:12px}.home-page .device-heading{gap:7px}.home-page .flow{min-width:108px}.home-page .flow-new{right:3%}.home-page .flow-assigned{right:0}.home-page .flow-audit{right:0}}

/* Each visible layer is a real device card in the rotating deck. */
.home-page .device-carousel{cursor:default;touch-action:pan-y;background:transparent;box-shadow:none;overflow:visible}
.home-page .device-carousel .device-slide{--depth:0;position:absolute;inset:0;opacity:1;pointer-events:none;transform:translate(calc(var(--depth) * 6px),calc(var(--depth) * 10px));transition:transform .85s cubic-bezier(.4,0,.2,1);will-change:transform;box-shadow:0 5px 10px #253b5420;background:linear-gradient(125deg,#fffefa,#f5f8fd)}
.home-page .device-carousel .device-slide:not(.is-active):not(.is-rotating){background:#dce8f7}
.home-page .device-carousel .device-slide:not(.is-active):not(.is-rotating)>*{visibility:hidden}


/* The outgoing card travels beside the deck before returning underneath it. */
.home-page .device-carousel .device-slide.is-rotating{animation:device-card-orbit 1.4s cubic-bezier(.4,0,.2,1) both;transition:none}

/* Keep every public route visible in the standalone homepage header. */
.home-page .header .home-primary-nav{gap:clamp(.6rem,1.15vw,1.15rem);flex-wrap:nowrap;align-items:center}
.home-page .header .home-primary-nav a{white-space:nowrap;font-size:clamp(.8125rem,.95vw,.9375rem)}
.home-page .header .home-primary-nav a:hover,
.home-page .header .home-primary-nav a:focus-visible,
.home-page .header .home-primary-nav a[aria-current="page"]{color:#1d4ed8}
@media(max-width:1199.98px){
  .home-page .header{height:auto;min-height:82px;flex-wrap:wrap;padding-block:1rem}
  .home-page .header .home-primary-nav{order:3;flex-basis:100%;justify-content:center;flex-wrap:wrap;gap:.6rem 1.4rem}
  .home-page .header .demo{margin-left:auto}
}
@media(max-width:599.98px){
  .home-page .header .home-primary-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem .75rem}
  .home-page .header .home-primary-nav a{padding:.35rem 0;font-size:.875rem}
}
@keyframes device-card-orbit{
  0%{transform:translate(0,0) rotate(0deg) scale(1);z-index:6}
  30%{transform:translate(-12%,-24%) rotate(-12deg) scale(1.03);z-index:6}
  55%{transform:translate(68%,-8%) rotate(14deg) scale(1);z-index:6}
  56%{transform:translate(68%,-8%) rotate(14deg) scale(1);z-index:0}
  78%{transform:translate(45%,22%) rotate(8deg) scale(.97);z-index:0}
  100%{transform:translate(calc(var(--depth) * 6px),calc(var(--depth) * 10px)) rotate(0deg) scale(1);z-index:1}
}

/* Shared section typography; compact hosting and resource titles use home.css. */
.home-page .section-row .section-intro h2{font-size:32px;line-height:1.05;letter-spacing:-1.2px}
.home-page .section-row .section-intro .eyebrow{font-size:10px;line-height:1.4;letter-spacing:.18em}
.home-page .section-row :is(.card-copy,.remote-overview) h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.7px}
.home-page .section-row :is(.section-intro,.card-copy,.remote-panel,.hosting-card,.resource-card) p,
.home-page .section-row .remote-steps,
.home-page .section-row .remote-details a{font-size:14px;line-height:1.5}
@media(max-width:1200px){
  .home-page .section-row .section-intro h2{font-size:28px}
  .home-page .section-row :is(.card-copy,.remote-overview) h3{font-size:20px}
}
