
:root{
  --blue-deep:#2a317b; --blue:#237fbd; --sky:#23a5db; --sky-soft:#dff2fb; --paper:#f8fdff;
  --ink:#18233b; --muted:#617087; --card:#151e2c; --line:rgba(42,49,123,.14);
  --ui:"Roboto", Arial, sans-serif; --copy:"Roboto Slab", Georgia, serif; --radius:24px;
  --shadow:0 24px 62px rgba(22,35,76,.16);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ui);font-synthesis:none;overflow-x:hidden} img{display:block;max-width:100%} a{text-decoration:none;color:inherit} button,input,textarea,select{font:inherit}.container{width:min(1170px,calc(100% - 48px));margin:0 auto}.skip{position:absolute;left:15px;top:-100px;z-index:200;background:#fff;color:var(--blue-deep);padding:12px 15px;border-radius:10px;font-weight:700}.skip:focus{top:15px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(19,28,42,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)}.nav{height:78px;display:flex;align-items:center;gap:32px}.brand{display:block;width:188px;flex:0 0 auto}.brand img{width:100%;height:auto}.nav-links{display:flex;align-items:center;gap:27px;margin-left:auto}.nav-links a{position:relative;color:#fff;font-weight:700;font-size:.91rem;letter-spacing:.005em;padding:9px 0}.nav-links a:not(.nav-cta):after{content:"";position:absolute;height:2px;left:0;right:0;bottom:0;background:var(--sky);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.nav-links a:not(.nav-cta):hover:after,.nav-links a:not(.nav-cta):focus-visible:after{transform:scaleX(1)}.nav-cta{padding:12px 15px!important;border-radius:9px;background:var(--sky);transition:transform .2s ease,background .2s ease}.nav-cta:hover{transform:translateY(-2px);background:#38afe1}.menu{display:none;margin-left:auto;border:0;background:transparent;width:44px;height:44px;border-radius:10px;cursor:pointer}.menu span{height:2px;background:#fff;display:block;margin:5px 7px;border-radius:3px;transition:.25s}.menu.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu.open span:nth-child(2){opacity:0}.menu.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hero{position:relative;min-height:720px;overflow:hidden;color:#fff;background:radial-gradient(circle at 82% 14%,rgba(35,165,219,.26),transparent 27%),radial-gradient(circle at 5% 96%,rgba(80,141,255,.16),transparent 30%),linear-gradient(123deg,#1f2868 0%,var(--blue-deep) 53%,#207eb8 100%)}.hero:before{content:"";position:absolute;inset:0;opacity:.44;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 80%)}.hero-grid{position:relative;z-index:1;min-height:720px;display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:70px;padding:75px 0 92px}.eyebrow{display:flex;gap:10px;align-items:center;margin:0 0 17px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700}.eyebrow:before{content:"";display:block;width:31px;height:2px;background:var(--sky)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--ui);font-weight:700;letter-spacing:-.012em}.hero h1{font-size:clamp(3.15rem,5.25vw,6rem);line-height:1.04;max-width:720px;margin:0 0 23px}.hero h1 em{color:var(--sky);font-style:normal}.hero-copy{font-family:var(--copy);font-size:1.05rem;line-height:1.74;color:rgba(255,255,255,.84);max-width:610px;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.btn{min-height:54px;border-radius:11px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;font-size:.9rem;letter-spacing:.01em;font-weight:700;transition:transform .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--sky);color:#fff}.btn-primary:hover{background:#3eb2e4}.btn-light{border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.07);color:#fff}.btn-light:hover{background:rgba(255,255,255,.14);border-color:#fff}.hero-meta{display:flex;gap:20px 37px;flex-wrap:wrap;margin-top:42px}.hero-meta strong{display:block;font-size:.9rem}.hero-meta span{display:block;margin-top:3px;font-family:var(--copy);font-size:.75rem;color:rgba(255,255,255,.61)}.hero-visual{position:relative;min-height:555px}.hero-visual:before{content:"";position:absolute;inset:26px -30px -27px 47px;border-radius:32px;opacity:.75;transform:rotate(4deg);background:linear-gradient(140deg,var(--sky),rgba(35,165,219,.06))}.hero-image{position:absolute;inset:0;border-radius:27px;overflow:hidden;background:#0d1830;box-shadow:var(--shadow)}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,42,.05),rgba(10,20,42,.58))}.hero-chip{position:absolute;z-index:2;top:20px;right:20px;display:flex;align-items:center;gap:8px;background:rgba(17,28,55,.78);backdrop-filter:blur(13px);padding:10px 12px;border-radius:999px;font-size:.73rem;font-weight:700}.hero-chip:before{content:"";width:8px;height:8px;border-radius:50%;background:#55d3ff;box-shadow:0 0 0 5px rgba(85,211,255,.18);animation:pulse 2.7s infinite}.hero-note{position:absolute;z-index:2;left:-31px;bottom:36px;width:min(270px,67%);padding:17px 19px;border-radius:15px;background:rgba(248,253,255,.97);color:var(--ink);box-shadow:0 18px 32px rgba(10,17,53,.25)}.hero-note small{display:block;color:var(--blue);font-size:.67rem;letter-spacing:.13em;font-weight:700;margin-bottom:6px}.hero-note strong{font-size:1.02rem;line-height:1.28}.client-strip{margin-top:56px;padding:32px 0 0;border-top:1px solid var(--line);overflow:hidden}.strip-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:20px}.strip-title{color:var(--blue-deep);text-transform:uppercase;font-size:.74rem;font-weight:700;letter-spacing:.11em}.strip-title span{color:#7a899d;font-weight:500;letter-spacing:.04em;text-transform:none}.strip-note{font-family:var(--copy);font-size:.74rem;color:var(--muted);margin:0;text-align:right}.marquee{display:flex;gap:18px;width:max-content;animation:marquee 32s linear infinite}.marquee:hover{animation-play-state:paused}.logo-chip{height:58px;min-width:164px;display:grid;place-items:center;padding:0 18px;border:1px solid rgba(42,49,123,.12);border-radius:10px;background:linear-gradient(135deg,#fff,#f0f9fd);color:rgba(42,49,123,.72);font-size:.8rem;font-weight:700;letter-spacing:.13em}.logo-chip:nth-child(3n){color:rgba(35,165,219,.9)}
.section{padding:120px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head h2{font-size:clamp(2.12rem,3.75vw,4rem);line-height:1.1;max-width:760px;margin:0}.section-head p{font-family:var(--copy);font-size:.98rem;line-height:1.72;max-width:390px;color:var(--muted);margin:0}.services{background:#fff}.services-grid{display:grid;grid-template-columns:1.08fr repeat(2,1fr);grid-auto-rows:230px;gap:18px}.service-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;border-radius:16px;overflow:hidden;background:var(--card);color:#fff;min-width:0;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 32px rgba(20,30,54,.16)}.service-card.featured{grid-row:span 2;justify-content:space-between;background:linear-gradient(145deg,#238ed2,#23a5db)}.service-card .icon{width:54px;height:54px;margin-bottom:auto;color:var(--sky)}.service-card.featured .icon{color:#fff}.service-card svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-size:1.32rem;line-height:1.22;margin:17px 0 10px}.service-card p{font-family:var(--copy);font-size:.84rem;line-height:1.67;margin:0;color:rgba(255,255,255,.73);max-width:350px}.service-card.featured p{color:rgba(255,255,255,.88)}.service-card:after{content:"+";position:absolute;right:20px;bottom:18px;color:var(--sky);font-size:1.8rem;font-weight:400;line-height:1}.service-card.featured:after{color:rgba(255,255,255,.68)}
.focus{background:var(--paper)}.focus-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:90px;align-items:center}.focus-image{position:relative;min-height:490px}.focus-image:before{content:"";position:absolute;inset:36px 44px -28px -24px;border-radius:22px;background:linear-gradient(135deg,rgba(35,165,219,.3),rgba(42,49,123,.08));transform:rotate(-3deg)}.focus-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:22px;box-shadow:var(--shadow)}.focus h2{font-size:clamp(2.05rem,3.55vw,3.9rem);line-height:1.11;margin:0 0 20px}.focus p{font-family:var(--copy);font-size:1rem;line-height:1.76;color:#425169;margin:0 0 28px}.feature-list{display:grid;gap:15px;margin:0;padding:0;list-style:none}.feature-list li{display:grid;grid-template-columns:35px 1fr;gap:13px;padding-top:15px;border-top:1px solid var(--line)}.feature-list b{color:var(--blue-deep);font-size:.9rem}.feature-list span{font-family:var(--copy);font-size:.85rem;color:var(--muted);line-height:1.64}.feature-list .mark{width:28px;height:28px;border-radius:50%;background:var(--sky-soft);display:grid;place-items:center;color:var(--blue);font-weight:700}
.process{padding:110px 0;background:var(--blue-deep);color:#fff}.process .section-head h2{max-width:670px}.process .section-head p{color:rgba(255,255,255,.68)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.process-card{border-top:1px solid rgba(255,255,255,.28);padding-top:22px}.process-card .step{color:var(--sky);font-size:.8rem;font-weight:700;letter-spacing:.1em}.process-card h3{font-size:1.31rem;margin:22px 0 10px}.process-card p{font-family:var(--copy);font-size:.87rem;line-height:1.68;color:rgba(255,255,255,.72);margin:0}.review-band{padding:112px 0;background:#fff}.review-intro{text-align:center;max-width:720px;margin:0 auto 42px}.review-intro h2{font-size:clamp(2.08rem,3.5vw,3.8rem);line-height:1.1;margin:0 0 16px}.review-intro p{font-family:var(--copy);line-height:1.7;color:var(--muted);margin:0}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.review{padding:28px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#fff,#f8fcff)}.review blockquote{margin:0 0 22px;font-family:var(--copy);font-size:.98rem;line-height:1.72;color:#344258}.review cite{font-style:normal;color:var(--blue-deep);font-size:.76rem;font-weight:700;letter-spacing:.04em}.review-actions{text-align:center;margin-top:30px}.text-button{display:inline-flex;align-items:center;gap:10px;color:var(--blue-deep);font-size:.9rem;font-weight:700}.text-button span{font-size:1.2rem;transition:transform .2s}.text-button:hover span{transform:translateX(4px)}
.contact{position:relative;overflow:hidden;padding:120px 0 100px;background:linear-gradient(130deg,#1c276e 0%,var(--blue-deep) 53%,#238bc9 100%);color:#fff}.contact:before{content:"";position:absolute;inset:0;opacity:.24;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(0deg,transparent,black 44%,transparent)}.contact .container{position:relative}.contact-top{display:grid;grid-template-columns:.88fr 1.12fr;gap:70px;align-items:end;margin-bottom:44px}.contact h2{font-size:clamp(2.2rem,4.1vw,4.65rem);line-height:1.08;margin:0}.contact-copy{font-family:var(--copy);font-size:1rem;line-height:1.75;color:rgba(255,255,255,.79);margin:0}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;position:relative;z-index:1;margin:0 auto -34px;width:min(934px,100%)}.contact-card{min-height:134px;border-radius:14px;background:var(--sky);padding:23px 25px;color:#fff;box-shadow:0 15px 25px rgba(8,18,48,.22)}.contact-card:nth-child(2){background:#218dcd}.contact-card:nth-child(3){background:#2e78ba}.contact-card small{display:block;font-size:.72rem;letter-spacing:.05em;margin-bottom:8px;opacity:.83}.contact-card strong{font-size:1.22rem;line-height:1.28;letter-spacing:-.01em}.contact-card strong .area-detail{display:block;margin:3px 0;font-family:var(--copy);font-size:.75em;font-weight:400;letter-spacing:0;opacity:.86}.contact-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:64px;border-radius:20px;background:#fff;color:var(--ink);padding:100px 58px 55px;box-shadow:0 28px 65px rgba(8,18,48,.24)}.contact-info h3,.form-title{font-size:1.65rem;margin:0 0 13px}.contact-info p,.form-intro{font-family:var(--copy);font-size:.9rem;line-height:1.73;color:var(--muted);margin:0}.contact-list{display:grid;gap:15px;margin-top:30px}.contact-list a{font-weight:700;color:var(--blue-deep)}.contact-list span{font-family:var(--copy);font-size:.84rem;color:var(--muted)}.remote-note{margin-top:34px;padding:17px;border-radius:13px;background:var(--sky-soft);font-family:var(--copy);font-size:.81rem;line-height:1.62;color:#3d5471}.form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.76rem;color:#536178;font-weight:700}.field input,.field textarea,.field select{border:0;border-bottom:1px solid #cdd7e3;padding:12px 0;border-radius:0;background:transparent;color:var(--ink);outline:none;transition:border-color .2s}.field textarea{resize:vertical;min-height:110px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--sky)}.consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-family:var(--copy);font-size:.72rem;line-height:1.5;color:var(--muted)}.consent input{margin-top:3px}.form .btn{justify-self:start;margin-top:5px}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}

.legal-page{background:linear-gradient(180deg,#eef7fb 0,#f8fdff 440px,#fff 440px)}.legal-hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#1d2768 0%,var(--blue-deep) 58%,#238bc9 100%);color:#fff;padding:72px 0 74px}.legal-hero:before{content:"";position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#000,transparent 80%)}.legal-hero .container{position:relative}.legal-hero .eyebrow{color:rgba(255,255,255,.78)}.legal-hero h1{font-size:clamp(2.7rem,5.1vw,5.2rem);line-height:1.04;margin:0;max-width:780px}.legal-main{padding:0 0 108px}.legal-shell{max-width:920px;margin-top:-34px;position:relative}.legal-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:48px 54px}.legal-updated{font-size:.77rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-deep);margin:0 0 30px}.legal-section{padding:28px 0;border-top:1px solid var(--line)}.legal-section:first-child{padding-top:0;border-top:0}.legal-section h2{font-size:1.55rem;line-height:1.18;margin:0 0 13px}.legal-section h3{font-size:1.06rem;line-height:1.35;margin:22px 0 8px}.legal-section p,.legal-section li{font-family:var(--copy);font-size:.91rem;line-height:1.76;color:#43536a}.legal-section p{margin:0 0 13px}.legal-section ul{margin:12px 0 14px;padding-left:21px}.legal-section a{color:var(--blue-deep);font-weight:700;text-decoration:underline;text-decoration-color:rgba(35,165,219,.55);text-underline-offset:3px}.legal-contact{font-family:var(--copy);line-height:1.78;color:#43536a;background:var(--sky-soft);padding:18px 20px;border-radius:12px}.legal-note{border-left:3px solid var(--sky);padding:13px 16px;background:#f7fbfe;border-radius:0 10px 10px 0}.legal-note p{margin:0}.legal-list-plain{list-style:none;padding-left:0!important}.legal-list-plain li{position:relative;padding-left:18px}.legal-list-plain li:before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;border-radius:50%;background:var(--sky)}
.footer{background:#111925;color:#fff;padding:58px 0 88px}.footer-grid{display:grid;grid-template-columns:1.35fr .7fr .9fr;gap:45px}.footer-brand{width:210px}.footer-brand img{width:100%;height:auto}.footer p{font-family:var(--copy);font-size:.77rem;line-height:1.65;color:rgba(255,255,255,.58);max-width:360px;margin:17px 0 0}.footer-col{display:grid;align-content:start;gap:10px}.footer-col strong{font-size:.76rem;letter-spacing:.11em;text-transform:uppercase;color:var(--sky);margin-bottom:4px}.footer-col a,.footer-col span{font-family:var(--copy);font-size:.81rem;color:rgba(255,255,255,.72);line-height:1.55}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding-top:19px;color:rgba(255,255,255,.47);font-size:.72rem}.footer-bottom div{display:flex;gap:16px}.mobile-bar{display:none}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal.show{opacity:1;transform:none}@keyframes pulse{0%,100%{box-shadow:0 0 0 5px rgba(85,211,255,.18)}50%{box-shadow:0 0 0 9px rgba(85,211,255,.03)}}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:1050px){.hero-grid{gap:46px}.hero h1{font-size:clamp(3rem,5.15vw,5rem)}.services-grid{grid-template-columns:1.08fr 1fr;grid-auto-rows:auto}.service-card{min-height:234px}.service-card.featured{grid-row:span 1}.focus-grid{gap:58px}.contact-grid{gap:44px;padding:94px 40px 48px}.nav-links{gap:18px}.brand{width:168px}}
@media(max-width:820px){.container{width:min(100% - 36px,640px)}.nav{height:70px}.brand{width:149px}.menu{display:block}.nav-links{position:absolute;top:70px;left:0;right:0;padding:14px 18px 22px;background:#151e2c;display:none;align-items:stretch;flex-direction:column;gap:3px;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 16px 25px rgba(0,0,0,.18)}.nav-links.open{display:flex}.nav-links a{padding:12px 2px}.nav-cta{text-align:center;margin-top:6px}.hero{min-height:auto}.hero-grid{min-height:auto;grid-template-columns:1fr;gap:44px;padding:69px 0 86px}.hero-visual{min-height:480px;max-width:575px;width:calc(100% - 22px);justify-self:end}.hero-note{left:-20px}.strip-head{display:block}.strip-note{text-align:left;margin-top:8px}.services-grid{grid-template-columns:1fr 1fr;gap:14px}.service-card{min-height:240px;padding:23px}.service-card.featured{grid-column:1/-1;min-height:278px}.focus-grid,.contact-top,.contact-grid{grid-template-columns:1fr}.focus-image{min-height:410px;max-width:580px;width:calc(100% - 18px)}.focus-copy{margin-top:12px}.process-grid,.reviews{grid-template-columns:1fr}.process-grid{gap:33px}.contact-top{gap:18px}.contact-cards{grid-template-columns:1fr;margin-bottom:-30px;gap:10px;width:min(500px,100%)}.contact-card{min-height:auto;padding:19px 21px}.contact-grid{padding:89px 28px 40px;gap:35px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-grid>div:first-child{grid-column:1/-1}.mobile-bar{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);bottom:0;left:0;right:0;z-index:150;background:rgba(18,27,41,.98);border-top:1px solid rgba(255,255,255,.16);box-shadow:0 -8px 25px rgba(0,0,0,.15)}.mobile-bar a{min-height:61px;display:grid;place-items:center;color:#fff;font-size:.74rem;font-weight:700;border-right:1px solid rgba(255,255,255,.1)}body{padding-bottom:61px}}
@media(max-width:540px){.container{width:calc(100% - 32px)}.hero-grid{padding-top:53px}.eyebrow{font-size:.64rem;letter-spacing:.1em}.hero h1{font-size:clamp(2.65rem,12vw,4rem);line-height:1.06}.hero-copy{font-size:.92rem}.hero-actions{display:grid;grid-template-columns:1fr}.btn{width:100%;min-height:52px}.hero-meta{gap:16px 24px;margin-top:30px}.hero-visual{min-height:380px;width:calc(100% - 14px)}.hero-note{left:-16px;bottom:20px;padding:14px 16px}.hero-note strong{font-size:.9rem}.hero-chip{top:13px;right:13px;font-size:.65rem}.section{padding:82px 0}.section-head{display:block;margin-bottom:28px}.section-head h2{font-size:clamp(2rem,9.2vw,3rem)}.section-head p{margin-top:15px;font-size:.9rem}.client-strip{margin-top:40px;padding:26px 0 0}.logo-chip{min-width:145px;height:53px;font-size:.72rem}.marquee{gap:12px;animation-duration:25s}.services-grid{grid-template-columns:1fr}.service-card,.service-card.featured{grid-column:auto;min-height:220px}.service-card.featured{min-height:266px}.service-card h3{font-size:1.2rem}.service-card p{font-size:.8rem}.focus-image{min-height:344px;width:calc(100% - 10px)}.focus h2{font-size:2.1rem}.process{padding:82px 0}.review-band{padding:82px 0}.review{padding:22px}.contact{padding:82px 0 75px}.contact h2{font-size:2.45rem}.contact-grid{padding:84px 22px 35px}.contact-card strong{font-size:1.05rem}.form{grid-template-columns:1fr;gap:15px}.field.full{grid-column:auto}.footer{padding:48px 0 28px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block;line-height:1.7}.footer-bottom div{margin-top:7px}.footer-brand{width:188px}}
@media(max-width:820px){.legal-hero{padding:54px 0 62px}.legal-main{padding-bottom:76px}.legal-shell{margin-top:-25px}.legal-card{padding:34px 28px}.legal-section{padding:24px 0}.legal-section h2{font-size:1.36rem}}
@media(max-width:540px){.legal-hero h1{font-size:2.55rem}.legal-card{padding:28px 20px;border-radius:15px}.legal-updated{font-size:.68rem}.legal-section p,.legal-section li{font-size:.86rem;line-height:1.72}.legal-contact{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}.marquee{transform:none!important;width:auto;flex-wrap:wrap;animation:none}}

/* Individuell eingebundene Rechtstexte */
.legal-hero--compact{padding:49px 0 52px}
.legal-hero-label{margin:8px 0 0;font-size:clamp(1.35rem,2.2vw,2.05rem);font-weight:700;letter-spacing:-.015em;color:#fff}
.legal-content>h1{font-size:clamp(2.3rem,4.4vw,4.3rem);line-height:1.04;margin:0 0 35px;color:var(--ink);overflow-wrap:anywhere}
.legal-content h2{font-size:clamp(1.34rem,2.25vw,1.68rem);line-height:1.2;margin:35px 0 14px;color:var(--ink);overflow-wrap:anywhere}
.legal-content h1+h2{border-top:1px solid var(--line);padding-top:30px}
.legal-content h3{font-size:1.05rem;line-height:1.36;margin:25px 0 9px;color:var(--blue-deep)}
.legal-content h4{font-family:var(--ui);font-size:.93rem;line-height:1.42;margin:18px 0 7px;color:var(--ink)}
.legal-content p,.legal-content li{font-family:var(--copy);font-size:.91rem;line-height:1.76;color:#43536a}
.legal-content p{margin:0 0 13px}
.legal-content ul{margin:12px 0 17px;padding-left:22px}
.legal-content li{margin-bottom:8px}
.legal-content a{color:var(--blue-deep);font-weight:700;text-decoration:underline;text-decoration-color:rgba(35,165,219,.55);text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:540px){.legal-hero--compact{padding:40px 0 43px}.legal-hero-label{font-size:1.25rem}.legal-content>h1{font-size:2.45rem;margin-bottom:29px}.legal-content h2{font-size:1.35rem;margin-top:30px}.legal-content h3{font-size:1rem}.legal-content h4{font-size:.9rem}.legal-content p,.legal-content li{font-size:.86rem;line-height:1.72}}

/* Ergänzungen: Leistungsdetailseiten, echte Logo-Uploads und transparente Demo-Marken */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.service-card.has-link{cursor:pointer}.service-card .card-link{position:absolute;inset:0;z-index:4;border-radius:inherit}.service-card .card-link:focus-visible{outline:3px solid #fff;outline-offset:-5px}.service-card.has-link:focus-within{transform:translateY(-5px);box-shadow:0 18px 32px rgba(20,30,54,.16)}
.logo-chip--brand{position:relative;grid-template-columns:32px auto;gap:10px;justify-content:center;overflow:hidden}.logo-chip--brand img{max-height:32px;max-width:126px;width:auto;height:auto;object-fit:contain;filter:grayscale(1) saturate(0) contrast(1.18);opacity:.92}.logo-mark{width:28px;height:28px;color:var(--blue-deep);display:grid;place-items:center}.logo-mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.logo-wordmark{font-size:.78rem;font-weight:700;letter-spacing:.105em;white-space:nowrap}.logo-demo{position:absolute;right:7px;top:6px;color:rgba(42,49,123,.5);font-size:.49rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.service-page{background:var(--paper)}.service-page-hero{position:relative;overflow:hidden;color:#fff;padding:88px 0 102px;background:radial-gradient(circle at 81% 12%,rgba(35,165,219,.28),transparent 28%),linear-gradient(123deg,#1f2868 0%,var(--blue-deep) 57%,#207eb8 100%)}.service-page-hero:before{content:"";position:absolute;inset:0;opacity:.34;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 80%)}.service-page-hero .container{position:relative;z-index:1}.service-page-hero-grid{display:grid;grid-template-columns:1.04fr .84fr;gap:76px;align-items:center}.service-page-hero h1{font-size:clamp(2.7rem,5.3vw,5.55rem);line-height:1.05;margin:0 0 21px;max-width:720px}.service-page-hero h1 em{font-style:normal;color:var(--sky)}.service-page-lead{font-family:var(--copy);font-size:1.05rem;line-height:1.75;color:rgba(255,255,255,.84);max-width:650px;margin:0}.service-page-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.service-page-image{position:relative;min-height:410px;border-radius:25px;overflow:hidden;box-shadow:var(--shadow);background:#0d1830}.service-page-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,18,38,.05),rgba(9,18,38,.52))}.service-page-image img{width:100%;height:100%;object-fit:cover}.service-page-image-note{position:absolute;z-index:1;right:18px;bottom:18px;left:18px;padding:14px 16px;border-radius:12px;background:rgba(248,253,255,.94);color:var(--ink);font-size:.88rem;font-weight:700;line-height:1.35}.service-page-content{padding:112px 0}.service-page-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(280px,.7fr);gap:78px;align-items:start}.service-page-content h2{font-size:clamp(2rem,3.5vw,3.65rem);line-height:1.11;margin:0 0 22px}.service-page-content h3{font-size:1.28rem;line-height:1.28;margin:29px 0 10px;color:var(--blue-deep)}.service-page-content p{font-family:var(--copy);font-size:1rem;line-height:1.8;color:#43536a;margin:0 0 18px}.service-list{margin:26px 0 0;padding:0;list-style:none;display:grid;gap:12px}.service-list li{position:relative;padding:16px 17px 16px 45px;border:1px solid var(--line);border-radius:13px;background:#fff;font-family:var(--copy);font-size:.9rem;line-height:1.65;color:#43536a}.service-list li:before{content:"✓";position:absolute;left:16px;top:15px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--sky-soft);color:var(--blue);font-family:var(--ui);font-weight:700}.service-aside{position:sticky;top:103px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 34px rgba(27,43,80,.08);padding:28px;border-radius:18px}.service-aside .eyebrow{color:var(--blue-deep);margin-bottom:13px}.service-aside h2{font-size:1.53rem;margin-bottom:12px}.service-aside p{font-size:.88rem;line-height:1.68;margin-bottom:20px}.service-aside .btn{width:100%}.service-related{border-top:1px solid var(--line);padding-top:58px;margin-top:62px}.service-related h2{font-size:clamp(1.8rem,3.25vw,2.8rem);margin-bottom:22px}.service-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-related-card{display:block;border:1px solid var(--line);background:#fff;border-radius:15px;padding:22px;min-height:168px;transition:transform .2s,box-shadow .2s}.service-related-card:hover{transform:translateY(-4px);box-shadow:0 17px 30px rgba(31,48,89,.12)}.service-related-card strong{display:block;font-size:1rem;line-height:1.3;color:var(--blue-deep);margin-bottom:10px}.service-related-card span{font-family:var(--copy);font-size:.8rem;line-height:1.6;color:var(--muted)}.service-page-cta{background:var(--blue-deep);color:#fff;padding:72px 0}.service-page-cta .service-page-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:32px}.service-page-cta h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;margin:0 0 10px}.service-page-cta p{font-family:var(--copy);color:rgba(255,255,255,.74);margin:0;line-height:1.68;max-width:700px}.service-page-cta .btn{flex:0 0 auto}
@media(max-width:820px){.service-page-hero{padding:69px 0 80px}.service-page-hero-grid,.service-page-layout{grid-template-columns:1fr;gap:42px}.service-page-image{min-height:350px;max-width:610px}.service-page-content{padding:82px 0}.service-aside{position:static}.service-related-grid{grid-template-columns:1fr}.service-page-cta .service-page-cta-grid{display:grid;justify-content:start}.service-page-cta .btn{width:auto}}
@media(max-width:540px){.service-page-hero{padding:54px 0 66px}.service-page-hero h1{font-size:clamp(2.45rem,11.3vw,3.7rem)}.service-page-lead{font-size:.92rem}.service-page-hero-actions{display:grid;grid-template-columns:1fr}.service-page-image{min-height:282px}.service-page-content{padding:70px 0}.service-page-layout{gap:34px}.service-page-content p{font-size:.92rem}.service-page-content h3{font-size:1.17rem}.service-aside{padding:23px}.service-page-cta{padding:60px 0}.service-page-cta .btn{width:100%}.logo-chip--brand{min-width:170px}.logo-wordmark{font-size:.7rem}}


/* Einheitliche Icon-Ausrichtung in den Leistungskacheln */
.services-grid .service-card{--service-pad:28px;padding:var(--service-pad)}
.services-grid .service-card .icon{position:absolute;top:var(--service-pad);left:var(--service-pad);width:48px;height:48px;margin:0;display:grid;place-items:center;line-height:0}
.services-grid .service-card .icon svg{width:46px;height:46px;display:block}
.services-grid .service-card.featured{justify-content:flex-end}
.services-grid .service-card>div:last-of-type{padding-right:34px}

/* Farbige Branchenbeispiele im Laufband */
.logo-chip--brand{grid-template-columns:1fr;padding:7px 12px;background:#fff;border-color:rgba(42,49,123,.13);box-shadow:0 7px 18px rgba(28,49,92,.045)}
.logo-chip--brand img{display:block;max-width:100%;max-height:42px;width:100%;height:42px;object-fit:contain;filter:none;opacity:1}
.client-strip--feedback .strip-title span{color:#7a899d}

@media(max-width:820px){.services-grid .service-card{--service-pad:23px;padding:var(--service-pad)}}
@media(max-width:540px){.services-grid .service-card{--service-pad:23px;padding:var(--service-pad)}.logo-chip--brand{min-width:190px}.logo-chip--brand img{height:39px;max-height:39px}}

/* Finaler Feinschliff: einheitliches Raster der Leistungskacheln */
.services{padding-bottom:66px}
.focus{padding-top:74px}
.services-grid{grid-auto-rows:252px}
.services-grid .service-card{
  --service-pad:28px;
  display:grid;
  grid-template-rows:48px minmax(0,1fr);
  align-content:start;
  justify-content:stretch;
  padding:var(--service-pad);
}
.services-grid .service-card .icon{
  position:static;
  width:48px;
  height:48px;
  margin:0;
  align-self:start;
}
.services-grid .service-card .icon svg{width:46px;height:46px}
.services-grid .service-card>div:last-of-type{
  align-self:start;
  padding-right:34px;
  margin-top:20px;
}
.services-grid .service-card h3{margin:0 0 10px}
.services-grid .service-card p{margin:0}
.services-grid .service-card.featured{
  grid-row:span 2;
  grid-template-rows:48px minmax(0,1fr);
}
.services-grid .service-card.featured>div:last-of-type{
  align-self:end;
  margin-top:0;
  padding-bottom:8px;
}
.services-grid .service-card:after{right:24px;bottom:22px}
.review-rating{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px}
.review-rating span{color:#E0A51A;font-family:var(--ui);font-size:1.02rem;letter-spacing:.12em;line-height:1}
.review-rating small{color:#718096;font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.review blockquote{margin-bottom:19px}
.logo-chip--brand .logo-demo{right:8px;top:6px;border-radius:999px;background:rgba(255,255,255,.9);padding:3px 5px;box-shadow:0 1px 5px rgba(32,45,70,.12);font-size:.43rem;color:rgba(42,49,123,.58)}
@media(max-width:1050px){
  .services-grid{grid-auto-rows:auto}
  .services-grid .service-card{min-height:252px}
  .services-grid .service-card.featured{grid-row:span 1;min-height:290px}
  .services-grid .service-card.featured>div:last-of-type{align-self:end}
}
@media(max-width:820px){
  .services{padding-bottom:60px}
  .focus{padding-top:64px}
  .services-grid .service-card{--service-pad:23px;min-height:248px}
  .services-grid .service-card.featured{min-height:284px}
  .services-grid .service-card:after{right:20px;bottom:19px}
}
@media(max-width:540px){
  .services{padding-bottom:54px}
  .focus{padding-top:60px}
  .services-grid .service-card,.services-grid .service-card.featured{min-height:244px}
  .services-grid .service-card.featured{min-height:270px}
  .services-grid .service-card>div:last-of-type{margin-top:18px}
  .services-grid .service-card.featured>div:last-of-type{margin-top:0}
  .review-rating span{font-size:.94rem}
  .review-rating small{font-size:.62rem}
}

/* Final card rhythm and a tighter handoff to the next content block */
.services.section{padding-bottom:22px}
.focus.section{padding-top:66px}
.services-grid{grid-auto-rows:252px}
.services-grid .service-card{--service-pad:28px;padding:var(--service-pad)}
.services-grid .service-card:not(.featured){display:grid;grid-template-rows:48px 1fr;align-content:start;gap:18px;justify-content:stretch}
.services-grid .service-card .icon{position:static;width:48px;height:48px;margin:0;display:grid;place-items:center;line-height:0}
.services-grid .service-card .icon svg{width:46px;height:46px;display:block}
.services-grid .service-card:not(.featured)>div:last-of-type{align-self:start;margin:0;padding:0 34px 0 0}
.services-grid .service-card h3{margin:0 0 11px;font-size:1.20rem;line-height:1.22;letter-spacing:-.012em}
.services-grid .service-card p{margin:0;font-size:.81rem;line-height:1.58;max-width:100%}
.services-grid .service-card.featured{justify-content:space-between}
.services-grid .service-card.featured>div:last-of-type{padding-right:34px}
.services-grid .service-card.featured h3{font-size:1.32rem;line-height:1.22;margin:0 0 11px}
.services-grid .service-card.featured p{font-size:.84rem;line-height:1.67}
.services-grid .service-card:after{right:24px;bottom:22px}
.client-strip--feedback .strip-title span{color:#7a899d}
.logo-chip--brand .logo-demo{display:none}
@media(max-width:1050px){
  .services-grid{grid-auto-rows:auto}
  .services-grid .service-card,.services-grid .service-card.featured{min-height:252px}
  .services-grid .service-card.featured{grid-row:span 1;min-height:286px}
}
@media(max-width:820px){
  .services.section{padding-bottom:16px}
  .focus.section{padding-top:58px}
  .services-grid .service-card{--service-pad:23px}
  .services-grid .service-card:not(.featured){gap:17px}
}
@media(max-width:540px){
  .services.section{padding-bottom:10px}
  .focus.section{padding-top:52px}
  .services-grid .service-card,.services-grid .service-card.featured{min-height:242px}
  .services-grid .service-card.featured{min-height:268px}
  .services-grid .service-card h3{font-size:1.16rem}
  .services-grid .service-card p{font-size:.79rem;line-height:1.58}
}

/* Stabiler Logo-Laufband-Loop: Desktop sichtbar, gleichmäßige Wiederholung */
.client-strip--feedback{overflow:hidden}
.client-strip--feedback .marquee{
  display:flex;
  align-items:center;
  gap:0;
  width:max-content;
  will-change:transform;
  transform:translate3d(0,0,0);
  animation:logo-marquee-stable 46s linear infinite;
}
.client-strip--feedback .marquee-group{
  display:flex;
  align-items:center;
  gap:18px;
  padding-right:18px;
  flex:0 0 auto;
}
.client-strip--feedback .logo-chip--brand{
  min-width:208px;
  height:72px;
  padding:9px 14px;
}
.client-strip--feedback .logo-chip--brand img{
  width:100%;
  height:52px;
  max-height:52px;
  object-fit:contain;
}
@keyframes logo-marquee-stable{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:820px){
  .client-strip--feedback .marquee{animation-duration:34s}
  .client-strip--feedback .logo-chip--brand{min-width:190px;height:62px}
  .client-strip--feedback .logo-chip--brand img{height:43px;max-height:43px}
}
@media(prefers-reduced-motion:reduce){
  .client-strip--feedback .marquee{width:auto;animation:none;transform:none;flex-wrap:wrap}
  .client-strip--feedback .marquee-group{flex-wrap:wrap;padding-right:0}
  .client-strip--feedback .marquee-group[aria-hidden="true"]{display:none}
}



/* FINAL CD-FEINSCHLIFF – Farben aus dem MAIN-IT Corporate Design */
:root{
  --blue-deep:#2a317b; /* CD: Dunkelblau */
  --blue:#237fbd;      /* abgeleiteter Mittelton für Verläufe */
  --sky:#23a5db;       /* CD: Hellblau */
  --sky-soft:#e4f4fb;
  --paper:#f8fdff;     /* CD: Weiß */
  --ink:#17233b;
  --muted:#60718a;
  --card:#17213a;
  --line:rgba(42,49,123,.14);
}
.site-header{background:rgba(23,33,58,.96)}
.hero{background:radial-gradient(circle at 82% 14%,rgba(35,165,219,.26),transparent 27%),radial-gradient(circle at 5% 96%,rgba(80,141,255,.16),transparent 30%),linear-gradient(123deg,#2a317b 0%,#2a317b 44%,#237fbd 100%)}
.contact{background:linear-gradient(130deg,#2a317b 0%,#2a317b 50%,#237fbd 100%)}
.contact-card:nth-child(2){background:var(--blue)}
.contact-card:nth-child(3){background:var(--blue-deep)}
.footer{background:var(--card)}

/* Cookie-Banner: externe Schriftarten bleiben bis zur Zustimmung blockiert. */
.cookie-consent{position:fixed;inset:0;z-index:1000;display:none;align-items:flex-end;justify-content:center;padding:22px;pointer-events:none}
.cookie-consent.is-visible{display:flex;pointer-events:auto}
.cookie-consent__backdrop{position:absolute;inset:0;background:rgba(8,16,34,.58);backdrop-filter:blur(3px)}
.cookie-consent__dialog{position:relative;z-index:1;width:min(720px,100%);border:1px solid rgba(255,255,255,.18);border-radius:22px;background:var(--paper);color:var(--ink);box-shadow:0 28px 86px rgba(4,14,37,.42);padding:28px 30px 22px;animation:cookie-up .25s ease both}
.cookie-consent__eyebrow{margin:0 0 9px;color:var(--blue-deep);font-size:.69rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.cookie-consent h2{margin:0 0 10px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.15}
.cookie-consent p{margin:0;color:var(--muted);font-family:var(--copy);font-size:.83rem;line-height:1.64;max-width:650px}
.cookie-consent__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.cookie-btn{min-height:44px;border-radius:9px;padding:10px 15px;border:1px solid transparent;font-family:var(--ui);font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.cookie-btn:hover{transform:translateY(-1px)}
.cookie-btn:focus-visible,.footer-consent:focus-visible{outline:3px solid rgba(35,165,219,.55);outline-offset:3px}
.cookie-btn--primary{background:var(--sky);color:#fff;border-color:var(--sky)}
.cookie-btn--primary:hover{background:#159bd4}
.cookie-btn--light{background:#fff;color:var(--blue-deep);border-color:rgba(42,49,123,.22)}
.cookie-btn--light:hover{background:var(--sky-soft);border-color:rgba(35,165,219,.5)}
.cookie-consent__legal{margin-top:16px!important;font-size:.72rem!important}.cookie-consent__legal a{color:var(--blue-deep);text-decoration:underline;text-underline-offset:2px}
.cookie-consent__back{padding:0;border:0;background:transparent;color:var(--blue-deep);font-family:var(--ui);font-size:.77rem;font-weight:700;cursor:pointer;margin:0 0 15px}
.cookie-option{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;padding:14px 0;border-top:1px solid var(--line);cursor:pointer}.cookie-option:first-of-type{margin-top:18px}.cookie-option input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--blue-deep)}
.cookie-option b{display:block;color:var(--ink);font-size:.84rem}.cookie-option small{display:block;color:var(--muted);font-family:var(--copy);font-size:.75rem;line-height:1.55;margin-top:3px}.cookie-option--required{cursor:default;opacity:.82}
.footer-consent{display:inline;padding:0;border:0;background:transparent;color:rgba(255,255,255,.47);font:inherit;font-size:inherit;cursor:pointer;text-align:left}.footer-consent:hover{color:#fff}
body.consent-open{overflow:hidden}
@keyframes cookie-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:820px){.nav-links{background:var(--card)}}
@media(max-width:540px){.cookie-consent{padding:12px;align-items:flex-end}.cookie-consent__dialog{padding:23px 20px 18px;border-radius:17px}.cookie-consent__actions{display:grid;grid-template-columns:1fr}.cookie-btn{width:100%}.cookie-consent__actions--settings{grid-template-columns:1fr}.cookie-consent__legal{font-size:.68rem!important}.footer-bottom div{align-items:flex-start;flex-wrap:wrap}.footer-consent{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.cookie-consent__dialog{animation:none}.cookie-btn{transition:none}}

/* Praxisbeispiele: anonymisierte Fälle aus Datensicherung & Datenrettung */
.case-studies{
  margin-top:56px;
  padding:36px;
  border:1px solid rgba(42,49,123,.14);
  border-radius:22px;
  background:linear-gradient(135deg,#eff9fd 0%,#f8fdff 62%,#fff 100%);
}
.case-studies .eyebrow{color:var(--blue-deep);margin-bottom:13px}
.case-studies h2{
  max-width:720px;
  margin:0 0 13px;
  font-size:clamp(1.85rem,3.2vw,2.8rem);
  line-height:1.12;
}
.case-studies-intro{
  max-width:770px;
  margin:0!important;
  font-size:.9rem!important;
  line-height:1.7!important;
}
.case-studies-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
.case-study-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  padding:25px;
  border:1px solid rgba(42,49,123,.13);
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 25px rgba(23,43,82,.05);
}
.case-study-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}
.case-study-year{
  display:inline-grid;
  place-items:center;
  min-width:48px;
  min-height:28px;
  padding:0 9px;
  border-radius:999px;
  background:var(--blue-deep);
  color:#fff;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.06em;
}
.case-study-label{
  color:var(--blue-deep);
  font-size:.69rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:right;
}
.case-study-card h3{
  margin:0 0 18px;
  color:var(--ink);
  font-size:1.27rem;
  line-height:1.26;
}
.case-study-details{
  display:grid;
  gap:15px;
  margin:0;
}
.case-study-details div{
  padding-top:15px;
  border-top:1px solid var(--line);
}
.case-study-details dt,
.case-study-result span{
  display:block;
  margin:0 0 6px;
  color:var(--blue-deep);
  font-family:var(--ui);
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.case-study-details dd{
  margin:0;
  color:#45566e;
  font-family:var(--copy);
  font-size:.82rem;
  line-height:1.62;
}
.case-study-result{
  margin-top:auto;
  padding:15px 16px;
  border-radius:12px;
  background:var(--sky-soft);
}
.case-study-result p{
  margin:0!important;
  color:var(--ink)!important;
  font-family:var(--copy)!important;
  font-size:.82rem!important;
  line-height:1.62!important;
}
@media(max-width:820px){
  .case-studies{margin-top:46px;padding:28px}
  .case-studies-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .case-studies{margin-top:40px;padding:23px 19px}
  .case-studies h2{font-size:1.7rem}
  .case-study-card{padding:21px}
  .case-study-card h3{font-size:1.18rem}
  .case-study-meta{margin-bottom:15px}
  .case-study-label{font-size:.63rem}
}


/* Corporate typography audit: Roboto Bold for UI/headlines, Roboto Slab for long-form copy. */
:root{
  --ui:"Roboto", Arial, sans-serif;
  --copy:"Roboto Slab", Georgia, serif;
}
/* UI typography */
.site-header,
.nav-links a,
.nav-cta,
.btn,
.eyebrow,
.strip-title,
.hero-chip,
.hero-note small,
.hero-note strong,
.hero-meta strong,
.service-card h3,
.service-card:after,
.feature-list b,
.feature-list .mark,
.process-card .step,
.process-card h3,
.review cite,
.review-rating small,
.text-button,
.contact-card small,
.contact-card strong,
.contact-info h3,
.form-title,
.field label,
.legal-updated,
.legal-section h2,
.legal-section h3,
.legal-content h4,
.footer-col strong,
.footer-bottom,
.mobile-bar a,
.service-page-image-note,
.service-page-content h2,
.service-page-content h3,
.service-aside h2,
.service-related-card strong,
.case-study-year,
.case-study-label,
.case-study-card h3,
.case-study-details dt,
.case-study-result span,
.cookie-consent__eyebrow,
.cookie-consent h2,
.cookie-btn,
.cookie-consent__back,
.cookie-option b{
  font-family:var(--ui);
}
/* Editorial / explanatory copy */
.hero-copy,
.hero-meta span,
.strip-note,
.section-head p,
.service-card p,
.focus p,
.feature-list span,
.process-card p,
.review-intro p,
.review blockquote,
.contact-copy,
.contact-info p,
.form-intro,
.contact-list span,
.remote-note,
.consent,
.legal-section p,
.legal-section li,
.legal-contact,
.footer p,
.footer-col a,
.footer-col span,
.service-page-lead,
.service-page-content p,
.service-list li,
.service-aside p,
.service-related-card span,
.service-page-cta p,
.case-studies-intro,
.case-study-details dd,
.case-study-result p,
.cookie-consent p,
.cookie-option small{
  font-family:var(--copy);
}
/* Rating stars use the same UI family instead of an unrelated system face. */
.review-rating span{font-family:var(--ui)}
