/* === obsidian-royal — deep charcoal × amethyst purple === */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap');

:root {
    --or-bg:       #121016;
    --or-surf:     #1a1720;
    --or-surf2:    #22202a;
    --or-bdr:      #2e2a38;
    --or-bdr2:     #3d3748;
    --or-txt:      #e4e0ec;
    --or-muted:    #7d7590;
    --or-acc:      #a17fe0;
    --or-acc-h:    #b694f0;
    --or-acc-dark: #7c5cbf;
    --or-acc-soft: rgba(161,127,224,.1);
    --or-rad:      6px;
    --or-font-head: 'Playfair Display', Georgia, serif;
    --or-font-body: 'Source Sans 3', system-ui, sans-serif;
}

:root {
    --color-bg:            var(--or-bg);
    --color-surface:       var(--or-surf);
    --color-surface-hover: var(--or-surf2);
    --color-border:        var(--or-bdr);
    --color-text:          var(--or-txt);
    --color-text-muted:    var(--or-muted);
    --color-accent:        var(--or-acc);
    --color-accent-hover:  var(--or-acc-h);
    --color-accent-soft:   var(--or-acc-soft);
    --color-white: var(--or-txt);
    --font:                var(--or-font-body);
    --radius:              6px;
    --radius-lg:           10px;
    --shadow:              0 2px 12px rgba(0,0,0,.25);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--or-font-body); background: var(--or-bg); color: var(--or-txt); line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: var(--or-acc); text-decoration: none; transition: color .2s; }
a:hover { color: var(--or-acc-h); }
img { max-width: 100%; height: auto; display: block; }
ul, ol { list-style: none; padding-left: 0; margin: 0; }
h1, h2, h3, h4 { font-family: var(--or-font-head); }

.eres9 { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }

/* === Header === */
.frif9 {
    background: var(--or-surf);
    border-bottom: 1px solid var(--or-bdr);
    position: sticky; top: 0; z-index: 100;
    box-shadow: 0 2px 16px rgba(0,0,0,.3);
}
.utit5 { display: flex; align-items: center; gap: 1.5rem; height: 58px; }
.bvis2 {
    font-family: var(--or-font-head); font-size: 1.15rem; font-weight: 700; color: var(--or-acc);
    white-space: nowrap; letter-spacing: .02em;
}
.bvis2:hover { color: var(--or-acc-h); }
.cwiq0 { display: flex; gap: .2rem; }
.cwiq0 a {
    color: var(--or-muted); font-size: .82rem; font-weight: 500;
    padding: .35rem .75rem; border-radius: var(--or-rad);
    transition: color .2s, background .2s;
}
.cwiq0 a:hover { color: var(--or-acc); background: var(--or-acc-soft); }
.ysir4 {
    margin-left: auto; display: inline-block; padding: .45rem 1.15rem;
    background: var(--or-acc); color: #121016 !important; font-size: .8rem; font-weight: 700;
    border-radius: var(--or-rad); transition: background .2s; white-space: nowrap;
}
.ysir4:hover { background: var(--or-acc-h); }
.nxis1 { position: relative; }
.nbol3 {
    background: var(--or-bg); border: 1px solid var(--or-bdr2); padding: .4rem .75rem;
    color: var(--or-txt); font-size: .82rem; width: 195px; outline: none; font-family: var(--or-font-body);
    border-radius: var(--or-rad); transition: border-color .2s;
}
.nbol3:focus { border-color: var(--or-acc); }
.izid4 { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); background: none; border: none; cursor: pointer; font-size: 1rem; }
.rlecj9 {
    position: absolute; top: 100%; right: 0; background: var(--or-surf); border: 1px solid var(--or-bdr2);
    width: 290px; display: none; z-index: 200; border-radius: var(--or-rad); box-shadow: 0 6px 24px rgba(0,0,0,.3);
}
.rlecj9 a { display: block; padding: .55rem .8rem; color: var(--or-txt); border-bottom: 1px solid var(--or-bdr); font-size: .82rem; }
.rlecj9 a:last-child { border-bottom: none; }
.rlecj9 a:hover { background: var(--or-acc-soft); color: var(--or-acc); }

/* === Main === */
.jdoj1 { min-height: 60vh; padding: 2rem 0; }

/* === Cards — elegant card grid with image top === */
.tqel3 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}
.rdeq0 {
    display: flex;
    flex-direction: column;
    background: var(--or-surf);
    border: 1px solid var(--or-bdr);
    border-radius: var(--or-rad);
    overflow: hidden;
    transition: box-shadow .2s, border-color .2s;
}
.rdeq0:hover { box-shadow: 0 6px 20px rgba(161,127,224,.12); border-color: var(--or-acc-soft); }
.ikev0 { display: block; }
.ijec4 { width: 100%; height: 200px; object-fit: cover; display: block; }
.jfej5 { padding: .8rem 1rem; }
.gneo6 { font-family: var(--or-font-head); font-size: .93rem; font-weight: 600; margin-bottom: .15rem; }
.gneo6 a { color: var(--or-txt); }
.gneo6 a:hover { color: var(--or-acc); }
.oleo4 { font-size: .74rem; color: var(--or-muted); margin-bottom: .1rem; }
.kpek4 { font-size: .72rem; color: var(--or-acc); font-weight: 600; }
.xgeg8 { font-size: .7rem; color: var(--or-muted); margin-top: .1rem; }
.nmez1 { color: #d4a848; }
.tvev5 { text-align: center; padding: 3rem; color: var(--or-muted); }

/* === Pagination === */
.ggecb4 { display: flex; gap: 5px; margin-top: 2rem; justify-content: center; }
.ggecb4 a, .ggecb4 span {
    display: inline-block; padding: .45rem .85rem;
    font-size: .8rem; font-weight: 600; background: var(--or-surf);
    border: 1px solid var(--or-bdr); color: var(--or-muted);
    border-radius: var(--or-rad); transition: all .2s;
}
.ggecb4 a:hover { border-color: var(--or-acc); color: var(--or-acc); }
.ggecb4 .jtek2 { background: var(--or-acc); border-color: var(--or-acc); color: #121016; }

/* === Search form === */
.mmeco8 { display: flex; gap: 0; margin-bottom: 2rem; border-radius: var(--or-rad); overflow: hidden; border: 1px solid var(--or-bdr2); }
.mpeca9 { flex: 1; background: var(--or-surf); border: none; padding: .65rem 1rem; color: var(--or-txt); font-size: .88rem; outline: none; font-family: var(--or-font-body); }
.mpeca9:focus { background: var(--or-surf2); }
.cnecr5 { background: var(--or-acc); color: #121016; border: none; padding: .65rem 1.5rem; font-weight: 700; cursor: pointer; font-family: var(--or-font-body); font-size: .82rem; }
.cnecr5:hover { background: var(--or-acc-h); }

/* === Breadcrumb === */
.axc4 { font-size: .76rem; color: var(--or-muted); margin-bottom: 1.5rem; }
.axc4 a { color: var(--or-muted); }
.axc4 a:hover { color: var(--or-acc); }

/* === Blog === */
.dwu2 { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.25rem; }
.mno3 { display: flex; flex-direction: column; background: var(--or-surf); border: 1px solid var(--or-bdr); border-radius: var(--or-rad); overflow: hidden; transition: box-shadow .2s; }
.mno3:hover { box-shadow: 0 6px 20px rgba(161,127,224,.1); }
.rsi6 { width: 100%; height: 180px; object-fit: cover; display: block; }
.fpd7 { padding: 1.25rem; }
.yqe8 { font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--or-acc); }
.mno3 h2 { font-size: 1rem; margin: .3rem 0; font-weight: 600; font-family: var(--or-font-head); }
.mno3 h2 a { color: var(--or-txt); }
.mno3 h2 a:hover { color: var(--or-acc); }
.jri5 { font-size: .7rem; color: var(--or-muted); }
.mno3 p { font-size: .84rem; color: var(--or-muted); margin: .4rem 0; }
.mvn5 { font-size: .76rem; font-weight: 600; color: var(--or-acc); }
.sti9 { display: block; }
@media (max-width: 600px) { .mno3 { grid-template-columns: 1fr; } .sti9 { display: none; } }

/* === Blog categories === */
.okr2 { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 1.5rem; }
.flp5 { padding: .35rem .8rem; font-size: .75rem; font-weight: 600; color: var(--or-muted); border: 1px solid var(--or-bdr); border-radius: 20px; transition: all .2s; }
.kmj9, .flp5:hover { background: var(--or-acc); color: #121016; border-color: var(--or-acc); }

/* === Article === */
.lhc9 { width: 100%; margin: 1rem 0; max-height: 420px; object-fit: cover; border-radius: var(--or-rad); }
.wgu0 h1 { font-size: clamp(1.5rem, 3vw, 2.3rem); font-weight: 700; }
.jjp8 { display: flex; gap: 1rem; margin-top: .5rem; font-size: .76rem; color: var(--or-muted); }
.xcj3 { color: var(--or-acc); font-weight: 600; }
.msej6 { line-height: 1.8; color: var(--or-txt); }
.msej6 h2 { font-size: 1.2rem; color: var(--or-acc); margin: 1.5rem 0 .75rem; }
.msej6 p { margin-bottom: 1rem; }

/* === Footer === */
.dlib0 { background: var(--or-surf); border-top: 1px solid var(--or-bdr); margin-top: 3rem; }
.apig4 { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 2rem; padding: 2rem 0; }
.sniz7 h4 { font-family: var(--or-font-head); font-size: .78rem; font-weight: 700; color: var(--or-acc); margin-bottom: .75rem; }
.sniz7 a { display: block; font-size: .82rem; color: var(--or-muted); margin-bottom: .3rem; }
.sniz7 a:hover { color: var(--or-acc); }
.sniz7 p { font-size: .82rem; color: var(--or-muted); }
.xmig7 { text-align: center; padding: .85rem 0; border-top: 1px solid var(--or-bdr); font-size: .72rem; color: var(--or-muted); }

@media (max-width: 700px) { .tqel3 { grid-template-columns: 1fr 1fr; } .ijec4 { height: 150px; } }
@media (max-width: 500px) { .tqel3 { grid-template-columns: 1fr; } }
