:root{--navy:#102139;--deep:#0b1a30;--ink:#17283f;--muted:#526379;--line:#dce4e7;--paper:#f7f9f9;--white:#fff;--accent:#b7e66d}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.65 "Noto Sans",sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Noto Sans Display","Noto Sans",sans-serif;line-height:1.14}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7ba832;outline-offset:3px}::selection{background:var(--accent);color:var(--navy)}.container{width:min(100% - 40px,1240px);margin-inline:auto}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:var(--accent);color:var(--navy);padding:10px 16px}.skip-link:focus{top:15px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}.wordmark{font-family:"Noto Sans Display",sans-serif;font-weight:700;font-size:30px;letter-spacing:-.085em;line-height:1;white-space:nowrap;color:var(--navy)}.wordmark span{color:#75a02f}.desktop-nav{display:flex;align-items:center;gap:clamp(12px,1.7vw,25px)}.desktop-nav a{font-size:13px;font-weight:700;white-space:nowrap;transition:color .2s}.desktop-nav a:hover,.mobile-nav a:hover{color:#568224}.header-actions{display:flex;align-items:center;gap:20px}.languages{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line);border-radius:100px}.languages a{display:inline-flex;justify-content:center;min-width:32px;padding:4px 6px;border-radius:100px;font-size:11px;font-weight:700;color:var(--muted)}.languages a[aria-current]{background:var(--navy);color:var(--white)}.menu-button{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-button span{display:block;width:23px;height:2px;margin:5px 0;background:var(--navy)}.mobile-nav{display:none}
.hero{background:var(--navy);color:var(--white);overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.8fr);align-items:center;gap:6%;padding-block:clamp(90px,9vw,140px)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:12px;line-height:1.5;font-weight:700;color:#638731}.hero .eyebrow{color:var(--accent);display:flex;align-items:center;gap:14px}.eyebrow-rule,.note-line{display:inline-block;width:30px;height:1px;background:var(--accent);flex:none}.hero h1{font-size:clamp(50px,5.45vw,84px);font-weight:600;letter-spacing:-.065em;margin:24px 0 28px;max-width:840px}.hero-lede{color:#cbd6df;font-size:clamp(17px,1.3vw,20px);line-height:1.6;max-width:690px;margin-bottom:36px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 21px;border-radius:4px;font-size:14px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--accent);color:var(--deep)}.button-accent:hover{background:#c9f184}.button-outline{border-color:#7f93a3;color:var(--white)}.button-outline:hover{background:var(--white);color:var(--navy)}.hero-art{min-height:390px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:28px;border:1px solid #607488;background:linear-gradient(130deg,#1c3757,#0c1c33);overflow:hidden}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#7294ad1c 1px,transparent 1px),linear-gradient(90deg,#7294ad1c 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(130deg,transparent,#000)}.art-top,.art-bottom,.art-axis{position:relative;display:flex;align-items:center;justify-content:space-between}.art-top,.art-bottom{color:#b4c9d8;font-family:"Noto Sans Display",sans-serif;font-size:12px;font-weight:700;letter-spacing:.13em}.art-axis{font:700 clamp(76px,10vw,148px)/1 "Noto Sans Display",sans-serif;letter-spacing:-.1em;color:var(--white)}.art-plus{color:var(--accent);font-size:.75em;line-height:1;font-weight:400}.hero-note{display:flex;gap:15px;align-items:center;border-top:1px solid #43566e;padding-block:19px;color:#c1cfda;font-size:13px}
.section{padding-block:clamp(80px,9vw,130px)}.section-heading{max-width:850px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:18px}.section-heading h2,.about-grid h2,.contact-info h2{font-size:clamp(38px,4vw,62px);letter-spacing:-.055em;font-weight:600;margin-bottom:22px}.section-heading>p:last-child{font-size:18px;color:var(--muted);max-width:690px;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:34px;min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service-card:hover{background:var(--paper)}.service-no,.item-index{font-family:"Noto Sans Display",sans-serif;color:#5f802b;font-size:12px;font-weight:700;letter-spacing:.1em}.service-card h3{font-size:27px;letter-spacing:-.035em;margin:30px 0 13px}.service-card>p{color:var(--muted);margin-bottom:28px;max-width:540px}.service-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.service-card dt{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:#566b30;margin-bottom:5px}.service-card dd{grid-row:2;margin:0;font-size:14px;line-height:1.55}.service-card dt:nth-of-type(2){grid-column:2;grid-row:1}.service-card dd:nth-of-type(2){grid-column:2;grid-row:2}
.solutions-section{background:var(--paper)}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.solution-item{display:flex;align-items:flex-start;gap:18px;min-height:130px;padding:25px;border:1px solid var(--line);background:var(--white)}.solution-mark{color:#6c922f;font-size:21px;line-height:1}.solution-item h3{font-size:19px;font-weight:600;letter-spacing:-.025em;margin:0}.why-section{background:var(--navy);color:var(--white)}.why-section .eyebrow{color:var(--accent)}.why-section .section-heading>p:last-child{color:#c0ced8}.why-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:65px}.why-item{display:grid;grid-template-columns:40px 1fr;gap:20px;border-top:1px solid #52667b;padding:27px 0}.why-item:nth-last-child(-n+2){border-bottom:1px solid #52667b}.why-item .item-index{color:var(--accent);padding-top:4px}.why-item h3{font-size:22px;letter-spacing:-.03em;margin-bottom:10px}.why-item p{color:#c0ced8;margin:0;font-size:15px}
.process-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.process-step{position:relative;border-top:1px solid #b5c5cb;padding:26px 18px 0 0}.process-dot{position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:#86b040}.process-step h3{font-size:20px;margin:24px 0 10px;letter-spacing:-.03em}.process-step p{font-size:14px;color:var(--muted);line-height:1.55;margin:0}.tech-section{background:var(--paper)}.tech-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.tech-grid article{border-top:3px solid #94bf4d;background:var(--white);padding:23px;min-height:220px}.tech-grid h3{font-size:20px;margin-bottom:14px}.tech-grid p{font-size:14px;color:var(--muted);margin:0}.about-section{background:#eaf0f1}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-grid h2{margin:0}.about-text{font-size:19px;line-height:1.75}.about-note{padding-top:24px;border-top:1px solid #bdcace;font-size:14px;font-weight:700;color:#4c6274}
.faq-list{max-width:920px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 2px;font-family:"Noto Sans Display",sans-serif;font-size:19px;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#638731;font-size:24px;font-weight:400;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:750px;color:var(--muted);margin:0;padding:0 30px 25px 2px}
.contact-section{background:var(--navy);color:var(--white)}.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:9%}.contact-info .eyebrow{color:var(--accent)}.contact-info h2{margin-bottom:25px}.contact-info>p:not(.eyebrow){font-size:18px;color:#c0ced8}.contact-details{margin-top:60px;border-top:1px solid #53677b}.contact-details>div{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid #53677b;padding:15px 0}.contact-details>div>span:first-child{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#b2c2d0}.contact-details a,.contact-details>div>span:last-child{font-size:16px}.contact-details a{text-decoration:underline;text-underline-offset:4px}.contact-form{padding:32px;background:var(--white);color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;margin-bottom:18px;font-size:13px;font-weight:700}.contact-form label small{font-weight:400;color:var(--muted)}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;display:block;border:1px solid #b7c5ca;border-radius:2px;background:#fff;color:var(--ink);padding:12px 13px;margin-top:7px;min-height:48px}.contact-form textarea{resize:vertical}.contact-form input:user-invalid,.contact-form select:user-invalid,.contact-form textarea:user-invalid{border-color:#a93232}.contact-form .consent{display:flex;align-items:flex-start;gap:11px;font-weight:400;line-height:1.5}.consent input{margin-top:4px;min-width:18px;min-height:18px;accent-color:#638731}.consent a{text-decoration:underline;text-underline-offset:3px}.form-hint{font-size:12px;line-height:1.5;color:var(--muted)}.form-status{font-size:13px;color:#8d2b2b;font-weight:700;min-height:0}.form-status:not(:empty){margin-block:10px}.contact-form .button{border:0}
.site-footer{background:var(--deep);color:#dae5ea;padding-block:65px}.footer-grid{display:grid;grid-template-columns:1.6fr 1.1fr 1fr 1.1fr;gap:40px}.site-footer .wordmark{color:var(--white);display:inline-block;margin-bottom:18px}.site-footer p{color:#b4c4d0;font-size:14px;max-width:260px}.site-footer h2{text-transform:uppercase;letter-spacing:.12em;color:#9fc5d3;font-size:12px;margin-bottom:22px}.site-footer a:not(.wordmark),.site-footer span{display:block;font-size:14px;margin-bottom:10px;color:#dae5ea}.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}.privacy-page{padding-block:70px 110px}.back-link{font-size:14px;font-weight:700;color:#5f802b}.privacy-page .eyebrow{margin-top:75px}.privacy-page h1{font-size:clamp(48px,6vw,80px);letter-spacing:-.06em;margin-bottom:20px}.privacy-intro{font-size:19px;max-width:760px;color:var(--muted)}.privacy-content{max-width:850px;margin-top:65px}.privacy-content section{border-top:1px solid var(--line);padding:28px 0}.privacy-content h2{font-size:24px;margin-bottom:12px}.privacy-content p{color:var(--muted);margin-bottom:0}
@media(max-width:1120px){.desktop-nav{display:none}.menu-button{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;gap:0;padding:10px 20px 25px;border-top:1px solid var(--line);background:var(--white)}.mobile-nav a{padding:12px 0;font-size:15px;font-weight:700;border-bottom:1px solid var(--line)}.tech-grid{grid-template-columns:repeat(3,1fr)}.hero-grid{grid-template-columns:1fr 340px;gap:30px}.hero-art{min-height:350px}}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;padding-block:75px 40px}.hero-art{min-height:260px}.art-axis{font-size:100px}.service-grid,.why-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.why-item:nth-last-child(2){border-bottom:0}.process-grid{grid-template-columns:repeat(2,1fr);gap:30px}.solution-grid,.tech-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:50px}.contact-details{margin-top:35px}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){html{scroll-padding-top:72px}.container{width:min(100% - 32px,1240px)}.header-inner{min-height:68px}.wordmark{font-size:28px}.header-actions{gap:7px}.languages a{min-width:29px;font-size:10px}.hero h1{font-size:clamp(43px,11vw,65px)}.hero-lede{font-size:17px}.hero-art{min-height:225px}.art-axis{font-size:75px}.art-top,.art-bottom{font-size:10px}.hero-note{font-size:12px}.section{padding-block:75px}.section-heading{margin-bottom:33px}.section-heading h2,.about-grid h2,.contact-info h2{font-size:clamp(35px,9vw,52px)}.service-grid{grid-template-columns:1fr}.service-card{padding:26px}.service-card dl{display:block}.service-card dt:not(:first-child){margin-top:16px}.service-card dd{font-size:14px}.solution-grid,.tech-grid,.process-grid{grid-template-columns:1fr}.solution-item{min-height:95px}.process-grid{gap:23px}.process-step h3{margin-top:12px}.tech-grid article{min-height:auto}.why-grid{gap:0}.why-item:nth-last-child(2){border-bottom:0}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.site-footer{padding-block:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
h1,h2,h3{overflow-wrap:break-word}
