.gm-page{--gm-gap:clamp(24px,4vw,56px)}
.gm-wrap{max-width:1120px;margin:0 auto}
.gm-hero{padding-top:clamp(50px,8vw,96px);padding-bottom:40px}
.gm-crumb{display:flex;gap:10px;flex-wrap:wrap;font:400 .72rem var(--mono);color:var(--muted);margin-bottom:38px}
.gm-hero h1{font-size:clamp(2.3rem,5.6vw,4.8rem);line-height:1.04;letter-spacing:-.055em;max-width:1000px;margin:20px 0 26px}
.gm-hero .lede{max-width:800px;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65}
.gm-eyebrow{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font:500 .7rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--geo)}
.gm-tag{border:1px solid var(--a10);padding:8px 12px;border-radius:var(--r-lg);background:var(--bg-card);color:var(--ink)}
.gm-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:28px}
.gm-meta{margin-top:28px;font:400 .75rem var(--mono);color:var(--muted);line-height:1.8}
.gm-media{margin:0;overflow:hidden;border:1px solid var(--a10);border-radius:var(--r-lg);background:var(--bg-card)}
.gm-media img{display:block;width:100%;height:auto;object-fit:contain}
.gm-media figcaption{padding:14px 20px;font-size:.78rem;line-height:1.6;color:var(--muted);border-top:1px solid var(--a8)}
.gm-media-section{padding-top:0}
.gm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gm-card{padding:28px;border:1px solid var(--a10);border-radius:var(--r-lg);background:var(--bg-card);min-width:0}
.gm-card h2,.gm-card h3{font-size:1.3rem;letter-spacing:-.025em;line-height:1.25;margin:12px 0}
.gm-card p{color:var(--muted);line-height:1.7;margin:0 0 16px}
.gm-index{font:500 .74rem var(--mono);color:var(--geo);text-transform:uppercase;letter-spacing:.08em}
.gm-story{display:grid;grid-template-columns:200px minmax(0,1fr);gap:var(--gm-gap)}
.gm-toc{position:sticky;top:110px;align-self:start;display:grid;gap:14px;font-size:.85rem;line-height:1.5}
.gm-toc a{color:var(--muted);text-decoration:none}.gm-toc a:hover{color:var(--geo)}
.gm-prose{min-width:0}.gm-prose h2,.gm-section-title{font-size:clamp(1.7rem,3.3vw,2.7rem);line-height:1.1;letter-spacing:-.04em;margin:0 0 24px;scroll-margin-top:105px}
.gm-prose h3{font-size:1.25rem;line-height:1.35;margin:28px 0 12px}
.gm-prose p,.gm-intro,.gm-prose li{line-height:1.8;color:var(--muted);font-size:1.04rem}
.gm-prose p{margin:0 0 22px}.gm-prose strong{color:var(--ink)}
.gm-prose .gm-media{margin:32px 0 40px}.gm-prose section+section{margin-top:64px}
.gm-note{border-left:3px solid var(--geo);background:var(--geo-soft);padding:20px 24px;border-radius:0 var(--r-lg) var(--r-lg) 0;color:var(--ink);line-height:1.7;margin:28px 0}
.gm-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0;padding:0;list-style:none}
.gm-flow li{padding:20px;border:1px solid var(--a10);border-radius:var(--r-lg);background:var(--bg-card);line-height:1.55}.gm-flow strong{display:block;margin:8px 0}
.gm-two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.gm-offer{padding:clamp(28px,4vw,48px);background:var(--geo-soft);border:1px solid var(--a10);border-radius:var(--r-lg)}
.gm-offer p{color:var(--muted);line-height:1.75}.gm-offer h2{font-size:clamp(1.8rem,3.4vw,2.8rem);line-height:1.1;letter-spacing:-.04em;margin:14px 0 20px}
.gm-table-wrap{overflow:auto;border:1px solid var(--a10);border-radius:var(--r-lg);margin:24px 0}
.gm-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem;line-height:1.6}
.gm-table th,.gm-table td{padding:17px;vertical-align:top;border-bottom:1px solid var(--a8);min-width:150px}.gm-table thead{background:var(--geo-soft)}.gm-table th{color:var(--ink)}.gm-table td{color:var(--muted)}
.gm-form{padding:clamp(20px,4vw,40px);background:var(--bg-card);border:1px solid var(--a10);border-radius:var(--r-lg)}
.gm-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gm-field{display:grid;gap:9px;margin-bottom:22px}.gm-field label{font-weight:600;font-size:.92rem}.gm-field input,.gm-field textarea{width:100%;border:1px solid var(--a10);border-radius:var(--r-lg);padding:14px;background:var(--bg-card);color:var(--ink);font:inherit;min-width:0}.gm-field textarea{font:400 .82rem/1.65 var(--mono);min-height:210px;resize:vertical}.gm-field input:focus,.gm-field textarea:focus{outline:2px solid var(--geo);outline-offset:3px}
.gm-small{font-size:.82rem!important;line-height:1.65!important;color:var(--muted)}
.gm-status{padding:18px 0;min-height:58px;font-size:.9rem;line-height:1.6}.gm-status[role=alert]{color:var(--ink);border-left:3px solid var(--heat-8);padding-left:16px}
.gm-results{scroll-margin-top:110px}.gm-results[hidden]{display:none}
.gm-opportunity{padding:24px;border:1px solid var(--a10);border-radius:var(--r-lg);margin:16px 0;background:var(--bg-card);overflow-wrap:anywhere}.gm-result-head{display:flex;gap:18px;align-items:baseline}.gm-result-head h3{margin:0;font-size:1.18rem}.gm-opportunity p{line-height:1.7}.gm-opportunity summary{cursor:pointer;font-weight:600;padding:10px 0}.gm-opportunity h4{margin-bottom:8px}.gm-opportunity details{border-top:1px solid var(--a8);margin-top:20px;padding-top:8px}
.gm-page button:disabled{opacity:.45;cursor:not-allowed}.gm-page a,.gm-page button,.gm-page input,.gm-page summary,.gm-page textarea{scroll-margin-top:110px}.gm-page :focus-visible{outline:2px solid var(--geo);outline-offset:4px}
@media(max-width:850px){.gm-grid{grid-template-columns:1fr}.gm-story{grid-template-columns:1fr}.gm-toc{position:static;display:flex;flex-wrap:wrap;gap:12px 20px;padding-bottom:22px;border-bottom:1px solid var(--a10)}.gm-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gm-two,.gm-fields{grid-template-columns:1fr}.gm-hero h1{font-size:2.6rem}.gm-card{padding:24px}.gm-row .btn{width:100%;justify-content:center}.gm-flow{grid-template-columns:1fr}.gm-prose section+section{margin-top:44px}}

/* Keep the dedicated search tool cover alongside its introduction. */
.gm-tool-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center}
.gm-tool-hero>*{min-width:0}.gm-tool-hero .gm-media{margin:0}.gm-tool-hero h1{font-size:clamp(2.5rem,4.4vw,4.5rem)}
@media(max-width:900px){.gm-tool-hero{grid-template-columns:1fr;gap:28px}}
