/* Graphology Studio v1. Scoped presentation only; original IDs and interaction contracts remain. */
.grp-studio{--gs-bg:#f6f5f0;--gs-panel:#fffefa;--gs-ink:#252b29;--gs-muted:#626b65;--gs-line:#dfe3da;--gs-soft:#edf1e9;--gs-accent:#315d4e;--gs-gold:#91713c;--g-ink:#315d4e;--g-ink-soft:#e9f0e9;--g-paper:#fffefa;--g-violet:#315d4e;--g-violet-ink:#315d4e;--g-violet-soft:#eaf0e9;--g-gold-soft:#f4eddd;--g-radius:20px;--g-shadow:0 4px 18px #263a2c06;--g-shadow-md:0 12px 36px #263a2c10;background:var(--gs-bg);color:var(--gs-ink);}
.grp-studio .grp-wrap{max-width:1280px;padding-inline:clamp(20px,4.5vw,64px)}
.grp-studio .grp-main{padding-top:30px}
.grp-studio .grp-h1,.grp-studio .grp-h2,.grp-studio .grp-h3,.grp-studio .grp-h4{color:var(--gs-ink)}
.grp-studio .grp-h1{font-size:clamp(2.8rem,5.4vw,4.9rem);line-height:1.04;font-weight:500;letter-spacing:-.04em}
.grp-studio .grp-h2{font-weight:500;font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.025em}
.grp-studio .grp-h3{font-weight:500}
.grp-studio .grp-lede{color:var(--gs-muted);font-size:1rem;line-height:1.8;max-width:59ch}
.grp-studio .grp-small,.grp-studio .grp-muted{color:var(--gs-muted)}
.grp-studio .grp-tiny{color:var(--gs-muted);line-height:1.6}
.grp-studio .grp-kicker{color:var(--gs-accent);font-size:.68rem;letter-spacing:.17em;font-weight:750;line-height:1.5}
.grp-studio .grp-kicker:before{width:24px;height:1px}
.grp-studio .grp-btn{border-radius:9px;font-size:.84rem;padding:13px 19px;min-height:46px;--b-bg:var(--gs-panel);--b-bd:var(--gs-line);--b-fg:var(--gs-ink);box-shadow:none}
.grp-studio .grp-btn--lg{min-height:50px;padding:16px 23px;font-size:.88rem}
.grp-studio .grp-btn--primary{--b-bg:var(--gs-accent);--b-bd:var(--gs-accent);--b-fg:#fff}
.grp-studio .grp-btn--primary:hover{--b-bg:#254b3d;--b-bd:#254b3d;box-shadow:0 7px 18px #254b3d19}
.grp-studio .grp-btn--ghost{--b-bg:transparent}
.grp-studio .grp-btn--quiet{--b-bg:transparent;--b-bd:transparent}
.grp-studio a{color:var(--gs-accent)}
.grp-studio .grp-card{background:var(--gs-panel);border-color:var(--gs-line);box-shadow:var(--g-shadow);border-radius:var(--g-radius)}
.grp-studio .grp-card--flat{background:var(--gs-panel)}
.grp-studio .grp-chip{font-size:.66rem;letter-spacing:.035em;background:var(--gs-soft);color:var(--gs-muted);border-color:var(--gs-line);border-radius:6px;padding:5px 9px;white-space:normal;line-height:1.4}
.grp-studio .grp-chip--gold{background:#f1e8d5;color:#755524;border-color:#e4d5b5}
.grp-studio .grp-chip--violet{background:var(--gs-soft);color:var(--gs-accent);border-color:var(--gs-line)}
.grp-studio .grp-tile{background:var(--gs-soft);color:var(--gs-accent);border-radius:12px}
.grp-studio :focus-visible{outline:2px solid var(--gs-accent);outline-offset:4px;box-shadow:none}
.grp-studio section[id],.grp-studio .grp-panel[id]{scroll-margin-top:100px}
.grp-studio .grp-section{margin-top:76px}
.grp-studio .grp-section__head{margin-bottom:28px}
.grp-studio .grp-note{background:var(--gs-soft);border-color:var(--gs-line);color:var(--gs-muted);font-size:.8rem;line-height:1.7}
/* Landing: an editorial opening, original illustration and a clearly labelled preview. */
.grp-studio .grp-hero{border:none;background:transparent;padding:26px 0 24px;box-shadow:none;overflow:visible}
.grp-studio .grp-hero:before,.grp-studio .grp-hero:after{display:none}
.grp-studio .grp-hero__grid{grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(28px,5vw,76px);align-items:center}
.grp-studio .grp-hero .grp-h1 em{font-style:italic;color:var(--gs-accent)}
.grp-studio .grp-hero .grp-lede{margin-top:22px}
.grp-studio .grp-hero__ctas{margin-top:28px;gap:12px}
.grp-studio .grp-hero__ctas .grp-btn{flex:0 1 auto}
.grp-studio .grp-trustrow{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:22px;color:var(--gs-muted);font-size:.72rem}
.grp-studio .grp-trustrow li{gap:6px}
.grp-studio .grp-trustrow .grp-ic{width:14px;height:14px;color:var(--gs-accent)}
.gs-art{margin:0;position:relative;padding:0 0 44px}
.gs-art>img{display:block;width:100%;height:auto;border-radius:24px}
.gs-art figcaption{position:absolute;bottom:0;left:18px;right:18px;background:var(--gs-panel);border:1px solid var(--gs-line);border-radius:13px;padding:17px 20px;box-shadow:0 10px 35px #2b3b2a0b}
.gs-art__label{display:block;font-size:.6rem;font-weight:750;letter-spacing:.15em;color:var(--gs-gold);text-transform:uppercase;margin-bottom:5px}
.gs-art__caption{font-family:Georgia,serif;font-size:1.1rem;color:var(--gs-ink)}
.gs-art__note{display:block;font-size:.66rem;color:var(--gs-muted);margin-top:5px}
.gs-nav{display:flex;align-items:center;gap:26px;border-block:1px solid var(--gs-line);padding:18px 0;margin-top:18px;font-size:.75rem}
.gs-nav>span{color:var(--gs-muted);margin-right:auto}
.gs-nav a{font-weight:650;text-decoration:none;white-space:nowrap}
.gs-nav a:hover{text-decoration:underline}
.gs-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:32px 0 0}
.gs-benefits article{padding:0 28px;border-left:1px solid var(--gs-line)}
.gs-benefits article:first-child{border-left:0;padding-left:0}
.gs-benefits b{display:block;font-size:.7rem;color:var(--gs-gold);letter-spacing:.13em;margin-bottom:8px}
.gs-benefits h2{font-family:Georgia,serif;font-size:1.13rem;font-weight:400;margin:0 0 8px;color:var(--gs-ink)}
.gs-benefits p{font-size:.78rem;line-height:1.75;color:var(--gs-muted);margin:0}
.gs-reading-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px;align-items:center}
.gs-reading-preview .grp-lede{font-size:.9rem;margin-top:22px}
.gs-reading-card{background:var(--gs-panel);border:1px solid var(--gs-line);border-radius:19px;padding:30px;box-shadow:var(--g-shadow)}
.gs-reading-card__top{display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--gs-line);padding-bottom:20px;margin-top:15px}
.gs-reading-card__top>div{flex:0 0 80px;background:var(--gs-soft);border-radius:12px;line-height:0;padding:8px}
.gs-reading-card__top h3{font:400 1.4rem/1.3 Georgia,serif;color:var(--gs-ink);margin:0}
.gs-reading-card dl{margin:22px 0}
.gs-reading-card dl>div+div{margin-top:17px}
.gs-reading-card dt{font-size:.65rem;font-weight:750;color:var(--gs-accent);margin-bottom:4px;text-transform:uppercase;letter-spacing:.08em}
.gs-reading-card dd{font-size:.82rem;line-height:1.8;margin:0;color:var(--gs-muted)}
.grp-studio .grp-feature{background:var(--gs-panel);border:1px solid var(--gs-line);border-radius:24px;box-shadow:var(--g-shadow);padding:clamp(24px,3.7vw,46px);gap:38px;grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr)}
.grp-studio .grp-feature .grp-lede{font-size:.92rem}
.grp-studio .grp-feature__list{gap:12px 20px;margin-top:22px}
.grp-studio .grp-feature__list li{font-size:.81rem;color:var(--gs-muted)}
.grp-studio .grp-feature__list .grp-ic{width:16px;height:16px;color:var(--gs-accent)}
.grp-studio .grp-pricebox{background:var(--gs-soft);border:1px solid var(--gs-line);border-radius:15px;padding:27px 22px;box-shadow:none}
.grp-studio .grp-price__now{font-family:Georgia,serif;color:var(--gs-ink);font-weight:400;font-size:3.2rem}
.grp-studio .grp-price__unit{color:var(--gs-muted);font-size:.8rem}
.grp-studio .grp-price__save{color:var(--gs-accent);font-size:.72rem}
.grp-studio .grp-grid--4{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grp-studio .grp-product{display:flex;flex-direction:column;padding:25px;min-width:0;transition:border-color .2s,transform .2s,box-shadow .2s}
.grp-studio .grp-product .grp-card__foot{margin-top:auto;padding-top:24px}
.grp-studio .grp-product:hover{border-color:#9cac95;transform:translateY(-3px);box-shadow:0 12px 30px #263a2c0b}
.grp-studio .grp-product__top{margin-bottom:20px}
.grp-studio .grp-product h3{font-size:1.25rem;font-weight:500;line-height:1.3;color:var(--gs-ink)}
.grp-studio .grp-product p{font-size:.8rem;line-height:1.7;color:var(--gs-muted);margin-top:11px}
.grp-studio .grp-card__foot{border-color:var(--gs-line);padding-top:16px;margin-top:22px;gap:10px}
.grp-studio .grp-product__price,.grp-studio .grp-product__cta{font-size:.75rem;color:var(--gs-accent)}
.grp-studio .grp-guardian{background:#f0eddf;border-color:#e4dfcd;padding:27px}
.grp-studio .grp-guardian .grp-h3{font-size:1.5rem}
.grp-studio .grp-how{gap:18px}
.grp-studio .grp-how li{background:var(--gs-panel);border-color:var(--gs-line);padding:25px;border-radius:16px}
.grp-studio .grp-how li:before{background:var(--gs-soft);color:var(--gs-accent);box-shadow:none;border:1px solid var(--gs-line);font-family:Georgia,serif}
.grp-studio .grp-how li h3{font-size:.92rem;color:var(--gs-ink)}
.grp-studio .grp-how li p{font-size:.78rem;color:var(--gs-muted)}
.grp-studio .grp-faq details{background:var(--gs-panel);border-color:var(--gs-line);border-radius:12px}
.grp-studio .grp-faq summary{font-size:.87rem;color:var(--gs-ink);padding-block:19px}
.grp-studio .grp-faq p{font-size:.83rem;color:var(--gs-muted)}
.grp-studio .grp-close{background:var(--gs-accent);color:#fff;border:none;border-radius:23px;padding:38px}
.grp-studio .grp-close .grp-h2,.grp-studio .grp-close p{color:#fff}
.grp-studio .grp-close .grp-btn--primary{--b-bg:#fffefa;--b-bd:#fffefa;--b-fg:#254b3d}
/* Preparation, consent, upload, analysis, recovery and final questions. */
.grp-studio .grp-toolbar{font-size:.75rem;color:var(--gs-muted);margin-bottom:25px}
.grp-studio .grp-crumbs{color:var(--gs-muted);font-size:.74rem}
.grp-studio .grp-crumbs span:last-child{overflow-wrap:anywhere}
.gs-journey-head{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:30px;align-items:center;margin-bottom:30px}
.gs-journey-head .grp-h1{font-size:clamp(2.1rem,4vw,3.4rem)!important;max-width:26ch}
.gs-journey-head .grp-lede{font-size:.88rem;margin-top:12px}
.gs-journey-art{width:160px;height:155px;object-fit:cover;justify-self:end;border-radius:16px}
.grp-studio .grp-stepper{border:1px solid var(--gs-line);background:var(--gs-panel);border-radius:13px;margin:0 0 28px;padding:18px 22px;box-shadow:none}
.grp-studio .grp-stepper li{font-size:.75rem;color:var(--gs-muted)}
.grp-studio .grp-stepper li[aria-current=step]{color:var(--gs-accent);font-weight:750}
.grp-studio .grp-stepper li[aria-current=step]:before{background:var(--gs-accent);color:#fff;box-shadow:none}
.grp-studio .grp-stepper li.is-done:before{background:var(--gs-soft);color:var(--gs-accent);border-color:var(--gs-line)}
.grp-studio .grp-layout-2{grid-template-columns:minmax(0,1fr) 305px;gap:26px;align-items:start}
.grp-studio .grp-panel{padding:30px;margin-bottom:20px}
.grp-studio .grp-panel__head{margin-bottom:20px}
.grp-studio .grp-panel__num{border-radius:9px;background:var(--gs-soft);color:var(--gs-accent);font:400 1.25rem Georgia,serif;box-shadow:none}
.grp-studio .grp-panel .grp-h3{font-size:1.65rem}
.grp-studio .grp-prompt{background:var(--gs-soft);border-color:var(--gs-line);color:var(--gs-ink);font-size:.91rem;line-height:1.8;padding:20px;border-radius:12px}
.grp-studio .grp-spec{gap:12px;margin-top:20px}
.grp-studio .grp-spec>div{font-size:.76rem;color:var(--gs-muted);border-color:var(--gs-line);background:var(--gs-panel)}
.grp-studio .grp-spec strong{font-size:.65rem;color:var(--gs-accent);letter-spacing:.08em}
.grp-studio .grp-tip{background:var(--gs-panel);color:var(--gs-muted);font-size:.77rem;border:1px solid var(--gs-line);border-radius:12px;padding:15px}
.grp-studio .grp-consent label{background:var(--gs-panel);border-color:var(--gs-line);font-size:.82rem;line-height:1.8;padding:16px;border-radius:12px}
.grp-studio .grp-consent input{accent-color:var(--gs-accent);width:19px;height:19px}
.grp-studio .grp-drop{background:var(--gs-soft);border-color:#b7c5b1;border-radius:15px;min-height:200px;color:var(--gs-accent)}
.grp-studio .grp-drop[aria-disabled=true]{opacity:.6}
.grp-studio .grp-drop:hover,.grp-studio .grp-drop.is-over{border-color:var(--gs-accent);background:var(--gs-soft)}
.grp-studio .grp-summary{padding:25px;background:var(--gs-panel);border-top:3px solid var(--gs-accent)}
.grp-studio .grp-summary dl{border-color:var(--gs-line)}
.grp-studio .grp-summary dt,.grp-studio .grp-summary dd{font-size:.78rem}
.grp-studio .grp-summary .grp-total{color:var(--gs-accent);font-size:1rem}
.gs-scope{padding:16px 20px;border:1px solid var(--gs-line);border-radius:12px;background:var(--gs-panel);font-size:.77rem;color:var(--gs-muted);margin:0 0 20px;line-height:1.8}
.gs-scope summary{cursor:pointer;color:var(--gs-accent);font-weight:650}
.gs-scope p{margin:12px 0 0}
.grp-studio .grp-dialog{background:var(--gs-panel);color:var(--gs-ink);border:1px solid var(--gs-line);border-radius:22px;box-shadow:0 22px 90px #18281d33}
.grp-studio .grp-dialog::backdrop{background:#192c2566;backdrop-filter:blur(4px)}
.grp-studio .grp-dialog__body{padding:34px}
.grp-studio .grp-opt{background:var(--gs-panel);color:var(--gs-ink);border-color:var(--gs-line);font-size:.85rem;padding:16px}
.grp-studio .grp-opt:has(input:checked){background:var(--gs-soft);border-color:var(--gs-accent)}
.grp-studio .grp-opt input{accent-color:var(--gs-accent)}
.grp-studio .grp-q legend{color:var(--gs-ink);font-size:.93rem}
.grp-studio .grp-gate,.grp-studio .grp-empty{padding:44px 30px;border-top:3px solid var(--gs-accent)}
.grp-studio .grp-status{font-size:.83rem;line-height:1.7}
/* Private report: quiet chapter rail, generous reading column, personalised evidence. */
.grp-studio .grp-report{grid-template-columns:220px minmax(0,1fr);gap:30px}
.grp-studio .grp-rail{background:var(--gs-panel);padding:18px 10px;border-radius:14px;top:92px;max-height:calc(100vh - 112px);overflow-y:auto}
.grp-studio .grp-rail__label{color:var(--gs-gold);font-size:.65rem;letter-spacing:.15em}
.grp-studio .grp-rail a{font-size:.74rem;border-radius:7px;color:var(--gs-muted);line-height:1.6}
.grp-studio .grp-rail a.is-active,.grp-studio .grp-rail a[aria-current]{background:var(--gs-soft);color:var(--gs-accent)}
.grp-studio .grp-rhero{position:relative;border:1px solid var(--gs-line);border-top:3px solid var(--gs-accent);background:var(--gs-panel);border-radius:20px;padding:clamp(25px,3vw,40px);box-shadow:var(--g-shadow)}
.grp-studio .grp-rhero:before,.grp-studio .grp-rhero:after{display:none}
.grp-studio .grp-rhero .grp-h1{font-size:clamp(2.2rem,4vw,3.3rem)!important;line-height:1.08;font-weight:500}
.grp-studio .grp-rhero .grp-lede{font-size:.9rem;line-height:1.85;max-width:68ch}
.grp-studio .grp-rhero__meta{margin-bottom:24px}
.gs-report-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--gs-line);padding-bottom:14px;margin-bottom:22px}
.gs-report-heading>span{font-family:Georgia,serif;font-size:.96rem;font-style:italic;color:var(--gs-accent)}
.gs-report-heading small{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gs-muted)}
.grp-studio .grp-rhero__facts{gap:0;border-block:1px solid var(--gs-line);padding:18px 0;margin-top:25px}
.grp-studio .grp-rhero__facts>div{border:none;border-right:1px solid var(--gs-line);padding:2px 20px;border-radius:0;background:transparent;min-width:0;flex:1 1 auto}
.grp-studio .grp-rhero__facts>div:first-child{padding-left:0}
.grp-studio .grp-rhero__facts>div:last-child{border-right:0}
.grp-studio .grp-rhero__facts dt{font-size:.64rem;color:var(--gs-muted);font-weight:500}
.grp-studio .grp-rhero__facts dd{color:var(--gs-accent);font-family:Georgia,serif;font-size:1.6rem;font-weight:400}
.grp-studio .grp-rhero__fact-text{font-size:.88rem!important}
.grp-studio .grp-rhero__actions{margin-top:22px;gap:9px}
.grp-studio .grp-rhero__actions .grp-btn{font-size:.73rem;padding:11px 14px;min-height:44px}
.grp-studio .grp-block{margin-top:25px}
.grp-studio .grp-card.grp-block{padding:30px}
.grp-studio .grp-block .grp-h2{font-size:clamp(1.65rem,2.7vw,2.25rem)}
.grp-studio .grp-block__head{margin-bottom:23px;padding-bottom:15px;border-bottom:1px solid var(--gs-line)}
.grp-studio .grp-block__head .grp-kicker{margin-bottom:5px}
.grp-studio .grp-plain{font-size:.75rem;color:var(--gs-muted);border-color:var(--gs-line);background:var(--gs-soft);border-radius:10px;padding:14px 17px}
.grp-studio .grp-takeaways li{background:var(--gs-soft);border-color:var(--gs-line);font-size:.86rem;line-height:1.75;border-radius:12px;padding:17px}
.grp-studio .grp-takeaways b{background:var(--gs-accent);color:#fff}
.grp-studio .grp-chapter-card{background:var(--gs-panel);border-color:var(--gs-line);border-radius:13px;padding:20px;min-width:0}
.grp-studio .grp-chapter-card h3{font-size:1.25rem;color:var(--gs-ink);font-weight:500}
.grp-studio .grp-chapter-card p{font-size:.76rem;color:var(--gs-muted)}
.grp-studio .grp-chapter-card__score{background:var(--gs-soft);color:var(--gs-accent)}
.grp-studio .grp-chcard{background:var(--gs-panel);border-color:var(--gs-line);padding:22px}
.grp-studio .grp-chcard h3{font:400 1.3rem Georgia,serif;color:var(--gs-ink)}
.grp-studio .grp-chcard p,.grp-studio .grp-chcard__num{color:var(--gs-muted)}
.grp-studio .grp-score{background:var(--gs-soft);color:var(--gs-accent)}
.grp-studio .grp-chapter__style{font-family:Georgia,serif;color:var(--gs-accent);font-size:1.2rem}
.grp-studio .grp-dim{border-color:var(--gs-line);padding-block:18px}
.grp-studio .grp-dim__row{font-size:.86rem;color:var(--gs-ink)}
.grp-studio .grp-dim p{font-size:.81rem;line-height:1.8;color:var(--gs-muted)}
.grp-studio .grp-meter{height:5px;background:var(--gs-soft)}
.grp-studio .grp-meter i{background:var(--gs-accent)}
.grp-studio .grp-try{background:var(--gs-soft);border-color:var(--gs-line);color:var(--gs-ink);font-size:.83rem;border-radius:10px;line-height:1.8}
.grp-studio .grp-evidence-card,.grp-studio .grp-letter{background:var(--gs-panel);border-color:var(--gs-line);border-radius:12px}
.grp-studio .grp-evidence-card svg,.grp-studio .grp-letter__glyph{background:var(--gs-soft);border-radius:10px}
.grp-studio .grp-evidence-card p,.grp-studio .grp-letter p{font-size:.82rem;line-height:1.8;color:var(--gs-muted)}
.grp-studio .grp-glyph{background:var(--gs-soft);border-color:var(--gs-line);border-radius:12px}
.grp-studio .grp-glyph b{color:var(--gs-ink)}
.grp-studio .grp-glyph span,.grp-studio .grp-glyph em{color:var(--gs-muted);line-height:1.65}
.grp-studio .grp-glyph small{color:var(--gs-muted)}
.grp-studio .grp-evidence-chain{border-color:var(--gs-line);background:var(--gs-soft)}
.grp-studio .grp-evidence-chain__item{border-color:var(--gs-line);background:var(--gs-panel)}
.grp-studio .grp-glyph svg{background:#f9f8f2;border-radius:9px;padding:4px}
.grp-studio .grp-letter__char{background:var(--gs-soft);color:var(--gs-accent);border-color:var(--gs-line)}
.grp-studio .grp-measure{border-color:var(--gs-line)}
.grp-studio .grp-table th{background:var(--gs-soft);color:var(--gs-accent);font-size:.7rem;letter-spacing:.025em}
.grp-studio .grp-table td{border-color:var(--gs-line);font-size:.8rem;line-height:1.8;color:var(--gs-ink)}
.grp-studio .grp-drill{background:var(--gs-panel);border:1px solid var(--gs-line);border-radius:14px;padding:24px}
.grp-studio .grp-drill h3{font-family:Georgia,serif;font-size:1.4rem;font-weight:400;color:var(--gs-ink)}
.grp-studio .grp-drill p,.grp-studio .grp-drill dl{font-size:.82rem;line-height:1.8;color:var(--gs-muted)}
.grp-studio .grp-tracker input:checked+span{background:var(--gs-accent);border-color:var(--gs-accent);color:#fff}
.grp-studio .grp-goal{border-color:var(--gs-line);background:var(--gs-panel)}
.grp-studio .grp-ask__input,.grp-studio textarea,.grp-studio input[type=text]{background:var(--gs-panel);color:var(--gs-ink);border-color:var(--gs-line);border-radius:10px}
.grp-studio .grp-suggestions button{background:var(--gs-soft);color:var(--gs-accent);border-color:var(--gs-line);border-radius:8px}
.grp-studio .grp-prompt-chip{background:var(--gs-soft);color:var(--gs-accent);border-color:var(--gs-line);border-radius:8px;min-height:44px}
.grp-studio .grp-inquiry-item{background:var(--gs-soft);border-color:var(--gs-line);border-radius:12px}
.grp-studio .grp-glossary>div{border-color:var(--gs-line)}
.grp-studio .grp-glossary dt{color:var(--gs-ink);font-size:.85rem}
.grp-studio .grp-glossary dd{font-size:.81rem;color:var(--gs-muted);line-height:1.8}
.grp-studio .grp-legalfoot{border-color:var(--gs-line);color:var(--gs-muted);font-size:.7rem}
.grp-studio .grp-boundary{margin:14px 0;color:var(--gs-muted);font-size:.72rem;line-height:1.7;overflow-wrap:anywhere}
.grp-studio .grp-boundary code{display:inline-block;background:var(--gs-soft);border:1px solid var(--gs-line);border-radius:6px;padding:2px 6px;color:var(--gs-accent)}
.grp-studio .grp-adult-reflection__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.grp-studio .grp-adult-reflection__card{border:1px solid var(--gs-line);border-radius:13px;background:var(--gs-panel);padding:20px;min-width:0}
.grp-studio .grp-adult-reflection__card .grp-h3{font-size:1.08rem;margin:0 0 8px}
.grp-studio .grp-adult-reflection__card p,.grp-studio .grp-adult-reflection__card dd{color:var(--gs-muted);font-size:.8rem;line-height:1.75}
.grp-studio .grp-adult-reflection__card dl{margin:14px 0 0}
.grp-studio .grp-adult-reflection__card dl>div{border-top:1px solid var(--gs-line);padding:11px 0}
.grp-studio .grp-adult-reflection__card dt{font-size:.72rem;font-weight:700;color:var(--gs-accent)}
.grp-studio .grp-adult-reflection__card dd{margin:4px 0 0}
.grp-studio .grp-self-report__domains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.grp-studio .grp-self-report__domain{border:1px solid var(--gs-line);border-radius:12px;background:var(--gs-soft);padding:17px}
.grp-studio .grp-self-report__domain>div{display:flex;justify-content:space-between;gap:14px;align-items:baseline}
.grp-studio .grp-self-report__domain h3{font:400 1.05rem Georgia,serif;color:var(--gs-ink);margin:0}
.grp-studio .grp-self-report__domain span{font-size:.75rem;font-weight:700;color:var(--gs-accent);white-space:nowrap}
.grp-studio .grp-self-report__domain p{font-size:.78rem;line-height:1.7;color:var(--gs-muted);margin:9px 0 0}
.grp-studio .grp-self-report__item{margin:20px 0 0;padding:18px;border:1px solid var(--gs-line);border-radius:12px}
.grp-studio .grp-self-report__scale{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}
.grp-studio .grp-self-report__scale .grp-opt{display:flex;align-items:flex-start;gap:8px;padding:11px;font-size:.72rem;line-height:1.45}
.grp-studio .grp-self-report__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.grp-studio #grpSelfReflectionStatus.is-error{color:#b42318}
@media(min-width:1100px){.grp-page-home .grp-hero__grid{min-height:510px}}
@media(max-width:1060px){.grp-studio .grp-report{grid-template-columns:minmax(0,1fr)}.grp-studio .grp-rail{position:static;max-height:none;padding:12px;border-radius:12px;overflow-x:auto}.grp-studio .grp-rail ol{display:flex;gap:4px;flex-wrap:nowrap}.grp-studio .grp-rail a{white-space:nowrap}.grp-studio .grp-rail hr,.grp-studio .grp-rail__label,.grp-studio .grp-rail__extra{display:none}.grp-studio .grp-layout-2{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:900px){.grp-studio .grp-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:25px}.grp-studio .grp-hero .grp-h1{font-size:3.1rem}.grp-studio .grp-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.grp-studio .grp-feature{grid-template-columns:minmax(0,1fr);gap:25px}.grp-studio .grp-pricebox{max-width:none}.grp-studio .grp-layout-2{grid-template-columns:minmax(0,1fr)}.grp-studio .grp-summary{position:static;order:-1}.gs-benefits article{padding-inline:18px}.grp-studio .grp-guardian{align-items:start}.gs-journey-art{width:125px;height:125px}}
@media(max-width:640px){.grp-studio .grp-main{padding-top:18px}.grp-studio .grp-wrap{padding-inline:20px}.grp-studio .grp-hero{padding-top:15px}.grp-studio .grp-hero__grid{grid-template-columns:minmax(0,1fr);gap:28px}.grp-studio .grp-hero .grp-h1{font-size:clamp(2.9rem,11vw,4rem)}.grp-studio .grp-hero .grp-lede{font-size:.94rem}.grp-studio .grp-hero__ctas{margin-top:24px}.grp-studio .grp-hero__ctas .grp-btn{flex:1 1 100%}.gs-art{max-width:420px;width:100%;margin:auto}.gs-art>img{max-height:340px;object-fit:cover;object-position:center}.gs-art figcaption{left:10px;right:10px;padding:15px}.gs-art__caption{font-size:.98rem}.gs-nav{gap:18px;overflow:auto;font-size:.72rem}.gs-nav>span{display:none}.gs-benefits{grid-template-columns:minmax(0,1fr);gap:22px;padding-top:27px}.gs-benefits article{padding:0 0 20px;border:none;border-bottom:1px solid var(--gs-line)}.gs-benefits h2{font-size:1.22rem}.grp-studio .grp-section{margin-top:47px}.grp-studio .grp-feature{padding:24px;border-radius:18px}.grp-studio .grp-feature__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grp-studio .grp-grid--4{grid-template-columns:minmax(0,1fr);gap:14px}.grp-studio .grp-product{padding:23px}.grp-studio .grp-product h3{font-size:1.42rem}.grp-studio .grp-product__top{margin-bottom:15px}.grp-studio .grp-product p{font-size:.84rem}.grp-studio .grp-how{grid-template-columns:minmax(0,1fr)}.grp-studio .grp-guardian{padding:24px;display:flex;flex-wrap:wrap;gap:17px}.grp-studio .grp-guardian>div{flex:1 1 200px}.grp-studio .grp-guardian .grp-btn{width:100%}.grp-studio .grp-close{padding:28px}.gs-journey-head{grid-template-columns:minmax(0,1fr);gap:0}.gs-journey-art{display:none}.grp-studio .grp-stepper{padding:16px 12px;gap:5px}.grp-studio .grp-stepper li{font-size:.64rem}.grp-studio .grp-panel,.grp-studio .grp-card.grp-block{padding:23px}.grp-studio .grp-panel .grp-h3{font-size:1.55rem}.grp-studio .grp-rhero{padding:24px}.grp-studio .grp-rhero .grp-h1{font-size:2.4rem!important}.grp-studio .grp-rhero__facts{gap:16px}.grp-studio .grp-rhero__facts>div{flex:1 1 calc(50% - 16px);padding:0;border:none}.grp-studio .grp-rhero__actions .grp-btn--primary{flex:1 1 100%}.grp-studio .grp-rhero__actions .grp-btn{font-size:.72rem}.grp-studio .grp-block{margin-top:19px}.grp-studio .grp-dialog__body{padding:25px}.grp-studio .grp-dialog{width:calc(100% - 28px);max-height:calc(100dvh - 32px)}.grp-studio .grp-chapter-card{padding:18px}.gs-report-heading{align-items:start}.gs-report-heading small{max-width:120px;text-align:right}}
@media(max-width:760px){.grp-studio .grp-adult-reflection__cards,.grp-studio .grp-self-report__domains{grid-template-columns:minmax(0,1fr)}.grp-studio .grp-self-report__scale{grid-template-columns:minmax(0,1fr)}.grp-studio .grp-self-report__domain>div{align-items:flex-start;flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){.grp-studio *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:780px){.gs-reading-preview{grid-template-columns:minmax(0,1fr);gap:25px}.gs-reading-card{padding:24px}}
:root[data-theme=dark] .grp-studio{--gs-bg:#19231e;--gs-panel:#222e26;--gs-ink:#f2f0e7;--gs-muted:#b6c1b7;--gs-line:#3c4c3f;--gs-soft:#2c3d30;--gs-accent:#b8d6b7;--gs-gold:#d8bc81;--g-ink:#b8d6b7;--g-violet:#477354;--g-violet-ink:#b8d6b7;--g-violet-soft:#2c3d30}
:root[data-theme=dark] .grp-studio .grp-btn--primary{--b-bg:#477354;--b-bd:#477354;--b-fg:#fff}
:root[data-theme=dark] .grp-studio .grp-guardian{background:#303628;border-color:var(--gs-line)}
:root[data-theme=dark] .grp-studio .grp-close{background:#314d37}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .grp-studio{--gs-bg:#19231e;--gs-panel:#222e26;--gs-ink:#f2f0e7;--gs-muted:#b6c1b7;--gs-line:#3c4c3f;--gs-soft:#2c3d30;--gs-accent:#b8d6b7;--gs-gold:#d8bc81;--g-ink:#b8d6b7;--g-violet:#477354;--g-violet-ink:#b8d6b7;--g-violet-soft:#2c3d30}:root:not([data-theme=light]) .grp-studio .grp-btn--primary{--b-bg:#477354;--b-bd:#477354;--b-fg:#fff}:root:not([data-theme=light]) .grp-studio .grp-guardian{background:#303628;border-color:var(--gs-line)}:root:not([data-theme=light]) .grp-studio .grp-close{background:#314d37}}
@media print{.grp-studio{background:#fff;color:#222}.grp-studio .grp-rail,.grp-studio .grp-rhero__actions,.grp-studio .gs-nav{display:none}.grp-studio .grp-report{display:block}.grp-studio .grp-wrap{max-width:none;padding:0}.grp-studio .grp-card,.grp-studio .grp-rhero{box-shadow:none;border-color:#ddd;background:#fff;break-inside:auto}.grp-studio .grp-block__head{break-after:avoid}.grp-studio .grp-takeaways li,.grp-studio .grp-letter,.grp-studio .grp-drill{break-inside:avoid}.grp-studio .grp-h1,.grp-studio .grp-h2,.grp-studio .grp-h3{color:#222}.grp-studio .grp-lede,.grp-studio .grp-small{color:#444}}

/* ---- Universal Header Harmony for Graphology Studio ---- */
body.grp-studio #lvh {
  --lvh-bg: rgba(253, 252, 248, 0.94);
  --lvh-fg: #19231e;
  --lvh-mut: #526056;
  --lvh-line: rgba(36, 90, 71, 0.12);
  --lvh-hover: rgba(36, 90, 71, 0.06);
  --lvh-menu: #fffefa;
  --lvh-drawer: #f7f6f1;
}
body.grp-studio #lvh .lvh-bt {
  max-width: 195px;
}
body.grp-studio #lvh .lvh-cta {
  background: linear-gradient(135deg, #245a47 0%, #315d4e 60%, #91713c 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(36, 90, 71, 0.28) !important;
}
body.grp-studio #lvh .lvh-cta .lvh-ic {
  stroke: #ffffff !important;
}
body.grp-studio #lvh .lvh-cta:hover {
  background: linear-gradient(135deg, #1c4738 0%, #254b3d 60%, #7a5e30 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(36, 90, 71, 0.38) !important;
}

/* ---- Forensic Stroke Microscope (Phase 1 & 5) ---- */
.gs-microscope {
  margin-top: 28px;
  background: var(--gs-panel);
  border: 1px solid var(--gs-line);
  border-radius: 16px;
  padding: 24px;
}
.gs-microscope__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
}
.gs-microscope__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}
.gs-micro-card {
  background: var(--gs-soft);
  border: 1px solid var(--gs-line);
  border-radius: 12px;
  padding: 14px;
  text-align: center;
  transition: transform 0.2s, box-shadow 0.2s;
}
.gs-micro-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
}
.gs-micro-card__imgbox {
  width: 90px;
  height: 90px;
  margin: 0 auto 10px;
  background: #ffffff;
  border: 1px solid var(--gs-line);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: inset 0 0 6px rgba(0,0,0,0.04);
}
.gs-micro-card__img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: contrast(110%);
}
.gs-micro-card__title {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--gs-ink);
  margin-bottom: 4px;
}
.gs-micro-card__meta {
  font-size: 0.72rem;
  color: var(--gs-muted);
}
.gs-micro-card__badge {
  display: inline-block;
  font-size: 0.65rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  margin-top: 6px;
  background: rgba(49, 93, 78, 0.12);
  color: var(--gs-accent);
}

/* ---- Instant Free Stroke Scan Teaser Card (Phase 4) ---- */
.gs-teaser-card {
  margin-top: 20px;
  background: var(--gs-panel);
  border: 2px solid var(--gs-accent);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 10px 30px rgba(49, 93, 78, 0.1);
  animation: gsFadeIn 0.35s ease-out;
}
@keyframes gsFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
.gs-teaser-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 16px 0;
}
@media(max-width: 600px) {
  .gs-teaser-grid { grid-template-columns: 1fr; }
}
.gs-teaser-stat {
  background: var(--gs-soft);
  border: 1px solid var(--gs-line);
  border-radius: 10px;
  padding: 12px 14px;
}
.gs-teaser-stat__label {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--gs-muted);
  margin-bottom: 4px;
}
.gs-teaser-stat__val {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--gs-accent);
}

/* ---- Sticky Horizontal Pill Rail for Mobile (Phase 5) ---- */
@media(max-width: 1060px) {
  .grp-studio .grp-rail {
    position: sticky;
    top: 60px;
    z-index: 40;
    background: var(--gs-panel);
    border: 1px solid var(--gs-line);
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
    margin-bottom: 24px;
  }
}



/* Parent-guide declarations: keep the legal confirmation clear and compact. */
.grp-studio .grp-guardian-declaration { display:grid; gap:10px; margin-top:14px; padding:16px; border:1px solid var(--gs-line); border-radius:12px; background:var(--gs-soft); }
.grp-studio .grp-guardian-declaration .grp-field { display:grid; gap:6px; padding:0; border:0; background:transparent; cursor:default; }
.grp-studio .grp-guardian-declaration .grp-field > span { font-size:.74rem; font-weight:700; color:var(--gs-accent); }
.grp-studio .grp-guardian-declaration select.grp-input { width:100%; min-width:0; }

/* ---- Graphology Studio v2: premium consultation journey and reader-first report ---- */
.grp-studio{--gs-panel-rich:#fbfaf5;--gs-accent-deep:#21483a;--gs-gold-soft:#f6efe0;--gs-lift:0 18px 50px rgba(30,58,45,.08);}
.grp-page-report .grp-wrap{max-width:1360px;}
.grp-page-report .grp-report>div:last-child{max-width:940px;width:100%;}
.grp-page-report .grp-rhero{padding:clamp(30px,4vw,56px);background:linear-gradient(145deg,var(--gs-panel) 0%,var(--gs-panel-rich) 100%);border-top:0;box-shadow:var(--gs-lift);overflow:hidden;}
.grp-page-report .grp-rhero:after{content:"";display:block!important;position:absolute;right:-85px;top:-105px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(145,113,60,.12),transparent 70%);pointer-events:none;}
.grp-page-report .grp-rhero .grp-h1{max-width:18ch;font-size:clamp(2.6rem,5vw,4.25rem)!important;letter-spacing:-.045em;}
.grp-page-report .grp-rhero .grp-lede{font-size:1.02rem;line-height:1.9;max-width:72ch;color:#4d5c54;}
.grp-page-report .grp-card.grp-block{padding:clamp(28px,4vw,44px);box-shadow:0 8px 34px rgba(30,58,45,.045);}
.grp-page-report .grp-block{margin-top:32px;}
.grp-page-report .grp-block .grp-h2{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.18;}
.grp-page-report .grp-read{font-size:1rem;line-height:1.95;max-width:74ch;color:var(--gs-ink);}
.grp-page-report .grp-chapter__style{font-size:1.35rem;line-height:1.55;}
.grp-page-report .grp-dim__row{font-size:.96rem;}
.grp-page-report .grp-dim p{font-size:.9rem;line-height:1.88;}
.grp-page-report .grp-takeaways{counter-reset:premium-takeaway;}
.grp-page-report .grp-takeaways li{padding:21px 22px;font-size:.96rem;background:linear-gradient(135deg,var(--gs-soft),var(--gs-panel-rich));}
.grp-page-report .grp-try{padding:20px 22px;border-left:3px solid var(--gs-gold);background:var(--gs-gold-soft);font-size:.91rem;}
.grp-page-report .grp-chcard{padding:27px;box-shadow:0 6px 24px rgba(30,58,45,.045);}
.grp-page-report .grp-chcard:hover{transform:translateY(-3px);box-shadow:var(--gs-lift);border-color:#a8b9ad;}
.grp-page-report .grp-chcard h3{font-size:1.48rem;}
.grp-page-report .grp-letter{padding:22px;}
.grp-page-report .grp-letter h3{font-family:Georgia,serif;font-size:1.12rem;font-weight:400;color:var(--gs-ink);}
.grp-page-report .grp-drill{padding:28px;background:linear-gradient(145deg,var(--gs-panel),var(--gs-panel-rich));}
.grp-page-report .grp-rail{box-shadow:0 10px 35px rgba(30,58,45,.05);}
.grp-page-report .grp-rail a{padding:9px 10px;}
.gs-evidence-vault{border:1px solid var(--gs-line);border-radius:14px;background:var(--gs-soft);overflow:hidden;}
.gs-evidence-vault>summary{cursor:pointer;list-style:none;padding:18px 20px;font-weight:700;color:var(--gs-accent);display:flex;align-items:center;justify-content:space-between;gap:12px;}
.gs-evidence-vault>summary::-webkit-details-marker{display:none;}
.gs-evidence-vault>summary:after{content:"+";display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--gs-line);border-radius:50%;font:400 1.2rem Georgia,serif;background:var(--gs-panel);}
.gs-evidence-vault[open]>summary:after{content:"−";}
.gs-evidence-vault__body{padding:6px 20px 22px;border-top:1px solid var(--gs-line);}
.gs-evidence-vault .grp-evidence{margin-top:18px;}
.gs-evidence-vault .grp-glyph{background:var(--gs-panel);padding:18px;}
.gs-evidence-vault .grp-measure .grp-plain{font-size:.8rem;}
.grp-page-analyze .gs-journey-head{padding:24px 30px;background:linear-gradient(145deg,var(--gs-panel),var(--gs-panel-rich));border:1px solid var(--gs-line);border-radius:22px;box-shadow:0 10px 36px rgba(30,58,45,.05);}
.grp-page-analyze .grp-stepper{position:sticky;top:68px;z-index:20;box-shadow:0 8px 24px rgba(30,58,45,.06);}
.grp-page-analyze .grp-panel{box-shadow:0 8px 30px rgba(30,58,45,.04);transition:border-color .2s,box-shadow .2s,opacity .2s;}
.grp-page-analyze .grp-panel[data-state=active]{border-color:#b2c3b8;box-shadow:0 13px 42px rgba(30,58,45,.075);}
.grp-page-analyze .grp-panel[data-state=locked]{opacity:.72;}
.grp-page-analyze .grp-sample-upload{position:relative;padding:18px;border:1px solid var(--gs-line);border-radius:16px;background:var(--gs-panel-rich);}
.grp-page-analyze .grp-drop.is-ready{border-style:solid;border-color:#6f9983;background:#e8f2eb;}
.grp-page-analyze .grp-drop.is-ready .grp-tile{background:#d9eadf;}
.grp-page-analyze .grp-previewimg{border-radius:12px;overflow:hidden;border:1px solid var(--gs-line);margin-top:12px;}
.grp-page-analyze .grp-progress{margin-top:18px;padding:18px 20px;border:1px solid var(--gs-line);border-radius:14px;background:var(--gs-soft);}
.grp-page-analyze .grp-progress li{font-size:.79rem;color:var(--gs-muted);}
.grp-page-analyze .grp-progress li.is-active{color:var(--gs-accent);font-weight:700;}
.grp-page-analyze .grp-progress li.is-active:before{box-shadow:0 0 0 6px rgba(49,93,78,.1);}
@media(max-width:1060px){.grp-page-report .grp-report>div:last-child{max-width:none;}.grp-page-report .grp-rail{top:64px;}}
@media(max-width:640px){.grp-page-analyze .gs-journey-head{padding:22px;}.grp-page-analyze .grp-stepper{top:58px;padding:13px 9px;}.grp-page-analyze .grp-stepper li span{display:block!important;font-size:.58rem;line-height:1.2;white-space:nowrap;}.grp-page-analyze .grp-sample-upload{padding:13px;}.grp-page-report .grp-rhero{padding:28px 23px;}.grp-page-report .grp-rhero .grp-h1{font-size:2.7rem!important;}.grp-page-report .grp-rhero .grp-lede,.grp-page-report .grp-read{font-size:.95rem;}.grp-page-report .grp-card.grp-block{padding:25px 22px;}.gs-evidence-vault__body{padding-inline:13px;}}
:root[data-theme=dark] .grp-studio{--gs-panel-rich:#24322a;--gs-gold-soft:#3a3428;--gs-lift:0 18px 50px rgba(0,0,0,.2);}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .grp-studio{--gs-panel-rich:#24322a;--gs-gold-soft:#3a3428;--gs-lift:0 18px 50px rgba(0,0,0,.2);}}
