/* Текстовые страницы «для бизнеса», «о компании», блоки реквизитов и офисов (/b2b/, /about/, /contacts/, /optom/) */
.ct-page{--ct-accent:#a98f5c;--ct-accent-dark:#8a7446;--ct-cream:#fff8ef;--ct-sand:#dfc4a9;--ct-ink:#222;--ct-muted:#6f6f6f;--ct-line:#ece6dc;color:var(--ct-ink);line-height:1.5;font-size:1rem}
.ct-page a{color:var(--ct-accent-dark)}
.ct-page a:hover{color:var(--ct-accent)}
.ct-hero{padding:2.5rem 0 1.5rem}
.ct-hero h1{font-size:2.25rem;line-height:1.2;margin:0 0 1rem;font-weight:700}
.ct-lead{font-size:1.15rem;line-height:1.55;max-width:54rem;margin:0 0 1.25rem}
.ct-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;margin:1.5rem 0 0}
.ct-fact{background:var(--ct-cream);border-radius:.75rem;padding:1.1rem 1.25rem}
.ct-fact strong{display:block;font-size:1.5rem;line-height:1.2;color:var(--ct-accent-dark);margin-bottom:.25rem}
.ct-fact span{font-size:.95rem;color:#444}
.ct-section{padding:2rem 0 .5rem}
.ct-section h2{font-size:1.75rem;line-height:1.25;margin:0 0 1rem;font-weight:700}
.ct-section h3{font-size:1.15rem;line-height:1.3;margin:0 0 .5rem;font-weight:700}
.ct-section p{margin:0 0 .75rem}
.ct-intro{max-width:54rem;margin-bottom:1.25rem}
.ct-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.25rem}
.ct-cards_wide{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr))}
.ct-card{border:1px solid var(--ct-line);border-radius:.75rem;padding:1.25rem 1.35rem;background:#fff}
.ct-card_accent{background:var(--ct-cream);border-color:var(--ct-sand)}
.ct-card p,.ct-card li{font-size:.97rem;color:#333}
.ct-card .ct-more{display:inline-block;margin-top:.35rem;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor}
.ct-list{padding-left:1.2rem;margin:.25rem 0 .75rem}
.ct-list li{margin:.25rem 0}
.ct-list_plain{list-style:none;padding:0}
.ct-list_plain li{padding-left:1.25rem;position:relative}
.ct-list_plain li:before{content:"";position:absolute;left:0;top:.6em;width:.5rem;height:.5rem;border-radius:50%;background:var(--ct-accent)}
.ct-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0 .5rem}
.ct-btn{display:inline-block;padding:.85rem 1.75rem;border-radius:2rem;background:var(--ct-accent);color:#fff !important;text-decoration:none !important;font-weight:600;line-height:1.2;border:1px solid var(--ct-accent);transition:background .2s}
.ct-btn:hover{background:var(--ct-accent-dark);border-color:var(--ct-accent-dark)}
.ct-btn_ghost{background:transparent;color:var(--ct-accent-dark) !important}
.ct-btn_ghost:hover{background:var(--ct-cream)}
.ct-steps{counter-reset:ct-step;display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem;list-style:none;padding:0;margin:0}
.ct-steps li{position:relative;padding-left:3rem}
.ct-steps li:before{counter-increment:ct-step;content:counter(ct-step);position:absolute;left:0;top:0;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--ct-accent);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.ct-table{width:100%;border-collapse:collapse;font-size:.97rem;max-width:54rem}
.ct-table th,.ct-table td{text-align:left;vertical-align:top;padding:.7rem .75rem;border-bottom:1px solid var(--ct-line)}
.ct-table th{width:34%;font-weight:600;color:#333;background:var(--ct-cream)}
.ct-faq details{border-bottom:1px solid var(--ct-line);padding:.85rem 0}
.ct-faq summary{cursor:pointer;font-weight:600;font-size:1.05rem;list-style:none;position:relative;padding-right:2rem}
.ct-faq summary::-webkit-details-marker{display:none}
.ct-faq summary:after{content:"+";position:absolute;right:0;top:-.15rem;font-size:1.5rem;color:var(--ct-accent);line-height:1}
.ct-faq details[open] summary:after{content:"–"}
.ct-faq details p{margin:.6rem 0 0;color:#333;max-width:54rem}
.ct-req{margin:0;max-width:54rem}
.ct-req dt{font-weight:600;margin-top:.6rem;color:#333}
.ct-req dd{margin:0}
.ct-offices{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.25rem}
.ct-office p{margin:0 0 .4rem}
.ct-office .ct-office__label{display:block;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ct-muted);margin-top:.6rem}
.ct-contacts-line{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:center;margin:.5rem 0 0}
.ct-note{font-size:.95rem;color:var(--ct-muted)}
.ct-form{max-width:40rem}
.ct-form .form-group,.ct-form .popup__field{margin-bottom:.75rem}
@media (max-width:767px){
  .ct-hero{padding:1.5rem 0 1rem}
  .ct-hero h1{font-size:1.6rem}
  .ct-lead{font-size:1.05rem}
  .ct-section{padding:1.5rem 0 .25rem}
  .ct-section h2{font-size:1.35rem}
  .ct-table th{width:40%}
  .ct-table th,.ct-table td{padding:.55rem .5rem;font-size:.92rem}
}
