@import "https://fonts.googleapis.com/css2?family=Dancing+Script:wght@700&family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap";
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-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{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.contents{display:contents}.table{display:table}.grow{flex-grow:1}}:root{--ink:#070b0a;--carbon:#0b1311;--panel:#101a17;--slate:#294139;--ice:#f3f8f6;--muted:#9fb0aa;--lime:#a6ff4d;--teal:#2ee8c2;--line:#294139d1;--line-soft:#9fb0aa2e;--max:1360px;--max-text:760px;--radius:8px;--header-h:88px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h)}body{background:linear-gradient(90deg, #2ee8c20d 1px, transparent 1px) 50% 0 / 108px 108px, var(--ink);color:var(--ice);text-rendering:geometricprecision;margin:0;font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;overflow-x:hidden}body::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:4px}button,input,textarea{font:inherit}main{min-height:100vh}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line-soft);height:var(--header-h);z-index:50;background:#070b0ad1;grid-template-columns:minmax(190px,1fr) auto minmax(160px,1fr);align-items:center;gap:28px;padding:0 clamp(20px,5vw,72px);display:grid;position:sticky;inset:0 0 auto}.site-header__brand{justify-self:start}.kasel-mark{align-items:center;gap:12px;min-width:0;display:inline-flex}.kasel-mark__orb{filter:drop-shadow(0 0 14px #2ee8c247);width:44px;height:44px}.kasel-mark__text{gap:4px;display:grid}.kasel-mark b{letter-spacing:0;font-family:Dancing Script,cursive;font-size:31px;font-weight:700;line-height:.82}.kasel-mark small{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:9px;font-weight:600;line-height:1}.kasel-mark--compact .kasel-mark__orb{width:36px;height:36px}.site-header__nav{color:#d3ded9;justify-content:center;align-items:center;gap:clamp(20px,3vw,42px);display:flex}.site-header__nav a,.site-footer a{transition:color .18s}.site-header__nav a:hover,.site-footer a:hover{color:var(--teal)}.site-header__action{border:1px solid var(--lime);border-radius:var(--radius);color:var(--lime);justify-self:end;min-height:44px;padding:11px 18px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:700;transition:background .18s,color .18s,transform .18s}.site-header__action:hover,.button--primary:hover{background:var(--lime);color:var(--ink);transform:translateY(-2px)}.site-header__toggle{border:1px solid var(--line-soft);border-radius:var(--radius);color:var(--ice);background:0 0;place-items:center;width:44px;height:44px;display:none;position:relative}.site-header__toggle span{background:currentColor;width:18px;height:2px;transition:transform .18s;position:absolute}.site-header__toggle span:first-child{transform:translateY(-5px)}.site-header__toggle span:last-child{transform:translateY(5px)}.site-header__toggle[aria-expanded=true] span:first-child{transform:rotate(45deg)}.site-header__toggle[aria-expanded=true] span:last-child{transform:rotate(-45deg)}.hero{max-width:calc(var(--max) + 144px);min-height:calc(100vh - var(--header-h));grid-template-columns:minmax(0,.95fr) minmax(360px,.85fr);align-items:center;gap:clamp(38px,6vw,96px);margin:0 auto;padding:clamp(72px,9vw,128px) clamp(20px,5vw,72px) clamp(70px,8vw,120px);display:grid;position:relative;overflow:hidden}.hero__grid{opacity:.42;pointer-events:none;background:linear-gradient(#2ee8c21a 1px,#0000 1px) 0 0/100% 96px,linear-gradient(90deg,#2ee8c214 1px,#0000 1px) 0 0/96px 100%;height:62%;position:absolute;inset:0 clamp(20px,5vw,72px) auto;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.hero__content{z-index:2;max-width:780px;position:relative}.eyebrow{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:700;line-height:1.4}h1,h2,h3{letter-spacing:0;margin:0;font-family:Sora,ui-sans-serif,system-ui,sans-serif}h1{max-width:880px;font-size:clamp(58px,8vw,124px);font-weight:800;line-height:.92}h2{font-size:clamp(36px,5vw,72px);font-weight:700;line-height:1.02}h3{font-size:clamp(22px,2.2vw,32px);line-height:1.14}.hero__lead{color:#d4e2dd;max-width:690px;margin:30px 0 0;font-size:clamp(18px,1.7vw,23px);line-height:1.65}.hero__actions,.contact__actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.button{border-radius:var(--radius);justify-content:center;align-items:center;min-height:54px;padding:14px 20px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:700;transition:border-color .18s,background .18s,color .18s,transform .18s;display:inline-flex}.button--primary{border:1px solid var(--lime);color:var(--lime);background:0 0}.button--secondary{color:var(--teal);border:1px solid #2ee8c2b3}.button--secondary:hover{border-color:var(--ice);color:var(--ice);transform:translateY(-2px)}.button:disabled{cursor:progress;opacity:.62;transform:none}.hero__orb{z-index:1;place-items:center;min-height:620px;display:grid;position:relative}.precision-orb{--pointer-x:0;--pointer-y:0;aspect-ratio:1;max-width:660px;transform:rotateX(calc(var(--pointer-y) * -3deg)) rotateY(calc(var(--pointer-x) * 4deg));transform-style:preserve-3d;place-items:center;width:min(48vw,660px);transition:transform .26s;display:grid;position:relative}.precision-orb:before{content:"";border:1px solid #2ee8c22e;border-radius:50%;position:absolute;inset:11%}.precision-orb__logo{filter:drop-shadow(0 34px 48px #000000ad);z-index:2;width:72%;height:auto;position:relative;transform:translateZ(40px)}.precision-orb__plane{position:absolute;inset:0}.precision-orb__plane svg{width:100%;height:100%;overflow:visible}.precision-orb__plane--back{opacity:.72;transform:translateZ(-12px)rotate(-8deg)}.precision-orb__plane--front{transform:translateZ(72px)rotate(8deg)}.orbit,.signal{fill:none;stroke-linecap:round;transform-box:fill-box;transform-origin:50%}.orbit{stroke:#f3f8f638;stroke-width:1.15px}.orbit--slow{animation:28s linear infinite orbit-turn}.orbit--tilt{animation:36s linear infinite reverse orbit-turn}.orbit--angled{animation:44s linear infinite orbit-turn}.signal{stroke-dasharray:72 760;stroke-width:3px}.signal--teal{stroke:var(--teal);animation:10s linear infinite signal-flow}.signal--lime{stroke:var(--lime);animation:12s linear infinite reverse signal-flow}.signal--short{stroke:#a6ff4dc7;stroke-dasharray:48 820;animation:15s linear infinite signal-flow}.client-logo-section{background:var(--ink);border-top:1px solid var(--line-soft);padding:clamp(54px,7vw,88px) 0;overflow:hidden}.client-logo-section__header{max-width:var(--max);grid-template-columns:minmax(0,.85fr) minmax(280px,.55fr);align-items:end;gap:18px clamp(28px,5vw,80px);margin:0 auto 34px;padding:0 clamp(20px,5vw,72px);display:grid}.client-logo-section__header .eyebrow{grid-column:1/-1}.client-logo-section__header h2{max-width:760px;font-size:clamp(30px,4vw,54px)}.client-logo-section__header p:not(.eyebrow){color:var(--muted);max-width:520px;margin:0;font-size:17px;line-height:1.72}.client-logo-carousel{border-block:1px solid var(--line);padding:18px 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 56px calc(100% - 56px),#0000);mask-image:linear-gradient(90deg,#0000,#000 56px calc(100% - 56px),#0000)}.client-logo-carousel:before{background:linear-gradient(90deg, transparent, var(--teal), transparent);content:"";opacity:.44;width:min(720px,72vw);height:1px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.client-logo-carousel:focus-visible{outline:2px solid var(--lime);outline-offset:-6px}.client-logo-carousel__track{will-change:transform;gap:0;width:max-content;animation:38s linear infinite client-logo-marquee;display:flex}.client-logo-carousel:hover .client-logo-carousel__track,.client-logo-carousel:focus .client-logo-carousel__track,.client-logo-carousel:focus-within .client-logo-carousel__track{animation-play-state:paused}.client-logo-carousel__set{flex:none;align-items:center;display:flex}.client-logo-carousel__item{justify-content:center;align-items:center;min-width:clamp(178px,21vw,300px);height:110px;padding:18px clamp(14px,2.6vw,34px);display:inline-flex}.client-logo-carousel__frame{justify-content:center;align-items:center;width:clamp(152px,15vw,218px);height:72px;padding:10px 18px;transition:transform .18s;display:inline-flex}.client-logo-carousel__frame--icon{width:104px}.client-logo-carousel__frame--text{width:136px}.client-logo-carousel__item:hover .client-logo-carousel__frame,.client-logo-carousel__item:focus-visible .client-logo-carousel__frame{transform:translateY(-2px)}.client-logo-carousel__image{filter:saturate(.86);object-fit:contain;opacity:.76;width:auto;max-width:100%;height:auto;max-height:52px;transition:filter .18s,opacity .18s}.client-logo-carousel__frame--icon .client-logo-carousel__image{max-height:56px}.client-logo-carousel__text-mark{color:#e7f1ee;letter-spacing:0;opacity:.8;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:2rem;font-weight:800;line-height:1;transition:color .18s,opacity .18s,transform .18s}.client-logo-carousel__item:hover .client-logo-carousel__image,.client-logo-carousel__item:focus-visible .client-logo-carousel__image,.client-logo-carousel__item:hover .client-logo-carousel__text-mark,.client-logo-carousel__item:focus-visible .client-logo-carousel__text-mark{color:var(--lime);filter:saturate();opacity:1}.section{padding:clamp(72px,9vw,132px) clamp(20px,5vw,72px)}.section__header{max-width:var(--max);gap:20px;margin:0 auto clamp(40px,6vw,76px);display:grid}.section__header h2{max-width:940px}.section__header p:not(.eyebrow){color:var(--muted);max-width:var(--max-text);font-size:18px;line-height:1.75}.section__header--split{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end}.services,.process{border-top:1px solid var(--line);background:linear-gradient(#101a17b8,#070b0a00)}.capability-list{border-top:1px solid var(--line);max-width:var(--max);margin:0 auto}.capability{border-bottom:1px solid var(--line);grid-template-columns:minmax(240px,.64fr) minmax(0,1fr);gap:clamp(26px,5vw,70px);padding:clamp(30px,5vw,54px) 0;display:grid}.capability>div>p{color:var(--teal);margin:0 0 14px;font-size:13px;font-weight:700;line-height:1.55}.capability dl{gap:22px;margin:0;display:grid}.capability dl div{grid-template-columns:130px minmax(0,1fr);gap:8px;display:grid}.capability dt{color:var(--lime);letter-spacing:.12em;text-transform:uppercase;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:12px;font-weight:700}.capability dd{color:#c6d3ce;margin:0;line-height:1.75}.capability-builds{border-top:1px solid var(--line-soft)}.build-grid{max-width:var(--max);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 auto;padding:0;list-style:none;display:grid}.build-grid li{border:1px solid var(--line);color:#d8e4e0;background:#101a17b3;min-height:132px;padding:28px}.selected-work,.work-index,.case-detail,.case-gallery,.case-focus{background:linear-gradient(180deg, #0d1714eb, #070b0afa), var(--ink);border-top:1px solid var(--line)}.selected-work__layout,.work-index__list{max-width:var(--max);gap:clamp(22px,4vw,44px);margin:0 auto;display:grid}.selected-work .case-visual{height:clamp(320px,29vw,360px)}.work-feature{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(90deg,#a6ff4d17,#0000 42%),#101a17d1;grid-template-columns:minmax(0,.86fr) minmax(320px,.74fr);align-items:center;gap:clamp(28px,5vw,72px);padding:clamp(22px,3.5vw,42px);display:grid;overflow:hidden}.work-feature--reverse{background:linear-gradient(270deg,#2ee8c21a,#0000 44%),#0c1613db;grid-template-columns:minmax(320px,.74fr) minmax(0,.86fr)}.work-feature--reverse .work-feature__content{order:2}.work-feature__content,.work-card__body,.work-index-card__content,.case-narrative,.case-architecture,.gallery-panel,.related-project>div,.focus-card,.work-cta{min-width:0}.work-feature__content,.work-card__body,.work-index-card__content{gap:18px;display:grid}.case-kicker,.case-meta{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;margin:0;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.55}.case-meta{color:var(--muted);letter-spacing:0;text-transform:none}.work-feature h3,.work-card h3,.work-index-card h3,.related-project h2{overflow-wrap:anywhere}.work-feature p:not(.case-kicker):not(.case-meta),.work-card p:not(.case-kicker):not(.case-meta),.work-index-card p:not(.case-kicker):not(.case-meta),.case-hero p,.work-hero p,.case-narrative p,.case-architecture p,.case-value p,.related-project p,.work-cta p,.case-gallery .section__header p{color:#c9d8d3;margin:0;line-height:1.75}.case-capabilities,.capability-matrix,.gallery-panel ul{margin:0;padding:0;list-style:none}.case-capabilities{gap:10px;display:grid}.case-capabilities li{color:#e1ebe7;grid-template-columns:12px minmax(0,1fr);align-items:start;gap:10px;line-height:1.55;display:grid}.case-capabilities li:before{background:var(--lime);content:"";width:12px;height:1px;margin-top:.78em}.tag-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);color:#dce8e4;overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:7px 10px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:700;line-height:1.35}.tag-list--service li{background:#a6ff4d14;border-color:#a6ff4d42}.tag-list--technology li{color:#b8fff0;background:#2ee8c212;border-color:#2ee8c23d}.case-actions,.case-hero__actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;display:flex}.case-link{color:var(--teal);text-underline-offset:6px;min-height:44px;padding:12px 0;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.84rem;font-weight:700;-webkit-text-decoration:underline #2ee8c273;text-decoration:underline #2ee8c273}.case-link:hover{color:var(--lime);text-decoration-color:currentColor}.work-supporting{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(18px,3vw,28px);display:grid}.work-card{border:1px solid var(--line);border-radius:var(--radius);background:#0a1210e0;gap:24px;padding:clamp(20px,3vw,30px);display:grid;overflow:hidden}.work-card:nth-child(2){margin-top:clamp(28px,5vw,68px)}.case-visual{--visual-accent:var(--lime);aspect-ratio:16/10;background:linear-gradient(135deg, var(--visual-accent), transparent 38%), linear-gradient(90deg, #f3f8f614 1px, transparent 1px) 0 0 / 34px 34px, #07110e;align-self:stretch}@supports (color:color-mix(in lab, red, red)){.case-visual{background:linear-gradient(135deg, color-mix(in srgb, var(--visual-accent) 16%, transparent), transparent 38%), linear-gradient(90deg, #f3f8f614 1px, transparent 1px) 0 0 / 34px 34px, #07110e}}.case-visual{border:1px solid var(--visual-accent)}@supports (color:color-mix(in lab, red, red)){.case-visual{border:1px solid color-mix(in srgb, var(--visual-accent) 36%, transparent)}}.case-visual{border-radius:var(--radius);grid-template-rows:auto minmax(0,1fr);gap:0;width:100%;max-width:100%;min-height:220px;padding:12px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f}.case-visual--teal{--visual-accent:var(--teal)}.case-visual--sky{--visual-accent:#9fb7ff}.case-visual--signal{--visual-accent:#8ec5ff}.case-visual:before,.case-visual:after{background:var(--visual-accent);content:"";opacity:.18;position:absolute}.case-visual:before{height:1px;top:35%;left:12%;right:8%;transform:rotate(-9deg)}.case-visual:after{height:1px;bottom:16%;left:8%;right:16%;transform:rotate(12deg)}.case-visual__chrome{border-radius:calc(var(--radius) - 2px) calc(var(--radius) - 2px) 0 0;z-index:2;background:#040908bd;border:1px solid #f3f8f61a;align-items:center;gap:7px;height:38px;padding:0 14px;display:flex;position:relative}.case-visual__chrome span{background:var(--visual-accent)}@supports (color:color-mix(in lab, red, red)){.case-visual__chrome span{background:color-mix(in srgb, var(--visual-accent) 62%, #fff)}}.case-visual__chrome span{opacity:.68;border-radius:50%;width:8px;height:8px}.case-visual__screen{border-radius:0 0 calc(var(--radius) - 2px) calc(var(--radius) - 2px);z-index:2;background:linear-gradient(90deg,#f3f8f60d 1px,#0000 1px) 0 0/42px 42px,linear-gradient(#ffffff0d,#00000014),#070f0df0;border:1px solid #f3f8f61a;grid-template-rows:auto 1fr auto;gap:clamp(14px,1.5vw,18px);min-height:0;padding:clamp(16px,3vw,28px);display:grid;position:relative}.case-visual__heading{gap:6px;display:grid}.case-visual__heading span{color:var(--visual-accent)}@supports (color:color-mix(in lab, red, red)){.case-visual__heading span{color:color-mix(in srgb, var(--visual-accent) 72%, #fff)}}.case-visual__heading span{letter-spacing:.1em;text-transform:uppercase;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:700}.case-visual__heading strong{color:var(--ice);overflow-wrap:anywhere;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:1.45rem;line-height:1.05}.case-visual__map{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;padding-top:clamp(12px,1.4vw,18px);display:grid;position:relative}.case-visual__map span{border:1px solid var(--visual-accent);background:#08120fe6}@supports (color:color-mix(in lab, red, red)){.case-visual__map span{border:1px solid color-mix(in srgb, var(--visual-accent) 34%, transparent)}}.case-visual__map span{border-radius:var(--radius);color:#d9e7e2;overflow-wrap:anywhere;min-height:64px;padding:12px 14px;font-size:.76rem;font-weight:700;line-height:1.4}.case-visual__stack{flex-wrap:wrap;gap:8px;display:flex}.case-visual__stack span{background:var(--visual-accent)}@supports (color:color-mix(in lab, red, red)){.case-visual__stack span{background:color-mix(in srgb, var(--visual-accent) 12%, transparent)}}.case-visual__stack span{border:1px solid var(--visual-accent)}@supports (color:color-mix(in lab, red, red)){.case-visual__stack span{border:1px solid color-mix(in srgb, var(--visual-accent) 28%, transparent)}}.case-visual__stack span{color:#ecf7f3;overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:7px 9px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.68rem;font-weight:700;line-height:1.2}.work-hero,.case-hero{background:linear-gradient(180deg, #101a17e6, #070b0af5), var(--ink);border-bottom:1px solid var(--line);padding:clamp(72px,9vw,122px) clamp(20px,5vw,72px)}.work-hero{gap:20px;display:grid}.work-hero h1,.case-hero h1{max-width:1040px;font-size:5.6rem;line-height:.98}.work-hero>p:not(.eyebrow),.case-hero p{max-width:760px;font-size:1.14rem}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.4;display:flex}.breadcrumbs a{color:#dce8e4;text-underline-offset:5px;-webkit-text-decoration:underline #2ee8c26b;text-decoration:underline #2ee8c26b}.breadcrumbs a:hover{color:var(--lime);text-decoration-color:currentColor}.work-index-card,.case-hero__layout,.case-context,.case-architecture,.related-project,.case-value{grid-template-columns:minmax(320px,.62fr) minmax(0,.88fr);gap:clamp(28px,5vw,72px);display:grid}.work-index-card{border-top:1px solid var(--line);align-items:center;padding:clamp(28px,5vw,58px) 0}.work-index-card:nth-child(2n){grid-template-columns:minmax(0,.88fr) minmax(320px,.62fr)}.work-index-card:nth-child(2n) .case-visual{order:2}.case-hero__layout{max-width:var(--max);align-items:center;margin:0 auto}.case-context,.case-architecture,.related-project,.case-value{max-width:calc(var(--max) + 144px);align-items:start;margin:0 auto}.case-facts{border:1px solid var(--line);border-radius:var(--radius);background:#101a17d1;gap:0;display:grid;overflow:hidden}.case-facts div{border-bottom:1px solid var(--line);gap:8px;padding:22px;display:grid}.case-facts div:last-child{border-bottom:0}.case-facts span{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:700}.case-facts strong{color:#e8f3ef;line-height:1.55}.case-narrative{gap:34px;display:grid}.case-narrative h2,.case-architecture h2,.case-value h2,.work-cta h2{font-size:3.4rem;line-height:1.04}.case-narrative h3,.gallery-panel h3{margin-bottom:12px;font-size:1.45rem}.capability-matrix{max-width:var(--max);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 auto;display:grid}.capability-matrix li{border:1px solid var(--line);color:#deebe6;overflow-wrap:anywhere;background:linear-gradient(135deg,#2ee8c214,#0000),#101a17c7;min-height:118px;padding:22px;line-height:1.58}.case-architecture{border-top:1px solid var(--line)}.case-architecture>div:first-child{gap:20px;display:grid}.case-architecture .tag-list{place-content:start flex-start}.focus-grid{max-width:var(--max);grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 auto;display:grid}.focus-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#8ec5ff17,#0000 44%),#101a17d1;gap:16px;padding:clamp(22px,3vw,34px);display:grid}.focus-card h3{font-size:clamp(1.3rem,2vw,1.8rem)}.focus-card p{color:#c9d8d3;margin:0;line-height:1.72}.focus-card ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.focus-card li{color:#dcecff;overflow-wrap:anywhere;background:#8ec5ff14;border:1px solid #8ec5ff3d;border-radius:999px;max-width:100%;padding:7px 10px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:700;line-height:1.35}.gallery-grid{max-width:var(--max);grid-template-columns:minmax(320px,1.1fr) repeat(2,minmax(0,.7fr));gap:18px;margin:0 auto;display:grid}.gallery-grid .case-visual{min-height:360px}.gallery-panel{border:1px solid var(--line);border-radius:var(--radius);background:#101a17d1;padding:26px}.gallery-panel li{border-top:1px solid var(--line-soft);color:#d9e7e2;padding:12px 0;line-height:1.55}.case-value{background:linear-gradient(90deg, #a6ff4d14, transparent 42%), var(--carbon);border-block:1px solid var(--line)}.case-value p{color:#e0ece8;align-self:end;font-size:1.18rem}.related-project{border-top:1px solid var(--line-soft)}.related-project>div{gap:20px;display:grid}.related-project__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.related-card{border:1px solid var(--line);border-radius:var(--radius);background:#101a17bd;gap:18px;padding:18px;display:grid;overflow:hidden}.related-card>div{gap:14px;display:grid}.related-card h3{font-size:clamp(1.3rem,2vw,1.8rem)}.related-project .case-visual{min-height:280px}.work-cta{background:linear-gradient(135deg, #2ee8c21a, transparent 38%), var(--carbon);border-block:1px solid var(--line);justify-items:start;margin:0;display:grid}.work-cta h2,.work-cta p{max-width:820px}.about{border-top:1px solid var(--line);max-width:calc(var(--max) + 144px);grid-template-columns:minmax(0,.95fr) minmax(320px,.55fr);align-items:start;gap:clamp(38px,7vw,110px);margin:0 auto;display:grid}.about__content{max-width:870px}.about__content .lead{color:#e5eeeb;margin:30px 0 18px;font-size:clamp(19px,2vw,24px);line-height:1.58}.about__content p:not(.eyebrow):not(.lead){color:var(--muted);font-size:17px;line-height:1.8}.standards{background:linear-gradient(90deg, #2ee8c21f 1px, transparent 1px) 0 0 / 28px 28px, var(--carbon);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(28px,4vw,46px)}.standards h3{margin-bottom:26px}.standards ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.standards li{border-bottom:1px solid var(--line);color:#d9e5e1;padding:16px 0}.process-list{counter-reset:step;max-width:var(--max);gap:0;margin:0 auto;padding:0;list-style:none;display:grid}.process-list li{border-top:1px solid var(--line);counter-increment:step;grid-template-columns:92px minmax(180px,.42fr) minmax(0,1fr);align-items:center;gap:24px;min-height:126px;padding:24px 0;display:grid}.process-list li:last-child{border-bottom:1px solid var(--line)}.process-list li:before{color:var(--lime);content:"0" counter(step);font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-weight:700}.process-list span{color:var(--ice);font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:clamp(20px,2vw,30px);font-weight:700}.process-list p{color:var(--muted);margin:0;line-height:1.7}.contact{border-top:1px solid var(--line);background:linear-gradient(135deg,#2ee8c21a,#0000 34%),linear-gradient(#101a17e6,#070b0af5);grid-template-columns:minmax(0,.84fr) minmax(320px,.6fr);align-items:start;gap:clamp(34px,6vw,84px);display:grid}.contact__intro{max-width:780px}.contact__intro p:not(.eyebrow){color:#c8d5d1;max-width:640px;margin:24px 0 0;font-size:18px;line-height:1.72}.project-form{border:1px solid var(--line);border-radius:var(--radius);background:#070b0ab8;gap:18px;width:100%;padding:clamp(24px,4vw,38px);display:grid}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.project-form label{gap:8px;display:grid}.project-form__trap{width:1px;height:1px;position:absolute;left:-100vw;overflow:hidden}.project-form label span{color:var(--ice);font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:700}.project-form input,.project-form textarea{border:1px solid var(--line);border-radius:var(--radius);color:var(--ice);resize:vertical;background:#0c1512;width:100%;min-height:48px;padding:12px 14px}.project-form input[aria-invalid=true],.project-form textarea[aria-invalid=true]{border-color:var(--lime)}.project-form small,.form-status{color:var(--lime);margin:0;font-size:13px}.form-status:empty{display:none}.form-fallback{color:var(--teal);width:max-content;font-size:14px;font-weight:700}.form-fallback:hover{color:var(--lime)}.site-footer{background:linear-gradient(90deg, #2ee8c209 1px, transparent 1px) 50% 0 / 160px 160px, var(--ink);border-top:1px solid var(--line);overflow:hidden}.footer-cta{border-bottom:1px solid var(--line);padding:clamp(72px,9vw,118px) clamp(20px,5vw,72px);position:relative}.footer-cta__inner{max-width:var(--max);grid-template-columns:minmax(0,.92fr) minmax(320px,.58fr);gap:clamp(30px,6vw,90px);margin:0 auto;display:grid;position:relative}.footer-cta h2{max-width:880px;font-size:clamp(38px,5.5vw,76px);line-height:1.02}.footer-cta__content{align-self:end;gap:28px;display:grid}.footer-cta__content p{color:#d3ded9;max-width:560px;margin:0;font-size:18px;line-height:1.75}.footer-cta__actions{flex-wrap:wrap;gap:14px;display:flex}.footer-cta__arc{color:var(--teal);opacity:.22;pointer-events:none;width:min(520px,48vw);height:180px;position:absolute;bottom:-58px;right:min(2vw,24px)}.footer-cta__arc path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px}.footer-main{max-width:var(--max);grid-template-columns:5fr 2fr 3fr 2fr;align-items:start;gap:clamp(32px,4vw,56px);margin:0 auto;padding:clamp(54px,7vw,82px) clamp(20px,5vw,72px);display:grid}.footer-brand{gap:24px;max-width:520px;display:grid}.footer-brand .kasel-mark__orb{width:58px;height:58px}.footer-brand .kasel-mark b{font-size:43px}.footer-brand .kasel-mark small{color:#d7e2de;letter-spacing:.2em;font-size:10px}.footer-brand p{color:#c9d5d1;max-width:480px;margin:0;font-size:17px;line-height:1.75}.footer-brand>span{color:var(--lime);letter-spacing:.08em;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:700}.footer-group{gap:12px;display:grid}.footer-group h2{color:var(--ice);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:700;line-height:1.2}.footer-group a{color:#d5dfdc;width:max-content;min-height:28px;line-height:1.45;position:relative}.footer-group a:after{background:var(--teal);content:"";transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:1px;left:0;transform:scaleX(0)}.footer-group a:hover:after,.footer-group a:focus-visible:after{transform:scaleX(1)}.footer-contact{font-style:normal}.footer-contact p{gap:4px;margin:0;display:grid}.footer-contact span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:700}.footer-legal{border-top:1px solid var(--line-soft);color:var(--muted);max-width:var(--max);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;padding:22px clamp(20px,5vw,72px) 34px;display:flex}.footer-legal small{line-height:1.5}.whatsapp-float{bottom:max(1rem, env(safe-area-inset-bottom));color:var(--ice);min-height:54px;right:max(1rem, env(safe-area-inset-right));z-index:60;background:#0b1512;border:1px solid #2ee8c2c7;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-family:Sora,ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:700;transition:border-color .18s,color .18s,transform .18s;display:inline-flex;position:fixed;box-shadow:0 18px 40px #0000006b}@media (max-width:1280px){.whatsapp-float{border-radius:50%;width:56px;height:56px;min-height:56px;padding:0}.whatsapp-float__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.whatsapp-float:hover{border-color:var(--lime);color:var(--lime);transform:translateY(-2px)}.whatsapp-float__icon{color:var(--teal);flex:none;width:24px;height:24px}.not-found{background:var(--ink);flex-direction:column;justify-content:center;align-items:flex-start;min-height:100vh;padding:120px clamp(20px,5vw,72px);display:flex}.not-found h1{margin-bottom:20px}.not-found>p:not(.eyebrow){color:var(--muted);max-width:620px;margin:0 0 30px;font-size:18px;line-height:1.7}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes signal-flow{to{stroke-dashoffset:-832px}}@keyframes client-logo-marquee{to{transform:translate(-50%)}}@media (max-width:1100px){.site-header{grid-template-columns:1fr auto auto}.site-header__toggle{grid-area:1/2;display:grid}.site-header__nav{border:1px solid var(--line);border-radius:var(--radius);inset:calc(var(--header-h) - 8px) 20px auto;opacity:0;pointer-events:none;visibility:hidden;background:#070b0af7;align-items:stretch;gap:0;padding:8px;transition:opacity .18s,transform .18s,visibility .18s;display:grid;position:absolute;transform:translateY(-8px)}.site-header__nav.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)}.site-header__nav a{min-height:48px;padding:12px}.site-header__action{grid-area:1/3}.hero{grid-template-columns:1fr;min-height:auto}.hero__orb{order:-1;min-height:440px}.precision-orb{width:min(82vw,560px)}.section__header--split,.client-logo-section__header,.work-feature,.work-supporting,.work-index-card,.work-index-card:nth-child(2n),.case-hero__layout,.case-context,.case-architecture,.focus-grid,.gallery-grid,.related-project,.related-project__cards,.case-value,.about,.contact{grid-template-columns:1fr}.work-index-card:nth-child(2n) .case-visual,.work-feature--reverse .work-feature__content{order:0}.work-card:nth-child(2){margin-top:0}.case-hero .case-visual{order:-1}.work-hero h1,.case-hero h1{font-size:4.25rem}.case-narrative h2,.case-architecture h2,.case-value h2,.work-cta h2{font-size:2.75rem}.capability-matrix,.build-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-cta__inner{grid-template-columns:1fr}.footer-cta__content{align-self:start}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}}@media (max-width:720px){:root{--header-h:76px}body{background-size:84px 84px}.site-header{gap:10px;padding:0 16px}.kasel-mark__orb{width:36px;height:36px}.kasel-mark b{font-size:26px}.kasel-mark small{letter-spacing:.12em;font-size:7px}.site-header__action{display:none}.hero{gap:34px;padding:42px 20px 70px}h1{font-size:clamp(50px,16vw,72px)}h2{font-size:clamp(34px,11vw,48px)}.hero__lead,.section__header p:not(.eyebrow),.work-hero>p:not(.eyebrow),.case-hero p,.contact__intro p:not(.eyebrow){font-size:16px}.hero__orb{min-height:320px}.precision-orb{width:min(94vw,390px)}.precision-orb:before{inset:15%}.precision-orb__plane--back{opacity:.52}.section{padding:66px 20px}.selected-work,.work-index,.case-detail,.case-gallery,.case-focus,.case-context,.case-architecture,.related-project,.case-value,.work-cta{padding-inline:20px}.work-hero,.case-hero{padding:48px 20px 66px}.work-hero h1,.case-hero h1{font-size:3rem;line-height:1.04}.case-narrative h2,.case-architecture h2,.case-value h2,.work-cta h2{font-size:2.25rem}.work-feature,.work-card{padding:20px}.work-feature{min-height:0}.focus-card,.related-card{padding:20px}.case-visual,.gallery-grid .case-visual{aspect-ratio:auto;min-height:360px}.selected-work .case-visual{height:auto}.case-visual__screen{padding:16px}.case-visual__heading strong{font-size:1.2rem}.case-visual__map{grid-template-columns:1fr}.case-visual__map span{min-height:0}.capability-matrix{grid-template-columns:1fr}.capability-matrix li{min-height:0}.case-actions,.case-hero__actions{flex-direction:column;align-items:stretch}.case-link{text-align:center}.client-logo-section{padding:56px 0}.client-logo-section__header{margin-bottom:26px;padding:0 20px}.client-logo-carousel{padding:12px 0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 24px calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#0000,#000 24px calc(100% - 24px),#0000)}.client-logo-carousel__item{min-width:176px;height:96px;padding:18px 26px}.client-logo-carousel__image{max-width:156px;max-height:50px}.capability,.capability dl div,.build-grid{grid-template-columns:1fr}.build-grid li{min-height:96px;padding:22px}.process-list li{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:10px 16px;min-height:0}.process-list p{grid-column:2}.field-row{grid-template-columns:1fr}.hero__actions,.contact__actions{flex-direction:column;align-items:stretch}.button{width:100%}.footer-cta{padding:58px 20px}.footer-cta h2{font-size:clamp(36px,12vw,50px)}.footer-cta__content p{font-size:16px}.footer-cta__actions{flex-direction:column;align-items:stretch}.footer-cta__arc{opacity:.16;width:360px;bottom:-26px;right:-120px}.footer-main{grid-template-columns:1fr;padding:46px 20px}.footer-brand{max-width:none}.footer-brand .kasel-mark__orb{width:48px;height:48px}.footer-brand .kasel-mark b{font-size:38px}.footer-legal{flex-direction:column;align-items:flex-start;padding:22px 20px 104px}.whatsapp-float{border-radius:50%;width:56px;height:56px;min-height:56px;padding:0;bottom:16px;right:16px}.whatsapp-float__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:360px){.kasel-mark{gap:8px}.kasel-mark__orb{width:32px;height:32px}.kasel-mark b{font-size:24px}h1{font-size:46px}.work-hero h1,.case-hero h1{font-size:2.55rem}.case-visual,.gallery-grid .case-visual{min-height:390px}.tag-list li,.case-visual__map span,.case-visual__stack span{font-size:.68rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.precision-orb{transform:none!important}.client-logo-carousel{overscroll-behavior-inline:contain;overflow-x:auto;-webkit-mask-image:none;mask-image:none}.client-logo-carousel__track{animation:none!important;transform:none!important}.client-logo-carousel__set[aria-hidden=true]{display:none}}
