
:root{
  --bg:#080a09; --panel:#0d100f; --panel2:#111513; --card:#151917;
  --text:#f4f6f5; --muted:#99a39f; --line:#222925;
  --green:#1b5d48; --green2:#2b8066; --soft:#c8d5d0;
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(8,10,9,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav-wrap{width:min(1180px,calc(100% - 40px));height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;gap:12px;align-items:center;font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;font-weight:700}
.brand img{width:38px;height:38px;border-radius:14px}
nav{display:flex;gap:30px;align-items:center;font-size:13px;color:#b6beb9}
nav a:hover{color:#fff}
.nav-cta{background:var(--green);padding:10px 18px;border-radius:11px;color:#fff}
.section{min-height:92vh;padding:140px max(24px,calc((100vw - 1180px)/2)) 110px;position:relative}
.hero{padding-top:150px;display:flex;align-items:center}
.hero-grid{width:100%;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.eyebrow{font-size:11px;letter-spacing:.18em;color:#4f9a80;font-weight:700;margin:0 0 22px}
h1,h2,h3{font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;margin:0;line-height:1.03}
h1{font-size:clamp(48px,6vw,86px);letter-spacing:-.04em}
h1 span,h2 span{color:#90a29b}
.lead{max-width:690px;color:#aeb8b3;font-size:18px;margin:28px 0 38px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border-radius:13px;border:1px solid var(--line);font-size:13px;font-weight:600;transition:.25s}
.btn.primary{background:var(--green);border-color:var(--green);color:#fff}
.btn.primary:hover{background:var(--green2);transform:translateY(-1px)}
.btn.ghost{background:#101311;color:#d9dfdc}.btn.ghost:hover{background:#161b18}
.hero-card{position:relative;border-radius:32px;overflow:hidden;border:1px solid #222925;background:#111;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:rotate(1.2deg)}
.hero-card img{width:100%;height:520px;object-fit:cover;filter:saturate(.75) brightness(.86)}
.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(0,0,0,.72))}
.hero-card-label{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;display:flex;justify-content:space-between;align-items:end;gap:20px}
.hero-card-label span{font-size:11px;color:#87aa9c;text-transform:uppercase;letter-spacing:.14em}
.hero-card-label strong{font-size:16px}
.scroll-cue{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.16em;color:#64716c;text-transform:uppercase;display:flex;gap:10px;align-items:center}
.scroll-cue span{width:1px;height:28px;background:#315c4c;display:block}
.section-panel{background:var(--panel)}
.section-head{max-width:820px;margin-bottom:64px}
.section-head h2{font-size:clamp(42px,5vw,68px);letter-spacing:-.035em}
.section-intro{color:#9ca8a2;max-width:680px;margin:24px 0 0;font-size:16px}
.profile-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:60px;align-items:start}
.profile-copy{max-width:520px;color:#95a19b}.large-copy{font-size:24px;color:#e9eeeb;line-height:1.4;margin-top:0}
.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.stat-card,.service-card,.step{background:var(--card);border:1px solid var(--line);border-radius:22px}
.stat-card{padding:26px;min-height:180px}.stat-card span{font-size:10px;color:#668177;text-transform:uppercase;letter-spacing:.15em}.stat-card strong{display:block;margin-top:40px;font-size:18px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.service-card{padding:30px;min-height:430px;transition:.3s}
.service-card:hover{transform:translateY(-6px);border-color:#2d5e4d;background:#171d1a}
.service-no{width:44px;height:32px;border-radius:12px;background:#174d3d;color:#9dc5b7;display:grid;place-items:center;font-size:11px;font-weight:700;margin-bottom:42px}
.service-card h3{font-size:24px;margin-bottom:18px}
.service-card p{color:#9ca6a1;font-size:14px;min-height:110px}
.service-card ul{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid #242a27}
.service-card li{padding:11px 0;border-bottom:1px solid #222724;color:#c2cac6;font-size:12px}
.workflow{min-height:auto}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step{padding:30px;min-height:240px}.step>span{font-size:11px;color:#5f927f}.step h3{font-size:22px;margin:66px 0 10px}.step p{color:#929e98;font-size:13px}
.contact-section{background:#0d0f0e;min-height:80vh;display:flex;align-items:center}
.contact-wrap{width:100%;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.contact-copy h2{font-size:clamp(44px,5vw,70px)}.contact-copy p:not(.eyebrow){color:#99a39e;max-width:470px}.contact-badge{margin-top:30px;display:inline-block;padding:10px 14px;border:1px solid #244c3e;border-radius:12px;color:#78a792;font-size:11px}
.contact-form{background:#131614;border:1px solid var(--line);padding:26px;border-radius:24px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
label{display:block;margin-bottom:12px}label>span{display:block;font-size:10px;color:#75827c;margin:0 0 7px;text-transform:uppercase;letter-spacing:.1em}
input,textarea{width:100%;background:#0e100f;border:1px solid #252a27;border-radius:11px;padding:14px;color:#fff;outline:none;font:inherit;font-size:13px}input:focus,textarea:focus{border-color:#2a7159}
.privacy{display:flex;gap:10px;align-items:flex-start;margin:14px 0 18px}.privacy input{width:auto;margin-top:4px}.privacy span{margin:0;text-transform:none;letter-spacing:0;line-height:1.5}
button{cursor:pointer}
footer{border-top:1px solid #1c211e;background:#080a09}
.footer-wrap{width:min(1180px,calc(100% - 40px));margin:auto;padding:38px 0;display:grid;grid-template-columns:1fr 1.3fr auto;gap:36px;align-items:center}
.footer-brand{display:flex;gap:12px;align-items:center}.footer-brand img{width:38px;height:38px;border-radius:12px}.footer-brand strong{display:block;font-size:13px}.footer-brand span,.footer-note,.footer-links{font-size:10px;color:#6d7973}.footer-links{display:flex;gap:18px}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.25,1)}
.reveal.in{opacity:1;transform:none}.delay{transition-delay:.12s}
@media(max-width:980px){
 nav a:not(.nav-cta){display:none}
 .hero-grid,.profile-grid,.contact-wrap{grid-template-columns:1fr}
 .hero-visual{margin-top:10px}.hero-card img{height:430px}
 .service-grid,.steps{grid-template-columns:repeat(2,1fr)}
 .mini-grid{grid-template-columns:1fr 1fr}
 .project, .footer-wrap{grid-template-columns:1fr}
}
@media(max-width:640px){
 .nav-wrap{width:calc(100% - 24px)}.section{padding:115px 16px 80px;min-height:auto}
 h1{font-size:48px}.section-head h2{font-size:42px}
 .service-grid,.steps,.mini-grid,.form-row{grid-template-columns:1fr}
 .service-card{min-height:auto}.service-card p{min-height:auto}
   .hero-card img{height:360px}.hero-card-label{left:18px;right:18px}
 .scroll-cue{display:none}
}


.project-flow{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:115px 0 40px;
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:70px;
  align-items:start;
}
.flow-intro h2{
  font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;
  font-size:clamp(38px,4.4vw,60px);
  letter-spacing:-.035em;
}
.flow-intro h2 span{color:#90a29b}
.flow-intro>p:last-child{color:#929e98;max-width:480px;margin-top:24px}
.flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.flow-card{
  background:#101311;
  border:1px solid var(--line);
  border-radius:22px;
  padding:28px;
  min-height:220px;
  display:flex;
  flex-direction:column;
}
.flow-card span{
  color:#4f9a80;
  font-size:10px;
  letter-spacing:.14em;
  margin-bottom:auto;
}
.flow-card strong{
  font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;
  font-size:21px;
  margin-top:52px;
}
.flow-card small{
  display:block;
  color:#7f8b85;
  font-size:12px;
  line-height:1.55;
  margin-top:10px;
}
@media(max-width:980px){
  .project-flow{grid-template-columns:1fr;gap:38px}
}
@media(max-width:640px){
  .project-flow{width:calc(100% - 32px);padding-top:80px}
  .flow-grid{grid-template-columns:1fr}
}

.support-visual{height:520px;border-radius:32px;position:relative;overflow:hidden;background:linear-gradient(145deg,#111613,#0b0e0c);border:1px solid #233028;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(65,110,91,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(65,110,91,.12) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent)}
.visual-line{position:absolute;height:2px;background:linear-gradient(90deg,transparent,#3a866b,transparent);transform-origin:left center}
.line-a{width:68%;left:10%;top:34%;transform:rotate(16deg)}.line-b{width:62%;left:25%;top:54%;transform:rotate(-19deg)}.line-c{width:48%;left:18%;top:68%;transform:rotate(7deg)}
.visual-node{position:absolute;width:12px;height:12px;border-radius:50%;background:#58a58a;box-shadow:0 0 0 7px rgba(64,137,111,.12)}
.n1{left:22%;top:38%}.n2{right:24%;top:47%}.n3{left:45%;top:66%}
.visual-copy{position:absolute;left:34px;right:34px;bottom:34px}.visual-copy span{display:block;color:#57947e;font-size:10px;letter-spacing:.16em;margin-bottom:10px}.visual-copy strong{font-family:"Segoe UI Variable","Segoe UI",Arial,Helvetica,sans-serif;font-size:25px;line-height:1.25}
.footer-clean{grid-template-columns:1fr auto auto}.footer-copy{font-size:10px;color:#6d7973}
.privacy a,.legal-card a{color:#70ad96;text-decoration:underline;text-underline-offset:3px}
.legal-page{min-height:80vh;padding:150px 24px 100px;background:#0b0d0c}
.legal-wrap{width:min(900px,100%);margin:auto}.legal-wrap>h1{font-size:clamp(48px,7vw,78px);letter-spacing:-.04em}.legal-lead{font-size:18px;color:#99a39e;margin:20px 0 45px}
.legal-card{background:#111513;border:1px solid var(--line);border-radius:26px;padding:clamp(26px,5vw,54px);color:#9da8a2}
.legal-card h2{font-size:20px;color:#eef2ef;margin:36px 0 10px}.legal-card h2:first-child{margin-top:0}.legal-card p{margin:0 0 18px}
.legal-warning{margin-top:38px;padding:20px;border-radius:16px;background:#16231e;border:1px solid #254839;color:#9fb4aa;font-size:12px}
.error-page{padding-top:80px}.error-page .btn{margin-top:20px}
@media(max-width:980px){.footer-clean{grid-template-columns:1fr}.support-visual{height:430px}}
@media(max-width:640px){.support-visual{height:360px}.visual-copy strong{font-size:21px}}

.legal-identity{
  -webkit-user-select:none;
  user-select:none;
}
.legal-identity a{
  -webkit-user-select:text;
  user-select:text;
}

/* casual copy/selection deterrence — no visual design changes */
html, body, body * {
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
}
img, svg {
  -webkit-user-drag: none !important;
}

.lead-sub{display:block;margin-top:10px;color:#8c9892;font-size:.93em}
.form-status{display:none;margin-bottom:16px;padding:13px 14px;border-radius:12px;font-size:12px;line-height:1.5}
.form-status.success{display:block;background:#153f34;border:1px solid #245947;color:#b9d4ca}
.form-status.error{display:block;background:#2b1717;border:1px solid #603030;color:#e0bcbc}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.footer-clean{grid-template-columns:1fr auto}
@media(max-width:640px){.footer-clean{grid-template-columns:1fr;gap:16px}}

.turnstile-container{margin:12px 0 16px}

/* V8.1 navigation refinement */
.nav-wrap{
  gap:24px;
}
.site-header nav{
  flex-shrink:0;
  white-space:nowrap;
}
.site-header nav a{
  flex-shrink:0;
}
@media(max-width:1150px){
  .nav-wrap{
    width:min(100% - 28px,1180px);
  }
  .site-header nav{
    gap:18px;
  }
  .site-header nav a{
    font-size:12px;
  }
  .nav-cta{
    padding:10px 16px;
  }
}
@media(max-width:820px){
  .site-header nav a:not(.nav-cta){
    display:none;
  }
  .brand span{
    font-size:14px;
  }
}

/* V8.2 Swiss-B2B refinement */
.trust-line{
  margin-top:22px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--text);
}
.trust-line span{
  color:var(--accent);
  margin:0 7px;
}
@media(max-width:820px){
  .trust-line{font-size:10px;letter-spacing:.09em}
}
