/* SARS Next Solution — targeted phone/tablet layout corrections (2026-10-09).
   Responsive rules only. Existing desktop visuals, text, assets and animations untouched. */
@media screen and (max-width:1060px){
  .site-header,.nav-wrap{height:72px}
  .site-header{background:rgba(5,14,28,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.10)}
  .nav-wrap{gap:12px;min-width:0}
  .site-header .brand{display:flex;flex:0 1 auto;min-width:0;max-width:calc(100% - 64px)}
  .site-header .brand img{display:block;width:clamp(165px,43vw,218px);max-width:100%;max-height:54px;height:auto;object-fit:contain}
  .nav-actions{margin-left:auto;flex:0 0 auto;min-width:44px}
  .menu-button{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;touch-action:manipulation}
  .site-nav{position:fixed;top:72px;bottom:0;left:0;right:0;inset:72px 0 0;width:100%;height:calc(100vh - 72px);height:calc(100dvh - 72px);max-height:calc(100dvh - 72px);padding:18px max(18px,calc((100vw - 540px)/2)) calc(28px + env(safe-area-inset-bottom));background:linear-gradient(160deg,#071322 0%,#0b1c32 100%);border-top:1px solid rgba(135,192,255,.13);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:1001}
  .site-nav.open{display:block}
  .site-nav .nav-link,.site-nav .dropdown-toggle{min-height:52px;padding:14px 12px;max-width:100%;white-space:normal;text-align:left;font-size:15px;line-height:1.4;touch-action:manipulation}
  .site-nav .dropdown-menu{position:static;inset:auto;width:100%;max-width:100%;min-width:0;margin:4px 0 12px;padding:7px;transform:none!important;box-shadow:none;overflow:visible}
  .site-nav .dropdown:not(.open)>.dropdown-menu{display:none}
  .site-nav .dropdown.open>.dropdown-menu{display:grid;grid-template-columns:minmax(0,1fr)}
  .site-nav .dropdown-menu a,.site-nav .legacy-about-mobile-menu a,.site-nav .legacy-services-mobile-menu a,.site-nav .legacy-solutions-mobile-menu a{display:block;max-width:100%;padding:12px 13px;line-height:1.45;overflow-wrap:anywhere}
  .legacy-about-desktop-menu,.legacy-solutions-desktop-menu,.legacy-services-desktop-menu{display:none!important}
  body.menu-open{overflow:hidden}
}
@media screen and (max-width:767px){
  :root{--mobile-gutter:18px}
  html{scroll-padding-top:82px}
  body{min-width:0}
  .container{width:calc(100% - 2*var(--mobile-gutter));max-width:100%;min-width:0}
  main,main>section,.section{min-width:0}
  .section{padding-top:64px;padding-bottom:64px}
  .section-sm{padding-top:46px;padding-bottom:46px}
  .section-title{display:block;margin-bottom:28px}
  .section-title>div:first-child{max-width:100%}
  .section-title h2,.page-hero h1{font-size:clamp(2.15rem,9vw,3.55rem);line-height:1.08;overflow-wrap:break-word}
  .section-title .lead,.page-hero .lead{font-size:1rem;line-height:1.68}
  .section-title>.btn,.section-title>a.btn{margin-top:20px;max-width:100%;white-space:normal;text-align:center}
  .section-title,.split,.hero-grid,.contact-grid,.solution-row,.case-study{min-width:0}
  .grid,.grid-2,.grid-3,.grid-4,.industry-grid,.stats,.form-grid{grid-template-columns:minmax(0,1fr)}
  .grid>* ,.footer-grid>*,.contact-grid>*,.split>*,.hero-grid>*{min-width:0}
  .btn,.premium-editorial-cta{max-width:100%;white-space:normal}
  .page-hero{padding:111px 0 54px;min-height:auto}
  .hero-with-video.premium-editorial-hero{min-height:100svh;min-height:100dvh;height:auto;padding:110px 0 78px}
  .premium-editorial-layout{display:grid;grid-template-columns:minmax(0,1fr);min-height:calc(100svh - 188px);min-height:calc(100dvh - 188px);align-items:center}
  .premium-editorial-copy{width:100%;max-width:100%;min-width:0;padding:10px 0 16px}
  .premium-editorial-kicker{max-width:100%;display:inline-flex;white-space:normal;line-height:1.5;padding:9px 14px;font-size:clamp(.57rem,2.3vw,.7rem);letter-spacing:.10em;text-wrap:balance}
  .premium-editorial-title{max-width:100%;margin-bottom:24px;line-height:.95;letter-spacing:-.042em}
  .premium-editorial-title .premium-title-primary{font-size:clamp(3.5rem,15vw,5.15rem)}
  .premium-editorial-title .premium-title-secondary{font-size:clamp(2.35rem,10.8vw,3.8rem)}
  .premium-editorial-title .premium-title-gradient{font-size:clamp(2.5rem,11.3vw,4.15rem);overflow-wrap:normal}
  .premium-editorial-description{max-width:100%;font-size:clamp(.9rem,3.6vw,1.04rem);line-height:1.65;margin-bottom:25px}
  .premium-editorial-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%}
  .premium-editorial-cta,.premium-editorial-cta-secondary{display:flex;justify-content:space-between;width:100%;min-width:0;min-height:60px;padding:9px 11px 9px 18px;border-radius:16px;font-size:1rem;gap:12px}
  .premium-editorial-arrow{flex:0 0 41px;width:41px;height:41px}
  .premium-editorial-hero .hero-video{width:100%;height:100%;object-fit:cover;object-position:60% center}
  .premium-editorial-hero .premium-editorial-overlay{background:linear-gradient(90deg,rgba(1,6,20,.91),rgba(2,8,24,.75) 65%,rgba(2,8,24,.55))}
  .premium-scroll-label{bottom:22px;font-size:.65rem;letter-spacing:.14em}
  .signal-list{min-height:0;padding:21px 0;gap:9px 18px;justify-content:flex-start;font-size:.68rem;letter-spacing:.055em;line-height:1.5}
  .service-showcase-section .grid,.service-image-grid,.featured-solution-grid{grid-template-columns:minmax(0,1fr)}
  .service-image-card,.featured-solution-card{min-width:0;max-width:100%}
  .featured-solution-card{height:auto;min-height:440px}
  .featured-solution-content{width:100%;max-width:100%;min-width:0;padding:22px}
  .featured-solution-content h3{font-size:clamp(1.35rem,6vw,1.8rem)}
  .featured-solution-content p{font-size:.91rem;line-height:1.55}
  .featured-solution-points{display:flex;flex-wrap:wrap;gap:7px}
  .cta-panel{padding:30px 21px;border-radius:22px}
  .cta-panel h2{font-size:clamp(2rem,8vw,3rem)}
  .cta-content .btn{max-width:100%}
  .contact-grid{gap:22px}
  .contact-card,.form-card{width:100%;max-width:100%;min-width:0;padding:23px 19px;border-radius:20px}
  .form-card input,.form-card textarea,.form-card select{max-width:100%;min-width:0}
  .form-grid{gap:14px}
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .footer-grid>div,.footer-grid>div:last-child{grid-column:auto;min-width:0}
  .footer-brand img{width:min(230px,100%)}
  .footer-bottom{display:flex;flex-wrap:wrap;gap:14px;justify-content:flex-start}
  .footer-contact a{overflow-wrap:anywhere}
  .isolated-service-hero{padding:111px 0 62px;min-height:auto}
  .isolated-service-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:27px}
  .isolated-service-copy{min-width:0}
  .isolated-service-copy h1{font-size:clamp(2.45rem,10vw,4.1rem);line-height:1.05;overflow-wrap:break-word}
  .isolated-service-copy p{font-size:1rem;line-height:1.68}
  .isolated-hero-actions{display:flex;flex-wrap:wrap;gap:10px;max-width:100%}
  .isolated-hero-actions .btn{width:100%;max-width:100%;text-align:center}
  .isolated-proof{display:flex;flex-wrap:wrap;gap:10px 16px}
  .isolated-service-visual{width:100%;max-width:100%;min-width:0;min-height:300px;border-radius:22px}
  body.cyber-security-page .cyber-hero-visual.cyber-video-hero{min-height:360px}
  .cyber-video-stage,.cyber-video-ambient{max-width:100%}
  .isolated-overview-grid,.isolated-value-grid,.isolated-process-layout{grid-template-columns:minmax(0,1fr)}
  .solution-focus-hero{padding:103px 0 60px}
  .solution-editorial,.solution-value-section,.solution-delivery{padding:64px 0}
  .solution-delivery-step{grid-template-columns:42px minmax(0,1fr);gap:12px}
  .solution-capability-row{grid-template-columns:40px minmax(0,1fr);gap:12px}
  .solution-capability-row p{grid-column:2}
  .about-premium-hero{padding:112px 0 62px;min-height:auto}
  .about-hero-layout,.about-story-grid,.about-purpose-layout{grid-template-columns:minmax(0,1fr)}
  .about-hero-copy h1{font-size:clamp(2.7rem,11vw,4.3rem);overflow-wrap:break-word}
  .about-proof-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-category-grid,.about-process-grid,.about-capability-grid,.about-principle-grid{max-width:100%;min-width:0}
  .contact-item,.footer-contact{min-width:0}
  .floating-contact{right:13px;bottom:max(13px,env(safe-area-inset-bottom));width:52px;height:52px}
  .back-top{right:18px;bottom:79px}
}
@media screen and (max-width:400px){
  :root{--mobile-gutter:15px}
  .site-header .brand img{width:clamp(154px,46vw,185px)}
  .premium-editorial-title .premium-title-primary{font-size:clamp(3.15rem,14.8vw,4rem)}
  .premium-editorial-title .premium-title-secondary{font-size:clamp(2.1rem,10.3vw,3rem)}
  .premium-editorial-title .premium-title-gradient{font-size:clamp(2.2rem,11vw,3.4rem)}
  .premium-editorial-description{font-size:.91rem}
  .featured-solution-content{padding:18px}
  .card{padding:21px}
  .isolated-service-copy h1{font-size:clamp(2.2rem,9.6vw,3.2rem)}
}
@media screen and (max-height:690px) and (max-width:767px){
  .premium-editorial-hero .premium-editorial-layout{min-height:0}
  .premium-editorial-hero{padding-bottom:75px}
}

/* ===============================================================
   Mobile view v2 — navigation + readable content, phone-only rules
   The homepage's transformed floating capsule made position:fixed
   mobile navigation calculate against the header rather than the
   viewport. Neutralize that transform on small screens and provide
   an actual viewport-height drawer with visible items.
   =============================================================== */
@media screen and (max-width:1060px){
  :root{
    --sars-phone-header:70px;
    --xl-header-height:70px;
    --premium-header-height:70px;
  }
  html { scroll-padding-top:86px; }
  body[data-page="index"] .site-header,
  body .site-header {
    position:fixed!important;
    inset:0 0 auto 0!important;
    top:0!important;left:0!important;right:0!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--sars-phone-header)!important;
    min-height:var(--sars-phone-header)!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border-radius:0!important;
    background:rgba(4,12,27,.975)!important;
    border:0!important;
    border-bottom:1px solid rgba(157,194,231,.17)!important;
    box-shadow:0 8px 30px rgba(1,7,16,.27)!important;
    z-index:2000!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
  }
  body[data-page="index"] .site-header.scrolled,
  body .site-header.scrolled {top:0!important;}
  body[data-page="index"] .site-header .nav-wrap,
  .site-header .nav-wrap{
    height:var(--sars-phone-header)!important;
    min-height:var(--sars-phone-header)!important;
    width:calc(100% - 32px)!important;
    max-width:540px!important;
    padding:0!important;
    margin-inline:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
  }
  body[data-page="index"] .site-header .brand,
  .site-header .brand{flex:0 1 auto!important;min-width:0!important;max-width:calc(100% - 60px)!important;}
  body[data-page="index"] .site-header .brand img,
  .site-header .brand img{
    display:block!important;
    width:clamp(166px,44vw,205px)!important;
    max-width:100%!important;
    max-height:56px!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .site-header .nav-actions{flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;margin-left:auto!important;}
  .site-header .nav-actions .btn {display:none!important;}
  .site-header .menu-button {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    border-radius:13px!important;
    border:1px solid rgba(185,210,237,.2)!important;
    background:rgba(255,255,255,.055)!important;
    touch-action:manipulation;
    z-index:1;
  }
  body[data-page="index"] .site-header .site-nav,
  .site-header .site-nav {
    position:fixed!important;
    inset:var(--sars-phone-header) 0 0 0!important;
    top:var(--sars-phone-header)!important;
    bottom:0!important;
    right:0!important;
    left:0!important;
    width:100%!important;
    max-width:100vw!important;
    height:calc(100vh - var(--sars-phone-header))!important;
    height:calc(100dvh - var(--sars-phone-header))!important;
    min-height:0!important;
    max-height:none!important;
    padding:22px max(18px,calc((100vw - 500px)/2)) max(35px,env(safe-area-inset-bottom))!important;
    margin:0!important;
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    gap:4px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    border:0!important;
    border-radius:0!important;
    background:linear-gradient(165deg,#071325 0%,#0b2037 100%)!important;
    box-shadow:0 24px 56px rgba(0,0,0,.32)!important;
    transform:none!important;
    opacity:1!important;
    z-index:2001!important;
  }
  body[data-page="index"] .site-header .site-nav.open,
  .site-header .site-nav.open {display:flex!important;visibility:visible!important;pointer-events:auto!important;}
  .site-header .site-nav .nav-link,
  .site-header .site-nav .dropdown-toggle,
  body[data-page="index"] .site-header .site-nav .nav-link,
  body[data-page="index"] .site-header .site-nav .dropdown-toggle{
    width:100%!important;
    min-height:50px!important;
    max-height:none!important;
    height:auto!important;
    padding:13px 14px!important;
    border-radius:12px!important;
    border-bottom:1px solid rgba(202,225,255,.09)!important;
    font-size:15px!important;
    line-height:1.45!important;
    letter-spacing:0!important;
    color:#edf5ff!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .site-header .site-nav .dropdown{flex:0 0 auto!important;width:100%!important;min-width:0!important;}
  .site-header .site-nav .dropdown-menu{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    margin:5px 0 12px!important;
    padding:8px!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    box-shadow:none!important;
    background:#11223b!important;
    border:1px solid rgba(169,207,255,.1)!important;
    border-radius:14px!important;
  }
  .site-header .site-nav .dropdown:not(.open)>.dropdown-menu{display:none!important;}
  .site-header .site-nav .dropdown.open>.dropdown-menu{display:grid!important;grid-template-columns:minmax(0,1fr)!important;}
  .site-header .site-nav .dropdown-menu a{max-width:100%!important;min-width:0!important;font-size:14px!important;line-height:1.48!important;overflow-wrap:anywhere!important;}
  body.menu-open{overflow:hidden!important;}
  .legacy-about-desktop-menu,.legacy-solutions-desktop-menu,.legacy-services-desktop-menu{display:none!important;}
}

@media screen and (max-width:767px){
  :root { --sars-phone-header:66px; --xl-header-height:66px; --premium-header-height:66px; --mobile-gutter:17px; }
  body[data-page="index"] .site-header .nav-wrap,.site-header .nav-wrap{width:calc(100% - 32px)!important;}
  body[data-page="index"] .site-header .brand img,.site-header .brand img{width:clamp(154px,44vw,185px)!important;}
  main,main section,main article,main .container, .section-title, .page-hero .container {min-width:0;}
  main h1,main h2,main h3,main h4{overflow-wrap:break-word;}
  .container {max-width:100%;}
  .section-title h2, .split h2, .cta-content h2{
    font-size:clamp(2rem,8.5vw,2.8rem)!important;
    line-height:1.14!important;
  }
  .page-hero h1{font-size:clamp(2.15rem,9vw,3.15rem)!important;line-height:1.08!important;}
  .page-hero .lead,.section-title .lead{font-size:1rem!important;line-height:1.65!important;}
  .page-hero{min-height:0!important;padding-top:calc(var(--sars-phone-header) + 40px)!important;padding-bottom:48px!important;}
  body[data-page="index"] .sample-inspired-hero{
    padding-top:calc(var(--sars-phone-header) + 36px)!important;
  }
  .premium-industry-grid,.industry-detail-grid,.grid-4,.grid-3,.grid-2,.grid,.industry-grid{grid-template-columns:minmax(0,1fr)!important;}
  .premium-industry-grid{gap:18px!important;}
  .premium-industry-card{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    height:auto!important;
    min-height:390px!important;
    max-width:100%!important;
    padding-top:112px!important;
    border-radius:24px!important;
  }
  .premium-industry-top{
    top:14px;left:14px;right:14px;
    gap:8px;
    align-items:flex-start;
  }
  .premium-industry-number{flex:0 0 45px;width:45px;height:45px;border-radius:14px;}
  .premium-industry-label{
    min-width:0;
    max-width:calc(100% - 53px);
    padding:9px 10px;
    font-size:.55rem;
    line-height:1.4;
    letter-spacing:.065em;
    overflow-wrap:anywhere;
    text-wrap:balance;
  }
  .premium-industry-content{
    position:relative!important;
    inset:auto!important;
    z-index:4;
    width:100%;
    min-width:0;
    margin-top:auto;
    padding:38px 20px 20px!important;
  }
  .premium-industry-content h3{font-size:clamp(1.22rem,5.9vw,1.6rem)!important;line-height:1.2!important;}
  .premium-industry-content p{
    min-height:0!important;
    height:auto!important;
    margin-bottom:19px!important;
    font-size:clamp(.83rem,3.8vw,.95rem)!important;
    line-height:1.58!important;
  }
  .premium-industry-link{min-height:44px;font-size:.86rem!important;gap:12px;}
  .premium-industry-link b{flex:0 0 34px;}
  .premium-industry-overlay{
    background:linear-gradient(180deg,rgba(2,10,24,.04) 0%,rgba(2,10,24,.22) 32%,rgba(2,10,24,.78) 61%,rgba(2,10,24,.98) 100%);
  }
  .industry-detail-card{min-width:0;grid-template-columns:minmax(0,1fr)!important;}
  .industry-detail-media{min-height:240px!important;}
  .industry-detail-content{padding:22px 20px!important;}
  .industry-detail-points span{overflow-wrap:anywhere;}
  .premium-project-grid,.featured-solution-grid,.about-capability-grid,.about-process-grid,.about-principle-grid,.about-category-grid,.service-image-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .featured-solution-card{height:auto!important;min-height:380px!important;}
  .featured-solution-content{position:relative;min-width:0;max-width:100%;margin-top:auto;}
  .about-process-image-grid .about-process-card{min-height:480px!important;}
  .premium-project-card,.premium-case-study,.premium-industry-card,.featured-solution-card,.industry-detail-card{max-width:100%;}
  .premium-project-body,.premium-case-content,.service-image-card,.card,.trust-ribbon-item{min-width:0;}
  .contact-card,.form-card{max-width:100%;min-width:0;}
  input,textarea,select{max-width:100%;}
  .floating-contact{bottom:max(14px,env(safe-area-inset-bottom));right:12px;}
  .back-top{right:14px;bottom:80px;}
}
@media screen and (max-width:380px){
  :root{--mobile-gutter:15px;}
  .premium-industry-card{min-height:370px!important;}
  .premium-industry-content{padding:32px 18px 18px!important;}
  .premium-industry-label{font-size:.53rem;}
  .site-header .site-nav{padding-left:16px!important;padding-right:16px!important;}
}
