/* Shared Banida visual system. Loaded after page-specific styles. */
.banida-site {
  --ink:#202820; --ink-soft:#5c635b; --navy:#26392f; --navy-deep:#192c24;
  --cream:#f8f7f2; --paper:#fff; --sand:#efeee7; --line:#d9dcd2;
  --yellow:#e4edba; --yellow-soft:#edf0de; --coral:#526848;
  --coral-soft:#e7ebdf; --mint:#d7e8b4; --mint-soft:#e9eee3; --blue-soft:#e5eae3;
  --shadow:0 16px 36px rgb(32 40 32 / 7%); --radius-lg:10px; --radius-md:8px; --radius-sm:5px;
  --container:1280px;
  font-family:"Segoe UI",Arial,sans-serif;
}
.banida-site .container { width:min(calc(100% - 96px),var(--container)); }
.banida-site .site-header,
.banida-site .site-header.is-scrolled {
  height:82px; background:#26392f; color:#f8f7f2;
  border-bottom:1px solid #425346; box-shadow:0 4px 18px rgb(25 44 36 / 8%);
  backdrop-filter:none;
}
.banida-site .site-header .brand-name { color:#f8f7f2; font-weight:700; font-size:18px; letter-spacing:.13em; }
.banida-site :is(.site-header,.site-footer) .brand-mark {
  background:#d7e8b4; color:#26392f; border-radius:5px; box-shadow:none;
}
.banida-site :is(.site-header,.site-footer) .brand-mark::after { display:none; }
.banida-site .site-nav { gap:22px; }
.banida-site .site-nav > a:not(.nav-cta) { color:#edf0e8; font-size:13px; font-weight:500; }
.banida-site .site-nav > a:not(.nav-cta)::after { background:#d7e8b4; }
.banida-site .site-nav > a:not(.nav-cta):hover { color:#d7e8b4; }
.banida-site .site-nav .nav-cta { background:#d7e8b4; color:#202820; border:1px solid #d7e8b4; border-radius:5px; font-size:13px; font-weight:600; }
.banida-site .site-nav .nav-cta:hover { background:#e4edba; color:#202820; transform:none; }
.banida-site .menu-toggle { color:#f8f7f2; border-color:#70816e; background:transparent; min-height:44px; border-radius:5px; }
.banida-site .menu-label { display:inline; }
.banida-site .menu-icon i { background:#f8f7f2; }
.banida-site .site-header :focus-visible { outline-color:#d7e8b4; }
.banida-site .site-footer { background:#192c24; color:#f8f7f2; }
.banida-site .footer-column h2 { color:#f8f7f2; font-weight:600; }
.banida-site :is(.footer-intro p,.footer-column>a,.footer-column address,.footer-bottom) { color:#ced7c9; }
.banida-site .footer-bottom { border-color:#405247; }
.banida-site .footer-column>a:hover { color:#e4edba; }
.banida-site .support-launch { background:#26392f; color:#f8f7f2; box-shadow:0 5px 18px rgb(25 44 36 / 15%); }
.banida-site .support-launch-icon { background:#d7e8b4; color:#26392f; }
.banida-site .button { border-radius:5px; font-weight:600; }
.banida-site .button-primary { background:#26392f; color:#fff; border-color:#26392f; box-shadow:none; }
.banida-site .button-primary:hover { background:#192c24; border-color:#192c24; box-shadow:0 6px 16px rgb(32 40 32 / 12%); }
.banida-site .button-light { background:#d7e8b4; color:#202820; border-color:#d7e8b4; }
.banida-site .button-quiet { color:#26392f; border-color:#b8c3b1; }
.banida-site :focus-visible { outline-color:#657c4f; }
.banida-site:not(.home-refresh) main { overflow-wrap:break-word; }
.banida-site:not(.home-refresh) main h1 {
  font-size:clamp(44px,4.8vw,68px); line-height:1.06; letter-spacing:-.052em; font-weight:550; text-wrap:balance;
}
.banida-site:not(.home-refresh) main h2 { font-weight:550; letter-spacing:-.04em; line-height:1.14; }
.banida-site:not(.home-refresh) main h3 { font-weight:600; letter-spacing:-.025em; line-height:1.25; }
.banida-site:not(.home-refresh) .eyebrow { color:#526848; font-weight:650; }
.banida-site:not(.home-refresh) .section { padding-block:88px; }
.banida-site :is(.service-page-hero,.about-page-hero,.templates-hero,.checker-hero,.contract-hero,.blog-hero,.article-hero,.legal-hero) {
  background:#f8f7f2; border-bottom:1px solid #d9dcd2;
}
.banida-site :is(.service-hero-shape,.about-page-orb,.templates-orb,.checker-glow,.contract-orb,.blog-hero-orb) { display:none; }
.banida-site :is(.service-page-hero,.about-page-hero,.templates-hero,.checker-hero,.contract-hero,.blog-hero,.article-hero)::before,
.banida-site :is(.service-page-hero,.about-page-hero,.templates-hero,.checker-hero,.contract-hero,.blog-hero,.article-hero)::after { display:none; }
.banida-site :is(.service-page-hero,.about-page-hero,.checker-hero,.article-hero) { padding-block:56px 64px; }
.banida-site :is(.service-page-hero-grid,.about-page-hero-grid,.checker-hero-grid,.article-hero-grid,.contract-hero-grid,.templates-hero-grid) {
  grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px;
}
.banida-site :is(.service-page-hero-copy,.about-page-copy,.checker-copy,.article-head-copy,.contract-hero-copy,.templates-hero-copy) { min-width:0; }
.banida-site :is(.service-page-hero,.about-page-hero,.checker-hero,.contract-hero,.templates-hero) h1 span { color:#526848; }
.banida-site :is(.service-hero-lead,.about-page-lead,.checker-lead,.article-lead,.contract-lead) { font-size:17px; line-height:1.75; }
.banida-site .breadcrumbs { color:#5c635b; font-size:12px; margin-bottom:26px; }
.banida-site .service-page-visual::before,
.banida-site .article-cover::before,
.banida-site .article-cover::after,
.banida-site .about-portrait::before,
.banida-site .checker-form-card::before { display:none; }
.banida-site .service-page-visual { padding:16px; margin:0; background:#e5e9dd; border:1px solid #d9dcd2; border-radius:8px; transform:none; }
.banida-site .service-page-visual img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border:0; border-radius:4px; box-shadow:none; transform:none; }
.banida-site .service-page-visual figcaption { position:static; margin:0; padding:18px 4px 2px; background:transparent; border:0; box-shadow:none; color:#374435; }
.banida-site .service-proof-row { margin-top:48px; }
.banida-site :is(.benefit-card,.scope-card,.workflow-example-card,.related-card,.about-value-card,.about-capability-card,.about-fit-shell,.about-fit-shell li,.template-card,.blog-card,.blog-search-panel,.article-section,.article-summary,.article-final-cta,.article-checklist,.article-next-links,.legal-card,.checker-form-card,.checker-scope-grid article,.checker-method aside,.contract-steps li,.contract-guide-grid a,.contract-legal-note) {
  border-radius:8px; box-shadow:none;
}
.banida-site :is(.benefit-card,.about-value-card) { background:#e9eee3; border:1px solid #d9dcd2; min-height:290px; }
.banida-site :is(.benefit-card,.about-value-card):nth-child(2) { background:#efeee7; }
.banida-site :is(.benefit-card,.about-value-card):nth-child(3) { background:#e5e9dd; }
.banida-site :is(.scope-section,.related-services,.about-capabilities,.templates-gallery,.blog-main,.article-body-shell,.related-articles,.contract-guides,.checker-results,.checker-loading) { background:#efeee7; }
.banida-site :is(.service-intro,.service-process,.about-story,.about-fit,.contract-main,.checker-scope) { background:#f8f7f2; }
.banida-site :is(.service-examples,.service-final-cta,.about-method,.templates-included,.templates-cta,.blog-cta,.article-faq,.article-contact,.checker-method,.contract-contents) { background:#26392f; color:#f8f7f2; }
.banida-site :is(.service-examples,.service-final-cta,.about-method,.templates-included,.templates-cta,.blog-cta,.article-faq,.article-contact,.checker-method,.contract-contents) :is(h2,h3) { color:#f8f7f2; }
.banida-site :is(.service-examples,.service-final-cta,.about-method,.templates-included,.templates-cta,.blog-cta,.article-faq,.article-contact,.checker-method,.contract-contents) .eyebrow { color:#d7e8b4; }
.banida-site :is(.service-final-cta,.templates-cta,.blog-cta,.article-contact,.contract-contents) .button-primary { background:#d7e8b4; color:#202820; border-color:#d7e8b4; }
.banida-site :is(.service-final-cta,.templates-cta,.blog-cta,.article-contact,.contract-contents) .button-primary:hover { background:#e4edba; border-color:#e4edba; }
.banida-site .workflow-example-card { min-height:0; background:#30463a; border-color:#526557; }
.banida-site .workflow-result { background:#3c5142; border-color:#657761; color:#e4edba; }
.banida-site .scope-card { border:1px solid #d9dcd2; }
.banida-site .related-card { border:1px solid #d9dcd2; }
.banida-site .related-card:hover { box-shadow:0 8px 20px rgb(32 40 32 / 7%); border-color:#829477; }
.banida-site .about-portrait { max-width:470px; margin-inline:auto; padding-top:20px; }
.banida-site .about-portrait-backdrop { inset:20px 0 20px; border-radius:8px; background:#dde5d1; transform:none; }
.banida-site .about-portrait figcaption { border-radius:5px; box-shadow:none; }
.banida-site .about-fit-shell { background:#e9eee3; }
.banida-site .template-card { border-color:#d9dcd2; }
.banida-site .template-card-copy { background:#f8f7f2; }
.banida-site .template-card-copy h3 { color:#202820; }
.banida-site .templates-hero-stack { min-height:520px; }
.banida-site .blog-search-panel { background:#e9eee3; border-color:#d9dcd2; }
.banida-site :is(.blog-search-field input,.blog-search-controls button,.blog-search-reset,.checker-url-field,.checker-url-field button) { border-radius:5px; }
.banida-site .blog-card { border-color:#d9dcd2; background:#fff; }
.banida-site .blog-card:hover { transform:translateY(-3px); box-shadow:0 12px 30px rgb(32 40 32 / 8%); }
.banida-site .blog-card h2 { font-size:26px; }
.banida-site .blog-hero h1 span { color:#526848; }
.banida-site .blog-meta span { background:#e9eee3; color:#43513e; }
.banida-site .blog-search-controls button:hover { background:#3a5040; }
.banida-site .article-cover-frame { padding:8px; background:#e5e9dd; border-color:#d9dcd2; border-radius:8px; box-shadow:none; transform:none; }
.banida-site.article-page main h1 { font-size:clamp(36px,3.6vw,50px); line-height:1.13; }
.banida-site .article-cover img { height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:4px; }
.banida-site .article-cover figcaption { margin:12px 0 0; width:100%; background:transparent; box-shadow:none; border:0; }
.banida-site .article-author-mark { background:#d7e8b4; color:#26392f; transform:none; border-radius:5px; }
.banida-site .article-summary { background:#e9eee3; border-color:#d9dcd2; }
.banida-site .article-section { border-color:#d9dcd2; }
.banida-site .article-section-head { background:#f4f5ef; border-color:#d9dcd2; }
.banida-site .article-section:nth-of-type(n) .article-section-head > span { background:#d7e8b4; color:#26392f; transform:none; border-radius:5px; }
.banida-site .article-content { font-size:17px; line-height:1.8; }
.banida-site .article-checklist { background:#e9eee3; border-color:#d9dcd2; }
.banida-site .article-next-links { background:#f4f5ef; border-color:#d9dcd2; }
.banida-site .article-final-cta { background:#e5e9dd; border-color:#c8d2bc; }
.banida-site .article-final-cta :is(h2,p) { color:#26392f; }
.banida-site .legal-page { background:#f8f7f2; }
.banida-site .legal-hero { padding-block:64px 48px; }
.banida-site .legal-layout { gap:64px; }
.banida-site .legal-content { max-width:820px; }
.banida-site .legal-content :is(p,li,address) { color:#4d594b; line-height:1.85; }
.banida-site .legal-card { background:#e9eee3; border:1px solid #d9dcd2; }
.banida-site .legal-aside { border-radius:8px; box-shadow:none; border-color:#d9dcd2; }
.banida-site .checker-form-card { border:1px solid #cbd4c1; background:#fff; padding:30px; }
.banida-site .checker-privacy { background:#f4f5ef; border-color:#d9dcd2; }
.banida-site .checker-scope-grid article { border:1px solid #d9dcd2; }
.banida-site .checker-cta { background:#e9eee3; }
.banida-site .contract-hero-grid { min-height:580px; }
.banida-site .contract-document-stage { min-height:530px; }
.banida-site .contract-sheet { box-shadow:0 20px 45px rgb(32 40 32 / 12%); }
.banida-site .contract-sheet-back { background:#dde5d1; }
.banida-site.contract-template-page .contract-sheet-front h2 { font-size:32px; line-height:1.15; letter-spacing:-.05em; }
.banida-site .contract-legal-note { background:#f2eee2; border-color:#d9d0b7; }
.banida-site .contract-legal-note > span { background:#705c31; color:#fff; }
.banida-site .reveal { opacity:1; transform:none; }
@media (max-width:1150px) {
  .banida-site .container { width:calc(100% - 56px); }
  .banida-site .site-nav { gap:14px; }
  .banida-site .site-nav > a:not(.nav-cta) { font-size:12px; }
  .banida-site .site-nav .nav-cta { font-size:12px; padding-inline:12px; }
  .banida-site :is(.service-page-hero-grid,.about-page-hero-grid,.checker-hero-grid,.article-hero-grid,.contract-hero-grid,.templates-hero-grid) { gap:36px; }
}
@media (max-width:1000px) and (min-width:901px) {
  .banida-site .site-nav { gap:10px; }
  .banida-site .site-header .brand-name { font-size:15px; }
  .banida-site .site-nav .nav-cta { padding-inline:9px; }
}
@media (max-width:900px) {
  .banida-site .site-header,.banida-site .site-header.is-scrolled { height:72px; }
  .banida-site .site-nav { top:72px; background:#26392f; border:1px solid #526557; border-radius:0 0 8px 8px; padding:20px; gap:4px; max-height:calc(100dvh - 88px); overflow-y:auto; }
  .banida-site .site-nav > a:not(.nav-cta) { padding:12px 8px; font-size:15px; }
  .banida-site .site-nav .nav-cta { padding:13px 16px; margin-top:12px; font-size:14px; }
  .banida-site :is(.service-page-hero-grid,.about-page-hero-grid,.checker-hero-grid,.article-hero-grid,.contract-hero-grid,.templates-hero-grid) { grid-template-columns:minmax(0,1fr); gap:40px; }
  .banida-site:not(.home-refresh) main h1 { font-size:clamp(40px,7.4vw,62px); }
  .banida-site .service-page-visual { width:100%; max-width:680px; margin-inline:auto; }
  .banida-site .article-cover { max-width:680px; }
  .banida-site .contract-document-stage { width:min(100%,500px); margin-inline:auto; }
  .banida-site .templates-hero-stack { width:min(100%,680px); }
  .banida-site .legal-layout { gap:36px; }
}
@media (max-width:620px) {
  .banida-site .container { width:calc(100% - 36px); }
  .banida-site:not(.home-refresh) main h1 { font-size:clamp(36px,10vw,46px); line-height:1.1; letter-spacing:-.045em; }
  .banida-site.article-page main h1 { font-size:34px; line-height:1.15; }
  .banida-site.contract-template-page .contract-sheet-front h2 { font-size:25px; }
  .banida-site:not(.home-refresh) .section { padding-block:60px; }
  .banida-site :is(.service-page-hero,.about-page-hero,.checker-hero,.article-hero,.legal-hero) { padding-block:32px 44px; }
  .banida-site .site-nav { left:18px; right:18px; }
  .banida-site .breadcrumbs { margin-bottom:22px; font-size:11px; }
  .banida-site .service-page-visual { padding:10px; }
  .banida-site .service-page-visual img { aspect-ratio:4/3; }
  .banida-site .service-proof-row { margin-top:32px; }
  .banida-site :is(.benefit-card,.about-value-card) { min-height:0; }
  .banida-site .checker-form-card { padding:22px 18px; }
  .banida-site .blog-card h2 { font-size:24px; }
  .banida-site .article-content { font-size:16px; }
  .banida-site .article-cover figcaption { flex-wrap:wrap; padding-inline:0; }
  .banida-site .templates-hero-stack { min-height:430px; }
  .banida-site .contract-document-stage { min-height:470px; }
  .banida-site .contract-sheet-front { padding:25px; }
  .banida-site .contract-sheet-kicker { margin-top:40px; }
  .banida-site .legal-layout { gap:30px; }
}
@media (prefers-reduced-motion:reduce) {
  .banida-site *, .banida-site *::before, .banida-site *::after { scroll-behavior:auto; transition:none; animation:none; }
}

/* Banida Shops: linked signet and Manrope wordmark. */
.banida-site .brand .brand-logo { width:218px; height:auto; display:block; max-width:none; }
.banida-site .brand-footer .brand-logo { width:244px; }
.banida-site .site-header .brand { min-height:48px; }
@media (max-width:1000px) and (min-width:901px) {
  .banida-site .site-header .brand-logo { width:180px; }
}
@media (max-width:620px) {
  .banida-site .site-header .brand-logo { width:174px; }
  .banida-site .brand-footer .brand-logo { width:206px; }
}
