
/* Typography from /systems/upravlenie, /osveshchenie, /klimat-kontrol. */
.ip-services-scope.ip-design-page{--paper:#f7f7f5;--muted:#6b6b6b;font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.65}
.ip-services-scope.ip-design-page #main .design-intro h1{font-family:Montserrat,Arial,sans-serif;font-size:clamp(36px,3.23vw,46px);font-weight:600;font-synthesis:none;line-height:1.1;letter-spacing:-.02em}
.ip-services-scope.ip-design-page #main h2,
.ip-services-scope.ip-design-page #main h2 strong{font-size:30px;font-weight:500;font-synthesis:none;line-height:1.1;letter-spacing:-.02em}
.ip-services-scope.ip-design-page #main h3,
.ip-services-scope.ip-design-page #main h3 strong{font-size:17px;font-weight:600;font-synthesis:none;line-height:1.3;letter-spacing:normal}
.ip-services-scope.ip-design-page #main .design-intro-bottom p{font-size:17px;line-height:1.65}
.ip-services-scope.ip-design-page #main :is(.section-head>p,.contact-copy>p){font-size:16px;line-height:1.65}
.ip-services-scope.ip-design-page #main :is(.review-cards,.design-system-grid,.design-steps,.design-deliverables) p{font-size:13.5px;line-height:1.65}
.ip-services-scope.ip-design-page :is(.review-audience,.review-why,.design-pricing,.design-timing){background:var(--paper)}
.ip-services-scope.ip-design-page .review-quality{background:var(--ink)}
.ip-services-scope.ip-design-page :is(.design-document-photo>img,.design-timing,.btn){border-radius:3px}
.ip-services-scope.ip-design-page .btn{font-size:14px;font-weight:600;line-height:1.4;min-height:50px;padding:14px 24px}
.ip-services-scope.ip-design-page #main>.design-section:not(.faq-section),
.ip-services-scope.ip-design-page #main>.design-documents,
.ip-services-scope.ip-design-page #main>.contact{padding-top:80px;padding-bottom:80px}
/* Keep the explicitly approved FAQ layout and bold questions. */
.ip-services-scope.ip-design-page #main #faq h2{font-weight:400;line-height:1.15}
.ip-services-scope.ip-design-page #faq summary{font-weight:700;font-synthesis:weight}
@media(max-width:1100px){
  .ip-services-scope.ip-design-page #main .design-intro h1{font-size:36px}
}
@media(max-width:800px){
  .ip-services-scope.ip-design-page #main .design-intro h1{font-size:34px;line-height:1.15}
  .ip-services-scope.ip-design-page #main h2,
  .ip-services-scope.ip-design-page #main h2 strong{font-size:27px;line-height:1.2}
  .ip-services-scope.ip-design-page #main :is(.design-intro-bottom p,.section-head>p,.contact-copy>p){font-size:14px;line-height:1.65}
  .ip-services-scope.ip-design-page .btn{font-size:13px;padding:14px 20px}
  .ip-services-scope.ip-design-page #main>.design-section:not(.faq-section),
  .ip-services-scope.ip-design-page #main>.design-documents,
  .ip-services-scope.ip-design-page #main>.contact{padding-top:60px;padding-bottom:60px}
}
@media(max-width:420px){
  .ip-services-scope.ip-design-page #main .design-intro h1{font-size:30px}
  .ip-services-scope.ip-design-page #main h2,
  .ip-services-scope.ip-design-page #main h2 strong{font-size:25px}
  .ip-services-scope.ip-design-page #main h3,
  .ip-services-scope.ip-design-page #main h3 strong{font-size:16px}
  .ip-services-scope.ip-design-page #main :is(.review-cards,.design-system-grid,.design-steps,.design-deliverables) p{font-size:13px}
}


/* Two complete photographs, without cropping or zoom. */
.ip-services-scope.ip-design-page .design-document-pair{margin:0;min-width:0;align-self:start}
.ip-services-scope.ip-design-page .design-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.ip-services-scope.ip-design-page .design-photo-open{position:relative;display:block;width:100%;margin:0;padding:0;min-width:0;border:0;border-radius:3px;overflow:hidden;background:var(--paper);color:var(--ink);cursor:zoom-in;appearance:none}
.ip-services-scope.ip-design-page .design-photo-open>img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:941/1672;object-fit:contain;object-position:center;border-radius:0;transform:none}
.ip-services-scope.ip-design-page .design-document-pair figcaption{padding:15px 0 0;font-size:11px;line-height:1.7;color:var(--muted)}
.ip-services-scope.ip-design-page .design-document-pair figcaption strong{display:block;font-weight:600;color:var(--ink)}
.ip-services-scope.ip-design-page .design-doc-grid{grid-template-columns:1fr 1fr;gap:48px;align-items:start}
/* The new hover animation is limited to the Project composition section. */
.ip-services-scope.ip-design-page #composition .design-system-grid{gap:18px}
.ip-services-scope.ip-design-page #composition .design-system-grid>article{padding:26px 25px 27px;border:1px solid #e4e4e0;border-radius:5px;background:#fff;box-shadow:0 8px 26px rgba(35,35,35,.035);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.ip-services-scope.ip-design-page .design-case{border-radius:5px;overflow:hidden}
.ip-services-scope.ip-design-page .design-case>img{border-radius:0}
.ip-services-scope.ip-design-page .design-timing{border-radius:3px}
.ip-services-scope.ip-design-page :is(a,button,summary):focus-visible{outline:2px solid #ffa412;outline-offset:4px}
.ip-services-scope.ip-design-page #faq .faq-layout{grid-template-columns:.8fr 1.2fr;gap:64px}
.ip-services-scope.ip-design-page #faq summary{font-weight:700;font-synthesis:weight}
@media(hover:hover) and (pointer:fine){
  .ip-services-scope.ip-design-page #composition .design-system-grid>article:hover{transform:translateY(-3px);border-color:#d2d2cc;box-shadow:0 16px 42px rgba(35,35,35,.11)}
}
@media(max-width:1100px){
  .ip-services-scope.ip-design-page .design-doc-grid{gap:32px}
  .ip-services-scope.ip-design-page #composition .design-system-grid>article{padding:22px 20px}
}
@media(max-width:800px){
  .ip-services-scope.ip-design-page .design-doc-grid{grid-template-columns:1fr;gap:32px}
  .ip-services-scope.ip-design-page .design-document-pair{width:100%;max-width:560px;margin-inline:auto}
  .ip-services-scope.ip-design-page #faq .faq-layout{grid-template-columns:1fr;gap:28px}
}
@media(max-width:420px){
  .ip-services-scope.ip-design-page .design-photo-pair{gap:10px}
}
.design-photo-dialog-v6{box-sizing:border-box;width:fit-content;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:12px;border:1px solid #e4e4e0;border-radius:5px;background:#fff;color:#232323;overflow:auto}
.design-photo-dialog-v6::backdrop{background:rgba(18,18,18,.78)}
.design-photo-dialog-v6 .design-photo-dialog-close{display:block;margin:0 0 10px auto;padding:8px 12px;border:1px solid #e4e4e0;border-radius:3px;background:#f7f7f5;color:#232323;font:600 13px/1.4 Montserrat,Arial,sans-serif;cursor:pointer}
.design-photo-dialog-v6 .design-photo-dialog-close:focus-visible{outline:2px solid #ffa412;outline-offset:3px}
.design-photo-dialog-v6>img{display:block;width:auto;max-width:100%;height:min(78dvh,1000px);object-fit:contain;margin:auto}


@media(prefers-reduced-motion:reduce){
  .ip-services-scope.ip-design-page #composition .design-system-grid>article{transition:none!important}
  .ip-services-scope.ip-design-page #composition .design-system-grid>article:hover{transform:none!important}
  .ip-services-scope.ip-design-page *{scroll-behavior:auto!important}
}



/* Regular section headings, following the user's screenshot.
Includes the Experience and team heading; metrics and partner typography stay unchanged. */
.ip-services-scope.ip-design-page #main > section h2,
.ip-services-scope.ip-design-page #main > section h2 strong,
.ip-services-scope.ip-design-page #main > section h2 b{
  font-weight:400;
  font-synthesis:none;
}
