@import url('/fonts.css');
:root{--purple:#6840f5;--yellow:#fff528;--ink:#181525;--muted:#656172;--line:#e5e3ec;--night:#17112a;--white:#fff;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:4px}h1,h2,h3,p{margin:0}p{line-height:1.7}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.045em}h2{font-size:clamp(2.1rem,3.8vw,3.8rem);line-height:1.12;font-weight:600}h3{font-size:1.45rem;line-height:1.25;font-weight:600}img{max-width:100%}.skip{position:absolute;top:-100px;left:16px;padding:14px;background:white;z-index:20}.skip:focus{top:10px}.site-header{height:98px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.logo-window{display:block;position:relative;width:245px;height:88px;overflow:hidden;flex-shrink:0}.logo-window img{position:absolute;width:245px;max-width:none;height:245px;top:-44px;left:0}.site-header nav{display:flex;gap:36px;align-items:center;font-size:.93rem;font-weight:600}.site-header nav a:hover{color:var(--purple)}.nav-contact{border:1px solid var(--line);padding:15px 22px;display:flex;gap:25px}.menu-toggle{display:none}.hero{position:relative;background:#18112e;color:white;min-height:660px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.52}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,12,37,.96) 0%,rgba(26,12,49,.83) 36%,rgba(26,12,49,.14) 80%),linear-gradient(0deg,rgba(18,10,33,.82),transparent 50%)}.hero-content{position:relative;padding:84px 7% 58px;max-width:940px}.eyebrow{font-size:.78rem;letter-spacing:.16em;font-weight:700;margin-bottom:29px}.hero .eyebrow{color:var(--yellow)}.hero h1{font-size:clamp(3rem,5.9vw,5.7rem);font-weight:500;line-height:1.02;letter-spacing:-.055em;max-width:850px}.hero-description{font-size:1.07rem;max-width:550px;color:#dfdbe9;margin:28px 0 33px;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:19px 24px;border:0;font-size:.92rem;font-weight:600;min-height:54px;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button span{font-size:1.3rem;font-weight:400}.yellow{background:var(--yellow);color:var(--ink)}.hero-bottom{position:relative;display:flex;align-items:center;justify-content:space-between;margin:0 7%;padding:24px 0;border-top:1px solid #ffffff35;font-size:.77rem;letter-spacing:.04em;gap:16px}.video-control{border:0;color:#fff;background:transparent;padding:10px;font-size:.85rem}.tech-strip{padding:30px 7%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;background:#f5f4f8;border-bottom:1px solid var(--line);font-weight:600;letter-spacing:-.02em;color:#4f485e}.tech-strip span{color:#797285}.section{padding:95px 7%}.purple{color:var(--purple)}.heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}.heading-row h2{flex:1}.heading-row h2 span{color:var(--muted)}.heading-row>p{max-width:335px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service:hover{background:#faf9ff}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px}.service-icon{font-size:1.9rem;color:var(--purple);width:48px;height:48px;display:grid;place-items:center;background:#f1edff}.service-number{color:#9690a5;font-size:.8rem}.service h3{min-height:58px}.service-subtitle{font-size:.88rem;font-weight:600;margin:14px 0 10px;color:#40364f}.service>p:not(.service-subtitle){font-size:.94rem;color:var(--muted);min-height:106px}.service details{margin-top:22px;border-top:1px solid var(--line);padding-top:19px}.service summary{cursor:pointer;list-style:none;font-size:.9rem;display:flex;justify-content:space-between}.service summary::-webkit-details-marker{display:none}.service details[open] summary span{transform:rotate(45deg)}.service ul{padding-left:18px;margin:22px 0;line-height:1.65;color:var(--muted);font-size:.9rem}.service li{margin-bottom:10px}.tech-label{font-size:.78rem;color:var(--purple);margin-bottom:20px}.text-link{font-size:.91rem;display:inline-flex;gap:25px;color:var(--purple);font-weight:600}.scope{font-size:.86rem;color:var(--muted);max-width:760px;margin-top:28px}.about{background:var(--purple);color:#fff}.about-top{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.about .eyebrow{color:#e3dcff}.about-description{font-size:1.05rem;color:#efebff;margin-top:45px;margin-bottom:27px}.light{color:var(--yellow)}.purpose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px;padding-top:36px;border-top:1px solid #ffffff44}.purpose-grid article>span{display:block;color:var(--yellow);font-size:.85rem;margin-bottom:22px}.purpose-grid p{color:#ede7ff;font-size:.94rem;margin-top:16px}.team .heading-row>p{max-width:400px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:50px}.team-card img,.team-initials{width:100%;aspect-ratio:1.15;object-fit:cover;background:#f0edf8}.team-initials{display:grid;place-items:center;font-size:4rem;color:var(--purple)}.team-card h3{margin-top:20px}.team-role{color:var(--purple);font-size:.9rem;margin:8px 0}.team-card p:not(.team-role){color:var(--muted);font-size:.9rem;margin-bottom:18px}.team-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0;margin-top:40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.team-word{font-weight:700;font-size:1.5rem;letter-spacing:-.06em}.team-word span{color:var(--purple)}.team-empty p{max-width:370px;font-size:.94rem;color:var(--muted)}.contact{background:#f5f4f8;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-copy>p:not(.eyebrow){color:var(--muted);max-width:430px;margin:25px 0}.contact-email{display:flex;gap:28px;font-size:1.25rem;font-weight:600;margin:30px 0}.outline{border:1px solid #cfc9dc;background:transparent}.address{font-size:.86rem;color:var(--muted);margin-top:30px}.address p{margin-top:6px}.address strong{color:var(--ink)}.contact-form{background:#fff;padding:32px;border:1px solid var(--line)}label{display:block;font-size:.87rem;font-weight:600}input,select,textarea{display:block;width:100%;background:#fff;border:1px solid #d9d5e1;border-radius:0;color:var(--ink);padding:13px 14px;margin-top:10px;font-weight:400;font-size:1rem}textarea{resize:vertical;line-height:1.5}label+label,.form-row+label{margin-top:23px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row label+label{margin:0}.consent{display:flex;gap:12px;font-weight:400;font-size:.8rem;line-height:1.5;color:var(--muted);margin:24px 0}.consent input{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:var(--purple)}.consent a{text-decoration:underline}.purple-button{background:var(--purple);color:white}.contact-form .button{width:100%}#contact-status{font-size:.9rem;margin-top:15px}.success{color:#256b42}.error{color:#a32438}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{background:var(--night);color:#fff;padding:50px 7% 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px}.footer-brand{font-size:1.8rem;font-weight:700;letter-spacing:-.05em}.footer-brand small{display:block;letter-spacing:.14em;font-size:.6rem;color:#c8c1d7;margin-top:10px}.footer-top>div{display:flex;gap:32px;font-size:.85rem}.footer-bottom{border-top:1px solid #ffffff26;padding-top:23px;display:flex;justify-content:space-between;gap:20px;color:#b9b1c9;font-size:.77rem}.wa-float{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:#205d42;border:1px solid #ffffff70;color:white;border-radius:50%;display:grid;place-items:center;z-index:12;box-shadow:0 4px 24px #0002}.wa-float svg{width:26px;height:26px}.loading{padding:80px 7%}.preview-banner{padding:12px 7%;background:var(--yellow);font-size:.9rem;display:flex;justify-content:space-between}.preview-banner a{text-decoration:underline}.legal{max-width:900px;margin:0 auto;padding:80px 30px}.legal h1{font-size:2.6rem;margin-bottom:24px}.legal h2{font-size:1.5rem;margin:32px 0 15px}.legal p{margin-bottom:20px}.legal a{text-decoration:underline;color:var(--purple)}
@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:1000px){.site-header{padding:0 4%}.site-header nav{gap:22px}.hero-content{padding-left:6%;padding-right:6%}.section{padding:70px 6%}.service-grid{grid-template-columns:repeat(2,1fr)}.heading-row{gap:30px}.contact{gap:36px}.contact-form{padding:24px}.form-row{grid-template-columns:1fr}.form-row label+label{margin-top:20px}.about-top{gap:40px}.purpose-grid{gap:28px}.team-empty{flex-wrap:wrap}.hero h1{font-size:4.7rem}}
@media(max-width:700px){html{scroll-padding-top:82px}.site-header{height:82px}.logo-window{width:205px;height:74px}.logo-window img{width:205px;height:205px;top:-37px}.menu-toggle{display:flex;gap:12px;background:#fff;border:1px solid var(--line);padding:12px;font-size:.85rem}.site-header nav{display:none;position:absolute;top:81px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:24px;align-items:stretch}.site-header nav.open{display:flex;flex-direction:column}.hero{min-height:630px}.hero-content{padding:68px 6% 40px}.hero h1{font-size:clamp(2.9rem,11vw,4rem)}.hero-description{font-size:1rem}.hero-shade{background:linear-gradient(90deg,#170e2eed,#170e2e90)}.hero-bottom{margin:0 6%;flex-wrap:wrap;font-size:.7rem;padding:16px 0}.hero-bottom>span{display:none}.hero-bottom a{max-width:150px}.hero .button{font-size:.85rem;gap:15px;padding:17px 20px}.eyebrow{font-size:.72rem}.tech-strip{font-size:.85rem;padding:24px 6%;gap:16px;justify-content:center}.section{padding:60px 6%}.heading-row{display:block}.heading-row>p{margin-top:22px;max-width:none}.service-grid{grid-template-columns:1fr;margin-top:35px}.service{padding:27px}.service h3{min-height:0}.service>p:not(.service-subtitle){min-height:0}.service-top{margin-bottom:25px}.about-top{grid-template-columns:1fr;gap:0}.about-description{margin-top:25px}.purpose-grid{grid-template-columns:1fr;gap:32px;margin-top:35px}.purpose-grid article>span{margin-bottom:12px}.purpose-grid h3{font-size:1.3rem}.team-grid{grid-template-columns:1fr}.team-empty{gap:20px}.contact{grid-template-columns:1fr;gap:32px}.contact-form{padding:24px 20px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-top>div{flex-wrap:wrap;gap:20px}.footer-bottom{padding-right:50px}footer{padding:40px 6% 25px}.wa-float{width:50px;height:50px;bottom:18px;right:16px}.preview-banner{gap:20px;font-size:.8rem}.contact-email{font-size:1.1rem}.button{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Patch v2: language selector and branded CTA mark */
.link-mark{display:inline-grid!important;place-items:center;width:.9rem;height:.9rem;font-size:.52rem!important;line-height:1;color:currentColor;transform:none!important;flex:0 0 auto}.yellow .link-mark{color:var(--purple)}.purple-button .link-mark{color:var(--yellow)}.nav-contact .link-mark,.text-link .link-mark,.contact-email .link-mark,.footer-top .link-mark,.hero-bottom .link-mark{font-size:.48rem!important}.language-switch{display:inline-flex;align-items:center;gap:7px;border-left:1px solid var(--line);padding-left:22px;font-size:.75rem;color:var(--muted)}.language-switch button{border:0;background:transparent;padding:5px 2px;color:var(--muted);font:inherit;font-weight:700;cursor:pointer}.language-switch button.active{color:var(--purple);text-decoration:underline;text-underline-offset:4px}.language-switch button:hover{color:var(--purple)}
@media(max-width:700px){.language-switch{border-left:0;padding-left:0;align-self:flex-start}.language-switch button{padding:7px 3px}}

/* Patch 2026-09-14b: tighter service cards + compact team layout */
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.service{display:flex;flex-direction:column;min-width:0;min-height:390px;padding:34px}
.service-top{margin-bottom:28px}
.service h3{min-height:0;margin-bottom:6px}
.service-subtitle{margin:10px 0 10px}
.service>p:not(.service-subtitle){min-height:0}
.service details{margin-top:auto;padding-top:18px}
.service summary{align-items:center;gap:18px}
.team .heading-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:72px}
.team .heading-row>p{max-width:390px;width:100%;justify-self:end;padding-top:42px;overflow-wrap:anywhere}
.team-grid{grid-template-columns:repeat(auto-fit,minmax(240px,300px));gap:38px;align-items:start}
.team-card{width:100%;max-width:300px;min-width:0}
.team-card img,.team-initials{width:100%;aspect-ratio:4/5;object-fit:cover}
.team-card p{overflow-wrap:anywhere}
.link-mark{font-size:.58rem!important;line-height:1;transform:none!important}
@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team .heading-row{grid-template-columns:minmax(0,1fr) minmax(250px,.75fr);gap:36px}.team .heading-row>p{padding-top:28px}.team-grid{grid-template-columns:repeat(auto-fit,minmax(230px,280px))}}
@media(max-width:700px){.service-grid{grid-template-columns:1fr}.service{min-height:0;padding:27px}.team .heading-row{display:block}.team .heading-row>p{max-width:none;padding-top:0;margin-top:22px}.team-grid{grid-template-columns:minmax(0,1fr)}.team-card{max-width:300px}.team-card img,.team-initials{aspect-ratio:4/5}}
