  :root{
    --paper:#EDE6D5; --paper-2:#E3D9C2;
    --ink:#221E19; --ink-soft:#5A5347;
    --gold:#A9812E; --gold-deep:#7C5E1E;
    --burgundy:#6E2A2A; --slate:#1E2830; --slate-2:#2C3A46;
    --cream:#F4EFE3;
    --ok:#3C7A4E; --err:#A33A3A;
    --font-display:'Playfair Display', Georgia, serif;
    --font-body:'PT Sans', Arial, sans-serif;
    --font-kicker:'Yeseva One', serif;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  [hidden]{display:none !important;}
  body{font-family:var(--font-body); background:var(--paper); color:var(--ink); line-height:1.65;}
  a{color:inherit;}
  img{max-width:100%; height:auto; display:block;}
  .wrap{max-width:1080px; margin:0 auto; padding:0 32px;}
  .section{padding:64px 0;}
  .section-head{max-width:680px; margin:0 auto 40px; text-align:center;}
  .kicker{font-family:var(--font-kicker); font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--burgundy); margin-bottom:10px;}
  .section-head h2{font-family:var(--font-display); font-weight:600; font-size:clamp(24px,3.2vw,34px); color:var(--ink);}
  .section-head p{margin-top:12px; color:var(--ink-soft); font-size:15.5px;}

  /* NAV */
  header.nav{position:sticky; top:0; z-index:50; background:var(--slate); color:var(--cream); border-bottom:1px solid rgba(244,239,227,.15);}
  .nav-inner{max-width:1080px; margin:0 auto; padding:14px 32px; display:flex; align-items:center; justify-content:space-between; gap:20px;}
  .brand{display:flex; align-items:center; gap:10px;}
  .brand-mark{width:26px; height:26px; flex-shrink:0;}
  .brand-text{font-family:var(--font-display); font-weight:600; font-size:14.5px; line-height:1.25;}
  .brand-text small{display:block; font-family:var(--font-body); font-weight:400; font-size:10.5px; color:#C9BFA8; letter-spacing:.08em; text-transform:uppercase;}
  nav.links{display:flex; gap:16px; font-size:12.5px; flex-wrap:wrap;}
  nav.links a{text-decoration:none; color:#D8CFB9; border-bottom:1px solid transparent; padding-bottom:2px; white-space:nowrap;}
  nav.links a:hover{color:var(--cream); border-color:var(--gold);}
  .nav-phone{font-size:12.5px; color:#C9BFA8; white-space:nowrap;}
  @media (max-width:1000px){ nav.links{display:none;} }
  .lang-switch{display:flex; gap:4px; flex-shrink:0;}
  .lang-btn{font-family:var(--font-body); font-size:11.5px; font-weight:700; padding:5px 9px; border-radius:3px; border:1px solid rgba(244,239,227,.3); background:none; color:#C9BFA8; cursor:pointer; letter-spacing:.03em;}
  .lang-btn.active{background:var(--gold); border-color:var(--gold); color:var(--slate);}

  /* HERO */
  .hero{position:relative; color:var(--cream); overflow:hidden;
    background:linear-gradient(180deg, rgba(30,40,48,.15) 0%, rgba(30,40,48,.35) 55%, rgba(30,40,48,.68) 100%),
      url('/uploads/gallery/14eb288da39fcc11e6459a40.jpg') center 15%/cover no-repeat;
    height:66.7vw; min-height:460px; max-height:820px; display:flex; align-items:flex-end;}
  @media (max-width:760px){ .hero{height:auto; min-height:640px;} }
  .hero-inner{max-width:1080px; margin:0 auto; padding:60px 32px 50px; width:100%; position:relative;}

  .hero-kicker{font-family:var(--font-kicker); font-size:15px; letter-spacing:.14em; text-transform:uppercase; color:#fff; margin-bottom:12px;}
  .hero h1{font-family:var(--font-display); font-weight:600; font-size:clamp(28px,4.4vw,50px); line-height:1.12; max-width:760px;}
  .hero-sub{font-family:var(--font-display); font-style:italic; font-size:clamp(16px,2vw,22px); color:#D8CFB9; margin-top:6px;}
  .hero-langs{display:flex; gap:16px; margin-top:18px; font-size:13.5px; color:#C9BFA8; flex-wrap:wrap;}
  .hero-langs span{border-left:1px solid rgba(244,239,227,.25); padding-left:16px;}
  .hero-langs span:first-child{border-left:none; padding-left:0;}
  .hero-cta{display:flex; gap:12px; margin-top:30px; flex-wrap:wrap;}
  .btn{font-family:var(--font-body); font-weight:700; font-size:13.5px; padding:12px 24px; border-radius:2px; text-decoration:none; display:inline-block; border:1px solid transparent; cursor:pointer;}
  .btn-gold{background:var(--gold); color:var(--slate);}
  .btn-outline{border-color:rgba(244,239,227,.5); color:var(--cream); background:none;}

  .dome-divider{display:flex; justify-content:center; padding:32px 0 4px; opacity:.55;}

  /* PROSE */
  .prose{max-width:700px; margin:0 auto; font-size:16px; color:var(--ink-soft);}
  .prose p+p{margin-top:15px;}
  .prose b{color:var(--ink);}

  /* TIMELINE */
  .timeline-section{background:var(--paper-2);}
  .timeline{max-width:760px; margin:0 auto; position:relative; padding-left:34px;}
  .timeline::before{content:""; position:absolute; left:9px; top:6px; bottom:6px; width:1px; background:var(--gold-deep); opacity:.4;}
  .t-item{position:relative; padding-bottom:30px;}
  .t-item:last-child{padding-bottom:0;}
  .t-item::before{content:""; position:absolute; left:-34px; top:4px; width:19px; height:19px; border-radius:50%; background:var(--paper-2); border:2px solid var(--gold); box-sizing:border-box;}
  .t-year{font-family:var(--font-display); font-weight:600; font-size:19px; color:var(--burgundy);}
  .t-text{margin-top:4px; font-size:14.5px; color:var(--ink-soft); max-width:580px;}
  .t-photo{margin-top:14px; border-radius:4px; max-width:340px;}

  /* Photo full */
  .photo-block{max-width:900px; margin:0 auto;}
  .photo-block img{border-radius:4px;}
  .photo-block.compact{max-width:360px;}
  .photo-caption{text-align:center; font-size:13px; color:var(--ink-soft); margin-top:10px; font-style:italic;}
  .photo-caption a{color:inherit;}
  .school-photos{display:grid; grid-template-columns:1fr 1fr; gap:16px; max-width:520px; margin:0 auto 24px;}
  .school-photos img{width:100%; border-radius:4px; display:block;}
  .school-photos figcaption{text-align:center; font-size:12.5px; color:var(--ink-soft); margin-top:8px; font-style:italic;}
  @media (max-width:500px){ .school-photos{grid-template-columns:1fr;} }

  /* GALLERY */
  .gallery-full{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; max-width:960px; margin:0 auto;}
  .gallery-full a{display:block; overflow:hidden; border-radius:4px;}
  .gallery-full img{width:100%; height:230px; object-fit:cover; transition:transform .3s;}
  .gallery-full a:hover img{transform:scale(1.05);}
  @media (max-width:700px){ .gallery-full{grid-template-columns:1fr 1fr;} }
  @media (max-width:460px){ .gallery-full{grid-template-columns:1fr;} }

  /* LIGHTBOX */
  .lightbox{position:fixed; inset:0; background:rgba(10,14,17,.94); z-index:200; display:none; align-items:center; justify-content:center; padding:40px;}
  .lightbox.open{display:flex;}
  .lightbox img{max-width:90vw; max-height:88vh; border-radius:4px; object-fit:contain;}
  .lightbox-close{position:absolute; top:20px; right:24px; background:none; border:1px solid rgba(244,239,227,.4); color:var(--cream); width:38px; height:38px; border-radius:50%; font-size:16px; cursor:pointer;}
  .lightbox-nav{position:absolute; top:50%; transform:translateY(-50%); background:none; border:1px solid rgba(244,239,227,.4); color:var(--cream); width:44px; height:44px; border-radius:50%; font-size:22px; cursor:pointer;}
  .lightbox-prev{left:20px;}
  .lightbox-next{right:20px;}
  @media (max-width:600px){ .lightbox{padding:16px;} .lightbox-nav{width:36px; height:36px; font-size:18px;} .lightbox-prev{left:6px;} .lightbox-next{right:6px;} }

  /* SCHEDULE (Google Sheet embed) */
  .schedule-section{background:var(--slate); color:var(--cream);}
  .schedule-section .kicker{color:var(--gold);}
  .schedule-section .section-head h2{color:var(--cream);}
  .schedule-section .section-head p{color:#C9BFA8;}
  .board{max-width:760px; margin:0 auto; background:var(--slate-2); border:1px solid rgba(244,239,227,.15); border-radius:4px; overflow:hidden;}
  table.svc{width:100%; border-collapse:collapse; font-size:14.5px;}
  table.svc th{text-align:center; font-weight:700; font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:#C9BFA8; padding:13px 18px; border-bottom:1px solid rgba(244,239,227,.15);}
  table.svc td{padding:15px 18px; border-bottom:1px solid rgba(244,239,227,.08); vertical-align:top; text-align:center;}
  table.svc tr:last-child td{border-bottom:none;}
  .svc-day{font-family:var(--font-display); font-weight:600; font-size:16px; white-space:nowrap;}
  .svc-time{color:var(--gold); font-weight:700; white-space:nowrap;}
  .schedule-note{max-width:760px; margin:16px auto 0; font-size:12.5px; color:#9FA9AE; text-align:center;}
  .announcement-block{max-width:760px; margin:24px auto 0; background:rgba(169,129,46,.12); border:1px solid rgba(169,129,46,.4); border-radius:4px; padding:14px 18px; display:none;}
  .announcement-label{font-family:var(--font-kicker); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold); margin-bottom:6px;}
  #announcement-text{font-size:14.5px; color:var(--cream); line-height:1.5; white-space:pre-wrap;}

  /* SCHOOL placeholder */
  .placeholder-card{max-width:640px; margin:0 auto; background:var(--cream); border:1px dashed rgba(34,30,25,.25); border-radius:6px; padding:38px 30px; text-align:center; color:var(--ink-soft);}
  .placeholder-card b{display:block; color:var(--ink); font-family:var(--font-display); font-size:17px; margin-bottom:8px;}

  /* NEWS */
  .news-list{display:flex; flex-direction:column; gap:18px; max-width:640px; margin:0 auto;}
  .news-card{background:var(--cream); border:1px solid rgba(34,30,25,.1); border-radius:6px; overflow:hidden; cursor:pointer; transition:box-shadow .2s;}
  .news-card:hover{box-shadow:0 4px 18px rgba(34,30,25,.12);}
  .news-card-media{position:relative; background:#000;}
  .news-card-media img{width:100%; height:auto; display:block;}
  .news-card-media video{width:100%; max-height:480px; display:block; background:#000;}
  .news-card-media iframe{width:100%; aspect-ratio:16/9; display:block; border:none; background:#000;}
  .news-media-badge{position:absolute; right:10px; bottom:10px; background:rgba(10,14,17,.65); color:var(--cream); font-size:12px; padding:3px 9px; border-radius:12px;}
  .news-card-body{padding:18px 22px;}
  .news-date{font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--gold-deep); margin-bottom:6px;}
  .news-card h3{font-family:var(--font-display); font-size:17px; margin-bottom:6px;}
  .news-card p{font-size:14px; color:var(--ink-soft); white-space:pre-wrap; margin-bottom:8px;}
  .news-read-more{display:inline-block; font-size:13.5px; font-weight:600; color:var(--gold-deep);}
  .news-card:hover .news-read-more{text-decoration:underline;}

  /* NEWS MODAL */
  .news-modal{position:fixed; inset:0; background:rgba(10,14,17,.94); z-index:210; display:none; align-items:flex-start; justify-content:center; padding:40px 20px; overflow-y:auto;}
  .news-modal.open{display:flex;}
  .news-modal-card{background:var(--cream); border-radius:6px; max-width:680px; width:100%; margin:auto; position:relative; overflow:hidden;}
  .news-modal-close{position:absolute; top:14px; right:14px; background:rgba(10,14,17,.55); border:1px solid rgba(244,239,227,.4); color:var(--cream); width:38px; height:38px; border-radius:50%; font-size:16px; cursor:pointer; z-index:1;}
  .news-modal-media img{width:100%; height:auto; display:block;}
  .news-modal-media video{width:100%; max-height:70vh; display:block; background:#000;}
  .news-modal-media iframe{width:100%; aspect-ratio:16/9; display:block; border:none; background:#000;}
  .news-modal-text{padding:20px 24px 28px;}
  .news-modal-text h3{font-family:var(--font-display); font-size:20px; margin-bottom:10px;}
  .news-modal-text p{font-size:14.5px; color:var(--ink-soft); white-space:pre-wrap; line-height:1.65;}
  @media (max-width:600px){ .news-modal{padding:0;} .news-modal-card{border-radius:0; min-height:100%;} }

  /* SUPPORT: donations + treby — слева список, справа форма (по аналогии с pererva.org/donate) */
  .give-columns{
    display:grid; grid-template-columns:300px 1fr; gap:24px; align-items:start;
    max-width:980px; margin:0 auto;
  }
  @media (max-width:760px){ .give-columns{grid-template-columns:1fr;} }

  .give-list-box{
    background:var(--cream); border:1px solid rgba(34,30,25,.12); border-radius:6px;
    max-height:640px; overflow-y:auto;
  }
  @media (max-width:760px){ .give-list-box{max-height:280px;} }
  .give-list-item{
    display:block; width:100%; text-align:left; padding:14px 18px; border:none; background:none;
    cursor:pointer; border-top:1px solid rgba(34,30,25,.08); font-family:var(--font-body);
  }
  .give-list-item:first-child{border-top:none;}
  .give-list-item:hover{background:rgba(169,129,46,.06);}
  .give-list-item.active{background:rgba(169,129,46,.12); box-shadow:inset 3px 0 0 var(--gold);}
  .give-list-item h4{font-family:var(--font-display); font-weight:600; font-size:14.5px; margin:0 0 4px; color:var(--ink);}
  .give-list-price{font-size:11.5px; color:var(--gold-deep); font-weight:700;}

  .support-card{background:var(--cream); border:1px solid rgba(34,30,25,.1); border-radius:6px; padding:26px;}
  .support-card h3{font-family:var(--font-display); font-size:18px; margin-bottom:10px;}
  .support-card > p, .support-panel > p{font-size:14px; color:var(--ink-soft); margin-bottom:14px;}
  .req-row{display:flex; justify-content:space-between; gap:10px; font-size:13.5px; padding:9px 0; border-top:1px solid rgba(34,30,25,.08);}
  .req-row:first-of-type{border-top:none;}
  .req-row b{color:var(--ink); text-align:right;}

  .support-pay-row{display:flex; gap:18px; align-items:flex-start; margin-top:4px;}
  @media (max-width:480px){ .support-pay-row{flex-direction:column; align-items:stretch;} }
  .qr-box{
    flex:0 0 130px; width:130px; height:130px; border:1px dashed rgba(34,30,25,.3); border-radius:4px;
    display:flex; align-items:center; justify-content:center; text-align:center; font-size:11.5px;
    color:var(--ink-soft); line-height:1.4; padding:8px; background:#fff;
  }
  .qr-box img{width:100%; height:100%; object-fit:contain;}
  .qr-box small{color:var(--gold-deep); font-weight:700;}
  .req-list{flex:1; min-width:0;}
  .treb-form label{display:block; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; color:var(--ink-soft); margin:12px 0 4px;}
  .treb-form label:first-child{margin-top:0;}
  .treb-form input, .treb-form select, .treb-form textarea{
    width:100%; padding:9px 11px; border:1px solid rgba(34,30,25,.2); border-radius:4px; font-family:var(--font-body); font-size:14px; background:#fff; color:var(--ink);
  }
  .treb-form textarea{min-height:64px; resize:vertical;}
  .treb-form button{margin-top:16px;}
  .treb-form button:disabled{opacity:.45; cursor:not-allowed;}
  .offer-row{display:flex; align-items:flex-start; gap:9px; margin-top:16px; font-size:13px; color:var(--ink-soft); line-height:1.45;}
  .offer-row input{width:auto; margin:2px 0 0;}
  .offer-row a{color:var(--gold-deep); font-weight:700; text-decoration:underline;}
  .form-msg{font-size:13px; margin-top:10px; display:none; padding:8px 10px; border-radius:4px;}
  .form-msg.ok{background:#e4f0e7; color:var(--ok); display:block;}
  .form-msg.err{background:#f5e3e3; color:var(--err); display:block;}

  /* "Записка" — стилизованная под старину карточка с именами */
  .note-card{
    border:10px solid transparent; border-radius:4px; padding:26px 24px; position:relative;
    background:
      repeating-linear-gradient(135deg, rgba(169,129,46,.5) 0 2px, transparent 2px 10px) top left / 100% 10px no-repeat,
      repeating-linear-gradient(135deg, rgba(169,129,46,.5) 0 2px, transparent 2px 10px) bottom left / 100% 10px no-repeat,
      repeating-linear-gradient(45deg, rgba(169,129,46,.5) 0 2px, transparent 2px 10px) top left / 10px 100% no-repeat,
      repeating-linear-gradient(45deg, rgba(169,129,46,.5) 0 2px, transparent 2px 10px) top right / 10px 100% no-repeat,
      var(--cream);
    background-origin:border-box, border-box, border-box, border-box, padding-box;
    background-clip:border-box, border-box, border-box, border-box, padding-box;
  }
  .note-title{font-family:var(--font-kicker); font-size:17px; text-align:center; color:var(--burgundy); margin-bottom:4px; text-transform:uppercase; letter-spacing:.02em;}
  .note-sub{text-align:center; font-size:12.5px; color:var(--ink-soft); margin-bottom:18px;}
  .note-divider{text-align:center; color:var(--gold); opacity:.6; font-size:13px; margin-bottom:16px;}
  .note-lines{max-width:420px; margin:0 auto;}
  .note-line{display:flex; align-items:flex-end; gap:8px; margin-bottom:10px;}
  .note-line span{font-family:var(--font-display); font-size:13px; color:var(--ink-soft); flex:0 0 18px;}
  .note-line input{
    flex:1; border:none; border-bottom:1px solid rgba(34,30,25,.25); background:none; padding:4px 2px;
    font-family:var(--font-body); font-size:14.5px; color:var(--ink); border-radius:0;
  }
  .note-line input:focus{outline:none; border-bottom-color:var(--gold);}
  .note-add-row{text-align:center; margin-top:4px;}
  .note-add-row button{background:none; border:1px dashed var(--gold-deep); color:var(--gold-deep); font-size:12.5px; font-weight:700; padding:6px 14px; border-radius:12px; cursor:pointer;}
  .note-remove{background:none; border:none; color:var(--err); font-size:16px; cursor:pointer; flex:0 0 auto; padding:0 2px;}

  /* Способ оплаты */
  .pay-methods{display:flex; gap:8px; flex-wrap:wrap; margin:14px 0;}
  .pay-method-btn{
    font-family:var(--font-body); font-size:13px; font-weight:700; padding:9px 16px; border-radius:20px;
    border:1px solid rgba(34,30,25,.2); background:#fff; color:var(--ink-soft); cursor:pointer;
  }
  .pay-method-btn.active{background:var(--gold); border-color:var(--gold); color:var(--slate);}
  .amount-row{display:flex; align-items:center; gap:10px; font-size:14px; color:var(--ink-soft); margin:14px 0; padding:10px 14px; background:rgba(169,129,46,.08); border-radius:4px;}
  .amount-row b{color:var(--ink); font-size:17px; font-family:var(--font-display);}
  .candle-variants{display:flex; flex-direction:column; gap:8px; margin:10px 0;}
  .candle-variant-row{display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:14px; padding:8px 0; border-bottom:1px solid rgba(34,30,25,.1);}
  .candle-variant-row input{width:64px; padding:7px 8px; border:1px solid rgba(34,30,25,.2); border-radius:4px; font-family:var(--font-body); font-size:15px; text-align:center;}

  /* CALENDAR */
  .calendar-card{max-width:640px; margin:0 auto; background:var(--slate-2); color:var(--cream); border-radius:6px; padding:34px; text-align:center;}
  .calendar-card h3{font-family:var(--font-display); font-size:20px; margin-bottom:10px;}
  .calendar-card p{font-size:14px; color:#C9BFA8; margin-bottom:20px;}
  .calendar-card ul, .calendar-card ul li{list-style:none !important; padding-left:0 !important;}
  .calendar-card .saint-ideograph{display:none !important;}

  /* Heritage — condensed, at the bottom */
  .heritage{background:var(--paper-2);}
  .stories-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px; max-width:840px; margin:28px auto 0;}
  @media (max-width:700px){ .stories-grid{grid-template-columns:1fr;} }
  .story-card{background:var(--cream); border:1px solid rgba(34,30,25,.1); border-radius:4px; padding:14px 18px; text-decoration:none; display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:13.5px;}
  .story-card:hover{border-color:var(--gold);}
  .story-card span:first-child{font-weight:700; color:var(--ink);}
  .story-arrow{color:var(--gold-deep);}
  .heritage-credit{max-width:700px; margin:20px auto 0; font-size:12.5px; color:var(--ink-soft); text-align:center;}
  .heritage-credit a{color:var(--burgundy); text-decoration:underline;}
  .heritage-social{display:flex; gap:14px; justify-content:center; margin-top:10px; flex-wrap:wrap;}
  .heritage-social a{font-size:12.5px; text-decoration:underline; color:var(--burgundy);}

  /* CONTACTS */
  .visit-grid{display:grid; grid-template-columns:1fr 1fr; gap:36px; max-width:760px; margin:0 auto;}
  @media (max-width:700px){ .visit-grid{grid-template-columns:1fr;} }
  .visit-card{background:var(--cream); border:1px solid rgba(34,30,25,.1); border-radius:4px; padding:26px;}
  .visit-card h3{font-family:var(--font-display); font-size:18px; font-weight:600; margin-bottom:14px;}
  .visit-row{display:flex; gap:12px; font-size:14px; color:var(--ink-soft); padding:8px 0; border-top:1px solid rgba(34,30,25,.08);}
  .visit-row:first-of-type{border-top:none; padding-top:0;}
  .visit-row b{color:var(--ink); min-width:90px; font-weight:700;}

  footer{background:var(--slate); color:#9FA9AE; text-align:center; padding:30px 20px; font-size:12.5px;}
  footer b{color:var(--cream);}
  footer p+p{margin-top:6px;}

  /* ===== Многостраничная версия (index.php, /en/, /news/, /history/ …) ===== */
  a.lang-btn{text-decoration:none; display:inline-block;}
  a.brand{text-decoration:none; color:inherit;}
  a.nav-phone{text-decoration:none;}
  nav.links a.active{color:var(--cream); border-color:var(--gold);}

  /* Мобильное меню — на узких экранах обычное меню скрыто */
  .mobile-menu{display:none; position:relative;}
  .mobile-menu summary{list-style:none; cursor:pointer; width:36px; height:32px; display:flex; flex-direction:column; justify-content:center; gap:5px; padding:0 7px; border:1px solid rgba(244,239,227,.3); border-radius:3px;}
  .mobile-menu summary::-webkit-details-marker{display:none;}
  .mobile-menu summary span{display:block; height:2px; background:var(--cream); border-radius:1px;}
  .mobile-menu nav{position:absolute; right:0; top:42px; background:var(--slate); border:1px solid rgba(244,239,227,.15); border-radius:4px; padding:8px 0; min-width:220px; box-shadow:0 8px 24px rgba(0,0,0,.3);}
  .mobile-menu nav a{display:block; padding:10px 18px; color:#D8CFB9; text-decoration:none; font-size:14px;}
  .mobile-menu nav a:hover, .mobile-menu nav a.active{color:var(--cream); background:var(--slate-2);}
  @media (max-width:1000px){ .mobile-menu{display:block;} }
  @media (max-width:560px){ .nav-phone{display:none;} .nav-inner{padding:12px 16px; gap:12px;} }

  /* Хлебные крошки и шапка внутренней страницы */
  .breadcrumbs{background:var(--paper-2); font-size:12.5px; color:var(--ink-soft);}
  .breadcrumbs ol{list-style:none; display:flex; flex-wrap:wrap; gap:6px; padding:12px 0;}
  .breadcrumbs li+li::before{content:'›'; margin-right:6px; color:var(--gold-deep);}
  .breadcrumbs a{color:var(--burgundy); text-decoration:none;}
  .breadcrumbs a:hover{text-decoration:underline;}
  .breadcrumbs [aria-current]{white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:60vw;}
  .page-head{padding:56px 0 24px; text-align:center;}
  .page-head h1{font-family:var(--font-display); font-weight:600; font-size:clamp(26px,3.8vw,40px); line-height:1.2; color:var(--ink);}
  .page-head p{margin-top:12px; color:var(--ink-soft); font-size:15.5px;}
  .page-cta{text-align:center; padding-top:0;}

  /* Кнопка «Подробнее» под кратким блоком */
  .section-more{text-align:center; margin-top:28px;}
  .btn-dark-outline{border-color:var(--ink-soft); color:var(--ink); background:none;}
  .btn-dark-outline:hover{border-color:var(--gold); color:var(--gold-deep);}

  /* Карточки новостей стали ссылками */
  .news-card{cursor:default;}
  .news-card h3 a{color:inherit; text-decoration:none;}
  .news-card h3 a:hover{text-decoration:underline;}
  a.news-read-more{text-decoration:none;}
  a.news-read-more:hover{text-decoration:underline;}

  /* Отдельная новость */
  .news-article .wrap{max-width:760px;}
  .news-article-head{margin-bottom:24px;}
  .news-article-head h1{font-family:var(--font-display); font-weight:600; font-size:clamp(24px,3.4vw,34px); line-height:1.25;}
  .news-article-media{margin-bottom:18px; background:#000; border-radius:4px; overflow:hidden;}
  .news-article-media img{width:100%; height:auto; display:block;}
  .news-article-media video{width:100%; max-height:70vh; display:block;}
  .news-article-media iframe{width:100%; aspect-ratio:16/9; display:block; border:none;}
  .news-article-text{font-size:16px; color:var(--ink-soft); white-space:pre-wrap; line-height:1.7;}
  .pager{display:flex; gap:8px; justify-content:center; margin-top:28px;}
  .pager a, .pager span{padding:6px 12px; border:1px solid rgba(34,30,25,.2); border-radius:3px; text-decoration:none; color:var(--ink);}
  .pager span{background:var(--gold); border-color:var(--gold);}

  /* Как добраться */
  .directions{max-width:760px; margin:36px auto 0; text-align:center;}
  .directions h3{font-family:var(--font-display); font-size:20px; font-weight:600; margin-bottom:10px;}
  .directions p{color:var(--ink-soft); font-size:15px; margin-bottom:18px;}
  .map-frame{border-radius:4px; overflow:hidden; border:1px solid rgba(34,30,25,.12); background:var(--paper-2);}
  .map-frame iframe{display:block; width:100%; height:340px; border:0;}
  .map-buttons{display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:16px;}
  .visit-row a{color:var(--burgundy);}

  /* Частые вопросы (страница «Туристам») */
  .faq{max-width:760px; margin:0 auto;}
  .faq-item{background:var(--cream); border:1px solid rgba(34,30,25,.1); border-radius:4px; margin-bottom:10px;}
  .faq-item summary{cursor:pointer; padding:16px 20px; font-weight:700; color:var(--ink);}
  .faq-item p{padding:0 20px 18px; color:var(--ink-soft); font-size:15px;}
  .prose h3{font-family:var(--font-display); font-size:20px; font-weight:600; color:var(--ink); margin:26px 0 8px;}
  .prose h3:first-child{margin-top:0;}
  .route-list{margin:0; padding-left:20px; font-size:14px; color:var(--ink-soft);}
  .route-list li{padding:8px 0; border-top:1px solid rgba(34,30,25,.08);}
  .route-list li:first-child{border-top:none; padding-top:0;}
  .route-list b{color:var(--ink);}

  /* Таблица треб на /treby/ — светлый вариант таблицы расписания */
  .price-board{background:var(--cream); border-color:rgba(34,30,25,.12); color:var(--ink);}
  .price-board .svc th{color:var(--ink-soft);}
  .price-board .svc td{border-color:rgba(34,30,25,.08);}
  .price-board .svc-time{color:var(--gold-deep);}

  /* Подвал */
  .footer-links{display:flex; flex-wrap:wrap; gap:8px 18px; justify-content:center; margin-bottom:14px;}
  footer a{color:#C9BFA8;}
  .schedule-note a{color:inherit;}
