/* Lumio educational SEO guides — standalone light-theme, readable and mobile friendly */
.guide-page{background:#F7F8F2;color:#202923}
.guide-page .guide-hero{padding:76px 0 28px;max-width:850px}
.guide-page .guide-kicker{letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:800;color:#69863F}
.guide-page .guide-hero h1{font-size:clamp(40px,6.5vw,76px);line-height:1.08;letter-spacing:-.05em;margin:18px 0 23px}
.guide-page .guide-hero h1 em{font-family:"Instrument Serif",serif;font-weight:400;letter-spacing:-.03em;color:#759C48}
.guide-page .guide-lede{font-size:clamp(17px,2.3vw,21px);line-height:1.7;color:#4D5A4E}
.guide-page .guide-meta{font-size:13px;color:#687667;margin-top:17px}
.guide-page .guide-breadcrumbs{padding-top:24px;font-size:13px;color:#657463;display:flex;gap:8px;flex-wrap:wrap}
.guide-page .guide-breadcrumbs a{text-decoration:underline}
.guide-page .guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:54px;align-items:start;padding-bottom:45px}
.guide-page .guide-prose{max-width:790px}
.guide-page .guide-prose h2{font-size:clamp(26px,3.2vw,37px);letter-spacing:-.04em;line-height:1.2;margin:40px 0 15px;scroll-margin-top:90px}
.guide-page .guide-prose p,.guide-page .guide-prose li{font-size:16px;line-height:1.9;color:#3D4D40;margin:14px 0}
.guide-page .guide-prose ol{padding-left:27px}
.guide-page .guide-prose a{color:#385D25;text-decoration:underline;text-underline-offset:3px}
.guide-page .guide-prose code{font-family:"DM Mono",monospace;font-size:.88em;background:#E9ECDD;border-radius:5px;padding:2px 5px}
.guide-page .guide-prose pre{overflow-x:auto;background:#202923;color:#F4F8E8;border-radius:17px;padding:22px;line-height:1.6;margin:20px 0}
.guide-page .guide-prose pre code{background:transparent;color:inherit;padding:0}
.guide-page .guide-side{position:sticky;top:105px;background:#FFFEFA;border:1px solid #DBE3CF;border-radius:19px;padding:22px}
.guide-page .guide-side h2{font-size:18px;margin:0 0 12px}
.guide-page .guide-side p{font-size:13px;line-height:1.7;color:#5D6B5C}
.guide-page .guide-side a{display:block;background:#D5EF89;color:#202923;border-radius:12px;padding:11px 15px;text-align:center;font-weight:800;margin-top:15px}
.guide-page .guide-side ul{font-size:13px;line-height:1.9;padding-left:18px}
.guide-page .guide-steps>div{background:#FFFDF7;border:1px solid #E0E7D6;border-radius:16px;margin:14px 0;padding:20px}
.guide-page .guide-steps strong{font-size:17px}
.guide-page .guide-steps p{margin:9px 0 0}
.guide-page .guide-related{padding:40px 0 90px;border-top:1px solid #DDE5D4}
.guide-page .guide-related h2{font-size:30px;letter-spacing:-.04em}
.guide-page .guide-related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:19px}
.guide-page .guide-related-links a{background:#FFFEFA;border:1px solid #DFE7D5;border-radius:15px;padding:20px;line-height:1.5;font-weight:800}
.guide-page .guide-related-links a:hover{background:#E9F4D0}
.guide-page .guide-related-links small{display:block;font-size:11px;font-weight:600;color:#687667;letter-spacing:.08em;margin-bottom:9px}
.guide-page .guide-footer{border-top:1px solid #DEE6D2;padding:30px 0 50px;font-size:13px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.guide-page .guide-footer a{text-decoration:underline}
.seo-resource-block{padding:48px 0 65px;border-top:1px solid #E0E5DA}
.seo-resource-block>h2{font-size:clamp(30px,4.4vw,50px);line-height:1.15;letter-spacing:-.05em;margin:10px 0}
.seo-resource-block>h2 em{font-family:"Instrument Serif",serif;color:#779B4B;font-weight:400}
.seo-resource-block>p{max-width:670px;color:#5B6B5A;line-height:1.7}
.seo-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}
.seo-resource-grid a{display:block;background:#FFFDF7;border:1px solid #DEE7D3;border-radius:22px;padding:25px;min-height:190px;transition:transform .2s ease}
.seo-resource-grid a:hover{transform:translateY(-3px);background:#F2F9E5}
.seo-resource-grid small{font-size:11px;color:#62843F;letter-spacing:.12em;font-weight:800}
.seo-resource-grid strong{font-size:21px;line-height:1.3;display:block;margin:17px 0 10px;color:#202923}
.seo-resource-grid span{font-size:14px;color:#5E6C5D;line-height:1.6}
@media(max-width:850px){.guide-page .guide-layout{grid-template-columns:1fr;gap:28px}.guide-page .guide-side{position:static;max-width:100%}.guide-page .guide-related-links,.seo-resource-grid{grid-template-columns:1fr}.seo-resource-grid a{min-height:0}}


/* Lumio's official social profiles — calm light-theme pills on all public learning pages. */
.lumio-social-links{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}
.lumio-social-links a{display:inline-flex;gap:10px;align-items:center;justify-content:center;padding:11px 16px;min-height:45px;border:1px solid #DDE6D2;border-radius:999px;background:#FFFEFA;color:#202923;font-size:13px;font-weight:800;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.lumio-social-links a svg{flex:none}
.lumio-social-links a small{font-size:11px;color:#667960;font-weight:600;margin-left:4px}
.lumio-social-links a:hover{transform:translateY(-2px);background:#EFF8DE;border-color:#A9C97C}
.lumio-social-links a:focus-visible{outline:3px solid #7B9F4A;outline-offset:3px}
.footer>.lumio-social-links{grid-column:1/-1;justify-content:center}
.guide-page .guide-footer .lumio-social-links{flex-wrap:wrap}
@media(max-width:560px){.lumio-social-links{width:100%}.lumio-social-links a{flex:1 1 165px}.footer>.lumio-social-links{grid-column:1/-1}.guide-page .guide-footer .lumio-social-links{justify-content:stretch}}

/* Accessible practice cards and light-themed content library. */
.seo-resource-more{margin-top:26px;font-size:15px;font-weight:800}
.seo-resource-more a{text-decoration:underline;text-underline-offset:4px}
.resource-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:12px 0 65px}
.resource-hub-card{background:#FFFEFA;border:1px solid #DEE7D3;border-radius:22px;padding:27px;min-height:210px;transition:background .2s,transform .2s}
.resource-hub-card:hover{background:#F1F9E5;transform:translateY(-3px)}
.resource-hub-card small{font-size:11px;color:#62843F;letter-spacing:.13em;font-weight:800}
.resource-hub-card h2{font-size:clamp(23px,2.5vw,30px);line-height:1.25;letter-spacing:-.035em;margin:16px 0}
.resource-hub-card p{font-size:14px;line-height:1.75;color:#536351}
.resource-hub-card span{font-size:12px;color:#45622B;font-weight:800}
.resource-hub-next{padding:20px 0 75px}
.guide-page .practice-exercise{margin:24px 0;border:1px solid #DDE6D2;padding:22px;border-radius:17px;background:#FFFEFA}
.guide-page .practice-exercise h3{font-size:21px;letter-spacing:-.025em;line-height:1.35;margin:0 0 12px}
.guide-page .practice-exercise details{padding:13px;border:1px solid #D9E8C2;border-radius:12px;margin-top:15px}
.guide-page .practice-exercise summary{cursor:pointer;font-weight:800;color:#3C632D}
.guide-page .practice-exercise details[open]{background:#F2F8E8}
@media(max-width:690px){.resource-hub-grid{grid-template-columns:1fr}.resource-hub-card{min-height:0}.guide-page .practice-exercise{padding:17px}}

/* Editorial illustrations and crawlable on-page chapter navigation. */
.guide-page .guide-illustration{max-width:880px;margin:2px 0 28px}
.guide-page .guide-illustration img{display:block;width:100%;height:auto;border-radius:20px;border:1px solid #DBE6D1;background:#FFFEFA}
.guide-page .guide-illustration figcaption{margin-top:12px;color:#60715C;font-size:13px;line-height:1.65}
.guide-page .guide-contents{max-width:900px;margin:26px 0 42px;padding:20px 22px;border:1px solid #DEE8D2;background:#F0F5E7;border-radius:18px}
.guide-page .guide-contents strong{font-size:12px;letter-spacing:.13em;color:#526C39}
.guide-page .guide-contents ul{list-style:none;margin:12px 0 0;padding:0;display:flex;gap:8px 18px;flex-wrap:wrap}
.guide-page .guide-contents a{font-size:13px;line-height:1.6;color:#294C22;text-decoration:underline;text-underline-offset:3px}
.guide-page .guide-contents a:hover{color:#5B822F}
.guide-page .guide-nav-link{margin-left:auto;font-size:13px;font-weight:800;color:#456A2F;text-decoration:underline;text-underline-offset:4px}
.guide-page .guide-nav-link:focus-visible,.guide-page .guide-contents a:focus-visible{outline:3px solid #93B656;outline-offset:3px}
.learning-paths{padding:30px 0 75px}
.learning-paths>h2{font-size:clamp(29px,4vw,46px);line-height:1.2;letter-spacing:-.04em;margin:14px 0}
.learning-paths>p{font-size:16px;color:#566756;line-height:1.75;max-width:740px}
.learning-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:25px}
.learning-path-card{background:#FFFDF7;border:1px solid #DCE6D0;border-radius:20px;padding:25px}
.learning-path-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;background:#D5EF89;border-radius:50%;font-size:14px;font-weight:800}
.learning-path-card h3{font-size:23px;letter-spacing:-.035em;margin:17px 0 9px}
.learning-path-card p{color:#516251;font-size:14px;line-height:1.8}
.learning-path-card a{display:inline-block;margin-top:10px;font-weight:800;color:#305827;text-decoration:underline;text-underline-offset:4px}
@media(max-width:680px){.guide-page .guide-nav-link{display:none}.learning-path-grid{grid-template-columns:1fr}.guide-page .guide-contents ul{display:block}.guide-page .guide-contents li{margin:7px 0}}

/* Accessible, scan-friendly practice plan with the existing light Lumio palette */
.practice-plan-day{padding:24px 0 30px;border-bottom:1px solid #DFE5D7;scroll-margin-top:104px}
.practice-plan-day:first-of-type{border-top:1px solid #DFE5D7}
.practice-plan-day-meta{font:700 11px/1.6 "DM Mono",monospace;color:#557D35;letter-spacing:.09em}
.practice-plan-day h2{margin-top:10px!important}
.guide-prose .practice-plan-summary{background:#EFF4E7;border:1px solid #D7E3C5;border-radius:20px;padding:19px 22px;margin:24px 0}
.guide-prose .practice-plan-summary strong{color:#34532D}
.guide-prose .practice-plan-summary p{margin:7px 0 0}
.guide-prose .practice-plan-answer{background:#FFFEFA;border:1px solid #DFE5D7;border-radius:14px;padding:12px 16px;margin:17px 0}
.guide-prose .practice-plan-answer summary{cursor:pointer;font-weight:800;color:#385D25}
.guide-prose .practice-plan-answer summary:focus-visible{outline:3px solid #7B9F4A;outline-offset:3px}
.guide-prose .practice-plan-answer p{margin:10px 0 3px}
@media(max-width:550px){.practice-plan-day{padding:18px 0 25px}.guide-prose .practice-plan-summary{padding:15px}}

/* Mobile article layout: long Python lines scroll inside code blocks, not the entire page. */
.guide-page .guide-prose { min-width: 0; max-width: 100%; }
.guide-page .guide-prose pre { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
@media (max-width: 850px) {
  .guide-page .guide-layout { grid-template-columns: minmax(0, 1fr); }
}
.guide-page .guide-footer a, .guide-page .guide-breadcrumbs a {
  display: inline-flex; align-items: center; min-height: 44px; padding-block: 9px;
}
