.pyguide{color:#172a38;background:#faf8f3}.pyg-shell{width:min(1200px,calc(100% - 44px));margin:auto}.pyg-hero{color:#fff;background:radial-gradient(circle at 85% 15%,#275468 0%,transparent 36%),linear-gradient(130deg,#0a1a2b,#12394b);overflow:hidden}.pyg-hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:72px;align-items:center;min-height:680px;padding:75px 0}.pyg-crumb{display:flex;gap:12px;color:#abc4ca;font-size:13px;margin-bottom:45px}.pyg-crumb a{color:inherit;text-decoration:none}.pyg-label,.pyg-section-mark{font-size:12px;letter-spacing:.16em;font-weight:850;color:#bf8a4e}.pyg-hero h1{font-size:clamp(40px,4.6vw,70px);line-height:1.17;letter-spacing:-.035em;margin:22px 0;font-weight:750}.pyg-hero h1 em{display:block;font-style:normal;color:#f0bc79}.pyg-intro{font-size:19px;line-height:1.8;color:#d2e0e2;max-width:680px}.pyg-meta{display:flex;gap:10px;color:#98b6c0;font-size:13px;margin:24px 0 32px}.pyg-jump{display:inline-flex;align-items:center;gap:12px;color:#152737;background:#eeb86e;padding:14px 20px;border-radius:7px;font-weight:800;text-decoration:none}.pyg-jump svg{width:17px}.pyg-hero-art{position:relative;background:#f9f5e9;color:#172d3d;border-radius:15px;padding:28px;box-shadow:18px 22px 0 #b8885150,0 40px 80px #04142091;transform:rotate(2deg);animation:pyg-enter .7s ease both}.pyg-hero-art:before{content:"";position:absolute;inset:11px;border:1px solid #d9ccaf;border-radius:9px;pointer-events:none}.pyg-art-top,.pyg-art-foot{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:900;letter-spacing:.13em;color:#657886}.pyg-art-pulse{color:#138775}.pyg-art-code{background:#16374a;color:white;padding:27px;border-radius:8px;margin:32px 0 18px}.pyg-art-code small,.pyg-art-result small{display:block;letter-spacing:.14em;font-size:10px;color:#e9b96f;margin-bottom:11px}.pyg-art-code strong{font-size:18px;line-height:1.5}.pyg-art-route{display:flex;align-items:center;gap:12px;justify-content:center;color:#9f7239;font-size:11px;font-weight:900;letter-spacing:.15em}.pyg-art-route i{height:1px;background:#cfc4ae;flex:1}.pyg-art-result{border:1px solid #d7cbb7;border-radius:8px;padding:25px;display:flex;gap:23px;align-items:center;margin:18px 0 29px}.pyg-art-result small{color:#92713b}.pyg-art-result strong{font-size:20px;line-height:1.45}.pyg-art-brace{font-family:Georgia,serif;font-size:50px;color:#1c7080;animation:pyg-glow 3s infinite}.pyg-art-foot{border-top:1px solid #d4c6ae;padding-top:17px;justify-content:center;gap:9px}.pyg-art-foot b{color:#b27c3e}.pyg-reading{width:min(1200px,calc(100% - 44px));margin:auto;display:grid;grid-template-columns:210px minmax(0,760px);gap:85px;padding:80px 0 105px;align-items:start}.pyg-sidebar{position:sticky;top:150px;display:grid;gap:15px;border-left:2px solid #cbb18f;padding-left:20px;font-size:13px}.pyg-sidebar span{font-weight:850;color:#a27238;margin-bottom:8px}.pyg-sidebar a{color:#526b78;text-decoration:none}.pyg-sidebar a:hover{color:#0c7183;text-decoration:underline}.pyg-body section{padding:35px 0 60px;border-bottom:1px solid #e0ded7;scroll-margin-top:140px}.pyg-body section:first-child{padding-top:0}.pyg-body h2{font-size:clamp(30px,3vw,43px);line-height:1.26;letter-spacing:-.035em;margin:15px 0 22px}.pyg-body p{font-size:18px;line-height:1.95;color:#344a58;margin:0 0 24px}.pyg-body strong{color:#102e40}.pyg-takeaway{display:flex;gap:19px;background:#e9f2ef;border-left:4px solid #1b847c;padding:24px;margin-top:27px}.pyg-takeaway svg{width:23px;flex:none;color:#16817a}.pyg-takeaway p{margin:0;font-size:17px}.pyg-example{background:#11283b;color:white;border-radius:10px;overflow:hidden;margin:32px 0}.pyg-example-head{display:flex;justify-content:space-between;background:#223e50;padding:13px 21px;color:#b9d1d9;font-size:12px;letter-spacing:.07em}.pyg-example pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:23px;font-size:16px;line-height:1.8;margin:0;color:#e9f3f3}.pyg-example-error{background:#603d37;padding:14px 22px;font-size:14px}.pyg-example details{padding:21px;border-top:1px solid #4d6572}.pyg-example summary{cursor:pointer;display:flex;justify-content:space-between;font-weight:800;color:#ecc089}.pyg-example details p{color:#d9e6e7;font-size:16px;line-height:1.75;margin:17px 0 0}.pyg-example details strong{color:white}.pyg-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.pyg-report-grid>div{background:#e9e3d6;padding:28px;min-height:290px}.pyg-report-grid strong{display:block;font-size:39px;color:#8e622d;margin-bottom:15px}.pyg-report-grid p{font-size:15px;line-height:1.7}.pyg-report a,.pyg-source a{display:inline-flex;gap:5px;align-items:center;color:#0b7080;font-weight:750}.pyg-report a svg,.pyg-source a svg{width:14px}.pyg-body .pyg-report-note{font-size:15px;background:#edf1ee;padding:19px;margin-top:16px;line-height:1.75}.pyg-paths{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pyg-paths>div{background:#f2eee6;border:1px solid #e2d8c8;padding:25px;display:flex;flex-direction:column}.pyg-paths>div:nth-child(2){background:#173b4b;color:white;border-color:#173b4b}.pyg-paths span{font-size:11px;font-weight:850;letter-spacing:.08em;color:#a4743b}.pyg-paths h3{font-size:23px;line-height:1.3;margin:17px 0 10px}.pyg-paths p{font-size:15px;line-height:1.7}.pyg-paths>div:nth-child(2) p{color:#d2e0e4}.pyg-paths a{display:flex;align-items:center;gap:8px;color:#086f7d;font-weight:850;text-decoration:none;margin-top:auto}.pyg-paths>div:nth-child(2) a{color:#f0be79}.pyg-paths a svg{width:15px}.pyg-plan ol{list-style:none;padding:0;margin:0}.pyg-plan li{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:17px 0;border-bottom:1px solid #ddd7ca;font-size:16px;line-height:1.6}.pyg-plan li b{color:#9b6d38}.pyg-body .pyg-plan>p{font-size:14px;color:#687986;margin-top:25px}.pyg-cta{background:#0b2638;color:white;padding:80px 0}.pyg-cta>.pyg-shell{display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:center}.pyg-cta span{color:#f0bc79;font-size:12px;font-weight:850;letter-spacing:.14em}.pyg-cta h2{font-size:clamp(34px,3.5vw,52px);letter-spacing:-.035em;line-height:1.2;margin:20px 0}.pyg-cta p{color:#c4d8df;font-size:17px;line-height:1.8}.pyg-cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.pyg-cta-actions a{display:inline-flex;align-items:center;gap:9px;padding:14px 18px;border-radius:6px;text-decoration:none;font-weight:800;color:#132b3a;background:#eeb86e}.pyg-cta-actions a+ a{background:transparent;color:white;border:1px solid #7497a5}.pyg-cta-actions svg{width:17px}.pyg-cta-visual{border:1px solid #78939b;padding:35px;min-height:230px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(3deg);box-shadow:13px 15px 0 #eeb86e31}.pyg-cta-visual svg{width:28px;color:#f0bc79}.pyg-cta-visual strong{font-size:24px;line-height:1.4}.pyg-source{padding:55px 0 80px;background:#f2efe7}.pyg-source h2{font-size:25px}.pyg-source p{color:#61727d}.pyg-source ul{padding-left:22px;line-height:2.3}.pyg-source>.pyg-shell> a{margin-top:17px}@keyframes pyg-enter{from{opacity:0;transform:translateY(25px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(2deg)}}@keyframes pyg-glow{50%{color:#d39b58}}@media(max-width:900px){.pyg-hero-grid{grid-template-columns:1fr;gap:45px;padding:70px 0}.pyg-hero-art{max-width:580px}.pyg-reading{grid-template-columns:1fr;padding-top:55px}.pyg-sidebar{position:static;display:flex;overflow:auto;white-space:nowrap;border-left:0;border-bottom:1px solid #d7cab5;padding:0 0 18px}.pyg-cta>.pyg-shell{grid-template-columns:1fr}.pyg-cta-visual{display:none}}@media(max-width:600px){.pyg-shell,.pyg-reading{width:calc(100% - 34px)}.pyg-hero h1{font-size:41px}.pyg-intro{font-size:16px}.pyg-hero-art{transform:none;padding:19px}.pyg-art-result strong{font-size:17px}.pyg-reading{padding-bottom:65px}.pyg-body p{font-size:16px;line-height:1.85}.pyg-report-grid,.pyg-paths{grid-template-columns:1fr}.pyg-cta{padding:60px 0}.pyg-plan li{grid-template-columns:80px 1fr}.pyg-cta-actions a{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.pyg-hero-art,.pyg-art-brace{animation:none}}

.pyg-cta .pyg-cta-byline{font-size:14px;color:#e9d2aa;margin:12px 0 0}.pyg-cta-byline a{color:#f0bc79;text-underline-offset:3px}.pyg-cta .pyg-ask{display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:#cbe6e6;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.pyg-ask svg{width:16px}

.pyg-meta a{color:#f0bc79;text-underline-offset:3px}.pyg-cta-contact{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:20px}.pyg-cta-contact a{display:inline-flex;align-items:center;gap:7px;color:#cbe6e6;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.pyg-cta-contact svg{width:16px;height:16px}

.pyg-author-card{overflow:hidden;border:1px solid #648391;border-radius:18px;background:#f8f5ed;color:#173044;box-shadow:14px 16px 0 #eeb86e29}.pyg-author-photo{height:260px;overflow:hidden;background:#23475a}.pyg-author-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 23%}.pyg-author-info{padding:24px 26px 27px}.pyg-author-info span{color:#a46a32;font-size:11px;letter-spacing:.16em;font-weight:900}.pyg-author-info h3{font-size:28px;line-height:1.1;letter-spacing:-.03em;margin:12px 0 6px}.pyg-author-info p{color:#506676;font-size:14px;line-height:1.5;margin:0 0 17px}.pyg-author-info a{display:inline-flex;align-items:center;gap:7px;color:#0b7080;font-size:14px;font-weight:800;text-decoration:none}.pyg-author-info a svg{width:16px}.pyg-author-info a:hover{text-decoration:underline;text-underline-offset:4px}@media(max-width:900px){.pyg-author-card{display:grid;grid-template-columns:170px 1fr;max-width:540px}.pyg-author-photo{height:100%;min-height:210px}}@media(max-width:520px){.pyg-author-card{grid-template-columns:125px 1fr}.pyg-author-photo{min-height:190px}.pyg-author-info{padding:19px}.pyg-author-info h3{font-size:22px}.pyg-author-info p{font-size:12px}}

/* Learning decision and complete code walkthrough */
.pyg-verdict{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.pyg-verdict>div{padding:18px 20px;border:1px solid #d9e4e0;border-radius:10px;background:#fff}.pyg-verdict b,.pyg-verdict span{display:block}.pyg-verdict b{color:#183c4a;font-size:14px}.pyg-verdict span{color:#48727b;font-size:14px;margin-top:5px}.pyg-example-error{display:grid;gap:5px}.pyg-example-error b{font-size:11px;letter-spacing:.12em;color:#ffd5b8}.pyg-example-error code{font-size:13px;overflow-wrap:anywhere}.pyg-decision{background:#fff8eb;border:1px solid #e4ceb0;border-radius:12px;padding:25px;margin:26px 0}.pyg-mini-label{font-size:12px!important;font-weight:850;color:#9b6a32!important;letter-spacing:.08em;margin:0 0 9px!important}.pyg-decision h3{font-size:23px;line-height:1.35;margin:0 0 20px;color:#173442}.pyg-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:17px}.pyg-decision-grid>div{display:grid;gap:4px;padding:18px;background:#fff;border:1px solid #eadccc;border-radius:9px}.pyg-decision-grid span{font-size:13px;color:#49626e}.pyg-decision-grid strong{font-size:35px;line-height:1;color:#176b70}.pyg-decision-grid>div+div strong{color:#a66137}.pyg-decision-grid small{font-size:12px;color:#667984}.pyg-body .pyg-decision>p:last-child{font-size:15px;line-height:1.7;margin:0}.pyg-fix{background:#e8f1ef;border:1px solid #c7dcd8;border-radius:11px;margin:25px 0;overflow:hidden}.pyg-fix summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:19px 22px;font-weight:800;color:#075f69}.pyg-fix summary span{font-size:21px;line-height:1}.pyg-fix[open] summary{border-bottom:1px solid #c7dcd8}.pyg-fix>div{padding:21px}.pyg-body .pyg-fix p{font-size:15px;line-height:1.7;margin:0 0 17px}.pyg-fix pre{background:#102b3c;color:#edf6f4;border-radius:8px;padding:18px;overflow:auto;font-size:14px;line-height:1.7;margin:0}.pyg-fix-output{display:flex;align-items:center;gap:16px;background:#d3e9df;color:#21675e;padding:12px 16px;margin-top:10px;border-radius:8px;font-size:11px;font-weight:900;letter-spacing:.12em}.pyg-fix-output strong{font-size:23px;letter-spacing:0}.pyg-cta>.pyg-shell{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:55px}.pyg-author-card{max-width:370px;width:100%}.pyg-author-info h3{font-size:clamp(24px,2.2vw,30px)}@media(max-width:900px){.pyg-cta>.pyg-shell{grid-template-columns:1fr}.pyg-author-card{max-width:540px}}@media(max-width:600px){.pyg-verdict,.pyg-decision-grid{grid-template-columns:1fr}.pyg-decision{padding:20px}.pyg-decision h3{font-size:20px}.pyg-fix pre{font-size:12px}}
