/* PROVEROK.NET — Main Stylesheet v1.0.0 */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Geologica:wght@300;400;500&display=swap');

/* ── TOKENS ── */
:root{
  --font-display:'Playfair Display',Georgia,serif;
  --font-body:'Geologica','Inter',system-ui,sans-serif;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
  --space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;
  --space-9:96px;--space-10:128px;
  --container-max:1140px;--container-text:740px;
  --ink:#0f0f0e;--ink2:#3a3935;--ink3:#6b6a66;--ink4:#9b9a96;
  --surface:#fff;--surface-warm:#f7f5f0;--surface-hover:#f2f0eb;
  --border:#e2e0d8;--border-strong:#c8c6be;
  --accent:#1a3a5c;--accent2:#c8a96e;--accent-hover:#0f2540;
  --risk-bg:#fdf1f1;--risk-border:#e8c4c4;--risk-text:#7a2020;--risk-dot:#c0392b;
  --protect-bg:#f0f5f0;--protect-border:#b8d4b8;--protect-text:#1a4a1a;
  --info-bg:#f0f4fa;--info-border:#b8cce8;--info-text:#1a3a5c;
  --warn-bg:#fdf6ed;--warn-border:#e8d4a8;--warn-text:#6b4400;
  --radius:4px;--radius-lg:6px;
  --trans:150ms ease;
}

/* ── RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.6;color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{cursor:pointer;font-family:inherit;background:none;border:none}
ul,ol{list-style:none}
table{border-collapse:collapse;width:100%}

/* ── TYPOGRAPHY ── */
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--ink)}
h1{font-size:clamp(26px,4vw,48px);line-height:1.15}
h2{font-size:clamp(20px,2.5vw,28px);margin-bottom:var(--space-4);margin-top:var(--space-8)}
h3{font-size:clamp(17px,2vw,21px);margin-bottom:var(--space-3);margin-top:var(--space-6)}
p{font-size:16px;line-height:1.75;color:var(--ink2);margin-bottom:var(--space-4)}
p:last-child{margin-bottom:0}
strong{font-weight:600;color:var(--ink)}
.text-lead{font-size:18px;font-weight:300;line-height:1.75;color:var(--ink2)}
.text-label{font-size:11px;font-weight:500;letter-spacing:.10em;text-transform:uppercase;color:var(--ink3)}

/* ── LAYOUT ── */
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-5)}
.container--text{max-width:var(--container-text)}
@media(min-width:1200px){.container{padding:0 var(--space-7)}}
.section{padding:var(--space-9) 0}
.section--sm{padding:var(--space-7) 0}
.section--border-top{border-top:1px solid var(--border)}
.section--border-bottom{border-bottom:1px solid var(--border)}
.section--warm{background:var(--surface-warm)}
.grid--2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}
.grid--3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5)}
.grid--sidebar{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-7)}
@media(max-width:768px){.grid--sidebar{grid-template-columns:1fr}}

/* ── NAVIGATION ── */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);height:64px;display:flex;align-items:center}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);width:100%}
.site-logo{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--accent);letter-spacing:.04em;flex-shrink:0}
.site-logo span{color:var(--accent2)}
.main-nav{display:flex;align-items:center;gap:var(--space-6)}
.main-nav a{font-size:13px;color:var(--ink3);white-space:nowrap;transition:color var(--trans)}
.main-nav a:hover,.main-nav a.is-active{color:var(--ink)}
.header-cta{font-size:13px;font-weight:500;color:#fff;background:var(--accent);padding:9px 20px;border-radius:var(--radius);white-space:nowrap;transition:background var(--trans);flex-shrink:0}
.header-cta:hover{background:var(--accent-hover)}
.menu-toggle{display:none;border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;color:var(--ink);font-size:18px;line-height:1}
@media(max-width:900px){.main-nav{display:none}.menu-toggle{display:block}}
.main-nav.is-open{display:flex;flex-direction:column;position:fixed;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:var(--space-5);gap:var(--space-4);z-index:99}

/* ── MOBILE NAV OPEN ── */
@media(max-width:900px){.header-cta{display:none}}

/* ── ALERT STRIP ── */
.alert-strip{background:var(--risk-bg);border-top:1px solid var(--risk-border);border-bottom:1px solid var(--risk-border);padding:10px var(--space-5);display:flex;align-items:center;gap:var(--space-3);font-size:13px;color:var(--risk-text)}
.alert-strip__dot{width:7px;height:7px;border-radius:50%;background:var(--risk-dot);flex-shrink:0;animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}

/* ── HERO ── */
.hero{padding:var(--space-9) 0 var(--space-8);border-bottom:1px solid var(--border);text-align:center;max-width:860px;margin:0 auto}
.hero__label{display:block;margin-bottom:var(--space-5)}
.hero h1{margin-bottom:var(--space-5)}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero__lead{max-width:560px;margin:0 auto var(--space-6)}
.hero__actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}
.hero__stats{display:flex;gap:var(--space-8);justify-content:center;flex-wrap:wrap;margin-top:var(--space-7);padding-top:var(--space-6);border-top:1px solid var(--border)}
.stat__num{font-family:var(--font-display);font-size:clamp(24px,3vw,36px);font-weight:700;color:var(--accent);display:block;line-height:1;margin-bottom:var(--space-1)}
.stat__label{font-size:13px;color:var(--ink3)}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:13px;font-weight:500;line-height:1;padding:12px var(--space-5);border-radius:var(--radius);border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:all var(--trans)}
.btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn--ghost{background:transparent;color:var(--accent);border-color:var(--accent)}.btn--ghost:hover{background:var(--info-bg)}
.btn--white{background:#fff;color:var(--accent);border-color:#fff}.btn--white:hover{background:var(--surface-warm)}
.btn--sm{font-size:11px;padding:8px var(--space-4)}

/* ── CARDS ── */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5)}
.card--hover:hover{background:var(--surface-warm);cursor:pointer}
.card--warm{background:var(--surface-warm)}
.card-grid{display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.card-grid--2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card-grid--3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.card-grid .card{border:0;border-radius:0}

/* ── ARTICLE LIST ── */
.article-list{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.article-list__item{padding:var(--space-5);border-bottom:1px solid var(--border);background:var(--surface);transition:background var(--trans);display:block;cursor:pointer}
.article-list__item:last-child{border-bottom:0}
.article-list__item:hover{background:var(--surface-warm)}
.article-list__meta{display:flex;gap:var(--space-4);font-size:11px;color:var(--ink4);margin-bottom:var(--space-2)}
.article-list__category{font-weight:500;color:var(--accent)}
.article-list__title{font-size:15px;font-weight:500;color:var(--ink);line-height:1.4;display:block;margin-bottom:var(--space-1)}
.article-list__excerpt{font-size:13px;color:var(--ink3);line-height:1.5;margin:0}

/* ── CLUSTER LIST ITEM ── */
.cluster-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border);transition:padding-left var(--trans)}
.cluster-item:hover{padding-left:var(--space-2)}
.cluster-item:last-child{border-bottom:0}
.cluster-item__title{font-size:15px;font-weight:500;color:var(--ink);display:block;margin-bottom:4px}
.cluster-item__excerpt{font-size:13px;color:var(--ink3)}
.cluster-item__arrow{color:var(--ink4);flex-shrink:0}

/* ── BREADCRUMB ── */
.breadcrumb{display:flex;align-items:center;gap:var(--space-2);font-size:11px;color:var(--ink4);margin-bottom:var(--space-5);flex-wrap:wrap}
.breadcrumb a{color:var(--ink3);transition:color var(--trans)}.breadcrumb a:hover{color:var(--ink)}
.breadcrumb__sep{color:var(--ink4)}
.breadcrumb__current{color:var(--ink2)}

/* ── ARTICLE HEADER ── */
.article-header{padding:var(--space-7) 0 var(--space-6);border-bottom:1px solid var(--border);margin-bottom:var(--space-7)}
.article-header__meta{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}
.article-header__date{font-size:11px;color:var(--ink4)}
.article-header h1{margin:0 0 var(--space-4)}
.article-header__lead{font-size:18px;font-weight:300;color:var(--ink2);max-width:680px;margin:0;line-height:1.7}

/* ── ENTITY BADGE ── */
.prv-entity-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:2px;font-size:11px;font-weight:500;letter-spacing:.04em}
.prv-entity-badge--risk{background:var(--risk-bg);color:var(--risk-text)}
.prv-entity-badge--protect{background:var(--protect-bg);color:var(--protect-text)}
.prv-entity-badge--info{background:var(--info-bg);color:var(--info-text)}
.prv-entity-badge--warn{background:var(--warn-bg);color:var(--warn-text)}

/* ── CONCISE ANSWER ── */
.prv-concise-answer{background:var(--surface-warm);border-left:3px solid var(--accent2);padding:var(--space-5);border-radius:0 var(--radius) var(--radius) 0;margin:var(--space-5) 0 var(--space-6)}
.prv-concise-answer__label{font-size:11px;font-weight:500;letter-spacing:.10em;text-transform:uppercase;color:var(--ink3);margin-bottom:var(--space-2);display:block}
.prv-concise-answer__text{font-size:18px;font-weight:400;line-height:1.55;color:var(--ink);margin:0}

/* ── QUICK FACTS ── */
.prv-quick-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:var(--space-6) 0}
.prv-quick-facts__item{background:var(--surface);padding:var(--space-4)}
.prv-quick-facts__label{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-bottom:var(--space-1);display:block}
.prv-quick-facts__value{font-size:15px;font-weight:500;color:var(--ink)}

/* ── RISK ITEM ── */
.prv-risk-list{margin:var(--space-5) 0}
.prv-risk-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}
.prv-risk-item:last-child{border-bottom:0}
.prv-risk-item__num{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--accent2);flex-shrink:0;line-height:1;min-width:24px;margin-top:2px}
.prv-risk-item__text{font-size:15px;color:var(--ink2);line-height:1.65}

/* ── STEPS (HowTo) ── */
.prv-steps{margin:var(--space-5) 0}
.prv-step{display:grid;grid-template-columns:44px 1fr;gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border)}
.prv-step:last-child{border-bottom:0}
.prv-step__num{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:18px;font-weight:700;flex-shrink:0}
.prv-step__num--critical{background:var(--risk-dot)}
.prv-step__content{padding-top:6px}
.prv-step__title{font-size:15px;font-weight:500;color:var(--ink);display:block;margin-bottom:var(--space-2)}
.prv-step__text{font-size:14px;color:var(--ink2);line-height:1.65;margin:0}
.prv-step__timing{font-size:11px;color:var(--ink4);margin-top:var(--space-1);display:block}

/* ── FAQ ── */
.prv-faq{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:var(--space-6) 0}
.prv-faq__item{border-bottom:1px solid var(--border)}
.prv-faq__item:last-child{border-bottom:0}
.prv-faq__question{width:100%;background:none;border:0;padding:var(--space-4) var(--space-5);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);text-align:left;cursor:pointer;font-size:14px;font-weight:500;color:var(--ink);transition:background var(--trans);font-family:var(--font-body)}
.prv-faq__question:hover{background:var(--surface-warm)}
.prv-faq__question::after{content:'+';font-size:22px;color:var(--ink3);flex-shrink:0;transition:transform .25s;font-weight:300;line-height:1}
.prv-faq__item.is-open .prv-faq__question::after{transform:rotate(45deg)}
.prv-faq__answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.prv-faq__item.is-open .prv-faq__answer{max-height:500px}
.prv-faq__answer p{font-size:14px;color:var(--ink2);line-height:1.65;padding:4px var(--space-5) var(--space-5);margin:0}

/* ── RELATED LINKS ── */
.prv-related{border-top:1px solid var(--border);padding-top:var(--space-6);margin-top:var(--space-7)}
.prv-related__label{display:block;margin-bottom:var(--space-4)}
.prv-related__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-2)}
.prv-related__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);font-size:13px;color:var(--ink);transition:background var(--trans),border-color var(--trans)}
.prv-related__item:hover{background:var(--surface-warm);border-color:var(--border-strong)}
.prv-related__item__icon{color:var(--ink3);flex-shrink:0;font-size:13px}

/* ── CTA ── */
.prv-cta{background:var(--accent);border-radius:var(--radius);padding:var(--space-7) var(--space-6);display:grid;grid-template-columns:1fr auto;gap:var(--space-5);align-items:center;margin:var(--space-7) 0}
.prv-cta__title{font-family:var(--font-display);font-size:clamp(18px,2.5vw,26px);font-weight:700;color:#fff;margin-bottom:var(--space-2);line-height:1.25}
.prv-cta__text{font-size:14px;color:rgba(255,255,255,.65);margin:0}
@media(max-width:640px){.prv-cta{grid-template-columns:1fr}}

/* ── LAW REFERENCE ── */
.prv-law-ref{background:var(--info-bg);border:1px solid var(--info-border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);font-size:13px;color:var(--info-text);display:flex;align-items:flex-start;gap:var(--space-3);margin:var(--space-4) 0}
.prv-law-ref__icon{flex-shrink:0;margin-top:1px}
.prv-law-ref__text{margin:0;line-height:1.55}

/* ── SCENARIO HEADER ── */
.scenario-header{background:var(--risk-bg);border-bottom:1px solid var(--risk-border);padding:var(--space-6) 0;margin-bottom:var(--space-7)}
.scenario-header__urgency{font-size:11px;font-weight:500;letter-spacing:.10em;text-transform:uppercase;color:var(--risk-text);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}
.scenario-header__urgency::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--risk-dot);display:block}
.scenario-header h1{color:var(--ink);margin:0 0 var(--space-3)}
.scenario-header__situation{font-size:15px;color:var(--risk-text)}

/* ── ENTRY CONTENT ── */
.entry-content ul,.entry-content ol{padding-left:var(--space-5);margin-bottom:var(--space-4)}
.entry-content li{line-height:1.75;color:var(--ink2);margin-bottom:var(--space-2)}
.entry-content ul li{list-style-type:disc}
.entry-content ol li{list-style-type:decimal}
.entry-content a{color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:1px;transition:opacity var(--trans)}
.entry-content a:hover{opacity:.7}
.entry-content blockquote{border-left:3px solid var(--accent2);padding:var(--space-4) var(--space-5);margin:var(--space-6) 0;background:var(--surface-warm)}
.entry-content blockquote p{font-family:var(--font-display);font-size:18px;font-style:italic;color:var(--ink);margin:0}
.entry-content table{margin:var(--space-6) 0;font-size:13px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.entry-content th{background:var(--surface-warm);font-weight:500;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--border)}
.entry-content td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--ink2);vertical-align:top}
.entry-content tr:last-child td{border-bottom:0}
.entry-content tr:hover td{background:var(--surface-hover)}
.entry-content h2{margin-top:var(--space-8)}.entry-content h3{margin-top:var(--space-6)}
.prv-inline-link{color:var(--accent);border-bottom:1px dashed currentColor;transition:border-style var(--trans)}.prv-inline-link:hover{border-style:solid}

/* ── HUB PAGE ── */
.hub-page__intro{padding:var(--space-7) 0;border-bottom:1px solid var(--border);max-width:680px}
.hub-page__intro h1{margin:0 0 var(--space-4)}

/* ── FOOTER ── */
.site-footer{border-top:1px solid var(--border);padding:var(--space-6) 0;margin-top:var(--space-10)}
.site-footer__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}
.site-footer__logo{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--accent)}
.site-footer__logo span{color:var(--accent2)}
.site-footer__links{display:flex;gap:var(--space-5);flex-wrap:wrap}
.site-footer__links a{font-size:12px;color:var(--ink3);transition:color var(--trans)}.site-footer__links a:hover{color:var(--ink)}
.site-footer__copy{font-size:11px;color:var(--ink4)}

/* ── 404 ── */
.page-404{text-align:center;padding:var(--space-10) 0}
.page-404 h1{font-size:80px;color:var(--accent);margin-bottom:var(--space-4)}

/* ── PAGINATION ── */
.archive-pagination{display:flex;gap:var(--space-2);justify-content:center;padding:var(--space-7) 0}
.archive-pagination a,.archive-pagination span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;color:var(--ink);transition:all var(--trans)}
.archive-pagination a:hover{background:var(--surface-warm);border-color:var(--border-strong)}
.archive-pagination .current{background:var(--accent);color:#fff;border-color:var(--accent)}

/* ── SEARCH ── */
.search-form{display:flex;gap:var(--space-2);max-width:480px}
.search-form input{flex:1;padding:10px var(--space-4);border:1px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:var(--font-body);color:var(--ink);background:var(--surface)}
.search-form input:focus{outline:none;border-color:var(--accent)}
.search-form button{padding:10px var(--space-5);background:var(--accent);color:#fff;border-radius:var(--radius);font-size:13px;font-weight:500;font-family:var(--font-body);transition:background var(--trans)}
.search-form button:hover{background:var(--accent-hover)}

/* ── UTILITIES ── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.text-center{text-align:center}
.mt-0{margin-top:0!important}
.mb-0{margin-bottom:0!important}

/* ── ACCESSIBILITY ── */
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;top:var(--space-3);left:var(--space-3);width:auto;height:auto;padding:var(--space-2) var(--space-4);background:var(--accent);color:#fff;font-size:14px;font-weight:500;border-radius:var(--radius);z-index:9999;overflow:visible}

/* ── MOBILE NAV OVERLAY ── */
@media(max-width:900px){
  .main-nav.is-open{
    display:flex;flex-direction:column;
    position:fixed;top:64px;left:0;right:0;
    background:#fff;border-bottom:1px solid var(--border);
    padding:var(--space-5);gap:var(--space-4);z-index:99;
    box-shadow:0 8px 24px rgba(0,0,0,.08)
  }
  .main-nav.is-open a{font-size:16px;color:var(--ink);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}
  .main-nav.is-open a:last-child{border-bottom:0}
  .header-cta{display:none}
}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  h1{font-size:26px}.article-header h1{font-size:24px}
  h2{font-size:20px}h3{font-size:18px}
  .hero{text-align:left;padding:var(--space-7) 0 var(--space-6)}
  .hero__actions{flex-direction:column;align-items:flex-start}
  .hero__stats{flex-direction:column;gap:var(--space-4);align-items:flex-start}
  .prv-cta{padding:var(--space-5);grid-template-columns:1fr}
  .section{padding:var(--space-7) 0}
  .section--sm{padding:var(--space-5) 0}
  .article-header{padding:var(--space-5) 0 var(--space-4);margin-bottom:var(--space-5)}
  .prv-concise-answer{padding:var(--space-4)}
}
@media(max-width:480px){
  .container{padding:0 var(--space-4)}
  .prv-step{grid-template-columns:36px 1fr}
  .prv-step__num{width:36px;height:36px;font-size:15px}
  .site-footer__inner{flex-direction:column;align-items:flex-start}
  .hero__actions .btn{width:100%;justify-content:center}
}
@media print{
  .site-header,.alert-strip,.prv-cta,.main-nav,.menu-toggle{display:none}
  body{font-size:12px;color:#000}
  .prv-faq__answer{max-height:none!important}
  a[href]::after{content:" (" attr(href) ")";font-size:10px;color:#666}
  .site-footer__copy{display:block}
}
