body:has(.trl-home) .wp-block-template-part,
body:has(.trl-form) .wp-block-template-part,
body:has(.trl-privacy) .wp-block-template-part,
body:has(.trl-home) .wp-block-post-title,
body:has(.trl-form) .wp-block-post-title,
body:has(.trl-privacy) .wp-block-post-title { display: none; }

/* Give shortcode pages a deliberate page canvas rather than the theme's blank white field. */
body:has(.trl-home),
body:has(.trl-form),
body:has(.trl-privacy) { background: #e8eff5; }
body:has(.trl-home) .wp-site-blocks,
body:has(.trl-form) .wp-site-blocks,
body:has(.trl-privacy) .wp-site-blocks { min-height: 100vh; background: #e8eff5; }
.trl-site-shell:has(.trl-site-header) { background: #fff; }

/* The block theme's post-content layout is intentionally narrow for articles.
   These plugin pages are full-width application views, so release only their wrapper. */
body:has(.trl-home) .wp-block-post-content,
body:has(.trl-form) .wp-block-post-content,
body:has(.trl-privacy) .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body:has(.trl-home) .wp-block-post-content-is-layout-constrained > .trl-site-shell,
body:has(.trl-home) .wp-block-post-content-is-layout-constrained > .trl-home,
body:has(.trl-form) .wp-block-post-content-is-layout-constrained > .trl-site-shell,
body:has(.trl-privacy) .wp-block-post-content-is-layout-constrained > .trl-site-shell {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.trl-site-shell { width: 100%; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.trl-site-header,
.trl-site-footer { width: min(1120px, calc(100% - 3rem)); margin: auto; }
.trl-site-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:88px; color:#14213d; }
.trl-site-brand { color:#14213d!important; font-family:Georgia,"Times New Roman",serif; font-size:1.55rem; font-weight:700; text-decoration:none; }
.trl-site-brand span { display:block; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.trl-site-header nav { display: flex; align-items: center; gap: 1.1rem; }
.trl-site-header nav > a { color: #14213d !important; font-size:1rem; font-weight:800; text-decoration:none; }
.trl-site-header .trl-site-nav-cta { padding: .65rem .85rem; color: #fff !important; background: #1d4e89; border-radius: 4px; }

.trl-site-shell:has(.trl-site-footer) { background: #10294c; }
.trl-site-footer { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(140px,.75fr); align-items:center; column-gap:2.25rem; min-height:100px; padding:1.5rem 0; color:#dce6f3; font-size:.95rem; }
.trl-site-footer > :last-child { justify-self: end; }
.trl-site-footer a { color: #fff !important; font-weight: 800; text-decoration: none; }
.trl-site-contact { display: flex; flex-direction: column; gap: .3rem; min-width: max-content; line-height: 1.25; }
.trl-footer-links { display: flex; flex-direction: column; gap: .3rem; justify-self: end; text-align: right; }

@media (max-width: 760px) {
  .trl-site-header,
  .trl-site-footer { width: min(100% - 2rem, 1120px); }
  .trl-site-header { min-height:90px; }
  .trl-site-brand { font-size:1.35rem; }
  .trl-site-brand span { font-size:.64rem; }
  .trl-site-header nav { gap: .65rem; }
  .trl-site-header nav > a { font-size: .78rem; }
  .trl-site-footer { grid-template-columns: 1fr; align-items: start; gap: 1rem; min-height: 0; padding: 1.35rem 0 1.5rem; }
  .trl-site-footer > :last-child { justify-self: start; }
  .trl-site-contact { gap: .55rem; min-width: 0; line-height: 1.4; }
  .trl-site-contact a { overflow-wrap: anywhere; }
  .trl-footer-links { justify-self: start; text-align: left; }
}
