/* Freddy Fix – FAQ-side */
.faq-search { position: relative; max-width: 760px; }
.faq-search input { width: 100%; height: 64px; padding: 0 140px 0 56px; border-radius: var(--r); border: 1px solid var(--line-strong);
  background: #0E1511 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%234FA86E' stroke-width='2'%3E%3Ccircle cx='9.5' cy='9.5' r='7'/%3E%3Cpath d='m15 15 5 5'/%3E%3C/svg%3E") 20px 50% no-repeat; color: var(--text); font: 400 18px/1 var(--font); }
.faq-search input:focus { outline: none; border-color: var(--green); box-shadow: 0 0 0 4px rgba(79,168,110,.15); }
.faq-count { position: absolute; right: 18px; top: 50%; transform: translateY(-50%); font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--text-2); pointer-events: none; }
.faq-pop { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.faq-pop .mono { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; margin-right: 6px; }
.faq-pop button { min-height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line-strong); background: transparent; color: var(--text); font: 500 14px/1 var(--font); cursor: pointer; }
.faq-pop button:hover { border-color: var(--green); background: rgba(79,168,110,.08); }
.faq-layout { display: grid; grid-template-columns: 260px 1fr; gap: 72px; align-items: start; }
.faq-layout[hidden] { display: none; }
.faq-nav { position: sticky; top: calc(var(--header-h) + 28px); display: grid; gap: 14px; }
.faq-nav .mono { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.faq-nav nav { display: grid; }
.faq-nav nav a { display: grid; grid-template-columns: 28px 1fr auto; gap: 6px; padding: 8px 0; font-size: 15px; color: var(--text-2); text-decoration: none; border-bottom: 1px solid var(--line); transition: color .15s; }
.faq-nav nav a span, .faq-nav nav a em { font: 500 10.5px/1.9 var(--mono); font-style: normal; color: rgba(228,229,222,.35); }
.faq-nav nav a:hover, .faq-nav nav a.on { color: var(--text); } .faq-nav nav a.on span { color: var(--green); }
.faq-ask { margin-top: 18px; padding: 20px; border-radius: 8px; background: rgba(79,168,110,.08); border: 1px solid rgba(79,168,110,.3); display: grid; gap: 8px; }
.faq-ask strong { font: 600 17px/1.2 var(--display); } .faq-ask p { margin: 0 0 6px; font-size: 14px; color: var(--text-2); }
.faq-ask .btn { justify-self: start; }
.faq-cat { scroll-margin-top: calc(var(--header-h) + 24px); margin-bottom: 72px; }
.faq-cat[hidden] { display: none; }
.faq-cat header { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: baseline; padding-bottom: 14px; border-bottom: 1px solid var(--line-strong); }
.faq-cat header .mono:first-child { color: var(--green); font-size: 12px; }
.faq-cat header .mono:last-child { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.faq-cat h2 { font-size: clamp(26px, 2.6vw, 34px); letter-spacing: -0.02em; margin: 0; }
.faq-intro { margin: 14px 0 8px; color: var(--text-2); font-size: 16px; } .faq-intro a { color: var(--green); white-space: nowrap; text-underline-offset: 3px; }
.faq-item { border-bottom: 1px solid var(--line); scroll-margin-top: calc(var(--header-h) + 40px); }
.faq-item[hidden] { display: none; }
.faq-item summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 18px 0; cursor: pointer; font-size: 18px; font-weight: 600; line-height: 1.4; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary:hover .q { color: var(--green-light); }
.faq-item .pm { flex: none; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--line-strong); position: relative; transition: background .2s, border-color .2s; }
.faq-item .pm::before, .faq-item .pm::after { content: ''; position: absolute; left: 50%; top: 50%; width: 11px; height: 1.5px; background: currentColor; transform: translate(-50%, -50%); }
.faq-item .pm::after { transform: translate(-50%, -50%) rotate(90deg); transition: transform .25s; }
.faq-item[open] .pm { background: var(--green-deep); border-color: var(--green-deep); }
.faq-item[open] .pm::after { transform: translate(-50%, -50%) rotate(0deg); }
.faq-item .a { padding: 0 52px 22px 0; color: var(--text-2); font-size: 17px; line-height: 1.65; }
.faq-item .a p { margin: 0; text-wrap: pretty; }
.faq-more { display: flex; gap: 18px; align-items: center; margin-top: 14px; }
.faq-follow { background: none; border: 0; padding: 0; color: var(--green); font: 600 13px/1 var(--mono); letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
.faq-follow::before { content: '✦ '; } .faq-follow:hover { text-decoration: underline; text-underline-offset: 4px; }
.faq-link { color: rgba(228,229,222,.35); text-decoration: none; font: 500 13px/1 var(--mono); } .faq-link:hover { color: var(--text); }
.faq-none { max-width: 680px; padding: 48px; border: 1px dashed rgba(79,168,110,.45); border-radius: 10px; display: grid; gap: 14px; }
.faq-none[hidden] { display: none; }
.faq-none p { margin: 0 0 8px; color: var(--text-2); }
.faq-end { display: grid; grid-template-columns: 5fr 7fr; gap: 72px; align-items: center; }
.faq-ways { display: grid; gap: 12px; }
.faq-way { display: grid; grid-template-columns: 1fr auto; gap: 4px 20px; padding: 22px 24px; border-radius: 8px; border: 1px solid var(--line-strong); background: var(--bg); color: var(--text); text-decoration: none; text-align: left; font: inherit; cursor: pointer; transition: border-color .2s, transform .2s; }
.faq-way:hover { border-color: var(--green); transform: translateX(4px); }
.faq-way .mono { grid-column: 1; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--green); }
.faq-way strong { grid-column: 1; font: 600 21px/1.25 var(--display); }
.faq-way span:not(.mono):not(.arr) { grid-column: 1; color: var(--text-2); font-size: 15px; }
.faq-way .arr { grid-column: 2; grid-row: 1 / 4; align-self: center; font-size: 22px; color: var(--green); }
.faq-way:first-child { background: rgba(79,168,110,.08); border-color: rgba(79,168,110,.45); }
@media (max-width: 1024px) { .faq-layout { grid-template-columns: 1fr; gap: 32px; } .faq-nav { position: static; } .faq-nav nav { grid-template-columns: 1fr 1fr; column-gap: 24px; } .faq-end { grid-template-columns: 1fr; gap: 36px; } }
@media (max-width: 680px) { .faq-search input { height: 56px; font-size: 16px; padding-right: 16px; } .faq-count { display: none; } .faq-nav nav { grid-template-columns: 1fr; } .faq-item summary { font-size: 16.5px; } .faq-item .a { padding-right: 0; } .faq-none { padding: 28px; } }
