/* Shared mobile contract. Desktop/tablet deliberately excluded.
   Important declarations replace legacy per-template important overrides. */
@media (max-width:39.9375rem) {
 :root body #main-content { --kp-mobile-h1:clamp(1.875rem,8vw,2.25rem); --kp-mobile-h2:clamp(1.5rem,6.5vw,1.875rem); }
 :root body main, :root body main > article, :root body main.container, :root body main .container { min-width:0; grid-template-columns:minmax(0,1fr); }
 :root body #main-content .page-template--robot, :root body #main-content .home-image-cards { min-width:0; grid-template-columns:minmax(0,1fr); }
 :root body #main-content .robot-card__title { font-size:1.25rem !important; line-height:1.2 !important; }
 :root body #main-content .robot-card__description { font-size:1rem !important; line-height:1.45 !important; }
 :root body #main-content .home-image-cards--article .home-image-cards__card, :root body #main-content .articles-page__card { min-height:0; align-self:start; }
 :root body #main-content .home-image-cards--article .home-image-cards__body, :root body #main-content .articles-page__body { min-height:0; padding-bottom:1.1rem; }
 :root body #main-content .home-final-cta[data-home-block] { grid-template-columns:minmax(0,1fr); height:auto !important; min-height:0 !important; padding:1.25rem !important; gap:.875rem !important; }
 :root body #main-content .home-final-cta[data-home-block] .home-final-cta__copy { display:contents; }
 :root body #main-content .home-final-cta[data-home-block] h2 { grid-row:1; font-size:var(--kp-mobile-h2) !important; line-height:1.15 !important; }
 :root body #main-content .home-final-cta[data-home-block] .home-final-cta__image { grid-row:2; height:auto !important; min-height:0 !important; align-self:center; place-items:center; }
 :root body #main-content .home-final-cta[data-home-block] .home-final-cta__image img { height:clamp(8rem,22svh,10rem) !important; width:auto !important; max-width:100%; object-fit:contain; transform:none !important; }
 :root body #main-content .home-final-cta[data-home-block] p { grid-row:3; }
 :root body #main-content .home-final-cta[data-home-block] .home-final-cta__actions { grid-row:4; margin-top:0 !important; gap:.65rem; }
 :root body #main-content #robot-card-pricing .home-final-cta { padding-bottom:0 !important; overflow:hidden; }
 :root body #main-content #robot-card-pricing .home-final-cta__copy { display:grid; gap:.75rem; transform:none; }
 :root body #main-content #robot-card-pricing .home-final-cta__image { grid-row:auto; align-self:end; }
 :root body #main-content #robot-card-pricing .home-final-cta__image img { height:clamp(9rem,24svh,11rem) !important; }
 :root body #main-content .template-live-hero { grid-template-columns:minmax(0,1fr); padding:1rem; gap:.75rem; }
 :root body #main-content .template-live-hero__content { display:contents; }
 :root body #main-content .template-live-hero__eyebrow { grid-row:1; font-size:.6875rem; }
 :root body #main-content .template-live-hero__media { grid-row:2; height:clamp(7rem,24svh,12rem); width:auto; aspect-ratio:1; justify-self:center; max-width:100%; }
 :root body #main-content .template-live-hero__media img { min-height:0; height:100%; width:100%; object-fit:contain; }
 :root body #main-content .template-live-hero__main-copy { grid-row:3; gap:.5rem; }
 :root body #main-content .template-live-hero h1 { font-size:clamp(1.5rem,6.5vw,1.875rem); line-height:1.12; }
 :root body #main-content .template-live-hero__main-copy p { font-size:1.125rem; line-height:1.3; }
 :root body #main-content .template-live-hero__price-actions { grid-row:4; margin:0; }
 :root body #main-content .template-live-hero__actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.625rem; }
 :root body #main-content .template-hero-button { min-width:0; min-height:2.75rem; padding:.5rem; font-size:.8125rem; line-height:1.15; }
 :root body #main-content .template-ai-summary p, :root body #main-content .template-ai-summary strong { font-weight:600; }
 :root body #main-content .articles-page__hero h1, :root body #main-content .compilations-page__hero h1 { font-size:var(--kp-mobile-h1); line-height:1.12; }
 :root body #main-content .articles-page__intro-copy h2, :root body #main-content.compilations-page h2, :root body #main-content .humanoid-template h2 { font-size:var(--kp-mobile-h2); line-height:1.2; }
 :root body #main-content .humanoid-template__hero-copy { display:contents; }
 :root body #main-content .humanoid-template__hero-inner { gap:1rem; }
 :root body #main-content .humanoid-template__hero-inner > .humanoid-template__hero-image { grid-row:3; width:100%; height:auto; object-fit:contain; }
 :root body #main-content .humanoid-template__hero-inner .humanoid-template__eyebrow { grid-row:1; }
 :root body #main-content .humanoid-template__hero-inner h1 { grid-row:2; }
 :root body #main-content .humanoid-template__hero-inner .humanoid-template__lead { grid-row:4; }
 :root body #main-content .humanoid-template__hero-inner .humanoid-template__actions { grid-row:5; }
 :root body #main-content .humanoid-template__gallery-item { flex:0 0 auto; width:fit-content; height:clamp(14rem,64vw,20rem); aspect-ratio:auto; }
 :root body #main-content .humanoid-template__gallery-item img { width:auto; height:100%; max-width:none; object-fit:contain; }
}
/* Native axis arbitration also preserves page scrolling and pinch zoom. */
@media (hover:none), (pointer:coarse) {
 :root body #main-content [data-drag-slider], :root body #main-content [data-drag-slider] > * { touch-action:pan-x pan-y pinch-zoom; }
}

@media (max-width: 39.9375rem) {
:root body .vertical-slice { grid-template-columns: minmax(0, 1fr); }
:root body .vertical-slice .home-hero { min-width: 0; }
:root body .vertical-slice .home-hero__card { min-height: min(38rem, calc(100svh - 9.5rem)); }
:root body .vertical-slice .home-hero__content { min-width: 0; min-height: inherit; padding: 1.5rem 1.25rem; gap: .75rem; grid-template-rows: auto auto auto minmax(1rem, 1fr) auto; }
:root body .vertical-slice .home-hero__title { max-width: none; font-size: clamp(1.875rem, 9vw, 2.25rem); line-height: 1.08; }
:root body .vertical-slice .home-hero__subtitle { font-size: 1rem; line-height: 1.4; }
:root body .vertical-slice .home-hero__actions { gap: .75rem; }
:root body .vertical-slice .home-hero__button { min-height: 2.75rem; font-size: .8125rem; line-height: 1.15; white-space: normal; }
}
@media (max-width:39.9375rem) and (max-height:38.75rem) { :root body .vertical-slice .home-hero__content {padding:1rem;gap:.5rem;grid-template-rows:auto auto auto minmax(.5rem,1fr) auto;} :root body .vertical-slice .home-hero__title {font-size:1.75rem;} }

/* Owner review round 2: correct article grid placement and layout-specific sizing. */
@media (max-width:39.9375rem) {
 :root body #main-content .article-blocks__hero-inner { grid-template-columns:minmax(0,1fr); gap:1rem; }
 :root body #main-content .article-blocks__hero-inner > * { grid-area:auto; min-width:0; }
 :root body #main-content .article-blocks__hero-copy,
 :root body #main-content .article-blocks__hero-inner .article-blocks__lead { width:100%; max-width:none; }
 :root body #main-content .article-blocks__hero h1 { width:100%; max-width:none; font-size:clamp(1.75rem,7.2vw,2rem); line-height:1.15; }
 :root body #main-content .article-blocks__hero-image { position:static; width:100%; height:auto; min-height:0; max-height:none; margin:0; object-fit:contain; }
 :root body #main-content .article-blocks__hero { padding-block:1.75rem 2rem; }
 :root body .vertical-slice .home-hero__actions { grid-template-columns:minmax(0,1fr); gap:.625rem; }
 :root body .vertical-slice .home-hero__button { min-height:3rem; font-size:.875rem; white-space:nowrap; }
 :root body #main-content .robot-card { container-type:inline-size; container-name:robot-tile; }
 @container robot-tile (max-width:13rem) {
  :root body #main-content .robot-card__title { font-size:1.0625rem !important; }
  :root body #main-content .robot-card__description { font-size:.8125rem !important; line-height:1.4 !important; }
 }
 :root body #main-content .template-live-hero__media { width:100%; height:auto; aspect-ratio:1; justify-self:stretch; }
 :root body #main-content #robot-card-pricing .home-final-cta__image img { translate:clamp(1rem,5vw,1.5rem) 0; }
}
