/*
Theme Name: Liceum Smila — Book
Theme URI: https://liceum-smila.com.ua/
Author: Ірина Коваленко
Description: Спокійний академічний блог про психологію інтимності. Книжкова колонка для читання, буквиця, шавлієво-зелена палітра, серифна типографіка. Унікальна тема для liceum-smila.com.ua.
Version: 1.1
Text Domain: liceum-book
*/

/* ============ design tokens ============ */
:root{
  --sage:#6b8f71;
  --sage-deep:#4f7057;
  --sage-tint:#e7ede6;
  --paper:#f5f3ec;
  --paper-2:#efece1;
  --ink:#232620;
  --ink-soft:#4a4f45;
  --ink-faint:#77796d;
  --rule:#d8d5c6;
  --serif:"Merriweather",Georgia,"Times New Roman",serif;
  --sans:"Rubik",system-ui,-apple-system,sans-serif;
  --measure:38rem;
  --shadow:0 1px 0 rgba(35,38,32,.04),0 18px 40px -30px rgba(35,38,32,.5);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--serif);
  font-size:18px;
  line-height:1.78;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--sage-deep);text-decoration-color:var(--rule);text-underline-offset:3px}
a:hover{color:var(--ink)}

.ls-shell{max-width:73rem;margin:0 auto;padding:0 1.6rem}
.ls-col{max-width:var(--measure);margin-inline:auto}

/* ============ masthead ============ */
.ls-masthead{
  border-bottom:1px solid var(--rule);
  background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 60%,var(--paper-2) 100%);
}
.ls-masthead-in{
  display:flex;align-items:center;justify-content:space-between;gap:1.4rem;
  padding:1.5rem 0 1.35rem;flex-wrap:wrap;
}
/* --- bespoke logo lockup: emblem mark + graphic wordmark, no tagline --- */
.ls-brand{display:inline-flex;text-decoration:none;line-height:1}
.ls-logo{display:inline-flex;align-items:center;gap:.7rem}
.ls-logo-svg{display:block;width:40px;height:40px;flex:0 0 auto;border-radius:.6rem}
.ls-wordmark{display:inline-flex;flex-direction:column;line-height:1}
.ls-wm-primary{
  font-family:var(--serif);font-weight:900;font-size:1.5rem;letter-spacing:-.015em;
  color:var(--ink);
}
.ls-wm-rest{
  font-family:var(--sans);font-weight:600;font-size:.66rem;letter-spacing:.34em;
  text-transform:uppercase;color:var(--sage-deep);margin-top:.18rem;
}
.ls-brand:hover .ls-wm-primary{color:var(--sage-deep)}

.ls-topnav{display:flex;gap:.4rem;flex-wrap:wrap;font-family:var(--sans);font-size:.86rem;font-weight:500}
.ls-topnav a{
  text-decoration:none;color:var(--ink-soft);padding:.4rem .72rem;border-radius:2rem;
  transition:background .18s ease,color .18s ease;
}
.ls-topnav a:hover,.ls-topnav a:focus-visible{background:var(--sage-tint);color:var(--sage-deep);outline:none}
.ls-topnav a.ls-home{color:var(--sage-deep)}

/* ============ front page: contents / titlepage ============ */
.ls-titlepage{padding:4.2rem 0 2.4rem;text-align:center;position:relative}
.ls-titlepage:before{
  content:"";position:absolute;left:50%;top:1.6rem;transform:translateX(-50%);
  width:44px;height:2px;background:var(--sage);
}
.ls-eyebrow{
  font-family:var(--sans);font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--sage-deep);font-weight:600;margin-bottom:1.1rem;
}
.ls-titlepage h1{
  font-family:var(--serif);font-weight:900;font-size:clamp(2.1rem,1.3rem+3vw,3.5rem);
  line-height:1.14;margin:0 auto .9rem;max-width:20ch;letter-spacing:-.015em;
}
.ls-titlepage .ls-abstract{
  font-family:var(--serif);font-style:italic;color:var(--ink-soft);
  font-size:1.12rem;line-height:1.7;max-width:46ch;margin:0 auto;
}
.ls-titlepage .ls-open{
  display:inline-block;margin-top:1.8rem;font-family:var(--sans);font-weight:500;font-size:.92rem;
  color:var(--ink);text-decoration:none;border-bottom:2px solid var(--sage);padding-bottom:2px;
  transition:color .18s ease,border-color .18s ease;
}
.ls-titlepage .ls-open:hover{color:var(--sage-deep);border-color:var(--sage-deep)}

/* frontispiece — featured leading essay: asymmetric editorial split */
.ls-frontis{
  display:grid;grid-template-columns:1.05fr .95fr;gap:0;align-items:stretch;
  margin:2.2rem 0 3.4rem;border:1px solid var(--rule);border-radius:.7rem;overflow:hidden;
  background:#fbfaf4;box-shadow:var(--shadow);
}
.ls-frontis .ls-frontis-fig{margin:0;position:relative;background:var(--sage-tint);min-height:280px}
.ls-frontis .ls-frontis-fig img{width:100%;height:100%;object-fit:cover;filter:saturate(.94)}
.ls-frontis .ls-frontis-body{padding:2.4rem 2.4rem 2.2rem;display:flex;flex-direction:column;justify-content:center}
.ls-tag{
  font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--sage-deep);
}
.ls-frontis-body h2{
  font-family:var(--serif);font-weight:900;font-size:clamp(1.5rem,1.1rem+1.6vw,2.15rem);
  line-height:1.2;margin:.5rem 0 .7rem;letter-spacing:-.01em;
}
.ls-frontis-body h2 a{color:var(--ink);text-decoration:none}
.ls-frontis-body h2 a:hover{color:var(--sage-deep)}
.ls-frontis-body p{margin:0 0 1.3rem;color:var(--ink-soft);font-size:1rem;line-height:1.72}
.ls-byline{
  font-family:var(--sans);font-size:.82rem;color:var(--ink-faint);display:flex;align-items:center;gap:.55rem;
}
.ls-byline .ls-init{
  display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:50%;
  background:var(--sage);color:#fff;font-size:.78rem;font-weight:600;
}
.ls-byline .ls-sep{width:3px;height:3px;border-radius:50%;background:var(--ink-faint);display:inline-block}

/* ============ chapters (category index) ============ */
.ls-chapter{padding:2.8rem 0;border-top:1px solid var(--rule)}
.ls-chapter:first-of-type{border-top:none}
.ls-chapter-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.7rem}
.ls-chapter-num{
  font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.26em;
  color:var(--sage);text-transform:uppercase;display:block;margin-bottom:.35rem;
}
.ls-chapter-head h2{
  font-family:var(--serif);font-weight:900;font-size:clamp(1.4rem,1.1rem+1.2vw,1.9rem);
  margin:0;letter-spacing:-.01em;line-height:1.2;
}
.ls-chapter-all{
  font-family:var(--sans);font-size:.85rem;font-weight:500;text-decoration:none;color:var(--sage-deep);
  white-space:nowrap;border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .18s;
}
.ls-chapter-all:hover{border-color:var(--sage-deep)}

/* leaves = post entries as an editorial reading list, not a card grid.
   First leaf in each chapter is emphasised (magazine lede). */
.ls-leaves{display:grid;gap:1.4rem}
.ls-leaf{
  display:grid;grid-template-columns:9.5rem 1fr;gap:1.5rem;align-items:center;
  padding:1.1rem;border-radius:.6rem;transition:background .2s ease;
  position:relative;
}
.ls-leaf:hover{background:#fbfaf4}
.ls-leaf-fig{margin:0;border-radius:.45rem;overflow:hidden;aspect-ratio:4/3;background:var(--sage-tint)}
.ls-leaf-fig img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;filter:saturate(.94)}
.ls-leaf:hover .ls-leaf-fig img{transform:scale(1.05)}
.ls-leaf-body h3{
  font-family:var(--serif);font-weight:700;font-size:1.22rem;line-height:1.32;margin:0 0 .5rem;letter-spacing:-.005em;
}
.ls-leaf-body h3 a{color:var(--ink);text-decoration:none}
.ls-leaf-body h3 a:hover{color:var(--sage-deep)}
.ls-leaf-body p{margin:0 0 .7rem;color:var(--ink-soft);font-size:.96rem;line-height:1.65}
.ls-leaf-meta{
  font-family:var(--sans);font-size:.78rem;color:var(--ink-faint);
  display:flex;align-items:center;gap:.55rem;
}
.ls-leaf-meta .ls-sep{width:3px;height:3px;border-radius:50%;background:var(--ink-faint);display:inline-block}

/* ============ article (single) ============ */
.ls-article{padding:2.6rem 0 1rem}
.ls-crumbs{
  font-family:var(--sans);font-size:.8rem;color:var(--ink-faint);margin-bottom:1.4rem;line-height:1.5;
}
.ls-crumbs a{color:var(--sage-deep);text-decoration:none}
.ls-crumbs a:hover{text-decoration:underline}
.ls-crumbs .ls-sep{margin:0 .45rem;color:var(--rule)}
.ls-article-head{max-width:var(--measure);margin-inline:auto;text-align:center;margin-bottom:2rem}
.ls-article-head .ls-tag{display:inline-block;margin-bottom:.9rem}
.ls-article-head h1{
  font-family:var(--serif);font-weight:900;font-size:clamp(1.9rem,1.3rem+2.4vw,3rem);
  line-height:1.18;margin:0 0 1.1rem;letter-spacing:-.015em;
}
.ls-article-meta{
  font-family:var(--sans);font-size:.85rem;color:var(--ink-faint);
  display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap;
}
.ls-article-meta .ls-init{
  display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;
  background:var(--sage);color:#fff;font-size:.82rem;font-weight:600;
}
.ls-article-meta b{color:var(--ink);font-weight:600}
.ls-article-meta .ls-sep{width:3px;height:3px;border-radius:50%;background:var(--ink-faint);display:inline-block}

.ls-lead-fig{
  max-width:60rem;margin:0 auto 2.6rem;border-radius:.7rem;overflow:hidden;box-shadow:var(--shadow);
}
.ls-lead-fig img{width:100%}

/* reading column with drop-cap lead */
.ls-prose{max-width:var(--measure);margin-inline:auto;font-size:1.08rem;line-height:1.9;color:var(--ink)}
.ls-prose > p:first-of-type::first-letter{
  float:left;font-family:var(--serif);font-weight:900;font-size:4.4rem;line-height:.82;
  padding:.06em .12em 0 0;color:var(--sage-deep);
}
.ls-prose p{margin:0 0 1.5rem}
.ls-prose h2{
  font-family:var(--serif);font-weight:900;font-size:1.65rem;line-height:1.28;
  margin:2.6rem 0 1rem;letter-spacing:-.01em;
}
.ls-prose h3{font-family:var(--serif);font-weight:700;font-size:1.32rem;margin:2.1rem 0 .8rem}
.ls-prose a{color:var(--sage-deep)}
.ls-prose ul,.ls-prose ol{margin:0 0 1.5rem;padding-left:1.4rem}
.ls-prose li{margin:.4rem 0}
.ls-prose blockquote{
  margin:2rem 0;padding:.4rem 0 .4rem 1.6rem;border-left:3px solid var(--sage);
  font-style:italic;color:var(--ink-soft);font-size:1.14rem;line-height:1.7;
}
.ls-prose figure{margin:2rem 0}
.ls-prose figure img{border-radius:.5rem}
.ls-prose figcaption{
  font-family:var(--sans);font-size:.82rem;color:var(--ink-faint);text-align:center;margin-top:.6rem;
}
.ls-prose img{border-radius:.5rem}

.ls-endmark{max-width:var(--measure);margin:2.4rem auto 0;text-align:center}
.ls-endmark span{display:inline-block;width:.6rem;height:.6rem;background:var(--sage);border-radius:50%}

/* related — "Читайте також" : editorial numbered index list (NOT card grid,
   NO heading tags — label + titles are styled spans) */
.ls-also{padding:2.6rem 0 3.4rem;border-top:1px solid var(--rule);margin-top:2.6rem}
.ls-also .ls-shell{max-width:52rem}
.ls-also-head{margin-bottom:1.4rem;display:flex;align-items:center;gap:1rem}
.ls-also-label{
  font-family:var(--sans);font-weight:600;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--sage-deep);white-space:nowrap;
}
.ls-also-head:after{content:"";flex:1;height:1px;background:var(--rule)}
.ls-also-list{display:grid;gap:.2rem;counter-reset:also}
.ls-also-item{
  display:grid;grid-template-columns:auto 4.6rem 1fr;align-items:center;gap:1.1rem;
  text-decoration:none;padding:.95rem .6rem;border-bottom:1px solid var(--rule);
  transition:background .18s ease;counter-increment:also;
}
.ls-also-item:last-child{border-bottom:none}
.ls-also-item:hover{background:#fbfaf4}
.ls-also-item:before{
  content:counter(also,decimal-leading-zero);
  font-family:var(--sans);font-weight:600;font-size:.8rem;color:var(--sage);
  min-width:1.6rem;
}
.ls-also-item .ls-also-fig{
  border-radius:.4rem;overflow:hidden;aspect-ratio:4/3;background:var(--sage-tint);margin:0;
}
.ls-also-item .ls-also-fig img{width:100%;height:100%;object-fit:cover;filter:saturate(.94);transition:transform .5s}
.ls-also-item:hover .ls-also-fig img{transform:scale(1.05)}
.ls-also-title{
  font-family:var(--serif);font-weight:700;font-size:1.06rem;line-height:1.34;color:var(--ink);
  display:block;
}
.ls-also-item:hover .ls-also-title{color:var(--sage-deep)}
.ls-also-meta{
  font-family:var(--sans);font-size:.74rem;color:var(--ink-faint);display:block;margin-top:.25rem;
}

/* ============ archive / index ============ */
.ls-archive-head{padding:3rem 0 1.4rem;text-align:center;border-bottom:1px solid var(--rule)}
.ls-archive-head .ls-eyebrow{margin-bottom:.8rem}
.ls-archive-head h1{
  font-family:var(--serif);font-weight:900;font-size:clamp(1.8rem,1.2rem+2vw,2.7rem);
  margin:0 auto .6rem;letter-spacing:-.015em;
}
.ls-archive-head p{font-family:var(--serif);font-style:italic;color:var(--ink-soft);max-width:52ch;margin:0 auto}
.ls-archive-body{padding:2.4rem 0 3.2rem}
.ls-pager{margin-top:2.6rem;text-align:center;font-family:var(--sans)}
.ls-pager .page-numbers{
  display:inline-block;padding:.5rem .85rem;margin:0 .2rem;border-radius:.45rem;
  text-decoration:none;color:var(--ink-soft);font-size:.9rem;border:1px solid var(--rule);
}
.ls-pager .page-numbers.current{background:var(--sage);color:#fff;border-color:var(--sage)}
.ls-pager .page-numbers:hover:not(.current){background:var(--sage-tint);color:var(--sage-deep)}
.ls-empty{text-align:center;color:var(--ink-faint);font-style:italic;padding:2rem 0}

/* ============ colophon (footer) ============ */
.ls-colophon{
  background:var(--ink);color:#d9dbcf;margin-top:2rem;
  font-family:var(--sans);
}
.ls-colophon-in{padding:3rem 0 1.6rem}
.ls-colophon-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2.2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1)}
.ls-colophon .ls-cmark{
  font-family:var(--serif);font-weight:900;font-size:1.35rem;color:#fff;margin-bottom:.7rem;display:block;
}
.ls-colophon p{margin:0;font-size:.9rem;line-height:1.7;color:#a9ac9d}
.ls-colophon h4{
  font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage);
  margin:0 0 .9rem;font-weight:600;
}
.ls-colophon ul{list-style:none;margin:0;padding:0}
.ls-colophon li{margin:.5rem 0}
.ls-colophon a{color:#d9dbcf;text-decoration:none;font-size:.9rem;transition:color .18s}
.ls-colophon a:hover{color:#fff}
.ls-colophon-foot{
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding-top:1.4rem;font-size:.8rem;color:#8b8e80;
}

/* ============ focus & a11y ============ */
a:focus-visible,.ls-open:focus-visible{outline:2px solid var(--sage-deep);outline-offset:3px;border-radius:2px}

/* ============ reduced motion ============ */
@media(prefers-reduced-motion:reduce){
  *{transition:none !important}
}

/* ============ responsive ============ */
@media(max-width:860px){
  .ls-frontis{grid-template-columns:1fr}
  .ls-frontis .ls-frontis-fig{min-height:220px}
}
@media(max-width:640px){
  body{font-size:17px}
  .ls-masthead-in{justify-content:center;text-align:center}
  .ls-logo{justify-content:center}
  .ls-topnav{justify-content:center}
  .ls-leaf{grid-template-columns:1fr;gap:.9rem}
  .ls-leaf-fig{aspect-ratio:16/9}
  .ls-chapter-head{flex-wrap:wrap}
  .ls-also-item{grid-template-columns:auto 3.6rem 1fr;gap:.8rem}
  .ls-colophon-grid{grid-template-columns:1fr;gap:1.6rem}
  .ls-prose > p:first-of-type::first-letter{font-size:3.6rem}
}
