/* Original-site polish. The hero is protected; only its country row may wrap. */
.hero-locations .flag-stack { flex-wrap:wrap; justify-content:center; }
.hero-locations { flex-wrap:wrap; }

/* Color follows the service, not the position of a card in a list. */
#shop { --service-accent:#dfbdff; --service-ink:#321444; --service-ground:#352044; --service-line:#9870b7; }
#shop [data-category=gaming],#catalog-panel[aria-labelledby=tab-gaming] { --service-accent:#dfbdff; --service-ink:#321444; --service-ground:#352044; --service-line:#9870b7; }
#shop [data-category=dns],#catalog-panel[aria-labelledby=tab-dns] { --service-accent:#a3d8ff; --service-ink:#12324a; --service-ground:#182e42; --service-line:#568dad; }
#shop [data-category=browsing],#catalog-panel[aria-labelledby=tab-browsing] { --service-accent:#82e7e3; --service-ink:#103936; --service-ground:#153431; --service-line:#528d89; }
#shop [data-category=open-browsing],#catalog-panel[aria-labelledby=tab-open-browsing] { --service-accent:#ffd0e3; --service-ink:#491d32; --service-ground:#3c1d31; --service-line:#af7894; }
#shop .category-tabs button { color:var(--service-accent); transition:background 180ms var(--motion-out),border-color 180ms var(--motion-out),color 180ms var(--motion-out); }
#shop .category-tabs button[aria-selected=true] { color:var(--service-accent); background:var(--service-ground); border-color:var(--service-line); box-shadow:none; }
#shop .category-tabs button:hover { color:var(--service-accent); background:var(--service-ground); }
#shop .category-tabs button[aria-selected=true] .icon { color:inherit; }
#shop .category-tabs small { color:inherit; opacity:1; }
#catalog-panel .plan-card:not(.featured)>.button { color:var(--service-ink); background:var(--service-accent); border-color:var(--service-accent); }
#catalog-panel .plan-card:not(.featured)>.button:hover { background:var(--service-accent); filter:brightness(1.08); }
#catalog-panel .plan-card .plan-title-row .icon,#catalog-panel .plan-card .plan-features .icon { color:var(--service-accent); }
#catalog-panel .plan-card:not(.featured) { border-color:var(--service-line); }
#catalog-panel .plan-card::after { box-shadow:inset 0 0 0 1px var(--service-accent); }
#catalog-panel .plan-card>.button { white-space:normal; }
#catalog-panel .plan-card .purchase-coins { margin-block:12px 0; font-variant-numeric:tabular-nums; }
#catalog-panel .plan-card .plan-price { flex-wrap:wrap; }
#catalog-panel .catalog-intro { gap:12px; line-height:1.9; }
#catalog-panel .catalog-intro>span { max-width:100%; }
#catalog-panel .trial-entry { margin-block-end:26px; }
.trial-panel .trial-content .form-error { color:#ffd1da; line-height:1.9; overflow-wrap:anywhere; }
.trial-panel .trial-content .form-error:not(:empty) { padding-top:12px; }

/* A clearer reading rhythm, using the same native links and disclosures. */
.guide-section .steps { row-gap:30px; }
.guide-section .steps b { line-height:1.8; }
.guide-section .steps p { margin-top:8px; max-width:52ch; }
.guide-section .steps li:nth-child(2)::before { color:#82e7e3; border-color:#528d89; }
.guide-section .steps li:nth-child(3)::before { color:#ffda88; border-color:#a88444; }
.faq-list summary { padding-inline:14px; border-radius:10px; transition:background 180ms var(--motion-out),color 180ms var(--motion-out); }
.faq-list summary:hover { background:#22162e; }
.faq-list details[open] summary { color:#e2c2ff; background:#2c1b3b; }
.faq-list details>p { padding-inline:14px; line-height:1.95; }
.search-guide-links a { border-color:#614677; transition:background 180ms var(--motion-out),border-color 180ms var(--motion-out); }
.search-guide-links a:hover { background:#291b38; border-color:#ab81ca; }
.search-guide-links a:focus-visible { outline:2px solid var(--eagle-focus); outline-offset:4px; }

/* Account, coins and tickets retain their established functional colors. */
.account-open .account-primary-nav [aria-current=page] { font-weight:900; box-shadow:inset 0 -2px 0 #dfbdff; }
.account-open .account-primary-nav [data-account-page=coins][aria-current=page] { box-shadow:inset 0 -2px 0 var(--eagle-gold); }
.account-open .owned-header { align-items:flex-start; }
.account-open .owned-card .status { white-space:nowrap; }
.account-open .owned-header p,.account-open .owned-expiry { line-height:1.9; }
.account-open .owned-secondary-actions { padding-top:12px; margin-top:20px; }
.account-open .owned-secondary-actions>a:hover,.account-open .owned-details>summary:hover { text-decoration:underline; text-underline-offset:5px; }
.account-open .owned-files>summary,.account-open .owned-details>summary { transition:background 180ms var(--motion-out),color 180ms var(--motion-out); }
.account-open .owned-files>summary::after,.account-open .owned-details>summary::after { transition:transform 180ms var(--motion-out); }
.account-open .website-support .account-title-row h2 { color:var(--eagle-green); }
.account-open .website-support .support-ticket { transition:background 180ms var(--motion-out),border-color 180ms var(--motion-out); }
.account-open .website-support .support-ticket:focus-visible { outline:2px solid var(--eagle-focus); outline-offset:4px; }
.account-open .website-support .support-state { font-weight:700; }
.account-open .website-support .support-from-user { margin-inline-start:18px; }
.account-open .website-support .support-message:not(.support-from-user) { margin-inline-end:18px; }
.account-open .website-support .support-message p { line-height:1.95; }
.account-open .coins-account .coin-balance strong { font-size:clamp(30px,5vw,40px); }
.account-open .coins-account .coin-history { font-variant-numeric:tabular-nums; }
.account-open .coins-account .coin-invite input { overflow-wrap:anywhere; }
#shop :is(button,a,summary):focus-visible,.guide-section :is(button,a):focus-visible,.faq-list summary:focus-visible { outline:2px solid var(--eagle-focus); outline-offset:4px; }
#shop ::selection,.guide-section ::selection,.faq-section ::selection { color:#241331; background:#d7b2f2; }
.account-open :is(input,textarea,select) { caret-color:var(--eagle-focus); }
.account-open :is(time,progress),#shop .plan-price { font-variant-numeric:tabular-nums; }

/* Short feedback outside the protected hero; no new ambient animations. */
@media(hover:hover) and (pointer:fine) {
 #catalog-panel .plan-card:hover { transform:translateY(-3px); border-color:var(--service-accent); }
 #shop .button:hover:not(:disabled),.account-open .button:hover:not(:disabled) { transform:translateY(-1px); }
 #catalog-panel .plan-card>.button:hover::after { animation-duration:360ms; }
}
@media(max-width:760px) {
 #shop .category-tabs button { min-height:76px; padding-inline:8px; }
 #shop .category-tabs button>span:last-child { font-size:14px; }
 #catalog-panel .catalog-intro { font-size:13px; flex-wrap:wrap; }
 .faq-list summary { padding-inline:10px; }
 .faq-list details>p { padding-inline:10px; }
 .account-open .website-support .support-message { margin-inline:0; }
}
@media(max-width:359px) {
 #shop .category-tabs button>span:last-child { font-size:13px; }
 #catalog-panel .plan-card { column-gap:12px; }
 #catalog-panel .plan-card>.button { padding-inline:7px; }
 .account-open .website-support .account-title-row .button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
 #shop .plan-card,#shop :is(button,a),.account-open :is(button,a,summary),.faq-list summary,.search-guide-links a { transition:none; }
 #catalog-panel .plan-card:hover,#shop .button:hover:not(:disabled),.account-open .button:hover:not(:disabled) { transform:none; }
}
