/* Causelane V2 — kinetic editorial studio, source of truth for redesigned surfaces */
:root{--ink:#171a29;--muted:#5c6372;--line:#d7d9df;--canvas:#f6f5f2;--cream:#edeee9;--night:#111523;--night2:#1c2133;--mint:#adc5ff;--mintDark:#536aee;--ice:#e2e6f8;--accent:#ff7355;--max:1360px}
html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink)}::selection{background:#b6beff;color:#0c1433}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #516cff;outline-offset:4px} .brand-stop,.period{color:var(--accent)}
/* The signature is typography plus an original, flat, transparent mark. No enclosing dark-green badge. */
.site-header{background:#f7f6f3f5;color:#141827;border-bottom:1px solid #e5e5e9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.brand{letter-spacing:-.075em}.brand-symbol-v2{width:38px;height:38px;display:block;color:#1b2133;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.brand:hover .brand-symbol-v2{transform:rotate(-18deg)}.nav-desktop a{color:#525766}.nav-desktop a:hover,.nav-desktop a:focus-visible{color:#171a29}.nav-contact{border:1px solid #c5c8d2;color:#171a29;background:#fff}.nav-contact:hover{background:#e7ebff}.nav-toggle{color:#171a29;border-color:#d1d4dd}.mobile-nav{background:#f7f6f3;color:#171a29}.mobile-nav a{color:#171a29;border-color:#e2e4ea}.site-header{box-shadow:0 2px 24px #171a2908}
/* First fold: an editorial hero, intentional motion, interaction rather than decoration alone. */
.hero{background:#eff1f7;color:#171a29;position:relative;isolation:isolate;overflow:clip}
.hero:before{content:"";position:absolute;inset:-25% -15%;background:radial-gradient(ellipse at 78% 32%,#c6cdff70,transparent 38%),radial-gradient(ellipse at 15% 100%,#fee4ce8a,transparent 44%);pointer-events:none;z-index:-1}
.hero:after{content:"";position:absolute;inset:0;background-image:radial-gradient(#2c355624 .6px,transparent .8px);background-size:23px 23px;mask-image:linear-gradient(90deg,transparent 0%,black 46%,transparent 100%);opacity:.45;pointer-events:none;z-index:-1}
.hero-upper{padding-top:32px}.light-eyebrow{color:#4e5362}.live-pip{background:#ff775c;box-shadow:0 0 0 5px #ff775c20}.hero-index{color:#6e7480}
.hero-body{grid-template-columns:minmax(0,1.13fr) minmax(380px,.87fr);gap:34px;padding:68px 0 92px}.hero h1{font-family:var(--text);font-weight:680;font-size:clamp(69px,7.5vw,122px);line-height:.96;color:#151b2d;letter-spacing:-.09em;text-wrap:balance}
.hero h1 em{font-family:Georgia,serif;font-weight:400;color:#5a5bdb;font-size:.88em;letter-spacing:-.09em}
.hero-lede{color:#4b5363;font-size:clamp(17px,1.46vw,20px);max-width:555px;line-height:1.65;margin-top:35px}
.hero-buttons{margin-top:36px}.button-lime{background:#151c30;color:white;border-radius:100px}.button-lime:hover{background:#4c53d7}.on-dark{color:#363c4d}.text-link.on-dark:hover{color:#4c53d7}.hero-foot{border-color:#c9cddd;color:#616777}
/* Interactive decision system; no synthetic KPI numbers or false analytics */
.flow-board{position:relative;min-height:493px;border:1px solid #c4cbdd;background:linear-gradient(145deg,#fdfdfc,#e2e7f7 64%,#f7e9df);border-radius:23px;box-shadow:0 30px 80px #4b558326,0 2px 4px #1b25400a;overflow:hidden;isolation:isolate;perspective:800px;--shift-x:0px;--shift-y:0px}
.flow-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#2933590d 1px,transparent 1px),linear-gradient(90deg,#2933590d 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(to bottom,black 50%,transparent 100%);pointer-events:none}
.flow-board:after{content:"";position:absolute;inset:auto -20% -38% 15%;height:55%;background:radial-gradient(ellipse,#8f9de766,transparent 68%);pointer-events:none}
.flow-board-header{position:relative;z-index:3;padding:20px 24px;display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #222c4318;font:10px var(--mono);letter-spacing:.08em;color:#5d6984}.flow-board-live{display:flex;gap:8px;align-items:center;color:#555fe6}.flow-board-live span{font-size:16px}
.flow-connectors{position:absolute;top:12%;left:0;width:100%;height:70%;overflow:visible;transform:translate(var(--shift-x),var(--shift-y));transition:transform .35s ease-out;pointer-events:none}
.flow-connectors>path{fill:none;stroke:#6671dc80;stroke-width:1.15;stroke-dasharray:4 6}.flow-connectors>path:first-child{stroke:#ff8d72;stroke-width:2.5;stroke-dasharray:550;stroke-dashoffset:550;animation:flow-write 4s cubic-bezier(.22,1,.36,1) .15s forwards}.flow-connectors>circle{fill:none;stroke:#9babc62a;stroke-width:1.2;stroke-dasharray:2 7}
@keyframes flow-write{to{stroke-dashoffset:0}}
.flow-core{width:105px;height:105px;position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:#171e36;color:#e7e9ff;box-shadow:0 15px 45px #1c2c5852,0 0 0 12px #7e83d710;z-index:1}
.core-orbit{font-family:Georgia,serif;font-size:62px;font-style:italic;line-height:1;transform:translateY(-3px)}.core-pulse{width:9px;height:9px;background:var(--accent);position:absolute;right:20px;bottom:23px;border-radius:50%;box-shadow:0 0 0 5px #ff765522}
.flow-steps{position:absolute;inset:0;z-index:2;pointer-events:none}.flow-node{position:absolute;pointer-events:auto;border:1px solid #c4cce0;background:#fffffff0;color:#242b41;padding:13px 15px;display:flex;align-items:center;gap:8px;border-radius:12px;font-size:12px;box-shadow:0 8px 24px #37497714;min-height:48px;transition:transform .3s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease}.flow-node strong{font-size:13px}.flow-node span{font:10px var(--mono);color:#777c95}.flow-node:hover,.flow-node:focus-visible{transform:translateY(-3px);box-shadow:0 15px 24px #37497725}.flow-node.is-current{background:#222b51;color:#fff;border-color:#222b51}.flow-node.is-current span{color:#aabaff}.flow-node:nth-child(1){top:21%;left:7%}.flow-node:nth-child(2){top:21%;right:5%}.flow-node:nth-child(3){top:60%;left:7%}.flow-node:nth-child(4){top:60%;right:5%}
.flow-readout{position:absolute;bottom:31px;left:24px;right:24px;z-index:3;display:flex;align-items:center;gap:15px;background:#f6f6fcf0;border:1px solid #cfd4e7;padding:13px 17px;border-radius:12px;box-shadow:0 5px 15px #1c2e4e13;min-height:67px}.flow-readout-number{font:10px var(--mono);color:#555edf;white-space:nowrap}.flow-readout-title{font-size:14px;letter-spacing:-.03em}.flow-readout-copy{font-size:11px;color:#5a647a;margin-left:auto;max-width:150px;line-height:1.4}.flow-legend{position:absolute;bottom:103px;left:27px;font:8px var(--mono);color:#737b90;letter-spacing:.08em}
@media (pointer:fine){.flow-board{transform:rotateX(var(--board-x,0deg)) rotateY(var(--board-y,0deg));transition:transform .45s cubic-bezier(.22,1,.36,1)}}
/* Clear brand changes carry across public product pages */
.statement-section{background:#f7f5f0}.statement-grid h2 span{color:#737890}.statement-grid p{color:#525967}.section-kicker,.micro-label{color:#626b80}
.feature-section{background:#efeff4}.aria-showcase{background:#181d34;color:#f5f5fc;border-radius:16px}.aria-visual{background:radial-gradient(ellipse at 56% 52%,#434a96,#222b5d 36%,#141a35 76%);border-color:#6f77ae50;border-radius:12px}.aria-showcase-copy>p:not(.showcase-note){color:#c7cbe1}.aria-identity span,.showcase-note{color:#adb2cd}.aria-showcase-copy h3{letter-spacing:-.06em}.stage-dot{background:#7c83ee}.button-outline-light{border-color:#7d84a0}.button-outline-light:hover{background:#333b62}.visual-signal>strong{color:#fcfcff}.visual-steps{background:#1b2139}
.portfolio-section{background:#f5f4f0}.section-heading-dark h2 span{color:#777b94}.project-card{background:#fff;border-color:#dadbe4;border-radius:13px;box-shadow:0 2px 2px #28314704}.project-card:hover{background:#fdfdff;border-color:#a6acd4;box-shadow:0 18px 42px #2c345e18}.project-card:after{background:#8c9aff12}.stage-text,.card-blurb{color:#61687b}.portfolio-strip{border-color:#d8d8e3}.method-section{background:#e8eaf3}.button-dark{background:#151a2d}.button-dark:hover{background:#505ad8}.contact-ribbon{background:#1a2033;color:#f1f3fa}.page-hero,.detail-hero,.site-footer{background:#161b2c;color:#f4f5fc}.detail-hero .period{color:#f28d79}.detail-hero .button-lime{background:#b5c4ff;color:#162042}.site-footer .footer-mark{color:#fff}.footer-top p,.footer-links a{color:#b0b6cc}.footer-bottom{border-color:#464b65;color:#a3adc8}
/* A genuinely useful product explorer: click or keyboard select, watch story change. */
.lens-section{background:#fff;padding:116px 0 135px;overflow:hidden}.lens-head{max-width:780px;margin-bottom:40px}.lens-head h2{font:500 clamp(48px,5.8vw,83px)/1.03 var(--text);letter-spacing:-.075em;margin-top:15px}.lens-head h2 em{font-family:Georgia,serif;font-weight:400;color:#595fd3}.lens-head p{max-width:590px;margin-top:23px;color:#676d7e;line-height:1.7;font-size:17px}
.lens-frame{display:grid;grid-template-columns:36% 64%;border:1px solid #d9dce7;background:#f4f5fa;min-height:510px;border-radius:20px;overflow:hidden;box-shadow:0 25px 60px #161e4c0c}.lens-nav{display:flex;flex-direction:column;border-right:1px solid #d9dce7;background:#fbfbfd}.lens-option{border:0;border-bottom:1px solid #dfe1e9;background:transparent;color:#494f62;display:grid;grid-template-columns:35px 1fr 24px;align-items:center;text-align:left;padding:25px 29px;gap:13px;flex:1;transition:background .2s ease,color .2s ease}.lens-option:last-child{border-bottom:0}.lens-option span{font:11px var(--mono);color:#777e9d}.lens-option strong{font-size:clamp(18px,2vw,27px);letter-spacing:-.045em;font-weight:610}.lens-option svg{transition:transform .25s}.lens-option:hover{background:#eff0fd}.lens-option:hover svg{transform:translate(3px,-3px)}.lens-option.is-selected{background:#21284a;color:#fff}.lens-option.is-selected span{color:#bcc6ff}
.lens-display{position:relative;background:radial-gradient(ellipse at 87% 17%,#d0d3ff 0,transparent 39%),linear-gradient(120deg,#eef2ff,#fbf9f5);padding:25px 34px 34px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.lens-display-head{position:relative;z-index:1;display:flex;justify-content:space-between;gap:14px;font:10px var(--mono);color:#727b95;letter-spacing:.05em}.lens-display-art{position:absolute;inset:60px 0 110px;pointer-events:none}.lens-display-art svg{width:100%;height:100%}.lens-display-art path{fill:none;stroke:url(#lensline);stroke-width:5;stroke-linecap:round;stroke-dasharray:1200;stroke-dashoffset:1200;animation:flow-write 3.4s cubic-bezier(.2,1,.3,1) .3s forwards}.lens-display-art path:nth-of-type(2){stroke:#7d83bb4d;stroke-width:1.4;stroke-dasharray:3 6;stroke-dashoffset:0}.lens-display-art circle{fill:none;stroke:#7782c73d;stroke-width:1.5}.lens-display-art circle:last-child{fill:#4c5bd4;stroke:#fff;stroke-width:7}
.lens-text{position:relative;z-index:2;margin-top:auto;max-width:540px;padding:145px 0 0}.lens-display-category{font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#5b63a6}.lens-display-name{font:600 clamp(59px,7vw,105px)/1 var(--text);letter-spacing:-.09em;color:#18213d;margin:12px 0 13px}.lens-display-desc{font-size:18px;color:#4e576c}.lens-cta-row{margin-top:30px;display:flex;gap:20px;align-items:center;justify-content:space-between;border-top:1px solid #c6cce2;padding-top:19px}.lens-display-stage{font:10px var(--mono);color:#56607a}.lens-cta{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:650;border-bottom:1px solid currentColor;padding-bottom:5px;white-space:nowrap}.lens-cta:hover{color:#515ccc}.lens-display.is-swapping .lens-text{animation:fade-slide .44s cubic-bezier(.2,.8,.2,1) both}@keyframes fade-slide{from{opacity:.4;transform:translateY(13px)}to{opacity:1;transform:none}}
/* Purposeful entrance movement — no parallax on low-power/mobile/reduced motion. */
[data-reveal]{opacity:0;transform:translateY(31px);transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .75s ease}[data-reveal].is-visible{opacity:1;transform:none}
.scroll-meter{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:left center;transform:scaleX(0);background:#6d74ea;z-index:100;pointer-events:none}.cursor-aura{position:fixed;pointer-events:none;width:350px;height:350px;border-radius:50%;z-index:0;background:radial-gradient(circle,#a3b0ff20,transparent 68%);transform:translate3d(-1000px,-1000px,0);mix-blend-mode:multiply;will-change:transform}
/* Navigation and secondary route refinements */
.page-hero{background:#181e33}.detail-hero{background:#171c30}.editorial-section{background:#f8f7f4}.principle{border-color:#d1d2dd}.principle:last-child{border-color:#d1d2dd}.editorial-grid p,.contact-layout p,.legal-copy p{color:#596070}.detail-content{background:#fafaf8}
@media(max-width:1080px){.hero-body{grid-template-columns:1.03fr .97fr;gap:22px}.hero h1{font-size:clamp(60px,7.8vw,95px)}.flow-board{min-height:430px}.flow-node{padding:9px}.flow-node strong{font-size:11px}.flow-node:nth-child(1),.flow-node:nth-child(3){left:3%}.flow-node:nth-child(2),.flow-node:nth-child(4){right:3%}.flow-readout-copy{max-width:130px}}
@media(max-width:760px){.mobile-nav{background:#faf9f6}.mobile-nav a{color:#171a29}.hero-body{padding:55px 0 65px;gap:46px}.hero h1{font-size:clamp(56px,12.5vw,85px)}.flow-board{min-height:425px}.flow-board-header{padding:15px}.flow-node:nth-child(1),.flow-node:nth-child(2){top:21%}.flow-node:nth-child(3),.flow-node:nth-child(4){top:60%}.flow-readout{left:12px;right:12px;bottom:15px;padding:11px}.flow-readout-copy{max-width:145px}.flow-legend{bottom:93px;left:16px}.lens-section{padding:78px 0 85px}.lens-head h2{font-size:clamp(50px,10vw,74px)}.lens-frame{grid-template-columns:1fr}.lens-nav{display:grid;grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid #d9dce7}.lens-option{padding:19px;min-height:76px;border-bottom:1px solid #dfe1e9}.lens-option:nth-child(odd){border-right:1px solid #dfe1e9}.lens-option strong{font-size:19px}.lens-option svg{display:none}.lens-display{min-height:425px;padding:19px}.lens-text{padding-top:190px}.lens-display-name{font-size:74px}.lens-display-head span:last-child{display:none}.scroll-meter{height:2px}}
@media(max-width:480px){.brand-symbol-v2{width:32px;height:32px}.brand-symbol-v2 svg{width:32px;height:32px}.hero h1{font-size:clamp(49px,12vw,66px)}.hero-lede{font-size:16px}.flow-board{min-height:385px;border-radius:15px}.flow-core{height:75px;width:75px}.core-orbit{font-size:49px}.flow-node{padding:8px;border-radius:8px;min-height:39px;gap:4px}.flow-node span{font-size:9px}.flow-node strong{font-size:9px}.flow-node:nth-child(1){top:20%;left:3%}.flow-node:nth-child(2){top:20%;right:3%}.flow-node:nth-child(3){top:58%;left:3%}.flow-node:nth-child(4){top:58%;right:3%}.flow-readout{align-items:flex-start;gap:8px}.flow-readout-title{font-size:12px}.flow-readout-copy{font-size:10px;max-width:92px}.lens-head p{font-size:15px}.lens-option{grid-template-columns:23px 1fr;gap:6px;padding:16px 10px}.lens-option strong{font-size:17px}.lens-display-name{font-size:60px}.lens-cta-row{align-items:flex-start;flex-direction:column;gap:13px}.lens-display{min-height:420px}}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.flow-connectors>path,.lens-display-art path{animation:none!important;stroke-dashoffset:0!important}.flow-board,.flow-connectors{transition:none!important;transform:none!important}.cursor-aura,.scroll-meter{display:none!important}.lens-display.is-swapping .lens-text{animation:none!important}}
