/* Loaded only by the home and pricing pages. Shared article styles stay intact. */
.nordic-refresh {
  --bg: #0c1425;
  --bg-deep: #080f1e;
  --surface: #131f33;
  --surface-raised: #172740;
  --text-muted: #bdc8da;
  --amber: #ff646a;
  --gradient-amber: linear-gradient(110deg, #b91f35, #c9283f);
  --section-space: clamp(48px, 6vw, 80px);
  background: #0c1425;
  overflow-x: visible;
  font-size: 16px;
  line-height: 1.65;
}
.nordic-refresh .wrap { width: min(100%, 1240px); padding-inline: clamp(20px, 4vw, 48px); }
.nordic-refresh .skip-link { position: fixed; top: 8px; left: 16px; z-index: 200; padding: 12px 20px; background: white; color: #0c1425; border-radius: 8px; transform: translateY(-160%); }
.nordic-refresh .skip-link:focus { transform: none; }
.nordic-refresh .nav { background: #080f1ef2; }
.nordic-refresh .nav .wrap { height: 84px; }
.nordic-refresh .logo img { width: 280px; height: auto; }
.nordic-refresh .nav-links { gap: 25px; }
.nordic-refresh .nav-links a.active { color: white; text-decoration: underline; text-decoration-color: #ff646a; text-underline-offset: 10px; text-decoration-thickness: 2px; }
.nordic-refresh :is(.nav-cta,.btn-primary,.trial-banner-btn,.plan-cta,.btn-free-test) { border-radius: 10px; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-body); font-weight: 700; line-height: 1.35; padding: 14px 20px; color: white; box-shadow: none; }
.nordic-refresh :is(.nav-cta,.trial-banner-btn,.btn-free-test,.plan-card.featured .plan-cta) { background: #b91f35; border: 1px solid #e74b60; color: white; }
.nordic-refresh :is(.btn-primary,.plan-cta) { background: #1a2b45; border: 1px solid #55667f; }
.nordic-refresh :is(.nav-cta,.btn-primary,.trial-banner-btn,.plan-cta,.btn-free-test):hover { transform: none; background: #932036; color: white; box-shadow: none; }
.nordic-refresh .btn-free-test::before { display: none; }
.nordic-refresh .btn-secondary { border: 0; padding: 10px 0; color: #d7e2f5; flex-basis: 100%; font-size: .95rem; }
.nordic-refresh .hero { padding: 68px 0 0; background: linear-gradient(90deg, #081120f5 5%, #081120e0 48%, #0811209c), url('../assets/hero-bg.jpeg.jpeg') center / cover; }
.nordic-refresh .hero::before { display: none; }
.nordic-refresh .hero-inner { width: min(100%,1240px); max-width: 1240px; margin-inline: auto; display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); align-items: center; gap: 64px; padding-bottom: 48px; }
.nordic-refresh h1 { font-size: clamp(2.1rem, 3.6vw, 3.35rem); line-height: 1.14; letter-spacing: -.04em; }
.nordic-refresh h1 .accent { background: none; color: #ff7d83; }
.nordic-refresh .eyebrow { color: #e2e8f3; background: #17263a; border: 1px solid #445268; font-family: var(--font-body); text-transform: none; letter-spacing: .01em; padding: 8px 14px; }
.nordic-refresh .hero-sub { color: #d0d9e8; font-size: 1.05rem; line-height: 1.75; max-width: 57ch; margin-top: 24px; }
.nordic-refresh .hero-actions { gap: 12px; margin-top: 28px; }
.nordic-refresh .hero-trust { margin-top: 22px; font-family: var(--font-body); gap: 8px; }
.nordic-refresh .pill { background: #101e30; box-shadow: none; font-size: .8rem; }
.nordic-refresh .hero-panel { padding: 30px; background: #101e30ed; border: 1px solid #41526a; border-radius: 20px; box-shadow: 0 24px 60px #0004; }
.nordic-refresh .hero-panel h2 { font-size: 1.8rem; line-height: 1.25; text-wrap: initial; }
.nordic-refresh .hero-panel ol { list-style: none; margin-block: 24px; }
.nordic-refresh .hero-panel li { display: flex; gap: 16px; padding: 16px 0; border-bottom: 1px solid #334257; }
.nordic-refresh .hero-panel li > span { color: #ff8b92; font-size: .85rem; padding-top: 3px; }
.nordic-refresh .hero-panel li p { color: var(--text-muted); font-size: .9rem; margin-top: 3px; }
.nordic-refresh .hero-panel a { color: white; text-decoration: underline; text-underline-offset: 5px; }
.nordic-refresh .showcase-wrap { margin: 0; padding: 20px 0 28px; background: #08112099; }
.nordic-refresh .showcase-label { color: #c4cede; letter-spacing: .06em; }
.nordic-refresh .poster-card { width: 110px; height: 154px; flex-shrink: 0; }
.nordic-refresh .showcase-row { animation: nordic-showcase-left 79s linear infinite; gap: 14px; }
/* Each repeated set includes the gap before its first poster. Half the
   full track excludes half that gap, so include 7px for a seamless loop. */
@keyframes nordic-showcase-left {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 7px)); }
}
@media (hover: none) {
  .nordic-refresh .showcase-wrap:hover .showcase-row { animation-play-state: running; }
}
.nordic-refresh .section-head { text-align: left; max-width: none; margin-bottom: 32px; }
.nordic-refresh .section-head .section-sub { max-width: 64ch; }
.nordic-refresh .section-eyebrow { color: #ff858b; font-family: var(--font-body); font-weight: 700; font-size: .75rem; letter-spacing: .1em; }
.nordic-refresh h2 { line-height: 1.22; font-size: clamp(1.75rem,2.5vw,2.35rem); }
.nordic-refresh :is(.feature-card,.country-card,.device-card,.guide-card,.blog-card,.faq-item,.payments,.contact-box,.trial-banner,.plan-card) { backdrop-filter: none; box-shadow: none; border-color: #344258; }
.nordic-refresh :is(.feature-card,.country-card,.device-card,.blog-card) { background: #131f33; border-radius: 16px; }
.nordic-refresh :is(.feature-card,.country-card,.device-card,.guide-card,.blog-card):hover { transform: none; box-shadow: none; }
.nordic-refresh :is(#priser,#devices,#faq) { background: #101b2e; }
.nordic-refresh .page-hero { padding: 56px 0 36px; background: linear-gradient(130deg,#142540,#0c1425 75%); text-align: left; }
.nordic-refresh .page-hero h1 { max-width: 850px; }
.nordic-refresh .page-hero p { margin: 20px 0 0; max-width: 70ch; }
.nordic-refresh .page-hero .section-eyebrow { display: block; }
.nordic-refresh .page-pricing .section { padding-top: 44px; }
.nordic-refresh.page-pricing main > .section:first-of-type { padding-top: 36px; }
.nordic-refresh .trial-banner { background: #18283d; border: 1px solid #53647d; border-radius: 14px; padding: 24px; margin-bottom: 28px; gap: 24px; }
.nordic-refresh .trial-banner p { color: #c7d2e4; }
.nordic-refresh .trial-banner-text { min-width: 0; }
.nordic-refresh .trial-banner a:not(.trial-banner-btn) { text-decoration: underline; text-underline-offset: 3px; }
.nordic-refresh .pricing-caption { margin-bottom: 20px; color: #bdc8da; font-size: .9rem; }
.nordic-refresh .pricing-grid { gap: 16px; grid-template-columns: repeat(4,minmax(0,1fr)); }
.nordic-refresh .plan-card,.nordic-refresh .plan-card.featured { padding: 30px 22px 22px; border-radius: 16px; background: #142137; transform: none; grid-column: auto; border: 1px solid #44536b; box-shadow: none; }
.nordic-refresh .plan-card.featured { border: 2px solid #ff7d83; padding: 29px 21px 21px; background: #1b2940; }
.nordic-refresh .plan-card:hover,.nordic-refresh .plan-card.featured:hover { transform: none; box-shadow: none; }
.nordic-refresh .plan-badge { top: -12px; background: #ffd5d8; color: #641527; padding: 4px 12px; box-shadow: none; font-family: var(--font-body); }
.nordic-refresh .plan-card:not(.featured) .plan-badge { display: none; }
.nordic-refresh .plan-name { font-size: 1.3rem; }
.nordic-refresh .plan-desc { min-height: 100px; font-size: .9rem; line-height: 1.6; }
.nordic-refresh .plan-price { flex-wrap: wrap; font-family: var(--font-body); gap: 8px; margin-top: 20px; }
.nordic-refresh .plan-price .amount { font-size: 2.75rem; font-weight: 700; letter-spacing: -.04em; color: white; }
.nordic-refresh .plan-card.featured .plan-price .amount { color: white; }
.nordic-refresh .plan-price .period { font-size: .78rem; }
.nordic-refresh .plan-note { font-size: .85rem; margin-bottom: 8px; }
.nordic-refresh .plan-comparison { color: var(--text-muted); font-size: .78rem; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid #42516a; }
.nordic-refresh .plan-note strong { color: #fff; }
.nordic-refresh .plan-features { gap: 12px; }
.nordic-refresh .plan-features li { font-size: .87rem; }
.nordic-refresh .check { background: #2d3c50; color: #e2e9f5; }
.nordic-refresh .plan-microcopy span { font-family: var(--font-body); text-align: center; font-size: .75rem; }
.nordic-refresh .payments { margin-top: 28px; padding: 24px; }
.nordic-refresh .trust-bar { margin-top: 24px; }
.nordic-refresh .faq-list { max-width: 850px; margin: 0; }
.nordic-refresh .faq-item { background: #142137; }
.nordic-refresh .faq-item summary { padding: 22px 24px; font-size: 1rem; line-height: 1.5; }
.nordic-refresh .contact-box { background: linear-gradient(115deg,#1c2c45,#142137); padding: 40px; border-radius: 20px; }
.nordic-refresh .whatsapp-btn { border-radius: 10px; background: #25d366; color: #062514; box-shadow: none; }
.nordic-refresh .wa-float { width: 52px; height: 52px; bottom: 18px; right: 18px; box-shadow: 0 4px 18px #0006; animation: none; }
.nordic-refresh footer { background: #080f1e; }
.nordic-refresh .footer-bottom { flex-wrap: wrap; gap: 12px; }
@media(max-width:1100px) {
 .nordic-refresh .pricing-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
 .nordic-refresh .plan-desc { min-height: 58px; }
 .nordic-refresh .hero-inner { gap: 32px; }
 .nordic-refresh .nav-links { gap: 18px; }
 .nordic-refresh .logo img { width: 235px; }
}
@media(max-width:860px) {
 .nordic-refresh .nav .wrap { height: 76px; }
 .nordic-refresh .nav-links { top: 76px; background: #080f1e; }
 .nordic-refresh .nav-toggle { min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
 .nordic-refresh .hero-inner { grid-template-columns: 1fr; gap: 28px; }
 .nordic-refresh .hero { padding-top: 40px; }
 .nordic-refresh .hero-panel { padding: 24px; }
 .nordic-refresh .hero-panel h2 { font-size: 1.5rem; }
 .nordic-refresh .hero-panel ol { margin-block: 12px; }
 .nordic-refresh .hero-panel li { padding: 12px 0; }
 .nordic-refresh .page-hero { padding-top: 36px; }
}
@media(max-width:600px) {
 .nordic-refresh .logo img { width: 190px; }
 .nordic-refresh .nav-right { gap: 4px; }
 .nordic-refresh .nav-cta { font-size: .75rem; min-height: 44px; padding: 10px; }
 .nordic-refresh .pricing-grid { grid-template-columns: minmax(0,1fr); }
 .nordic-refresh .plan-desc { min-height: 0; }
 .nordic-refresh .plan-card,.nordic-refresh .plan-card.featured { padding: 28px 24px 24px; }
 .nordic-refresh .hero-actions > :is(.btn-primary,.btn-free-test) { width: 100%; }
 .nordic-refresh .hero-sub { font-size: 1rem; }
 .nordic-refresh .hero-trust { gap: 6px; }
 .nordic-refresh .pill { font-size: .72rem; padding: 6px 9px; }
 .nordic-refresh .trial-banner { flex-direction: column; align-items: stretch; padding: 20px; gap: 18px; }
 .nordic-refresh .trial-banner-btn { width: 100%; }
 .nordic-refresh .trial-icon { display: none; }
 .nordic-refresh .contact-box { padding: 28px 20px; }
 .nordic-refresh .whatsapp-btn { padding: 14px; width: 100%; font-size: .9rem; }
 .nordic-refresh .feature-grid,.nordic-refresh .country-grid,.nordic-refresh .blog-grid { grid-template-columns: minmax(0,1fr); }
 .nordic-refresh .device-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .nordic-refresh .device-card { padding: 20px 12px; }
 .nordic-refresh .section-head { margin-bottom: 24px; }
 .nordic-refresh .faq-item summary { padding: 18px; }
 .nordic-refresh .payments { padding: 20px 12px; }
 .nordic-refresh .payment-badges { gap: 8px; }
}
@media(max-width:370px) {
 .nordic-refresh .logo img { width: 160px; }
 .nordic-refresh .nav-cta { padding-inline: 8px; }
}
@media(prefers-reduced-motion:reduce) {
 .nordic-refresh *, .nordic-refresh *::before, .nordic-refresh *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
