/* Touch controls and small-screen layouts across every route. */
@media(max-width:850px),(pointer:coarse){
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea{font-size:16px!important}
  .pm-field input,.pm-field select,.pm-sort select,.search-field,.reference-menu-search>input{min-height:44px}
  .outline-button,.text-link,.pm-load-more,.pm-reset,.pm-callback .pm-submit,.pm-close,.close-search{min-height:44px;min-width:44px}
  .header-actions>a,.header-actions>button,.menu-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center}
  .main-nav>a,.nav-services>summary,.reference-menu-group>a,.pm-filters label{min-height:44px}
  .pm-service-card p:not(.pm-service-category){font-size:16px}
  .guide-body,.editorial-copy,.story-chapter-copy,.legal-document,.calculator-layout{min-width:0;overflow-wrap:break-word}
  .site-search{max-height:calc(100dvh - 32px);overflow:auto}
  .site-search .search-field{font-size:16px}
  .pm-callback{scroll-padding-block:24px}
}
@media(max-width:600px){
  .site-header{padding-inline:16px;gap:8px}
  .wordmark{font-size:20px}
  .header-actions{gap:4px}
  .header-actions .enquire-link,.header-actions .search-toggle,.menu-toggle{min-width:44px;width:auto;min-height:44px;display:flex;align-items:center;justify-content:center}
  .header-actions .enquire-link span{font-size:12px}
  .menu-toggle{width:44px;flex-shrink:0}
  .hero-video-toggle{width:44px;height:44px;right:20px;bottom:24px}
  .hero-scroll{min-width:44px;min-height:44px;bottom:24px}
  .home-hero{height:100svh;min-height:480px}
  .home-hero>.hero-film,.home-hero>.hero-poster{object-position:32% center}
  .hero-caption{left:24px;right:24px;bottom:15%}
  .hero-caption h1{font-size:24px;line-height:1.3}
  .navy-footer-follow>a{width:44px;height:44px;min-height:44px;padding:11px;margin-right:6px}
  .navy-footer-bottom>nav a{display:flex;align-items:center;min-height:40px}
  .content-tabs{gap:10px 22px}
  .content-tabs>a{display:inline-flex;align-items:center;min-height:44px}
  .calculator-summary{padding:26px 22px}
}
@media(max-height:500px) and (orientation:landscape){
  .home-hero{height:100svh;min-height:320px}
  .hero-caption{bottom:20%;left:8%;right:8%}
  .hero-caption h1{font-size:21px;max-width:640px;margin-inline:auto}
  .pm-callback{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;padding:56px 32px 28px;overflow:auto}
  .pm-callback form,.pm-success{max-width:480px;margin-inline:auto}
  .pm-callback h2{max-width:480px;margin-inline:auto}
}
/* Phone/tablet navigation: full-screen translucent panel with a fixed contact row. */
.main-nav>.mobile-careers,.mobile-menu-actions{display:none}
.home-hero>.hero-poster>img{display:block;width:100%;height:100%;object-fit:cover;object-position:inherit}
.network-logo.network-logo-lt img{transform:scale(2.05);mix-blend-mode:multiply}
.careers-placeholder{min-height:72svh;padding-block:165px 110px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.careers-placeholder h1{font:400 clamp(46px,5vw,72px)/1.15 var(--serif);color:var(--navy);margin:16px 0 24px}
.careers-rule{display:block;width:64px;height:1px;background:var(--gold);margin-bottom:36px}
.careers-placeholder h2{font:400 28px/1.3 var(--serif);color:var(--navy);margin-bottom:18px}
.careers-placeholder p:not(.eyebrow){max-width:460px;color:var(--muted)}
.careers-placeholder .outline-button{margin-top:34px}
@media(max-width:850px),(max-width:950px) and (pointer:coarse) and (orientation:landscape){
  html.mobile-menu-open,html.mobile-menu-open body{overflow:hidden;overscroll-behavior:none}
  .site-header{--mobile-header-height:80px;height:var(--mobile-header-height);display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;grid-template-rows:var(--mobile-header-height);align-content:start;gap:0 10px;padding:0 22px;background:#142030a8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
  .site-header>.wordmark{grid-column:1;grid-row:1;font-size:clamp(23px,6.1vw,32px);letter-spacing:.005em;width:max-content;max-width:100%;line-height:1;font-weight:500}
  .site-header>.header-actions{grid-column:2;grid-row:1;display:flex;gap:0;margin:0}
  .header-actions .enquire-link,.header-actions .chat-link{display:none!important}
  .header-actions .search-toggle{width:44px;height:44px;padding:7px;display:flex}
  .header-actions .search-toggle span{display:none}
  .header-actions .search-toggle svg{height:29px;width:29px;stroke-width:1.6}
  .site-header>.menu-toggle{grid-column:3;grid-row:1;order:initial;display:flex;width:44px;height:44px;min-width:44px;padding:4px;gap:8px;align-items:center;justify-content:center}
  .menu-toggle>span{display:block;width:36px;height:1.5px;flex:0 0 1.5px;transition:transform .22s ease,opacity .15s ease}
  .menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(9.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true]>span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-9.5px) rotate(-45deg)}
  .site-header.mobile-menu-open{height:100dvh;background:#1c252ed1;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
  .site-header .main-nav{display:none;position:absolute;top:var(--mobile-header-height);bottom:calc(70px + env(safe-area-inset-bottom));left:0;right:0;margin:0;padding:0 22px 28px;border-top:1px solid #ffffff26;border-bottom:0;background:transparent;max-height:none;overflow:auto;overscroll-behavior:contain}
  .site-header .main-nav.is-open{display:block;animation:mobile-nav-reveal .22s ease both}
  .site-header .main-nav>a,.site-header .nav-services>summary{display:flex;align-items:center;min-height:78px;padding:21px 0;border-bottom:1px solid #ffffff26;font:400 17px/1.4 var(--sans);color:#fff;letter-spacing:.01em;text-decoration:none;white-space:normal}
  .site-header .main-nav>.mobile-careers{display:flex;border-bottom:0}
  .site-header .nav-services>summary{justify-content:space-between}
  .site-header .nav-chevron{width:0;height:0;border:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor;transform:none;margin:0 2px 0 12px}
  .site-header .nav-services[open]>summary .nav-chevron{transform:rotate(180deg);margin-top:0}
  .site-header .reference-menu{position:static;min-height:0;width:100%;background:transparent;box-shadow:none;backdrop-filter:none;padding:28px 0 12px;overflow:visible;max-height:none}.site-header .reference-menu-close{display:none}
  .site-header .reference-menu-inner{grid-template-columns:1fr 1fr;gap:24px}
  .site-header .reference-menu-group h3{font-size:16px;color:#decba9}
  .site-header .reference-menu-group>a{font-size:15px;margin-bottom:10px;white-space:normal;min-height:44px}
  .site-header .reference-menu-group>a>span:not([aria-hidden]){display:none}
  .site-header .reference-menu-search>label{font-size:16px;color:#decba9}
  .site-header .mobile-menu-actions{display:none}
  .site-header.mobile-menu-open .mobile-menu-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:absolute;inset:auto 0 0;min-height:70px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #ffffff26;background:#14203040}
  .mobile-menu-actions>a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:50px;text-transform:uppercase;font-size:15px;white-space:nowrap}
  .mobile-menu-actions svg{width:23px;height:23px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
  .site-header a:focus-visible,.site-header button:focus-visible,.site-header summary:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .page-intro{padding-top:130px}
}
@media(max-width:600px){
  .site-header{--mobile-header-height:72px;padding-inline:16px;gap:0 6px}
  .site-header .main-nav{padding-inline:22px}
  .site-header .reference-menu-inner{grid-template-columns:1fr}
  .mobile-menu-actions>a{font-size:13px;gap:7px}
  .careers-placeholder{padding-block:140px 80px;min-height:75svh}
  .careers-placeholder h2{font-size:26px}
}
@media(max-width:600px),(max-width:950px) and (pointer:coarse) and (orientation:landscape){
  .home-hero>.hero-poster,.home-hero>.hero-film{object-position:center}
}
@keyframes mobile-nav-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.site-header .main-nav.is-open{animation:none}.menu-toggle>span{transition:none}}
