
:root{
  --ink:#1f2937;
  --muted:#556070;
  --line:#d7dee8;
  --paper:#ffffff;
  --soft:#f5f8fb;
  --soft2:#eef3f8;
  --accent:#153d6f;
  --accent2:#c1332b;
  --accent3:#e28b19;
  --ok:#0d6b46;
  --dark:#0f1720;
  --dark2:#111827;
  --light:#e6eef8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans Armenian","Noto Sans","DejaVu Sans",Roboto,Inter,Arial,sans-serif;color:var(--ink);background:#f1f4f8}
input,textarea,button,select{font:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.flagline{height:10px;background:linear-gradient(90deg,#d9282b 0 33.3%,#1d56a6 33.3% 66.6%,#f0a533 66.6% 100%)}
.site-header{background:linear-gradient(180deg,#112b4f,#173b69);color:#fff;min-height:180px;padding:0;position:relative}
.site-header.compact{min-height:160px}
.site-header .wrap{
  min-height:170px;display:flex;flex-direction:column;justify-content:center;
  padding-top:52px;padding-bottom:20px
}
.lang-switch{display:flex;gap:10px;position:absolute;top:18px;right:24px;margin:0;z-index:2;flex-wrap:wrap}
.lang-link{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-width:68px;height:36px;padding:0 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.24);background:rgba(8,21,41,.22);
  color:#fff;text-decoration:none;font-weight:700;
  box-shadow:0 10px 24px rgba(8,20,40,.14);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.lang-link:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.45);color:#fff}
.lang-link .lang-flag{
  display:block;position:relative;flex:0 0 auto;
  width:20px;height:14px;border-radius:4px;overflow:hidden;
  font-size:0;line-height:0;color:transparent;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.16);
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover
}
.lang-link[data-lang="hy"] .lang-flag{
  background:linear-gradient(180deg,#d90012 0 33.333%,#0033a0 33.333% 66.666%,#f2a800 66.666% 100%);
}
.lang-link[data-lang="ru"] .lang-flag{
  background:linear-gradient(180deg,#ffffff 0 33.333%,#224c9a 33.333% 66.666%,#d52b1e 66.666% 100%);
}
.lang-link[data-lang="en"] .lang-flag{
  background:#012169 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 42'%3E%3Crect width='60' height='42' fill='%23012169'/%3E%3Cpath d='M0 0l60 42M60 0L0 42' stroke='%23fff' stroke-width='10'/%3E%3Cpath d='M0 0l60 42M60 0L0 42' stroke='%23C8102E' stroke-width='6'/%3E%3Cpath d='M30 0v42M0 21h60' stroke='%23fff' stroke-width='16'/%3E%3Cpath d='M30 0v42M0 21h60' stroke='%23C8102E' stroke-width='10'/%3E%3C/svg%3E") center/cover no-repeat;
}
.lang-link .lang-text{
  position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;
  clip:auto;border:0;display:block;font-size:12px;line-height:1;
  letter-spacing:.08em;text-transform:uppercase;color:inherit
}
.lang-link.active{background:#fff;border-color:#fff;color:var(--accent);box-shadow:0 10px 24px rgba(15,23,42,.18)}
.eyebrow{font-size:13px;letter-spacing:.06em;text-transform:uppercase;opacity:.82}
h1{margin:.35rem 0 0;font-size:2.15rem;line-height:1.15}
.subtitle{margin:.6rem 0 0;max-width:900px;color:#dfe8f2}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;justify-content:center}
main.wrap{padding-top:24px;padding-bottom:32px}
section,article,.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px 24px;margin:0 0 18px;box-shadow:0 1px 2px rgba(10,20,40,.04)}
section.hero{background:linear-gradient(180deg,#fff,#f9fbfd)}
.section-kicker{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent2);margin-bottom:.45rem}
.section-kicker.light{color:#dfe8f2}
h2{margin:.1rem 0 1rem;font-size:1.5rem;line-height:1.25;color:#132c4b}
h3{margin:1rem 0 .55rem;font-size:1.08rem;color:#173b69}
p{margin:.65rem 0}
ul,ol{margin:.55rem 0 .85rem 1.2rem}
li{margin:.28rem 0}
.note,.warning,.success,.sourcebox{padding:14px 16px;border-radius:12px;margin:14px 0;border-left:5px solid var(--accent)}
.note{background:#f4f8fc}
.warning{background:rgba(21,61,111,.12)}
.grid-2,.grid-3,.downloads-grid,.grid-two,.benefit-grid,.footer-grid{display:grid;gap:16px}
.grid-2,.grid-two,.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3,.downloads-grid,.benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card p:last-child{margin-bottom:0}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-weight:700;border:1px solid var(--accent)}
.btn:hover{filter:brightness(.96)}
.btn-secondary{background:#fff;color:var(--accent);border-color:var(--line)}
.download-card h3,.card h3{margin-top:0}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;margin:.75rem 0 1rem;background:#fff}
th,td{border:1px solid var(--line);padding:10px 12px;vertical-align:top;text-align:left}
th{background:var(--soft2);font-weight:700;color:var(--accent)}
.constitutional-section{background:linear-gradient(180deg,#0f1720,#111827);color:var(--light);border-color:#263446}
.constitutional-section h2,.constitutional-section h3,.constitutional-section p{color:var(--light)}
.dark-table{background:transparent}
.dark-table th,.dark-table td{border-color:#263446}
.dark-table th{background:#1a2636;color:#fff}
.dark-table td{background:#111827;color:#e6eef8}
.law-block{background:#0f1720;border:1px solid #263446;border-radius:14px;padding:16px 18px;margin:14px 0}
.law-title{font-weight:700;color:#fff;margin:0 0 10px}
pre.law{white-space:pre-wrap;word-wrap:break-word;overflow:auto;margin:.55rem 0 0;padding:0;border:none;background:transparent;color:#e6eef8;font:14px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.longform-card{background:#fff}
.support-panel{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:start}
.vote-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid var(--line);border-radius:16px;padding:18px 18px 16px;box-shadow:0 1px 2px rgba(10,20,40,.05)}
.auth-title{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}
.auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.auth-btn{padding:12px 10px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--accent);font-weight:700;cursor:pointer}
.auth-btn.active{border-color:var(--accent);background:var(--soft2)}
.auth-status{margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--soft);font-weight:600;color:var(--accent)}
.btn-support{margin-top:12px;width:100%;justify-content:center}
.btn-support[disabled]{opacity:.6;cursor:not-allowed}
.counter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.counter{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 12px;text-align:center}
.counter span{display:block;font-size:1.6rem;font-weight:800;color:var(--accent)}
.counter small{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.event-log-wrap{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px}
.event-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:210px;overflow:auto}
.event-log li{margin:0;padding:9px 10px;border-radius:10px;background:var(--soft);font-size:14px}
.vote-end{margin-top:8px}
.footer-link{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.site-footer{background:#0f1d2e;color:#d7e0ea;padding:28px 0 36px}
.site-footer h3{color:#fff}
.site-footer p{margin:.45rem 0}
.toc-links{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:980px){
  .support-panel,.grid-3,.downloads-grid,.benefit-grid,.grid-two,.grid-2,.footer-grid{grid-template-columns:1fr}
}
@media (max-width:900px){
  h1{font-size:1.5rem}
  .subtitle{font-size:.92rem}
  .wrap{padding:0 16px}
  .site-header{min-height:170px}
  .site-header.compact{min-height:150px}
  .site-header .wrap{padding-top:58px;padding-bottom:16px}
  .lang-switch{top:18px;right:16px}
}
@media print{body{background:#fff}.main-nav,.site-footer,.hero-actions{display:none!important}section,article,.card{box-shadow:none;border-color:#ccd4de;break-inside:avoid}a{color:#000;text-decoration:none}}


.section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.section-tile{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:20px 20px 18px;box-shadow:0 1px 2px rgba(10,20,40,.04)}
.section-tile h3{margin:0 0 .55rem}
.section-tile p{margin:.45rem 0 .85rem}
.tile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin:.45rem 0 0}
.pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:var(--soft2);color:var(--accent);font-size:13px;font-weight:700}
.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 14px;text-align:center}
.metric strong{display:block;font-size:1.6rem;line-height:1.1;color:var(--accent)}
.metric span{display:block;margin-top:6px;color:var(--muted);font-size:13px}
.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.compare-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px}
.compare-card h3{margin-top:0}
.doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.doc-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.doc-card h3{margin:.1rem 0 .55rem}
.step-list{counter-reset:step;margin:0;padding:0;list-style:none;display:grid;gap:12px}
.step-list li{position:relative;padding:16px 16px 16px 58px;background:#fff;border:1px solid var(--line);border-radius:16px}
.step-list li::before{counter-increment:step;content:counter(step);position:absolute;left:16px;top:16px;width:28px;height:28px;border-radius:999px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.inline-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.inline-links a{color:var(--accent);font-weight:700;text-decoration:none}
.inline-link{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.inline-link:hover{filter:brightness(.9)}
.note strong,.card strong{color:inherit}
.anchor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.anchor-card{background:linear-gradient(180deg,#fff,#f9fbfd);border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.anchor-card h3{margin-top:0}
.dark-subgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.dark-card{background:#111827;border:1px solid #263446;border-radius:14px;padding:16px 18px;color:#e6eef8}
.dark-card h3{margin-top:0;color:#fff}
.quote-panel{border-left:5px solid var(--accent2);padding-left:16px;margin:16px 0 0}
.vote-note{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}
@media (max-width:980px){.section-grid,.metric-strip,.compare-grid,.doc-grid,.anchor-grid,.dark-subgrid{grid-template-columns:1fr}}


/* Project-specific overrides and components */
.main-nav{
  background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;
  overflow:visible
}
.site-header .main-nav{margin-top:12px;border-radius:14px;overflow:hidden}
.main-nav .wrap{
  display:flex;gap:4px;row-gap:0;flex-wrap:nowrap;padding:10px 32px;
  justify-content:center;align-items:center;overflow:visible;
  max-width:none;width:100%;margin:0 auto
}
.main-nav a{
  text-decoration:none;color:var(--accent);padding:6px 8px;border-radius:999px;border:1px solid transparent;
  background:transparent;font-weight:600;font-size:13px;white-space:nowrap;letter-spacing:-0.01em
}
.main-nav a:hover{background:var(--soft)}
.main-nav a.active{background:var(--accent);color:#fff}
.main-nav a.nav-highlight{background:var(--accent2);color:#fff}
.main-nav a.nav-highlight:hover{background:#a72c25}

@media (max-width:1280px){
  .main-nav a{font-size:12px;padding:4px 6px;letter-spacing:-0.015em}
  .main-nav .wrap{gap:3px;padding:9px 24px}
}
@media (max-width:1100px){
  .main-nav a{font-size:11px;padding:3px 5px;letter-spacing:-0.02em}
  .main-nav .wrap{gap:2px;padding:8px 18px}
}
@media (max-width:980px){
  .main-nav{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .main-nav::-webkit-scrollbar{display:none}
  .main-nav .wrap{width:max-content;min-width:100%}
}

.problem-layout{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:stretch}
.problem-left{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.problem-layout > *{height:100%}
.problem-left .card{height:100%}
.problem-right{display:flex;flex-direction:column;height:100%}
.problem-right ul{margin-bottom:0}

.kpi{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.kpi strong{display:block;font-size:1.4rem;color:var(--accent)}
.small{font-size:14px;color:var(--muted)}
.badge{
  display:inline-block;background:var(--soft2);border:1px solid var(--line);color:var(--accent);
  padding:5px 10px;border-radius:999px;font-size:13px;font-weight:700;margin:0 6px 8px 0
}

.button{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:8px 14px;border-radius:999px;border:1px solid transparent;text-decoration:none;
  font-weight:600;font-size:14px;cursor:pointer
}
.button.primary{background:var(--accent);color:#fff}
.button.secondary{background:var(--soft2);color:var(--accent);border-color:var(--line)}

.doclist a,.sourcelist a,.toc a{color:var(--accent);text-decoration:none}
.doclist a:hover,.sourcelist a:hover,.toc a:hover{text-decoration:underline}

pre.law{
  white-space:pre-wrap;word-wrap:break-word;overflow:auto;margin:.8rem 0;padding:16px 18px;border-radius:14px;
  background:#0f1720;color:#e6eef8;border:1px solid #263446;font:14px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace
}

.download-grid .card{display:flex;flex-direction:column;gap:10px}
.download-grid .card .button{margin-top:auto}
.vote-grid .card{display:flex;flex-direction:column;gap:12px}
.social-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}
.social-btn{
  background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;
  font-weight:600;color:var(--accent);cursor:pointer
}
.social-btn[data-provider="facebook"]{border-color:#1877f2;color:#1877f2}
.social-btn[data-provider="instagram"]{border-color:#c13584;color:#c13584}
.social-btn[data-provider="telegram"]{border-color:#2aabee;color:#2aabee}
.social-btn[data-provider="whatsapp"]{border-color:#25d366;color:#25d366}
.social-btn[data-provider="github"]{border-color:#24292f;color:#24292f}
.social-btn.is-active{background:var(--soft);box-shadow:0 0 0 2px rgba(21,61,111,.08)}
.social-btn.is-authed{border-style:solid}
.social-btn.is-authed::after{content:"OK";margin-left:6px;font-size:12px;color:var(--ok)}
.social-btn.is-disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.vote-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.vote-status{color:var(--muted)}
.vote-stats{display:grid;gap:10px}
.vote-total{font-size:1.2rem;font-weight:700;color:var(--accent)}
.vote-breakdown{display:grid;gap:6px}
.vote-events{color:var(--muted)}
.vote-feed{display:grid;gap:8px;margin-top:10px;max-height:240px;overflow:auto;padding-right:6px}
.vote-event{
  display:flex;justify-content:space-between;gap:8px;align-items:center;
  background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13px
}
.vote-event span{color:var(--muted)}
.vote-event strong{color:var(--accent)}
.vote-event.empty{justify-content:flex-start;color:var(--muted);border-style:dashed}

.supporter-links{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.supporter-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.like-btn.is-liked{background:var(--ok);color:#fff;border-color:transparent}
.comment-form{display:grid;gap:10px;margin-top:8px}
.comment-form input,.comment-form textarea{
  width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);font:inherit;background:#fff
}
.comment-form button{align-self:flex-start}
.comment-feed{display:grid;gap:10px;margin-top:6px}
.comment-item{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.comment-meta{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}
.comment-meta strong{color:var(--accent)}
.submission-stack{display:grid;gap:20px;margin-top:26px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.form-field{display:grid;gap:6px}
.form-field.wide{grid-column:1 / -1}
.form-status{min-height:1.4em;color:var(--muted)}
.form-status.is-error{color:#9f2f2b}

.columns{columns:2;column-gap:28px}
.columns p,.columns li{break-inside:avoid}
.callout-title{font-weight:700;color:#102746;margin:0 0 .35rem}
.signatures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px}
.signbox{padding-top:36px;border-top:1px solid var(--line);min-height:90px}
address{font-style:normal;line-height:1.6}

@media (max-width:900px){
  .problem-layout{grid-template-columns:1fr}
  .problem-left{grid-template-columns:1fr}
}
@media print{.no-print{display:none!important}}



.support-hub{margin:16px 0}
.support-card{background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%);border:1px solid rgba(21,61,111,.18);box-shadow:0 8px 24px rgba(15,23,42,.06);position:relative;overflow:hidden}
.support-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#153d6f,#c1332b,#e28b19)}
.support-card h3{margin:.2rem 0 .55rem;font-size:1.15rem}
.support-card .support-card-eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent2);font-weight:700;margin-bottom:.4rem}
.support-card .support-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.support-card .supporter-links{margin-top:10px}
.support-card .badge{background:#fff;border-color:rgba(21,61,111,.2)}

/* Unified spacing, responsive tables and interaction polish */
section > :first-child,
article > :first-child,
.card > :first-child,
.vote-card > :first-child,
.support-card > :first-child{margin-top:0}

section > :last-child,
article > :last-child,
.card > :last-child,
.vote-card > :last-child,
.support-card > :last-child{margin-bottom:0}

.lead{
  font-size:1.04rem;
  line-height:1.72;
  color:#314155;
  max-width:72ch;
}

.hero .lead{max-width:78ch}

.table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin:.75rem 0 1rem;
  border-radius:14px
}
.table-wrap table{
  margin:0;
  min-width:42rem
}

.button:hover,
.button:focus-visible,
.btn:focus-visible,
.social-btn:hover,
.lang-link:focus-visible,
.main-nav a:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(21,61,111,.14)
}

.button:hover{filter:brightness(.97)}
.btn:focus-visible,
.social-btn:hover,
.lang-link:focus-visible,
.main-nav a:focus-visible{
  border-color:rgba(21,61,111,.24)
}

.vote-blog{
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border-color:#d6e0ee
}

.download-grid .card,
.vote-grid .card,
.support-card{
  height:100%
}

.support-card{
  display:flex;
  flex-direction:column;
  gap:10px
}
.support-card .support-actions{
  margin-top:auto
}
.support-card p{
  color:#314155
}

.site-footer .wrap{max-width:1120px}

@media (max-width:900px){
  .lead{font-size:1rem;line-height:1.66}
  .table-wrap{margin-left:-4px;margin-right:-4px}
  .table-wrap table{min-width:34rem}
  .form-grid{grid-template-columns:1fr}
}
