@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{color-scheme:dark;--bg:#111210;--surface:#191b17;--surface-2:#21241e;--ink:#f0f1e9;--muted:#aeb1a4;--soft:#83877b;--line:#373a32;--accent:#d3ed91;--accent-dark:#243016;--max:1560px}
*{box-sizing:border-box}
html{min-width:280px;background:var(--bg);scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;-webkit-font-smoothing:antialiased}
::selection{color:var(--bg);background:var(--accent)}
a{color:inherit}
button{font:inherit}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:12px 18px;background:var(--accent);color:var(--bg);transform:translateY(-170%);text-decoration:none}
.skip-link:focus{transform:translateY(0)}
[hidden]{display:none!important}
.site-shell{max-width:var(--max);margin-inline:auto;padding-inline:clamp(20px,5.25vw,88px)}
main:focus{outline:none}
.section-pad{padding-block:clamp(84px,10vw,156px)}
[id]{scroll-margin-top:28px}
.site-header{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}
.brand,.footer-brand{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-family:Manrope,Arial,sans-serif;font-size:27px;font-weight:800;letter-spacing:-.065em;line-height:1}
.brand img,.footer-brand img{flex:none;object-fit:contain;transform:translateY(1px)}
.brand-period{color:var(--accent)}
.primary-nav{display:flex;align-items:center;gap:clamp(24px,3vw,50px)}
.primary-nav a{font-size:13px;font-weight:600;text-decoration:none;color:#c6c9bd;transition:color .2s}
.primary-nav a:hover,.footer-links a:hover{color:var(--accent)}
.primary-nav .nav-contact{display:inline-flex;align-items:center;gap:24px;padding:14px 18px;border:1px solid #697257;color:var(--ink)}
.primary-nav .nav-contact span{color:var(--accent)}
.menu-toggle{display:none}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 32px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;line-height:1.5}
.eyebrow-line{width:22px;height:1px;flex:none;background:var(--accent)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Manrope,Arial,sans-serif}
h1{font-size:clamp(58px,6.1vw,92px);line-height:1.075;font-weight:600;letter-spacing:-.075em;margin-bottom:32px}
h1 em,h2 em{font-style:normal;color:var(--accent)}
h2{font-size:clamp(45px,5vw,79px);line-height:1.13;letter-spacing:-.065em;font-weight:600;margin-bottom:0}
.hero{display:flex;align-items:center;min-height:clamp(610px,53vw,760px);padding-block:clamp(90px,10vw,150px)}
.hero-copy{min-width:0;max-width:930px}
.hero-intro{color:#c3c6b9;font-size:clamp(17px,1.45vw,21px);line-height:1.7;max-width:670px;margin-bottom:29px}
.hero-status{display:flex;align-items:center;gap:10px;margin:0 0 36px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.5}
.status-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 30px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:56px;padding:15px 20px;text-decoration:none;font-weight:700;font-size:13px;line-height:1.35;transition:background .2s,color .2s,transform .2s}
.button-primary{background:var(--accent);color:var(--bg)}
.button-primary:hover{background:#e0f6ac;transform:translateY(-2px)}
.text-link{display:inline-flex;align-items:center;gap:15px;padding-block:12px;color:var(--ink);font-size:13px;font-weight:700;line-height:1.35;text-decoration:none;border-bottom:1px solid var(--accent)}
.text-link span{color:var(--accent)}
.text-link:hover{color:var(--accent)}
.hero-footnote{display:flex;align-items:center;gap:11px;margin:clamp(65px,8vw,105px) 0 0;color:var(--soft);font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.mini-mark{color:var(--accent);font-size:18px}
.section-index{display:flex;justify-content:space-between;gap:20px;padding-block:20px;border-block:1px solid var(--line);color:#969b8e;font-size:9px;font-weight:700;letter-spacing:.18em}
.product-section{border-bottom:1px solid var(--line)}
.section-heading{margin-bottom:clamp(55px,7vw,110px)}
.product-grid{display:grid;grid-template-columns:minmax(200px,.68fr) minmax(0,1.3fr);gap:clamp(45px,9vw,150px)}
.section-lead{max-width:360px;color:#c0c4b7;font-size:clamp(19px,1.7vw,25px);line-height:1.55;letter-spacing:-.025em}
.capability-list{border-top:1px solid var(--line)}
.capability{display:grid;grid-template-columns:37px minmax(0,1fr) 24px;gap:clamp(15px,2.5vw,34px);padding:27px 0 30px;border-bottom:1px solid var(--line)}
.capability-number{padding-top:9px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.12em}
.capability h3{margin-bottom:8px;font-size:clamp(21px,2vw,29px);font-weight:600;letter-spacing:-.05em}
.capability p{max-width:550px;margin-bottom:0;color:var(--muted);font-size:15px;line-height:1.6}
.capability-icon{padding-top:5px;color:var(--accent);font-size:20px}
.development-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:start;gap:clamp(55px,9vw,150px);border-bottom:1px solid var(--line)}
.development-copy{padding-top:60px}
.development-copy p{max-width:540px;color:#c6cbbd;font-size:clamp(17px,1.5vw,21px);line-height:1.7}
.development-copy p+p{margin-top:24px;color:var(--muted);font-size:15px}
.about-section{display:grid;grid-template-columns:1fr .8fr;gap:clamp(60px,12vw,180px);border-bottom:1px solid var(--line)}
.about-copy{padding-top:59px}
.about-copy p{font-size:clamp(17px,1.5vw,21px);line-height:1.7;color:#c6cbbd}
.about-copy p+p{font-size:15px;color:var(--muted);margin-top:21px}
.about-copy .text-link{margin-top:20px}
.faq-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(45px,9vw,150px)}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;padding-block:20px;list-style:none;cursor:pointer;font-family:Manrope,Arial,sans-serif;font-size:clamp(16px,1.5vw,22px);font-weight:600;letter-spacing:-.035em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-indicator{flex:none;color:var(--accent);font-family:"DM Sans",Arial,sans-serif;font-size:27px;font-weight:400;line-height:1}
details[open] .faq-indicator{transform:rotate(45deg)}
.faq-list details p{max-width:540px;margin:0 35px 26px 0;color:var(--muted);font-size:15px;line-height:1.7}
.faq-list details a{color:var(--accent);text-underline-offset:3px}
.contact-section{margin-inline:calc(-1*clamp(20px,5.25vw,88px));padding-inline:clamp(20px,5.25vw,88px);background:var(--accent);color:#1b2115}
.contact-top{display:flex;justify-content:space-between;gap:20px;margin-bottom:clamp(65px,9vw,130px);font-size:10px;font-weight:700;letter-spacing:.16em}
.contact-section h2{font-size:clamp(58px,8.1vw,126px)}
.contact-section h2 em{color:#718953}
.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:clamp(70px,8vw,120px);padding-top:28px;border-top:1px solid #65794d}
.contact-bottom p{max-width:370px;margin:0;color:#35412b;font-size:16px;line-height:1.65}
.contact-links{display:flex;flex-wrap:wrap;gap:12px}
.contact-links a{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:13px 16px;border:1px solid #3e5130;color:#1b2115;font-size:13px;font-weight:700;text-decoration:none}
.contact-links a:first-child{background:#1b2115;color:var(--ink)}
.contact-links a:hover{background:#485d35;color:white}
.contact-section a:focus-visible{outline-color:#1b2115}
.site-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding-block:37px 55px}
.footer-brand{font-size:22px}
.footer-links{display:flex;flex-wrap:wrap;gap:12px 25px}
.footer-links a{color:var(--muted);font-size:12px;text-decoration:none}
.footer-meta{display:flex;flex-direction:column;align-items:end;gap:7px;color:var(--soft);font-size:11px}
@media(max-width:1200px){h1{font-size:clamp(58px,6.8vw,88px)}}
@media(max-width:900px){.product-grid,.development-section,.about-section,.faq-section{grid-template-columns:1fr;gap:42px}.section-lead{max-width:640px}.development-copy,.about-copy{padding-top:0}.site-footer{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}}
@media(max-width:700px){.site-header{min-height:75px;flex-wrap:wrap;gap:0}.brand{font-size:23px}.brand img{width:27px;height:27px}.primary-nav{width:100%;display:flex;flex-wrap:wrap;gap:0 22px;padding:0 0 18px}.primary-nav>a{min-height:44px;display:inline-flex;align-items:center}.primary-nav .nav-contact{padding:10px 12px;margin-top:7px}.js .menu-toggle:not([hidden]){display:inline-flex}.menu-toggle{width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.menu-lines{display:flex;flex-direction:column;gap:5px}.menu-lines span{width:19px;height:2px;background:currentColor}.menu-open .menu-lines span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-lines span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.js .primary-nav{display:none;flex-direction:column;align-items:stretch;padding:12px 0 20px;border-top:1px solid var(--line)}.js .menu-open .primary-nav{display:flex}.js .primary-nav>a{width:100%;min-height:49px}.js .primary-nav .nav-contact{justify-content:space-between;margin-top:8px}.hero{min-height:auto;padding-block:85px 100px}.hero h1{font-size:clamp(50px,10.6vw,76px)}.section-index span:nth-child(2){display:none}.contact-bottom{display:block}.contact-links{margin-top:30px}.site-footer{grid-template-columns:1fr}.footer-meta{grid-column:auto;display:flex;flex-wrap:wrap;gap:12px;justify-content:start;align-items:start}}
@media(max-width:500px){.section-pad{padding-block:78px}.hero{padding-block:75px 88px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:24px}.hero h1{font-size:clamp(42px,11vw,60px)}.hero-intro{font-size:16px}.hero-status{font-size:10px;letter-spacing:.06em}.hero-actions{align-items:stretch;flex-direction:column;gap:14px}.button{justify-content:space-between}.hero-footnote{margin-top:50px}.section-index{font-size:8px}.capability{grid-template-columns:25px minmax(0,1fr) 15px;gap:12px}.capability p{font-size:14px}.capability-icon{font-size:16px}.faq-list summary{min-height:75px}.contact-section h2{font-size:clamp(50px,12vw,70px)}.contact-links{display:flex;flex-direction:column}.contact-links a{width:100%}}
@media(max-width:370px){.hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:0.01ms!important;animation-duration:0.01ms!important;animation-iteration-count:1!important}}
