/* Review-only mobile refinement. Desktop declarations remain untouched. */
.mobile-applications-toggle{display:none}
@media(max-width:600px){
  html{scroll-padding-top:20px}
  .concept{font-size:0;justify-content:center;padding:8px 20px;background:#191b18}
  .concept span{font-size:8px;text-align:center;letter-spacing:.2px;color:#a7aca0}
  header{height:66px;padding:0 22px}
  header>.button{display:none}
  .brand{font-size:30px}.brand small{font-size:6px}
  .hero{height:432px;min-height:0;max-height:none}
  .hero>img{object-position:72% center;filter:brightness(.8)}
  .heroshade{background:linear-gradient(90deg,#000a,#0001),linear-gradient(0deg,#101110 0%,transparent 27%)}
  .herocopy{padding:32px 22px 36px}
  .herocopy .eyebrow{font-size:8px;line-height:1.6;letter-spacing:1px;max-width:270px;margin-bottom:0}
  .herocopy h1{font-size:clamp(58px,18vw,82px);line-height:.94;letter-spacing:-.5px;margin-top:28px}
  .herointro{font-size:13px;line-height:1.6;max-width:270px;margin:23px 0}
  .herocopy .button{font-size:12px;min-height:48px;margin:0;padding:16px 20px;gap:30px}
  .herobottom,.categorynav{display:none}
  .collection{padding:36px 20px 0}
  .sectionheading,.solutions .sectionheading{padding:0 0 24px}
  .sectionheading h2{font-size:36px;line-height:1.03;letter-spacing:0}
  .eyebrow{font-size:9px;line-height:1.5;letter-spacing:1.2px;margin-bottom:14px;color:#b3b8ad}
  .sectionheading>p{font-size:12px;line-height:1.65;margin:14px 0 0;max-width:320px}
  .productgrid{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
  .productopen,.wide .productopen{height:116px;min-height:0;background:transparent;border-bottom:1px solid var(--line);overflow:hidden}
  .productopen img,.wide .productopen img{position:absolute;left:0;top:12px;width:92px;height:92px;object-fit:cover;object-position:center;border-radius:2px;transform:none!important}
  #three-d img{object-position:80% center}
  .productshade,.productnumber,.productopen .imagelabel,.interactivecaption{display:none}
  .productname{position:absolute;left:109px;top:24px;bottom:auto;font-size:29px;line-height:1;letter-spacing:0}
  .productbottom{position:absolute;left:109px;right:5px;bottom:22px;gap:10px;font-size:10px;line-height:1.5;color:#adb3a5}
  .productbottom>span{max-width:165px}
  .productbottom b{width:30px;height:30px;flex-shrink:0;border-color:#42483b;color:#f2f2ed}
  .productbottom b:before{top:8px;left:9px}.productbottom b:after{top:13px;left:7px}
  .collectionnote{font-size:10px;line-height:1.7;margin:18px 0 0;color:#9ba392}
  .solutions{padding:48px 20px 38px}
  .solutiontabs{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:3px;overflow:hidden}
  .solutiontabs button,.solutiontabs button+button{font-family:'DM Sans',Arial,sans-serif;font-size:12px;line-height:1.45;font-weight:600;padding:14px 12px;min-height:64px;display:block;text-align:left;overflow-wrap:normal;border-bottom:0}
  .solutiontabs button+button{border-left:1px solid var(--line)}
  .solutiontabs button[aria-selected=true]{background:#272c24;color:#fff;box-shadow:inset 0 -3px var(--accent)}
  .solutiontabs span{display:none}
  .solutionpanel{grid-template-columns:1fr;padding-top:24px;gap:0;row-gap:0}
  .solutionvisual{display:none}
  .solutioncopy{padding:0}
  .solutioncopy>.eyebrow{display:none}
  .solutioncopy h3{font-size:31px;line-height:1.07;letter-spacing:0;max-width:320px}
  .solutioncopy>p:not(.eyebrow){font-size:13px;line-height:1.7;margin:15px 0 20px}
  .solutioncopy .button{background:transparent;border:0;border-bottom:1px solid #67735c;color:#e7ebdf;padding:12px 0;gap:26px;font-size:12px;min-height:44px}
  .solutioncopy ul{margin:20px 0}
  .mobile-simple .solutionpanel:not(.applications-expanded) .solution-gallery,
  .mobile-simple .solutioncopy ul{display:none}
  .mobile-applications-toggle{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:54px;margin:24px 0 0;padding:15px 16px;background:#20241e;border:1px solid #424b3b;color:#eef1e7;font-size:12px;font-weight:500;border-radius:3px}
  .mobile-applications-toggle span:last-child{font-size:22px;font-weight:400;line-height:1}
  .solution-gallery{margin-top:24px}
  .galleryheading{display:none}
  .solution-grid{grid-template-columns:1fr 1fr;gap:10px}
  .solution-tile{height:192px}
  .tile-title{font-size:24px;bottom:53px;line-height:1.03}
  .tile-caption{font-size:9px;line-height:1.5;bottom:17px}
  .tile-index{display:none}.tile-demo{font-size:5px;left:12px;right:12px;top:12px;max-width:none;text-align:left}
  .trusted-strip{margin-top:28px;padding:23px 0;gap:20px}
  .trusted-strip>.eyebrow{font-size:9px;letter-spacing:1.5px;color:#a6af9c}
  .brand-logos{gap:18px}.brand-logos img{max-width:100%;max-height:35px}
  .programme{padding:38px 22px;background:#e3e6dc}
  .programmeheading h2{font-size:39px;line-height:1.04;letter-spacing:0}
  .programmeheading>p{font-size:12px;line-height:1.7;margin:15px 0 0}
  .routes{margin-top:24px}
  .routes>a,.routes>a+a{padding:22px 0}
  .routes span{font-size:9px;letter-spacing:1px}
  .routes h3{font-size:30px;line-height:1.1;margin:13px 0 10px}
  .routes p{font-size:12px;line-height:1.65;margin:0}
  .routes b{margin-top:15px;font-size:11px}
  .steps{gap:20px;padding-top:28px}
  .steps h4{font-size:13px}.steps p{font-size:11px;line-height:1.65}
  .enquire{padding:42px 22px 28px;gap:25px}
  .enquire h2{font-size:38px;line-height:1.05;letter-spacing:0;max-width:310px}
  .enquire h2 span{color:var(--ink)}
  .enquire>div>p:not(.eyebrow){font-size:13px;line-height:1.65;margin:17px 0}
  .enquire small{font-size:10px;line-height:1.7;max-width:320px}
  .enquire .eyebrow{font-size:8px;letter-spacing:1px}
  .enquire form{padding-top:0}.formrow{gap:23px;margin-bottom:23px}
  #brief-form input:not([type=radio]),#brief-form select,#brief-form textarea{font-size:16px}
  .enquire label,.enquire legend{font-size:10px;letter-spacing:.7px}
  .chips{gap:7px}.chips span{font-size:11px;padding:10px;min-height:44px}
  .enquire form>.button{min-height:50px;font-size:12px}
  footer{margin:0 22px;padding:24px 0 22px}footer>.brand{font-size:28px}
  footer>div{font-size:9px;line-height:1.7;margin-top:20px;gap:10px}
  footer>p{font-size:11px;margin:14px 0 0}footer>p a{padding:8px 0}
  dialog{width:calc(100vw - 24px);max-height:90dvh;border-color:#4c5445;border-radius:4px}
  .detailvisual{min-height:210px}.detailcopy{padding:26px 22px}
  .detailcopy h2{font-size:37px}.detailcopy>p:not(.eyebrow){font-size:13px;margin:18px 0}
  .detailcopy ul{font-size:12px}.detailnote{font-size:10px;line-height:1.7}
  .detailcopy .button{font-size:12px;padding:18px}
  .dialogclose{width:44px;height:44px;top:6vh;right:25px}
}
@media(max-width:360px){
 .hero{height:425px}.herocopy{padding-left:20px;padding-right:20px}
 .productopen img,.wide .productopen img{width:80px;height:84px;top:16px}
 .productname,.productbottom{left:95px}.productname{font-size:27px}
 .productbottom{font-size:9px}.productbottom b{width:26px;height:26px}
 .productbottom b:before{top:6px;left:7px}.productbottom b:after{top:11px;left:5px}
 .solutiontabs button,.solutiontabs button+button{font-size:11px;padding:13px 10px}
}
@media(max-width:360px){.tile-title{font-size:18px;overflow-wrap:anywhere;left:12px;right:12px}.tile-caption{left:12px;right:12px}}
