/* A shared architectural stage carries the hero and overview into the research scenes. */
.home-page{color-scheme:dark;--paper:#080e15;--paper-alt:#0c151f;--ink:#eef2f7;--secondary:#b5c1cf;--line:#ffffff25;--blue:#b3cff5;--blue-hover:#d9e8ff;--blue-pressed:#99bce9;background:var(--paper)}
.opening-scene{--frame-height:max(740px,100svh);position:relative;isolation:isolate;clip-path:inset(0);color:#eef2f7;background:#080e15}
.opening-stage{position:sticky;top:0;height:max(var(--frame-height),100svh);margin-bottom:calc(-1 * max(var(--frame-height),100svh));overflow:hidden;pointer-events:none;z-index:-1}
.opening-stage .hero-photo,.opening-stage .hero-marks{height:var(--frame-height);inset:0;bottom:0}
.opening-stage .hero-photo{z-index:0}
.opening-stage .hero-photo img,.opening-stage .hero-photo video{object-position:50% 50%}
.opening-stage::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#07101b0d 0%,#07101b00 25%,#080e154a 43%,#080e15d9 72%,#080e15ed 100%)}
.opening-stage .hero-marks{z-index:3;transition:opacity .2s}
.opening-scrolled .hero-marks{opacity:0}
.opening-scene:has(.hero.is-motion-active) .mark-enter,.opening-scene:has(.hero.is-motion-active) .mark-sweep::after{animation-play-state:running}
.hero{min-height:var(--frame-height);background:transparent;isolation:auto;overflow:visible;justify-content:flex-end}
.hero::after{display:none}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:70px;align-items:end;padding-top:380px;padding-bottom:38px}
.hero-copy{min-width:0}
.hero-intro{font-size:.6875rem;line-height:1.7;font-weight:400;letter-spacing:0;color:#c9d4e1;gap:9px;flex-wrap:wrap;margin-bottom:19px}
.hero h1{font-family:var(--mono);font-size:clamp(2.25rem,3.7vw,3.125rem);font-weight:400;line-height:1.16;letter-spacing:-.06em;text-wrap:balance;max-width:none}
.hero-summary{display:block;margin-top:21px}
.hero-description{min-width:0}
.hero-deck{font-family:var(--font);font-size:1rem;font-weight:400;line-height:1.65;letter-spacing:-.014em;color:#d0d9e4;max-width:540px;margin:0;text-wrap:pretty}
.hero-status{font-size:.75rem;line-height:1.6;color:#aebdcc;font-weight:400;margin-top:15px}
.hero-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:5px 20px;margin-top:24px}
.hero-actions .button{font-size:.8125rem;line-height:1.5;letter-spacing:-.01em;padding:12px 18px;min-height:48px}
.home-page .button-blue{background:#f3f5f7;color:#101820;border-color:#f3f5f7}
.home-page .button-blue:hover{background:#dbe4ed;border-color:#dbe4ed}
.home-page .button-blue:active{background:#bccbd9;border-color:#bccbd9}
.hero-actions .button-blue{gap:14px}
.hero-actions .button-blue svg{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.hero-actions .button-secondary{background:transparent;border-color:transparent;border-radius:8px;color:#c3d0de;justify-content:flex-start;padding:9px 0;min-height:44px;text-decoration:underline;text-decoration-color:#7a8c9f70;text-underline-offset:5px}
.hero-actions .button-secondary:hover{background:transparent;color:#fff;text-decoration-color:#c3d0de}
.hero-actions .button-secondary:active{background:#ffffff08;color:#fff}
.hero-actions .button:focus-visible{outline:2px solid #bfd7f2;outline-offset:5px}
.hero-bottom{padding-bottom:24px}
.hero-bottom .motion-control{font-size:.6875rem;min-height:44px;padding:8px 13px;background:#0c121a50;border-color:#ffffff2b;color:#b4c0ce}
.hero-bottom .motion-control:hover{color:#fff;background:#ffffff0e}

/* A single quiet rail gives transparent partner marks a consistent backdrop. */
.hero .brand-history{min-width:0;align-self:end;padding:0 0 4px;border:0;background:transparent;color:#dbe3ed}
.hero .brand-history-heading{min-height:44px;width:100%;margin:0 0 12px;gap:16px;flex-wrap:nowrap}
.hero .brand-history-heading h2{font-family:var(--mono);font-size:.6875rem;line-height:1.6;font-weight:400;letter-spacing:0;color:#b8c6d5;text-wrap:pretty;max-width:265px}
.hero .carousel-control{color:#c5d1df;border-color:#ffffff29;width:44px;padding:0;min-height:44px;border-radius:50%;background:#0c141c66}
.hero .carousel-control:hover{color:#fff;background:#ffffff14}
.hero .carousel-control span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero .logo-carousel{margin:0;width:100%;padding:0;background:#101a25ed;border-radius:12px;isolation:isolate}
.hero .logo-track{gap:12px}
.hero .logo-item{min-height:76px;min-width:max-content;flex:0 0 170px;width:170px;padding:16px 20px;justify-content:center;border:0;border-radius:0;background:transparent;color:#edf2f8;font-size:.9375rem;letter-spacing:-.02em;gap:9px;white-space:nowrap}
.hero .logo-item img{filter:brightness(0) invert(1);opacity:.94;height:var(--h,28px);width:auto;max-width:135px;object-fit:contain}
.has-carousel-motion .hero .logo-track{gap:12px;padding:0 12px 0 0;animation-duration:68s}
.has-carousel-motion .hero .logo-carousel{mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
.has-carousel-motion .hero .logo-carousel::before,.has-carousel-motion .hero .logo-carousel::after{display:none}

/* The second screen shares the facade and uses a restrained research layout. */
.opening-scene .target-section{position:relative;padding:64px 0 74px;background:transparent;border-bottom:0}
.opening-scene .target-section>.wrap{border-top:1px solid #ffffff26;padding-top:38px}
.home-page h2{font-size:clamp(1.6rem,2.3vw,2.125rem);line-height:1.22;letter-spacing:-.045em}
.home-page .section-label{font-family:var(--mono);font-size:.6875rem;line-height:1.7;font-weight:400;color:#a7b7c9;padding-top:4px}
.opening-scene .intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px}
.opening-scene .intro-grid>div>p{font-size:.9375rem;line-height:1.7;max-width:540px;margin-top:16px;color:#bdcad9}
.home-page .target-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:36px;border-top:0}
.home-page .target-list article{display:block;padding:24px 0 0;border-top:1px solid #ffffff30;border-bottom:0}
.home-page .target-list h3{font-size:1rem;line-height:1.5;font-weight:500}
.home-page .target-list .target-class{overflow-wrap:anywhere;font-family:var(--mono);font-size:.625rem;line-height:1.7;color:#a6b9ce;margin-top:7px}
.home-page .target-list article>p{overflow-wrap:anywhere;font-size:.875rem;line-height:1.75;color:#bdcad9;margin-top:18px;max-width:340px}
.home-page .lab-scope{font-size:.75rem;line-height:1.75;color:#9fb0c3;margin-top:32px;max-width:800px}
.home-page .measured-section{padding:72px 0 65px;background:transparent}
.home-page .record-heading{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0 48px}
.home-page .record-heading>p:last-child{font-size:.9375rem;line-height:1.75;margin-top:16px}
.home-page .measurements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:38px;border-top:0}
.home-page .measurements>div{display:flex;flex-direction:column-reverse;align-items:flex-start;justify-content:flex-end;gap:14px;padding:24px 0;border-block:1px solid var(--line)}
.home-page .measurements dt{font-size:.875rem;font-weight:400;flex:0 0 auto;line-height:1.6}
.home-page .measurements dt small{font-size:.75rem;max-width:280px;margin-top:7px}
.home-page .measurements dd{margin:0;font-family:var(--mono);font-size:2rem;font-weight:400;line-height:1.2;letter-spacing:-.05em;white-space:nowrap}
.home-page .measurements dd>span{color:#a9bad0}
.home-page .record-discipline{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;margin-top:32px}
.home-page .record-discipline h3{font-size:.875rem}
.home-page .record-discipline p{font-size:.875rem;line-height:1.75;color:var(--secondary);max-width:580px}
.home-page .text-link{color:#b3cff5;font-size:.8125rem}
.home-page .text-link:hover{color:#e0ecff}
.home-page .verification-intro{padding:65px 0 70px;background:transparent;border-top:1px solid var(--line)}
.home-page .verification-intro .intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px}
.home-page .verification-intro .intro-grid>div>p{font-size:.9375rem;line-height:1.75;margin-top:18px}
.home-page .story-copy h3{font-size:1.75rem;line-height:1.2}
.home-page .story-copy>p:not(.story-step):not(.story-note){font-size:.9375rem;line-height:1.75;margin-top:20px}
.home-page .research-section,.home-page .questions-section{padding-block:72px}
.home-page .research-copy>p:not(.section-label),.home-page .contact-copy>p{font-size:.9375rem;line-height:1.75}
.home-page .closing-section{padding-block:65px}
.home-page .previous-product{padding-block:32px}
.home-page .site-footer{background:#080e15}

@media(max-width:1100px){.hero-inner{gap:40px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);padding-top:360px}.hero h1{font-size:2.625rem}.hero .brand-history-heading h2{max-width:210px}.hero .logo-item{width:154px;flex-basis:154px;padding-inline:15px}}
@media(max-width:800px){.opening-stage .hero-photo img,.opening-stage .hero-photo video{object-position:28% 50%}.opening-scene{--frame-height:max(760px,100svh)}.hero-inner{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;padding-top:340px;padding-bottom:28px}.hero h1{font-size:2rem;text-wrap:balance}.hero-intro{font-size:.625rem;line-height:1.8;gap:7px;margin-bottom:17px}.hero-deck{font-size:.9375rem;line-height:1.65}.hero-status{font-size:.6875rem;margin-top:14px}.hero-actions{gap:5px 16px;margin-top:21px}.hero-actions .button{font-size:.75rem;padding-inline:16px}.hero-actions .button-secondary{padding-inline:0}.hero .brand-history-heading{gap:8px;margin-bottom:10px}.hero .brand-history-heading h2{font-size:.625rem;line-height:1.75;max-width:155px}.hero .logo-item{width:148px;flex-basis:148px;min-height:68px;font-size:.875rem}.hero-bottom{padding-bottom:18px}.opening-scene .target-section{padding-block:45px 54px}.opening-scene .target-section>.wrap{padding-top:30px}.opening-scene .intro-grid{display:block}.opening-scene .intro-grid .section-label{margin-bottom:17px}.home-page h2{font-size:1.75rem}.home-page .target-list{gap:25px;margin-top:28px}.home-page .target-list article{padding-top:20px}.home-page .target-list article>p{font-size:.8125rem}.home-page .lab-scope{margin-top:25px}.home-page .measured-section{padding-block:55px}.home-page .record-heading{display:block}.home-page .record-heading .section-label{margin-bottom:17px}.home-page .measurements{gap:24px;margin-top:28px}.home-page .measurements dd{font-size:1.75rem}.home-page .measurements dt{font-size:.8125rem}.home-page .measurements dt small{font-size:.6875rem}.home-page .record-discipline{display:block;margin-top:26px}.home-page .record-discipline p{margin-top:10px}.home-page .verification-intro{padding-block:50px}.home-page .verification-intro .intro-grid{display:block}.home-page .research-section,.home-page .questions-section{padding-block:55px}.home-page .research-copy h2{font-size:1.75rem}.home-page .closing-section{padding-block:50px}}
@media(max-width:600px){.opening-scene{--frame-height:690px}.opening-stage .hero-photo img,.opening-stage .hero-photo video{object-position:28% 50%}.opening-stage::after{background:linear-gradient(180deg,#07101b08 0,#07101b05 160px,#080e1550 275px,#080e15d6 420px,#080e15f2 620px)}.hero{min-height:810px}.hero-inner{display:block;padding-top:320px;padding-bottom:28px}.hero-intro{font-size:.625rem;line-height:1.8;gap:7px;margin-bottom:16px}.hero h1{font-size:clamp(1.875rem,8.4vw,2.5rem);line-height:1.15;letter-spacing:-.055em;max-width:100%}.hero-summary{margin-top:20px}.hero-deck{font-size:.9375rem;line-height:1.7;max-width:none}.hero-status{font-size:.75rem;line-height:1.6;margin-top:15px}.hero-actions{gap:5px 15px;margin-top:22px;flex-direction:row;align-items:center}.hero-actions .button{font-size:.75rem;padding-inline:16px}.hero-actions .button-secondary{padding-inline:0}.hero .brand-history{padding:0;margin-top:34px}.hero .brand-history-heading h2{font-size:.625rem;max-width:none}.hero .brand-history-heading{gap:16px;margin-bottom:11px;min-height:44px}.hero .logo-item{width:150px;flex-basis:150px;min-height:66px}.hero-bottom{padding-bottom:20px}.opening-scene .target-section{padding-block:30px 45px;background:transparent}.home-page .target-list{display:block;margin-top:28px}.home-page .target-list article{padding-block:21px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:22px}.home-page .target-list h3{font-size:.875rem}.home-page .target-list article>p{margin:0;font-size:.8125rem;line-height:1.75}.home-page .target-list .target-class{font-size:.625rem}.home-page .target-list article:last-child{border-bottom:1px solid var(--line)}.home-page .lab-scope{font-size:.6875rem;margin-top:22px}.home-page .measurements{display:block;margin-top:28px}.home-page .measurements>div{flex-direction:row;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;border-top:0}.home-page .measurements>div:first-child{border-top:1px solid var(--line)}.home-page .measurements dt{font-size:.8125rem;flex:1 1 10rem}.home-page .measurements dd{font-size:1.75rem}.home-page .record-discipline p{font-size:.875rem}.home-page .section-label{font-size:.625rem}.home-page h2{font-size:1.625rem}}
@media(prefers-reduced-motion:reduce){.opening-stage{position:relative}.opening-stage .hero-marks{transition:none}.hero .logo-carousel{display:block}.hero .logo-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hero .logo-track[aria-hidden="true"]{display:none}.hero .logo-item{width:auto;min-width:0;padding-inline:8px;flex:auto}.hero .logo-item img{max-width:110px}.hero .brand-history-heading{min-height:24px}.opening-scene:has(.hero.is-motion-active) .mark-enter,.opening-scene:has(.hero.is-motion-active) .mark-sweep::after{animation:none}}
@media(prefers-reduced-transparency:reduce){.hero .logo-carousel{background:#101a25}.opening-scene .target-section{background:#080e15}.hero .carousel-control{background:#0c141c}}
@media(prefers-contrast:more){.hero-deck,.hero-intro,.hero-status,.hero .brand-history-heading h2,.home-page .section-label,.home-page .target-list article>p,.home-page .target-list .target-class,.home-page .lab-scope{color:#fff}.opening-stage::after{background:linear-gradient(180deg,transparent 20%,#080e15f2 47%,#080e15 85%)}.hero .logo-carousel{background:#080e15;outline:1px solid #9babbe}.hero-actions .button-secondary{color:#fff;text-decoration-color:#fff}}
@media print{.home-page{--paper:#fff;--ink:#111;--secondary:#444;--line:#aaa;background:#fff;color:#111}.opening-stage,.hero .brand-history{display:none}.hero{min-height:0}.hero-inner{display:block;padding:30px 0}.hero h1{font-size:34px}.hero-deck,.hero-status{color:#333}.opening-scene .target-section,.home-page .measured-section,.home-page .verification-intro{padding:25px 0;background:#fff}.home-page .target-list article>p,.home-page .target-list .target-class,.home-page .lab-scope,.home-page .section-label{color:#333}.home-page .measurements{display:block}.home-page h2{font-size:26px}}

/* No section-sized color changes: dim the shared image gradually while reading. */
.opening-stage::before{content:'';position:absolute;inset:0;z-index:1;background:#080e15;opacity:calc(var(--reading-depth,0) * .68);pointer-events:none}
.opening-stage .story-stage{display:block;position:absolute;inset:0;height:100%;overflow:hidden;z-index:2;opacity:var(--approach-progress,0);background:transparent}
.opening-stage .story-photo{position:absolute;inset:0;opacity:0;background:#0c121a;transition:opacity .55s ease}
.opening-stage .story-photo.is-active{opacity:1}
.opening-stage .story-stage::after{content:'';position:absolute;inset:0;background:#08101b18;pointer-events:none}
.opening-scene .story{background:transparent}
.opening-scene .story-beats{margin-top:0!important}
.has-js .opening-scene .story-beat{background:none;min-height:100svh;isolation:auto;align-items:center;padding-block:90px}
.has-js .opening-scene .story-beat::after{display:none}
.opening-scene .hero-copy{text-shadow:0 1px 16px #080e154d}
@media(max-width:800px){.has-js .opening-scene .story-beat{align-items:flex-end;padding-block:130px 45px}.opening-stage .story-photo img,.opening-stage .story-photo video{object-position:42% 50%}.opening-stage .story-photo[data-shot="1"] img,.opening-stage .story-photo[data-shot="1"] video{object-position:70% 50%}}
@media(prefers-reduced-motion:reduce){.opening-stage::before{display:none}.opening-stage .story-stage{display:none!important}.has-js .opening-scene .story-beat{background-image:var(--beat-image)!important;isolation:isolate}.has-js .opening-scene .story-beat::after{display:block!important}}
@media print{.opening-scene .story{color:#111}.opening-stage::before{display:none}.has-js .opening-scene .story-beat{min-height:0!important;padding:20px 0}}

/* Native icon details: keep foreground shapes without their source app-tile backgrounds. */
.hero .logo-chatui{display:block;position:relative;flex:0 0 34px;width:34px;height:34px;overflow:hidden}
.hero .logo-item .logo-chatui img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;max-width:none;filter:none;mix-blend-mode:screen;opacity:1;clip-path:circle(28% at 50% 50%)}
.hero .logo-item-talkstride img{flex-shrink:0}
@media(prefers-reduced-motion:reduce){.hero .logo-carousel{padding:12px}.hero .logo-track{gap:18px 12px}.hero .logo-item{padding-inline:6px;gap:8px}.hero .logo-item span:not(.logo-chatui){min-width:0;overflow-wrap:anywhere;white-space:normal;line-height:1.35}.hero .logo-item .logo-chatui img{max-width:none}.hero .logo-item img{max-width:120px}}
/* Let enlarged text use the full rail width instead of splitting partner names. */
.hero .logo-carousel{container-type:inline-size}
@media(prefers-reduced-motion:reduce){@container(max-width:20em){.hero .logo-track{grid-template-columns:minmax(0,1fr)}.hero .logo-item{min-height:64px}}}

/* Restore the separate partner cards with a shared icon and label alignment. */
.hero .logo-carousel{background:transparent;border-radius:0}
.hero .logo-item{min-height:76px;min-width:max-content;flex:0 0 170px;width:170px;padding:16px 18px;border:1px solid #ffffff22;border-radius:10px;background:#121d29cc;gap:10px;align-items:center;justify-content:center;font-size:.90625rem;line-height:1.25}
.hero .logo-item>span:last-child{line-height:1.25}
.hero .partner-symbol{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px}
.hero .partner-symbol img{max-width:34px;max-height:34px;object-fit:contain}
.hero .logo-chatui{flex-basis:34px;width:34px;height:34px}
@media(max-width:1100px){.hero .logo-item{flex-basis:154px;width:154px;padding-inline:15px}}
@media(max-width:800px){.hero .logo-item{flex-basis:148px;width:148px;min-height:68px;font-size:.875rem}}
@media(max-width:600px){.hero .logo-item{flex-basis:150px;width:150px;min-height:66px}}
@media(prefers-reduced-motion:reduce){.hero .logo-carousel{padding:0}.hero .logo-item{width:auto;min-width:0;flex:auto;padding:14px 8px;min-height:72px}.hero .partner-symbol{min-width:34px}.hero .logo-item>span:last-child{overflow-wrap:normal;white-space:normal}}
@media(prefers-reduced-transparency:reduce){.hero .logo-item{background:#121d29}}
@media(prefers-contrast:more){.hero .logo-carousel{outline:none}.hero .logo-item{background:#080e15;border-color:#9babbe}}

/* Trymise's own header uses an italic Georgia wordmark with tight spacing. */
.hero .logo-item-trymise>.partner-wordmark-trymise:last-child{font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;line-height:1;font-style:italic;font-weight:400;letter-spacing:-.06em;text-transform:lowercase;white-space:nowrap;color:#edf2f8}

/* Match TalkStride’s live wordmark; give ChatUI the requested bolder treatment. */
.hero .logo-item-talkstride>span:last-child{font-family:var(--font);font-size:1.05rem;font-weight:600;letter-spacing:-.025em;line-height:1.25;white-space:nowrap}
.hero .logo-item-chatui>span:last-child{font-family:var(--font);font-size:1.0625rem;font-weight:700;letter-spacing:-.045em;line-height:1.1;white-space:nowrap}
