/* Zantra visual identity: violet, warm white and ink. */
:root{--paper:#faf9fd;--ink:#201a36;--muted:#625c73;--blue:#6032dc;--pale:#f0ecfa;--line:#ded8eb}
::selection{background:#ded1ff;color:#201a36}
body{background:var(--paper)}
.header{background:rgba(250,249,253,.94);backdrop-filter:blur(16px)}
.nav-cta{background:var(--ink);color:white;border-color:var(--ink)}
.header .nav-cta:hover{background:var(--blue);color:white}
.hero{position:relative;isolation:isolate;padding-block:76px 90px;gap:76px}
.hero:before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:0 -24px;background:radial-gradient(ellipse at 84% 43%,#dfd3fa 0,transparent 55%)}
.hero-copy h1{letter-spacing:-.065em}
.hero .brand-dot{color:#7845ee}
.hero-description{max-width:470px}
.primary{background:linear-gradient(120deg,#713bea,#5428ca);box-shadow:0 7px 19px #6032dc20}
.primary:hover{background:#4f24bd;box-shadow:0 10px 26px #6032dc35}
.button,.nav-cta{transition:transform .2s,background .2s,box-shadow .2s}
.portrait-wrap:before{inset:25px -18px 0 24px;border:1px solid #b8a0e4;background:linear-gradient(140deg,#e8ddfc,#f5f0fd);border-radius:14px 14px 85px 14px}
.portrait-wrap:after{content:'';position:absolute;z-index:-1;inset:-30px -25px -24px -30px;background:linear-gradient(#8055cc16 1px,transparent 1px),linear-gradient(90deg,#8055cc16 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(ellipse,#000 45%,transparent 73%);pointer-events:none}
.portrait-frame{box-shadow:0 24px 60px #2c155a1c}
.portrait-label{right:-16px;top:auto;bottom:115px;box-shadow:0 10px 30px #30145818;border-color:#e9e1f5}
.portrait-label .tiny-mark{font-size:2rem;color:var(--blue)}
.tech-orbit{position:absolute;width:145px;height:145px;border:1px solid #a88bd9;border-radius:50%;left:-42px;bottom:35px;z-index:-1;pointer-events:none}
.tech-orbit:before{content:'';position:absolute;inset:13px;border:1px dashed #ad8de0;border-radius:50%}
.tech-orbit:after{content:'';position:absolute;width:9px;height:9px;background:#7b42ee;border-radius:50%;top:12px;left:21px;box-shadow:0 0 0 7px #7b42ee14}
.needs{padding-top:32px}.needs-grid>a{border-radius:12px;transition:background .2s,border-color .2s,transform .2s}
.needs-grid>a:hover{transform:translateY(-3px)}
.needs-grid b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--pale)}
.product-visual{background:linear-gradient(135deg,#e9dffb,#f5f0fc);padding:26px;border:1px solid #dfd2ef;box-shadow:0 22px 55px #3822560c}
.window-bar{height:39px}.window-bar i:first-child{background:#9561ea}.window-bar i:nth-child(2){background:#b596e9}
.ads{position:relative;isolation:isolate;background:#201438;border:1px solid #4f376d;border-radius:22px;box-shadow:0 24px 55px #24123615}
.ads:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 90% 25%,#7241aa65,transparent 60%),linear-gradient(#b998e50b 1px,transparent 1px),linear-gradient(90deg,#b998e50b 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
.ads .eyebrow,.ads-copy>p:not(.eyebrow),.ads-benefits,.ads-detail{color:#ded1ef}
.ads-accent{color:#c9a8ff}.light-dot{background:#c5a1ff;box-shadow:0 0 0 5px #c5a1ff16}
.ads-benefits span:before{color:#c9a8ff}.phone{border-color:#715789;box-shadow:0 24px 45px #08041160}.ads-visual small{color:#cec0df}
.service-card{position:relative;border-radius:13px;overflow:hidden;box-shadow:0 5px 20px #21123503}
.service-card:before{content:'';height:3px;position:absolute;top:0;left:0;right:0;background:linear-gradient(90deg,#713bea,#bba0f0);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.service-card:hover,.service-card:focus-within{background:#f8f5ff;border-color:#baa1e6;box-shadow:0 15px 32px #3614570d}
.service-card:hover:before,.service-card:focus-within:before{transform:scaleX(1)}
.card-top svg{box-sizing:content-box;background:var(--pale);padding:10px;border-radius:11px}
.card-top{gap:8px}.card-top>span{letter-spacing:.025em}
.proof-card{border-radius:14px}.proof-image img{transition:transform .5s}.proof-image:hover img{transform:scale(1.025)}
.proof-image.gross img{object-fit:cover;object-position:top;padding:0}
.about-band{background:linear-gradient(120deg,#eee7f9,#f4f0fa);border-block:1px solid var(--line)}
.about{padding-block:82px}.about-copy p:not(.eyebrow){line-height:1.8}
.journal-arrow{transition:background .2s,color .2s,transform .2s}
.journal-link:hover .journal-arrow{background:var(--blue);color:white;transform:translate(2px,-2px)}
.faq-band{background:#f0ecf6}.faq-item,.faq-item:first-child{border-color:#d9cfe5}
.faq-toggle{transition:transform .2s}.faq-item[open] summary{color:var(--blue)}
.contact-panel{border-radius:17px;border-top:3px solid #8050e8;box-shadow:0 20px 60px #39155a0b}
#inquiry input,#inquiry textarea,#inquiry select{border-color:#bbb1cc;background:#fcfbfe;border-radius:7px}
.next-steps li:before{background:var(--pale);border-color:#d9ccec}
.footer{padding-block:34px}
/* Entrance animation never hides content and only runs once per section. */
@keyframes section-arrive{from{transform:translateY(15px)}to{transform:translateY(0)}}
@keyframes orbit-intro{from{transform:rotate(-35deg)}to{transform:rotate(0)}}
@media(prefers-reduced-motion:no-preference){.arrived{animation:section-arrive .65s cubic-bezier(.2,.7,.3,1) both}.tech-orbit{animation:orbit-intro 1.8s ease-out both}}
@media(max-width:1100px){.hero{gap:40px}.card-top>span{font-size:.62rem}.card-top svg{padding:8px}}
@media(max-width:850px){.hero{gap:30px}.hero-copy h1{font-size:clamp(4rem,8.8vw,5.2rem)}.portrait-label{padding:12px;right:-8px}.portrait-label .label-arrow{margin-left:6px}.hero:before{inset-inline:0}}
@media(max-width:720px){.hero{padding-block:36px 55px;gap:35px}.hero-copy h1{font-size:clamp(4rem,15vw,6rem)}.hero:before{inset:35% -10px 0}.portrait-wrap:after{inset:-15px -10px -20px}.tech-orbit{left:-12px;bottom:15px;width:105px;height:105px}.portrait-frame{height:440px}.portrait-label{right:-8px;top:auto;bottom:112px}.ads{border-radius:16px;padding:34px 25px}.about{padding-block:58px}.card-top>span{font-size:.68rem}.product-visual{padding:16px}.contact-panel{padding:23px}.footer-links{gap:15px 20px}}
@media(max-width:360px){.hero-copy h1{font-size:3.75rem}.hero-statement{font-size:1.5rem}.ads h2{font-size:2.15rem}.contact h2{font-size:2.8rem}.contact-panel{padding:18px}.submit-inquiry{gap:10px;padding-inline:10px;font-size:.8rem}.portrait-caption{left:18px}.portrait-caption strong{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.arrived,.tech-orbit{animation:none!important}.needs-grid>a:hover,.proof-image:hover img,.journal-link:hover .journal-arrow{transform:none}}
