/* LAB V3 — fine polish on top of Antigravity design language */
:root{--glow-blue-1:rgba(17,35,151,.15);--glow-blue-2:rgba(30,55,199,.24);--glow-blue-3:rgba(43,81,255,.30);--glow-blue-4:rgba(55,120,255,.34)}
/* Gentle left-right blue atmospheric glows increase down the page */
.page-home #main>section{isolation:isolate;position:relative}
.page-home #main>section::before{content:"";position:absolute;pointer-events:none;width:min(56vw,780px);height:min(70vw,820px);border-radius:50%;filter:blur(90px);opacity:.85;z-index:-1;animation:ambientDrift 18s ease-in-out infinite alternate}
.page-home .hero--refined::before{background:radial-gradient(ellipse,var(--glow-blue-1),transparent 69%);right:-20%;top:1%;animation-duration:22s}
.page-home .quick-offers::before{background:radial-gradient(ellipse,var(--glow-blue-2),transparent 72%);left:-29%;top:-5%;animation-duration:25s;animation-direction:alternate-reverse}
.page-home .mylab-reveal::before{background:radial-gradient(ellipse,var(--glow-blue-3),transparent 74%);right:-24%;top:10%;animation-duration:28s}
.page-home .cards-coming::before{background:radial-gradient(ellipse,var(--glow-blue-4),transparent 73%);left:-25%;top:-4%;animation-duration:24s}
.page-home .reviews-teaser::before{background:radial-gradient(ellipse,rgba(72,142,255,.38),transparent 70%);right:-26%;top:5%;animation-duration:30s}
@keyframes ambientDrift{0%{transform:translate3d(-20px,20px,0) scale(.91)}50%{transform:translate3d(18px,-20px,0) scale(1.08)}100%{transform:translate3d(-8px,32px,0) scale(1.01)}}
/* New original asset, no screenshot edges. Stronger true parallelogram silhouette. */
.hero--refined .hero__visual{position:relative;isolation:isolate;padding:1.2rem 0}
.hero--refined .hero__visual::before{content:"";position:absolute;inset:12% -12% 8% 0%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,rgba(58,98,254,.35),rgba(26,48,207,.16) 45%,transparent 74%);filter:blur(50px);animation:heroAura 13s ease-in-out infinite alternate}
@keyframes heroAura{from{opacity:.58;transform:translate(-20px,12px) scale(.95)}to{opacity:1;transform:translate(30px,-20px) scale(1.1)}}
.hero--refined .hero-rhombus{width:min(100%,31rem);aspect-ratio:499/850;clip-path:polygon(0 0,82% 0,100% 100%,18% 100%);overflow:hidden;filter:none;will-change:transform;}
.hero--refined .hero-rhombus img{display:block;width:100%;height:100%;object-fit:fill;object-position:center;transform:none;transition:transform 1.7s cubic-bezier(.2,.72,.18,1)}
.hero--refined .hero__visual:hover .hero-rhombus img{transform:scale(1.035)}
.hero--refined .hero__fine-orbit{display:none}
@media(min-width:1000px){.hero--refined{min-height:clamp(760px,93svh,960px)}.hero--refined .hero__grid{grid-template-columns:1.08fr .77fr;gap:clamp(2rem,5vw,6rem)}.hero--refined .hero-rhombus{width:min(100%,30rem)}}
@media(max-width:999px){.hero--refined .hero-rhombus{width:min(78vw,29rem);aspect-ratio:499/850}}
@media(max-width:600px){.hero--refined .hero-rhombus{width:min(78vw,22rem)}.hero--refined .hero__visual{padding:1.2rem 0 0}}
/* Offers — slow, continuous background transitions, no instant gradient swapping */
.quick-offers{overflow:hidden}.offer-tile{overflow:hidden;background:transparent!important;transition:padding 1.05s cubic-bezier(.2,.76,.2,1),color .85s ease}
.offer-tile::before{content:"";position:absolute;inset:0;opacity:0;z-index:-1;background:linear-gradient(100deg,rgba(45,67,183,.24),rgba(31,49,134,.12) 50%,transparent);transition:opacity 1.25s cubic-bezier(.2,.7,.2,1)}
.offer-tile:hover::before,.offer-tile:focus-visible::before{opacity:1}
.offer-tile__icon,.offer-tile__arrow{transition:transform 1.05s cubic-bezier(.2,.7,.2,1),background-color .95s ease,color .95s,border-color .95s ease}
/* Updated transparent logo centered above myLAB intro */
.mylab-reveal__head{max-width:70rem;margin-inline:auto;text-align:center}
.mylab-reveal__logo{height:auto;width:clamp(9rem,13vw,13rem);max-height:5rem;margin:0 auto 2.5rem;object-fit:contain;object-position:center}
.mylab-reveal__head .display{margin-inline:auto;max-width:16ch}
.mylab-reveal__head .lead{margin-inline:auto;max-width:54rem}
.mylab-reveal__head .eyebrow{justify-content:center}
/* Fully aligned menu and detail panel, click switch is a calm crossfade, not full repaint */
.feature-showcase{align-items:stretch;gap:1.35rem}
.feature-switches{height:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;align-content:stretch}
.feature-switch{border-radius:.95rem;justify-content:flex-start;min-width:0;transition:background-color .8s cubic-bezier(.2,.75,.2,1),border-color .8s cubic-bezier(.2,.75,.2,1),box-shadow .8s,transform .7s}
.feature-switch.is-active{background:#2e42ca;box-shadow:inset 0 0 0 1px rgba(190,203,255,.45),0 12px 24px -15px rgba(73,103,255,.75)}
.feature-panel{min-height:570px;align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(0,.72fr)}
.feature-panel.is-switching{animation:none!important}
.feature-panel__content,.feature-panel__visual{transition:opacity .32s ease,transform .62s cubic-bezier(.19,.7,.22,1)}
.feature-panel.is-leaving .feature-panel__content,.feature-panel.is-leaving .feature-panel__visual{opacity:0;transform:translate3d(0,10px,0)}
.feature-panel.is-entering .feature-panel__content,.feature-panel.is-entering .feature-panel__visual{opacity:0;transform:translate3d(0,10px,0)}
.feature-panel__content{display:flex;flex-direction:column;justify-content:center;min-width:0}
.feature-panel__content>p[data-feature-description]{min-height:0}
.feature-points{margin-bottom:1rem}
.feature-panel__visual{background:radial-gradient(25rem 26rem at 55% 50%,rgba(67,95,254,.25),transparent 72%)}
.ui-mock{min-height:21rem;justify-content:flex-start;transform:none}
.feature-panel:hover .ui-mock{transform:translateY(-4px)}
.feature-preview{width:100%;display:grid;place-items:center;min-height:14rem;flex:1;padding:1rem 0}
.preview-chat{display:grid;gap:.7rem;width:100%}.preview-chat span{max-width:95%;padding:.85rem 1rem;border-radius:1rem;background:rgba(105,133,255,.18);font-size:.8rem;line-height:1.55}.preview-chat span:first-child{justify-self:end;background:rgba(206,217,255,.11)}.preview-chat span:last-child{justify-self:start;background:rgba(46,79,235,.3)}
.preview-stack{display:grid;gap:.7rem;width:100%}.preview-chip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid rgba(175,187,255,.18);border-radius:.8rem;background:rgba(78,107,245,.1);padding:.8rem 1rem;font-size:.82rem}.preview-chip b{color:#bccaff}
.preview-card{width:100%;aspect-ratio:1.5;display:grid;place-items:center;border:1px solid rgba(181,198,255,.4);border-radius:1.2rem;background:linear-gradient(140deg,#263c94,#111a49);box-shadow:0 12px 34px rgba(0,0,0,.18);text-align:center;padding:1rem}.preview-card h4{font:600 1.8rem/1.2 var(--font-display);color:white}.preview-card span{font-size:.72rem;color:#bccbff}.preview-math{width:100%;display:grid;gap:.85rem}.preview-math div{border:1px solid rgba(182,200,255,.2);border-radius:.7rem;padding:.8rem 1rem;color:#e8eeff;font-size:.85rem}.preview-math div:last-child{border-color:rgba(122,170,255,.55);background:rgba(60,94,209,.25)}
.preview-grade{width:100%;display:grid;gap:.65rem;text-align:left}.preview-grade .big-grade{font:600 3.7rem/1 var(--font-display);color:#dbe6ff}.preview-grade .grade-bars{display:flex;align-items:end;gap:.45rem;height:6rem}.preview-grade .grade-bars i{display:block;flex:1;border-radius:.45rem .45rem 0 0;background:linear-gradient(0deg,#273fc2,#89b0ff)}.preview-grade .grade-foot{display:flex;justify-content:space-between;font-size:.73rem;color:#c6d4ff}
.mylab-reveal__cta{display:flex;justify-content:center;align-items:center;gap:1.2rem;flex-direction:column;margin-top:clamp(2rem,4vw,3.5rem)}
.mylab-reveal__cta>span{color:var(--text-3);font-size:.75rem;text-align:center}
@media(min-width:1080px){.feature-showcase{grid-template-columns:minmax(12rem,.29fr) minmax(0,1fr)}.feature-switches{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(9,minmax(0,1fr));gap:.48rem}.feature-switch{width:100%;min-height:0;padding:.64rem .9rem}.feature-panel{min-height:616px}.feature-panel__content{padding:clamp(1.2rem,2.2vw,2.5rem)}.feature-panel .display{font-size:clamp(2.5rem,3.2vw,3.9rem)}}
@media(min-width:700px) and (max-width:1079px){.feature-panel{grid-template-columns:1fr .75fr}}
@media(max-width:699px){.feature-showcase{gap:.9rem}.feature-switches{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-panel{grid-template-columns:1fr;min-height:0}.feature-panel__visual{min-height:250px}.ui-mock{width:min(100%,25rem);min-height:17rem}}
@media(max-width:410px){.feature-switch{font-size:.72rem;padding:.65rem .55rem;gap:.35rem}.feature-switch__symbol{width:1rem}}
/* Each founder as alternating editorial portrait + copy */
.team-story{padding-block:clamp(4rem,7vw,8rem)}.team-profile{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.2fr);gap:clamp(2rem,8vw,9rem);align-items:center;padding:clamp(4rem,8vw,7rem) 0;border-top:1px solid var(--line)}
.team-profile--reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,.72fr)}.team-profile--reverse .team-profile__portrait{order:2}.team-profile--reverse .team-profile__copy{order:1}
.team-profile__portrait{width:min(100%,23rem);aspect-ratio:1;justify-self:center;position:relative}.team-profile__portrait::before{content:"";position:absolute;inset:-15%;background:radial-gradient(circle,rgba(56,93,241,.26),transparent 65%);filter:blur(36px);z-index:-1;animation:ambientDrift 18s ease-in-out infinite alternate}.team-profile__portrait img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:1px solid rgba(170,192,255,.25);transition:transform 1.3s var(--ease),filter 1.3s}.team-profile:hover img{transform:scale(1.035)}
.team-profile__copy{max-width:46rem}.team-profile__copy .display{margin:1.2rem 0 1.8rem}.team-profile__copy p:not(.eyebrow){line-height:1.9;font-size:clamp(.95rem,1.15vw,1.08rem)}.team-profile__copy p:not(.eyebrow)+p{margin-top:1.3rem}
@media(max-width:780px){.team-profile,.team-profile--reverse{grid-template-columns:1fr;gap:2rem;padding:3.2rem 0}.team-profile--reverse .team-profile__portrait,.team-profile--reverse .team-profile__copy{order:unset}.team-profile__portrait{width:min(63vw,17rem);justify-self:start}}
/* Individual offer narratives */
.offer-detail{border-top:1px solid var(--line);overflow:hidden}.offer-detail__layout{display:grid;grid-template-columns:1.05fr .8fr;gap:clamp(3rem,7vw,8rem);align-items:center}.offer-detail__copy .display{margin:1.5rem 0 2rem}.offer-detail__copy p:not(.eyebrow){font-size:clamp(.95rem,1.12vw,1.12rem);line-height:1.85;max-width:40rem}.offer-detail__copy p+p{margin-top:1.4rem}.offer-detail__copy .btn{margin-top:2.5rem}.offer-detail__logo{width:clamp(8rem,15vw,12rem);height:auto;display:block;margin-top:1.5rem}.offer-detail__external{display:inline-flex;margin-left:1.2rem}.offer-detail__art{height:clamp(26rem,40vw,38rem);display:grid;place-items:center;position:relative;isolation:isolate}.offer-orbit{position:absolute;border-radius:50%;filter:blur(40px);width:65%;height:65%;background:rgba(35,70,247,.27);z-index:-1;animation:ambientDrift 17s ease-in-out infinite alternate}.offer-orbit--two{left:10%;top:12%;background:rgba(61,120,245,.12)}.offer-device{width:90%;max-width:28rem;min-height:19rem;background:linear-gradient(150deg,rgba(27,43,112,.96),rgba(9,15,44,.96));border:1px solid rgba(158,177,255,.36);border-radius:2rem;padding:clamp(1.6rem,3vw,3rem);box-shadow:0 30px 100px rgba(0,0,0,.25);transform:rotate(-3deg);transition:transform 1.1s var(--ease)}.offer-device:hover{transform:rotate(0) translateY(-6px)}.offer-device__caption{font-size:.66rem!important;letter-spacing:.14em;color:#b3c8ff}.offer-device__title{font:600 clamp(2.2rem,4vw,4rem)/1.07 var(--font-display);margin:2rem 0}.offer-device__title em{color:var(--sand)}.offer-device__chips{display:flex;gap:.5rem;flex-wrap:wrap}.offer-device__chips span{border:1px solid rgba(166,185,255,.2);border-radius:100px;padding:.45rem .75rem;font-size:.66rem}.offer-device__graph{display:flex;align-items:end;gap:1rem;height:3rem;margin-top:1.8rem}.offer-device__graph i{flex:1;background:rgba(94,128,255,.47);border-radius:.2rem .2rem 0 0}.offer-device__graph i:nth-child(1){height:45%}.offer-device__graph i:nth-child(2){height:70%}.offer-device__graph i:nth-child(3){height:55%}.offer-device__graph i:nth-child(4){height:94%;background:#759bff}.offer-detail--cards .cards-coming__visual{min-height:30rem}.offer-detail--cards .coming-pill{margin-top:2rem}
@media(max-width:850px){.offer-detail__layout{grid-template-columns:1fr;gap:1.6rem}.offer-detail__art{height:26rem}.offer-detail__external{display:flex;margin:1.5rem 0 0}.offer-detail--cards .cards-coming__visual{min-height:24rem}}
/* Reviews: real persistence comes from PHP endpoint, never fake success */
.review-trap{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;left:-9999px}.reviews-live{margin-top:clamp(3rem,6vw,5rem);border-top:1px solid var(--line);padding-top:3rem}.reviews-live>.display{margin-bottom:2rem}.reviews-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem}.review-user-card{border:1px solid rgba(147,160,241,.24);border-radius:1.5rem;padding:clamp(1.5rem,3vw,2.4rem);background:linear-gradient(140deg,rgba(22,34,82,.8),rgba(10,16,39,.9));animation:reviewAppear .8s var(--ease) both}.review-user-card__stars{color:#eac48c;letter-spacing:.1em;font-size:1.2rem}.review-user-card__body{color:#dce2f4;line-height:1.75;margin:1.3rem 0;white-space:pre-wrap;overflow-wrap:anywhere}.review-user-card__by{color:#9eaccf;font-size:.77rem}.review-status--error{color:#ffc0be}.review-status--good{color:#a8eac8}@keyframes reviewAppear{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* Fuller-width professional legal pages */
.page-legal .legal-hero{padding-bottom:clamp(2rem,3vw,3rem)}.page-legal .legal-hero .container--wide{max-width:90rem}.page-legal .legal-hero h1{font-size:clamp(3.4rem,7vw,6.5rem);max-width:21ch}.page-legal .legal-hero>.container--wide>p.lead{font-size:.94rem;margin-top:1.25rem}.legal-doc{max-width:90rem!important}.page-legal .legal-content{padding-top:clamp(1rem,2vw,2rem)}.legal-doc .legal-article{padding:clamp(2rem,4vw,3rem) 0;max-width:90rem}.legal-doc .legal-article h2{font:600 clamp(1.9rem,3vw,2.75rem)/1.16 var(--font-display);max-width:35rem}.legal-doc .legal-article p{font-size:clamp(.96rem,1.14vw,1.075rem);max-width:80rem;line-height:1.9}.page-legal .legal-jumps,.page-legal .legal-warning{display:none}.legal-doc .legal-article:first-child{border-top:0;padding-top:.5rem}
/* Footer exactly aligns with main 90rem wide content, social icons are actual brand glyphs */
.site-footer.site-footer--simple .footer-shell{max-width:90rem;width:min(100% - (var(--gutter) * 2),90rem);margin-inline:auto;padding:clamp(2.4rem,4vw,3.5rem) 0 1.35rem}
.footer-shell__top{min-height:11rem}.footer-shell__bottom{justify-content:flex-start;gap:2.25rem}.footer-shell__bottom nav{margin-left:auto}.footer-shell__social{display:flex;gap:1.25rem}.footer-shell__social a{display:grid;place-items:center;width:2rem;height:2rem}.footer-shell__social img{display:block;width:1.5rem;height:1.5rem;object-fit:contain;transition:filter .6s,transform .6s var(--ease)}.footer-shell__social a:hover img{filter:drop-shadow(0 0 9px rgba(178,200,255,.55));transform:translateY(-3px) scale(1.05)}
@media(max-width:650px){.footer-shell__bottom nav{margin-left:0}}
@media(prefers-reduced-motion:reduce){.page-home #main>section::before,.hero--refined .hero__visual::before,.team-profile__portrait::before{animation:none!important}.feature-panel__content,.feature-panel__visual{transition:none!important}}
/* Keep oversized animated atmospheres within viewport without cutting off content */
html,body{max-width:100%;overflow-x:clip}
.page-home #main>section{overflow-x:clip}
