/* Shared visual foundation, layered over the existing portfolio components. */
:root{--bg:#f8fafb;--bg-2:#eef3f5;--surface:rgba(255,255,255,.82);--surface-solid:#fff;--ink:#102a3b;--ink-soft:#526874;--line:#d8e3e8;--brand-1:#b1ddd8;--brand-2:#b6cbe9;--brand-3:#bedecd;--accent:#087f77;--accent-2:#07635e;--btn-ink:#fff;--seal:#147e78;--shadow:0 18px 55px -32px #163e5a42;--shadow-lg:0 28px 65px -28px #163e5a45;--glass-nav-bg:rgba(248,250,251,.94);--radius:18px;--container:1180px}
[data-theme=dark]{--bg:#0b1823;--bg-2:#112330;--surface:rgba(19,40,54,.86);--surface-solid:#132836;--ink:#eef6f8;--ink-soft:#acc1cb;--line:#29414f;--accent:#69d4c4;--accent-2:#9ae9dd;--btn-ink:#071c22;--brand-1:#236a66;--brand-2:#243f69;--brand-3:#234c45;--glass-nav-bg:rgba(11,24,35,.94)}
#aurora-bg{opacity:.24}#aurora-bg span{filter:blur(100px)}
body{line-height:1.7}h1,h2,h3{letter-spacing:-.04em}.site-nav{z-index:100}.nav-inner{box-shadow:0 8px 28px #071c2410;border:1px solid var(--line)}
.eyebrow{background:transparent;border:0;border-radius:0;padding:0;backdrop-filter:none;letter-spacing:.15em;font-size:.7rem}.eyebrow::before{content:none}
.btn{border-radius:10px!important;min-height:48px;transition:transform .25s,box-shadow .25s,background .25s!important}.btn-primary{background:var(--accent)!important;color:var(--btn-ink)!important;box-shadow:0 5px 16px #087f7718}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 24px #087f772b}.btn-ghost{border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--ink)!important}.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.skip-link{position:fixed;left:16px;top:-90px;z-index:1000;background:var(--surface-solid);color:var(--ink);padding:12px 20px;border:2px solid var(--accent);border-radius:8px}.skip-link:focus{top:12px}
.feature,.manifest-item,.testimonial-card{box-shadow:0 8px 32px #14354a08!important;border-color:var(--line)!important}.site-footer{border-top:1px solid var(--line);background:var(--bg-2)}
/* Product page */
.ims-product-page{background:var(--bg)}.ims-product-page #aurora-bg{display:none}.ims-product-page main{overflow:clip}.ims-product-page section{padding:100px 0}.ims-product-page h2{font-size:clamp(1.9rem,3.8vw,3.1rem);line-height:1.15;max-width:780px}.ims-product-page h3{font-size:1.13rem;letter-spacing:-.025em}.ims-product-page .lede{font-size:clamp(1.02rem,1.4vw,1.15rem);line-height:1.8}.ims-section-heading{margin-bottom:42px;max-width:710px}.ims-section-heading p{margin-top:20px}.ims-product-page .eyebrow{display:block;color:var(--accent);font-weight:600;margin-bottom:20px}
.ims-breadcrumb{font-size:.76rem;display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:36px;color:var(--ink-soft)}.ims-breadcrumb a{color:var(--ink-soft)}
.ims-hero{padding:135px 0 80px!important;background:radial-gradient(ellipse at 92% 20%,#25b5a01b,transparent 58%);position:relative}.ims-hero-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:58px;align-items:center}.ims-hero h1{font-size:clamp(2.5rem,4.7vw,4.3rem);line-height:1.08;letter-spacing:-.055em;margin-bottom:25px;max-width:650px}.ims-hero h1 span{color:var(--accent)}.ims-hero .hero-actions{gap:12px;margin-top:28px}.ims-hero .btn{font-size:.88rem;padding:14px 20px}.ims-small{font-size:.8rem;color:var(--ink-soft);line-height:1.7;margin:16px 0 0}.ims-hero-visual{position:relative;min-width:0}.ims-browser{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--surface-solid);box-shadow:0 35px 65px -32px #071c2455;transform:perspective(1200px) rotateY(-4deg) rotateX(2deg);transition:transform .6s}.ims-browser:hover{transform:perspective(1200px) rotateY(0) rotateX(0)}.ims-browser-top{display:flex;align-items:center;gap:5px;background:var(--bg-2);padding:12px 14px;font:10px var(--font-mono);color:var(--ink-soft)}.ims-browser-top i{width:7px;height:7px;border-radius:50%;background:var(--line)}.ims-browser-top span{margin-left:12px}.ims-browser img{width:100%;height:auto;display:block}.ims-float-note{position:absolute;right:-12px;bottom:-25px;padding:17px 22px;background:var(--surface-solid);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 35px #071c2414;font-size:.8rem;animation:ims-float 6s ease-in-out infinite}.ims-float-note strong{display:block;font-size:.95rem;color:var(--ink)}.ims-float-note span{color:var(--accent)}
.ims-proof{border-block:1px solid var(--line);padding:25px 0!important}.ims-proof .container{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.ims-proof-item{display:flex;align-items:center;gap:15px}.ims-proof-item strong{font-family:var(--font-display);font-size:1.7rem;color:var(--accent)}.ims-proof-item span{font-size:.8rem;line-height:1.5;color:var(--ink-soft);max-width:170px}
.ims-jumpnav{display:flex;gap:25px;border-bottom:1px solid var(--line);padding-block:23px;overflow-x:auto;white-space:nowrap;font-size:.8rem}.ims-jumpnav a{color:var(--ink-soft)}.ims-jumpnav a:hover{color:var(--accent)}
.ims-pain-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ims-pain-card{border:1px solid var(--line);border-radius:16px;padding:32px;background:var(--surface-solid)}.ims-pain-card:last-child{background:var(--bg-2);border-color:var(--accent)}.ims-checklist{list-style:none;padding:0;margin:24px 0 0}.ims-checklist li{padding:11px 0;border-bottom:1px solid var(--line);font-size:.94rem;color:var(--ink-soft);display:flex;gap:12px}.ims-checklist li::before{content:'↗';color:var(--accent);font-weight:bold}.ims-checklist li:last-child{border:0}
.ims-capabilities{background:var(--bg-2)}.ims-cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ims-cap-card{position:relative;min-width:0;padding:30px;border:1px solid var(--line);border-radius:16px;background:var(--surface-solid);transition:transform .3s,border-color .3s,box-shadow .3s}.ims-cap-card:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:var(--shadow)}.ims-cap-card p{font-size:.9rem;margin:14px 0 0}.ims-icon{height:40px;width:40px;display:grid;place-items:center;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;color:var(--accent);font:14px var(--font-mono);margin-bottom:24px}.ims-cap-card:last-child{grid-column:span 3;display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:30px}.ims-cap-card:last-child .ims-icon{display:none}.ims-cap-card:last-child p{margin:0}
.ims-workflow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;counter-reset:workflow}.ims-workflow article{position:relative;padding-top:24px;border-top:2px solid var(--line)}.ims-workflow article::before{content:'';position:absolute;width:10px;height:10px;background:var(--accent);border-radius:50%;top:-6px;left:0;box-shadow:0 0 0 5px var(--bg)}.ims-workflow span{font:11px var(--font-mono);color:var(--accent)}.ims-workflow h3{margin-top:16px}.ims-workflow p{font-size:.85rem;line-height:1.8}
.ims-screen-section{background:var(--bg-2)}.ims-screen-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ims-screen-grid figure{margin:0;min-width:0;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--surface-solid);transition:transform .35s}.ims-screen-grid figure:hover{transform:translateY(-5px)}.ims-screen-grid img{display:block;width:100%;aspect-ratio:1519/814;object-fit:contain}.ims-screen-grid figcaption{padding:24px;font-size:.86rem;color:var(--ink-soft)}.ims-screen-grid figcaption strong{display:block;margin-bottom:8px;font-size:1rem;color:var(--ink)}
.ims-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ims-access-card{border:1px solid var(--line);border-radius:18px;padding:38px;background:var(--surface-solid)}.ims-access-card:last-child{border-color:var(--accent);background:linear-gradient(140deg,var(--surface-solid),var(--bg-2))}.ims-access-label{font:11px var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent);display:block;margin-bottom:20px}.ims-access-card .btn{margin-top:20px}.ims-access-card p{font-size:.94rem}
.ims-faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.ims-product-page .faq-item{border-radius:0;background:transparent;box-shadow:none;border:0;border-bottom:1px solid var(--line);padding:22px 0;margin:0}.ims-product-page .faq-item summary{font-size:.96rem}.ims-product-page .faq-item p{font-size:.9rem;line-height:1.9}
.ims-final{background:#102d3d!important;color:#f1f8fa}.ims-final .container{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:center}.ims-final h2{color:#f1f8fa}.ims-final p{color:#bad0d9;max-width:570px}.ims-final .eyebrow{color:#7ad9ca!important}.ims-final .hero-actions{justify-content:flex-end;margin:0}.ims-final .btn-primary{background:#72dcc9!important;color:#0a2630!important}.ims-final .btn-ghost{background:transparent!important;color:#f1f8fa!important;border-color:#46616e!important}
.ims-product-page [id]{scroll-margin-top:110px}
@keyframes ims-float{0%,100%{translate:0 0}50%{translate:0 -8px}}
@keyframes ims-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.ims-hero-layout>div{animation:ims-enter .8s both}.ims-hero-visual{animation-delay:.12s!important}
@media(min-width:900px){.ims-product-page .ims-hero .container{max-width:1280px}}
@media(max-width:1000px){.ims-hero-layout{grid-template-columns:1fr;gap:55px}.ims-hero h1{max-width:780px;font-size:clamp(2.6rem,6vw,4.6rem)}.ims-hero-visual{max-width:850px}.ims-browser{transform:none}.ims-float-note{right:15px}.ims-cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ims-cap-card:last-child{grid-column:span 2}.ims-workflow{grid-template-columns:repeat(3,1fr);row-gap:32px}.ims-faq-layout{gap:35px}.ims-final .container{grid-template-columns:1fr}.ims-final .hero-actions{justify-content:flex-start}}
@media(max-width:650px){.container{padding-inline:20px}.ims-product-page section{padding:68px 0}.ims-hero{padding-top:110px!important;padding-bottom:65px!important}.ims-breadcrumb{margin-bottom:28px;font-size:.7rem}.ims-hero h1{font-size:clamp(2.35rem,10vw,3.5rem)}.ims-hero-layout{gap:36px}.ims-float-note{position:relative;right:auto;bottom:auto;margin:16px 0 0;animation:none}.ims-browser-top span{font-size:8px}.ims-hero .hero-actions{flex-direction:column}.ims-proof .container{grid-template-columns:1fr;gap:18px}.ims-proof-item span{max-width:none}.ims-proof-item strong{min-width:48px}.ims-jumpnav{gap:20px;padding-block:18px}.ims-pain-grid,.ims-cap-grid,.ims-screen-grid,.ims-access-grid,.ims-faq-layout{grid-template-columns:1fr}.ims-cap-card:last-child{grid-column:auto;display:block}.ims-cap-card:last-child p{margin-top:14px}.ims-cap-card:last-child .ims-icon{display:grid}.ims-workflow{grid-template-columns:1fr;gap:0}.ims-workflow article{border-top:0;border-left:2px solid var(--line);padding:0 0 30px 25px}.ims-workflow article::before{left:-6px;top:4px}.ims-workflow h3{margin-top:8px}.ims-pain-card,.ims-access-card,.ims-cap-card{padding:26px}.ims-section-heading{margin-bottom:30px}.ims-final .hero-actions{flex-direction:column}.ims-faq-layout{gap:20px}.site-footer .footer-grid{gap:30px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ims-browser{transform:none}.ims-cap-card:hover,.ims-screen-grid figure:hover,.btn:hover{transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
.nav-inner{border:0;box-shadow:none}.ims-hero{padding-top:65px!important}.ims-hero h1{font-size:clamp(2.45rem,4.1vw,3.45rem)}
.reveal,.reveal.zoom,.reveal.slide-left,.reveal.slide-right{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:ims-page-out .14s both}::view-transition-new(root){animation:ims-page-in .22s both}}
@keyframes ims-page-out{to{opacity:0}}@keyframes ims-page-in{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}
@media(max-width:650px){.ims-hero{padding-top:45px!important}.ims-hero h1{font-size:clamp(2.2rem,9.5vw,3.1rem)}}
