/* Shared homepage and /intro/ responsive corrections. */
.mobile-menu-toggle{display:none}
img{max-width:100%}
.section-head{grid-template-columns:minmax(0,32fr) minmax(0,68fr)}
.section-head>*,.product-grid>*,.story>*,.mobile-grid>*,.pricing-grid>*,.audience-grid>*{min-width:0}
.hero-copy,.section-head h3,.product h2,.audience-card,.pricing-card,.final-cta{overflow-wrap:anywhere}
button,a,input{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #315efb;outline-offset:4px}
.pricing-cta{line-height:1.4;padding-block:12px}
.pricing-modal-dialog{max-height:calc(100dvh - 48px)}
.pricing-grid-companies{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.pricing-grid-companies{grid-template-columns:1fr}}
.pricing-modal-dialog>.eyebrow{display:block;max-width:calc(100% - 56px);overflow-wrap:anywhere}
.intro-line{max-width:100%;padding-inline:12px}
@media(max-width:1200px){
 header{height:auto;min-height:78px;flex-wrap:wrap;gap:18px;padding-block:16px}
 header nav{gap:18px;flex-wrap:wrap}
 .mobile-grid{grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:40px}
 .journey-stage{grid-template-columns:minmax(0,1fr)}
 .journey-visual{padding:32px 0}
 .journey-copy{border-left:0;border-top:1px solid var(--line);padding:30px 0;gap:12px}
 .journey-copy>p{max-width:650px}
 .company-size-selector{grid-template-columns:1fr}
 .company-size-copy{border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:900px){
 .shell{width:calc(100% - 32px);max-width:720px}
 header{position:relative;gap:12px;min-height:72px}
 .logo img{width:110px}
 .header-actions{margin-left:auto;gap:12px}
 .mobile-menu-toggle{display:block;order:3;border:1px solid #bfc4c9;background:transparent;color:inherit;font:inherit;border-radius:999px;min-height:44px;padding:10px 15px;cursor:pointer}
 header #primary-nav{display:none;order:4;width:100%;padding:12px 0;border-top:1px solid var(--line)}
 header #primary-nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
 header #primary-nav a{padding:12px 4px;min-height:44px}
 .hero{width:calc(100% - 32px);max-width:720px;margin-inline:auto;min-height:0}
 .hero-copy{padding:40px 0 28px}
 .hero-media{margin:0;min-height:340px;border-radius:16px 16px 0 0}
 h1{font-size:clamp(40px,8vw,68px);line-height:1.06;letter-spacing:-.045em}
 .section{padding-block:56px}
 .section-head{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:32px}
 .section-head h3,.mobile-copy h3{font-size:clamp(34px,7vw,54px);line-height:1.1}
 .mobile-grid{grid-template-columns:minmax(0,1fr);gap:36px}
 .story-copy h3{font-size:48px}
 .journey-top,.journey-filters,.journey-links{flex-wrap:wrap}
 .journey-search{max-width:100%}
 .app-shell .app-nav{display:grid}
 .iphone-demo,.iphone-wrap{min-width:0;max-width:100%}
 .iphone{width:min(370px,100%);height:740px;max-width:100%}
 .footer-row{flex-wrap:wrap}
}
@media(max-width:620px){
 .header-actions{gap:8px}.header-actions .cta-dark{padding:12px;font-size:12px;gap:8px}.header-actions>span{display:none}
 .hero-media{min-height:260px}.hero-copy>p{font-size:16px;line-height:1.6}
 .hero-actions{gap:20px}.book{max-width:100%;white-space:normal;line-height:1.4}
 .product{padding:28px 20px;min-height:0}.product p{max-width:none}
 .story-timeline,.story-dark{padding:30px 22px;min-height:0}.story-dark .tagline{margin-top:12px}
 .journey-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
 .journey-rail:before,.journey-progress{display:none}
 .journey-tab,.journey-tab+.journey-tab{padding:16px 8px;border-bottom:1px solid var(--line);min-width:0}
 .journey-tab strong{font-size:15px}.journey-tab-num{margin-bottom:10px}
 .journey-stack{height:490px}.journey-window{grid-template-columns:minmax(0,1fr)}.journey-side{display:none}
 .journey-main{padding:18px 12px}.journey-title{font-size:22px}
 .candidate-row{grid-template-columns:28px minmax(0,1fr) auto;gap:6px}.candidate-row .candidate-status{grid-column:2/-1;max-width:100%;white-space:normal}
 .candidate-row>*,.person-head>*,.process-row>*{min-width:0;overflow-wrap:anywhere}
 .person-head{grid-template-columns:48px minmax(0,1fr);gap:10px}.person-head .journey-avatar{width:46px;height:46px}.person-head .journey-state{grid-column:2}
 .people-stats{gap:5px}.people-stat{padding:9px 6px}.people-stat strong{font-size:14px}
 .person-thread{max-width:calc(100% - 24px);left:12px;bottom:10px;white-space:normal}
 .journey-copy h4{font-size:36px}.journey-links{align-items:stretch}.journey-links a{min-height:44px}
 .audience-card{padding:48px 20px 28px}.audience-card.active{transform:none}
 .pricing-card,.pricing-grid-companies .pricing-card{padding:26px 20px;min-width:0}
 .pricing-grid-companies .pricing-card.featured{transform:none}
 .pricing-switch{min-width:0}.pricing-switch button{white-space:normal;min-height:44px}
 .workforce-size-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.workforce-price-size{padding:16px;min-height:100px}
 .pricing-modal{padding:12px}.pricing-modal-dialog{max-height:calc(100dvh - 24px);padding:28px 18px}
 .pricing-modal-dialog h4{font-size:30px;overflow-wrap:anywhere}
 .iphone{height:710px;border-radius:42px;padding:7px}.iphone-screen{border-radius:35px}
 .app-view{padding:16px 12px}.inline-name{display:flex;width:100%}.inline-name input{width:100%;min-width:0;max-width:100%}
 .inline-name .name-placeholder{font-size:24px;max-width:100%;white-space:normal}
 .screen-row{flex-wrap:wrap}.screen-row>div{min-width:0;overflow-wrap:anywhere}
 .app-nav button,.weekbar button,.back-btn,.save-shift{min-height:44px}
 .demo-hint{text-align:center;line-height:1.5}
 .final-cta{padding-block:56px;gap:28px}.final-cta h3{font-size:46px}
 .intro-line{flex-wrap:wrap;font-size:clamp(28px,9vw,48px);white-space:normal;row-gap:12px}
 .intro-brand{max-width:90%;text-align:center;line-height:1.6}
}
/* Reduced motion: the landing-wide policy (no travel, short cross-fades; the opening untouched) lives in
   /design-system/landing-motion.css. A second kill-all here would cancel those fades. */
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
}
