/*
Theme Name: Nova Starter 315
Author: Kai Labs
Description: A responsive theme with modern design patterns.
Version: 5.13.0
Tested up to: 6.7
Text Domain: nova-starter-315
License: GNU General Public License v2 or later
Tags: left-sidebar, entertainment, translation-ready, right-sidebar, editor-style
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

:root{
  --bg:#f8f5ef;
  --ink:#1d1d1b;
  --muted:#5d5b56;
  --paper:#ffffff;
  --accent:#7a3b2e;
  --accent-2:#c89b6a;
  --rule:#d9d3c3;
  --shadow:0 6px 30px rgba(40,30,20,.08);
  --serif:'Cormorant Garamond', 'EB Garamond', Georgia, serif;
  --sans:'Manrope', 'Work Sans', system-ui, sans-serif;
}
html{scroll-behavior:smooth;}
html,body{overflow-x:hidden;}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.65;font-size:17px;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--accent);text-decoration:none;transition:color .2s;}
a:hover{color:var(--accent-2);}
.container{max-width:1180px;margin:0 auto;padding:0 24px;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--ink);letter-spacing:-.01em;line-height:1.2;}
h1{font-size:clamp(2.1rem,5vw,3.6rem);margin-bottom:1rem;}
h2{font-size:clamp(1.6rem,3.4vw,2.3rem);margin:2.4rem 0 1rem;}
h3{font-size:1.35rem;margin:1.6rem 0 .8rem;}
p{margin:0 0 1.1rem;}
hr{border:none;border-top:1px solid var(--rule);margin:2.2rem 0;}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,245,239,.85);backdrop-filter:blur(14px);transition:border-color .3s;}
.site-header.scrolled{border-bottom:2px solid var(--accent);}
.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:18px 10px;}
.brand{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:.04em;color:var(--ink);}
.brand span{color:var(--accent);}
.nav-main{display:flex;flex-wrap:wrap;gap:28px;}
.nav-main a{color:var(--ink);font-weight:500;font-size:.95rem;position:relative;}
.nav-main a::after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--accent);transition:width .25s;}
.nav-main a:hover::after{width:100%;}
.cta-btn{background:var(--accent);color:#fff !important;padding:11px 22px;border-radius:30px;font-weight:600;font-size:.9rem;transition:transform .2s,background .2s;}
.cta-btn:hover{transform:translateY(-2px);background:var(--accent-2);color:#fff !important;}

/* Hero */
.hero{position:relative;padding:90px 0 80px;background:linear-gradient(135deg,#3d201a 0%,#7a3b2e 60%,#c89b6a 100%);color:#fff;text-align:center;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(255,255,255,.12),transparent 60%);}
.hero-inner{position:relative;max-width:780px;margin:0 auto;padding:0 24px;}
.hero h1{color:#fff;margin-bottom:1.4rem;}
.hero .lead{font-size:1.2rem;color:rgba(255,255,255,.92);margin-bottom:2rem;font-family:var(--serif);font-style:italic;}
.hero .cta-btn{background:#fff;color:var(--accent) !important;font-size:1rem;padding:14px 32px;}
.hero .cta-btn:hover{background:var(--accent-2);color:#fff !important;}

/* Section */
section{padding:64px 0;}
.section-label{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:.6rem;display:inline-block;}

/* Cards grid */
.cards{display:flex;flex-wrap:wrap;gap:24px;margin-top:36px;}
.card{flex:1 1 280px;background:var(--paper);border:1px solid var(--rule);padding:28px;border-radius:6px;transition:transform .25s,box-shadow .25s;}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.card .cat{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700;}
.card h3{margin:.5rem 0 .8rem;font-family:var(--serif);}
.card p{color:var(--muted);font-size:.95rem;}
.card a.more{font-weight:600;font-size:.88rem;border-bottom:1px solid var(--accent);padding-bottom:2px;}

/* About 2-col */
.about-grid{display:flex;flex-wrap:wrap;gap:48px;align-items:center;margin-top:40px;}
.about-grid .col{flex:1 1 320px;}
.about-grid img{border-radius:6px;box-shadow:var(--shadow);}

/* Article column */
.article{max-width:720px;margin:0 auto;padding:48px 24px 80px;background:var(--paper);}
.article .breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:1.2rem;}
.article .breadcrumb a{color:var(--muted);}
.article .meta{display:flex;flex-wrap:wrap;gap:18px;align-items:center;color:var(--muted);font-size:.9rem;margin-bottom:2rem;padding-bottom:1.4rem;border-bottom:1px solid var(--rule);}
.article .meta strong{color:var(--ink);font-weight:600;}
.article p{font-size:1.07rem;}

/* Pull quote */
.pull-quote{border-left:3px solid var(--accent);padding:8px 0 8px 28px;margin:2rem 0;font-family:var(--serif);font-style:italic;font-size:1.4rem;color:var(--ink);line-height:1.4;}
.pull-quote cite{display:block;margin-top:.6rem;font-size:.9rem;font-style:normal;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;}

/* Numbered tips */
.tips{display:flex;flex-direction:column;gap:20px;margin:2rem 0;}
.tip{display:flex;flex-wrap:wrap;gap:22px;padding:24px;background:var(--bg);border:1px solid var(--rule);border-radius:6px;}
.tip .num{font-family:var(--serif);font-size:2.4rem;font-weight:700;color:var(--accent);line-height:1;min-width:60px;}
.tip .body{flex:1 1 260px;}
.tip h3{margin-top:0;margin-bottom:.4rem;font-size:1.15rem;}
.tip p{margin:0;color:var(--muted);font-size:.98rem;}

/* Info box */
.info-box{background:linear-gradient(135deg,#fff 0%,#f3ece0 100%);border-left:4px solid var(--accent-2);padding:28px 30px;margin:2.2rem 0;border-radius:4px;}
.info-box h3{margin-top:0;color:var(--accent);}
.info-box ul{padding-left:1.3rem;color:var(--muted);}
.info-box ul li{margin-bottom:.4rem;}

/* Author bio card */
.author-card{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;padding:24px;background:var(--bg);border:1px solid var(--rule);border-radius:6px;margin:2rem 0;}
.author-card .avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.6rem;font-weight:700;flex-shrink:0;}
.author-card .info{flex:1 1 240px;}
.author-card h4{font-family:var(--serif);font-size:1.2rem;margin-bottom:.3rem;}
.author-card p{margin:0;color:var(--muted);font-size:.92rem;}

/* Read also */
.read-also{margin:2rem 0;}
.read-also h3{font-family:var(--serif);margin-bottom:1rem;}
.read-also ul{list-style:none;display:flex;flex-direction:column;gap:14px;}
.read-also li{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:12px;border:1px solid var(--rule);border-radius:6px;background:var(--paper);}
.read-also .thumb{width:64px;height:64px;border-radius:4px;background:linear-gradient(135deg,var(--accent-2),var(--accent));flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--serif);font-weight:700;font-size:1.4rem;}
.read-also a{color:var(--ink);font-weight:500;font-family:var(--serif);font-size:1.1rem;}
.read-also a:hover{color:var(--accent);}

/* Disclaimer */
.disclaimer{background:#f0ebe0;border:1px dashed var(--rule);padding:18px 22px;font-size:.88rem;color:var(--muted);border-radius:4px;margin:2rem 0;font-style:italic;}

/* Subscribe form */
.subscribe{background:var(--ink);color:#fff;padding:48px 32px;border-radius:6px;margin:3rem 0;text-align:center;}
.subscribe h3{color:#fff;font-family:var(--serif);font-size:1.8rem;margin-bottom:.6rem;}
.subscribe p{color:rgba(255,255,255,.7);margin-bottom:1.6rem;max-width:520px;margin-left:auto;margin-right:auto;}
.subscribe form{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:560px;margin:0 auto;}
.subscribe input{flex:1 1 200px;padding:12px 16px;border:none;border-radius:4px;font-size:.95rem;font-family:var(--sans);}
.subscribe button{background:var(--accent-2);color:#fff;border:none;padding:12px 28px;border-radius:4px;font-weight:600;cursor:pointer;font-size:.95rem;transition:background .2s;}
.subscribe button:hover{background:#fff;color:var(--accent);}

/* Footer */
.site-footer{background:#1a1a18;color:#bdb8ad;padding:54px 0 28px;text-align:center;}
.site-footer .brand{color:#fff;display:block;margin-bottom:14px;}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:18px 0;font-size:.9rem;}
.footer-links a{color:#bdb8ad;}
.footer-links a:hover{color:#fff;}
.contact-info{font-size:.88rem;color:#9b9690;margin:14px 0;}
.contact-info span{margin:0 10px;}
.copyright{font-size:.82rem;color:#7a7670;margin-top:14px;border-top:1px solid #2d2c28;padding-top:18px;}

/* 404 */
.page-404{text-align:center;padding:120px 24px;}
.page-404 h1{font-size:6rem;color:var(--accent);}
.page-404 p{color:var(--muted);font-size:1.15rem;margin-bottom:2rem;}

/* Forms */
.contact-form{display:flex;flex-direction:column;gap:14px;max-width:520px;margin:1.6rem 0;}
.contact-form input,.contact-form textarea{padding:12px 14px;border:1px solid var(--rule);border-radius:4px;font-family:var(--sans);font-size:.95rem;background:var(--paper);}
.contact-form textarea{min-height:130px;resize:vertical;}
.contact-form button{background:var(--accent);color:#fff;border:none;padding:13px 28px;border-radius:30px;font-weight:600;cursor:pointer;align-self:flex-start;font-size:.95rem;transition:background .2s;}
.contact-form button:hover{background:var(--accent-2);}

/* Legal pages */
.legal h2{margin-top:1.6rem;}
.legal ul{padding-left:1.4rem;margin-bottom:1rem;}
.legal li{margin-bottom:.5rem;color:var(--muted);}

/* Cookie banner */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#1a1a18;color:#fff;padding:22px;z-index:1000;display:none;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center;box-shadow:0 -4px 20px rgba(0,0,0,.2);}
.cookie-banner.visible{display:flex;}
.cookie-banner p{margin:0;flex:1 1 280px;font-size:.92rem;}
.cookie-banner .btns{display:flex;flex-wrap:wrap;gap:8px;}
.cookie-banner button{padding:9px 18px;border:none;border-radius:3px;font-weight:600;cursor:pointer;font-size:.85rem;}
.cookie-banner .accept{background:var(--accent-2);color:#fff;}
.cookie-banner .custom{background:transparent;color:#fff;border:1px solid #555;}
.cookie-banner .reject{background:#444;color:#fff;}
.cookie-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:1001;display:none;align-items:center;justify-content:center;padding:24px;}
.cookie-modal.visible{display:flex;}
.cookie-modal-inner{background:var(--paper);max-width:520px;width:100%;padding:32px;border-radius:6px;max-height:90vh;overflow-y:auto;}
.cookie-modal h3{margin-top:0;font-family:var(--serif);}
.cookie-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule);}
.cookie-row strong{display:block;}
.cookie-row small{color:var(--muted);font-size:.85rem;}
.toggle{position:relative;width:44px;height:22px;background:#ccc;border-radius:22px;cursor:pointer;transition:background .2s;flex-shrink:0;}
.toggle.on{background:var(--accent);}
.toggle::after{content:'';position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:2px;left:2px;transition:left .2s;}
.toggle.on::after{left:24px;}
.toggle.locked{opacity:.7;cursor:not-allowed;}
.cookie-modal .save{margin-top:18px;background:var(--accent);color:#fff;border:none;padding:11px 26px;border-radius:30px;font-weight:600;cursor:pointer;width:100%;}

@media(max-width:720px){
  .nav-main{order:3;width:100%;justify-content:center;}
  .hero{padding:64px 0 54px;}
  section{padding:48px 0;}
  .article{padding:32px 18px 60px;}
}
