/* A restrained refresh of the original ADS identity. Base tokens and fonts stay in site.css. */
.refresh-icon { width: 19px; height: 19px; flex: 0 0 auto; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 12px 20px; background: var(--ivory); color: var(--bg); transform: translateY(-180%); }
.skip-link:focus { transform: none; }
.refresh-site .brand { font-size: 1rem; letter-spacing: 0; }
.refresh-site .brand-mark { border-radius: 50%; border-color: #a755484d; }
.refresh-site .nav { font-family: "ADS UI", "Segoe UI", sans-serif; font-size: .7rem; font-weight: 800; letter-spacing: .04em; }
.refresh-site .header-download { font-family: "ADS UI", "Segoe UI", sans-serif; font-size: .7rem; letter-spacing: .025em; box-shadow: none; }
.refresh-site .button { min-height: 3.15rem; padding: .95rem 1.35rem; gap: 12px; font-family: "ADS UI", "Segoe UI", sans-serif; font-size: .7rem; letter-spacing: .03em; box-shadow: none; border-radius: 3px; }
.refresh-site .button.primary { background: #951f28; border-color: #bd3742; }
.refresh-site .button.primary:hover { background: #b32935; border-color: #d54954; }
.refresh-site .button.secondary { background: #08090b88; border-color: #e3d0b82f; }
.refresh-site .button.secondary:hover { border-color: #d4aa5599; }
.refresh-site .button.secondary::after { display: none; }
.refresh-site .refresh-hero { min-height: 680px; padding-top: 137px; padding-bottom: 72px; }
.refresh-site .hero-media { inset: 55px 0 0 26%; }
.refresh-site .hero-media img { object-position: 66% 48%; }
.refresh-site .hero-media::after { background: linear-gradient(90deg,var(--bg),transparent 46%),linear-gradient(0deg,var(--bg),transparent 34%); }
.refresh-site .hero-content { width: min(65%, 740px); padding-top: 0; }
.refresh-site .hero h1 { font-size: clamp(4.3rem,6.6vw,6.2rem); line-height: 1.04; max-width: none; letter-spacing: -.045em; padding-bottom: 22px; margin-bottom: 23px; }
.refresh-site .hero h1::after { width: 76px; height: 2px; }
.refresh-site .topline { font-family: "ADS UI", "Segoe UI", sans-serif; font-size: .65rem; letter-spacing: .19em; color: var(--gold); margin-bottom: 20px; }
.refresh-site .tagline { font-size: 1.22rem; line-height: 1.45; margin-bottom: 13px; font-weight: 800; }
.refresh-site .hero .lead { font-size: .91rem; line-height: 1.8; max-width: 510px; }
.refresh-site .hero .actions { margin-top: 27px; }
.hero-platforms { display: flex; align-items: center; gap: 22px; margin-top: 30px; color: #c0b7af; font-size: .72rem; }
.hero-platforms > span { display: inline-flex; align-items: center; gap: 9px; }
.hero-platforms .refresh-icon { width: 15px; height: 15px; color: #d4aa55; }
.hero-platform-note { padding-left: 22px; border-left: 1px solid var(--line); color: #857e78; font-size: .65rem; }
.hero-scroll { position: absolute; right: var(--gutter); bottom: 28px; display: inline-flex; align-items: center; gap: 11px; color: #aaa198; font-size: .62rem; text-transform: uppercase; letter-spacing: .09em; }
.hero-scroll > span { width: 1px; height: 25px; background: linear-gradient(var(--red-strong),#ef3d4922); }
.refresh-site .refresh-catalog { padding-block: 51px 45px; overflow: visible; background: var(--bg); }
.refresh-site .catalog-section::before { display: none; }
.catalog-heading { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-bottom: 25px; }
.refresh-site .eyebrow { font-family: "ADS UI", "Segoe UI", sans-serif; font-size: .63rem; letter-spacing: .14em; font-weight: 800; color: var(--gold); margin-bottom: 11px; }
.catalog-heading h2 { font-size: clamp(1.4rem,2.15vw,2rem); line-height: 1.35; letter-spacing: -.03em; margin-bottom: 0; }
.platform-tabs { display: flex; align-items: center; padding: 4px; gap: 5px; border: 1px solid #e3d0b824; border-radius: 5px; background: #0b0b0e; flex-shrink: 0; }
.platform-tabs button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 43px; padding: 11px 19px; border: 1px solid transparent; background: transparent; color: #938c85; font-size: .75rem; border-radius: 2px; cursor: pointer; transition: color .2s,background .2s,border-color .2s; }
.platform-tabs button .refresh-icon { width: 17px; height: 17px; }
.platform-tabs button[aria-selected="true"] { color: var(--ivory); background: #4d181d; border-color: #95313b; }
.platform-tabs button:hover { color: var(--ivory); }
.radar-platform { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(0,1fr); gap: 37px; align-items: center; padding: 25px; border: 1px solid #e3d0b824; background: linear-gradient(135deg,#111014 0%,#08090b 60%); border-radius: 4px; }
.radar-gallery { min-width: 0; }
.gallery-stage { position: relative; display: grid; grid-template-rows: minmax(0,1fr); place-items: center; width: 100%; aspect-ratio: 1.6; overflow: hidden; padding: 25px; background: #080809 url("../images/ads/radar-stage-v1.png") center / cover; border: 1px solid #d4aa553d; border-radius: 2px; cursor: zoom-in; }
.gallery-stage > img { display: block; width: 100%; height: 100%; min-height: 0; max-height: 100%; object-fit: contain; background: #050608; border: 1px solid #786a565c; border-bottom: 7px solid #121215; border-radius: 3px; box-shadow: 0 15px 25px #000a; transition: filter .25s, transform .35s; }
.gallery-stage.phone-device > img { height: auto; aspect-ratio: 20/9; border: 7px solid #121215; border-radius: 16px; outline: 1px solid #5d5751; box-shadow: 0 18px 35px #000d; }
.gallery-stage:hover > img { filter: brightness(1.07); }
.gallery-expand { position: absolute; bottom: 13px; right: 13px; display: inline-flex; align-items: center; gap: 9px; padding: 9px 12px; background: #08090ce8; border: 1px solid #e3d0b837; border-radius: 3px; color: #e9dfd4; font-size: .62rem; }
.gallery-expand .refresh-icon { width: 15px; height: 15px; }
.gallery-toolbar { display: flex; align-items: center; gap: 15px; justify-content: space-between; margin-top: 15px; min-width: 0; }
.gallery-versions { display: flex; align-items: center; gap: 16px; margin-top: 8px; }
.gallery-versions[hidden] { display: none; }
.gallery-versions button { min-height: 36px; padding: 5px 0; background: transparent; border: 0; border-bottom: 1px solid transparent; color: #8a827b; font: inherit; font-size: .63rem; cursor: pointer; }
.gallery-versions button[aria-pressed="true"] { color: #e6c994; border-bottom-color: #d4aa5570; }
.gallery-versions button:hover { color: var(--ivory); }
.gallery-choices { display: flex; gap: 8px; min-width: 0; }
.gallery-choice { display: flex; align-items: center; gap: 9px; background: transparent; color: #ada298; font-size: .66rem; border: 1px solid #e3d0b820; border-radius: 2px; padding: 11px 13px; cursor: pointer; min-height: 42px; transition: background .2s,color .2s,border-color .2s; }
.gallery-choice > span { color: #7d7770; font-size: .58rem; }
.gallery-choice.is-active { background: #d4aa550b; color: #e6c994; border-color: #d4aa5566; }
.gallery-choice.is-active > span { color: var(--gold); }
.gallery-choice:hover { border-color: #d4aa5588; }
.gallery-count { white-space: nowrap; color: #8a827b; font-size: .6rem; font-variant-numeric: tabular-nums; }
.radar-product-copy .eyebrow { font-size: .6rem; letter-spacing: .08em; }
.radar-product-copy .eyebrow span { color: #98908a; font-weight: 400; margin-left: 4px; }
.radar-product-copy h3 { font-size: clamp(1.7rem,2.5vw,2.5rem); letter-spacing: -.04em; margin: 12px 0 17px; text-transform: none; }
.radar-product-lead { font-weight: 800; font-size: 1.05rem; line-height: 1.5; color: #e2d8cc; margin-bottom: 13px; }
.radar-product-copy > p:not(.eyebrow):not(.radar-product-lead) { font-size: .78rem; line-height: 1.8; color: var(--muted); margin-bottom: 16px; }
.radar-highlights { list-style: none; padding: 0; margin: 0 0 21px; display: grid; gap: 9px; color: #d3c6b8; font-size: .72rem; }
.radar-highlights li { display: flex; align-items: baseline; gap: 10px; }
.radar-highlights li::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: var(--gold); flex-shrink: 0; }
.radar-product-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.refresh-text-link { display: inline-flex; align-items: center; justify-content: flex-start; gap: 8px; color: #d7c4a6; font-size: .68rem; min-height: 42px; transition: color .2s; }
.refresh-text-link:hover { color: #f1d7a8; }
.refresh-text-link .refresh-icon { width: 16px; height: 16px; }
.platform-access { display: block; color: #8d847b; font-size: .61rem; margin-top: 11px; }
.refresh-upcoming { display: flex; gap: 22px; align-items: center; margin-top: 20px; min-height: 86px; padding: 14px 20px 14px 14px; border: 1px solid #e3d0b81c; background: #0b0b0e; border-radius: 4px; transition: border-color .2s; }
.refresh-upcoming:hover { border-color: #d4aa5555; }
.refresh-upcoming > img { width: 110px; height: 58px; object-fit: cover; border: 1px solid var(--line); }
.refresh-upcoming small { display: block; font-size: .56rem; color: #958e87; letter-spacing: .05em; margin-bottom: 6px; }
.refresh-upcoming strong { display: block; font-family: "ADS Display",Georgia,serif; font-size: .9rem; font-weight: 900; }
.upcoming-description { color: var(--muted); font-size: .73rem; padding-left: 25px; border-left: 1px solid var(--line); }
.upcoming-label { margin-left: auto; white-space: nowrap; color: #ba9b64; font-size: .59rem; text-transform: uppercase; letter-spacing: .06em; }
.refresh-upcoming > .refresh-icon { color: #847b70; width: 18px; height: 18px; }
.refresh-site .refresh-start { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; padding-block: 66px; border-top: 1px solid #e3d0b81a; }
.start-heading h2 { font-size: clamp(2rem,3.3vw,3.3rem); line-height: 1.13; margin-block: 20px; }
.start-heading > p:last-child { color: var(--muted); font-size: .8rem; line-height: 1.8; }
.refresh-steps { list-style: none; margin: 0; padding: 0; }
.refresh-steps li { display: flex; gap: 22px; padding: 18px 0; border-bottom: 1px solid #e3d0b821; }
.refresh-steps li:first-child { padding-top: 0; }
.refresh-steps li > span { font-family: "ADS Display",Georgia,serif; font-size: 1rem; color: #ab8955; padding-top: 2px; }
.refresh-steps h3 { font-family: "ADS UI","Segoe UI",sans-serif; text-transform: none; font-size: .9rem; letter-spacing: 0; line-height: 1.4; margin-bottom: 7px; font-weight: 800; }
.refresh-steps p { color: var(--muted); font-size: .77rem; line-height: 1.7; margin-bottom: 0; }
.setup-details { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 21px; }
.setup-details details { border: 1px solid #e3d0b826; border-radius: 2px; padding: 0 14px; align-self: start; }
.setup-details summary { display: flex; align-items: center; gap: 9px; font-size: .66rem; cursor: pointer; min-height: 48px; list-style: none; }
.setup-details summary::-webkit-details-marker { display: none; }
.setup-details summary::after { content: "+"; color: var(--gold); margin-left: auto; font-size: 1rem; }
.setup-details details[open] summary::after { content: "−"; }
.setup-details .refresh-icon { width: 14px; height: 14px; }
.setup-details details p { font-size: .73rem; color: var(--muted); line-height: 1.8; margin-block: 4px 10px; }
.setup-details details > a { margin-bottom: 10px; }
.refresh-site .refresh-reviews { padding-block: 56px; border-top: 1px solid #e3d0b81a; background: transparent; }
.refresh-reviews .section-head { margin-bottom: 22px; }
.refresh-reviews h2 { font-size: clamp(1.8rem,3vw,2.7rem); line-height: 1.2; }
.refresh-reviews .section-head > p:last-child { font-size: .8rem; }
.refresh-reviews .review-filter { font-family: "ADS UI","Segoe UI",sans-serif; font-size: .63rem; font-weight: 800; }
.refresh-reviews .reviews-viewport { margin-right: 0; mask-image: none; border: 1px solid #e3d0b822; border-radius: 2px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #7c6551 #101013; }
.refresh-reviews .reviews-track { padding: 0; gap: 12px; }
.refresh-reviews .reviews-track.is-marquee { animation: none; }
.refresh-reviews .review-card[aria-hidden="true"] { display: none; }
.refresh-reviews .review-card { border: 0; border-right: 1px solid #e3d0b822; }
.refresh-reviews .reviews-empty { text-align: center; margin: 0; padding: 38px 22px; font-size: .76rem; color: #a4998f; }
.refresh-site .refresh-support { display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: center; min-height: 250px; padding: 49px var(--gutter); border-block: 1px solid #e3d0b824; background: linear-gradient(90deg,#090609ed,#090609c7),url("../images/ads/mesh-type-1.png") center 60% / cover; }
.refresh-support h2 { font-size: clamp(1.8rem,3vw,2.8rem); line-height: 1.25; margin-bottom: 14px; }
.refresh-support p:not(.eyebrow) { font-size: .8rem; margin-bottom: 0; }
.refresh-support .actions { margin-top: 0; flex-wrap: nowrap; }
.refresh-site .refresh-support .discord-cta { background: #454fc5; border-color: #6b75de; }
.refresh-site .refresh-support .discord-cta:hover { background: #5865f2; }
.refresh-site .refresh-footer { min-height: 90px; padding-block: 25px; font-size: .65rem; }
.refresh-footer div { gap: 22px; }
.screenshot-dialog { position: fixed; inset: 0; width: min(1400px,95vw); max-width: 95vw; max-height: 94dvh; padding: 0; background: #08090c; color: var(--ivory); border: 1px solid #d4aa557a; border-radius: 5px; box-shadow: 0 30px 100px #000c; overflow: auto; }
.screenshot-dialog::backdrop { background: #020203ed; backdrop-filter: blur(8px); }
.dialog-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 11px 17px; border-bottom: 1px solid var(--line); }
.dialog-toolbar h2 { font-family: "ADS UI","Segoe UI",sans-serif; font-size: .75rem; letter-spacing: 0; font-weight: 800; margin: 0; text-transform: none; line-height: 1.5; }
.dialog-close { display: grid; place-items: center; flex-shrink: 0; background: #171619; color: var(--ivory); border: 1px solid var(--line); width: 40px; height: 40px; cursor: pointer; border-radius: 3px; }
.dialog-close svg { height: 19px; width: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.dialog-image-wrap { display: grid; place-items: center; background: #020304; }
.dialog-image-wrap img { display: block; width: 100%; max-height: calc(94dvh - 139px); min-height: 120px; object-fit: contain; }
.dialog-bottom { display: flex; align-items: center; justify-content: center; gap: 28px; padding: 10px; border-top: 1px solid var(--line); }
.dialog-bottom > button { display: grid; place-items: center; width: 42px; height: 40px; background: #151316; color: var(--ivory); border: 1px solid var(--line); border-radius: 3px; cursor: pointer; }
.dialog-bottom > button:first-child .refresh-icon { transform: rotate(180deg); }
.dialog-bottom > span { min-width: 52px; text-align: center; color: var(--muted); font-size: .72rem; font-variant-numeric: tabular-nums; }
body.image-viewer-open { overflow: hidden; }
.product-page .mobile-platform-note { padding: 13px 15px; border-left: 2px solid var(--gold); background: #100e12a8; color: var(--muted); font-size: .8rem; line-height: 1.7; margin-top: 20px; }
.product-page .mobile-platform-note a { color: #e0bd7e; text-decoration: underline; text-underline-offset: 3px; }
html:not(.has-js) .platform-tabs { display: none; }
html:not(.has-js) .radar-platform + .radar-platform { margin-top: 24px; }
@media (min-width: 821px) and (max-width: 1100px) {
  .refresh-site .brand { font-size: .85rem; gap: 10px; }
  .refresh-site .nav { gap: 18px; font-size: .62rem; }
  .refresh-site .site-header { gap: 22px; grid-template-columns: auto 1fr auto; }
  .refresh-site .header-actions { gap: 10px; }
  .radar-platform { grid-template-columns: 1.3fr 1fr; gap: 24px; padding: 20px; }
  .gallery-choice { padding: 10px 8px; gap: 5px; font-size: .59rem; }
  .gallery-count { display: none; }
  .radar-product-copy h3 { font-size: 1.8rem; }
  .radar-product-lead { font-size: .95rem; }
  .refresh-site .refresh-start { gap: 40px; }
}
@media (max-width: 820px) {
  .refresh-site .refresh-hero { min-height: 650px; padding-top: 126px; }
  .refresh-site .hero-media { inset: 70px -12% 0 15%; opacity: .75; }
  .refresh-site .hero-media::after { background: linear-gradient(90deg,var(--bg),#04050699 36%,transparent 85%),linear-gradient(0deg,var(--bg),transparent 50%); }
  .refresh-site .hero-content { width: 85%; }
  .refresh-site .hero h1 { font-size: clamp(3.6rem,8.8vw,5rem); }
  .refresh-site .catalog-heading { align-items: flex-start; flex-direction: column; gap: 20px; }
  .catalog-heading h2 { font-size: 1.75rem; }
  .radar-platform { grid-template-columns: 1fr; padding: 20px; gap: 27px; }
  .radar-product-copy h3 { font-size: 2rem; }
  .radar-product-lead br { display: none; }
  .radar-product-copy > p:not(.eyebrow):not(.radar-product-lead) { max-width: 600px; }
  .radar-highlights { display: flex; flex-wrap: wrap; gap: 12px 24px; }
  .upcoming-description { display: none; }
  .refresh-site .refresh-start { grid-template-columns: 1fr; gap: 28px; padding-block: 45px; }
  .start-heading h2 br { display: none; }
  .start-heading h2 { font-size: 2rem; margin-block: 16px; }
  .refresh-site .refresh-support { grid-template-columns: 1fr; min-height: auto; gap: 25px; padding-block: 40px; }
  .refresh-site .refresh-support .actions { grid-column: 1; }
}
@media (max-width: 560px) {
  .refresh-site { --gutter: 20px; }
  .refresh-site .brand { font-size: .78rem; }
  .refresh-site .brand span { display: none; }
  .refresh-site .brand-mark { width: 37px; height: 37px; }
  .refresh-site .header-download { min-width: auto; min-height: 42px; padding: 12px; font-size: .61rem; }
  .refresh-site .header-actions { gap: 10px; }
  .refresh-site .language a { min-width: 23px; }
  .refresh-site .refresh-hero { min-height: 614px; padding-top: 119px; padding-bottom: 55px; }
  .refresh-site .hero-content { width: 100%; }
  .refresh-site .hero-media { inset: 65px -16% 0 -23%; opacity: .55; }
  .refresh-site .hero-media img { object-position: 77% center; }
  .refresh-site .hero h1 { font-size: clamp(2.75rem,11.4vw,4rem); letter-spacing: -.055em; line-height: 1.15; margin-bottom: 23px; padding-bottom: 24px; }
  .refresh-site .topline { font-size: .59rem; margin-bottom: 22px; }
  .refresh-site .tagline { font-size: 1rem; max-width: 285px; line-height: 1.5; }
  .refresh-site .hero .lead { font-size: .78rem; line-height: 1.9; }
  .refresh-site .hero .lead br { display: none; }
  .refresh-site .hero .actions { gap: 10px; margin-top: 25px; }
  .refresh-site .button { min-height: 47px; width: auto; padding: 13px 15px; font-size: .63rem; }
  .refresh-site .hero .button { width: auto; }
  .hero-platforms { margin-top: 24px; font-size: .67rem; gap: 23px; }
  .hero-platforms .hero-platform-note { display: none; }
  .hero-scroll { display: none; }
  .refresh-site .refresh-catalog { padding-top: 32px; }
  .catalog-heading h2 { font-size: 1.4rem; line-height: 1.4; }
  .platform-tabs { width: 100%; }
  .platform-tabs button { flex: 1; font-size: .71rem; padding-inline: 12px; }
  .radar-platform { padding: 10px; gap: 25px; }
  .gallery-stage { aspect-ratio: 1.6; padding: 14px; }
  .gallery-stage.phone-device > img { border-width: 5px; border-radius: 10px; }
  .gallery-expand { bottom: 7px; right: 7px; padding: 7px; }
  .gallery-expand > span { display: none; }
  .gallery-choices { width: 100%; gap: 6px; }
  .gallery-choice { flex: 1; justify-content: center; padding: 10px 5px; gap: 6px; font-size: .57rem; }
  .gallery-choice > span { display: none; }
  .gallery-count { display: none; }
  .radar-product-copy { padding: 0 8px 10px; }
  .radar-product-copy h3 { font-size: 1.9rem; }
  .radar-product-lead { font-size: .96rem; }
  .radar-product-lead br { display: initial; }
  .radar-highlights { display: grid; gap: 10px; }
  .radar-product-actions { gap: 4px 13px; }
  .refresh-upcoming { gap: 12px; padding: 11px; }
  .refresh-upcoming > img { width: 63px; height: 48px; }
  .refresh-upcoming strong { font-size: .77rem; }
  .refresh-upcoming small { font-size: .47rem; }
  .upcoming-label { font-size: .5rem; letter-spacing: 0; }
  .refresh-upcoming > .refresh-icon { display: none; }
  .start-heading h2 { font-size: 1.8rem; }
  .refresh-steps li { gap: 18px; }
  .setup-details { grid-template-columns: 1fr; }
  .setup-details summary { font-size: .72rem; min-height: 51px; }
  .refresh-site .refresh-reviews { padding-block: 35px; }
  .refresh-reviews h2 { font-size: 1.65rem; }
  .refresh-reviews .review-filters { gap: 8px 18px; flex-wrap: wrap; }
  .refresh-reviews .review-filter { font-size: .57rem; }
  .refresh-reviews .reviews-empty { font-size: .7rem; padding: 28px 18px; }
  .refresh-support h2 { font-size: 1.65rem; }
  .refresh-site .refresh-footer { min-height: 104px; gap: 15px; }
  .refresh-footer div { flex-wrap: wrap; }
  .dialog-toolbar { padding: 9px; gap: 9px; }
  .dialog-toolbar h2 { font-size: .65rem; }
  .screenshot-dialog { max-height: 96dvh; width: 96vw; max-width: 96vw; }
  .dialog-image-wrap img { max-height: calc(96dvh - 137px); }
}
@media (prefers-reduced-motion: reduce) {
  .refresh-site *, .refresh-site *::before, .refresh-site *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
