/* Reference layout: wide location panel, three visual cards, full-width calculator. */
body.product-pages .product-benefits>h2 {font-size:clamp(34px,4.3vw,56px);max-width:780px}
body.product-pages .product-benefit-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body.product-pages .product-benefit-grid .product-picture-card {
  position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:end;
  min-height:420px;padding:28px;background:#0e1013;border:1px solid #ffffff0c;border-radius:27px;
}
body.product-pages .product-card-picture {
  position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;
  object-position:center top;filter:brightness(.88);transform:scale(1);transition:transform .55s cubic-bezier(.2,.6,.2,1),filter .55s ease;
}
.product-picture-card::after {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0b0c0efc 2%,#0b0c0ee8 22%,#0b0c0e00 77%);pointer-events:none}
body.product-pages .product-card-copy {width:100%;color:#fff}
body.product-pages .product-card-copy h3 {margin:0 0 10px;font-size:24px;color:#fff}
body.product-pages .product-card-copy p {margin:0 0 15px;font-size:14px;color:#c3c7cb;max-width:410px}
body.product-pages .product-card-copy a {display:inline-block;font-size:12px;margin-top:13px}
body.product-pages .product-whitelist-card .product-card-picture {width:100%;left:0;object-position:78% top}
body.product-pages .product-benefit-grid .product-location-banner {grid-column:1/-1;align-items:stretch;min-height:380px;padding:32px}
body.product-pages .product-location-banner .product-card-picture {object-fit:cover;object-position:center 48%;filter:brightness(.95)}
.product-location-banner::after {background:linear-gradient(90deg,#090b0e 0%,#090b0ef2 25%,#090b0e30 68%,transparent)}
body.product-pages .product-location-banner .product-card-copy {display:flex;flex-direction:column;align-items:start;max-width:48%}
body.product-pages .product-location-banner h3 {font-size:clamp(36px,4.2vw,56px);line-height:1.05;margin-bottom:12px}
body.product-pages .product-location-banner p {max-width:340px;font-size:14px}
body.product-pages .product-location-banner .product-locations {margin-top:auto;padding-top:20px;gap:7px;max-width:430px}
body.product-pages .product-location {
  background:#fff;color:#111;border:0;border-radius:99px;gap:8px;padding:6px 12px 6px 6px;
  font-size:12px;font-weight:750;box-shadow:0 2px 0 #ffffff38;
}
body.product-pages .product-location:nth-child(2n) {transform:rotate(-2deg)}
body.product-pages .product-location:nth-child(3n) {transform:rotate(1.5deg)}
body.product-pages .product-location .product-flag {width:29px;height:29px;border-radius:50%;display:block;flex:none;box-shadow:inset 0 0 0 1px #0001;background:#aaa}
.product-flag-nl {background:linear-gradient(#ae1c28 33%,#fff 33% 66%,#21468b 66%)!important}
.product-flag-de {background:linear-gradient(#121212 33%,#d00 33% 66%,#ffce00 66%)!important}
.product-flag-se {background:linear-gradient(90deg,transparent 31%,#fecc00 31% 46%,transparent 46%),linear-gradient(transparent 43%,#fecc00 43% 59%,transparent 59%),#006aa7!important}
.product-flag-ru {background:linear-gradient(#fff 33%,#0039a6 33% 66%,#d52b1e 66%)!important}
.product-flag-us {background:repeating-linear-gradient(#b22234 0 3px,#fff 3px 6px)!important}
.product-flag-fr {background:linear-gradient(90deg,#0055a4 33%,#fff 33% 66%,#ef4135 66%)!important}
.product-flag-ee {background:linear-gradient(#4891d9 33%,#111 33% 66%,#fff 66%)!important}
.product-flag-pl {background:linear-gradient(#fff 50%,#dc143c 50%)!important}
.product-flag-ch {background:linear-gradient(90deg,transparent 38%,#fff 38% 62%,transparent 62%) center/65% 65% no-repeat,linear-gradient(transparent 38%,#fff 38% 62%,transparent 62%) center/65% 65% no-repeat,#d52b1e!important}
.product-flag-cz {background:linear-gradient(135deg,#11457e 34%,transparent 34%),linear-gradient(#fff 50%,#d7141a 50%)!important}
.product-flag-mc {background:linear-gradient(#ce1126 50%,#fff 50%)!important}
.product-flag-be {background:linear-gradient(90deg,#111 33%,#fae042 33% 66%,#ed2939 66%)!important}
.product-flag-gb {background:linear-gradient(90deg,transparent 40%,#fff 40% 60%,transparent 60%),linear-gradient(transparent 40%,#c8102e 40% 60%,transparent 60%),#012169!important}
.product-flag-at {background:linear-gradient(#ed2939 33%,#fff 33% 66%,#ed2939 66%)!important}
.product-flag-it {background:linear-gradient(90deg,#009246 33%,#fff 33% 66%,#ce2b37 66%)!important}
.product-flag-ae {background:linear-gradient(90deg,#f00 26%,transparent 26%),linear-gradient(#009a49 33%,#fff 33% 66%,#111 66%)!important}
body.product-pages .product-more-locations {width:auto;background:none;border:0;margin:0}
body.product-pages .product-more-locations summary {color:#111;background:#fff;font-size:12px;font-weight:750;border:0;border-radius:99px;min-height:41px;padding:11px 15px}
body.product-pages .product-more-locations>div {display:flex;flex-wrap:wrap;gap:7px;padding-top:10px}
body.product-pages .product-feature-tags span {background:#ffffff09;border-color:#ffffff18;color:#d7d9db}
body.product-pages .product-card-copy .product-client-icons {margin-top:16px}
@media(hover:hover) and (pointer:fine) {
  body.product-pages .product-picture-card:hover .product-card-picture {transform:scale(1.045);filter:brightness(1.13)}
  body.product-pages .product-location:hover {transform:scale(1.06);color:#111}
}
body.product-pages .product-picture-card:focus-within .product-card-picture {transform:scale(1.035);filter:brightness(1.13)}
body.product-pages .product-hero-art {object-position:70% 48%}
body.product-pages .product-brand-mark {object-position:75% center}
body.product-pages .product-home-plans {display:block;padding-top:24px}
body.product-pages .product-plan-intro {margin-bottom:30px}
body.product-pages .product-plan-intro h2 {font-size:clamp(34px,4vw,52px);margin-bottom:14px}
body.product-pages .product-plan-intro p {font-size:15px;max-width:530px}
body.product-pages .product-home-plans .purchase,
body.product-pages .product-pricing-layout .purchase {
  padding:16px;background:#151714;border:1px solid #ffffff10;border-radius:30px;
}
body.product-pages :is(.product-home-plans,.product-pricing-layout) #purchase {
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px;align-items:stretch;
}
.product-purchase-settings,.product-purchase-summary {min-width:0}
body.product-pages .product-purchase-settings {display:grid;gap:10px}
body.product-pages .product-purchase-settings .key-target {font-size:12px;margin-bottom:5px}
body.product-pages .product-setting-panel,
body.product-pages .purchase .whitelist-option {
  background:#10120f;border:1px solid #ffffff12;border-radius:24px;padding:18px 16px;margin:0;
}
body.product-pages #plans {position:relative;padding-top:42px}
body.product-pages #plans legend {position:absolute;top:17px;left:16px;padding:0;color:#9ca397;font-size:12px}
html.ox-redesign body.product-pages #terms.product-wheel {--wheel-item:76px;gap:16px;padding-top:4px;padding-bottom:6px;mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent)}
body.product-pages #terms.product-wheel label {opacity:.4;transition:opacity .2s ease}
body.product-pages #terms.product-wheel label.product-wheel-selected {opacity:1}
body.product-pages #terms.product-wheel label>span {
  display:flex;flex-wrap:wrap;justify-content:center;align-content:center;align-items:baseline;
  gap:3px;height:88px;min-height:88px;padding:20px 2px 5px;border:1px solid transparent;background:none;box-shadow:none;color:var(--text);
}
body.product-pages #terms.product-wheel input:checked+span {background:none;color:var(--text);border-color:transparent}
body.product-pages #terms.product-wheel label em {position:absolute;top:4px;left:0;right:0;text-align:center;font-size:11px;font-style:normal;font-weight:750;color:var(--brand)}
body.product-pages #terms.product-wheel strong {font-size:30px;line-height:1.1}
body.product-pages #terms.product-wheel small,
body.product-pages #terms.product-wheel input:checked+span small {font-size:11px;display:inline;color:#a2a99b}
body.product-pages #terms.product-wheel label>span small {font-size:0}
body.product-pages #terms.product-wheel input:checked+span small {font-size:0}
body.product-pages #terms.product-wheel label>span small::after {content:"мес";font-size:11px}
body.product-pages .product-device-setting .option {margin:0 0 12px;min-height:25px;font-size:12px;color:#a2a99b}
body.product-pages #device-count {font-size:26px;color:#fff}
body.product-pages .purchase #devices {
  appearance:none;display:block;width:100%;height:8px;min-height:8px;margin:19px 0;border-radius:99px;
  background:linear-gradient(90deg,var(--accent) var(--range-fill,0%),#282c25 var(--range-fill,0%));cursor:pointer;
}
body.product-pages #devices::-webkit-slider-thumb {appearance:none;width:30px;height:30px;background:#fff;border:0;border-radius:50%;box-shadow:0 3px 8px #0007}
body.product-pages #devices::-webkit-slider-runnable-track {height:8px;border-radius:99px;background:linear-gradient(90deg,var(--accent) var(--range-fill,0%),#282c25 var(--range-fill,0%))}
body.product-pages #devices::-webkit-slider-thumb {margin-top:-11px}
body.product-pages #devices::-moz-range-track {height:8px;border-radius:99px;background:linear-gradient(90deg,var(--accent) var(--range-fill,0%),#282c25 var(--range-fill,0%))}
body.product-pages #devices::-moz-range-thumb {width:30px;height:30px;background:#fff;border:0;border-radius:50%;box-shadow:0 3px 8px #0007}
body.product-pages .range-legend {align-items:center;display:flex;justify-content:space-between;gap:8px}
body.product-pages .range-legend small {font-size:10px;color:#8f9789}
body.product-pages #device-description {color:var(--brand);font-weight:700;text-align:center}
body.product-pages .purchase .whitelist-option {display:flex;gap:14px}
body.product-pages .purchase .whitelist-option>span {font-size:14px;color:#fff}
body.product-pages .purchase .whitelist-option small {font-size:11px;color:#a2a99b;max-width:310px}
body.product-pages .product-purchase-summary {display:flex;flex-direction:column;justify-content:center;padding:30px 8px 20px}
body.product-pages .product-purchase-summary .total {order:0;display:block;margin:0;padding:0;border:0}
body.product-pages .product-purchase-summary .total>span {display:none}
body.product-pages .product-purchase-summary #total {font-size:clamp(36px,3.6vw,48px);line-height:1.15;color:#fff}
body.product-pages .product-purchase-summary .price-breakdown {order:1;justify-content:start;gap:10px;font-size:12px;margin:8px 0 0;min-height:0}
body.product-pages .product-monthly-price {order:2;font-size:13px;color:#b9c0b2;margin:10px 0 26px}
body.product-pages .product-purchase-summary #buy {order:3;min-height:56px;font-size:15px}
body.product-pages .product-purchase-summary .promo-window {order:4;margin-top:15px;border:0;text-align:center}
body.product-pages .product-purchase-summary .promo-window summary {color:var(--brand);font-weight:750}
body.product-pages .product-purchase-summary .promo-window label {text-align:left}
body.product-pages .product-pricing-layout {display:block}
body.product-pages .product-pricing-layout>.product-postcard {display:none}
body.product-pages[data-page=home] .key-target {display:none}
html.ox-redesign[data-theme=light] body.product-pages .product-home-plans .purchase,
html.ox-redesign[data-theme=light] body.product-pages .product-pricing-layout .purchase {background:var(--surface);border-color:var(--border)}
html.ox-redesign[data-theme=light] body.product-pages :is(.product-setting-panel,.purchase .whitelist-option) {background:var(--surface-2);border-color:var(--border)}
html.ox-redesign[data-theme=light] body.product-pages :is(#device-count,.product-purchase-summary #total,.purchase .whitelist-option>span) {color:var(--text)}
@media(max-width:800px) {
  body.product-pages .product-benefit-grid {gap:10px}
  body.product-pages .product-benefit-grid .product-picture-card {padding:20px;min-height:380px}
  body.product-pages .product-card-copy h3 {font-size:21px}
  body.product-pages .product-card-copy p {font-size:13px}
}
@media(max-width:670px) {
  body.product-pages .product-benefit-grid {grid-template-columns:1fr}
  body.product-pages .product-benefit-grid .product-location-banner {min-height:460px;padding:24px 20px}
  body.product-pages .product-location-banner .product-card-copy {max-width:100%;display:block}
  body.product-pages .product-location-banner h3 {font-size:38px}
  body.product-pages .product-location-banner p {max-width:270px;font-size:13px}
  body.product-pages .product-location-banner .product-card-picture {object-position:76% bottom;object-fit:cover}
  .product-location-banner::after {background:linear-gradient(180deg,#090b0ef2 0%,#090b0ece 22%,#090b0e15 67%,#090b0eaa 100%)}
  body.product-pages .product-location-banner .product-locations {padding-top:175px;gap:7px}
  body.product-pages .product-location {font-size:11px;padding:5px 9px 5px 5px}
  body.product-pages .product-location .product-flag {width:25px;height:25px}
  body.product-pages .product-benefit-grid .product-picture-card:not(.product-location-banner) {min-height:420px;padding:26px}
  body.product-pages .product-card-copy h3 {font-size:25px}
  body.product-pages .product-card-copy p {font-size:14px}
  body.product-pages .product-home-plans .purchase,
  body.product-pages .product-pricing-layout .purchase {padding:11px;border-radius:25px}
  body.product-pages :is(.product-home-plans,.product-pricing-layout) #purchase {grid-template-columns:1fr;gap:0}
  body.product-pages .product-plan-intro h2 {font-size:34px}
  body.product-pages .product-purchase-summary {padding:27px 10px 10px}
  body.product-pages #plans {padding-inline:10px}
  body.product-pages .product-setting-panel,body.product-pages .purchase .whitelist-option {padding:16px 13px}
  body.product-pages .product-purchase-summary #total {font-size:42px}
  body.product-pages .product-purchase-summary .promo-window {margin-bottom:0}
}
@media(prefers-reduced-motion:reduce) {
  body.product-pages .product-card-picture {transition:none!important;transform:none!important}
}
/* Preserve both mascots in the hero, while the feature artwork keeps the brand marks. */
body.product-pages .product-hero-art {object-position:58% 40%}
body.product-pages.product-cry .product-hero-art {object-position:78% 42%}
body.product-pages .site-header .brand-logo {gap:12px}
body.product-pages .site-header .product-brand-mark {width:60px;height:60px;object-fit:contain;object-position:center;border-radius:0;flex:none}
body.product-pages.product-aid .site-header .product-brand-mark {
  padding:0;transform:scale(1.35);filter:brightness(0) saturate(100%) invert(90%) sepia(52%) saturate(1200%) hue-rotate(105deg)
    drop-shadow(0 0 3px #23f6ed) drop-shadow(0 0 9px #13ddd29c);
}
body.product-pages.product-cry .site-header .product-brand-mark {width:58px;height:66px;padding:0;filter:drop-shadow(0 0 7px #ff9a3250)}
body.product-pages .site-header .header-inner {min-height:88px}
.product-flag-lv {background:linear-gradient(#9e1b34 40%,#fff 40% 60%,#9e1b34 60%)!important}
.product-flag-lt {background:linear-gradient(#fdb913 33%,#006a44 33% 66%,#c1272d 66%)!important}
.product-flag-md {background:linear-gradient(90deg,#0046ae 33%,#ffd200 33% 66%,#cc092f 66%)!important}
.product-flag-kz {background:radial-gradient(circle,#ffcf25 0 18%,transparent 20%),#00afca!important}
.product-flag-tr {background:radial-gradient(circle at 57% 47%,#e30a17 0 24%,transparent 25%),radial-gradient(circle at 43% 48%,#fff 0 29%,transparent 30%),#e30a17!important}
html.ox-redesign body.product-pages #terms.product-wheel {cursor:grab;user-select:none;-webkit-user-select:none;perspective:500px}
body.product-pages #terms.product-wheel input {cursor:grab}
html.ox-redesign body.product-pages #terms.product-wheel.product-wheel-dragging {cursor:grabbing;scroll-snap-type:none}
body.product-pages #terms.product-wheel.product-wheel-dragging input {cursor:grabbing}
body.product-pages #terms.product-wheel label {transition:opacity .18s ease,transform .18s ease}
body.product-pages #terms.product-wheel label:not(.product-wheel-selected) {transform:scale(.86)}
body.product-pages #terms.product-wheel label.product-wheel-selected {transform:scale(1.05)}
body.product-pages #terms.product-wheel label.product-wheel-selected>span {
  border-color:color-mix(in srgb,var(--accent) 50%,transparent);border-radius:15px;
  background:color-mix(in srgb,var(--accent) 6%,transparent);
  box-shadow:inset 0 -3px var(--accent),0 5px 22px #0004;
}
body.product-pages #terms.product-wheel .product-wheel-selected strong {color:#fff;font-weight:900}
body.product-pages #terms.product-wheel .product-wheel-selected small::after {color:var(--text)}
body.product-pages #terms.product-wheel .product-wheel-selected em {color:var(--accent)}
@media(max-width:670px) {
  body.product-pages .site-header .header-inner {min-height:78px;gap:8px}
  body.product-pages .site-header .brand-logo {gap:7px;font-size:16px}
  body.product-pages .site-header .product-brand-mark {width:48px;height:48px}
  body.product-pages.product-cry .site-header .product-brand-mark {width:46px;height:57px}
  body.product-pages[data-page=home] .header-actions .product-bot-link {display:none}
  body.product-pages .product-hero-art {object-position:65% 32%}
  body.product-pages.product-cry .product-hero-art {object-position:75% 38%}
}
@media(prefers-reduced-motion:reduce) {body.product-pages #terms.product-wheel label {transition:none}}
/* A fixed selection window lets the months read as a physical dial. */
body.product-pages .product-term-picker {position:relative;isolation:isolate}
body.product-pages .product-term-picker:has(.product-wheel)::before {
  content:"";position:absolute;inset:0 5% auto;height:6px;pointer-events:none;z-index:-1;opacity:.7;
  background:repeating-linear-gradient(90deg,var(--border-strong) 0 1px,transparent 1px 12px);
  mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent);
}
body.product-pages .product-term-picker:has(.product-wheel)::after {
  content:"";position:absolute;top:8px;bottom:14px;left:50%;width:96px;transform:translateX(-50%);
  border:1px solid color-mix(in srgb,var(--accent) 65%,transparent);border-radius:19px;pointer-events:none;
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 55%);
  box-shadow:inset 0 -3px var(--accent),0 8px 24px #0004;z-index:2;
}
html.ox-redesign body.product-pages #terms.product-wheel {
  --wheel-item:96px;gap:12px;padding-top:10px;padding-bottom:15px;
  mask-image:linear-gradient(90deg,transparent,#000 23%,#000 77%,transparent);
}
body.product-pages #terms.product-wheel label>span {height:110px;min-height:110px;flex-direction:column;gap:0;padding:25px 0 8px}
body.product-pages #terms.product-wheel label.product-wheel-selected>span {
  border-color:transparent;border-radius:0;background:none;box-shadow:none;
}
body.product-pages #terms.product-wheel label.product-wheel-selected {transform:scale(1);opacity:1}
body.product-pages #terms.product-wheel label[data-wheel-side=left]:not(.product-wheel-selected) {transform:perspective(350px) rotateY(18deg) scale(.82);opacity:.45}
body.product-pages #terms.product-wheel label[data-wheel-side=right]:not(.product-wheel-selected) {transform:perspective(350px) rotateY(-18deg) scale(.82);opacity:.45}
body.product-pages #terms.product-wheel label[data-wheel-distance="2"]:not(.product-wheel-selected),
body.product-pages #terms.product-wheel label[data-wheel-distance="3"]:not(.product-wheel-selected) {opacity:.25}
body.product-pages #terms.product-wheel strong {font-size:34px;line-height:1.1}
body.product-pages #terms.product-wheel .product-wheel-selected strong {font-size:42px;color:var(--text);letter-spacing:-.05em}
body.product-pages #terms.product-wheel label em {top:8px;font-size:10px}
body.product-pages #terms.product-wheel .product-wheel-selected em {color:var(--accent);font-size:11px}
body.product-pages .product-term-hint {margin-top:0;text-align:center;font-size:10px;color:var(--text-muted);opacity:.75}
body.product-pages #plans:not(:has(.product-wheel)) .product-term-hint {display:none}
@media(max-width:670px) {
  body.product-pages.product-aid .product-location-banner .product-card-picture {object-position:84% center}
}
body.product-pages.product-cry .site-header .product-brand-mark {transform:rotate(-12deg);transform-origin:50% 55%;align-self:center}
body.product-pages.product-cry .product-location-banner .product-card-picture {object-position:center 30%}
body.product-pages.product-cry .product-whitelist-card .product-card-picture {object-position:50% top}
@media(max-width:670px) {
  body.product-pages.product-cry .product-location-banner .product-card-picture {object-position:right center}
}
