/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--background:#eef7f8;--foreground:#071426;--muted:#536174;--panel:#fff;--panel-soft:#e7f5f7;--navy:#061342;--ink:#020817;--blue:#2857ff;--purple:#6b2cff;--teal:#10bfd0;--aqua:#75d5e8;--line:#06134221}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}::selection{color:inherit;background:0 0}html{scroll-behavior:smooth}body{min-width:320px;color:var(--foreground);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;background:linear-gradient(#fbfdff 0%,#eef7f8 44%,#e8f1ff 100%);margin:0}button,input,select,textarea{font:inherit;-webkit-user-select:text;user-select:text}a,button,summary{cursor:pointer}a{color:inherit;text-decoration:none}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;max-width:100%;display:block}main{overflow:hidden}.hero{background:radial-gradient(circle at 88% 16%,#10bfd029,#0000 30%),radial-gradient(circle at 8% 14%,#6b2cff1a,#0000 26%),linear-gradient(#fbfdff 0%,#f1fbfc 62%,#e8f1ff 100%);min-height:86vh;padding:18px clamp(18px,4vw,64px) 72px}.page-hero{background:radial-gradient(circle at 85% 12%,#10bfd026,#0000 32%),radial-gradient(circle at 12% 8%,#6b2cff14,#0000 28%),linear-gradient(#fbfdff 0%,#f1fbfc 72%,#e8f1ff 100%);padding:24px clamp(18px,4vw,64px) clamp(72px,9vw,118px)}.page-hero-inner{max-width:1060px;margin:clamp(58px,10vw,120px) auto 0}.page-hero-inner h1{max-width:980px;font-weight:880}.page-hero-inner p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:1.14rem;line-height:1.72}.site-header{z-index:20;position:sticky;top:12px}.nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe6;border:1px solid #0613421c;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;max-width:1240px;margin:0 auto 58px;padding:12px 14px;display:flex;box-shadow:0 16px 46px #07142614}.brand,.nav-links,.hero-actions,.contact{align-items:center;display:flex}.brand{gap:10px;padding:4px 0;font-size:1.05rem;font-weight:800}.brand img{object-fit:contain;filter:drop-shadow(0 8px 18px #0712331f);width:clamp(172px,13vw,210px);height:auto}.nav-links{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:.88rem;font-weight:760;display:flex}.nav-links a,.footer-columns a{-webkit-user-select:none;user-select:none;transition:color .18s,background .18s,border-color .18s,box-shadow .18s,transform .18s}.nav-links a{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 13px;display:inline-flex}.nav-links a,.nav-cta,.button,.brand{-webkit-touch-callout:none}.nav-links a:focus,.nav-links a:active,.nav-cta:focus,.nav-cta:active,.button:focus,.button:active{outline:none}.nav-links a:hover,.nav-links a:focus-visible,.nav-links a.active{color:var(--navy);background:linear-gradient(135deg,#10bfd029,#6b2cff14),#fffffff0;border-color:#10bfd061;box-shadow:inset 0 0 0 1px #ffffff9e,0 10px 24px #07142614}.nav-links a:active{background:linear-gradient(135deg,#10bfd038,#6b2cff1f),#fffffff5;border-color:#0aa9ad75;transform:translateY(1px)}.footer-columns a:hover{color:var(--navy)}.nav-cta{background:linear-gradient(135deg, var(--navy), #102a86);color:#fff;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-size:.9rem;font-weight:850;display:inline-flex}.site-nav{margin-bottom:44px}.hero-grid{grid-template-columns:minmax(390px,.95fr) minmax(360px,.78fr);align-items:center;gap:clamp(32px,4.6vw,64px);max-width:1260px;margin:0 auto;display:grid}.hero-copy{max-width:690px}.eyebrow{color:#078f94;letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:800}.hero-brand-lockup{border-left:3px solid var(--teal);gap:10px;width:fit-content;margin-bottom:22px;padding-left:18px;display:grid}.hero-brand-lockup img{filter:drop-shadow(0 16px 30px #07123324);width:clamp(230px,19vw,300px);height:auto}.hero-brand-lockup span{color:#0ea7ad;letter-spacing:0;text-transform:uppercase;font-size:.74rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;text-wrap:balance;margin-bottom:22px;font-size:clamp(2.45rem,3.55vw,4.45rem);font-weight:860;line-height:1.04}.hero h1{max-width:690px}h2{letter-spacing:0;text-wrap:balance;margin-bottom:18px;font-size:clamp(2rem,3.2vw,3.25rem);font-weight:760;line-height:1.08}h3{margin-bottom:16px;font-size:1.35rem;line-height:1.16}.hero-lede,.split-section p,.service-card span,.quote-section p{color:var(--muted);font-size:1.04rem;line-height:1.72}.hero-lede{max-width:560px;margin-bottom:28px}.hero-badges,.hero-actions{flex-wrap:wrap;gap:12px}.hero-badges{margin-bottom:26px;display:flex}.hero-badges span,.stack-list span{min-height:34px;color:var(--navy);background:#ffffff9e;border:1px solid #06145a1f;border-radius:8px;align-items:center;padding:0 12px;font-size:.84rem;font-weight:800;display:inline-flex}.button{border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-weight:800;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 14px 34px #0712331f}.button:active{transform:translateY(1px);box-shadow:0 8px 22px #0712331f}.button.primary{background:linear-gradient(135deg, var(--navy), #12318f);color:#fff}.button.secondary{background:#ffffffb8}.hero-media{background:linear-gradient(135deg,#7b2cff14,#12b9bb26),#ffffff7a;border:1px solid #06145a24;border-radius:8px;min-height:390px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 72px #07123324}.hero-media:before{content:"";pointer-events:none;border:1px solid #ffffffb8;border-radius:8px;position:absolute;inset:20px}.premium-system{background:linear-gradient(145deg, #030a25fa, #071557ed), var(--ink);align-content:stretch;gap:12px;max-width:520px;margin-left:auto;padding:clamp(18px,2.6vw,26px)}.premium-system:before{border-color:#ffffff1f;inset:18px}.premium-system:after{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(0deg,#ffffff0f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:44px 44px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 82%);mask-image:linear-gradient(#000,#0000 82%)}.system-topline,.system-map,.system-layers{z-index:2;position:relative}.system-topline{border-bottom:1px solid #ffffff21;justify-content:space-between;align-items:center;gap:14px;padding-bottom:14px;display:flex}.system-topline img{background:linear-gradient(135deg,#fffffff2,#e9f8fadb);border:1px solid #ffffff85;border-radius:8px;width:46px;height:auto;padding:5px;box-shadow:0 14px 34px #0000002e}.system-topline span{color:#9ff4f1;letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:900}.system-map{place-items:center;min-height:118px;display:grid;position:relative}.system-map:before,.system-map:after{content:"";border:1px solid #12b9bb33;border-radius:50%;position:absolute}.system-map:before{aspect-ratio:1;width:178px}.system-map:after{aspect-ratio:1;border-color:#7b2cff3d;width:98px}.system-core{z-index:3;aspect-ratio:1;background:linear-gradient(135deg,#fffffff5,#e0f7f8db);border:1px solid #ffffff7a;border-radius:8px;place-items:center;width:56px;padding:6px;display:grid;position:relative;box-shadow:0 14px 34px #0003}.system-core img{filter:drop-shadow(0 8px 16px #07123329);width:100%;height:auto}.system-track{background:linear-gradient(90deg,#0000,#9ff4f1a3,#0000);width:min(72%,410px);height:1px;position:absolute}.track-one{transform:rotate(22deg)}.track-two{transform:rotate(-28deg)}.system-dot{z-index:3;aspect-ratio:1;background:var(--teal);border-radius:50%;width:13px;position:absolute;box-shadow:0 0 0 9px #12b9bb29}.dot-one{top:22%;left:20%}.dot-two{background:var(--purple);top:38%;right:18%;box-shadow:0 0 0 10px #7b2cff1f}.dot-three{bottom:15%;right:34%}.system-layers{gap:8px;display:grid}.system-layers article{background:linear-gradient(135deg,#ffffff14,#12bfc30a);border:1px solid #ffffff1f;border-radius:8px;grid-template-columns:34px 1fr;align-items:center;gap:5px 11px;padding:10px 12px;display:grid}.system-layers article span{color:#9ff4f1;font-size:.86rem;font-weight:950}.system-layers article strong{color:#fff;font-size:.88rem;line-height:1.2}.system-layers article p{color:#ffffffad;grid-column:2;margin:0;font-size:.76rem;line-height:1.42}@keyframes softReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes mapPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes lineDrift{0%,to{opacity:.4}50%{opacity:.86}}.hero-copy,.premium-system,.section,.split-section,.dark-section,.contact{animation:.72s both softReveal}.premium-system{animation-delay:.12s}.system-dot,.system-map:before,.system-map:after{animation:4.8s ease-in-out infinite mapPulse}.system-dot.dot-two{animation-delay:.7s}.system-dot.dot-three{animation-delay:1.2s}.system-track{animation:4.2s ease-in-out infinite lineDrift}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.hero-console{color:#fff;background:#02082de0;border:1px solid #ffffff9e;border-radius:8px;max-width:300px;padding:18px;position:absolute;bottom:24px;right:24px;box-shadow:0 18px 50px #02082d3d}.hero-console span,.hero-console strong{display:block}.hero-console span{color:#9ff4f1;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:900}.hero-console strong{font-size:1rem;line-height:1.35}.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);max-width:1180px;margin:0 auto;display:grid}.stats div{border-right:1px solid var(--line);padding:30px clamp(18px,3vw,36px)}.stats div:last-child{border-right:0}.stats strong,.stats span{display:block}.stats strong{color:var(--purple);margin-bottom:8px;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.stats span{color:var(--muted);line-height:1.45}.section,.split-section,.quote-section,.contact{max-width:1180px;margin:0 auto;padding:clamp(72px,9vw,118px) clamp(18px,4vw,0px)}.section-heading{text-align:center;max-width:1040px;margin:0 auto 42px}.section-heading h2{max-width:1040px;margin-left:auto;margin-right:auto;font-size:clamp(2.05rem,3.15vw,3.35rem);font-weight:900;line-height:1.06}.section-heading p:not(.eyebrow){max-width:820px;color:var(--muted);margin-left:auto;margin-right:auto;font-size:1.04rem;line-height:1.72}.section-heading .eyebrow{width:fit-content;margin-left:auto;margin-right:auto}.service-grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:16px;display:flex}.service-grid.large{justify-content:center}.service-card{border:1px solid var(--line);background:linear-gradient(180deg, #ffffffeb, #f4fcfdfa), var(--panel);text-align:center;border-radius:8px;flex-direction:column;flex:0 calc(33.3333% - 10.6667px);justify-content:center;max-width:390px;min-height:290px;padding:28px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:flex;box-shadow:0 18px 46px #07142612}.service-grid.large .service-card{flex-basis:calc(33.3333% - 10.6667px);max-width:390px}.service-card:hover,.service-card:focus-visible,.project-card:hover,.project-card:focus-visible{background:linear-gradient(#06134224,#0aa9ad1a),linear-gradient(#ffffffe6,#ebfafcf7);border-color:#0613428f;transform:translateY(-5px);box-shadow:0 26px 68px #07142633,0 0 0 1px #06134229}a.service-card:active,a.project-card:active{background:linear-gradient(180deg, #06134242, #0aa9ad29), var(--panel);border-color:#061342b8;transform:translateY(1px);box-shadow:inset 0 0 0 1px #0613423d,0 12px 32px #07142629}.dark-section .project-card:hover,.dark-section .project-card:focus-visible{background:linear-gradient(135deg,#12bfc324,#5b43d61a),#ffffff17;border-color:#9ff4f161;box-shadow:0 24px 70px #00000052,0 0 0 1px #9ff4f114}.dark-section a.project-card:active{background:linear-gradient(135deg,#12bfc338,#5b43d629),#ffffff1c;border-color:#9ff4f18f;box-shadow:inset 0 0 0 1px #9ff4f129,0 16px 44px #00000047}.service-card p{color:#0b8f94;letter-spacing:0;text-transform:uppercase;margin-bottom:28px;font-size:.8rem;font-weight:800}.service-card h3{max-width:100%;color:var(--navy);margin-left:auto;margin-right:auto;font-weight:900}.service-card span{max-width:480px;margin-left:auto;margin-right:auto}.split-section{border-top:1px solid var(--line);grid-template-columns:minmax(0,.78fr) minmax(380px,1fr);align-items:start;gap:clamp(30px,6vw,76px);display:grid}.split-section h2{max-width:680px;font-size:clamp(2rem,3.4vw,3.45rem);line-height:1.08}.split-section .eyebrow+h2{margin-bottom:0}.compact-list{gap:12px;display:grid}.compact-list a{border:1px solid var(--line);background:#ffffffd1;border-radius:8px;gap:6px;padding:18px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:grid}.compact-list a:hover,.compact-list a:focus-visible{background:linear-gradient(135deg,#10bfd021,#6b2cff12),#fffffff7;border-color:#10bfd06b;transform:translateY(-2px);box-shadow:0 18px 44px #07142614}.compact-list a:active{background:#0aa9ad17;transform:translateY(1px)}.compact-list strong{color:var(--navy)}.compact-list span{color:var(--muted);line-height:1.5}.dark-section{color:#fff;background:radial-gradient(circle at 80% 20%,#10bfd033,#0000 30%),radial-gradient(circle at 20% 10%,#6b2cff2e,#0000 28%),#020817;max-width:none;margin:0;padding:clamp(76px,9vw,120px) clamp(18px,4vw,64px)}.dark-section .section-heading,.project-grid{max-width:1180px;margin-left:auto;margin-right:auto}.dark-section .section-heading{margin-bottom:42px}.dark-section h2{max-width:1040px;margin-left:auto;margin-right:auto}.dark-section .section-heading p:not(.eyebrow){color:#ffffffb8}.dark-copy{color:#ffffffbd;max-width:850px;margin-top:18px;font-size:1.06rem;line-height:1.72}.dark-detail-grid{max-width:1180px;margin-left:auto;margin-right:auto}.dark-detail-grid .detail-card{box-shadow:none;background:linear-gradient(135deg,#7b2cff14,#12b9bb1f),#ffffff12;border-color:#ffffff29}.dark-detail-grid .detail-card span{color:#fff}.project-grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:16px;display:flex}.project-card{text-align:center;background:#ffffff12;border:1px solid #ffffff29;border-radius:8px;flex-direction:column;flex:0 calc(33.3333% - 10.6667px);justify-content:center;max-width:390px;min-height:310px;padding:28px;transition:transform .18s,border-color .18s;display:flex}.project-card p{color:#9ff4f1;text-transform:uppercase;margin-bottom:34px;font-size:.78rem;font-weight:900}.project-card h3{color:#fff;font-weight:900}.project-card span{color:#ffffffb8;max-width:460px;margin-left:auto;margin-right:auto;line-height:1.68}.page-dark{min-height:52vh}.rich-copy p{color:var(--muted);font-size:1rem;line-height:1.72}.inline-button{width:fit-content;margin-top:12px}.compact-section{padding-top:0}.section.compact-section:has(>.section-heading:only-child){background:radial-gradient(circle at 82% 20%,#10bfd026,#0000 30%),radial-gradient(circle at 18% 15%,#6b2cff12,#0000 28%),#eef7f8;max-width:none;margin:0;padding:clamp(68px,8vw,104px) clamp(18px,4vw,64px)}.section.compact-section:has(>.section-heading:only-child)>.section-heading{background:linear-gradient(135deg,#ffffffeb,#edfbfddb),#ffffffe6;border:1px solid #0714261a;border-radius:8px;max-width:1080px;margin-bottom:0;padding:clamp(34px,5vw,58px);box-shadow:0 26px 70px #07142614}.detail-grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:14px;display:flex}.detail-card{border:1px solid var(--line);background:linear-gradient(135deg, #6b2cff0b, #10bfd01a), var(--panel);text-align:center;border-radius:8px;flex:0 calc(33.3333% - 9.33333px);justify-content:center;align-items:center;max-width:380px;min-height:118px;padding:22px;display:flex;box-shadow:0 14px 38px #06145a0f}.detail-card span{color:var(--navy);font-weight:850;line-height:1.42}.work-showcase{border-top:1px solid #0714261a;border-bottom:1px solid #0714261a;grid-template-columns:minmax(320px,.86fr) minmax(420px,1.14fr);align-items:center;gap:clamp(28px,5vw,70px);display:grid}.work-showcase-copy{max-width:620px}.work-showcase-copy h2{max-width:620px;font-size:clamp(2rem,3.15vw,3.4rem);line-height:1.08}.work-showcase-copy p:not(.eyebrow){max-width:580px;color:var(--muted);font-size:1.03rem;line-height:1.72}.tag-wall{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.tag-wall span{border:1px solid var(--line);min-height:44px;color:var(--navy);background:#ffffffdb;border-radius:8px;align-items:center;padding:0 16px;font-weight:850;display:inline-flex}.premium-tags{background:linear-gradient(135deg,#10bfd01a,#6b2cff0f),#ffffffbd;border:1px solid #0714261a;border-radius:8px;align-content:center;padding:clamp(18px,3vw,34px);box-shadow:0 22px 58px #07142614}.premium-tags span{min-height:48px;color:var(--navy);background:linear-gradient(#fffffff5,#f0fbfdf0),#fff;border-color:#06134229;box-shadow:inset 0 0 0 1px #ffffffb8,0 12px 26px #07142612}.premium-tags span:hover{color:#fff;background:linear-gradient(135deg,#061342eb,#094e5eeb);border-color:#0aa9ad6b}.product-preview{color:#fff;background:radial-gradient(circle at 82% 18%,#0aa9ad38,#0000 32%),radial-gradient(circle at 18% 12%,#5b43d633,#0000 28%),linear-gradient(135deg,#020817 0%,#061342 58%,#072a3a 100%);border:1px solid #9ff4f124;border-radius:8px;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);align-items:center;margin-top:clamp(48px,7vw,84px);margin-bottom:clamp(48px,7vw,84px);padding:clamp(42px,5vw,66px);overflow:hidden;box-shadow:0 34px 90px #0208173d}.product-preview .eyebrow{color:#9ff4f1}.product-preview-copy p:not(.eyebrow){color:#ffffffb8}.product-preview-copy h2{color:#fff;max-width:520px;font-size:clamp(2rem,3vw,3.15rem);line-height:1.08}.product-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.product-preview-grid .product-card{min-height:290px;padding:26px}.product-card{text-align:left;background:linear-gradient(#ffffff1b,#ffffff0e),#ffffff0f;border-color:#ffffff29;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:22px;position:relative;box-shadow:inset 0 0 0 1px #ffffff0b,0 22px 54px #0003}.product-card:before{color:#9ff4f1;background:#9ff4f11a;border:1px solid #9ff4f152;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;font-size:.82rem;font-weight:950;display:inline-flex}.product-card:first-child:before{content:"01"}.product-card:nth-child(2):before{content:"02"}.product-card:nth-child(3):before{content:"03"}.product-card strong{color:#fff;max-width:260px;font-size:clamp(1.16rem,1.5vw,1.42rem);font-weight:950;line-height:1.16;display:block}.product-card span{color:#ffffffb8;max-width:100%;font-size:.95rem;font-weight:620;line-height:1.58}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.tech-grid article,.empty-state{border:1px solid var(--line);background:linear-gradient(180deg, #ffffffd6, #f1fcfdf2), var(--panel);text-align:center;border-radius:8px;padding:24px;box-shadow:0 16px 42px #07142612}.tech-grid p,.empty-state p{color:var(--muted);line-height:1.62}.faq-list{gap:12px;display:grid}.faq-list details{border:1px solid var(--line);background:#ffffffe6;border-radius:8px;padding:20px 22px}.faq-list summary{cursor:pointer;color:var(--navy);font-weight:850}.faq-list p{color:var(--muted);margin:14px 0 0;line-height:1.62}.form-section{max-width:1180px;margin:0 auto;padding:clamp(72px,9vw,118px) clamp(18px,4vw,0px)}.project-form{border:1px solid var(--line);background:linear-gradient(180deg, #ffffffdb, #f1fcfdf7), var(--panel);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:clamp(22px,4vw,42px);display:grid;box-shadow:0 20px 56px #07142614}.project-form label{color:var(--navy);gap:8px;font-weight:850;display:grid}.project-form input,.project-form select,.project-form textarea{border:1px solid var(--line);width:100%;color:var(--foreground);background:#fffefa;border-radius:8px;padding:13px 14px}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{border-color:var(--teal);outline:3px solid #0aa9ad38}.full-field,.form-note{grid-column:1/-1}.form-note{color:var(--muted);margin:0;line-height:1.55}.process-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.process-list li{border:1px solid var(--line);background:#ffffffd6;border-radius:8px;grid-template-columns:58px 1fr;align-items:center;gap:18px;min-height:104px;padding:22px;display:grid}.process-list span{color:var(--teal);font-weight:900}.process-list p{color:var(--foreground);margin:0;font-size:1.04rem;line-height:1.48}.quote-section{padding-top:0}.stack-section{grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr);align-items:start;gap:clamp(28px,5vw,70px);max-width:1180px;margin:0 auto;padding:0 clamp(18px,4vw,0px) clamp(72px,9vw,118px);display:grid}.stack-section h2{margin-bottom:0}.stack-list{flex-wrap:wrap;gap:10px;display:flex}.stack-list span{background:#ffffffe6;min-height:42px;box-shadow:0 10px 30px #0714260f}blockquote{max-width:980px;color:var(--navy);margin:0 0 18px;font-size:clamp(2rem,4.5vw,4.4rem);font-weight:850;line-height:1.04}.contact{border-top:1px solid var(--line);justify-content:space-between;gap:26px}.contact-page-grid{grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);gap:22px;max-width:1180px;margin:0 auto;padding:clamp(52px,7vw,84px) clamp(18px,4vw,0px) clamp(72px,9vw,118px);display:grid}.contact-page .page-hero{padding-bottom:clamp(42px,6vw,70px)}.contact-page .page-hero-inner{grid-template-columns:minmax(0,.9fr) auto;align-items:end;gap:28px;max-width:1180px;margin-top:clamp(42px,7vw,82px);display:grid}.contact-page .page-hero-inner h1{max-width:780px}.contact-page .page-hero-inner p:not(.eyebrow){max-width:760px}.contact-panel{border:1px solid var(--line);background:linear-gradient(135deg, #ffffffdb, #eef8f7d1), var(--panel);border-radius:8px;padding:clamp(28px,4vw,44px);position:relative;overflow:hidden;box-shadow:0 24px 64px #07142617}.contact-panel:before{content:"";background:linear-gradient(90deg, var(--teal), var(--blue), var(--purple));height:4px;position:absolute;inset:0 0 auto}.contact-panel h2{font-size:clamp(2rem,3.1vw,3.2rem)}.contact-panel p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:1rem;line-height:1.65}.contact-email{max-width:100%;color:var(--navy);overflow-wrap:anywhere;margin-bottom:18px;font-size:clamp(1.85rem,3.6vw,3.65rem);font-weight:950;line-height:1;display:inline-block}.contact-email:hover,.contact-email:focus-visible{color:#0b8f94}.contact-panel ul{color:var(--muted);gap:12px;margin:0;padding-left:18px;line-height:1.55;display:grid}.contact-chip-list{flex-wrap:wrap;gap:10px;margin:12px 0 18px;display:flex}.contact-chip-list span{min-height:42px;color:var(--navy);background:#ffffffb8;border:1px solid #06134221;border-radius:8px;align-items:center;padding:0 14px;font-weight:850;display:inline-flex;box-shadow:0 10px 24px #0714260d}.site-footer{border-top:1px solid var(--line);background:0 0;grid-template-columns:minmax(220px,.75fr) minmax(0,1.5fr);gap:28px;max-width:1180px;margin:0 auto;padding:42px clamp(18px,4vw,0px);display:grid}.footer-brand{align-self:start}.site-footer img{filter:drop-shadow(0 10px 22px #0712331a);width:170px}.site-footer p{color:var(--muted);margin:8px 0 0;font-size:.92rem}.footer-columns{color:var(--muted);grid-template-columns:repeat(5,minmax(110px,1fr));gap:18px;font-size:.95rem;display:grid}.footer-columns div{align-content:start;gap:10px;display:grid}.footer-columns h3{color:var(--navy);margin:0 0 2px;font-size:.92rem}.footer-copy{border-top:1px solid var(--line);grid-column:1/-1;padding-top:20px}.contact h2{max-width:760px;margin-bottom:0}@media (width<=1100px){.hero{min-height:auto}.hero-grid,.split-section,.work-showcase,.contact-page .page-hero-inner,.contact-page-grid,.stack-section{grid-template-columns:1fr}.service-grid,.project-grid{justify-content:center}.service-card,.service-grid.large .service-card,.project-card,.detail-card{flex-basis:calc(50% - 8px);max-width:460px}.hero-media{max-width:720px;min-height:0;margin:0}.premium-system{margin-left:0;margin-right:auto}.work-showcase-copy,.work-showcase-copy h2,.product-preview-copy h2{max-width:760px}.product-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats{grid-template-columns:1fr}.stats div,.stats div:last-child{border-right:0;border-bottom:1px solid var(--line)}.stats div:last-child{border-bottom:0}.contact{flex-direction:column;align-items:flex-start}.site-footer{grid-template-columns:1fr}.footer-columns{grid-template-columns:repeat(2,minmax(130px,1fr))}}@media (width<=640px){.nav{flex-direction:column;align-items:flex-start;margin-bottom:34px}.nav-links{justify-content:flex-start;gap:12px;width:100%;font-size:.88rem}.nav-cta{width:100%}h1{font-size:2.6rem}.button{width:100%}.hero-media{min-height:0}.premium-system{padding:16px}.system-topline{flex-direction:column;align-items:flex-start}.system-map{min-height:104px}.system-layers article{grid-template-columns:1fr}.system-layers article p{grid-column:1}.hero-console{width:calc(100% - 36px);margin:-18px auto 18px;position:relative;bottom:auto;right:auto}.service-grid{justify-content:center}.service-card,.service-grid.large .service-card,.project-card,.detail-card{flex-basis:100%;max-width:100%}.process-list li{grid-template-columns:1fr}.premium-tags{padding:16px}.product-preview-grid{grid-template-columns:1fr}.product-preview-grid .product-card{min-height:210px}.project-form,.footer-columns{grid-template-columns:1fr}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}

/* ============================================================
   INAZUBI PREMIUM SYSTEM — 2026
   Global visual, interaction, accessibility and responsive layer
   ============================================================ */

:root {
  --iz-navy-950: #020817;
  --iz-navy-900: #061342;
  --iz-navy-800: #0a2055;
  --iz-teal: #10bfd0;
  --iz-cyan: #6ed9ea;
  --iz-purple: #6b2cff;
  --iz-violet: #8b5cf6;
  --iz-surface: #f7fbff;
  --iz-surface-2: #edf7fa;
  --iz-text: #071426;
  --iz-muted: #5b6b7e;
  --iz-border: rgba(6, 19, 66, .12);
  --iz-shadow: 0 26px 70px rgba(7, 20, 38, .12);
  --iz-shadow-strong: 0 34px 90px rgba(2, 8, 23, .20);
  --iz-radius-sm: 14px;
  --iz-radius: 20px;
  --iz-radius-lg: 28px;
}

/* Base */
* { -webkit-tap-highlight-color: transparent; }
html { scroll-padding-top: 92px; }
body {
  color: var(--iz-text);
  font-family: Calibri, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  background:
    radial-gradient(circle at 7% 4%, rgba(107,44,255,.055), transparent 22rem),
    radial-gradient(circle at 94% 14%, rgba(16,191,208,.065), transparent 26rem),
    linear-gradient(180deg, #fbfdff 0%, #f3f9fb 45%, #eef5fb 100%) !important;
}
body, body * { user-select: text; }
a, button, summary, img { user-select: none; }
::selection { color: #fff; background: rgba(18, 91, 131, .88); }

:focus-visible {
  outline: 3px solid rgba(16,191,208,.42) !important;
  outline-offset: 3px;
}

/* Header */
.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
  padding-top: 10px;
  transition: padding .22s ease;
}
.site-header.is-scrolled { padding-top: 0; }

.nav {
  position: relative;
  max-width: 1280px !important;
  min-height: 68px;
  margin-bottom: 52px !important;
  padding: 10px 12px 10px 18px !important;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(2,8,23,.95), rgba(6,19,66,.92)) !important;
  border: 1px solid rgba(117,213,232,.16) !important;
  border-radius: 18px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 20px 52px rgba(2,8,23,.18) !important;
  backdrop-filter: blur(22px) saturate(135%) !important;
}
.site-header.is-scrolled .nav {
  border-radius: 0 0 18px 18px !important;
  box-shadow: 0 16px 42px rgba(2,8,23,.22) !important;
}

.brand img {
  width: clamp(154px, 13vw, 198px) !important;
  filter: drop-shadow(0 8px 20px rgba(16,191,208,.08)) !important;
}
.nav-links {
  color: rgba(236,245,255,.74) !important;
  gap: 4px !important;
}
.nav-links a {
  min-height: 42px !important;
  padding: 0 13px !important;
  color: inherit;
  border-radius: 12px !important;
}
.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a.active {
  color: #fff !important;
  background:
    linear-gradient(135deg, rgba(16,191,208,.16), rgba(107,44,255,.12)) !important;
  border-color: rgba(110,217,234,.30) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04) !important;
}
.nav-cta {
  min-height: 44px !important;
  padding: 0 18px !important;
  color: #041426 !important;
  background: linear-gradient(135deg, #82e7f1, #58cde0 50%, #9b7cff) !important;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 12px !important;
  box-shadow: 0 12px 30px rgba(16,191,208,.16);
  transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.nav-cta:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 18px 38px rgba(16,191,208,.22);
}

/* Mobile nav control, injected by site.js */
.nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  color: #fff;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.nav-toggle span,
.nav-toggle::before,
.nav-toggle::after {
  content: "";
  width: 20px;
  height: 2px;
  background: currentColor;
  border-radius: 999px;
  transition: transform .2s ease, opacity .2s ease;
}
.nav-toggle { flex-direction: column; gap: 5px; }
.nav-toggle.is-open span { opacity: 0; }
.nav-toggle.is-open::before { transform: translateY(7px) rotate(45deg); }
.nav-toggle.is-open::after { transform: translateY(-7px) rotate(-45deg); }

/* Hero / page hero */
.hero {
  min-height: 88vh !important;
  background:
    radial-gradient(circle at 85% 16%, rgba(16,191,208,.16), transparent 28rem),
    radial-gradient(circle at 10% 8%, rgba(107,44,255,.10), transparent 24rem),
    linear-gradient(180deg, #fbfdff 0%, #f4fbfd 55%, #eaf3ff 100%) !important;
}
.page-hero {
  background:
    radial-gradient(circle at 88% 18%, rgba(16,191,208,.13), transparent 26rem),
    radial-gradient(circle at 12% 10%, rgba(107,44,255,.08), transparent 23rem),
    linear-gradient(180deg, #fbfdff 0%, #f4fbfd 70%, #edf5ff 100%) !important;
}
.page-hero-inner {
  max-width: 1120px !important;
}
.hero-brand-lockup {
  padding: 14px 18px !important;
  border: 1px solid rgba(6,19,66,.10) !important;
  border-left: 3px solid var(--iz-teal) !important;
  border-radius: 0 16px 16px 0;
  background: rgba(255,255,255,.62);
  box-shadow: 0 14px 34px rgba(7,20,38,.07);
}
.hero-brand-lockup img { width: clamp(220px, 18vw, 292px) !important; }

h1, h2, h3 {
  color: #071426;
  letter-spacing: -.025em !important;
}
h1 { font-weight: 800 !important; }
h2 { font-weight: 780 !important; }
h3 { font-weight: 760 !important; }
.hero-lede,
.page-hero-inner p:not(.eyebrow),
.split-section p,
.rich-copy p {
  color: #53657a !important;
}

/* Premium system visual */
.hero-media,
.premium-system {
  border-radius: var(--iz-radius-lg) !important;
  border: 1px solid rgba(6,19,66,.10) !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(16,191,208,.12), transparent 34%),
    radial-gradient(circle at 10% 10%, rgba(107,44,255,.10), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.92), rgba(232,247,250,.88)) !important;
  box-shadow: var(--iz-shadow) !important;
  overflow: hidden;
}
.system-topline,
.system-layers article {
  border-radius: 16px !important;
}
.system-core {
  box-shadow: 0 20px 56px rgba(6,19,66,.18), 0 0 0 10px rgba(16,191,208,.06) !important;
}

/* Sections */
.section,
.split-section,
.dark-section,
.contact {
  position: relative;
}
.section,
.split-section {
  padding-top: clamp(76px, 8vw, 118px) !important;
  padding-bottom: clamp(76px, 8vw, 118px) !important;
}
.section-heading {
  max-width: 900px !important;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.section-heading h2 { max-width: 860px; margin-left: auto; margin-right: auto; }
.section-heading > p:not(.eyebrow) {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  color: var(--iz-muted);
  line-height: 1.7;
}
.eyebrow {
  color: #098b92 !important;
  letter-spacing: .12em !important;
  font-size: .76rem !important;
}

/* Cards */
.service-grid,
.project-grid,
.detail-grid,
.tech-grid {
  gap: 20px !important;
}

.service-card,
.project-card,
.detail-card,
.tech-grid article,
.empty-state,
.contact-panel,
.faq-list details,
.process-list li {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(6,19,66,.10) !important;
  border-radius: var(--iz-radius) !important;
  box-shadow: 0 18px 48px rgba(7,20,38,.08) !important;
  transition:
    transform .24s cubic-bezier(.2,.7,.2,1),
    box-shadow .24s ease,
    border-color .24s ease,
    background .24s ease;
}
.service-card,
.detail-card,
.tech-grid article {
  background:
    radial-gradient(circle at var(--spot-x, 85%) var(--spot-y, 15%), rgba(16,191,208,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.97), rgba(244,251,253,.95)) !important;
}
.service-card::before,
.detail-card::before,
.tech-grid article::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--iz-teal), var(--iz-blue, #2857ff), var(--iz-purple));
  opacity: .72;
}
.service-card:hover,
.detail-card:hover,
.tech-grid article:hover,
.faq-list details:hover,
.process-list li:hover {
  transform: translateY(-6px);
  border-color: rgba(16,191,208,.34) !important;
  box-shadow: 0 30px 72px rgba(7,20,38,.13) !important;
}
.service-card h3,
.detail-card strong,
.tech-grid h3 {
  color: #081a35 !important;
}
.service-card span,
.detail-card span,
.tech-grid p {
  color: #607186 !important;
}

/* Dark cards */
.dark-section {
  color: #fff !important;
  background:
    radial-gradient(circle at 85% 14%, rgba(16,191,208,.14), transparent 30rem),
    radial-gradient(circle at 12% 8%, rgba(107,44,255,.14), transparent 26rem),
    linear-gradient(135deg, #020817 0%, #061342 56%, #062b38 100%) !important;
}
.dark-section h2,
.dark-section h3 { color: #fff !important; }
.dark-section .eyebrow { color: #8cecf2 !important; }
.dark-section .project-card,
.product-preview .product-card {
  color: #fff;
  background:
    radial-gradient(circle at var(--spot-x, 85%) var(--spot-y, 15%), rgba(16,191,208,.13), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035)) !important;
  border-color: rgba(157,241,244,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 24px 60px rgba(0,0,0,.18) !important;
}
.dark-section .project-card:hover,
.product-preview .product-card:hover {
  transform: translateY(-7px);
  border-color: rgba(118,226,235,.40) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 32px 72px rgba(0,0,0,.24) !important;
}
.dark-section .project-card h3,
.product-preview .product-card strong { color: #fff !important; }
.dark-section .project-card p { color: #87e8ef !important; }
.dark-section .project-card span,
.product-preview .product-card span { color: rgba(235,246,255,.78) !important; }

/* Buttons */
.button {
  border-radius: 14px !important;
  min-height: 50px !important;
  padding-inline: 22px !important;
}
.button.primary {
  background: linear-gradient(135deg, #061342, #114184 62%, #0d6170) !important;
  box-shadow: 0 12px 30px rgba(6,19,66,.18);
}
.button.secondary {
  color: #061342;
  background: rgba(255,255,255,.78) !important;
  border-color: rgba(6,19,66,.12) !important;
  backdrop-filter: blur(12px);
}
.button:hover { transform: translateY(-3px) !important; }

/* Stats / compact list / tags */
.stats,
.premium-tags,
.product-preview {
  border-radius: var(--iz-radius-lg) !important;
}
.compact-list a {
  border-radius: 16px !important;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.compact-list a:hover {
  transform: translateX(6px);
  border-color: rgba(16,191,208,.28) !important;
  background: rgba(255,255,255,.86) !important;
}
.tag-wall span,
.hero-badges span,
.stack-list span,
.contact-chip-list span {
  border-radius: 999px !important;
}

/* Work showcase */
.work-showcase {
  max-width: 1240px;
  margin: 0 auto;
  border: 1px solid rgba(6,19,66,.08) !important;
  border-radius: var(--iz-radius-lg);
  padding-left: clamp(24px,4vw,56px) !important;
  padding-right: clamp(24px,4vw,56px) !important;
  background: rgba(255,255,255,.45);
  box-shadow: var(--iz-shadow);
}

/* Product preview */
.product-preview {
  max-width: 1240px !important;
  border-color: rgba(157,241,244,.18) !important;
  box-shadow: var(--iz-shadow-strong) !important;
}

/* Forms */
.project-form,
.contact-panel {
  border-radius: 24px !important;
}
.project-form input,
.project-form select,
.project-form textarea {
  border-radius: 12px !important;
  min-height: 48px;
}
.project-form textarea { min-height: 150px; }

/* Footer */
.site-footer {
  max-width: none !important;
  padding: 58px max(18px, calc((100vw - 1180px)/2)) 30px !important;
  color: rgba(236,245,255,.78);
  background:
    radial-gradient(circle at 10% 0%, rgba(107,44,255,.11), transparent 24rem),
    radial-gradient(circle at 90% 10%, rgba(16,191,208,.10), transparent 26rem),
    linear-gradient(135deg, #020817, #061342) !important;
  border-top: 1px solid rgba(117,213,232,.14) !important;
}
.site-footer img {
  width: 190px !important;
  filter: drop-shadow(0 10px 26px rgba(16,191,208,.08)) !important;
}
.site-footer p,
.footer-columns { color: rgba(224,237,248,.68) !important; }
.footer-columns h3 { color: #fff !important; }
.footer-columns a:hover { color: #8cecf2 !important; }
.footer-copy {
  color: rgba(224,237,248,.54) !important;
  border-top-color: rgba(255,255,255,.10) !important;
}

/* Reveal / pointer spotlight */
.js-reveal {
  opacity: 0;
  transform: translateY(20px);
}
.js-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity .64s ease, transform .64s cubic-bezier(.2,.7,.2,1);
}
.spotlight-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: radial-gradient(420px circle at var(--spot-x, 50%) var(--spot-y, 50%), rgba(110,217,234,.11), transparent 48%);
  opacity: 0;
  transition: opacity .2s ease;
}
.spotlight-card:hover::after { opacity: 1; }

/* Back to top */
.back-to-top {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 90;
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  color: #fff;
  background: linear-gradient(145deg, #061342, #0d5360);
  border: 1px solid rgba(110,217,234,.30);
  border-radius: 50%;
  box-shadow: 0 16px 40px rgba(2,8,23,.24);
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .2s ease, transform .2s ease;
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.back-to-top:hover { transform: translateY(-3px); }

/* Responsive */
@media (max-width: 1100px) {
  .nav { gap: 12px !important; }
  .nav-links { gap: 2px !important; }
  .nav-links a { padding-inline: 9px !important; }
}
@media (max-width: 900px) {
  .site-header { padding-inline: 0; }
  .nav {
    display: grid !important;
    grid-template-columns: 1fr auto;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
  }
  .nav-toggle { display: inline-flex; }
  .nav-links {
    grid-column: 1 / -1;
    display: none !important;
    width: 100%;
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,.09);
  }
  .nav-links.is-open {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 6px !important;
  }
  .nav-links a { justify-content: flex-start !important; }
  .nav-cta {
    grid-column: 1 / -1;
    display: none !important;
    width: 100%;
  }
  .nav-cta.is-open { display: inline-flex !important; }
}
@media (max-width: 640px) {
  .nav {
    flex-direction: initial !important;
    align-items: center !important;
    margin-bottom: 34px !important;
    border-radius: 16px !important;
  }
  .nav-links {
    width: 100% !important;
    font-size: .9rem !important;
  }
  .hero,
  .page-hero {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  h1 { font-size: clamp(2.35rem, 12vw, 3.2rem) !important; }
  h2 { font-size: clamp(1.85rem, 9vw, 2.5rem) !important; }
  .section, .split-section, .dark-section, .contact {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .service-card, .project-card, .detail-card { padding: 24px !important; }
  .back-to-top { right: 14px; bottom: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .js-reveal,
  .js-reveal.is-visible,
  .service-card,
  .project-card,
  .detail-card,
  .tech-grid article,
  .button,
  .compact-list a {
    transition: none !important;
    transform: none !important;
  }
}

/* ============================================================
   VISIBILITY FIX — LOGO / HERO SYSTEM / PRODUCT NUMBERS
   ============================================================ */

/* 1) HEADER LOGO — keep brand colors visible on the dark navbar */
.site-header .brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 7px 10px !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 26px rgba(2,8,23,.14) !important;
}

.site-header .brand img {
  display: block !important;
  width: clamp(150px, 12vw, 188px) !important;
  height: auto !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
}

/* 2) FOOTER LOGO — same clean light brand block */
.site-footer .footer-brand {
  align-self: start;
}

.site-footer .footer-brand img {
  display: block !important;
  width: 190px !important;
  height: auto !important;
  object-fit: contain !important;
  padding: 10px 12px !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 12px !important;
  filter: none !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.18) !important;
}

/* 3) HERO BRAND LOGO — keep it clean and fully visible */
.hero-brand-lockup {
  background: rgba(255,255,255,.90) !important;
}

.hero-brand-lockup img {
  filter: none !important;
  background: transparent !important;
}

/* 4) HERO RIGHT-SIDE SYSTEM PANEL — improve contrast */
.hero-media.premium-system,
.premium-system {
  color: #071426 !important;
  background:
    radial-gradient(circle at 88% 10%, rgba(16,191,208,.14), transparent 34%),
    radial-gradient(circle at 10% 10%, rgba(107,44,255,.10), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(232,247,250,.96)) !important;
}

.system-topline {
  border-bottom-color: rgba(6,19,66,.10) !important;
}

.system-topline span {
  color: #078f94 !important;
  opacity: 1 !important;
}

.system-layers article {
  background: rgba(255,255,255,.76) !important;
  border: 1px solid rgba(6,19,66,.10) !important;
  box-shadow: 0 10px 28px rgba(7,20,38,.06) !important;
}

.system-layers article span {
  color: #0797a0 !important;
  opacity: 1 !important;
}

.system-layers article strong {
  color: #0a1730 !important;
  opacity: 1 !important;
}

.system-layers article p {
  color: #52657a !important;
  opacity: 1 !important;
}

/* 5) PRODUCT SECTION — readable heading/copy */
.product-preview-copy .eyebrow {
  color: #8cecf2 !important;
  opacity: 1 !important;
}

.product-preview-copy h2 {
  color: #ffffff !important;
  opacity: 1 !important;
}

.product-preview-copy p:not(.eyebrow) {
  color: rgba(240,247,255,.78) !important;
  opacity: 1 !important;
}

/* 6) PRODUCT NUMBERS — force 01 / 02 / 03 inside the cards */
.product-preview-grid .product-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 68px 28px 30px !important;
  justify-content: flex-start !important;
  gap: 20px !important;
}

.product-preview-grid .product-card::before {
  position: absolute !important;
  top: 20px !important;
  left: 24px !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 38px !important;
  height: 30px !important;
  padding: 0 9px !important;
  color: #9ff4f1 !important;
  background: rgba(16,191,208,.12) !important;
  border: 1px solid rgba(159,244,241,.34) !important;
  border-radius: 999px !important;
  font-size: .80rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

.product-preview-grid .product-card:nth-child(1)::before {
  content: "01" !important;
}
.product-preview-grid .product-card:nth-child(2)::before {
  content: "02" !important;
}
.product-preview-grid .product-card:nth-child(3)::before {
  content: "03" !important;
}

.product-preview-grid .product-card strong {
  color: #ffffff !important;
  opacity: 1 !important;
}

.product-preview-grid .product-card span {
  color: rgba(241,248,255,.78) !important;
  opacity: 1 !important;
}

/* Disable the generic detail-card top stripe only for product cards,
   because it was replacing/clipping the number pseudo-element. */
.product-preview-grid .product-card::after {
  display: none !important;
}

/* Mobile */
@media (max-width: 900px) {
  .site-header .brand {
    padding: 6px 9px !important;
  }

  .site-header .brand img {
    width: 150px !important;
  }
}

@media (max-width: 640px) {
  .site-footer .footer-brand img {
    width: 170px !important;
  }

  .product-preview-grid .product-card {
    padding: 64px 24px 26px !important;
  }

  .product-preview-grid .product-card::before {
    top: 18px !important;
    left: 20px !important;
  }
}

