/* 7 ОКТЯБРЯ — HOME. Evocative memorial landing (dark). */
.hero { position:relative; min-height:100svh; display:flex; align-items:flex-end; padding: calc(var(--header-h)+3rem) 0 4rem; overflow:hidden; isolation:isolate; }
.hero-bg { position:absolute; inset:0; z-index:-3; background:center/cover no-repeat; }
.hero::after { content:""; position:absolute; inset:0; z-index:-2; background: linear-gradient(180deg, rgba(8,6,9,.45) 0%, rgba(8,6,9,.4) 35%, rgba(6,4,7,.94) 100%); }
.hero-inner { width:min(100% - 2.4rem, var(--maxw)); margin-inline:auto; color:#fff; }
.hero .kicker { color:#fff; } .hero .kicker::before { background: var(--ochre); }
.hero h1 { font-size: clamp(3.2rem,2rem+7vw,7rem); color:#fff; letter-spacing:.01em; text-shadow: 0 12px 50px rgba(0,0,0,.6); }
.hero-sub { max-width:56ch; margin:1.2rem 0 2rem; font-size: clamp(1.15rem,1rem+.7vw,1.5rem); color: rgba(236,230,218,.92); font-family: var(--f-accent); font-style: italic; }
.hero-cta { display:flex; gap:1rem; flex-wrap:wrap; }
.hero-scroll { position:absolute; inset-block-end:1.4rem; inset-inline-end:2rem; z-index:1; color: rgba(236,230,218,.8); font-size:.64rem; letter-spacing:.28em; text-transform:uppercase; writing-mode: vertical-rl; }

.lede { padding: clamp(4rem,8vw,7rem) 0; }
.lede-grid { display:grid; grid-template-columns: 1.2fr 1fr; gap: clamp(2rem,5vw,4rem); align-items:center; }
.lede-copy h2 { font-size: clamp(2rem,1.4rem+2vw,3.2rem); color: var(--ink); margin:1rem 0 1.2rem; }
.lede-copy p { color: var(--ink-soft); margin-bottom: 1rem; }
.lede-media { border-radius: var(--r-lg); overflow:hidden; box-shadow: var(--shadow); border:1px solid var(--line-soft); }
.lede-media img { width:100%; aspect-ratio: 4/5; object-fit:cover; }
@media (max-width:820px){ .lede-grid{ grid-template-columns:1fr; } .lede-media{ order:-1; } .lede-media img{ aspect-ratio:16/10; } }

.themes { padding: clamp(4rem,8vw,7rem) 0; background: var(--bg-2); }
.themes .section-head { text-align:center; margin:0 auto 2.6rem; } .themes .section-head .kicker{ justify-content:center; }
.themes-grid { display:grid; grid-template-columns: repeat(4,1fr); gap:1.3rem; }
@media (max-width:900px){ .themes-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .themes-grid{ grid-template-columns:1fr; } }
.theme { background: var(--bg-card); border:1px solid var(--line-soft); border-radius: var(--r-lg); padding:1.8rem; box-shadow: var(--shadow); border-top:3px solid var(--terra); transition: transform .4s var(--ease); }
.theme:nth-child(2){ border-top-color: var(--ochre); } .theme:nth-child(3){ border-top-color: var(--teal); } .theme:nth-child(4){ border-top-color: var(--stone); }
.theme:hover { transform: translateY(-5px); }
.theme .n { font-family: var(--f-display); font-size:2rem; color: var(--terra); }
.theme:nth-child(2) .n{ color:var(--ochre);} .theme:nth-child(3) .n{ color:var(--teal);} .theme:nth-child(4) .n{ color:var(--stone);}
.theme h3 { font-size:1.4rem; color: var(--ink); margin:.4rem 0 .5rem; }
.theme p { color: var(--ink-soft); font-size:.92rem; }

.quote { padding: clamp(4rem,8vw,7rem) 0; }
.quote blockquote { max-width: 32ch; margin:0 auto; text-align:center; font-family: var(--f-display); font-size: clamp(1.7rem,1.2rem+2.6vw,3.1rem); line-height:1.28; color: var(--ink); font-style:italic; }
.quote blockquote::before { content:"«"; color: var(--terra); } .quote blockquote::after { content:"»"; color: var(--terra); }
.quote .qnote { text-align:center; margin-top:1.4rem; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color: var(--terra); }

.today-band { position:relative; padding: clamp(4rem,8vw,7rem) 0; overflow:hidden; isolation:isolate; color:#fff; }
.today-band .tb-bg { position:absolute; inset:0; z-index:-2; background:center/cover; }
.today-band::after { content:""; position:absolute; inset:0; z-index:-1; background: linear-gradient(90deg, rgba(6,4,7,.92), rgba(6,4,7,.6)); }
.today-band .box { max-width: 58ch; }
.today-band .kicker { color: var(--ochre); } .today-band .kicker::before { background: var(--ochre); }
.today-band h2 { color:#fff; font-size: clamp(2rem,1.4rem+2vw,3rem); margin:1rem 0 1rem; }
.today-band p { color: rgba(236,230,218,.9); margin-bottom: 1.8rem; }
