/* EVENT86 r101: mobile service layouts, footer and native controls.
   Dedicated, scoped layer. Installed last; public content is not regenerated. */
:root{accent-color:#ed2035}
@media(max-width:840px){
  body.services-redesign :is(.svc-main,.landing-main) *,body.services-redesign .svc-hero *{box-sizing:border-box}
  body.services-redesign .svc-hero{
    display:flex;flex-direction:column;
    height:auto;min-height:calc(100svh - 70px);
    overflow:hidden;isolation:isolate
  }
  body.services-redesign .svc-hero-inner{
    order:0;flex:0 0 auto;z-index:2;height:auto;min-height:0;max-height:none;
    width:calc(100% - 40px);padding:22px 0 16px;align-items:flex-start
  }
  body.services-redesign .svc-hero-copy{width:100%;max-width:none}
  body.services-redesign .svc-hero-art{
    order:1;position:relative;z-index:0;inset:auto;top:auto;bottom:auto;left:auto;right:auto;
    flex:1 0 auto;min-height:clamp(280px,38svh,420px);
    width:100%;background:#151515;
    clip-path:polygon(0 5%,100% 0,100% 100%,0 100%)
  }
  body.services-redesign .svc-hero-photo{inset:0;width:100%;height:100%;border-radius:0}
  body.services-redesign .svc-hero-photo :is(picture,img),body.services-redesign .svc-hero-photo>img{
    display:block;width:100%;height:100%;object-fit:cover
  }
  body.services-redesign .svc-hero-photo:not(.svc-hero-photo--responsive)>img{display:none}
  body.services-redesign .svc-hero-diagonal{display:none}
  body.services-redesign .svc-hero-actions{align-items:stretch;min-width:0}
  body.services-redesign .svc-hero-actions .btn{line-height:1.24;justify-content:center;text-align:center}
  body.services-redesign .svc-facts{margin:0;width:100%;max-width:100%}
  body.services-redesign .svc-facts>div{min-width:0}
  body.services-redesign .svc-facts span{overflow-wrap:break-word}
  body.services-redesign .svc-feature-row,body.services-redesign .svc-feature-row--reverse{display:flex;flex-direction:column;gap:0}
  body.services-redesign .svc-feature-photo{width:100%;max-width:100%}
  body.services-redesign .svc-feature-info{width:100%;min-width:0}
  body.services-redesign :is(.svc-bottom-buttons,.svc-bottom-action){min-width:0}
  body.services-redesign :is(.svc-bottom-buttons,.svc-hero-actions) .btn{max-width:100%;min-width:0}
  body.landing-redesign .landing-main :is(.landing-grid,.landing-section-head,.landing-story-grid,.landing-case-grid,
      .org-formats-grid,.org-detail-main,.org-production-grid,.org-contact-panel,
      .tech-categories-grid,.tech-process-grid,.tech-showcase-panel,.tech-detail-main,.tech-contact-panel,
      .team-formats-grid,.team-approach-grid,.team-detail-main,
      .broadcast-formats-grid,.broadcast-detail-main,.broadcast-base-grid,.broadcast-contact-panel){min-width:0}
  body.landing-redesign .landing-main :is(img,video,iframe){max-width:100%}
  body.landing-redesign .landing-main :is(h2,h3,p,strong){overflow-wrap:break-word}
  body.landing-redesign .landing-main .ev-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
  body.landing-redesign .landing-main :is(.ev-field,.ev-field-wide){grid-column:1/-1;min-width:0}
  body.landing-redesign .landing-main :is(input:not([type=hidden]):not([type=checkbox]),textarea,select){
    width:100%;min-width:0;max-width:100%;border-radius:12px;box-shadow:none;font:inherit;font-size:16px
  }
  body.landing-redesign .landing-main .ev-consent{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.48}
  body.landing-redesign .landing-main .ev-consent>input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:#ed2035}
  body.landing-redesign .landing-main .ev-consent>span{flex:1;min-width:0}
  body.landing-redesign .landing-main :is(.ev-consent,.landing-consent) a{color:inherit;text-decoration:underline;text-decoration-color:#ed2035;text-underline-offset:3px}
  body.landing-redesign .landing-main :is(.ev-consent,.landing-consent) a:hover{color:#ed2035}
  body.services-redesign main a[href]:not([class]):not([style]){color:inherit;text-decoration:underline;text-decoration-color:#e62a39;text-underline-offset:3px}
  body.services-redesign main a[href]:not([class]):not([style]):hover{color:#ed2035}
  body.services-redesign :is(main,.landing-main) :is(button,input,textarea,select):focus-visible,
  body.services-redesign :is(main,.landing-main) a:focus-visible{outline:2px solid #ed2035;outline-offset:3px}
  body.services-redesign :is(main,.landing-main) button{font-family:Onest,system-ui,sans-serif}
  body.landing-redesign :is(.landing-main,.svc-main) summary{list-style:none;cursor:pointer}
  body.landing-redesign :is(.landing-main,.svc-main) summary::-webkit-details-marker{display:none}
}
@media(max-width:600px){
  body.services-redesign .svc-hero-inner{width:calc(100% - 32px);padding:19px 0 15px}
  body.services-redesign .svc-hero h1{font-size:clamp(30px,8vw,43px);line-height:1.08;letter-spacing:-.025em;margin:11px 0 11px}
  body.services-redesign .svc-hero .svc-lead{font-size:13px;line-height:1.45}
  body.services-redesign .svc-crumbs{margin-bottom:13px}
  body.services-redesign .svc-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:17px 0 17px}
  body.services-redesign .svc-hero-actions .btn{min-height:46px;font-size:11px;padding:10px 9px;white-space:normal}
  body.services-redesign .svc-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
  body.services-redesign .svc-facts>div{padding:0 9px 0 0}
  body.services-redesign .svc-facts>div+div{padding-left:10px}
  body.services-redesign .svc-facts b{font-size:clamp(20px,5vw,26px)}
  body.services-redesign .svc-facts span{font-size:10px;line-height:1.36}
  body.services-redesign .svc-feature-photo{height:220px;min-height:220px}
  body.services-redesign .svc-feature-info{padding:22px 20px}
  body.services-redesign .svc-feature-info h3{font-size:clamp(27px,7vw,35px)}
  body.services-redesign .svc-small-content{left:20px;right:62px;bottom:21px}
  body.services-redesign .svc-bottom-card{padding:24px 20px}
  body.services-redesign .svc-bottom-buttons{display:grid;grid-template-columns:1fr;gap:10px}
  body.services-redesign .svc-bottom-contacts{align-items:flex-start;flex-direction:column}
  body.services-redesign .svc-bottom-contacts span{padding-left:0;border:0}
  body.landing-redesign .landing-main :is(.landing-section,.org-section,.tech-section,.team-section,.broadcast-section){padding-top:34px;padding-bottom:30px}
  body.landing-redesign .landing-main :is(.landing-grid-four,.landing-grid-three,.landing-grid-six){grid-template-columns:minmax(0,1fr)}
  body.landing-redesign .landing-main .landing-feature-row{grid-template-columns:1fr}
  body.landing-redesign .landing-main .landing-section-head{grid-template-columns:1fr;gap:12px}
  body.landing-redesign .landing-main .landing-section-head>p{justify-self:start}
  body.landing-redesign .landing-main :is(.landing-story-grid,.landing-case-grid){grid-template-columns:minmax(0,1fr);gap:20px}
  body.landing-redesign .landing-main .landing-story-reverse .landing-story-photo{order:0}
  body.landing-redesign .landing-main .landing-story-reverse .landing-story-copy{order:1}
  body.landing-redesign .landing-main .landing-story-photo{height:250px}
  body.landing-redesign .landing-main :is(.landing-inline-form,.ev-form-unified) .ev-submit{width:100%;min-height:48px;justify-content:center}
  body.landing-teambuilding .team-formats-grid{grid-template-columns:1fr}
  body.landing-teambuilding .team-approach-list{grid-template-columns:1fr}
  body.landing-technical .tech-showcase-panel{grid-template-columns:1fr}
  body.landing-broadcast .broadcast-switcher{grid-template-columns:1fr}
}
/* Common site footer: one deliberate mobile hierarchy, regardless of page type. */
@media(max-width:680px){
  footer.footer{padding:32px 0 max(22px,env(safe-area-inset-bottom));background:#101010;color:#fff}
  footer.footer :is(.container,.wrap){width:calc(100% - 40px);max-width:none;margin-inline:auto}
  footer.footer .footer-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;row-gap:22px;padding-bottom:23px}
  footer.footer .footer-main>.footer-brand{grid-column:1/-1;margin-bottom:4px}
  footer.footer .footer-brand img{display:block;width:154px;max-width:100%;height:auto}
  footer.footer .footer-main>nav.footer-col{min-width:0;gap:0}
  footer.footer .footer-main>nav.footer-col>a{display:flex;align-items:center;min-height:43px;padding:11px 0;font-size:14px;line-height:1.35;border-bottom:1px solid #303030;color:#ddd}
  footer.footer .footer-main>nav.footer-col:nth-of-type(3){grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
  footer.footer .footer-main>.footer-contact{grid-column:1/-1;align-items:flex-start;text-align:left;gap:9px;padding-top:17px;border-top:1px solid #303030}
  footer.footer .footer-contact .phone{font-size:22px;font-weight:760;line-height:1.2;white-space:normal}
  footer.footer .footer-contact p{font-size:13px}
  footer.footer .footer-contact .social-links{justify-content:flex-start;margin-top:4px}
  footer.footer .footer-contact .social-links>a{display:flex;align-items:center;justify-content:center;width:auto;min-width:38px;height:36px;padding:0 12px;border-radius:999px;font-size:13px}
  footer.footer .footer-contact .social-links>a[href*="rutube"]::after{content:"RuTube";font-size:12px;font-weight:680;margin-left:6px}
  footer.footer .footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding-top:19px;border-top:1px solid #303030;font-size:12px;line-height:1.55}
  footer.footer .footer-bottom>span{max-width:100%;overflow-wrap:anywhere}
  footer.footer>.footer-grid{grid-template-columns:1fr;gap:22px}
  footer.footer>.footer-grid>nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
  footer.footer>.footer-grid>nav>a{font-size:14px;min-height:42px}
  footer.footer>.site-legal-details{display:grid;grid-template-columns:1fr;gap:18px}
  footer.footer .site-legal-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
  footer.footer .site-legal-links>a{font-size:13px;min-height:40px;padding:10px 0;border-bottom:1px solid #303030}
  footer.footer a:focus-visible{outline:2px solid #ee2035;outline-offset:3px}
}
@media(max-width:370px){
  footer.footer :is(.container,.wrap){width:calc(100% - 32px)}
  footer.footer .footer-main{gap:20px 12px}
  footer.footer .footer-main>nav.footer-col:nth-of-type(3){column-gap:12px}
  footer.footer .footer-main>nav.footer-col>a{font-size:13px}
  body.services-redesign .svc-hero-inner{width:calc(100% - 28px)}
  body.services-redesign .svc-hero-actions .btn{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  body.services-redesign .svc-main *,body.landing-redesign .landing-main *{scroll-behavior:auto;transition-duration:0s}
}
