/*
Theme Name: Chastain Mechanical
Theme URI: https://chastainmechanicalsolutions.com
Author: Chastain Mechanical Solutions
Description: Custom theme for Chastain Mechanical Solutions, a mobile mechanic in Stockbridge, GA.
Version: 0.5.1
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: chastain
*/

@font-face { font-family: 'Inter'; font-style: normal; font-weight: 100 900; font-display: swap; src: url(assets/fonts/inter-latin-wght-normal.woff2) format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 400 900; font-display: swap; src: url(assets/fonts/playfair-display-latin-wght-normal.woff2) format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url(assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 600; font-display: swap; src: url(assets/fonts/ibm-plex-mono-latin-600-normal.woff2) format('woff2'); }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; font-family: 'Inter', system-ui, sans-serif; color: #0D111F; background: #FFFFFF; line-height: 1.6; font-size: 17px; -webkit-font-smoothing: antialiased; overflow-wrap: break-word; }
.cms-site a { color: inherit; text-decoration: none; }
.cms-site a:hover { text-decoration: underline; }
.cms-site .wp-block-button__link:hover { text-decoration: none; filter: brightness(1.08); }
.cms-site :focus-visible { outline: 3px solid #FF6A00; outline-offset: 2px; }
/* Buttons and phone links: a touch is always a tap, never a text selection. Some in-app
   browsers (the Google app on iPhone) otherwise highlight the number instead of dialing. */
.cms-site .wp-block-button__link, .cms-site .cms-callbar a, .cms-site .cms-menu-btn, .cms-site a[href^="tel:"], .cms-site a[href^="sms:"], .cms-site .cms-post-cta a { -webkit-user-select: none; user-select: none; touch-action: manipulation; }
.cms-site img { max-width: 100%; }
.cms-site .cms-card { position: relative; }
.cms-site .cms-stretch::after { content: ""; position: absolute; inset: 0; }
.cms-site .cms-nav-current { color: #FF6A00; }
.cms-site :where(.is-layout-flow, .is-layout-constrained, .is-layout-flex) > * { margin-block: 0; }
.cms-site .cms-content .wp-block-html, .cms-site .cms-content .wp-block-group { min-width: 0; }
.cms-site .cms-skip { position: absolute; left: -9999px; top: 0; background: #FF6A00; color: #0D111F; padding: 12px 20px; font-weight: 700; z-index: 100; }
.cms-site .cms-skip:focus { left: 0; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Phone menu and sticky call bar */
.cms-site .cms-menu-btn, .cms-site .cms-only-menu, .cms-site .cms-callbar { display: none; }
@media (max-width: 900px) {
  .cms-site header > div { gap: 12px; }
  .cms-site header > div > a:first-child { flex: 1 1 0; min-width: 0; gap: 10px; }
  .cms-site header > div > a:first-child > span > span:first-child { font-size: 16px; }
  .cms-site header > div > a:first-child > span > span:last-child { font-size: 12px; }
  html.js .cms-site .cms-menu-btn { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 14px; border: 1px solid #3A4156; border-radius: 4px; background: transparent; color: #FFFFFF; font-family: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
  html.js .cms-site #cms-nav { display: none; }
  html.js .cms-site #cms-nav.is-open { display: flex; }
  .cms-site #cms-nav { flex: 1 1 100%; flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 0; font-size: 17px; }
  .cms-site #cms-nav > a { display: block; padding: 14px 0; border-top: 1px solid #262C3D; }
  .cms-site #cms-nav > a[href^="tel:"] { display: none; }
  .cms-site .cms-callbar { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; gap: 10px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px)); background: #0D111F; border-top: 1px solid #262C3D; box-shadow: 0 -6px 20px rgba(13, 17, 31, 0.25); }
  .cms-site .cms-callbar a { flex: 1 1 0; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; border-radius: 4px; font-weight: 700; font-size: 16px; text-decoration: none; }
  .cms-site .cms-callbar a:first-child { flex: 1.7 1 0; background: #FF6A00; color: #0D111F; }
  .cms-site .cms-callbar a:last-child { border: 2px solid #FFFFFF; color: #FFFFFF; }
  .cms-site footer { padding-bottom: calc(69px + env(safe-area-inset-bottom, 0px)); }
}
@media print { .cms-site .cms-callbar, .cms-site .cms-menu-btn { display: none !important; } }

/* Plain pages and blog posts (anything not built from the page designs) */
.cms-site .cms-prose-head { background: #0D111F; color: #FFFFFF; }
.cms-site .cms-prose-head > div { max-width: 800px; margin: 0 auto; padding: 72px 24px 64px; }
.cms-site .cms-prose-head h1 { margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(2.1rem, 4.4vw, 3.3rem); line-height: 1.1; letter-spacing: -0.01em; }
.cms-site .cms-prose-head p { margin: 16px 0 0; color: #AEB4C0; font-size: 15px; font-family: 'IBM Plex Mono', monospace; letter-spacing: 0.04em; }
.cms-site .cms-prose { max-width: 800px; margin: 0 auto; padding: 64px 24px 96px; }
.cms-site .cms-prose > * { margin-top: 0; margin-bottom: 1.25em; }
.cms-site .cms-prose h2, .cms-site .cms-prose h3, .cms-site .cms-prose h4 { font-family: 'Playfair Display', Georgia, serif; font-weight: 600; line-height: 1.2; margin-top: 1.8em; margin-bottom: 0.6em; }
.cms-site .cms-prose h2 { font-size: 1.9rem; }
.cms-site .cms-prose h3 { font-size: 1.45rem; }
.cms-site .cms-prose a { color: #B84A00; text-decoration: underline; }
.cms-site .cms-prose img { height: auto; border-radius: 6px; }
.cms-site .cms-prose ul, .cms-site .cms-prose ol { padding-left: 1.4em; }
.cms-site .cms-prose li { margin-bottom: 0.4em; }
.cms-site .cms-prose blockquote { margin-left: 0; margin-right: 0; padding-left: 20px; border-left: 3px solid #FF6A00; color: #4B5563; }
.cms-site .cms-post-list { max-width: 800px; margin: 0 auto; padding: 64px 24px 96px; display: flex; flex-direction: column; gap: 24px; }
.cms-site .cms-post-card { border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; }
.cms-site .cms-post-card h2 { margin: 0 0 8px; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 1.5rem; line-height: 1.2; }
.cms-site .cms-post-card p { margin: 0; color: #4B5563; font-size: 16px; }
.cms-site .cms-post-card .cms-post-date { font-family: 'IBM Plex Mono', monospace; font-size: 13px; color: #6B7280; margin-bottom: 10px; }
.cms-site .cms-pagination { max-width: 800px; margin: 0 auto; padding: 0 24px 96px; display: flex; justify-content: space-between; font-weight: 600; color: #B84A00; }

.cms-site .cms-prose .wp-block-image { margin-left: 0; margin-right: 0; }
.cms-site .cms-prose .wp-block-image img { display: block; width: 100%; }
.cms-site .cms-prose .cms-post-photo { margin: 0 0 1.75em; }
.cms-site .cms-prose .cms-post-photo img { display: block; width: 100%; height: auto; border-radius: 6px; }
.cms-site .cms-post-cta { background: #0D111F; color: #FFFFFF; }
.cms-site .cms-post-cta > div { max-width: 800px; margin: 0 auto; padding: 72px 24px; }
.cms-site .cms-post-cta h2 { margin: 0 0 14px; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(1.9rem, 3.2vw, 2.75rem); line-height: 1.15; }
.cms-site .cms-post-cta p { margin: 0 0 14px; color: #D5D9E2; }
.cms-site .cms-post-cta .cms-post-cta-eyebrow { font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #FF6A00; }
.cms-site .cms-post-cta .cms-post-cta-buttons { display: flex; flex-wrap: wrap; gap: 14px; margin: 24px 0 0; }
.cms-site .cms-post-cta-buttons a { padding: 16px 26px; border-radius: 4px; font-weight: 700; font-size: 17px; text-decoration: none; }
.cms-site .cms-post-cta-call { background: #FF6A00; color: #0D111F; }
.cms-site .cms-post-cta-text { border: 2px solid #FFFFFF; color: #FFFFFF; padding: 14px 26px !important; }

/* Generated from the approved page designs: one class per distinct style */

.cms-site .cms-1 { background: #0D111F; color: #FFFFFF; border-bottom: 1px solid #262C3D; }
.cms-site .cms-2 { max-width: 1200px; margin: 0 auto; padding: 16px 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; }
.cms-site .cms-3 { display: flex; align-items: center; gap: 14px; }
.cms-site .cms-4 { width: 44px; height: 51px; object-fit: contain; }
.cms-site .cms-5 { display: flex; flex-direction: column; gap: 2px; }
.cms-site .cms-6 { font-family: 'Playfair Display', Georgia, serif; font-size: 21px; font-weight: 600; line-height: 1.15; }
.cms-site .cms-7 { font-size: 13px; color: #FF6A00; line-height: 1.2; }
.cms-site .cms-8 { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 28px; font-size: 15px; font-weight: 500; }
.cms-site .cms-9 { padding: 12px 0; }
.cms-site .cms-10 { background: #FF6A00; color: #0D111F; padding: 12px 20px; border-radius: 4px; font-weight: 700; font-family: 'IBM Plex Mono', monospace; font-size: 15px; }
.cms-site .cms-11 { background: #FF6A00; color: #0D111F; padding: 10px 24px; text-align: center; font-size: 15px; font-weight: 600; }
.cms-site .cms-12 { background: #0D111F; color: #FFFFFF; }
.cms-site .cms-13 { max-width: 1200px; margin: 0 auto; padding: 72px 24px 32px; display: flex; flex-direction: column; gap: 48px; }
.cms-site .cms-14 { display: flex; flex-wrap: wrap; gap: 40px 56px; }
.cms-site .cms-15 { flex: 2 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-16 { width: 40px; height: 47px; object-fit: contain; }
.cms-site .cms-17 { margin: 0; font-size: 15px; color: #AEB4C0; }
.cms-site .cms-18 { margin: 0; font-size: 15px; color: #D5D9E2; }
.cms-site .cms-19 { font-family: 'IBM Plex Mono', monospace; color: #FF6A00; font-weight: 600; }
.cms-site .cms-20 { flex: 1 1 170px; min-width: 0; display: flex; flex-direction: column; gap: 10px; font-size: 15px; }
.cms-site .cms-21 { font-family: 'IBM Plex Mono', monospace; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: #AEB4C0; }
.cms-site .cms-22 { border-top: 1px solid #262C3D; padding-top: 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 32px; font-size: 14px; color: #AEB4C0; }
.cms-site .cms-23 { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.cms-site .cms-24 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #FF6A00; }
.cms-site .cms-25 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(2.4rem, 5vw, 4.1rem); line-height: 1.08; letter-spacing: -0.01em; }
.cms-site .cms-26 { margin: 0; margin: 0; font-size: 1.2rem; line-height: 1.6; color: #D5D9E2; max-width: 34em; }
.cms-site .wp-block-button.cms-27 { margin: 0; }
.cms-site .wp-block-button.cms-27 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; background: #FF6A00; color: #0D111F; padding: 16px 26px; border-radius: 4px; font-weight: 700; font-size: 17px; }
.cms-site .wp-block-button.cms-28 { margin: 0; }
.cms-site .wp-block-button.cms-28 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; border: 2px solid #FFFFFF; color: #FFFFFF; padding: 14px 26px; border-radius: 4px; font-weight: 700; font-size: 17px; }
.cms-site .cms-29 { box-sizing: content-box; margin: 0; display: flex; flex-wrap: wrap; gap: 14px; margin-top: 8px; }
.cms-site .cms-30 { margin: 0; margin: 0; font-size: 15px; color: #AEB4C0; }
.cms-site .cms-31 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.cms-site figure.cms-32 { margin: 0; flex: 1 1 400px; min-width: 0; margin: 0; display: flex; flex-direction: column; }
.cms-site figure.cms-32 img { height: auto; max-width: none; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 6px 6px 0 0; display: block; }
.cms-site figure.cms-32 figcaption { margin: 0; text-align: left; background: #FF6A00; color: #0D111F; padding: 12px 18px; border-radius: 0 0 6px 6px; font-family: 'IBM Plex Mono', monospace; font-size: 13px; font-weight: 600; letter-spacing: 0.04em; }
.cms-site .cms-33 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 88px 24px 96px; display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
.cms-site .cms-34 { box-sizing: content-box; background: #0D111F; color: #FFFFFF; }
.cms-site .cms-35 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 30px; font-weight: 600; line-height: 1.2; }
.cms-site .cms-36 { margin: 0; font-size: 15px; color: #4B5563; }
.cms-site .cms-37 { box-sizing: content-box; flex: 1 1 200px; display: flex; flex-direction: column; gap: 2px; }
.cms-site .cms-38 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 36px 24px; display: flex; flex-wrap: wrap; gap: 28px 40px; }
.cms-site .cms-39 { box-sizing: content-box; background: #F3F4F6; border-bottom: 1px solid #E2E5EA; }
.cms-site .cms-40 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; color: #B84A00; }
.cms-site .cms-41 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(1.9rem, 3.2vw, 2.75rem); line-height: 1.15; }
.cms-site .cms-42 { margin: 0; margin: 0; color: #4B5563; }
.cms-site .cms-43 { box-sizing: content-box; display: flex; flex-direction: column; gap: 14px; max-width: 720px; }
.cms-site .cms-44 { width: 48px; height: 48px; background: #0D111F; border-radius: 4px; display: flex; align-items: center; justify-content: center; }
.cms-site .cms-45 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; color: #6B7280; }
.cms-site .cms-46 { box-sizing: content-box; display: flex; align-items: center; justify-content: space-between; }
.cms-site .cms-47 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 24px; line-height: 1.2; }
.cms-site .cms-48 { margin: 0; margin: 0; color: #4B5563; font-size: 16px; }
.cms-site .cms-49 { margin: 0; margin-top: auto; font-weight: 600; font-size: 15px; color: #B84A00; }
.cms-site .cms-50 { box-sizing: content-box; flex: 1 1 320px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-51 { width: 48px; height: 48px; background: #FF6A00; border-radius: 4px; display: flex; align-items: center; justify-content: center; }
.cms-site .cms-52 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; color: #AEB4C0; }
.cms-site .cms-53 { margin: 0; margin: 0; color: #D5D9E2; font-size: 16px; }
.cms-site .cms-54 { margin: 0; margin-top: auto; font-weight: 600; font-size: 15px; color: #FF6A00; padding: 12px 0; }
.cms-site .cms-55 { box-sizing: content-box; flex: 1 1 320px; min-width: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-56 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 24px; }
.cms-site .cms-57 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 96px 24px; display: flex; flex-direction: column; gap: 48px; }
.cms-site .cms-58 { box-sizing: content-box; background: #FFFFFF; }
.cms-site .cms-59 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 14px; color: #FF6A00; }
.cms-site .cms-60 { box-sizing: content-box; flex: 1 1 300px; min-width: 0; border-top: 2px solid #FF6A00; padding-top: 24px; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-61 { box-sizing: content-box; margin: 0; list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 24px; }
.cms-site .cms-62 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 26px; line-height: 1.2; color: #4B5563; }
.cms-site .cms-63 { margin: 0; display: flex; gap: 14px; align-items: flex-start; }
.cms-site .cms-63::before { content: ""; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg fill=%22none%22 height=%2222%22 stroke=%22%236B7280%22 stroke-linecap=%22round%22 stroke-width=%222%22 viewBox=%220 0 24 24%22 width=%2222%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath d=%22M6 6l12 12M18 6L6 18%22%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; flex: none; margin-top: 3px; }
.cms-site .cms-64 { margin: 0; box-sizing: content-box; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; color: #4B5563; }
.cms-site .cms-65 { box-sizing: content-box; flex: 1 1 340px; min-width: 0; background: #F3F4F6; border-radius: 6px; padding: 40px; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-66 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 26px; line-height: 1.2; }
.cms-site .cms-67 { color: #FF6A00; }
.cms-site .cms-68 { margin: 0; display: flex; gap: 14px; align-items: flex-start; }
.cms-site .cms-68::before { content: ""; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg fill=%22none%22 height=%2222%22 stroke=%22%23FF6A00%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-width=%222.2%22 viewBox=%220 0 24 24%22 width=%2222%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath d=%22M5 12.5l4.5 4.5L19 7.5%22%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; flex: none; margin-top: 3px; }
.cms-site .cms-69 { margin: 0; box-sizing: content-box; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.cms-site .cms-70 { box-sizing: content-box; flex: 1 1 340px; min-width: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 40px; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-71 { margin: 0; font-weight: 600; color: #B84A00; padding: 10px 0; }
.cms-site .cms-72 { box-sizing: content-box; flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-73 { margin: 0; margin: 0; font-size: 18px; font-weight: 700; }
.cms-site .cms-74 { box-sizing: content-box; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 6px; }
.cms-site .cms-75 { box-sizing: content-box; flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.cms-site .cms-76 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 96px 24px; display: flex; flex-wrap: wrap; gap: 56px; align-items: center; }
.cms-site .cms-77 { box-sizing: content-box; background: #F3F4F6; }
.cms-site .cms-78 { box-sizing: content-box; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; }
.cms-site blockquote.cms-79 { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 24px; }
.cms-site blockquote.cms-79 p { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: clamp(1.3rem, 2.1vw, 1.7rem); line-height: 1.4; }
.cms-site blockquote.cms-79 cite { display: block; font-style: normal; font-size: 15px; color: #AEB4C0; }
.cms-site .cms-80 { box-sizing: content-box; flex: 2 1 420px; min-width: 0; margin: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 44px; display: flex; flex-direction: column; gap: 24px; }
.cms-site blockquote.cms-81 { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 16px; }
.cms-site blockquote.cms-81 p { margin: 0; margin: 0; font-size: 16px; color: #4B5563; }
.cms-site blockquote.cms-81 cite { display: block; font-style: normal; font-size: 15px; color: #4B5563; font-weight: 600; }
.cms-site .cms-82 { box-sizing: content-box; flex: 1 1 260px; min-width: 0; margin: 0; background: #F3F4F6; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 16px; }
.cms-site .cms-83 { margin: 0; margin: 0; color: #D5D9E2; }
.cms-site .cms-84 { margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: 24px; font-weight: 600; }
.cms-site .cms-85 { margin: 0; margin-top: 10px; font-weight: 600; font-size: 15px; color: #FF6A00; }
.cms-site .cms-86 { box-sizing: content-box; flex: 1 1 240px; min-width: 0; border: 1px solid #3A4156; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 6px; }
.cms-site .cms-87 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 16px; }
.cms-site .cms-88 { color: #FFFFFF; font-weight: 600; text-decoration: underline; }
.cms-site .cms-89 { box-sizing: content-box; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-90 { margin: 0; margin: 0; font-size: 19px; font-weight: 700; }
.cms-site .cms-91 { box-sizing: content-box; border-top: 1px solid #E2E5EA; padding: 26px 0; display: flex; flex-direction: column; gap: 8px; }
.cms-site .cms-92 { box-sizing: content-box; border-top: 1px solid #E2E5EA; border-bottom: 1px solid #E2E5EA; padding: 26px 0; display: flex; flex-direction: column; gap: 8px; }
.cms-site .cms-93 { box-sizing: content-box; display: flex; flex-direction: column; }
.cms-site .cms-94 { box-sizing: content-box; max-width: 860px; margin: 0 auto; padding: 96px 24px; display: flex; flex-direction: column; gap: 40px; }
.cms-site .cms-95 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 600; }
.cms-site .cms-96 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 700; font-size: clamp(2.2rem, 4.4vw, 3.6rem); line-height: 1.08; }
.cms-site .cms-97 { margin: 0; margin: 0; font-size: 1.1rem; max-width: 30em; }
.cms-site .cms-98 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.cms-site .wp-block-button.cms-99 { margin: 0; }
.cms-site .wp-block-button.cms-99 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; background: #0D111F; color: #FFFFFF; padding: 16px 26px; border-radius: 4px; font-weight: 700; font-size: 17px; }
.cms-site .wp-block-button.cms-100 { margin: 0; }
.cms-site .wp-block-button.cms-100 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; border: 2px solid #0D111F; color: #0D111F; padding: 14px 26px; border-radius: 4px; font-weight: 700; font-size: 17px; }
.cms-site .cms-101 { box-sizing: content-box; margin: 0; display: flex; flex-wrap: wrap; gap: 14px; }
.cms-site .cms-102 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 80px 24px; display: flex; flex-wrap: wrap; gap: 32px 48px; align-items: center; justify-content: space-between; }
.cms-site .cms-103 { box-sizing: content-box; background: #FF6A00; color: #0D111F; }
.cms-site .cms-104 { padding: 8px 0; }
.cms-site .cms-105 { padding: 8px 0; color: #FFFFFF; }
.cms-site .cms-106 { margin: 0; display: flex; flex-wrap: wrap; gap: 10px; font-size: 14px; color: #AEB4C0; }
.cms-site .cms-107 { box-sizing: content-box; display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
.cms-site .cms-108 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 28px 24px 96px; display: flex; flex-direction: column; gap: 48px; }
.cms-site .cms-109 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; color: #6B7280; }
.cms-site .cms-110 { margin: 0; margin: 0; color: #0D111F; font-size: 16px; }
.cms-site .cms-111 { margin: 0; margin-top: auto; padding-top: 6px; font-weight: 600; font-size: 15px; color: #B84A00; }
.cms-site .cms-112 { box-sizing: content-box; flex: 1 1 440px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-113 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; color: #AEB4C0; }
.cms-site .cms-114 { box-sizing: content-box; flex: 1 1 440px; min-width: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-115 { margin: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 999px; padding: 10px 18px; font-weight: 600; font-size: 16px; }
.cms-site .cms-116 { margin: 0; box-sizing: content-box; list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.cms-site .cms-117 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 96px 24px; display: flex; flex-direction: column; gap: 40px; }
.cms-site .cms-118 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-119 { margin: 0; flex: 0 0 150px; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; color: #6B7280; padding-top: 3px; }
.cms-site .cms-120 { margin: 0; flex: 1 1 240px; min-width: 0; margin: 0; }
.cms-site .cms-121 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 4px 24px; padding: 22px 28px; border-bottom: 1px solid #E2E5EA; }
.cms-site .cms-122 { color: #B84A00; font-weight: 600; text-decoration: underline; }
.cms-site .cms-123 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 4px 24px; padding: 22px 28px; }
.cms-site .cms-124 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; margin: 0; border: 1px solid #E2E5EA; border-radius: 6px; display: flex; flex-direction: column; }
.cms-site .cms-125 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 96px 24px; display: flex; flex-wrap: wrap; gap: 56px; align-items: flex-start; }
.cms-site blockquote.cms-126 { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 24px; }
.cms-site blockquote.cms-126 p { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: clamp(1.3rem, 2.2vw, 1.8rem); line-height: 1.4; }
.cms-site blockquote.cms-126 cite { display: block; font-style: normal; font-size: 15px; color: #AEB4C0; }
.cms-site .cms-127 { box-sizing: content-box; max-width: 900px; margin: 0 auto; padding: 88px 24px; display: flex; flex-direction: column; gap: 24px; }
.cms-site .cms-128 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(1.6rem, 2.6vw, 2.1rem); line-height: 1.2; }
.cms-site .cms-129 { margin: 0; margin: 0; color: #4B5563; max-width: 46em; }
.cms-site .cms-130 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 88px 24px; display: flex; flex-direction: column; gap: 24px; }
.cms-site .cms-131 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 700; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.08; }
.cms-site .cms-132 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.cms-site .wp-block-button.cms-133 { margin: 0; }
.cms-site .wp-block-button.cms-133 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; background: #0D111F; color: #FFFFFF; padding: 18px 30px; border-radius: 4px; font-weight: 700; font-size: 18px; }
.cms-site .cms-134 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: clamp(2.3rem, 4.6vw, 3.7rem); line-height: 1.08; letter-spacing: -0.01em; }
.cms-site .cms-135 { box-sizing: content-box; flex: 1 1 340px; min-width: 0; border: 1px solid #E2E5EA; border-radius: 6px; padding: 24px 28px; display: flex; flex-direction: column; gap: 4px; }
.cms-site .cms-136 { box-sizing: content-box; margin: 0; list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 16px; }
.cms-site .cms-137 { margin: 0; margin: 0; flex: 1 1 420px; min-width: 0; font-size: 17px; }
.cms-site .wp-block-button.cms-138 { margin: 0; }
.cms-site .wp-block-button.cms-138 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; background: #FF6A00; color: #0D111F; padding: 14px 22px; border-radius: 4px; font-weight: 700; font-size: 16px; }
.cms-site .cms-139 { box-sizing: content-box; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 28px 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 40px; }
.cms-site .cms-140 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 22px; line-height: 1.2; }
.cms-site .cms-141 { box-sizing: content-box; flex: 1 1 250px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.cms-site .cms-142 { box-sizing: content-box; flex: 1 1 300px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.cms-site .cms-143 { color: #0D111F; }
.cms-site .cms-144 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 88px 24px; display: flex; flex-direction: column; gap: 40px; }
.cms-site .cms-145 { box-sizing: content-box; flex: 0 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.cms-site .cms-146 { margin: 0; margin: 0; flex: 1 1 420px; min-width: 0; color: #4B5563; font-size: 16px; }
.cms-site .cms-147 { box-sizing: content-box; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px 32px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 40px; }
.cms-site figure.cms-148 { margin: 0; display: flex; flex: 1 1 380px; min-width: 0; min-height: 300px; align-self: stretch; }
.cms-site figure.cms-148 img { flex: 1 1 auto; width: 100%; min-width: 0; height: auto; max-width: none; display: block; object-fit: cover; }
.cms-site .cms-149 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; box-sizing: border-box; padding: 40px; display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.cms-site .cms-150 { box-sizing: content-box; margin: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; overflow: hidden; display: flex; flex-wrap: wrap; }
.cms-site .cms-151 { margin: 0; margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #FF6A00; }
.cms-site .cms-152 { margin: 0; padding: 14px 0; border-top: 1px solid #262C3D; font-family: 'Playfair Display', Georgia, serif; font-size: 21px; }
.cms-site .cms-153 { margin: 0; padding: 14px 0; border-top: 1px solid #262C3D; border-bottom: 1px solid #262C3D; font-family: 'Playfair Display', Georgia, serif; font-size: 21px; }
.cms-site .cms-154 { margin: 0; box-sizing: content-box; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cms-site .cms-155 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; box-sizing: border-box; border: 1px solid #3A4156; border-radius: 6px; padding: 36px; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-156 { margin: 0; margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: #6B7280; }
.cms-site .cms-157 { margin: 0; margin: 0; color: #B84A00; font-size: 14px; font-weight: 600; }
.cms-site .cms-158 { margin: 0; margin: 0; color: #4B5563; font-size: 15px; }
.cms-site .cms-159 { margin: 0; margin-top: auto; padding-top: 8px; font-weight: 600; font-size: 15px; color: #B84A00; }
.cms-site .cms-160 { box-sizing: content-box; flex: 1 1 300px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 8px; }
.cms-site .cms-161 { box-sizing: content-box; display: flex; flex-direction: column; gap: 16px; }
.cms-site .cms-162 { box-sizing: content-box; flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.cms-site .cms-163 { box-sizing: content-box; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 32px; display: flex; flex-wrap: wrap; gap: 20px 40px; align-items: center; justify-content: space-between; }
.cms-site .cms-164 { box-sizing: content-box; flex: 1 1 300px; min-width: 0; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 10px; }
.cms-site .cms-165 { margin: 0; font-weight: 600; font-size: 15px; color: #FF6A00; padding: 12px 0; }
.cms-site .cms-166 { margin: 0; margin-top: 10px; font-weight: 600; font-size: 15px; color: #B84A00; }
.cms-site .cms-167 { box-sizing: content-box; flex: 1 1 300px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 6px; }
.cms-site .cms-168 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; box-sizing: border-box; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 40px; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-169 { box-sizing: content-box; flex: 1 1 260px; min-width: 0; box-sizing: border-box; background: #0D111F; color: #FFFFFF; border-radius: 6px; padding: 40px; display: flex; flex-direction: column; gap: 14px; }
.cms-site .cms-170 { margin: 0; flex: 0 0 140px; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; color: #AEB4C0; padding-top: 3px; }
.cms-site .cms-171 { margin: 0; flex: 1 1 180px; min-width: 0; margin: 0; font-weight: 600; }
.cms-site .cms-172 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 4px 24px; padding: 14px 0; border-top: 1px solid #262C3D; }
.cms-site .cms-173 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 4px 24px; padding: 14px 0; border-top: 1px solid #262C3D; border-bottom: 1px solid #262C3D; }
.cms-site .cms-174 { box-sizing: content-box; margin: 0; display: flex; flex-direction: column; }
.cms-site .cms-175 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; }
.cms-site figure.cms-176 { margin: 0; display: flex; flex: 1 1 380px; min-width: 0; min-height: 380px; align-self: stretch; }
.cms-site figure.cms-176 img { flex: 1 1 auto; width: 100%; min-width: 0; height: auto; max-width: none; display: block; object-fit: cover; object-position: 20% 10%; }
.cms-site blockquote.cms-177 { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 20px; }
.cms-site blockquote.cms-177 p { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: clamp(1.15rem, 1.7vw, 1.4rem); line-height: 1.45; }
.cms-site blockquote.cms-177 cite { display: block; font-style: normal; font-size: 15px; color: #AEB4C0; }
.cms-site .cms-178 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; margin: 0; display: flex; flex-direction: column; gap: 20px; }
.cms-site .cms-179 { box-sizing: content-box; display: flex; flex-wrap: wrap; gap: 40px 56px; }
.cms-site .cms-180 { margin: 0; font-weight: 600; color: #FF6A00; padding: 10px 0; }
.cms-site .cms-181 { box-sizing: content-box; flex: 1 1 200px; min-width: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 28px; display: flex; flex-direction: column; gap: 6px; }
.cms-site .cms-182 { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 6rem; line-height: 1; }
.cms-site .cms-183 { margin: 0; margin: 0; font-size: 1.2rem; font-weight: 600; }
.cms-site .cms-184 { box-sizing: content-box; flex: 1 1 380px; min-width: 0; box-sizing: border-box; border: 1px solid #3A4156; border-radius: 6px; padding: 36px; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-185 { margin: 0; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; color: #B84A00; }
.cms-site blockquote.cms-186 { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: 16px; flex: 1 1 auto; }
.cms-site blockquote.cms-186 p { margin: 0; margin: 0; font-family: 'Playfair Display', Georgia, serif; font-size: 1.2rem; line-height: 1.5; }
.cms-site blockquote.cms-186 cite { display: block; font-style: normal; margin-top: auto; font-size: 15px; color: #6B7280; }
.cms-site .cms-187 { box-sizing: content-box; flex: 1 1 440px; min-width: 0; box-sizing: border-box; margin: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; padding: 32px; display: flex; flex-direction: column; gap: 16px; }
.cms-site .cms-188 { margin: 0; margin: 0; color: #D5D9E2; max-width: 34em; }
.cms-site .wp-block-button.cms-189 { margin: 0; }
.cms-site .wp-block-button.cms-189 .wp-block-button__link { background: transparent; display: inline-block; text-decoration: none; line-height: inherit; width: auto; height: auto; background: #FF6A00; color: #0D111F; padding: 18px 30px; border-radius: 4px; font-weight: 700; font-size: 18px; }
.cms-site .cms-190 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 88px 24px; display: flex; flex-wrap: wrap; gap: 32px 48px; align-items: center; justify-content: space-between; }
.cms-site .cms-191 { box-sizing: content-box; max-width: 860px; margin: 0 auto; padding: 88px 24px; display: flex; flex-direction: column; gap: 40px; }
.cms-site .cms-192 { display: inline-block; text-decoration: underline; }
.cms-site .cms-193 { text-decoration: underline; }
.cms-site .cms-194 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; margin: 0; background: #FFFFFF; border: 1px solid #E2E5EA; border-radius: 6px; display: flex; flex-direction: column; }
.cms-site .cms-195 { box-sizing: content-box; display: flex; flex-direction: column; gap: 24px; max-width: 820px; }
.cms-site .cms-196 { box-sizing: content-box; max-width: 1200px; margin: 0 auto; padding: 28px 24px 88px; display: flex; flex-direction: column; gap: 48px; }
.cms-site .cms-197 { margin: 0; }
.cms-site .cms-198 { margin: 0; box-sizing: content-box; margin: 0; padding-left: 22px; color: #4B5563; display: flex; flex-direction: column; gap: 8px; }
.cms-site .cms-199 { box-sizing: content-box; border-top: 1px solid #E2E5EA; padding: 28px 0; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-200 { box-sizing: content-box; border-top: 1px solid #E2E5EA; border-bottom: 1px solid #E2E5EA; padding: 28px 0; display: flex; flex-direction: column; gap: 12px; }
.cms-site .cms-201 { margin: 0; flex: 0 0 190px; font-family: 'IBM Plex Mono', monospace; font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; color: #6B7280; padding-top: 3px; }
.cms-site .cms-202 { margin: 0; margin: 0; }
.cms-site .cms-203 { box-sizing: content-box; flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 20px; }
