/*
Theme Name: Nimero Premium
Theme URI: https://nimero.ee
Author: Tarmo
Description: Premium hero + author teema Nimero Raamatupidamisele
Version: 1.0
Text Domain: nimero-theme
*/

:root{
 --primary:#7c3aed;
 --dark:#5b21b6;
 --bg:#f5f3ff;
}

*{
 box-sizing:border-box;
}

body{
 margin:0;
 font-family:Inter,system-ui,sans-serif;
 background:linear-gradient(120deg,#f5f3ff,#ffffff);
 color:#0b1220;
}

/* HEADER */

header{
 position:sticky;
 top:0;
 z-index:20;
 background:rgba(255,255,255,.94);
 backdrop-filter:blur(14px);
 border-bottom:1px solid #e5e7eb;
 box-shadow:0 18px 40px rgba(15,23,42,.08);
}

.header-inner{
 max-width:1200px;
 margin:auto;
 padding:16px 24px;
 display:flex;
 justify-content:space-between;
 align-items:center;
}

/* LOGO – PREMIUM */

.logo{
 display:flex;
 align-items:center;
 gap:20px;
 font-weight:900;
 letter-spacing:-0.02em;
}

.logo img{
 height:80px;
 width:auto;
 filter:drop-shadow(0 18px 40px rgba(124,58,237,.45));
}

.logo span{
 font-size:20px;
 color:#4c1d95;
 line-height:1.1;
}

/* NAV */

.nav a{
 margin-left:22px;
 text-decoration:none;
 font-weight:700;
 color:var(--dark);
 position:relative;
 font-size:15px;
}

.nav a::after{
 content:"";
 position:absolute;
 left:0;
 bottom:-5px;
 width:0;
 height:2px;
 background:linear-gradient(90deg,var(--primary),var(--dark));
 border-radius:999px;
 transition:.25s;
}

.nav a:hover::after,
.nav .current-menu-item > a::after{
 width:100%;
}

/* HERO */

.hero{
 padding:120px 24px;
 display:flex;
 justify-content:center;
}

.hero-card{
 background:#fff;
 padding:70px;
 border-radius:36px;
 text-align:center;
 box-shadow:
  0 40px 80px rgba(15,23,42,.14),
  0 0 0 1px rgba(255,255,255,.8) inset;
 max-width:900px;
 position:relative;
 overflow:hidden;
}

.hero-card::before{
 content:"";
 position:absolute;
 inset:-20%;
 background:
  radial-gradient(circle at top left,rgba(124,58,237,.16),transparent 55%),
  radial-gradient(circle at bottom right,rgba(129,140,248,.18),transparent 55%);
 opacity:.9;
 z-index:-1;
}

.hero-card h1{
 font-size:48px;
 font-weight:900;
 margin:0 0 18px;
 background:linear-gradient(135deg,#5b21b6,#7c3aed,#a78bfa);
 -webkit-background-clip:text;
 background-clip:text;
 color:transparent;
}

.hero-card p{
 font-size:20px;
 color:#4b5563;
 margin:0 0 32px;
}

.btn{
 display:inline-block;
 margin-top:8px;
 padding:16px 40px;
 border-radius:999px;
 background:linear-gradient(135deg,var(--primary),var(--dark));
 color:#fff;
 text-decoration:none;
 font-weight:900;
 font-size:14px;
 box-shadow:0 20px 40px rgba(124,58,237,.45);
 transition:.25s;
}

.btn:hover{
 transform:translateY(-2px);
 box-shadow:0 26px 60px rgba(124,58,237,.6);
}

.btn.light{
 background:#fff;
 color:var(--dark);
}

/* SECTIONS */

.section{
 max-width:1200px;
 margin:100px auto;
 padding:0 24px;
}

.section h2{
 font-size:32px;
 margin:0 0 10px;
}

.lead{
 color:#6b7280;
 margin-bottom:40px;
}

/* GRID / CARDS */

.grid{
 display:grid;
 gap:24px;
}

.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}

.card,
.blog-card{
 background:#fff;
 padding:32px;
 border-radius:22px;
 box-shadow:0 20px 40px rgba(15,23,42,.10);
 transition:.25s;
}

.card:hover,
.blog-card:hover{
 transform:translateY(-4px);
 box-shadow:0 28px 60px rgba(15,23,42,.18);
}

/* CONTACT */

.contact{
 max-width:1000px;
 margin:100px auto;
 padding:80px 40px;
 background:linear-gradient(135deg,var(--primary),var(--dark));
 color:#fff;
 text-align:center;
 border-radius:40px;
 box-shadow:0 46px 120px rgba(88,28,135,.65);
}

/* AUTHOR HERO */

.author-hero {
 padding: 120px 0;
 background:
  radial-gradient(circle at top left, rgba(124, 58, 237, .15), transparent 40%),
  linear-gradient(135deg, #f5f3ff, #ffffff);
}

.author-hero-inner {
 max-width: 1200px;
 margin: auto;
 padding: 0 24px;
 display: grid;
 grid-template-columns: 0.9fr 1.1fr;
 gap: 80px;
 align-items: center;
}

.author-image-wrap {
 position: relative;
}

.author-image-wrap img {
 width: 100%;
 border-radius: 32px;
 box-shadow:
  0 40px 90px rgba(0, 0, 0, .25),
  0 0 0 1px rgba(255, 255, 255, .6) inset;
 position: relative;
 z-index: 2;
}

.image-glow {
 position: absolute;
 inset: -20%;
 background: radial-gradient(circle, rgba(124, 58, 237, .35), transparent 60%);
 z-index: 1;
 filter: blur(40px);
}

.author-badge {
 display: inline-block;
 padding: 6px 14px;
 border-radius: 999px;
 background: #ede9fe;
 color: #5b21b6;
 font-weight: 800;
 margin-bottom: 16px;
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:.12em;
}

.author-text h1 {
 font-size: 40px;
 margin: 0 0 10px;
}

.author-role {
 font-size: 18px;
 color: #6b7280;
 margin-bottom: 24px;
}

.author-content p {
 font-size: 18px;
 line-height: 1.75;
 margin-bottom: 16px;
 color: #1f2937;
}

.author-content blockquote {
 margin: 26px 0;
 padding-left: 22px;
 border-left: 4px solid #7c3aed;
 font-style: italic;
 font-size: 18px;
 color: #4c1d95;
}

/* FOOTER */

footer{
 text-align:center;
 padding:60px 16px;
 color:#6b7280;
 font-size:14px;
}

/* RESPONSIVE */

@media (max-width: 900px) {

 .header-inner{
  flex-direction:column;
  gap:12px;
 }

 .logo img{
  height:64px;
 }

 .hero-card{
  padding:40px 28px;
 }

 .grid-3,
 .grid-2{
  grid-template-columns:1fr;
 }

 .author-hero-inner {
  grid-template-columns: 1fr;
  text-align: center;
 }

 .author-text h1 {
  font-size: 32px;
 }

 .author-content blockquote {
  margin-left: auto;
  margin-right: auto;
 }
}
