/* V12: a complete small-screen composition, not a stacked desktop canvas. */
.ui-icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;vertical-align:-.14em;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.button .ui-icon{width:22px;height:22px}.inline-link>.ui-icon{width:19px;height:19px}.button-icon{display:flex;align-items:center;justify-content:center}.button-icon .ui-icon{width:25px;height:25px}
:is(.carousel-arrow,.carousel-play,.funnel-navigation button,.deck-controls button,.dialog-close,.card-open){display:inline-flex;align-items:center;justify-content:center}
.carousel-arrow .ui-icon,.carousel-play .ui-icon,.deck-controls .ui-icon,.funnel-navigation .ui-icon{width:18px;height:18px}.card-open .ui-icon,.dialog-close .ui-icon{width:21px;height:21px}
.mobile-picker{display:none}.funnel-core>p:not(.funnel-counter){font-size:13px;color:#606973;line-height:1.8;margin-top:22px;min-height:70px}
.funnel-extra>summary,.assistant-context>summary{display:none}.funnel-extra,.assistant-context{min-width:0}
.funnel-extra .funnel-question>.eyebrow{display:none}
.built-details>p{font-size:13px;line-height:1.85;padding-bottom:18px;color:#aeb8c1}
.parallel-symbol{display:flex}.parallel-symbol .ui-icon{width:19px;height:19px}
.assistant-context summary,.funnel-extra summary{list-style:none;cursor:pointer}.assistant-context summary::-webkit-details-marker,.funnel-extra summary::-webkit-details-marker{display:none}
.assistant-context summary>span,.funnel-extra summary>span{transition:transform 180ms}
.assistant-context[open] summary>span,.funnel-extra[open] summary>span{transform:rotate(45deg)}
.funnel-heading>p{max-width:430px}
.case-story p,.assistant-input p,.funnel-core p,.booking-card{overflow-wrap:break-word}
@media(min-width:761px){.assistant-context>summary{display:none}.funnel-extra{display:contents}}
@media(min-width:901px) and (max-height:850px){.funnel-core>p:not(.funnel-counter){margin-top:14px;min-height:48px;font-size:12px}}

@media(max-width:760px){
  :root{--gutter:22px}
  html{scroll-padding-top:82px}.header-inner{height:64px}.site-header.menu-open .nav-links{top:63px}.wordmark{font-size:18px}.personal-mark{width:29px;height:25px}
  .section{padding-block:60px}.section-heading{gap:18px}.section-heading .eyebrow{margin-bottom:16px}.eyebrow{letter-spacing:.035em}
  h2{font-size:clamp(32px,8.4vw,46px)}
  .button{min-height:52px}.button,.inline-link{gap:20px}.inline-link{line-height:1.6}
  /* The face, name and invitation belong to the same opening screen. */
  .hero.wrap{width:100%;max-width:none;margin:0;padding:0}.hero-topline{display:none}
  .hero-grid{display:block;position:relative;isolation:isolate;padding:clamp(205px,31svh,275px) var(--gutter) 28px;min-height:calc(100svh - 64px);overflow:hidden}
  .hero-copy{position:relative;z-index:2;max-width:510px}.hero-copy>.eyebrow{margin-bottom:14px;font-size:9px;color:#e1e4e7}
  .hero h1{font-size:clamp(54px,15.8vw,88px);line-height:1;letter-spacing:-.052em;text-shadow:0 2px 22px #0003}
  .hero-description{font-size:14px;line-height:1.7;color:#d2d6db;margin-top:19px;max-width:340px}
  .hero-actions{gap:10px;margin-top:22px}.hero-actions .button{min-height:52px;font-size:12px;width:100%;max-width:340px;padding:13px 18px}
  .hero-actions .inline-link{font-size:11px;gap:23px;min-height:40px}.hero-note{display:none}
  .hero-visual{position:absolute;inset:0;z-index:0;display:block;pointer-events:none}
  .hero-visual .portrait-window{position:absolute;inset:0;min-height:0;height:100%;background:#0b0d10}
  .hero-visual .portrait-window>img{object-fit:cover;object-position:52% 30%;width:100%;height:100%;transform:none}
  .hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0b0d1000 8%,#0b0d101a 24%,#0b0d10aa 43%,#0b0d10f5 65%,#0b0d10 100%)}
  .hero-visual .portrait-caption,.hero-visual figcaption{display:none}
  .hero-enter{animation:none}
  .experience-strip{margin-top:0;padding-block:28px;gap:20px}

  /* Model and meaning stay in the same viewport. No pinned mobile scene. */
  .funnel-pin{padding:44px 0 28px;min-height:0}.funnel-heading{gap:16px;margin-bottom:22px}.funnel-heading h2{font-size:34px;line-height:1.12;margin-top:12px}
  .funnel-heading>p{font-size:13px;line-height:1.7}.funnel-layout{grid-template-columns:minmax(100px,.78fr) minmax(0,1.22fr);gap:18px 16px;align-items:start}
  .mobile-picker:not([hidden]){display:flex;flex-direction:column;gap:8px;min-width:0}
  .mobile-picker>span{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;line-height:1.5}
  .mobile-picker small{font-size:10px;font-weight:400;opacity:.65}
  .mobile-picker select{appearance:none;-webkit-appearance:none;font:500 16px/1.35 var(--font);min-height:48px;width:100%;min-width:0;border:1px solid #bdc6ce;border-radius:5px;padding:12px 38px 12px 13px;color:#18232b;background:#fff url("assets/chevron-down.svg") no-repeat right 13px center;background-size:17px;cursor:pointer}
  .funnel-picker{grid-column:1/-1}.funnel-picker~.funnel-steps{display:none}
  .funnel-stage{grid-column:1;grid-row:2;height:235px;min-height:0;align-self:center}
  .channel-chips,.model-status,.model-tools{display:none!important}.funnel-viewport{min-height:0;height:100%;flex:1}.funnel-fallback{padding:4px 0}
  .funnel-insight{display:contents}.funnel-core{grid-column:2;grid-row:2;align-self:center;min-width:0}
  .funnel-counter{gap:5px;margin-bottom:13px;flex-wrap:wrap;line-height:1.3;font-size:9px}.funnel-counter>span:first-child{font-size:23px}.funnel-counter>span:last-child{width:100%;margin:2px 0 0;font-size:8px}
  .funnel-insight h3{font-size:23px;line-height:1.18;min-height:0;max-width:none;letter-spacing:-.035em}.funnel-core>p:not(.funnel-counter){font-size:12px;line-height:1.7;margin-top:13px;min-height:0}
  .funnel-navigation{grid-column:1/-1;grid-row:3;margin:0;gap:13px;padding-top:15px;border-top:1px solid #d3d9de}.funnel-navigation button{width:44px;height:44px;flex-shrink:0}.funnel-navigation span{font-family:var(--font);font-size:12px;text-align:center;color:#26333d}
  .funnel-extra{grid-column:1/-1;grid-row:4;border-block:1px solid #d3d9de;padding:0}
  .funnel-extra>summary{display:flex;justify-content:space-between;align-items:center;min-height:48px;font-size:12px;font-weight:600}
  .funnel-question{margin:0;padding:0;border:0}.funnel-question p{min-height:0;margin:0;font-size:13px}.funnel-connection{margin:18px 0}.funnel-connection a{font-size:12px;min-height:44px}.funnel-foot{margin-top:20px;padding-top:0;border:0;gap:3px;font-size:8px}

  /* A complete selector replaces the clipped horizontal tab strip. */
  .proof-section .section-heading{margin-bottom:23px}.proof-section .section-intro{font-size:13px;line-height:1.8}.proof-section .section-intro p+p{margin-top:12px}
  .case-picker{margin-bottom:28px;color:#eef2f5}.case-picker select{background-color:#171c22;border-color:#46515c;color:#fff;background-image:url("assets/chevron-down-light.svg")}
  .case-picker~.case-tabs{display:none}.case-intro{gap:15px;margin-bottom:22px}.case-intro h3{font-size:29px}.case-intro .case-status{margin-bottom:14px;font-size:9px}.case-story>p{font-size:13px;line-height:1.8;margin-bottom:12px}
  .built-details summary{gap:15px;line-height:1.7;min-height:48px}.built-details summary>span{flex-shrink:0}.built-details>p{font-size:12px;line-height:1.8}
  .case-panel{scroll-margin-top:80px}.case-panel .lab-surface :is(button,input,textarea,select),.built-details{scroll-margin-top:85px}
  /* Inputs are available on demand; outputs are adjacent to their controls. */
  .assistant-toolbar{padding:20px 18px 16px}.assistant-toolbar h4{font-size:21px;line-height:1.25;margin:8px 0 10px}.assistant-demo-label{display:inline-block;border:0;padding:0;border-radius:0;font-size:9px}
  .assistant-picker{padding:0 18px 18px;color:#273d4c}.assistant-picker select{font-size:14px}.assistant-scenarios{display:none}
  .assistant-workspace{display:block}.assistant-input{padding:18px;border-right:0;border-bottom:1px solid #cad4dc}.assistant-input>.eyebrow{font-size:8px}.assistant-input h4{font-size:18px;line-height:1.3;margin:9px 0}.assistant-input>p{font-size:12px;line-height:1.7}
  .assistant-context{border-top:1px solid #c7d2da;margin-top:16px}.assistant-context>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;font-size:11px;font-weight:600;line-height:1.65;color:#314b5b}
  .context-sources{gap:17px;margin-top:12px}.context-sources p{font-size:12px}.context-sources strong{font-size:12px}.my-role{margin-top:20px;padding-top:17px}.my-role p{font-size:12px}
  .assistant-output{padding:20px 18px}.parallel-heading{gap:12px;margin-bottom:13px}.parallel-heading .eyebrow{font-size:8px}.parallel-symbol{display:none}
  .agent-outputs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.agent-outputs button{padding:10px 3px;min-height:46px;align-items:center;justify-content:center;text-align:center;border-radius:4px}.agent-outputs strong{font-size:10px;margin:0}.agent-outputs .agent-number,.agent-outputs button>span:last-child{display:none}
  .assistant-deliverable{padding:18px;min-height:0;margin-top:12px}.assistant-deliverable h4,.mini-deck h4{font-size:22px;margin:15px 0 13px}.mini-deck{min-height:0;padding-bottom:8px}.mini-deck>p,.deck-points li{font-size:12px;line-height:1.7}.deck-points{margin:16px 0}.deck-points li{padding:5px 0}.deck-controls{padding-top:12px}.deck-controls button{width:44px;height:44px}.assistant-judgement{margin-top:17px;font-size:11px;gap:10px}
  .assistant-demo-foot{padding:15px 18px;font-size:9px}.assistant-benefits{margin-top:24px;gap:18px}.assistant-benefits span{font-size:16px}.assistant-benefits p{font-size:12px;margin-top:8px}

  .carousel-section{padding-block:60px 44px}.carousel-heading .eyebrow{margin-bottom:16px}.carousel-heading>p{margin-top:18px}.perspective-card{width:88vw;height:470px}.card-copy{padding:25px 22px}.card-copy h3{font-size:29px}.card-copy .eyebrow{margin-bottom:15px}.card-copy>p{font-size:12px;line-height:1.7;margin-top:19px}.card-footnote{left:22px;font-size:8px}
  .carousel-rail:after{flex-basis:calc(12vw - var(--gutter))}.carousel-dock{gap:8px}.carousel-arrow,.carousel-play{width:44px;height:44px}.carousel-controls{gap:10px}
  .about-grid{gap:28px}.about-photo img{height:340px}.about-photo figcaption{font-size:9px;left:15px;right:15px;bottom:15px}.about-copy h2{font-size:32px}.about-copy .about-lede{font-size:16px!important}
  .contact-top{display:flex;align-items:start;gap:20px}.contact-note{margin:0;font-size:10px;text-align:right}.contact h2{font-size:35px}.booking-card{padding:22px 18px}.booking-fields{gap:18px 12px}.booking-fields label>.field-label{min-height:32px}.booking-fields label{min-width:0}.booking-fields input,.booking-fields select,.booking-fields textarea{max-width:100%;min-width:0}
  .quiz-card{padding:24px 20px}.quiz-graphic{padding-bottom:23px}.quiz-card h3{font-size:26px}.quiz-option{padding:13px 10px}.quiz-controls .button{gap:12px}.quiz-result-title{font-size:28px}
  .source-scroll{max-width:100%;overflow-x:auto}.site-footer .wordmark{font-size:17px}
}
@media(max-width:370px){
  :root{--gutter:20px}.hero-grid{padding-top:195px}.hero h1{font-size:55px}.hero-description{font-size:13px}.hero-actions .button{font-size:11px}.funnel-layout{gap:16px 12px;grid-template-columns:100px minmax(0,1fr)}.funnel-stage{height:220px}.funnel-insight h3{font-size:21px}.funnel-core>p:not(.funnel-counter){font-size:11px}.case-intro h3{font-size:27px}.assistant-input,.assistant-output{padding:17px 14px}.assistant-toolbar{padding-inline:14px}.assistant-picker{padding-inline:14px}.agent-outputs strong{font-size:9px}.assistant-deliverable{padding:15px}.card-copy h3{font-size:27px}
}
@media(prefers-reduced-motion:reduce){.assistant-context summary>span,.funnel-extra summary>span{transition:none}}

@media(max-width:760px){
  #case-assistant:not([hidden]){display:flex;flex-direction:column}
  #case-assistant>.case-intro,#case-assistant .case-story{display:contents}
  #case-assistant .case-intro>div:first-child{display:none}
  #case-assistant .case-story>p{order:0;margin:0 0 22px}
  #case-assistant .assistant-demo{order:1}
  #case-assistant .built-details{order:2;margin-top:24px}
  #case-assistant .assistant-benefits{order:3}
  .proof-section .section-heading{gap:14px}.proof-section .section-heading h2{margin:0}
  .assistant-toolbar>.assistant-demo-label{display:none}
  .assistant-toolbar .eyebrow{display:none}
  .assistant-toolbar h4{margin:0;font-size:20px}
  .assistant-input h4{display:none}.assistant-input>p{margin-top:10px}
}
