/* Optima Services Hub, using global design tokens. */
.odsp-page{overflow:clip;background:var(--od-color-surface);}
.odsp-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 19px;font-size:11px;font-weight:850;line-height:1.4;letter-spacing:.2em;text-transform:uppercase;}
.odsp-eyebrow::before{content:"";display:block;width:21px;height:3px;background:var(--od-color-accent);flex:none;}
.odsp-hero{position:relative;isolation:isolate;background:var(--od-color-primary);color:#fff;overflow:hidden;}
.odsp-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#171b1efc 0%,#171b1ef0 32%,#171b1eb0 60%,#171b1e3b 100%);}
.odsp-hero-media{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center 48%;}
.odsp-hero-inner{display:flex;align-items:center;min-height:clamp(370px,38vw,540px);padding-block:var(--od-section-space,96px);}
.odsp-hero-copy{max-width:min(750px,72%);}
.odsp-hero h1{max-width:13ch;margin:0 0 22px;font-weight:850;font-size:var(--od-h1,clamp(40px,5vw,72px));letter-spacing:-.05em;line-height:1.02;overflow-wrap:normal;text-wrap:balance;}
.odsp-hero-lead{max-width:530px;margin:0 0 30px;font-size:clamp(15px,1.4vw,18px);line-height:1.65;color:#e2e6e6;}
.odsp-catalogue{background:var(--od-color-alt);padding-block:var(--od-section-space,96px);}
.odsp-catalogue-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(30px,6vw,95px);align-items:end;margin-bottom:clamp(28px,4vw,52px);}
.odsp-catalogue-intro h2{max-width:21ch;font-size:var(--od-h2,clamp(30px,3.4vw,48px));font-weight:850;line-height:1.04;letter-spacing:-.045em;margin:0;text-wrap:balance;overflow-wrap:normal;}
.odsp-catalogue-intro>p{font-size:clamp(15px,1.3vw,18px);line-height:1.65;max-width:500px;color:#526069;margin:0 0 3px;}
.odsp-demo-notice{display:inline-block;color:#5c5141;font-size:12px;background:#fff1df;border:1px solid #e8d5b5;border-radius:4px;padding:7px 12px;margin:0 0 19px;}
.odsp-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--od-grid-gap,24px);align-items:stretch;}
.odsp-card{display:flex;flex-direction:column;min-width:0;min-height:330px;overflow:hidden;border:1px solid var(--od-color-border);border-radius:var(--od-card-radius);background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s;}
.odsp-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--od-color-accent) 36%,var(--od-color-border));box-shadow:0 15px 35px #0e1a2015;}
.odsp-card-media{position:relative;aspect-ratio:16/10;margin:0;background:#20272b;overflow:hidden;}
.odsp-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0003,transparent 50%);pointer-events:none;}
.odsp-card-img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.odsp-card:hover .odsp-card-img{transform:scale(1.035);}
.odsp-card-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:clamp(22px,2.2vw,32px);}
.odsp-card-mark{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;color:var(--od-color-accent);margin-bottom:17px;font-size:15px;font-weight:850;}
.odsp-card-mark .odg-icon{width:28px;height:28px;}
.odsp-card h3{font-size:var(--od-h3,clamp(20px,2vw,26px));line-height:1.14;margin:0 0 12px;font-weight:850;letter-spacing:-.035em;overflow-wrap:normal;text-wrap:balance;}
.odsp-card p{font-size:14px;color:#4e5c62;line-height:1.62;margin:0 0 24px;}
.odsp-card-link{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:auto;width:100%;padding-top:15px;border-top:1px solid var(--od-color-border);color:var(--od-color-primary);font-size:12px;letter-spacing:.03em;font-weight:850;text-transform:uppercase;}
.odsp-card-link:hover{color:var(--od-color-accent);}
.odsp-card-link>span:last-child{font-size:22px;line-height:1;color:var(--od-color-accent);}
.odsp-card--icon{background:#fff;}
.odsp-card--icon .odsp-card-content{padding:clamp(27px,2.6vw,38px);}
.odsp-card--icon .odsp-card-mark{width:62px;height:62px;border:1px solid color-mix(in srgb,var(--od-color-accent) 28%,transparent);background:color-mix(in srgb,var(--od-color-accent) 7%,white);border-radius:10px;margin-bottom:28px;}
.odsp-card--icon .odsp-card-mark .odg-icon{width:32px;height:32px;}
.odsp-card--minimal{background:transparent;min-height:300px;}
.odsp-card--minimal .odsp-card-content{padding:clamp(27px,2.6vw,38px);}
.odsp-card--minimal .odsp-card-mark{font-size:13px;letter-spacing:.08em;margin-bottom:37px;color:var(--od-color-accent);justify-content:flex-start;}
.odsp-card--minimal h3{max-width:15ch;font-size:var(--od-h3,clamp(20px,2vw,26px));}
.odsp-card--photo .odsp-card-mark{margin-bottom:9px;min-width:24px;height:24px;}
.odsp-card--photo .odsp-card-mark .odg-icon{width:23px;height:23px;}
.odsp-empty{padding:26px;border:1px dashed var(--od-color-border);}
.odsp-bottom-cta{background:var(--od-color-primary);color:#fff;padding-block:var(--od-section-space,96px);}
.odsp-cta-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.6fr);gap:clamp(25px,5vw,80px);align-items:center;}
.odsp-bottom-cta h2{max-width:24ch;margin:0 0 17px;font-size:var(--od-h2,clamp(30px,3.4vw,48px));line-height:1.08;letter-spacing:-.035em;overflow-wrap:normal;text-wrap:balance;}
.odsp-bottom-cta p:not(.odsp-eyebrow){max-width:570px;margin:0;color:#cbd0d2;}
.odsp-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:17px;}
.odsp-cta-phone{color:#fff;font-size:clamp(16px,1.8vw,23px);font-weight:750;}
.odsp-cta-phone:hover{color:var(--od-color-accent);}
@media(max-width:1100px){.odsp-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.odsp-hero-copy{max-width:80%;}}
@media(max-width:767px){.odsp-hero-inner{min-height:390px;padding-block:var(--od-section-space-mobile,56px);}.odsp-hero::before{background:linear-gradient(90deg,#171b1efb 0%,#171b1ee6 58%,#171b1e77 100%);}.odsp-hero-copy{max-width:100%;}.odsp-hero h1{max-width:13ch;}.odsp-catalogue{padding-block:var(--od-section-space-mobile,56px);}.odsp-catalogue-intro{grid-template-columns:1fr;gap:15px;margin-bottom:30px;}.odsp-catalogue-intro h2{max-width:23ch;}.odsp-cta-grid{grid-template-columns:1fr;gap:28px;}.odsp-bottom-cta{padding-block:var(--od-section-space-mobile,56px);}.odsp-cta-actions{width:100%;}.odsp-cta-actions .od-btn{width:100%;}}
@media(max-width:520px){.odsp-card-grid{grid-template-columns:1fr;gap:16px;}.odsp-card{min-height:0;}.odsp-card--minimal,.odsp-card--icon{min-height:260px;}.odsp-hero h1{font-size:var(--od-h1,clamp(40px,5vw,72px));}.odsp-hero-lead{max-width:28ch;}.odsp-catalogue-intro h2{overflow-wrap:break-word;}}
