/* OmniTrust Site — layout overrides for pages that use [omnitrust_page] */

/* Hide the theme's own header, footer, page title and breadcrumbs on OmniTrust pages */
body.ot-page #masthead,
body.ot-page #colophon,
body.ot-page .site-header,
body.ot-page .site-footer,
body.ot-page .entry-header,
body.ot-page .ast-breadcrumbs-wrapper,
body.ot-page .ast-scroll-top-icon,
body.ot-page #ast-scroll-top {
	display: none !important;
}

/* Let the page content run full width */
body.ot-page,
body.ot-page #page,
body.ot-page .site-content {
	background: #F7F4EC !important;
}
body.ot-page .site-content > .ast-container,
body.ot-page .ast-container {
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
}
body.ot-page #primary,
body.ot-page #primary.content-area,
body.ot-page .site-main,
body.ot-page article,
body.ot-page .ast-article-single,
body.ot-page .ast-separate-container .ast-article-single,
body.ot-page .entry-content {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}
body.ot-page #secondary { display: none !important; }
body.ot-page .entry-content > .ot-site,
body.ot-page .entry-content > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }

html { scroll-behavior: smooth; }

/* Neutralise theme typography inside OmniTrust pages (inline styles set the design) */
.ot-site { font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif; color: #17213A; line-height: 1.5; -webkit-font-smoothing: antialiased; }
.ot-site h1, .ot-site h2, .ot-site h3, .ot-site h4 { font-family: inherit; letter-spacing: normal; text-transform: none; clear: none; }
.ot-site p { margin-bottom: 0; }
.ot-site img { max-width: 100%; height: auto; border: 0; }
.ot-site a { text-decoration: none; transition: color .15s ease, filter .15s ease; }
.ot-site a:hover { color: #85662C; }
.ot-site .btn:hover { filter: brightness(1.1); }
.ot-site section[id] { scroll-margin-top: 16px; }

/* Forms */
.ot-site input, .ot-site select, .ot-site textarea, .ot-site button { font-family: inherit; }
.ot-site input:focus, .ot-site select:focus, .ot-site textarea:focus { outline: 2px solid #B9904A; outline-offset: 1px; border-color: #B9904A; box-shadow: none; }
.ot-site button:hover { filter: brightness(1.12); }
.ot-site .ot-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.ot-site .ot-alert { margin: 0; padding: 12px 14px; background: #FBEDEA; border: 1px solid #C4513C; border-radius: 3px; color: #8A2B1C; font-size: 14px; line-height: 1.5; }
.ot-site .ot-alert ul { margin: 6px 0 0 18px; padding: 0; }

/* Block themes (e.g. Twenty Twenty-Four/Five): hide theme header, footer and title, remove width constraints */
body.ot-page .wp-site-blocks > header,
body.ot-page .wp-site-blocks > footer,
body.ot-page header.wp-block-template-part,
body.ot-page footer.wp-block-template-part,
body.ot-page .wp-block-post-title { display: none !important; }
body.ot-page .wp-site-blocks,
body.ot-page .wp-site-blocks > main,
body.ot-page main.wp-block-group,
body.ot-page .wp-block-post-content,
body.ot-page .entry-content.wp-block-post-content { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body.ot-page .is-layout-constrained > .ot-site,
body.ot-page .ot-site { max-width: none !important; width: 100% !important; margin: 0 !important; }
body.ot-page main > .wp-block-group { padding: 0 !important; margin: 0 !important; }
body.ot-page .has-global-padding { padding-left: 0 !important; padding-right: 0 !important; }

/* Stop the theme's heading and link colours overriding the design (inline colours still win) */
body.ot-page .ot-site h1,
body.ot-page .ot-site h2,
body.ot-page .ot-site h3,
body.ot-page .ot-site h4,
body.ot-page .ot-site strong { color: inherit; }
body.ot-page .ot-site a { color: #162B4F; text-decoration: none; }
body.ot-page .ot-site footer a,
body.ot-page .ot-site nav[aria-label="Practices"] a { color: inherit; }

/* Legal pages */
.ot-site .ot-legal-hero { background: #162B4F; color: #F7F4EC; }
.ot-site .ot-legal-wrap { max-width: 800px; margin: 0 auto; padding: 0 clamp(20px, 4vw, 48px); box-sizing: border-box; }
.ot-site .ot-legal-hero .ot-legal-wrap { padding-top: 80px; padding-bottom: 64px; display: flex; flex-direction: column; gap: 16px; }
.ot-site .ot-legal-eyebrow { font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: #B9904A; }
body.ot-page .ot-site .ot-legal-hero h1 { margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 500; font-size: clamp(36px, 4.4vw, 54px); line-height: 1.1; color: #F7F4EC; }
.ot-site .ot-legal-hero p { margin: 0; font-size: 16px; color: #C9D0DC; }
.ot-site .ot-legal { background: #F7F4EC; }
.ot-site .ot-legal .ot-legal-wrap { padding-top: 64px; padding-bottom: 104px; font-size: 17px; line-height: 1.7; color: #2A3347; }
body.ot-page .ot-site .ot-legal h2 { margin: 44px 0 12px; font-family: 'Playfair Display', Georgia, serif; font-weight: 500; font-size: 26px; line-height: 1.25; color: #162B4F; }
.ot-site .ot-legal p { margin: 0 0 16px; }
.ot-site .ot-legal ul { margin: 0 0 16px; padding-left: 22px; }
.ot-site .ot-legal li { margin-bottom: 8px; }
body.ot-page .ot-site .ot-legal a { color: #162B4F; text-decoration: underline; text-underline-offset: 3px; }
body.ot-page .ot-site .ot-legal strong { color: #17213A; font-weight: 600; }

/* Header drop-down menus (Nov 2026) */
.ot-site .ot-dd{position:relative;display:flex;align-items:center;gap:2px}
.ot-site .ot-dd-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:44px;padding:0;margin:0;border:0;background:transparent;color:#17213A;cursor:pointer;border-radius:3px}
.ot-site .ot-dd-btn:focus-visible{outline:2px solid #B9904A;outline-offset:2px}
.ot-site .ot-dd-menu{display:none;position:absolute;top:100%;left:-14px;z-index:1000;min-width:290px;max-width:calc(100vw - 32px);flex-direction:column;background:#FFFFFF;border:1px solid #D9D2C0;border-radius:6px;box-shadow:0 14px 34px rgba(22,43,79,.16);padding:8px;box-sizing:border-box}
.ot-site .ot-dd:hover .ot-dd-menu,.ot-site .ot-dd:focus-within .ot-dd-menu{display:flex}
.ot-site .ot-dd:hover .ot-dd-btn svg,.ot-site .ot-dd:focus-within .ot-dd-btn svg{transform:rotate(180deg)}
.ot-site .ot-dd-menu a{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:4px;color:#17213A;text-decoration:none;font-size:15px;font-weight:500;line-height:1.35}
.ot-site .ot-dd-menu a span{font-size:12.5px;font-weight:400;color:#5A6478}
.ot-site .ot-dd-menu a:hover,.ot-site .ot-dd-menu a:focus{background:#F7F4EC;outline:none}
.ot-site .ot-dd-sep{height:1px;background:#E5DFD0;margin:6px 8px}
.ot-site .ot-dd-btn,.ot-site .ot-dd-btn:hover,.ot-site .ot-dd-btn:focus{background:transparent!important;box-shadow:none!important;border:0!important;color:#17213A!important;min-height:0!important}
.ot-site .ot-dd.open .ot-dd-menu{display:flex}
.ot-site .ot-dd.open .ot-dd-btn svg{transform:rotate(180deg)}
@media (max-width:720px){.ot-site .ot-dd-menu{left:0;min-width:250px}
}

