:root{--ink:#0f2e28;--ink-soft:#1a433a;--jade:#2f7a62;--jade-bright:#3d9a78;--mist:#e8efeb;--mist-deep:#d5e2dc;--paper:#f4f7f5;--line:#0f2e281f;--text:#1c2f2a;--muted:#5a6f68;--white:#fff;--radius:4px;--font-display:"Noto Serif SC", "Songti SC", serif;--font-body:"Noto Sans SC", "PingFang SC", sans-serif;--font-ui:"Outfit", "Noto Sans SC", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--nav-h:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:var(--paper);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{max-width:100%;display:block}.page{min-height:100vh;overflow-x:clip}.nav{z-index:50;height:var(--nav-h);transition:background .35s var(--ease), box-shadow .35s var(--ease), backdrop-filter .35s var(--ease);align-items:center;gap:1.5rem;padding:0 clamp(1.25rem,4vw,3.5rem);display:flex;position:fixed;inset:0 0 auto}.nav--scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);background:#f4f7f5e0}.nav__brand{align-items:center;gap:.65rem;margin-right:auto;display:inline-flex}.nav__mark{background:radial-gradient(circle at 50% 28%, var(--paper) 0 18%, transparent 19%), linear-gradient(160deg, var(--ink) 0%, var(--jade) 100%);border-radius:6px;width:1.35rem;height:1.35rem;box-shadow:inset 0 0 0 1px #ffffff1f}.nav__name{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);font-size:1.15rem;font-weight:700}.nav__links{gap:1.75rem;display:none}.nav__links a{font-family:var(--font-ui);color:var(--muted);font-size:.92rem;font-weight:500;transition:color .2s}.nav__links a:hover{color:var(--ink)}.nav__cta{font-family:var(--font-ui);color:var(--white);background:var(--ink);border-radius:var(--radius);padding:.55rem 1.1rem;font-size:.88rem;font-weight:600;transition:background .2s,transform .2s;display:none}.nav__cta:hover{background:var(--ink-soft)}.nav__menu{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;gap:6px;width:2.5rem;height:2.5rem;padding:.5rem;display:flex}.nav__menu span{background:var(--ink);width:100%;height:2px;transition:transform .25s var(--ease);border-radius:1px;display:block}.nav__menu[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.nav__menu[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.nav-drawer{top:var(--nav-h);z-index:49;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);animation:drawer-in .3s var(--ease);background:#f4f7f5f7;flex-direction:column;gap:.25rem;padding:1rem 1.25rem 1.5rem;display:flex;position:fixed;left:0;right:0}.nav-drawer[hidden]{display:none}.nav-drawer a{color:var(--ink);border-bottom:1px solid var(--line);padding:.85rem .25rem;font-size:1.05rem;font-weight:500}.nav-drawer__cta{text-align:center;background:var(--ink);border-radius:var(--radius);margin-top:.75rem;color:var(--white)!important;border:0!important;padding:.9rem!important}@keyframes drawer-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width>=880px){.nav__links,.nav__cta{display:flex}.nav__menu{display:none}}.hero{min-height:100svh;padding:calc(var(--nav-h) + 2rem) clamp(1.25rem, 4vw, 3.5rem) clamp(3rem, 8vh, 5.5rem);color:var(--white);align-items:end;display:grid;position:relative;overflow:hidden}.hero__atmosphere{background:linear-gradient(165deg,#0a221d 0%,#134036 42%,#1b5a48 72%,#246b55 100%);position:absolute;inset:0}.hero__glow{filter:blur(60px);opacity:.45;border-radius:50%;animation:14s ease-in-out infinite alternate drift;position:absolute}.hero__glow--a{background:#3d9a78;width:min(55vw,520px);height:min(55vw,520px);top:-8%;right:-6%}.hero__glow--b{background:#0f2e28;width:min(45vw,420px);height:min(45vw,420px);animation-delay:-4s;bottom:8%;left:-10%}.hero__grid{background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 60% 40%,#000 20%,#0000 75%);mask-image:radial-gradient(80% 70% at 60% 40%,#000 20%,#0000 75%)}.hero__orbit{aspect-ratio:1;border:1px solid #e8f2ec24;border-radius:50%;width:min(70vw,640px);animation:48s linear infinite spin;position:absolute;top:12%;right:-8%}.hero__orbit:before,.hero__orbit:after{content:"";background:#e8f2ec;border-radius:50%;position:absolute}.hero__orbit:before{width:10px;height:10px;top:18%;left:12%;box-shadow:0 0 24px #e8f2ec59}.hero__orbit:after{opacity:.7;width:6px;height:6px;bottom:22%;right:18%}.hero__content{z-index:1;max-width:40rem;position:relative}.hero__brand{font-family:var(--font-display);letter-spacing:.08em;animation:rise .9s var(--ease) both;margin:0 0 1.1rem;font-size:clamp(2.8rem,8vw,5.2rem);font-weight:700;line-height:1.05}.hero__title{font-family:var(--font-display);letter-spacing:.02em;color:#ffffffeb;animation:rise .9s var(--ease) .12s both;margin:0 0 1rem;font-size:clamp(1.35rem,3.2vw,2rem);font-weight:600;line-height:1.35}.hero__lead{color:#e8f2ecc7;max-width:34rem;animation:rise .9s var(--ease) .22s both;margin:0 0 2rem;font-size:clamp(.98rem,1.6vw,1.08rem)}.hero__actions{animation:rise .9s var(--ease) .32s both;flex-wrap:wrap;gap:.75rem 1rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%{transform:translate(0)scale(1)}to{transform:translate(-18px,24px)scale(1.06)}}@keyframes spin{to{transform:rotate(360deg)}}.btn{border-radius:var(--radius);min-height:2.85rem;font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.65rem 1.35rem;font-size:.95rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,transform .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--paper);color:var(--ink)}.btn--primary:hover{background:var(--white)}.btn--ghost{color:var(--white);background:0 0;border-color:#ffffff59}.btn--ghost:hover{background:#ffffff0f;border-color:#ffffffb3}.contact .btn--primary{background:var(--ink);color:var(--white);width:100%}.contact .btn--primary:hover{background:var(--ink-soft)}.section{padding:clamp(4.5rem,10vh,7rem) clamp(1.25rem,4vw,3.5rem)}.section__inner{max-width:1080px;margin:0 auto}.section__label{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--jade);margin:0 0 .75rem;font-size:.82rem;font-weight:600}.section__title{max-width:18em;font-family:var(--font-display);color:var(--ink);letter-spacing:.02em;margin:0 0 1rem;font-size:clamp(1.65rem,3.5vw,2.35rem);font-weight:700;line-height:1.3}.section__text{max-width:38rem;color:var(--muted);margin:0;font-size:1.02rem}.about{background:linear-gradient(180deg, var(--paper) 0%, var(--mist) 100%)}.about__stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:3rem;padding-top:2rem;display:grid}.stat{flex-wrap:wrap;align-items:baseline;gap:.1rem .15rem;display:flex}.stat__num,.stat__suffix{font-family:var(--font-ui);color:var(--ink);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:600;line-height:1}.stat__label{color:var(--muted);flex-basis:100%;margin-top:.55rem;font-size:.9rem}.services{background:var(--white)}.service-list{gap:0;margin:3rem 0 0;padding:0;list-style:none;display:grid}.service{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:1.25rem 1.75rem;padding:1.75rem 0;transition:background .25s;display:grid}.service:last-child{border-bottom:1px solid var(--line)}.service__index{font-family:var(--font-ui);color:var(--jade);padding-top:.25rem;font-size:.95rem;font-weight:600}.service__body h3{font-family:var(--font-display);color:var(--ink);margin:0 0 .45rem;font-size:1.25rem;font-weight:700}.service__body p{max-width:36rem;color:var(--muted);margin:0}@media (width>=720px){.service{grid-template-columns:4rem 1fr;align-items:start;padding:2rem .5rem}.service:hover{background:#e8efeb73}}.approach{background:radial-gradient(ellipse 80% 60% at 100% 0%, #3d9a781f, transparent 55%), linear-gradient(180deg, var(--mist) 0%, var(--paper) 100%)}.approach__grid{gap:2.5rem;display:grid}.approach__steps{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.step{border-left:2px solid var(--jade);gap:.35rem;padding:1.35rem 0 1.35rem 1.25rem;display:grid}.step strong{font-family:var(--font-display);color:var(--ink);font-size:1.15rem}.step span{color:var(--muted);font-size:.98rem}@media (width>=900px){.approach__grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem}}.contact{background:var(--ink);color:var(--white)}.contact .section__label{color:#7cb89a}.contact .section__title{color:var(--white)}.contact .section__text{color:#e8f2ecb8}.contact__panel{gap:2.5rem;display:grid}.contact__meta{gap:.85rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.contact__meta li{gap:.15rem;display:grid}.contact__meta span:first-child{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:#e8f2ec80;font-size:.78rem;font-weight:600}.contact__meta a,.contact__meta span:last-child{color:#ffffffe6}.contact__meta a:hover{color:#a8d4c0}.contact__form{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;gap:1rem;padding:1.5rem;display:grid}.contact__form label{gap:.4rem;display:grid}.contact__form label span{color:#e8f2ecb3;font-size:.85rem}.contact__form input,.contact__form textarea{border-radius:var(--radius);width:100%;color:var(--white);resize:vertical;background:#0f2e2859;border:1px solid #ffffff29;outline:none;padding:.75rem .9rem;transition:border-color .2s,background .2s}.contact__form input::placeholder,.contact__form textarea::placeholder{color:#e8f2ec59}.contact__form input:focus,.contact__form textarea:focus{background:#0f2e288c;border-color:#7cb89ab3}.form-note{color:#e8f2eca6;min-height:1.25rem;margin:0;font-size:.9rem}.form-note--ok{color:#a8d4c0}.form-note--error{color:#f0b4a8}@media (width>=880px){.contact__panel{grid-template-columns:1fr 1fr;align-items:start;gap:3.5rem}}.footer{color:#e8f2ec8c;background:#0a221d;padding:1.75rem clamp(1.25rem,4vw,3.5rem)}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;max-width:1080px;margin:0 auto;display:flex}.footer__brand{color:#ffffffe0;font-family:var(--font-display);align-items:center;gap:.55rem;font-weight:700;display:inline-flex}.footer__legal{text-align:right;flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.footer p,.footer__icp{margin:0;font-size:.88rem}.footer__icp{color:#e8f2ec8c;transition:color .2s}.footer__icp:hover{color:#e8f2ece6}@media (width<=560px){.footer__inner{flex-direction:column;align-items:flex-start}.footer__legal{text-align:left;align-items:flex-start}}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.service.reveal.is-visible:nth-child(2){transition-delay:80ms}.service.reveal.is-visible:nth-child(3){transition-delay:.16s}.step.reveal.is-visible:nth-child(2){transition-delay:.1s}.step.reveal.is-visible:nth-child(3){transition-delay:.2s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero__brand,.hero__title,.hero__lead,.hero__actions,.hero__glow,.hero__orbit{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}
