.faq-page [hidden]{display:none!important}

.faq-hero{
display:block;
grid-template-areas:none;
grid-template-columns:minmax(0,1fr);
padding-block:var(--hero-top) var(--space-8);
background:var(--dark);
color:#FBFAF7;
--muted:#D5DEDA;
--line:rgba(251,250,247,.14);
}

.faq-hero h1{
font-size:clamp(2.5rem,4vw,3.2rem);
line-height:var(--leading-tight);
color:#FBFAF7;
}

.faq-hero-lead{
max-width:var(--width-narrow);
margin-top:var(--space-3);
color:#D5DEDA;
overflow-wrap:break-word;
}

.faq-category-nav{
display:flex;
flex-wrap:wrap;
align-items:center;
gap:var(--space-2);
margin-top:var(--space-4);
}

.faq-category-nav a{
display:inline-flex;
align-items:center;
justify-content:center;
gap:.4em;
width:fit-content;
padding:.6em .9em;
border-radius:var(--pill);
background:var(--ticket-paper);
color:#10302C;
font-family:var(--fh);
font-size:var(--text-sm);
font-weight:var(--weight-bold);
line-height:1;
transition:background var(--duration) var(--ease);
}

.faq-category-nav a:hover{
background:var(--cream);
color:#10302C;
}

.faq-category-nav a:focus-visible{
outline-color:var(--focus-dark);
}

.faq-hero-note{
margin-top:var(--action-follow);
color:#D5DEDA;
font-size:var(--text-sm);
font-variant-numeric:tabular-nums;
}

.faq-group{
scroll-margin-top:calc(var(--header-height) + var(--space-4));
}

.faq-group--paper{
background:var(--paper);
color:#17201E;
--muted:#55605D;
--line:#E7E4DD;
}

.faq-group--rose{
background:var(--rose);
color:#5A2A1E;
--muted:#5A2A1E;
--line:#E7E4DD;
}

.faq-group--sage{
background:var(--sage);
color:#1E3A33;
--muted:#3C544D;
--line:#E7E4DD;
}

.faq-section-head{
margin-bottom:var(--space-5);
}

.faq-section-head h2{
font-size:clamp(1.75rem,3vw,2.5rem);
line-height:var(--leading-heading);
color:inherit;
}

.faq-section-head p{
max-width:var(--width-narrow);
margin-top:var(--space-2);
color:inherit;
overflow-wrap:break-word;
}

.faq-list{
padding:0;
border-radius:0;
}

.faq-list--paper,
.faq-list--paper details,
.faq-list--paper summary,
.faq-list--paper .faq-answer{
background:var(--paper);
color:#17201E;
--muted:#55605D;
--line:#E7E4DD;
}

.faq-list--rose,
.faq-list--rose details,
.faq-list--rose summary,
.faq-list--rose .faq-answer{
background:var(--rose);
color:#5A2A1E;
--muted:#5A2A1E;
--line:#E7E4DD;
}

.faq-list--sage,
.faq-list--sage details,
.faq-list--sage summary,
.faq-list--sage .faq-answer{
background:var(--sage);
color:#1E3A33;
--muted:#3C544D;
--line:#E7E4DD;
}

.faq-list details{
border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent);
border-radius:0;
}

.faq-list details:first-child{
border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);
}

.faq-list summary{
padding-block:var(--space-4);
font-size:var(--text-lg);
line-height:var(--leading-heading);
}

.faq-list .faq-answer{
display:grid;
gap:var(--space-3);
padding-top:var(--space-3);
padding-bottom:var(--space-4);
border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);
}

.faq-answer p,
.faq-answer li{
font-size:var(--text-base);
line-height:var(--leading-body);
overflow-wrap:break-word;
}

.faq-answer a:not(.vk-btn){
color:var(--primary);
text-decoration:underline;
text-underline-offset:.2em;
}

.faq-answer ul,
.faq-data-steps{
display:grid;
gap:var(--space-2);
padding-inline-start:var(--space-4);
}

.faq-price-scroll{
margin:0;
}

.faq-price-scroll table{
display:table;
width:100%;
text-align:left;
}

.faq-price-scroll th,
.faq-price-scroll td{
text-align:left;
}

.faq-help-section{
background:var(--paper);
color:#17201E;
}

.faq-closing{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,.55fr);
align-items:start;
gap:var(--space-5);
padding:var(--card-pad);
border-radius:var(--r-band);
background:var(--dark);
color:#FBFAF7;
--muted:#D5DEDA;
--line:rgba(251,250,247,.14);
text-align:left;
}

.faq-closing-copy h2{
font-size:clamp(1.75rem,3vw,2.5rem);
line-height:var(--leading-heading);
color:#FBFAF7;
}

.faq-closing-copy p{
margin-top:var(--space-2);
color:#D5DEDA;
overflow-wrap:break-word;
}

.faq-closing-actions{
display:flex;
flex-direction:column;
align-items:stretch;
justify-content:flex-start;
gap:var(--action-gap);
margin-top:var(--space-3);
}

.faq-closing-actions .vk-btn{
width:100%;
}

@media(max-width:64rem){
.faq-closing{
grid-template-columns:minmax(0,1fr);
}
}

@media(max-width:42rem){
.faq-hero{
padding-bottom:var(--space-7);
}

.faq-hero h1{
font-size:2.5rem;
}

.faq-hero .vk-actions{
align-items:stretch;
}

.faq-hero .vk-actions .vk-btn{
width:100%;
}

.faq-list summary{
gap:var(--space-3);
}

.faq-closing{
padding:var(--card-pad);
}
}
