:root{
  --bg: #0a0f1a;
  --bg-2: #0b1a2e;
  --text: #e6f6ff;
  --muted: #a8b8d8;
  --accent: #7bd0ff;     /* baby blue */
  --accent-2: #4b6dfb;   /* indigo */
  --glass: rgba(11,18,38,0.28);
  --glass-2: rgba(255,255,255,0.22);
  --border: rgba(255,255,255,0.28);
  --radius: 14px;
  --shadow: 0 6px 20px rgba(0,0,0,0.25);
  --focus: 2px solid #9be7ff;
  --focus-offset: 2px;
}
*{box-sizing:border-box}
html,body{height:100%}
html{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif; line-height:1.4}
body{
  margin:0;
  color:var(--text);
  background: 
    linear-gradient(135deg, rgba(18,31,86,0.7) 0%, rgba(7,15,40,0.75) 60%, rgba(2,8,20,0.85) 100%),
    linear-gradient(to bottom right, rgba(123,208,255,0.08), rgba(75,109,247,0.08)),
    radial-gradient(circle at 20% -10%, rgba(183,232,255,0.15), transparent 25%);
  background-blend-mode: screen, normal, normal;
  min-height:100%;
  position:relative;
  isolation:isolate;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(to bottom, rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(to right, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 100% 2px, 2px 100%;
  pointer-events:none;
  mix-blend-mode: overlay;
  opacity:0.55;
}
header,nav,main,article,aside,section,footer{position:relative; z-index:1}
header{
  padding:1rem clamp(1rem, 3vw, 2rem);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin:0 auto;
  max-width: clamp(320px, 90vw, 1200px);
  border-radius: var(--radius);
  background: var(--glass);
  border:1px solid var(--border);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: var(--shadow);
}
header h1{font-size:clamp(1.25rem, 2.5vw + 1rem, 2rem); margin:0; font-weight:700; letter-spacing:.2px}
nav{margin-left:auto}
nav a{color:var(--text); text-decoration:none; padding:.25rem .5rem; border-radius:8px}
nav a:hover{ text-decoration:underline; text-underline-offset:2px}
main{ padding:2rem 0 1.5rem; }
.container{ max-width: clamp(320px, 90vw, 1100px); margin:0 auto; padding:0 1rem}
.image-frame{
  aspect-ratio:16/9;
  width:100%;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.25);
  background: #0b1220;
  box-shadow: 0 0 0 2px rgba(123,208,255,0.25), 0 10px 28px rgba(0,0,0,.35);
}
.image-frame img{ width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.05) contrast(1.05)}
.content{ padding:0.75rem 0 0.25rem; color:var(--text) }
.main h2{margin:.25rem 0 .5rem; font-size: clamp(1.1rem, 1vw + 1rem, 1.6rem)}
.product-ad{ display:flex; gap:.75rem; align-items:center; padding: .75rem; border-radius: var(--radius); background: rgba(9,12,28,0.42); border:1px solid rgba(123,208,255,0.4); margin:1rem 0; text-align:left}
.product-ad a{ color:var(--text); text-decoration:none; display:flex; align-items:center; width:100%}
.product-ad a:hover{text-decoration:underline}
.sponsored-page{ display:flex; gap:.75rem; align-items:center; padding: .75rem; border-radius: var(--radius); background: rgba(9,12,28,0.42); border:1px solid rgba(123,208,255,0.4); margin:0.5rem 0 1rem}
.sponsored-page a{ color:var(--text); text-decoration:none; display:flex; align-items:center}
footer{ padding:1.5rem 0 2rem; }
ul, li{ margin:0; padding:0; list-style:none}
.btn, .cta, a, button{ cursor: pointer; font:inherit; border-radius:999px; padding:.6rem 1rem; border:1px solid rgba(123,208,255,0.6); background: rgba(123,208,255,0.22); color: #eaffff; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:.5rem}
a, button{ transition: transform .15s ease, background .2s ease, color .2s ease}
a:hover{text-decoration:underline; text-underline-offset:2px}
.btn.primary{ background: linear-gradient(135deg, rgba(123,208,255,0.95), rgba(75,109,247,0.95)); border:1px solid rgba(255,255,255,0.4); color:#061421; font-weight:700}
.btn.outline{ background: transparent; border:1px solid var(--accent-2); color: var(--text); }
.btn:focus-visible, .outline:focus-visible, a:focus-visible, button:focus-visible{ outline: none; box-shadow: 0 0 0 var(--focus-offset) rgba(155,231,255,0.75); outline: var(--focus); outline-offset: var(--focus-offset)}
a:focus-visible{ text-decoration:underline; }
.tag{ display:inline-block; padding:.15rem .5rem; font-size:.75rem; border-radius:999px; background: rgba(123,208,255,0.25); color:#eaffff; border:1px solid rgba(123,208,255,.6)}
.grid{ display:grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap:1rem}
.card{ background: var(--glass); border:1px solid var(--border); border-radius: var(--radius); padding:1rem; box-shadow: var(--shadow); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);}
.card h3{ margin:.25rem 0 .4rem; font-size:1.05rem}
.card p{ margin:0; color: var(--muted)}
.image-frame + .content{ padding-top:0.25rem}
@media (min-width: 900px){
  header{ padding:1rem 1.25rem; }
  .container{ padding:0 1.25rem }
}
@media (prefers-reduced-motion: reduce){
  *{ transition: none !important; animation: none !important }
}
@media print{
  body{ background: #fff; color:#000 }
  header, nav, main, article, footer{ background: transparent; color:#000 }
  a{ text-decoration: underline }
}