
/* Lightweight motion and responsive refinement. */
:root{--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:116px}body{overflow-x:clip}button,summary,a{-webkit-tap-highlight-color:transparent}
header{position:sticky;top:0;z-index:20;background:#fffffff5;padding:20px 0;transition:box-shadow .3s,border-color .3s}
header.is-scrolled{box-shadow:0 8px 30px #092b4a0b;border-color:#d7e1e8}
header:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#0da6a6;transform:scaleX(var(--read-progress,0));transform-origin:left;pointer-events:none}
.nav-links a{position:relative;transition:color .2s,background .2s,box-shadow .2s}
.nav-links a[aria-current="location"]{color:#087f83;font-weight:800}
.nav-cta{color:#087f83!important}.nav-cta:hover{background:#eaf8f7;box-shadow:0 4px 18px #0da6a610}
.brand{transition:opacity .2s}.brand:hover{opacity:.8}.brand:active{opacity:.6}
.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.hero>*{min-width:0}
h1{font-size:clamp(46px,6.7vw,80px)}h1 em{color:#07868a}
.hero-art{isolation:isolate;perspective:850px;touch-action:pan-y}
.hero-art:before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,#0da6a612,transparent 68%);pointer-events:none}
.core{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotate(-8deg);transition:transform .55s var(--ease),box-shadow .35s}
.hero-art.is-in-view .core{animation:gentle-float 6s ease-in-out infinite}
.hero-art.is-in-view .orbit{animation:orbit-turn 70s linear infinite}
.orbit:before{border-color:#b4d9d9}.orbit:after{border-color:#dae8ed}
.node{box-shadow:0 5px 18px #092b4a06;transition:transform .5s var(--ease),border-color .3s}
.hero-art:active .core{box-shadow:0 16px 48px #0da6a63a}
.hero-note span{display:inline-block;color:#087f83}
.btn,.nav-cta,summary{position:relative;overflow:hidden;isolation:isolate;touch-action:manipulation}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;transition:transform .25s var(--ease),box-shadow .25s,background .25s}
.btn-primary{background:#0da6a6;color:#052a3b;box-shadow:0 6px 16px #0da6a61c}
.btn-primary:hover{background:#19b8b6;box-shadow:0 10px 26px #0da6a633}
.btn-quiet:hover{background:#f0f8f8;border-color:#9acaca}
.btn:active,.nav-cta:active{transform:scale(.97)}
.tap-wave{position:absolute;border-radius:50%;background:#ffffff55;pointer-events:none;z-index:-1}
.ticker-inner{white-space:normal;align-items:center;gap:24px}.ticker-inner span{min-width:0}.ticker i{padding:0;color:#0da6a6}
.services{align-items:start}.service{border-radius:16px;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s;background:linear-gradient(145deg,#fff,#f7fbfc)}
.service:after{pointer-events:none;transition:transform .6s var(--ease),border-color .4s}
.service:focus-within{border-color:#0da6a6;box-shadow:0 12px 36px #092b4a0b}
.service-details{margin-top:24px;border-top:1px solid #d7e1e8}
.service-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:13px 0;cursor:pointer;list-style:none;font-size:12px;font-weight:700;color:#087f83}
.service-details summary::-webkit-details-marker{display:none}
.service-details summary span{font-size:21px;line-height:1;transition:transform .3s var(--ease)}
.service-details[open] summary span{transform:rotate(45deg)}
.service-more{padding:4px 0 8px}.service-more p{line-height:1.8;max-width:none}.service-more a{display:inline-block;margin-top:16px;font-size:12px;font-weight:700;color:#087f83;text-underline-offset:4px;padding:8px 0}
.service-details[open] .service-more{animation:detail-in .3s var(--ease)}
summary:focus-visible,a:focus-visible{outline:3px solid #087f83;outline-offset:4px}
.step{position:relative;transition:transform .3s var(--ease)}.step .n{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid #34516c;border-radius:50%;color:#57d4d0;transition:background .3s,border-color .3s}
.collab-card{border-radius:20px}.collab-card>div{min-width:0}.collab-actions{flex-shrink:1}.collab-card:after{transition:transform 1s var(--ease)}
.reveal-pending{opacity:0;transform:translateY(22px)}
.reveal-ready{transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready.is-revealed{opacity:1;transform:translateY(0)}
@keyframes gentle-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes orbit-turn{from{transform:rotate(-24deg)}to{transform:rotate(336deg)}}
@keyframes detail-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.service:hover{transform:translateY(-6px);border-color:#92cfcf;box-shadow:0 18px 40px #092b4a0b}.service:hover:after{transform:scale(1.5);border-color:#9cdada}.step:hover{transform:translateY(-4px)}.step:hover .n{background:#0da6a622;border-color:#36c4c2}.hero-art:hover .node.one{transform:translate(3px,-4px)}.hero-art:hover .node.two{transform:translate(-4px,2px)}.hero-art:hover .node.three{transform:translate(3px,4px)}.collab-card:hover:after{transform:translateY(8px) rotate(-4deg)}}
@media(max-width:900px){.collab-card{flex-direction:column;align-items:flex-start}.collab-actions{margin-top:8px}.ticker-inner{flex-wrap:wrap;justify-content:center;text-align:center}.ticker-inner span{flex:1 1 220px}.ticker i{display:none}}
@media(max-width:760px){html{scroll-padding-top:132px}header{padding:13px 0}.nav{flex-wrap:wrap;gap:12px}.brand{font-size:15px}.brand-mark{width:30px;height:30px}.nav-links{gap:18px;font-size:11px;flex-wrap:wrap}.nav-links a:not(.nav-cta){display:inline-block}.nav-cta{padding:8px 12px}.hero{grid-template-columns:minmax(0,1fr);padding-top:36px}.hero-art{min-height:310px}.hero-art .core-symbol{width:88px}.hero-art .core small{font-size:8px}h1{font-size:clamp(43px,11vw,64px)}.lead{font-size:15px}.buttons{align-items:stretch}.btn{font-size:12px}.section-head h2{font-size:38px}.service{padding:24px}.step{margin-right:16px;padding-right:16px}.step:nth-child(3){margin-right:16px}.footer-inner a{overflow-wrap:anywhere}.ticker-inner{gap:8px}.ticker-inner span{flex-basis:100%}}
@media(max-width:420px){.nav-links{width:100%;justify-content:space-between;gap:10px}.brand{font-size:15px}.hero{padding-top:24px}.node{font-size:9px}.collab-card{padding:26px}.collab-card h2{font-size:36px}.collab-actions .btn{white-space:normal}.section-head h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending,.reveal-ready{opacity:1!important;transform:none!important}.core{transform:rotate(-8deg)!important}.btn:hover,.service:hover,.step:hover{transform:none}}
