.server-features { max-width: 1440px; margin: 0 auto; }
.server-features section { padding: 0; }
.server-features .feature-icon { display: block; width: 25px; height: 25px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.server-rates { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.rate-card { position: relative; overflow: hidden; padding: 28px 30px; border: 1px solid #ffffff16; border-radius: 14px; background: #141f30; }
.rate-card:nth-child(2) { background: #24211b; }
.rate-card:nth-child(3) { background: #1e2032; }
.rate-title { display: flex; align-items: center; gap: 11px; color: #b7d6ff; }
.rate-card:nth-child(2) .rate-title { color: #e9c378; }
.rate-card:nth-child(3) .rate-title { color: #c0a8f0; }
.rate-title h2 { margin: 0; font-size: 16px; }
.rate-value { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 0; margin: 15px 0 8px; font: 600 62px/1.1 system-ui, sans-serif; letter-spacing: -.05em; }
.rate-value span { font-size: 31px; color: #a9b6c9; font-weight: 400; }
.rate-value > span:first-child { margin-right: 5px; }
.rate-value .rate-custom { letter-spacing: -.03em; white-space: pre; }
.rate-card p { margin: 0; color: #aeb9c9; font-size: 11px; }
.rate-watermark { position: absolute; right: 26px; bottom: 28px; opacity: .06; pointer-events: none; }
.rate-watermark .feature-icon { width: 90px; height: 90px; }
.features-contents { display: flex; justify-content: center; flex-wrap: wrap; gap: 9px; margin: 23px 0 34px; }
.features-contents a { padding: 10px 17px; border: 1px solid #ffffff22; border-radius: 6px; color: #c1cdde; font-size: 12px; }
.features-contents a:hover { color: white; border-color: #a6c8ed; background: #a6c8ed10; }
.server-features .feature-section { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 38px; padding: 38px 0; border-top: 1px solid var(--line); scroll-margin-top: 110px; --feature-accent: #9fc9f5; }
.feature-section.equipment { --feature-accent: #dec28a; }
.feature-section.activities { --feature-accent: #b5c794; }
.feature-section.appearance { --feature-accent: #c9aff2; }
.feature-section.comfort { --feature-accent: #9acfc7; }
.feature-section-heading > span { display: block; margin-bottom: 13px; color: var(--feature-accent); font-size: 10px; letter-spacing: .18em; }
.feature-section-heading h2 { margin: 0 0 13px; font-size: 25px; line-height: 1.5; }
.feature-section-heading > p { margin: 0; color: #9dabc0; font-size: 12px; line-height: 1.9; }
.feature-section-emblem { display: flex; align-items: center; justify-content: center; width: 76px; height: 76px; margin-top: 25px; border: 1px solid #ffffff18; border-radius: 20px; background: #ffffff03; color: var(--feature-accent); transform: rotate(-5deg); }
.feature-section-emblem .feature-icon { width: 40px; height: 40px; transform: rotate(5deg); }
.feature-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 12px; margin: 0; padding: 0; list-style: none; }
.feature-list li { display: flex; align-items: flex-start; gap: 15px; min-width: 0; padding: 21px 19px; border: 1px solid #ffffff0e; background: #121b29; border-radius: 9px; }
.feature-list .feature-icon { color: var(--feature-accent); margin-top: 2px; }
.feature-list h3 { margin: 0; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.feature-list p { margin: 6px 0 0; color: #9eacc0; font-size: 12px; line-height: 1.8; }
.feature-list strong { color: var(--feature-accent); font-weight: 700; }
.feature-list .version-label { display: inline-block; margin-top: 8px; padding: 3px 7px; background: #c9aff212; border-radius: 4px; color: #c9bce6; font-size: 10px; }
.feature-finish { display: flex; align-items: center; gap: 22px; margin: 18px 0 45px; padding: 28px 30px; border: 1px solid #88baa825; border-radius: 12px; background: linear-gradient(110deg, #152826, #13202a); }
.feature-finish .feature-icon { width: 43px; height: 43px; color: #a0c6b9; }
.feature-finish h2 { margin: 0 0 6px; font-size: 21px; }
.feature-finish p { margin: 0; font-size: 12px; color: #afc0ca; }
.feature-finish a { margin-left: auto; color: #c9e5da; font-size: 12px; white-space: nowrap; }
.server-features a:focus-visible { outline: 2px solid #b7d6ff; outline-offset: 4px; }
.server-features .server-faq { padding: 32px 0 44px; border-top: 1px solid var(--line); }
.server-faq > h2 { font-size: clamp(21px, 2.3vw, 28px); margin: 0 0 24px; }
.server-faq-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.server-faq-list article { padding: 24px; background: var(--balanced-panel); border: 1px solid var(--balanced-border); border-radius: 12px; }
.server-faq-list h3 { margin: 0 0 13px; font-size: 16px; }
.server-faq-list p { margin: 0; font-size: 13px; line-height: 1.95; }
.server-faq-list a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.server-faq-english { max-width: 90ch; margin: 22px 0 0; font-size: 12px; line-height: 1.8; }
@media (max-width: 900px) {
  .server-faq-list { grid-template-columns: 1fr; gap: 12px; }
}
@media (max-width: 1050px) {
  .server-features .feature-section { grid-template-columns: 180px minmax(0, 1fr); gap: 25px; }
  .feature-list li { gap: 12px; padding: 17px 14px; }
  .feature-list h3 { font-size: 13px; }
  .feature-section-heading h2 { font-size: 22px; }
}
@media (max-width: 760px) {
  .server-rates { gap: 10px; }
  .rate-card { padding: 20px 15px; }
  .rate-title { align-items: flex-start; flex-direction: column; gap: 10px; }
  .rate-title h2 { font-size: 12px; }
  .rate-value { font-size: 45px; }
  .rate-value span { font-size: 25px; }
  .rate-card p { font-size: 10px; line-height: 1.8; }
  .rate-watermark { right: -14px; bottom: 15px; }
  .server-features .feature-section { grid-template-columns: 1fr; gap: 20px; padding: 29px 0; }
  .feature-section-heading { position: relative; padding-right: 80px; min-height: 72px; }
  .feature-section-heading > span { margin-bottom: 7px; }
  .feature-section-heading h2 { margin-bottom: 5px; }
  .feature-section-emblem { position: absolute; right: 5px; top: 0; width: 58px; height: 58px; margin: 0; border-radius: 15px; }
  .feature-section-emblem .feature-icon { width: 31px; height: 31px; }
  .feature-finish { flex-wrap: wrap; padding: 24px; gap: 18px; }
  .feature-finish h2 { font-size: 18px; }
  .feature-finish a { margin-left: 61px; }
}
@media (max-width: 480px) {
  .server-rates { gap: 7px; }
  .rate-card { border-radius: 9px; padding: 16px 11px; container-type: inline-size; }
  .rate-title h2 { font-size: 12px; }
  .rate-title .feature-icon { width: 23px; height: 23px; }
  .rate-value { font-size: 40px; }
  .rate-value span { font-size: clamp(10px, 18cqw, 22px); }
  .rate-card p { font-size: 11px; }
  .feature-list { grid-template-columns: 1fr; gap: 9px; }
  .feature-list li { padding: 18px; gap: 16px; }
  .feature-list h3 { font-size: 14px; }
  .features-contents { gap: 7px; }
  .features-contents a { font-size: 11px; padding: 9px 12px; }
}
