/*
Theme Name: GharMubarak Review
Description: Editorial launch and property portal layouts for GharMubarak. Astra child theme.
Version: 1.10.0
Template: astra
Requires at least: 6.8
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: gharmubarak-review
*/

/* Shared foundations. Component rules precede all responsive overrides. */
html { font-size:100%; }
.gm-design { --gm-ink:#122d3b; --gm-body:#48606f; --gm-teal:#087f83; --gm-teal-dark:#066569; --gm-line:#dce5e8; --gm-soft:#f1f6f7; --gm-paper:#f8faf9; background:var(--gm-paper); color:var(--gm-body); font:1rem/1.7 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.gm-site, .gm-site * { box-sizing:border-box; }
.gm-site [hidden] { display:none !important; }
.gm-site a { color:var(--gm-teal); text-underline-offset:.22em; }
.gm-site a:hover { color:var(--gm-teal-dark); }
.gm-site :focus-visible { outline:3px solid var(--gm-teal); outline-offset:4px; }
.gm-site h1, .gm-site h2, .gm-site h3, .gm-site h4 { color:var(--gm-ink); font-family:inherit; font-weight:650; overflow-wrap:anywhere; }
.gm-site h1 { font-size:clamp(2rem,3.8vw,3.15rem); line-height:1.15; letter-spacing:-.045em; }
.gm-site h2 { font-size:clamp(1.5rem,2.3vw,2rem); line-height:1.25; letter-spacing:-.035em; }
.gm-site h3 { font-size:1.3rem; line-height:1.4; }
.gm-site p { margin:0 0 1.25em; }
.gm-site img { height:auto; max-width:100%; }
.gm-site #content { background:linear-gradient(180deg,#f2f7f6 0,#fff 900px); padding:0; margin:0; }
.gm-site #content > .ast-container, .gm-header-inner, .gm-footer-inner, .gm-footer-bottom { width:calc(100% - 4rem); max-width:1240px; margin-inline:auto; }
.gm-site #content > .ast-container { padding:0; display:block; }
.gm-site #primary { float:none; width:100%; min-width:0; border:0; margin:0; padding:0; }
/* Astra's page-builder selector otherwise adds 60px above/below our templates. */
.gm-site #content #primary { margin-block:0; }
.gm-site .gm-home > article, .gm-site .gm-article, .gm-site .gm-page > article { padding:0; margin:0; border:0; background:transparent; }
.gm-site #primary.gm-home > article, .gm-site #primary.gm-single .gm-article, .gm-site #primary.gm-page > article { padding:0; margin:0; }
.gm-site .entry-content { overflow-wrap:break-word; }
.gm-site .entry-content > * { max-width:100%; }
.gm-site .entry-content a:not(.wp-element-button):not(.wp-block-post-featured-image a):not(.wp-block-post-title a):not(:where(.gm-properties a)) { text-decoration:underline; }
.gm-site .entry-content :is(h2,h3,h4) { margin-block:1.75em .65em; scroll-margin-top:2rem; }
.gm-site .entry-content :is(ul,ol) { margin:0 0 1.5em 1.3em; }
.gm-site .entry-content li + li { margin-top:.4em; }
.gm-site .entry-content figure { margin:1.6rem 0; }
.gm-site .entry-content figcaption { font-size:.875rem; color:#64748b; }
.gm-site .entry-content blockquote { border-left:3px solid var(--gm-teal); margin:2rem 0; padding:.3rem 0 .3rem 1.5rem; font-size:1.2rem; color:var(--gm-ink); }
.gm-site .entry-content .wp-block-table, .gm-site pre { overflow-x:auto; }
.gm-site .gm-eyebrow { color:var(--gm-teal); font-size:.7rem; font-weight:700; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; margin:0 0 .65rem; }

/* Compact masthead and navigation. The wordmark is the Home link. */
.gm-header { position:sticky; top:0; z-index:50; background:rgba(248,251,250,.97); border-bottom:1px solid #d6e3e2; transition:box-shadow .25s ease,background .25s ease; }
.gm-header-inner { position:relative; display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:1.5rem; align-items:center; min-height:90px; padding-block:.9rem; }
.gm-site .gm-brand { display:inline-flex; align-items:center; gap:.7rem; flex-shrink:0; font-size:1.85rem; line-height:1.2; font-weight:750; letter-spacing:-.055em; color:var(--gm-ink); text-decoration:none; white-space:nowrap; }
.gm-wordmark > span { color:var(--gm-teal); }
.gm-brand-period { margin-left:1px; }
.gm-brand-image { object-fit:contain; width:auto; max-width:200px; max-height:56px; }
.gm-site .gm-menu { list-style:none; margin:0; padding:0; display:flex; gap:.5rem; justify-content:flex-end; flex-wrap:wrap; }
.gm-menu li { position:relative; }
.gm-site .gm-menu a { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; font-size:.875rem; font-weight:600; line-height:1.4; color:var(--gm-ink); transition:color .18s ease; }
.gm-site .gm-menu a:hover { color:var(--gm-teal); }
.gm-site .gm-menu .current-menu-item > a { color:var(--gm-teal); }
.gm-menu .sub-menu { list-style:none; position:absolute; z-index:5; right:0; top:100%; min-width:220px; padding:.65rem 1rem; margin:0; background:#fff; border:1px solid var(--gm-line); border-radius:10px; opacity:0; visibility:hidden; transform:translateY(7px); box-shadow:0 16px 35px rgba(18,45,59,.12); transition:opacity .18s ease,transform .18s ease,visibility .18s; }
.gm-menu li:hover > .sub-menu, .gm-menu li:focus-within > .sub-menu { opacity:1; visibility:visible; transform:none; }
.gm-site .gm-menu-toggle { border:1px solid var(--gm-line); color:var(--gm-ink); border-radius:50%; background:transparent; padding:0; width:44px; height:44px; display:grid; place-items:center; cursor:pointer; }

/* Fluid by default. Proportional and custom modes keep the same centred frame. */
.gm-site #primary.gm-home { padding-top:1.25rem; }
.gm-site .gm-hero { position:relative; isolation:isolate; overflow:hidden; width:min(100%,var(--gm-hero-width,1240px)); height:clamp(360px,var(--gm-hero-viewport-vh,68vh),720px); height:clamp(360px,var(--gm-hero-viewport,68svh),720px); min-height:0; margin:0 auto; border-radius:8px; background:#142e3a; display:grid; place-items:center; }
.gm-site .gm-hero-height-custom { height:var(--gm-hero-desktop-height,520px); }
.gm-site .gm-hero-height-ratio { height:auto; aspect-ratio:var(--gm-hero-ratio,16/9); }
.gm-site .gm-hero-poster, .gm-site .gm-hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:var(--gm-hero-fit,cover); object-position:50% var(--gm-hero-position,60%); }
.gm-site .gm-hero-video { opacity:0; transition:opacity .35s ease; }
.gm-site .gm-hero-fit-contain .gm-hero-poster, .gm-site .gm-hero-fit-contain .gm-hero-video { object-position:center; }
.gm-site .gm-hero-has-frame .gm-hero-video { opacity:1; }
.gm-site .gm-hero-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(9,30,42,.14),rgba(9,30,42,.4) 55%,rgba(9,30,42,.18)); }
.gm-site .gm-hero-copy { position:relative; z-index:1; text-align:center; padding:2rem; max-width:100%; }
.gm-site .gm-hero-copy h1 { margin:0; font-size:clamp(2.5rem,6.6vw,5.8rem); font-weight:750; line-height:1.1; letter-spacing:-.055em; color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.18); }
.gm-site .gm-hero-copy p { margin:1rem auto 0; max-width:570px; color:#fff; font-size:1.1rem; line-height:1.6; }
.gm-site .gm-hero-toggle { position:absolute; right:1.15rem; bottom:1.15rem; z-index:2; width:44px; height:44px; min-height:44px; padding:0; border:1px solid rgba(255,255,255,.7); border-radius:50%; background:rgba(13,35,44,.75); color:#fff; display:grid; place-items:center; font-size:0; cursor:pointer; }
.gm-site .gm-hero-toggle::before { content:""; width:0; height:0; border-top:7px solid transparent; border-bottom:7px solid transparent; border-left:10px solid white; margin-left:3px; }
.gm-site .gm-hero-toggle[aria-label="Pause background video"]::before { width:11px; height:15px; border-top:0; border-bottom:0; border-left:4px solid white; border-right:4px solid white; margin-left:0; }
.gm-site .gm-hero-toggle:hover { background:#102f36; }
.gm-site .gm-hero-toggle:focus-visible { outline-color:#fff; }

/* Search is a compact, separate strip below the video at every screen size. */
.gm-site .gm-editorial-search { width:min(100%,var(--gm-hero-width,1240px)); margin:1rem auto 3.5rem; padding:1.5rem 1.65rem; display:grid; grid-template-columns:190px minmax(0,1fr); gap:1.5rem; align-items:center; background:#fff; border:1px solid var(--gm-line); border-radius:10px; box-shadow:0 8px 30px rgba(18,45,59,.045); }
.gm-site .gm-hero + .gm-editorial-search { margin-top:1rem; }
.gm-site .gm-discovery-form { display:flex; flex-wrap:wrap; align-items:flex-end; gap:.9rem; }
.gm-site .gm-discovery-keyword { flex:2 1 280px; min-width:0; }
.gm-site .gm-discovery-topic { flex:1 1 160px; min-width:0; }
.gm-site .gm-discovery-form label { display:block; font-weight:600; color:var(--gm-ink); font-size:.75rem; margin-bottom:.4rem; }
.gm-site .gm-discovery-form input[type="search"], .gm-site .gm-discovery-form select { width:100%; min-width:0; min-height:50px; border:1px solid #c9d8e0; border-radius:5px; background:white; color:var(--gm-ink); font:inherit; font-size:.9375rem; padding:.65rem .9rem; box-shadow:none; }
.gm-site .gm-discovery-form select { padding-right:2.5rem; }
.gm-site .gm-discovery-form button, .gm-site .gm-action-link, .gm-site .wp-block-button__link { display:inline-flex; justify-content:center; align-items:center; gap:1rem; min-height:50px; background:var(--gm-teal); color:#fff; border:0; border-radius:5px; padding:.75rem 1.25rem; font:inherit; font-size:.9375rem; font-weight:650; cursor:pointer; text-decoration:none; }
.gm-site .gm-discovery-form button:hover, .gm-site .gm-action-link:hover, .gm-site .wp-block-button__link:hover { background:var(--gm-teal-dark); color:#fff; }
.gm-site .gm-discovery-reset { margin:.8rem 0 0; font-size:.875rem; }
.gm-site .gm-search { display:flex; align-items:center; border:1px solid #cbd5e1; border-radius:5px; background:var(--gm-soft); margin:0; min-width:0; }
.gm-site .gm-search:focus-within { outline:2px solid var(--gm-teal); outline-offset:2px; }
.gm-site .gm-search input[type="search"] { flex:1; width:100%; min-width:0; border:0; background:transparent; color:var(--gm-ink); box-shadow:none; padding:.65rem .8rem; min-height:44px; font:inherit; font-size:.9375rem; }
.gm-site input::placeholder { color:#667985; opacity:1; }
.gm-site .gm-search input:focus { outline:none; }
.gm-site .gm-search button { flex-shrink:0; width:44px; height:44px; padding:10px; border:0; border-radius:3px; background:transparent; color:var(--gm-teal); display:grid; place-items:center; }
.gm-site .gm-search button:hover { background:#e8f3f1; }

/* Cards: hierarchy, aligned footers and restrained pointer/keyboard feedback. */
.gm-site .gm-section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:end; gap:.7rem 1.5rem; margin:0 0 1.25rem; }
.gm-site .gm-section-heading h2 { margin:0; font-size:clamp(1.6rem,2.5vw,2.05rem); font-weight:700; }
.gm-site .gm-section-heading .gm-eyebrow { margin:0 0 .4rem; }
.gm-site .gm-section-heading > a { display:inline-flex; align-items:center; gap:1rem; min-height:44px; font-size:.875rem; font-weight:600; text-decoration:none; }
.gm-site .gm-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.gm-site .gm-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:0; margin:0; border:1px solid var(--gm-line); border-radius:10px; background:#fff; overflow:hidden; box-shadow:0 4px 20px rgba(19,50,72,.04); transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.gm-site .gm-card-image { position:relative; display:grid; place-items:center; aspect-ratio:16/10; margin:0; overflow:hidden; background:#f0f4f4; }
.gm-site .gm-card-image img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; border-radius:0; transition:transform .4s ease; }
.gm-site .gm-card-image-fit-cover img { object-fit:cover; }
.gm-site .gm-card-body { flex:1; display:flex; flex-direction:column; padding:1.25rem 1.35rem 1rem; }
.gm-site .gm-card-topic { margin:0 0 .6rem; font-size:.65rem; letter-spacing:.1em; line-height:1.5; font-weight:700; color:var(--gm-teal); text-transform:uppercase; }
.gm-site .gm-card-title { font-weight:650; font-size:1.18rem; line-height:1.4; letter-spacing:-.025em; margin:0 0 .65rem; }
.gm-site .gm-card-title a { color:var(--gm-ink); text-decoration:none; }
.gm-site .gm-card-title a::after { content:""; position:absolute; inset:0; z-index:1; }
.gm-site .gm-card-title a:focus-visible { outline:none; }
.gm-site .gm-card:focus-within { outline:3px solid var(--gm-teal); outline-offset:4px; border-color:var(--gm-teal); }
.gm-site .gm-card-excerpt { font-size:.9rem; line-height:1.7; margin:0 0 1.25rem; }
.gm-site .gm-card-footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid #edf1f4; padding-top:.85rem; margin-top:auto; }
.gm-site .gm-meta { display:flex; flex-wrap:wrap; gap:.35rem 1.2rem; color:#5d727e; font-size:.75rem; line-height:1.6; }
.gm-site .gm-card-arrow { display:grid; place-items:center; color:var(--gm-teal); font-size:1.15rem; flex-shrink:0; width:34px; height:34px; border-radius:50%; transition:background .2s ease,transform .2s ease; }
.gm-site .gm-featured-count-1, .gm-site .gm-featured-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.gm-site .gm-featured-count-1 { grid-template-columns:minmax(0,1fr); }
.gm-site .gm-featured-count-1 .gm-card:has(.gm-card-image) { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
.gm-site .gm-featured-count-1 .gm-card-image { position:relative; aspect-ratio:auto; min-height:260px; }
.gm-site .gm-featured-count-1 .gm-card-image img { position:absolute; inset:0; height:100%; width:100%; }
.gm-site .gm-featured-count-1 .gm-card-image-fit-contain img { padding:1rem; }
.gm-site .gm-featured-count-1 .gm-card-body { padding:clamp(1.25rem,2.4vw,2rem); }
.gm-site .gm-featured-count-1 .gm-card-title { font-size:clamp(1.3rem,2.15vw,1.7rem); line-height:1.3; text-wrap:balance; }
.gm-site .gm-featured-count-1 .gm-card-excerpt { max-width:62ch; }
.gm-site .gm-featured-count-1 .gm-card:not(:has(.gm-card-image)) { max-width:860px; }
.gm-site .gm-editorial-featured, .gm-site .gm-editorial-latest { margin:2.75rem 0; }
.gm-site .gm-editorial-latest:last-child { margin-bottom:0; }
.gm-site .gm-topic-section { display:grid; grid-template-columns:1fr 2fr; align-items:center; gap:2rem; margin:3.5rem 0; padding:2.5rem; background:#edf4f3; border:1px solid #d9e5e3; border-radius:12px; }
.gm-site .gm-topic-section h2 { margin:0; }
.gm-site .gm-topic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; padding:0; margin:0; list-style:none; }
.gm-site .gm-topic-grid a { display:flex; align-items:center; justify-content:space-between; gap:.85rem; height:100%; min-height:68px; padding:1rem; border:1px solid #d9e5e3; background:#fff; border-radius:7px; text-decoration:none; font-size:.875rem; font-weight:600; overflow-wrap:anywhere; }
.gm-site .gm-topic-grid a:hover { border-color:var(--gm-teal); background:#eef8f7; }
.gm-site .gm-topic-grid .gm-topic-arrow { flex-shrink:0; }

/* Article canvas: readable measure with a useful, genuinely sticky rail. */
.gm-site #primary.gm-single, .gm-site #primary.gm-archive { padding-top:1.75rem; }
.gm-site .gm-breadcrumbs { display:flex; gap:.7rem; margin-bottom:2.1rem; font-size:.8125rem; }
.gm-site .gm-breadcrumbs a { text-decoration:none; }
.gm-site .gm-reading-layout { display:grid; grid-template-columns:minmax(0,820px) minmax(220px,280px); gap:clamp(2rem,4vw,3.5rem); justify-content:space-between; align-items:stretch; }
.gm-site .gm-article { min-width:0; }
.gm-site .gm-article-header { padding:clamp(1.25rem,2.5vw,2.25rem); margin-bottom:2rem; border:1px solid var(--gm-line); border-top:3px solid var(--gm-teal); border-radius:0 0 12px 12px; background:linear-gradient(125deg,#e9f3f1,#f7f9fa); }
.gm-site .gm-article-header h1 { font-size:clamp(2rem,3.2vw,2.8rem); margin:0 0 1.3rem; line-height:1.17; text-wrap:balance; }
.gm-site .gm-article-header .gm-meta { font-size:.8125rem; }
.gm-site .gm-reading-time { font-size:.75rem; color:#647783; margin:.6rem 0 0; }
.gm-site .gm-article-image { margin:0 0 2rem; }
.gm-site .gm-article-image img { display:block; width:100%; border-radius:6px; }
.gm-site .gm-article-content { font-size:1.125rem; line-height:1.85; }
.gm-site .gm-article-content > :first-child { margin-top:0 !important; }
.gm-site .gm-article-content img { height:auto; object-fit:contain; }
.gm-site .gm-article-content > p:first-child { color:var(--gm-ink); }
.gm-site .gm-article-sidebar { min-width:0; padding-top:.25rem; font-size:.9375rem; }
.gm-site .gm-sidebar-inner { position:sticky; top:calc(var(--gm-header-height,76px) + var(--gm-admin-height,0px) + 1.5rem); display:grid; gap:1.75rem; max-height:calc(100svh - var(--gm-header-height,76px) - var(--gm-admin-height,0px) - 3rem); overflow-y:auto; scrollbar-width:thin; }
.gm-site .gm-toc { padding:1.45rem; border:1px solid #264b58; border-top:2px solid #55b9b5; border-radius:0 0 10px 10px; background:#173a48; }
.gm-site .gm-article-sidebar h2 { font-size:1rem; margin:0 0 1rem; letter-spacing:-.015em; }
.gm-site .gm-toc ol { list-style:none; margin:0; padding:0; border-left:1px solid #416270; }
.gm-site .gm-toc li { margin:0; line-height:1.5; font-size:.8125rem; }
.gm-site .gm-toc a { display:block; padding:.55rem .9rem; color:#cbdfe4; text-decoration:none; border-left:2px solid transparent; margin-left:-1px; }
.gm-site .gm-toc a:hover, .gm-site .gm-toc a[aria-current="location"] { color:#fff; background:#24505c; border-left-color:#7fd7d0; }
.gm-site .gm-explore { background:var(--gm-soft); border:1px solid var(--gm-line); border-radius:6px; padding:1.3rem; }
.gm-site .gm-explore .gm-eyebrow { font-size:.65rem; }
.gm-site .gm-topics { display:flex; gap:.65rem 1.25rem; flex-wrap:wrap; list-style:none; padding:0; margin:1.25rem 0 0; font-size:.9375rem; }
.gm-site .gm-article-sidebar .gm-topics { display:block; margin:0 0 1rem; }
.gm-site .gm-article-sidebar .gm-topics li { margin:0; }
.gm-site .gm-article-sidebar .gm-topics a { display:inline-block; padding:.35rem 0; font-size:.8125rem; }
.gm-site .gm-text-link { display:inline-flex; align-items:center; gap:.8rem; min-height:44px; font-size:.8125rem; font-weight:600; }
.gm-site .gm-post-tags { padding-top:1.5rem; border-top:1px solid var(--gm-line); margin-top:2rem; font-size:.9375rem; }
.gm-site .gm-related { margin-top:3.5rem; border-top:1px solid var(--gm-line); padding-top:2.5rem; }
.gm-site .gm-share { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem 1rem; padding:1.25rem 0; margin-top:2rem; border-block:1px solid var(--gm-line); font-size:.875rem; }
.gm-site .gm-share > span:first-child { font-weight:600; color:var(--gm-ink); }
.gm-site .gm-share > a, .gm-site .gm-copy-link { display:inline-flex; align-items:center; min-height:44px; border:1px solid var(--gm-line); border-radius:5px; color:var(--gm-teal); background:#fff; padding:.55rem .85rem; font:inherit; text-decoration:none; cursor:pointer; }
.gm-site .gm-share > a:hover, .gm-site .gm-copy-link:hover { background:var(--gm-soft); border-color:var(--gm-teal); }
.gm-site .gm-share-manual { flex:0 1 100%; }
.gm-site .gm-share-manual summary { cursor:pointer; padding:.65rem 0; }
.gm-site .gm-share-manual input { width:100%; min-height:44px; padding:.6rem; background:var(--gm-soft); border:1px solid var(--gm-line); border-radius:5px; font:inherit; color:var(--gm-ink); }

/* Archives, contact and retained property-mode presentation. */
.gm-site .gm-archive-heading { max-width:none; margin-bottom:2.25rem; padding-bottom:1.75rem; border-bottom:1px solid var(--gm-line); }
.gm-site .gm-archive-heading > p { max-width:720px; }
.gm-site .gm-archive-heading h1 { margin:0 0 1rem; }
.gm-site .gm-archive-heading p { margin-bottom:1rem; }
.gm-site .gm-archive-search { max-width:none; margin-top:1.4rem; padding:1.15rem 1.35rem; background:var(--gm-soft); border-radius:7px; border:1px solid var(--gm-line); }
.gm-site .navigation.pagination { border-top:0; padding:0; margin:2.5rem 0 0; }
.gm-site .nav-links { display:flex; flex-wrap:wrap; gap:.5rem; }
.gm-site .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; border:1px solid var(--gm-line); border-radius:5px; padding:.4rem .8rem; font-size:.9375rem; }
.gm-site .page-numbers.current { background:var(--gm-teal); border-color:var(--gm-teal); color:#fff; }
.gm-site #primary.gm-page { max-width:800px; margin-inline:auto; padding-top:3rem; }
.gm-site #primary.gm-directory-page { max-width:1240px; padding-top:2.3rem; }
.gm-site .gm-page-heading { margin-bottom:2rem; }
.gm-site .gm-empty { padding-block:3rem; }
.gm-site .gm-empty .gm-search { max-width:450px; margin:1.5rem 0; }
.gm-site .gm-properties .gm-property-directory-heading { max-width:none; padding:2.5rem 1.8rem 3.5rem; border-radius:10px; background:linear-gradient(90deg,rgba(239,246,251,.96),rgba(239,246,251,.8)),url("assets/hero-poster.png") center 62% / cover; }
.gm-site .gm-directory-page .gm-property-directory-heading + .gm-property-filters { position:relative; margin-top:-1.25rem; margin-inline:1.25rem; }
.gm-site #primary.gm-contact-page { max-width:1100px; }
.gm-site .gm-contact-heading { position:relative; isolation:isolate; overflow:hidden; max-width:none; margin-bottom:2rem; padding:clamp(1.75rem,4vw,3.25rem); border-radius:12px; background:linear-gradient(115deg,#173b49,#112c3d); color:#d2e2e8; }
.gm-site .gm-contact-heading h1 { color:#fff; margin:0 0 1rem; font-size:clamp(2.5rem,5vw,4rem); }
.gm-site .gm-contact-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr); gap:3rem; align-items:start; }
.gm-site .gm-contact-copy, .gm-site .gm-contact-help { padding:clamp(1.25rem,3vw,2rem); border:1px solid var(--gm-line); border-radius:10px; background:white; }
.gm-site .gm-contact-copy > :first-child { margin-top:0; }
.gm-site .gm-contact-help { background:var(--gm-soft); }
.gm-site .gm-contact-help h2 { font-size:1.4rem; }
.gm-site .gm-contact-help h3 { font-size:1.1rem; }
.gm-site .gm-contact-help p { font-size:.9375rem; }
.gm-site .gm-contact-help hr { background:var(--gm-line); margin:1.75rem 0; }
.gm-site .gm-editor-note { background:var(--gm-soft); border-left:3px solid var(--gm-teal); padding:.8rem; font-size:.85rem; margin:1.5rem 0 0; }
.gm-site .comments-area { max-width:800px; margin:3rem 0 0; border-top:1px solid var(--gm-line); padding:2rem 0 0; }
.gm-site .comments-title, .gm-site .comment-reply-title { font-size:1.5rem; }
.gm-site .comment-form input:not([type="submit"]):not([type="checkbox"]), .gm-site .comment-form textarea { border:1px solid #cbd5e1; border-radius:5px; font-size:1rem; background:var(--gm-soft); max-width:100%; }
.gm-site .comment-form input[type="submit"] { font-size:1rem; border-radius:5px; background:var(--gm-teal); color:#fff; }
.gm-site .comment-list { font-size:1rem; }

/* The dark footer anchors the same visual language in either launch mode. */
.gm-site .gm-footer { background:#132f40; border-top:3px solid var(--gm-teal); margin-top:3.5rem; color:#c7d7e2; }
.gm-footer-inner { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(160px,1fr) minmax(220px,1fr); padding-block:2.75rem; gap:3rem; align-items:start; }
.gm-site .gm-footer .gm-brand { color:white; font-size:1.75rem; }
.gm-site .gm-footer .gm-wordmark { color:#fff; }
.gm-site .gm-footer .gm-wordmark > span { color:#78d2cb; }
.gm-site .gm-footer p { margin:1rem 0 0; max-width:340px; font-size:.875rem; line-height:1.8; }
.gm-site .gm-footer h2 { color:white; font-size:.7rem; font-weight:650; letter-spacing:.1em; text-transform:uppercase; margin:0 0 1rem; }
.gm-site .gm-footer a { color:#d4e1ea; text-decoration:none; }
.gm-site .gm-footer a:hover { color:white; text-decoration:underline; }
.gm-site .gm-footer :focus-visible { outline-color:#66d0ce; }
.gm-site .gm-footer-links { list-style:none; padding:0; margin:0; display:grid; gap:.3rem; }
.gm-site .gm-footer-links a { display:inline-block; min-height:36px; padding:.25rem 0; font-size:.875rem; }
.gm-site .gm-footer-contact p { margin:0 0 .85rem; }
.gm-site .gm-footer-contact > a { display:inline-flex; align-items:center; justify-content:space-between; gap:1.75rem; min-height:44px; padding:.55rem .85rem; border:1px solid #5e8796; border-radius:5px; color:#fff; font-size:.875rem; text-decoration:none; }
.gm-site .gm-footer-contact > a:hover { background:#204556; border-color:#7bd0cf; }
.gm-site .gm-footer-legal { display:flex; gap:1.5rem; align-items:center; flex-wrap:wrap; }
.gm-site .gm-footer-legal a { display:inline-flex; align-items:center; min-height:44px; }
.gm-footer-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; border-top:1px solid #325060; padding-block:1rem; font-size:.75rem; }
.gm-footer-bottom > a { min-height:44px; display:inline-flex; align-items:center; gap:.8rem; }
.gm-site .gm-footer-extra { grid-column:1 / -1; padding-top:1rem; border-top:1px solid #325060; }
.gm-site .gm-footer-extra .gm-menu { justify-content:flex-start; }
.gm-site .gm-footer-extra .gm-menu a { color:#d4e1ea; }
.gm-design #ast-scroll-top { display:none !important; }

/* Legacy editable homepage blocks and portal article strip remain usable. */
.gm-site .gm-intro { max-width:790px; margin:0 0 2.6rem; }
.gm-site .gm-intro h1 { margin:0 0 .8rem; }
.gm-site .gm-intro p:not(.gm-eyebrow) { max-width:700px; margin:0; font-size:1.125rem; }
.gm-site .gm-feature { margin:0; padding-block:2rem; border-block:1px solid var(--gm-line); }
.gm-site .gm-feature .wp-block-post-template, .gm-site .gm-post-grid .wp-block-post-template { list-style:none; margin:0; padding:0; }
.gm-site .gm-feature-row:has(.wp-block-post-featured-image) { display:grid; grid-template-columns:1.15fr 1fr; gap:2rem; align-items:center; }
.gm-site .gm-feature-row > *, .gm-site .gm-feature-copy > * { margin-block-start:0; }
.gm-site .gm-feature .wp-block-post-featured-image { margin:0; }
.gm-site .gm-feature .wp-block-post-featured-image img, .gm-site .gm-post-grid .wp-block-post-featured-image img { width:100%; aspect-ratio:8/5; object-fit:cover; border-radius:5px; display:block; }
.gm-site .gm-feature .wp-block-post-title { font-size:clamp(1.5rem,2.7vw,2.2rem); line-height:1.25; margin:.75rem 0 1rem; }
.gm-site .gm-feature .wp-block-post-title a, .gm-site .gm-post-grid .wp-block-post-title a { color:var(--gm-ink); text-decoration:none; }
.gm-site .wp-block-post-date { font-size:.875rem; color:#586676; }
.gm-site .gm-feature .wp-block-post-excerpt, .gm-site .gm-post-grid .wp-block-post-excerpt { margin:0; font-size:1rem; }
.gm-site .wp-block-post-excerpt__more-text { margin:1rem 0 0; font-size:.9375rem; font-weight:600; }
.gm-site .gm-latest, .gm-site .gm-home-guides { margin-top:3rem; }
.gm-site .gm-home-guides { padding-top:2.5rem; border-top:1px solid var(--gm-line); }
.gm-site .gm-post-grid .wp-block-post-template { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.75rem; }
.gm-site .gm-post-grid .wp-block-post { margin:0; padding:0 0 1.5rem; border-bottom:1px solid var(--gm-line); min-width:0; }
.gm-site .gm-post-grid .wp-block-post-title { margin:.6rem 0 .85rem; font-size:1.3rem; line-height:1.4; }
.gm-site .gm-home-bottom { display:flex; justify-content:flex-end; margin:1.75rem 0 0; }
.gm-site .gm-home-content:empty { display:none; }
.gm-site .gm-home-content > :first-child { margin-top:2rem; }

/* Editorial identity: navy chapter breaks, architectural linework and quiet motion. */
.gm-design.admin-bar { --gm-admin-height:32px; }
.admin-bar .gm-header { top:var(--gm-admin-height); }
.gm-header-scrolled { box-shadow:0 5px 22px rgba(18,45,59,.09); }
.gm-site .gm-header-actions { display:flex; align-items:center; gap:.6rem; }
.gm-site .gm-header-discovery summary { display:flex; align-items:center; gap:.5rem; min-height:44px; padding:.5rem .9rem; border:1px solid var(--gm-line); border-radius:24px; color:var(--gm-ink); background:var(--gm-soft); font-size:.8125rem; font-weight:600; cursor:pointer; list-style:none; }
.gm-header-discovery summary::-webkit-details-marker { display:none; }
.gm-header-discovery summary svg { width:17px; height:17px; }
.gm-site .gm-header-discovery[open] summary { background:#e7f3f2; border-color:#8ebcbe; }
.gm-site .gm-header-search-panel { position:absolute; top:calc(100% + .65rem); right:0; width:min(420px,calc(100vw - 2rem)); padding:1.5rem; background:#fff; border:1px solid var(--gm-line); border-top:3px solid var(--gm-teal); border-radius:8px; box-shadow:0 16px 42px rgba(18,45,59,.16); }
.gm-header-search-panel form { margin:0; }
.gm-site .gm-header-search-panel label { display:block; margin-bottom:.6rem; font-size:.875rem; color:var(--gm-ink); font-weight:600; }
.gm-header-search-panel form > div { display:flex; gap:.5rem; }
.gm-site .gm-header-search-panel input[type=search] { min-width:0; width:100%; min-height:46px; padding:.65rem .8rem; border:1px solid #bcced7; border-radius:5px; background:var(--gm-soft); color:var(--gm-ink); font:inherit; font-size:1rem; }
.gm-site .gm-header-search-panel button { flex-shrink:0; width:46px; min-height:46px; border:0; border-radius:5px; background:var(--gm-teal); color:#fff; font-size:1.2rem; padding:.5rem; }
.gm-site .gm-header-search-panel > a { display:inline-flex; align-items:center; min-height:44px; margin-top:.5rem; font-size:.8125rem; }
.gm-site .gm-menu > li > a::after { content:''; position:absolute; bottom:0; left:0; width:100%; height:2px; background:var(--gm-teal); transform:scaleX(0); transform-origin:left; transition:transform .2s ease; }
.gm-site .gm-menu > li > a:hover::after, .gm-site .gm-menu > li > a:focus-visible::after, .gm-site .gm-menu > .current-menu-item > a::after { transform:scaleX(1); }
.gm-reading-progress { position:absolute; bottom:-2px; left:0; width:100%; height:3px; pointer-events:none; }
.gm-reading-progress span { display:block; width:100%; height:100%; background:#0b9696; transform:scaleX(0); transform-origin:left; }
.gm-site .entry-content :is(h2,h3,h4) { scroll-margin-top:calc(var(--gm-header-height,76px) + var(--gm-admin-height,0px) + 1.5rem); }
.gm-site .gm-editorial-featured { position:relative; isolation:isolate; padding:3.5rem 0; margin:3.5rem 0; background:#132f40; box-shadow:0 0 0 100vmax #132f40; clip-path:inset(0 -100vmax); }
.gm-site .gm-editorial-featured .gm-section-heading h2 { color:#fff; }
.gm-site .gm-editorial-featured .gm-section-heading .gm-eyebrow { color:#83d9d3; }
.gm-site .gm-editorial-featured .gm-section-heading > a { color:#fff; padding:.35rem .9rem; border:1px solid #668694; border-radius:24px; }
.gm-site .gm-editorial-featured .gm-section-heading > a:hover { background:#21485b; border-color:#83d9d3; }
.gm-site .gm-editorial-featured .gm-card { box-shadow:0 12px 28px rgba(0,0,0,.12); }
.gm-site .gm-editorial-featured .gm-card:focus-within { outline-color:#83d9d3; }
.gm-site .gm-linework { position:absolute; width:560px; height:auto; max-width:75%; top:0; right:-2rem; color:#83d9d3; opacity:.14; pointer-events:none; z-index:-1; }
.gm-site .gm-footer { position:relative; isolation:isolate; overflow:hidden; }
.gm-site .gm-footer .gm-linework { top:auto; bottom:-4rem; opacity:.09; width:620px; }
.gm-site .gm-footer-inner, .gm-site .gm-footer-bottom { position:relative; }
.gm-site .gm-card-arrow { border:1px solid #d8e9e9; }
.gm-site .gm-card:focus-within .gm-card-arrow { background:#eaf6f4; }
.gm-site .gm-breadcrumbs { margin-bottom:1.5rem; }
.gm-site .gm-article-header .gm-eyebrow { margin-bottom:1rem; }
.gm-site .gm-toc .gm-eyebrow { font-size:.6rem; margin-bottom:.45rem; }
.gm-site .gm-toc-expanded ol { max-height:340px; overflow-y:auto; scrollbar-width:thin; }
.gm-site .gm-toc-expand { display:block; min-height:44px; margin-top:.65rem; padding:.55rem 0; background:none; border:0; color:#96e2da; font:inherit; font-size:.75rem; font-weight:650; text-align:left; cursor:pointer; }
.gm-site .gm-sidebar-reading { padding:1.35rem; border:1px solid var(--gm-line); border-radius:9px; background:#fff; }
.gm-site .gm-sidebar-reading h2 { font-size:1.12rem; line-height:1.35; margin-bottom:1.2rem; }
.gm-site .gm-sidebar-reading ul { list-style:none; margin:0; padding:0; }
.gm-site .gm-sidebar-reading li + li { border-top:1px solid var(--gm-line); margin-top:.85rem; padding-top:.85rem; }
.gm-site .gm-sidebar-reading li > a { display:grid; grid-template-columns:64px minmax(0,1fr); align-items:start; gap:.8rem; text-decoration:none; }
.gm-site .gm-sidebar-reading img, .gm-site .gm-reading-placeholder { display:block; width:64px; height:56px; object-fit:contain; background:var(--gm-soft); border-radius:4px; }
.gm-site .gm-reading-placeholder { display:grid; place-items:center; color:var(--gm-teal); }
.gm-site .gm-sidebar-story-title { display:block; color:var(--gm-ink); font-size:.8125rem; line-height:1.45; font-weight:600; }
.gm-site .gm-sidebar-reading a:hover .gm-sidebar-story-title { color:var(--gm-teal); text-decoration:underline; }
.gm-site .gm-sidebar-story-meta { display:block; margin-top:.35rem; font-size:.6875rem; color:#607580; }
.gm-site .gm-inline-toc { display:none; margin-bottom:2rem; padding:1rem 1.2rem; background:var(--gm-soft); border:1px solid var(--gm-line); border-radius:6px; }
.gm-site .gm-inline-toc summary { cursor:pointer; color:var(--gm-ink); font-weight:600; min-height:32px; }
.gm-site .gm-inline-toc summary span { float:right; }
.gm-site .gm-inline-toc[open] summary span { transform:rotate(45deg); }
.gm-site .gm-inline-toc ol { margin:1rem 0 0; padding-left:1.2rem; max-height:320px; overflow-y:auto; font-size:.875rem; }
.gm-site .gm-inline-toc li + li { margin-top:.75rem; }
.gm-site .gm-share { padding:1.1rem 1.25rem; border:1px solid var(--gm-line); border-radius:8px; background:var(--gm-soft); }
.gm-site .gm-related .gm-section-heading { padding-bottom:.5rem; }
/* Masthead identity and coherent editorial surfaces. */
.gm-header::before { content:''; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,#173b49 0%,#087f83 55%,#b3d6ce 100%); }
@supports (backdrop-filter:blur(12px)) { .gm-header { background:rgba(248,251,250,.92); backdrop-filter:blur(12px); } }
.gm-brand-symbol { flex-shrink:0; color:var(--gm-teal); }
.gm-site .gm-wordmark { color:var(--gm-ink); }
.gm-brand-lockup { display:grid; gap:.2rem; justify-items:start; }
.gm-brand-caption { padding-left:47px; color:#5b727a; font-size:.6rem; letter-spacing:.14em; line-height:1.35; text-transform:uppercase; }
.gm-brand-lockup:has(.gm-brand-image) .gm-brand-caption { padding-left:0; }
.gm-site .gm-header .gm-menu > li > a { position:relative; padding:.55rem .95rem; border-radius:5px; transition:background .2s ease,color .2s ease; }
.gm-site .gm-header .gm-menu > li > a::after { left:.95rem; width:calc(100% - 1.9rem); bottom:2px; height:1px; }
.gm-site .gm-header .gm-menu > li > a:hover { background:#e7f1ee; }
.gm-site .gm-header .gm-menu > .current-menu-item > a { color:#05666b; background:#e7f1ee; }
.gm-site .gm-header .gm-menu > .gm-nav-contact > a { gap:.85rem; margin-left:.45rem; padding:.7rem 1.15rem; border:1px solid #153c49; border-radius:6px; background:#153c49; color:white; box-shadow:0 3px 8px rgba(18,45,59,.08); }
.gm-site .gm-header .gm-menu > .gm-nav-contact > a::before { content:'↗'; order:1; font-size:1.1rem; transition:transform .2s ease; }
.gm-site .gm-header .gm-menu > .gm-nav-contact > a::after { display:none; }
.gm-site .gm-header .gm-menu > .gm-nav-contact > a:hover { background:#087b7d; border-color:#087b7d; }
.gm-site .gm-header .gm-menu > .gm-nav-contact > a:hover::before { transform:translate(2px,-2px); }
.gm-site .gm-header-discovery summary { background:transparent; border-color:#c9dcda; border-radius:50%; width:46px; height:46px; padding:0; justify-content:center; transition:background .2s ease,border-color .2s ease; }
.gm-header-discovery summary > span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.gm-site .gm-header-discovery summary:hover { border-color:var(--gm-teal); background:#e7f1ee; }
.gm-header-discovery[open] .gm-header-search-panel { animation:gm-panel-in .18s ease-out; }
.gm-menu-glyph { position:relative; display:block; width:17px; height:12px; border-top:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transition:height .2s ease; }
.gm-menu-glyph::before { content:''; position:absolute; left:0; top:4px; width:12px; border-top:1.5px solid currentColor; }
.gm-menu-toggle[aria-expanded="true"] .gm-menu-glyph { border:0; }
.gm-menu-toggle[aria-expanded="true"] .gm-menu-glyph::before, .gm-menu-toggle[aria-expanded="true"] .gm-menu-glyph::after { content:''; position:absolute; width:18px; top:5px; left:0; border-top:1.5px solid currentColor; transform:rotate(45deg); }
.gm-menu-toggle[aria-expanded="true"] .gm-menu-glyph::after { transform:rotate(-45deg); }
.gm-site .gm-discovery-intro { border-right:1px solid var(--gm-line); padding-right:1.5rem; }
.gm-site .gm-discovery-intro p:last-child { margin:0; font-size:1.2rem; line-height:1.3; letter-spacing:-.025em; color:var(--gm-ink); font-weight:650; }
.gm-site .gm-discovery-intro .gm-eyebrow { font-size:.6rem; letter-spacing:.09em; }
.gm-site .gm-editorial-search .gm-discovery-form { gap:.8rem; }
.gm-site .gm-editorial-search .gm-discovery-keyword { flex:2 1 230px; }
.gm-site .gm-editorial-search .gm-discovery-topic { flex:1 1 130px; }
.gm-site .gm-section-description { max-width:30ch; margin:1rem 0 0; font-size:.9rem; line-height:1.75; }
.gm-site .gm-topic-grid a { transition:border-color .2s ease,background .2s ease,box-shadow .2s ease; }
.gm-site .gm-topic-grid a:hover { background:#fff; box-shadow:0 4px 14px rgba(18,45,59,.05); }
.gm-site .gm-topic-number { color:#68858a; font-size:.65rem; letter-spacing:.06em; font-variant-numeric:tabular-nums; font-weight:400; }
.gm-site .gm-topic-name { flex:1; min-width:0; }
.gm-site .gm-topic-arrow { display:grid; place-items:center; width:28px; height:28px; background:#edf5f2; border-radius:50%; transition:transform .2s ease; }
.gm-site .gm-topic-grid a:hover .gm-topic-arrow { transform:rotate(45deg); }
.gm-site .gm-card-details { display:flex; flex-wrap:wrap; align-items:center; gap:.3rem .8rem; }
.gm-site .gm-card-reading { font-size:.7rem; line-height:1.6; color:#5d727e; }
.gm-site .gm-card-reading::before { content:'·'; margin-right:.8rem; }
.gm-site .gm-card-topic { align-self:flex-start; font-size:.6rem; letter-spacing:.12em; padding:0 0 .4rem; border-bottom:1px solid #a6cac6; }
.gm-site .gm-card-image-fit-contain { background:linear-gradient(145deg,#f1f5f4,#e8efef); }
.gm-site .gm-arrow-icon { display:inline-block; vertical-align:middle; width:16px; height:16px; flex-shrink:0; }
.gm-site .gm-card-image-placeholder { isolation:isolate; background:linear-gradient(145deg,#d8e9e6,#edf3f5); }
.gm-site .gm-card-image-placeholder .gm-linework { z-index:0; color:#287b7c; opacity:.17; width:100%; height:100%; max-width:none; right:0; }
.gm-site .gm-card-image-placeholder > span { position:relative; padding:1.2rem; text-align:center; color:#2e5c65; font-size:1.05rem; font-weight:650; line-height:1.7; }
.gm-site .gm-card-image-placeholder > span > span { font-size:.55rem; letter-spacing:.13em; text-transform:uppercase; font-weight:500; }
.gm-site .gm-editorial-featured > .gm-linework { opacity:.12; right:0; max-width:60%; }
.gm-site .gm-editorial-featured .gm-section-heading { margin-bottom:1.8rem; }
.gm-site .gm-toc .gm-eyebrow { color:#a3ddd6; }
.gm-site .gm-toc h2 { color:#fff; }
.gm-site .gm-toc a:focus-visible { outline-color:#9be4d9; }
.gm-site .gm-toc-expand:focus-visible { outline-color:#9be4d9; }
.gm-site .gm-article-header .gm-eyebrow { display:flex; align-items:center; gap:.65rem; }
.gm-site .gm-article-header .gm-eyebrow::before { content:''; width:7px; height:7px; border:1px solid var(--gm-teal); transform:rotate(45deg); }
.gm-site .entry-content blockquote { background:#eef5f3; border-radius:0 8px 8px 0; padding:1.25rem 1.5rem; }
.gm-site .entry-content blockquote > :last-child { margin-bottom:0; }
.gm-site .entry-content figcaption { padding:.7rem 0; border-bottom:1px solid var(--gm-line); color:#556b71; line-height:1.6; }
.gm-site .entry-content table { width:100%; border-collapse:collapse; font-size:.93rem; }
.gm-site .entry-content th { padding:.8rem; background:#173d49; color:#fff; text-align:left; }
.gm-site .entry-content td { padding:.8rem; border:1px solid var(--gm-line); }
.gm-site .entry-content tr:nth-child(even) td { background:#f3f7f5; }
.gm-site .gm-contact-heading .gm-eyebrow { color:#9de0d7; }
.gm-site .gm-contact-heading > p:last-child { max-width:580px; margin-bottom:0; }
.gm-site .gm-contact-heading .gm-linework { right:-3rem; top:-3rem; opacity:.15; max-width:65%; }
.gm-site .gm-contact-copy { box-shadow:0 8px 32px rgba(18,45,59,.04); }
.gm-site .gm-contact-owner-copy { margin-bottom:1.75rem; padding-bottom:1rem; border-bottom:1px solid var(--gm-line); }
.gm-site .gm-contact-copy h2 { font-size:1.7rem; }
.gm-site .gm-contact-help { background:#edf5f3; border-color:#d6e5e1; }
.gm-site .gm-contact-channel { display:grid; grid-template-columns:1fr auto; gap:.25rem .65rem; padding:1.1rem 0; border-bottom:1px solid #cddbd7; text-decoration:none; overflow-wrap:anywhere; }
.gm-contact-channel > span:first-child { grid-column:1; font-size:.7rem; color:#557168; }
.gm-contact-channel strong { grid-column:1; font-size:.95rem; font-weight:600; line-height:1.5; }
.gm-contact-channel > span:last-child { grid-column:2; grid-row:1 / 3; align-self:center; }
.gm-contact-prompts { padding-top:1.75rem; }
.gm-site .gm-contact-prompts h3 { margin:0 0 .35rem; font-size:1rem; }
.gm-site .gm-contact-prompts p { font-size:.875rem; }
.gm-site .gm-article-contact { display:flex; flex-wrap:wrap; align-items:center; gap:1.3rem; justify-content:space-between; padding:1.5rem; margin-top:2rem; border:1px solid #d4e3df; border-radius:8px; background:#edf5f3; }
.gm-site .gm-article-contact h2 { font-size:1.4rem; margin:0 0 .5rem; }
.gm-site .gm-article-contact p:last-child { margin:0; max-width:48ch; font-size:.875rem; }
.gm-site .gm-article-contact > a { display:inline-flex; align-items:center; gap:1rem; min-height:44px; font-size:.875rem; font-weight:600; white-space:nowrap; }
.gm-site .gm-newsletter { width:calc(100% - 4rem); max-width:1240px; margin:4rem auto 0; display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,5rem); align-items:center; padding:clamp(1.5rem,3.5vw,3rem); background:linear-gradient(115deg,#e9f3ef,#f3f7f8); border:1px solid #cfdeda; border-top:3px solid #64a8a0; border-radius:3px 3px 12px 12px; }
.gm-site .gm-newsletter h2 { max-width:17ch; font-size:clamp(1.75rem,2.8vw,2.5rem); }
.gm-site .gm-newsletter > div > p:last-child { font-size:.95rem; margin:0; max-width:48ch; }
.gm-site .gm-newsletter .gm-form .ff-el-group { margin-bottom:.8rem; }
.gm-site .gm-newsletter + .gm-footer { margin-top:4rem; }
.gm-footer-opening { width:calc(100% - 4rem); max-width:1240px; margin-inline:auto; padding:3rem 0 2.5rem; display:flex; justify-content:space-between; align-items:end; gap:2rem; border-bottom:1px solid #325060; }
.gm-site .gm-footer-opening .gm-eyebrow { color:#a0c9c9; margin:0 0 1rem; font-size:.65rem; }
.gm-site .gm-footer-opening h2 { font-size:clamp(1.7rem,3vw,2.5rem); line-height:1.2; letter-spacing:-.035em; text-transform:none; margin:0; }
.gm-site .gm-footer-explore { display:inline-flex; align-items:center; gap:2rem; min-height:48px; font-size:.875rem; padding:.75rem 0; border-bottom:1px solid #79b6b4; white-space:nowrap; }
.gm-site .gm-footer-explore span { display:grid; place-items:center; border:1px solid #587e89; width:38px; height:38px; border-radius:50%; font-size:1.1rem; transition:transform .2s ease,background .2s ease; }
.gm-site .gm-footer-explore:hover span { background:#285765; transform:translate(2px,-2px); }
.gm-site .gm-footer .gm-brand-symbol { color:#78d2cb; }
.gm-site .gm-footer .gm-linework { width:750px; }
.gm-site .comments-area { background:#f4f8f8; border:1px solid var(--gm-line); border-radius:10px; padding:clamp(1.25rem,3vw,2.25rem); }
.gm-site .comment-reply-title { font-size:1.6rem; }
.gm-site .comment-form :is(input:not([type=checkbox]):not([type=submit]),textarea) { background:#fff; border:1px solid #c4d5d8; border-radius:6px; }
.gm-site .comment-form .submit { background:var(--gm-teal); color:#fff; border-radius:5px; min-height:48px; }
@keyframes gm-panel-in { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@media (min-width:951px) {
  .gm-site .gm-featured-count-3 { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:1.25rem; }
  .gm-site .gm-featured-count-3 > .gm-card:first-child { grid-row:span 2; }
  .gm-site .gm-featured-count-3 > .gm-card:first-child .gm-card-image { aspect-ratio:16/9; }
  .gm-site .gm-featured-count-3 > .gm-card:first-child .gm-card-title { font-size:clamp(1.4rem,2.2vw,1.9rem); line-height:1.3; }
  .gm-site .gm-featured-count-3 > .gm-card:not(:first-child):has(.gm-card-image) { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1fr); }
  .gm-site .gm-featured-count-3 > .gm-card:not(:first-child) .gm-card-image { aspect-ratio:auto; min-height:210px; }
  .gm-site .gm-featured-count-3 > .gm-card:not(:first-child) .gm-card-body { padding:1.15rem; }
  .gm-site .gm-featured-count-3 > .gm-card:not(:first-child) .gm-card-title { font-size:1.08rem; }
  .gm-site .gm-featured-count-3 > .gm-card:not(:first-child) .gm-card-excerpt { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:.8125rem; margin-bottom:1rem; }
}
@keyframes gm-arrive { from { opacity:.65; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@keyframes gm-draw { from { stroke-dashoffset:900; } to { stroke-dashoffset:0; } }
.gm-entered > .gm-section-heading, .gm-entered > .gm-grid > .gm-card, .gm-entered > .gm-footer-inner, .gm-entered > .gm-topic-grid { animation:gm-arrive .45s ease-out backwards; }
.gm-entered > .gm-grid > .gm-card:nth-child(2) { animation-delay:.07s; }
.gm-entered > .gm-grid > .gm-card:nth-child(3) { animation-delay:.14s; }
.gm-entered > .gm-linework path { stroke-dasharray:900; animation:gm-draw 1.5s ease-out; }

@media (hover:hover) and (pointer:fine) {
  .gm-site .gm-card:hover { border-color:#9ac8c8; box-shadow:0 14px 30px rgba(19,50,72,.1); transform:translateY(-5px); }
  .gm-site .gm-card:hover .gm-card-image-fit-cover img { transform:scale(1.035); }
  .gm-site .gm-card:hover .gm-card-title a { color:var(--gm-teal-dark); }
  .gm-site .gm-card:hover .gm-card-arrow { background:#eaf6f4; transform:translateX(2px); }
}
@media (max-width:950px) {
  .gm-site .gm-editorial-search { grid-template-columns:1fr; gap:1rem; }
  .gm-site .gm-discovery-intro { display:flex; flex-wrap:wrap; align-items:baseline; gap:.3rem 1rem; border:0; padding:0; }
  .gm-site .gm-discovery-intro .gm-eyebrow { margin:0; }
  .gm-site .gm-discovery-intro p:last-child { font-size:1rem; }
  .gm-nav-enhanced .gm-navigation { position:absolute; inset:calc(100% + 1px) 0 auto; padding:1rem; background:#f8fbfa; border:1px solid var(--gm-line); border-radius:0 0 12px 12px; box-shadow:0 16px 30px rgba(18,45,59,.12); max-height:calc(100svh - 150px); overflow-y:auto; }
  .gm-nav-enhanced .gm-navigation:not([hidden]) { animation:gm-panel-in .18s ease-out; }
  .gm-site .gm-navigation .gm-menu { flex-direction:column; align-items:stretch; }
  .gm-site .gm-navigation .gm-menu > li > a { width:100%; min-height:48px; }
  .gm-site .gm-header .gm-menu > .gm-nav-contact > a { margin:0; justify-content:space-between; }
  .gm-site .gm-featured-count-3 { grid-template-columns:minmax(0,1fr); }
  .gm-site .gm-featured-count-3 > .gm-card:has(.gm-card-image) { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr); }
  .gm-site .gm-featured-count-3 > .gm-card .gm-card-image { aspect-ratio:auto; min-height:220px; }
  .gm-site .gm-topic-section { padding:2rem; }
  .gm-site .gm-section-description { max-width:55ch; margin-top:.65rem; }
  .gm-site .gm-newsletter { grid-template-columns:1fr; gap:1.5rem; }
  .gm-site .gm-newsletter h2 { max-width:24ch; }
  .gm-header-inner { grid-template-columns:1fr auto; gap:.7rem 1.2rem; min-height:72px; padding-block:.65rem; }
  .gm-header-actions { grid-column:2; grid-row:1; }
  .gm-menu-toggle { justify-self:end; }
  .gm-site .gm-inline-toc:not([hidden]) { display:block; }
  .gm-navigation, .gm-header-search { grid-column:1 / -1; }
  .gm-site .gm-navigation .gm-menu { justify-content:flex-start; gap:.4rem 1.6rem; }
  .gm-menu .sub-menu { display:block; position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border:0; min-width:0; padding:0 0 0 .8rem; background:var(--gm-soft); }
  .gm-site .gm-grid, .gm-site .gm-post-grid .wp-block-post-template { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gm-site .gm-featured-count-1 { grid-template-columns:minmax(0,1fr); }
  .gm-site .gm-reading-layout { grid-template-columns:minmax(0,1fr); max-width:800px; margin-inline:auto; }
  .gm-site .gm-article-sidebar { display:none; }
  .gm-site .gm-contact-layout { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
  .gm-site .gm-topic-section { grid-template-columns:minmax(0,1fr); gap:1.25rem; }
  .gm-footer-inner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
  .gm-footer-brand { grid-column:1 / -1; }
}
@media (max-width:782px) { .gm-design.admin-bar { --gm-admin-height:46px; } }
@media (max-width:600px) { .gm-design.admin-bar { --gm-admin-height:0px; } }
@media (max-width:620px) {
  .gm-brand-symbol { width:26px; height:30px; }
  .gm-site .gm-header .gm-brand { font-size:1.35rem; gap:.45rem; }
  .gm-brand-caption { padding-left:33px; font-size:.48rem; letter-spacing:.06em; }
  .gm-site .gm-header-actions { gap:.35rem; }
  .gm-site .gm-featured-count-3 > .gm-card:has(.gm-card-image) { display:flex; }
  .gm-site .gm-featured-count-3 > .gm-card .gm-card-image { min-height:0; aspect-ratio:16/10; }
  .gm-site .gm-topic-section { padding:1.25rem; }
  .gm-site .gm-topic-grid a { min-height:64px; }
  .gm-site .gm-editorial-search .gm-discovery-keyword, .gm-site .gm-editorial-search .gm-discovery-topic { flex-basis:100%; }
  .gm-site .gm-newsletter { width:calc(100% - 2rem); margin-top:2.5rem; }
  .gm-footer-opening { width:calc(100% - 2rem); flex-direction:column; align-items:start; gap:1.5rem; padding:2rem 0; }
  .gm-site .gm-footer-bottom { padding-bottom:5rem; }
  .gm-site .gm-contact-help { padding:1.25rem; }
  .gm-site #content > .ast-container, .gm-header-inner, .gm-footer-inner, .gm-footer-bottom { width:calc(100% - 2rem); }
  .gm-header-inner { min-height:68px; gap:.5rem; }
  .gm-site .gm-header-discovery summary { width:44px; padding:.6rem; justify-content:center; }
  .gm-header-discovery summary span { display:none; }
  .gm-site .gm-editorial-featured { padding-block:2.5rem; }
  .gm-site .gm-article-header { padding:1.25rem; }
  .gm-site .gm-brand { font-size:1.55rem; }
  .gm-site #primary.gm-home { padding-top:.75rem; }
  .gm-site #primary.gm-page, .gm-site #primary.gm-single, .gm-site #primary.gm-archive { padding-top:1.75rem; }
  .gm-site .gm-hero { height:clamp(280px,var(--gm-hero-viewport-vh,68vh),480px); height:clamp(280px,var(--gm-hero-viewport,68svh),480px); border-radius:8px; }
  .gm-site .gm-hero-height-custom { height:var(--gm-hero-mobile-height,400px); }
  .gm-site .gm-hero-height-ratio { height:auto; }
  .gm-site .gm-hero-copy { padding:1rem; }
  .gm-site .gm-hero-copy h1 { font-size:clamp(2rem,9.2vw,3.3rem); }
  .gm-site .gm-hero-copy p { font-size:.9375rem; }
  .gm-site .gm-hero-toggle { bottom:1rem; right:.75rem; }
  .gm-site .gm-hero + .gm-editorial-search { width:min(100%,var(--gm-hero-width,1240px)); margin:1rem auto 2.5rem; }
  .gm-site .gm-editorial-search { padding:1.15rem; margin-bottom:2.5rem; }
  .gm-site .gm-discovery-keyword, .gm-site .gm-discovery-topic, .gm-site .gm-discovery-form button { flex-basis:100%; width:100%; }
  .gm-site .gm-discovery-form { gap:.85rem; }
  .gm-site .gm-discovery-form input[type="search"], .gm-site .gm-discovery-form select { font-size:1rem; }
  .gm-site .gm-grid, .gm-site .gm-post-grid .wp-block-post-template, .gm-site .gm-feature-row:has(.wp-block-post-featured-image), .gm-site .gm-featured-count-1 .gm-card:has(.gm-card-image) { grid-template-columns:minmax(0,1fr); gap:1.25rem; }
  .gm-site .gm-featured-count-1 .gm-card:has(.gm-card-image) { gap:0; }
  .gm-site .gm-featured-count-1 .gm-card-image { min-height:0; aspect-ratio:16/10; }
  .gm-site .gm-card-body, .gm-site .gm-featured-count-1 .gm-card-body { padding:1.25rem; }
  .gm-site .gm-featured-count-1 .gm-card-title { font-size:1.3rem; }
  .gm-site .gm-section-heading { gap:.3rem; margin-bottom:1.1rem; }
  .gm-site .gm-section-heading h2 { font-size:1.6rem; }
  .gm-site .gm-section-heading > a { font-size:.8125rem; }
  .gm-site .gm-topic-grid { grid-template-columns:minmax(0,1fr); }
  .gm-site .gm-editorial-featured, .gm-site .gm-editorial-latest, .gm-site .gm-topic-section { margin-block:2.5rem; }
  .gm-site .gm-breadcrumbs { margin-bottom:1.5rem; }
  .gm-site .gm-article-header h1 { font-size:2rem; text-wrap:wrap; }
  .gm-site .gm-article-content { font-size:1.0625rem; }
  .gm-site .gm-archive-search { padding:1rem; }
  .gm-site .gm-properties .gm-property-directory-heading { padding:1.75rem 1.25rem 2.5rem; }
  .gm-site .gm-directory-page .gm-property-directory-heading + .gm-property-filters { margin-inline:.5rem; }
  .gm-site .gm-contact-copy, .gm-site .gm-contact-help { padding:1.25rem; }
  .gm-site .gm-footer { margin-top:3rem; }
  .gm-footer-inner { grid-template-columns:1fr; gap:1.75rem; padding-block:2rem; }
  .gm-footer-brand { grid-column:1 / -1; }
  .gm-site .gm-footer-links a { min-height:44px; }
  .gm-site .gm-footer .gm-menu { justify-content:flex-start; gap:1rem; }
}
@media (prefers-reduced-motion:reduce) {
  .gm-site *, .gm-site *::before, .gm-site *::after { scroll-behavior:auto; animation:none !important; transition:none !important; }
  .gm-site .gm-hero-video, .gm-site .gm-card, .gm-site .gm-card-image img, .gm-site .gm-card-arrow { transition:none; }
  .gm-site .gm-card:hover, .gm-site .gm-card:hover .gm-card-image img, .gm-site .gm-card:hover .gm-card-arrow { transform:none; }
}
@media print {
  .gm-newsletter, .gm-article-contact, .gm-footer-opening { display:none !important; }
  .gm-header { position:static; box-shadow:none; }
  .gm-header-actions, .gm-reading-progress, .gm-inline-toc, .gm-linework { display:none !important; }
  .gm-site .gm-editorial-featured { box-shadow:none; background:white; clip-path:none; }
  .gm-site .gm-editorial-featured .gm-section-heading h2 { color:#122d3b; }
  .gm-site .gm-hero { height:auto; min-height:0; aspect-ratio:auto; background:none; margin-bottom:2rem; }
  .gm-hero-poster, .gm-hero-video, .gm-hero-shade, .gm-hero-toggle, .gm-header-search, .gm-menu-toggle, .gm-navigation, .gm-article-sidebar, .gm-related, .comments-area, .gm-footer, .gm-share, .gm-editorial-search, .gm-topic-section { display:none !important; }
  .gm-site .gm-hero-copy h1, .gm-site .gm-hero-copy p { color:#172b36; text-shadow:none; }
  .gm-site .gm-reading-layout { display:block; }
  .gm-site #content > .ast-container { width:100%; }
  .gm-site a { color:inherit; }
}
