/*!
Theme Name: Kadence
Theme URI: https://www.liquidweb.com/software/kadence/
Author: Kadence WP
Author URI: https://www.liquidweb.com/
Description: Kadence Theme is a lightweight yet full featured WordPress theme for creating beautiful fast loading and accessible websites, easier than ever. It features an easy to use drag and drop header and footer builder to build any type of header in minutes. It features a full library of gorgeous starter templates that are easy to modify with our intelligent global font and color controls. With extensive integration with the most popular 3rd party plugins, you can quickly build impressive ecommerce websites, course websites, business websites, and more.
Version: 1.5.2
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence
Requires at least: 6.3
Tested up to: 6.9.1
Tags: translation-ready, accessibility-ready, two-columns, right-sidebar, left-sidebar, footer-widgets, blog, custom-logo, custom-background, custom-menu, rtl-language-support, editor-style, threaded-comments, custom-colors, featured-images, wide-blocks, full-width-template, theme-options, e-commerce
Requires PHP: 7.4

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share
what you've learned with others.
*/

/*
 * Semper Honor Web v2 — Monolito Institucional
 * Visual layer for the staging theme draft.
 */

:root {
  --sh-ink: #070908;
  --sh-black: #0b0d0c;
  --sh-graphite: #131615;
  --sh-panel: #181b1a;
  --sh-ivory: #f2f2ee;
  --sh-muted: #aeb1ad;
  --sh-line-dark: rgba(255, 255, 255, 0.13);
  --sh-line-light: rgba(8, 10, 9, 0.18);
  --sh-gold: #d8aa2d;
  --sh-blue: #244f85;
  --sh-red: #8f2029;
  --sh-ease: cubic-bezier(0.2, 0.75, 0.25, 1);
}

html { scroll-behavior: smooth; }

body:not(.wp-admin) {
  background: var(--sh-ink);
  color: var(--sh-ivory);
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

body:not(.wp-admin) ::selection {
  color: var(--sh-ink);
  background: var(--sh-gold);
}

body:not(.wp-admin) a,
body:not(.wp-admin) button {
  transition: color 180ms ease, background-color 180ms ease,
    border-color 180ms ease, transform 180ms var(--sh-ease);
}

body:not(.wp-admin) a:focus-visible,
body:not(.wp-admin) button:focus-visible {
  outline: 2px solid var(--sh-gold) !important;
  outline-offset: 4px;
}

/* Persistent editorial header */
body:not(.wp-admin) #masthead.site-header,
body:not(.wp-admin) #mobile-header.site-mobile-header-wrap {
  position: sticky !important;
  top: 0;
  z-index: 1000;
  background: rgba(6, 8, 7, 0.92) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.11);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
  backdrop-filter: blur(18px) saturate(135%);
}

body.admin-bar .site-header,
body.admin-bar .site-mobile-header-wrap { top: 32px; }

body:not(.wp-admin) .site-main-header-wrap,
body:not(.wp-admin) .site-header-row-container-inner,
body:not(.wp-admin) .site-mobile-header-wrap .site-main-header-wrap {
  background: transparent !important;
}

body:not(.wp-admin) .site-main-header-inner-wrap { min-height: 78px; }

body:not(.wp-admin) .site-branding .custom-logo {
  width: 58px;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12),
    0 10px 28px rgba(0, 0, 0, 0.42);
}

body:not(.wp-admin) .site-branding .brand:hover .custom-logo {
  transform: translateY(-1px) scale(1.025);
  box-shadow: 0 0 0 1px rgba(216, 170, 45, 0.42),
    0 14px 36px rgba(0, 0, 0, 0.52);
}

body:not(.wp-admin) .site-branding .site-title { letter-spacing: -0.025em; }

body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li > a {
  position: relative;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li > a::after {
  content: "";
  position: absolute;
  left: 1.05em;
  right: 1.05em;
  bottom: 12px;
  height: 1px;
  background: var(--sh-gold);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: opacity 180ms ease, transform 220ms var(--sh-ease);
}

body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li:hover > a::after,
body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li.current-menu-item > a::after,
body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a::after {
  opacity: 1;
  transform: scaleX(1);
}

body:not(.wp-admin) .main-navigation .primary-menu-container > ul > li:last-child > a {
  min-height: 38px;
  margin-left: 0.55rem;
  padding: 0.55rem 0.9rem;
  border: 1px solid rgba(255, 255, 255, 0.44);
}

body:not(.wp-admin) .main-navigation .sub-menu {
  background: rgba(12, 14, 13, 0.98);
  border: 1px solid var(--sh-line-dark);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.46);
}

/* Shared editorial system */
body:not(.wp-admin) .entry-content h1,
body:not(.wp-admin) .entry-content h2,
body:not(.wp-admin) .entry-content h3 {
  text-wrap: balance;
  letter-spacing: -0.025em;
}

body:not(.wp-admin) .entry-content h2 {
  font-size: clamp(2.35rem, 4.25vw, 4.9rem);
  line-height: 1.03;
}

body:not(.wp-admin) .entry-content h3 { line-height: 1.12; }

body:not(.wp-admin) .entry-content p,
body:not(.wp-admin) .entry-content li { line-height: 1.72; }

body:not(.wp-admin) .entry-content > .wp-block-kadence-rowlayout {
  position: relative;
  isolation: isolate;
}

body:not(.wp-admin) .entry-content > .wp-block-kadence-rowlayout > .kt-row-column-wrap {
  padding-left: clamp(1.4rem, 4vw, 4.5rem);
  padding-right: clamp(1.4rem, 4vw, 4.5rem);
}

body:not(.wp-admin) .entry-content .wp-block-kadence-rowlayout
  .kt-inside-inner-col > p:first-child {
  font-size: 0.73rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

body:not(.wp-admin) .wp-element-button,
body:not(.wp-admin) .kb-button {
  border-radius: 0 !important;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.075em;
  line-height: 1.2;
  text-transform: uppercase;
  box-shadow: none;
}

body:not(.wp-admin) .wp-element-button:hover,
body:not(.wp-admin) .kb-button:hover { transform: translateY(-2px); }

/* Home hero: symbolic authority without personality cult */
body.home .kb-row-layout-id10_0ba1dc-f5 {
  min-height: calc(100svh - 78px);
  overflow: hidden;
  background:
    radial-gradient(circle at 79% 46%, rgba(255, 255, 255, 0.12), transparent 31%),
    repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px),
      rgba(255, 255, 255, 0.022) calc(25% - 1px) 25%),
    linear-gradient(90deg, #131615 0%, #101312 58%, #151817 100%) !important;
}

body.home .kb-row-layout-id10_0ba1dc-f5 > .kt-row-column-wrap {
  min-height: calc(100svh - 78px);
  align-items: center;
  padding-top: clamp(5rem, 10vh, 8rem);
  padding-bottom: clamp(4rem, 8vh, 7rem);
}

body.home .kb-row-layout-id10_0ba1dc-f5 h1 {
  max-width: 890px;
  margin: 1.25rem 0 1.45rem;
  color: var(--sh-ivory) !important;
  font-size: clamp(3.25rem, 6.15vw, 6.65rem) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.045em;
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.35);
}

body.home .kb-row-layout-id10_0ba1dc-f5 h1 + p {
  max-width: 720px;
  color: #d8dad6 !important;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

body.home .kb-row-layout-id10_0ba1dc-f5
  .kt-inside-inner-col > p:first-child {
  color: #e4e5e1 !important;
}

body.home .kb-row-layout-id10_0ba1dc-f5
  .wp-block-button:not(.is-style-outline) .wp-element-button {
  color: var(--sh-ink) !important;
  background: var(--sh-ivory) !important;
}

body.home .kb-row-layout-id10_0ba1dc-f5
  .wp-block-button.is-style-outline .wp-element-button {
  color: var(--sh-ivory) !important;
  border-color: rgba(242, 242, 238, 0.72) !important;
  background: transparent !important;
}

body.home .kb-row-layout-id10_0ba1dc-f5 .wp-block-buttons {
  gap: 0.8rem;
  margin-top: 2rem;
}

body.home .kb-row-layout-id10_0ba1dc-f5 .wp-element-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  padding: 0.9rem 1.35rem;
}

body.home .kb-row-layout-id10_0ba1dc-f5 figure {
  position: relative;
  isolation: isolate;
}

body.home .kb-row-layout-id10_0ba1dc-f5 figure::before {
  content: "";
  position: absolute;
  inset: 5%;
  z-index: -1;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  filter: blur(40px);
}

body.home .kb-row-layout-id10_0ba1dc-f5 img {
  width: min(37vw, 560px);
  opacity: 0.96;
  filter: brightness(1.32) contrast(1.1) saturate(0.82);
  transition: transform 700ms var(--sh-ease), filter 300ms ease;
}

body.home .kb-row-layout-id10_0ba1dc-f5:hover img {
  filter: brightness(1.4) contrast(1.12) saturate(0.86);
  transform: translateY(-5px);
}

/* Opening thesis */
body.home .kb-row-layout-id10_c6d8c8-6f {
  background:
    linear-gradient(90deg, rgba(8, 10, 9, 0.055) 0 1px,
      transparent 1px) 0 0 / 25% 100%,
    var(--sh-ivory) !important;
}

body.home .kb-row-layout-id10_c6d8c8-6f::before {
  content: "";
  position: absolute;
  left: clamp(1.4rem, 4vw, 4.5rem);
  top: 0;
  width: 7rem;
  height: 1px;
  background: var(--sh-ink);
}

body.home .kb-row-layout-id10_c6d8c8-6f h2 { max-width: 1120px; }

/* Principles */
body.home .kb-row-layout-id10_290726-59 {
  background: var(--sh-graphite) !important;
}

body.home .kb-row-layout-id10_290726-59 .wp-block-kadence-rowlayout
  > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
  min-height: 220px;
  padding: clamp(1.4rem, 2.4vw, 2.25rem);
  background: rgba(255, 255, 255, 0.018);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  transition: background-color 220ms ease, border-color 220ms ease,
    transform 220ms var(--sh-ease);
}

body.home .kb-row-layout-id10_290726-59 .wp-block-kadence-rowlayout
  > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col:hover {
  background: rgba(255, 255, 255, 0.042);
  border-top-color: var(--sh-gold);
  transform: translateY(-3px);
}

body.home .kb-row-layout-id10_290726-59 .wp-block-kadence-rowlayout h3 {
  font-size: clamp(1.35rem, 2.05vw, 2rem);
}

body.home .kb-row-layout-id10_290726-59 .wp-block-kadence-rowlayout p:first-child {
  color: var(--sh-gold);
}

/* Foundational corpus */
body.home .kb-row-layout-id10_815402-ae { background: var(--sh-ivory) !important; }

body.home .kb-row-layout-id10_815402-ae .wp-block-kadence-rowlayout
  > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
  min-height: 190px;
  padding: clamp(1.5rem, 2.6vw, 2.45rem);
  border: 1px solid var(--sh-line-light);
  background: rgba(255, 255, 255, 0.16);
  transition: box-shadow 220ms var(--sh-ease), transform 220ms var(--sh-ease),
    background-color 220ms ease;
}

body.home .kb-row-layout-id10_815402-ae .wp-block-kadence-rowlayout
  > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col:hover {
  background: rgba(255, 255, 255, 0.42);
  box-shadow: inset 4px 0 0 var(--sh-ink);
  transform: translateX(3px);
}

/* Ancla Sur and post-3E */
body.home .kb-row-layout-id10_25ec1f-61 {
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 25%, rgba(216, 170, 45, 0.12), transparent 28%),
    linear-gradient(118deg, #141716 0%, #101211 100%) !important;
}

body.home .kb-row-layout-id10_25ec1f-61::after {
  content: "SUR";
  position: absolute;
  right: -0.04em;
  bottom: -0.26em;
  z-index: -1;
  color: rgba(255, 255, 255, 0.025);
  font-family: var(--global-heading-font-family, serif);
  font-size: clamp(10rem, 30vw, 31rem);
  font-weight: 800;
  line-height: 1;
}

/* Remove the isolated tricolor separator across every public page. */
body:not(.wp-admin) .kb-row-layout-wrap[class*="-flag"],
body.home .kb-row-layout-id10_0f2ece-b6 {
  display: none !important;
}

body.home .kb-row-layout-idhome-post3e {
  background:
    radial-gradient(circle at 15% 25%, rgba(36, 79, 133, 0.12), transparent 30%),
    var(--sh-black) !important;
}

body.home .kb-row-layout-idhome-post3e .wp-block-kadence-column:last-child
  > .kt-inside-inner-col {
  padding: clamp(1.5rem, 3vw, 2.6rem);
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--sh-line-dark);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.24);
}

/* Signature constitutional section */
body.home .kb-row-layout-idhome-bridge {
  overflow: hidden;
  color: var(--sh-ivory);
  background:
    linear-gradient(90deg, rgba(216, 170, 45, 0.055) 0 1px,
      transparent 1px) 0 0 / 25% 100%,
    radial-gradient(circle at 88% 20%, rgba(143, 32, 41, 0.14), transparent 30%),
    #0e1110 !important;
  border-top: 1px solid rgba(216, 170, 45, 0.45);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

body.home .kb-row-layout-idhome-bridge::before {
  content: "";
  position: absolute;
  top: clamp(4rem, 8vw, 7rem);
  bottom: clamp(4rem, 8vw, 7rem);
  left: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--sh-gold) 0 33.333%,
    var(--sh-blue) 33.333% 66.666%, var(--sh-red) 66.666% 100%);
}

body.home .kb-row-layout-idhome-bridge h2,
body.home .kb-row-layout-idhome-bridge h3,
body.home .kb-row-layout-idhome-bridge p,
body.home .kb-row-layout-idhome-bridge li {
  color: var(--sh-ivory) !important;
}

body.home .kb-row-layout-idhome-bridge
  .kadence-columnhome-bridgec1 > .kt-inside-inner-col > p:first-child {
  color: var(--sh-gold) !important;
}

body.home .kb-row-layout-idhome-bridge
  .kadence-columnhome-bridgec2 > .kt-inside-inner-col {
  padding: clamp(1.5rem, 3vw, 2.8rem);
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid var(--sh-line-dark);
}

body.home .kb-row-layout-idhome-bridge .kb-button {
  color: var(--sh-ink) !important;
  background: var(--sh-ivory) !important;
  border-color: var(--sh-ivory) !important;
}

body.home .kb-row-layout-idhome-bridge .kb-button:hover {
  color: var(--sh-ivory) !important;
  background: transparent !important;
}

/* Participation and credibility */
body.home .kb-row-layout-idhome-join-head,
body.home .kb-row-layout-idhome-join,
body.home .kb-row-layout-idhome-join-cta {
  background: #111413 !important;
}

body.home .kb-row-layout-idhome-join .wp-block-kadence-column
  > .kt-inside-inner-col {
  min-height: 185px;
  padding: clamp(1.4rem, 2.5vw, 2.35rem);
  background: rgba(255, 255, 255, 0.028);
  border: 1px solid rgba(255, 255, 255, 0.075);
}

body.home .kb-row-layout-idhome-join .wp-block-kadence-column
  > .kt-inside-inner-col:hover {
  border-color: rgba(216, 170, 45, 0.48);
  transform: translateY(-3px);
}

body.home .kb-row-layout-idhome-trust { background: var(--sh-ivory) !important; }

body.home .kb-row-layout-idhome-trust .wp-block-kadence-column
  > .kt-inside-inner-col {
  padding: clamp(1.4rem, 2.8vw, 2.6rem);
  border-top: 1px solid var(--sh-line-light);
}

body.home .kb-row-layout-idhome-final {
  background:
    radial-gradient(circle at 50% 120%, rgba(216, 170, 45, 0.11), transparent 42%),
    var(--sh-black) !important;
}

/* Constitutional Inflection Point page */
body.page-id-64 .kb-row-layout-idtrn-hero {
  min-height: calc(82svh - 78px);
  overflow: hidden;
  background:
    repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px),
      rgba(255, 255, 255, 0.022) calc(25% - 1px) 25%),
    radial-gradient(circle at 88% 18%, rgba(216, 170, 45, 0.13), transparent 28%),
    linear-gradient(115deg, #080a09 0%, #101311 100%) !important;
}

body.page-id-64 .kb-row-layout-idtrn-hero > .kt-row-column-wrap {
  display: flex;
  align-items: center;
  min-height: calc(82svh - 78px);
}

body.page-id-64 .kb-row-layout-idtrn-hero h1 {
  max-width: 1160px;
  color: var(--sh-ivory) !important;
  font-size: clamp(3.1rem, 6.3vw, 7rem) !important;
  line-height: 0.96;
}

body.page-id-64 .kb-row-layout-idtrn-hero p:last-child {
  max-width: 1080px;
  color: #d1d4cf !important;
  font-size: clamp(1rem, 1.35vw, 1.2rem);
}

body.page-id-64 .kb-row-layout-idtrn-hero
  .kt-inside-inner-col > p:first-child {
  color: #e4e5e1 !important;
}

body.page-id-64 .kb-row-layout-idtrn-note {
  background:
    linear-gradient(90deg, rgba(8, 10, 9, 0.055) 0 1px,
      transparent 1px) 0 0 / 25% 100%,
    var(--sh-ivory) !important;
}

body.page-id-64 .kb-row-layout-idtrn-pre .wp-block-kadence-column
  > .kt-inside-inner-col,
body.page-id-64 .kb-row-layout-idtrn-consult .wp-block-kadence-column
  > .kt-inside-inner-col {
  min-height: 260px;
  padding: clamp(1.6rem, 3vw, 2.7rem);
  border-top: 1px solid currentColor;
  transition: transform 220ms var(--sh-ease), border-color 220ms ease;
}

body.page-id-64 .kb-row-layout-idtrn-pre .wp-block-kadence-column
  > .kt-inside-inner-col:hover,
body.page-id-64 .kb-row-layout-idtrn-consult .wp-block-kadence-column
  > .kt-inside-inner-col:hover {
  transform: translateY(-3px);
  border-top-color: var(--sh-gold);
}

body.page-id-64 .kb-row-layout-idtrn-rules {
  background:
    radial-gradient(circle at 90% 100%, rgba(36, 79, 133, 0.12), transparent 34%),
    var(--sh-black) !important;
}

/* Minimal institutional footer */
body:not(.wp-admin) .site-footer { border-top: 1px solid var(--sh-line-dark); }

body:not(.wp-admin) .site-bottom-footer-wrap {
  background: #151817 !important;
}

body:not(.wp-admin) .footer-html-inner {
  font-size: 0.73rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (prefers-reduced-motion: no-preference) {
  body.home .kb-row-layout-id10_0ba1dc-f5
    .kadence-column10_fff116-b9 > .kt-inside-inner-col {
    animation: sh-rise 780ms var(--sh-ease) both;
  }

  body.home .kb-row-layout-id10_0ba1dc-f5
    .kadence-column10_239361-9b > .kt-inside-inner-col {
    animation: sh-fade 980ms 120ms var(--sh-ease) both;
  }
}

@keyframes sh-rise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes sh-fade {
  from { opacity: 0; transform: scale(0.975); }
  to { opacity: 1; transform: scale(1); }
}

@media (max-width: 1024px) {
  body:not(.wp-admin) .site-main-header-inner-wrap { min-height: 70px; }

  body.home .kb-row-layout-id10_0ba1dc-f5,
  body.home .kb-row-layout-id10_0ba1dc-f5 > .kt-row-column-wrap {
    min-height: auto;
  }

  body.home .kb-row-layout-id10_0ba1dc-f5 img {
    width: min(52vw, 470px);
  }

  body.page-id-64 .kb-row-layout-idtrn-hero,
  body.page-id-64 .kb-row-layout-idtrn-hero > .kt-row-column-wrap {
    min-height: 70svh;
  }
}

@media (max-width: 767px) {
  body.admin-bar .site-header,
  body.admin-bar .site-mobile-header-wrap { top: 46px; }

  body:not(.wp-admin) .site-branding .custom-logo { width: 48px; }

  body.home .kb-row-layout-id10_0ba1dc-f5 > .kt-row-column-wrap {
    padding-top: 5rem;
    padding-bottom: 4rem;
  }

  body.home .kb-row-layout-id10_0ba1dc-f5 h1 {
    font-size: clamp(2.65rem, 14vw, 4.2rem) !important;
    line-height: 0.98 !important;
  }

  body.home .kb-row-layout-id10_0ba1dc-f5 img {
    width: min(76vw, 400px);
    margin-top: 2rem;
  }

  body:not(.wp-admin) .entry-content h2 {
    font-size: clamp(2rem, 10vw, 3.2rem);
  }

  body.home .kb-row-layout-id10_290726-59 .wp-block-kadence-rowlayout
    > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col,
  body.home .kb-row-layout-id10_815402-ae .wp-block-kadence-rowlayout
    > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col,
  body.page-id-64 .kb-row-layout-idtrn-pre .wp-block-kadence-column
    > .kt-inside-inner-col,
  body.page-id-64 .kb-row-layout-idtrn-consult .wp-block-kadence-column
    > .kt-inside-inner-col {
    min-height: auto;
  }

  body.page-id-64 .kb-row-layout-idtrn-hero,
  body.page-id-64 .kb-row-layout-idtrn-hero > .kt-row-column-wrap {
    min-height: 68svh;
  }

  body.page-id-64 .kb-row-layout-idtrn-hero h1 {
    font-size: clamp(2.7rem, 13vw, 4.5rem) !important;
  }
}

/* Editorial paired sections: equal columns and disciplined headline wrapping */
body:not(.wp-admin) :is(
  .kb-row-layout-idhome-trust,
  .kb-row-layout-iddoc-rect,
  .kb-row-layout-idprj-nat,
  .kb-row-layout-idanc-facts,
  .kb-row-layout-idcon-order,
  .kb-row-layout-idins-offer,
  .kb-row-layout-ideng-what,
  .kb-row-layout-idapo-gates
) > .kt-row-column-wrap {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch;
  gap: clamp(2rem, 4vw, 5rem);
}

body:not(.wp-admin) :is(
  .kb-row-layout-idhome-trust,
  .kb-row-layout-iddoc-rect,
  .kb-row-layout-idprj-nat,
  .kb-row-layout-idanc-facts,
  .kb-row-layout-idcon-order,
  .kb-row-layout-idins-offer,
  .kb-row-layout-ideng-what,
  .kb-row-layout-idapo-gates
) .wp-block-kadence-column {
  min-width: 0;
}

body:not(.wp-admin) :is(
  .kb-row-layout-idhome-trust,
  .kb-row-layout-iddoc-rect,
  .kb-row-layout-idprj-nat,
  .kb-row-layout-idanc-facts,
  .kb-row-layout-idcon-order,
  .kb-row-layout-idins-offer,
  .kb-row-layout-ideng-what,
  .kb-row-layout-idapo-gates
) .wp-block-kadence-column > .kt-inside-inner-col {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-width: 0;
}

body:not(.wp-admin) :is(
  .kb-row-layout-idhome-trust,
  .kb-row-layout-iddoc-rect,
  .kb-row-layout-idprj-nat,
  .kb-row-layout-idanc-facts,
  .kb-row-layout-idcon-order,
  .kb-row-layout-idins-offer,
  .kb-row-layout-ideng-what,
  .kb-row-layout-idapo-gates
) h2 {
  max-width: 100%;
  font-size: clamp(2.4rem, 3.05vw, 4rem) !important;
  line-height: 1.02 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  -webkit-hyphens: none !important;
  hyphens: none !important;
}

body.home .kb-row-layout-idhome-trust .kb-buttons-wrap {
  margin-top: auto;
  padding-top: clamp(1.5rem, 2.5vw, 2.5rem);
}

@media (max-width: 767px) {
  body:not(.wp-admin) :is(
    .kb-row-layout-idhome-trust,
    .kb-row-layout-iddoc-rect,
    .kb-row-layout-idprj-nat,
    .kb-row-layout-idanc-facts,
    .kb-row-layout-idcon-order,
    .kb-row-layout-idins-offer,
    .kb-row-layout-ideng-what,
    .kb-row-layout-idapo-gates
  ) > .kt-row-column-wrap {
    grid-template-columns: 1fr !important;
    gap: 2rem;
  }

  body:not(.wp-admin) :is(
    .kb-row-layout-idhome-trust,
    .kb-row-layout-iddoc-rect,
    .kb-row-layout-idprj-nat,
    .kb-row-layout-idanc-facts,
    .kb-row-layout-idcon-order,
    .kb-row-layout-idins-offer,
    .kb-row-layout-ideng-what,
    .kb-row-layout-idapo-gates
  ) h2 {
    font-size: clamp(1.9rem, 9.5vw, 3rem) !important;
  }
}

/* Secure institutional capture forms */
body:not(.wp-admin) .sh-capture {
  position: relative;
  margin: 0;
  padding: clamp(4.5rem, 8vw, 7.5rem) 0;
  color: var(--sh-ivory);
  background:
    radial-gradient(circle at 10% 12%, rgba(36, 79, 133, 0.17), transparent 34%),
    linear-gradient(145deg, var(--sh-black), #080a09 72%);
  border-top: 1px solid var(--sh-line-dark);
}

body:not(.wp-admin) .sh-capture::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: var(--sh-gold);
}

body:not(.wp-admin) .sh-capture__inner {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
}

body:not(.wp-admin) .sh-capture__kicker {
  margin: 0 0 1.15rem;
  color: var(--sh-gold);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}

body:not(.wp-admin) .sh-capture h2 {
  max-width: 900px;
  margin: 0;
  color: var(--sh-ivory);
  font-family: var(--global-heading-font-family, Georgia, serif);
  font-size: clamp(2.25rem, 5.5vw, 5.25rem);
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 0.98;
  text-transform: uppercase;
}

body:not(.wp-admin) .sh-capture__intro {
  max-width: 760px;
  margin: 1.7rem 0 0;
  color: var(--sh-muted);
  font-size: clamp(1rem, 1.5vw, 1.15rem);
  line-height: 1.75;
}

body:not(.wp-admin) .sh-form {
  margin-top: clamp(2.5rem, 5vw, 4rem);
  padding: clamp(1.35rem, 4vw, 3.25rem);
  border: 1px solid var(--sh-line-dark);
  background: rgba(24, 27, 26, 0.88);
  box-shadow: 0 28px 75px rgba(0, 0, 0, 0.28);
}

body:not(.wp-admin) .sh-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.35rem;
}

body:not(.wp-admin) .sh-form > label,
body:not(.wp-admin) .sh-form__grid label {
  display: grid;
  gap: 0.6rem;
  margin: 1.35rem 0 0;
  color: var(--sh-ivory);
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.065em;
  line-height: 1.4;
  text-transform: uppercase;
}

body:not(.wp-admin) .sh-form__grid label {
  margin-top: 0;
}

body:not(.wp-admin) .sh-form input[type="text"],
body:not(.wp-admin) .sh-form input[type="email"],
body:not(.wp-admin) .sh-form textarea {
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 0.9rem 1rem;
  color: var(--sh-ivory);
  background: #0d100f;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0;
  box-shadow: none;
  font: inherit;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.55;
  text-transform: none;
}

body:not(.wp-admin) .sh-form textarea {
  min-height: 150px;
  resize: vertical;
}

body:not(.wp-admin) .sh-form input:focus,
body:not(.wp-admin) .sh-form textarea:focus {
  outline: 2px solid var(--sh-gold);
  outline-offset: 2px;
  border-color: var(--sh-gold);
}

body:not(.wp-admin) .sh-form__consent {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  max-width: 860px;
  color: var(--sh-muted);
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.55;
  text-transform: none;
}

body:not(.wp-admin) .sh-form__consent input {
  flex: 0 0 auto;
  width: 1.1rem;
  height: 1.1rem;
  margin: 0.18rem 0 0;
  accent-color: var(--sh-gold);
}

body:not(.wp-admin) .sh-form__consent a {
  color: var(--sh-ivory);
  text-decoration-color: var(--sh-gold);
  text-underline-offset: 0.2em;
}

body:not(.wp-admin) .sh-form__submit {
  margin-top: 1.75rem;
  padding: 0.95rem 1.35rem;
  color: var(--sh-ink);
  background: var(--sh-gold);
  border: 1px solid var(--sh-gold);
  border-radius: 0;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
  cursor: pointer;
}

body:not(.wp-admin) .sh-form__submit:hover {
  color: var(--sh-ivory);
  background: transparent;
  transform: translateY(-2px);
}

body:not(.wp-admin) .sh-form__note {
  margin: 1rem 0 0;
  color: var(--sh-muted);
  font-size: 0.82rem;
  line-height: 1.55;
}

body:not(.wp-admin) .sh-form-notice {
  margin: 1.75rem 0 0;
  padding: 1rem 1.15rem;
  border-left: 4px solid var(--sh-gold);
  background: rgba(216, 170, 45, 0.12);
  color: var(--sh-ivory);
}

body:not(.wp-admin) .sh-form-notice--error {
  border-left-color: #d66b72;
  background: rgba(143, 32, 41, 0.2);
}

body:not(.wp-admin) .sh-field--trap {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  body:not(.wp-admin) .sh-capture__inner {
    width: min(100% - 28px, 1120px);
  }

  body:not(.wp-admin) .sh-form__grid {
    grid-template-columns: 1fr;
  }

  body:not(.wp-admin) .sh-form {
    padding: 1.2rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
