@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#11172c;--muted:#64708a;--line:#dfe5f0;--mint:#49d2bd;--blue:#5977fa;--bg:#f7f9fd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,.wordmark{font-family:'Space Grotesk',system-ui,sans-serif;letter-spacing:-.05em}a{color:inherit}img{max-width:100%;display:block}.wrap{max-width:1220px;margin:auto;padding:0 28px}.site-header{position:sticky;top:0;z-index:99;background:rgba(250,252,255,.91);backdrop-filter:blur(20px);border-bottom:1px solid rgba(100,110,140,.13)}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;height:85px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;flex-shrink:0}.mark{height:43px;width:43px;border-radius:14px;background:#10182f;color:#64e0cb;display:grid;place-items:center;font-family:'Space Grotesk';font-size:22px;font-weight:700}.wordmark{font-size:17px;font-weight:700;letter-spacing:-.045em;line-height:1.05}.wordmark small{display:block;font:500 10px 'DM Sans';letter-spacing:.12em;color:#78849c;margin-top:5px}nav.links{display:flex;align-items:center;gap:30px}nav.links a{text-decoration:none;font-weight:700;font-size:13px;color:#576279;transition:color .2s}nav.links a:hover{color:#3a69e6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--ink);color:#fff;text-decoration:none;padding:16px 25px;border-radius:100px;font-weight:700;border:1px solid var(--ink);transition:transform .25s,background .25s;cursor:pointer}.btn:hover{transform:translateY(-3px);background:#33446d}.btn.alt{background:white;color:#10182f;border-color:#d8deed}.mobile-menu{display:none}.hero{padding:90px 0 100px;position:relative;overflow:hidden;background:radial-gradient(circle at 85% 20%,#e5f5f4,transparent 36%),linear-gradient(160deg,#f5f8ff,#fff)}.hero-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:55px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:12px;color:#388b92;font-weight:800}.hero h1{font-size:clamp(52px,6.6vw,91px);line-height:1.03;margin:18px 0 25px}.hero h1 em{font-style:normal;color:#4c75d9}.lead{font-size:19px;line-height:1.75;color:#66718b;max-width:530px}.action-line{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.hero-visual{position:relative}.hero-visual img{border-radius:28px;box-shadow:0 32px 75px #24314b2e;transform:rotate(2deg)}.hero-visual:before{content:'';position:absolute;inset:-24px 20px 24px -18px;border:1px solid #b6e3df;border-radius:35px;transform:rotate(-4deg)}.scroll-note{margin-top:60px;color:#8a95aa;font-weight:700;font-size:12px;letter-spacing:.18em}.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.section-head h2,.section h2{font-size:clamp(37px,4.3vw,61px);line-height:1.08;margin:15px 0}.section-intro{color:#6a7590;font-size:17px;line-height:1.7;max-width:410px}.dark{background:#101a33;color:#f7fbff}.dark .section-intro{color:#a6b4cb}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{background:#ffffff0b;border:1px solid #ffffff20;border-radius:24px;padding:33px;min-height:270px;transition:transform .3s,background .3s}.service:hover{transform:translateY(-8px);background:#ffffff15}.service .num{display:block;font:700 15px 'Space Grotesk';color:#5cdbc9;margin-bottom:55px}.service h3{font-size:25px;margin:0 0 12px}.service p{color:#b2bfd0;line-height:1.7;margin:0}.showcase{background:#eef3fd;overflow:hidden}.show-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.app-logo{height:90px;width:90px;object-fit:cover;border-radius:22px;box-shadow:0 12px 25px #111b3526;margin-bottom:28px}.feature-points{list-style:none;padding:0;margin:30px 0}.feature-points li{padding:16px 0;border-bottom:1px solid #d5dfeb;font-weight:600;color:#344059;display:flex;gap:13px}.feature-points li::before{content:'↗';color:#159e9d}.screen-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:start}.screen-row img{width:100%;border-radius:23px;box-shadow:0 20px 45px #2534542b;border:5px solid #fff;transition:transform .35s}.screen-row img:nth-child(2){transform:translateY(38px)}.screen-row img:hover{transform:translateY(-10px) scale(1.035)}.philosophy{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.philosophy .poster{border-radius:30px;overflow:hidden;background:#171f42}.philosophy .poster img{width:100%;aspect-ratio:1;object-fit:cover}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:46px}.step{border-top:2px solid #cad4e7;padding-top:25px}.step b{color:#426fdc;font-size:14px}.step h3{font-size:23px}.step p{color:#6d778e;line-height:1.7}.contact-section{background:#d8f6ee}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-detail{padding:16px 0;border-bottom:1px solid #9dd0c7}.contact-detail small{display:block;margin-bottom:8px;text-transform:uppercase;letter-spacing:.14em;color:#426f6e;font-size:12px;font-weight:800}.contact-detail a{text-decoration:none;font-size:20px;font-weight:700;overflow-wrap:anywhere}.footer{background:#0d1429;color:#eff6ff;padding:60px 0 32px}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:start}.footer .brand{color:#fff}.footer p{max-width:390px;color:#98a9c0;line-height:1.7}.foot-nav{display:flex;gap:23px;flex-wrap:wrap}.foot-nav a{text-decoration:none;font-weight:600;color:#dce7f7}.footer-bottom{border-top:1px solid #ffffff24;margin-top:70px;padding-top:28px;color:#92a0b8;font-size:13px;display:flex;gap:20px;justify-content:space-between}.privacy-title{padding:85px 0 50px;background:radial-gradient(circle at 80% 20%,#d6f4ee,#f8faff 55%)}.privacy-title h1{font-size:clamp(46px,6vw,78px);margin:15px 0}.policy{padding:55px 0 105px}.policy article{max-width:865px;background:#fff;border:1px solid #e1e5ef;border-radius:28px;padding:clamp(26px,5vw,72px);box-shadow:0 25px 70px #27314c0c}.policy h2{font-size:23px;margin:39px 0 13px;letter-spacing:-.025em}.policy h2:first-child{margin-top:0}.policy p{color:#56627c;line-height:1.85}.policy a{color:#2266b6}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:920px){.hero-layout,.show-grid,.philosophy,.contact-grid{grid-template-columns:1fr}.hero-visual{max-width:680px}.service-grid{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}nav.links{gap:16px}.nav .btn{display:none}}@media(max-width:650px){.nav{height:70px}.wordmark{font-size:14px}.mobile-menu{display:block;border:0;background:#e8eef8;border-radius:10px;padding:10px;font-size:18px}nav.links{display:none;position:absolute;top:69px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;align-items:stretch;box-shadow:0 20px 30px #23314d20}nav.links.open{display:flex}.hero{padding:70px 0}.hero h1{font-size:51px}.section{padding:70px 0}.service-grid,.process{grid-template-columns:1fr}.section-head{display:block}.screen-row{gap:7px}.screen-row img{border-width:2px;border-radius:12px}.footer-top,.footer-bottom{flex-direction:column}.footer-bottom{margin-top:35px}.contact-detail a{font-size:17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.reveal{opacity:1;transform:none}}