/* PreclinIQ website. © 2026 Dr. Ambuj Shahi. All rights reserved. */
:root{--ink:#15383D;--ink2:#3F5A5E;--muted:#5E7275;--teal:#1D6872;--teal-l:#8FD3CB;--orange:#C0582A;--orange-l:#F3A27B;--paper:#FBF8F2;--paper2:#F2EDE3;--line:#E3DDD0;--dark:#103236;--white:#fff;
  --serif:Cambria,Caladea,Georgia,'Times New Roman',serif;--sans:'Segoe UI',system-ui,-apple-system,Roboto,Arial,sans-serif;--r:14px;--shadow:0 24px 50px -24px rgba(16,50,54,.45)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:var(--teal)}a:hover{color:var(--ink)}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.1;margin:0;color:var(--ink)}h1 em,h2 em{color:var(--teal)}
.kick{font:700 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:10px;margin:0 0 12px}.kick:before{content:"";width:28px;height:3px;border-radius:2px;background:var(--orange)}
.lead{font-size:1.15rem;color:var(--ink2);max-width:640px}
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:10px;padding:12px 20px;font:600 1rem var(--sans);text-decoration:none;border:1.5px solid var(--teal);color:var(--teal);background:transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(16,50,54,.6);color:var(--teal)}
.btn.pri{background:var(--teal);color:#fff}.btn.pri:hover{color:#fff;background:#18575f}
.btn.light{border-color:rgba(255,255,255,.5);color:#fff}.btn.light:hover{color:#fff;background:rgba(255,255,255,.08)}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px;border-radius:6px}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(251,248,242,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.sc{border-color:var(--line)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;height:66px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand svg{width:34px;height:34px}.brand b{font:700 1.45rem var(--serif)}.brand b i{font-style:normal;color:var(--teal)}
.nav{display:flex;align-items:center;gap:22px}.nav a{text-decoration:none;color:var(--ink2);font-weight:500}.nav a:hover{color:var(--teal)}.nav .btn{padding:8px 16px;color:#fff}
.menu{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}.menu svg{width:26px;height:26px;stroke:var(--ink);stroke-width:2;fill:none;stroke-linecap:round}
@media (max-width:860px){.menu{display:block}.nav{position:absolute;top:66px;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 18px;border-bottom:1px solid var(--line);display:none}.nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid var(--line)}.nav .btn{margin-top:12px;justify-content:center}}
/* hero */
.hero{padding:64px 0 40px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(2.4rem,5.4vw,4rem);letter-spacing:-.01em}
.hero .lead{margin:20px 0 28px}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.note{margin-top:14px;font-size:.92rem;color:var(--muted)}
.heroimg{position:relative}.heroimg .win{background:#fff;border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line);transform:rotate(1.2deg)}
.win .bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:var(--dark);color:#CBE0DD;font-size:.78rem}.win .bar i{width:10px;height:10px;border-radius:50%;background:var(--orange-l)}.win .bar i+i{background:var(--teal-l)}.win .bar i+i+i{background:#CBE0DD}.win .bar span{margin-left:8px;font-weight:600}
.badge{position:absolute;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;box-shadow:var(--shadow);font-size:.85rem;color:var(--ink2);display:flex;gap:10px;align-items:center}
.badge b{display:block;color:var(--ink);font-size:1rem}.badge .dot{width:34px;height:34px;border-radius:10px;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;font:700 .9rem var(--sans)}
.b1{left:-22px;bottom:-18px}.b2{right:-14px;top:-18px}.b2 .dot{background:var(--orange)}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr}.b1{left:6px}.b2{right:6px}}
/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:38px 0 10px}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px}.stat b{display:block;font:700 2.3rem/1 var(--serif);color:var(--teal)}.stat span{color:var(--ink2);font-size:.95rem}
@media (max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}}
/* sections */
section.s{padding:76px 0}section.alt{background:var(--paper2)}section.dk{background:var(--dark);color:#EAF4F2}section.dk h2,section.dk h3{color:#fff}section.dk h2 em{color:var(--teal-l)}section.dk .lead{color:#B5CFCC}
.sh{max-width:720px;margin-bottom:34px}.sh h2{font-size:clamp(1.9rem,3.6vw,2.7rem)}.sh .lead{margin-top:14px}
/* tour */
.tour{display:grid;grid-template-columns:1.65fr 1fr;gap:26px;align-items:center}
.tour .win{transform:none}.tour .stage{position:relative;aspect-ratio:1200/750;background:#fff}
.tour .stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(1.025);transition:opacity .7s,transform 4.2s ease-out}.tour .stage img.on{opacity:1;transform:none}
.prog{height:3px;background:rgba(143,211,203,.25)}.prog b{display:block;height:100%;background:var(--orange-l);transform-origin:left;animation:prog 4.2s linear infinite}.paused .prog b{animation-play-state:paused}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.steps button{width:100%;display:flex;gap:12px;text-align:left;background:none;border:1px solid transparent;border-radius:12px;padding:12px;color:#EAF4F2;font:inherit;cursor:pointer}
.steps button:hover{background:rgba(255,255,255,.05)}.steps button[aria-pressed="true"]{background:rgba(255,255,255,.08);border-color:rgba(143,211,203,.4)}
.steps .n{flex:none;width:30px;height:30px;border-radius:9px;background:rgba(143,211,203,.18);color:var(--teal-l);display:flex;align-items:center;justify-content:center;font-weight:700}
.steps button[aria-pressed="true"] .n{background:var(--orange-l);color:var(--dark)}
.steps b{display:block}.steps small{display:block;color:#B5CFCC;font-size:.88rem;line-height:1.4;margin-top:2px}
@media (max-width:860px){.tour{grid-template-columns:1fr}}
/* features */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin-bottom:76px}.feat:last-child{margin-bottom:0}
.feat.rev .ft-img{order:2}
.ft-img{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:10px;box-shadow:var(--shadow)}
.ft-img.duo{display:grid;gap:10px;background:none;border:0;padding:0;box-shadow:none}.ft-img.duo img{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:8px;box-shadow:var(--shadow)}
.feat h3{font-size:1.9rem}.feat p{color:var(--ink2)}
.ticks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.ticks li{display:flex;gap:10px;align-items:flex-start}.ticks li:before{content:"";flex:none;width:20px;height:20px;margin-top:3px;border-radius:6px;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/14px no-repeat}
.tag{display:inline-block;font:700 .72rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--teal);background:rgba(29,104,114,.1);border-radius:6px;padding:4px 9px;margin-bottom:10px}
.small{font-size:.86rem;color:var(--muted)}
@media (max-width:860px){.feat{grid-template-columns:1fr;gap:22px}.feat.rev .ft-img{order:0}}
/* grid of mini charts */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px}.card img{border-radius:8px}.card h3{font-size:1.2rem;margin:12px 0 4px}.card p{margin:0;color:var(--ink2);font-size:.95rem}
@media (max-width:860px){.grid3{grid-template-columns:1fr}}
/* who + trust */
.who{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.who .card b{display:block;font:700 1.15rem var(--serif);margin-bottom:6px}
@media (max-width:900px){.who{grid-template-columns:1fr 1fr}}@media (max-width:560px){.who{grid-template-columns:1fr}}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.trust .card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:#DCEFEC}.trust h3{color:#fff;font-size:1.25rem;margin:0 0 6px}
@media (max-width:860px){.trust{grid-template-columns:1fr}}
/* brochure strip */
.bstrip{display:flex;gap:14px;overflow-x:auto;padding:6px 2px 18px;scroll-snap-type:x mandatory}.bstrip a{flex:none;width:170px;scroll-snap-align:start;text-decoration:none;color:var(--ink2);font-size:.85rem;text-align:center}.bstrip img{border-radius:6px;box-shadow:0 12px 24px -14px rgba(0,0,0,.5);margin-bottom:8px;transition:transform .2s}.bstrip a:hover img{transform:translateY(-4px)}
/* pricing */
.price{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:stretch}
.pcard{background:var(--dark);color:#EAF4F2;border-radius:20px;padding:32px;position:relative;overflow:hidden}
.pcard .off{display:inline-block;background:var(--orange);color:#fff;font-weight:700;border-radius:8px;padding:5px 12px;font-size:.9rem}
.pcard .amt{font:700 4.2rem/1 var(--serif);color:#fff;margin-top:16px}.pcard .amt s{font:600 1.4rem var(--sans);color:#B5CFCC;margin-left:12px}
.pcard .per{color:#B5CFCC;margin-top:8px}.pcard .ticks li{color:#DCEFEC}.pcard .ticks li:before{background-color:var(--orange-l)}
.pcard .cta{margin-top:26px}
.pside{display:flex;flex-direction:column;gap:16px}.pside .card h3{font-size:1.2rem;margin:0 0 6px}
@media (max-width:860px){.price{grid-template-columns:1fr}}
/* steps 3 */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:s}.three .card{position:relative;padding-top:52px}.three .card:before{counter-increment:s;content:counter(s);position:absolute;left:16px;top:14px;width:30px;height:30px;border-radius:9px;background:var(--teal);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.three h3{font-size:1.2rem;margin:0 0 6px}@media (max-width:760px){.three{grid-template-columns:1fr}}
/* faq */
.faq{max-width:820px}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:0 18px}.faq summary{cursor:pointer;list-style:none;padding:16px 28px 16px 0;font-weight:600;position:relative}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:0;top:12px;font-size:1.5rem;color:var(--teal)}.faq details[open] summary:after{content:"–"}.faq details p{margin:0 0 16px;color:var(--ink2)}
/* download */
.dl{display:grid;grid-template-columns:1fr 1fr;gap:26px}.req{width:100%;border-collapse:collapse;font-size:.95rem}.req td{padding:9px 0;border-bottom:1px solid var(--line)}.req td:first-child{font-weight:600;width:42%}
code.hash{display:block;word-break:break-all;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:.78rem;color:var(--ink2)}
@media (max-width:860px){.dl{grid-template-columns:1fr}}
/* contact */
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:30px}
form.cf{display:grid;gap:12px}form.cf label{display:grid;gap:5px;font-weight:600;font-size:.92rem}
form.cf input,form.cf textarea,form.cf select{font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}form.cf textarea{min-height:120px;resize:vertical}
form.cf input:focus,form.cf textarea:focus,form.cf select:focus{outline:2px solid var(--teal);outline-offset:1px}
@media (max-width:860px){.contact{grid-template-columns:1fr}}
/* footer */
footer{background:var(--dark);color:#B5CFCC;padding:46px 0 30px;font-size:.92rem}footer a{color:#DCEFEC;text-decoration:none}footer a:hover{color:#fff;text-decoration:underline}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:26px}.fgrid h4{color:#fff;margin:0 0 10px;font-size:.95rem}.fgrid ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.fbot{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
footer .brand{color:#fff}footer .brand b i{color:var(--teal-l)}
@media (max-width:760px){.fgrid{grid-template-columns:1fr 1fr}}
/* reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transform:none}.tour .stage img,.btn{transition:none}.prog{display:none}}
/* legal pages */
.legal{max-width:820px;padding:56px 20px 80px;margin:0 auto}.legal h1{font-size:2.6rem}.legal h2{font-size:1.45rem;margin:34px 0 8px}.legal p,.legal li{color:var(--ink2)}.legal .upd{color:var(--muted);font-size:.92rem}
.draft{background:#FFF4EC;border:1px solid #F0CDB6;border-radius:10px;padding:12px 16px;color:#6A3A1F;font-size:.95rem;margin:18px 0}
.ph{background:#FFF1C9;border-radius:4px;padding:0 4px}
.hero .wrap.hs{display:block}
/* tools */
.tool h2{font-size:1.6rem;margin:0 0 6px}.tform{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.tform .trow{grid-column:1/-1}
.tool label{display:grid;gap:4px;font-weight:600;font-size:.88rem;color:var(--ink2)}.tool textarea,.tool input,.tool select{font:14px/1.4 var(--sans);padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.tool textarea{font-family:Consolas,monospace;font-size:13px;resize:vertical}
.trow{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-top:12px}.trow input{width:130px}
.tgrid{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:18px}.tgrid h4{margin:0 0 6px}.tt{width:100%;border-collapse:collapse;font-size:.92rem}.tt td,.tt th{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.tt .n{text-align:right}.tt tr.warn td{background:#FFF4EC}.tt small{color:#A64B14}
#elPlot svg{width:100%;max-width:620px;height:auto;margin-top:14px}
.ssres{display:flex;align-items:baseline;gap:12px;margin-top:16px}.ssres b{font:700 3.2rem/1 var(--serif);color:var(--teal)}
@media (max-width:760px){.tform,.tgrid{grid-template-columns:1fr}}
/* articles */
.art h1{font-size:clamp(2rem,4vw,2.8rem)}.art ul,.art ol{padding-left:22px}.art li{margin:6px 0}.artcta{margin:30px 0 14px;background:rgba(29,104,114,.08);border-radius:12px;padding:14px 18px}
.atable{width:100%;border-collapse:collapse;font-size:.92rem;margin:14px 0;display:block;overflow-x:auto}.atable th{background:var(--teal);color:#fff;text-align:left;padding:8px}.atable td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
.lcard{text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}.lcard:hover{transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}.lcard h3{font-size:1.25rem;margin:6px 0}
/* tutorials, releases */
.tut{margin-bottom:18px}.tutg{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:center}.tut h2{font-size:1.5rem;margin:4px 0 8px}.tut ol{padding-left:20px}.tut li{margin:6px 0}.tut img{border-radius:10px;border:1px solid var(--line)}
@media (max-width:760px){.tutg{grid-template-columns:1fr}}
.rel h2{font-size:1.5rem;margin:0 0 6px}
[lang="hi"] .kick{letter-spacing:0;text-transform:none;font-size:.95rem}
/* design pass: font, calmer hero, rhythm */
@font-face{font-family:'Source Sans 3';font-weight:400;font-display:swap;src:url(fonts/source-sans-3-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-weight:600;font-display:swap;src:url(fonts/source-sans-3-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-weight:700;font-display:swap;src:url(fonts/source-sans-3-latin-700-normal.woff2) format('woff2')}
:root{--sans:'Source Sans 3','Segoe UI',system-ui,-apple-system,Roboto,Arial,sans-serif}
body{font-size:18px}
.hero2{padding:72px 0 30px;text-align:center;background:radial-gradient(1200px 500px at 50% -10%,rgba(143,211,203,.22),transparent 70%)}
.hero2 .wrap{display:block}
.hero2 .htxt{max-width:760px;margin:0 auto}.hero2 .kick{justify-content:center}.hero2 .lead{margin:20px auto 30px}
.hero2 h1{font-size:clamp(2.6rem,6vw,4.6rem)}
.hero2 .cta{justify-content:center;align-items:center;gap:22px}
.btn.big{padding:15px 26px;font-size:1.08rem;border-radius:12px}
.tlink{font-weight:600;text-decoration:none;color:var(--teal)}.tlink:hover{text-decoration:underline}
.hero2 .heroimg{max-width:1000px;margin:46px auto 0}.hero2 .heroimg .win{transform:none;box-shadow:0 40px 80px -40px rgba(16,50,54,.55),0 0 0 1px rgba(16,50,54,.06)}
.ft-img img{border-radius:8px}
section.s.tint{background:#E6F0EE}
/* theme-matched grid background (same 22px grid as the program) */
:root{--gridc:rgba(29,104,114,.085)}
.hero2,.tint{position:relative;isolation:isolate}
.hero2::before,.tint::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--gridc) 1px,transparent 1px),linear-gradient(90deg,var(--gridc) 1px,transparent 1px);background-size:22px 22px;background-position:center top}
.hero2::before{-webkit-mask-image:linear-gradient(#000 0%,#000 45%,transparent 92%);mask-image:linear-gradient(#000 0%,#000 45%,transparent 92%)}
.tint::before{-webkit-mask-image:radial-gradient(ellipse 80% 90% at 50% 50%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 80% 90% at 50% 50%,#000 40%,transparent 100%)}
/* phone app section */
.phones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;max-width:920px;margin:10px auto 0}
.phones figure{margin:0;text-align:center}.phones img{width:100%;height:auto;max-width:280px;filter:drop-shadow(0 26px 30px rgba(16,50,54,.22))}
.phones figcaption{font-size:.95rem;color:var(--ink2);margin-top:14px;line-height:1.4}
.steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:44px}
.steps3 .card{padding:22px}.steps3 b{display:block;color:var(--teal);margin-bottom:6px;font-size:1.02rem}
.phcta{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:30px;text-align:center}
@media (max-width:760px){.phones{grid-template-columns:repeat(3,72%);overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:10px;margin:0 -16px;padding-left:16px;padding-right:16px}.phones figure{scroll-snap-align:center}.steps3{grid-template-columns:1fr}}
