/* ===== Innovize service-page design (SD) — ported from design build 3-7 ===== */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800&family=Newsreader:ital,wght@1,400&family=IBM+Plex+Mono:wght@400;500&display=swap');

/* section shells */
.sd-sec{padding-top:clamp(56px,8vw,112px) !important;padding-bottom:clamp(56px,8vw,112px) !important;background:#FAFAFA;}
.sd-sec > .e-con-inner{max-width:1320px !important;width:100% !important;margin-inline:auto !important;padding-inline:clamp(20px,5vw,64px) !important;display:block !important;}
.sd-sec, .sd-sec *{font-family:'Archivo',system-ui,sans-serif;color:#0A0A0A;box-sizing:border-box;}
.sd-sec ul, .sd-sec ol{list-style:none;margin:0;padding:0;}
.sd-sec a{text-decoration:none;}
.sd-hero{padding-top:clamp(48px,7vw,96px) !important;padding-bottom:clamp(40px,5vw,72px) !important;}
.sd-overview{padding-top:0 !important;}
.sd-pairs{padding-top:0 !important;padding-bottom:clamp(40px,6vw,80px) !important;}
.sd-guide, .sd-who{background:#FFFFFF;}
.sd-sec .serif{font-family:'Newsreader',Georgia,serif !important;font-style:italic;font-weight:400;}

/* shared text */
.sd-sec .eyebrow{font-family:'IBM Plex Mono',monospace !important;font-size:12px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:#71717A !important;display:inline-flex;align-items:center;gap:16px;margin:0 0 8px;}
.sd-sec .eyebrow::before{content:"";width:28px;height:1px;background:#E8431F;}
.sd-sec .lead{font-size:clamp(18px,2.2vw,23px);line-height:1.5;font-weight:400;color:#0A0A0A;max-width:52ch;margin:0;}
.sd-sec .muted, .sd-sec .muted *{color:#71717A !important;}
.sd-sec .text-max{max-width:60ch;}
.sd-sec p.muted{font-size:16px;line-height:1.6;margin:0;}

/* hero */
.sd-crumb p, .sd-crumb{font-family:'IBM Plex Mono',monospace !important;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#A1A1AA !important;margin:0 0 32px;}
.sd-crumb a{color:#71717A !important;}
.sd-crumb b{color:#0A0A0A;font-weight:500;}
.sd-h1 .elementor-heading-title{font-family:'Archivo',sans-serif !important;font-weight:800 !important;font-size:clamp(44px,9vw,124px) !important;line-height:0.9 !important;letter-spacing:-0.03em !important;color:#0A0A0A !important;}
.sd-h1 .elementor-heading-title .serif{font-weight:400 !important;}
.sd-lead{margin-top:32px;}
.sd-lead .lead{max-width:56ch;}
.sd-actions .hero__actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:40px;}
.sd-sec .btn{display:inline-flex;align-items:center;gap:16px;padding:16px 26px;border:1px solid #0A0A0A;background:#0A0A0A;color:#FAFAFA !important;font-family:'IBM Plex Mono',monospace !important;font-size:13px;font-weight:500;letter-spacing:0.04em;text-transform:uppercase;transition:all .18s ease;}
.sd-sec .btn--accent{background:#E8431F;border-color:#E8431F;color:#0A0A0A !important;}
.sd-sec .btn--accent:hover{background:transparent;color:#0A0A0A !important;border-color:#0A0A0A;}
.sd-sec .btn--ghost{background:transparent;border-color:#D4D4D8;color:#0A0A0A !important;}
.sd-sec .btn--ghost:hover{background:#0A0A0A;color:#FAFAFA !important;border-color:#0A0A0A;}
.sd-sec .arrow{display:inline-block;transition:transform .18s ease;}
.sd-sec .btn:hover .arrow{transform:translateX(4px);}

/* overview */
.sd-overview-body .lead{margin:16px 0 20px;}

/* section heads (heading widget + sub) */
.sd-sec-title .elementor-heading-title{font-family:'Archivo',sans-serif !important;font-weight:800 !important;font-size:clamp(30px,4.6vw,60px) !important;line-height:1 !important;letter-spacing:-0.03em !important;color:#0A0A0A !important;}
.sd-sec-title .elementor-heading-title .serif{font-weight:400 !important;}
.sd-sec-sub{margin:16px 0 clamp(32px,5vw,64px);}

/* guide two-col */
.sd-guide-cols{display:grid !important;grid-template-columns:1fr;gap:48px;}
@media(min-width:880px){.sd-guide-cols{grid-template-columns:230px 1fr !important;gap:96px;}}
.sd-guide-toc .legal__toc{display:grid;gap:12px;border-top:1px solid #0A0A0A;padding-top:24px;}
@media(min-width:880px){.sd-guide-toc{position:sticky;top:100px;align-self:start;}}
.sd-guide-toc .legal__toc-label{font-family:'IBM Plex Mono',monospace !important;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:#A1A1AA;margin-bottom:8px;display:block;}
.sd-guide-toc a{font-family:'IBM Plex Mono',monospace !important;font-size:12.5px;letter-spacing:0.03em;color:#71717A !important;transition:color .18s ease;display:block;}
.sd-guide-toc a:hover{color:#0A0A0A !important;}
.sd-guide-toc .pillar-toc__num{color:#A1A1AA;}
.sd-guide-body h2{font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(21px,3vw,30px);letter-spacing:-0.02em;margin:clamp(48px,7vw,96px) 0 24px;scroll-margin-top:100px;}
.sd-guide-body h2:first-of-type{margin-top:0;}
.sd-guide-body .pillar-kicker{display:block;font-family:'IBM Plex Mono',monospace !important;font-size:12px;font-weight:400;letter-spacing:0.06em;text-transform:uppercase;color:#E8431F;margin-bottom:8px;}
.sd-guide-body p{color:#71717A;margin:0 0 16px;max-width:74ch;font-size:16px;line-height:1.65;}
.sd-guide-body .pillar-lead{font-size:clamp(18px,2.1vw,21px);line-height:1.5;color:#0A0A0A;}
.sd-guide-body ul{display:grid;gap:8px;margin:0 0 24px;}
.sd-guide-body li{position:relative;padding-left:24px;color:#71717A;max-width:72ch;font-size:16px;line-height:1.6;}
.sd-guide-body li::before{content:"\2014";position:absolute;left:0;color:#E8431F;}
.sd-guide-body strong, .sd-guide-body b{color:#0A0A0A;font-weight:600;}
.sd-guide-body a{color:#0A0A0A !important;background-image:linear-gradient(#E8431F,#E8431F);background-size:100% 1px;background-position:0 100%;background-repeat:no-repeat;}
.sd-guide-body .takeaways{border:1px solid #0A0A0A;padding:clamp(22px,3vw,36px);margin:0 0 clamp(32px,5vw,48px);}
.sd-guide-body .takeaways__label{font-family:'IBM Plex Mono',monospace !important;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:#A1A1AA;margin-bottom:24px;}
.sd-guide-body .takeaways ul{gap:16px;margin:0;}
.sd-guide-body .takeaways li{padding-left:32px;color:#0A0A0A;}
.sd-guide-body .takeaways li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;background:#E8431F;}
.sd-guide-body .pillar-figure{display:flex;flex-wrap:wrap;gap:48px;border-top:1px solid #E5E5E5;border-bottom:1px solid #E5E5E5;padding:32px 0;margin:32px 0;}
.sd-guide-body .pillar-figure div{display:grid;gap:4px;}
.sd-guide-body .pillar-figure b{font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(28px,4vw,42px);letter-spacing:-0.03em;line-height:1;}
.sd-guide-body .pillar-figure span{font-family:'IBM Plex Mono',monospace !important;font-size:12px;letter-spacing:0.04em;text-transform:uppercase;color:#71717A;}

/* includes + who lists */
.sd-includes-list .includes{border-top:1px solid #0A0A0A;}
.sd-includes-list .includes li{display:grid;grid-template-columns:1fr;gap:8px 48px;padding:32px 0;border-bottom:1px solid #E5E5E5;align-items:baseline;}
@media(min-width:720px){.sd-includes-list .includes li{grid-template-columns:0.6fr 1.4fr;gap:48px;}}
.sd-includes-list .includes__k{font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(19px,2.2vw,24px);letter-spacing:-0.02em;}
.sd-includes-list .includes__v{color:#71717A;max-width:60ch;font-size:16px;line-height:1.6;}
.sd-includes-list .includes__v b{color:#0A0A0A;font-weight:600;}
.sd-who-list .value-list{border-top:1px solid #0A0A0A;}
.sd-who-list .value-list li{display:grid;grid-template-columns:1fr;border-bottom:1px solid #E5E5E5;padding:32px 0;gap:16px;}
@media(min-width:720px){.sd-who-list .value-list li{grid-template-columns:0.5fr 1.5fr;gap:48px;align-items:baseline;}}
.sd-who-list .value-list__k{font-family:'Newsreader',Georgia,serif !important;font-style:italic;font-size:22px;color:#0A0A0A;}
.sd-who-list .value-list__v{color:#71717A;max-width:60ch;font-size:16px;line-height:1.6;}

/* process */
.sd-process-list .process{display:grid;grid-template-columns:1fr;border-top:1px solid #0A0A0A;border-left:1px solid #E5E5E5;counter-reset:none;}
@media(min-width:880px){.sd-process-list .process{grid-template-columns:repeat(4,1fr);}}
.sd-process-list .process__step{position:relative;overflow:hidden;padding:48px 32px 64px;border-right:1px solid #E5E5E5;border-bottom:1px solid #E5E5E5;min-height:280px;display:flex;flex-direction:column;transition:background .18s ease;}
.sd-process-list .process__step:hover{background:#FFFFFF;}
.sd-process-list .process__ghost{position:absolute;right:-8px;bottom:-38px;font-family:'Archivo',sans-serif;font-weight:800;font-size:190px;line-height:1;color:#F0EFEC;z-index:0;pointer-events:none;letter-spacing:-0.04em;}
.sd-process-list .process__label{position:relative;z-index:1;font-family:'IBM Plex Mono',monospace !important;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#E8431F;margin-bottom:24px;}
.sd-process-list .process__name{position:relative;z-index:1;font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(20px,2vw,26px);letter-spacing:-0.02em;margin:0 0 16px;}
.sd-process-list .process__text{position:relative;z-index:1;color:#71717A;font-size:15px;line-height:1.6;margin:0;}
.sd-stats .stats{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #0A0A0A;margin-top:64px;}
@media(min-width:720px){.sd-stats .stats{grid-template-columns:repeat(4,1fr);}}
.sd-stats .stat{padding:32px 24px 32px 0;border-bottom:1px solid #E5E5E5;}
.sd-stats .stat__num{font-family:'Archivo',sans-serif;font-weight:700;font-size:clamp(34px,5vw,54px);letter-spacing:-0.03em;line-height:1;}
.sd-stats .stat__num small{font-size:0.5em;color:#E8431F;vertical-align:super;}
.sd-stats .stat__label{margin-top:16px;font-family:'IBM Plex Mono',monospace !important;font-size:12px;text-transform:uppercase;letter-spacing:0.06em;color:#71717A;}

/* faq */
.sd-faq-list .faq{border-top:1px solid #0A0A0A;}
.sd-faq-list details{border-bottom:1px solid #E5E5E5;}
.sd-faq-list summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:32px 0;font-family:'Archivo',sans-serif;font-weight:600;font-size:clamp(18px,2.4vw,25px);letter-spacing:-0.02em;line-height:1.15;transition:color .18s ease;}
.sd-faq-list summary::-webkit-details-marker{display:none;}
.sd-faq-list summary::after{content:"+";font-family:'IBM Plex Mono',monospace;font-weight:400;font-size:26px;line-height:1;color:#E8431F;flex:none;}
.sd-faq-list details[open] summary::after{content:"\2013";}
.sd-faq-list summary:hover{color:#E8431F;}
.sd-faq-list .faq__a{padding:0 0 32px;color:#71717A;max-width:72ch;font-size:16px;line-height:1.65;margin:0;}

/* related */
.sd-related-list .related-grid{display:grid;gap:0;border-top:1px solid #0A0A0A;}
.sd-related-list .related-row{display:grid;grid-template-columns:1fr;gap:8px 48px;align-items:baseline;padding:32px 8px;border-bottom:1px solid #E5E5E5;transition:background .18s ease,padding .18s ease;}
@media(min-width:720px){.sd-related-list .related-row{grid-template-columns:auto 1fr auto;gap:48px;align-items:center;}}
.sd-related-list .related-row:hover{background:#FFFFFF;padding-inline:24px;}
.sd-related-list .related-row__cat{font-family:'IBM Plex Mono',monospace !important;font-size:12px;letter-spacing:0.05em;text-transform:uppercase;color:#E8431F;white-space:nowrap;}
.sd-related-list .related-row__title{font-family:'Archivo',sans-serif;font-weight:600;font-size:clamp(17px,2.2vw,23px);letter-spacing:-0.02em;line-height:1.15;color:#0A0A0A;}
.sd-related-list .related-row__arrow{font-family:'IBM Plex Mono',monospace;transition:transform .18s ease;}
.sd-related-list .related-row:hover .related-row__arrow{transform:translateX(5px);color:#E8431F;}

/* pairs */
.sd-pairs-body .pairs{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px;}
.sd-pairs-body .pairs a{font-family:'IBM Plex Mono',monospace !important;font-size:12.5px;letter-spacing:0.04em;text-transform:uppercase;padding:11px 16px;border:1px solid #D4D4D8;color:#0A0A0A !important;display:inline-flex;align-items:center;gap:10px;transition:all .18s ease;}
.sd-pairs-body .pairs a:hover{background:#0A0A0A;color:#FAFAFA !important;border-color:#0A0A0A;}
.sd-pairs-body .pairs a:hover .arrow{transform:translateX(4px);}

/* cta band */
.sd-cta{background:#0A0A0A !important;padding-top:clamp(64px,10vw,140px) !important;padding-bottom:clamp(64px,10vw,140px) !important;}
.sd-cta *{color:#FAFAFA;}
.sd-cta .eyebrow{color:#A1A1AA !important;}
.sd-cta-h .elementor-heading-title{font-family:'Archivo',sans-serif !important;font-weight:800 !important;font-size:clamp(38px,7vw,100px) !important;line-height:0.95 !important;letter-spacing:-0.03em !important;color:#FAFAFA !important;margin:24px 0 !important;}
.sd-cta-h .elementor-heading-title .serif{font-weight:400 !important;color:#FAFAFA !important;}
.sd-cta-row .cta-band__row{display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between;}
.sd-cta-row p{color:#A1A1AA !important;font-size:16px;max-width:40ch;margin:0;}
.sd-cta .btn--inverse{background:#FAFAFA;border-color:#FAFAFA;color:#0A0A0A !important;}
.sd-cta .btn--inverse:hover{background:transparent;color:#FAFAFA !important;}
