/* Native Divi architecture. Complete and readable before any JavaScript runs. */
/* The same Inter face already used by Divi, served locally to prevent a late swap. */
@font-face {font-family:"CTS Hero Inter";font-style:normal;font-weight:100 900;font-display:optional;src:url('../fonts/inter-latin-variable.woff2') format('woff2')}
.cts-cloud-home :is(h1,h2,h3,h4,p,a,span),body.home.cts-showcase-active .cts-site-header :is(a,span) {font-family:"CTS Hero Inter",Inter,"Segoe UI",sans-serif!important}
/* Reserve the native module spacing before Divi hydrates its button wrappers. */
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-split>.et_pb_column:first-child>.cts-eyebrow {margin:0 0 12px!important}
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-split>.et_pb_column:first-child>.et_pb_text:has(h1) {margin:0!important}
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-split>.et_pb_column:first-child>.et_pb_text:has(h1)+.et_pb_text {margin:20px 0 22px!important}
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-buttons+.et_pb_text {margin:22px 0 0!important}
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-buttons>.et_pb_column,
body.home.cts-showcase-active #page-container .cts-site-header .et_pb_row_nested>.et_pb_column:last-child {padding-bottom:10px!important}
body.cts-showcase-active #page-container .cts-cloud-home .cts-hero-buttons :is(.et_pb_button_module_wrapper,.et_pb_button),
body.home.cts-showcase-active #page-container .cts-site-header :is(.et_pb_button_module_wrapper,.et_pb_button) {margin:0!important}
body.home.cts-showcase-active #page-container .cts-site-header .et_pb_row_nested>.et_pb_column:last-child {align-items:flex-end!important}
body.home.cts-showcase-active #page-container .cts-site-header .et_pb_button_module_wrapper {align-self:flex-end!important;text-align:right!important}
/* Three layers: atmosphere, signal routes/foundation, then the native website. */
.cts-cloud-home .cts-architecture-frame {width:100%!important;max-width:100%!important;margin:0!important}
.cts-cloud-home .cts-architecture {
 --arch-blue:#b0d5ea;--arch-ease:var(--cts-motion-ease,cubic-bezier(.2,.7,.2,1));
 position:relative;isolation:isolate;width:100%!important;padding:22px 0 20px!important;background:transparent;border:0;min-height:550px;
}
.cts-architecture::before {content:'';position:absolute;z-index:-2;pointer-events:none;inset:4% -2% -3%;background:radial-gradient(ellipse at 60% 48%,#62889f24,transparent 64%),radial-gradient(ellipse at 53% 56%,#8ab7d91a,transparent 63%);opacity:.75}
.cts-cloud-home .cts-architecture .et_pb_module {margin:0!important}
.cts-cloud-home .cts-architecture-title {padding:0 46px 0 7px!important}
.cts-cloud-home .cts-architecture .cts-architecture-kicker {font-size:9px!important;font-weight:600;letter-spacing:.18em;color:#b0d5ea!important;line-height:1.5!important;margin-bottom:8px!important}
.cts-cloud-home .cts-architecture .cts-architecture-title h2 {font-size:21px!important;line-height:1.3!important;font-weight:500!important;letter-spacing:-.025em;margin:0!important;padding:0!important}
.cts-cloud-home .cts-architecture .cts-architecture-body {position:relative;isolation:isolate;display:grid!important;grid-template-columns:105px minmax(0,1fr);column-gap:22px!important;row-gap:0!important;align-items:start!important;width:100%!important;margin:40px 0 0!important}
.cts-cloud-home .cts-architecture-body>.et_pb_column {width:auto!important;flex:none!important;min-width:0;position:relative}
.cts-cloud-home .cts-architecture-steps {z-index:3;display:flex!important;flex-direction:column;justify-content:center;gap:17px;padding:46px 0 0!important}
.cts-cloud-home .cts-architecture .cts-architecture-step {position:relative;padding:14px 4px 14px 29px!important;min-height:44px;border-radius:7px;outline-offset:3px;transition:background-color 500ms var(--arch-ease)}
.cts-cloud-home .cts-architecture-step::before {content:'';position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;background:linear-gradient(100deg,#b0d5ea0a,transparent);opacity:0;transition:opacity 500ms var(--arch-ease),border-color 500ms var(--arch-ease)}
.cts-cloud-home .cts-architecture-step::after {content:'';position:absolute;left:7px;top:13px;width:16px;height:16px;background:#a5b4be;mask:var(--arch-icon) center/contain no-repeat;transition:background 500ms ease}
.cts-architecture-step-design {--arch-icon:url('../architecture/design.svg')}
.cts-architecture-step-build {--arch-icon:url('../architecture/build.svg')}
.cts-architecture-step-secure {--arch-icon:url('../architecture/secure.svg')}
.cts-architecture-step-deploy {--arch-icon:url('../architecture/deploy.svg')}
.cts-architecture-step-manage {--arch-icon:url('../architecture/manage.svg')}
.cts-cloud-home .cts-architecture .cts-architecture-step h3 {font-size:11px!important;line-height:16px!important;letter-spacing:.065em;text-transform:uppercase;font-weight:550!important;color:#aeb9c1!important;padding:0!important;margin:0!important;transition:color 500ms ease}
.cts-cloud-home .cts-architecture-step:is(.is-current,.is-explored)::before {opacity:1;border-color:#b0d5ea35}
.cts-cloud-home .cts-architecture-step:is(.is-current,.is-explored)::after {background:#c5e2f2}
.cts-cloud-home .cts-architecture-step:is(.is-current,.is-explored) h3 {color:#e1f0f9!important}
.cts-cloud-home .cts-architecture:is(:not([data-enhanced]),[data-phase="static"],[data-managed="true"]) .cts-architecture-step-manage::before {opacity:1;border-color:#b0d5ea36;background:linear-gradient(100deg,#b0d5ea10,transparent)}
.cts-cloud-home .cts-architecture:is(:not([data-enhanced]),[data-phase="static"],[data-managed="true"]) .cts-architecture-step-manage h3 {color:#b0d5ea!important}
.cts-cloud-home .cts-architecture-visual {z-index:2;display:flex!important;flex-direction:column;align-items:stretch;padding:0 4px 0 0!important;perspective:1300px}
.cts-cloud-home .cts-architecture .cts-architecture-website-label {padding:0 5px 15px!important}
.cts-architecture-website-label .et_pb_text_inner {display:flex;justify-content:space-between;align-items:center;gap:10px}
.cts-cloud-home .cts-architecture .cts-architecture-website-label h3 {font-size:15px!important;line-height:1.4!important;font-weight:500!important;letter-spacing:.015em;padding:0!important;color:#f0f3f5!important}
.cts-cloud-home .cts-architecture .cts-architecture-online {font-size:9px!important;line-height:1.5!important;letter-spacing:.09em;text-transform:uppercase;color:#b0d5ea!important;display:flex;align-items:center;gap:6px;transition:opacity 700ms ease}
.cts-architecture-online::before {content:'';width:4px;height:4px;border-radius:50%;background:#b0d5ea;box-shadow:0 0 8px #b0d5ea30}
.cts-architecture[data-enhanced]:not([data-live="true"]):not([data-phase="static"]) .cts-architecture-online {opacity:0}
.cts-cloud-home .cts-architecture .cts-architecture-browser {width:100%!important;max-width:100%!important;position:relative;line-height:0;z-index:2;transform:rotateY(-5deg) rotateX(3deg) rotateZ(.8deg);transform-origin:center;box-shadow:0 28px 48px -13px #0009,0 7px 13px #0005;border-radius:12px;background:#141b20}
.cts-architecture-browser::before {content:'';position:absolute;inset:9px -2px -5px 4px;border:1px solid #66809135;border-radius:12px;z-index:-1;background:#172128}
.cts-architecture-browser::after {content:'';position:absolute;inset:0;border-radius:12px;pointer-events:none;background:linear-gradient(125deg,#d7e9f10b,transparent 32%,transparent 82%,#b0d5ea06);border:1px solid #b0d5ea12}
.cts-cloud-home .cts-architecture-browser .et_pb_image_wrap {display:block;position:relative;width:100%;border-radius:inherit}
.cts-cloud-home .cts-architecture-browser img {width:100%;height:auto;display:block;aspect-ratio:480/358}
.cts-browser-live {position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.cts-architecture[data-enhanced] .cts-architecture-browser img {opacity:0}
.cts-cloud-home .cts-architecture .cts-architecture-managed {align-self:flex-end;position:relative;z-index:3;margin:-9px 14px 0 0!important;padding:8px 12px!important;border:1px solid #536a773d;border-radius:6px;background:#182127;box-shadow:0 8px 24px #0004;transition:border-color 600ms ease,opacity 600ms ease}
.cts-cloud-home .cts-architecture .cts-architecture-managed p {display:flex;gap:7px;align-items:center;font-size:10px!important;line-height:1.4!important;color:#b0d5ea!important}
.cts-architecture-managed p::before {content:'';width:12px;height:12px;background:#b0d5ea;mask:url('../architecture/manage.svg') center/contain no-repeat}
.cts-architecture[data-enhanced]:not([data-managed="true"]):not([data-phase="static"]) .cts-architecture-managed {opacity:.25}
.cts-cloud-home .cts-architecture .cts-architecture-cloud-row {margin:40px 0 0!important;width:100%!important;position:relative}
.cts-architecture-cloud-row::before {content:'';position:absolute;left:50%;top:-42px;height:40px;width:1px;background:linear-gradient(transparent,#a7cbe37a)}
.cts-cloud-home .cts-architecture-cloud {position:relative;isolation:isolate;width:100%!important;min-width:0;display:grid!important;grid-template-columns:23px auto;justify-content:center;align-items:center;gap:8px 9px;padding:20px 0 6px!important;outline-offset:5px}
.cts-architecture-cloud::before {content:'';position:absolute;inset:0 -2% -4px;border-radius:50%;border-top:1px solid #9fc2d540;background:radial-gradient(ellipse at 50% 0,#80b3d223,transparent 68%);z-index:-1}
.cts-architecture-cloud::after {content:'';position:absolute;left:9%;right:9%;top:-9px;height:23px;border-top:1px solid #8097a322;border-radius:50%;z-index:-1}
.cts-cloud-home .cts-architecture .cts-architecture-cloud-mark {width:23px!important;max-width:23px!important;opacity:.8}
.cts-architecture-cloud-mark img {display:block;width:100%;height:auto}
.cts-cloud-home .cts-architecture .cts-architecture-cloud-title h3 {font-size:12px!important;line-height:1.3!important;letter-spacing:.12em;text-transform:uppercase;text-align:center!important;font-weight:550!important;margin:0!important;padding:0!important;color:#d3e2ec!important}
.cts-cloud-home .cts-architecture .cts-architecture-status {grid-column:1/-1}
.cts-cloud-home .cts-architecture .cts-architecture-status p {display:flex;flex-wrap:wrap;justify-content:center;gap:13px;line-height:1.5!important;font-size:10px!important;color:#a3b1bb!important}
.cts-architecture-status span {display:inline-flex;align-items:center;gap:6px}
.cts-architecture-status span::before {content:'';width:2px;height:2px;border-radius:50%;background:#a4c8de}
.cts-cloud-home .cts-architecture .cts-architecture-care {padding:0 4px 0 127px!important;margin-top:27px!important}
.cts-cloud-home .cts-architecture .cts-architecture-care p {font-size:11px!important;line-height:1.5!important;color:#aab5bd!important;text-align:center!important;letter-spacing:.02em}
/* Routes sit behind the foreground window; no background animation changes layout. */
.cts-architecture-connections {position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}
.cts-architecture-connections path {fill:none;stroke:#7595a8;stroke-opacity:.24;stroke-width:1;vector-effect:non-scaling-stroke}
.cts-architecture-connections path.is-active {stroke-opacity:.5}
.cts-architecture-connections .cts-architecture-packet {stroke:#c9e7f8;stroke-opacity:1;stroke-width:2;stroke-linecap:round;stroke-dasharray:3 2000;opacity:0}
.cts-architecture-control {position:absolute;right:0;top:17px;display:grid;place-items:center;width:40px;height:40px;padding:11px;background:transparent;border:1px solid transparent;border-radius:8px;color:#9faeb8;cursor:pointer;transition:border-color 420ms ease,background 420ms ease}
.cts-architecture-control:hover {border-color:#50565b;background:#222527}
.cts-architecture :is(.cts-architecture-step,.cts-architecture-cloud):focus-visible,.cts-architecture-control:focus-visible {outline:2px solid #b0d5ea;outline-offset:4px}
.cts-architecture-control svg {width:12px;height:12px;fill:currentColor}
.cts-architecture-control[hidden] {display:none!important}
.cts-architecture-control .cts-play {display:none}
.cts-architecture-control[aria-pressed="true"] .cts-play {display:block}
.cts-architecture-control[aria-pressed="true"] .cts-pause {display:none}
/* Phase choreography lives in cts-hero-story.css. */
/* The page fills wide screens; keep the illustration at a useful reading scale. */
@media(min-width:1441px){
 .cts-cloud-home .cts-architecture {max-width:820px;margin-left:auto;margin-right:0}
}
@media(min-width:981px) and (max-width:1190px){
 .cts-cloud-home .cts-architecture{min-height:500px}
 .cts-cloud-home .cts-architecture .cts-architecture-body{grid-template-columns:90px minmax(0,1fr);column-gap:16px!important}
 .cts-cloud-home .cts-architecture-steps{gap:11px;padding-top:35px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-step{padding-left:26px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-step h3{font-size:10px!important;letter-spacing:.035em}
 .cts-cloud-home .cts-architecture .cts-architecture-care{padding-left:106px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-status p{gap:9px;font-size:9px!important}
}
@media(min-width:768px) and (max-width:980px){
 .cts-cloud-home .cts-architecture{max-width:680px;margin-inline:auto;min-height:0}
 .cts-cloud-home .cts-architecture .cts-architecture-body{grid-template-columns:105px minmax(0,1fr);column-gap:36px!important}
 .cts-cloud-home .cts-architecture-steps{gap:20px;padding-top:55px!important}
}
@media(max-width:767px){
 .cts-cloud-home .cts-architecture{padding:10px 0!important;min-height:0}
 .cts-architecture::before{inset:15% 0 0;opacity:.55}
 .cts-cloud-home .cts-architecture-title{padding-left:0!important}
 .cts-cloud-home .cts-architecture .cts-architecture-title h2{font-size:21px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-body{display:flex!important;flex-direction:column;gap:25px!important;margin-top:23px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-body>.et_pb_column{width:100%!important}
 .cts-cloud-home .cts-architecture-steps{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:0!important}
 .cts-cloud-home .cts-architecture .cts-architecture-step{padding:28px 0 9px!important;text-align:center;min-height:53px}
 .cts-cloud-home .cts-architecture-step::after{top:6px;left:calc(50% - 7px);width:14px;height:14px}
 .cts-cloud-home .cts-architecture .cts-architecture-step h3{font-size:10px!important;letter-spacing:.02em;line-height:14px!important}
 .cts-cloud-home .cts-architecture-visual{padding:0!important;perspective:none}
 .cts-cloud-home .cts-architecture .cts-architecture-browser{transform:none}
 .cts-cloud-home .cts-architecture .cts-architecture-website-label{padding:0 2px 12px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-website-label h3{font-size:14px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-cloud-row{margin-top:36px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-cloud-title h3{font-size:11px!important}
 .cts-cloud-home .cts-architecture .cts-architecture-status p{font-size:9px!important;gap:12px}
 .cts-cloud-home .cts-architecture .cts-architecture-care{padding:0!important;margin-top:23px!important}
 .cts-architecture-control{right:0;top:5px}
 .cts-architecture[data-enhanced]:not([data-phase="static"])::before{animation:none}
 .cts-architecture[data-enhanced]:not([data-phase="static"]) .cts-architecture-body::after{display:none}
}
@media(prefers-reduced-motion:reduce){
 .cts-cloud-home .cts-architecture,.cts-cloud-home .cts-architecture::before,.cts-cloud-home .cts-architecture *,.cts-cloud-home .cts-architecture *::before,.cts-cloud-home .cts-architecture *::after{animation:none!important;transition:none!important}
 .cts-architecture-control,.cts-architecture-packet{display:none}
 .cts-cloud-home .cts-architecture .cts-browser-finish,.cts-cloud-home .cts-architecture .cts-browser-lock{opacity:1!important}
 .cts-cloud-home .cts-architecture .cts-browser-wire,.cts-cloud-home .cts-architecture .cts-browser-perimeter{opacity:0!important}
 .cts-cloud-home .cts-architecture .cts-browser-piece{transform:none!important}
}
