:root{
      --paper:#F7F5F0;
      --paper-2:#EFEAD9;
      --paper-3:#F7F5F0;
      --ink:#1B1815;
      --ink-2:#2A2620;
      --muted:#6B665C;
      --line:#D8D3C5;
      --gold:#8C2A1D;
      --gold-2:#8C2A1D;
      --green:#1B1815;
      --green-2:#2A2620;
      --red:#8C2A1D;
      --shadow: 0 22px 70px rgba(27,24,21,.14);
      --serif:"Cormorant Garamond", serif;
      --sans:"Inter", system-ui, sans-serif;
      --wrap: min(1220px, calc(100vw - 48px));
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:var(--sans);
      color:var(--ink);
      background:var(--paper);
      line-height:1.55;
      text-rendering:optimizeLegibility;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    .container{width:var(--wrap);margin-inline:auto}
    .eyebrow{
      font-size:12px;
      letter-spacing:.24em;
      text-transform:uppercase;
      color:var(--muted);
      font-weight:700;
    }
    .section{padding:104px 0}
    .section--soft{background:var(--paper-2)}
    .section--dark{background:var(--ink);color:var(--paper)}
    .title{
      font-family:var(--serif);
      font-weight:500;
      font-size:clamp(46px,6vw,86px);
      line-height:.92;
      letter-spacing:-.025em;
      margin:14px 0 0;
    }
    .title span,.script{font-style:italic;color:var(--gold)}
    .lead{font-size:18px;color:var(--ink-2);max-width:620px}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      min-height:48px;padding:14px 22px;
      border:1px solid var(--ink);
      background:transparent;color:var(--ink);
      font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
      cursor:pointer;transition:.25s ease;
    }
    .btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(27,24,21,.12)}
    .btn--dark{background:var(--ink);color:var(--paper);border-color:var(--ink)}
    .btn--gold{background:var(--gold-2);color:var(--ink);border-color:var(--gold-2)}
    .btn--light{background:var(--paper);color:var(--ink);border-color:var(--paper)}
    .btn--ghost-light{color:var(--paper);border-color:rgba(247,245,240,.45)}
    .divider{display:flex;align-items:center;gap:14px;color:var(--muted);opacity:.55;margin:28px 0}
    .divider:before,.divider:after{content:"";height:1px;background:currentColor;flex:1}
    .diamond{width:7px;height:7px;background:currentColor;transform:rotate(45deg);display:inline-block;flex:0 0 auto}
    .cross{display:inline-grid;place-items:center;width:28px;height:28px;color:var(--gold)}
    .cross:before{content:"☦";font-size:24px;line-height:1}

    /* Header */
    .topbar{background:var(--ink);color:#D8D3C5;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
    .topbar .container{display:flex;justify-content:space-between;gap:20px;padding:9px 0;align-items:center}
    .topbar__right{display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
    .socials{display:flex;gap:7px;align-items:center}
    .socials a{border:1px solid rgba(216,211,197,.38);padding:3px 6px;min-width:30px;text-align:center;border-radius:99px;color:#F7F5F0}
    .site-header{position:sticky;top:0;z-index:50;background:rgba(247,245,240,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
    .nav{width:min(1360px,calc(100vw - 36px));margin-inline:auto;display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;padding:15px 0}
    .brand{display:flex;align-items:center;gap:14px;min-width:360px}
    .brand img{width:150px;height:auto;object-fit:contain}
    .brand__text{font-family:var(--serif);font-size:22px;line-height:1;color:var(--green);max-width:390px}
    .brand__text small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:4px}
    .menu{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex-wrap:wrap;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-2)}
    .menu a{padding:8px 0;border-bottom:1px solid transparent;transition:.2s}
    .menu a:hover{border-color:var(--gold);color:var(--green)}

    /* Hero slider */
    .hero{min-height:calc(100vh - 108px);display:grid;align-items:stretch;background:linear-gradient(90deg,var(--paper) 0 58%,var(--paper-2) 58% 100%)}
    .hero__inner{width:min(1360px,calc(100vw - 36px));margin-inline:auto;padding:36px 0 42px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:stretch}
    .hero__copy{padding:62px 0 34px;display:flex;flex-direction:column;justify-content:center}
    .hero__copy .lead{margin:30px 0 34px}
    .hero__title{font-family:var(--serif);font-size:clamp(58px,8vw,118px);font-weight:500;line-height:.86;letter-spacing:-.04em;margin:0;color:var(--green)}
    .hero__title em{display:block;color:var(--gold);font-style:italic}
    .hero__cta{display:flex;gap:12px;flex-wrap:wrap}
    .slider{position:relative;min-height:620px;overflow:hidden;box-shadow:var(--shadow);background:var(--ink)}
    .slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .65s ease}
    .slide.active{opacity:1;pointer-events:auto}
    .slide img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) sepia(.08)}
    .slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,24,21,.08),rgba(27,24,21,.78))}
    .slide__content{position:absolute;left:34px;right:34px;bottom:34px;z-index:2;color:var(--paper)}
    .slide__kicker{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#D8D3C5;margin-bottom:10px;font-weight:700}
    .slide__title{font-family:var(--serif);font-size:clamp(34px,4vw,58px);line-height:.98;font-weight:500;margin:0 0 16px}
    .slide__text{max-width:560px;color:#F7F5F0;margin:0 0 18px}
    .slider__nav{position:absolute;z-index:4;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:10px}
    .slider__dots{display:flex;gap:7px;background:rgba(27,24,21,.4);padding:8px;border:1px solid rgba(247,245,240,.18)}
    .slider__dot{width:34px;height:3px;border:0;background:rgba(247,245,240,.36);padding:0;cursor:pointer}
    .slider__dot.active{background:var(--gold-2)}
    .slider__arrows{display:flex;gap:8px}
    .icon-btn{width:42px;height:42px;border:1px solid rgba(247,245,240,.36);background:rgba(27,24,21,.35);color:var(--paper);cursor:pointer;font-size:18px}
    .quick-news{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px;max-width:620px}
    .quick-news a{display:block;background:rgba(247,245,240,.12);border:1px solid rgba(247,245,240,.18);padding:12px;color:var(--paper)}
    .quick-news b{font-family:var(--serif);font-size:18px;font-weight:500;display:block;line-height:1.1}
    .quick-news small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#D8D3C5}

    /* Calendar */
    .section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:42px}
    .section-head p{margin:0;max-width:440px;color:var(--muted)}
    .calendar-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}
    .month-card,.day-card,.plain-card{background:var(--paper-3);border:1px solid var(--line);box-shadow:0 10px 32px rgba(27,24,21,.06)}
    .month-card{padding:28px}
    .month-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
    .month-head h3{font-family:var(--serif);font-size:34px;margin:0;font-weight:500;color:var(--green)}
    .weekdays,.dates{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center}
    .weekdays{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
    .date-btn{border:1px solid transparent;background:var(--paper);height:46px;cursor:pointer;color:var(--ink);transition:.2s}
    .date-btn:hover,.date-btn.is-active{border-color:var(--gold);background:#F7F5F0;color:var(--green)}
    .date-btn.has-event:after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:var(--gold);margin:2px auto 0}
    .date-btn.is-muted{opacity:.35}
    .day-card{padding:34px;background:var(--green);color:var(--paper);position:relative;overflow:hidden}
    .day-card:before{content:"";position:absolute;right:-120px;top:-160px;width:360px;height:360px;border-radius:50%;border:1px solid rgba(216,211,197,.25)}
    .day-card__top{display:flex;justify-content:space-between;gap:20px;align-items:start;position:relative;z-index:1}
    .day-card h3{font-family:var(--serif);font-size:54px;line-height:.95;font-weight:500;margin:8px 0 8px}
    .day-card .saint{font-family:var(--serif);font-style:italic;color:#D8D3C5;font-size:20px}
    .day-actions{display:flex;gap:8px}
    .day-actions button{width:38px;height:38px;background:transparent;border:1px solid rgba(247,245,240,.35);color:var(--paper);cursor:pointer}
    .service-list{position:relative;z-index:1;margin:28px 0;border-top:1px solid rgba(247,245,240,.18)}
    .service{display:grid;grid-template-columns:82px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid rgba(247,245,240,.16)}
    .service time{font-family:var(--serif);font-size:28px;color:#D8D3C5;line-height:1}
    .service.is-event time{color:#F7F5F0}.service.is-event b{color:#F7F5F0}
    .schedule-strip{margin-top:24px;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:var(--paper-3);border:1px solid var(--line);padding:16px 18px}
    .filters{display:flex;gap:8px;flex-wrap:wrap}.filters label{font-size:12px;color:var(--muted);display:inline-flex;gap:5px;align-items:center}

    /* About */
    .about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
    .image-card{background:var(--paper-3);border:1px solid var(--line);overflow:hidden;transition:.25s ease;display:block}
    .image-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
    .image-card__media{aspect-ratio:4/3;overflow:hidden;background:var(--paper-2)}
    .image-card__media img{width:100%;height:100%;object-fit:cover;transition:.4s ease}.image-card:hover img{transform:scale(1.04)}
    .image-card__body{padding:24px}
    .image-card h3{font-family:var(--serif);font-size:32px;font-weight:500;line-height:1;margin:6px 0 10px;color:var(--green)}
    .image-card p{margin:0;color:var(--muted)}

    /* Projects */
    .life-intro{background:var(--green);color:var(--paper);padding:82px 0;text-align:center}
    .life-intro .title{color:var(--paper)}
    .life-intro blockquote{font-family:var(--serif);font-size:28px;font-style:italic;color:#D8D3C5;max-width:800px;margin:24px auto 0}
    .tabs{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 28px}
    .tab{border:1px solid var(--line);background:transparent;padding:13px 18px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;color:var(--ink);font-weight:700}
    .tab.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
    .project-panel{display:none}.project-panel.active{display:block}
    .project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
    .project-item{background:var(--paper-2);min-height:210px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}
    .project-item:hover{background:#EFEAD9}.project-item small{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:10px}
    .project-item h3{font-family:var(--serif);font-size:28px;line-height:1;font-weight:500;margin:30px 0 10px;color:var(--green)}
    .project-item p{margin:0;color:var(--muted);font-size:14px}
    .youth-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:stretch}
    .feature-photo{min-height:480px;position:relative;overflow:hidden;background:var(--ink)}
    .feature-photo img{width:100%;height:100%;object-fit:cover;opacity:.88}.feature-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(27,24,21,.72))}
    .feature-photo__text{position:absolute;left:30px;right:30px;bottom:30px;color:var(--paper);z-index:1}.feature-photo__text h3{font-family:var(--serif);font-size:52px;line-height:.95;font-weight:500;margin:0 0 12px}
    .subprojects{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
    .subprojects a{background:var(--paper-3);padding:22px;min-height:114px}.subprojects b{font-family:var(--serif);font-size:23px;font-weight:500;color:var(--green);display:block}.subprojects small{color:var(--muted)}

    /* News */
    .news-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:28px}.news-card{display:block}.news-card__media{aspect-ratio:4/3;overflow:hidden;background:var(--paper-2);margin-bottom:18px}.news-card__media img{width:100%;height:100%;object-fit:cover}.news-card h3{font-family:var(--serif);font-size:36px;line-height:1.05;font-weight:500;margin:0 0 12px;color:var(--green)}.news-card p{color:var(--muted);margin:0}.news-meta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:10px}.side-news{display:grid;gap:22px}.mini-news{display:grid;grid-template-columns:126px 1fr;gap:16px}.mini-news img{width:126px;aspect-ratio:1/1;object-fit:cover}.mini-news h4{font-family:var(--serif);font-size:22px;line-height:1.1;font-weight:500;margin:0;color:var(--green)}

    /* Gallery */
    .gallery-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.gallery-card{position:relative;min-height:320px;overflow:hidden;background:var(--ink);display:block}.gallery-card:first-child{grid-row:span 2}.gallery-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.78;transition:.4s}.gallery-card:hover img{transform:scale(1.04);opacity:.9}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(27,24,21,.84))}.gallery-card div{position:absolute;left:24px;right:24px;bottom:24px;color:var(--paper);z-index:1}.gallery-card h3{font-family:var(--serif);font-size:34px;line-height:1;font-weight:500;margin:8px 0}.gallery-card p{margin:0;color:#D8D3C5}

    /* Notes */
    .notes-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:34px}.note-help{background:var(--green);color:var(--paper);padding:34px;min-height:100%}.note-help h3{font-family:var(--serif);font-size:44px;line-height:1;font-weight:500;margin:0 0 18px}.note-help p{color:#D8D3C5}.note-help ul{padding-left:18px;color:#D8D3C5}.form-card{background:var(--paper-3);border:1px solid var(--line);padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#F7F5F0;color:var(--ink);padding:13px}.field textarea{min-height:150px;resize:vertical}.notes-result{display:none;margin-top:22px;background:#F7F5F0;border:1px solid var(--line);padding:18px;white-space:pre-wrap;color:var(--ink-2)}.notes-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

    /* Newspaper / donate */
    .split{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.split>div{background:var(--paper-2);padding:48px}.newspaper-list{display:flex;gap:16px;margin-top:24px}.paper-cover{display:block;flex:1}.paper-cover img{aspect-ratio:3/4;object-fit:cover;box-shadow:0 12px 28px rgba(27,24,21,.18)}.paper-cover small{display:block;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-top:10px}.paper-cover b{font-family:var(--serif);font-size:17px;line-height:1.1;font-weight:500;display:block}.donate{background:var(--ink)!important;color:var(--paper)}.donate .lead{color:#D8D3C5}.amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0}.amounts button{border:1px solid rgba(247,245,240,.24);background:transparent;color:var(--paper);padding:16px;cursor:pointer;font-family:var(--serif);font-size:20px}.amounts button.active{background:var(--gold-2);color:var(--ink);border-color:var(--gold-2)}

    /* Contacts */
    .contacts{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px}.contact-row{display:grid;grid-template-columns:130px 1fr;gap:18px;border-bottom:1px solid var(--line);padding:16px 0}.contact-row small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700}.contact-row b{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--green)}.map{min-height:430px;background:var(--paper-2);border:1px solid var(--line);position:relative;overflow:hidden}.map svg{width:100%;height:100%;position:absolute;inset:0}.map__label{position:absolute;left:24px;bottom:24px;background:var(--paper);padding:12px 18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;box-shadow:0 10px 28px rgba(27,24,21,.12)}

    /* Footer */
    footer{background:var(--ink);color:#A8A294;padding:50px 0 28px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:34px;border-bottom:1px solid rgba(216,211,197,.24);padding-bottom:34px}.footer-grid h3{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--paper);margin:0 0 12px}.footer-grid h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin:0 0 14px}.footer-grid a,.footer-grid p{display:block;color:#A8A294;margin:0 0 8px;font-size:13px}.copyright{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:22px;font-size:11px;color:#6B665C}



    /* Recommendations from ТЗ: instruction cards, full schedule, project carousel, gallery filters */
    .video-play{
      position:absolute;left:50%;top:42%;z-index:3;transform:translate(-50%,-50%);
      width:92px;height:92px;border-radius:50%;border:1px solid rgba(247,245,240,.65);
      background:rgba(27,24,21,.45);display:grid;place-items:center;color:var(--paper);
      box-shadow:0 18px 46px rgba(0,0,0,.25)
    }
    .video-play:before{content:"▶";font-size:28px;margin-left:6px}
    .instructions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .instruction-card{background:var(--paper-3);border:1px solid var(--line);padding:28px;min-height:280px;display:flex;flex-direction:column;justify-content:space-between;transition:.25s ease}
    .instruction-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(27,24,21,.10)}
    .instruction-card h3{font-family:var(--serif);font-size:36px;line-height:.98;font-weight:500;color:var(--green);margin:16px 0 12px}
    .instruction-card p{color:var(--muted);margin:0}
    .instruction-steps{margin-top:20px;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:8px;color:var(--ink-2);font-size:14px}
    .church-calendar-link{display:inline-flex;margin-top:12px;color:#D8D3C5;border-bottom:1px solid rgba(216,211,197,.5);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
    .full-schedule{border-top:1px solid var(--line)}
    .schedule-month{display:grid;gap:10px;max-height:560px;overflow:auto;padding-right:8px}
    .schedule-row{display:grid;grid-template-columns:150px 1fr 190px;gap:18px;align-items:start;background:var(--paper-3);border:1px solid var(--line);padding:18px 20px}
    .schedule-row[data-hidden="true"]{display:none}
    .schedule-row__date{font-family:var(--serif);font-size:28px;line-height:1;color:var(--green)}
    .schedule-row__date small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:5px}
    .schedule-row__items{display:grid;gap:8px}.schedule-row__items b{font-size:15px;color:var(--ink)}.schedule-row__items span{display:block;color:var(--muted);font-size:14px}
    .schedule-row__type{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.tag{border:1px solid var(--line);padding:6px 9px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--paper)}
    .project-carousel-controls{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:-12px;margin-bottom:26px}
    .project-counter{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:700;min-width:70px;text-align:center}
    .is-pinned{display:inline-flex;align-items:center;gap:7px;background:var(--gold);color:var(--paper);padding:7px 10px;margin-bottom:10px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:800}
    .gallery-cats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.gallery-cats a{border:1px solid var(--line);padding:10px 13px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}.gallery-cats a:hover{border-color:var(--gold);color:var(--gold)}
    .donate-purposes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:18px 0}.donate-purposes button{border:1px solid rgba(247,245,240,.24);background:rgba(247,245,240,.04);color:var(--paper);padding:13px;text-align:left;cursor:pointer;font-size:12px}.donate-purposes button.active{border-color:var(--gold-2);background:rgba(140,42,29,.35)}
    .transfer-flow{display:grid;gap:10px;margin-top:18px}.transfer-step{border:1px solid rgba(247,245,240,.14);background:rgba(247,245,240,.06);padding:13px;color:#D8D3C5;font-size:14px}.transfer-step b{display:block;color:var(--paper);font-family:var(--serif);font-size:20px;font-weight:500;margin-bottom:4px}

    @media (max-width: 1100px){
      .instructions-grid{grid-template-columns:1fr 1fr}.schedule-row{grid-template-columns:1fr}.schedule-row__type{justify-content:flex-start}.nav{grid-template-columns:1fr}.brand{min-width:0}.menu{justify-content:flex-start}.hero__inner,.calendar-layout,.notes-layout,.contacts,.youth-panel{grid-template-columns:1fr}.hero{background:var(--paper)}.slider{min-height:540px}.news-grid,.gallery-grid{grid-template-columns:1fr 1fr}.news-grid .news-card{grid-column:1/-1}.project-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width: 720px){
      .instructions-grid,.donate-purposes{grid-template-columns:1fr}.project-carousel-controls{justify-content:flex-start;margin-top:0}.schedule-row{padding:16px}.video-play{width:72px;height:72px}:root{--wrap: min(100vw - 28px, 1220px)}.topbar .container,.topbar__right{align-items:flex-start;flex-direction:column}.brand{align-items:flex-start}.brand img{width:120px}.brand__text{font-size:18px}.menu{gap:10px;font-size:10px}.section{padding:70px 0}.hero__inner{width:var(--wrap);padding-top:24px}.hero__copy{padding:28px 0}.slider{min-height:460px}.quick-news,.about-grid,.project-grid,.news-grid,.gallery-grid,.form-grid,.amounts,.footer-grid{grid-template-columns:1fr}.mini-news{grid-template-columns:96px 1fr}.mini-news img{width:96px}.gallery-card:first-child{grid-row:auto}.split>div{padding:32px 22px}.newspaper-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.contact-row{grid-template-columns:1fr}.schedule-strip{grid-template-columns:1fr}.section-head{display:block}.title{font-size:48px}.hero__title{font-size:62px}.day-card h3{font-size:42px}.service{grid-template-columns:70px 1fr}.slide__content{left:22px;right:22px;bottom:22px}.footer-grid{gap:22px}.copyright{display:block}.month-card{padding:18px}.date-btn{height:40px}
    }

/* DLE integration */
.dle-content{min-height:55vh;background:var(--paper)}
.dle-content .speedbar, .dle-speedbar{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}
.dle-card{background:var(--paper-3);border:1px solid var(--line);padding:30px;box-shadow:0 10px 32px rgba(27,24,21,.06);margin-bottom:22px}
.dle-card__title{font-family:var(--serif);font-size:clamp(34px,4vw,58px);line-height:1;font-weight:500;color:var(--green);margin:0 0 16px}
.dle-card__title a{color:inherit}
.dle-card__meta{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.dle-card__body{color:var(--ink-2);font-size:17px}.dle-card__body img{height:auto;margin:18px 0}.dle-card__footer{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-top:22px;border-top:1px solid var(--line);padding-top:18px}
.dle-full__title{font-family:var(--serif);font-size:clamp(46px,6vw,82px);line-height:.95;font-weight:500;color:var(--green);margin:0 0 18px}.dle-full__body{font-size:18px;color:var(--ink-2)}.dle-full__body img{height:auto;margin:22px 0}.dle-comments{margin-top:50px}.dle-comment{border:1px solid var(--line);background:var(--paper-3);padding:20px;margin-bottom:14px}.dle-form{background:var(--paper-3);border:1px solid var(--line);padding:26px;margin-top:24px}.dle-form input,.dle-form textarea{width:100%;border:1px solid var(--line);background:#F7F5F0;padding:13px;margin-bottom:12px}.dle-navigation{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin:34px 0}.dle-navigation a,.dle-navigation span{border:1px solid var(--line);padding:10px 13px;background:var(--paper-3);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.dle-navigation .current{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* DLE 12.1: динамические блоки и совместимость со старой темой YourCity */
.socials a[href="#"]{opacity:.6}
.news-grid--dle .news-card{min-width:0}
.news-card--custom{background:var(--paper-2);padding:18px;border:1px solid var(--line)}
.news-card--custom .news-card__media{display:block;margin:-18px -18px 16px}
.news-card__text{color:var(--muted);font-size:15px;margin:0 0 16px}
.dle-card__image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--paper-2);margin-bottom:20px}
.dle-card__image img{width:100%;height:100%;object-fit:cover}
.dle-card__title--full{font-family:var(--serif);font-size:54px;line-height:1.05;font-weight:500;color:var(--green);margin:12px 0 24px}
.dle-xfield{margin-top:24px;padding:18px;border:1px solid var(--line);background:var(--paper-2)}
.dle-related{margin-top:34px}.dle-related h3{font-family:var(--serif);font-size:34px;color:var(--green)}
.legacy-card,.adsinf,.ln,.ltn{border:1px solid var(--line);background:var(--paper-2);padding:16px;margin:12px 0;color:var(--ink-2)}
.legacy-card{display:grid;grid-template-columns:180px 1fr;gap:18px}.legacy-card__image{display:block;aspect-ratio:4/3;overflow:hidden}.legacy-card__image img{width:100%;height:100%;object-fit:cover}
.adsinfpic img,.adsinfpic1 img,.adsinfpic2 img,.adsinfpic3 img,.lnpic img,.ltnpic img,.lastphotospic img{max-width:100%;height:auto;display:block}
.adsinftext,.adsinftext1,.adsinftext2,.adsinftext3,.ln b,.ltn a{font-family:var(--serif);font-size:22px;line-height:1.1;color:var(--green)}
.lastphotos{margin:26px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.lastphotos>h2,.lastphotos>h3,.lastphotos>span{grid-column:1/-1;font-family:var(--serif);font-size:38px;color:var(--green);font-weight:500}
.relatednews1,.relatednews2,.relatednews3{min-height:120px}.adsinfpic1,.adsinfpic2,.adsinfpic3{margin-bottom:12px}
.fr-solid-borders{border-collapse:collapse}.fr-solid-borders td{border:1px solid var(--line);padding:12px}
.sb{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border:1px solid var(--line);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-right:6px}
@media (max-width:760px){.legacy-card{grid-template-columns:1fr}.dle-card__title--full{font-size:38px}}

/* v1.2 — правки под перенос старого меню, новый логотип, сайдбар и список новостей */
.nav{grid-template-columns:minmax(270px,360px) 1fr;gap:18px;position:relative}
.brand{min-width:0;gap:12px}.brand img{width:118px;max-height:86px;object-fit:contain}.brand__text{font-size:17px;max-width:230px}.brand__text small{font-size:9px}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--paper-3);color:var(--ink);padding:10px 14px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;cursor:pointer}
.menu.menu--dropdown{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:nowrap;font-size:10px;letter-spacing:.12em;white-space:nowrap}
.menu--dropdown .menu__item{position:relative;list-style:none}.menu--dropdown>li>a{display:flex;align-items:center;min-height:42px;padding:10px 0;border-bottom:1px solid transparent}.menu--dropdown .has-submenu>a:after{content:"";width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-left:7px;margin-top:-4px;opacity:.65}
.submenu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);z-index:90;min-width:260px;max-width:min(86vw,720px);background:rgba(247,245,240,.98);border:1px solid var(--line);box-shadow:0 22px 55px rgba(27,24,21,.15);padding:14px;list-style:none;display:grid;gap:4px;opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease;text-align:left;white-space:normal}.submenu--wide{grid-template-columns:repeat(2,minmax(220px,1fr));width:560px}.submenu--mega{grid-template-columns:repeat(3,minmax(210px,1fr));width:820px;left:auto;right:0;transform:translateY(8px)}.submenu li{list-style:none}.submenu a{display:block;padding:9px 10px;border-bottom:1px solid rgba(216,211,197,.55);font-size:11px;line-height:1.25;letter-spacing:.08em;text-transform:none;color:var(--ink-2)}.submenu a:hover{background:var(--paper-2);color:var(--gold);border-color:var(--gold)}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu,.has-submenu.is-open>.submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.has-submenu.is-open>.submenu--mega,.has-submenu:hover>.submenu--mega,.has-submenu:focus-within>.submenu--mega{transform:translateY(0)}

.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:36px;align-items:start}.page-main{min-width:0}.page-sidebar{position:sticky;top:118px;display:grid;gap:18px}.sidebar-box{background:var(--paper-3);border:1px solid var(--line);box-shadow:0 10px 32px rgba(27,24,21,.06);padding:20px}.sidebar-box--calendar{overflow:hidden}.sidebar-title{font-family:var(--serif);font-size:28px;line-height:1.05;color:var(--green);font-weight:500;margin-bottom:14px}.sidebar-actions{display:grid;gap:10px}.sidebar-action{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);background:var(--paper-2);transition:.2s}.sidebar-action:hover{transform:translateY(-1px);border-color:var(--gold);box-shadow:0 12px 26px rgba(27,24,21,.1)}.sidebar-action span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);font-family:var(--serif);font-size:18px}.sidebar-action b{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.05;color:var(--green)}.sidebar-action em{font-style:normal;color:var(--muted);font-size:12px;line-height:1.25}.sidebar-projects{margin:0;padding:0;list-style:none}.sidebar-projects li{border-bottom:1px solid var(--line)}.sidebar-projects li:last-child{border-bottom:0}.sidebar-projects a{display:block;padding:10px 0;color:var(--ink-2);font-size:14px}.sidebar-projects a:hover{color:var(--gold)}.speedbar{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

.map--iframe{display:block;min-height:467px;background:var(--paper-2)}.map--iframe iframe{width:100%;height:100%;min-height:467px;border:0;display:block}.map--iframe .map__label{position:absolute;left:24px;bottom:24px;background:var(--paper);padding:12px 18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;box-shadow:0 10px 28px rgba(27,24,21,.12)}

.dle-card--news-list{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:26px;align-items:start}.dle-card--news-list .dle-card__image{margin:0;aspect-ratio:4/3}.dle-card--news-list .dle-card__image img{width:100%;height:100%;object-fit:cover;margin:0}.dle-card--news-list .dle-card__title{font-size:clamp(30px,3vw,46px);margin-bottom:14px}.dle-card--news-list .dle-card__body{font-size:16px}.dle-card--news-list .dle-card__footer{margin-top:18px}.dle-card__content{min-width:0}

@media (max-width:1280px){.nav{grid-template-columns:minmax(220px,300px) 1fr}.brand img{width:96px}.brand__text{font-size:15px;max-width:190px}.menu.menu--dropdown{gap:8px;font-size:9.5px}.submenu--mega{right:-20px}}
@media (max-width:1100px){.nav{grid-template-columns:1fr auto}.menu-toggle{display:inline-flex;align-items:center;justify-content:center}.menu.menu--dropdown{grid-column:1/-1;display:none;white-space:normal;justify-content:flex-start;align-items:stretch;flex-direction:column;gap:0;background:var(--paper-3);border:1px solid var(--line);padding:10px}.nav.is-open .menu.menu--dropdown{display:flex}.menu--dropdown>li>a{justify-content:space-between;border-bottom:1px solid var(--line)}.submenu,.submenu--wide,.submenu--mega{position:static;transform:none!important;left:auto;right:auto;width:auto;max-width:none;min-width:0;display:none;grid-template-columns:1fr;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:0;background:var(--paper-2);padding:8px;margin:0 0 10px}.has-submenu.is-open>.submenu{display:grid}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:grid}.page-layout{grid-template-columns:1fr}.page-sidebar{position:static}.dle-card--news-list{grid-template-columns:1fr 220px}}
@media (max-width:720px){.brand img{width:86px}.brand__text{font-size:15px}.dle-card--news-list{grid-template-columns:1fr}.dle-card--news-list .dle-card__image{order:-1}.submenu a{font-size:12px}.page-sidebar{gap:14px}.sidebar-box{padding:16px}.map--iframe,.map--iframe iframe{min-height:360px}}

/* v1.3 — мобильная версия, календарные виджеты, расширенные новости */
.menu-toggle{gap:9px;border-radius:999px;box-shadow:0 8px 22px rgba(27,24,21,.08)}
.menu-toggle__icon{position:relative;display:inline-block;width:18px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}
.menu-toggle__icon:before{content:"";position:absolute;left:0;right:0;top:4px;border-top:2px solid currentColor}
.nav.is-open .menu-toggle__icon{border-color:transparent}
.nav.is-open .menu-toggle__icon:before{transform:rotate(45deg);top:4px}
.nav.is-open .menu-toggle__icon:after{content:"";position:absolute;left:0;right:0;top:4px;border-top:2px solid currentColor;transform:rotate(-45deg)}
.calendar-widgets{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,.42fr);gap:24px;margin-top:28px;align-items:stretch}
.calendar-widget{background:var(--paper-3);border:1px solid var(--line);box-shadow:0 10px 32px rgba(27,24,21,.06);padding:22px;overflow:hidden}
.calendar-widget h3{font-family:var(--serif);font-size:34px;line-height:1.05;font-weight:500;margin:8px 0 18px;color:var(--green)}
.calendar-embed{background:var(--paper-2);border:1px solid var(--line);padding:14px;min-height:140px;overflow:auto;color:var(--ink-2)}
.calendar-widget--events iframe,.sidebar-box--temple-events iframe{width:100%;height:500px;border:0;background:var(--paper-2);display:block}
.sidebar-box--orthodox-calendar .calendar-embed{padding:10px;max-height:520px}
.sidebar-box--temple-events{overflow:hidden}.sidebar-box--temple-events iframe{height:500px;max-width:100%}
.mini-news{align-items:start;border-bottom:1px solid var(--line);padding-bottom:14px}
.mini-news:last-child{border-bottom:0;padding-bottom:0}
.mini-news p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.38}
.news-grid--dle{align-items:start}.side-news{align-content:start}

@media (min-width:1101px){
  .menu.menu--dropdown{font-size:9px;letter-spacing:.08em;gap:8px}
  .menu--dropdown>li>a{min-height:38px;padding:8px 0}
  .brand img{width:108px}.brand__text{font-size:16px;max-width:220px}
  .menu--dropdown>li:last-child>.submenu{left:auto;right:0;transform:translateY(8px)}
  .menu--dropdown>li:last-child:hover>.submenu,.menu--dropdown>li:last-child:focus-within>.submenu,.menu--dropdown>li:last-child.is-open>.submenu{transform:translateY(0)}
}
@media (max-width:1100px){
  body.menu-open{overflow:hidden}
  .topbar{font-size:10px}.topbar .container{padding:7px 0}
  /* backdrop-filter would make .site-header the containing block for the fixed mobile menu */
  .site-header{top:0;backdrop-filter:none;background:rgba(247,245,240,.98)}
  .nav{width:min(100vw - 24px,1220px);padding:10px 0;grid-template-columns:1fr auto;gap:12px}
  .brand{align-items:center}.brand img{width:84px}.brand__text{font-size:15px;max-width:260px}.brand__text small{display:none}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:42px;background:var(--ink);color:var(--paper);border-color:var(--ink);position:relative;z-index:120}
  .menu.menu--dropdown{position:fixed;left:12px;right:12px;top:calc(var(--mobile-nav-top, 74px));max-height:calc(100vh - var(--mobile-nav-top, 74px) - 18px);overflow:auto;z-index:110;display:none;flex-direction:column;align-items:stretch;gap:8px;padding:14px;background:rgba(247,245,240,.98);border:1px solid var(--line);box-shadow:0 28px 80px rgba(27,24,21,.26);border-radius:18px;white-space:normal;backdrop-filter:blur(16px)}
  .nav.is-open .menu.menu--dropdown{display:flex;animation:menuDrop .18s ease-out}
  /* flex-shrink would squash items against max-height instead of letting the menu scroll */
  .menu--dropdown .menu__item{border:1px solid var(--line);background:var(--paper-3);border-radius:14px;overflow:hidden;flex:0 0 auto}
  .menu--dropdown>li>a{min-height:50px;padding:13px 16px;border:0;justify-content:space-between;font-size:12px;letter-spacing:.1em}
  .menu--dropdown .has-submenu>a:after{width:7px;height:7px;margin-left:10px;transition:.18s ease}
  .menu--dropdown .has-submenu.is-open>a:after{transform:rotate(225deg);margin-top:4px}
  .submenu,.submenu--wide,.submenu--mega{position:static!important;display:none;grid-template-columns:1fr!important;width:auto!important;max-width:none!important;min-width:0!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;box-shadow:none!important;border:0!important;background:var(--paper-2)!important;padding:8px!important;margin:0 10px 12px!important;border-radius:12px;max-height:none;overflow:visible}
  .has-submenu.is-open>.submenu{display:grid!important}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:none}.has-submenu.is-open:hover>.submenu,.has-submenu.is-open:focus-within>.submenu{display:grid!important}
  .submenu a{font-size:13px;letter-spacing:.02em;padding:11px 12px;border-bottom:1px solid rgba(216,211,197,.65);text-transform:none}
  .submenu li:last-child a{border-bottom:0}
  .hero{min-height:auto;background:var(--paper)}.hero__inner{grid-template-columns:1fr;gap:20px}.hero__copy{padding:26px 0 0}.hero__title{font-size:clamp(52px,13vw,82px)}.hero__copy .lead{margin:20px 0 24px}.hero__cta .btn{width:100%}
  .slider{min-height:520px;border-radius:18px}.slider__nav{top:16px;left:16px;right:16px}.slide__content{left:18px;right:18px;bottom:20px}.quick-news{grid-template-columns:1fr}
  .calendar-layout,.calendar-widgets,.contacts,.split,.notes-layout,.youth-panel{grid-template-columns:1fr}.calendar-widget--events iframe,.sidebar-box--temple-events iframe{height:420px}
  .section-head{display:block}.section-head .btn{margin-top:16px}.page-layout{grid-template-columns:1fr;gap:26px}.page-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:static}.sidebar-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-box--calendar,.sidebar-box--temple-events{min-width:0}
}
@media (max-width:720px){
  :root{--wrap: min(100vw - 24px, 1220px)}
  .topbar .container{gap:8px}.topbar__right{gap:8px}.socials a{padding:2px 5px;min-width:28px}
  .nav{width:var(--wrap)}.brand img{width:70px}.brand__text{font-size:13px;max-width:180px}.menu-toggle{padding:9px 12px;font-size:10px}
  .section{padding:58px 0}.title{font-size:clamp(40px,12vw,56px)}.lead{font-size:16px}.btn{width:100%;min-height:46px;padding:12px 16px;text-align:center}.hero__title{font-size:52px}.slider{min-height:430px}.slide__title{font-size:32px}.slide__text{font-size:14px}.slider__arrows{display:none}.slider__dots{width:100%;justify-content:center}.slider__dot{flex:1;max-width:48px}
  .instructions-grid,.about-grid,.project-grid,.news-grid,.gallery-grid,.form-grid,.amounts,.donate-purposes,.footer-grid,.newspaper-list{grid-template-columns:1fr!important}.project-item{min-height:auto;padding:20px}.tabs{display:grid;grid-template-columns:1fr 1fr}.tab{justify-content:center;text-align:center}.project-carousel-controls{display:grid;grid-template-columns:1fr}.project-counter{text-align:center}.month-card,.day-card,.calendar-widget,.sidebar-box,.form-card,.note-help{padding:18px}.day-card h3{font-size:38px}.service{grid-template-columns:58px 1fr;gap:12px}.service time{font-size:24px}.schedule-strip{grid-template-columns:1fr;gap:12px}.schedule-row__date{font-size:26px}.schedule-row__items b{font-size:18px}
  .news-grid--dle{gap:18px}.mini-news{grid-template-columns:88px 1fr;gap:12px}.mini-news img{width:88px}.mini-news h4{font-size:20px}.mini-news p{font-size:13px}.news-card h3{font-size:30px}
  .page-sidebar{grid-template-columns:1fr}.sidebar-actions{grid-template-columns:1fr}.sidebar-action{padding:12px}.sidebar-action b{font-size:20px}.sidebar-box--calendar .calendar-embed{max-height:360px}.calendar-widget--events iframe,.sidebar-box--temple-events iframe{height:380px}.dle-card{padding:20px}.dle-card--news-list{grid-template-columns:1fr!important}.dle-card--news-list .dle-card__image{order:-1}.dle-card__title{font-size:32px}.dle-card__body{font-size:15px}.map--iframe,.map--iframe iframe{min-height:330px}.contact-row b{font-size:19px}.copyright{display:grid;gap:8px;text-align:left}
}
@media (max-width:420px){
  .brand__text{max-width:145px;font-size:12px}.brand img{width:62px}.menu.menu--dropdown{left:8px;right:8px;top:68px;max-height:calc(100vh - 78px)}.topbar{display:none}.slider{min-height:390px}.slide__content{bottom:16px}.hero__title{font-size:46px}.tabs{grid-template-columns:1fr}.mini-news{grid-template-columns:1fr}.mini-news img{width:100%;aspect-ratio:16/9}.calendar-widget--events iframe,.sidebar-box--temple-events iframe{height:340px}
}
@keyframes menuDrop{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}

/* v1.4 — исправление старого календаря и мобильного меню */
.calendar-embed--days{padding:0;min-height:360px;overflow:hidden;background:var(--paper-2)}
.orthodox-calendar-frame{display:block;width:100%;height:380px;border:0;background:var(--paper-2)}
.orthodox-calendar-frame--sidebar{height:440px}
.calendar-open-link{display:block;padding:10px 12px;border-top:1px solid var(--line);background:var(--paper-3);color:var(--gold);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;text-align:center}
@media (max-width:1100px){
  .menu-toggle span:not(.menu-toggle__icon){display:inline!important;visibility:visible!important;opacity:1!important;color:inherit!important;font-size:12px!important;line-height:1!important;text-indent:0!important;white-space:nowrap!important;}
  .menu.menu--dropdown{color:var(--ink)!important;font-family:var(--sans)!important;}
  .menu.menu--dropdown a,.menu--dropdown>li>a,.submenu a{display:flex!important;align-items:center!important;visibility:visible!important;opacity:1!important;color:var(--ink)!important;text-indent:0!important;font-size:14px!important;line-height:1.25!important;font-family:var(--sans)!important;font-weight:800!important;}
  .submenu a{color:var(--ink-2)!important;font-weight:600!important;}
  .menu--dropdown .menu__item{color:var(--ink)!important;}
  .orthodox-calendar-frame{height:360px}.orthodox-calendar-frame--sidebar{height:400px}
}
@media (max-width:420px){
  .menu-toggle span:not(.menu-toggle__icon){font-size:11px!important;}
  .menu.menu--dropdown a,.menu--dropdown>li>a,.submenu a{font-size:13px!important;}
  .orthodox-calendar-frame,.orthodox-calendar-frame--sidebar{height:340px}
}

/* v1.6: православный календарь Азбуки веры без локального iframe-файла */
.calendar-embed--azbyka{padding:0;min-height:380px;overflow:hidden;background:var(--paper-2);border:1px solid var(--line);position:relative}
.azbyka-calendar-frame{display:block;width:100%;height:420px;border:0;background:var(--paper-2)}
.azbyka-calendar-frame--sidebar{height:460px}
.calendar-embed--azbyka .calendar-open-link{display:block;padding:10px 12px;border-top:1px solid var(--line);background:rgba(255,255,255,.28);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);text-align:center}
.calendar-embed--azbyka .calendar-open-link:hover{background:var(--paper-3);color:var(--green)}
@media (max-width:980px){.azbyka-calendar-frame{height:390px}.azbyka-calendar-frame--sidebar{height:420px}}
@media (max-width:520px){.azbyka-calendar-frame,.azbyka-calendar-frame--sidebar{height:360px}.calendar-embed--azbyka{min-height:320px}}

/* v1.7: правки мобильной шапки, календаря, меню, духовенства и партнёров */
@media (min-width:1101px){
  .menu.menu--dropdown{font-size:12px;letter-spacing:.07em;gap:12px;line-height:1.1}
  .menu--dropdown>li>a{min-height:44px;padding:10px 0}
  .brand img{width:112px}.brand__text{font-size:17px;max-width:230px}
  .submenu a{font-size:12px}
}
@media (min-width:1101px) and (max-width:1280px){
  .nav{grid-template-columns:minmax(250px,330px) 1fr;gap:14px;width:min(1380px,calc(100vw - 24px))}
  .menu.menu--dropdown{font-size:10.8px;gap:8px;letter-spacing:.055em}
  .brand img{width:96px}.brand__text{font-size:15px;max-width:190px}
}
@media (max-width:720px){
  .topbar{display:block!important;font-size:9px;letter-spacing:.025em;text-transform:none}
  .topbar .container{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:0!important;padding:7px 4px;width:100%;max-width:100%}
  .topbar .container>a:first-child{display:none!important}
  .topbar__right{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;gap:6px!important;width:auto;max-width:100%;white-space:nowrap}
  .topbar__right>a{line-height:1;display:inline-flex;align-items:center}
  .socials{display:inline-flex!important;flex-wrap:nowrap;gap:3px!important;align-items:center;line-height:1}
  .socials a{padding:2px 5px!important;min-width:auto!important;border-radius:999px;font-size:9px;line-height:1.15}
}
@media (max-width:360px){
  .topbar{font-size:8px}.topbar__right{gap:4px!important}.socials a{padding:2px 4px!important;font-size:8px}
}

.orthodox-calendar-card{padding:0;overflow:hidden;background:linear-gradient(180deg,#F7F5F0 0%,#EFEAD9 100%);border:1px solid var(--line);box-shadow:0 12px 34px rgba(27,24,21,.07);position:relative}
.orthodox-calendar-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(140,42,29,.18);pointer-events:none}
.orthodox-calendar-card__head{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:18px 18px 12px;position:relative;z-index:1}
.orthodox-calendar-card__cross{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(140,42,29,.35);border-radius:50%;color:var(--gold);font-size:24px;background:rgba(255,255,255,.32)}
.orthodox-calendar-card__head b{display:block;font-family:var(--serif);font-weight:500;font-size:26px;line-height:1;color:var(--green)}
.orthodox-calendar-card__head small{display:block;margin-top:3px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.orthodox-calendar-card__content{position:relative;z-index:1;padding:0 18px 14px;color:var(--ink-2)}
.orthodox-calendar-card__loader,.orthodox-calendar-note{margin:0;padding:14px;border:1px solid rgba(216,211,197,.8);background:rgba(255,255,255,.32);color:var(--muted);font-family:var(--serif);font-size:20px;font-style:italic;line-height:1.25}
.orthodox-calendar-rendered{display:grid;gap:12px}.orthodox-calendar-photo{border:1px solid var(--line);background:var(--paper);padding:8px}.orthodox-calendar-photo img{width:100%;max-height:180px;object-fit:cover}
.orthodox-calendar-date{font-family:var(--serif);font-size:30px;line-height:1;color:var(--green);padding-bottom:10px;border-bottom:1px solid var(--line)}
.orthodox-calendar-list{display:grid;gap:8px}.orthodox-calendar-line{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid rgba(216,211,197,.78);align-items:start}.orthodox-calendar-line:last-child{border-bottom:0}
.orthodox-calendar-line span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(140,42,29,.35);color:var(--gold);font-family:var(--serif);font-size:15px}.orthodox-calendar-line b{display:block;color:var(--ink);font-family:var(--serif);font-weight:500;font-size:21px;line-height:1.1}.orthodox-calendar-line p{grid-column:2;margin:2px 0 0;color:var(--muted);font-size:13px;line-height:1.35}.orthodox-calendar-line:hover b{color:var(--gold)}
.azbyka-calendar-frame--fallback{display:block;height:320px;margin:0 18px 14px;width:calc(100% - 36px);border:1px solid var(--line);background:var(--paper)}
.orthodox-calendar-card.is-loaded .azbyka-calendar-frame--fallback{display:none!important}.orthodox-calendar-card .calendar-open-link{position:relative;z-index:1;background:var(--ink);color:var(--paper);border-top:0;margin-top:4px}.orthodox-calendar-card .calendar-open-link:hover{background:var(--gold);color:var(--paper)}
.orthodox-calendar-card--sidebar .orthodox-calendar-card__head{grid-template-columns:36px 1fr;padding:16px 16px 10px}.orthodox-calendar-card--sidebar .orthodox-calendar-card__cross{width:36px;height:36px;font-size:20px}.orthodox-calendar-card--sidebar .orthodox-calendar-card__head b{font-size:23px}.orthodox-calendar-card--sidebar .orthodox-calendar-date{font-size:25px}.orthodox-calendar-card--sidebar .orthodox-calendar-line b{font-size:18px}.orthodox-calendar-card--sidebar .orthodox-calendar-line p{font-size:12px}.sidebar-box--orthodox-calendar .calendar-embed{max-height:none;padding:0}
@media (max-width:720px){.orthodox-calendar-card__head b{font-size:23px}.orthodox-calendar-date{font-size:25px}.orthodox-calendar-line b{font-size:18px}.orthodox-calendar-line{grid-template-columns:32px 1fr}.azbyka-calendar-frame--fallback{height:300px}}

.clergy-list{display:grid;gap:18px}.clergy-card{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:stretch;background:var(--paper-3);border:1px solid var(--line);box-shadow:0 12px 34px rgba(27,24,21,.07);padding:20px;position:relative;overflow:hidden}.clergy-card:before{content:"☦";position:absolute;right:22px;top:12px;font-size:38px;color:rgba(140,42,29,.12)}.clergy-card__photo{display:block;min-height:210px;background:var(--paper-2);border:1px solid var(--line);overflow:hidden}.clergy-card__photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) sepia(.04)}.clergy-card__body{display:flex;flex-direction:column;justify-content:center;min-width:0}.clergy-card__meta{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:800;margin-bottom:8px}.clergy-card__title{font-family:var(--serif);font-size:38px;line-height:1;font-weight:500;margin:0 0 10px;color:var(--green)}.clergy-card__text{color:var(--ink-2);font-size:16px;line-height:1.55;max-width:680px}.clergy-card__footer{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.clergy-tag{display:inline-flex;padding:6px 10px;border:1px solid var(--line);background:var(--paper-2);color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.clergy-profile{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:start}.clergy-profile__photo{border:1px solid var(--line);background:var(--paper-2);padding:10px;box-shadow:0 12px 34px rgba(27,24,21,.07)}.clergy-profile__photo img{width:100%;aspect-ratio:3/4;object-fit:cover}.clergy-profile__content .dle-card__title{margin-top:4px}.clergy-related{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.clergy-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.clergy-mini{display:block;border:1px solid var(--line);background:var(--paper-2);padding:10px}.clergy-mini img{width:100%;aspect-ratio:4/3;object-fit:cover}.clergy-mini b{display:block;margin-top:10px;font-family:var(--serif);font-size:20px;line-height:1.05;color:var(--green)}
@media (max-width:720px){.clergy-card,.clergy-profile{grid-template-columns:1fr}.clergy-card__photo{min-height:0;aspect-ratio:4/3}.clergy-card__title{font-size:32px}.clergy-mini-grid{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.clergy-mini-grid{grid-template-columns:1fr}}

.partners-page{display:grid;gap:30px}.partners-hero{position:relative;overflow:hidden;background:var(--ink);color:var(--paper);padding:42px;border:1px solid rgba(216,211,197,.2);box-shadow:var(--shadow)}.partners-hero:after{content:"☦";position:absolute;right:32px;top:18px;font-size:120px;color:rgba(247,245,240,.08)}.partners-hero .eyebrow{color:#D8D3C5}.partners-hero h1{font-family:var(--serif);font-size:clamp(44px,6vw,78px);line-height:.95;font-weight:500;margin:12px 0 18px}.partners-hero p{max-width:780px;color:#EFEAD9;font-size:18px}.partners-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.partner-card{display:flex;flex-direction:column;gap:14px;min-height:320px;padding:26px;background:var(--paper-3);border:1px solid var(--line);box-shadow:0 12px 34px rgba(27,24,21,.07);position:relative;overflow:hidden}.partner-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--gold)}.partner-card__num{font-family:var(--serif);font-size:20px;color:var(--gold)}.partner-card h2{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1;margin:0;color:var(--green)}.partner-card p{margin:0;color:var(--ink-2)}.partner-card ul{margin:0;padding-left:18px;color:var(--muted);font-size:14px}.partner-card .btn{margin-top:auto;width:fit-content}.partners-note{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:var(--paper-2);border:1px solid var(--line);padding:24px}.partners-note h3{font-family:var(--serif);font-weight:500;font-size:32px;line-height:1;margin:0 0 6px;color:var(--green)}.partners-note p{margin:0;color:var(--muted)}.partners-static-content{border-top:1px solid var(--line);padding-top:24px;color:var(--ink-2)}
@media (max-width:980px){.partners-grid{grid-template-columns:1fr 1fr}.partners-note{grid-template-columns:1fr}.partners-note .btn{width:100%}}
@media (max-width:640px){.partners-hero{padding:28px 22px}.partners-grid{grid-template-columns:1fr}.partner-card{min-height:0}.partner-card .btn{width:100%}}

/* v1.8: интеграция внутреннего API календаря храма */
.schedule-loader,
.schedule-empty{
  border:1px solid var(--line);
  background:var(--paper-3);
  padding:18px 20px;
  color:var(--muted);
  font-size:14px;
}
.schedule-loader--dates{grid-column:1/-1;text-align:center}
.schedule-empty--small{padding:14px;font-size:13px;background:rgba(247,245,240,.55)}
.service b small{
  display:block;
  font-family:var(--sans);
  font-size:13px;
  line-height:1.45;
  font-weight:500;
  color:#D8D3C5;
  margin-top:6px;
}
.day-card .service time,
.day-card .service.is-event time,
.day-card .service--holiday time,
.day-card .service--announcement time{color:#F7F5F0}
.service--holiday time,
.service--announcement time{color:#E6D3A3}
.schedule-event{padding:0 0 10px;margin:0 0 10px;border-bottom:1px solid rgba(216,211,197,.7)}
.schedule-event:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.schedule-event b{display:block;color:var(--ink);font-size:15px}
.schedule-event span{display:block;color:var(--muted);font-size:13px;margin-top:4px}
.temple-events-card{display:grid;gap:10px;margin-top:14px}
.temple-event-link{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:12px;
  align-items:start;
  border:1px solid var(--line);
  background:linear-gradient(135deg, var(--paper-3), var(--paper-2));
  padding:14px;
  transition:.2s ease;
}
.temple-event-link:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(27,24,21,.08);border-color:rgba(140,42,29,.45)}
.temple-event-link>span{
  font-family:var(--serif);
  color:var(--gold);
  font-size:22px;
  line-height:1;
  text-transform:lowercase;
}
.temple-event-link>span em{display:block;font-family:var(--sans);font-style:normal;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.temple-event-link b{font-family:var(--serif);font-size:22px;line-height:1.05;font-weight:500;color:var(--green)}
.temple-event-link small{display:block;grid-column:2;color:var(--muted);font-size:13px;line-height:1.35;margin-top:-5px}
.temple-event-link--service{border-left:4px solid var(--gold)}
.temple-event-link--holiday{border-left:4px solid #A77A2A}
.temple-event-link--announcement{border-left:4px solid var(--muted)}
.temple-events-card--sidebar .temple-event-link{grid-template-columns:62px 1fr;padding:12px}
.temple-events-card--sidebar .temple-event-link>span{font-size:18px}
.temple-events-card--sidebar .temple-event-link b{font-size:18px}
.temple-events-card--sidebar .temple-event-link small{font-size:12px}
@media (max-width:720px){
  .temple-event-link{grid-template-columns:1fr;gap:8px}
  .temple-event-link small{grid-column:auto;margin-top:0}
}

/* v1.9: история, версия для слабовидящих и современные галереи */
.a11y-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-height:26px;padding:4px 10px;border:1px solid rgba(216,211,197,.48);
  border-radius:999px;background:rgba(247,245,240,.06);color:#F7F5F0;
  font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;
  cursor:pointer;transition:.2s ease;white-space:nowrap;
}
.a11y-toggle:hover,.a11y-toggle[aria-pressed="true"]{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.a11y-short{display:none}
body.a11y-mode{background:#fff!important;color:#000!important;font-size:19px;line-height:1.7}
body.a11y-mode .topbar,body.a11y-mode footer,body.a11y-mode .section--dark,body.a11y-mode .life-intro{background:#000!important;color:#fff!important}
body.a11y-mode .site-header,body.a11y-mode .dle-card,body.a11y-mode .sidebar-box,body.a11y-mode .image-card,body.a11y-mode .album-card,body.a11y-mode .gallery-archive,body.a11y-mode .calendar-widget,body.a11y-mode .month-card,body.a11y-mode .day-card{background:#fff!important;color:#000!important;border-color:#000!important;box-shadow:none!important}
body.a11y-mode a{text-decoration:underline;text-underline-offset:3px}
body.a11y-mode .btn,body.a11y-mode button,body.a11y-mode input,body.a11y-mode textarea,body.a11y-mode select{border:2px solid #000!important;font-size:1.05em!important}
body.a11y-mode .title,body.a11y-mode h1,body.a11y-mode h2,body.a11y-mode h3{color:#000!important;letter-spacing:normal!important}
body.a11y-mode .muted,body.a11y-mode .eyebrow,body.a11y-mode .dle-card__meta,body.a11y-mode .news-meta{color:#111!important}
body.a11y-mode .slide:after,body.a11y-mode .gallery-card:after,body.a11y-mode .image-card:after{background:rgba(0,0,0,.72)!important}
body.a11y-mode .a11y-toggle{background:#fff!important;color:#000!important;border-color:#fff!important}

.gallery-archive{display:grid;gap:30px}
.gallery-archive__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,460px);gap:24px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:24px}
.gallery-archive__head p{margin:0;color:var(--muted);font-size:17px}
.gallery-filterline{display:flex;flex-wrap:wrap;gap:8px;margin:-8px 0 4px}
.gallery-filterline a{display:inline-flex;align-items:center;min-height:38px;padding:9px 13px;border:1px solid var(--line);background:var(--paper-3);color:var(--muted);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800}
.gallery-filterline a:hover{border-color:var(--gold);color:var(--gold)}
.gallery-year{display:grid;gap:16px}
.gallery-year h2{font-family:var(--serif);font-size:44px;line-height:1;font-weight:500;margin:0;color:var(--green)}
.gallery-album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.album-card{display:flex;flex-direction:column;background:var(--paper-3);border:1px solid var(--line);box-shadow:0 12px 34px rgba(27,24,21,.07);overflow:hidden;min-height:100%}
.album-card__image{position:relative;display:block;aspect-ratio:4/3;background:var(--paper-2);overflow:hidden}
.album-card__image img{width:100%;height:100%;object-fit:cover;transition:.35s ease;filter:saturate(.96) sepia(.04)}
.album-card__image span{position:absolute;left:12px;right:12px;bottom:12px;display:inline-flex;justify-content:center;padding:9px 11px;background:rgba(27,24,21,.78);color:var(--paper);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;opacity:0;transform:translateY(6px);transition:.25s ease}
.album-card:hover .album-card__image img{transform:scale(1.045)}
.album-card:hover .album-card__image span{opacity:1;transform:translateY(0)}
.album-card__body{display:flex;flex-direction:column;gap:8px;padding:18px}
.album-card__meta{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:800}
.album-card h3{font-family:var(--serif);font-size:28px;line-height:1.04;font-weight:500;margin:0;color:var(--green)}
.album-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}

.fullstory .xfieldimagegallery,
.dle-xfield--gallery .xfieldimagegallery,
.fullstory ul.xfieldimagegallery,
.dle-card__body ul.xfieldimagegallery{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;
  gap:14px!important;margin:24px 0!important;padding:0!important;list-style:none!important;clear:both!important;
}
.fullstory .xfieldimagegallery li,
.dle-xfield--gallery .xfieldimagegallery li{list-style:none!important;margin:0!important;padding:0!important;float:none!important}
.fullstory .xfieldimagegallery a,
.dle-xfield--gallery .xfieldimagegallery a{display:block!important;position:relative!important;overflow:hidden!important;border:1px solid var(--line)!important;background:var(--paper-2)!important;padding:0!important;border-radius:0!important;box-shadow:0 8px 24px rgba(27,24,21,.08)!important}
.fullstory .xfieldimagegallery img,
.dle-xfield--gallery .xfieldimagegallery img{
  float:none!important;width:100%!important;height:190px!important;max-width:none!important;object-fit:cover!important;
  margin:0!important;border:0!important;display:block!important;transition:transform .3s ease, filter .3s ease!important;
}
.fullstory .xfieldimagegallery a:hover img,.dle-xfield--gallery .xfieldimagegallery a:hover img{transform:scale(1.04);filter:saturate(1.05)}
.fullstory a.highslide,.dle-card__body a.highslide{display:inline-block;vertical-align:top;margin:8px;border:1px solid var(--line);background:var(--paper-2);padding:6px;box-shadow:0 8px 24px rgba(27,24,21,.08)}
.fullstory a.highslide img,.dle-card__body a.highslide img{float:none!important;margin:0!important;border:0!important;width:auto;max-width:100%;height:auto;display:block}
.fullstory img{border:0;max-width:100%;height:auto}
.dle-xfield--gallery{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.dle-xfield--gallery:before{content:"Фотографии";display:block;font-family:var(--serif);font-size:34px;line-height:1;color:var(--green);margin-bottom:12px}

/* страховка от вывода старых неподдерживаемых DLE-условий */
.dle-template-token{display:none!important}

@media (max-width:980px){
  .gallery-archive__head{grid-template-columns:1fr}.gallery-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .a11y-toggle{padding:2px 6px;min-height:20px;font-size:9px;letter-spacing:.02em}
  .a11y-full{display:none}.a11y-short{display:inline}
  .gallery-album-grid{grid-template-columns:1fr}.gallery-year h2{font-size:36px}
  .fullstory .xfieldimagegallery,.dle-xfield--gallery .xfieldimagegallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .fullstory .xfieldimagegallery img,.dle-xfield--gallery .xfieldimagegallery img{height:145px!important}
}
@media (max-width:420px){
  .topbar{display:block!important}
  .topbar__right{gap:4px!important}
  .topbar__right>a{font-size:8px!important}
  .a11y-toggle{min-width:26px;padding:2px 5px;font-size:8px}
  .fullstory .xfieldimagegallery,.dle-xfield--gallery .xfieldimagegallery{grid-template-columns:1fr!important}
  .fullstory .xfieldimagegallery img,.dle-xfield--gallery .xfieldimagegallery img{height:auto!important;aspect-ratio:4/3}
}
.highslide-gallery,
.fullstory .gallery,
.fullstory .dleimages,
.fullstory .image-gallery{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;gap:14px!important;margin:24px 0!important;clear:both!important;
}
.highslide-gallery a.highslide,
.fullstory .gallery a,
.fullstory .dleimages a,
.fullstory .image-gallery a{margin:0!important;display:block!important;overflow:hidden!important;border:1px solid var(--line)!important;background:var(--paper-2)!important;padding:0!important;box-shadow:0 8px 24px rgba(27,24,21,.08)!important}
.highslide-gallery img,
.fullstory .gallery img,
.fullstory .dleimages img,
.fullstory .image-gallery img{width:100%!important;height:190px!important;object-fit:cover!important;margin:0!important;border:0!important;float:none!important;display:block!important}

/* v11: резервный виджет календаря, если внешний API вернул HTTP 500 */
.temple-calendar-fallback-wrap{margin-top:16px;border:1px solid var(--line);background:rgba(255,255,255,.62);padding:12px;overflow:hidden}
.temple-calendar-fallback{display:block;width:100%!important;max-width:100%!important;min-height:360px;background:var(--paper-2);border:0!important}
.schedule-empty--with-widget{display:grid;gap:12px;text-align:left;padding:18px;background:var(--paper-3);border:1px solid var(--line)}
.schedule-empty--with-widget b{font-family:var(--serif);font-size:24px;color:var(--green);font-weight:500}.schedule-empty--with-widget span{font-size:14px;line-height:1.55;color:var(--muted)}
.temple-events-card .temple-calendar-fallback{min-height:430px}.sidebar-box .temple-calendar-fallback{min-height:360px}
@media(max-width:760px){.temple-calendar-fallback{min-height:420px}.schedule-empty--with-widget b{font-size:21px}}

/* v15: на тёмной карточке дня время и пометка «весь день» — белые для читаемости */
.day-card .service time,
.day-card .service.is-event time,
.day-card .service--holiday time,
.day-card .service--announcement time{color:#F7F5F0!important}

/* =====================================================================
   v16 — осветлённая палитра, иконки соцсетей, регистрация, фотогалерея
         spbda-style, записки-«письма» в стиле храма Антипы, календарь
   ===================================================================== */
:root{
  --paper:#FBF8F1;
  --paper-2:#F2ECDC;
  --paper-3:#FFFFFF;
  --ink:#3D342B;          /* основной тёплый коричневый вместо чёрного */
  --ink-2:#4C4239;
  --muted:#7A7160;
  --line:#E1DBC8;
  --gold:#9A3022;
  --gold-2:#B8884A;       /* мягкое золото для акцентов */
  --gold-soft:#D9B879;
  --green:#3D342B;
  --green-2:#5A4F42;
  --red:#9A3022;
  --shadow: 0 22px 70px rgba(61,52,43,.12);
}
body{background:var(--paper);color:var(--ink)}

/* Утилитарные перекраски, чтобы убрать «истинно чёрный» */
.topbar{background:linear-gradient(180deg,#5A4F42 0%,#4C4239 100%);color:#F7F0DD}
.topbar a{color:#F7F0DD}
.topbar a:hover{color:#fff}
.section--dark{background:var(--ink);color:var(--paper)}
.tab.active{background:var(--green-2);color:var(--paper);border-color:var(--green-2)}
.day-card{background:linear-gradient(160deg,#5A4F42 0%,#3D342B 100%);color:var(--paper)}
.feature-photo{background:var(--ink-2)}
.donate{background:linear-gradient(160deg,#5A4F42 0%,#3D342B 100%)!important;color:var(--paper)}
.slider{background:var(--ink-2)}
.partners-hero{background:linear-gradient(160deg,#5A4F42 0%,#3D342B 100%)}
footer{background:linear-gradient(180deg,#4C4239 0%,#3D342B 100%);color:#D8C9A8}
footer .copyright{color:#B8A789}
.amounts button.active,.donate-purposes button.active{background:var(--gold-2);color:#fff;border-color:var(--gold-2)}

/* «Апостольское слово» — мягкое песочно-золотое полотно вместо чёрного */
.life-intro{
  background:linear-gradient(135deg,#F2ECDC 0%,#E8DDBE 60%,#D9B879 100%);
  color:var(--ink);
}
.life-intro .title{color:var(--ink)}
.life-intro .eyebrow{color:var(--gold)}
.life-intro blockquote{
  font-family:var(--serif);
  font-size:30px;
  font-style:italic;
  color:var(--ink-2);
  max-width:880px;
  margin:24px auto 0;
  position:relative;
  padding:0 18px;
}
.life-intro blockquote:before,
.life-intro blockquote:after{
  content:"";display:inline-block;width:40px;height:1px;background:var(--gold);vertical-align:middle;margin:0 14px;
}
@media (max-width:720px){.life-intro blockquote{font-size:22px}}

/* Topbar — иконки соцсетей, телефон, регистрация */
.topbar{font-size:11px;letter-spacing:.06em;text-transform:none}
.topbar .container{padding:10px 0;gap:14px}
.topbar__address{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.topbar__pin{font-size:14px;line-height:1}
.topbar__phone{display:inline-flex;align-items:center;gap:7px;font-weight:600}
.topbar__phone .topbar__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid rgba(247,240,221,.45);border-radius:50%}
.topbar__mail{opacity:.85}
.topbar__right{gap:16px}
.socials{gap:9px}
.social-ico{
  width:32px;height:32px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:0;
  padding:0;min-width:0;overflow:hidden;
  box-shadow:0 4px 12px rgba(61,52,43,.18);
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.social-ico:hover{transform:translateY(-1px) scale(1.05);box-shadow:0 8px 18px rgba(61,52,43,.28)}
.social-ico img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.social-ico svg{display:block}

.topbar-reg{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:999px;
  background:var(--gold);color:#fff!important;border:1px solid var(--gold);
  font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;
  transition:.2s ease;white-space:nowrap;
}
.topbar-reg:hover{background:#7A2418;border-color:#7A2418;transform:translateY(-1px)}
.topbar-reg--login{background:transparent;border-color:rgba(247,240,221,.55);color:#F7F0DD!important}
.topbar-reg--login:hover{background:rgba(247,240,221,.14);color:#fff!important}
.topbar-reg__short{display:none}
@media (max-width:1100px){
  .topbar-reg__full{display:none}
  .topbar-reg__short{display:inline}
  .topbar-reg{padding:5px 11px;font-size:10px}
}
@media (max-width:720px){
  .topbar__address{display:none!important}
  .topbar__mail{display:none}
}

/* Бренд — корректный перенос длинной фразы */
.brand__text{line-height:1.05}
.brand__text small{
  display:block;font-family:var(--sans);font-size:9.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);margin-top:6px;line-height:1.3;font-weight:600;
}

/* Меню — белая шапка, без жёсткого тёмного фона */
.menu-toggle{background:var(--paper-3);color:var(--ink);border-color:var(--line)}
@media (max-width:1100px){.menu-toggle{background:var(--green-2);color:#fff;border-color:var(--green-2)}}

/* Регистрация: страница */
.auth-page{max-width:780px;margin:0 auto;background:var(--paper-3);border:1px solid var(--line);box-shadow:var(--shadow);padding:46px 50px;display:grid;gap:24px}
.auth-page__head{display:grid;gap:10px}
.auth-page__title{font-family:var(--serif);font-size:clamp(34px,4vw,52px);line-height:1;font-weight:500;color:var(--green);margin:0}
.auth-page__lead{margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.auth-form .tableform{width:100%;border-collapse:collapse;border-spacing:0}
.auth-form .tableform td{padding:10px 0;vertical-align:middle;border:0}
.auth-form .tableform .label{width:34%;padding-right:18px;color:var(--muted);font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}
.auth-form .req{color:var(--gold);margin-left:3px}
.auth-form .f_input,.auth-form .f_textarea{width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:12px 14px;font-size:15px;transition:.2s ease}
.auth-form .f_input:focus,.auth-form .f_textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(154,48,34,.12)}
.auth-row{display:flex;gap:10px;align-items:center}
.auth-row .f_input{flex:1}
.btn--sm{min-height:38px;padding:9px 14px;font-size:10.5px;letter-spacing:.1em}
.f_input--captcha{max-width:200px;margin-top:8px}
.auth-help{margin-top:6px;font-size:13px;color:var(--muted);min-height:1em}
.auth-captcha img{display:block;border:1px solid var(--line);padding:4px;background:var(--paper-2)}
.auth-consent{
  background:linear-gradient(135deg,#FBF6E6 0%,#F2E8C6 100%);
  border:1px solid var(--gold-soft);padding:18px 20px;border-radius:6px;display:grid;gap:12px;
}
.auth-consent__note{margin:0;color:var(--ink-2);font-size:13.5px;line-height:1.55}
.auth-consent__note a{color:var(--gold);text-decoration:underline}
.auth-consent__check{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;cursor:pointer;font-size:13.5px;color:var(--ink-2);line-height:1.45}
.auth-consent__check input{margin-top:3px;width:18px;height:18px;accent-color:var(--gold)}
.auth-consent__check a{color:var(--gold);text-decoration:underline}
.auth-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-top:6px}
.btn--auth{min-width:200px}
.btn.is-disabled,input.btn.is-disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}
@media (max-width:720px){
  .auth-page{padding:28px 22px}
  .auth-form .tableform td{display:block;padding:6px 0}
  .auth-form .tableform .label{width:auto;padding-right:0;padding-bottom:4px}
}

/* Фотогалерея в стиле spbda.ru: только заголовок-ссылка + 3 обложки */
.gallery-section{padding:88px 0}
.gallery-section__head{margin-bottom:34px}
.gallery-section__title{display:inline-flex;align-items:baseline;gap:18px;color:inherit;border-bottom:1px solid transparent;transition:.2s ease}
.gallery-section__title:hover{border-bottom-color:var(--gold)}
.gallery-section__title .title{margin:0}
.gallery-section__more{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:800}
.gallery-covers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-covers .gallery-card{
  position:relative;display:block;min-height:0;
  aspect-ratio:4/5;overflow:hidden;background:var(--ink-2);
  border-radius:2px;box-shadow:0 18px 38px rgba(61,52,43,.16);
  transition:.3s ease;
}
.gallery-covers .gallery-card:hover{transform:translateY(-3px);box-shadow:0 26px 50px rgba(61,52,43,.22)}
.gallery-covers .gallery-card:first-child{grid-row:auto}
.gallery-covers .gallery-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.92;transition:.4s ease}
.gallery-covers .gallery-card:hover img{transform:scale(1.05);opacity:1}
.gallery-covers .gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(61,52,43,.78))}
.gallery-covers .gallery-card div{position:absolute;left:22px;right:22px;bottom:22px;color:var(--paper);z-index:1}
.gallery-covers .gallery-card h3{font-family:var(--serif);font-size:26px;font-weight:500;margin:6px 0;line-height:1.1}
.gallery-covers .gallery-card p{display:none}
@media (max-width:980px){.gallery-covers{grid-template-columns:1fr 1fr;gap:14px}}
@media (max-width:640px){.gallery-covers{grid-template-columns:1fr}.gallery-section__title{flex-direction:column;align-items:flex-start;gap:6px}}

/* Записки — стиль «открывающегося письма» */
.notes-deck{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
}
.note-tile{
  display:flex;flex-direction:column;align-items:flex-start;gap:10px;
  background:linear-gradient(165deg,#FFFDF6 0%,#F5EAC8 100%);
  border:1px solid var(--gold-soft);
  padding:26px 22px;min-height:220px;text-align:left;cursor:pointer;
  position:relative;overflow:hidden;
  transition:.25s ease;font-family:inherit;
  box-shadow:0 14px 36px rgba(61,52,43,.08);
}
.note-tile:before{
  content:"";position:absolute;left:0;right:0;top:0;height:8px;
  background:repeating-linear-gradient(45deg,var(--gold) 0 6px,#fff 6px 12px);
  opacity:.55;
}
.note-tile:after{content:"☦";position:absolute;right:18px;top:22px;font-size:32px;color:rgba(154,48,34,.18)}
.note-tile:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 22px 46px rgba(61,52,43,.18)}
.note-tile.is-active{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 22px 46px rgba(61,52,43,.18);background:linear-gradient(165deg,#FFFBE7 0%,#F0D993 100%)}
.note-tile__num{font-family:var(--serif);font-size:18px;color:var(--gold);letter-spacing:.06em}
.note-tile__title{font-family:var(--serif);font-size:28px;line-height:1.05;font-weight:500;color:var(--green)}
.note-tile__sub{color:var(--muted);font-size:13.5px;line-height:1.45}
.note-tile__open{margin-top:auto;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:800}

.note-letter{
  margin-top:28px;display:grid;gap:16px;
}
.note-letter[hidden]{display:none}
.note-letter__back{
  justify-self:start;background:transparent;border:1px solid var(--line);color:var(--ink-2);
  padding:10px 16px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;cursor:pointer;
  border-radius:999px;transition:.2s ease;
}
.note-letter__back:hover{border-color:var(--gold);color:var(--gold)}
.note-letter__paper{
  position:relative;background:#FFFDF6;
  border:1px solid var(--gold-soft);
  padding:42px 46px;
  box-shadow:0 30px 60px rgba(61,52,43,.16),inset 0 0 0 8px rgba(154,48,34,.05);
  display:grid;gap:24px;
}
.note-letter__paper:before{
  content:"";position:absolute;left:14px;right:14px;top:14px;bottom:14px;
  border:1px dashed rgba(154,48,34,.22);pointer-events:none;
}
.note-letter__head{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start;position:relative;z-index:1}
.note-letter__cross{
  width:64px;height:64px;display:grid;place-items:center;
  border:1px solid rgba(154,48,34,.35);border-radius:50%;
  color:var(--gold);font-size:34px;background:rgba(255,255,255,.6)
}
.note-letter__eyebrow{color:var(--gold)}
.note-letter__title{font-family:var(--serif);font-size:42px;line-height:1;font-weight:500;color:var(--green);margin:6px 0 10px}
.note-letter__hint{margin:0;color:var(--muted);font-size:14.5px;line-height:1.5}
.note-letter__row{display:grid;gap:10px;position:relative;z-index:1}
.note-letter__row--contacts{grid-template-columns:1fr 1fr;gap:16px}
.note-letter__label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:800;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.note-letter__limit{font-size:10px;color:var(--gold);letter-spacing:.1em;font-weight:700}
.note-letter__modes,.note-moleben-list{display:flex;flex-wrap:wrap;gap:8px}
.note-mode,.note-moleben{
  display:inline-flex;align-items:center;gap:6px;
  padding:10px 16px;border:1px solid var(--gold-soft);
  background:rgba(255,253,246,.7);color:var(--ink);font-size:13px;cursor:pointer;
  transition:.2s ease;border-radius:999px;
}
.note-mode input,.note-moleben input{position:absolute;opacity:0;width:0;height:0}
.note-mode.is-active,.note-moleben.is-active{background:var(--gold);border-color:var(--gold);color:#fff}
.note-mode:hover,.note-moleben:hover{border-color:var(--gold)}
.note-letter__textarea{
  width:100%;min-height:180px;resize:vertical;
  border:1px solid var(--gold-soft);background:#FFFEF7;color:var(--ink);
  padding:18px 22px;font-family:var(--serif);font-size:21px;line-height:1.55;
  background-image:repeating-linear-gradient(transparent 0 33px,rgba(154,48,34,.12) 33px 34px);
  background-attachment:local;
}
.note-letter__textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(154,48,34,.12)}
.note-letter__small{color:var(--muted);font-size:12.5px;line-height:1.5}
.note-letter__row--contacts .field label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:800}
.note-letter__row--contacts input{width:100%;border:1px solid var(--line);background:var(--paper);padding:12px 14px;font-size:14.5px}
.note-letter__row--contacts input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(154,48,34,.12)}
.note-letter__actions{display:flex;gap:12px;flex-wrap:wrap;position:relative;z-index:1}
.note-letter__pd{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55;position:relative;z-index:1}
.note-letter__pd a{color:var(--gold);text-decoration:underline}
.notes-result{
  display:none;margin-top:6px;background:rgba(255,255,255,.6);
  border:1px dashed var(--gold-soft);padding:18px 22px;white-space:pre-wrap;
  font-family:var(--serif);font-size:17px;color:var(--ink-2);line-height:1.55;
  position:relative;z-index:1;
}
@media (max-width:980px){.notes-deck{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
  .notes-deck{grid-template-columns:1fr}
  .note-letter__paper{padding:28px 22px}
  .note-letter__row--contacts{grid-template-columns:1fr}
  .note-letter__title{font-size:32px}
  .note-letter__head{grid-template-columns:48px 1fr;gap:14px}
  .note-letter__cross{width:48px;height:48px;font-size:24px}
}

/* Календарь — лёгкая палитра, легенда, выделение богослужений */
.day-card .eyebrow,
.day-card__kicker{color:#E6D9B8!important}
.day-card .saint{color:#F2E8C6}
.day-card .service{grid-template-columns:78px 1fr}
.day-card .service--service{background:rgba(154,48,34,.18);border-left:3px solid var(--gold);padding-left:14px;margin-left:-14px}
.day-card .service--service time{color:#FFE5B5!important;font-weight:600}
.day-card .service--service b{color:#FFFFFF}
.day-card .service--event,
.day-card .service--announcement{border-left:3px solid var(--gold-soft);padding-left:14px;margin-left:-14px;background:rgba(217,184,121,.08)}
.day-card .service--event time,
.day-card .service--announcement time{color:var(--gold-soft)!important}
.month-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.month-legend__item{display:inline-flex;align-items:center;gap:6px}
.month-legend__item:before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:currentColor}
.month-legend__item--service{color:var(--gold)}
.month-legend__item--event{color:var(--gold-2)}
.month-legend__item--holiday{color:#7A2418}
.date-btn.has-event{border-color:var(--gold-soft)}
.date-btn.has-service:after{background:var(--gold)}
.date-btn.has-event:after{background:var(--gold-2)}
.date-btn.has-holiday{box-shadow:inset 0 -3px 0 #7A2418}
.date-btn.is-active{border-color:var(--gold);background:#FFFDF6;color:var(--gold);font-weight:700}
.btn--gold{background:var(--gold);color:#fff;border-color:var(--gold)}
.btn--gold:hover{background:#7A2418;border-color:#7A2418}

/* «Месяцъ строкой» — выделение типа богослужения */
.schedule-row[data-types~="service"]{border-left:4px solid var(--gold)}
.schedule-row[data-types~="holiday"]{border-left:4px solid #7A2418}
.schedule-row[data-types~="event"]:not([data-types~="service"]){border-left:4px solid var(--gold-2)}
.schedule-row[data-types~="announcement"]:not([data-types~="service"]):not([data-types~="event"]){border-left:4px solid var(--muted)}
.schedule-event--service b{color:var(--gold)}
.schedule-event--service{padding-left:10px;border-left:2px solid var(--gold)}

/* Уютнее формы (везде) */
.field input,.field select,.field textarea{background:#FFFEF7}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(154,48,34,.12);outline:none}

/* Лёгкий фон у hero вместо контрастной двухтоновой полосы */
.hero{background:linear-gradient(120deg,var(--paper) 0 60%,#F5EBD2 60% 100%)}
.slide:after{background:linear-gradient(180deg,rgba(61,52,43,.05),rgba(61,52,43,.65))}

/* Тёмные «жилы» проектов — теплее */
.subprojects a:hover,.project-item:hover{background:#F5ECCF}

/* footer — мягкое тёмно-коричневое полотно */
footer h3,footer .footer-grid a:hover{color:#FFFDF6}
footer .footer-grid h4{color:var(--gold-soft)}

/* Боковая «иконография» календаря: сидим в тёплом, не чёрном */
.orthodox-calendar-card .calendar-open-link{background:var(--green-2);color:#fff}
.orthodox-calendar-card .calendar-open-link:hover{background:var(--gold);color:#fff}

/* Адаптив верхней панели — кнопка регистрации на мобильном */
@media (max-width:720px){
  .topbar__right{flex-wrap:wrap!important;gap:8px!important;justify-content:center!important}
  .topbar-reg{padding:5px 10px;font-size:9.5px}
  .socials{gap:7px!important}
  .social-ico{width:28px!important;height:28px!important;padding:0!important;border-radius:50%!important;min-width:0!important;overflow:hidden!important}
  .social-ico img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important}
  .social-ico svg{width:13px;height:13px}
}

/* =====================================================================
   v17 — секция «Проекты прихода» без мини-карусели
   ===================================================================== */
.section-head--projects{display:block;margin-bottom:28px}
.section-head--projects .title{font-size:clamp(34px,4.3vw,58px);line-height:1.06;max-width:1080px}
.section-head--projects .title span{display:inline}
@media (max-width:720px){.section-head--projects .title{font-size:clamp(28px,7vw,40px)}}
.project-carousel-controls{display:none!important}

/* =====================================================================
   v18 — три слайда главного hero-слайдера:
         1) видеовизитка, 2) «ЧТО ДЕЛАТЬ ЕСЛИ», 3) последние новости
   ===================================================================== */

/* Общий контент слайдов «что делать» и «новости» сдвигаем чуть выше,
   чтобы помещалась сетка из 4 карточек */
.slide__content--do,
.slide__content--news{bottom:22px;left:22px;right:22px;top:auto}
.slide--do:after,.slide--news:after{background:linear-gradient(180deg,rgba(40,30,22,.0) 0,rgba(40,30,22,.55) 30%,rgba(40,30,22,.92) 100%)!important}

/* Слайд 2: «ЧТО ДЕЛАТЬ ЕСЛИ» — 4 кнопки 2×2 */
.slide-do-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
  margin:18px 0 0;
  max-width:640px;
}
.slide-do-card{
  display:flex;flex-direction:column;gap:4px;
  background:rgba(255,253,246,.12);
  border:1px solid rgba(255,253,246,.22);
  padding:14px 16px;color:var(--paper);
  transition:.2s ease;backdrop-filter:blur(3px);
}
.slide-do-card:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-1px)}
.slide-do-card small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);font-weight:800}
.slide-do-card:hover small{color:#FFFDF6}
.slide-do-card b{font-family:var(--serif);font-size:21px;line-height:1.1;font-weight:500;color:#FFFDF6}
.slide-do-card em{font-style:normal;font-size:12.5px;line-height:1.4;color:#E8DDBE;opacity:.92}

/* Слайд 3: 4 новости 2×2 с возможностью закрепления */
.slide-news-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
  margin:18px 0;
  max-width:640px;
}
.slide-news-card{
  position:relative;display:flex;flex-direction:column;gap:4px;
  background:rgba(255,253,246,.10);
  border:1px solid rgba(255,253,246,.18);
  padding:0;overflow:hidden;color:var(--paper);
  transition:.2s ease;min-height:120px;
}
.slide-news-card:hover{transform:translateY(-1px);border-color:var(--gold-soft)}
.slide-news-card__media{aspect-ratio:16/9;background:rgba(40,30,22,.4);overflow:hidden}
.slide-news-card__media img{width:100%;height:100%;object-fit:cover;display:block;opacity:.92}
.slide-news-card:hover .slide-news-card__media img{opacity:1}
.slide-news-card__meta{display:block;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-soft);font-weight:800;padding:8px 12px 0}
.slide-news-card__title{display:block;font-family:var(--serif);font-size:16px;line-height:1.15;font-weight:500;padding:0 12px 12px;color:#FFFDF6}
.slide-news-card__pin{
  position:absolute;top:8px;left:8px;z-index:2;
  background:var(--gold);color:#fff;padding:4px 8px;
  font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;
}

@media (max-width:980px){
  .slide-do-grid,.slide-news-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .slide-do-grid,.slide-news-grid{grid-template-columns:1fr}
  .slide-do-card b{font-size:18px}
  .slide-news-card__title{font-size:14px}
}

/* =====================================================================
   v19 — Полноэкранный профессиональный hero-слайдер
   Слайды: 1) приветствие на фоне храма  2) видеовизитка
           3) что делать если            4) последние новости
   Возможности: автопрокрутка с прогресс-баром, пауза при наведении/в фоне,
   управление с клавиатуры, свайп, эффект Кена Бёрнса, окно видеовизитки.
   ===================================================================== */
.hero-slider{
  position:relative;width:100%;overflow:hidden;background:var(--ink);
  isolation:isolate;color:var(--paper);
  --hs-h:clamp(560px, 80vh, 860px);
}
@supports (height:100svh){ .hero-slider{--hs-h:clamp(560px, calc(100svh - 140px), 860px)} }
.hero-slider__viewport{position:relative;overflow:hidden;height:var(--hs-h);transition:height .55s cubic-bezier(.66,0,.2,1)}
.hero-slider__track{display:flex;flex-wrap:nowrap;align-items:flex-start;transform:translateX(0);transition:transform .8s cubic-bezier(.66,0,.2,1);will-change:transform}

.hslide{position:relative;flex:0 0 100%;width:100%;min-height:var(--hs-h);display:flex;overflow:hidden}
.hslide__media{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--ink-2)}
.hslide__img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transform:scale(1);transition:none;filter:saturate(.97)}
/* Эффект Кена Бёрнса — медленное приближение только активного слайда */
.hslide.is-active .hslide__img{transform:scale(1.12);transition:transform 9s ease-out}
.hslide--intro .hslide__img{object-position:center 52%}

.hslide__scrim{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg, rgba(28,22,17,.78) 0%, rgba(28,22,17,.45) 46%, rgba(28,22,17,.12) 74%, rgba(28,22,17,.30) 100%),
    linear-gradient(0deg, rgba(20,15,11,.80) 0%, rgba(20,15,11,0) 52%);
}
.hslide__scrim--intro{
  background:
    linear-gradient(90deg, rgba(28,22,17,.84) 0%, rgba(28,22,17,.50) 44%, rgba(28,22,17,.08) 80%),
    linear-gradient(0deg, rgba(20,15,11,.58) 0%, rgba(20,15,11,0) 55%);
}

.hslide__inner{position:relative;z-index:2;flex:1;width:100%;max-width:1340px;margin-inline:auto;
  padding:88px clamp(18px,5vw,26px) 116px;display:flex;flex-direction:column;justify-content:center}
.hslide__inner--bottom{justify-content:flex-end}
.hslide__copy{max-width:600px}
.hslide__copy--wide{max-width:760px}
.hslide .slide-do-grid,.hslide .slide-news-grid{max-width:720px}

.hslide__eyebrow{display:inline-block;position:relative;padding-left:48px;
  font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:800;color:var(--gold-soft);margin-bottom:18px}
.hslide__eyebrow:before{content:"";position:absolute;left:0;top:50%;width:34px;height:2px;background:var(--gold-soft)}
.hslide__headline{margin:0;font-family:var(--serif);font-weight:500;color:#fff;
  font-size:clamp(44px,6vw,104px);line-height:.9;letter-spacing:-.035em;text-shadow:0 6px 40px rgba(0,0,0,.32)}
.hslide__headline em{display:block;font-style:italic;color:var(--gold-soft)}
.hslide__title{margin:0 0 14px;font-family:var(--serif);font-weight:500;color:#fff;
  font-size:clamp(34px,4.4vw,60px);line-height:1;text-shadow:0 4px 30px rgba(0,0,0,.34)}
.hslide__lead{margin:20px 0 26px;max-width:540px;font-size:clamp(16px,1.3vw,19px);line-height:1.5;color:#ECE6DA}
.hslide__text{margin:0 0 20px;max-width:560px;font-size:16px;line-height:1.55;color:#ECE6DA}
.hslide__cta{display:flex;gap:12px;flex-wrap:wrap}
.btn__play{display:inline-block;width:0;height:0;border-style:solid;border-width:5px 0 5px 9px;border-color:transparent transparent transparent currentColor;margin-right:3px}

/* Плавное появление контента активного слайда (только при включённом JS) */
.hero-slider.is-ready .hslide__copy>*{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*{opacity:1;transform:none}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*:nth-child(1){transition-delay:.12s}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*:nth-child(2){transition-delay:.24s}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*:nth-child(3){transition-delay:.36s}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*:nth-child(4){transition-delay:.48s}
.hero-slider.is-ready .hslide.is-active .hslide__copy>*:nth-child(5){transition-delay:.58s}

/* Кнопка воспроизведения видеовизитки */
.hslide--video .hslide__play{position:absolute;z-index:3;left:50%;top:42%;transform:translate(-50%,-50%);
  width:118px;height:118px;border:0;background:transparent;cursor:pointer;display:grid;place-items:center}
.hslide__play-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.9);
  background:rgba(28,22,17,.34);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:.25s}
.hslide__play-icon{position:relative;z-index:2;width:0;height:0;border-style:solid;
  border-width:15px 0 15px 26px;border-color:transparent transparent transparent #fff;margin-left:7px}
.hslide__play-pulse{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.55)}
.hslide.is-active .hslide__play-pulse{animation:hsPulse 2.6s ease-out infinite}
.hslide__play:hover .hslide__play-ring,.hslide__play:focus-visible .hslide__play-ring{background:var(--gold);border-color:var(--gold);transform:scale(1.06)}
@keyframes hsPulse{0%{transform:scale(1);opacity:.75}70%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}

/* Боковые стрелки (показываем на больших экранах) */
.hero-slider__arrow{position:absolute;z-index:5;top:calc(50% - 18px);transform:translateY(-50%);
  width:54px;height:54px;border-radius:50%;display:none;place-items:center;
  border:1px solid rgba(247,245,240,.5);background:rgba(28,22,17,.34);color:#fff;
  font-size:30px;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:.25s}
.hero-slider__arrow span{display:block;margin-top:-4px}
.hero-slider__arrow:hover{background:var(--gold);border-color:var(--gold)}
.hero-slider__arrow--prev{left:18px}
.hero-slider__arrow--next{right:18px}

/* Нижняя панель: вкладки слайдов, пауза, прогресс */
.hero-slider__bar{position:absolute;z-index:5;left:0;right:0;bottom:0}
.hero-slider__bar-inner{max-width:1340px;margin-inline:auto;padding:0 clamp(18px,5vw,26px) 20px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.hero-slider__tabs{display:flex;gap:8px;flex-wrap:wrap}
.hero-slider__tab{display:inline-flex;align-items:center;gap:9px;cursor:pointer;padding:10px 16px;
  border:1px solid rgba(247,245,240,.22);background:rgba(28,22,17,.32);color:#EDE7DB;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:.25s}
.hero-slider__tab i{font-style:normal;font-weight:800;color:var(--gold-soft)}
.hero-slider__tab:hover{border-color:var(--gold-soft);color:#fff}
.hero-slider__tab.is-active{background:var(--gold);border-color:var(--gold);color:#fff}
.hero-slider__tab.is-active i{color:#fff}
.hero-slider__playpause{flex:0 0 auto;width:44px;height:44px;border-radius:50%;cursor:pointer;
  border:1px solid rgba(247,245,240,.28);background:rgba(28,22,17,.32);color:#fff;
  display:grid;place-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:.25s;position:relative}
.hero-slider__playpause:hover{border-color:var(--gold-soft)}
.hero-slider__playpause-icon{position:relative;display:block;width:16px;height:16px}
.hero-slider__playpause-icon:before,.hero-slider__playpause-icon:after{content:"";position:absolute;top:1px;bottom:1px;width:4px;background:#fff;transition:.2s}
.hero-slider__playpause-icon:before{left:2px}
.hero-slider__playpause-icon:after{right:2px}
.hero-slider__playpause.is-paused .hero-slider__playpause-icon:before{left:3px;top:0;bottom:0;width:0;background:transparent;border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent #fff}
.hero-slider__playpause.is-paused .hero-slider__playpause-icon:after{opacity:0}
.hero-slider__progress{position:relative;height:3px;background:rgba(247,245,240,.16)}
.hero-slider__progress-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--gold-soft)}

/* Модальное окно видеовизитки */
body.is-modal-open{overflow:hidden}
.video-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}
.video-modal[hidden]{display:none}
.video-modal__backdrop{position:absolute;inset:0;background:rgba(10,8,6,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:hsFade .3s ease}
.video-modal__dialog{position:relative;z-index:2;width:min(1060px,100%);animation:hsZoom .35s ease}
.video-modal__ratio{position:relative;padding-top:56.25%;background:#000;box-shadow:0 40px 120px rgba(0,0,0,.6)}
.video-modal__frame{position:absolute;inset:0}
.video-modal__frame iframe,.video-modal__frame video{width:100%;height:100%;border:0;display:block}
.video-modal__close{position:absolute;top:-54px;right:0;width:46px;height:46px;border-radius:50%;cursor:pointer;
  border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08);color:#fff;font-size:26px;line-height:1;transition:.2s}
.video-modal__close:hover{background:var(--gold);border-color:var(--gold)}
@keyframes hsFade{from{opacity:0}to{opacity:1}}
@keyframes hsZoom{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}

/* Контраст для версии слабовидящих */
body.a11y-mode .hslide__scrim,body.a11y-mode .hslide__scrim--intro{background:rgba(0,0,0,.74)!important}

/* Десктоп: воздух по бокам + боковые стрелки */
@media (min-width:992px){
  .hslide__inner{padding:76px clamp(76px,8vw,120px) 92px}
  .hero-slider__bar-inner{padding-left:clamp(76px,8vw,120px);padding-right:clamp(76px,8vw,120px)}
  .hero-slider__arrow{display:grid}
  /* «Что делать» и «Новости» — одна широкая строка карточек, чтобы слайдер помещался в экран */
  .hslide--do .hslide__copy--wide,.hslide--news .hslide__copy--wide{max-width:1080px}
  .hslide .slide-do-grid,.hslide .slide-news-grid{grid-template-columns:repeat(4,1fr);max-width:1040px;margin-top:18px}
  .hslide .slide-news-card__media{aspect-ratio:auto;height:118px}
  .hslide--news .btn--light{margin-top:16px}
}

/* Планшеты */
@media (max-width:991px){ .hero-slider{--hs-h:clamp(540px, 86vh, 760px)} }
@supports (height:100svh){ @media (max-width:991px){ .hero-slider{--hs-h:clamp(540px, calc(100svh - 120px), 760px)} } }

/* Телефоны */
@media (max-width:640px){
  .hero-slider__tab span{display:none}
  .hero-slider__tab{padding:9px 13px;letter-spacing:.1em}
  .hslide__inner{padding:72px 18px 104px}
  .hslide--intro .hslide__inner{justify-content:center}
  .hslide__headline{font-size:clamp(42px,12vw,62px)}
  .hslide__lead{margin:18px 0 24px}
  .hslide__cta{gap:10px}
  .hslide__cta .btn{width:100%}
  .hslide--video .hslide__play{width:82px;height:82px;top:36%}
  .hslide__play-icon{border-width:11px 0 11px 19px}
  .hero-slider__bar-inner{padding:0 16px 14px;gap:10px}
  /* На телефоне показываем 2 свежие новости, остальное — по кнопке «Все новости» */
  .hslide--news .slide-news-card:nth-child(n+3){display:none}
}

/* Уважение к настройке «уменьшить движение» */
@media (prefers-reduced-motion: reduce){
  .hslide__img,.hslide.is-active .hslide__img{transition:none!important;transform:none!important}
  .hero-slider__track{transition:none!important}
  .hero-slider__viewport{transition:none!important}
  .hero-slider.is-ready .hslide__copy>*{opacity:1!important;transform:none!important;transition:none!important}
  .hslide__play-pulse,.hslide.is-active .hslide__play-pulse{animation:none!important}
}
