@font-face{font-family:Nunito;src:url(nunito-400.ttf);font-weight:400;font-display:swap}@font-face{font-family:Nunito;src:url(nunito-800.ttf);font-weight:800;font-display:swap}
:root{--ink:#191636;--purple:#5931bc;--muted:#514a66;--line:#ded8e9;font-family:Nunito,Arial,sans-serif;color:var(--ink);scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;background:#fcfbff}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.wrap{max-width:1280px;width:90%;margin:auto}.strip{display:block;text-align:center;background:#211941;color:white;padding:.65rem;font-size:.8rem;font-weight:800;letter-spacing:.04em}.strip span{padding-left:.5rem;color:#73f1db}header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 5%;border-bottom:1px solid var(--line);background:#fff}.brand{display:inline-flex;align-items:center;gap:.55rem;font:400 1.65rem Nunito,Arial,sans-serif;white-space:nowrap}.brand b{font-weight:800}.brand img{width:2.4rem;height:2.4rem}nav,footer div,.actions{display:flex;gap:clamp(.7rem,2.5vw,2rem);align-items:center;flex-wrap:wrap}nav a{font-weight:800}.btn,.ghost{display:inline-block;border-radius:.35rem;padding:.85rem 1.1rem;font-weight:800}.btn{background:var(--purple);color:white}.small{font-size:.88rem}.ghost{border:1px solid #9a86c8}.hero{background:linear-gradient(110deg,#f1ebff 8%,#e7ddff 62%,#d5f9f4);padding:clamp(3.2rem,7vw,7.5rem) 0}.hero-grid,.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,6rem)}h1,h2,h3,h4,p{margin-top:0}h1,h2{line-height:1.02;letter-spacing:-.045em;font-weight:800}h1{font-size:clamp(3.1rem,6.2vw,6rem);margin-bottom:1.4rem}h2{font-size:clamp(2.1rem,4.5vw,4.1rem);margin-bottom:1rem}.tag{font-size:.77rem;font-weight:800;letter-spacing:.12em;color:var(--purple)}.lead,.intro{font-size:1.2rem;max-width:43rem}.lead,.intro,p,dd{line-height:1.55}.lead,.intro,dd{color:var(--muted)}.screen{background:white;overflow:hidden;border:1px solid #b9a6e2;border-radius:1rem;box-shadow:0 20px 50px #321b6630}.screenbar,.screenfoot{display:flex;justify-content:space-between;gap:.5rem;font-size:.7rem;font-weight:800}.screenbar{background:#211941;color:white;padding:.9rem 1rem}.screenbar i{display:inline-block;width:.55rem;height:.55rem;background:#73f1db;border-radius:50%}.screenbody{padding:clamp(1rem,3vw,2.2rem)}.screenbody p{font-size:.72rem;font-weight:800;color:var(--purple)}.screenbody h2{font-size:1.7rem}.stat{display:flex;align-items:baseline;gap:.65rem}.stat strong{font-size:2rem}.screenbody svg{width:100%;display:block;margin:.7rem 0}.audience{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1.45rem 0;border-bottom:1px solid var(--line)}.audience span{color:var(--muted)}.section{padding-block:clamp(3rem,7vw,6rem)}.product{margin-top:2rem;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:1.1rem 0}summary{cursor:pointer;font-size:1.12rem;font-weight:800}details p{margin:.7rem 0 0;color:var(--muted);max-width:56rem}.band{background:#f1edf9}.columns,.industries{display:grid;gap:1.3rem;margin-top:2rem}.columns{grid-template-columns:repeat(3,1fr)}.industries{grid-template-columns:repeat(4,1fr)}.columns article,.guides details,.industries article{border-top:3px solid #8d6ce0;padding:1.25rem 0 .45rem}.industries article{border-color:#5aab9e}.subhead{margin:2.2rem 0 0;font-size:1.65rem}.feature,.proof{background:#e6def7;border-left:4px solid #7752ce;padding:clamp(1.2rem,4vw,2.7rem)}.feature h3{font-size:1.75rem}dl{margin-bottom:0}dt{font-weight:800}dd{margin:0 0 1rem}hr{border:0;border-top:1px solid #b6a6d3;margin:1.4rem 0}select{margin-left:.5rem;font:inherit;padding:.45rem;border:1px solid #8c79ad;border-radius:.3rem;background:white;color:var(--ink)}.proof{margin-top:1.5rem}.proof p,.feature p:last-child{margin-bottom:0}.close{background:#211941;color:#fff}.close .tag{color:#73f1db}.close .btn{background:#73f1db;color:var(--ink)}footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-block:1.5rem}a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #ac66e3;outline-offset:4px}@media(max-width:800px){header{flex-wrap:wrap}nav{order:3;width:100%}.hero-grid,.split{grid-template-columns:1fr}.columns,.industries{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.columns,.industries{grid-template-columns:1fr}.brand{font-size:1.35rem}header .small{padding:.6rem}.screenbar{font-size:.58rem}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

/* Illustrated stories and scroll choreography */
.hero{overflow:hidden;background:#eee7ff}
.hero-art{position:relative;isolation:isolate;padding:2.5rem 0 3rem}
.hero-art .screen{position:relative;z-index:1;transform:rotate(-3deg)}
.orbit{position:absolute;inset:0 -5%;z-index:-1;background:repeating-radial-gradient(ellipse at center,transparent 0 17px,#7653c82d 18px 19px,transparent 20px 33px);border-radius:50%;transform:rotate(-20deg)}
.signal{position:absolute;z-index:2;bottom:0;right:-2%;display:flex;align-items:center;gap:.75rem;background:#211941;color:#fff;padding:.85rem 1rem;box-shadow:0 14px 35px #21194142;border-radius:.65rem}
.signal i{width:.65rem;height:.65rem;background:#73f1db;border-radius:50%}.signal small{display:block;color:#e1d5ff}
.visual-stories h2{max-width:15ch;margin-bottom:2rem}.story-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:1rem}.story{overflow:hidden;border-radius:.9rem;display:flex;flex-direction:column}.story-copy{padding:clamp(1.25rem,4vw,2.4rem)}.story-copy h3{font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.05;letter-spacing:-.035em;margin-bottom:.75rem}.story-copy p:last-child{margin-bottom:0}.story-photo{background:#f4e9df}.scene{position:relative;overflow:hidden}.scene img{width:100%;height:100%;object-fit:cover;display:block}.research-scene{aspect-ratio:1.9;background:#272651}.scene-note{position:absolute;right:4%;bottom:8%;padding:.7rem 1rem;background:white;color:#191636;border-radius:.5rem;box-shadow:0 10px 20px #19163644}.story-radar{background:#221847;color:white;justify-content:space-between}.story-radar .tag{color:#8bf2de}.radar-scene{display:grid;justify-items:center;padding:0 1rem 1.6rem;gap:1rem}.radar-dial{width:min(60%,205px);aspect-ratio:1;border-radius:50%;position:relative;overflow:hidden;border:1px solid #9b88cc;background:repeating-radial-gradient(circle,transparent 0 19%,#806aa3 20%,transparent 21% 25%),linear-gradient(90deg,transparent 49.6%,#806aa3 50%,transparent 50.5%),linear-gradient(transparent 49.6%,#806aa3 50%,transparent 50.5%)}.radar-dial span{position:absolute;inset:0;background:conic-gradient(from 0deg,transparent 74%,#80f4d777);animation:sweep 8s linear infinite paused}.is-visible .radar-dial span{animation-play-state:running}.radar-dial b,.radar-dial i{position:absolute;width:.55rem;height:.55rem;border-radius:50%;background:#8bf2de;box-shadow:0 0 12px #8bf2de;top:31%;left:66%}.radar-dial i{top:65%;left:30%;background:#ffad79}.radar-scene small{letter-spacing:.13em}.story-work{grid-column:1/-1;background:#dcf6ed;display:grid;grid-template-columns:1fr 1fr;align-items:center}.workflow{padding:1.5rem;margin:1.25rem;background:#f8fffb;border:1px solid #a9d6c9;border-radius:.65rem;box-shadow:0 10px 25px #153c2a20}.workflow>span{font-size:.7rem;font-weight:800;letter-spacing:.12em}.workflow div{display:flex;gap:.6rem;align-items:center;padding:.7rem 0;border-bottom:1px solid #cfebe0}.workflow small{margin-left:auto;color:#276b58}.workflow b{color:#276b58}
@keyframes sweep{to{transform:rotate(1turn)}}
@keyframes rise{from{opacity:0;translate:0 27px}to{opacity:1;translate:0 0}}
@keyframes drift{0%,100%{translate:0 0}50%{translate:0 -7px}}
.motion .reveal:not(.is-visible){opacity:0}.motion .reveal.is-visible{animation:rise .75s cubic-bezier(.2,.75,.22,1) both}.motion .signal.is-visible{animation:rise .8s .18s both,drift 5s 1s ease-in-out 2}.motion .scene.is-visible .scene-note{animation:rise .8s .22s both}
@media(max-width:760px){.story-grid,.story-work{grid-template-columns:1fr}.hero-art{padding-top:1rem}.signal{right:0}.research-scene{aspect-ratio:1.5}}
@media(prefers-reduced-motion:reduce){.motion .reveal,.motion .reveal.is-visible,.motion .scene.is-visible .scene-note,.radar-dial span{animation:none;opacity:1}}

button.btn{border:0;cursor:pointer;font-family:inherit}
.booking{width:min(94%,820px);max-height:90dvh;padding:clamp(1.25rem,4vw,2.5rem);border:1px solid var(--line);border-radius:.85rem;color:var(--ink);background:#fff}
.booking::backdrop{background:#191636a8}
.booking h2{font-size:clamp(1.8rem,4vw,3rem)}
.booking-close{float:right;margin:0 0 .5rem .75rem}
.booking-close button{cursor:pointer;border:1px solid var(--line);border-radius:.4rem;background:#f1edf9;color:var(--ink);font:inherit;font-size:1.45rem;min-width:2.4rem}
.booking iframe{display:block;width:100%;height:min(64dvh,650px);border:0;margin-top:1rem}
.pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.pricing article{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.15rem,3vw,2rem);border:1px solid var(--line);border-radius:.65rem;background:#fff}.pricing article:nth-child(2){background:#eee7ff;border-color:#aa94e0}.pricing h3{font-size:2rem;margin-bottom:.55rem}.pricing ul{padding-left:1.15rem;margin:0 0 1.5rem;line-height:1.65}.pricing .btn{margin-top:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:800px){.pricing{grid-template-columns:1fr}}
