@tailwind base;@tailwind components;@tailwind utilities;:root{--navy:#172c63;--navy-deep:#0e1a42;--gold:#feba01;--gold-soft:#ffd65c;--white:#fff;--canvas:#ebeff8;--surface:#f6f8fc;--ink:#172c63;--muted:#5c6690;--line:#dce2f2;--good:#1e9e6b;--font-display:"Space Grotesk",sans-serif;--font-body:"Inter",sans-serif;--font-mono:"IBM Plex Mono",monospace}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--ink);background:var(--white);margin:0}h1,h2,h3,h4{font-family:var(--font-display);margin:0}p{margin:0}button{cursor:pointer;font-family:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--gold-soft)}.btn{border:none;border-radius:9px;align-items:center;gap:8px;padding:13px 24px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-gold{background:var(--gold);color:var(--navy-deep)}.btn-gold:hover{background:var(--gold-soft)}.btn-outline{border:1.5px solid var(--navy);color:var(--navy);background:0 0}.btn-outline:hover{background:var(--navy);color:#fff}.btn-outline-light{color:#fff;background:0 0;border:1.5px solid #ffffff80}.btn-outline-light:hover{border-color:#fff}.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--navy-deep)}.btn-sm{padding:10px 16px;font-size:13px}.btn-block{justify-content:center;width:100%}.navbar{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#ffffffeb;justify-content:space-between;align-items:center;padding:16px 6vw;display:flex;position:sticky;top:0}.logo{font-family:var(--font-display);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.logo b{color:var(--gold)}.nav-links{gap:28px;font-size:13.5px;font-weight:500;display:flex}.nav-links a{color:var(--ink)}.nav-links a:hover{color:var(--gold)}.nav-toggle{background:0 0;border:none;display:none}@media (width<=900px){.nav-links{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;gap:16px;padding:20px 6vw;display:none;position:fixed;top:64px;left:0;right:0}.nav-links.open{display:flex}.nav-toggle{display:block}}.hero{background:linear-gradient(120deg,var(--navy-deep) 0%,var(--navy) 62%,#213b85 100%);color:#fff;flex-direction:column;justify-content:center;min-height:70vh;padding:100px 6vw 80px;display:flex;position:relative;overflow:hidden}.hero-media{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-media-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.2s;position:absolute;inset:0}.hero-media-img.active{opacity:1}.hero-media-overlay{background:linear-gradient(120deg,#0e1a42e6 0%,#172c63c7 55%,#213b858c 100%);position:absolute;inset:0}.hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#feba0133,#0000 70%);border-radius:50%;width:420px;height:420px;position:absolute;top:-15%;right:-10%}.hero:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#ffffff12,#0000 70%);border-radius:50%;width:320px;height:320px;position:absolute;bottom:-20%;left:-8%}.eyebrow{font-family:var(--font-mono);letter-spacing:2px;color:var(--gold-soft);text-transform:uppercase;z-index:2;margin-bottom:16px;font-size:11.5px;transition:opacity .3s;position:relative}.hero h1{z-index:2;max-width:680px;font-size:clamp(32px,5vw,52px);line-height:1.1;transition:opacity .3s;position:relative}.hero h1 span{color:var(--gold)}.hero p{color:#c7ceec;z-index:2;max-width:540px;margin-top:18px;font-size:15.5px;line-height:1.7;transition:opacity .3s;position:relative}.cta-row{z-index:2;flex-wrap:wrap;gap:14px;margin-top:30px;display:flex;position:relative}.cta-row a{z-index:2;position:relative}.slider-dots{z-index:2;gap:7px;margin-top:44px;display:flex;position:relative}.slider-dots button{cursor:pointer;z-index:2;background:#ffffff40;border:none;border-radius:2px;width:28px;height:3px;padding:0;position:relative}.slider-dots button.on{background:var(--gold)}@media (width<=600px){.hero{min-height:auto;padding:88px 6vw 64px}.cta-row{gap:12px}.cta-row .btn{flex:auto;justify-content:center;min-width:0}}.trust-bar{background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-around;gap:20px;padding:26px 6vw;display:flex}.trust-bar .item{text-align:center}.trust-bar .item b{font-family:var(--font-display);color:var(--navy);justify-content:center;align-items:center;min-height:28px;font-size:22px;display:flex}.trust-bar .item span{color:var(--muted);font-size:11px;font-family:var(--font-mono)}.star-rating{align-items:center;gap:2px;display:inline-flex}.star{color:var(--line)}.star.filled{color:var(--gold)}.section{padding:72px 6vw}.section.tint{background:var(--surface)}.section-kicker{font-family:var(--font-mono);color:var(--gold);letter-spacing:1.5px;text-transform:uppercase;text-align:center;margin-bottom:10px;font-size:11.5px}.section-title{text-align:center;max-width:600px;margin:0 auto;font-size:clamp(24px,3vw,32px)}.section-body{color:var(--muted);text-align:center;max-width:640px;margin:14px auto 0;font-size:14.5px;line-height:1.7}.section-head{margin-bottom:44px}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:56px;max-width:1180px;margin:0 auto;display:grid}.about-grid .section-title,.about-grid .section-body{text-align:left;margin:0}.about-grid .section-kicker{text-align:left}.values-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.value-chip{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:8px;padding:10px 15px;font-size:12.5px;font-weight:600;display:flex}.value-chip svg{color:var(--gold);width:17px;height:17px}.illustration-block{background:linear-gradient(135deg,#eef1fa,#dee5f7);border:1px dashed #b9c3e4;border-radius:18px;justify-content:center;align-items:center;height:320px;display:flex}@media (width<=860px){.about-grid{grid-template-columns:1fr}}.illustration-block.video-block{background:var(--navy-deep);border:none;height:320px;padding:0;overflow:hidden}.about-video{object-fit:contain;border-radius:18px;width:100%;height:100%;display:block}.services-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:0 auto;display:grid}.service-card{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:16px;padding:26px;transition:all .2s;display:block;position:relative;overflow:hidden}.service-card:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 16px 34px -18px #172c634d}.service-card .icwrap{background:var(--navy);border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:16px;display:flex}.service-card .icwrap svg{color:var(--gold)}.service-card h3{margin-bottom:8px;font-size:16px}.service-card p{color:var(--muted);font-size:12.5px;line-height:1.6}.service-card ul{color:var(--navy);margin:12px 0 0;padding-left:18px;font-size:12px;line-height:1.9}.service-card .arrow{color:var(--gold);opacity:0;font-size:18px;transition:all .2s;position:absolute;top:24px;right:18px}.service-card:hover .arrow{opacity:1}@media (width<=900px){.services-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.services-grid{grid-template-columns:1fr}}.svc-hero{background:var(--navy-deep);height:420px;position:relative;overflow:hidden}.svc-hero-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1s,transform 1s;position:absolute;inset:0;transform:translate(-40px)}.svc-hero-img.active{opacity:1;transform:translate(0)}.svc-hero-overlay{pointer-events:none;background:linear-gradient(120deg,#0e1a42e0 0%,#172c63a6 60%,#172c6359 100%);position:absolute;inset:0}.svc-hero-content{color:#fff;flex-direction:column;justify-content:center;max-width:720px;height:100%;padding:0 6vw;display:flex;position:relative}.svc-hero-content h1{margin-top:6px;font-size:clamp(28px,4vw,42px);line-height:1.15}.svc-hero-content p{color:#c7ceec;max-width:560px;margin-top:14px;font-size:14.5px;line-height:1.7}@media (width<=700px){.svc-hero{height:340px}}.svc-body{text-align:center;max-width:900px;margin:0 auto}.svc-highlights{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.svc-highlight{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:12.5px;font-weight:600;display:flex}.svc-highlight svg{color:var(--gold);flex-shrink:0}.svc-writeup{text-align:left;flex-direction:column;gap:16px;margin-top:32px;display:flex}.svc-writeup .section-body{text-align:left;max-width:none;margin:0}.svc-notfound{text-align:center;padding:120px 6vw}.svc-notfound h2{margin-bottom:20px}.process-row{flex-wrap:wrap;align-items:flex-start;gap:24px 0;max-width:1180px;margin:0 auto;display:flex;position:relative}.pstep{text-align:center;flex:1;min-width:150px;padding:0 10px;position:relative}.pstep .num-wrap{z-index:2;width:56px;height:56px;margin:0 auto 14px;position:relative}.pstep .num-ring{position:absolute;inset:0;transform:rotate(-90deg)}.pstep .ring-track{fill:none;stroke:var(--line);stroke-width:3px}.pstep .ring-progress{fill:none;stroke:var(--gold);stroke-width:3px;stroke-linecap:round;stroke-dasharray:150.8;stroke-dashoffset:150.8px}.pstep.is-active .ring-progress{animation:ring-draw var(--tick-duration,2.4s) linear forwards}.pstep.is-done .ring-progress{stroke-dashoffset:0}@keyframes ring-draw{0%{stroke-dashoffset:150.8px}to{stroke-dashoffset:0}}.pstep .num{background:var(--navy);color:var(--gold);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:background .35s,color .35s,transform .3s;display:flex;position:absolute;inset:4px}.pstep.is-active .num{animation:.4s pstep-grow}@keyframes pstep-grow{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.pstep.is-done .num{background:var(--gold);color:var(--navy-deep)}.pstep h4{margin-bottom:6px;font-size:13.5px}.pstep p{color:var(--muted);font-size:12px;line-height:1.5}.pstep .thread{z-index:1;width:100%;height:2px;position:absolute;top:28px;left:50%;overflow:hidden}.pstep .thread:before{content:"";background-image:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 14px);position:absolute;inset:0}.pstep .thread:after{content:"";background-image:repeating-linear-gradient(90deg,var(--gold) 0 8px,transparent 8px 14px);width:0%;height:100%;transition:width var(--tick-duration,2.4s) ease;position:absolute;top:0;left:0}.pstep .thread.filled:after{width:100%}@media (width<=700px){.pstep .thread{display:none}}.portfolio-filters{flex-wrap:wrap;justify-content:center;gap:9px;margin-bottom:26px;display:flex}.filter-chip{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:20px;padding:8px 16px;font-size:12px;font-weight:600}.filter-chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}.portfolio-grid{grid-template-columns:repeat(4,1fr);gap:14px;max-width:1180px;margin:0 auto;display:grid}.pf-tile{aspect-ratio:1;background:linear-gradient(150deg,#1f2e6b,#3049a0);border-radius:14px;align-items:flex-end;padding:12px;display:flex;position:relative;overflow:hidden}.pf-tile.gold{background:linear-gradient(150deg,var(--gold),#e8a600)}.pf-tile.mid{background:linear-gradient(150deg,#3049a0,#8ca0e6)}.pf-tile span{color:#fff;font-size:11px;font-family:var(--font-mono);background:#00000047;border-radius:6px;padding:4px 9px}@media (width<=900px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}.why-focus-label{text-align:center;font-family:var(--font-mono);color:var(--navy);text-transform:uppercase;letter-spacing:.5px;margin:8px 0 22px;font-size:12px;font-weight:600}.why-grid{grid-template-columns:1fr 1fr;gap:16px;max-width:1000px;margin:0 auto;display:grid}.why-item{border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;transform-origin:50%;background:#fff;border-radius:14px;align-items:flex-start;gap:14px;padding:20px;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex}.why-item:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.why-item.left:hover,.why-item.left.open{border-color:var(--gold);transform:rotate(1.6deg)translateY(-2px);box-shadow:0 14px 30px -16px #172c6359}.why-item.right:hover,.why-item.right.open{border-color:var(--gold);transform:rotate(-1.6deg)translateY(-2px);box-shadow:0 14px 30px -16px #172c6359}.why-item .check{background:var(--gold);width:26px;height:26px;color:var(--navy-deep);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.why-item-body{flex:1}.why-item h4{margin-bottom:4px;font-size:14px}.why-drop{opacity:0;max-height:0;transition:max-height .35s,opacity .3s,margin-top .3s;overflow:hidden}.why-drop p{color:var(--muted);font-size:12px;line-height:1.6}.why-item:hover .why-drop,.why-item.open .why-drop{opacity:1;max-height:140px;margin-top:8px}@media (width<=700px){.why-grid{grid-template-columns:1fr}}.testi-wrap{background:var(--navy);color:#fff;text-align:center;border-radius:20px;max-width:800px;margin:0 auto;padding:52px 40px;position:relative}.testi-wrap .quote{color:#dce2f5;max-width:600px;margin:0 auto;font-size:16px;font-style:italic;line-height:1.8}.testi-wrap .avatar-row{justify-content:center;gap:8px;margin-top:24px;display:flex}.testi-wrap .avatar-row span{background:#ffffff4d;border-radius:50%;width:8px;height:8px}.testi-wrap .avatar-row span.on{background:var(--gold)}.testi-wrap .avatar-row button{cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .2s}.testi-wrap .avatar-row button.on{background:var(--gold)}.testi-mark{color:var(--gold-soft);opacity:.55;margin:0 auto 14px;display:block}.testi-name{font-family:var(--font-mono);color:var(--gold-soft);letter-spacing:.5px;margin-top:18px;font-size:11px}.faq-list{flex-direction:column;gap:10px;max-width:760px;margin:0 auto;display:flex}.faq-item{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;padding:18px 20px}.faq-item .q{justify-content:space-between;align-items:center;font-size:14.5px;font-weight:600;display:flex}.faq-item .q .plus{color:var(--gold);font-size:18px;font-family:var(--font-mono);text-align:center;width:18px}.faq-item .a{color:var(--muted);border-top:1px dashed var(--line);margin-top:12px;padding-top:12px;font-size:13px;line-height:1.7}.consult-wrap{background:linear-gradient(120deg,var(--navy-deep),var(--navy));padding:72px 6vw}.consult-card{background:#fff;border-radius:20px;max-width:680px;margin:0 auto;padding:36px;box-shadow:0 30px 60px -30px #00000080}.consult-card h2{text-align:center;font-size:22px}.consult-card .sub{text-align:center;color:var(--muted);margin-top:8px;font-size:13px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:26px;display:grid}.form-grid .full{grid-column:1/-1}.field{position:relative}.field label{color:var(--muted);font-size:11px;font-weight:600;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;display:block}.field input,.field select,.field textarea{border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fafbfe;border-radius:9px;padding:11px 13px;font-family:inherit;font-size:13px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}.field textarea{resize:vertical;min-height:70px}.form-status{text-align:center;color:var(--good);margin-top:14px;font-size:12.5px}@media (width<=600px){.form-grid{grid-template-columns:1fr}}.custom-select{width:100%;position:relative}.custom-select-trigger{border:1.5px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fafbfe;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;font-family:inherit;font-size:13px;transition:border-color .2s;display:flex}.custom-select-trigger:focus-visible{outline:2px solid var(--gold);border-color:var(--gold)}.custom-select.open .custom-select-trigger{border-color:var(--gold);outline:2px solid var(--gold)}.cs-placeholder{color:#9aa3c7}.cs-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.custom-select.open .cs-chevron{transform:rotate(180deg)}.custom-select-menu{border:1px solid var(--line);z-index:70;box-sizing:border-box;background:#fff;border-radius:10px;width:100%;max-width:100%;max-height:230px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 40px -16px #172c6366}.custom-select-option{cursor:pointer;color:var(--ink);border-radius:7px;padding:11px 13px;font-size:13px;line-height:1.4}.custom-select-option:hover{background:var(--surface)}.custom-select-option.selected{background:var(--gold-soft);color:var(--navy-deep);font-weight:600}.custom-select-shadow-input{opacity:0;pointer-events:none;border:none;width:100%;height:0;margin:0;padding:0;position:absolute}.footer-contact{background:var(--surface);padding:60px 6vw 20px}.contact-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;max-width:1180px;margin:0 auto;display:grid}.contact-tile{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;flex-direction:column;align-items:center;min-width:0;padding:22px 14px;display:flex}.contact-tile .ic{background:var(--gold);width:34px;height:34px;color:var(--navy-deep);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;margin:0 auto 12px;display:flex}.contact-tile b{margin-bottom:2px;font-size:13px;display:block}.contact-tile span{color:var(--muted);word-break:break-word;overflow-wrap:break-word;max-width:100%;font-size:11.5px}.contact-toast{text-align:center;color:var(--good);max-width:1180px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:12px;font-weight:600}@media (width<=700px){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.footer-mock{background:var(--navy-deep);color:#b9c1e8;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding:48px 6vw;font-size:12.5px;display:grid}.footer-mock h5{color:#fff;font-size:12.5px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}.footer-mock .links{flex-direction:column;gap:9px;display:flex}.footer-mock .links a:hover{color:var(--gold-soft)}.footer-bottom{color:#7d89bd;background:var(--navy-deep);border-top:1px solid #262f5e;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:18px 6vw;font-size:11.5px;display:flex}@media (width<=800px){.footer-mock{grid-template-columns:1fr 1fr}}.ai-launcher{background:var(--gold);z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 28px #feba0180}.ai-launcher:hover{transform:scale(1.06)}.chat-window{border:1px solid var(--line);z-index:100;background:#fff;border-radius:18px;flex-direction:column;width:340px;max-width:90vw;max-height:70vh;display:flex;position:fixed;bottom:92px;right:24px;overflow:hidden;box-shadow:0 24px 60px -20px #172c6373}.chat-head{background:var(--navy);color:#fff;align-items:center;gap:10px;padding:16px;display:flex}.chat-head .avatar{background:var(--gold);width:30px;height:30px;color:var(--navy-deep);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.chat-head b{font-size:13px;display:block}.chat-head span{color:#9fb1e8;font-size:10.5px}.chat-head .close{color:#fff;opacity:.7;background:0 0;border:none;margin-left:auto;font-size:18px}.chat-body{background:#fafbfe;flex-direction:column;flex:1;gap:10px;padding:16px;display:flex;overflow-y:auto}.bubble{border-radius:13px;max-width:82%;padding:10px 13px;font-size:12.5px;line-height:1.55}.bubble.user{background:var(--navy);color:#fff;border-bottom-right-radius:3px;align-self:flex-end}.bubble.ai{border:1px solid var(--line);background:#fff;border-bottom-left-radius:3px;align-self:flex-start}.chat-options{flex-wrap:wrap;gap:8px;display:flex}.chat-option{color:var(--navy);border:1.5px solid var(--line);background:#fff;border-radius:20px;align-items:center;gap:6px;padding:8px 14px;font-size:11.5px;font-weight:600;transition:all .2s;display:inline-flex}.chat-option:hover{border-color:var(--gold);background:var(--gold-soft);color:var(--navy-deep)}.chat-option.channel{background:var(--navy);color:#fff;border-color:var(--navy)}.chat-option.channel:hover{background:var(--gold);border-color:var(--gold);color:var(--navy-deep)}.chat-option.channel svg{flex-shrink:0}.chat-restart{color:var(--muted);background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:11.5px;font-weight:600;text-decoration:underline}.chat-restart:hover{color:var(--gold)}.chat-input{border-top:1px solid var(--line);gap:8px;padding:12px;display:flex}.chat-input input{background:#f1f3fa;border:none;border-radius:20px;flex:1;padding:10px 15px;font-size:12.5px}.chat-input input:focus{outline:2px solid var(--gold)}
