/* templates.css — page and section styles:
   homepage sections, service/GEO pages, industries, snapshot, blog. */

/* ===== HOMEPAGE: HERO ===== */
/* HERO */
.hero{padding:96px 0 80px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;left:50%;bottom:-10%;transform:translateX(-50%);width:1100px;height:1100px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.22) 0%,rgba(52,183,154,0.10) 38%,rgba(242,139,130,0.05) 62%,rgba(251,251,249,0) 72%);z-index:0;pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(251,251,249,0.4) 0%,rgba(251,251,249,0) 30%);z-index:0;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr);gap:72px;align-items:center;position:relative;z-index:1}
.hero-grid>div{min-width:0;max-width:100%}
.monitor{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 1px 0 rgba(0,0,0,0.02);max-width:100%;box-sizing:border-box}
.hero h1{font-size:52px;line-height:1.07;letter-spacing:-0.03em;margin-bottom:26px}
.hero h1 .dom{position:relative;white-space:nowrap}
.hero h1 .dom::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:8px;background:var(--teal);opacity:0.32;z-index:-1;border-radius:2px}
.hero-sub{font-size:20px;font-family:'Sora',sans-serif;font-weight:400;color:var(--ink);margin-bottom:20px;letter-spacing:-0.01em}
.hero-body{font-size:16.5px;color:var(--gray);line-height:1.72;max-width:480px;margin-bottom:34px}
.hero-ctas{display:flex;gap:13px;margin-bottom:40px}
.btn-primary{background:var(--ink);color:var(--white);text-decoration:none;font-size:15px;font-weight:500;padding:15px 28px;border-radius:9px;transition:.15s;display:inline-flex;align-items:center;gap:9px;border:none;cursor:pointer}
.btn-primary:hover{background:var(--teal)}
.btn-ghost{background:transparent;color:var(--ink);text-decoration:none;font-size:15px;font-weight:500;padding:15px 26px;border-radius:9px;border:1px solid var(--line);transition:.15s;display:inline-flex;align-items:center;gap:9px}
.btn-ghost:hover{border-color:var(--ink)}
.hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:34px}
.spec-pill{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 14px;transition:border-color .15s,transform .15s}
.spec-pill:hover{border-color:var(--teal);transform:translateY(-1px)}
.spec-pill .ic{color:var(--teal);display:flex;align-items:center}
.spec-pill .ic svg{width:13px;height:13px;display:block}
.trusted-label{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gray-light);margin-bottom:14px}
.trusted-row{display:flex;flex-wrap:wrap;gap:24px 28px;align-items:center}
.trusted-row span{font-family:'Sora',sans-serif;font-size:15px;font-weight:500;color:#B8B8B2;letter-spacing:-0.01em}

/* HERO CARD */
.monitor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.monitor-title{font-family:'Sora',sans-serif;font-size:14px;font-weight:500}
.monitor-live{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--teal);display:flex;align-items:center;gap:6px;letter-spacing:0.05em}
.monitor-live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.3}}
.mrow{margin-bottom:16px}
.mrow-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px}
.mrow-name{font-size:13px;color:var(--ink);font-weight:500}
.mrow-pct{font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--ink);font-weight:500}
.mrow-pct.low{color:var(--gray-light)}
.mtrack{height:6px;background:#F0F0EC;border-radius:4px;overflow:hidden}
.mfill{height:100%;border-radius:4px;background:var(--teal)}
.mfill.low{background:#D6D6D0}
.monitor-div{height:1px;background:var(--line);margin:22px 0 20px}
.monitor-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mstat{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px}
.mstat-num{font-family:'Sora',sans-serif;font-size:27px;font-weight:600;color:var(--ink);letter-spacing:-0.03em;line-height:1}
.mstat-num .u{color:var(--teal)}
.mstat-lbl{font-size:11.5px;color:var(--gray);margin-top:6px;line-height:1.4}

/* ===== HOMEPAGE: CONTRAST / METHOD / CASE / MANIFESTO ===== */
/* CONTRAST */
.contrast{padding:0}
.contrast{position:relative;overflow:hidden;padding:0 0 108px}
.contrast::before{content:"";position:absolute;left:50%;top:30%;transform:translateX(-50%);width:1000px;height:900px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.16) 0%,rgba(52,183,154,0.07) 42%,rgba(242,139,130,0.04) 64%,rgba(251,251,249,0) 73%);z-index:0;pointer-events:none}
.contrast-head{text-align:center;padding:96px 0 8px;position:relative;z-index:1}
.contrast-head .eyebrow{justify-content:center}
.contrast-head .eyebrow::before{display:none}
.contrast-head h2{font-size:44px;letter-spacing:-0.03em;line-height:1.1;margin-top:14px}
.contrast-head p{font-size:17px;color:var(--gray);max-width:540px;margin:16px auto 0;line-height:1.6}
.contrast-grid{position:relative;z-index:1;max-width:1180px;margin:56px auto 0;padding:0 40px;display:grid;grid-template-columns:1fr auto 1fr;gap:0;align-items:stretch}
.contrast-col{padding:40px 40px;border-radius:18px;border:1px solid var(--line);background:var(--white)}
.contrast-old{background:rgba(245,245,242,0.7);border-color:var(--line);opacity:0.92}
.contrast-new{background:var(--white);border-color:rgba(52,183,154,0.35);box-shadow:0 0 0 1px rgba(52,183,154,0.08),0 8px 40px rgba(52,183,154,0.08)}
.contrast-label{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;margin-bottom:22px;display:flex;align-items:center;gap:9px}
.contrast-old .contrast-label{color:var(--gray-light)}
.contrast-old .contrast-label::before{content:"";width:7px;height:7px;border-radius:50%;background:#C9C9C3}
.contrast-new .contrast-label{color:var(--teal-dark)}
.contrast-new .contrast-label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(52,183,154,0.18)}
.contrast-col h3{font-size:24px;margin-bottom:14px;letter-spacing:-0.02em;line-height:1.25}
.contrast-old h3{color:var(--gray)}
.contrast-new h3{color:var(--ink)}
.contrast-col p{font-size:15.5px;line-height:1.7;margin-bottom:20px}
.contrast-old p{color:var(--gray-light)}
.contrast-new p{color:var(--gray)}
.contrast-points{list-style:none;display:flex;flex-direction:column;gap:10px}
.contrast-points li{font-size:14px;display:flex;align-items:flex-start;gap:10px;line-height:1.5}
.contrast-old .contrast-points li{color:var(--gray-light)}
.contrast-new .contrast-points li{color:var(--ink)}
.cp-ic{flex-shrink:0;margin-top:2px;width:16px;height:16px}
.contrast-divider{display:flex;align-items:center;justify-content:center;padding:0 22px}
.contrast-arrow{width:46px;height:46px;border-radius:50%;background:var(--white);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--teal);box-shadow:0 4px 16px rgba(0,0,0,0.04)}

/* METHODOLOGY */
.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative;margin-top:20px}
.method-line{position:absolute;top:26px;left:8%;right:8%;height:1px;background:var(--line);z-index:0}
.mstep{position:relative;z-index:1;padding-right:32px}
.mstep:last-child{padding-right:0}
.mstep-num{font-family:'Sora',sans-serif;font-size:14px;font-weight:600;color:var(--teal);width:52px;height:52px;border:1px solid var(--line);background:var(--paper);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.mstep h3{font-size:19px;margin-bottom:12px;letter-spacing:-0.02em;line-height:1.25}
.mstep p{font-size:14.5px;color:var(--gray);line-height:1.65;margin-bottom:18px}
.mstep-tags{display:flex;flex-wrap:wrap;gap:7px}
.mtag{font-size:11.5px;color:var(--teal-dark);background:var(--teal-soft);padding:5px 11px;border-radius:6px;font-weight:500}

/* CASE STUDY */
.case{background:var(--ink);color:var(--white)}
.case .sec-head h2{color:var(--white)}
.case .sec-head p{color:var(--gray-light)}
.case-card{background:var(--ink-soft);border:1px solid var(--line-dark);border-radius:20px;padding:44px}
.case-badge{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.08em;color:var(--teal);border:1px solid rgba(52,183,154,0.3);padding:6px 13px;border-radius:7px;margin-bottom:26px;text-transform:uppercase}
.case-problem{font-size:18px;color:#C8C8C4;line-height:1.65;max-width:680px;margin-bottom:18px;font-family:'Sora',sans-serif;font-weight:400;letter-spacing:-0.01em}
.case-result{font-size:16px;color:var(--gray-light);line-height:1.7;max-width:680px;margin-bottom:38px}
.case-result b{color:var(--white);font-weight:500}
.case-timeline{display:flex;flex-direction:column;gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);border-radius:12px;overflow:hidden;margin-bottom:40px}
.case-tl-row{background:var(--ink-soft);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.case-tl-step{font-size:14.5px;color:var(--white);display:flex;align-items:center;gap:14px}
.case-tl-step .n{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--teal);min-width:20px}
.case-tl-status{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gray);letter-spacing:0.04em;white-space:nowrap}
.case-tl-status.go{color:var(--teal)}
.case-results{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-top:38px;border-top:1px solid var(--line-dark)}
.cres-num{font-family:'Sora',sans-serif;font-size:46px;font-weight:600;color:var(--teal);letter-spacing:-0.04em;line-height:1}
.cres-lbl{font-size:13.5px;color:var(--gray-light);margin-top:10px;line-height:1.45}

/* MANIFESTO */
.manifesto{position:relative;overflow:hidden;padding:140px 0;text-align:center}
.manifesto::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:1000px;height:700px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.10) 0%,rgba(242,139,130,0.04) 50%,rgba(251,251,249,0) 70%);z-index:0;pointer-events:none}
.manifesto .wrap{position:relative;z-index:1}
.manifesto .eyebrow{justify-content:center}
.manifesto .eyebrow::before{display:none}
.manifesto-lines{max-width:860px;margin:36px auto 0}
.m-line{font-family:'Sora',sans-serif;font-size:34px;font-weight:500;line-height:1.32;letter-spacing:-0.025em;color:var(--ink);opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.m-line.show{opacity:1;transform:translateY(0)}
.m-line .muted{color:var(--gray-light)}
.m-end{display:block;margin-top:34px;font-family:'Sora',sans-serif;font-size:34px;font-weight:600;letter-spacing:-0.025em;color:var(--teal);opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.m-end.show{opacity:1;transform:translateY(0)}
.m-end .arch{display:block;height:2px;width:0;background:var(--teal);margin:22px auto 0;transition:width 1s ease .3s;border-radius:2px}
.m-end.show .arch{width:120px}

/* ===== HOMEPAGE: CONTELLECTOS ===== */
/* CONTELLECT OS */
.cos{position:relative;overflow:hidden;padding:108px 0}
.cos::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:1100px;height:900px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.13) 0%,rgba(52,183,154,0.06) 44%,rgba(242,139,130,0.035) 64%,rgba(251,251,249,0) 73%);z-index:0;pointer-events:none}
.cos-inner{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 40px}
.cos-head{text-align:center;max-width:640px;margin:0 auto 56px}
.cos-head .eyebrow{justify-content:center}
.cos-head .eyebrow::before{display:none}
.cos-badge{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--teal-dark);background:rgba(52,183,154,0.08);border:1px solid rgba(52,183,154,0.25);padding:6px 14px;border-radius:999px;margin-bottom:18px}
.cos-badge .os-dot{width:6px;height:6px;border-radius:50%;background:var(--teal);animation:pulse 2s infinite}
.cos-head h2{font-size:42px;letter-spacing:-0.03em;line-height:1.12;margin-bottom:14px}
.cos-head p{font-size:17px;color:var(--gray);line-height:1.65}
.cos-human{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:var(--white);font-size:13.5px;color:var(--ink);font-weight:500}
.cos-human .ch-ic{color:var(--teal);display:flex;align-items:center}
.cos-human .ch-ic svg{width:15px;height:15px;display:block}
.cos-human .ch-sep{color:var(--gray-light);font-weight:400}
.cos-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:start}
.cos-pipeline{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:14px;position:relative}
.cos-pipe-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 16px;border-bottom:1px solid var(--line);margin-bottom:8px}
.cos-pipe-title{display:flex;align-items:center;gap:9px;font-family:'Sora',sans-serif;font-size:14px;font-weight:500}
.cos-pipe-title .pt-dot{width:9px;height:9px;border-radius:50%;background:var(--teal)}
.cos-pipe-status{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--teal);letter-spacing:0.04em}
.cos-stages{position:relative}
.cos-railline{position:absolute;left:31px;top:24px;bottom:24px;width:2px;background:var(--line);z-index:0}
.cos-railfill{position:absolute;left:31px;top:24px;width:2px;background:var(--teal);z-index:1;height:0;transition:height .5s ease}
.cos-stage{position:relative;z-index:2;display:flex;align-items:flex-start;gap:16px;padding:11px 16px;border-radius:12px;cursor:pointer;transition:background .25s}
.cos-stage:hover{background:rgba(52,183,154,0.04)}
.cos-stage.active{background:rgba(52,183,154,0.07)}
.cos-num{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--white);border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--gray-light);transition:all .3s}
.cos-stage.active .cos-num{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 0 0 5px rgba(52,183,154,0.15)}
.cos-stage.done .cos-num{background:rgba(52,183,154,0.12);border-color:var(--teal);color:var(--teal-dark)}
.cos-stext{padding-top:4px}
.cos-stext h4{font-family:'Sora',sans-serif;font-size:15px;font-weight:500;color:var(--gray);transition:color .3s;letter-spacing:-0.01em}
.cos-stage.active .cos-stext h4,.cos-stage.done .cos-stext h4{color:var(--ink)}
.cos-detail{position:sticky;top:100px}
.cos-stage-detail{display:none}
.cos-detail-card{background:var(--white);border:1px solid rgba(52,183,154,0.3);border-radius:20px;padding:32px;box-shadow:0 8px 40px rgba(52,183,154,0.07)}
.cos-detail-tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--teal-dark);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.cos-detail-tag .dt-num{background:var(--teal);color:#fff;width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px}
.cos-detail-card h3{font-size:24px;letter-spacing:-0.02em;margin-bottom:14px;line-height:1.2;color:var(--ink)}
.cos-detail-card p{font-size:15.5px;color:var(--gray);line-height:1.7;margin-bottom:22px}
.cos-chips{display:flex;flex-wrap:wrap;gap:8px}
.cos-chip{font-size:12px;color:var(--teal-dark);background:rgba(52,183,154,0.09);padding:6px 12px;border-radius:7px;font-weight:500}
.cos-detail-card.swap{animation:rotIn .45s ease both}
/* COS DASHBOARD MOCKUP */
.cos-app-wrap{position:relative;z-index:1;max-width:1180px;margin:64px auto 0;padding:0 40px}
.cos-app-label{text-align:center;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--gray-light);margin-bottom:20px}
.cos-app{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 24px 80px rgba(20,20,20,0.08),0 2px 8px rgba(20,20,20,0.03)}
.cos-app-bar{display:flex;align-items:center;gap:8px;padding:13px 18px;border-bottom:1px solid var(--line);background:rgba(245,245,242,0.5)}
.cos-dot{width:11px;height:11px;border-radius:50%}
.cos-dot.r{background:#F28B82}.cos-dot.y{background:#EFC15B}.cos-dot.g{background:#34B79A}
.cos-app-url{margin-left:14px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--gray-light);background:var(--white);border:1px solid var(--line);border-radius:7px;padding:5px 14px}
.cos-app-body{display:grid;grid-template-columns:212px 1fr}
.cos-side{border-right:1px solid var(--line);padding:18px 14px;background:rgba(251,251,249,0.6)}
.cos-side-brand{display:flex;align-items:center;gap:8px;font-family:'Sora',sans-serif;font-size:13.5px;font-weight:500;padding:0 8px 16px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.cos-side-brand .sb-dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.cos-nav-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:9px;font-size:13px;color:var(--gray);margin-bottom:2px;cursor:default}
.cos-nav-item svg{width:15px;height:15px;flex-shrink:0;stroke:var(--gray-light)}
.cos-nav-item.on{background:rgba(52,183,154,0.1);color:var(--teal-dark);font-weight:500}
.cos-nav-item.on svg{stroke:var(--teal)}
.cos-nav-label{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--gray-light);padding:14px 10px 6px}
.cos-main{padding:24px 26px}
.cos-main-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.cos-main-title{font-family:'Sora',sans-serif;font-size:18px;font-weight:500}
.cos-main-sub{font-size:12.5px;color:var(--gray-light);margin-top:2px}
.cos-run-btn{background:var(--teal);color:#fff;font-size:12.5px;font-weight:500;padding:8px 16px;border-radius:8px;display:flex;align-items:center;gap:7px}
.cos-run-btn svg{width:13px;height:13px}
.cos-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
.cos-stat{border:1px solid var(--line);border-radius:12px;padding:14px}
.cos-stat-lbl{font-size:11px;color:var(--gray-light);margin-bottom:7px}
.cos-stat-val{font-family:'Sora',sans-serif;font-size:21px;font-weight:600;letter-spacing:-0.02em}
.cos-stat-val .up{color:var(--teal);font-size:12px;font-weight:500}
.cos-panels{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}
.cos-panel{border:1px solid var(--line);border-radius:12px;padding:16px}
.cos-panel-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.cos-panel-t{font-family:'Sora',sans-serif;font-size:13.5px;font-weight:500}
.cos-panel-tag{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--teal);background:rgba(52,183,154,0.1);padding:3px 8px;border-radius:5px}
.cos-task{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--ink)}
.cos-task:last-child{border-bottom:none}
.cos-task .tk-ic{width:18px;height:18px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.cos-task .tk-ic.done{background:rgba(52,183,154,0.15)}
.cos-task .tk-ic.done svg{width:11px;height:11px;stroke:var(--teal)}
.cos-task .tk-ic.run{background:rgba(52,183,154,0.15);position:relative}
.cos-task .tk-ic.run::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal);animation:pulse 1.4s infinite}
.cos-task .tk-ic.wait{border:1.5px solid var(--line)}
.cos-task .tk-meta{margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--gray-light)}
.cos-task .tk-meta.go{color:var(--teal)}
.cos-mini-bars{display:flex;flex-direction:column;gap:11px}
.cos-mbar-row{}
.cos-mbar-top{display:flex;justify-content:space-between;font-size:11.5px;margin-bottom:5px}
.cos-mbar-top .nm{color:var(--ink)}
.cos-mbar-top .pc{font-family:'JetBrains Mono',monospace;color:var(--gray)}
.cos-mtrack{height:6px;background:#F0F0EC;border-radius:4px;overflow:hidden}
.cos-mfill{height:100%;border-radius:4px;background:var(--teal)}
@media(max-width:900px){
  .cos-app-body{grid-template-columns:1fr}
  .cos-side{display:none}
  .cos-stat-row{grid-template-columns:1fr 1fr}
  .cos-panels{grid-template-columns:1fr}
}
@media(max-width:900px){
  .cos-grid{grid-template-columns:1fr;gap:28px}
  .cos-detail{position:static}
  .cos-head h2{font-size:32px}
}

/* ===== HOMEPAGE: QUIZ ===== */
/* GEO QUIZ */
.quiz{position:relative;overflow:hidden;padding:68px 0}
.quiz::before{content:"";position:absolute;left:50%;top:20%;transform:translateX(-50%);width:900px;height:800px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.12) 0%,rgba(242,139,130,0.04) 52%,rgba(251,251,249,0) 70%);z-index:0;pointer-events:none}
.quiz-inner{position:relative;z-index:1;max-width:620px;margin:0 auto;padding:0 40px;text-align:center}
.quiz-inner .eyebrow{justify-content:center}
.quiz-inner .eyebrow::before{display:none}
.quiz-inner>h2{font-size:38px;letter-spacing:-0.03em;line-height:1.12;margin-bottom:12px}
.quiz-lead{font-size:16px;color:var(--gray);margin-bottom:36px}
.quiz-box{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:32px;text-align:left;box-shadow:0 8px 40px rgba(20,20,20,0.05)}
.quiz-prog-track{height:3px;background:var(--line);border-radius:2px;margin-bottom:26px;overflow:hidden}
.quiz-prog-fill{height:3px;border-radius:2px;background:var(--teal);transition:width .45s ease;width:0}
.quiz-step{font-size:11px;color:var(--gray-light);letter-spacing:0.1em;text-transform:uppercase;margin-bottom:8px;font-weight:500}
.quiz-q{font-size:20px;font-weight:500;font-family:'Sora',sans-serif;color:var(--ink);line-height:1.4;margin-bottom:22px;letter-spacing:-0.015em}
.quiz-opts{display:flex;flex-direction:column;gap:9px}
.quiz-opt{background:var(--white);border:1px solid var(--line);border-radius:11px;padding:14px 16px;text-align:left;font-size:14.5px;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:12px;transition:border-color .15s,background .15s;font-family:'DM Sans',sans-serif}
.quiz-opt:hover{border-color:var(--teal);background:rgba(52,183,154,0.03)}
.quiz-opt.sel{border-color:var(--teal);background:rgba(52,183,154,0.07)}
.quiz-dot{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line);flex-shrink:0;transition:.15s}
.quiz-opt.sel .quiz-dot{background:var(--teal);border-color:var(--teal);box-shadow:inset 0 0 0 3px #fff}
.quiz-insight{min-height:20px;margin-top:14px;font-size:13.5px;color:var(--teal-dark);opacity:0;transition:opacity .25s}
.quiz-insight.show{opacity:1}
.quiz-next{margin-top:20px;width:100%;background:var(--teal);color:#fff;border:none;padding:13px;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;opacity:.4;pointer-events:none;transition:opacity .2s;font-family:'DM Sans',sans-serif}
.quiz-next.on{opacity:1;pointer-events:auto}
.quiz-next:hover{background:var(--teal-dark)}
/* result */
.quiz-result{text-align:center}
.quiz-ring{position:relative;width:130px;height:130px;margin:0 auto 18px}
.quiz-ring-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:'Sora',sans-serif;font-size:32px;font-weight:600;color:var(--ink)}
.quiz-badge{display:inline-block;padding:5px 14px;border-radius:999px;font-size:13px;font-weight:500;margin-bottom:14px}
.qb-risk{background:#FCEBEB;color:#A32D2D}
.qb-partial{background:#FAEEDA;color:#854F0B}
.qb-ready{background:#EAF3DE;color:#3B6D11}
.quiz-result h3{font-size:20px;font-family:'Sora',sans-serif;font-weight:500;color:var(--ink);margin-bottom:10px}
.quiz-result p.qr-desc{font-size:14.5px;color:var(--gray);line-height:1.65;margin-bottom:22px;text-align:center}
.quiz-breakdown{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:22px;text-align:left}
.qbd-row{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-bottom:1px solid var(--line);font-size:13px;color:var(--gray);line-height:1.45}
.qbd-row:last-child{border-bottom:none}
.qbd-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:5px}
.quiz-email{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:10px;font-size:14.5px;font-family:'DM Sans',sans-serif;color:var(--ink);margin-bottom:10px;box-sizing:border-box;transition:border-color .15s}
.quiz-email::placeholder{color:var(--gray-light)}
.quiz-email:focus{outline:none;border-color:var(--teal)}
.quiz-email.err{border-color:#E24B4A}
.quiz-email-err{font-size:12px;color:#E24B4A;margin:-4px 0 10px;display:none}
.quiz-email-err.show{display:block}
.quiz-cta{display:inline-block;width:100%;background:var(--teal);color:#fff;border:none;padding:14px;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;text-decoration:none;box-shadow:0 8px 24px rgba(52,183,154,0.25);font-family:'DM Sans',sans-serif;box-sizing:border-box}
.quiz-cta:hover{background:var(--teal-dark)}
.quiz-cta-note{font-size:12.5px;color:var(--gray-light);margin-top:12px}

/* ===== SERVICE PAGES (svc-*) — GEO page, industry pages ===== */
/* ===== GEO SERVICE PAGE ===== */
.nav-links a.active{color:var(--ink)}
.nav-links a.active::after{transform:scaleX(1)}

/* page hero */
.svc-hero{position:relative;overflow:hidden;padding:72px 0 64px}
.svc-hero::before{content:"";position:absolute;left:50%;top:-20%;transform:translateX(-50%);width:1100px;height:900px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.16) 0%,rgba(52,183,154,0.07) 42%,rgba(242,139,130,0.04) 64%,rgba(251,251,249,0) 73%);z-index:0;pointer-events:none}
.svc-hero .wrap{position:relative;z-index:1}
.svc-bread{font-size:12.5px;color:var(--gray-light);margin-bottom:20px;font-family:'JetBrains Mono',monospace;letter-spacing:0.04em}
.svc-bread a{color:var(--gray-light);text-decoration:none}
.svc-bread a:hover{color:var(--teal)}
.svc-hero h1{font-size:52px;line-height:1.08;letter-spacing:-0.03em;max-width:760px;margin-bottom:20px;font-weight:500}
.svc-hero .lead{font-size:19px;color:var(--gray);line-height:1.6;max-width:620px;margin-bottom:32px}
.svc-hero-ctas{display:flex;gap:13px;flex-wrap:wrap}

/* generic section heading reused */
.svc-sec{position:relative;padding:84px 0}
.svc-sec.tint{background:rgba(245,245,242,0.5)}
.svc-head{max-width:680px;margin-bottom:48px}
.svc-head.center{margin-left:auto;margin-right:auto;text-align:center}
.svc-head.center .eyebrow{justify-content:center}
.svc-head.center .eyebrow::before{display:none}
.svc-head h2{font-size:38px;letter-spacing:-0.03em;line-height:1.14;margin-bottom:14px}
.svc-head p{font-size:17px;color:var(--gray);line-height:1.65}

/* stat band */
.svc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--white)}
.svc-stat{padding:30px 26px;border-right:1px solid var(--line)}
.svc-stat:last-child{border-right:none}
.svc-stat-num{font-family:'Sora',sans-serif;font-size:38px;font-weight:600;letter-spacing:-0.03em;color:var(--ink);line-height:1}
.svc-stat-num .u{color:var(--teal)}
.svc-stat-lbl{font-size:13.5px;color:var(--gray);margin-top:10px;line-height:1.45}
.svc-stat-src{font-size:11px;color:var(--gray-light);margin-top:8px;font-family:'JetBrains Mono',monospace}

/* comparison table GEO vs SEO */
.cmp{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--white)}
.cmp-row{display:grid;grid-template-columns:1fr 1.4fr 1.4fr;border-bottom:1px solid var(--line)}
.cmp-row:last-child{border-bottom:none}
.cmp-row.head{background:rgba(245,245,242,0.6)}
.cmp-cell{padding:18px 22px;font-size:14.5px;color:var(--ink);line-height:1.5;border-right:1px solid var(--line)}
.cmp-cell:last-child{border-right:none}
.cmp-cell.label{font-weight:500;color:var(--gray);font-size:13.5px}
.cmp-cell.head-seo{font-family:'Sora',sans-serif;font-weight:500;color:var(--gray)}
.cmp-cell.head-geo{font-family:'Sora',sans-serif;font-weight:500;color:var(--teal-dark);display:flex;align-items:center;gap:8px}
.cmp-cell.head-geo::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal)}
.cmp-cell.geo{background:rgba(52,183,154,0.04)}

/* how it works pillars */
.svc-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc-pillar{border:1px solid var(--line);border-radius:16px;padding:28px 24px;background:var(--white);transition:border-color .2s,transform .2s}
.svc-pillar:hover{border-color:rgba(52,183,154,0.4);transform:translateY(-2px)}
.svc-pillar-ic{width:42px;height:42px;border-radius:11px;background:rgba(52,183,154,0.1);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.svc-pillar-ic svg{width:21px;height:21px;stroke:var(--teal)}
.svc-pillar h3{font-size:18px;margin-bottom:10px;letter-spacing:-0.015em;line-height:1.3}
.svc-pillar p{font-size:14.5px;color:var(--gray);line-height:1.62}

/* research / data viz bars */
.svc-research{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.svc-research-copy h2{font-size:34px;letter-spacing:-0.03em;line-height:1.16;margin-bottom:16px}
.svc-research-copy p{font-size:16px;color:var(--gray);line-height:1.7;margin-bottom:16px}
.svc-research-copy .src{font-size:12.5px;color:var(--gray-light);font-family:'JetBrains Mono',monospace}
.bars{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:30px}
.bars-title{font-family:'Sora',sans-serif;font-size:15px;font-weight:500;margin-bottom:6px}
.bars-sub{font-size:12.5px;color:var(--gray-light);margin-bottom:24px}
.bar-row{margin-bottom:18px}
.bar-row:last-child{margin-bottom:0}
.bar-top{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:7px}
.bar-top .nm{color:var(--ink)}
.bar-top .val{font-family:'JetBrains Mono',monospace;color:var(--teal-dark);font-weight:500}
.bar-track{height:9px;background:#F0F0EC;border-radius:5px;overflow:hidden}
.bar-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,var(--teal),var(--teal-dark));width:0;transition:width 1.1s cubic-bezier(.4,0,.2,1)}

/* process steps */
.svc-process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.svc-pline{position:absolute;top:26px;left:12%;right:12%;height:1px;background:var(--line);z-index:0}
.svc-pstep{position:relative;z-index:1;padding-right:24px}
.svc-pstep:last-child{padding-right:0}
.svc-pnum{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:600;font-size:15px;color:var(--teal);margin-bottom:20px}
.svc-pstep h3{font-size:17px;margin-bottom:9px;letter-spacing:-0.015em}
.svc-pstep p{font-size:14px;color:var(--gray);line-height:1.6}

/* signals list */
.svc-signals{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px}
.svc-signal{display:flex;gap:13px;align-items:flex-start;padding:4px 0}
.svc-signal-ic{width:24px;height:24px;border-radius:7px;background:rgba(52,183,154,0.1);flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:1px}
.svc-signal-ic svg{width:13px;height:13px;stroke:var(--teal)}
.svc-signal h4{font-size:15px;font-weight:500;margin-bottom:3px;letter-spacing:-0.01em}
.svc-signal p{font-size:13.5px;color:var(--gray);line-height:1.55}

/* responsive */
@media(max-width:980px){
  .svc-hero h1{font-size:40px}
  .svc-stats{grid-template-columns:1fr 1fr}
  .svc-stat:nth-child(2){border-right:none}
  .svc-stat:nth-child(1),.svc-stat:nth-child(2){border-bottom:1px solid var(--line)}
  .svc-pillars{grid-template-columns:1fr;gap:14px}
  .svc-research{grid-template-columns:1fr;gap:32px}
  .svc-process{grid-template-columns:1fr 1fr;gap:32px 0}
  .svc-pline{display:none}
  .cmp-row{grid-template-columns:1fr 1fr;font-size:13px}
  .cmp-cell.label{grid-column:1 / -1;background:rgba(245,245,242,0.6);padding-bottom:6px}
  .cmp-row.head .cmp-cell.label{display:none}
  .svc-head h2{font-size:30px}
}
@media(max-width:600px){
  .svc-hero{padding:48px 0 48px}
  .svc-hero h1{font-size:31px}
  .svc-hero .lead{font-size:16px}
  .svc-hero-ctas{flex-direction:column;align-items:stretch}
  .svc-hero-ctas .btn-primary,.svc-hero-ctas .btn-ghost{justify-content:center;text-align:center}
  .svc-sec{padding:52px 0}
  .svc-stats{grid-template-columns:1fr}
  .svc-stat{border-right:none;border-bottom:1px solid var(--line)}
  .svc-stat:last-child{border-bottom:none}
  .svc-stat-num{font-size:32px}
  .svc-signals{grid-template-columns:1fr;gap:12px}
  .svc-process{grid-template-columns:1fr;gap:28px}
  .svc-head h2{font-size:26px}
  .svc-research-copy h2{font-size:26px}
  .cmp-row{grid-template-columns:1fr}
  .cmp-cell{border-right:none}
  .cmp-cell.head-seo,.cmp-cell.head-geo{font-size:13px}
}
/* ===== INDUSTRIES HUB + SUBPAGE GRIDS ===== */
/* ===== INDUSTRIES ===== */
.nav-links a.active{color:var(--ink)}
.nav-links a.active::after{transform:scaleX(1)}

/* hub grid */
.ind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ind-card{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:14px;padding:20px 22px;background:var(--white);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.ind-card:hover{border-color:rgba(52,183,154,0.4);transform:translateY(-2px);box-shadow:0 8px 28px rgba(52,183,154,0.08)}
.ind-card-ic{width:44px;height:44px;border-radius:11px;background:rgba(52,183,154,0.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ind-card-ic svg{width:22px;height:22px;stroke:var(--teal);fill:none}
.ind-card-body{min-width:0}
.ind-card h3{font-size:16px;font-weight:500;color:var(--ink);letter-spacing:-0.01em;margin-bottom:3px}
.ind-card p{font-size:13px;color:var(--gray-light);display:flex;align-items:center;gap:5px}
.ind-card .arr{color:var(--teal);transition:transform .2s}
.ind-card:hover .arr{transform:translateX(3px)}

/* industry sub-page challenge cards */
.ind-challenges{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ind-chal{border:1px solid var(--line);border-radius:16px;padding:26px 24px;background:var(--white)}
.ind-chal-n{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--teal);margin-bottom:14px;letter-spacing:0.05em}
.ind-chal h3{font-size:17px;margin-bottom:10px;letter-spacing:-0.015em;line-height:1.3}
.ind-chal p{font-size:14px;color:var(--gray);line-height:1.62}

/* services rows */
.ind-services{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ind-svc{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:22px 24px;background:var(--white);transition:border-color .2s}
.ind-svc:hover{border-color:rgba(52,183,154,0.35)}
.ind-svc-ic{width:38px;height:38px;border-radius:10px;background:rgba(52,183,154,0.1);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.ind-svc-ic svg{width:19px;height:19px;stroke:var(--teal)}
.ind-svc h3{font-size:16px;font-weight:500;margin-bottom:6px;letter-spacing:-0.01em}
.ind-svc p{font-size:14px;color:var(--gray);line-height:1.6}

/* responsive */
@media(max-width:980px){
  .ind-grid{grid-template-columns:1fr 1fr}
  .ind-challenges{grid-template-columns:1fr;gap:14px}
  .ind-services{grid-template-columns:1fr}
}
@media(max-width:600px){
  .ind-grid{grid-template-columns:1fr}
}
/* ===== AI SEARCH SNAPSHOT ===== */
/* ===== AI SEARCH SNAPSHOT ===== */
.snap{max-width:600px;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 8px 40px rgba(20,20,20,0.05);margin-top:8px}
.snap-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.snap-title{font-family:'Sora',sans-serif;font-size:15px;font-weight:500;color:var(--ink)}
.snap-tag{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--gray-light);letter-spacing:0.06em}
.snap-sub{font-size:12.5px;color:var(--gray-light);margin-bottom:22px}
.snap-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.snap-cell{min-width:0}
.cell-label{font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--gray-light);font-weight:500;margin-bottom:14px}
.donut-wrap{display:flex;align-items:center;gap:16px}
.donut{position:relative;width:96px;height:96px;flex-shrink:0}
.donut-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}
.donut-num .v{font-family:'Sora',sans-serif;font-size:22px;font-weight:600;color:var(--ink);line-height:1}
.donut-num .l{font-size:9px;color:var(--gray-light);text-transform:uppercase;letter-spacing:0.05em}
.donut-leg{font-size:12px;color:var(--gray);line-height:1.7}
.donut-leg .dot{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:7px;vertical-align:middle}
.ebar{margin-bottom:11px}
.ebar:last-child{margin-bottom:0}
.ebar-top{display:flex;justify-content:space-between;font-size:11.5px;margin-bottom:5px}
.ebar-top .nm{color:var(--ink)}
.ebar-top .pc{font-family:'JetBrains Mono',monospace;color:var(--gray)}
.ebar-track{height:6px;background:#F0F0EC;border-radius:4px;overflow:hidden}
.ebar-fill{height:100%;border-radius:4px;background:var(--teal)}
.snap-gap{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:20px}
.gap-row{margin-bottom:14px}
.gap-row:last-child{margin-bottom:0}
.gap-top{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}
.gap-top .nm{color:var(--ink)}
.gap-top .pc{font-family:'JetBrains Mono',monospace;font-weight:500}
.gap-track{height:8px;background:#F0F0EC;border-radius:5px;overflow:hidden}
.gap-fill{height:100%;border-radius:5px}
.gap-you{background:var(--coral)}
.gap-comp{background:var(--teal)}
.gap-cap{font-size:11px;color:var(--gray-light);margin-top:4px}
.snap-journey{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:20px}
.journey{display:flex;align-items:flex-start;margin-top:12px}
.jstep{flex:1;text-align:center;position:relative}
.jstep-ic{width:36px;height:36px;border-radius:50%;background:rgba(52,183,154,0.1);display:flex;align-items:center;justify-content:center;margin:0 auto 9px;position:relative;z-index:1}
.jstep-ic svg{width:17px;height:17px;stroke:var(--teal);fill:none}
.jstep h5{font-size:12.5px;font-weight:500;color:var(--ink);margin-bottom:3px}
.jstep p{font-size:11px;color:var(--gray-light);line-height:1.4;padding:0 6px}
.jline{position:absolute;top:18px;left:60%;width:80%;height:1px;background:var(--line);z-index:0}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media(max-width:980px){
  .why-grid{grid-template-columns:1fr;gap:32px}
  .snap{max-width:none}
}
@media(max-width:600px){
  .snap{padding:20px}
  .snap-grid{gap:18px}
  .donut-wrap{flex-direction:column;align-items:flex-start;gap:12px}
  .journey{flex-direction:column;gap:16px}
  .jline{display:none}
  .jstep{display:flex;align-items:center;gap:12px;text-align:left}
  .jstep-ic{margin:0}
  .jstep p{padding:0}
}
/* ===== BLOG: INDEX / ARCHIVE / ARTICLE ===== */
/* ===== BLOG SYSTEM ===== */
.nav-links a.active{color:var(--ink)}
.nav-links a.active::after{transform:scaleX(1)}

/* blog hero / page intro */
.blog-hero{position:relative;overflow:hidden;padding:64px 0 36px}
.blog-hero::before{content:"";position:absolute;left:50%;top:-30%;transform:translateX(-50%);width:1000px;height:800px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.13) 0%,rgba(52,183,154,0.05) 44%,rgba(242,139,130,0.03) 64%,rgba(251,251,249,0) 73%);z-index:0;pointer-events:none}
.blog-hero .wrap{position:relative;z-index:1}
.blog-hero .eyebrow{margin-bottom:14px}
.blog-hero h1{font-size:44px;letter-spacing:-0.03em;line-height:1.1;margin-bottom:14px;font-weight:500}
.blog-hero p{font-size:17px;color:var(--gray);max-width:620px;line-height:1.6}
.blog-bread{font-size:12.5px;color:var(--gray-light);margin-bottom:18px;font-family:'JetBrains Mono',monospace;letter-spacing:0.04em}
.blog-bread a{color:var(--gray-light);text-decoration:none}
.blog-bread a:hover{color:var(--teal)}

/* category chips */
.cat-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.cat-chip{font-size:13px;font-weight:500;color:var(--gray);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 16px;text-decoration:none;transition:.15s}
.cat-chip:hover{border-color:var(--teal);color:var(--teal-dark)}
.cat-chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}

/* post meta line (shared) */
.pmeta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12.5px;color:var(--gray-light)}
.pmeta .pcat{color:var(--teal-dark);font-weight:500;background:rgba(52,183,154,0.1);padding:3px 10px;border-radius:6px;text-decoration:none;transition:.15s}
.pmeta .pcat:hover{background:rgba(52,183,154,0.18)}
.pmeta .sep{color:var(--line)}

/* featured post */
.feat{display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--white);margin-bottom:48px}
.feat-thumb{aspect-ratio:16/10;background:linear-gradient(135deg,rgba(52,183,154,0.18),rgba(242,139,130,0.12));position:relative;overflow:hidden;height:100%;min-height:300px}
.feat-thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--teal);opacity:0.5}
.feat-thumb .ph svg{width:64px;height:64px}
.feat-body{padding:40px 40px 40px 0}
.feat-body .pmeta{margin-bottom:14px}
.feat-body h2{font-size:30px;letter-spacing:-0.025em;line-height:1.2;margin-bottom:14px}
.feat-body h2 a{color:var(--ink);text-decoration:none}
.feat-body h2 a:hover{color:var(--teal-dark)}
.feat-body p{font-size:15.5px;color:var(--gray);line-height:1.6;margin-bottom:18px}

/* post grid */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.pcard{background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s,box-shadow .2s}
.pcard:hover{border-color:rgba(52,183,154,0.4);transform:translateY(-3px);box-shadow:0 12px 32px rgba(20,20,20,0.06)}
.pcard-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,rgba(52,183,154,0.16),rgba(242,139,130,0.1));position:relative}
.pcard-thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--teal);opacity:0.45}
.pcard-thumb .ph svg{width:40px;height:40px}
.pcard-body{padding:22px;display:flex;flex-direction:column;flex:1}
.pcard-body .pmeta{margin-bottom:12px}
.pcard h3{font-size:18px;letter-spacing:-0.015em;line-height:1.3;margin-bottom:10px}
.pcard h3 a{color:var(--ink);text-decoration:none}
.pcard h3 a:hover{color:var(--teal-dark)}
.pcard p{font-size:14px;color:var(--gray);line-height:1.55;margin-bottom:16px;flex:1}
.pcard-foot{font-size:12px;color:var(--gray-light);display:flex;align-items:center;gap:8px;margin-top:auto}

/* section block on main blog */
.blog-section{padding:56px 0}
.blog-section.tint{background:rgba(245,245,242,0.5)}
.blog-sec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px}
.blog-sec-head h2{font-size:26px;letter-spacing:-0.02em}
.blog-sec-head h2 a{color:var(--ink);text-decoration:none}
.blog-sec-head h2 a:hover{color:var(--teal-dark)}
.blog-sec-head .sub-cats{display:flex;flex-wrap:wrap;gap:8px}
.blog-sec-head .sub-cats a{font-size:12.5px;color:var(--gray);text-decoration:none;padding:5px 11px;border:1px solid var(--line);border-radius:999px;transition:.15s}
.blog-sec-head .sub-cats a:hover{border-color:var(--teal);color:var(--teal-dark)}

/* load more / pagination */
.blog-more{text-align:center;margin-top:44px}
.pagination{display:flex;justify-content:center;gap:6px;margin-top:44px}
.pagination a,.pagination span{min-width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;font-size:14px;color:var(--gray);text-decoration:none;transition:.15s;padding:0 8px}
.pagination a:hover{border-color:var(--teal);color:var(--teal-dark)}
.pagination .cur{background:var(--ink);color:#fff;border-color:var(--ink)}
.pagination .dots{border:none}

/* ===== ARTICLE / POST ===== */
.article-wrap{max-width:760px;margin:0 auto;padding:0 40px}
.article-hero{padding:48px 0 32px;position:relative;overflow:hidden}
.article-hero::before{content:"";position:absolute;left:50%;top:-40%;transform:translateX(-50%);width:900px;height:700px;border-radius:50%;background:radial-gradient(circle at center,rgba(52,183,154,0.1) 0%,rgba(251,251,249,0) 68%);z-index:0;pointer-events:none}
.article-hero .article-wrap{position:relative;z-index:1}
.article-hero h1{font-size:42px;letter-spacing:-0.03em;line-height:1.14;margin:14px 0 20px;font-weight:500}
.article-answer{font-size:19px;line-height:1.6;color:var(--ink);background:rgba(52,183,154,0.06);border-left:3px solid var(--teal);padding:18px 22px;border-radius:0 12px 12px 0;margin-bottom:8px}
.article-byline{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.article-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--teal-dark));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:15px;flex-shrink:0;font-family:'DM Sans',sans-serif}
.article-byline-txt{font-size:13.5px}
.article-byline-txt .nm{color:var(--ink);font-weight:500}
.article-byline-txt .dt{color:var(--gray-light);margin-top:1px}
.article-cover{aspect-ratio:16/8;background:linear-gradient(135deg,rgba(52,183,154,0.18),rgba(242,139,130,0.12));border-radius:18px;margin:8px auto 0;max-width:880px;position:relative;overflow:hidden}
.article-cover .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--teal);opacity:0.4}
.article-cover .ph svg{width:72px;height:72px}

/* article body typography */
.article-body{padding:40px 0 24px}
.article-body p{font-size:17px;line-height:1.75;color:#2A2A28;margin-bottom:22px}
.article-body h2{font-size:27px;letter-spacing:-0.02em;line-height:1.25;margin:44px 0 16px;color:var(--ink)}
.article-body h3{font-size:20px;letter-spacing:-0.015em;margin:32px 0 12px;color:var(--ink)}
.article-body ul,.article-body ol{margin:0 0 22px 0;padding-left:22px}
.article-body li{font-size:17px;line-height:1.7;color:#2A2A28;margin-bottom:9px}
.article-body a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:2px}
.article-body blockquote{border-left:3px solid var(--teal);padding:6px 0 6px 22px;margin:28px 0;font-size:19px;line-height:1.6;color:var(--gray);font-style:normal}
.article-body img{max-width:100%;border-radius:12px;margin:12px 0 26px}
.article-body .callout{background:rgba(52,183,154,0.06);border:1px solid rgba(52,183,154,0.2);border-radius:14px;padding:22px 24px;margin:28px 0}
.article-body .callout h4{font-size:15px;color:var(--teal-dark);margin-bottom:8px;font-family:'Sora',sans-serif;font-weight:500}
.article-body .callout p{font-size:15px;margin-bottom:0;color:var(--gray)}
.article-body figure{margin:12px 0 28px}
.article-body figcaption{font-size:13px;color:var(--gray-light);text-align:center;margin-top:8px}

/* article tags + share */
.article-foot{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:16px 0 40px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.article-tags{display:flex;flex-wrap:wrap;gap:8px}
.article-tags a{font-size:12.5px;color:var(--gray);background:rgba(245,245,242,0.8);border:1px solid var(--line);border-radius:7px;padding:5px 11px;text-decoration:none;transition:.15s}
.article-tags a:hover{border-color:var(--teal);color:var(--teal-dark)}
.article-share{display:flex;gap:8px}
.article-share a{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--gray);transition:.15s}
.article-share a:hover{border-color:var(--teal);color:var(--teal)}
.article-share svg{width:15px;height:15px}

/* related */
.related{padding:52px 0}
.related h2{font-size:24px;letter-spacing:-0.02em;margin-bottom:26px;text-align:center}

/* responsive */
@media(max-width:980px){
  .feat{grid-template-columns:1fr}
  .feat-thumb{min-height:200px;aspect-ratio:16/8}
  .feat-body{padding:28px}
  .post-grid{grid-template-columns:1fr 1fr}
  .blog-hero h1{font-size:34px}
  .article-hero h1{font-size:34px}
}
@media(max-width:600px){
  .blog-hero{padding:44px 0 28px}
  .blog-hero h1{font-size:28px}
  .blog-hero p{font-size:15.5px}
  .post-grid{grid-template-columns:1fr}
  .feat-body h2{font-size:24px}
  .blog-section{padding:44px 0}
  .article-wrap{padding:0 22px}
  .article-hero h1{font-size:28px}
  .article-answer{font-size:16.5px;padding:16px 18px}
  .article-body p,.article-body li{font-size:16px}
  .article-body h2{font-size:23px}
  .blog-sec-head h2{font-size:22px}
}
/* ===== RESPONSIVE (tablet + mobile) ===== */
/* ===== TABLET ===== */
@media(max-width:980px){
  .wrap,.nav-inner,.cos-inner,.cos-app-wrap,.contrast-grid{padding-left:28px;padding-right:28px}
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero{padding:64px 0 64px}
  .hero h1{font-size:46px}
  .hero::before{width:760px;height:760px}
  .nav-links{display:none}
  .nav-cta{display:none}
  .nav-right{display:none}
  .nav-toggle{display:flex}
  .contrast-grid{grid-template-columns:1fr;gap:16px;max-width:560px}
  .contrast-divider{padding:2px 0}
  .contrast-arrow{transform:rotate(90deg)}
  .contrast-head h2{font-size:34px}
  .method-steps{grid-template-columns:1fr;gap:32px;margin-top:8px}
  .method-line{display:none}
  .mstep{padding-right:0;max-width:none;display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start}
  .mstep-num{width:44px;height:44px;font-size:13px;margin-bottom:0;margin-top:2px}
  .mstep h3{font-size:18px;margin-bottom:10px}
  .mstep-content{min-width:0}
  .cos-grid{grid-template-columns:1fr;gap:28px}
  .cos-detail{display:none}
  .cos-stage{cursor:pointer}
  .cos-stage-detail{display:block!important;max-height:0;overflow:hidden;opacity:0;transition:max-height .4s ease,opacity .3s ease,margin .3s ease;margin-top:0}
  .cos-stage.active .cos-stage-detail{max-height:340px;opacity:1;margin-top:10px}
  .cos-stage-detail p{font-size:13.5px;color:var(--gray);line-height:1.6;margin-bottom:12px}
  .cos-stage-detail .cos-chips{display:flex;flex-wrap:wrap;gap:7px}
  .cos-head h2{font-size:34px}
  .cos-app-body{grid-template-columns:1fr}
  .cos-side{display:none}
  .cos-stat-row{grid-template-columns:1fr 1fr}
  .cos-panels{grid-template-columns:1fr}
  .case-results{grid-template-columns:repeat(3,1fr);gap:20px}
  .m-line,.m-end{font-size:28px}
  .fcta h2{font-size:40px}
  .fcta-card{padding:64px 32px}
  section{padding:80px 0}
}
/* ===== MOBILE ===== */
@media(max-width:600px){
  .wrap,.nav-inner,.cos-inner,.cos-app-wrap,.contrast-grid{padding-left:20px;padding-right:20px}
  .hero{padding:48px 0 56px}
  .hero h1{font-size:36px}
  .hero-sub{font-size:17px}
  .hero-body{font-size:15.5px}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn-primary,.hero-ctas .btn-ghost{justify-content:center}
  .hero-tags{gap:7px}
  .spec-pill{font-size:11.5px;padding:6px 12px}
  .hero::before{width:520px;height:520px}
  .monitor{padding:18px}
  .monitor-stats{grid-template-columns:1fr}
  .contrast-head h2{font-size:27px}
  .contrast-head p{font-size:15px}
  .contrast-col{padding:28px 22px}
  .sec-head h2,.contrast-head h2{font-size:27px}
  .cos-head h2{font-size:27px}
  .cos-human{flex-wrap:wrap;justify-content:center;text-align:center;font-size:12.5px}
  .cos-stat-row{grid-template-columns:1fr 1fr;gap:10px}
  .cos-main{padding:16px 14px}
  .cos-app-label{font-size:10px}
  .cos-app-bar{padding:10px 14px}
  .cos-app-url{font-size:10px;padding:4px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}
  .cos-main-head{flex-direction:column;align-items:flex-start;gap:14px}
  .cos-run-btn{align-self:stretch;justify-content:center}
  .cos-stat-val{font-size:18px}
  .cos-stat{padding:11px}
  .cos-panel{padding:13px}
  .cos-panel-t{font-size:12.5px}
  .cos-task{font-size:12px;gap:9px}
  .cos-task .tk-meta{font-size:9.5px}
  .cos-app-wrap{margin-top:40px}
  .cos-detail-card{padding:24px 20px}
  .cos-detail-card h3{font-size:20px}
  .cos-head h2{font-size:27px}
  .case{padding:72px 0}
  .case-card{padding:28px 20px}
  .case-results{grid-template-columns:1fr;gap:22px}
  .case-tl-row{flex-direction:column;align-items:flex-start;gap:6px}
  .case-tl-status{font-size:10px}
  .cres-num{font-size:38px}
  .m-line,.m-end{font-size:22px}
  .manifesto{padding:72px 0}
  .manifesto-lines{margin-top:24px}
  .m-line{margin-bottom:4px}
  .quiz{padding:72px 0}
  .quiz-inner>h2{font-size:28px}
  .quiz-box{padding:24px 18px}
  .quiz-q{font-size:17px}
  .quiz-opt{font-size:14px;padding:13px 14px}
  .fcta{padding:40px 0 72px}
  .fcta h2{font-size:32px}
  .fcta-card{padding:48px 22px;border-radius:22px}
  .fcta p{font-size:16px}
  .fcta-reports{flex-direction:column;align-items:stretch}
  .fcta-report{justify-content:center}
  .foot-inner{flex-direction:column;gap:20px;text-align:center}
  .foot-links{flex-wrap:wrap;justify-content:center;gap:18px}
  section{padding:48px 0}
  .contrast{padding:48px 0 56px}
  .contrast-head{padding:0 0 4px}
  .quiz{padding:52px 0!important}
  .cos{padding:52px 0!important}
  .manifesto{padding:56px 0}
  .case{padding:52px 0}
  .hero{padding:40px 0 44px}
  .fcta{padding:32px 0 56px}
  .cos-app-wrap{margin-top:32px}
  .mq-logo{height:20px}
  .mq-track{gap:32px}
}

.trusted-wrap{margin-top:18px}
.trusted-label{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gray-light);margin-bottom:18px}
.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-track{display:flex;align-items:center;gap:42px;width:max-content;animation:scroll-left 34s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-logo{height:24px;width:auto;object-fit:contain;opacity:0.85;filter:brightness(0.55) saturate(0);transition:opacity .2s,filter .2s;flex-shrink:0}
.mq-logo:hover{opacity:1;filter:brightness(0) saturate(0)}
@keyframes scroll-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}


.monitor-live{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--teal);display:flex;align-items:center;gap:6px;letter-spacing:.05em}
.monitor-live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);animation:pulse 2s infinite}
.vlegend{display:flex;gap:20px;margin-bottom:14px}
.vleg{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--gray)}
.vleg-dot{width:10px;height:3px;border-radius:2px}
.chart-area{position:relative;height:190px}
.vtip{position:absolute;background:var(--ink);color:#fff;font-size:11px;font-family:'JetBrains Mono',monospace;padding:6px 9px;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .12s;white-space:nowrap;transform:translate(-50%,-135%);z-index:5}
.vaxis{font-size:10px;fill:var(--gray-light);font-family:'DM Sans',sans-serif}
.vscrub{width:100%;margin-top:16px;accent-color:var(--teal);cursor:pointer;height:4px}

.rotator{display:inline-block;position:relative;vertical-align:bottom}
.rot-word{display:inline-block;position:relative;color:var(--ink);animation:rotIn .5s ease both}
.rot-underline{position:absolute;left:0;right:0;bottom:4px;height:8px;background:var(--teal);opacity:0.32;z-index:-1;border-radius:2px}
@keyframes rotIn{0%{opacity:0;transform:translateY(14px)}100%{opacity:1;transform:translateY(0)}}
@keyframes rotOut{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-14px)}}
.rot-word.out{animation:rotOut .4s ease both}


/* ============================================================
   THEME ADDITIONS — rules documented during the PHP build
   (each replaces an inline style or supports currentColor icons)
   ============================================================ */
/* contrast section icon colors (currentColor) */
.contrast-old .cp-ic{color:#C9C9C3}
.contrast-new .cp-ic{color:var(--teal)}
/* hero monitor (converted from inline styles) */
.monitor-sub{font-size:12.5px;color:var(--gray-light);margin:-2px 0 18px}
.vleg-dot--you{background:var(--teal)}
.vleg-dot--comp{background:#C9C9C3}
.mstat-num .u--sm{font-size:18px}
/* industry single: Why It Matters */
.why-h2{font-size:34px;letter-spacing:-0.03em;line-height:1.16;margin-bottom:16px}
.why-body{font-size:16px;color:var(--gray);line-height:1.7}
/* snapshot fixed colors (converted from inline styles) */
.snap .dot-ai{background:var(--teal)}
.snap .dot-trad{background:#E0E0DC}
.snap .pc-you{color:var(--coral)}
.snap .pc-comp{color:var(--teal-dark)}
/* section spacing modifiers (converted from inline styles) */
.svc-sec--tight{padding-top:8px}
.svc-sec--flush{padding-top:0}
/* GEO comparison table spanning cell */
.cmp-cell--span{grid-column:span 2;background:rgba(52,183,154,0.04)}
/* hub cards: library icons render at the hub's lighter weight */
.ind-card-ic svg{stroke-width:1.8}
/* article byline category link (converted from inline style) */
.dt-cat{color:var(--teal-dark);text-decoration:none}
/* featured/card thumbs: size a real featured image like the placeholder */
.feat-thumb img,.pcard-thumb img,.article-cover img{width:100%;height:100%;object-fit:cover;display:block}

/* WordPress pagination (the_posts_pagination) — no static equivalent existed */
.pagination{margin:36px 0 8px}
.pagination .nav-links{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.pagination .page-numbers{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--gray);text-decoration:none;border:1px solid var(--line);border-radius:9px;padding:8px 13px;transition:border-color .15s,color .15s}
.pagination .page-numbers:hover{border-color:var(--teal);color:var(--ink)}
.pagination .page-numbers.current{background:var(--teal);border-color:var(--teal);color:#fff}
.pagination .page-numbers.dots{border:none}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* copy-link feedback (nav.js adds .copied for 1.2s) */
.article-share a.copied{color:var(--teal)}
.article-share a.copied svg{transform:scale(1.15);transition:transform .15s}
