@media(max-width:520px){
 body.op-design .header__main{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding-block:10px}
 body.op-design .header__promise{display:contents}
 body.op-design .header__promise>strong{display:none}
 body.op-design .header__promise .city-selector{grid-column:1;grid-row:2;min-width:0}
 body.op-design .city-selector>button{font-size:13px;max-width:100%;white-space:normal;text-align:left;line-height:1.35}
 body.op-design .header__cta{grid-column:2;grid-row:2;min-height:42px;padding:10px 13px;font-size:14px}
 body.op-design .header__badges{grid-row:3;grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px;justify-content:normal;padding-top:8px}
 body.op-design .header__badge{display:grid;grid-template-columns:1fr;gap:2px;min-width:0;padding:0;white-space:normal}
 body.op-design .header__badge small{font-size:11px;line-height:1.3;white-space:nowrap}
 body.op-design .header__badge strong{font-size:14px;line-height:1.3}
 body.op-design .header__badge--work{padding-left:12px}
 body.op-design .header__nav .wrap{padding-block:6px}
 body.op-design .header__nav .header__all-services{min-height:40px;height:40px;font-size:14px}
}
/* Final mobile pass: remove duplicated actions and oversized secondary sections. */
@media(max-width:560px){
 html{scroll-padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}
 body.op-design{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
 body.op-design .header .header__main{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding-block:10px}
 body.op-design .header .brand{grid-column:1;grid-row:1;align-self:start;width:132px;margin-bottom:38px}
 body.op-design .header .header__promise{display:contents}
 body.op-design .header .header__promise>strong{display:none}
 body.op-design .header .city-selector{grid-column:1;grid-row:1;align-self:end}
 body.op-design .header .city-selector>button{min-height:36px;padding-block:6px;font-size:13px}
 body.op-design .header .header__cta{display:none}
 body.op-design .header .header__contacts{grid-column:2;grid-row:1;gap:0;align-self:center}
 body.op-design .header .header__contacts .phone{font-size:13px;min-height:40px;display:flex;align-items:center}
 body.op-design .header .header__messengers{gap:0;justify-self:center}
 body.op-design .header .header__messengers .round-link{width:44px;height:44px;background:none;border:0}
 body.op-design .header .header__messengers img{width:28px;height:28px}
 body.op-design .header .header__badges{grid-row:2;grid-column:1/-1;padding-top:7px;gap:10px}
 body.op-design .header .header__badge small{font-size:11px;line-height:1.3}
 body.op-design .header .header__badge strong{font-size:14px;line-height:1.3}
 body.op-design .header .header__nav .wrap{padding-block:4px}
 body.op-design .header .header__nav .header__all-services{height:44px;min-height:44px}
 body.op-design .home-hero .eyebrow{display:none}
 body.op-design .home-hero h1{margin-top:0}
 body.op-design .home-hero .home-hero__offer{margin-top:14px}
 body.op-design .home-hero .home-hero__offer>p{font-size:14px;line-height:1.45;margin-top:7px}
 body.op-design .home-hero .home-hero__offer ul{font-size:14px;line-height:1.4;gap:6px 10px;margin-block:12px}
 body.op-design .home-hero .home-hero__offer .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
 body.op-design .home-hero .home-hero__offer .actions .button{grid-column:auto;min-height:44px;padding:10px 8px;font-size:14px;line-height:1.4}
 body.op-design .home-hero .home-hero__offer .actions [data-cta-id="home-hero-phone"]{display:none}
 body.op-design .home-hero .home-hero__services-link{display:inline-flex;align-items:center;min-height:44px;margin-top:2px;font-size:14px}
 body.op-design .op-clients .op-clients__heading{margin-bottom:16px}
 body.op-design .op-clients .op-clients__group{margin-top:16px}
 body.op-design .op-clients .op-clients__group h3{font-size:18px;line-height:1.3;margin-bottom:10px}
 body.op-design .op-clients .op-clients__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.op-design .op-clients .op-clients__card{min-height:94px;padding:10px 8px;gap:6px;border-radius:12px}
 body.op-design .op-clients .op-clients__mark{height:34px;min-height:34px}
 body.op-design .op-clients .op-clients__mark img{max-height:34px;max-width:100%;object-fit:contain}
 body.op-design .op-clients .op-clients__name{font-size:13px;line-height:1.25}
 body.op-design .op-clients .op-clients__detail{display:none}
 body.op-design .footer .footer__coverage{padding-block:0 22px;margin-bottom:22px}
 body.op-design .footer .footer__coverage h2{font-size:24px;margin-bottom:8px}
 body.op-design .footer .footer__coverage>p{font-size:15px;margin-bottom:12px}
 body.op-design .footer .footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
 body.op-design .footer .footer__brand{grid-column:1/-1}
 body.op-design .footer .footer__logo{max-width:150px}
 body.op-design .footer .footer__brand>p{font-size:14px;line-height:1.45;margin-block:12px}
 body.op-design .footer .footer__contacts{gap:6px;font-size:14px;line-height:1.45}
 body.op-design .footer .footer__contacts a{min-height:36px;display:flex;align-items:center}
 body.op-design .footer .footer__column{gap:0;align-content:start;min-width:0}
 body.op-design .footer .footer__column strong{font-size:16px;margin-bottom:6px}
 body.op-design .footer .footer__column :is(a,button){font-size:14px;line-height:1.4;min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere;padding-block:6px}
 body.op-design .footer .footer__bottom{font-size:12px;line-height:1.45;gap:8px;margin-top:22px;padding-top:16px}
 body.op-design .conversion-dock{border:1px solid #4c745c;border-radius:14px;padding:4px;box-shadow:0 3px 14px #0003;bottom:calc(6px + env(safe-area-inset-bottom,0px));min-height:54px}
 body.op-design .conversion-dock .conversion-dock__phone{font-size:14px;border:1px solid #668172;border-radius:10px}
 body.op-design .conversion-dock .conversion-dock__request{font-size:14px;border-radius:10px}
 body.op-design .conversion-dock__phone>span[aria-hidden]{font-size:0}
 body.op-design .conversion-dock__phone>span[aria-hidden]::before{content:"";display:block;width:18px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3 4 4c-2 1 0 7 5 12s10 7 11 5l1-3-5-3-2 2-7-7 2-2-2-5Z' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
 body.op-design:has(:is(input,select,textarea):focus) .conversion-dock{display:none}
}
@media(max-width:560px){
 body.op-design{font-size:16px;line-height:1.5}
 body.op-design .section,body.op-design .op-compact-steps{padding-block:26px}
 body.op-design :is(h2,.section h2,.op-calc__heading h2){font-size:25px;line-height:1.25;margin-bottom:16px}
 body.op-design :is(h3,.service-task h3,.op-work__body h3){font-size:19px;line-height:1.3}
 body.op-design :is(.section-lead,.city-note,.service-task p,.op-work__body p,.article-copy p,.article-copy li){font-size:16px;line-height:1.5}
 body.op-design :is(.home-hero,.service-hero,.city-hero){padding-block:24px}
 body.op-design :is(.home-hero,.service-hero,.city-hero) h1{font-size:28px;line-height:1.2;margin:8px 0 14px}
 body.op-design :is(.home-hero,.service-hero,.city-hero) .lead{font-size:16px;line-height:1.5;margin-bottom:16px}
 body.op-design :is(.home-hero__grid,.hero__grid,.city-hero__grid){gap:20px}
 body.op-design .home-hero__offer{margin-top:18px}
 body.op-design .home-hero__offer ul{display:flex;flex-wrap:wrap;margin-block:12px;gap:7px 12px;font-size:14px}
 body.op-design :is(.feature-grid,.service-task-grid,.grid--compact){gap:10px}
 body.op-design :is(.service-task,.card--link){padding:16px;min-height:0}
 body.op-design .feature-grid--proof{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
 body.op-design .feature-card--proof{padding:4px 0;min-height:40px;display:flex;align-items:center;gap:12px}
 body.op-design .feature-card--proof strong{font-size:15px;line-height:1.35}
 body.op-design .section--proof h2,body.op-design .op-compact-steps h2{font-size:22px;margin-bottom:12px}
 body.op-design .feature-card__icon{width:32px;height:32px;flex:0 0 32px;border-radius:8px}
 body.op-design .feature-card__icon svg{width:21px;height:21px}
 body.op-design .op-compact-steps .feature-grid{grid-template-columns:1fr 1fr;gap:8px}
 body.op-design .op-compact-steps .feature-card{padding:10px;gap:8px;min-height:64px}
 body.op-design .op-compact-steps .step-diamond{width:28px;height:28px;flex:0 0 28px;font-size:12px}
 body.op-design .op-compact-steps strong{font-size:15px;line-height:1.35}
 body.op-design .faq-list summary{font-size:16px;line-height:1.4;padding-block:13px}
 body.op-design .faq-list p{font-size:15px;line-height:1.5}
 body.op-design .op-calc__toggle{font-size:18px;padding:16px}
 body.op-design .op-calc__inputs{padding:16px;gap:14px}
 body.op-design .op-calc__result{padding:20px 16px}
 body.op-design .op-calc :is(input,select,textarea){font-size:16px;min-height:44px}
 body.op-design .op-calc__fields{gap:12px}
 body.op-design .op-hero-gallery__track,body.op-design .home-hero .op-home-gallery .op-hero-gallery__track{aspect-ratio:16/10}
 body.op-design .op-hero-gallery__controls{padding:8px 12px}
 body.op-design :is([data-hero-prev],[data-hero-next],[data-work-prev],[data-work-next],[data-recommendation-prev],[data-recommendation-next]){width:44px;height:44px;min-height:44px;border-radius:12px}
 body.op-design .op-clients{padding-block:26px}
 body.op-design .footer{padding-top:26px}
 body.op-design .conversion-dock{padding:4px;min-height:54px}
 body.op-design .conversion-dock a{min-height:44px;font-size:15px}
 body.op-design .home-catalog{padding-block:28px}
 body.op-design .home-catalog h2{font-size:26px;margin-bottom:12px}
 body.op-design .home-catalog>.wrap>p{font-size:15px;line-height:1.5;margin-bottom:20px}
 body.op-design .home-catalog .catalog-group{gap:18px}
 body.op-design .home-catalog .catalog-group>div{padding:16px 12px;gap:14px}
 body.op-design .home-catalog .catalog-heading h3{font-size:24px}
 body.op-design .home-catalog .catalog-heading p{font-size:14px;line-height:1.5;margin-top:8px}
 body.op-design .home-catalog .catalog-group .service-grid{gap:8px}
 body.op-design .home-catalog .catalog-group .service-card{display:grid;grid-template-columns:32px minmax(0,1fr) 16px;column-gap:10px;row-gap:4px;min-height:0;padding:13px 12px;border-radius:12px;align-items:center}
 body.op-design .home-catalog .catalog-group .service-card>.op-service-icon{grid-column:1;grid-row:1/3;width:32px;height:32px;margin:0;border-radius:9px;align-self:start}
 body.op-design .home-catalog .service-card>.op-service-icon svg{width:21px;height:21px}
 body.op-design .home-catalog .catalog-group .service-card>strong{grid-column:2;grid-row:1;font-size:17px;line-height:1.3;padding:0}
 body.op-design .home-catalog .catalog-group .service-card>span{grid-column:2;grid-row:2;font-size:14px;line-height:1.4;margin:0}
 body.op-design .home-catalog .catalog-group .service-card>b{position:static;grid-column:3;grid-row:1/3;font-size:20px}
 body.op-design .home-catalog .catalog-compact{padding:12px}
 body.op-design .home-catalog .catalog-compact>strong{font-size:16px;margin-bottom:6px}
 body.op-design .home-catalog .catalog-compact a,body.op-design .home-catalog .catalog-more{font-size:15px}
 body.op-design .home-catalog .catalog-group .catalog-more{font-size:14px;line-height:1.4;min-height:44px;padding:10px 12px}
 body.op-design .city-services{padding-block:28px}
 body.op-design .city-services .city-service-panel{padding:16px 12px}
 body.op-design .city-services .city-service-panel__heading{padding-bottom:14px}
 body.op-design .city-services .city-service-panel .city-service-panel__heading h3{font-size:24px}
 body.op-design .city-services .op-service-direction{padding:14px!important}
 body.op-design .city-services .op-service-direction>.op-service-icon{float:left;width:32px;height:32px;margin:0 10px 8px 0;border-radius:9px}
 body.op-design .city-services .op-service-direction>.op-service-icon svg{width:21px;height:21px}
 body.op-design .city-services .op-service-direction h4{font-size:18px;margin:0 0 8px;min-height:32px}
 body.op-design .city-services .op-service-direction p{clear:both;font-size:14px;line-height:1.45;margin-bottom:8px}
 body.op-design .city-services .op-service-direction li a{font-size:15px;min-height:40px;padding-block:7px}
 body.op-design .city-services .city-service-card{padding:12px;height:auto;min-height:0}
 body.op-design .city-services .city-service-card strong{font-size:17px}
 body.op-design .city-services .city-service-card small{font-size:14px;line-height:1.4}
}
