/* Mobile edition of the existing studio identity. Desktop composition stays in its own sheets. */
/* Responsive source metadata must not become a grid/flex item when picture
   wrappers use display:contents. It still participates in image selection. */
.nh-desktop-art>source{display:none}
.nh-home-project__fallback>picture>img{display:block;width:100%;height:100%;object-fit:contain}
.nh-mobile-route-graphic,.nh-mobile-care-graphic,.nh-care__brief,.nh-portal-map{display:none}
@media(max-width:760px),(pointer:coarse) and (max-height:760px){
  .nh-page{--mobile-gutter:22px;--mobile-rule:#d8d8d8}
  .nh-page ::selection{background:#ff6418;color:#101010}
  .nh-page :focus-visible{outline:2px solid #ff6418;outline-offset:5px}
  .nh-home h1,.nh-home h2,.nh-home h3{letter-spacing:-.035em;text-wrap:balance}
  .nh-home h1{font-size:clamp(38px,10.5vw,56px);line-height:1.08}
  .nh-home h2{font-size:clamp(30px,8.4vw,42px);line-height:1.12}
  .nh-home p{line-height:1.65}
  .nh-home .nh-wrap{width:calc(100% - var(--mobile-gutter)*2)}
  .nh-home [data-nh-reveal]{opacity:1;transform:none;filter:none}
  .nh-home .nh-section{padding-block:56px}
  .nh-home .nh-section-head{margin-bottom:28px;gap:20px}
  .nh-home .nh-section-head p{font-size:16px;line-height:1.6;margin-top:16px}
  .nh-home .nh-button{min-height:52px}

  /* There is no substitute miniature illustration. The deliverable itself carries each block. */
  .nh-home [data-home-scene]:not([data-home-scene="project"]):not([data-home-scene="portfolio-showcase"]):not(.nh-contact-model),
  .nh-hero .nh-scene,.nh-service__visual,.nh-services-path__art,
  .sp-hero__object,.fw-hero__art,.beauty-intro__art,.sl-hero__visual,.nr-hero__art,
  .ab-hero__art,.ab-scene,.nb-hero__art,.na-model,
  .nh-process-model,.nh-care-model,.nh-portal__visual,.nh-access-lock,
  .ec-web-format__art,.ec-web-process__art,.ec-explorer__art,.ec-next__art,
  .fw-story__art,.fw-content__art,.fw-content__visual,.fw-cms,.sp-demo,.nh-related-card__visual,
  .lp-lab__visual,.lp-lab__ground,.lp-lab__caption,.lp-lab__status,.lp-handover__visual,
  .sh-studio__visual,.sh-studio__meta,.sh-admin__visual,.sh-launch__studio .nh-model,
  .rd-studio__meta,.rd-studio>.nh-model,.rd-studio__status,
  .sl-care__visual,.sl-card__art,.sl-support-card__visual,.sl-closing__visual,.nr-closing__art,
  .pr-plan__visual,.pr-budget__visual,.pr-growth__visual,.pr-compare-option__art,
  .nc-sculpture,.nl-cookie,.ec-label,.pr-eyebrow,.sl-eyebrow,.nr-eyebrow,.nh-portal__eyebrow{display:none!important}

  /* Home: short offer, actual work, then the formats. */
  [data-mobile-home]{display:flex;flex-direction:column}
  [data-mobile-home]>section{order:3;width:100%}
  [data-mobile-home]>.nh-hero{order:0}
  [data-mobile-home]>#proof-projects{order:1}
  [data-mobile-home]>.nh-services{order:2}
  .nh-hero .nh-hero__inner{display:block;min-height:0;padding:48px 0 40px}
  .nh-hero .nh-hero__copy h1{font-size:clamp(40px,10.8vw,58px);line-height:1.06;margin-bottom:22px;max-width:11ch}
  .nh-hero .nh-hero__copy>p{font-size:17px;line-height:1.6;max-width:31ch;color:#c7c7c7}
  .nh-hero .nh-actions{margin-top:26px;display:flex;align-items:center;flex-direction:row;gap:20px}
  .nh-hero .nh-actions .nh-button--outline{padding:8px 0;border:0;background:transparent;min-height:44px;font-size:14px;color:#fff}
  .nh-hero .nh-actions .nh-button--orange{padding-inline:20px;font-size:14px}
  .nh-home .nh-portfolio{padding-top:26px;padding-bottom:48px;background:#101010}
  .nh-portfolio__heading>div>p{display:none}
  .nh-home .nh-portfolio__heading h2{font-size:30px;max-width:12ch}
  .nh-home .nh-portfolio__heading>.nh-button{margin-top:18px;min-height:44px;background:transparent;color:#fff!important;border:1px solid #ffffff45;padding:8px 16px;font-size:14px}
  .nh-home .nh-portfolio__heading>.nh-button>.nh-button__label{color:#fff!important}
  .nh-portfolio__grid{gap:32px!important}
  .nh-home .nh-home-project__caption{margin-top:15px;align-items:start}
  .nh-home .nh-home-project__caption h3{font-size:23px;line-height:1.2}
  .nh-home .nh-home-project__caption p{font-size:13px;margin-top:5px}
  .nh-home .nh-home-project__history{font-size:12px;min-height:40px;padding-top:8px}
  .nh-services .nh-services-grid{display:grid;grid-template-columns:1fr;gap:0}
  .nh-services .nh-service-card{display:block;min-height:0;padding:24px 0;background:transparent;border:0;border-top:1px solid var(--mobile-rule);border-radius:0;color:#101010}
  .nh-services .nh-service-card::before{display:none}
  .nh-services .nh-service__copy{display:grid;grid-template-columns:1fr 36px;column-gap:14px;padding:0}
  .nh-services .nh-service-card h3{grid-column:1;font-size:26px;line-height:1.15}
  .nh-services .nh-service__copy>p{grid-column:1;max-width:34ch;margin:13px 0 0;font-size:15px;color:#626262;min-height:0}
  .nh-services .nh-service__copy>.nh-service-card__cta{grid-column:2;grid-row:1/3;align-self:start;margin:0;width:36px;height:36px}
  .nh-services .nh-service__copy .nh-service-card__cta-face{padding:0;min-height:36px;width:36px;justify-content:center;background:transparent}
  .nh-services .nh-service__copy .nh-service-card__cta-face>span:first-child,.nh-services .nh-service__copy .nh-service-card__cta-fill{display:none}
  .nh-services .nh-service-card__arrow{background:transparent;color:#101010}
  .nh-services .nh-services-direction{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:28px;border:0}
  .nh-services .nh-services-path{--nh-path-ink:#fff;--nh-path-copy:#c7c7c7;--nh-path-arrow:#fff;--nh-path-arrow-ink:#101010;display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-template-rows:76px auto;align-items:start;gap:18px 16px;min-height:0;padding:24px;border:0;border-radius:16px;background:#101010;color:#fff}
  .nh-services .nh-services-path--grow{--nh-path-ink:#101010;--nh-path-copy:#101010;background:#ff6418;color:#101010}
  .nh-services-path>.nh-desktop-art{display:none!important}
  .nh-services-path__copy{grid-column:1;grid-row:2;min-width:0}
  .nh-services .nh-services-path h3{font-size:25px!important;line-height:1.16;max-width:13ch}
  .nh-services-path__copy p{font-size:14px!important;line-height:1.55}
  .nh-services .nh-mobile-route-graphic{display:block;grid-column:1/-1;grid-row:1;min-width:0;height:76px}
  .nh-mobile-route-graphic svg{display:block;width:100%;height:100%}
  .nh-services .nh-services-path::before{display:none}
  .nh-services .nh-services-path__copy p{color:#c7c7c7}
  .nh-services .nh-services-path--grow .nh-services-path__copy p{color:#101010}
  /* Phone rows have no dark hover fill; their reading colors stay on white. */
  .nh-services .nh-service-card:is(:hover,:focus-visible,:active){color:#101010;border-color:var(--mobile-rule)}
  .nh-services .nh-services-path:focus-visible{outline:2px solid #ff6418;outline-offset:4px;color:#fff}
  .nh-services .nh-services-path--grow:focus-visible{outline-color:#101010;color:#101010}
  .nh-services .nh-service-card:is(:hover,:focus-visible,:active) .nh-service__copy>p{color:#626262}
  .nh-services-path__arrow{grid-column:2;grid-row:2;align-self:start;width:44px;height:44px;min-width:44px;aspect-ratio:1;background:#fff;color:#101010}
  .nh-services-path__arrow .nh-arrow{width:20px;height:20px}

  /* Decorative art is removed at the phone threshold, so its hero track must
     disappear at the same threshold. Actual article cover photos stay visible. */
  .na-hero__grid:has(.na-model),.nl-hero__grid:has(.nl-cookie){grid-template-columns:minmax(0,1fr);gap:0}
  .na-hero__art:has(.na-model),.nl-hero__art:has(.nl-cookie){display:none}
  .ec-page--prague .ec-price{grid-template-columns:minmax(0,1fr)}
  .ec-page--prague .ec-price>div{min-width:0}

  /* Shared case previews: the real website edge to edge, without device furniture. */
  .nh-home [data-home-scene="project"]>canvas{display:none!important;visibility:hidden!important;opacity:0!important}
  .nh-home [data-mobile-project-media]{aspect-ratio:4/3!important;border-radius:12px!important;overflow:hidden;background:#fff}
  .nh-home .nh-home-project__media[data-mobile-project-media]{aspect-ratio:8/5!important}
  .nh-home [data-mobile-project-media] .nh-home-project__fallback{inset:0;position:absolute;transform:none!important;opacity:1!important;visibility:visible!important}
  .nh-home [data-mobile-project-screen]{display:block!important;width:100%;height:100%}
  .nh-home [data-mobile-project-screen] img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
  .nh-home [data-mobile-project-media] .nh-home-project__screens{display:block;width:100%;height:100%;padding:0;gap:0}
  .nh-home [data-mobile-project-media] .nh-home-project__desktop{width:100%;height:100%;border:0;border-radius:0;aspect-ratio:auto;background:transparent}
  .nh-home [data-mobile-project-media] .nh-home-project__mobile{display:none}
  .nh-home .nh-device-poster{display:none!important}
  html[data-scene-mode="static"] .nh-has-device-poster>[data-mobile-project-media],
  html[data-scene-mode="static"] .nh-has-device-poster>:not(.nh-device-poster){display:block}
  .cs-device__monitor,.nh-project-card__desktop,.rd-device__frame{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;border:0!important;border-radius:12px!important;padding:0!important;transform:none!important;box-shadow:none!important;overflow:hidden;background:transparent}
  .cs-device__monitor img,.nh-project-card__desktop img,.rd-device__frame img{width:100%;height:100%;object-fit:cover;object-position:top}
  .cs-device__monitor::before,.cs-device__monitor::after,.cs-device__phone,.cs-device__stand,.nh-project-card__mobile,.rd-device__stand{display:none!important}
  .cs-device,.nh-project-card__devices{height:auto!important;min-height:0!important;padding:0!important;transform:none!important;display:block!important}
  .cs-model,.rd-device__model{height:auto!important;min-height:0!important;aspect-ratio:4/3}
  .cs-model .nh-scene-fallback,.rd-device__fallback{position:relative!important;display:block!important;inset:auto!important;height:100%;padding:0}
  .cs-comparison__screen{display:block!important;width:100%!important;height:100%!important}
  .cs-comparison__screen>img{position:relative!important;inset:auto!important;width:100%!important;height:100%!important;max-width:none!important;transform:none!important}
  .lp-value__scene{aspect-ratio:4/3;height:auto!important}

  /* Service pages read as an offer, not an empty stage above the content. */
  .nh-home .sp-hero__grid,.nh-home .fw-hero__grid,.nh-home .sl-hero__grid,.nh-home .nr-hero__grid,.nh-home .beauty-intro__grid{display:block;min-height:0;padding-block:42px 34px}
  .nh-home .sp-hero,.nh-home .fw-hero{min-height:0}
  .nh-home .sp-hero h1,.nh-home .fw-hero h1{font-size:clamp(38px,10.5vw,56px);line-height:1.1;margin-top:24px;letter-spacing:-.035em}
  .nh-home .sp-hero__copy>p,.nh-home .fw-hero__copy>p{font-size:17px;line-height:1.65;margin-top:22px;max-width:34ch}
  .sp-actions,.fw-actions{gap:18px!important;margin-top:26px!important;align-items:flex-start!important}
  .sp-hero__foot,.fw-hero__foot{min-height:0!important;padding-block:18px!important;font-size:11px}
  .ec-page .ec-section,.ec-page .ec-scope,.fw-story,.lp-value,.lp-delivery{padding-block:48px}
  .ec-heading,.fw-heading,.sp-section-heading,.lp-heading{display:block!important;margin-bottom:26px!important}
  .ec-page .ec-heading__body,.fw-heading>p,.sp-section-heading>p,.lp-heading>p{margin-top:18px!important}
  .ec-explorer__layout,.fw-story__layout,.sp-story__grid,.lp-value__layout,.lp-journey__layout,.sh-journey__layout,.rd-journey__layout{display:block!important}
  .ec-explorer__studio,.fw-story__studio,.lp-lab,.sh-studio,.rd-studio{height:auto!important;min-height:0!important;padding:0!important;position:static!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .ec-explorer__tabs,.fw-story__tabs{margin:0 0 26px!important;gap:0!important;border-top:1px solid #101010;border-bottom:1px solid #101010;border-radius:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ec-explorer__tabs button,.fw-story__tabs button{min-height:52px!important;background:transparent!important;border:0!important;border-radius:0!important;text-align:left;font-size:14px!important;color:#626262!important;padding:14px 10px!important}
  .ec-explorer__tabs button[aria-selected="true"],.fw-story__tabs button[aria-selected="true"]{color:#101010!important;box-shadow:inset 0 -2px #ff6418!important}
  .ec-explorer__panels,.fw-story__panels{padding:0!important}
  .ec-page .ec-explorer__panel h3,.fw-story__panel h3{font-size:27px!important;line-height:1.2}
  .ec-web-process__studio{display:block!important}
  .ec-web-process__tabs{grid-template-columns:1fr!important;gap:0!important}
  .ec-web-process__tabs button{min-height:62px!important;font-size:17px!important;grid-template-columns:24px 1fr!important}
  .ec-web-process__panels{padding-top:22px!important;min-height:120px}
  .ec-web-process__side{padding:0!important}
  .ec-web-formats{grid-template-columns:1fr!important;gap:0!important}
  .ec-web-format{padding:25px 0!important;border:0!important;border-top:1px solid var(--ec-line,var(--mobile-rule))!important;background:transparent!important;border-radius:0!important}
  .ec-web-format__title{min-height:0!important;padding-right:36px}
  .ec-web-format h3{font-size:25px!important}
  .ec-web-format p{margin-top:14px!important;min-height:0!important;font-size:15px!important}
  .lp-handover{display:block!important}.lp-handover__items{display:block!important}
  .lp-handover__items article,.lp-value__points article{padding-block:22px!important;border-top:1px solid var(--mobile-rule);border-radius:0!important;background:transparent!important}
  .lp-handover__number{display:none}
  .lp-value__project{margin-top:30px}
  .nh-home .lp-lab__controls{position:static;display:grid;grid-template-columns:1fr 1fr;margin-bottom:24px}
  .lp-journey__track,.lp-journey{height:auto!important;min-height:0!important}
  .lp-stage{padding:0!important;min-height:0!important}
  .lp-stage h3{font-size:29px!important}
  .lp-stage__eyebrow{margin-bottom:18px!important}
  .sl-closing__grid,.nr-closing__grid,.sl-care__layout,.sh-owner__grid{grid-template-columns:1fr!important}
  .nh-home .sh-admin,.sl-support__visual,.pr-growth-offer__visual{display:none!important}
  .sl-support{grid-template-columns:1fr!important}
  .pr-growth-offer__intro{grid-template-columns:1fr!important}
  .pr-compare-option__heading{grid-template-columns:1fr!important;min-height:0!important}
  .nh-home .nb-hero__grid{display:block;min-height:0;padding-block:40px}
  .nh-home .nb-hero{min-height:0}
  .nh-home .nb-hero h1{font-size:42px;line-height:1.1}
  .nh-related-card__body{padding:24px 20px!important}
  .fw-delivery__grid,.fw-package__layout,.fw-ownership__layout{grid-template-columns:1fr!important}
  .ab-eyebrow,.nb-eyebrow{display:none!important}
  .pr-plan__overview{display:block!important}
  .pr-plan__caption{padding:24px 0!important}
  .pr-compare-option__copy{margin-left:0!important}

  /* Actual process content becomes a readable sequence; no scroll-driven pin on phones. */
  .nh-process-story,.nh-process-pin{position:static!important;height:auto!important;min-height:0!important;transform:none!important}
  .nh-process-studio{display:block!important;min-height:0!important}
  .nh-process-steps{display:block!important;position:static!important;height:auto!important;padding:0!important}
  .nh-process-steps>[data-process-panel]{position:relative!important;display:block!important;visibility:visible!important;opacity:1!important;transform:none!important;padding:24px 0 24px 40px!important;border-top:1px solid var(--mobile-rule);min-height:0!important}
  .nh-process-number{position:absolute;left:0;top:27px;font-size:12px;color:#b83d00}
  .nh-process-steps h3{font-size:23px!important;margin-bottom:12px!important}
  .nh-process-steps p{font-size:15px!important;color:#626262}
  .nh-process-nav,.nh-scene-hint{display:none!important}
  .nh-care{margin-top:30px!important;padding-top:40px!important}
  .nh-care-layout{display:block!important}
  .nh-care-grid{display:block!important}
  .nh-care-grid>a{display:grid!important;grid-template-columns:64px minmax(0,1fr) 40px!important;align-items:center;gap:16px!important;min-height:128px;padding:22px 0!important;border-top:1px solid var(--mobile-rule)!important;border-radius:0!important;background:transparent!important}
  .nh-care-grid>a>div{grid-column:2;grid-row:1;min-width:0}
  .nh-mobile-care-graphic{display:block;grid-column:1;grid-row:1;width:64px;height:72px;color:#101010}
  .nh-mobile-care-graphic svg{display:block;width:100%;height:100%}
  .nh-care-number{display:none!important}
  .nh-care-grid h3{font-size:21px!important;line-height:1.2}
  .nh-care-grid .nh-care__detail{display:none}
  .nh-care-grid .nh-care__brief{display:block;font-size:14px;line-height:1.5;margin-top:9px;color:#626262}
  .nh-care-grid .nh-care-arrow{grid-column:3;grid-row:1;display:grid;place-items:center;align-self:center;width:40px!important;height:40px!important;min-width:40px;aspect-ratio:1;border:1px solid #d8d8d8;border-radius:50%;transform:none;flex:none}
  .nh-care-grid .nh-care-arrow .nh-arrow{width:18px;height:18px}
  .nh-home .nh-portal{background:#101010}
  .nh-portal__workspace{display:block!important;min-height:0!important;margin-top:28px!important}
  .nh-portal__story{padding:0!important}
  .nh-portal-map{display:block;width:100%;height:104px}
  .nh-portal-map svg{display:block;width:100%;height:100%}
  .nh-portal-map__branch{stroke:#626262;stroke-width:1.2}
  .nh-portal__story:has([data-scene-tool="0"].is-scene-active) .nh-portal-map__branch--work,
  .nh-portal__story:has([data-scene-tool="1"].is-scene-active) .nh-portal-map__branch--docs,
  .nh-portal__story:has([data-scene-tool="2"].is-scene-active) .nh-portal-map__branch--care{stroke:#ff6418}
  .nh-portal .nh-portal__switch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
  .nh-portal .nh-portal__indicator{display:none}
  .nh-portal .nh-portal__switch button{display:flex;flex-direction:column;justify-content:flex-start;gap:12px;min-height:92px;padding:14px 2px;border:0;border-bottom:1px solid #626262;border-radius:0;background:transparent;box-shadow:none;color:#c7c7c7;font-size:13px;white-space:normal}
  .nh-portal .nh-portal__switch button.is-scene-active,.nh-portal .nh-portal__switch.is-indicator-ready button.is-scene-active{background:transparent;color:#ff6418;border-bottom-color:#ff6418;box-shadow:none}
  .nh-portal .nh-portal__tab-icon{display:block;width:28px;height:28px;stroke-width:1.3}
  .nh-portal__captions{height:auto!important;min-height:174px!important;display:grid!important;margin-top:4px}
  .nh-portal__captions>[data-portal-panel]{grid-area:1/1;position:static!important;display:block!important;opacity:1;visibility:visible;transform:none;padding:24px 0!important;border:0}
  .nh-portal__captions>[data-portal-panel][hidden]{display:block!important;visibility:hidden!important;opacity:0!important;pointer-events:none}
  .nh-portal__number{display:none!important}
  .nh-portal__captions h3{font-size:24px!important}
  .nh-portal__captions p{font-size:15px!important}
  .nh-portal__invite{gap:0!important;padding-top:24px!important;margin-top:12px!important;min-height:0!important}

  /* The two explicit live exceptions have independent, small renderers. */
  html[data-scene-mode="static"] .pf-showcase[data-showcase-mode="pending"] canvas,
  html[data-scene-mode="static"] .pf-showcase[data-showcase-mode="ready"] canvas,
  html[data-scene-mode="static"] .nh-contact-model[data-mobile-contact] canvas{display:block!important;visibility:visible!important;opacity:1!important}
  .nh-home #contact .nh-contact-model{display:block!important;width:100%;height:220px;min-height:0;margin:18px auto 4px;max-width:360px}
  .nh-home #contact .nh-contact-model:not([data-mobile-contact]),
  .nh-home #contact .nh-contact-model[data-mobile-contact="fallback"]:not(.is-scene-ready){display:none!important}
  #contact .nh-contact-model .nh-scene-fallback{display:none!important}
  #contact .nh-contact-model canvas{width:100%;height:100%}
  html[data-scene-compact]:not([data-portfolio-cover-reserve]) .pf-hero:not(.is-scroll-cover) .pf-showcase{display:none}
  .pf-hero:has(.pf-showcase[data-showcase-mode="pending"]) .pf-intro{position:absolute!important;z-index:3;top:40px;left:22px;width:calc(100% - 44px);height:auto;padding:0;margin:0;clip:auto;clip-path:none;white-space:normal;opacity:1;pointer-events:none}
  .nh-contact__intro h2{font-size:42px!important}
  .nh-contact__intro>p{font-size:16px!important}
  .nh-contact-grid{gap:24px!important}
  .nh-form{padding:25px 20px!important;border-radius:16px!important}
  .nh-form__row{grid-template-columns:1fr!important}
  .nh-form input,.nh-form textarea,.nh-form select{font-size:16px}
}
@media(max-width:380px){.ec-page--prague .ec-price__option{flex-direction:column;align-items:flex-start;gap:10px}}
@media(max-width:360px){.nh-page{--mobile-gutter:18px}.nh-hero .nh-hero__copy h1{font-size:34px;max-width:none;line-height:1.08}.nh-hero .nh-actions{gap:14px}.nh-hero .nh-actions .nh-button--orange{padding-inline:16px;font-size:13px}.nh-hero .nh-actions .nh-button--outline{font-size:13px}.nh-services .nh-services-path{padding:20px;gap:16px 12px}.nh-services .nh-services-path h3{font-size:23px!important}.nh-care-grid>a{grid-template-columns:48px minmax(0,1fr) 36px!important;gap:12px!important}.nh-mobile-care-graphic{width:48px;height:60px}.nh-care-grid .nh-care-arrow{width:36px!important;height:36px!important;min-width:36px}.nh-care-grid h3{font-size:20px!important}}
