/* Content reflows at phone widths; full product screens remain inspectable. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
img{height:auto}
.hero-top>*,.workflow>*,.pricing-section>*,.split>*,.ai-section>*,.feature-grid>*,.guide-grid>*,.footer-grid>*,.industry-detail>*{min-width:0}
.workflow-mobile-description,.mobile-account-link{display:none}
.footer-column summary{list-style:none}
.footer-column summary::-webkit-details-marker{display:none}
.footer-column h4{margin-bottom:15px}
.split-image{position:relative}
.split-image>button{position:absolute;right:18px;bottom:18px;background:white;border:1px solid var(--line);padding:10px 14px;border-radius:7px;font-size:.875rem;min-height:44px;box-shadow:0 3px 15px #0001}
.screen-dialog{padding:0;overflow:hidden;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
.screen-dialog[open]{display:flex;flex-direction:column}
.dialog-bar{margin:0;padding:14px 18px;flex-shrink:0;border-bottom:1px solid var(--line);gap:15px;background:#fff}
.dialog-actions{display:flex;gap:8px}
.dialog-bar button{min-height:44px;padding:8px 14px;white-space:nowrap}
.dialog-viewport{overflow:auto;overscroll-behavior:contain;max-height:calc(100dvh - 160px);padding:12px;-webkit-overflow-scrolling:touch}
.screen-dialog .dialog-viewport img{width:100%;max-width:100%;height:auto}
.screen-dialog.zoomed .dialog-viewport img{width:1400px;max-width:none}
.dialog-hint{font-size:.8125rem;padding:10px 18px;background:white;flex-shrink:0;line-height:1.5}
@media(max-width:900px){
  .nav-links{max-height:calc(100dvh - 76px);overscroll-behavior:contain;padding-bottom:max(25px,env(safe-area-inset-bottom))}
  .nav-links>a{min-height:48px}
  .mobile-account-link{display:block}
  .nav-links .mobile-account-link{border-top:1px solid var(--line)}
  .hero-top{grid-template-columns:minmax(0,1fr)}
  .hero-copy{max-width:570px;margin:22px 0 0}
  .hero-copy p{max-width:560px}
  .hero h1{font-size:clamp(3.5rem,9vw,5.5rem)}
  .hero h1 .italic{display:inline}
  .hero h1 .italic:before{content:' ';white-space:pre}
  .proof-strip{grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr))}
}
@media(max-width:680px){
  html{scroll-padding-top:88px}
  .wrap{width:calc(100% - 36px);margin-inline:auto}
  .site-header{height:68px;padding-top:env(safe-area-inset-top)}
  .site-header .wrap{width:calc(100% - 28px)}
  .nav{gap:8px}
  .brand{font-size:1.5rem;letter-spacing:-.06em;flex-shrink:0}
  .brand img{width:28px;height:28px}
  .nav-actions{gap:0}
  .nav-actions .button{min-height:44px;padding:9px 12px;font-size:.875rem}
  .mobile-toggle{width:44px;height:44px;flex:0 0 44px;padding:10px}
  .nav-links{top:67px;padding:16px 22px 24px;max-height:calc(100dvh - 68px)}
  .nav-links .dropdown a{min-height:60px;padding:12px}
  .hero{padding-top:32px}
  .hero-top{padding-bottom:26px}
  .hero .eyebrow{font-size:.75rem;letter-spacing:.11em;margin-bottom:18px;gap:10px}
  .hero .overline:before{width:20px;flex-shrink:0}
  .hero h1{font-size:clamp(3rem,13.4vw,3.65rem);line-height:1.06;letter-spacing:-.06em}
  .hero h1 .italic{display:block;letter-spacing:-.065em}
  .hero h1 .italic:before{content:none}
  .hero-copy{margin:22px 0 0}
  .hero-copy p{font-size:1rem;line-height:1.65;margin-bottom:20px}
  .hero-copy .fine{font-size:.8125rem;line-height:1.5;margin:14px 0 0}
  .hero-copy .actions,.page-hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hero-copy .button,.page-hero .button{min-height:50px;padding:10px 9px;font-size:.875rem;line-height:1.4;text-align:center}
  .button{min-height:50px;max-width:100%;white-space:normal}
  .product-stage{margin:0;border-radius:13px;padding:10px 10px 0}
  .stage-top{padding-bottom:10px}
  .screen-tabs{gap:2px;padding:3px}
  .screen-tabs button{min-width:0;min-height:44px;font-size:.8125rem;padding:8px 4px}
  .screen-frame img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
  .screen-frame button{position:static;display:block;width:100%;min-height:46px;margin:0;padding:10px 14px;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;font-size:.875rem}
  .screen-frame{border-width:3px}
  .product-caption{display:block;padding:12px 0 0;font-size:.75rem}
  .product-caption span{display:block;max-width:none}
  .product-caption>a{display:none}
  .proof-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:24px 0}
  .proof-strip>p{font-size:.875rem;margin-bottom:4px}
  .proof-item{padding-left:12px}
  .proof-item strong{font-size:clamp(1.18rem,5.1vw,1.45rem);letter-spacing:-.055em;overflow-wrap:normal}
  .proof-item span{font-size:.8125rem;line-height:1.4;margin-top:6px}
  .section{padding:52px 0}
  h2{font-size:clamp(2rem,8.6vw,2.5rem);line-height:1.14;letter-spacing:-.05em;overflow-wrap:break-word}
  .section-heading{margin-bottom:27px}
  .section-heading>p{margin-top:18px;font-size:1rem}
  .eyebrow{font-size:.75rem;letter-spacing:.1em;line-height:1.7;overflow-wrap:anywhere;margin-bottom:16px}
  .workflow{grid-template-columns:minmax(0,1fr);gap:0}
  .workflow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;border:0;background:var(--light);padding:5px;border-radius:10px}
  .workflow-step{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px;border:0;border-radius:6px;min-height:62px}
  .workflow-step .step-num{font-size:.75rem;padding:0;line-height:1.3}
  .workflow-step strong{font:600 .8125rem/1.5 'DM Sans',sans-serif;letter-spacing:0}
  .workflow-step p{display:none!important}
  .workflow-step[aria-selected=true]{background:white;box-shadow:0 1px 5px #0b173414;color:var(--blue)}
  .workflow-step[aria-selected=true]:before{display:none}
  .workflow-mobile-description{display:block;font-size:1rem;line-height:1.6;padding:20px 0;min-height:91px}
  .workflow-visual{min-height:0;display:block;padding:12px 12px 15px;border-radius:14px}
  .demo-card{padding:20px 17px;box-shadow:none}
  .demo-card-top{flex-direction:column;align-items:start;gap:12px;padding-bottom:16px;margin-bottom:16px}
  .demo-card h3{font-size:1.125rem}
  .demo-card .fine{font-size:.8125rem}
  .sample-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .sample-fields dt{font-size:.8125rem}
  .sample-fields dd{font-size:.9375rem;line-height:1.5;overflow-wrap:anywhere}
  .demo-bottom{font-size:.875rem;line-height:1.5;align-items:start}
  .workflow-note{position:static;display:block;padding:12px 4px 0;font-size:.75rem;line-height:1.5}
  .small-table{font-size:.875rem;table-layout:fixed}
  .small-table th{font-size:.75rem;overflow-wrap:anywhere}
  .small-table td{overflow-wrap:break-word}
  .ai-section{margin:0;padding:28px 20px;gap:26px}
  .ai-section h2{font-size:clamp(2rem,8.6vw,2.5rem)}
  .ai-section p{font-size:1rem;line-height:1.65}
  .chat{padding:18px 15px}
  .chat-top{gap:8px;flex-wrap:wrap}
  .chat-top .fine{font-size:.75rem}
  .ai-mark{flex-shrink:0}
  .chat .chat-human{margin:20px 0 18px 12px;padding:12px;font-size:.9375rem}
  .chat-answer{font-size:.9375rem}
  .chat-plan{padding:12px}
  .chat-plan strong,.chat-plan div{font-size:.875rem}
  .feature-card{padding:26px 23px}
  .feature-card p,.trust-item p,.guide-card p,.service p,.industry-detail p{font-size:1rem}
  .feature-icon{margin-bottom:22px}
  .text-link{font-size:.9375rem;line-height:1.5;padding-block:7px}
  .feature-card .text-link,.trust-item a,.guide-card .text-link{font-size:.9375rem}
  .integrations-strip{margin-top:30px}
  .integrations-strip .text-link{margin-top:17px}
  .lab-banner{min-height:510px}
  .lab-banner h2{font-size:clamp(2.3rem,10.1vw,3rem)}
  .lab-banner .wrap{padding-block:70px 40px}
  .lab-banner img{height:100%;object-fit:cover}
  .lab-banner p{font-size:1rem}
  .pricing-section{gap:27px}
  .price-card,.price-main .price-card{padding:25px 22px}
  .price-card-header{display:flex;flex-direction:column;align-items:start;gap:20px}
  .price-card-header h3{font-size:1.125rem}
  .billing-switch{width:100%;padding:4px}
  .billing-switch button{flex:1;font-size:.9375rem;min-height:44px;padding:9px}
  .price-number,.price-main .price-number{font-size:4.5rem;line-height:1.1;margin-top:24px}
  .price-number span{font-size:1rem}
  .price-card .fine{font-size:.875rem}
  .price-card .check-list{font-size:1rem;gap:12px}
  .price-card .button{font-size:.9375rem;line-height:1.5;padding:13px 10px}
  .price-card .under-cta{font-size:.8125rem}
  .check-list{font-size:1rem}
  .trust-list{gap:8px}
  .faq summary{min-height:44px;font-size:1rem;line-height:1.5}
  .faq details p{font-size:1rem}
  .closing{padding:48px 0}
  .closing h2{font-size:clamp(2.2rem,9.8vw,2.8rem)}
  .closing .button{width:100%;white-space:normal;min-height:52px}
  .footer{padding:35px 0 max(25px,env(safe-area-inset-bottom))}
  .footer-grid{display:block}
  .footer-about{margin-bottom:25px}
  .footer-about p{font-size:.9375rem}
  .footer-column{border-bottom:1px solid var(--line)}
  .footer-column summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;cursor:pointer}
  .footer-column summary h4{margin:0;font-size:1rem}
  .footer-column summary:after{content:'+';font-size:1.4rem;font-weight:400;color:var(--muted)}
  .footer-column[open] summary:after{content:'−'}
  .footer-links{gap:0;padding-bottom:12px;font-size:.9375rem}
  .footer-links a{display:flex;align-items:center;min-height:44px;padding:8px 0}
  .footer-bottom{margin-top:25px;font-size:.8125rem}
  .footer-bottom div{gap:16px;flex-wrap:wrap}
  .footer-bottom a{padding:8px 0;min-height:44px;display:flex;align-items:center}
  .page-hero{padding:35px 0 37px}
  .page-hero h1{font-size:clamp(2.3rem,10.8vw,3.3rem);line-height:1.12;letter-spacing:-.055em;overflow-wrap:break-word}
  .page-hero p{font-size:1rem;line-height:1.65}
  .page-hero .actions{margin-top:25px}
  .subnav{gap:8px;margin-top:0}
  .subnav a,.industry-chip{font-size:.875rem;min-height:44px;padding:9px 13px;display:flex;align-items:center}
  .split{gap:26px;grid-template-columns:minmax(0,1fr)}
  .split-image{padding:12px;border-radius:12px}
  .split-image img{width:100%;max-width:100%;height:auto}
  .split-image>button{position:static;display:block;width:100%;margin-top:10px;box-shadow:none;min-height:46px}
  .detail-section{padding:45px 0}
  .industry-detail{padding:25px 21px;grid-template-columns:minmax(0,1fr);gap:24px}
  .industry-detail h2{font-size:1.65rem!important;overflow-wrap:break-word}
  .guide-card{padding:26px 22px}
  .resource-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .resource-filters button{font-size:.875rem;min-height:46px;padding:9px 10px}
  .inclusions,.services{gap:30px}
  .inclusions .check-list{font-size:1rem}
  .comparison,.comparison tbody{display:block;width:100%}
  .comparison thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .comparison tr{display:block;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:15px}
  .comparison th,.comparison td{display:block;width:100%;padding:18px 20px;font-size:1rem;border:0}
  .comparison tbody th{background:var(--light);font-size:1.125rem}
  .comparison td:before{content:attr(data-label);display:block;font-size:.75rem;font-weight:600;letter-spacing:.02em;color:var(--ink);margin-bottom:7px}
  .comparison td:last-child{background:#edf2ff}
  .comparison td:last-child:before{color:var(--blue)}
  .screen-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:0;border-radius:12px}
  .screen-dialog .dialog-bar{width:auto;position:static;padding:10px 12px;gap:8px;font-size:.875rem}
  .dialog-actions{gap:6px}
  .dialog-bar button{padding:8px 10px;font-size:.875rem}
  .dialog-viewport{padding:8px;max-height:calc(100dvh - 175px)}
  .screen-dialog .dialog-viewport img{width:100%;max-width:100%;height:auto}
  .screen-dialog.zoomed .dialog-viewport img{width:1050px;max-width:none}
  .dialog-hint{font-size:.8125rem;padding:10px 12px}
}
@media(max-width:360px){
  .nav-actions .button{display:none}
  .nav-actions{margin-left:auto}
  .hero h1{font-size:2.8rem}
  .hero .eyebrow{font-size:.75rem}
  .proof-item{padding-left:8px}
  .proof-item strong{font-size:1.12rem}
  .proof-item span{font-size:.75rem}
  .screen-tabs button{font-size:.75rem}
  .chat-top .fine{flex-basis:100%;margin-left:0!important}
}
@media(hover:none){.button:hover,.feature-card:hover{transform:none}}
