*{box-sizing:border-box;margin:0;padding:0}
:root{--g:#0F8C7E;--bg:#F6F8F7;--ink:#14211F;--mut:#5A6B67}
body{background:var(--bg);color:var(--ink);font:16px/1.8 "Source Han Sans SC","Noto Sans SC","PingFang SC",sans-serif}
a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}.narrow{max-width:760px}
.nav{position:sticky;top:0;z-index:20;background:rgba(246,248,247,.92);backdrop-filter:blur(10px);border-bottom:1px solid #E1E8E6}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo img{height:28px;display:block}
nav a{margin-left:26px;text-decoration:none;font-size:14px;color:var(--mut)}nav a:hover{color:var(--g)}
nav .home{color:var(--g)}
.burger{display:none;background:none;border:0;font-size:22px}
.hero{position:relative;height:min(88vh,760px);overflow:hidden;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(246,248,247,.97) 0%,rgba(246,248,247,.85) 38%,rgba(246,248,247,0) 62%)}
.hero-txt{position:relative;z-index:2;width:100%}
.eyebrow{color:var(--g);letter-spacing:.3em;font-size:13px}
.hero h1{font-weight:700;font-size:clamp(34px,4.4vw,58px);line-height:1.2;margin:16px 0 18px;max-width:9.5em}
.hero p{color:var(--mut);font-size:18px;max-width:24em}
.ctas{margin-top:36px;display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--g);color:#fff;border:0;padding:13px 30px;font-size:15px;text-decoration:none;cursor:pointer;letter-spacing:.06em}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.sec{padding:110px 0}.sec.alt{background:#fff}
.st{font-size:clamp(26px,2.6vw,36px);font-weight:700;margin-bottom:52px}
.tracks{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.track{background:#fff;overflow:hidden}
.track .ph{position:relative;aspect-ratio:16/10;overflow:hidden}
.track .ph img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}
.track .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 55%,#fff 100%)}
.tb{padding:0 36px 38px;margin-top:-20px;position:relative}
.k{color:var(--g);font-size:13px;letter-spacing:.25em}
.tb h3{font-size:24px;margin:8px 0 12px}.tb p{color:var(--mut)}
.lnk{display:inline-block;margin-top:18px;color:var(--g);text-decoration:none;font-weight:500}
.caps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}
.caps img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;filter:saturate(.75) hue-rotate(-6deg)}
.caps figcaption{padding-top:16px;color:var(--mut);font-size:15px}
.caps b{display:block;color:var(--ink);font-size:18px;margin-bottom:4px}
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid #D7E0DD;padding-top:36px}
.why b{font-size:22px;color:var(--g)}.why p{color:var(--mut);margin-top:8px}
.flows{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.flow h3{font-size:20px;margin-bottom:22px}
.flow ol{list-style:none;border-left:1px solid #CFDAD7}
.flow li{position:relative;padding:0 0 26px 30px}
.flow li::before{content:"";position:absolute;left:-4px;top:12px;width:7px;height:7px;background:var(--g);border-radius:50%}
.flow i{font-style:normal;font-size:28px;font-weight:300;color:var(--g);margin-right:14px;vertical-align:-3px}
.about{position:relative;height:520px;overflow:hidden;display:flex;align-items:flex-end;color:#fff}
.about img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.about::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,25,22,0) 30%,rgba(10,25,22,.82) 100%)}
.about-txt{position:relative;z-index:2;padding-bottom:64px;width:100%}
.about h2{font-size:clamp(26px,3vw,40px)}.about p{max-width:36em;margin-top:12px;opacity:.9}
.sub{color:var(--mut);margin:-36px 0 36px}
.field{margin-bottom:18px;display:flex;flex-direction:column}
.field label,.lb{font-size:14px;color:var(--mut);margin-bottom:6px}
.req{color:var(--g);margin-left:2px}
.field input[type=text],.field input[type=tel],.field input[type=email],textarea{border:0;border-bottom:1px solid #C5D1CE;background:transparent;padding:10px 0;font:inherit;outline:none}
.field input:focus,textarea:focus{border-color:var(--g)}
textarea{min-height:90px;resize:vertical}
.opts{display:flex;gap:22px;flex-wrap:wrap}.opts label{color:var(--ink)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.consent{display:flex;gap:10px;font-size:13px;color:var(--mut);margin:10px 0 24px}
.actions{display:flex;align-items:center;gap:22px}.mail{font-size:14px;color:var(--mut)}
.form-msg{margin-top:14px;font-size:14px}.form-msg.ok{color:var(--g)}.form-msg.err{color:#B4442F}
.foot{padding:36px 0;font-size:13px;color:var(--mut);border-top:1px solid #E1E8E6}.foot a{margin-left:12px}
@media(max-width:860px){nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:12px 28px}nav.open{display:flex;flex-direction:column}nav a{margin:8px 0}.burger{display:block}
.hero::before{background:linear-gradient(180deg,rgba(246,248,247,.2) 0%,rgba(246,248,247,.95) 60%)}.hero{align-items:flex-end;padding-bottom:48px}.hero-bg{object-position:70% center}
.tracks,.flows,.grid2,.why{grid-template-columns:1fr}.caps{grid-template-columns:1fr 1fr}.sec{padding:72px 0}}
@media(max-width:520px){.caps{grid-template-columns:1fr}}

/* v3.1 */
.logo img{height:38px}
.hero h1{max-width:none;word-break:keep-all}
.caps figcaption{color:#33413F}
.foot .disc{margin-top:8px;font-size:12px}
