@charset "UTF-8";

:root{color-scheme:light;--ink:#172b37;--muted:#667983;--teal:#177e78;--teal-dark:#105e5c;--mint:#ddf0e9;--paper:#f5f7f8;--line:#e2e9e9;--white:#fff;--orange:#e9a55d}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{width:min(1120px,calc(100% - 56px));margin-inline:auto}
.topbar{height:76px;padding:0 max(28px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,43,55,.07);background:rgba(245,247,248,.88)}
.brand,.footer-brand{display:inline-flex;align-items:center;gap:11px;font-size:19px;font-weight:750;letter-spacing:.02em}
.brand-mark{position:relative;width:28px;height:28px;display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-8deg)}
.brand-mark i{display:block;background:var(--teal);border-radius:4px 4px 2px 4px}.brand-mark i:nth-child(2){background:#75b9a6;border-radius:4px 4px 4px 2px}.brand-mark i:nth-child(3){background:#f0bb78;border-radius:4px 2px 4px 4px}.brand-mark i:nth-child(4){background:#2b6b70;border-radius:2px 4px 4px 4px}
.top-link{font-size:14px;color:#3e5b64}.top-link span{color:var(--teal);padding-left:5px}
.hero{min-height:572px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:30px;padding-block:62px 76px}
.eyebrow{margin:0 0 18px;color:var(--teal);font-size:11px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.hero .eyebrow{display:flex;align-items:center;gap:10px;letter-spacing:.12em}.hero .eyebrow span{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(233,165,93,.16)}
h1,h2,h3,p{margin-top:0}
h1{margin-bottom:24px;font-size:clamp(42px,5.3vw,68px);line-height:1.2;letter-spacing:-.055em;font-weight:760}
h1 em{font-style:normal;color:var(--teal)}
.hero-text{max-width:475px;color:var(--muted);font-size:16px;line-height:1.95}
.primary-link{display:inline-flex;align-items:center;gap:28px;margin-top:17px;padding:15px 19px;border-radius:8px;background:var(--teal);color:#fff;font-size:14px;font-weight:650;box-shadow:0 10px 22px rgba(23,126,120,.16);transition:transform .2s,background .2s}.primary-link:hover{transform:translateY(-2px);background:var(--teal-dark)}.primary-link span{font-size:18px}
.hero-art{height:420px;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}
.hero-art:before{content:"";position:absolute;z-index:-2;inset:35px 18px 15px 48px;border-radius:49% 51% 43% 57%/50% 39% 61% 50%;background:linear-gradient(145deg,#e5f2ed 5%,#e8f0eb 57%,#f5e9d9 100%);transform:rotate(-7deg)}
.art-orbit{position:absolute;z-index:-1;border:1px solid rgba(23,126,120,.15);border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:420px;height:235px}.orbit-two{width:360px;height:185px;transform:rotate(23deg)}
.art-sun{position:absolute;width:118px;height:118px;right:50px;top:38px;border-radius:50%;background:linear-gradient(135deg,#f6d7ab,#ebad68);opacity:.84}
.art-card{position:absolute;background:rgba(255,255,255,.94);box-shadow:0 25px 60px rgba(27,70,73,.13);border:1px solid rgba(255,255,255,.8)}
.card-main{width:min(315px,76%);min-height:245px;padding:21px 22px;left:50%;top:50%;transform:translate(-50%,-48%) rotate(-4deg);border-radius:15px}
.card-top{display:flex;align-items:center;gap:8px;font-size:12px;color:#6c8282;font-weight:650}.card-dot{width:8px;height:8px;background:var(--teal);border-radius:50%;box-shadow:0 0 0 4px #e5f3ed}.card-more{margin-left:auto;letter-spacing:2px;color:#aab9b8}
.card-line{height:8px;width:62%;background:#e8eeee;border-radius:8px;margin-top:17px}.card-line.wide{width:82%;height:13px;margin-top:26px;background:#cbded8}
.card-tags{display:flex;gap:8px;margin-top:20px}.card-tags span{padding:7px 10px;border-radius:5px;background:#edf6f1;color:#3c756c;font-size:11px}.card-tags span+span{background:#fbf1e6;color:#aa7843}
.card-bottom{display:flex;align-items:center;gap:9px;margin-top:25px;padding-top:14px;border-top:1px solid #edf0ef}.avatar{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:11px;color:#fff}.avatar-one{background:#6ea99a}.card-caption{font-size:10px;color:#879594}.arrow{margin-left:auto;color:var(--teal);font-size:18px}
.card-note{left:7%;bottom:42px;display:flex;align-items:center;gap:12px;padding:13px 17px;border-radius:10px;transform:rotate(-5deg)}.note-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e5f3ed;color:var(--teal);font-size:21px}.card-note b,.card-note small{display:block}.card-note b{font-size:12px}.card-note small{margin-top:4px;font-size:10px;color:#82918f}
.card-badge{right:0;top:95px;display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:9px;color:#52706e;font-size:10px;line-height:1.6;transform:rotate(5deg)}.badge-icon{color:#cb8b48;font-size:23px}
.art-spark{position:absolute;color:var(--teal)}.spark-one{left:17%;top:69px;font-size:21px}.spark-two{right:14%;bottom:64px;color:#ca8d4d;font-size:26px}
.service-section{padding:88px 0 96px;background:#fff}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:38px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2,.about h2,.contact-inner h2{margin:0;font-size:clamp(28px,3vw,38px);letter-spacing:-.035em}.section-heading>p{max-width:330px;margin:0 0 4px;color:var(--muted);font-size:14px;line-height:1.8}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:262px;padding:25px 24px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;transition:transform .22s,border-color .22s,box-shadow .22s}.service-card:hover{transform:translateY(-4px);border-color:#c8dcd6;box-shadow:0 16px 32px rgba(28,69,70,.07)}
.service-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;font-size:23px}.icon-home{background:#e6f3ed;color:#318174}.icon-list{background:#f9efdf;color:#b47e3e}.icon-star{background:#e9eef6;color:#55779a}
.card-index{margin:22px 0 8px;color:#82918f;font-size:10px;letter-spacing:.08em}.service-card h3{position:relative;z-index:1;margin-bottom:10px;font-size:18px;letter-spacing:-.025em}.service-card>p:last-of-type{position:relative;z-index:1;max-width:270px;margin-bottom:0;color:var(--muted);font-size:13px;line-height:1.8}.card-decoration{position:absolute;right:11px;bottom:-41px;color:rgba(23,126,120,.055);font-size:150px;line-height:1}.decoration-list{color:rgba(207,150,79,.07)}.decoration-star{color:rgba(85,119,154,.07)}
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:center;padding-block:104px}
.about-mark{position:relative;aspect-ratio:1;max-width:370px;display:grid;place-items:center;margin:auto;border-radius:50%;background:radial-gradient(circle at 40% 35%,#f7faf8 0,#e3f0e9 58%,#d4e8df 100%);box-shadow:inset 0 0 0 1px #d7e8e0}.about-mark:before,.about-mark:after{content:"";position:absolute;inset:12%;border:1px solid rgba(23,126,120,.15);border-radius:50%}.about-mark:after{inset:23%;border-color:rgba(23,126,120,.1)}.about-mark span{position:relative;z-index:2;display:grid;place-items:center;width:112px;height:112px;border-radius:30px;background:linear-gradient(145deg,#268c7e,#175f61);color:white;font-size:54px;font-weight:700;box-shadow:0 19px 35px rgba(30,106,96,.22);transform:rotate(-7deg)}.about-mark i{position:absolute;right:15%;top:16%;width:31px;height:31px;border-radius:50%;background:#e7ae6d;box-shadow:0 0 0 9px rgba(231,174,109,.17)}
.about-copy .eyebrow{margin-bottom:12px}.about-copy h2{margin-bottom:20px;line-height:1.35}.about-copy>p:not(.eyebrow){max-width:570px;color:var(--muted);font-size:14px;line-height:1.95}.scope-note{margin-top:24px;padding:16px 18px;border-left:3px solid #8ab9a9;border-radius:0 8px 8px 0;background:#edf4f0;color:#536b6b!important;font-size:12px!important;line-height:1.8!important}.scope-note span{display:block;margin-bottom:5px;color:#34756b;font-size:11px;font-weight:750;letter-spacing:.04em}
.contact-section{padding:48px 0;background:#173f45;color:#fff}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.contact-inner .eyebrow{margin-bottom:10px;color:#a8d6c8}.contact-inner h2{font-size:25px}.contact-email{display:inline-flex;align-items:center;gap:15px;padding:14px 17px;border:1px solid rgba(255,255,255,.25);border-radius:7px;color:#d6eee5;font-size:14px}.contact-email span{font-size:18px}
.footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:23px;color:#849392;font-size:11px}.footer p{margin:0}.footer-brand{gap:8px;color:#415a5c;font-size:13px}.brand-mark.small{width:20px;height:20px;gap:2px}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.topbar{height:62px;padding:0 20px}.brand{font-size:17px}.hero{grid-template-columns:1fr;gap:14px;padding-block:55px 60px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(41px,11vw,58px)}.hero-text{font-size:14px}.hero-art{height:325px;margin-top:5px}.art-orbit{width:320px;height:185px}.orbit-two{width:275px;height:145px}.card-main{width:270px;min-height:220px;padding:18px}.card-note{left:0;bottom:17px}.card-badge{right:0;top:37px}.art-sun{width:88px;height:88px;right:24px;top:15px}.spark-one{left:9%;top:47px}.spark-two{right:9%;bottom:28px}.service-section{padding:64px 0}.section-heading{display:block;margin-bottom:26px}.section-heading>p{margin-top:13px}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:220px;padding:21px}.card-index{margin-top:16px}.service-card>p:last-of-type{max-width:310px}.about{grid-template-columns:1fr;gap:36px;padding-block:70px}.about-mark{width:min(78vw,290px)}.about-mark span{width:90px;height:90px;font-size:42px;border-radius:25px}.contact-section{padding:36px 0}.contact-inner{align-items:flex-start;flex-direction:column;gap:19px}.contact-inner h2{font-size:22px}.footer{align-items:flex-start;flex-direction:column;gap:10px;padding-block:21px}.footer-brand{margin-bottom:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
