
:root{
  --rw-blue:#1675b7;
  --rw-blue-dark:#105b8f;
  --rw-blue-soft:#eef6fc;
  --rw-bg:#f3f7fb;
  --rw-surface:#ffffff;
  --rw-text:#132235;
  --rw-muted:#637487;
  --rw-border:#d9e4ee;
  --rw-shadow:0 16px 40px rgba(15,23,42,.08);
  --rw-shadow-soft:0 8px 24px rgba(15,23,42,.06);
  --rw-radius:18px;
  --rw-radius-lg:24px;
  --rw-max:1380px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter", Arial, sans-serif;
  font-size:18px;
  line-height:1.6;
  color:var(--rw-text);
  background:
    radial-gradient(circle at top, rgba(22,117,183,.08), transparent 34%),
    linear-gradient(180deg, #f9fbfd 0%, #eef4f9 100%);
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:var(--rw-blue)}
a:hover{color:var(--rw-blue-dark)}
.outer{width:100%;padding:18px 14px 40px}
.site-shell{width:1380px;max-width:1380px;margin:0 auto}

/* Header */
.site-header{background:var(--rw-surface);border:1px solid var(--rw-border);border-radius:24px;box-shadow:var(--rw-shadow-soft);padding:18px 22px;margin-bottom:26px}
.header-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand-logo{display:flex;align-items:center}
.brand-logo img{width:auto;max-height:62px}
.brand-copy{min-width:0}
.brand-name{margin:0;font-family:"Outfit",sans-serif;font-size:28px;line-height:1;color:var(--rw-text);font-weight:700}
.brand-tag{margin:6px 0 0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--rw-muted)}
.header-cta-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;border-radius:12px;border:1px solid var(--rw-border);background:var(--rw-blue-soft);color:var(--rw-blue-dark);font-weight:700;white-space:nowrap}
.header-nav{border-top:1px solid #edf2f7;padding-top:14px}
.nav_main,.nav_main ul{list-style:none;margin:0;padding:0}
.nav_main{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.nav_main>li{position:relative;margin:0}
.nav_main>li>a{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 16px;border-radius:12px;border:1px solid var(--rw-border);background:#fff;color:var(--rw-text);font-family:"Outfit",sans-serif;font-size:16px;font-weight:500;transition:.2s ease}
.nav_main>li:hover>a,.nav_main>li:focus-within>a,.nav_main>li.current-menu-item>a,.nav_main>li.current-menu-ancestor>a,.nav_main>li.current_page_parent>a{background:var(--rw-blue-soft);border-color:#c9dceb;color:var(--rw-blue-dark);box-shadow:0 8px 18px rgba(15,23,42,.05)}
.nav_main>li.menu-item-has-children>a::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px;opacity:.75}
.nav_main>li.menu-item-has-children::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:14px;
}
.nav_main .sub-menu{
  display:block;
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  z-index:50;
  min-width:260px;
  padding:10px 0;
  background:#fff;
  border:1px solid var(--rw-border);
  border-radius:16px;
  box-shadow:0 18px 40px rgba(15,23,42,.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.nav_main>li:hover>.sub-menu,
.nav_main>li:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.nav_main .sub-menu li a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;color:var(--rw-text);font-size:15px;white-space:nowrap}
.nav_main .sub-menu li a:hover{background:#f7fbff}
.rw-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;line-height:1;letter-spacing:.08em;flex:0 0 auto}
.rw-badge-free{background:#f1f5f9;border:1px solid #dbe5ee;color:#617284}
.rw-badge-pro{background:#eef1ff;border:1px solid #d7defa;color:#5065a0}


.header-forecast-search{
  margin-top:18px;
  border-top:1px solid #edf2f7;
  padding-top:18px;
}
.rw-forecast-search-wrap{
  position:relative;
}
.rw-forecast-search-row{
  display:flex;
  gap:12px;
  align-items:stretch;
  flex-wrap:wrap;
}
.rw-forecast-search-box{
  position:relative;
  flex:1 1 420px;
}
#rwLocationInput{
  width:100%;
  height:58px;
  border-radius:16px;
  border:1px solid var(--rw-border);
  background:rgba(255,255,255,.95);
  color:var(--rw-text);
  padding:0 16px;
  font-size:16px;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
#rwLocationInput:focus{
  border-color:rgba(110,168,218,.65);
  box-shadow:0 0 0 3px rgba(110,168,218,.18);
}
.rw-forecast-search-btn{
  height:58px;
  border:0;
  border-radius:16px;
  padding:0 18px;
  font-size:15px;
  font-weight:540;
  cursor:pointer;
  background:linear-gradient(135deg,var(--rw-blue),#7fb7e3);
  color:#fff;
  min-width:128px;
}
.rw-forecast-suggestions{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 10px);
  background:#fffdf8;
  border:1px solid rgba(102,126,165,.16);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 16px 40px rgba(116,140,168,.14);
  display:none;
  z-index:60;
}
.rw-forecast-suggestion{
  padding:13px 16px;
  border-top:1px solid rgba(255,255,255,.05);
  cursor:pointer;
}
.rw-forecast-suggestion:first-child{
  border-top:0;
}
.rw-forecast-suggestion:hover,
.rw-forecast-suggestion.active{
  background:rgba(110,168,218,.12);
}
.rw-forecast-suggestion small{
  display:block;
  color:var(--rw-muted);
  margin-top:2px;
}
.rw-forecast-status{
  margin-top:10px;
  min-height:20px;
  font-size:14px;
  color:var(--rw-muted);
}
@media (max-width:680px){
  #rwLocationInput,
  .rw-forecast-search-btn{
    height:54px;
  }
  .rw-forecast-search-btn{
    width:100%;
    min-width:0;
  }
}

/* Content */
.page-wrap{width:100%}
.content-section{background:rgba(255,255,255,.9);border:1px solid var(--rw-border);border-radius:24px;box-shadow:var(--rw-shadow);padding:26px;margin-bottom:26px;backdrop-filter:blur(10px)}
.content-section h1,.content-section h2,.content-section h3,.entry-card h2,.feature-title,.hero-title,.archive-title,.section-head h2,.entry-full h1{font-family:"Outfit",sans-serif;color:var(--rw-text);line-height:1.1}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.section-head h2{margin:0;font-size:30px}
.section-head p{margin:0;max-width:620px;color:var(--rw-muted);font-size:15px}
.hero-card{position:relative;overflow:hidden;border-radius:28px;min-height:470px;background:#102131;box-shadow:0 28px 56px rgba(15,23,42,.15);margin-bottom:28px}
.hero-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(9,16,28,.08) 0%, rgba(9,16,28,.28) 40%, rgba(9,16,28,.82) 100%)}
.hero-content{position:relative;z-index:2;min-height:470px;display:flex;align-items:flex-end;padding:34px}
.hero-panel{max-width:760px;color:#fff}
.hero-kicker{display:inline-flex;align-items:center;padding:8px 12px;margin-bottom:14px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.hero-title{margin:0 0 10px;font-size:clamp(34px,4.8vw,54px);line-height:1.02;color:#fff}
.hero-text{margin:0 0 20px;max-width:700px;color:rgba(255,255,255,.9);font-size:18px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:12px;font-size:15px;font-weight:700;transition:.2s ease}
.btn-primary{background:linear-gradient(180deg,#27a0ef 0%,#1675b7 100%);color:#fff;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 24px rgba(23,108,170,.24)}
.btn-primary:hover{color:#fff;transform:translateY(-1px)}
.btn-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18)}
.btn-secondary:hover{color:#fff;background:rgba(255,255,255,.18)}
.feature-grid,.posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature-card,.entry-card{display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:#fff;border:1px solid var(--rw-border);box-shadow:0 10px 22px rgba(15,23,42,.05);transition:.2s ease}
.feature-card:hover,.entry-card:hover{transform:translateY(-4px);border-color:#cadceb;box-shadow:0 18px 34px rgba(15,23,42,.09)}
.feature-thumb,.entry-thumb{aspect-ratio:16/9;overflow:hidden;background:#dce9f5}
.feature-thumb img,.entry-thumb img{width:100%;height:100%;object-fit:cover}
.feature-body,.entry-body{padding:18px 18px 20px}
.feature-tag,.entry-meta{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px;color:var(--rw-muted);font-size:13px}
.feature-tag{padding:5px 10px;border-radius:999px;background:var(--rw-blue-soft);color:var(--rw-blue-dark);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.feature-title,.entry-card h2{margin:0 0 8px;font-size:23px;line-height:1.14}
.feature-copy,.entry-excerpt{margin:0;color:var(--rw-muted);font-size:15px}
.archive-header{margin-bottom:20px}
.archive-title{margin:0 0 8px;font-size:42px}
.archive-description,.page-intro{margin:0;color:var(--rw-muted)}
.entry-full{background:#fff;border:1px solid var(--rw-border);border-radius:24px;box-shadow:var(--rw-shadow);padding:32px}
.entry-full .post-thumbnail{position:relative;margin:0 0 24px;overflow:hidden;border-radius:18px;height:300px}
.entry-full h1{margin:0 0 12px;font-size:44px}
.entry-full .entry-meta{margin-bottom:16px}
.entry-content>*:first-child{margin-top:0}
.entry-content img{border-radius:14px}
.entry-content a{text-decoration:underline;text-underline-offset:2px}
.entry-content .wp-block-button__link{text-decoration:none}
.promo-banner{display:block;width:100%;position:relative;overflow:hidden;border-radius:24px;border:1px solid #cadceb;box-shadow:var(--rw-shadow);margin-bottom:26px;min-height:220px;background:#102131}
.promo-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.promo-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(9,16,28,.82) 0%, rgba(9,16,28,.38) 60%, rgba(9,16,28,.12) 100%);z-index:1}
.promo-content{position:relative;z-index:2;min-height:220px;display:flex;align-items:center;padding:28px 32px;max-width:700px;color:#fff}
.promo-content h2{margin:0 0 8px;font-family:"Outfit",sans-serif;font-size:34px;line-height:1.04;color:#fff}
.promo-content p{margin:0 0 18px;color:rgba(255,255,255,.86)}
.pagination{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--rw-border);background:#fff;color:var(--rw-text)}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:var(--rw-blue-soft);border-color:#c9dceb;color:var(--rw-blue-dark)}

.site-footer{
  width:100%;
  margin-top:10px;
  padding:0;
  color:var(--rw-muted);
}
.site-footer-inner{
  width:100%;
  background:#fff;
  border:1px solid var(--rw-border);
  border-radius:24px;
  box-shadow:var(--rw-shadow-soft);
  padding:22px 24px;
}
.footer-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.footer-row-top{
  align-items:flex-start;
  padding-bottom:18px;
  margin-bottom:18px;
  border-bottom:1px solid #edf2f7;
}
.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px 20px;
  max-width:48%;
}
.footer-links a{
  color:var(--rw-muted);
  font-size:14px;
  font-weight:600;
}
.footer-links a:hover{
  color:var(--rw-blue-dark);
}
.footer-row-bottom{
  align-items:flex-end;
}
.footer-copy p{
  margin:0;
  font-size:14px;
  color:var(--rw-muted);
}
.footer-brand{
  margin-left:auto;
  flex:0 0 auto;
}
.footer-brand img{
  width:auto;
  max-height:46px;
}
.partners-shell{text-align:center}
.partners-shell .section-head{justify-content:center;text-align:center}
.partners-shell .section-head p{max-width:720px}
#logosshowcase_2{margin-top:12px}

@media (max-width:1100px){.feature-grid,.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){
  .header-top{flex-direction:column;align-items:flex-start}
  .feature-grid,.posts-grid{grid-template-columns:1fr}
  .hero-card,.hero-content{min-height:420px}
  .entry-full{padding:22px}
  .entry-full h1{font-size:34px}
}
@media (max-width:680px){
  .outer{padding:0 0 24px}
  .site-header{border-radius:0 0 22px 22px;padding:16px}
  .site-shell{width:100%;max-width:100%}
  .brand-logo img{max-height:52px}
  .brand-name{font-size:24px}
  .nav_main{gap:8px}
  .nav_main>li>a{min-height:42px;padding:0 13px;font-size:15px}
  .hero-content{padding:24px}
  .hero-text{font-size:16px}
  .content-section{padding:20px}
  .section-head h2{font-size:26px}
  .promo-content{padding:22px}
  .promo-content h2{font-size:28px}
  .archive-title{font-size:32px}
  .sub-menu{min-width:220px;max-width:calc(100vw - 32px)}
  .site-footer-inner{padding:18px}
  .footer-row,.footer-row-top,.footer-row-bottom{flex-direction:column;align-items:flex-start}
  .footer-row-top{gap:14px}
  .footer-links{max-width:100%;gap:10px 16px}
  .footer-brand{margin-left:0}
}

.entry-full .post-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}


.entry-full .post-thumbnail::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(9,16,28,.08) 0%, rgba(9,16,28,.24) 40%, rgba(9,16,28,.78) 100%);
}
.entry-full .post-thumbnail .post-thumbnail-overlay{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:2;
  color:#fff;
}
.entry-full .post-thumbnail .post-thumbnail-overlay h1{
  margin:0 0 8px;
  color:#fff;
  font-family:"Outfit",sans-serif;
  font-size:clamp(28px,4vw,42px);
  line-height:1.02;
}
.entry-full .post-thumbnail .post-thumbnail-overlay .entry-meta{
  margin:0;
  color:rgba(255,255,255,.88);
}
.entry-full > header{display:none}
@media (max-width:680px){
  .entry-full .post-thumbnail{height:260px}
  .entry-full .post-thumbnail .post-thumbnail-overlay{
    left:18px;
    right:18px;
    bottom:18px;
  }
  .entry-full .post-thumbnail .post-thumbnail-overlay h1{
    font-size:28px;
  }
}



html, body{
  max-width:100%;
  overflow-x:hidden;
}
body{
  overflow-x:hidden;
}
.site-header,
.page-wrap,
.content-section,
.hero-card,
.promo-banner,
.posts-grid,
.feature-grid{
  max-width:100%;
}
.entry-content p{
  margin:0 0 1.15em;
}
.entry-content p + p{
  margin-top:0.2em;
}
.entry-content br + br{
  display:block;
  content:"";
  margin-top:0.9em;
}
@media (min-width: 681px){
  .site-shell{
    width:1380px;
    max-width:1380px;
  }
}



/* Header live weather bar */
.rw-header-livebar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
  margin-top:18px;
  margin-bottom:18px;
  border:1px solid var(--rw-border);
  border-radius:20px;
  background:linear-gradient(135deg,#1675b7 0%, #1e88d8 100%);
  color:#fff;
  box-shadow:0 10px 25px rgba(22,117,183,.18);
}
.rw-livebar-location{
  display:flex;
  flex-direction:column;
  min-width:190px;
  gap:2px;
}
.rw-livebar-label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.12em;
  opacity:.78;
}
#rwLivebarLocation{
  font-family:"Outfit",sans-serif;
  font-size:24px;
  line-height:1.05;
  font-weight:700;
}
#rwLivebarTime{
  font-size:13px;
  opacity:.88;
}
.rw-livebar-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  width:100%;
}
.rw-livebar-item{
  min-width:0;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(8px);
}
.rw-livebar-item-label{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  opacity:.8;
  margin-bottom:5px;
}
.rw-livebar-item strong{
  display:block;
  font-size:16px;
  line-height:1.15;
  color:#fff;
  font-weight:700;
}
.rw-livebar-main{
  display:flex;
  align-items:center;
  gap:8px;
}
.rw-livebar-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:15px;
  line-height:1;
}

@media (max-width:680px){
  .site-header{display:flex;flex-direction:column}
  .rw-header-livebar{
    order:-3;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    padding:9px 10px;
    margin-top:0;
    margin-bottom:10px;
    border-radius:12px;
  }
  .rw-livebar-location{
    min-width:0;
    gap:1px;
  }
  .rw-livebar-label{
    font-size:9px;
  }
  #rwLivebarLocation{
    font-size:17px;
    line-height:1.1;
  }
  #rwLivebarTime{
    font-size:11px;
    line-height:1.25;
  }
  .rw-livebar-metrics{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .rw-livebar-item{
    padding:6px 7px;
    border-radius:10px;
    min-width:0;
  }
  .rw-livebar-item-label{
    font-size:9px;
    margin-bottom:2px;
    line-height:1.1;
  }
  .rw-livebar-item strong{
    font-size:13px;
    line-height:1.15;
  }
  .rw-livebar-main{
    gap:6px;
  }
  .rw-livebar-icon{
    width:18px;
    height:18px;
    font-size:10px;
  }
  .rw-livebar-forecast-link{
    font-size:11px;
    padding-top:2px;
  }
}



/* Override live weather bar style (clean white) */
.rw-header-livebar{
  background:#ffffff !important;
  color:#111827 !important;
  border:1px solid #e5e7eb !important;
  box-shadow:0 2px 8px rgba(0,0,0,0.04) !important;
}

.rw-livebar-item{
  background:#f9fafb !important;
  border:1px solid #e5e7eb !important;
}

.rw-livebar-item strong,
#rwLivebarLocation{
  font-weight:500 !important;
  color:#111827 !important;
}

.rw-livebar-item-label,
#rwLivebarTime{
  color:#6b7280 !important;
  font-weight:400 !important;
}

.rw-livebar-icon{
  background:#f3f4f6 !important;
}

.rw-livebar-forecast-link{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin-top:8px;
  font-size:13px;
  font-weight:600;
  color:var(--rw-blue) !important;
}
.rw-livebar-forecast-link:hover{
  color:var(--rw-blue-dark) !important;
}

/* Smaller location text */
#rwLivebarLocation{
  font-size:18px !important;
  font-weight:500 !important;
}

/* search/livebar spacing */
.header-forecast-search{margin-bottom:12px;}


/* Match nav links to featured button style */
.header-nav .nav_main > li > a{
  background:#1675b7 !important;
  color:#ffffff !important;
  border:1px solid #1675b7 !important;
  border-radius:10px;
}

.header-nav .nav_main > li > a:hover{
  background:#2a86c8 !important;
  border-color:#2a86c8 !important;
  color:#ffffff !important;
}


/* Blog post meta chips */
.entry-full .entry-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.entry-full .entry-meta span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:12px;
  border:1px solid var(--rw-border);
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
  font-size:14px;
  font-weight:500;
  line-height:1;
}
.entry-full .entry-meta a{
  color:inherit;
  text-decoration:none;
}


/* Weather data portal page */
.wd-hero{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);
  gap:22px;
  align-items:stretch;
}
.wd-kicker{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  margin-bottom:12px;
  border-radius:999px;
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
  font-size:12px;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.wd-hero-copy .archive-title{
  margin-bottom:12px;
}
.wd-hero-note{
  align-self:stretch;
  padding:22px;
  border-radius:20px;
  background:linear-gradient(180deg,#0f5b90 0%, #1675b7 100%);
  color:#fff;
}
.wd-hero-note strong{
  display:block;
  margin-bottom:8px;
  font-family:"Outfit",sans-serif;
  font-size:22px;
}
.wd-hero-note p{
  margin:0;
  color:rgba(255,255,255,.9);
}
.wd-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.wd-grid-small{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.wd-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:220px;
  padding:20px;
  border-radius:20px;
  border:1px solid var(--rw-border);
  background:#fff;
  box-shadow:0 10px 22px rgba(15,23,42,.05);
  transition:.2s ease;
}
.wd-card:hover{
  transform:translateY(-4px);
  border-color:#cadceb;
  box-shadow:0 18px 34px rgba(15,23,42,.09);
}
.wd-card-compact{
  min-height:170px;
}
.wd-card-pro{
  background:linear-gradient(180deg,#f8fbff 0%, #eef6fc 100%);
}
.wd-card-meta{
  display:inline-flex;
  align-self:flex-start;
  padding:5px 10px;
  border-radius:999px;
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.wd-card h3{
  margin:0;
  font-family:"Outfit",sans-serif;
  font-size:23px;
  line-height:1.1;
  color:var(--rw-text);
}
.wd-card p{
  margin:0;
  color:var(--rw-muted);
  font-size:15px;
}
.wd-card-link{
  margin-top:auto;
  color:var(--rw-blue-dark);
  font-weight:700;
}
.wd-support{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.wd-support h2{
  margin:0 0 8px;
}
.wd-support p{
  margin:0;
  color:var(--rw-muted);
}
@media (max-width:1100px){
  .wd-grid-small{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:860px){
  .wd-hero{
    grid-template-columns:1fr;
  }
  .wd-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:680px){
  .wd-grid,
  .wd-grid-small{
    grid-template-columns:1fr;
  }
  .wd-card{
    min-height:auto;
  }
  .wd-support{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* Weather data portal hero background */
.wd-hero-bg{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(12,26,43,.55) 0%, rgba(12,26,43,.30) 52%, rgba(12,26,43,.12) 100%),
    url('https://www.realweather.co.uk/weather-data1/head.png') center/cover no-repeat;
}
.wd-hero-bg .wd-hero-copy,
.wd-hero-bg .wd-hero-copy .archive-title,
.wd-hero-bg .wd-hero-copy .archive-description{
  position:relative;
  z-index:1;
  color:#ffffff;
}
.wd-hero-bg .wd-kicker{
  background:rgba(255,255,255,.14);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.18);
}
.wd-hero-bg .wd-hero-note{
  position:relative;
  z-index:1;
}


/* Square hero on mobile */
@media (max-width: 768px){
  .wd-hero{
    border-radius: 0 !important;
  }
}

/* My Weather page */
.my-weather-page{
  overflow:hidden;
}
.rw-my-weather-shell{
  display:grid;
  gap:24px;
}
.rw-my-weather-savebox{
  padding:24px;
  border-radius:22px;
  border:1px solid var(--rw-border);
  background:linear-gradient(180deg,#f8fbff 0%, #eef6fc 100%);
}
.rw-my-weather-savebox h2{
  margin:0 0 8px;
  font-size:28px;
}
.rw-my-weather-savebox p{
  margin:0 0 16px;
  color:var(--rw-muted);
}
.rw-my-weather-form-row{
  display:flex;
  gap:12px;
  align-items:stretch;
  flex-wrap:wrap;
}
.rw-my-weather-form-row input[type="text"]{
  flex:1 1 420px;
  min-height:56px;
  padding:0 16px;
  border-radius:16px;
  border:1px solid var(--rw-border);
  background:#fff;
  font-size:16px;
  color:var(--rw-text);
  outline:none;
}
.rw-my-weather-form-row input[type="text"]:focus{
  border-color:rgba(110,168,218,.65);
  box-shadow:0 0 0 3px rgba(110,168,218,.18);
}
.rw-my-weather-current{
  margin-top:14px;
  color:var(--rw-text);
  font-size:15px;
}
.rw-my-weather-current strong{
  margin-right:8px;
}
.rw-my-weather-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.rw-my-weather-card{
  min-height:100%;
}
.rw-my-weather-thumb{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:190px;
  background:linear-gradient(135deg,#dce9f5 0%, #eef6fc 100%);
}
.rw-my-weather-thumb span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px dashed #a8bfd3;
  color:var(--rw-muted);
  font-size:14px;
  font-weight:700;
}
.rw-my-weather-alert{
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:14px;
  font-size:15px;
  font-weight:600;
}
.rw-my-weather-alert-success{
  background:#edf9f0;
  border:1px solid #bfe1c6;
  color:#245b31;
}
.rw-my-weather-alert-error{
  background:#fff2f2;
  border:1px solid #f0caca;
  color:#8b2d2d;
}
.rw-my-weather-content{
  margin-top:20px;
}
@media (max-width: 860px){
  .rw-my-weather-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 680px){
  .rw-my-weather-savebox{
    padding:20px;
  }
  .rw-my-weather-form-row input[type="text"],
  .rw-my-weather-form-row .btn{
    width:100%;
  }
}


/* Latest UK Top 20 */
.rw-top20-hero{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(560px,1fr);gap:36px;align-items:center}
.rw-top20-note{width:100%;max-width:820px;justify-self:end;margin-left:auto;background:linear-gradient(180deg,#f6fbff 0%,#eef6fc 100%);border:1px solid #d5e5f2;border-radius:22px;padding:18px 24px;box-shadow:var(--rw-shadow-soft)}
.rw-top20-note strong{display:block;margin-bottom:8px;color:var(--rw-blue-dark);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.rw-top20-note p{margin:0;color:var(--rw-muted)}
.rw-top20-toolbar{display:grid;gap:18px}
.rw-top20-tab-group{display:flex;flex-wrap:wrap;gap:10px}
.rw-top20-tab{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--rw-border);background:#fff;color:var(--rw-blue-dark);font-weight:700;font-size:14px;box-shadow:var(--rw-shadow-soft);transition:.2s ease}
.rw-top20-tab:hover{transform:translateY(-1px);border-color:#bfd5e6;background:#f8fbfe}
.rw-top20-tab.is-active{background:linear-gradient(135deg,var(--rw-blue) 0%,var(--rw-blue-dark) 100%);border-color:transparent;color:#fff}
.rw-top20-board{overflow:hidden;padding:0}
.rw-top20-board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:22px 24px 16px;border-bottom:1px solid var(--rw-border)}
.rw-top20-board-head h2{margin:0;font-size:28px}
.rw-top20-board-head p{margin:6px 0 0;color:var(--rw-muted)}
.rw-top20-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--rw-blue-soft);color:var(--rw-blue-dark);font-weight:600;font-size:13px}
.rw-top20-alert{margin:18px 24px 0;padding:14px 16px;border-radius:16px;border:1px solid #f1cec6;background:#fff5f3;color:#994437}
.rw-top20-info{margin:18px 24px 0;padding:14px 16px;border-radius:16px;border:1px solid #d5e5f2;background:#f5faff;color:#31506e}
.rw-top20-table-wrap{padding:18px 24px 24px;overflow-x:auto}
.rw-top20-table{width:100%;border-collapse:collapse}
.rw-top20-table th,.rw-top20-table td{padding:14px 12px;text-align:left}
.rw-top20-table thead th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rw-muted);border-bottom:1px solid var(--rw-border)}
.rw-top20-table tbody td{border-bottom:1px solid #edf3f8;font-size:15px}
.rw-top20-table tbody tr:hover{background:#f8fbfe}
.rw-top20-rank{width:70px;font-weight:800;color:var(--rw-blue-dark)}
.rw-top20-station{font-weight:700;color:var(--rw-text)}
.rw-top20-station-code{display:block;margin-top:3px;font-size:12px;color:var(--rw-muted);font-weight:600}
.rw-top20-value{font-weight:800;color:var(--rw-blue-dark)}
.rw-top20-time{white-space:nowrap;color:var(--rw-muted);font-weight:600}
.rw-top20-empty{padding:18px 12px;color:var(--rw-muted)}
@media (max-width: 1100px){.rw-top20-hero{grid-template-columns:minmax(0,1.08fr) minmax(460px,.96fr);gap:28px}}
@media (max-width: 900px){.rw-top20-hero{grid-template-columns:1fr}.rw-top20-note{max-width:none;justify-self:stretch}.rw-top20-board-head{flex-direction:column;align-items:flex-start}.rw-top20-board-head h2{font-size:24px}}
@media (max-width: 640px){.rw-top20-table-wrap,.rw-top20-board-head{padding-left:16px;padding-right:16px}.rw-top20-table th,.rw-top20-table td{padding:12px 8px;font-size:14px}.rw-top20-rank{width:44px}.rw-top20-station{min-width:140px}.rw-top20-station-code{font-size:11px}}


.rw-my-weather-prefsbox{
  background:linear-gradient(180deg,#fdfcff 0%, #f3f6fb 100%);
}
.rw-pref-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:0 0 18px;
}
.rw-pref-fieldset{
  margin:0;
  padding:18px;
  border:1px solid var(--rw-border);
  border-radius:18px;
  background:#fff;
  min-width:0;
}
.rw-pref-fieldset legend{
  padding:0 8px;
  font-weight:700;
  color:var(--rw-blue-dark);
}
.rw-pref-fieldset label{
  display:flex;
  align-items:center;
  gap:10px;
  margin:10px 0 0;
  color:var(--rw-text);
  font-weight:500;
}
.rw-pref-fieldset input[type="radio"]{
  margin:0;
}
@media (max-width: 980px){
  .rw-pref-grid{
    grid-template-columns:1fr;
  }
}

/* Account page refresh */
.rw-account-page{
  overflow:hidden;
}
.rw-account-shell{
  position:relative;
  overflow:hidden;
  padding:34px;
}
.rw-account-shell::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:180px;
  background:linear-gradient(135deg, rgba(22,117,183,.12) 0%, rgba(127,183,227,.06) 52%, rgba(255,255,255,0) 100%);
  pointer-events:none;
}
.rw-account-entry,
.rw-account-content{
  position:relative;
  z-index:1;
}
.rw-account-header{
  display:grid;
  gap:10px;
  margin-bottom:28px;
}
.rw-account-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:var(--rw-blue-soft);
  border:1px solid #cfe1ef;
  color:var(--rw-blue-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rw-account-intro{
  margin:0;
  max-width:720px;
  color:var(--rw-muted);
  font-size:16px;
}
.rw-account-page .archive-title{
  margin:0;
}
.rw-account-content{
  display:grid;
  gap:24px;
}
.rw-account-page .woocommerce{
  display:grid;
  gap:24px;
}
.rw-account-page .woocommerce::after,
.rw-account-page .woocommerce::before{
  display:none;
}
.rw-account-page .woocommerce-notices-wrapper,
.rw-account-page .woocommerce-message,
.rw-account-page .woocommerce-info,
.rw-account-page .woocommerce-error{
  margin:0 0 16px;
}
.rw-account-page .woocommerce-message,
.rw-account-page .woocommerce-info,
.rw-account-page .woocommerce-error,
.rw-account-page .woocommerce-notice,
.rw-account-page .woocommerce form .show-password-input,
.rw-account-page .woocommerce-password-strength,
.rw-account-page .woocommerce-LostPassword{
  border-radius:16px;
}
.rw-account-page .woocommerce-message,
.rw-account-page .woocommerce-info,
.rw-account-page .woocommerce-error,
.rw-account-page .woocommerce-notice{
  padding:16px 18px;
  border:1px solid var(--rw-border);
  background:#fff;
  box-shadow:var(--rw-shadow-soft);
}
.rw-account-page .woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.rw-account-page .woocommerce-MyAccount-navigation,
.rw-account-page .woocommerce-MyAccount-content,
.rw-account-page .woocommerce-form-login,
.rw-account-page .woocommerce-form-register,
.rw-account-page .u-column1,
.rw-account-page .u-column2,
.rw-account-page .woocommerce-address-fields,
.rw-account-page .woocommerce-EditAccountForm,
.rw-account-page .woocommerce-ResetPassword,
.rw-account-page form.woocommerce-form,
.rw-account-page form.checkout_coupon,
.rw-account-page .woocommerce-orders-table,
.rw-account-page .woocommerce-table,
.rw-account-page .woocommerce-customer-details,
.rw-account-page .addresses .woocommerce-Address,
.rw-account-page .woocommerce-pagination{
  background:rgba(255,255,255,.94);
  border:1px solid var(--rw-border);
  border-radius:22px;
  box-shadow:var(--rw-shadow-soft);
}
.rw-account-page .woocommerce-MyAccount-navigation,
.rw-account-page .woocommerce-form-login,
.rw-account-page .woocommerce-form-register,
.rw-account-page .u-column1,
.rw-account-page .u-column2,
.rw-account-page .woocommerce-address-fields,
.rw-account-page .woocommerce-EditAccountForm,
.rw-account-page .woocommerce-ResetPassword,
.rw-account-page form.woocommerce-form,
.rw-account-page form.checkout_coupon,
.rw-account-page .woocommerce-customer-details,
.rw-account-page .addresses .woocommerce-Address{
  padding:22px;
}
.rw-account-page .woocommerce-MyAccount-navigation{
  overflow:hidden;
}
.rw-account-page .woocommerce-MyAccount-navigation-link a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:52px;
  padding:0 16px;
  border-radius:14px;
  border:1px solid transparent;
  background:#fff;
  color:var(--rw-text);
  font-weight:700;
  box-shadow:0 6px 16px rgba(15,23,42,.04);
  transition:.2s ease;
}
.rw-account-page .woocommerce-MyAccount-navigation-link a:hover,
.rw-account-page .woocommerce-MyAccount-navigation-link.is-active a,
.rw-account-page .woocommerce-MyAccount-navigation-link.is-active a:hover{
  background:linear-gradient(135deg,var(--rw-blue) 0%, var(--rw-blue-dark) 100%);
  color:#fff;
  border-color:transparent;
  transform:translateY(-1px);
  box-shadow:0 16px 28px rgba(22,117,183,.24);
}
.rw-account-page .woocommerce-MyAccount-content > :first-child,
.rw-account-page .woocommerce-form-login > :first-child,
.rw-account-page .woocommerce-form-register > :first-child,
.rw-account-page .u-column1 > :first-child,
.rw-account-page .u-column2 > :first-child{
  margin-top:0;
}
.rw-account-page .woocommerce-MyAccount-content{
  padding:28px;
}

.rw-account-page .woocommerce-MyAccount-content{
  box-shadow:none;
}
.rw-account-page .woocommerce-MyAccount-content h2,
.rw-account-page .woocommerce-MyAccount-content h3,
.rw-account-page .woocommerce-form-login h2,
.rw-account-page .woocommerce-form-register h2,
.rw-account-page .u-column1 h2,
.rw-account-page .u-column2 h2,
.rw-account-page .addresses h3{
  margin-top:0;
  margin-bottom:12px;
  font-family:"Outfit",sans-serif;
  color:var(--rw-text);
}
.rw-account-page .col2-set{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.rw-account-page .col2-set::after,
.rw-account-page .col2-set::before{
  display:none;
}
.rw-account-page .col2-set .col-1,
.rw-account-page .col2-set .col-2,
.rw-account-page .woocommerce-account .addresses .title{
  float:none;
  width:auto;
  margin:0;
}
.rw-account-page .form-row,
.rw-account-page .woocommerce form .form-row{
  margin:0 0 16px;
  padding:0;
}
.rw-account-page input[type="text"],
.rw-account-page input[type="email"],
.rw-account-page input[type="password"],
.rw-account-page input[type="tel"],
.rw-account-page input[type="number"],
.rw-account-page input[type="search"],
.rw-account-page input.input-text,
.rw-account-page select,
.rw-account-page textarea{
  width:100%;
  min-height:54px;
  padding:0 16px;
  border-radius:16px;
  border:1px solid var(--rw-border);
  background:#f9fbfe;
  color:var(--rw-text);
  font-size:15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.rw-account-page textarea{
  min-height:140px;
  padding:14px 16px;
  resize:vertical;
}
.rw-account-page input:focus,
.rw-account-page select:focus,
.rw-account-page textarea:focus{
  border-color:rgba(110,168,218,.7);
  background:#fff;
  box-shadow:0 0 0 4px rgba(110,168,218,.16);
  outline:none;
}
.rw-account-page label{
  display:block;
  margin:0 0 8px;
  color:var(--rw-text);
  font-size:14px;
  font-weight:700;
}
.rw-account-page .password-input,
.rw-account-page .woocommerce-password-hint,
.rw-account-page .select2-container,
.rw-account-page .select2-selection--single,
.rw-account-page .select2-selection--multiple{
  width:100% !important;
}
.rw-account-page .select2-container .select2-selection--single,
.rw-account-page .select2-container .select2-selection--multiple{
  min-height:54px;
  border-radius:16px;
  border:1px solid var(--rw-border);
  background:#f9fbfe;
}
.rw-account-page .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:52px;
  padding-left:16px;
  padding-right:38px;
}
.rw-account-page .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:52px;
  right:10px;
}
.rw-account-page button,
.rw-account-page .button,
.rw-account-page .woocommerce-button,
.rw-account-page .woocommerce-Button,
.rw-account-page .woocommerce a.button,
.rw-account-page .woocommerce button.button,
.rw-account-page .woocommerce input.button,
.rw-account-page .woocommerce #respond input#submit,
.rw-account-page .woocommerce .button{
  min-height:50px;
  padding:0 18px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,var(--rw-blue) 0%, var(--rw-blue-dark) 100%);
  color:#fff !important;
  font-size:15px;
  font-weight:800;
  line-height:1;
  box-shadow:0 16px 28px rgba(22,117,183,.22);
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.rw-account-page button:hover,
.rw-account-page .button:hover,
.rw-account-page .woocommerce-button:hover,
.rw-account-page .woocommerce-Button:hover,
.rw-account-page .woocommerce a.button:hover,
.rw-account-page .woocommerce button.button:hover,
.rw-account-page .woocommerce input.button:hover,
.rw-account-page .woocommerce #respond input#submit:hover,
.rw-account-page .woocommerce .button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 32px rgba(22,117,183,.26);
  opacity:.98;
}
.rw-account-page .woocommerce-form-login__submit,
.rw-account-page .woocommerce-form-register__submit,
.rw-account-page .woocommerce-Button[name="save_account_details"],
.rw-account-page .woocommerce-address-fields .button,
.rw-account-page .woocommerce-Button[name="save_address"]{
  min-width:180px;
}
.rw-account-page .woocommerce-form-login .show-password-input,
.rw-account-page .woocommerce-form-register .show-password-input,
.rw-account-page .woocommerce-ResetPassword .show-password-input{
  top:8px;
  right:8px;
}
.rw-account-page .woocommerce-form-login .show-password-input::after,
.rw-account-page .woocommerce-form-register .show-password-input::after,
.rw-account-page .woocommerce-ResetPassword .show-password-input::after{
  padding:10px;
}
.rw-account-page .woocommerce-form-login p,
.rw-account-page .woocommerce-form-register p,
.rw-account-page .woocommerce-MyAccount-content p,
.rw-account-page .woocommerce-MyAccount-content li,
.rw-account-page .addresses address{
  color:var(--rw-muted);
}
.rw-account-page .woocommerce-form-login .woocommerce-form-login__rememberme,
.rw-account-page .woocommerce form .woocommerce-form__label-for-checkbox{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:600;
  color:var(--rw-text);
}
.rw-account-page input[type="checkbox"]{
  width:18px;
  height:18px;
  min-height:18px;
  accent-color:var(--rw-blue);
}
.rw-account-page .woocommerce-form-login .lost_password,
.rw-account-page .woocommerce-LostPassword,
.rw-account-page .woocommerce-form-register .woocommerce-privacy-policy-text,
.rw-account-page .woocommerce-privacy-policy-text,
.rw-account-page .woocommerce-password-hint,
.rw-account-page .woocommerce-password-strength,
.rw-account-page .woocommerce-terms-and-conditions-wrapper{
  font-size:14px;
}

.rw-account-auth-page .rw-account-header{
  gap:12px;
  margin-bottom:24px;
}
.rw-account-auth-page .rw-account-kicker{
  background:rgba(22,117,183,.1);
}
.rw-account-auth-page .archive-title{
  max-width:680px;
}
.rw-account-auth-page .rw-account-intro{
  max-width:640px;
}
.rw-account-auth-page .woocommerce-form-login{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,251,254,.96) 100%);
  border-color:rgba(192,208,223,.9);
  box-shadow:0 26px 56px rgba(15,23,42,.08);
}
.rw-account-auth-page .woocommerce-form-login::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg, var(--rw-blue) 0%, var(--rw-blue-dark) 100%);
}
.rw-account-auth-page .woocommerce-form-login > *{
  position:relative;
  z-index:1;
}
.rw-account-auth-page .woocommerce-form-login p:first-of-type{
  color:var(--rw-text);
  font-size:15px;
}
.rw-account-auth-page .woocommerce-form-login label{
  color:#17324a;
}
.rw-account-auth-page .woocommerce-form-login input.input-text,
.rw-account-auth-page .woocommerce-form-login input[type="text"],
.rw-account-auth-page .woocommerce-form-login input[type="email"],
.rw-account-auth-page .woocommerce-form-login input[type="password"]{
  background:#fff;
  border-color:#d7e3ef;
  box-shadow:0 8px 18px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.9);
}
.rw-account-auth-page .woocommerce-form-login .woocommerce-form-login__rememberme{
  margin-top:4px;
}
.rw-account-auth-page .woocommerce-form-login .lost_password,
.rw-account-auth-page .woocommerce-form-login .lost_password a,
.rw-account-auth-page .woocommerce-form-login .woocommerce-LostPassword a{
  color:var(--rw-blue-dark);
  font-weight:700;
}
.rw-account-auth-page .woocommerce-form-login .woocommerce-form-login__submit{
  min-width:200px;
}
.rw-account-page .woocommerce table.shop_table,
.rw-account-page .woocommerce table.shop_table th,
.rw-account-page .woocommerce table.shop_table td,
.rw-account-page .woocommerce-orders-table,
.rw-account-page .woocommerce-table{
  border-color:#e6eef5;
}
.rw-account-page .woocommerce table.shop_table,
.rw-account-page .woocommerce-orders-table,
.rw-account-page .woocommerce-table{
  width:100%;
  border-radius:18px;
  overflow:hidden;
  border-collapse:separate;
  border-spacing:0;
}
.rw-account-page .woocommerce table.shop_table th,
.rw-account-page .woocommerce table.shop_table td,
.rw-account-page .woocommerce-orders-table th,
.rw-account-page .woocommerce-orders-table td,
.rw-account-page .woocommerce-table th,
.rw-account-page .woocommerce-table td{
  padding:14px 16px;
  text-align:left;
}
.rw-account-page .woocommerce table.shop_table thead th,
.rw-account-page .woocommerce-orders-table thead th,
.rw-account-page .woocommerce-table thead th{
  background:#f5faff;
  color:var(--rw-muted);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rw-account-page .woocommerce table.shop_table tbody tr:nth-child(even),
.rw-account-page .woocommerce-orders-table tbody tr:nth-child(even),
.rw-account-page .woocommerce-table tbody tr:nth-child(even){
  background:#fbfdff;
}
.rw-account-page .woocommerce table.my_account_orders .button,
.rw-account-page .woocommerce-orders-table .button{
  min-height:40px;
  padding:0 14px;
  border-radius:12px;
  font-size:13px;
}
.rw-account-page .woocommerce-pagination,
.rw-account-page .woocommerce-pagination ul.page-numbers{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  padding:14px;
}
.rw-account-page .woocommerce-pagination ul.page-numbers{
  list-style:none;
  margin:0;
}
.rw-account-page .woocommerce-pagination ul.page-numbers li{
  margin:0;
}
.rw-account-page .woocommerce-pagination .page-numbers a,
.rw-account-page .woocommerce-pagination .page-numbers span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 12px;
  border-radius:12px;
  border:1px solid var(--rw-border);
  background:#fff;
  color:var(--rw-text);
}
.rw-account-page .woocommerce-pagination .page-numbers .current,
.rw-account-page .woocommerce-pagination .page-numbers a:hover{
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
}
.rw-account-page .woocommerce-account .addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.rw-account-page .woocommerce-account .addresses::after,
.rw-account-page .woocommerce-account .addresses::before{
  display:none;
}
.rw-account-page .woocommerce-account .addresses .title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.rw-account-page .woocommerce-account .addresses .title h3{
  margin:0;
}
.rw-account-page .woocommerce-account .addresses .title .edit{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
  font-size:13px;
  font-weight:700;
}
.rw-account-page .woocommerce-MyAccount-content mark{
  background:#eef6fc;
  color:var(--rw-blue-dark);
  padding:2px 8px;
  border-radius:999px;
}
.rw-account-page .woocommerce-MyAccount-content strong{
  color:var(--rw-text);
}
.rw-account-page .woocommerce-account .woocommerce-MyAccount-navigation,
.rw-account-page .woocommerce-account .woocommerce-MyAccount-content{
  float:none;
  width:auto;
}
.rw-account-page .woocommerce-account{
  display:grid;
  grid-template-columns:minmax(240px,300px) minmax(0,1fr);
  gap:24px;
  align-items:start;
}
@media (max-width: 980px){
  .rw-account-shell{
    padding:24px;
  }
  .rw-account-page .woocommerce-account,
  .rw-account-page .col2-set,
  .rw-account-page .woocommerce-account .addresses{
    grid-template-columns:1fr;
  }
}
@media (max-width: 680px){
  .rw-account-shell,
  .rw-account-page .woocommerce-MyAccount-content,
  .rw-account-page .woocommerce-MyAccount-navigation,
  .rw-account-page .woocommerce-form-login,
  .rw-account-page .woocommerce-form-register,
  .rw-account-page .u-column1,
  .rw-account-page .u-column2,
  .rw-account-page .woocommerce-address-fields,
  .rw-account-page .woocommerce-EditAccountForm,
  .rw-account-page .woocommerce-ResetPassword,
  .rw-account-page form.woocommerce-form,
  .rw-account-page .woocommerce-customer-details,
  .rw-account-page .addresses .woocommerce-Address{
    padding:18px;
  }
  .rw-account-page .archive-title{
    font-size:34px;
  }
  .rw-account-page button,
  .rw-account-page .button,
  .rw-account-page .woocommerce-button,
  .rw-account-page .woocommerce-Button,
  .rw-account-page .woocommerce a.button,
  .rw-account-page .woocommerce button.button,
  .rw-account-page .woocommerce input.button,
  .rw-account-page .woocommerce #respond input#submit,
  .rw-account-page .woocommerce .button{
    width:100%;
  }
}


/* Paid Memberships Pro account styling */
.rw-account-page #pmpro_account{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:22px;
}
.rw-account-page #pmpro_account > .pmpro_box{
  grid-column:span 12;
  position:relative;
  padding:26px;
  background:rgba(255,255,255,.96);
  border:1px solid var(--rw-border);
  border-radius:24px;
  box-shadow:var(--rw-shadow-soft);
  overflow:hidden;
}
.rw-account-page #pmpro_account > .pmpro_box::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(135deg,var(--rw-blue) 0%, var(--rw-blue-dark) 100%);
}
.rw-account-page #pmpro_account-membership,
.rw-account-page #pmpro_account-profile{
  grid-column:span 6;
}
.rw-account-page #pmpro_account h3,
.rw-account-page #pmpro_account .pmpro_box h3{
  margin:0 0 18px;
  padding:0;
  border:0;
  font-family:"Outfit",sans-serif;
  font-size:28px;
  line-height:1.1;
  color:var(--rw-text);
}
.rw-account-page #pmpro_account-profile > p:first-of-type{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  margin:0 0 14px;
  padding:0 14px;
  border-radius:999px;
  background:var(--rw-blue-soft);
  color:var(--rw-blue-dark);
  font-weight:800;
}
.rw-account-page #pmpro_account-profile ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.rw-account-page #pmpro_account-profile li{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  min-height:56px;
  padding:14px 16px;
  border-radius:16px;
  background:#f8fbfe;
  border:1px solid #e5edf5;
  color:var(--rw-muted);
}
.rw-account-page #pmpro_account-profile li strong{
  color:var(--rw-text);
  min-width:88px;
}
.rw-account-page #pmpro_account .pmpro_actionlinks{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #e8eef5;
}
.rw-account-page #pmpro_account .pmpro_actionlinks a,
.rw-account-page #pmpro_account a.pmpro_btn,
.rw-account-page #pmpro_account a.pmpro_btn-select,
.rw-account-page #pmpro_account input.pmpro_btn,
.rw-account-page #pmpro_account .pmpro_btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
  border-radius:14px;
  border:1px solid transparent;
  background:linear-gradient(135deg,var(--rw-blue) 0%, var(--rw-blue-dark) 100%);
  color:#fff !important;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  box-shadow:0 14px 24px rgba(22,117,183,.18);
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.rw-account-page #pmpro_account .pmpro_actionlinks a:hover,
.rw-account-page #pmpro_account a.pmpro_btn:hover,
.rw-account-page #pmpro_account a.pmpro_btn-select:hover,
.rw-account-page #pmpro_account input.pmpro_btn:hover,
.rw-account-page #pmpro_account .pmpro_btn:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 30px rgba(22,117,183,.24);
}
.rw-account-page #pmpro_account .pmpro_actionlinks a + a::before{
  content:none;
}
.rw-account-page #pmpro_account .pmpro_table,
.rw-account-page #pmpro_account table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin:0;
  overflow:hidden;
  border:1px solid #e6eef5;
  border-radius:18px;
  background:#fff;
}
.rw-account-page #pmpro_account .pmpro_table thead th,
.rw-account-page #pmpro_account table thead th{
  padding:14px 16px;
  background:#f5faff;
  color:var(--rw-muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  border:0;
}
.rw-account-page #pmpro_account .pmpro_table tbody td,
.rw-account-page #pmpro_account table tbody td{
  padding:16px;
  border-top:1px solid #edf2f7;
  vertical-align:top;
  color:var(--rw-muted);
}
.rw-account-page #pmpro_account .pmpro_table tbody tr:nth-child(even) td,
.rw-account-page #pmpro_account table tbody tr:nth-child(even) td{
  background:#fbfdff;
}
.rw-account-page #pmpro_account .pmpro_account-membership-levelname,
.rw-account-page #pmpro_account .pmpro_account-membership-levelfee,
.rw-account-page #pmpro_account .pmpro_account-membership-expiration{
  color:var(--rw-text);
}
.rw-account-page #pmpro_account .pmpro_account-membership-levelname{
  font-weight:800;
}
.rw-account-page #pmpro_account .pmpro_account-membership-levelfee p,
.rw-account-page #pmpro_account .pmpro_account-membership-expiration p{
  margin:0;
}
.rw-account-page #pmpro_account a{
  font-weight:700;
}
.rw-account-page #pmpro_account .pmpro_table a:not(.pmpro_btn):not(.pmpro_btn-select),
.rw-account-page #pmpro_account table a:not(.pmpro_btn):not(.pmpro_btn-select){
  color:var(--rw-blue-dark);
  text-decoration:none;
}
.rw-account-page #pmpro_account .pmpro_table a:not(.pmpro_btn):not(.pmpro_btn-select):hover,
.rw-account-page #pmpro_account table a:not(.pmpro_btn):not(.pmpro_btn-select):hover{
  text-decoration:underline;
}
.rw-account-page #pmpro_account-membership .pmpro_actionlinks,
.rw-account-page #pmpro_account-invoices .pmpro_actionlinks{
  border-top:0;
  padding-top:0;
}
.rw-account-page #pmpro_account-invoices tbody td:last-child{
  font-weight:800;
  color:#0f7a43;
}
.rw-account-page #pmpro_account-invoices tbody td:nth-child(3){
  color:var(--rw-text);
  font-weight:800;
}
.rw-account-page #pmpro_account p,
.rw-account-page #pmpro_account li,
.rw-account-page #pmpro_account td{
  font-size:15px;
  line-height:1.6;
}
@media (max-width: 980px){
  .rw-account-page #pmpro_account-membership,
  .rw-account-page #pmpro_account-profile{
    grid-column:span 12;
  }
}
@media (max-width: 680px){
  .rw-account-page #pmpro_account > .pmpro_box{
    padding:20px;
    border-radius:20px;
  }
  .rw-account-page #pmpro_account h3,
  .rw-account-page #pmpro_account .pmpro_box h3{
    font-size:24px;
  }
  .rw-account-page #pmpro_account .pmpro_table,
  .rw-account-page #pmpro_account table{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .rw-account-page #pmpro_account .pmpro_actionlinks a,
  .rw-account-page #pmpro_account a.pmpro_btn,
  .rw-account-page #pmpro_account a.pmpro_btn-select,
  .rw-account-page #pmpro_account input.pmpro_btn,
  .rw-account-page #pmpro_account .pmpro_btn{
    width:100%;
  }
}

.rw-account-profile-editor-wrap{
  position:relative;
}
.rw-account-profile-editor{
  display:grid;
  gap:24px;
}
.rw-account-profile-topbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.rw-account-backlink,
.rw-account-secondary-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--rw-blue-dark);
  font-weight:800;
  text-decoration:none;
}
.rw-account-backlink:hover,
.rw-account-secondary-link:hover{
  text-decoration:underline;
}
.rw-account-inline-badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid #d7e5f1;
  color:var(--rw-blue-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rw-account-profile-hero{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);
  gap:20px;
  padding:26px;
  border-radius:24px;
  border:1px solid var(--rw-border);
  background:linear-gradient(135deg, rgba(255,255,255,.98) 0%, rgba(244,249,253,.98) 100%);
  box-shadow:var(--rw-shadow-soft);
}
.rw-account-profile-hero h2,
.rw-account-form-card h3{
  margin:0 0 10px;
  font-family:"Outfit",sans-serif;
  color:var(--rw-text);
}
.rw-account-profile-summary{
  display:grid;
  gap:12px;
}
.rw-account-summary-item{
  padding:16px 18px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e5edf5;
  box-shadow:0 8px 20px rgba(15,23,42,.05);
}
.rw-account-summary-item span{
  display:block;
  margin-bottom:6px;
  color:var(--rw-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.rw-account-summary-item strong{
  color:var(--rw-text);
  font-size:16px;
  word-break:break-word;
}
.rw-account-notice{
  padding:16px 18px;
  border-radius:18px;
  border:1px solid var(--rw-border);
  box-shadow:var(--rw-shadow-soft);
}
.rw-account-notice.is-success{
  background:#effaf4;
  border-color:#cbe9d5;
  color:#14532d;
}
.rw-account-notice.is-error{
  background:#fff5f5;
  border-color:#f2d0d0;
  color:#8f1d1d;
}
.rw-account-notice ul{
  margin:0;
  padding-left:18px;
}
.rw-account-profile-form{
  display:grid;
  gap:22px;
}
.rw-account-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.rw-account-form-card{
  padding:24px;
  border-radius:24px;
  border:1px solid var(--rw-border);
  background:rgba(255,255,255,.97);
  box-shadow:var(--rw-shadow-soft);
}
.rw-account-form-card-wide{
  grid-column:1 / -1;
}
.rw-account-helper{
  margin:0 0 14px;
  color:var(--rw-muted);
}
.rw-account-field-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 18px;
}
.rw-account-field-grid p{
  margin:0;
}
.rw-account-field-full{
  grid-column:1 / -1;
}
.rw-account-form-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px;
}
.rw-account-profile-view #pmpro_account{
  display:none;
}
@media (max-width: 980px){
  .rw-account-profile-hero,
  .rw-account-form-grid,
  .rw-account-field-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 680px){
  .rw-account-profile-hero,
  .rw-account-form-card{
    padding:20px;
    border-radius:20px;
  }
  .rw-account-form-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .rw-account-secondary-link{
    justify-content:center;
  }
}


/* Top 20 page */
.rw-top20-page .section-head p{width:100%;max-width:100%}



body.page-id-7437 .site-footer-inner{
  width:calc(100% - 52px);
  margin:0 auto;
}
@media (max-width:680px){
  body.page-id-7437 .site-footer-inner{
    width:100%;
  }
}


/* Chart viewer page */
body.page-id-7437 .site-footer{
  display:none !important;
}

/* Account page tidy-ups */
.rw-account-page #pmpro_account .pmpro_actionlinks{
  font-size:0;
}
.rw-account-page #pmpro_account .pmpro_actionlinks a,
.rw-account-page #pmpro_account .pmpro_actionlinks .pmpro_btn,
.rw-account-page #pmpro_account .pmpro_actionlinks .pmpro_btn-select,
.rw-account-page #pmpro_account .pmpro_actionlinks input.pmpro_btn{
  font-size:14px;
}

@media (max-width: 680px){
  .rw-account-page button,
  .rw-account-page .button,
  .rw-account-page .woocommerce-button,
  .rw-account-page .woocommerce-Button,
  .rw-account-page .woocommerce a.button,
  .rw-account-page .woocommerce button.button,
  .rw-account-page .woocommerce input.button,
  .rw-account-page .woocommerce #respond input#submit,
  .rw-account-page .woocommerce .button,
  .rw-account-page #pmpro_account .pmpro_actionlinks a,
  .rw-account-page #pmpro_account a.pmpro_btn,
  .rw-account-page #pmpro_account a.pmpro_btn-select,
  .rw-account-page #pmpro_account input.pmpro_btn,
  .rw-account-page #pmpro_account .pmpro_btn{
    min-height:42px;
    padding:0 12px;
    border-radius:12px;
    font-size:13px;
  }

  .rw-account-page .woocommerce-form-login__submit,
  .rw-account-page .woocommerce-form-register__submit,
  .rw-account-page .woocommerce-Button[name="save_account_details"],
  .rw-account-page .woocommerce-address-fields .button,
  .rw-account-page .woocommerce-Button[name="save_address"]{
    min-width:0;
  }
}


.rw-newsletter-box{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px;align-items:center;padding:24px;border:1px solid var(--rw-border);border-radius:22px;background:linear-gradient(135deg,rgba(240,248,255,.95),rgba(255,255,255,.98))}
.rw-newsletter-copy h3{margin:10px 0 8px;font-family:"Outfit",sans-serif;font-size:28px;line-height:1.08;color:var(--rw-text)}
.rw-newsletter-copy p{margin:0;color:var(--rw-muted);max-width:640px}
.rw-newsletter-form{display:flex;gap:12px;align-items:center}
.rw-newsletter-form input[type="email"]{width:100%;min-height:54px;border:1px solid var(--rw-border);border-radius:16px;padding:0 16px;font-size:15px;background:#fff;color:var(--rw-text);outline:none}
.rw-newsletter-form input[type="email"]:focus{border-color:#a9c9e6;box-shadow:0 0 0 3px rgba(22,117,183,.1)}
.rw-newsletter-form .btn{min-height:54px;white-space:nowrap}
.rw-newsletter-message{margin-bottom:14px;padding:12px 14px;border-radius:14px;border:1px solid var(--rw-border);font-weight:600}
.rw-newsletter-message.is-success{background:#eaf8ef;color:#1d6b32}
.rw-newsletter-message.is-info{background:#eef6fc;color:#0f5b8f}
.rw-newsletter-message.is-error{background:#fff0f0;color:#a12727}
@media (max-width:900px){.rw-newsletter-box{grid-template-columns:1fr}.rw-newsletter-form{flex-direction:column;align-items:stretch}}


/* Consistent shell spacing for custom forecast tools */
.rw-thunderstorm-shell{padding:26px;}
.rw-thunderstorm-shell .page{padding:0;}
.rw-thunderstorm-shell .hero,.rw-thunderstorm-shell .panel{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,249,253,.95));}
.rw-forecast-page .hero,.rw-forecast-page .panel{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,249,253,.95));}
@media (max-width:680px){
  .rw-thunderstorm-shell{padding:20px;}
}


/* Forced global background */
body, html {
  background: radial-gradient(circle at top, rgba(22,117,183,.08), transparent 34%), linear-gradient(180deg, #f9fbfd 0%, #eef4f9 100%) !important;
}

/* Consistent page spacing */
.page-wrap{
  margin:0;
  padding-top:0;
}
.page-wrap > *:first-child{
  margin-top:0 !important;
}
.page-wrap > .content-section:first-child,
.page-wrap > .entry-full:first-child,
.page-wrap > section:first-child,
.page-wrap > article:first-child{
  margin-top:0 !important;
}
.rw-pollen-page .rw-pollen-wrap,
.rw-chart-viewer-page,
.rw-forecast-page .rwf-page{
  padding-top:0 !important;
}

/* More separation above newsletter signup */
.newsletter-signup-section{
  margin-top:34px !important;
}
@media (max-width: 782px){
  .newsletter-signup-section{
    margin-top:26px !important;
  }
}

/* Newsletter section shell width fix */
.newsletter-signup-section{
  width: 100%;
  max-width: 1380px !important;
  margin: 34px auto 26px !important;
  padding: 26px !important;
  box-sizing: border-box;
}
.newsletter-signup-section .rw-newsletter-box{
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.newsletter-signup-section .rw-newsletter-form{
  width: 100%;
  min-width: 0;
}
.newsletter-signup-section .rw-newsletter-form input[type="email"]{
  min-width: 0;
  flex: 1 1 auto;
}
@media (max-width: 1380px){
  .newsletter-signup-section{
    width: calc(100% - 32px) !important;
  }
}
@media (max-width: 782px){
  .newsletter-signup-section{
    width: calc(100% - 20px) !important;
    margin: 26px auto 20px !important;
    padding: 20px !important;
  }
}

/* Mobile: force forecast search and live weather bars visible above page content */
@media (max-width: 782px){
  .site-header .header-forecast-search{
    display:block !important;
    margin-top:14px !important;
    margin-bottom:14px !important;
  }

  .site-header .rw-forecast-search-wrap{
    display:block !important;
  }

  .site-header .rw-forecast-search-row{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }

  .site-header .rw-forecast-search-box,
  .site-header #rwLocationInput,
  .site-header .rw-forecast-search-btn{
    width:100% !important;
    min-width:0 !important;
  }

  .site-header .rw-forecast-search-btn{
    justify-content:center !important;
  }

  .site-header .rw-header-livebar{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:8px !important;
    margin-top:12px !important;
    margin-bottom:12px !important;
    padding:10px !important;
  }

  .site-header .rw-livebar-location{
    min-width:0 !important;
  }

  .site-header .rw-livebar-metrics{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:6px !important;
    width:100% !important;
  }

  .site-header .rw-livebar-item{
    padding:6px 7px !important;
    min-height:auto !important;
  }

  .site-header .rw-livebar-item-label{
    font-size:9px !important;
    margin-bottom:2px !important;
  }

  .site-header .rw-livebar-item strong{
    font-size:13px !important;
    line-height:1.15 !important;
  }

  .site-header #rwLivebarLocation{
    font-size:17px !important;
  }

  .site-header #rwLivebarTime,
  .site-header .rw-livebar-forecast-link{
    font-size:11px !important;
  }
}

@media (max-width: 520px){
  .site-header .rw-livebar-metrics{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }

  .site-header #rwLivebarLocation{
    font-size:22px !important;
  }
}

/* Mobile top tools redesign */
.rw-mobile-top-tools{
  display:none;
}
@media (max-width: 782px){
  .rw-mobile-top-tools{
    display:block !important;
    width:100%;
    margin:0 0 18px !important;
  }

  .rw-mobile-top-tools .rw-mobile-top-search{
    display:block !important;
    margin:0 0 14px !important;
    padding:16px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,249,253,.95)) !important;
    border:1px solid var(--rw-border) !important;
    border-radius:20px !important;
    box-shadow:var(--rw-shadow) !important;
    backdrop-filter:blur(10px) !important;
  }

  .rw-mobile-top-tools .rw-forecast-search-wrap{
    width:100% !important;
    max-width:100% !important;
  }

  .rw-mobile-top-tools .rw-forecast-search-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 118px !important;
    gap:10px !important;
    align-items:stretch !important;
  }

  .rw-mobile-top-tools .rw-forecast-search-box{
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
  }

  .rw-mobile-top-tools #rwLocationInputMobile{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:54px !important;
    min-height:54px !important;
    padding:0 16px !important;
    border-radius:16px !important;
    border:1px solid var(--rw-border) !important;
    background:rgba(255,255,255,.96) !important;
    color:var(--rw-text) !important;
    box-sizing:border-box !important;
    font-size:15px !important;
    outline:none !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.85) !important;
  }

  .rw-mobile-top-tools #rwLocationInputMobile:focus{
    border-color:rgba(110,168,218,.65) !important;
    box-shadow:0 0 0 3px rgba(110,168,218,.14) !important;
  }

  .rw-mobile-top-tools #rwForecastSearchBtnMobile{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    height:54px !important;
    min-height:54px !important;
    padding:0 16px !important;
    border-radius:16px !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box !important;
    white-space:nowrap !important;
  }

  .rw-mobile-top-tools #rwForecastSuggestionsMobile{
    position:absolute !important;
    top:calc(100% + 8px) !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:100% !important;
    z-index:9999 !important;
    box-sizing:border-box !important;
  }

  .rw-mobile-top-tools .rw-header-livebar{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
    margin:0 !important;
    padding:16px !important;
  }

  .site-header .header-forecast-search,
  .site-header .rw-header-livebar{
    display:none !important;
  }
}

@media (max-width: 560px){
  .rw-mobile-top-tools .rw-forecast-search-row{
    grid-template-columns:minmax(0,1fr) 104px !important;
    gap:8px !important;
  }

  .rw-mobile-top-tools #rwLocationInputMobile,
  .rw-mobile-top-tools #rwForecastSearchBtnMobile{
    height:50px !important;
    min-height:50px !important;
    border-radius:14px !important;
  }

  .rw-mobile-top-tools .rw-mobile-top-search{
    padding:14px !important;
  }
}

/* Mobile UI refinements */
@media (max-width: 782px){
  /* keep autocomplete above everything */
  .rw-mobile-top-tools{
    position: relative !important;
    z-index: 40 !important;
  }
  .rw-mobile-top-tools .rw-mobile-top-search{
    border-radius: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 14px 12px !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 60 !important;
  }
  .rw-mobile-top-tools .rw-header-livebar{
    border-radius: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 14px 12px !important;
  }

  /* smaller location title and hide date/time */
  .rw-mobile-top-tools #rwLivebarLocationMobile{
    font-size: 19px !important;
    line-height: 1.05 !important;
  }
  .rw-mobile-top-tools #rwLivebarTimeMobile{
    display: none !important;
  }

  /* full-width, straighter feature/hero cards */
  .hero-card,
  .featured-post,
  .featured-post-card,
  .featured-posts-section .content-section,
  .featured-posts .content-section{
    border-radius: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  /* mobile search layout + prevent iOS zoom */
  .rw-mobile-top-tools .rw-forecast-search-row{
    grid-template-columns: minmax(0,1fr) 96px !important;
    gap: 8px !important;
  }
  .rw-mobile-top-tools #rwLocationInputMobile{
    font-size: 16px !important;
    border-radius: 0 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
  }
  .rw-mobile-top-tools #rwForecastSearchBtnMobile{
    font-size: 16px !important;
    border-radius: 0 !important;
  }

  /* ensure suggestions are visible above live bar/content */
  .rw-mobile-top-tools .rw-forecast-search-box{
    overflow: visible !important;
    z-index: 10001 !important;
  }
  .rw-mobile-top-tools #rwForecastSuggestionsMobile{
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10050 !important;
    display: none;
    max-height: 280px !important;
    overflow-y: auto !important;
    border-radius: 0 !important;
    box-shadow: 0 16px 28px rgba(15,23,42,.18) !important;
  }

  /* make surrounding sections not clip dropdown */
  .page-wrap,
  .content-section,
  .site-shell,
  .outer{
    overflow: visible !important;
  }
}

@media (max-width: 560px){
  .rw-mobile-top-tools .rw-forecast-search-row{
    grid-template-columns: minmax(0,1fr) 90px !important;
  }
  .rw-mobile-top-tools #rwLocationInputMobile,
  .rw-mobile-top-tools #rwForecastSearchBtnMobile{
    height: 48px !important;
    min-height: 48px !important;
  }
}

/* Mobile micro adjustments */
@media (max-width: 782px){
  /* smaller location text */
  .rw-mobile-top-tools #rwLivebarLocationMobile{
    font-size: 17px !important;
    line-height: 1.05 !important;
  }

  /* keep outer box straight but round inner input/button */
  .rw-mobile-top-tools .rw-mobile-top-search{
    border-radius: 0 !important;
  }

  .rw-mobile-top-tools #rwLocationInputMobile{
    border-radius: 14px !important;
  }

  .rw-mobile-top-tools #rwForecastSearchBtnMobile{
    border-radius: 14px !important;
  }
}

/* Competitions */
.rw-competitions-hero{position:relative;overflow:hidden}
.rw-competitions-hero::after{content:"";position:absolute;inset:auto -60px -90px auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(22,117,183,.14),transparent 70%);pointer-events:none}
.rw-competitions-hero-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:300px}.rw-competitions-hero-meta div{padding:18px;border-radius:18px;background:#fff;border:1px solid var(--rw-border);box-shadow:var(--rw-shadow-soft)}
.rw-competitions-hero-meta strong{display:block;font-size:28px;font-family:"Outfit",sans-serif}.rw-competitions-hero-meta span{display:block;color:var(--rw-muted);font-size:14px}
.rw-competitions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.rw-competition-card{display:flex;flex-direction:column;border:1px solid var(--rw-border);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#fff,rgba(238,246,252,.9));box-shadow:var(--rw-shadow-soft)}
.rw-competition-thumb{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,#d4e8f7,#eff7fd)}.rw-competition-thumb img{width:100%;height:100%;object-fit:cover}.rw-competition-thumb-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:72px}.rw-competition-thumb-fallback.rw-large{min-height:360px;border-radius:22px;background:linear-gradient(135deg,#d8ebf8,#f3f8fc)}
.rw-competition-body{padding:20px;display:flex;flex-direction:column;gap:14px}.rw-competition-topline,.rw-competition-metrics,.rw-competition-stats-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.rw-competition-price,.rw-competition-stats-inline span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid var(--rw-border);font-size:14px}.rw-competition-price small,.rw-competition-stats-inline small{color:var(--rw-muted)}
.rw-competition-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:linear-gradient(135deg,rgba(22,117,183,.12),rgba(97,194,255,.14));border:1px solid rgba(22,117,183,.12);color:var(--rw-blue-dark);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.rw-competition-body h2{margin:0;font-size:26px}.rw-competition-body p{margin:0;color:var(--rw-muted);font-size:15px}.rw-competition-metrics span{font-size:14px;color:var(--rw-text)}.rw-competition-progress{height:10px;border-radius:999px;background:#e6eef6;overflow:hidden}.rw-competition-progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1675b7,#69b8f0)}.rw-competition-expiry{font-size:14px;color:var(--rw-muted)}
.rw-competition-single-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px}.rw-competition-header-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.9fr);gap:22px;align-items:start}.rw-competition-copy .entry-content{margin-top:16px}.rw-competition-media img{width:100%;border-radius:22px;min-height:360px;object-fit:cover}
.rw-ticket-panel,.rw-side-card,.rw-winners-panel{margin-top:24px;padding:22px;border:1px solid var(--rw-border);border-radius:22px;background:#fff;box-shadow:var(--rw-shadow-soft)}
.rw-competition-notice{margin-bottom:18px;padding:14px 16px;border-radius:16px;border:1px solid var(--rw-border)}.rw-competition-notice.is-error{background:#fff4f4;border-color:#f2c9c9}.rw-competition-notice.is-success{background:#effbf3;border-color:#b9e3c3}
.rw-ticket-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.rw-ticket-summary-box{padding:16px;border-radius:18px;background:linear-gradient(180deg,#f7fbff,#eef6fc);border:1px solid var(--rw-border)}.rw-ticket-summary-box strong{display:block;font-size:28px;font-family:"Outfit",sans-serif}.rw-ticket-summary-box span{font-size:14px;color:var(--rw-muted)}
.rw-ticket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px;max-height:480px;overflow:auto;padding:4px}.rw-ticket-pill{position:relative;display:block}.rw-ticket-pill input{position:absolute;opacity:0;pointer-events:none}.rw-ticket-pill span{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;border:1px solid var(--rw-border);background:#f9fcff;font-weight:700;cursor:pointer;transition:.18s ease}.rw-ticket-pill input:checked + span{background:linear-gradient(180deg,#27a0ef 0%,#1675b7 100%);border-color:#1675b7;color:#fff;box-shadow:0 10px 20px rgba(22,117,183,.22)}
.rw-bundle-box{margin:18px 0;padding:18px;border-radius:18px;background:#f7fbff;border:1px dashed #bdd5e8}.rw-bundle-box h3{margin:0 0 10px}.rw-bundle-grid,.rw-winners-grid{display:flex;flex-wrap:wrap;gap:10px}.rw-bundle-chip,.rw-winner-chip{padding:10px 12px;border-radius:999px;background:#fff;border:1px solid var(--rw-border);font-size:14px}
.rw-entry-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.rw-entry-card-block{display:flex;flex-direction:column;gap:8px}.rw-entry-card-block.full{grid-column:1/-1}.rw-entry-card-block label{font-weight:700;font-size:14px}.rw-entry-card-block input{height:50px;border-radius:14px;border:1px solid var(--rw-border);padding:0 14px;background:#fff}
.rw-mode-row{display:flex;flex-wrap:wrap;gap:12px}.rw-mode-row label{display:inline-flex;align-items:center;gap:8px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--rw-border);font-weight:600}.rw-checkout-copy{margin-top:12px;color:var(--rw-muted);font-size:14px}.rw-side-list,.rw-steps-list{margin:0;padding:0;list-style:none}.rw-side-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #edf2f7}.rw-side-list li:first-child{border-top:0}.rw-side-list span{color:var(--rw-muted)}.rw-steps-list{counter-reset:step}.rw-steps-list li{position:relative;padding-left:42px;margin-bottom:12px}.rw-steps-list li::before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:999px;background:var(--rw-blue-soft);border:1px solid var(--rw-border);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--rw-blue-dark)}
@media (max-width:1100px){.rw-competitions-grid,.rw-competition-single-grid,.rw-competition-header-card{grid-template-columns:1fr}.rw-competitions-hero-meta,.rw-ticket-toolbar,.rw-entry-details-grid{grid-template-columns:1fr}}
@media (max-width:720px){.rw-ticket-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}.rw-mode-row{flex-direction:column}}


/* User theme mode */
body.rw-theme-dark{background:radial-gradient(circle at top, rgba(111,167,214,.12), transparent 34%),linear-gradient(180deg,#08131f 0%,#0d1b2b 100%);color:#e7f0f8}
body.rw-theme-dark .site-header,body.rw-theme-dark .content-section,body.rw-theme-dark .feature-card,body.rw-theme-dark .post-card,body.rw-theme-dark .widget,body.rw-theme-dark .archive-header,body.rw-theme-dark .rw-my-weather-savebox,body.rw-theme-dark .rw-my-weather-card,body.rw-theme-dark .hero-card,body.rw-theme-dark .card,body.rw-theme-dark .row-card,body.rw-theme-dark .days-shell,body.rw-theme-dark .site-footer,body.rw-theme-dark .footer-cta,body.rw-theme-dark .footer-panel{background:#122131 !important;color:#e7f0f8;border-color:#28435b !important;box-shadow:0 16px 40px rgba(0,0,0,.28)}
body.rw-theme-dark .nav_main>li>a,body.rw-theme-dark .header-cta,body.rw-theme-dark .nav_main .sub-menu,body.rw-theme-dark .rw-my-weather-form input,body.rw-theme-dark .rw-pref-fieldset,body.rw-theme-dark .rw-my-weather-current,body.rw-theme-dark .feature-thumb,body.rw-theme-dark .btn-secondary{background:#0f1b29 !important;color:#e7f0f8;border-color:#28435b !important}
body.rw-theme-dark .nav_main>li:hover>a,body.rw-theme-dark .nav_main>li:focus-within>a,body.rw-theme-dark .nav_main>li.current-menu-item>a,body.rw-theme-dark .nav_main>li.current-menu-ancestor>a,body.rw-theme-dark .nav_main>li.current_page_parent>a,body.rw-theme-dark .rw-livebar-item,body.rw-theme-dark .rw-my-weather-alert-success{background:#173148 !important;color:#e7f0f8;border-color:#2c5170 !important}
body.rw-theme-dark .brand-name,body.rw-theme-dark h1,body.rw-theme-dark h2,body.rw-theme-dark h3,body.rw-theme-dark h4,body.rw-theme-dark .archive-title,body.rw-theme-dark .feature-title,body.rw-theme-dark .feature-tag,body.rw-theme-dark .rw-livebar-location strong{color:#f5fbff !important}
body.rw-theme-dark p,body.rw-theme-dark .brand-tag,body.rw-theme-dark .archive-description,body.rw-theme-dark .feature-copy,body.rw-theme-dark .rw-my-weather-current span,body.rw-theme-dark .rw-livebar-label,body.rw-theme-dark .rw-livebar-item-label,body.rw-theme-dark .rw-livebar-forecast-link,body.rw-theme-dark .nav_main .sub-menu li a{color:#b8c9d8 !important}
body.rw-theme-dark a{color:#8fc8ff} body.rw-theme-dark a:hover{color:#c6e4ff}
body.rw-theme-dark #rwLocationInput,body.rw-theme-dark #rwLocationInputMobile,body.rw-theme-dark #rwSavedLocation,body.rw-theme-dark .rw-forecast-suggestions,body.rw-theme-dark .rw-mobile-top-search{background:#0f1b29 !important;color:#e7f0f8;border-color:#28435b !important}
body.rw-theme-dark .rw-header-livebar,body.rw-theme-dark .header-forecast-search{border-color:#28435b !important}
body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) {background:transparent;}
body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .hero,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .days-shell,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .card,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .row-card,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .kpi,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .day-tab,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .forecast-chip,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .ghost-btn,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .tab-nav-btn,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .suggestions{background:#122131 !important;color:#e7f0f8;border-color:#28435b !important}
body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .hero p,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .status-line,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .card .label,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .card .sub,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .panel-sub,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .weather-sub,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .kpi .k,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .loading,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .empty,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .footer-note,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .suggestion small,body.rw-theme-dark .rw-forecast-page:not([data-theme="dark"]) .day-tab .meta{color:#b8c9d8 !important}

/* Expanded dark mode polish */
body.rw-theme-dark,
body.rw-theme-dark .outer,
body.rw-theme-dark .site-shell{background:transparent;color:#e7f0f8}
body.rw-theme-dark .site-main,
body.rw-theme-dark main,
body.rw-theme-dark article,
body.rw-theme-dark section,
body.rw-theme-dark aside,
body.rw-theme-dark .post,
body.rw-theme-dark .page,
body.rw-theme-dark .entry-content,
body.rw-theme-dark .entry-content > *,
body.rw-theme-dark .wp-block-group,
body.rw-theme-dark .wp-block-cover__inner-container,
body.rw-theme-dark .wp-block-columns,
body.rw-theme-dark .wp-block-column{color:#e7f0f8}
body.rw-theme-dark .site-content,
body.rw-theme-dark .page-content,
body.rw-theme-dark .content-wrap,
body.rw-theme-dark .content-card,
body.rw-theme-dark .panel,
body.rw-theme-dark .box,
body.rw-theme-dark .module,
body.rw-theme-dark .tile,
body.rw-theme-dark .inner,
body.rw-theme-dark .hero,
body.rw-theme-dark .forecast-shell,
body.rw-theme-dark .forecast-layout,
body.rw-theme-dark .forecast-panel,
body.rw-theme-dark .kpi,
body.rw-theme-dark .day-tab,
body.rw-theme-dark .forecast-chip,
body.rw-theme-dark .ghost-btn,
body.rw-theme-dark .tab-nav-btn,
body.rw-theme-dark .suggestions,
body.rw-theme-dark .suggestion,
body.rw-theme-dark .rw-competition-card,
body.rw-theme-dark .rw-competition-panel,
body.rw-theme-dark .rw-competition-sidebar,
body.rw-theme-dark .rw-ticket-summary-box,
body.rw-theme-dark .rw-bundle-box,
body.rw-theme-dark .rw-bundle-chip,
body.rw-theme-dark .rw-winner-chip,
body.rw-theme-dark .rw-competition-notice,
body.rw-theme-dark .rw-entry-card-block input,
body.rw-theme-dark .rw-mode-row label,
body.rw-theme-dark .rw-ticket-pill span,
body.rw-theme-dark .rw-side-list li,
body.rw-theme-dark table,
body.rw-theme-dark tbody,
body.rw-theme-dark thead,
body.rw-theme-dark tfoot,
body.rw-theme-dark tr,
body.rw-theme-dark td,
body.rw-theme-dark th,
body.rw-theme-dark form,
body.rw-theme-dark fieldset,
body.rw-theme-dark pre,
body.rw-theme-dark code,
body.rw-theme-dark blockquote,
body.rw-theme-dark .wp-block-table,
body.rw-theme-dark .wp-block-latest-posts li,
body.rw-theme-dark .wp-block-search,
body.rw-theme-dark .wp-block-calendar,
body.rw-theme-dark .wp-block-quote,
body.rw-theme-dark .wp-block-pullquote,
body.rw-theme-dark .wp-block-code,
body.rw-theme-dark .wp-block-preformatted,
body.rw-theme-dark .wp-block-details,
body.rw-theme-dark .wp-block-file,
body.rw-theme-dark .wp-block-media-text,
body.rw-theme-dark .wp-block-separator,
body.rw-theme-dark .wp-block-archives,
body.rw-theme-dark .wp-block-categories,
body.rw-theme-dark .wp-block-latest-comments,
body.rw-theme-dark .pmpro,
body.rw-theme-dark .pmpro_content_message,
body.rw-theme-dark .pmpro_checkout,
body.rw-theme-dark .pmpro_confirmation_wrap,
body.rw-theme-dark .pmpro_table,
body.rw-theme-dark .somfrp-lost-pass-form-container,
body.rw-theme-dark .wpfp_wrapper,
body.rw-theme-dark [style*="background:#fff"],
body.rw-theme-dark [style*="background: #fff"],
body.rw-theme-dark [style*="background-color:#fff"],
body.rw-theme-dark [style*="background-color: #fff"],
body.rw-theme-dark [style*="background:#ffffff"],
body.rw-theme-dark [style*="background: #ffffff"],
body.rw-theme-dark [style*="background-color:#ffffff"],
body.rw-theme-dark [style*="background-color: #ffffff"]{background:#122131 !important;color:#e7f0f8 !important;border-color:#28435b !important}
body.rw-theme-dark input,
body.rw-theme-dark select,
body.rw-theme-dark textarea,
body.rw-theme-dark button,
body.rw-theme-dark .button,
body.rw-theme-dark .btn,
body.rw-theme-dark .wp-element-button,
body.rw-theme-dark .wp-block-button__link,
body.rw-theme-dark .search-field,
body.rw-theme-dark .search-form input,
body.rw-theme-dark .comment-form input,
body.rw-theme-dark .comment-form textarea,
body.rw-theme-dark .pmpro_checkout-fields input,
body.rw-theme-dark .pmpro_checkout-fields select,
body.rw-theme-dark .pmpro_checkout-fields textarea{background:#0f1b29 !important;color:#eef7ff !important;border:1px solid #28435b !important;box-shadow:none}
body.rw-theme-dark input::placeholder,
body.rw-theme-dark textarea::placeholder{color:#8ea8bf !important}
body.rw-theme-dark label,
body.rw-theme-dark legend,
body.rw-theme-dark small,
body.rw-theme-dark .meta,
body.rw-theme-dark .sub,
body.rw-theme-dark .label,
body.rw-theme-dark .muted,
body.rw-theme-dark .status-line,
body.rw-theme-dark .weather-sub,
body.rw-theme-dark .panel-sub,
body.rw-theme-dark .footer-note,
body.rw-theme-dark .suggestion small,
body.rw-theme-dark .pmpro_message,
body.rw-theme-dark .pmpro_price_part-label,
body.rw-theme-dark .pmpro_level_description_text,
body.rw-theme-dark .somfrp-lost-pass-form-text{color:#b8c9d8 !important}
body.rw-theme-dark h5,
body.rw-theme-dark h6,
body.rw-theme-dark strong,
body.rw-theme-dark th,
body.rw-theme-dark .kpi strong,
body.rw-theme-dark .weather-main,
body.rw-theme-dark .rw-ticket-summary-box strong,
body.rw-theme-dark .rw-side-list strong,
body.rw-theme-dark .pmpro_card_title{color:#f5fbff !important}
body.rw-theme-dark .wp-block-button__link,
body.rw-theme-dark .button,
body.rw-theme-dark button[type="submit"],
body.rw-theme-dark input[type="submit"],
body.rw-theme-dark input[type="button"],
body.rw-theme-dark .btn-primary,
body.rw-theme-dark .header-cta,
body.rw-theme-dark .rw-livebar-forecast-link{background:linear-gradient(135deg,#1c6ea8 0%,#0f4f80 100%) !important;border-color:#2d7bb3 !important;color:#fff !important}
body.rw-theme-dark .nav_main .sub-menu li a:hover,
body.rw-theme-dark .nav_main .sub-menu li.current-menu-item > a,
body.rw-theme-dark .rw-bundle-chip.is-active,
body.rw-theme-dark .rw-winner-chip.is-active,
body.rw-theme-dark .day-tab.is-active,
body.rw-theme-dark .tab-nav-btn.is-active,
body.rw-theme-dark .forecast-chip.is-active{background:#173148 !important;color:#fff !important;border-color:#3a668a !important}
body.rw-theme-dark hr,
body.rw-theme-dark .wp-block-separator,
body.rw-theme-dark table td,
body.rw-theme-dark table th,
body.rw-theme-dark .rw-side-list li,
body.rw-theme-dark .comment-list article,
body.rw-theme-dark .nav-links,
body.rw-theme-dark .pmpro_table td,
body.rw-theme-dark .pmpro_table th{border-color:#28435b !important}
body.rw-theme-dark .site-footer a,
body.rw-theme-dark .footer-panel a,
body.rw-theme-dark .widget a,
body.rw-theme-dark .entry-content a{color:#8fc8ff !important}
body.rw-theme-dark .site-footer a:hover,
body.rw-theme-dark .footer-panel a:hover,
body.rw-theme-dark .widget a:hover,
body.rw-theme-dark .entry-content a:hover{color:#d8ecff !important}
body.rw-theme-dark img{opacity:.98}


/* Dark mode refinements for blog, newsletter, chart viewer, footer and live weather bar */
body.rw-theme-dark .entry-full,
body.rw-theme-dark .entry-full header,
body.rw-theme-dark .entry-full .entry-content,
body.rw-theme-dark .entry-full .entry-content .wp-block-group,
body.rw-theme-dark .entry-full .entry-content .wp-block-columns,
body.rw-theme-dark .entry-full .entry-content .wp-block-column,
body.rw-theme-dark .entry-full .entry-content .wp-block-cover__inner-container,
body.rw-theme-dark .entry-full .entry-content .wp-block-media-text,
body.rw-theme-dark .entry-full .entry-content .wp-block-table,
body.rw-theme-dark .entry-full .entry-content .wp-block-quote,
body.rw-theme-dark .entry-full .entry-content .wp-block-pullquote,
body.rw-theme-dark .entry-full .entry-content .wp-block-code,
body.rw-theme-dark .entry-full .entry-content .wp-block-preformatted,
body.rw-theme-dark .entry-full .entry-content .wp-block-details,
body.rw-theme-dark .entry-full .entry-content .wp-block-latest-posts li,
body.rw-theme-dark .entry-full .entry-content .wp-block-search,
body.rw-theme-dark .entry-full .entry-content .wp-block-calendar,
body.rw-theme-dark .entry-full .entry-content .wp-block-file,
body.rw-theme-dark .entry-full .entry-content .wp-block-archives,
body.rw-theme-dark .entry-full .entry-content .wp-block-categories,
body.rw-theme-dark .entry-full .entry-content .wp-block-latest-comments,
body.rw-theme-dark .entry-full .entry-content .wp-block-buttons,
body.rw-theme-dark .entry-full .entry-content .wp-block-button,
body.rw-theme-dark .entry-full .entry-content .wp-block-separator,
body.rw-theme-dark .entry-full .entry-content > div,
body.rw-theme-dark .entry-full .entry-content > section{
  color:#e7f0f8 !important;
}
body.rw-theme-dark .entry-full .entry-meta,
body.rw-theme-dark .entry-full .entry-meta span,
body.rw-theme-dark .entry-full .entry-meta a,
body.rw-theme-dark .entry-full .post-thumbnail-overlay .entry-meta,
body.rw-theme-dark .entry-full .post-thumbnail-overlay .entry-meta a{color:#dbe8f4 !important}
body.rw-theme-dark .entry-full .entry-content [style*="background:#f"],
body.rw-theme-dark .entry-full .entry-content [style*="background: #f"],
body.rw-theme-dark .entry-full .entry-content [style*="background-color:#f"],
body.rw-theme-dark .entry-full .entry-content [style*="background-color: #f"]{background:#122131 !important;color:#e7f0f8 !important;border-color:#28435b !important}

body.rw-theme-dark .newsletter-signup-section,
body.rw-theme-dark .rw-newsletter-box,
body.rw-theme-dark .rw-newsletter-form,
body.rw-theme-dark .rw-newsletter-form input[type="email"],
body.rw-theme-dark .rw-newsletter-message{
  background:#122131 !important;
  color:#e7f0f8 !important;
  border-color:#28435b !important;
}
body.rw-theme-dark .rw-newsletter-copy h3,
body.rw-theme-dark .rw-newsletter-copy p,
body.rw-theme-dark .rw-newsletter-copy .feature-tag{color:#f5fbff !important}
body.rw-theme-dark .rw-newsletter-copy p,
body.rw-theme-dark .rw-newsletter-form input[type="email"]::placeholder{color:#b8c9d8 !important}
body.rw-theme-dark .rw-newsletter-message.is-success{background:rgba(35,113,74,.28) !important;color:#d8f3e3 !important;border-color:rgba(71,163,111,.55) !important}
body.rw-theme-dark .rw-newsletter-message.is-info{background:rgba(22,117,183,.22) !important;color:#d8ecff !important;border-color:rgba(88,154,208,.5) !important}
body.rw-theme-dark .rw-newsletter-message.is-error{background:rgba(161,39,39,.25) !important;color:#ffdede !important;border-color:rgba(202,89,89,.5) !important}

body.rw-theme-dark .site-footer,
body.rw-theme-dark .site-footer-inner,
body.rw-theme-dark .footer-row,
body.rw-theme-dark .footer-row-top,
body.rw-theme-dark .footer-row-bottom,
body.rw-theme-dark .footer-links,
body.rw-theme-dark .footer-copy,
body.rw-theme-dark .footer-brand{
  background:transparent !important;
  color:#dce8f3 !important;
  border-color:#28435b !important;
}
body.rw-theme-dark .site-footer{background:#0e1b2a !important}
body.rw-theme-dark .footer-copy p,
body.rw-theme-dark .footer-links a,
body.rw-theme-dark .footer-brand,
body.rw-theme-dark .footer-brand img{color:#dce8f3 !important}

body.rw-theme-dark .rw-header-livebar,
body.rw-theme-dark .rw-livebar-location,
body.rw-theme-dark .rw-livebar-metrics,
body.rw-theme-dark .rw-livebar-main,
body.rw-theme-dark .rw-livebar-item,
body.rw-theme-dark .rw-livebar-forecast-link{
  background:#122131 !important;
  color:#e7f0f8 !important;
  border-color:#28435b !important;
}
body.rw-theme-dark .rw-livebar-item{background:#173148 !important}
body.rw-theme-dark .rw-livebar-label,
body.rw-theme-dark #rwLivebarTime,
body.rw-theme-dark #rwLivebarWind,
body.rw-theme-dark #rwLivebarCloud,
body.rw-theme-dark #rwLivebarRain,
body.rw-theme-dark .rw-livebar-item-label{color:#b8c9d8 !important}
body.rw-theme-dark #rwLivebarLocation,
body.rw-theme-dark #rwLivebarTemp,
body.rw-theme-dark .rw-livebar-icon{color:#f5fbff !important}

body.rw-theme-dark .rw-chart-viewer-page,
body.rw-theme-dark .rw-chart-viewer-section{background:transparent !important}


/* Dark mode final fixes for blog posts and sitewide feature tags */
body.rw-theme-dark .feature-tag,
body.rw-theme-dark .entry-full .feature-tag,
body.rw-theme-dark .footer-cta .feature-tag,
body.rw-theme-dark .newsletter-signup-section .feature-tag,
body.rw-theme-dark .rw-newsletter-copy .feature-tag{
  background:#173148 !important;
  color:#f5fbff !important;
  border:1px solid #305572 !important;
  box-shadow:none !important;
}
body.rw-theme-dark.single-post .page-wrap,
body.rw-theme-dark.single-post .entry-full,
body.rw-theme-dark.single-post article.entry-full,
body.rw-theme-dark.blog .entry-full{
  background:#122131 !important;
  color:#e7f0f8 !important;
  border-color:#28435b !important;
}
body.rw-theme-dark.single-post .entry-full > header,
body.rw-theme-dark.single-post .entry-full .entry-content,
body.rw-theme-dark.single-post .entry-full .entry-content > *,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-group,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-columns,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-column,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-cover__inner-container,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-media-text,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-table,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-quote,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-pullquote,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-code,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-preformatted,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-details,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-latest-posts li,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-search,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-calendar,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-file,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-archives,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-categories,
body.rw-theme-dark.single-post .entry-full .entry-content .wp-block-latest-comments{
  background:transparent !important;
  color:#e7f0f8 !important;
}
body.rw-theme-dark.single-post .entry-full .entry-content [class*="has-"][class*="background"],
body.rw-theme-dark.single-post .entry-full .entry-content [style*="background"],
body.rw-theme-dark.single-post .entry-full .entry-content [style*="Background"]{
  background:#122131 !important;
  color:#e7f0f8 !important;
  border-color:#28435b !important;
}
body.rw-theme-dark.single-post .entry-full .entry-meta,
body.rw-theme-dark.single-post .entry-full .entry-meta span,
body.rw-theme-dark.single-post .entry-full .entry-meta a,
body.rw-theme-dark.single-post .entry-full .post-thumbnail-overlay .entry-meta,
body.rw-theme-dark.single-post .entry-full .post-thumbnail-overlay .entry-meta span,
body.rw-theme-dark.single-post .entry-full .post-thumbnail-overlay .entry-meta a{
  color:#dbe8f4 !important;
}
body.rw-theme-dark.single-post .entry-full .entry-meta span{
  background:#173148 !important;
  border-color:#305572 !important;
  color:#f5fbff !important;
}


.rw-my-weather-locations-list{display:grid;gap:12px;margin-bottom:16px}
.rw-my-weather-location-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid var(--rw-border, #d7e3ee);border-radius:16px;background:rgba(248,251,255,.9)}
.rw-my-weather-default-option,.rw-my-weather-remove-option{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--rw-text, #16324a)}
.rw-my-weather-location-value{font-weight:700;color:var(--rw-text, #16324a);word-break:break-word}
body.rw-theme-dark .rw-my-weather-location-item{background:#0f1b29 !important;border-color:#28435b !important}
body.rw-theme-dark .rw-my-weather-default-option,body.rw-theme-dark .rw-my-weather-remove-option,body.rw-theme-dark .rw-my-weather-location-value{color:#e7f0f8 !important}
@media (max-width:720px){.rw-my-weather-location-item{grid-template-columns:1fr;align-items:flex-start}}


.rw-top20-hero{grid-template-columns:minmax(0,1.42fr) minmax(380px,.94fr);gap:28px;align-items:start}
.rw-top20-hero .wd-hero-copy{min-width:0;padding-right:6px}
.rw-top20-hero .archive-title,.rw-top20-hero .archive-description{max-width:900px}
.rw-top20-note{max-width:640px;padding:20px 26px}
@media (max-width:1200px){.rw-top20-hero{grid-template-columns:minmax(0,1.28fr) minmax(340px,.9fr)}}
@media (max-width:980px){.rw-top20-hero{grid-template-columns:1fr}.rw-top20-note{max-width:none}}

body.rw-consent-required{overflow:hidden}
.rw-cookie-consent[hidden]{display:none !important}
.rw-cookie-consent{position:fixed;inset:0;z-index:999999;display:flex;align-items:flex-end;justify-content:center;padding:20px}
.rw-cookie-consent__backdrop{position:absolute;inset:0;background:rgba(8,19,31,.58);backdrop-filter:blur(3px)}
.rw-cookie-consent__panel{position:relative;width:min(760px,100%);display:grid;gap:18px;padding:24px 24px 22px;border-radius:24px;background:linear-gradient(180deg,#ffffff 0%,#f4f8fc 100%);border:1px solid #d5e5f2;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.rw-cookie-consent__copy h3{margin:8px 0 8px;font-size:28px;color:var(--rw-blue-dark)}
.rw-cookie-consent__copy p{margin:0;color:var(--rw-muted)}
.rw-cookie-consent__links a{font-weight:700}
.rw-cookie-consent__actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}
body.rw-theme-dark .rw-cookie-consent__panel{background:linear-gradient(180deg,#122131 0%,#0f1b29 100%);border-color:#28435b}
body.rw-theme-dark .rw-cookie-consent__copy h3{color:#f5fbff}
body.rw-theme-dark .rw-cookie-consent__copy p{color:#c8d7e5}
body.rw-theme-dark .rw-cookie-consent__links a{color:#8fc8ff}
@media (max-width:640px){.rw-cookie-consent{padding:14px}.rw-cookie-consent__panel{padding:20px 18px;border-radius:20px}.rw-cookie-consent__copy h3{font-size:24px}.rw-cookie-consent__actions{justify-content:stretch}.rw-cookie-consent__actions .btn{width:100%}}


/* Mobile live weather bar sizing refinement */
@media (max-width: 782px){
  .rw-mobile-top-tools .rw-header-livebar{
    gap:8px !important;
    padding:10px 10px 8px !important;
  }

  .rw-mobile-top-tools .rw-livebar-metrics{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
  }

  .rw-mobile-top-tools .rw-livebar-item{
    padding:6px 7px !important;
    border-radius:10px !important;
    min-height:auto !important;
  }

  .rw-mobile-top-tools .rw-livebar-item-label{
    font-size:9px !important;
    line-height:1.1 !important;
    margin-bottom:2px !important;
  }

  .rw-mobile-top-tools .rw-livebar-item strong{
    font-size:13px !important;
    line-height:1.15 !important;
  }

  .rw-mobile-top-tools .rw-livebar-main{
    gap:6px !important;
  }

  .rw-mobile-top-tools .rw-livebar-icon{
    width:18px !important;
    height:18px !important;
    font-size:10px !important;
  }

  .rw-mobile-top-tools .rw-mobile-livebar-forecast-row{
    display:flex !important;
    align-items:baseline !important;
    gap:8px !important;
    flex-wrap:wrap !important;
  }

  .rw-mobile-top-tools #rwLivebarLocationMobile{
    font-size:13px !important;
    line-height:1.15 !important;
    font-weight:600 !important;
    flex:0 1 auto !important;
  }

  .rw-mobile-top-tools .rw-livebar-forecast-link{
    font-size:11px !important;
    line-height:1.2 !important;
    margin-top:0 !important;
    flex:0 1 auto !important;
  }
}


/* Homepage featured hero emphasis */
.hero-card-featured-home{
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 30px 70px rgba(15,23,42,.22);
}
.hero-card-featured-home::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(135deg, rgba(39,160,239,.22) 0%, rgba(39,160,239,.05) 24%, rgba(255,255,255,0) 44%),
             linear-gradient(0deg, rgba(4,12,24,.08) 0%, rgba(4,12,24,0) 30%);
  pointer-events:none;
}
.hero-card-featured-home .hero-content{
  align-items:center;
  padding:40px;
}
.hero-card-featured-home .hero-panel{
  max-width:720px;
  padding:24px 26px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(8,19,31,.56) 0%, rgba(8,19,31,.74) 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 40px rgba(0,0,0,.20);
  backdrop-filter:blur(4px);
}
.hero-card-featured-home .hero-kicker{
  background:linear-gradient(180deg, rgba(39,160,239,.28) 0%, rgba(39,160,239,.16) 100%);
  border-color:rgba(143,200,255,.42);
  color:#f5fbff;
  box-shadow:0 10px 24px rgba(11,83,130,.2);
}
.hero-card-featured-home .hero-title{
  font-size:clamp(38px,5.2vw,60px);
  text-shadow:0 8px 30px rgba(0,0,0,.28);
}
.hero-card-featured-home > img{
  transform:scale(1.03);
  filter:saturate(1.08) contrast(1.05) brightness(1.02);
}
.hero-card-featured-home .hero-text{
  font-size:19px;
  color:rgba(255,255,255,.96);
}
.hero-card-featured-home .hero-actions .btn-primary{
  box-shadow:0 16px 34px rgba(23,108,170,.34);
}
@media (max-width: 782px){
  .hero-card-featured-home{
    min-height:460px;
  }
  .hero-card-featured-home .hero-content{
    align-items:center;
    justify-content:center;
    padding:24px 18px;
  }
  .hero-card-featured-home .hero-panel{
    width:min(100%, 420px);
    margin:28px auto 0;
    padding:16px 14px;
    border-radius:18px;
  }
  .hero-card-featured-home .hero-title{
    font-size:clamp(24px,7.2vw,34px);
  }
  .hero-card-featured-home .hero-text{
    font-size:15px;
  }
}


/* PMPro checkout refresh */
body.pmpro-checkout .page-wrap,
body.page-template-default .pmpro_checkout,
body .pmpro_checkout{
  position:relative;
}
body .pmpro_checkout{
  margin-top:8px;
}
body .pmpro_checkout .pmpro_checkout-fields,
body .pmpro_checkout #pmpro_billing_address_fields,
body .pmpro_checkout #pmpro_payment_information_fields,
body .pmpro_checkout #pmpro_user_fields,
body .pmpro_checkout .pmpro_checkout-fieldset,
body .pmpro_checkout .pmpro_form_fieldset,
body .pmpro_checkout .pmpro_card,
body .pmpro_checkout .pmpro_level,
body .pmpro_checkout .pmpro_checkout_gateway,
body .pmpro_checkout .pmpro_submit,
body .pmpro_checkout .pmpro_message,
body .pmpro_confirmation_wrap,
body .pmpro_invoice-wrap,
body .pmpro_a-print{
  background:linear-gradient(180deg,#ffffff 0%,rgba(244,248,252,.96) 100%);
  border:1px solid var(--rw-border);
  border-radius:24px;
  box-shadow:var(--rw-shadow-soft);
}
body .pmpro_checkout .pmpro_checkout-fields,
body .pmpro_checkout #pmpro_billing_address_fields,
body .pmpro_checkout #pmpro_payment_information_fields,
body .pmpro_checkout #pmpro_user_fields,
body .pmpro_checkout .pmpro_checkout-fieldset,
body .pmpro_checkout .pmpro_form_fieldset,
body .pmpro_checkout .pmpro_card,
body .pmpro_checkout .pmpro_level,
body .pmpro_checkout .pmpro_checkout_gateway{
  padding:26px;
  margin:0 0 22px;
}
body .pmpro_checkout .pmpro_checkout-fields > :first-child,
body .pmpro_checkout #pmpro_billing_address_fields > :first-child,
body .pmpro_checkout #pmpro_payment_information_fields > :first-child,
body .pmpro_checkout #pmpro_user_fields > :first-child,
body .pmpro_checkout .pmpro_checkout-fieldset > :first-child,
body .pmpro_checkout .pmpro_form_fieldset > :first-child,
body .pmpro_checkout .pmpro_card > :first-child,
body .pmpro_checkout .pmpro_level > :first-child,
body .pmpro_checkout .pmpro_checkout_gateway > :first-child{
  margin-top:0;
}
body .pmpro_checkout h2,
body .pmpro_checkout h3,
body .pmpro_confirmation_wrap h2,
body .pmpro_confirmation_wrap h3{
  margin:0 0 10px;
  color:var(--rw-text);
  font-family:"Outfit",sans-serif;
  font-size:clamp(1.35rem,2vw,1.8rem);
  letter-spacing:-0.02em;
}
body .pmpro_checkout h2 + p,
body .pmpro_checkout h3 + p,
body .pmpro_checkout .pmpro_level_description_text,
body .pmpro_confirmation_wrap p{
  color:var(--rw-muted);
}
body .pmpro_checkout hr{
  border:0;
  border-top:1px solid rgba(15,23,42,.08);
  margin:22px 0;
}
body .pmpro_checkout .pmpro_checkout-field,
body .pmpro_checkout .pmpro_form_field,
body .pmpro_checkout .pmpro_payment-expiration,
body .pmpro_checkout .pmpro_payment-cvv,
body .pmpro_checkout .pmpro_cols,
body .pmpro_checkout .pmpro_checkout-fields-display-flex{
  margin-bottom:16px;
}
body .pmpro_checkout label,
body .pmpro_checkout legend,
body .pmpro_checkout .pmpro_label,
body .pmpro_checkout .pmpro_checkout-field label{
  display:block;
  margin-bottom:8px;
  color:var(--rw-text);
  font-weight:700;
  font-size:14px;
}
body .pmpro_checkout input[type="text"],
body .pmpro_checkout input[type="email"],
body .pmpro_checkout input[type="password"],
body .pmpro_checkout input[type="tel"],
body .pmpro_checkout input[type="number"],
body .pmpro_checkout select,
body .pmpro_checkout textarea{
  width:100%;
  min-height:52px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.12);
  background:rgba(255,255,255,.92);
  color:var(--rw-text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
body .pmpro_checkout textarea{
  min-height:140px;
  resize:vertical;
}
body .pmpro_checkout input:focus,
body .pmpro_checkout select:focus,
body .pmpro_checkout textarea:focus{
  outline:none;
  border-color:rgba(22,117,183,.42);
  box-shadow:0 0 0 4px rgba(22,117,183,.10);
}
body .pmpro_checkout input::placeholder,
body .pmpro_checkout textarea::placeholder{
  color:#7c8fa3;
}
body .pmpro_checkout input[type="checkbox"],
body .pmpro_checkout input[type="radio"]{
  accent-color:var(--rw-blue-dark);
}
body .pmpro_checkout .input-radio,
body .pmpro_checkout .pmpro_clickable,
body .pmpro_checkout .pmpro_checkout-field-radio-item,
body .pmpro_checkout .pmpro_checkout-field-checkbox-item{
  border-radius:16px;
}
body .pmpro_checkout .pmpro_btn,
body .pmpro_checkout .pmpro_button,
body .pmpro_checkout .pmpro_submit .pmpro_btn,
body .pmpro_checkout input[type="submit"],
body .pmpro_checkout button[type="submit"]{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 22px;
  border-radius:16px;
  border:1px solid rgba(12,75,122,.16);
  background:linear-gradient(135deg,#1b77b8 0%,#0f4f80 100%);
  color:#fff;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 14px 30px rgba(15,79,128,.18);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
body .pmpro_checkout .pmpro_btn:hover,
body .pmpro_checkout .pmpro_button:hover,
body .pmpro_checkout input[type="submit"]:hover,
body .pmpro_checkout button[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(15,79,128,.22);
  filter:brightness(1.02);
}
body .pmpro_checkout .pmpro_btn-cancel,
body .pmpro_checkout a.pmpro_btn-cancel,
body .pmpro_checkout .pmpro_btn.pmpro_btn-cancel{
  background:#fff;
  color:var(--rw-text);
  border-color:var(--rw-border);
  box-shadow:none;
}
body .pmpro_checkout .pmpro_message,
body .pmpro_confirmation_wrap .pmpro_message,
body .pmpro_checkout .pmpro_level-cost,
body .pmpro_checkout .pmpro_level-name{
  padding:18px 20px;
}
body .pmpro_checkout .pmpro_message{
  margin:0 0 18px;
}
body .pmpro_checkout .pmpro_level-cost,
body .pmpro_checkout .pmpro_level-name,
body .pmpro_checkout .pmpro_level-description,
body .pmpro_checkout .pmpro_level-expiration,
body .pmpro_checkout .pmpro_level-terms{
  background:transparent;
  border:0;
  padding-left:0;
  padding-right:0;
}
body .pmpro_checkout .pmpro_level-cost{
  font-size:1.1rem;
  color:var(--rw-text);
  font-weight:700;
}
body .pmpro_checkout .pmpro_price_part,
body .pmpro_checkout .pmpro_price_part-total,
body .pmpro_checkout .pmpro_price_part-label{
  font-size:inherit;
}
body .pmpro_checkout table,
body .pmpro_confirmation_wrap table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
}
body .pmpro_checkout th,
body .pmpro_checkout td,
body .pmpro_confirmation_wrap th,
body .pmpro_confirmation_wrap td{
  padding:14px 16px;
  border-bottom:1px solid rgba(15,23,42,.06);
  text-align:left;
}
body .pmpro_checkout thead th,
body .pmpro_confirmation_wrap thead th{
  background:#f6fafe;
  color:var(--rw-text);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
body .pmpro_checkout tbody tr:last-child td,
body .pmpro_confirmation_wrap tbody tr:last-child td{
  border-bottom:0;
}
body .pmpro_checkout .pmpro_checkout_gateway .pmpro_payment-option,
body .pmpro_checkout .pmpro_checkout_gateway .gateway,
body .pmpro_checkout .pmpro_checkout_gateway .pmpro_card_actions{
  padding:16px 18px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  background:rgba(248,251,254,.92);
}
body .pmpro_checkout .pmpro_submit{
  padding:22px 24px;
  margin:24px 0 0;
}
body .pmpro_checkout .pmpro_submit hr{
  display:none;
}
body .pmpro_checkout .pmpro_small,
body .pmpro_checkout small,
body .pmpro_checkout .lite,
body .pmpro_checkout .pmpro_checkout-h3-msg,
body .pmpro_checkout .pmpro_checkout-fields .pmpro_asterisk abbr,
body .pmpro_checkout .pmpro_checkout-fields .pmpro_asterisk{
  color:var(--rw-muted);
}
body .pmpro_checkout a{
  color:var(--rw-blue-dark);
}
body .pmpro_checkout .pmpro_member_display_name,
body .pmpro_checkout strong{
  color:var(--rw-text);
}
@media (min-width: 992px){
  body .pmpro_checkout{
    display:grid;
    gap:22px;
  }
}
@media (max-width: 767px){
  body .pmpro_checkout .pmpro_checkout-fields,
  body .pmpro_checkout #pmpro_billing_address_fields,
  body .pmpro_checkout #pmpro_payment_information_fields,
  body .pmpro_checkout #pmpro_user_fields,
  body .pmpro_checkout .pmpro_checkout-fieldset,
  body .pmpro_checkout .pmpro_form_fieldset,
  body .pmpro_checkout .pmpro_card,
  body .pmpro_checkout .pmpro_level,
  body .pmpro_checkout .pmpro_checkout_gateway,
  body .pmpro_checkout .pmpro_submit{
    padding:20px;
    border-radius:20px;
  }
  body .pmpro_checkout input[type="text"],
  body .pmpro_checkout input[type="email"],
  body .pmpro_checkout input[type="password"],
  body .pmpro_checkout input[type="tel"],
  body .pmpro_checkout input[type="number"],
  body .pmpro_checkout select,
  body .pmpro_checkout textarea,
  body .pmpro_checkout .pmpro_btn,
  body .pmpro_checkout .pmpro_button,
  body .pmpro_checkout input[type="submit"],
  body .pmpro_checkout button[type="submit"]{
    width:100%;
  }
}
