/* Locally served fonts; licenses: assets/fonts/*-OFL.txt */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-8.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/font-9.ttf) format('truetype');
}

:root{--ink:#16362f;--green:#214e42;--lime:#d9ef88;--paper:#f6f7f1;--muted:#607169}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #739b27;outline-offset:5px}header{padding:27px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dbe1d7}.logo{font-family:Manrope,Arial,sans-serif;font-size:31px;font-weight:800;letter-spacing:-1.7px}.logo span{font-size:12px;vertical-align:top;letter-spacing:0}.logo small{display:block;font-size:8px;letter-spacing:2px;margin-top:4px}nav{display:flex;gap:31px;align-items:center;font-size:13px}.navcta{border:1px solid #b7c4b8;padding:13px 20px;border-radius:3px}.menu{display:none}.hero{display:grid;grid-template-columns:1.25fr 1fr;min-height:620px;padding:70px 5% 55px;gap:40px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.8}.eyebrow span,.dot{display:inline-block;background:#729b3b;width:7px;height:7px;border-radius:50%;margin-right:9px}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-2px;font-weight:500}h1{font-size:clamp(38px,4.7vw,72px);line-height:1.13;margin:32px 0 25px}em{font-style:normal;color:#688b41}p{line-height:1.7}.intro{font-size:17px;max-width:490px;color:var(--muted)}.button{background:var(--lime);padding:18px 23px;display:inline-flex;justify-content:space-between;gap:30px;align-items:center;font-size:13px;font-weight:700;border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:#c7e66d;transform:translateY(-2px)}.hero .button{margin-top:21px}.textlink{font-size:12px;font-weight:600;border-bottom:1px solid #b7c4b8;padding-bottom:8px}.hero .textlink{display:block;width:max-content;margin-top:23px}.hero-note{font-size:10px;color:var(--muted);margin-top:40px}.hero-note i{padding:0 9px;color:#acb7a6}.art{background:var(--green);position:relative;overflow:hidden;min-height:465px;border-radius:4px;color:#e8eedc}.grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:45px 45px}.orb{position:absolute;border:1px solid #d9ef883a;border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%);box-shadow:0 0 0 24px #ffffff02}.o1{width:350px;height:350px}.o2{width:260px;height:260px;border:28px solid #c4dd8920}.o3{width:170px;height:170px;border:20px solid #d9ef8840;box-shadow:0 0 60px #d9ef8820}.core{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);font-family:Manrope;font-size:87px;letter-spacing:-10px;font-weight:700;color:var(--lime)}.core span{font-size:40px;vertical-align:top;letter-spacing:0}.art-top{position:absolute;top:30px;left:30px;font-size:10px;letter-spacing:2px;line-height:1.8}.art-bottom{position:absolute;bottom:29px;left:30px;font-size:8px;letter-spacing:1.5px}.art-bottom .dot{background:var(--lime)}.coordinate{position:absolute;right:22px;top:36%;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px}.sector-strip{padding:29px 5%;border-top:1px solid #dbe1d7;border-bottom:1px solid #dbe1d7;display:flex;justify-content:space-between;align-items:center;gap:20px}.sector-strip span{font-size:9px;letter-spacing:1.5px;max-width:150px;line-height:1.7}.sector-strip p{font-size:14px;margin:0}.sector-strip b{color:#98ae80;padding:0 22px}.section{padding:95px 5%}.section-head{display:grid;grid-template-columns:1fr 1.6fr 1.15fr;gap:45px;align-items:start;margin-bottom:45px}.section-head .eyebrow{margin-top:12px}h2{font-size:clamp(30px,3.3vw,49px);line-height:1.2;margin:0}h3{font-size:25px;letter-spacing:-.7px;margin:0 0 14px}.section-head>p:last-child{font-size:13px;color:var(--muted);margin:6px 0 0}.service-list{margin-left:28%}.service-list article{display:grid;grid-template-columns:45px 1fr 35px;border-top:1px solid #ccd6c7;padding:32px 0;gap:20px}.num{font-size:11px;color:#73934f;padding-top:7px}.service-list p{font-size:14px;color:var(--muted);max-width:540px}.service-list ul{display:flex;flex-wrap:wrap;gap:9px;padding:0;list-style:none}.service-list li{font-size:10px;padding:7px 10px;border:1px solid #dce3d5;border-radius:2px}.service-icon{font-size:25px}.statement{background:var(--green);color:var(--paper);padding:70px 5%;position:relative}.statement h2{font-size:clamp(34px,4.2vw,62px);max-width:850px;margin-top:24px}.statement em{color:var(--lime)}.statement>p:not(.eyebrow){max-width:530px;color:#c4d1c6;font-size:15px;margin:28px 0}.statement .textlink{color:var(--lime)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps article{border-top:2px solid #c8d5bb;padding-top:25px}.steps span{font-size:9px;letter-spacing:1.4px;color:#71884f}.steps h3{font-size:20px;line-height:1.4;margin-top:27px}.steps p{font-size:13px;color:var(--muted)}.about{background:#e8eddf;display:grid;grid-template-columns:1fr 1fr;gap:70px}.about h2{font-size:52px;margin-top:25px}.about .large{font-size:23px;line-height:1.55;margin-top:35px;letter-spacing:-.3px}.about p:not(.large):not(.eyebrow){font-size:14px;color:var(--muted)}.about-line{border-top:1px solid #c7d3bc;padding-top:24px;display:grid;grid-template-columns:1fr 1fr;margin-top:30px}.about-line span,.about-line small{font-size:11px;color:var(--muted)}.about-line small{grid-column:2;margin-top:5px}.faq .section-head{grid-template-columns:1fr 2.8fr}.faq details{margin-left:28%;border-bottom:1px solid #d1dbca;padding:22px 0}.faq summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer;font-size:17px;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq details p{max-width:670px;font-size:14px;color:var(--muted)}.faq details[open] summary span{transform:rotate(45deg)}.contact{background:#e1edbf;display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.contact h2{margin-top:25px;font-size:52px}.contact p{font-size:14px}.contact-email{display:block;font-size:clamp(17px,2vw,27px);margin:35px 0 17px;text-decoration:underline;text-underline-offset:8px}.phone{font-size:20px}.contact-box{background:var(--paper);padding:34px;border-radius:4px}.contact-box h3{margin-top:20px}.contact-box p{color:var(--muted)}label{display:block;font-size:11px;font-weight:600;margin-top:25px}select{width:100%;border:1px solid #bdcbb4;background:transparent;padding:14px;margin:9px 0 20px;color:var(--ink);border-radius:2px}.contact-box .button{display:flex}.contact-box small{display:block;font-size:10px;color:var(--muted);margin-top:16px;line-height:1.6}footer{padding:45px 5%;display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:25px}footer p{font-size:10px;color:var(--muted);line-height:1.9}footer a{text-decoration:underline}.skip{position:fixed;top:-100px;background:white;padding:15px;z-index:20}.skip:focus{top:0}@media(min-width:1500px){header,.hero,.sector-strip,.section,.statement,footer{padding-left:calc((100% - 1350px)/2);padding-right:calc((100% - 1350px)/2)}}@media(max-width:900px){nav{gap:15px}.hero{gap:25px;padding-top:45px}.hero-note{line-height:2}.sector-strip{align-items:start;flex-direction:column}.sector-strip b{padding:0 10px}.section-head{grid-template-columns:1fr 2fr}.section-head>p:last-child{grid-column:2}.service-list,.faq details{margin-left:0}.steps{grid-template-columns:repeat(2,1fr)}.about,.contact{gap:35px}.about h2,.contact h2{font-size:40px}.about .large{font-size:20px}.contact-box{padding:25px}footer{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){header{padding:21px 6%;position:relative}.logo{font-size:27px}.menu{display:block;border:1px solid #bdcbb4;background:none;padding:9px 12px;color:var(--ink);font-size:12px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:25px 6%;z-index:10;border-bottom:1px solid #ccd6c7}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:23px}.hero{grid-template-columns:1fr;padding:38px 6%;gap:37px}h1{font-size:42px;letter-spacing:-2.3px}.intro{font-size:16px}.hero-note{margin-top:25px}.art{min-height:360px}.o1{width:290px;height:290px}.o2{width:220px;height:220px}.o3{width:150px;height:150px}.sector-strip{padding:24px 6%}.sector-strip p{font-size:12px;line-height:2.2}.sector-strip span{max-width:none}.section{padding:57px 6%}.section-head,.faq .section-head{display:block;margin-bottom:30px}.section-head h2{margin:20px 0}.section-head>p:last-child{font-size:14px}h2{font-size:35px}.service-list article{grid-template-columns:24px 1fr 20px;gap:10px}.service-list h3{font-size:23px}.service-list li{font-size:9px}.statement{padding:55px 6%}.statement h2{font-size:36px}.steps{grid-template-columns:1fr;gap:25px}.steps h3{margin-top:16px}.about,.contact{grid-template-columns:1fr}.about h2,.contact h2{font-size:42px}.about .large{margin-top:0}.faq summary{font-size:16px}.contact{gap:35px}footer{padding:35px 6%;gap:20px}.contact-email{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.detail-hero{background:#e8eddf}.detail-hero .eyebrow{margin-top:35px}.detail-hero .intro{max-width:710px}.detail-hero h1{font-size:clamp(35px,4.5vw,65px)}.detail-hero .button{margin-top:15px}.source-note{font-size:12px;margin-left:28%;color:var(--muted)}.source-note a{text-decoration:underline}.related{padding-top:35px;padding-bottom:40px;border-top:1px solid #ccd6c7}.related a{display:inline-block;margin:10px 30px 10px 0;font-size:14px;text-decoration:underline;text-underline-offset:5px}@media(max-width:650px){.source-note{margin-left:0}.detail-hero h1{font-size:36px}.related a{display:block}}

.legal-page{max-width:1000px;margin:0 auto}.legal-page h2{font-size:30px;margin:15px 0 28px}.legal-page dl{display:grid;grid-template-columns:210px 1fr;gap:15px 25px;margin-bottom:65px}.legal-page dt{font-size:13px;color:var(--muted)}.legal-page dd{margin:0;font-size:15px;overflow-wrap:anywhere}.legal-page a{text-decoration:underline;text-underline-offset:4px}.legal-page p{font-size:15px}@media(max-width:650px){.legal-page dl{grid-template-columns:1fr;gap:6px}.legal-page dd{margin-bottom:16px}}
