/*
Theme Name: Violet Neon Premium
Theme URI: https://example.com/
Author: Azura Production
Description: Premium-inspired lightweight WordPress theme with professional violet neon styling, AMP-friendly structure, and no Elementor dependency.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
Text Domain: violet-neon-premium
*/

:root{
  --bg:#140902;
  --bg-2:#1b0d03;
  --bg-3:#241103;

  --panel:#1d0e03;
  --panel-2:#261204;
  --panel-3:#311705;
  --panel-soft:#3a1d08;

  --line:rgba(255,153,51,.16);
  --line-strong:rgba(255,179,71,.28);

  --text:#ffffff;
  --muted:#f7e5d6;
  --muted-2:#e9c9ad;
  --muted-3:#d9ae87;

  --violet:#ff7a00;
  --violet-2:#ff9f1a;
  --violet-3:#ff5e00;
  --violet-4:#b34700;

  --gold:#ffd257;
  --gold-2:#ff9a00;
  --success:#ffb347;
  --danger:#ff6b6b;

  --shadow:0 20px 54px rgba(255,102,0,.20);
  --shadow-soft:0 12px 28px rgba(255,120,0,.14);

  --radius:28px;
  --radius-sm:18px;
  --container:min(1220px, calc(100% - 30px));
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  color:var(--text);
  font-family:Inter,Arial,Helvetica,sans-serif;
  background:
    radial-gradient(circle at 10% 10%, rgba(255,122,0,.18), transparent 26%),
    radial-gradient(circle at 90% 10%, rgba(255,184,0,.10), transparent 24%),
    linear-gradient(180deg, #140902 0%, #0f0602 48%, #1b0d03 100%);
  min-height:100vh;
}

body,p,span,li,td,th,label,small{
  color:var(--text);
}

h1,h2,h3,h4,h5,h6{
  color:#fff;
  margin:0 0 .75em;
  line-height:1.12;
}

p{
  margin:0 0 1em;
}

a{
  color:inherit;
  text-decoration:none;
  transition:.25s ease;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

button,
input,
textarea,
select{
  font:inherit;
}

.screen-reader-text{
  border:0;
  clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute !important;
  width:1px;
  word-wrap:normal !important;
}

.screen-reader-text:focus{
  background:#fff;
  clip:auto !important;
  clip-path:none;
  color:#000;
  display:block;
  height:auto;
  left:10px;
  line-height:normal;
  padding:12px 16px;
  text-decoration:none;
  top:10px;
  width:auto;
  z-index:100000;
}

.skip-link{
  position:absolute;
  left:-9999px;
  top:auto;
}

.skip-link:focus{
  left:12px;
  top:12px;
  z-index:999;
  background:#fff;
  color:#000;
  padding:8px 12px;
  border-radius:8px;
}

.site-shell{
  position:relative;
  overflow:hidden;
}

.site-shell::before,
.site-shell::after{
  content:"";
  position:fixed;
  top:74px;
  bottom:0;
  width:22vw;
  min-width:170px;
  pointer-events:none;
  z-index:0;
  opacity:.22;
  background:
    linear-gradient(180deg, rgba(255,140,0,.10), rgba(255,140,0,0)),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  filter:none;
}

.site-shell::before{
  left:0;
}

.site-shell::after{
  right:0;
  transform:none;
}

.hero-entry-card{
  padding:26px 28px 12px;
  text-align:center;
  background:linear-gradient(180deg, rgba(32,14,3,.94), rgba(18,9,2,.94));
  border:1px solid rgba(255,153,51,.14);
  border-radius:28px;
  box-shadow:0 18px 40px rgba(255,102,0,.14);
}

.container{
  position:relative;
  z-index:1;
  width:var(--container);
  margin:0 auto;
}

/* HEADER */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(24,10,2,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(255,163,72,.24);
  box-shadow:0 8px 24px rgba(255,102,0,.10);
}

.header-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:20px;
  min-height:74px;
}

.brand{
  display:flex;
  align-items:center;
  gap:14px;
}

.brand img{
  width:180px;
  max-height:54px;
  object-fit:contain;
}

.brand-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  color:#f3e8ff;
  background:linear-gradient(180deg, rgba(255,153,51,.16), rgba(255,255,255,.04));
  border:1px solid rgba(208,176,255,.18);
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.mobile-nav-toggle{
  display:none;
}

.mobile-toggle{
  display:none;
  padding:11px 14px;
  border-radius:14px;
  border:1px solid rgba(255,153,51,.3);
  background:linear-gradient(180deg, rgba(255,153,51,.10), rgba(255,255,255,.04));
  color:#fff;
  cursor:pointer;
  font-weight:800;
}

.main-nav ul{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  margin:0;
  padding:0;
}

.main-nav li{
  position:relative;
}

.main-nav li + li::before{
  content:"";
  position:absolute;
  left:-1px;
  top:50%;
  transform:translateY(-50%);
  width:2px;
  height:22px;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(255,153,51,.8), rgba(255,153,51,0));
}

.main-nav a{
  display:block;
  padding:24px 28px;
  font-size:17px;
  font-weight:800;
  letter-spacing:.2px;
  color:#fff;
}

.main-nav .current-menu-item > a,
.main-nav a:hover{
  color:var(--violet-2);
}

.header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:160px;
  padding:14px 18px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--gold),var(--gold-2));
  color:#2f173f;
  font-weight:900;
  box-shadow:0 12px 28px rgba(255,184,0,.25);
}

/* HERO - FULL BANNER */
.hero{
  padding:0 0 18px;
}

.hero-banner-only{
  padding:0 0 18px;
}

.hero-banner-card{
  position:relative;
  overflow:hidden;
  border-radius:0 0 28px 28px;
  border:1px solid rgba(255,153,51,.18);
  border-top:0;
  background:#140902;
  box-shadow:0 18px 40px rgba(255,102,0,.14);
}

.hero-banner-media{
  position:relative;
}

.hero-banner-image{
  display:block;
  width:100%;
  height:auto;
  min-height:260px;
  object-fit:cover;
}

.hero-banner-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg, rgba(20,9,2,.90) 0%, rgba(20,9,2,.64) 38%, rgba(20,9,2,.20) 68%, rgba(20,9,2,.06) 100%);
}

.hero-banner-content{
  width:min(760px, calc(100% - 48px));
  margin-left:40px;
}

.hero-banner-content .hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:20px;
}

.hero-banner-content .hero-badges span,
.hero-badges span{
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,122,0,.12);
  border:1px solid rgba(255,163,72,.30);
  color:#fff3e4;
  font-size:14px;
  font-weight:700;
}

.hero-banner-content h1{
  font-size:clamp(2.2rem,4.8vw,4.4rem);
  line-height:1.02;
  letter-spacing:-.03em;
  margin:0 0 16px;
  text-shadow:0 0 10px rgba(255,140,0,.6), 0 0 20px rgba(255,120,0,.4);
  max-width:760px;
}

.hero-banner-content p{
  max-width:720px;
  color:#f1eaff;
  font-size:18px;
  line-height:1.82;
  margin:0 0 24px;
}

.hero-entry-card{
  padding:18px 24px 4px;
  text-align:center;
}

.entry-title{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}

.entry-subtitle{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}

.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:22px;
}

.hero-badges span{
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,122,0,.14);
  border:1px solid rgba(255,153,51,.34);
  color:#f7f0ff;
  font-size:14px;
  font-weight:700;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}

.button,
.btn-primary,
.btn-secondary,
.floating-register{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-width:190px;
  padding:14px 24px;
  border-radius:999px;
  font-weight:900;
}

.btn-primary{
  color:#2a123e;
  background:linear-gradient(180deg,#ffcc00,#ff7a00);
  box-shadow:0 10px 24px rgba(255,140,0,.6), inset 0 2px 0 rgba(255,120,0,.4);
}

.btn-secondary{
  color:#fff;
  border:1px solid rgba(255,153,51,.34);
  background:rgba(255,255,255,.03);
}

.btn-primary:hover,
.header-cta:hover{
  transform:translateY(-1px);
  filter:brightness(1.03);
}

.btn-secondary:hover,
.read-more-btn:hover,
.app-action:hover,
.floating-register:hover{
  filter:brightness(1.08);
}

.section-image-left,
.section-image-right{
  position:relative;
}

.section-visual-card{
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:auto;
}

.section-visual-image{
  width:100%;
  height:auto;
  display:block;
  border-radius:22px;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}

.hero-entry-card .hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  align-items:center;
}

.hero-entry-card .btn-primary,
.hero-entry-card .btn-secondary{
  min-width:200px;
}

.article-panel h2,
.promo-panel h2{
  font-size:clamp(1.8rem,3vw,2.5rem);
  line-height:1.18;
  margin-bottom:16px;
}

.article-copy p{
  color:#f1eaff;
  line-height:1.9;
}

.section-image-right .content-split,
.section-image-left .content-split{
  align-items:start;
}

.btn-primary,
.btn-secondary,
.header-cta,
.floating-register,
.app-action,
.archive-read-more,
.read-more-btn{
  transition:all .25s ease;
}

.btn-primary:hover,
.header-cta:hover,
.floating-register:hover,
.app-action:hover{
  transform:translateY(-2px);
  filter:brightness(1.04);
  box-shadow:0 16px 30px rgba(0,0,0,.22);
}

.btn-secondary:hover,
.read-more-btn:hover,
.archive-read-more:hover{
  transform:translateY(-1px);
  background:rgba(255,153,51,.14);
}

/* GLOBAL SECTIONS */
.section{
  padding:30px 0;
}

.section-title{
  text-align:center;
  margin:0 0 14px;
  font-size:clamp(2rem,3vw,2.65rem);
  text-shadow:0 0 14px rgba(255,122,0,.20);
}

.section-subtitle{
  text-align:center;
  max-width:860px;
  margin:0 auto 28px;
  color:#e7dcff;
  line-height:1.85;
  font-size:16px;
}

.premium-band{
  margin:6px 0 10px;
  padding:14px 18px;
  border-radius:22px;
  background:linear-gradient(90deg, rgba(255,122,0,.14), rgba(255,255,255,.03), rgba(255,153,51,.10));
  border:1px solid rgba(255,153,51,.10);
  text-align:center;
  color:#f3ecff;
  font-weight:700;
}

/* FEATURE GRID */
.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.feature-card{
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
  border:1px solid rgba(255,153,51,.14);
  border-radius:30px;
  box-shadow:var(--shadow);
  overflow:hidden;
}

.feature-card .media{
  min-height:180px;
  display:grid;
  place-items:center;
  padding:22px 22px 0;
}

.feature-icon{
  width:102px;
  height:102px;
  border-radius:28px;
  display:grid;
  place-items:center;
  background:
  radial-gradient(circle at 10% 10%, rgba(255,120,0,.18), transparent 26%),
  radial-gradient(circle at 90% 10%, rgba(255,180,0,.12), transparent 24%),
  linear-gradient(180deg, #0a0602 0%, #120802 50%, #0a0602 100%);

  border:1px solid rgba(208,176,255,.22);
  box-shadow:0 18px 34px rgba(97,33,209,.20);
  font-size:38px;
}

.feature-card .body{
  padding:12px 24px 28px;
}

.feature-card h3{
  font-size:28px;
  margin-bottom:10px;
}

.feature-card p{
  color:#efe7ff;
  line-height:1.78;
}

/* STATS */
.stats-panel{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:18px;
}

.stat-card{
  padding:20px 18px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,153,51,.12);
  box-shadow:var(--shadow);
}

.stat-card strong{
  display:block;
  font-size:24px;
  margin-bottom:8px;
}

.stat-card span{
  display:block;
  color:#d8cdf3;
  line-height:1.75;
  font-size:14px;
}

/* PROVIDERS */
.providers-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.provider-card{
  background:linear-gradient(180deg, rgba(21,13,35,.96), rgba(12,8,20,.96));
  border:1px solid rgba(255,153,51,.14);
  border-radius:24px;
  padding:18px 16px;
  box-shadow:var(--shadow);
  text-align:center;
  min-height:190px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.provider-logo{
  width:160px;
  height:100px;
  border-radius:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  padding:12px;
  background:linear-gradient(180deg, rgba(255,153,51,.20), rgba(255,255,255,.02));
  border:1px solid rgba(208,176,255,.16);
}

.provider-logo img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.28));
}

.provider-card b{
  display:block;
  font-size:18px;
  margin-bottom:8px;
}

.provider-card span{
  display:block;
  font-size:14px;
  color:#dacdf7;
  line-height:1.7;
}

/* SPLIT CONTENT */
.content-split{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
}

.glass-card{
  background:linear-gradient(180deg, rgba(18,10,29,.96), rgba(10,6,17,.92));
  border:1px solid rgba(255,153,51,.14);
  border-radius:30px;
  box-shadow:var(--shadow);
}

.article-panel,
.promo-panel{
  padding:30px;
}

.article-panel h2,
.promo-panel h2{
  font-size:34px;
  margin-bottom:14px;
}

.article-copy{
  display:grid;
  gap:16px;
}

.article-copy > p{
  color:#f0e8ff;
  line-height:1.86;
}

.article-check{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,153,51,.10);
}

.article-check i{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg, rgba(255,153,51,.24), rgba(255,255,255,.03));
  font-style:normal;
  font-weight:900;
}

.article-check b{
  display:block;
  margin-bottom:4px;
}

.article-check span{
  color:#e6dbff;
  line-height:1.75;
}

.info-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin-top:18px;
}

.info-mini{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,153,51,.10);
}

.info-mini b{
  display:block;
  margin-bottom:6px;
}

.info-mini span{
  display:block;
  color:#dcccf0;
  line-height:1.68;
}

.highlight-card{
  margin-top:18px;
  padding:20px;
  border-radius:22px;
  background:linear-gradient(135deg, rgba(255,153,51,.18), rgba(255,200,61,.10));
  border:1px solid rgba(255,255,255,.10);
}

.highlight-card strong{
  display:block;
  margin-bottom:8px;
  font-size:18px;
}

.highlight-card p{
  color:#fff7e8;
  line-height:1.76;
  margin:0;
}

/* ARTICLE LIST */
.section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.section-head h2{
  margin:0;
  font-size:34px;
}

.view-all{
  font-weight:800;
  color:var(--success);
}

.article-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.article-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,153,51,.15);
  border-radius:22px;
  padding:22px;
  box-shadow:var(--shadow);
}

.article-card h3{
  font-size:22px;
  line-height:1.4;
  margin-bottom:10px;
}

.article-card h3 a:hover{
  color:var(--violet-2);
}

.article-card p{
  color:#efe7ff;
  line-height:1.78;
  margin-bottom:0;
}

.article-card time{
  display:block;
  font-size:14px;
  color:#d8c8f5;
  margin-bottom:8px;
}

/* REVIEWS */
.reviews-panel{
  background:linear-gradient(180deg, rgba(13,7,21,.96), rgba(9,5,15,.93));
  border:1px solid rgba(255,153,51,.16);
  border-radius:30px;
  box-shadow:var(--shadow);
  padding:36px 30px 30px;
}

.review-list{
  display:grid;
  gap:20px;
}

.review-card{
  background:linear-gradient(180deg,#ff7a00,#ff7a00);
  border-radius:20px;
  padding:24px 26px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:start;
}

.review-card h4{
  font-size:20px;
  margin-bottom:6px;
}

.review-card .date{
  font-size:14px;
  color:#f0e4ff;
  margin-bottom:16px;
}

.review-card p{
  font-size:18px;
  line-height:1.82;
  margin:0;
}

.review-stars{
  color:#ff7a00;
  font-size:20px;
  letter-spacing:4px;
  white-space:nowrap;
  padding-top:4px;
}

.read-more-wrap{
  text-align:center;
  padding-top:26px;
}

.read-more-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#ff7a00,#e68e29);
  border-radius:999px;
  padding:16px 34px;
  min-width:170px;
  font-size:17px;
  font-weight:900;
  color:#fff;
  box-shadow:0 10px 24px rgba(255,122,0,.28);
}

/* FAQ */
.faq-grid{
  display:grid;
  gap:14px;
}

.faq-grid details{
  border:1px solid rgba(255,153,51,.14);
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));
}

.faq-grid summary{
  list-style:none;
  cursor:pointer;
  padding:18px 20px;
  font-weight:800;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}

.faq-grid summary::-webkit-details-marker{
  display:none;
}

.faq-grid summary::after{
  content:"+";
  font-size:28px;
  line-height:1;
  color:#e9d8ff;
}

.faq-grid details[open] summary::after{
  content:"−";
}

.faq-grid .faq-answer{
  padding:0 20px 20px;
  color:#e7dcff;
  line-height:1.85;
}

/* FOOTER */
.bottom-info{
  padding:0 0 120px;
}

.bottom-panel{
  background:#140902;
  border-top:1px solid rgba(255,163,72,.22);
  border-bottom:1px solid rgba(255,153,51,.10);
  padding:28px 0 32px;
}

.bottom-grid{
  display:grid;
  grid-template-columns:170px 1fr auto;
  align-items:center;
  gap:24px;
}

.bottom-grid .brand-footer img{
  width:160px;
}

.bottom-grid p{
  margin:0;
  font-size:16px;
  line-height:1.8;
}

.bottom-grid strong{
  color:var(--success);
}

.bottom-grid em{
  color:#ffe44f;
  font-style:italic;
  font-weight:800;
}

.floating-register{
  min-width:200px;
  padding:15px 28px;
  background:linear-gradient(180deg,#ff7a00,#e68e29);
  color:#fff;
  box-shadow:0 12px 28px rgba(255,122,0,.28);
}

.footer-copy{
  min-width:0;
}

.footer-copy p{
  margin:0;
  font-size:16px;
  line-height:1.85;
  color:#f1e9ff;
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px;
  text-align:center;
  padding-top:18px;
  color:#eadfff;
  font-size:15px;
}

.footer-links span{
  opacity:.55;
}

.site-footer-inner{
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
}

.site-footer-inner p{
  margin:0;
  color:#eadfff;
}

/* APP BAR */
.app-bar{
  position:fixed;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  width:min(520px, calc(100% - 24px));
  z-index:80;
  background:rgba(33,15,4,.96);
  backdrop-filter:blur(8px);
  border-radius:20px;
  box-shadow:0 18px 40px rgba(255,102,0,.18);
  border:1px solid rgba(255,153,51,.16);
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 14px;
}

.app-icon{
  width:52px;
  height:52px;
  border-radius:16px;
  background:linear-gradient(180deg,#ffd30f,#f0b400);
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#331b00;
  font-size:24px;
  font-weight:900;
}

.app-copy{
  min-width:0;
  flex:1;
}

.app-copy strong{
  display:block;
  font-size:18px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.app-copy span{
  display:block;
  font-size:13px;
  color:#efe7ff;
  margin-top:4px;
}

.app-action{
  padding:14px 24px;
  border-radius:14px;
  background:linear-gradient(180deg,#ff7a00,#e68e29);
  color:#fff;
  font-weight:900;
  flex:0 0 auto;
}

.app-close{
  appearance:none;
  border:0;
  background:rgba(255,255,255,.08);
  color:#fff;
  width:36px;
  height:36px;
  border-radius:12px;
  font-size:22px;
  line-height:1;
  cursor:pointer;
}

.hidden{
  display:none !important;
}

/* CONTENT */
.content-page,
.single-page,
.archive-page,
.search-page,
.error-page{
  padding:34px 0 120px;
}

.content-wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:24px;
}

.content-box{
  background:rgba(15,9,24,.85);
  border:1px solid rgba(255,153,51,.15);
  border-radius:26px;
  padding:28px;
  box-shadow:var(--shadow);
}

.content-box,
.content-box p,
.content-box li,
.content-box span{
  color:#fff;
}

.content-box h1,
.content-box h2,
.content-box h3{
  line-height:1.2;
}

.content-box p,
.content-box li{
  line-height:1.85;
}

.post-meta{
  color:#d6c8f6;
  font-size:14px;
  margin-bottom:16px;
}

.post-thumb{
  margin:0 0 18px;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,153,51,.12), rgba(255,255,255,.03));
}

.pagination{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

.pagination a,
.pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:46px;
  height:46px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,153,51,.10);
}

.sidebar-card{
  padding:22px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));
  border:1px solid rgba(255,153,51,.12);
  box-shadow:var(--shadow);
  margin-bottom:18px;
}

.widget-title{
  font-size:20px;
  margin-bottom:14px;
}

.widget ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}

.widget li a{
  display:block;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
}

.not-found-box{
  text-align:center;
  max-width:760px;
  margin:0 auto;
}

.not-found-box h1{
  font-size:clamp(2.4rem,5vw,4.5rem);
}

.not-found-box p{
  color:#ebddff;
  line-height:1.8;
  margin-bottom:22px;
}

/* RESPONSIVE */
@media (max-width:1180px){
  .feature-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .stats-panel{
    grid-template-columns:repeat(2,1fr);
  }

  .article-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:1080px){
  .content-split,
  .content-wrap{
    grid-template-columns:1fr;
  }

  .hero-banner-overlay{
    position:static;
    background:linear-gradient(180deg, rgba(10,7,18,.92), rgba(10,7,18,.92));
  }

  .hero-banner-content{
    width:100%;
    margin:0;
    padding:26px 24px 28px;
    text-align:center;
  }

  .hero-banner-content p{
    margin-left:auto;
    margin-right:auto;
  }

  .hero-banner-content .hero-badges,
  .hero-entry-card .hero-actions{
    justify-content:center;
  }

  .bottom-grid{
    grid-template-columns:1fr;
    text-align:center;
  }

  .bottom-grid .brand-footer img{
    margin:0 auto;
  }

  .floating-register{
    margin:0 auto;
  }
}

@media (max-width:900px){
  .providers-grid,
  .article-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .review-card{
    grid-template-columns:1fr;
  }

  .review-stars{
    padding-top:0;
  }
}

@media (max-width:760px){
  .site-shell::before,
  .site-shell::after{
    display:none;
  }

  @media (max-width:760px){
  .header-row{
    display:grid;
    grid-template-columns:auto 1fr auto auto;
    align-items:center;
    gap:10px;
    min-height:68px;
  }

  .brand-badge{
    display:none;
  }

  .site-branding{
    display:flex;
    align-items:center;
    min-width:0;
  }

  .brand{
    display:flex;
    align-items:center;
    min-width:0;
  }

  .brand img{
    width:140px;
    max-height:42px;
    object-fit:contain;
  }

  .mobile-toggle{
    display:inline-flex;
    justify-self:end;
    width:42px;
    height:42px;
    padding:0;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.12);
    color:#fff;
    cursor:pointer;
    font-size:22px;
    font-weight:800;
    align-items:center;
    justify-content:center;
    line-height:1;
  }

  .header-action{
    display:flex;
    justify-content:flex-end;
    gap:8px;
  }

  .header-login{
    display:none;
  }

  .header-cta{
    display:inline-flex;
    min-width:auto;
    padding:10px 14px;
    font-size:14px;
    white-space:nowrap;
  }

  .main-nav{
    display:none;
    position:absolute;
    left:12px;
    right:12px;
    top:68px;
    background:#1d0e03;
    border:1px solid rgba(255,153,51,.18);
    border-radius:16px;
    box-shadow:0 18px 30px rgba(255,102,0,.16);
    z-index:70;
  }

  .mobile-nav-toggle:checked ~ .main-nav{
    display:block;
  }

  .main-nav ul{
    display:block;
  }

  .main-nav li + li::before{
    display:none;
  }

  .main-nav a{
    padding:15px 18px;
    border-top:1px solid rgba(255,255,255,.06);
    font-size:15px;
  }

  .main-nav li:first-child a{
    border-top:0;
  }

  .hero-banner-content{
    padding:22px 18px 24px;
  }

  .hero-banner-content h1{
    font-size:34px;
  }

  .hero-banner-content p{
    font-size:16px;
  }

  .hero-entry-card{
    padding:14px 10px 0;
  }

  .hero-entry-card .btn-primary,
  .hero-entry-card .btn-secondary{
    width:100%;
    min-width:0;
  }

  .feature-grid,
  .providers-grid,
  .article-grid,
  .stats-panel,
  .info-grid{
    grid-template-columns:1fr;
  }

  .section-title{
    font-size:30px;
  }

  .section-head{
    display:block;
  }

  .section-head h2{
    margin-bottom:8px;
    font-size:28px;
  }

  .review-card{
    grid-template-columns:1fr;
  }

  .review-card p{
    font-size:16px;
  }

  .review-stars{
    padding-top:0;
  }

  .footer-login,
  .floating-register{
    width:100%;
    min-width:0;
  }

  .app-login{
    display:none;
  }

}
@media (max-width:560px){
  .container{
    width:min(1220px, calc(100% - 18px));
  }

  .hero-banner-image{
    min-height:180px;
  }

  .hero-banner-card{
    border-radius:0 0 20px 20px;
  }

  .section-visual-card{
    padding:12px;
  }

  .section-visual-image{
    border-radius:18px;
  }

  .review-card{
    padding:18px;
  }

  .app-bar{
    gap:10px;
    padding:10px 12px;
  }

  .app-action{
    padding:12px 16px;
  }
}

.site-sidebar{
  display:block;
}

.site-sidebar .sidebar-card p{
  color:#efe7ff;
  line-height:1.8;
  margin:0;
}

.site-sidebar .sidebar-card ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}

.site-sidebar .sidebar-card li a{
  display:block;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
  color:#f3ebff;
  line-height:1.6;
  border:1px solid rgba(255,153,51,.08);
}

.site-sidebar .sidebar-card li a:hover{
  background:rgba(255,153,51,.10);
  border-color:rgba(255,153,51,.18);
  color:#fff;
}

.content-main{
  min-width:0;
}

.single-article{
  padding:32px;
}

.single-header{
  margin-bottom:20px;
}

.single-title{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.15;
  margin-bottom:14px;
  letter-spacing:-.02em;
}

.single-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:#d8c8f5;
  font-size:14px;
}

.meta-separator{
  opacity:.6;
}

.single-thumb{
  margin:0 0 24px;
  border-radius:24px;
  overflow:hidden;
}

.single-thumb img{
  width:100%;
  height:auto;
  display:block;
}

.single-content{
  color:#f3ecff;
}

.single-content > *:last-child{
  margin-bottom:0;
}

.single-content h2,
.single-content h3,
.single-content h4{
  margin-top:1.6em;
  margin-bottom:.7em;
}

.single-content p{
  line-height:1.95;
  color:#f1eaff;
}

.single-content ul,
.single-content ol{
  padding-left:1.4rem;
  line-height:1.9;
  color:#efe7ff;
}

.single-content li{
  margin-bottom:.55em;
}

.single-content a{
  color:#d9b4ff;
  text-decoration:underline;
}

.single-content blockquote{
  margin:1.6em 0;
  padding:18px 20px;
  border-left:4px solid rgba(255,153,51,.55);
  background:rgba(255,255,255,.03);
  border-radius:16px;
  color:#f3ebff;
}

.single-content img{
  border-radius:18px;
}

.single-footer{
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid rgba(255,153,51,.12);
}

.single-footer-inner{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  color:#d9c8f2;
  font-size:14px;
}

.single-footer-site{
  color:#fff;
}

.page-article{
  padding:32px;
}

.page-header{
  margin-bottom:20px;
}

.page-title{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.15;
  margin-bottom:12px;
  letter-spacing:-.02em;
}

.page-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:#d8c8f5;
  font-size:14px;
}

.page-thumb{
  margin:0 0 24px;
  border-radius:24px;
  overflow:hidden;
}

.page-thumb img{
  width:100%;
  height:auto;
  display:block;
}

.page-content{
  color:#f3ecff;
}

.page-content > *:last-child{
  margin-bottom:0;
}

.page-content h2,
.page-content h3,
.page-content h4{
  margin-top:1.6em;
  margin-bottom:.7em;
}

.page-content p{
  line-height:1.95;
  color:#f1eaff;
}

.page-content ul,
.page-content ol{
  padding-left:1.4rem;
  line-height:1.9;
  color:#efe7ff;
}

.page-content li{
  margin-bottom:.55em;
}

.page-content a{
  color:#d9b4ff;
  text-decoration:underline;
}

.page-content blockquote{
  margin:1.6em 0;
  padding:18px 20px;
  border-left:4px solid rgba(255,153,51,.55);
  background:rgba(255,255,255,.03);
  border-radius:16px;
  color:#f3ebff;
}

.page-content img{
  border-radius:18px;
}

.archive-intro{
  margin-bottom:20px;
}

.archive-title{
  font-size:clamp(2rem,4vw,3rem);
  line-height:1.15;
  margin-bottom:12px;
  letter-spacing:-.02em;
}

.archive-description{
  color:#eee4ff;
  line-height:1.85;
  max-width:760px;
  margin:0;
}

.post-list{
  display:grid;
  gap:20px;
}

.archive-item{
  padding:28px;
}

.archive-item-header{
  margin-bottom:16px;
}

.archive-item-title{
  font-size:30px;
  line-height:1.25;
  margin-bottom:10px;
}

.archive-item-title a:hover{
  color:var(--violet-2);
}

.archive-item-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:#d8c8f5;
  font-size:14px;
}

.archive-item-excerpt{
  color:#f1eaff;
}

.archive-item-excerpt p{
  margin:0;
  line-height:1.9;
}

.archive-item-footer{
  margin-top:18px;
}

.archive-read-more{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,153,51,.12);
  border:1px solid rgba(255,153,51,.22);
  color:#fff;
  font-weight:800;
}

.archive-read-more:hover{
  background:rgba(255,153,51,.18);
  color:#fff;
}

.empty-state{
  text-align:left;
}

.empty-state h2{
  margin-bottom:12px;
}

.empty-state p{
  margin:0;
  color:#eee4ff;
  line-height:1.85;
}

.search-intro{
  margin-bottom:20px;
}

.search-empty{
  text-align:left;
}

.error-page{
  padding:60px 0 120px;
}

.error-code{
  font-size:clamp(4rem,10vw,8rem);
  font-weight:900;
  letter-spacing:-.04em;
  margin-bottom:10px;
  text-align:center;
  background:linear-gradient(180deg,#caa6ff,#e68e29);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.error-title{
  text-align:center;
  font-size:clamp(1.8rem,3vw,2.4rem);
  margin-bottom:12px;
}

.error-description{
  text-align:center;
  max-width:640px;
  margin:0 auto 26px;
  line-height:1.85;
  color:#efe7ff;
}

.error-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
}

.header-action{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.header-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:138px;
  padding:13px 18px;
  border-radius:999px;
  border:1px solid rgba(255,153,51,.28);
  background:rgba(255,255,255,.03);
  color:#fff;
  font-weight:800;
  box-shadow:var(--shadow-soft);
}

.header-login:hover{
  background:rgba(255,153,51,.10);
  color:#fff;
  transform:translateY(-1px);
}

.footer-cta-wrap{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.footer-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  padding:14px 20px;
  border-radius:999px;
  border:1px solid rgba(255,153,51,.24);
  background:rgba(255,255,255,.03);
  color:#fff;
  font-weight:800;
}

.footer-login:hover{
  background:rgba(255,153,51,.10);
  color:#fff;
  transform:translateY(-1px);
}

.app-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  border-radius:14px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,153,51,.18);
  color:#fff;
  font-weight:800;
  flex:0 0 auto;
}

.app-login:hover{
  background:rgba(255,153,51,.10);
  color:#fff;
}

@media (max-width:1080px){
  .footer-cta-wrap{
    justify-content:center;
  }
}

@media (max-width:760px){
  .footer-cta-wrap{
    flex-direction:column;
    width:100%;
  }

  .footer-login,
  .floating-register{
    width:100%;
    min-width:0;
  }

  .app-login{
    display:none;
  }
}

  .site-header{
  margin-bottom:0;
  padding-bottom:0;
  }

  .hero-section{
    margin-top:-10px;
  }

  .hero-banner{
    margin-top:0;
  }