@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root { --bg:#eef8ff; --surface:#fff; --surface-2:#e6f2fb; --ink:#1d2430; --muted:#718092; --blue:#2384e8; --blue-dark:#1464bd; --blue-soft:#cfeaff; --coral:#ff7a78; --line:#dcebf5; --navy:#1d314c; --shadow:0 16px 45px rgba(44,103,154,.1); --radius:22px; --display:'Manrope',sans-serif; --body:'DM Sans',sans-serif; --max:1180px; --ease:cubic-bezier(.22,1,.36,1); }
:root[data-theme="dark"] { --bg:#111a25; --surface:#172333; --surface-2:#1b2c40; --ink:#f3f8fc; --muted:#a7b8c7; --blue:#63b0ff; --blue-dark:#2c8cec; --blue-soft:#244b70; --coral:#ff9c96; --line:#2c4055; --navy:#eaf4fd; --shadow:0 18px 48px rgba(0,0,0,.22); }
*{box-sizing:border-box} html{scroll-behavior:smooth;background:var(--bg)} body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6;overflow-x:hidden} a{color:inherit;text-decoration:none} button{font:inherit;color:inherit}.site-shell{min-height:100vh;background:radial-gradient(circle at 9% 9%,rgba(118,199,255,.24),transparent 25%),radial-gradient(circle at 91% 22%,rgba(180,225,255,.32),transparent 30%),var(--bg)}
.site-header{position:sticky;top:0;z-index:20;width:100%;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - var(--max))/2));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent)}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--blue);font-size:15px;font-weight:700;letter-spacing:-.03em}.brand b{color:var(--ink)}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--blue);color:#fff;font-family:var(--display);font-size:16px}.desktop-nav{display:flex;gap:30px;margin-left:auto;margin-right:30px}.desktop-nav a{color:var(--muted);font-size:13px;font-weight:500;transition:color .25s}.desktop-nav a:hover{color:var(--blue)}.header-actions{display:flex;align-items:center;gap:12px}.theme-toggle{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--surface);cursor:pointer;font-size:17px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:999px;padding:13px 20px;font-size:13px;font-weight:700;transition:transform .3s var(--ease),box-shadow .3s,background .3s,color .3s}.button span{font-size:16px;line-height:0}.button:hover{transform:translateY(-3px)}.button--blue{background:var(--blue);color:#fff;box-shadow:0 9px 22px rgba(35,132,232,.19)}.button--blue:hover{background:var(--blue-dark);box-shadow:0 14px 30px rgba(35,132,232,.25)}.button--outline{border-color:var(--line);background:var(--surface);color:var(--ink)}.button--outline:hover{border-color:var(--blue);color:var(--blue)}.button--white{background:#fff;color:#176fc7}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;margin:5px;background:var(--ink)}.mobile-menu{display:none}
.section-pad{width:min(calc(100% - 48px),var(--max));margin:0 auto;padding:112px 0}.hero{position:relative;min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;padding-top:74px;overflow:hidden}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.hero-orb--one{width:500px;height:500px;left:-250px;top:-160px;background:rgba(115,201,255,.18)}.hero-orb--two{width:480px;height:480px;right:-180px;top:70px;background:rgba(207,234,255,.9)}.hero-copy,.hero-visual{position:relative;z-index:1}.eyebrow,.section-label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}.eyebrow{display:inline-flex;align-items:center;gap:8px}.eyebrow--blue,.section-label{color:var(--blue)}.hero h1,h2,h3{font-family:var(--display);letter-spacing:-.065em;line-height:1.06}.hero h1{max-width:650px;margin:22px 0 24px;font-size:clamp(48px,6.4vw,86px);font-weight:800}.hero h1 em,h2 em{font-style:normal;color:var(--blue)}.hero-lede{max-width:570px;margin:0 0 28px;color:var(--muted);font-size:17px;line-height:1.75}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-visual{min-height:430px}.hero-card{position:absolute;border-radius:28px;box-shadow:var(--shadow)}.hero-card--back{right:0;top:45px;width:280px;height:320px;padding:28px;background:linear-gradient(145deg,#d4efff,#9ed2f9);color:#276797;transform:rotate(7deg)}.hero-card--back span{font-size:11px;text-transform:uppercase;letter-spacing:.15em}.hero-card--back b{position:absolute;bottom:30px;left:28px;font:700 38px/1 var(--display);letter-spacing:-.08em}.hero-card--main{left:30px;top:18px;width:300px;height:405px;overflow:hidden;background:var(--surface);transform:rotate(-5deg)}.hero-card--main img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 22%;filter:saturate(.96)}.hero-card-caption{position:absolute;bottom:0;left:0;right:0;padding:18px 20px;color:#fff;background:linear-gradient(transparent,rgba(17,45,72,.88));display:grid;gap:2px}.hero-card-caption span{font-size:11px}.hero-card-caption b{font-size:13px}.hero-sticker{position:absolute;right:8px;bottom:18px;z-index:3;width:122px;height:122px;display:grid;place-content:center;border-radius:50%;background:var(--coral);color:#fff;text-align:center;font-size:12px;line-height:1.05;transform:rotate(10deg);box-shadow:0 15px 30px rgba(255,122,120,.28)}.hero-sticker strong{font:800 20px/1 var(--display)}.stats-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:10px}.stats-row>div{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.stats-row strong{color:var(--blue);font:800 28px/1 var(--display)}.stats-row span{color:var(--muted);font-size:13px}
.problem,.services,.case-studies,.workflows,.testimonials,.process,.about,.tools{border-top:1px solid var(--line)}.problem{text-align:center}.problem h2,.services h2,.workflows h2,.tools h2{margin:16px 0 12px;font-size:clamp(39px,5vw,66px);font-weight:800}.section-intro{max-width:620px;margin:0 auto 42px;color:var(--muted);font-size:16px}.problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:left}.soft-card{padding:26px 23px;min-height:210px;background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s}.soft-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(44,103,154,.16)}.card-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff0f0;color:var(--coral);font-weight:800;font-size:18px}.soft-card h3{margin:28px 0 8px;font-size:17px;letter-spacing:-.035em}.soft-card p,.service-card p,.case-card p,.workflow-list p,.process-grid p,.about p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.services{background:linear-gradient(180deg,transparent,rgba(216,239,255,.42))}.services>.section-intro,.workflows>.section-intro{margin-left:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{min-height:350px;padding:26px;border-radius:20px;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s}.service-card:hover{transform:translateY(-7px);box-shadow:0 24px 52px rgba(44,103,154,.18)}.service-card--blue{background:linear-gradient(145deg,#2f94f2,#1268c5);color:#fff}.service-card--white{background:var(--surface);border:1px solid var(--line)}.service-card--navy{background:var(--navy);color:var(--bg)}.service-card--navy p{color:color-mix(in srgb,var(--bg) 68%,transparent)}.service-card .number{font-size:12px;font-weight:800;opacity:.72}.service-card h3{margin:72px 0 12px;font-size:22px;letter-spacing:-.055em}.service-card p{color:inherit;opacity:.8}.service-card a{margin-top:auto;padding-top:24px;font-size:12px;font-weight:800}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin:16px 0 45px}.section-heading h2{margin:0;font-size:clamp(40px,5vw,66px);font-weight:800}.section-heading p{max-width:330px;margin:0;color:var(--muted)}.case-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.case-card{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.case-card--large{grid-row:span 2}.case-art{min-height:210px;padding:22px;display:flex;flex-direction:column;gap:10px;color:#fff}.case-art--calendar{background:linear-gradient(140deg,#1e73c9,#74c3ff)}.case-art--pipeline{background:linear-gradient(140deg,#ff9990,#f07a8f)}.case-art--flow{background:linear-gradient(140deg,#263b57,#527b9d)}.case-art span{font-size:10px;letter-spacing:.12em;opacity:.8}.case-art b{margin-top:28px;font:700 28px/1 var(--display)}.case-art i{width:max-content;padding:7px 10px;border-radius:8px;background:rgba(255,255,255,.16);font-size:11px;font-style:normal}.case-card-copy{padding:22px}.case-card-copy span{color:var(--blue);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.case-card-copy h3{margin:9px 0 8px;font-size:23px}.case-card--large .case-art{min-height:360px}.workflow-list{border-top:1px solid var(--line)}.workflow-list article{padding:28px 0;border-bottom:1px solid var(--line)}.workflow-title{display:flex;align-items:center;gap:22px}.workflow-title span,.process-grid article>span{color:var(--coral);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.workflow-title h3{margin:0;font-size:24px}.workflow-list p{margin:10px 0 20px;padding-left:44px}.flow-line{display:flex;align-items:center;gap:12px;padding-left:44px;flex-wrap:wrap}.flow-line b{padding:9px 13px;border-radius:8px;background:var(--surface);border:1px solid var(--line);font-size:11px;color:var(--ink)}.flow-line i{color:var(--blue);font-style:normal;font-weight:800}.testimonials{background:var(--navy);color:var(--bg)}.testimonials .section-label{color:var(--coral)}.testimonials h2{margin:16px 0 42px;font-size:clamp(40px,5vw,66px)}.testimonials h2 em{color:#75bfff}.quote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.quote-grid blockquote{margin:0;padding:28px;border:1px solid color-mix(in srgb,var(--bg) 18%,transparent);border-radius:18px;font:500 19px/1.55 var(--display)}.quote-grid cite{display:block;margin-top:24px;color:color-mix(in srgb,var(--bg) 68%,transparent);font:400 12px var(--body)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.process-grid article{padding:24px;border-top:2px solid var(--blue);background:var(--surface);border-radius:0 0 16px 16px;box-shadow:var(--shadow)}.process-grid h3{margin:42px 0 8px;font-size:22px}.about-layout{display:grid;grid-template-columns:360px 1fr;gap:90px;align-items:center}.about-photo{position:relative;min-height:440px;overflow:hidden;border-radius:24px;background:#25384b;box-shadow:var(--shadow)}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.about-photo span{position:absolute;left:18px;bottom:18px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.86);color:#236da6;font-size:11px;font-weight:800}.about h2{margin:0 0 26px;font-size:clamp(40px,5vw,66px);font-weight:800}.about p{max-width:570px;font-size:16px;margin-bottom:17px}.text-link{display:inline-block;margin-top:16px;color:var(--blue);font-weight:800;border-bottom:1px solid currentColor;padding-bottom:6px}.tools h2{margin-bottom:34px}.tool-cloud{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.tool-card{display:flex;align-items:center;gap:12px;min-height:78px;padding:15px 17px;background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);transition:transform .3s var(--ease),border-color .3s}.tool-card:hover{transform:translateY(-4px);border-color:var(--blue)}.tool-card img,.tool-monogram{width:30px;height:30px;object-fit:contain;flex:0 0 30px}.tool-card strong{font-size:12px}.tool-monogram{display:grid;place-items:center;border-radius:8px;background:var(--blue-soft);color:var(--blue-dark);font-weight:800}.tool-monogram--pd{font-family:Georgia,serif;font-size:18px}.tool-monogram--ghl{font-size:9px}.tool-monogram--ai{border-radius:50%;font-size:18px}.contact{padding-bottom:90px}.contact-card{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;padding:64px;border-radius:28px;background:linear-gradient(135deg,#237edb,#12549b);color:#fff;box-shadow:0 24px 60px rgba(32,113,191,.24)}.contact-card .section-label{color:#b8ddff}.contact-card h2{margin:16px 0 17px;font-size:clamp(42px,5vw,70px);font-weight:800}.contact-card h2 em{color:#a9d9ff}.contact-card p{max-width:510px;color:#d9edff}.contact-card ul{display:grid;gap:8px;margin:24px 0 0;padding:0;list-style:none;color:#d9edff;font-size:13px}.contact-card li::before{content:'✓';margin-right:10px;color:#b8ecff;font-weight:800}.contact-actions{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;gap:13px}.contact-actions .button--blue{background:#fff;color:#1872c9;box-shadow:none}.contact-actions .button--white{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.3)}.contact-link{color:#d9edff;font-size:13px;border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:4px}.site-footer{width:min(calc(100% - 48px),var(--max));margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px 0 38px;color:var(--muted);font-size:12px;border-top:1px solid var(--line)}
.scroll-progress{position:fixed;top:0;left:0;z-index:40;width:100%;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left center;box-shadow:0 0 14px color-mix(in srgb,var(--blue) 48%,transparent);pointer-events:none}.site-header.is-scrolled{box-shadow:0 10px 30px rgba(44,103,154,.08)}
.reveal{opacity:0;filter:blur(4px);transform:translate3d(0,24px,0) scale(.985);will-change:opacity,transform,filter;transition:opacity .8s var(--ease) var(--reveal-delay,0ms),transform .8s var(--ease) var(--reveal-delay,0ms),filter .8s var(--ease) var(--reveal-delay,0ms)}.reveal.is-visible{opacity:1;filter:none;transform:none}
@media (max-width:900px){.desktop-nav,.header-actions{display:none}.menu-toggle{display:block}.mobile-menu{position:fixed;top:76px;left:16px;right:16px;z-index:19;display:grid;gap:4px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-10px);transition:.3s var(--ease)}.mobile-menu.is-open{opacity:1;pointer-events:auto;transform:none}.mobile-menu a{padding:13px 14px;color:var(--ink);font-weight:700;border-radius:10px}.mobile-menu a:hover{background:var(--surface-2);color:var(--blue)}.hero{grid-template-columns:1fr;gap:20px;padding-top:70px}.hero-copy{text-align:center}.hero h1{margin-left:auto;margin-right:auto}.hero-lede{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.hero-visual{min-height:420px;max-width:460px;width:100%;margin:0 auto}.stats-row{margin-top:0}.problem-grid,.service-grid{grid-template-columns:repeat(2,1fr)}.case-grid{grid-template-columns:1fr}.case-card--large{grid-row:auto}.case-card--large .case-art{min-height:270px}.about-layout{grid-template-columns:280px 1fr;gap:45px}.tool-cloud{grid-template-columns:repeat(3,1fr)}.contact-card{grid-template-columns:1fr}}
@media (max-width:560px){.section-pad{width:min(calc(100% - 32px),var(--max));padding:78px 0}.site-header{padding:0 16px}.hero{min-height:auto;padding-top:58px}.hero h1{font-size:48px}.hero-lede{font-size:15px}.hero-visual{transform:scale(.82);transform-origin:top center;margin-bottom:-62px}.stats-row{grid-template-columns:1fr}.stats-row>div{justify-content:center}.problem-grid,.service-grid,.process-grid,.quote-grid{grid-template-columns:1fr}.service-card{min-height:300px}.service-card h3{margin-top:50px}.section-heading{display:block}.section-heading p{margin-top:20px}.workflow-title{align-items:flex-start}.workflow-title h3{font-size:20px}.workflow-list p,.flow-line{padding-left:0}.flow-line{gap:7px}.flow-line i{font-size:12px}.about-layout{grid-template-columns:1fr;gap:30px}.about-photo{min-height:360px;max-width:300px}.tool-cloud{grid-template-columns:repeat(2,1fr)}.tool-card{min-height:68px;padding:11px 10px}.tool-card img,.tool-monogram{width:25px;height:25px;flex-basis:25px}.tool-card strong{font-size:10px}.contact-card{padding:32px 24px;border-radius:22px}.contact-card h2{font-size:43px}.site-footer{flex-direction:column;align-items:flex-start}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.scroll-progress{display:none}.reveal{opacity:1;filter:none;transform:none}}
