/* Tredipi homepage: original layout, existing brand palette, no additional runtime dependencies. */
.brand-hero{background:#203342!important;color:#fff;padding:38px 0 34px!important;position:relative;overflow:hidden}
.brand-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 90% 20%,rgba(67,181,229,.17),transparent 55%);pointer-events:none}
.brand-hero-grid{position:relative;display:grid;grid-template-columns:1.35fr 1fr;gap:65px;align-items:center}
.brand-eyebrow{font-size:11px!important;font-weight:700!important;letter-spacing:1.8px;text-transform:uppercase;line-height:1.6!important;color:#176698;margin:0 0 18px!important}
.brand-hero .brand-eyebrow{color:#87d2f1}
.brand-hero h1{font-family:Arial,Helvetica,sans-serif;font-size:50px;line-height:1.12;font-weight:700;letter-spacing:-1.8px;color:#fff;margin:0 0 25px}
.brand-hero h1 span{color:#87d2f1}
.brand-lead{font-size:17px;line-height:1.75;color:#e0e9ee;margin:0 0 28px;max-width:630px}
.brand-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.brand-button{display:inline-flex;gap:18px;align-items:center;background:#bf4c00;color:#fff!important;padding:16px 20px;border-radius:4px;font-size:14px;font-weight:700;line-height:1.5;transition:background .2s}
.brand-button:hover{background:#a64200;text-decoration:none}
.brand-link{font-size:14px;font-weight:700;color:#155c86;line-height:1.6;display:inline-flex;gap:12px;align-items:center;text-decoration:underline;text-underline-offset:5px}
.brand-hero .brand-link{color:#fff}.brand-link:hover{color:#b34b00}.brand-hero .brand-link:hover{color:#87d2f1}
.brand-hero-ai{display:inline-block;color:#b5dce9;font-size:13px;line-height:1.6;margin-top:24px}.brand-hero-ai:hover{color:#fff;text-decoration:underline}
.brand-workspace{border:1px solid #587180;border-radius:14px;background:#263d4d;padding:23px;box-shadow:12px 14px 0 rgba(85,191,234,.12);transform:rotate(-1deg)}
.brand-workspace-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#c5dde9;padding-bottom:24px;gap:12px}
.brand-dots{font-size:9px;letter-spacing:4px;color:#70c9ee}
.brand-system{padding:18px 16px;background:#203342;border:1px solid #4c6574;border-radius:7px;display:flex;gap:14px;align-items:center}
.brand-system strong{display:block;color:#fff;font-size:16px;font-weight:700;line-height:1.5}.brand-system div>span{display:block;color:#c3d3de;font-size:12px;line-height:1.6;margin-top:3px}
.brand-node-icon{color:#7bd1f4;font-size:12px;font-weight:700}.brand-system-core{border-color:#6cc8ed;background:#294e64}.brand-system-core .brand-node-icon{color:#ff963f}
.brand-connector{height:21px;border-left:1px dashed #7db8d0;margin-left:23px}
.brand-workspace-note{font-size:11px;line-height:1.6;color:#b5ceda;margin-top:20px}
.brand-section{padding:76px 0;color:#263747}.brand-section h2{font-size:36px;line-height:1.2;font-weight:700;letter-spacing:-1px;color:#203342;margin:0 0 34px}.brand-section h3{font-size:23px;line-height:1.25;font-weight:700;letter-spacing:-.4px;color:#203342;margin:0 0 16px}
.brand-section p{font-size:15px;line-height:1.8}.brand-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.brand-two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.brand-need{border-top:2px solid #c5e5f3;padding:24px 4px 0}.brand-index{display:block;font-size:12px;letter-spacing:1px;color:#216d94;font-weight:700;margin-bottom:20px}.brand-need p{min-height:108px;margin:0 0 20px}
.brand-cases{background:#f0f5f8}.brand-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:32px}.brand-section-heading h2{margin-bottom:0;max-width:650px}.brand-section-heading>.brand-link{flex-shrink:0}
.brand-case{background:#fff;border:1px solid #dce6ed;display:flex;flex-direction:column}.brand-case-image{display:flex;align-items:center;justify-content:center;background:#fff;aspect-ratio:1.6;border-bottom:1px solid #e3edf3;padding:14px;overflow:hidden}.brand-case-image img{width:100%;height:100%;object-fit:contain}.brand-case-body{padding:25px;display:flex;flex-direction:column;flex:1}.brand-case .brand-eyebrow{font-size:10px!important;letter-spacing:1px;margin-bottom:13px!important}.brand-case h3{font-size:23px}.brand-case p:not(.brand-eyebrow){margin-bottom:22px}.brand-case .brand-link{margin-top:auto}
.brand-partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}.brand-partner h2{max-width:400px}.brand-partner-grid>div>p:not(.brand-eyebrow){max-width:470px;margin-bottom:25px}.brand-principles>div{position:relative;padding:0 0 20px 44px;border-bottom:1px solid #e0e9ef;margin-bottom:22px}.brand-principles .brand-index{position:absolute;left:0;top:2px}.brand-principles h3{font-size:20px;margin-bottom:8px}.brand-principles p{margin:0}
.brand-products{background:#eaf5fb}.brand-product{background:#fff;border:1px solid #d2e4ed;padding:28px;display:flex;gap:22px;align-items:flex-start}.brand-product-mark{flex:0 0 45px;height:45px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#203342;color:#fff;font-size:24px;font-weight:700}.brand-product:nth-child(2) .brand-product-mark{background:#176698}.brand-product h3{margin-bottom:10px}.brand-product p{margin-bottom:18px}
.brand-catalog{padding:30px 0;background:#fff}.brand-catalog details{border:1px solid #c7d9e4;border-radius:4px}.brand-catalog summary{cursor:pointer;padding:20px 24px;font-size:16px;font-weight:700;color:#203342}.brand-catalog-body{max-width:100%;overflow:hidden}.brand-catalog-body>.container{width:auto;max-width:100%}.brand-catalog-body section{padding:30px 0}
.brand-button:focus-visible,.brand-link:focus-visible,.brand-hero-ai:focus-visible,.brand-case-image:focus-visible,.brand-catalog summary:focus-visible{outline:3px solid #ef7b00;outline-offset:5px}
@media(min-width:1600px){.brand-hero{padding:38px 0 34px!important}}
@media(max-width:1199px){.brand-hero-grid{gap:35px}.brand-hero h1{font-size:43px}.brand-workspace{padding:18px}.brand-partner-grid{gap:50px}.brand-case-body{padding:20px}}
@media(max-width:991px){.brand-hero-grid{grid-template-columns:1fr 1fr;gap:25px}.brand-hero h1{font-size:36px}.brand-lead{font-size:15px}.brand-workspace{transform:none;padding:15px}.brand-system{padding:13px 10px;gap:10px}.brand-system strong{font-size:14px}.brand-system div>span{font-size:11px}.brand-section{padding:58px 0}.brand-section h2{font-size:31px}.brand-three-grid{gap:18px}.brand-section h3{font-size:21px}.brand-product{padding:23px;gap:15px}.brand-product-mark{flex-basis:36px;height:36px;font-size:20px}.brand-section-heading{align-items:flex-start}}
@media(max-width:767px){.brand-hero{padding:38px 0 36px!important}.brand-hero-grid{display:block}.brand-hero h1{font-size:36px;line-height:1.15;letter-spacing:-1px;max-width:560px}.brand-lead{font-size:16px;line-height:1.7}.brand-workspace{display:none}.brand-actions{gap:18px}.brand-button{font-size:13px;padding:15px 17px}.brand-hero-ai{margin-top:20px}.brand-section{padding:46px 0}.brand-section h2{font-size:30px;margin-bottom:28px}.brand-three-grid,.brand-two-grid,.brand-partner-grid{grid-template-columns:1fr;gap:26px}.brand-need{padding-top:18px}.brand-need p{min-height:0;margin-bottom:15px}.brand-index{margin-bottom:13px}.brand-section-heading{display:block;margin-bottom:25px}.brand-section-heading h2{margin-bottom:18px}.brand-case-image{aspect-ratio:1.8}.brand-case-body{padding:24px}.brand-partner-grid{gap:32px}.brand-product{padding:24px}.brand-principles>div:last-child{margin-bottom:0}.brand-catalog summary{font-size:14px;padding:18px}.brand-eyebrow{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.brand-button{transition:none}}
/* Bootstrap clearfix pseudo-elements must not become CSS grid items. */
.brand-hero-grid:before,.brand-hero-grid:after,.brand-partner-grid:before,.brand-partner-grid:after{display:none!important}
.brand-catalog .wow{visibility:visible!important;animation:none!important}
.site-consolidated .brand-hero .brand-eyebrow{font-size:11px!important;line-height:1.6!important;letter-spacing:1.8px}
@media(max-width:991px){.brand-workspace{display:none}.brand-hero-grid{display:block}.brand-hero{padding:30px 0!important}.brand-hero-ai{display:none}.site-consolidated .brand-hero h1{font-size:34px;line-height:1.15;max-width:800px;margin-bottom:16px}.brand-lead{font-size:15px!important;line-height:1.65!important;margin-bottom:20px}.brand-hero .brand-eyebrow{margin-bottom:12px!important}.brand-actions{gap:14px}}
@media(max-width:767px){.site-consolidated .brand-hero h1{font-size:29px;line-height:1.18}.brand-hero{padding:48px 0 8px!important}.brand-button{padding:14px 16px}.brand-hero .brand-eyebrow{display:none}}
/* Structured brand visual. Only the existing logo is an image; rings, dots and links are DOM/CSS. */
.brand-orbit{height:428px;width:100%;max-width:480px;margin:0 auto;position:relative;isolation:isolate;perspective:800px}
.brand-orbit-stage{position:absolute;inset:0;transform:translate(var(--orbit-x,0px),var(--orbit-y,0px)) rotateX(var(--orbit-rx,0deg)) rotateY(var(--orbit-ry,0deg));transition:transform .35s ease-out;transform-style:preserve-3d}
.brand-orbit-arc{position:absolute;left:-22px;top:55px;width:260px;height:260px;border:1px solid #355970;border-radius:50%;pointer-events:none}
.brand-orbit-ring{position:absolute;left:50%;top:49%;border:1px solid #547789;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.brand-orbit-ring-outer{width:342px;height:342px}.brand-orbit-ring-inner{width:266px;height:266px;border-color:#416174}
.brand-orbit-track{position:absolute;inset:-1px;border-radius:50%;animation:brand-orbit-turn 40s linear infinite;animation-play-state:paused}
.brand-orbit-ring-inner .brand-orbit-track{animation-duration:55s;animation-direction:reverse}
.brand-orbit-dot{position:absolute;left:50%;top:0;width:9px;height:9px;border-radius:50%;background:#ff852b;box-shadow:0 0 0 5px #203342;transform:translate(-50%,-50%)}
.brand-orbit-ring-inner .brand-orbit-dot{width:7px;height:7px;background:#7acded}
.brand-orbit[data-motion="running"] .brand-orbit-track{animation-play-state:running}
.brand-orbit:hover .brand-orbit-track,.brand-orbit:focus-within .brand-orbit-track{animation-play-state:paused}
.brand-orbit-core{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);pointer-events:none}
.brand-orbit-core img{display:block;width:240px;max-width:none;height:auto}
.brand-orbit-pill{position:absolute;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;background:#263f50;border:1px solid #58798b;border-radius:24px;color:#e4f2f8;font-size:12px;line-height:1.5;font-weight:500;text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s}
.brand-orbit-software{left:4%;top:10%}.brand-orbit-cloud{right:0;top:65%}.brand-orbit-ai{left:10%;bottom:49px}
.brand-orbit-pill:hover{color:#fff;background:#31576c;border-color:#87d2f1;transform:translateY(-2px);text-decoration:none}
.brand-orbit-pill:focus-visible{outline:3px solid #ff913c;outline-offset:5px;color:#fff}
.brand-orbit:focus-within .brand-orbit-stage{transform:none}
.brand-orbit-note{position:absolute;left:0;right:0;bottom:8px;text-align:center;color:#a5cddd;font-size:9px;font-weight:500;line-height:1.6;letter-spacing:1.1px;text-transform:uppercase}


@keyframes brand-orbit-turn{from{transform:rotate(35deg)}to{transform:rotate(395deg)}}
@media(min-width:992px) and (max-width:1199px){.brand-orbit-ring-outer{width:300px;height:300px}.brand-orbit-ring-inner{width:238px;height:238px}.brand-orbit-core img{width:215px}.brand-orbit-pill{font-size:11px;padding:10px 13px}.brand-orbit-software{left:0}.brand-orbit-ai{left:4%}.brand-orbit-note{letter-spacing:.7px;font-size:8px}}
@media(max-width:991px){.brand-orbit{display:none}}
@media(prefers-reduced-motion:reduce){.brand-orbit-track{animation:none!important}.brand-orbit-stage{transform:none!important;transition:none}.brand-orbit-pill{transition:none}}
/* Keep the pause control below the existing two-row navigation on small desktops. */
@media(min-width:992px) and (max-width:1199px){.brand-orbit{height:423px}}
