/* GEO article (23 Oct 2026, worker 19ef46c7): bars, split chart, Shortlist Loop diagram, method box, 30 day plan, AI visibility score. No library. */
.geo-bar{display:grid;grid-template-columns:minmax(0,1fr) 46px;grid-template-areas:"l b" "t t";gap:6px 10px;align-items:end;margin:14px 0 0}
.geo-bar__l{grid-area:l;font-size:.95rem;line-height:1.3;color:#2a2622}
.geo-bar b{grid-area:b;text-align:right;font:400 1.5rem/1 var(--serif);color:#111}
.geo-bar__t{grid-area:t;display:block;height:12px;border-radius:99px;background:#efe6dc;overflow:hidden}
.geo-bar__t i{display:block;height:100%;width:var(--w);border-radius:99px;background:#b9b0a6;transform-origin:left center;transform:scaleX(1);transition:transform 1.1s var(--ease,ease)}
.geo-bar.is-o .geo-bar__t i{background:var(--o,#FF6B00)}
.geo-bar.is-o b{color:var(--o,#FF6B00)}
.crv-js .crv:not(.is-in) .geo-bar__t i{transform:scaleX(0)}
.geo-split__g{display:grid;gap:22px;margin-top:8px}
@media(min-width:760px){.geo-split__g{grid-template-columns:1fr 1fr;gap:30px}}
.geo-split__c{background:#fff;border:1px solid #efe4d8;border-radius:16px;padding:16px 16px 18px}
.geo-split__h{margin:0;font-weight:700;font-size:1rem;color:#111}
.geo-split__h small{display:block;font-weight:400;color:#6b655e;font-size:.8rem;margin-top:2px}
.geo-split .geo-bar__l{font-size:.88rem}
.geo-split .geo-bar b{font-size:1.25rem}
.geo-method{margin:30px 0;padding:22px 20px;border-radius:18px;background:#111;color:#f3ede6;border-left:4px solid var(--o,#FF6B00)}
.geo-method__k{margin:0 0 10px;font:600 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--o,#FF6B00)}
.geo-method ul{margin:0;padding:0 0 0 18px}
.geo-method li{margin:8px 0;font-size:.95rem;line-height:1.55}
.geo-method b{color:#fff}
.geo-mock .geo-ans{background:#232323;border-radius:14px;padding:12px;margin-top:10px;color:#e9e3dc;font-size:.84rem}
.geo-ans__q{margin:0 0 10px;color:#a9a39b;font-size:.78rem}
.geo-ans__q em{color:#f2ede7;font-style:normal}
.geo-ans__r{display:flex;align-items:center;gap:8px;margin:6px 0;padding:8px 10px;border-radius:10px;background:#2c2c2c;font-weight:600}
.geo-ans__r i{width:18px;height:18px;border-radius:5px;background:#4a4a4a;flex:none}
.geo-ans__r small{margin-left:auto;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--o,#FF6B00)}
.geo-ans__r--o{outline:2px solid var(--o,#FF6B00);box-shadow:0 0 18px rgba(255,107,0,.35)}
.geo-ans__r--o i{background:var(--o,#FF6B00)}
.geo-ans__s{margin:10px 0 0;font-size:.74rem;color:#a9a39b;line-height:1.4}
.geo-loop{background:radial-gradient(120% 90% at 100% 0%,#2a1a0e 0%,#111 55%);border-color:#222;color:#f5efe8}
.geo-loop figcaption{color:#a9a39b}
.geo-lp{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:14px;position:relative}
@media(min-width:760px){.geo-lp{grid-template-columns:repeat(4,1fr);gap:12px}}
.geo-lp__s{position:relative;background:#1d1d1d;border:1.5px solid #3a3a3a;border-radius:16px;padding:16px 16px 16px 60px;color:#cfc8c0;font-size:.92rem;line-height:1.45;opacity:1;transform:none;transition:opacity .6s var(--ease,ease),transform .6s var(--ease,ease)}
@media(min-width:760px){.geo-lp__s{padding:56px 14px 16px}}
.geo-lp__s b{display:block;color:#fff;font-size:1.02rem;line-height:1.3;margin-bottom:4px}
.geo-lp__s em{display:inline-block;margin-top:8px;font-style:normal;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#111;background:#FF6B00;border-radius:99px;padding:4px 10px}
.geo-lp__s--o{background:#2a1a0e;border-color:#FF6B00;box-shadow:0 0 28px rgba(255,107,0,.25)}
.geo-lp__n{position:absolute;left:16px;top:16px;width:30px;height:30px;border-radius:50%;background:#FF6B00;color:#111;font:700 .95rem/30px var(--sans);text-align:center}
.geo-lp__s:not(:last-child)::after{content:"";position:absolute;left:30px;bottom:-15px;width:2px;height:14px;background:#FF6B00}
@media(min-width:760px){.geo-lp__s:not(:last-child)::after{left:auto;right:-13px;bottom:auto;top:30px;width:12px;height:2px}}
.geo-lp__back{display:flex;align-items:center;gap:8px;margin:14px 0 0;color:#f5efe8;font-size:.9rem}
.crv-js .geo-loop:not(.is-in) .geo-lp__s{opacity:0;transform:translateY(12px)}
.geo-loop.is-in .geo-lp__s:nth-child(2){transition-delay:.15s}.geo-loop.is-in .geo-lp__s:nth-child(3){transition-delay:.3s}.geo-loop.is-in .geo-lp__s:nth-child(4){transition-delay:.45s}
@media (prefers-reduced-motion:reduce){.geo-lp__s{transition:none}}

@media (prefers-reduced-motion:reduce){.geo-bar__t i{transition:none}}
.geo-plan{list-style:none;margin:22px 0;padding:0;display:grid;gap:12px;counter-reset:gp}
@media(min-width:760px){.geo-plan{grid-template-columns:1fr 1fr}}
.geo-plan__i{counter-increment:gp;position:relative;background:#fff;border:1px solid #efe4d8;border-radius:16px;padding:16px 16px 16px 58px}
.geo-plan__i::before{content:counter(gp);position:absolute;left:16px;top:16px;width:30px;height:30px;border-radius:50%;background:#111;color:#fff;font:700 .9rem/30px var(--sans);text-align:center}
.geo-plan__i:nth-child(2)::before,.geo-plan__i:nth-child(4)::before{background:var(--o,#FF6B00);color:#111}
.geo-plan__w{display:block;font:600 .7rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--o,#FF6B00)}
.geo-plan__i b{display:block;margin:4px 0;font-size:1.02rem;color:#111}
.geo-plan__i span:last-child{display:block;font-size:.93rem;line-height:1.5;color:#4a4540}
.geo-score{margin:24px 0;padding:20px 16px;border-radius:20px;background:#FFF8F1;border:1px solid #efe4d8}
.geo-score__k{margin:0;font:600 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--o,#FF6B00)}
.geo-score__h{margin:4px 0 6px;font:400 1.5rem/1.15 var(--serif);color:#111}
.geo-q{border:0;margin:0;padding:16px 0;border-top:1px solid #efe4d8;min-width:0}
.geo-q legend{float:left;width:100%;padding:0;font-size:1rem;line-height:1.45;color:#1f1b17;font-weight:600}
.geo-q__n{display:inline-block;min-width:30px;color:var(--o,#FF6B00);font-weight:700}
.geo-q__o{clear:both;display:flex;gap:8px;padding-top:10px;flex-wrap:wrap}
.geo-q__o button{flex:1 1 0;min-width:78px;min-height:44px;border-radius:12px;border:1.5px solid #d9cfc4;background:#fff;color:#111;font:600 .95rem var(--sans);cursor:pointer}
.geo-q__o button[aria-pressed="true"]{background:#111;border-color:#111;color:#fff}
.geo-q__o button[data-v="1"][aria-pressed="true"]{background:var(--o,#FF6B00);border-color:var(--o,#FF6B00);color:#111}
.geo-q__o button:focus-visible{outline:3px solid var(--o,#FF6B00);outline-offset:2px}
.geo-q__tip{margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#fff;border-left:3px solid var(--o,#FF6B00);font-size:.92rem;line-height:1.5;color:#3b3631}
.geo-q__tip b{color:#111}
.geo-res{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:12px;padding:18px;border-radius:18px;background:#111;color:#f5efe8;position:sticky;bottom:8px;z-index:2}
.geo-res__ring{position:relative;width:96px;height:96px;flex:none}
.geo-res__ring svg{width:96px;height:96px;transform:rotate(-90deg)}
.geo-res__bg{fill:none;stroke:#2c2c2c;stroke-width:10}
.geo-res__fg{fill:none;stroke:var(--o,#FF6B00);stroke-width:10;stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:326.7;transition:stroke-dashoffset .6s var(--ease,ease)}
.geo-res__n{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;gap:1px}
.geo-res__n b{font:400 2rem/1 var(--serif);color:#fff}
.geo-res__n span{font-size:.75rem;color:#a9a39b;align-self:flex-end;margin-bottom:30px}
.geo-res__t{flex:1 1 200px;min-width:0}
.geo-res__b{margin:0;font-weight:700;font-size:1.05rem;color:#fff}
.geo-res__p{margin:4px 0 0;font-size:.9rem;line-height:1.45;color:#cfc8c0}
.geo-res__l{margin:8px 0 0;padding-left:18px;font-size:.88rem;line-height:1.45;color:#f0e9e1}
.geo-res__l li{margin:4px 0}
.geo-res__x{margin-top:10px;background:none;border:0;color:#a9a39b;text-decoration:underline;font:inherit;font-size:.82rem;cursor:pointer;padding:6px 0}
.geo-res.is-done{position:static}
.geo-dl{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}
.geo-dl li{background:#fff;border:1px solid #efe4d8;border-radius:14px;padding:14px 16px}
.geo-dl a{font-weight:700;color:#111;text-decoration-color:var(--o,#FF6B00);text-underline-offset:3px}
.geo-dl span{display:block;margin-top:4px;font-size:.88rem;color:#5c5650;line-height:1.45}
@media(max-width:420px){.geo-res{gap:12px;padding:14px}.geo-res__ring,.geo-res__ring svg{width:80px;height:80px}.geo-res__n span{margin-bottom:24px}}
@media print{.geo-score,.geo-res{display:none}}

/* tables: same pattern as the ChatGPT Ads article */
.cr-tw{overflow-x:auto;margin:18px 0}.cr-t{border-collapse:collapse;width:100%;font-size:15px;line-height:1.45}.cr-t th,.cr-t td{border:1px solid rgba(0,0,0,.12);padding:9px 10px;text-align:left;vertical-align:top}.cr-t th{background:#111;color:#fff;font-weight:600}.cr-t tr:nth-child(even) td{background:rgba(255,107,0,.05)}@media (max-width:600px){.cr-t thead{display:none}.cr-t,.cr-t tbody,.cr-t tr,.cr-t td{display:block;width:100%}.cr-t tr{border:1px solid rgba(0,0,0,.12);border-radius:10px;margin:0 0 10px;padding:6px 0;background:#fff}.cr-t td{border:0;padding:4px 12px;box-sizing:border-box;overflow-wrap:anywhere}.cr-t tr:nth-child(even) td{background:none}.cr-t td:before{content:attr(data-l);display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.6}}
