/* WebmPros supporting pages. The approved homepage stylesheet is unchanged. */
[hidden] { display:none !important; }
.inner-page .site-header { background:rgba(4,17,26,.97); }
.inner-page .site-header.is-scrolled { background:#04111a; }
.page-hero { padding:130px 0 58px; background:var(--navy); color:#fff; position:relative; overflow:hidden; }
.breadcrumbs { display:flex; gap:12px; align-items:center; color:#b3c4d0; font-size:12px; margin:0 0 32px; }
.breadcrumbs a:hover { color:#fff; text-decoration:underline; }
.page-hero h1 { max-width:1040px; font-size:clamp(42px,4.9vw,70px); line-height:1.05; letter-spacing:-.055em; }
.inner-page h1 em { color:#ff454b; font-style:normal; }
.page-hero .eyebrow { font-size:13px; letter-spacing:.08em; color:#ff575c; }
.page-lede { color:#c7d3de; max-width:680px; margin:23px 0 0; font-size:19px; line-height:1.6; }
.page-actions { display:flex; align-items:center; gap:14px; margin-top:28px; flex-wrap:wrap; }
.page-actions .button { font-size:15px; min-height:54px; padding:15px 21px; }
.about-hero { padding-bottom:68px; }
.about-hero-grid { display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:55px; }
.about-hero-grid h1 { font-size:clamp(40px,4.5vw,65px); line-height:1.04; }
.about-visual { height:355px; position:relative; border-radius:13px; border:1px solid #304554; background:#122430; box-shadow:0 18px 50px #0003; }
.about-photo { height:100%; border-radius:12px; background:url('../images/hero-cleveland.webp') 82% center / auto 115% no-repeat; }
.asset-note { position:absolute; left:-25px; right:20px; bottom:-20px; display:flex; align-items:center; gap:15px; padding:23px; border:1px solid #304451; border-radius:9px; background:#0f202c; box-shadow:0 12px 35px #0004; }
.asset-note-icon { display:flex; align-items:center; justify-content:center; width:44px; height:44px; flex-shrink:0; border-radius:9px; background:#ff343424; color:#ff484f; }
.asset-note-icon .icon { width:29px; height:29px; }
.asset-note strong { display:block; font-size:16px; line-height:1.35; }
.asset-note span:not(.asset-note-icon) { display:block; color:#bdcbd6; font-size:13px; margin-top:5px; }
.content-section { padding:76px 0; }
.content-section h2 { font-size:clamp(30px,3vw,42px); line-height:1.09; letter-spacing:-.045em; }
.content-section .eyebrow { font-size:12px; letter-spacing:.07em; line-height:1.6; }
.editorial-grid { display:grid; grid-template-columns: .95fr 1.2fr; gap:95px; }
.prose { font-size:17px; line-height:1.8; color:#4e6374; }
.prose p + p { margin-top:20px; }
.prose .text-link { margin-top:24px; color:var(--ink); }
.paper-section { background:var(--paper); }
.section-intro { margin-bottom:32px; }
.section-intro > p:not(.eyebrow) { color:#526777; font-size:17px; margin-top:16px; }
.principle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.principle-card { position:relative; background:#fff; padding:31px; border:1px solid #e8ebec; border-radius:10px; box-shadow:var(--shadow); }
.principle-card > .icon { width:40px; height:40px; color:#ed2730; margin-bottom:33px; }
.principle-card .card-number { position:absolute; right:27px; top:25px; color:#e1e6e9; font-size:36px; font-weight:700; letter-spacing:-.06em; }
.principle-card h3 { font-size:23px; margin-bottom:14px; }
.principle-card p { color:#536778; font-size:16px; line-height:1.65; }
.founder-line { margin-top:25px; display:flex; align-items:center; gap:13px; }
.founder-initials { display:grid; place-items:center; width:47px; height:47px; border-radius:50%; background:#ffeded; color:#d9232b; font-size:15px; font-weight:700; }
.founder-line strong { font-size:15px; display:block; }
.founder-line div > span { color:#607485; font-size:12px; }
.navy-section { color:white; background:#071721; }
.navy-section .eyebrow { color:#ff575c; }
.navy-section .prose { color:#c0cfda; }
.fit-grid { display:grid; grid-template-columns:.95fr 1.2fr; gap:95px; align-items:center; }
.inner-page .closing-cta h2 { font-size:38px; max-width:810px; }
.inner-page .closing-cta h2 + p { max-width:770px; font-size:16px; }
.inner-page .closing-cta .eyebrow { font-size:12px; }
.contact-section { padding:0 0 75px; background:linear-gradient(var(--navy) 0 45px,#fff 45px 100%); }
.contact-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; }
.contact-aside { padding-top:91px; }
.contact-aside > .eyebrow { font-size:12px; line-height:1.5; }
.contact-aside h2 { font-size:42px; line-height:1.08; }
.contact-aside > p:not(.eyebrow) { color:#576b7c; font-size:16px; line-height:1.75; margin-top:20px; max-width:380px; }
.contact-methods { margin:27px 0; display:grid; gap:24px; }
.contact-methods > a,.contact-methods > div { display:flex; gap:16px; align-items:center; min-width:0; }
.contact-methods .icon { width:25px; height:25px; color:#ed222a; flex-shrink:0; }
.contact-methods small { display:block; color:#607282; font-size:12px; margin-bottom:5px; }
.contact-methods strong { font-size:19px; font-weight:600; letter-spacing:-.025em; }
.contact-methods .contact-email { font-size:15px; overflow-wrap:anywhere; }
.contact-methods > a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.contact-aside-note { display:flex; align-items:flex-start; gap:10px; padding:20px; margin:29px 0; background:#f6f7f8; border-left:3px solid #d4dfe6; border-radius:0 8px 8px 0; }
.contact-aside-note .icon { color:#5b7285; width:19px; height:19px; margin-top:3px; }
.contact-aside-note p { font-size:13px; line-height:1.7; color:#516677; }
.contact-aside .text-link { font-size:14px; }
.contact-form-card { background:#fff; border-radius:12px; padding:35px 38px; border:1px solid #e5e9ee; box-shadow:0 12px 42px #0b1a2810; }
.form-card-heading { display:flex; gap:14px; align-items:center; padding-bottom:24px; margin-bottom:25px; border-bottom:1px solid #edf0f2; }
.form-heading-icon { width:47px; height:47px; border-radius:10px; display:grid; place-items:center; flex-shrink:0; background:#fff0f0; color:#e6222a; }
.form-heading-icon .icon { width:25px; height:25px; }
.form-card-heading h2 { font-size:25px; line-height:1.15; letter-spacing:-.04em; }
.form-card-heading p { font-size:12px; color:#607383; margin-top:6px; }
.lead-form { display:grid; gap:18px; position:relative; }
.lead-form .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:0; }
.lead-form label { font-size:13px; line-height:1.5; font-weight:600; display:block; color:#243e50; }
.lead-form input:not([type=checkbox]), .lead-form select, .lead-form textarea { width:100%; margin-top:7px; border:1px solid #cfd9e0; border-radius:6px; padding:12px; min-height:46px; background:#fcfdfe; font-size:15px; line-height:1.4; color:#112939; }
.lead-form select { padding-right:22px; }
.lead-form textarea { resize:vertical; min-height:112px; }
.lead-form input::placeholder,.lead-form textarea::placeholder { color:#778792; font-size:13px; }
.lead-form .optional { color:#6a7b89; font-size:11px; font-weight:400; }
.lead-form .field-hint { font-size:11px; line-height:1.5; color:#627888; margin-top:-12px; }
.form-trap { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.lead-form .consent-line { display:flex; gap:11px; align-items:flex-start; font-weight:400; font-size:12px; line-height:1.7; }
.lead-form .consent-line input { width:17px; height:17px; margin:2px 0 0; flex-shrink:0; accent-color:#dd2028; }
.lead-form .consent-line a,.form-fallback a,.receipt-footnote a { text-decoration:underline; text-underline-offset:3px; }
.lead-form .turnstile-slot { max-width:100%; min-width:0; overflow:hidden; }
.lead-form .turnstile-slot:empty { display:none; }
.lead-form .form-availability { color:#5b7283; padding:11px 13px; background:#f4f7f9; border:1px solid #e6edf1; border-radius:6px; font-size:12px; line-height:1.6; }
.lead-form .form-availability.is-unavailable { background:#fff7ed; color:#7c4d14; border-color:#f5d9b1; }
.lead-form .form-availability.is-ready { background:#f1f8f4; color:#22623c; border-color:#d8eadd; }
.lead-form .form-submit { width:100%; font-size:16px; min-height:54px; }
.lead-form .form-submit:disabled { opacity:.65; transform:none; box-shadow:none; }
.lead-form .form-note { font-size:11px; line-height:1.65; color:#627585; margin: -6px 0 0; }
.lead-form .form-result { padding:16px; border-radius:7px; background:#fff0f0; border:1px solid #efc1c1; color:#8e2222; font-size:14px; line-height:1.6; }
.lead-form .form-result.is-success { background:#eefaef; border-color:#b8d9bf; color:#245d31; }
.lead-form .form-fallback { font-size:11px; line-height:1.65; color:#536d7e; border-top:1px solid #edf0f2; padding-top:15px; }
.lead-form .form-noscript { font-size:13px; color:#8e2222; }
.site-dialog .lead-form .form-grid { margin:0; }
.site-dialog .lead-form .form-note { text-align:left; }
.next-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; }
.next-grid article { border-top:1px solid #d8dfdf; padding-top:24px; }
.next-grid span { color:#e7262d; font-size:12px; font-weight:700; }
.next-grid h3 { font-size:23px; line-height:1.2; margin-top:12px; }
.next-grid p { color:#586c7d; font-size:15px; line-height:1.75; margin-top:13px; }
.legal-layout { display:grid; grid-template-columns:270px minmax(0,1fr); gap:90px; align-items:start; }
.page-toc { position:sticky; top:108px; border-left:1px solid #dde4e8; padding-left:22px; }
.page-toc > p { font-size:12px; text-transform:uppercase; font-weight:700; letter-spacing:.08em; color:#526877; margin-bottom:17px; }
.page-toc > a { display:block; font-size:13px; line-height:1.5; color:#4c6375; padding:9px 0; }
.page-toc > a:hover { color:#d51d27; }
.toc-help { margin-top:28px; padding:20px 18px; border-radius:7px; background:var(--paper); }
.toc-help strong { display:block; font-size:14px; line-height:1.5; }
.toc-help a { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:600; color:#cf1b26; margin-top:13px; }
.toc-help .icon { width:17px; height:17px; }
.policy-copy { max-width:800px; }
.policy-date { font-size:12px; color:#687e8e; margin-bottom:35px; }
.policy-section + .policy-section { margin-top:38px; padding-top:34px; border-top:1px solid #e8edef; }
.policy-section h2 { font-size:27px; line-height:1.2; letter-spacing:-.035em; margin-bottom:16px; }
.policy-section p { font-size:16px; line-height:1.85; color:#4b6273; overflow-wrap:anywhere; }
.policy-section p + p { margin-top:15px; }
.policy-section a { color:#b51f2c; text-decoration:underline; text-underline-offset:3px; }
.faq-group + .faq-group { margin-top:45px; }
.faq-group > h2 { font-size:29px; margin-bottom:23px; }
.faq-item { border-bottom:1px solid #e2e9ed; }
.faq-item summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px; cursor:pointer; padding:21px 0; font-size:16px; font-weight:600; line-height:1.5; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary:focus-visible { outline:2px solid #3975bb; outline-offset:3px; }
.faq-item summary .icon { width:19px; height:19px; color:#da1e27; transition:transform .2s; flex-shrink:0; }
.faq-item[open] summary .icon { transform:rotate(180deg); }
.faq-answer { padding:0 27px 23px 0; }
.faq-answer p { font-size:15px; color:#526a7b; line-height:1.8; }
.sitemap-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }
.sitemap-grid section { border:1px solid #e3e9ed; border-radius:9px; padding:30px; }
.sitemap-grid h2 { font-size:24px; margin-bottom:25px; }
.sitemap-grid a { display:block; color:#4a6376; font-size:15px; padding:10px 0; border-bottom:1px solid #eef1f3; }
.sitemap-grid a:hover { color:#da202a; }
.receipt-section { padding:160px 0 85px; background:var(--paper); min-height:720px; }
.receipt-card { max-width:760px; margin:auto; padding:52px; background:#fff; border-radius:12px; border:1px solid #e3e9ed; box-shadow:var(--shadow); }
.receipt-icon { width:65px; height:65px; display:grid; place-items:center; color:#e42830; background:#fff0f1; border-radius:50%; margin-bottom:25px; }
.receipt-icon .icon { width:31px; height:31px; }
.receipt-card > .eyebrow { font-size:12px; }
.receipt-card h1 { font-size:49px; line-height:1.08; }
.receipt-card > p:not(.eyebrow) { font-size:16px; color:#5d7284; margin-top:20px; line-height:1.7; }
.receipt-reference { padding:15px 18px; margin-top:22px; font-size:14px; background:#f0f7f1; color:#24663a; border:1px solid #d2e7d7; border-radius:7px; }
.receipt-next { margin-top:25px; }
.receipt-next h2 { font-size:23px; }
.receipt-next p { font-size:15px; line-height:1.7; color:#567081; margin-top:10px; }
.receipt-card > .receipt-footnote { font-size:12px !important; }
.not-found { position:relative; overflow:hidden; background:var(--navy); color:#fff; padding:185px 0 100px; min-height:740px; }
.not-found .container { position:relative; }
.not-found h1 { font-size:75px; }
.not-found p:not(.eyebrow):not(.error-number) { color:#bdcdda; margin-top:25px; max-width:540px; font-size:18px; line-height:1.8; }
.error-number { position:absolute; right:0; top:-35px; color:#ffffff07; font-size:300px; line-height:1; font-weight:800; letter-spacing:-.08em; pointer-events:none; }
.legal-links { display:flex; flex-wrap:wrap; gap:15px; }
.legal-links a { font-size:11px; color:#a6bac9; }
.legal-links a:hover { color:#fff; text-decoration:underline; }
.footer-bottom .container { flex-wrap:wrap; gap:15px 25px; }
@media(min-width:1100px){ .footer-bottom .container > p:nth-child(2) { margin-left:auto; } .footer-bottom .legal-links { width:100%; padding-top:10px; border-top:1px solid #ffffff0a; justify-content:flex-end; } }
@media(max-width:1100px){
  .about-hero-grid { gap:35px; grid-template-columns:1.2fr 1fr; }
  .about-hero-grid h1 { font-size:48px; }
  .about-visual { height:305px; }
  .asset-note { padding:18px; }
  .asset-note strong { font-size:14px; }
  .editorial-grid,.fit-grid { gap:50px; }
  .contact-layout { grid-template-columns:.8fr 1.2fr; gap:35px; }
  .contact-form-card { padding:28px; }
  .contact-methods .contact-email { font-size:13px; }
  .legal-layout { grid-template-columns:220px 1fr; gap:45px; }
  .principle-card { padding:24px; }
  .principle-card h3 { font-size:21px; }
}
@media(max-width:900px){
  .page-hero { padding:111px 0 45px; }
  .about-hero-grid { grid-template-columns:1fr; gap:40px; }
  .about-hero-grid h1 { max-width:700px; font-size:53px; }
  .about-visual { max-width:650px; width:100%; height:310px; margin-bottom:5px; }
  .about-photo { background-size:cover; background-position:center 43%; }
  .asset-note { left:20px; right:20px; bottom:16px; }
  .page-lede { font-size:17px; }
  .editorial-grid,.fit-grid { grid-template-columns:1fr; gap:30px; }
  .principle-grid { gap:15px; }
  .principle-card { padding:22px; }
  .principle-card h3 { font-size:19px; }
  .principle-card p { font-size:14px; }
  .contact-layout { grid-template-columns:1fr; gap:35px; }
  .contact-form-card { grid-row:1; }
  .contact-aside { padding-top:0; }
  .contact-aside h2 br { display:none; }
  .contact-aside > p:not(.eyebrow) { max-width:100%; }
  .contact-methods { display:grid; grid-template-columns:1fr 1.3fr; }
  .contact-aside-note { max-width:650px; }
  .next-grid { gap:25px; }
  .next-grid h3 { font-size:20px; }
  .legal-layout { grid-template-columns:1fr; gap:35px; }
  .page-toc { position:static; display:flex; flex-wrap:wrap; gap:5px 15px; padding:0 0 25px; border-left:0; border-bottom:1px solid #e4eaee; }
  .page-toc > p { width:100%; margin-bottom:7px; }
  .page-toc > a { font-size:12px; border:1px solid #e1e7ec; border-radius:5px; padding:9px 12px; }
  .toc-help { display:none; }
  .sitemap-grid { grid-template-columns:1fr; gap:20px; }
  .content-section { padding:55px 0; }
  .inner-page .closing-cta h2 { font-size:34px; }
}
@media(max-width:650px){
  .page-hero { padding:100px 0 35px; }
  .breadcrumbs { font-size:11px; gap:9px; margin-bottom:25px; }
  .page-hero h1,.about-hero-grid h1 { font-size:40px; line-height:1.07; }
  .page-hero .eyebrow { font-size:11px; }
  .page-lede { font-size:15px; line-height:1.75; margin-top:19px; }
  .page-actions { gap:11px; margin-top:22px; }
  .page-actions .button { font-size:12px; padding:14px 17px; min-height:47px; }
  .about-hero { padding-bottom:35px; }
  .about-visual { height:260px; }
  .asset-note { left:12px; right:12px; bottom:13px; padding:15px; gap:12px; }
  .asset-note-icon { width:36px; height:36px; }
  .asset-note strong { font-size:12px; }
  .asset-note span:not(.asset-note-icon) { font-size:11px; }
  .content-section { padding:41px 0; }
  .content-section h2 { font-size:31px; line-height:1.12; }
  .content-section .eyebrow { font-size:10px; }
  .prose { font-size:15px; line-height:1.8; }
  .principle-grid { grid-template-columns:1fr; gap:17px; }
  .principle-card { padding:24px; }
  .principle-card > .icon { margin-bottom:22px; }
  .principle-card h3 { font-size:23px; }
  .principle-card p { font-size:15px; }
  .section-intro > p:not(.eyebrow) { font-size:15px; }
  .inner-page .closing-cta h2 { font-size:31px; }
  .contact-form-card { padding:24px 20px; }
  .form-card-heading { align-items:flex-start; gap:11px; }
  .form-card-heading h2 { font-size:22px; }
  .form-card-heading p { font-size:10px; line-height:1.65; }
  .form-heading-icon { width:39px; height:39px; }
  .lead-form .form-grid { grid-template-columns:1fr; gap:17px; }
  .lead-form { gap:17px; }
  .lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea { font-size:16px; }
  .lead-form .form-fallback { line-height:1.9; }
  .contact-methods { grid-template-columns:1fr; }
  .contact-methods .contact-email { font-size:14px; }
  .contact-aside h2 { font-size:34px; }
  .contact-section { padding-bottom:40px; }
  .next-grid { grid-template-columns:1fr; gap:29px; }
  .next-grid h3 { font-size:22px; }
  .next-grid p { margin-top:10px; font-size:14px; }
  .policy-section h2 { font-size:24px; }
  .policy-section p { font-size:15px; }
  .policy-date { margin-bottom:25px; }
  .faq-group > h2 { font-size:27px; }
  .faq-item summary { font-size:15px; gap:13px; }
  .faq-answer { padding-right:0; }
  .faq-answer p { font-size:14px; }
  .sitemap-grid h2 { font-size:24px; }
  .receipt-section { padding:105px 0 45px; min-height:620px; }
  .receipt-card { padding:29px 23px; }
  .receipt-card h1 { font-size:39px; }
  .receipt-card > p:not(.eyebrow) { font-size:15px; }
  .receipt-card .page-actions { flex-direction:column; align-items:stretch; }
  .not-found { padding:142px 0 70px; min-height:680px; }
  .not-found h1 { font-size:57px; }
  .not-found .eyebrow { font-size:11px; }
  .not-found p:not(.eyebrow):not(.error-number) { font-size:16px; }
  .error-number { top:-13px; font-size:170px; }
  .legal-links { gap:13px; padding-top:10px; }
  .legal-links a { font-size:10px; }
}
@media(max-width:360px){
  .page-hero h1,.about-hero-grid h1 { font-size:35px; }
  .contact-form-card { padding:22px 16px; }
  .form-heading-icon { display:none; }
  .contact-methods .contact-email { font-size:12px; }
  .page-actions { align-items:stretch; flex-direction:column; }
}
@media print{
  .page-hero { padding:25px 0; color:#000; background:#fff; }
  .page-hero h1 { font-size:30pt; }
  .page-lede { color:#333; }
  .page-toc,.contact-form-card,.breadcrumbs,.about-visual { display:none; }
  .legal-layout,.editorial-grid,.fit-grid,.contact-layout { display:block; }
  .content-section { padding:20px 0; }
  .policy-section { break-inside:avoid; }
}
