/* Cohesion pass: tasks → experience → participation. */
.hero .hero-action .hero-price{justify-content:flex-start;min-width:0;padding:0;background:none;align-self:flex-start;text-align:left}
.hero-promise{max-width:760px}
.hero-purpose{max-width:650px}
.hero-action{width:max-content;max-width:100%}
.hero-foot{margin:0}
.button-arrow,.text-link>span,.community-row>a>span{transition:transform .22s ease}
.button:hover .button-arrow,.community-row>a:hover>span{transform:translate(3px,-3px)}
.button:active{transform:translateY(0)}
.desktop-nav a.is-active{color:#b30f3e}
.desktop-nav a.is-active::after{transform:scaleX(1)}
.mobile-menu a.is-active{color:#b30f3e}
.reading-progress{height:2px;background:transparent;position:absolute;bottom:0;left:0;right:0;overflow:hidden}
.reading-progress>span{display:block;width:0;height:100%;background:var(--pink);transition:width .12s linear}
.program-section{padding-block:82px}
.program-top{margin-bottom:22px}
.program-intro{max-width:920px;font-size:20px;line-height:1.6;color:#eef5ef;margin-bottom:42px;scroll-margin-top:120px}
.program-layout{grid-template-columns:.9fr 1.1fr;align-items:start;gap:70px}
.program-title h2{font-size:clamp(40px,4vw,61px)}
.program-title h2 em{color:white}
.program-title>p{font-size:17px;line-height:1.6;margin-top:24px}
.program-sign{display:grid;grid-template-columns:repeat(2,36px);gap:2px;margin-top:38px;width:max-content;transform:rotate(-8deg)}
.program-sign span{display:block;width:36px;height:36px;border-radius:50%;background:#202423}
.program-sign span:first-child,.program-sign span:last-child{background:#EA325D}
.program-sign span:last-child{border-top-left-radius:0}
.program-sign.motion-ready span{animation:module-arrive .45s both;animation-play-state:paused}
.program-sign.is-visible span{animation-play-state:running}
.program-sign span:nth-child(2){animation-delay:70ms}.program-sign span:nth-child(3){animation-delay:140ms}.program-sign span:nth-child(4){animation-delay:210ms}
@keyframes module-arrive{from{opacity:0;transform:translateY(10px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}
.program-list summary{grid-template-columns:30px 1fr 20px;gap:14px;font-size:23px;padding:24px 0}
.program-list summary:hover{color:white}
.topic-number{display:grid;place-items:center;width:26px;height:26px;font-size:11px;padding:0;border:1px solid #ffffff90;border-radius:50%;color:white;align-self:start;margin-top:3px}
.direction-1,.direction-4{background:#f3f5f3;color:#202423;border-color:#f3f5f3}
.direction-2,.direction-3{background:#202423;border-color:#202423}
.direction-4{border-top-left-radius:0}
.topic-content{padding-left:44px;font-size:17px}
.topic-content span{margin-top:12px;color:#e4f0e7}
.program-list details[open] .topic-content,.faq-list details[open]>p{animation:details-arrive .25s ease both}
@keyframes details-arrive{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.speakers-section{padding-block:85px}
.speakers-section .section-head{margin-bottom:36px}
.speakers-section .speaker-card h3{align-self:stretch;text-align:left;margin:20px 20px 9px;line-height:1.12}
.speakers-section .speaker-role{font-size:15px;line-height:1.5;min-height:4.5em;margin-bottom:12px}
.speakers-section .speaker-company{margin:8px 20px 18px;height:36px;padding-top:0;align-self:flex-start;max-width:calc(100% - 40px)}
.speaker-company img{max-width:145px;max-height:28px}
.speaker-company.company-efremof{padding:5px 7px;height:32px}
.speaker-company.company-efremof img{width:145px;max-width:100%}
.company-af span{font-size:20px}
.speaker-company.company-avito{height:32px;padding:7px 8px}
.speaker-company.company-avito img{width:145px}
.speaker-company.company-vk img{height:30px;width:30px;max-height:30px}
.speaker-card:hover .speaker-photo>img{transform:scale(1.025)}
.speaker-card.invite-card{background:#252b27;border-color:#ffffff12}
.invite-card .invite-photo{background:#2c3931}
.invite-card:hover .invite-photo{background:#34493b}
.invite-card .speaker-role,.speaker-soon .speaker-role{min-height:0}
.speaker-soon .soon-photo{background:#cfd8d1;color:#202423}
.speaker-soon .soon-photo .tiny-label{color:#202423}
.ticket-heading h2{font-size:clamp(43px,4.4vw,66px)}
.ticket-includes{list-style:none;padding:0;margin:30px 0 0;font-size:18px;line-height:1.6;max-width:520px}
.ticket-includes li{position:relative;padding-left:25px;margin:11px 0}
.ticket-includes li::before{content:"";position:absolute;width:9px;height:9px;top:.56em;left:0;border-radius:50%;background:#1F7551}
.ticket-includes li:nth-child(2)::before{background:#EA325D}.ticket-includes li:nth-child(3)::before{background:#202423}
.capacity-note{margin-top:22px}
.tickets-section{padding-block:85px}
.community-row{margin-top:50px}
.community-row h3{max-width:700px}
.community-row>a{font-size:17px;white-space:normal;line-height:1.4;max-width:290px}
.community-row>a:focus-visible{outline-color:white}
.venue-info{padding-block:60px}
.faq-section{padding-block:80px}
.faq-list details p{font-size:17px;line-height:1.6}
.reveal-ready{transition:opacity .45s ease,translate .45s cubic-bezier(.2,.7,.2,1)}
.reveal-ready:not(.is-visible){opacity:0;translate:0 18px}
.reveal-ready.is-visible{opacity:1;translate:0 0}
@media(max-width:1000px){.program-layout{gap:40px}.program-list summary{font-size:21px}.community-row>a{max-width:none}}
@media(max-width:600px){
 .hero,.hero-content{min-height:740px}
 .hero-content{padding-bottom:88px}
 .hero-promise{font-size:21px;line-height:1.4;letter-spacing:-.04em}
 .hero-purpose{font-size:16px;line-height:1.5;margin-top:15px}
 .hero-action{width:100%}
 .hero .hero-action .hero-price{font-size:14px;line-height:1.5;gap:10px}
 .program-section{padding-block:58px}
 .program-top{margin-bottom:18px}
 .program-intro{font-size:17px;line-height:1.55;margin-bottom:30px}
 .program-layout{display:block}
 .program-title h2{font-size:38px}
 .program-title>p{font-size:16px;margin-top:20px}
 .program-sign{grid-template-columns:repeat(2,23px);margin:24px 0 26px;gap:1px}
 .program-sign span{height:23px;width:23px}
 .program-list summary{font-size:20px;line-height:1.3;padding:23px 0;grid-template-columns:25px 1fr 18px;gap:10px}
 .topic-number{width:23px;height:23px;margin-top:0;font-size:10px}
 .topic-content{padding-left:35px;font-size:16px;line-height:1.55}
 .topic-content span{font-size:14px}
 .speakers-section{padding-block:58px}
 .speakers-section .section-head{margin-bottom:28px}
 .speakers-section .section-head h2{font-size:39px}
 .speakers-section .section-head>p{font-size:16px;margin-top:18px}
 .speakers-section .speaker-card h3{font-size:21px;margin:15px 12px 8px;letter-spacing:-.04em;overflow-wrap:normal}
 .speakers-section .speaker-role{font-size:14px;line-height:1.45;min-height:0;margin:0 12px 14px}
 .speakers-section .speaker-company{height:30px;margin:8px 12px 16px;max-width:calc(100% - 24px)}
 .speaker-company img{max-height:24px;max-width:100%}
 .speaker-company.company-efremof{height:29px;padding:4px 5px}
 .speaker-company.company-efremof img{width:130px}
 .speaker-company.company-avito{height:29px;padding:6px}
 .company-af span{font-size:16px;letter-spacing:-.6px}
 .speaker-talk-static{font-size:14px;line-height:1.5}
 .ticket-heading h2{font-size:41px}
 .ticket-includes{font-size:17px;margin-top:24px}
 .ticket-includes li{margin:10px 0}
 .tickets-section{padding-block:58px}
 .community-row{margin-top:35px}
 .community-row h3{font-size:26px}
 .community-row p{font-size:17px;line-height:1.5}
 .community-row>a{font-size:17px;max-width:none;min-height:58px}
 .venue-info{padding-block:58px 40px}
 .faq-section{padding-block:58px}
 .faq-list details p{font-size:16px!important;line-height:1.6}
}
@media(max-width:360px){.hero-promise{font-size:20px}.speakers-section .speaker-card h3{font-size:25px}.speakers-section .speaker-role,.speaker-talk-static{font-size:16px}}
@media(prefers-reduced-motion:reduce){.reveal-ready:not(.is-visible){opacity:1;translate:none}.program-sign span{animation:none}.reading-progress>span{transition:none}.speaker-card:hover .speaker-photo>img{transform:none}}
