 :root {
  --ink:#201d38; --muted:#6f7185; --navy:#171331; --purple:#642b82;
  --orange:#ef7918; --gold:#ffb52f; --soft:#f7f5fb;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:90px; }
body { font-family:'DM Sans',sans-serif; color:var(--ink); overflow-x:hidden; }
h1,h2,h3,h4,h5,.brand-name { font-family:'Manrope',sans-serif; }
.site-nav { padding:14px 0; background:rgba(20,16,48,.82); backdrop-filter:blur(18px); border-bottom:1px solid rgba(255,255,255,.09); transition:.25s; }
.site-nav.scrolled { padding:9px 0; background:rgba(20,16,48,.96); box-shadow:0 10px 30px #100d282c; }
.brand-logo { width:43px; height:43px; border-radius:11px; object-fit:cover; background:#fff; }
.brand-name { font-size:13px; line-height:1.05; font-weight:900; letter-spacing:1.2px; color:#fff; }
.brand-name span { display:block; font-size:9px; letter-spacing:3px; color:#ffb45b; margin-top:5px; }
.navbar .nav-link { color:#e8e4f2; font-size:13px; font-weight:600; padding:10px 13px!important; }
.navbar .nav-link:hover { color:#ffb45b; }
.btn-nav { border:1px solid #ffffff55; color:#fff; border-radius:30px; padding:9px 18px; font-size:13px; font-weight:700; }
.btn-nav:hover { background:#fff; color:#2a174a; }
.hero-section { min-height:760px; position:relative; overflow:hidden; display:flex; align-items:center; color:#fff; padding:150px 0 105px; background:radial-gradient(ellipse at 78% 43%,#4e236d 0%,transparent 37%),radial-gradient(ellipse at 10% 90%,#3d1c60 0%,transparent 35%),linear-gradient(120deg,#15112f 0%,#20143f 55%,#321b4e 100%); }
.hero-grid { position:absolute; inset:0; opacity:.15; background-image:linear-gradient(#ffffff16 1px,transparent 1px),linear-gradient(90deg,#ffffff16 1px,transparent 1px); background-size:58px 58px; mask-image:linear-gradient(90deg,black,transparent); }
.hero-orb { position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
.orb-one { width:440px;height:440px;right:-100px;top:-160px;border:1px solid #ffffff22;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff05; }
.orb-two { width:250px;height:250px;left:-120px;bottom:-120px;background:#ef79181a;filter:blur(35px); }
.hero-content { position:relative; z-index:2; }
.eyebrow,.section-kicker { font-size:11px; font-weight:800; letter-spacing:2.5px; color:#ef8c45; }
.eyebrow { display:flex; align-items:center; gap:10px; color:#f6b36e; }
.eyebrow span { width:28px;height:2px;background:linear-gradient(90deg,#ffb52f,#ef7918); }
.hero-section h1 { max-width:700px; margin:24px 0 20px; font-size:clamp(43px,6vw,73px); line-height:1.06; font-weight:800; letter-spacing:-3px; }
.gradient-text { background:linear-gradient(100deg,#71328d,#ef7918 72%,#ffb52f); -webkit-background-clip:text;background-clip:text;color:transparent; }
.hero-section .gradient-text { background:linear-gradient(100deg,#d9a5ff,#ffad61 75%,#ffd276);-webkit-background-clip:text;background-clip:text;color:transparent; }
.hero-lead { max-width:580px; color:#d0c9df; font-size:17px; line-height:1.85; }
.btn-gradient { border:0; color:#fff; font-weight:800; border-radius:12px; padding:14px 22px; background:linear-gradient(105deg,#692b83,#b34254 55%,#f07c17); box-shadow:0 12px 28px #b54b4c38; transition:.25s; }
.btn-gradient:hover { color:#fff; transform:translateY(-3px); box-shadow:0 17px 35px #e879344b; }
.btn-outline-light { border-radius:12px; padding:14px 22px; font-weight:700; border-color:#ffffff55; }
.btn-outline-light:hover { color:#24163f; }
.hero-note { color:#bdb4d0; font-size:12px; letter-spacing:.4px; }
.hero-note i { color:#ffad55; margin-right:8px; }
.hero-visual { position:relative; min-height:420px; display:grid; place-items:center; }
.visual-glow { position:absolute;width:320px;height:320px;border-radius:50%;background:linear-gradient(140deg,#8d3e9c88,#f1842680);filter:blur(65px); }
.visual-card { position:absolute;width:min(340px,85%);height:330px;border-radius:32px; }
.visual-card-back { transform:rotate(10deg) translate(18px,8px);background:linear-gradient(145deg,#f4a13c,#8d3a8f);opacity:.65;box-shadow:0 25px 65px #09051d80; }
.visual-card-main { display:flex; flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#ffffffed,#f5efffef);border:1px solid #ffffffa8;box-shadow:0 30px 90px #08051d8c,inset 0 1px #fff; }
.hero-logo { width:190px;height:190px;object-fit:contain;mix-blend-mode:multiply; }
.visual-caption { font-family:'Manrope';font-weight:800;color:#38204e;font-size:14px;letter-spacing:.5px; }
.visual-lines { display:flex;gap:5px;margin-top:16px; }
.visual-lines i { display:block;width:28px;height:3px;border-radius:5px;background:linear-gradient(90deg,#71328d,#ef7918); }
.floating-chip { position:absolute;z-index:3;padding:12px 16px;border-radius:14px;color:#fff;font-size:12px;font-weight:700;background:#ffffff18;border:1px solid #ffffff35;backdrop-filter:blur(14px);box-shadow:0 12px 30px #09051d55; }
.floating-chip i { color:#ffc16b;margin-right:7px; }
.chip-top { top:55px;right:-8px; }.chip-bottom { bottom:45px;left:-10px; }
.scroll-cue { position:absolute;bottom:28px;left:50%;transform:translateX(-50%);color:#a9a0bf;text-decoration:none;font-size:9px;letter-spacing:2px;display:flex;align-items:center;gap:10px; }
.scroll-cue span { width:25px;height:1px;background:#f29b54; }
.intro-strip { padding:27px 0;background:#fff;border-bottom:1px solid #eeeaf4; }
.intro-strip p { color:#39334c;font-size:16px; }.intro-strip strong { color:#692b83; }
.strip-tag { color:#8b8298;font-size:9px;font-weight:800;letter-spacing:1.7px; }
.section-space { padding:105px 0; }
.section-title { font-size:clamp(34px,4vw,49px);line-height:1.16;font-weight:800;letter-spacing:-1.8px;margin:16px 0 22px; }
.section-copy { color:var(--muted);font-size:15px;line-height:1.9; }
.text-link { display:inline-flex;gap:12px;align-items:center;margin-top:17px;text-decoration:none;color:#702e82;font-weight:800;font-size:14px; }
.text-link:hover { color:#e7751b; }
.about-panel { position:relative;overflow:hidden;padding:42px;border-radius:27px;background:linear-gradient(140deg,#20163f,#3c2058 65%,#6a2b68);color:#fff;box-shadow:0 25px 65px #2c17452b; }
.about-panel-glow { position:absolute;width:240px;height:240px;right:-100px;top:-110px;border-radius:50%;background:#ef7918;filter:blur(85px);opacity:.55; }
.about-icon { width:60px;height:60px;display:grid;place-items:center;border-radius:18px;color:#ffbd69;font-size:26px;background:#ffffff15;border:1px solid #ffffff20; }
.about-panel h3 { margin:25px 0 10px;font-weight:800;font-size:25px; }.about-panel p { color:#d4cadd;line-height:1.8;font-size:14px; }
.about-divider { height:1px;background:#ffffff24;margin:26px 0; }
.mini-feature { display:flex;align-items:center;gap:9px;color:#f1eaf6;font-size:12px;font-weight:600; }.mini-feature i { color:#ffb55d;font-size:17px; }
.services-section { background:linear-gradient(180deg,#f8f6fb,#fff); }
.section-heading { max-width:720px; }
.service-card { height:100%;min-height:245px;position:relative;overflow:hidden;padding:30px;border-radius:21px;background:#fff;border:1px solid #eeeaf3;box-shadow:0 12px 35px #2d1c4510;transition:.3s; }
.service-card:after { content:"";position:absolute;width:130px;height:130px;right:-75px;bottom:-75px;border-radius:50%;background:linear-gradient(135deg,#75328b30,#f07a1828);transition:.3s; }
.service-card:hover { transform:translateY(-8px);box-shadow:0 23px 50px #2d1c4520;border-color:#e4d5ec; }
.service-card:hover:after { transform:scale(1.7); }
.service-icon { width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:23px;margin-bottom:23px; }
.service-icon.purple { background:#f1e6f8;color:#75328b; }.service-icon.orange {background:#fff0e2;color:#e97819}.service-icon.blue{background:#e8f1ff;color:#4779c9}.service-icon.pink{background:#fceaf2;color:#c44e86}.service-icon.green{background:#e6f6ef;color:#31976b}.service-icon.gold{background:#fff5dc;color:#bd861b}
.service-card h3 { font-size:19px;font-weight:800;margin-bottom:11px; }.service-card p { color:#77788a;font-size:13px;line-height:1.8;margin:0;max-width:95%; }
.card-index { position:absolute;right:25px;top:28px;color:#e8e2ee;font-family:'Manrope';font-size:17px;font-weight:800; }
.service-disclaimer { color:#8a8393;font-size:11px; }
.approach-section { background:#fff; }
.process-card { height:100%;padding:28px 23px;border-left:1px solid #e8deed;position:relative; }
.process-card>span { position:absolute;top:22px;right:18px;color:#e8dfed;font-size:25px;font-family:'Manrope';font-weight:800; }
.process-card>i { font-size:26px;color:#81398b;display:block;margin:15px 0 24px; }
.process-card h3 { font-size:19px;font-weight:800; }.process-card p { color:#77788a;font-size:13px;line-height:1.8; }
.cta-band { padding:0 0 30px; }
.cta-inner { padding:48px 55px;border-radius:26px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;background:radial-gradient(circle at 85% 10%,#f49a3b66,transparent 30%),linear-gradient(110deg,#241640,#58266f 65%,#a44345);box-shadow:0 22px 55px #3c1d542c; }
.cta-inner h2 { font-size:clamp(28px,4vw,42px);font-weight:800;margin:12px 0;letter-spacing:-1px; }.cta-inner h2 span { color:#ffbd69; }.cta-inner p { color:#e1d5e9;font-size:14px; }
.cta-button { flex-shrink:0;border-radius:12px;padding:14px 22px;font-weight:800;color:#40204f; }
.contact-section { background:linear-gradient(180deg,#fff,#faf8fc); }
.contact-detail { display:flex;gap:16px;margin-top:28px;align-items:flex-start; }
.contact-detail>span { width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;border-radius:13px;color:#78358a;background:#f1e8f6;font-size:18px; }
.contact-detail small { color:#9a8ca4;font-size:9px;font-weight:800;letter-spacing:1.5px; }.contact-detail p { margin:5px 0 0;color:#4f4b5e;font-size:13px;line-height:1.7; }
.contact-form-card { padding:36px;border-radius:24px;background:#fff;border:1px solid #eee9f2;box-shadow:0 22px 65px #28133e12; }
.contact-form-card h3 { font-size:24px;font-weight:800; }.form-subtitle { color:#8b8795;font-size:12px;margin-bottom:24px; }
.form-label { font-size:12px;font-weight:700;color:#514b60; }.form-control,.form-select { min-height:48px;border-radius:10px;border-color:#e8e3ed;font-size:13px;padding:12px 14px; }.form-control:focus,.form-select:focus { border-color:#a66bb5;box-shadow:0 0 0 .2rem #75328b18; }.form-control::placeholder { color:#b2adba; }.contact-form-card textarea.form-control { min-height:120px; }
.privacy-note { color:#96909e;font-size:10px;margin:16px 0 0; }.privacy-note i { color:#6d9d78;margin-right:5px; }
.hp-field { position:absolute;left:-9999px;opacity:0; }
.site-footer { padding:65px 0 25px;background:#171331;color:#fff; }
.footer-logo { width:52px;height:52px;border-radius:12px;object-fit:cover;background:#fff; }
.footer-brand { color:#fff;font-family:'Manrope';font-size:13px;font-weight:900;letter-spacing:1px;line-height:1.4; }.footer-brand small { color:#f5a14d;font-size:9px;letter-spacing:2.5px; }
.footer-description { max-width:360px;color:#aaa4bd;font-size:13px;line-height:1.8; }
.footer-heading { font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#ffb15e;margin-bottom:19px;font-weight:800; }
.site-footer a:not(.footer-brand) { display:block;color:#c6bfd2;text-decoration:none;font-size:12px;margin:0 0 11px; }.site-footer a:hover { color:#ffb15e; }
.site-footer p { color:#c6bfd2;font-size:12px;line-height:1.8; }.site-footer p i { color:#ffb15e;margin-right:8px; }
.footer-legal { border-top:1px solid #ffffff20;color:#aaa4bd;line-height:1.9; }.footer-legal strong { color:#e9e2f1; }
.back-top { position:fixed;right:22px;bottom:22px;z-index:10;width:43px;height:43px;border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,#71328d,#ef7918);box-shadow:0 8px 25px #28133e35;opacity:0;pointer-events:none;transform:translateY(10px);transition:.25s; }.back-top.show { opacity:1;pointer-events:auto;transform:translateY(0); }
@media(max-width:991px) { .hero-section {min-height:auto;padding:140px 0 100px}.hero-visual{min-height:390px}.navbar-collapse{padding:15px 0}.navbar-nav{align-items:stretch!important}.btn-nav{display:inline-block;margin-top:8px}.section-space{padding:78px 0} }
@media(max-width:575px) { .hero-section h1{letter-spacing:-1.8px}.hero-visual{min-height:340px}.visual-card{height:275px}.hero-logo{width:155px;height:155px}.floating-chip{font-size:10px;padding:10px 12px}.chip-top{right:0;top:24px}.chip-bottom{left:0;bottom:20px}.about-panel,.contact-form-card{padding:26px}.cta-inner{padding:32px 25px;display:block}.cta-button{margin-top:25px}.section-space{padding:65px 0}.intro-strip p{font-size:14px}.strip-tag{font-size:8px} }
