:root{--navy:#07101e;--navy2:#0b182c;--ink:#172134;--muted:#6c7689;--blue:#416ff4;--blue-light:#8db0ff;--paper:#f7f8fb;--line:#e7eaf0;--white:#fff;--radius:18px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a,button,details summary{outline-offset:5px}button{cursor:pointer}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.container{width:min(1200px,calc(100% - 72px));margin-inline:auto}.section{padding:124px 0}.section-label{display:inline-flex;align-items:center;gap:11px;color:#345ac7;font-size:11px;letter-spacing:.17em;font-weight:800}.section-label i{display:block;width:18px;height:2px;background:currentColor}.section-label-light{color:#8cb0ff}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:46px}.section-heading h2,.faq-grid h2{margin:20px 0 0;font:700 clamp(36px,4vw,55px)/1.12 'Space Grotesk',sans-serif;letter-spacing:-.055em}.section-heading h2{max-width:680px}.section-heading>p{max-width:350px;margin:0 0 7px;color:var(--muted);font-size:15px;line-height:1.85}.muted-title{color:#8e98a8}.btn{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:48px;padding:13px 19px;border:1px solid transparent;border-radius:9px;font-size:13px;font-weight:750;transition:transform .2s,background .2s,box-shadow .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn svg{width:16px;height:16px}.btn-primary{background:#4779ff;color:white;box-shadow:0 9px 32px rgba(45,98,247,.2)}.btn-primary:hover{background:#3164f2;box-shadow:0 13px 40px rgba(45,98,247,.3)}.btn-text{color:#d6e2fa;padding-inline:9px}.btn-text:hover{color:white}/* Progressive entrance: content remains visible when scripts are unavailable. */
.reveal{opacity:1;transform:none}
.motion-ready .reveal{opacity:0;transform:translate3d(0,30px,0);transition:opacity .8s cubic-bezier(.2,.75,.25,1),transform .9s cubic-bezier(.2,.75,.25,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
/* Headline unfolds one element at a time after the hero enters. */
.motion-ready .hero-copy.reveal > .eyebrow,
.motion-ready .hero-copy.reveal > h1,
.motion-ready .hero-copy.reveal > p,
.motion-ready .hero-copy.reveal > .hero-actions,
.motion-ready .hero-copy.reveal > .hero-proof{opacity:0;transform:translate3d(0,18px,0);transition:opacity .65s ease,transform .75s cubic-bezier(.2,.75,.25,1)}
.motion-ready .hero-copy.is-visible > .eyebrow,
.motion-ready .hero-copy.is-visible > h1,
.motion-ready .hero-copy.is-visible > p,
.motion-ready .hero-copy.is-visible > .hero-actions,
.motion-ready .hero-copy.is-visible > .hero-proof{opacity:1;transform:translate3d(0,0,0)}
.motion-ready .hero-copy > .eyebrow{transition-delay:90ms}
.motion-ready .hero-copy > h1{transition-delay:210ms}
.motion-ready .hero-copy > p{transition-delay:350ms}
.motion-ready .hero-copy > .hero-actions{transition-delay:490ms}
.motion-ready .hero-copy > .hero-proof{transition-delay:630ms}
.motion-ready .site-header .brand{animation:header-enter .6s both .08s}
.motion-ready .site-header .desktop-nav{animation:header-enter .6s both .18s}
.motion-ready .site-header .btn-nav{animation:header-enter .6s both .28s}
@keyframes header-enter{from{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal,.motion-ready .reveal,.motion-ready .hero-copy.reveal > .eyebrow,.motion-ready .hero-copy.reveal > h1,.motion-ready .hero-copy.reveal > p,.motion-ready .hero-copy.reveal > .hero-actions,.motion-ready .hero-copy.reveal > .hero-proof{opacity:1;transform:none;transition-delay:0ms}.motion-ready .site-header .brand,.motion-ready .site-header .desktop-nav,.motion-ready .site-header .btn-nav{animation:none}}
/* Header */
.announcement{height:35px;background:#0d1c33;color:#afc4e6;border-bottom:1px solid #1b3255;font-size:11px;letter-spacing:.015em}.announcement-content{height:100%;display:flex;justify-content:center;align-items:center;gap:10px}.announcement a{color:#e2ebff;text-decoration:underline;text-underline-offset:3px;font-weight:700}.announcement a span{padding-left:4px}.status-dot{background:#76dfba;box-shadow:0 0 0 3px rgba(118,223,186,.12);width:6px;height:6px;border-radius:50%;display:inline-block}.site-header{position:sticky;z-index:40;top:0;background:rgba(7,16,30,.96);border-bottom:1px solid rgba(132,163,211,.11);backdrop-filter:blur(14px);color:#f6f8ff}.nav-inner{height:80px;display:flex;align-items:center;gap:44px}.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0;color:white}.brand-icon{display:grid;place-items:center;width:37px;height:37px;grid-auto-flow:column;gap:0;background:#142c52;border:1px solid #335b9e;border-radius:9px;font:800 16px 'Space Grotesk',sans-serif;letter-spacing:-.16em;padding-right:3px}.brand-icon i{font-style:normal;color:#71a4ff}.brand-name{font:700 23px 'Space Grotesk',sans-serif;letter-spacing:-.075em}.brand-name>span:first-child{font-weight:400;color:#a6c4ff}.brand-stop{color:#79a4ff}.desktop-nav{display:flex;align-items:center;gap:35px;margin:auto}.desktop-nav a{font-size:12px;font-weight:650;color:#a7b5cb;transition:color .2s}.desktop-nav a:hover{color:white}.btn-nav{min-height:43px;background:transparent;border-color:#3d5271;color:white;padding:10px 15px}.btn-nav:hover{background:#1b2d49}.mobile-toggle,.mobile-nav{display:none}
/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse 80% 65% at 78% 38%,#102448 0%,#07101e 66%);color:white}.hero::before{position:absolute;inset:0;content:"";background-image:linear-gradient(rgba(110,155,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(110,155,255,.028) 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,transparent 5%,black 60%,transparent 100%);pointer-events:none}.hero-orb{position:absolute;border-radius:100%;filter:blur(70px);pointer-events:none}.hero-orb-one{top:40px;right:-160px;width:450px;height:450px;background:rgba(33,89,199,.16)}.hero-orb-two{left:-260px;bottom:10px;width:430px;height:300px;background:rgba(40,82,176,.1)}.hero-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:50px;align-items:center;min-height:655px;padding:85px 0 80px;position:relative}.eyebrow{display:flex;align-items:center;gap:13px;font:700 10px 'Space Grotesk',sans-serif;color:#8fa9d4;letter-spacing:.13em}.eyebrow-line{width:18px;height:2px;background:#5a94ff}.eyebrow-star{font-size:12px;color:#6091ec}.hero h1{font:700 clamp(47px,5.1vw,70px)/1.065 'Space Grotesk',sans-serif;max-width:610px;letter-spacing:-.065em;margin:22px 0 23px}.hero .accent-text{color:#93b6ff;display:block}.hero .period{color:#527dff}.hero-copy>p{max-width:490px;color:#a8b7d0;font-size:16px;line-height:1.85;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:33px}.hero-proof{display:flex;align-items:center;gap:15px;margin-top:55px;font-size:11px;line-height:1.7;color:#899bb8}.hero-proof strong{font-weight:750;color:#d0daec}.avatars{display:flex;padding-left:8px}.avatars b{display:grid;place-items:center;width:34px;height:34px;margin-left:-8px;border-radius:50%;border:2px solid #0b1a32;background:#203960;color:#c6d9ff;font:800 12px 'Space Grotesk';}.avatars b:nth-child(2){background:#4069b1;color:#fff}.avatars b:nth-child(3){background:#294b82;color:#bed7ff}.hero-visual{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}.visual-glow{position:absolute;width:400px;height:370px;background:#3164e0;filter:blur(110px);opacity:.15}.orbit{position:absolute;border-radius:50%;border:1px solid rgba(91,136,219,.1);transform:rotate(-25deg)}.orbit-a{width:535px;height:405px}.orbit-b{width:425px;height:520px;transform:rotate(22deg)}.mock-browser{position:relative;width:100%;max-width:570px;min-height:355px;border-radius:13px;overflow:hidden;background:#0e1b31;border:1px solid #2a446b;box-shadow:0 32px 90px rgba(0,0,0,.38),0 0 60px rgba(34,95,231,.08);transform:rotate(-3deg);animation:float 9s ease-in-out infinite}.browser-bar{height:44px;background:#152640;border-bottom:1px solid #2d4564;display:flex;align-items:center;justify-content:space-between;padding:0 17px;color:#7994bc;font:500 10px 'Space Grotesk';letter-spacing:.04em}.traffic{display:flex;gap:5px}.traffic i{width:7px;height:7px;background:#59759e;border-radius:50%}.traffic i:nth-child(1){background:#ed7586}.traffic i:nth-child(2){background:#dbb86a}.traffic i:nth-child(3){background:#79c3a5}.browser-bar-right{font-size:17px}.browser-content{padding:23px}.browser-topline{display:flex;align-items:center;gap:12px}.small-mark{display:grid;place-items:center;width:42px;height:42px;background:#243e6a;color:#a2bcff;border:1px solid #3b65a0;border-radius:11px;font:700 16px 'Space Grotesk'}.browser-label{font-size:9px;color:#7895bd;letter-spacing:.17em}.browser-topline h3{margin:0;font:700 20px 'Space Grotesk';letter-spacing:-.05em}.browser-topline h3 em{font-style:normal;color:#8fb5ff}.online-pill{margin-left:auto;background:#153b38;border:1px solid #285b50;border-radius:100px;color:#9ce3c5;font-size:10px;padding:6px 10px;display:flex;align-items:center;gap:6px}.online-pill span{height:5px;width:5px;background:#85e1c1;border-radius:50%}.browser-layout{display:grid;grid-template-columns:2fr .85fr;gap:13px;margin-top:22px}.browser-main{border:1px solid #2a4265;background:#12233c;border-radius:10px;padding:16px;min-height:212px}.mock-caption,.side-kicker{font-size:9px;letter-spacing:.13em;color:#92a7c8;font-weight:700}.mock-graph{height:132px;position:relative;margin-top:8px}.graph-lines{display:flex;position:absolute;flex-direction:column;justify-content:space-between;inset:0}.graph-lines i{border-top:1px dashed rgba(151,181,235,.14)}.line-chart{position:absolute;inset:0;width:100%;height:100%;stroke:none}.mock-tags{display:flex;gap:6px}.mock-tags span{border:1px solid #345078;border-radius:4px;color:#94add1;padding:4px 7px;font-size:9px}.browser-side{display:flex;flex-direction:column;align-items:start;padding:13px;background:#142843;border:1px solid #2b4364;border-radius:10px;gap:9px}.side-icon{font-size:32px;line-height:1;color:#8ab2ff}.side-progress{width:100%;height:4px;background:#294264;border-radius:4px;margin-bottom:4px}.side-progress i{display:block;width:65%;height:100%;background:#6f9dff;border-radius:4px}.side-code{display:flex;flex-direction:column;gap:5px;width:100%;margin:2px 0 5px}.side-code span{width:85%;height:4px;border-radius:2px;background:#32547e}.side-code span:nth-child(2){width:55%;background:#5475a4}.side-code span:nth-child(3){width:75%}.launch-chip{padding:5px 9px;border:1px solid #427160;border-radius:5px;color:#8adabc;font-size:10px}.floating-chip{position:absolute;display:flex;align-items:center;gap:10px;padding:11px 15px;background:rgba(23,42,71,.94);border:1px solid #36547c;color:#e3ebf9;border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.24);font-size:11px;backdrop-filter:blur(10px)}.chip-top{top:60px;right:-8px;transform:rotate(5deg)}.chip-symbol{color:#a6c6ff;font-size:18px}.chip-bottom{bottom:55px;left:-27px;transform:rotate(4deg)}.chip-check{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#214d51;color:#81e4ba}.chip-check svg{width:17px;height:17px}.chip-bottom b,.chip-bottom small{display:block}.chip-bottom small{color:#94a7c1;font-size:10px}.visual-bottom-code{position:absolute;bottom:0;right:15px;font:600 10px 'Space Grotesk';letter-spacing:.12em;color:#54739f}.hero-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #1e3049;padding:17px 0 20px;position:relative;font-size:10px;color:#7087a6;letter-spacing:.13em;font-weight:800}.hero-footer a{color:#b1c6e2}.hero-footer a span{padding-left:12px;color:#72a1ff}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -10px}}
/* Pillar strip and services */
.manifesto-strip{background:#f1f4fa;border-bottom:1px solid #e8ebf1}.pillars{display:flex;justify-content:space-between;gap:20px;padding-top:23px;padding-bottom:23px;font:700 12px 'Space Grotesk';letter-spacing:.18em;color:#60718c}.pillars i{margin-left:25px;font-size:18px;color:#99aacc;font-style:normal}.section-solutions{background:#fff}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.service-card{position:relative;background:#f8f9fc;border:1px solid #ebedf4;border-radius:13px;padding:28px 25px 24px;min-height:355px;display:flex;flex-direction:column;overflow:hidden;transition:background .3s,box-shadow .3s,transform .3s}.service-card:hover{background:#f2f5fd;box-shadow:0 14px 40px rgba(20,37,68,.07);transform:translateY(-4px)}.service-top{display:flex;justify-content:space-between;align-items:start}.service-number{font:700 11px 'Space Grotesk';color:#8b97aa}.service-icon{display:grid;place-items:center;width:46px;height:46px;background:#e6edff;border:1px solid #d9e4ff;color:#315dd3;border-radius:11px}.service-icon svg{width:23px;height:23px}.service-card h3{font:700 23px/1.2 'Space Grotesk';letter-spacing:-.04em;margin:27px 0 12px}.service-card p{font-size:13px;line-height:1.8;margin:0;color:#748095}.service-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:29px;padding-right:12px}.service-tags span{font-size:10px;color:#60769b;border:1px solid #d9e1ef;border-radius:3px;padding:5px 7px}.service-card>a{display:grid;place-items:center;position:absolute;right:21px;bottom:23px;color:#416bef;width:25px;height:25px}.service-card>a svg{width:18px;height:18px}
/* Why */
.why-section{background:#0a172b;color:#fff;overflow:hidden;position:relative}.why-section::before{content:"";position:absolute;right:0;top:0;width:50%;height:100%;background:radial-gradient(ellipse at 60% 50%,rgba(51,107,222,.16),transparent 68%)}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-top:108px;padding-bottom:108px}.why-copy h2,.about-copy h2{font:700 clamp(37px,4vw,53px)/1.15 'Space Grotesk';letter-spacing:-.055em;margin:23px 0}.why-copy h2 span,.about-copy h2 span{color:#8caeff}.why-copy>p,.about-copy>p{max-width:510px;color:#a2b4cf;line-height:1.85;font-size:14px;margin-bottom:24px}.inline-link{display:inline-flex;align-items:center;gap:15px;color:#b4ccff;padding-bottom:7px;border-bottom:1px solid #7297e0;font-size:13px;font-weight:750}.inline-link svg{width:15px;height:15px}.why-visual{position:relative;padding:18px}.code-card{position:relative;border:1px solid #315079;border-radius:12px;overflow:hidden;box-shadow:0 26px 65px #0005;background:#102139;transform:rotate(2deg)}.code-card-top{height:46px;border-bottom:1px solid #294263;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#98b5da;font-size:11px}.code-card-top>span:first-child{display:flex;gap:5px}.code-card-top i{width:7px;height:7px;border-radius:50%;background:#4c6790}.code-card-top i:nth-child(1){background:#e57881}.code-card-top i:nth-child(2){background:#d2b361}.code-card-top i:nth-child(3){background:#69b9a4}.code-card-status{color:#78cdab;font-size:10px}.code-body{display:flex;flex-direction:column;padding:28px 25px 35px;font:500 clamp(11px,1.35vw,16px)/2.15 'Space Grotesk',monospace;white-space:nowrap;color:#e1e9ff}.code-body span b{font-size:11px;color:#526e97;display:inline-block;width:29px;font-weight:500}.code-body em{font-style:normal;color:#9ebeff}.code-body strong{color:#9ee4be;font-weight:600}.cursor{display:inline-block;width:6px;height:17px;background:#94b8ff;vertical-align:-3px;animation:blink 1.2s steps(2) infinite}.code-floating{position:absolute;bottom:-5px;right:-12px;padding:10px 15px;background:#3569d1;color:white;border-radius:7px;font:700 11px 'Space Grotesk';box-shadow:0 12px 30px #0004}@keyframes blink{50%{opacity:0}}
/* Portfolio */
.projects-section{background:#fafbfe}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{overflow:hidden;border-radius:13px;background:#fff;border:1px solid #e8eaf0;transition:box-shadow .2s,transform .2s}.project-card:hover{box-shadow:0 18px 44px rgba(26,42,75,.09);transform:translateY(-5px)}.project-image{height:280px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:26px;position:relative}.project-a3 .project-image{background:#dfeaf6}.project-ruah .project-image{background:#dedad6}.project-vila .project-image{background:#e4eae9}.project-browser{height:235px;width:100%;background:#fff;border-radius:8px;box-shadow:0 18px 35px #24385226;overflow:hidden;transform:translateY(13px) rotate(-2deg)}.project-browser-bar{height:24px;background:#edf0f5;display:flex;align-items:center;justify-content:space-between;padding:0 11px;color:#91a0b3;font-size:7px}.project-browser-bar span{display:flex;gap:4px}.project-browser-bar i{width:5px;height:5px;background:#b4bfd1;border-radius:50%}.a3-screen{padding:22px 28px;background:linear-gradient(125deg,#fff 50%,#ecf5ff);height:100%}.a3-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#254c76}.a3-top b{font:800 15px 'Space Grotesk'}.a3-top b span{color:#6287a9}.a3-top small{font-size:6px;color:#506784}.a3-divider{height:1px;background:#e1e9f0;margin:8px 0 18px}.a3-screen>span{font-size:7px;color:#7193b0;font-weight:800;letter-spacing:.15em}.a3-screen>strong{display:block;margin-top:8px;color:#163653;font:700 24px/1.16 'Space Grotesk';letter-spacing:-.04em}.a3-button{display:inline-block;margin-top:17px;padding:7px 12px;background:#234e74;color:white;font-size:8px;border-radius:3px}.ruah-screen{position:relative;width:95%;height:248px;overflow:hidden;background:radial-gradient(ellipse at 50% 37%,#3b3b3b,#0d0d0d 74%);color:white;box-shadow:0 20px 35px #0004;transform:rotate(2deg) translateY(19px);display:flex;flex-direction:column;align-items:center}.ruah-screen::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 24px,rgba(255,255,255,.022) 25px)}.ruah-top{font:600 8px 'Space Grotesk';letter-spacing:.2em;margin:18px;z-index:1}.ruah-top span{padding:0 8px}.ruah-monogram{font:700 128px/.95 Georgia,serif;color:#c9c1b3;opacity:.9;text-shadow:4px 6px 0 #0008;z-index:1}.ruah-label{font:700 10px 'Space Grotesk';text-align:center;letter-spacing:.14em;z-index:1}.ruah-line{height:1px;width:100px;margin-top:12px;background:#c8c0b3}.vila-screen{width:100%;height:246px;background:#fffaf1;box-shadow:0 20px 35px #28423730;border-radius:11px;padding:22px;transform:rotate(-1.5deg) translateY(18px);overflow:hidden}.vila-nav{display:flex;justify-content:space-between;gap:5px;align-items:center;color:#1d5b54}.vila-nav>span{font:800 16px 'Space Grotesk';letter-spacing:-.09em}.vila-nav>span span{color:#9fa472}.vila-nav i{color:#db8e5f}.vila-nav small{font-size:7px}.vila-screen>strong{display:block;font:700 27px/1.05 'Space Grotesk';letter-spacing:-.045em;color:#274d43;margin:26px 0 15px}.vila-screen>strong em{font-style:normal;color:#9ba06a}.vila-search{padding:9px 12px;border:1px solid #d9dfd3;background:white;border-radius:6px;color:#82908b;font-size:9px}.vila-tiles{display:flex;gap:5px;margin-top:13px}.vila-tiles span{font-size:8px;padding:7px 9px;border-radius:5px;color:#356257;background:#eaf1e8}.project-info{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:24px}.project-type{font-size:9px;letter-spacing:.12em;font-weight:800;color:#667fbc}.project-info h3{font:700 21px 'Space Grotesk';letter-spacing:-.04em;margin:5px 0}.project-info p{margin:0;color:#8792a2;font-size:12px}.project-arrow{font-size:23px;color:#456dea}.portfolio-note{margin:22px 0 0;color:#8993a4;font-size:11px}
/* Process */
.process-section{background:#fff}.process-list{border-top:1px solid #e6e9ef}.process-item{display:grid;grid-template-columns:115px 1fr 30px;align-items:center;gap:28px;border-bottom:1px solid #e6e9ef;padding:27px 0}.process-item>span:first-child{font:600 17px 'Space Grotesk';color:#5980dc}.process-item h3{font:700 22px 'Space Grotesk';letter-spacing:-.04em;margin:0 0 6px}.process-item p{margin:0;color:#8491a1;font-size:13px}.process-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d6def0;border-radius:100%;color:#6d8dd4;font-size:16px}
/* About */
.about-section{background:#101c30;color:white;overflow:hidden}.about-grid{display:grid;grid-template-columns:.95fr 1fr;gap:115px;align-items:center;padding:110px 0}.about-symbol{height:360px;background:radial-gradient(ellipse at center,#1d3863,#101b30 72%);border:1px solid #2a4164;border-radius:12px;position:relative;display:grid;place-items:center;overflow:hidden}.about-dots{position:absolute;inset:0;opacity:.4;background-image:radial-gradient(#44638c 1px,transparent 1px);background-size:18px 18px;mask-image:radial-gradient(ellipse,black,transparent 80%)}.about-symbol-inner{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;line-height:1}.about-symbol-inner>span{font:700 125px 'Space Grotesk';letter-spacing:-.14em;color:#a7c2ff;margin-right:15px;text-shadow:0 18px 60px #4b86ff6c}.about-symbol-inner>small{font:700 19px/1 'Space Grotesk';letter-spacing:.3em;color:#bed1fa}.about-corner{position:absolute;bottom:20px;left:22px;font:600 10px 'Space Grotesk';color:#617ca4}.about-copy h2{margin-top:25px}.about-copy>p{margin:0 0 15px}.about-values{display:flex;gap:22px;flex-wrap:wrap;margin-top:28px}.about-values span{display:flex;align-items:center;gap:6px;color:#bacbe5;font-size:11px}.about-values svg{width:15px;height:15px;color:#77a9ff}
/* FAQ */
.faq-section{background:#fafbfe}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}.faq-grid h2{margin-bottom:20px}.faq-grid>div:first-child>p{max-width:330px;color:#8792a1;font-size:14px;line-height:1.85}.faq-list{border-top:1px solid #dfe5f0}.faq-list details{border-bottom:1px solid #dfe5f0}.faq-list summary{display:flex;align-items:center;justify-content:space-between;list-style:none;gap:16px;padding:23px 0;font:700 14px 'Space Grotesk';cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary svg{width:17px;height:17px;flex-shrink:0;color:#5b83db;transition:transform .2s}.faq-list details[open] svg{transform:rotate(45deg)}.faq-list details p{padding:0 35px 20px 0;margin:0;color:#7f8da0;font-size:13px;line-height:1.8}
/* Contact */
.contact-section{background:#07101e;color:#fff;position:relative;overflow:hidden}.contact-section::after{content:"";position:absolute;left:-150px;top:-100px;width:600px;height:500px;background:radial-gradient(ellipse,rgba(41,91,195,.14),transparent 70%);pointer-events:none}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:105px;padding:114px 0;position:relative;z-index:1}.contact-intro h2{font:700 clamp(42px,4.9vw,65px)/1.09 'Space Grotesk';letter-spacing:-.06em;margin:25px 0}.contact-intro h2 span{color:#92b5ff}.contact-intro>p{max-width:450px;color:#a7b8d2;font-size:15px;line-height:1.9}.contact-footnote{display:flex;align-items:center;gap:13px;margin-top:95px;color:#8298bb;font-size:12px}.contact-spark{font-size:39px;color:#719fff}.contact-form{background:#142239;border:1px solid #283c5b;border-radius:15px;padding:31px;box-shadow:0 20px 60px #0002}.form-heading{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:24px}.form-heading h3{font:700 21px 'Space Grotesk';letter-spacing:-.035em;margin:0}.form-heading h3 span{color:#81a7ff}.form-heading p{margin:7px 0 0;color:#899db9;font-size:12px}.contact-form label{display:block;color:#ccd9ed;font-size:11px;font-weight:700;margin-bottom:15px}.contact-form label>span{color:#8db2ff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;color:#e7edfc;margin-top:7px;background:#0e1a2d;border:1px solid #314564;border-radius:7px;min-height:44px;padding:12px;font-size:12px;outline:none;transition:border-color .2s,box-shadow .2s}.contact-form textarea{min-height:105px;resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#617795}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#709cfb;box-shadow:0 0 0 3px #4a7efa26}.contact-form select{cursor:pointer;appearance:none;background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="%2398aed1" stroke-width="2"%3E%3Cpath d="m6 9 6 6 6-6"/%3E%3C/svg%3E');background-repeat:no-repeat;background-position:right 12px center}.contact-form select option{background:#142239}.form-submit{width:100%;justify-content:space-between;margin-top:5px}.form-disclaimer{font-size:10px;color:#7c93b2;line-height:1.65;margin:13px 0 0}.form-result{margin-top:16px;padding:15px;border:1px solid #416b80;border-radius:8px;background:#193944}.form-result[hidden]{display:none}.form-result strong{color:#b8e9da;font-size:13px}.form-result p{margin:5px 0 12px;color:#b4c9d6;font-size:11px;line-height:1.65}.form-result button{border:1px solid #527f96;color:white;border-radius:6px;padding:8px 10px;background:transparent;font-size:11px;display:inline-flex;align-items:center;gap:6px}.form-result button svg{width:13px;height:13px}.form-result textarea{max-height:145px;font-size:11px}
/* Footer */
.site-footer{background:#050d18;color:#fff;border-top:1px solid #1d2d46}.footer-top{display:flex;justify-content:space-between;gap:50px;padding:62px 0 70px}.footer-brand .brand-name{font-size:25px}.footer-top>div:first-child>p{color:#7f91ad;font-size:12px;line-height:1.8;margin-top:17px}.footer-links{display:flex;gap:105px;padding-right:60px}.footer-links>div{display:flex;flex-direction:column;align-items:start;gap:12px}.footer-links strong{font:700 12px 'Space Grotesk';color:#dee7fa;margin-bottom:7px}.footer-links a{color:#8699b4;font-size:12px}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #1d2d46;padding:22px 0;color:#687d9c;font-size:11px}.footer-bottom a{display:inline-grid;place-items:center;border:1px solid #314565;color:#a3bbdc;border-radius:50%;width:30px;height:30px;margin-left:10px}
/* Responsive */
@media(max-width:1100px){.nav-inner{gap:20px}.desktop-nav{gap:19px}.hero-grid{gap:15px}.hero h1{font-size:56px}.chip-top{right:2px}.chip-bottom{left:-6px}.section{padding:100px 0}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:300px}.service-card h3{margin-top:15px}.why-grid{gap:40px}.contact-grid{gap:50px}.about-grid{gap:65px}.footer-links{padding-right:0}}
@media(max-width:850px){.container{width:min(100% - 40px,700px)}.site-header .btn-nav,.desktop-nav{display:none}.nav-inner{height:70px;justify-content:space-between}.mobile-toggle{display:grid;place-items:center;width:40px;height:40px;background:#152945;border:1px solid #314769;color:white;border-radius:8px}.mobile-toggle .close-icon{display:none}.mobile-toggle[aria-expanded=true] .menu-icon{display:none}.mobile-toggle[aria-expanded=true] .close-icon{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;gap:0;position:absolute;top:70px;left:0;right:0;background:#0c1a30;padding:18px 20px 30px;box-shadow:0 20px 30px #0003;border-top:1px solid #263c5b}.mobile-nav a{padding:15px;border-bottom:1px solid #263c5b;color:#cfdbed;font-weight:600}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:75px;padding-bottom:40px}.hero-copy{text-align:center}.eyebrow{justify-content:center}.hero h1{margin-inline:auto;font-size:clamp(48px,8vw,68px)}.hero-copy>p{margin-inline:auto}.hero-actions{justify-content:center}.hero-proof{justify-content:center;margin-top:32px}.hero-visual{width:min(100%,600px);margin:30px auto 0;min-height:410px}.mock-browser{width:95%}.hero-footer{margin-top:5px}.section-heading{align-items:start;flex-direction:column;gap:20px}.section-heading>p{max-width:550px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-grid .project-card:last-child{grid-column:1/-1;max-width:calc(50% - 9px)}.why-grid,.about-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:42px}.why-grid,.about-grid,.contact-grid{padding-top:85px;padding-bottom:85px}.code-card{max-width:540px;margin:auto}.why-visual{padding:0 20px}.about-symbol{max-width:600px}.contact-footnote{margin-top:35px}.pillars{flex-wrap:wrap;justify-content:center;column-gap:30px;row-gap:10px}.pillars i{margin-left:12px}.faq-grid{gap:24px}}
@media(max-width:600px){.announcement{font-size:9px}.announcement-content{gap:6px;white-space:nowrap}.container{width:calc(100% - 34px)}.brand-icon{width:34px;height:34px}.brand-name{font-size:21px}.hero-grid{padding-top:65px}.hero h1{font-size:clamp(43px,11.6vw,58px);letter-spacing:-.075em}.hero .accent-text{display:inline}.hero-copy>p{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch;max-width:360px;margin:27px auto 0}.btn-text{min-height:40px}.hero-proof{margin-top:33px}.hero-visual{min-height:330px;margin-top:25px}.mock-browser{transform:rotate(-2deg);width:100%;min-height:285px}.browser-bar{height:37px;padding:0 10px}.browser-content{padding:12px}.browser-topline h3{font-size:15px}.browser-topline .small-mark{height:35px;width:35px;font-size:11px}.browser-label{font-size:7px}.browser-layout{margin-top:14px;gap:7px}.browser-main{padding:10px;min-height:165px}.mock-graph{height:98px}.mock-caption,.side-kicker{font-size:7px}.browser-side{padding:9px;gap:7px}.side-icon{font-size:22px}.mock-tags span{font-size:7px;padding:3px 5px}.floating-chip{padding:7px 9px;font-size:9px}.chip-top{top:0;right:0}.chip-bottom{bottom:0;left:1px}.chip-check{height:25px;width:25px}.visual-bottom-code{display:none}.hero-footer{font-size:8px}.hero-footer a span{padding-left:2px}.section{padding:76px 0}.section-heading h2,.faq-grid h2{font-size:clamp(33px,9vw,44px)}.services-grid,.projects-grid{grid-template-columns:1fr}.service-card{min-height:270px;padding:24px}.service-card h3{font-size:24px}.projects-grid .project-card:last-child{grid-column:auto;max-width:none}.project-image{height:290px}.why-grid,.about-grid,.contact-grid{padding-top:72px;padding-bottom:72px}.why-copy h2,.about-copy h2{font-size:39px}.code-body{font-size:11px;padding:17px 12px 22px}.code-body span b{width:25px}.code-floating{right:-10px}.why-visual{padding:0 6px}.process-item{grid-template-columns:38px 1fr 25px;gap:14px;padding:22px 0}.process-item h3{font-size:18px}.process-item p{font-size:12px}.about-grid{gap:45px}.about-symbol{height:280px}.about-symbol-inner>span{font-size:90px}.faq-grid{gap:24px}.contact-intro h2{font-size:43px}.contact-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.form-heading h3{font-size:19px}.footer-top{flex-direction:column;padding:45px 0;gap:35px}.footer-links{gap:60px}.footer-bottom{align-items:start;flex-direction:column;gap:12px}.pillars{font-size:9px;letter-spacing:.08em;gap:8px 15px}.pillars i{margin-left:8px}.section-heading{margin-bottom:28px}}

/* Official Bless Code logo in navigation and footer */
.brand-logo{display:block;width:48px;height:48px;border-radius:10px;object-fit:contain;background:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.footer-brand .brand-logo{width:60px;height:60px}
@media(max-width:600px){.nav-inner .brand-logo{width:42px;height:42px}.footer-brand .brand-logo{width:54px;height:54px}}
/* Portfolio: screenshots of live homepages with existing illustrations as resilient fallback. */
.projects-section .project-image{padding:0;isolation:isolate}
.projects-section .project-image > :not(.project-screenshot):not(.project-view){z-index:0}
.project-screenshot{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center top;display:block;opacity:0;transition:opacity .55s ease}
.project-screenshot.is-ready{opacity:1}
.project-view{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;justify-content:flex-end;padding:16px;background:linear-gradient(0deg,rgba(6,16,33,.18),transparent 46%);color:white}
.project-view > span{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:7px;background:#101e35ed;border:1px solid #ffffff2e;font-size:10px;font-weight:800;letter-spacing:.075em;transform:translateY(2px);transition:transform .2s,background .2s}
.project-view:hover > span,.project-view:focus-visible > span{background:#3164f2;transform:translateY(0)}
.project-info h3 a:hover,.project-info h3 a:focus-visible,.project-arrow:hover{color:#3164f2}
.project-arrow{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px}
@media(prefers-reduced-motion:reduce){.project-screenshot,.project-view > span{transition:none}}

/* Quem somos — manifesto e história da Bless Code */
.about-copy>p{margin:0 0 17px;line-height:1.8}
.about-copy>p.about-lead{font-size:15px;line-height:1.8;color:#d3e1f6}
.about-copy>p strong{font-weight:700;color:#eef4ff}
.about-copy>p em{font-style:italic}
.about-copy .about-values{margin-top:28px}
@media(max-width:600px){.about-copy>p{font-size:13.5px;line-height:1.8}.about-copy>p.about-lead{font-size:14px}.about-copy .about-values{margin-top:22px}}


/* Bless Code digital diagnosis — visual V1 */
.diagnostic-section{position:relative;overflow:hidden;background:#0b172b;color:#f4f7ff;padding:104px 0 112px;border-top:1px solid #203758;border-bottom:1px solid #203758;isolation:isolate}
.diagnostic-section::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:730px;height:730px;left:-340px;bottom:-420px;background:radial-gradient(circle,rgba(52,102,237,.22) 0,transparent 67%)}
.diagnostic-section::after{content:"";position:absolute;z-index:-1;pointer-events:none;right:-20%;top:-65%;width:700px;height:700px;background:radial-gradient(circle,rgba(42,90,190,.13) 0,transparent 70%)}
.diagnostic-layout{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:clamp(36px,6vw,92px);align-items:center}
.diagnostic-intro h2{margin:22px 0 22px;font:700 clamp(36px,4.2vw,59px)/1.09 'Space Grotesk',sans-serif;letter-spacing:-.06em;max-width:550px}
.diagnostic-intro h2 span{color:#89aaff}
.diagnostic-intro>p{max-width:460px;line-height:1.85;font-size:15px;color:#a4b7d3;margin:0 0 30px}
.diagnostic-benefits{display:flex;flex-direction:column;gap:13px;margin-bottom:37px}
.diagnostic-benefits span{display:flex;align-items:center;gap:11px;color:#d5e3fd;font-size:13px}
.diagnostic-benefits svg{width:15px;height:15px;color:#82adff}
.diagnostic-quote{display:flex;align-items:center;gap:11px;color:#89a4cf;font-size:13px;font-weight:600;letter-spacing:-.01em}
.diagnostic-quote span{font-size:22px;color:#6f9dff}
.diagnostic-panel{background:linear-gradient(145deg,#152944,#112039 65%,#0e1d34);border:1px solid rgba(148,184,241,.28);border-radius:22px;box-shadow:0 24px 85px rgba(0,0,0,.17),inset 0 1px rgba(255,255,255,.035);padding:clamp(22px,3.2vw,38px);min-height:560px;display:flex;flex-direction:column}
.diag-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;font:700 11px 'Space Grotesk',sans-serif;letter-spacing:.15em;color:#d7e5ff}
.diag-topline>span:first-child{display:flex;align-items:center;gap:9px}
.diag-pulse{display:inline-block;background:#88b0ff;width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 5px rgba(136,176,255,.12)}
.diag-topline-muted{color:#6e91c7}
.diag-step{color:#89abed;white-space:nowrap;letter-spacing:.08em;font-size:12px}
.diag-progress{height:5px;border-radius:10px;overflow:hidden;background:#2a4060;margin:21px 0 32px}
.diag-progress>span{display:block;height:100%;width:0%;background:linear-gradient(90deg,#4074f4,#83bdff);border-radius:inherit;transition:width .35s ease}
.diag-content{flex:1;outline:none}
.diag-content.diag-enter{animation:diag-slide .31s ease both}
@keyframes diag-slide{from{opacity:.1;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.diag-kicker{color:#89aff9;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.diag-content h3{max-width:460px;font:700 clamp(25px,2.5vw,33px)/1.18 'Space Grotesk',sans-serif;letter-spacing:-.045em;margin:14px 0 10px}
.diag-content>p{color:#a1b2cb;font-size:13px;line-height:1.7;margin:0 0 23px}
.diag-options{display:grid;gap:11px;margin:25px 0 13px}
.diag-option{display:flex;align-items:center;text-align:left;gap:14px;width:100%;border:1px solid #365070;background:rgba(255,255,255,.035);color:#f3f6ff;border-radius:12px;padding:16px 17px;min-height:73px;transition:border-color .2s,background .2s,transform .2s}
.diag-option:hover,.diag-option:focus-visible{border-color:#81a8ff;background:rgba(74,124,240,.16);transform:translateX(3px)}
.diag-option:active{transform:scale(.992)}
.diag-option-symbol{flex-shrink:0;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#203a60;color:#9fc2ff;font:700 18px 'Space Grotesk'}
.diag-option-text{display:flex;flex-direction:column;gap:3px;flex:1}
.diag-option-text strong{font-size:14px;font-weight:700}
.diag-option-text small{font-size:11.5px;color:#a1b2cb;line-height:1.4}
.diag-option-arrow{font-size:20px;color:#8aacf0}
.diag-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #2c4262;padding-top:22px;margin-top:20px}
.diag-back{background:none;border:0;color:#bfd4f5;font-size:13px;font-weight:700;padding:10px 2px;display:inline-flex;align-items:center;gap:9px}
.diag-back:disabled{opacity:.36;cursor:not-allowed}
.diag-back:not(:disabled):hover{color:white}
.diag-panel-note{font-size:11px;color:#89a5c9}
.diag-result-label{display:inline-flex;gap:9px;align-items:center;color:#a5c4ff;font-size:11px;font-weight:800;letter-spacing:.13em}
.diag-result-label:before{content:"✦";font-size:18px;color:#8eb7ff}
.diag-result-title{font:700 clamp(26px,3vw,36px)/1.17 'Space Grotesk',sans-serif!important;color:#fff;margin:16px 0 14px!important}
.diag-result-intro{color:#c0d1ea!important;line-height:1.75!important;margin-bottom:18px!important}
.diag-result-points{display:grid;gap:11px;padding:0;list-style:none;margin:0 0 22px}
.diag-result-points li{display:flex;gap:10px;align-items:flex-start;color:#d5e2f5;font-size:12.5px;line-height:1.55}
.diag-result-points li:before{content:"✓";color:#8db4ff;font-weight:800;flex-shrink:0}
.diag-actions{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 12px}
.diag-actions .btn{white-space:normal}
.diag-secondary{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:12px 15px;background:transparent;color:#d8e6fd;border-radius:9px;border:1px solid #53719c;font-size:12px;font-weight:700;cursor:pointer}
.diag-secondary:hover{background:#263d60}
.diag-disclaimer{color:#7e99bc;font-size:10.5px;line-height:1.5}
.diag-confirmation{font-size:12px;color:#a5e0cd;min-height:18px}
.diag-noscript{color:#d7e5ff}
@media(max-width:980px){.diagnostic-layout{grid-template-columns:1fr;gap:34px}.diagnostic-intro h2{max-width:690px}.diagnostic-intro>p{max-width:650px}.diagnostic-benefits{flex-direction:row;flex-wrap:wrap;gap:12px 22px;margin-bottom:22px}.diagnostic-panel{min-height:530px}}
@media(max-width:600px){.diagnostic-section{padding:72px 0 78px}.diagnostic-intro h2{font-size:36px}.diagnostic-intro>p{font-size:13px}.diagnostic-benefits{flex-direction:column;gap:9px}.diagnostic-panel{padding:21px 16px;min-height:510px;border-radius:16px}.diag-option{padding:12px;gap:11px;min-height:70px}.diag-option-symbol{width:34px;height:34px}.diag-option-text strong{font-size:13px}.diag-topline{font-size:10px}.diag-content h3{font-size:26px}.diag-actions .btn,.diag-actions .diag-secondary{width:100%}}
@media(prefers-reduced-motion:reduce){.diag-content.diag-enter{animation:none}.diag-progress>span,.diag-option{transition:none}}
