/*
Theme Name:   СоДружество (дочерняя тема GeneratePress)
Theme URI:    https://sodruzhestvokhv.ru/
Description:  Дочерняя тема GeneratePress для сайта ХРОО «СоДружество»: тёплая палитра, крупный читаемый текст, переключатель размера шрифта и контраста.
Author:       Волонтёры «СоДружество»
Template:     generatepress
Version:      1.0.0
Text Domain:  sodruzhestvo
Requires at least: 6.3
*/

:root{
  --sd-orange:#F28C1E; --sd-orange-dark:#9A4400;
  --sd-green:#8CC63F;  --sd-green-dark:#41700C;
  --sd-pink:#E8467C;   --sd-pink-dark:#B4235A;
  --sd-ink:#2A2420;    --sd-cream:#FFF4E2; --sd-bg:#FFFBF4; --sd-line:#EAD9C0;
}
html{overflow-x:clip}
body{background:var(--sd-bg);color:var(--sd-ink);font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:18px;line-height:1.7}
h1,h2,h3,h4{color:var(--sd-ink);font-weight:700;line-height:1.25}
h1{font-size:2.3rem} h2{font-size:1.9rem;margin-top:1.6em} h3{font-size:1.3rem}
a{color:var(--sd-orange-dark);text-decoration:underline;text-underline-offset:3px}
a:hover{color:var(--sd-pink-dark)}
:focus-visible{outline:3px solid #1a5fb4;outline-offset:3px;border-radius:4px}

/* верхняя полоса: контакты + доступность */
.sd-topbar{background:var(--sd-cream);border-bottom:1px solid var(--sd-line);font-size:.95rem}
.sd-topbar__in{max-width:1200px;margin:0 auto;padding:8px 20px;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;align-items:center}
.sd-topbar a{color:var(--sd-ink);font-weight:600;text-decoration:none}
.sd-topbar a:hover{text-decoration:underline}
.sd-topbar__contacts{display:flex;flex-wrap:wrap;gap:4px 20px}
.sd-a11y{display:flex;gap:6px}
.sd-a11y button{font:inherit;font-weight:700;background:#fff;color:var(--sd-ink);border:2px solid var(--sd-ink);border-radius:999px;padding:2px 14px;cursor:pointer}
.sd-a11y button:hover{background:var(--sd-ink);color:#fff}

/* шапка и меню */
.site-header{background:#fff;border-bottom:5px solid var(--sd-orange)}
.main-title a,.main-title a:hover{color:var(--sd-ink);font-weight:800;text-decoration:none}
.site-description{color:#5a4d42}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a{color:var(--sd-ink);font-weight:600;font-size:1.02rem;text-decoration:none}
.main-navigation .main-nav ul li[class*="current-menu-"]>a,.main-navigation .main-nav ul li a:hover{color:var(--sd-orange-dark);background:transparent;box-shadow:inset 0 -4px 0 var(--sd-orange)}
.main-navigation .main-nav ul li.menu-cta>a{background:var(--sd-orange);color:#1f1a16;border-radius:999px;margin-left:10px;padding-left:22px;padding-right:22px;line-height:44px;height:44px;align-self:center;box-shadow:none}
.main-navigation .main-nav ul li.menu-cta>a:hover{background:var(--sd-pink);color:#fff;box-shadow:none}
.menu-toggle{color:var(--sd-ink)}

/* кнопки */
.wp-block-button__link,.wp-element-button{background:var(--sd-orange);color:#1f1a16;font-weight:700;border-radius:999px;padding:.75em 1.7em;text-decoration:none;border:2px solid var(--sd-orange);font-size:1.05rem}
.wp-block-button__link:hover{background:var(--sd-pink);border-color:var(--sd-pink);color:#fff}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--sd-orange-dark);border:2px solid var(--sd-orange-dark)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--sd-orange-dark);color:#fff;border-color:var(--sd-orange-dark)}

/* внутренние страницы: белая карточка */
.separate-containers .inside-article,.separate-containers .comments-area,.separate-containers .page-header{background:#fff;border-radius:20px;padding:40px}
.entry-title{font-size:2.2rem}
.entry-content img,.wp-block-image img{border-radius:14px;height:auto}
.sd-round img,.sd-round{border-radius:24px}
.wp-block-list li{margin-bottom:.5em}

/* ---- главная ---- */
.home .site-content,.home .site-main{display:block;margin:0}
.home .site-main>*{margin-bottom:0}
.home .inside-article{background:transparent!important;padding:0!important;border-radius:0}
.home .entry-header{display:none}
.home .entry-content{margin:0}
.sd-band{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:60px 20px}
.sd-band>*{max-width:1160px;margin-left:auto;margin-right:auto}
.sd-band>h2{margin-top:0;margin-bottom:.8em;position:relative;padding-bottom:.4em}
.sd-band>h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:5px;border-radius:5px;background:linear-gradient(90deg,var(--sd-orange),var(--sd-green))}
.sd-band--cream{background:var(--sd-cream)}
.sd-band--hero{background:linear-gradient(135deg,#FFF1D6 0%,#FFFBF4 60%);padding-top:56px;padding-bottom:64px}
.sd-hero-title{font-size:2.8rem;line-height:1.15;margin:0 0 .5em}
.sd-lead{font-size:1.3rem;line-height:1.6}
.sd-hero-img img,.sd-round img{width:100%;border-radius:28px;box-shadow:0 14px 36px rgba(154,68,0,.18)}
.sd-band--accent{background:var(--sd-pink-dark);color:#fff}
.sd-band--accent h2,.sd-band--accent p{color:#fff}
.sd-band--accent h2::after{background:#fff}
.sd-band--accent .wp-block-button__link{background:#fff;color:var(--sd-pink-dark);border-color:#fff}
.sd-band--accent .wp-block-button__link:hover{background:var(--sd-ink);color:#fff;border-color:var(--sd-ink)}
.sd-sub{color:#5a4d42;margin-top:-.4em}

/* карточки */
.sd-cards .wp-block-column{background:#fff;border-radius:20px;padding:26px 28px;border-top:7px solid var(--sd-orange);box-shadow:0 6px 20px rgba(42,36,32,.07)}
.sd-cards .wp-block-column:nth-child(2){border-top-color:var(--sd-green)}
.sd-cards .wp-block-column:nth-child(3){border-top-color:var(--sd-pink)}
.sd-cards h3{margin-top:0}

/* руководство */
.sd-people{gap:24px}
.sd-people .wp-block-image{margin:0 0 12px}
.sd-people img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top center;border-radius:20px}
.sd-person-name{font-size:1.15rem;margin:.2em 0}
.sd-role{display:inline-block;background:var(--sd-green);color:#1c2b08;font-weight:600;font-size:.95rem;padding:2px 14px;border-radius:999px;margin:0}

/* галерея */
.wp-block-gallery.has-nested-images figure.wp-block-image img{border-radius:14px}
.wp-block-gallery{gap:14px}

/* вопросы-ответы */
.wp-block-details{background:#fff;border:2px solid var(--sd-line);border-radius:16px;padding:.9rem 1.3rem;margin-bottom:.9rem}
.wp-block-details summary{font-weight:700;font-size:1.1rem;cursor:pointer}
.wp-block-details[open]{border-color:var(--sd-orange)}
.wp-block-details p{margin-top:.8em}

/* реквизиты */
.sd-requisites table{border-collapse:collapse;width:100%}
.sd-requisites td{border:1px solid var(--sd-line);padding:.7em 1em;vertical-align:top}
.sd-requisites td:first-child{width:30%;background:var(--sd-cream)}

/* новости (блог и блок «Последние записи») */
.wp-block-latest-posts.is-grid{gap:24px}
.wp-block-latest-posts.is-grid li{background:#fff;border-radius:18px;padding:0 0 18px;overflow:hidden;box-shadow:0 6px 20px rgba(42,36,32,.07);margin-bottom:0}
.wp-block-latest-posts__featured-image img{width:100%;height:210px;object-fit:cover;border-radius:0}
.wp-block-latest-posts.is-grid li>a,.wp-block-latest-posts__post-date,.wp-block-latest-posts__post-excerpt{margin-left:18px;margin-right:18px}
.wp-block-latest-posts>li>a{font-weight:700;font-size:1.15rem;color:var(--sd-ink);display:block;margin-top:14px}
.blog .site-main{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px}
.blog .site-main>.page-header,.blog .site-main>.paging-navigation,.blog .site-main>.navigation{grid-column:1/-1}
.blog .inside-article{height:100%}
.blog .post-image img{width:100%;height:220px;object-fit:cover;border-radius:14px}
.blog .entry-title{font-size:1.35rem}
.single .post-image img,.single .featured-image img{border-radius:16px}

/* подвал */
.site-footer,.site-info{background:var(--sd-ink);color:#f3e9dc}
.site-info a{color:#ffd9a3}
.sd-footer{max-width:1100px;margin:0 auto;padding:10px 20px;text-align:center;font-size:.95rem}
.sd-footer p{margin:.5em 0}

/* мобильные */
@media (max-width:781px){
  body{font-size:17px}
  h1,.sd-hero-title{font-size:2rem} h2{font-size:1.6rem}
  .sd-band{padding:40px 16px}
  .separate-containers .inside-article{padding:22px 18px}
  .sd-topbar__in{justify-content:center}
  .main-navigation .main-nav ul li.menu-cta>a{margin:6px 0;display:inline-block}
}

/* режимы доступности */
html.a11y-lg body{font-size:21px}
html.a11y-xl body{font-size:24px}
html.a11y-lg .main-navigation .main-nav ul li a,html.a11y-xl .main-navigation .main-nav ul li a{font-size:1.05rem}
html.a11y-contrast *:not(img):not(svg):not(path):not(.wp-block-button__link):not(.menu-cta>a){background:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important;text-shadow:none!important}
html.a11y-contrast a{color:#ffe14a!important}
html.a11y-contrast .wp-block-button__link,html.a11y-contrast .menu-cta>a{background:#ffe14a!important;color:#000!important;border-color:#ffe14a!important}
html.a11y-contrast .sd-band::before,html.a11y-contrast .sd-band>h2::after{display:none}

.sd-source{font-size:.95rem;color:#5a4d42;margin-top:1.5em}
