.public-site {
  background: #f4f0e6;
  color: #1c1a16;
  font-family: Inter, Arial, sans-serif;
}
.public-site * { box-sizing: border-box; }
.public-nav {
  position: sticky; top: 0; z-index: 10;
  min-height: 68px; padding: 12px 4vw;
  display: flex; align-items: center; justify-content: space-between; gap: 25px;
  background: #101c31; color: #f5e4b0;
  border-bottom: 1px solid #9f7a32;
  box-shadow: 0 5px 25px #0005;
}
.public-brand {
  color: #e4bf68; text-decoration: none; font: 700 20px Cinzel, Georgia, serif;
  letter-spacing: .04em; white-space: nowrap;
}
.public-brand span { display: block; font: 500 9px Inter, Arial, sans-serif; letter-spacing: .24em; color: #d7d0c0; margin-top: 2px; }
.public-nav nav { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; justify-content: flex-end; }
.public-nav nav a { color: #eee8d8; text-decoration: none; font-size: 12px; }
.public-nav nav a:hover { color: #e4bf68; }
.portal-link {
  border: 1px solid #b18a3e; padding: 9px 13px;
  color: #f0d58f !important; letter-spacing: .06em;
}
.hero { background: #071328; padding: 0; }
.hero img { width: 92%; height: auto; max-height: none; display: block; margin: 0 auto; object-fit: contain; object-position: center; }
.public-section { width: min(1120px, 90vw); margin: 0 auto; padding: 90px 0; }
.intro-section { text-align: center; }
.section-kicker { color: #9b742e; font-size: 11px; font-weight: 800; letter-spacing: .24em; margin-bottom: 13px; }
.public-section h1, .public-section h2 {
  font-family: Cinzel, Georgia, serif; font-weight: 600; line-height: 1.15;
}
.public-section h1 { font-size: clamp(34px, 5vw, 58px); margin: 0 auto 22px; max-width: 900px; }
.public-section h2 { font-size: clamp(28px, 4vw, 42px); margin: 0 0 28px; }
.public-section p { max-width: 780px; margin: 0 auto 18px; color: #5e594e; }
.lead { font-size: 19px !important; color: #302d27 !important; }
.court-image-wrap { width: 100%; background: #0c0d0d; padding: 0; }
.court-image-wrap img { display: block; width: 92%; height: auto; max-height: none; margin: 0 auto; object-fit: contain; object-position: center; }
.principles-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; margin-top: 38px; }
.principles-grid article {
  background: #fffdf8; border: 1px solid #d8cdb5; padding: 30px 24px;
  box-shadow: 0 12px 30px #2c25150b;
}
.principle-number { color: #b08437; font: 600 13px Cinzel, Georgia, serif; }
.principles-grid h3 { font: 600 24px Cinzel, Georgia, serif; margin: 12px 0; }
.principles-grid p { font-size: 14px; margin: 0; }
.dark-section {
  width: 100%; max-width: none; padding-left: 5vw; padding-right: 5vw;
  background: #111c30; color: #eee5cf;
}
.dark-section .section-kicker { color: #d2a957; }
.dark-section h2 { color: #f0d58f; text-align: center; }
.dark-section > .section-kicker { text-align: center; }
.process-grid { width: min(1120px, 90vw); margin: 40px auto 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.process-grid div { border-top: 1px solid #9c7938; padding-top: 18px; }
.process-grid span { color: #d6ac58; font: 600 13px Cinzel, Georgia, serif; }
.process-grid h3 { font: 600 21px Cinzel, Georgia, serif; margin: 10px 0; color: #fff6df; }
.process-grid p { color: #c7c0b1; font-size: 14px; margin: 0; }
.charter-section { display: grid; grid-template-columns: 1.2fr .8fr; gap: 60px; align-items: center; }
.charter-card {
  background: #121d31; color: #e8cf93; padding: 40px 30px; text-align: center;
  border: 1px solid #a27a32; box-shadow: 0 18px 45px #0002;
}
.charter-mark { font-size: 52px; margin-bottom: 15px; }
.charter-card strong, .charter-card span, .charter-card em { display: block; }
.charter-card strong { font: 600 17px Cinzel, Georgia, serif; }
.charter-card span { margin-top: 18px; font: 600 22px Cinzel, Georgia, serif; }
.charter-card em { margin-top: 10px; color: #d3c8ae; font-size: 11px; letter-spacing: .08em; }
.action-section { text-align: center; padding-bottom: 105px; }
.gold-button {
  display: inline-block; margin-top: 15px; padding: 13px 22px;
  background: #9c7530; color: white; text-decoration: none; font-weight: 700;
  border: 1px solid #d0a654;
}
.gold-button:hover { background: #7e5d25; }
.public-footer {
  background: #0c1526; color: #d8bf83; text-align: center; padding: 32px 20px;
  font-family: Cinzel, Georgia, serif; letter-spacing: .12em;
}
.public-footer div + div { margin-top: 7px; font: 10px Inter, Arial, sans-serif; color: #aaa293; letter-spacing: .16em; }
@media (max-width: 850px) {
  .public-nav { position: static; align-items: flex-start; flex-direction: column; }
  .public-nav nav { justify-content: flex-start; gap: 12px 17px; }
  .principles-grid, .process-grid { grid-template-columns: 1fr 1fr; }
  .charter-section { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .principles-grid, .process-grid { grid-template-columns: 1fr; }
  .public-section { padding: 60px 0; }
  .hero img, .court-image-wrap img { width: 100%; }
}

.button-row{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:24px}
.outline-button{display:inline-block;padding:12px 20px;border:1px solid #a27a32;color:#765a25;text-decoration:none;font-weight:700;background:transparent}
.outline-button:hover{background:#fffaf0}
.treaty-open-section{background:#efe8d7;border-top:1px solid #d8c9aa;border-bottom:1px solid #d8c9aa}
.treaty-open-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:center}
.treaty-stat-card{background:#111c30;color:#e7d09a;border:1px solid #a27a32;padding:38px;text-align:center;box-shadow:0 18px 45px #0002}
.treaty-stat-card strong{display:block;font:600 44px Cinzel,Georgia,serif}.treaty-stat-card span{display:block;font:600 16px Cinzel,Georgia,serif;margin-top:4px}.treaty-stat-card small{display:block;color:#c9c0ad;margin-top:7px}.treaty-stat-card hr{border:0;border-top:1px solid #6d5935;margin:25px 0}
.article-matters{padding-top:75px}.matter-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px}.matter-grid article{background:#fffdf8;border:1px solid #d8cdb5;padding:34px;box-shadow:0 12px 30px #2c25150b}.matter-grid span{font-size:10px;letter-spacing:.18em;color:#9b742e;font-weight:800}.matter-grid h3{font:600 24px Cinzel,Georgia,serif;margin:12px 0}.matter-grid p{font-size:14px;margin-bottom:20px}.matter-grid a{color:#856425;font-weight:700;text-decoration:none}
.legal-page{padding:0 0 80px}.legal-hero{background:#111c30;color:#eee5cf;padding:80px 5vw;text-align:center;border-bottom:1px solid #9f7a32}.legal-hero h1{font:600 clamp(34px,5vw,58px)/1.12 Cinzel,Georgia,serif;color:#f0d58f;max-width:1050px;margin:0 auto 20px}.legal-hero p{max-width:820px;margin:0 auto 10px;color:#cbc4b4}.legal-hero .section-kicker{color:#d2a957}.legal-hero.compact{padding:65px 5vw}.legal-layout,.exam-layout{width:min(1240px,92vw);margin:0 auto;display:grid;grid-template-columns:270px 1fr;gap:45px;padding-top:50px}.article-index{position:sticky;top:88px;align-self:start;max-height:calc(100vh - 110px);overflow:auto;background:#fffdf8;border:1px solid #d8cdb5;padding:15px}.article-index h3{font:600 18px Cinzel,Georgia,serif;margin:8px 10px 15px}.article-index a{display:block;padding:9px 10px;text-decoration:none;border-top:1px solid #eee8dc;font-size:12px;color:#4f4a41}.article-index a:hover{color:#8a6729;background:#f8f1e4}.article-index small{display:block;color:#898274;font-size:10px;margin-top:2px}.treaty-text,.exam-text{min-width:0}.legal-block{scroll-margin-top:90px;margin-bottom:45px;background:#fffdf8;border:1px solid #d8cdb5;padding:34px 38px;box-shadow:0 10px 30px #2c25150b}.legal-block h2{font:600 28px/1.2 Cinzel,Georgia,serif;margin:0 0 22px;color:#25231f}.legal-block p{margin:0 0 14px;color:#4f4a41;white-space:pre-line}.article-kicker{font-size:10px;letter-spacing:.18em;color:#9b742e;font-weight:800;margin-bottom:9px}.article-detail{display:inline-block;margin-top:12px;color:#856425;font-weight:700;text-decoration:none}.single-article{width:min(900px,92vw);margin:50px auto;line-height:1.75}.article-nav{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:30px;border-top:1px solid #e3ddd1;padding-top:20px}.article-nav a{color:#856425;font-weight:700;text-decoration:none}
.form-shell{width:min(900px,92vw);margin:50px auto}.ratify-form{margin:0}.form-section{background:#fffdf8;border:1px solid #d8cdb5;padding:32px;margin-bottom:18px;box-shadow:0 10px 30px #2c25150b}.form-section h2{font:600 25px Cinzel,Georgia,serif;margin:0 0 24px}.form-section label{display:block;margin:14px 0}.form-section input,.form-section textarea,.form-section select{width:100%;padding:12px;border:1px solid #d1c8b8;background:#fff;margin-top:6px}.form-section input[type=checkbox]{width:auto;margin:0 8px 0 0}.check{display:flex!important;align-items:flex-start;gap:4px;font-weight:500!important}.form-note{font-size:12px!important;color:#817b70!important}.confirmation{width:min(850px,92vw);margin:70px auto;text-align:center;background:#fffdf8;border:1px solid #d8cdb5;padding:60px 40px;box-shadow:0 18px 50px #2c25150b}.confirmation-mark{width:60px;height:60px;border:1px solid #a27a32;color:#a27a32;display:grid;place-items:center;border-radius:50%;margin:0 auto 20px;font-size:30px}.confirmation h1{font:600 36px Cinzel,Georgia,serif;margin:0 auto 20px}.confirmation p{max-width:700px;margin:12px auto;color:#5e594e}.register-card{width:min(1100px,92vw);margin:50px auto;background:#fffdf8;border:1px solid #d8cdb5}.register-head,.register-row{display:grid;grid-template-columns:1.5fr 1.1fr 1fr .8fr;gap:15px;padding:16px 20px;align-items:center}.register-head{background:#111c30;color:#f0d58f;font-size:10px;letter-spacing:.14em}.register-row{border-top:1px solid #eee8dc;color:#4f4a41}.register-row small{display:block;color:#898274;font-size:10px;margin-top:3px}.status-pill{font-size:9px;letter-spacing:.08em;border:1px solid #cdb983;padding:5px 7px;color:#806329}.register-empty{text-align:center;padding:50px;color:#77736a}.center-actions{text-align:center}.exam-section{scroll-margin-top:90px;margin-bottom:28px}.exam-section>h2{font:600 30px Cinzel,Georgia,serif;margin:0 0 20px}.exam-section>p{color:#5e594e}.question{background:#fffdf8;border:1px solid #d8cdb5;padding:25px 28px;margin:15px 0}.question h3{font:600 19px Cinzel,Georgia,serif;margin:0 0 15px}.question p{margin:0 0 10px;color:#4f4a41;white-space:pre-line}
@media(max-width:850px){.treaty-open-grid,.matter-grid{grid-template-columns:1fr}.legal-layout,.exam-layout{grid-template-columns:1fr}.article-index{position:static;max-height:none}.register-head,.register-row{grid-template-columns:1fr 1fr}.register-head strong:nth-child(n+3){display:none}.register-row>div:nth-child(3),.register-row>div:nth-child(4){font-size:11px}}
@media(max-width:520px){.legal-block{padding:25px 20px}.confirmation{padding:40px 20px}.register-head{display:none}.register-row{grid-template-columns:1fr}.treaty-stat-card{padding:30px}.button-row>*{width:100%;text-align:center}}


/* Language selector */
.language-control {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-right: 8px;
}
.language-control label {
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .85;
}
.language-control select {
  appearance: auto;
  border: 1px solid rgba(255,255,255,.28);
  background: rgba(0,0,0,.18);
  color: inherit;
  border-radius: 6px;
  padding: 7px 28px 7px 9px;
  font: inherit;
  cursor: pointer;
}
.language-control option {
  color: #111;
  background: #fff;
}
.google-translate-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
.goog-te-banner-frame, .goog-te-balloon-frame {
  display: none !important;
}
body { top: 0 !important; }
@media (max-width: 900px) {
  .language-control { margin: 8px 0; }
  .language-control select { max-width: 150px; }
}

.law-library-layout{width:min(1240px,92vw);margin:0 auto;display:grid;grid-template-columns:270px 1fr;gap:45px;padding-top:50px}.law-library-content{min-width:0}.law-library-section{scroll-margin-top:90px;margin-bottom:42px;background:#fffdf8;border:1px solid #d8cdb5;padding:34px 38px;box-shadow:0 10px 30px #2c25150b}.law-library-section h2{font:600 30px/1.2 Cinzel,Georgia,serif;margin:0 0 12px;color:#25231f}.library-description{color:#5e594e;margin:0 0 25px}.law-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.law-resource-card{border:1px solid #e0d8c9;background:#fff;padding:23px}.law-resource-card h3{font:600 20px Cinzel,Georgia,serif;margin:8px 0 10px;color:#292722}.law-resource-card p{font-size:13px;line-height:1.65;color:#5e594e;margin:0 0 18px}.law-resource-card a{color:#856425;font-weight:700;text-decoration:none;font-size:13px}.law-resource-card a:hover{text-decoration:underline}.resource-source{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#9b742e;font-weight:800}.law-library-notice{background:#efe8d7;border:1px solid #d3c2a1;padding:26px 30px;color:#4f4a41;margin-bottom:60px}.law-library-notice strong{display:block;font:600 19px Cinzel,Georgia,serif;color:#6f5422;margin-bottom:8px}.law-library-notice p{margin:0;font-size:13px;line-height:1.7}@media(max-width:850px){.law-library-layout{grid-template-columns:1fr}.law-resource-grid{grid-template-columns:1fr}.law-library-section{padding:28px 22px}.law-library-layout .article-index{position:static;max-height:none}}


/* Donation / inactive controls */
.disabled-link,.disabled-button{opacity:.58;cursor:not-allowed;pointer-events:none}.donation-nav{color:#d7c38f!important}.disabled-button{filter:grayscale(.15)}

/* Court service eligibility */
.service-layout{width:min(1180px,92vw);margin:0 auto;padding:50px 0 80px}.service-intro{margin-bottom:25px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-grid .legal-block{margin-bottom:0}.exclusion-block{margin-top:25px}.exclusion-block ol{padding-left:25px;color:#4f4a41;line-height:1.75}.exclusion-block li{margin-bottom:5px}.form-note{font-size:12px!important;color:#817b70!important}
@media(max-width:850px){.service-grid{grid-template-columns:1fr}}


/* Combined working-version additions */
.funding-card { max-width: 900px; margin: 0 auto; }
.application-form { display: grid; gap: 1rem; max-width: 900px; margin: 0 auto; }
.application-form label { display: grid; gap: .4rem; font-weight: 600; }
.application-form input, .application-form select, .application-form textarea { padding: .75rem; border: 1px solid #c9c9c9; border-radius: 6px; font: inherit; }
.application-form textarea { min-height: 150px; }
.application-form fieldset { border: 1px solid #ccc; padding: 1rem; }
.application-form fieldset label { display: inline-flex; margin-right: 1rem; }
.warrant-grid { max-width: 1100px; margin: 0 auto; display: grid; gap: 1.25rem; }
.warrant-card { display: grid; grid-template-columns: 220px 1fr; gap: 1.5rem; padding: 1.25rem; background: #fff; border: 1px solid #ddd; border-radius: 10px; }
.warrant-card img { width: 220px; max-height: 280px; object-fit: contain; border-radius: 6px; background: #f2f2f2; }
@media (max-width: 700px) { .warrant-card { grid-template-columns: 1fr; } .warrant-card img { width: 100%; max-height: 360px; } }

/* Improved public header readability */
.public-nav {
  min-height: 82px;
  padding: 16px 4vw;
  align-items: center;
}

.public-nav nav {
  align-items: center;
  gap: 18px;
  row-gap: 10px;
}

.public-nav nav a {
  font-size: 13px;
  line-height: 1.4;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
}

.language-control {
  align-items: center;
  margin-right: 4px;
}

.language-control label {
  line-height: 1.4;
}

.language-control select {
  min-height: 34px;
}

.portal-link {
  min-height: 36px !important;
  align-items: center;
}

@media (max-width: 850px) {
  .public-nav {
    min-height: 0;
    padding: 16px 4vw;
    align-items: flex-start;
  }

  .public-nav nav {
    align-items: flex-start;
  }
}
