/* Nature v2 — quiet terrain in the canvas and card edges; no picture banner. */
:root{--canvas:#edf0e5;--paper:#faf8f0;--ink:#233d31;--muted:#566358;--line:#d6dbcc;--sage:#e7eddf;--peach:#efe4d6;--green:#274b38;--section-space:96px}
html{background:var(--canvas)}
body{margin:0;border-radius:0;background:radial-gradient(ellipse 85% 650px at 105% 5%,#dce6d580,transparent),radial-gradient(ellipse 70% 900px at -15% 45%,#dce6d58c,transparent),radial-gradient(ellipse 85% 750px at 100% 80%,#e7dcc966,transparent),linear-gradient(155deg,#faf8f0,#f3f4e9 55%,#f8f5ec);font-size:17px}
.site-header{max-width:1440px;padding:22px 64px;border:0;min-height:94px}
.site-header nav{gap:16px}.site-header nav a{font-size:16px;padding:12px 18px}.site-header nav .active{background:var(--sage)}
main{max-width:1440px;padding-inline:64px}
.hero{position:relative;padding:60px 0 66px;gap:70px;grid-template-columns:1.12fr 1fr;align-items:center}
h1{font-size:clamp(52px,5.3vw,76px);letter-spacing:-3.7px;line-height:1.07}h1 em,h2 em{color:#547348}
.hero-lede{font-size:18px;max-width:520px;line-height:1.8}.eyebrow{font-size:12px;letter-spacing:1.25px}
.hero-actions{gap:24px}.button,.text-link{font-size:16px}.button{border-radius:12px;min-height:54px}
.demand-board{padding:28px 32px;background:linear-gradient(145deg,#f0f3e9,#e0e9d6);border:1px solid #d4ddc9;border-radius:26px;box-shadow:0 12px 32px #344d3010}
.demand-orbit{max-width:390px;margin:6px auto 12px}.orbit-pill text{font-size:17px}.orbit-center-text{font-size:22px}
.demand-footer{padding-top:20px}.demand-footer strong{font-size:16px}.demand-footer span{font-size:14px;line-height:1.6}.demand-footer small{font-size:11px}
.board-topline .kicker{font-size:12px}.measure-tag{font-size:12px}
.principle-strip{padding:24px 0;gap:20px}.principle-strip p{font-size:15px}
.section-intro>p:last-child:not(.kicker){font-size:18px}
.service-card{padding:34px 30px 52px;border:1px solid #d7dece;background:linear-gradient(150deg,#f0f3e8,#e4ebd9)}
.card-blue{background:linear-gradient(150deg,#f6eee3,#ece1d0);border-color:#e3d6c7}.card-dark{background:linear-gradient(150deg,#e9eee3,#d9e5d5);border-color:#cad8c6}
.service-card h3{font-size:29px}.service-card p,.service-card li{font-size:16px}.service-card li{padding-block:6px}
/* Distinct, quiet nature photographs; no repeated contours or mirrored crops. */
.service-card,.demand-board,.tooling-section,.legal-title,.empty-state{position:relative;isolation:isolate;overflow:hidden}
.service-card:after,.tooling-section:after{content:'';position:absolute;pointer-events:none;z-index:-1;left:0;right:0;bottom:0;height:175px;background-image:var(--card-photo);background-size:cover;background-position:center 55%;opacity:.24;filter:saturate(.45);mask-image:linear-gradient(transparent,#000 65%)}
.service-card{--card-photo:url('assets/search-mountains.jpg')}
.card-blue{--card-photo:url('assets/landing-pasture.jpg')}
.card-dark{--card-photo:url('assets/measurement-woodland.jpg')}
.tooling-section{--card-photo:url('assets/tooling-lake.jpg')}
.tooling-section:after{height:65%;min-height:220px;opacity:.23;background-position:center 60%;mask-image:linear-gradient(transparent,#000 75%)}
.process-row p{font-size:17px;line-height:1.8}.process-row h3{font-size:29px}
.tooling-section{padding:48px;gap:60px;background:linear-gradient(135deg,#f5eee2,#eee6d7);border:1px solid #e2d8c9}.tooling-copy>p:not(.kicker),.guardrail-panel p{font-size:17px;line-height:1.8}.guardrail-panel strong{font-size:19px}
.contact-section{isolation:isolate;padding:58px;background:linear-gradient(90deg,#193c2fee 0%,#254b39df 50%,#28493450 100%),url('assets/pasture-landscape.webp') center 55%/cover;min-height:360px}.contact-section:after{display:none}.contact-section .kicker{position:relative}.contact-section h2{max-width:780px}.contact-orbit{display:none}
.site-footer{max-width:1440px;padding:44px 64px}.brand-footer{display:flex;align-items:center;gap:14px;font-size:16px;line-height:1.5}.brand-mark{width:48px;height:48px;object-fit:contain;border-radius:12px}.brand-footer small{font-size:13px}.site-footer p,.footer-links{font-size:14px}.site-footer>p:not(.copyright){display:block}
.legal-main{max-width:1440px;padding-top:0}.legal-title{max-width:none;margin:0 0 56px;padding:64px 64px 70px;border-radius:28px;border:1px solid #d7dece;background:linear-gradient(125deg,#f1f3e9,#e5ecdc)}.legal-title h1{font-size:64px}.legal-title>p:last-child{font-size:18px;max-width:660px}.legal-content{max-width:820px}.legal-content p,.legal-content li{font-size:17px;line-height:1.85}.legal-content h2{font-size:29px}
.empty-main{padding-block:0 60px}.empty-state{border-radius:28px;padding:90px 64px;border:1px solid #d7dece;background:linear-gradient(125deg,#f1f3e9,#e5ecdc)}.empty-state h1{font-size:64px}.empty-state>p:not(.kicker){font-size:18px;max-width:580px;margin:28px 0}.empty-state .button{margin-top:8px}
@media(max-width:1100px){.site-header{padding-inline:36px}main{padding-inline:36px}.hero{gap:32px}.hero h1{font-size:58px}.demand-board{padding:25px}.demand-footer>div{padding-inline:8px}.demand-footer span{font-size:13px}.service-card{padding:28px 24px 48px}.service-card h3{font-size:26px}.service-card p,.service-card li{font-size:16px}.tooling-section{padding:36px;gap:36px}.site-footer{padding-inline:36px}.hero-actions{gap:12px}.legal-title{padding:48px}}
@media(max-width:850px){:root{--section-space:76px}.hero{grid-template-columns:1fr;gap:36px;padding-block:44px}.hero-copy{max-width:650px}.hero h1{font-size:68px}.demand-board{width:100%;padding:30px}.demand-orbit{max-width:390px}.demand-footer span{font-size:15px}.service-card{padding:32px 32px 52px}.tooling-section{gap:32px}.contact-section{padding:44px}.legal-title{padding:42px}.empty-state{padding:64px 42px}}
@media(max-width:600px){:root{--section-space:64px}.site-header{min-height:82px;padding:16px 18px}.site-header nav{gap:2px}.site-header nav a{font-size:14px;padding:12px 9px}.site-header nav .nav-cta{padding-inline:13px;margin-left:3px}main{padding-inline:20px}.hero{padding:32px 0 36px;gap:32px}.hero h1{font-size:clamp(44px,12.3vw,58px);letter-spacing:-2.2px}.hero-lede{font-size:17px;line-height:1.75}.eyebrow{font-size:10px;letter-spacing:.85px;margin-bottom:20px}.hero-actions{gap:8px}.button,.text-link{font-size:16px}.hero-actions .button{width:100%}.demand-board{padding:24px 18px;border-radius:22px}.board-topline .kicker{font-size:11px;letter-spacing:1px}.measure-tag{font-size:11px}.demand-orbit{margin-block:10px 20px}.orbit-pill text{font-size:19px}.orbit-center-text{font-size:23px}.demand-footer{padding-top:18px}.demand-footer strong{font-size:15px}.demand-footer span{font-size:13px}.principle-strip{gap:18px 12px;padding-block:24px}.principle-strip p{font-size:14px}.section-intro>p:last-child:not(.kicker){font-size:17px;line-height:1.75}h2{font-size:36px}.service-card{padding:28px 24px 48px}.service-card h3{font-size:28px}.service-card p,.service-card li{font-size:16px;line-height:1.75}.service-card li{padding-block:6px}.process-row p{font-size:17px;line-height:1.75}.process-row h3{font-size:27px}.tooling-section{padding:28px 24px 40px}.tooling-copy>p:not(.kicker),.guardrail-panel p{font-size:16px;line-height:1.8}.guardrail-panel strong{font-size:18px}.standard-grid p{font-size:16px}.contact-section{padding:32px 24px;min-height:0}.contact-section h2{font-size:36px}.contact-section .button{font-size:14px;padding-inline:12px;gap:12px}.site-footer{padding:32px 20px;gap:24px}.footer-links{gap:24px;width:100%;font-size:14px}.brand-mark{width:44px;height:44px}.site-footer>p:not(.copyright){font-size:13px}.legal-main{padding-top:0}.legal-title{padding:32px 24px 48px;margin-bottom:36px;border-radius:22px}.legal-title h1{font-size:44px;letter-spacing:-2px}.legal-title>p:last-child{font-size:17px}.legal-content p,.legal-content li{font-size:16px;line-height:1.85}.legal-content h2{font-size:26px}.empty-state{padding:48px 24px}.empty-state h1{font-size:44px;letter-spacing:-2px}.empty-state>p:not(.kicker){font-size:17px}}

/* The original ReidOS mark belongs once, in the public navigation. */
.site-header{justify-content:space-between;align-items:center;gap:20px}
.nav-brand{display:flex;flex:none;border-radius:11px}
.skip-link:not(:focus){visibility:hidden}
.nav-brand img{display:block;width:44px;height:44px;border-radius:11px}
@media(max-width:600px){.site-header{gap:12px;padding-inline:18px}.nav-brand img{width:36px;height:36px;border-radius:9px}.site-header nav{width:auto;gap:0}.site-header nav a{padding-inline:8px}.site-header nav .nav-cta{padding-inline:10px;margin-left:2px}}
