@font-face{font-family:SourceSansProRegular;font-display:swap;src:url(/fonts/source-sans-pro-regular-2fb81363.woff2)format("woff2")}@font-face{font-family:SourceSansProBold;font-display:swap;src:url(/fonts/source-sans-pro-bold-9cc08c04.woff2)format("woff2")}@font-face{font-family:SourceSansProItalic;font-display:swap;src:url(/fonts/source-sans-pro-italic-f929e97b.woff2)format("woff2")}@font-face{font-family:Pythonicon;font-display:block;src:url(/fonts/pythonicon-42f3fdc5.woff2)format("woff2")}@font-face{font-family:FontAwesome;font-display:block;src:url(/fonts/fontawesome-linkedin-438eb1dd.woff2)format("woff2");unicode-range:U+F08C}:root:has(.pyorg){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-padding-top:0}:root:has(.pyorg){background:#2b5b84}:root:has(.pyorg) body{background:#2b5b84}@keyframes pyorg-fade-in{0%{opacity:0}}@keyframes pyorg-fade-out{to{opacity:0}}.pyorg .psf-widget,.pyorg .main-header,.pyorg .site-base{background-color:#2b5b84;background-image:linear-gradient(#1e415e 10%,#2b5b84 90%);box-shadow:inset 0 0 50px #00000008,inset 0 0 20px #00000008}.pyorg .psf-widget{margin-bottom:.5em;padding:1.25em}.pyorg .psf-widget:after{content:"";clear:both;display:table}.pyorg .psf-widget .button,.pyorg .donate-button,.pyorg .header-banner .button,.pyorg .header-banner a.button,.pyorg button[type=submit],.pyorg .search-button,.pyorg #dive-into-python .flex-control-paging a,.pyorg button,.pyorg a.button,.pyorg .button{cursor:pointer;text-align:left;white-space:nowrap;text-shadow:1px 1px 1px #ffffff4d;background-color:#ccc;background-image:linear-gradient(#d9d9d9 10%,#ccc 90%);border:1px solid #caccce;border-bottom-color:#999;border-radius:6px;margin-bottom:.4375em;padding:.4em .75em .35em;font-weight:400;box-shadow:1px 1px 1px #0000000d,inset 0 0 5px #ffffff80;color:#4d4d4d!important}.pyorg .donate-button:hover,.pyorg .search-button:hover,.pyorg #dive-into-python .flex-control-paging a:hover,.pyorg button:hover,.pyorg .button:hover,.pyorg .donate-button:focus,.pyorg .search-button:focus,.pyorg #dive-into-python .flex-control-paging a:focus,.pyorg button:focus,.pyorg .button:focus,.pyorg .donate-button:active,.pyorg .search-button:active,.pyorg #dive-into-python .flex-control-paging a:active,.pyorg button:active,.pyorg .button:active{background-color:#d9d9d9;background-image:linear-gradient(#e6e6e6 10%,#d9d9d9 90%);color:#1a1a1a!important}.pyorg .psf-widget .button,.pyorg .donate-button,.pyorg .header-banner .button,.pyorg .header-banner a.button{background-color:#ffd343;background-image:linear-gradient(#ffdf76 10%,#ffd343 90%);border:1px solid #dca900}.pyorg .psf-widget .button:hover,.pyorg .donate-button:hover,.pyorg .header-banner .button:hover,.pyorg .psf-widget .button:active,.pyorg .donate-button:active,.pyorg .header-banner .button:active{background-color:#ffd343;background-image:linear-gradient(#ffeba9 10%,#ffd343 90%)}.pyorg button[type=submit],.pyorg .search-button,.pyorg #dive-into-python .flex-control-paging a{text-shadow:none;background-color:#2b5b84;background-image:linear-gradient(#3776ab 10%,#2b5b84 90%);border:1px solid #3776ab;border-color:#3d83be #3776ab #3776ab #3d83be;box-shadow:inset 0 0 5px #3776ab33;color:#e6e8ea!important}.pyorg button[type=submit]:hover,.pyorg .search-button:hover,.pyorg #dive-into-python .flex-control-paging a:hover,.pyorg button[type=submit]:active,.pyorg .search-button:active,.pyorg #dive-into-python .flex-control-paging a:active{background:inherit;background-color:#244e71;background-image:linear-gradient(#316998 10%,#244e71 90%);color:#f2f4f6!important}.pyorg .header-banner a:not(.button),.pyorg .header-banner a:not(.readmore){border-bottom:1px solid #ffdf76;text-decoration:none}.pyorg .header-banner a:hover:not(.button),.pyorg .header-banner a:hover:not(.readmore),.pyorg .header-banner a:focus:not(.button),.pyorg .header-banner a:focus:not(.readmore){border-bottom-color:#ffd343}.pyorg .blog-widget li,.pyorg .event-widget li{border-top:1px solid #caccce;padding-top:.4375em;padding-bottom:.4375em;padding-left:4em;position:relative}.pyorg .blog-widget li time,.pyorg .event-widget li time{margin-top:-.75em;position:absolute;top:50%;left:0}.pyorg form:after,.pyorg .header-banner:after,.pyorg .success-stories-widget .quote-from:after{content:"";clear:both;display:table}.pyorg,.pyorg div,.pyorg span,.pyorg h1,.pyorg h2,.pyorg h3,.pyorg h4,.pyorg p,.pyorg blockquote,.pyorg pre,.pyorg cite,.pyorg code,.pyorg em,.pyorg img,.pyorg small,.pyorg strong,.pyorg b,.pyorg i,.pyorg ol,.pyorg ul,.pyorg li,.pyorg fieldset,.pyorg form,.pyorg label,.pyorg table,.pyorg tbody,.pyorg tr,.pyorg td,.pyorg footer,.pyorg header,.pyorg nav,.pyorg section,.pyorg time{font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}.pyorg footer,.pyorg header,.pyorg nav,.pyorg section,.pyorg form{display:block}.pyorg blockquote{quotes:none}.pyorg blockquote:before,.pyorg blockquote:after{content:none}.pyorg table{border-collapse:collapse;border-spacing:0;width:100%}.pyorg td{text-align:left;vertical-align:top}.pyorg input,.pyorg button{vertical-align:middle;cursor:text;display:inline-block}.pyorg{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizespeed;margin:0;font-size:100%}.pyorg input,.pyorg button{-webkit-font-smoothing:antialiased;margin:0}.pyorg h1,.pyorg h2,.pyorg h3,.pyorg h4{font-weight:400}.pyorg ul,.pyorg ol{margin-left:1.5em}.pyorg ul{list-style:square}.pyorg ol{list-style:decimal}.pyorg nav ul,.pyorg .menu{margin-left:0;list-style:none}.pyorg small{font-size:85%}.pyorg b,.pyorg strong{font-weight:700}.pyorg i,.pyorg em,.pyorg cite{font-style:italic}.pyorg pre,.pyorg code{font-family:Consolas,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,sans-serif}.pyorg pre{white-space:pre-wrap;overflow-wrap:break-word}.pyorg code{color:#0d870d}.pyorg button{cursor:pointer;appearance:button}.pyorg input[type=search]{appearance:textfield}.pyorg input[type=search]::-webkit-search-decoration{appearance:none}.pyorg input[type=search]::-webkit-search-cancel-button{appearance:none}.pyorg{color:#444;background-color:#fff;font:100%/1.625 SourceSansProRegular,Arial,sans-serif}.pyorg,.pyorg input,.pyorg button{color:#444;font:100%/1.625 SourceSansProRegular,Arial,sans-serif}.pyorg *{box-sizing:border-box}.pyorg a,.pyorg a:active,.pyorg a:visited,.pyorg a:hover,.pyorg a:visited:hover{color:#3776ab;text-decoration:none}.pyorg table tr td a,.pyorg table tr td a:active,.pyorg table tr td a:visited,.pyorg table tr td a:hover,.pyorg table tr td a:visited:hover{color:#3571a3}.pyorg a:hover,.pyorg a:focus{color:#1e2933}.pyorg a img{margin:0 auto;display:block}.pyorg ::selection{color:#fff;text-shadow:none;background:#3776ab}.pyorg a:link{-webkit-tap-highlight-color:#1e2933}.pyorg img{max-width:100%}.pyorg h1{color:#3776ab;margin-bottom:.4375em;font-family:SourceSansProBold,Arial,sans-serif;font-size:1.75em;line-height:1em}.pyorg h2{color:#222;margin-top:1.3125em;margin-bottom:.32813em;font-family:SourceSansProRegular,Arial,sans-serif;font-size:1.5em}.pyorg h3{color:#222;margin-top:1.75em;margin-bottom:.4375em;font-size:1.3125em}.pyorg h4{color:#222;margin-top:1.3125em;margin-bottom:.4375em;font-family:SourceSansProBold,Arial,sans-serif;font-size:1.125em}.pyorg blockquote{border-top:3px solid #ffeba9;border-bottom:3px solid #ffeba9;margin-bottom:1.3125em;padding-top:1.3125em;padding-bottom:1.3125em;font:italic 1.125em/2 Georgia,serif;position:relative}.pyorg label{color:#999;margin-top:.21875em;font-weight:700;display:block}.pyorg input{border:1px solid #caccce;border-radius:6px;width:100%;margin-bottom:.875em;padding:.65em}.pyorg.no-touch input:focus{box-shadow:0 0 10px #0003}.pyorg ::placeholder{color:#999;font-style:italic}.pyorg button,.pyorg a.button,.pyorg .button{display:block}.pyorg b,.pyorg strong{font-family:SourceSansProBold,Arial,sans-serif}.pyorg i,.pyorg em{font-family:SourceSansProItalic,Arial,sans-serif}.pyorg .pre{white-space:nowrap}.pyorg .say-no-more{visibility:hidden;display:none}.pyorg .prompt,.pyorg .readmore:before,.pyorg .give-me-more a:before{letter-spacing:-.0625em;font-family:Flux-Regular,SourceSansProRegular,Arial,sans-serif;font-size:120%}.pyorg .readmore,.pyorg .give-me-more a{white-space:nowrap}.pyorg .readmore:before,.pyorg .give-me-more a:before{content:">>>";margin-right:.25em}.pyorg .top-bar a:hover,.pyorg .top-bar a:focus,.pyorg.python .top-bar .python-meta a{color:#fff;background-color:#1f2a32;background-image:linear-gradient(#13191e 10%,#1f2a32 90%)}.pyorg .top-bar a:hover:before,.pyorg .top-bar a:focus:before,.pyorg.python .top-bar .python-meta a:before{left:50%}.pyorg .top-bar{color:#bbb;background-color:#1e2933;border-bottom:1px solid #1f3b47}.pyorg .top-bar a{color:#999;text-align:center;background:0 0;padding:.5em .75em .4em;font-size:1em;line-height:1.75em;display:block;position:relative}.pyorg .top-bar a:before{content:"";border:.5em solid #0000;width:0;height:0;margin-left:-.25em;position:absolute;top:0;left:-9999px}.pyorg .top-bar li{border-top:3px solid #3776ab}.pyorg .top-bar .python-meta,.pyorg .top-bar .python-meta a:before{border-top-color:#3776ab}.pyorg .top-bar .psf-meta,.pyorg .top-bar .psf-meta a:before{border-top-color:#78797a}.pyorg .top-bar .docs-meta,.pyorg .top-bar .docs-meta a:before{border-top-color:#ffd343}.pyorg .top-bar .pypi-meta,.pyorg .top-bar .pypi-meta a:before{border-top-color:#82b043}.pyorg .top-bar .jobs-meta,.pyorg .top-bar .jobs-meta a:before{border-top-color:#a06ba7}.pyorg .top-bar .shop-meta,.pyorg .top-bar .shop-meta a:before{border-top-color:#b55863}.pyorg .top-bar .present-meta,.pyorg .top-bar .present-meta button:before{border-top-color:#ffd343}.pyorg .top-bar .present-meta button{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;width:100%;padding:.5em .75em .4em;font-size:1em;line-height:1.75em;display:block;position:relative;color:#ffd343!important}.pyorg .top-bar .present-meta button:before{content:"";border-style:solid;border-width:.5em;border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;width:0;height:0;margin-left:-.25em;position:absolute;top:0;left:-9999px}.pyorg .top-bar .present-meta button:hover,.pyorg .top-bar .present-meta button:focus-visible{background-color:#1f2a32;background-image:linear-gradient(#13191e 10%,#1f2a32 90%);color:#fff!important}.pyorg .top-bar .present-meta button:hover:before,.pyorg .top-bar .present-meta button:focus-visible:before{left:50%}.pyorg .top-bar .present-meta button:focus-visible{outline-offset:-2px;outline:2px solid #ffd343}.pyorg .present-play{vertical-align:.05em;border:.35em solid #0000;border-left:.6em solid;border-right-width:0;width:0;height:0;margin-right:.45em;display:inline-block}.pyorg .small-widget .present-link:before{content:"▶";vertical-align:.15em;margin-right:.4em;font-size:.7em}.pyorg .lined-widget ul{border-top:1px solid #caccce}.pyorg .lined-widget li{border-bottom:1px solid #caccce;padding:.5em 0 .4em}.pyorg .meta-navigation{text-align:center}.pyorg .meta-navigation .menu{margin-bottom:0}.pyorg .meta-navigation .jump-link{background-color:#11171d}.pyorg .main-header{border-top:1px solid #191919;border-bottom:1px solid #444}.pyorg .main-header .container{text-align:center;padding:.75em 1em}.pyorg .site-headline{color:#fff;font:inherit;margin:.15em auto .2em}.pyorg .site-headline a{margin:0 auto;display:block}.pyorg .site-headline a .python-logo{width:217.5px;height:61.5px}.pyorg .options-bar-container{float:none}.pyorg .donate-button{text-align:center;margin:1em .7em;display:block;position:relative;top:0}.pyorg .options-bar{color:#bbb;background-color:#1e2933;border-top:1px solid #2d3e4d;border-bottom:1px solid #070a0c;border-radius:6px;width:100%;margin-bottom:1.3125em;line-height:1em}.pyorg .options-bar form{padding:.35em .2em .3em}.pyorg .options-bar .breaker{border-top:1px solid #070a0c;border-bottom:1px solid #2d3e4d;width:100%;height:1px;font-size:1px;line-height:1px;display:block}.pyorg .options-bar .subnav{display:none}.pyorg .search-the-site,.pyorg .icon-search,.pyorg .icon-search:before,.pyorg .winkwink-nudgenudge{vertical-align:middle;display:inline-block}.pyorg .winkwink-nudgenudge{border-left:1px solid #2d3e4d;border-right:1px solid #070a0c}.pyorg .search-the-site{text-align:left;padding:.35em .2em .3em}.pyorg .search-the-site .icon-search:before{margin:0 .125em 0 .25em;font-size:1.75em}.pyorg .search-field{color:#bbb;background-color:#0000;border:none;border-radius:0;width:4.5em;margin:.125em 0;padding:.4em 0 .3em}.pyorg .search-field::placeholder{color:#bbb;font-style:normal}.pyorg .search-field:focus{color:#444;background-color:#fff;padding:.4em .5em .3em}.pyorg .search-button{text-shadow:none;margin-bottom:0;margin-right:.2em}.pyorg .winkwink-nudgenudge{text-align:center;overflow:visible}.pyorg .winkwink-nudgenudge .menu{margin-bottom:0}.pyorg .winkwink-nudgenudge .tier-1>a,.pyorg .winkwink-nudgenudge .tier-2>a{padding:.5em 1.5em .4em 1em;display:block;position:relative}.pyorg .winkwink-nudgenudge .tier-1{width:100%;display:block}.pyorg .winkwink-nudgenudge .tier-1>a{text-align:center}.pyorg .winkwink-nudgenudge .tier-2>a{text-align:left}.pyorg .winkwink-nudgenudge .menu:after{content:"";clear:both;display:table}.pyorg .winkwink-nudgenudge .tier-1{position:relative}.pyorg .winkwink-nudgenudge .subnav{z-index:100;text-align:left;position:absolute}.pyorg.no-touch .winkwink-nudgenudge .subnav{min-width:100%;transition:all;display:none}.pyorg.no-touch .winkwink-nudgenudge .last:hover .subnav,.pyorg.no-touch .winkwink-nudgenudge .last:focus-within .subnav{display:initial;transition-delay:.25s;right:0}.pyorg .winkwink-nudgenudge .tier-2{min-width:100%;display:block}.pyorg .winkwink-nudgenudge .tier-2 a{white-space:nowrap}.pyorg .winkwink-nudgenudge a{color:#bbb;background-color:#0000}.pyorg .winkwink-nudgenudge .tier-1{float:none}.pyorg .winkwink-nudgenudge .tier-1:hover>a{color:#555;background-color:#caccce}.pyorg .winkwink-nudgenudge .subnav{background-color:#caccce}.pyorg .winkwink-nudgenudge .subnav a{color:#555}.pyorg .winkwink-nudgenudge .subnav a:hover,.pyorg .winkwink-nudgenudge .subnav a:focus{color:#e6e8ea;background-color:#999}.pyorg .winkwink-nudgenudge :hover .subnav{display:block}.pyorg .winkwink-nudgenudge .tier-1>a{padding:1em 1em .875em}.pyorg .main-navigation{margin-bottom:1px;display:none}.pyorg .header-banner{clear:both;margin:0 1em;position:relative}.pyorg .header-banner p{color:#e6e8ea}.pyorg .header-banner a:not(.button),.pyorg .header-banner a:not(.readmore){color:#ffd343}.pyorg .header-banner a:not(.button):hover,.pyorg .header-banner a:not(.button):focus,.pyorg .header-banner a:not(.readmore):hover,.pyorg .header-banner a:not(.readmore):focus{color:#fff}.pyorg.home .slideshow{background:#1e2933;max-width:61.25em;margin:0 auto;box-shadow:inset 0 0 30px #0009}.pyorg .slide-code,.pyorg .slide-copy{text-align:left}.pyorg .slide-code{padding:1.25em 1.5em;overflow:auto}.pyorg .slide-code code{color:#0d870d;display:inline-block}.pyorg .slide-code code .k,.pyorg .slide-code code .ow{color:#6ab825;font-weight:700}.pyorg .slide-code code .nb{color:#24909d}.pyorg .slide-code code .nf{color:#447fcf}.pyorg .slide-code code .s1,.pyorg .slide-code code .s2,.pyorg .slide-code code .sa,.pyorg .slide-code code .si{color:#ed9d13}.pyorg .slide-code code .mi{color:#3677a9}.pyorg .slide-code code .o{color:#999}.pyorg .slide-code code .c1{color:#999;font-style:italic}.pyorg .slide-code code .go{color:#ddd}.pyorg .slide-code code .gp{color:#c65d09;font-weight:700}.pyorg.js .launch-shell{display:none}.pyorg .slide-copy{background:#1c3b56;padding:1.25em 2.5em}.pyorg .slide-copy h2{color:#ffd343;margin:0 0 .4375em;font-family:SourceSansProBold,Arial,sans-serif;font-size:1.3125em;line-height:1em}.pyorg #dive-into-python .flex-control-paging{width:50%;max-width:30.75em;margin-left:0;padding:0 0 1em;position:absolute;bottom:0;left:50%}.pyorg #dive-into-python .flex-control-paging a{opacity:.7}.pyorg #dive-into-python .flex-control-paging a:hover,.pyorg #dive-into-python .flex-control-paging a:focus{opacity:1}.pyorg #dive-into-python .flex-control-paging .flex-active{opacity:1;color:#ffd343!important}.pyorg .introduction{color:#caccce;text-align:left;margin-top:.875em;margin-bottom:.875em;padding:.25em .5em;font-size:1.25em}.pyorg .introduction p{margin-bottom:0;line-height:1.4em}.pyorg .introduction a,.pyorg .introduction a:link,.pyorg .introduction a:visited{color:#ffd343;text-decoration:underline}.pyorg .introduction a:hover,.pyorg .introduction a:focus,.pyorg .introduction a:link:hover,.pyorg .introduction a:link:focus,.pyorg .introduction a:visited:hover,.pyorg .introduction a:visited:focus{color:#fff}.pyorg .introduction .breaker{display:none}.pyorg .content-wrapper{background-color:#f9f9f9;background-image:linear-gradient(#fcfcfc 10%,#f9f9f9 90%);padding:0}.pyorg .content-wrapper .container{padding:.25em}.pyorg .main-content{padding-bottom:1.75em}.pyorg table tr{background-color:#f6f6f6}.pyorg table td{border-left:2px solid #fff;padding:.25em .5em .2em}.pyorg table td:first-child{border-left:none}.pyorg .small-widget,.pyorg .medium-widget{border-top:5px solid #e6e8ea;padding:1.25em}.pyorg .small-widget p,.pyorg .medium-widget p,.pyorg .medium-widget ul{margin-bottom:.875em}.pyorg .small-widget p:last-child,.pyorg .medium-widget p:last-child,.pyorg .medium-widget ul:last-child{margin-bottom:0}.pyorg .medium-widget li>a{display:inline-block}.pyorg .widget-title{color:#444;margin:0 0 .1em;font-family:Flux-Regular,SourceSansProRegular,Arial,sans-serif;font-size:1.3125em;line-height:1.25em}.pyorg.fontface .widget-title{font-size:1.50938em}.pyorg.fontface .widget-title span:before{font-size:.875em}.pyorg .widget-title .prompt{display:none}.pyorg .widget-title>span{margin-right:.25em}.pyorg .widget-title>span:before{color:#999}.pyorg.python .small-widget,.pyorg.python .medium-widget{border-top:4px solid #75a8d3}.pyorg.python .widget-title>span:before{color:#3776ab}.pyorg .download-widget p:last-child a{white-space:nowrap}.pyorg .success-stories-widget blockquote{color:#666;background-color:#ffdf76;background-image:linear-gradient(#ffe58f 10%,#ffdf76 90%);border-radius:6px;margin-bottom:.4375em;padding:.7em 1em .875em;font-size:1em;line-height:1.75em}.pyorg .success-stories-widget blockquote:after{content:"";border:1.5em solid #0000;border-top-color:#ffdf76;width:0;height:0;position:absolute;bottom:-2.875em;left:20%}.pyorg .success-stories-widget blockquote a{color:#666}.pyorg .success-stories-widget blockquote a:hover,.pyorg .success-stories-widget blockquote a:focus,.pyorg .success-stories-widget blockquote a:active{color:#3776ab}.pyorg .success-stories-widget .quote-from td{vertical-align:middle;padding:.5em}.pyorg .success-stories-widget .quote-from p{font-size:.875em}.pyorg .applications-widget{padding-left:.75em}.pyorg .applications-widget ul{border-top:1px solid #caccce}.pyorg .applications-widget li{border-bottom:1px solid #caccce;padding:.5em 0 .4em}.pyorg .shrubbery{position:relative}.pyorg .shrubbery .give-me-more{color:#caccce;display:none;position:absolute;top:.25em;right:.25em}.pyorg .shrubbery .give-me-more a{color:#999}.pyorg .shrubbery .give-me-more a:hover,.pyorg .shrubbery .give-me-more a:active{color:#666}.pyorg p.quote-by{color:#e6e8ea;margin-bottom:0}.pyorg .tag-wrapper{display:block}.pyorg .tag-wrapper .tag{white-space:nowrap;color:#666;vertical-align:baseline;background-color:#e6e8ea;border-top:1px solid #f2f4f6;border-bottom:1px solid #caccce;padding:.2em .4em .1em;font-size:.875em}.pyorg .tag-wrapper .tag:hover,.pyorg .tag-wrapper .tag:focus{color:#444;background-color:#d0d4d7;border-top:1px solid #dae0e5;border-bottom:1px solid #b5b8ba}.pyorg .main-content .psf-widget a:not(.button){color:#ffd343}.pyorg .main-content .psf-widget a:not(.button):hover,.pyorg .main-content .psf-widget a:not(.button):focus{color:#fff1c2}.pyorg .psf-widget .widget-title,.pyorg .psf-widget .readmore,.pyorg .psf-widget .readmore:before{color:#ffd343}.pyorg .psf-widget p{color:#caccce}.pyorg .psf-widget .click-these{margin-bottom:0}.pyorg .main-footer .jump-link,.pyorg .sitemap a,.pyorg .footer-links a{text-align:center;padding:.5em .75em .4em;display:block}.pyorg .main-footer{clear:both;color:#666;background-color:#e6e8ea;border-top:1px solid #d8dbde}.pyorg .main-footer .container{padding:0 .75em .75em}.pyorg .main-footer a{color:#666}.pyorg .main-footer a:hover,.pyorg .main-footer a:focus{color:#444}.pyorg .main-footer .jump-link{background-color:#e0e3e5}.pyorg .main-footer a.jump-link{border-top:1px solid #e6e8ea;border-bottom:1px solid #dbdee1;margin:.75em 0}.pyorg .main-footer a.jump-link:hover,.pyorg .main-footer a.jump-link:focus{background-color:#dbdee1;border-top:1px solid #e0e3e5;border-bottom:1px solid #d5d9dc}.pyorg .sitemap{padding-bottom:.5em}.pyorg .sitemap .tier-1{margin-bottom:1.3125em}.pyorg .sitemap .tier-1>a{color:#3776ab;margin-top:.875em;margin-bottom:0;padding:.4em .5em .3em;font-family:Flux-Bold,SourceSansProBold,Arial,sans-serif;font-size:1.25em}.pyorg .sitemap .tier-1>a:hover,.pyorg .sitemap .tier-1>a:focus{color:#222}.pyorg .sitemap .subnav{border-top:1px solid #d5d6d8;border-bottom:1px solid #f7f7f8;margin-bottom:0;font-size:1em}.pyorg .sitemap .subnav li{border-top:1px solid #f7f7f8;border-bottom:1px solid #d5d6d8}.pyorg .sitemap .subnav a:hover,.pyorg .sitemap .subnav a:focus{background-color:#ecedef}.pyorg .site-base{border-top:1px solid #111}.pyorg .site-base .container{padding:1em}.pyorg .footer-links{margin-bottom:.5em}.pyorg .footer-links a{color:#89b4d9;font-family:Flux-Bold,SourceSansProBold,Arial,sans-serif;font-size:1.125em}.pyorg.fontface .footer-links a{font-size:1.29375em}.pyorg.fontface .footer-links a span:before{font-size:.875em}.pyorg .footer-links a:hover,.pyorg .footer-links a:focus{color:#fff7dc;text-shadow:0 0 5px #ffd34333}.pyorg .copyright{clear:both;color:#75a8d3;text-align:center;margin-bottom:0;font-size:.75em}.pyorg .copyright a{color:#75a8d3;border-bottom:1px dotted #4f90c6}.pyorg .copyright a:hover,.pyorg .copyright a:focus{color:#fff;text-decoration:none}.pyorg #python-status-indicator{border-radius:99px;width:12px;height:12px;display:inline-block}.pyorg .python-status-indicator-none{background-color:green}.pyorg .flex-slideshow{position:relative}.pyorg .flex-slideshow .slides:after{content:"";clear:both;display:table}.pyorg .flex-slideshow .slides>li{backface-visibility:hidden;display:none}.pyorg .flex-control-nav li{display:inline-block}.pyorg .flex-control-nav a{cursor:pointer;display:block}.pyorg .flex-control-nav{text-align:center;padding:0 2.5em}.pyorg .flex-control-nav a{color:#888;margin-left:.5em;font-size:1em;line-height:1em}.pyorg .flex-control-nav a:hover,.pyorg .flex-control-nav a:focus{color:#444;background-color:#ccc;border-color:#bbb}.pyorg .flex-control-nav .flex-active{color:#666;background-color:#fff}.pyorg .screen-reader-text{clip:rect(0px, 0px, 0px, 0px);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pyorg .icon-news,.pyorg .icon-jobs,.pyorg .icon-download,.pyorg .icon-documentation,.pyorg .icon-calendar,.pyorg .icon-search,.pyorg .icon-python,.pyorg .icon-get-started,.pyorg .icon-arrow-up,.pyorg .icon-arrow-down,.pyorg .icon-freenode,.pyorg .icon-twitter,.pyorg .icon-success-stories,.pyorg .icon-mastodon{speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;margin-right:.5em;font-family:Pythonicon;font-style:normal;font-weight:400;line-height:1}.pyorg .icon-arrow-up span,.pyorg .icon-arrow-down span{display:none}.pyorg .fa{font:14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block}.pyorg .icon-news:before{content:""}.pyorg .icon-jobs:before{content:""}.pyorg .icon-download:before{content:""}.pyorg .icon-documentation:before{content:""}.pyorg .icon-calendar:before{content:""}.pyorg .icon-search:before{content:""}.pyorg .icon-python:before{content:""}.pyorg .icon-get-started:before{content:""}.pyorg .icon-arrow-up:before{content:""}.pyorg .icon-arrow-down:before{content:""}.pyorg .icon-freenode:before{content:""}.pyorg .icon-twitter:before{content:""}.pyorg .icon-success-stories:before{content:""}.pyorg .icon-mastodon:before{content:""}.pyorg .container:after,.pyorg .row:after{content:"";clear:both;display:table}@media (width<=24.9375em){.pyorg .search-field:focus{width:9em}}@media (width<=30em){.pyorg .tier-1{position:static!important}.pyorg .slideshow{display:none}}@media (width>=25em){.pyorg .introduction{font-size:1.3125em}.pyorg .content-wrapper .container{padding:1em 1.5em}.pyorg .shrubbery .give-me-more{display:block}.pyorg .widget-title .prompt{display:inline}}@media (width>=30em){.pyorg .options-bar .breaker{display:none}.pyorg .search-the-site{border-right:1px solid #070a0c}}@media (width>=32.5em){.pyorg{text-rendering:optimizelegibility}.pyorg .meta-navigation,.pyorg .main-header,.pyorg .main-navigation,.pyorg .content-wrapper,.pyorg .main-footer{clear:both}.pyorg .container{width:100%;max-width:75em;margin:0 auto;padding:0}.pyorg .introduction{font-size:1.5em}.pyorg .success-stories-widget blockquote{padding:1em 1.4em 1.3em;font-size:1.125em}.pyorg button,.pyorg .button,.pyorg a.button{vertical-align:baseline;width:auto;display:inline-block}.pyorg .search-field:focus{width:8em}}@media (width>=39.9375em) and (width<=58.75em){.pyorg .main-navigation{text-align:center;overflow:visible}.pyorg .main-navigation .menu{margin-bottom:0}.pyorg .main-navigation .tier-1>a,.pyorg .main-navigation .tier-2>a{padding:.5em 1.5em .4em 1em;display:block;position:relative}.pyorg .main-navigation .tier-1{width:100%;display:block}.pyorg .main-navigation .tier-1>a{text-align:center}.pyorg .main-navigation .tier-2>a{text-align:left}.pyorg .main-navigation .menu:after{content:"";clear:both;display:table}.pyorg .main-navigation .tier-1{position:relative}.pyorg .main-navigation .subnav{z-index:100;text-align:left;position:absolute}.pyorg.no-touch .main-navigation .subnav{min-width:100%;transition:all;display:none}.pyorg.no-touch .main-navigation .element-1:hover .subnav,.pyorg.no-touch .main-navigation .element-1:focus-within .subnav,.pyorg.no-touch .main-navigation .element-2:hover .subnav,.pyorg.no-touch .main-navigation .element-2:focus-within .subnav,.pyorg.no-touch .main-navigation .element-3:hover .subnav,.pyorg.no-touch .main-navigation .element-3:focus-within .subnav,.pyorg.no-touch .main-navigation .element-4:hover .subnav,.pyorg.no-touch .main-navigation .element-4:focus-within .subnav{display:initial;transition-delay:.25s;left:0}.pyorg.no-touch .main-navigation .element-5:hover .subnav,.pyorg.no-touch .main-navigation .element-5:focus-within .subnav,.pyorg.no-touch .main-navigation .element-6:hover .subnav,.pyorg.no-touch .main-navigation .element-6:focus-within .subnav,.pyorg.no-touch .main-navigation .element-7:hover .subnav,.pyorg.no-touch .main-navigation .element-7:focus-within .subnav{display:initial;transition-delay:.25s;right:0}.pyorg .main-navigation .tier-2{min-width:100%;display:block}.pyorg .main-navigation .tier-2 a{white-space:nowrap}.pyorg.no-touch .main-navigation{clear:both;text-align:center;border-radius:8px 8px 0 0;display:block;box-shadow:0 0 10px #0003}.pyorg.no-touch .main-navigation .tier-1{float:left;width:33.3333%}.pyorg.no-touch .main-navigation .tier-1.element-6:not(.unstacked),.pyorg.no-touch .main-navigation .tier-1.element-7:not(.unstacked){width:16.6667%}.pyorg.no-touch .main-navigation .tier-1.element-1{border-top-left-radius:8px}.pyorg.no-touch .main-navigation .tier-1.element-1>a{border-top-left-radius:7px}.pyorg.no-touch .main-navigation .tier-1.element-3{border-right:0;border-top-right-radius:8px}.pyorg.no-touch .main-navigation .tier-1.element-3>a{border-right:0;border-top-right-radius:7px}.pyorg.no-touch .main-navigation .tier-1.element-7{border-right:0}.pyorg.no-touch .main-navigation .tier-2{font-size:.875em}.pyorg.no-touch .main-navigation .tier-2>a{border-right:1px solid #fffc}.pyorg.no-touch .main-navigation .subnav{box-shadow:0 .5em .5em #0000004d}}@media (width>=40em){.pyorg .meta-navigation{text-align:left}.pyorg .meta-navigation .jump-link{display:none}.pyorg .meta-navigation li{float:left;border-left:1px solid #273643;border-right:1px solid #11171d;width:14.2857%}.pyorg .site-headline{float:left}.pyorg .options-bar-container{float:right}.pyorg .donate-button{margin:0 .5em 0 0;display:inline;position:relative;top:19px}.pyorg .options-bar{float:right;width:auto}.pyorg .search-field{transition:width .3s ease-in-out}.pyorg .search-field:focus{width:6em;margin-right:.5em}.pyorg.no-touch .search-button{display:inline}.pyorg .slide-copy p{font-size:1em}.pyorg .introduction{padding:0 1.5em}.pyorg .header-banner{padding:1em}.pyorg.home .header-banner{padding:0}.pyorg .with-supernav .super-navigation,.pyorg .super-navigation [class^=download-os-]{display:none}.pyorg .python-navigation{background-color:#2d618c;background-image:linear-gradient(#3776ab 30%,#2d618c 95%);border-top:1px solid #629ccd;border-bottom:1px solid #18334b}.pyorg .python-navigation .tier-1{border:1px solid #4f90c6;border-color:#4f90c6 #2b5b84 #1e415e #4f90c6}.pyorg .python-navigation .tier-1>a{color:#e6e8ea;letter-spacing:.01em;background-color:#0000;border-top:1px solid #0000;border-bottom:1px solid #0000}.pyorg .python-navigation .tier-1>a:hover,.pyorg .python-navigation .tier-1>a:focus{color:#fff;background-color:#2d618c;background-image:linear-gradient(#326b9c 10%,#2d618c 90%);border-top:1px solid #3776ab;border-bottom:1px solid #2d618c}.pyorg .python-navigation .subnav{background-color:#d6e5f2;background-image:linear-gradient(#bbd4e9 10%,#d6e5f2 90%);border-top:1px solid #18334b;box-shadow:inset 0 0 20px #3776ab26}.pyorg .python-navigation .tier-2>a{color:#333333e6;border-top:1px solid #3776ab40;border-bottom:1px solid #0000}.pyorg .python-navigation .tier-2>a:hover,.pyorg .python-navigation .tier-2>a:focus{color:#222222e6;background:#ffffff59}.pyorg .python-navigation .tier-2:last-child>a{border-bottom:1px solid #3776ab40}.pyorg .python-navigation .super-navigation{color:#666;background-color:#d6e5f2;background-image:linear-gradient(#fcfdfe 10%,#d6e5f2 90%);border:1px solid #89b4d9}.pyorg .python-navigation .super-navigation a:not(.button){color:#3776ab}.pyorg .python-navigation .super-navigation h4{color:#316998}.pyorg .row{margin-bottom:1em}.pyorg .small-widget{float:left;width:48.9362%;margin-right:2.12766%}.pyorg .small-widget:nth-child(2),.pyorg .small-widget.last{margin-right:0}.pyorg .psf-widget{clear:both;padding:1.5em 1.75em}.pyorg .main-footer .jump-link{display:none}.pyorg .sitemap .tier-1{float:left;width:50%}.pyorg .sitemap .tier-1:nth-child(odd){clear:left}.pyorg .sitemap .tier-1:nth-child(2n){border-left:1px solid #f7f7f8}.pyorg .sitemap .tier-1.element-7{clear:none}.pyorg .footer-links{clear:both;text-align:center}.pyorg .footer-links li{display:inline-block}}@media (width>=50em){.pyorg .site-headline{margin:.25em 0 .5em}.pyorg .site-headline a .python-logo{width:255.2px;height:72.16px}.pyorg .donate-button{top:33px}.pyorg .options-bar{margin:.875em 0}.pyorg .search-field{background:#fff;width:11em;margin-right:.5em;padding:.4em .5em .3em}.pyorg .search-field:focus{width:13em}.pyorg.home .header-banner{margin:0 2em 0 1em}.pyorg .slideshow .slides li{overflow:hidden}.pyorg .slide-code,.pyorg .slide-copy{float:left;width:50%;min-height:280px}.pyorg .slide-code{line-height:1.5;position:relative}.pyorg.js .launch-shell{display:block}.pyorg.flexslide .launch-shell{z-index:50;display:block;position:absolute;top:1.25em;right:52%}.pyorg.flexslide .launch-shell span,.pyorg.flexslide .launch-shell a{display:inline-block}.pyorg.flexslide .launch-shell .button{padding-bottom:.2em}.pyorg.flexslide .launch-shell .button .message{opacity:0;white-space:nowrap;color:#999;background-color:#1f1f1f;background-image:linear-gradient(#333 10%,#1f1f1f 90%);border:1px solid #444;border-radius:6px;padding:.4em .75em .35em;transition:opacity .25s ease-in-out,top .25s linear;position:absolute;top:-9999px;right:2.6em;box-shadow:1px 1px 1px #0000000d}.pyorg.flexslide .launch-shell .button:hover .message{opacity:1;transition:opacity .25s ease-in-out,top linear;top:0}.pyorg .introduction{text-align:center}.pyorg .introduction .breaker{width:100%;height:1px;font-size:1px;line-height:1px;display:block}.pyorg .main-header .container{padding-bottom:0}.pyorg .header-banner{margin:0 -1em 0 0;padding:0 0 0 1em}.pyorg.home .content-wrapper .container{padding-top:2.5em}.pyorg .quote-by{vertical-align:baseline;display:inline-block}.pyorg .psf-widget{min-height:14em;position:relative}.pyorg .psf-widget .python-logo{background:url(/python-logo-large-ec7b70e5.png) 0 0 no-repeat;width:210px;height:210px;position:absolute;top:.5em;right:1em}.pyorg .psf-widget .widget-title,.pyorg .psf-widget p{margin-right:34.0425%}.pyorg .sitemap,.pyorg .footer-links,.pyorg .copyright{font-size:.875em}.pyorg .sitemap .tier-1{border-left:0;border-right:0;width:32.9787%}.pyorg .sitemap .tier-1:nth-child(odd),.pyorg .sitemap .tier-1:nth-child(2n){clear:none;border-left:0;border-right:0}.pyorg .sitemap .tier-1.element-1,.pyorg .sitemap .tier-1.element-2,.pyorg .sitemap .tier-1.element-4,.pyorg .sitemap .tier-1.element-5,.pyorg .sitemap .tier-1.element-8{border-right:1px solid #d5d6d8}.pyorg .sitemap .tier-1.element-2,.pyorg .sitemap .tier-1.element-3,.pyorg .sitemap .tier-1.element-5,.pyorg .sitemap .tier-1.element-6,.pyorg .sitemap .tier-1.element-7,.pyorg .sitemap .tier-1.element-8{border-left:1px solid #f7f7f8}.pyorg .footer-links .say-no-more{visibility:visible;display:inline}.pyorg .flex-control-nav{padding-bottom:1.5em}}@media (width>=58.75em){.pyorg .main-navigation{text-align:center;overflow:visible}.pyorg .main-navigation .menu{margin-bottom:0}.pyorg .main-navigation .tier-1>a,.pyorg .main-navigation .tier-2>a{padding:.5em 1.5em .4em 1em;display:block;position:relative}.pyorg .main-navigation .tier-1{width:100%;display:block}.pyorg .main-navigation .tier-1>a{text-align:center}.pyorg .main-navigation .tier-2>a{text-align:left}.pyorg .main-navigation .menu:after{content:"";clear:both;display:table}.pyorg .main-navigation .tier-1{position:relative}.pyorg .main-navigation .subnav{z-index:100;text-align:left;position:absolute}.pyorg.no-touch .main-navigation .subnav{min-width:100%;transition:all;display:none}.pyorg.no-touch .main-navigation .element-1:hover .subnav,.pyorg.no-touch .main-navigation .element-1:focus-within .subnav,.pyorg.no-touch .main-navigation .element-2:hover .subnav,.pyorg.no-touch .main-navigation .element-2:focus-within .subnav,.pyorg.no-touch .main-navigation .element-3:hover .subnav,.pyorg.no-touch .main-navigation .element-3:focus-within .subnav,.pyorg.no-touch .main-navigation .element-4:hover .subnav,.pyorg.no-touch .main-navigation .element-4:focus-within .subnav{display:initial;transition-delay:.25s;left:0}.pyorg.no-touch .main-navigation .element-5:hover .subnav,.pyorg.no-touch .main-navigation .element-5:focus-within .subnav,.pyorg.no-touch .main-navigation .element-6:hover .subnav,.pyorg.no-touch .main-navigation .element-6:focus-within .subnav,.pyorg.no-touch .main-navigation .element-7:hover .subnav,.pyorg.no-touch .main-navigation .element-7:focus-within .subnav{display:initial;transition-delay:.25s;right:0}.pyorg .main-navigation .tier-2{min-width:100%;display:block}.pyorg .main-navigation .tier-2 a{white-space:nowrap}.pyorg.no-touch .main-navigation{text-align:center;border-radius:8px;font-size:1.125em;display:block;box-shadow:0 0 10px #0003}.pyorg.no-touch .main-navigation .menu{text-align:center}.pyorg.no-touch .main-navigation .tier-1{float:none;vertical-align:baseline;border:0;border-left:1px solid #ffffff1a;border-right:1px solid #0003;width:auto;margin:0 -5px 0 0;display:inline-block}.pyorg.no-touch .main-navigation .tier-1.element-1{border-left:0}.pyorg.no-touch .main-navigation .tier-1.element-6,.pyorg.no-touch .main-navigation .tier-1.element-7{width:auto}.pyorg.no-touch .main-navigation .tier-1>a{padding:.65em 1.25em .55em}.pyorg.no-touch .main-navigation .tier-2{font-size:.875em}.pyorg .site-headline a .python-logo{width:290px;height:82px}.pyorg .search-field{width:14em}.pyorg .search-field:focus{width:18em;margin-right:.5em}.pyorg .donate-button{top:38px}.pyorg .options-bar{margin:1.3125em 0}.pyorg .with-supernav .subnav{border-right:1px solid #6666664d;display:none}.pyorg .with-supernav .super-navigation{display:block}.pyorg .super-navigation{color:#666;text-align:left;border-top:1px solid #fffc;border-left:1px solid #fffc;width:28em;min-height:100%;padding:1.5em 1.75em;position:absolute;top:0}.pyorg .main-navigation .super-navigation a:not(.button){border:none;padding:0}.pyorg .main-navigation .super-navigation a:not(.button):hover,.pyorg .main-navigation .super-navigation a:not(.button):focus{color:#1e2933;background:0 0;border:none}.pyorg .super-navigation h3,.pyorg .super-navigation h4{margin-top:0}.pyorg #community .super-navigation h4{margin-bottom:0;font-family:Flux-Bold,SourceSansProBold,Arial,sans-serif;font-size:1.3125em;font-weight:400;line-height:1.25em}.pyorg .super-navigation p.quote-by{color:#3776ab}.pyorg .tier-1.element-1 .super-navigation,.pyorg .tier-1.element-2 .super-navigation,.pyorg .tier-1.element-3 .super-navigation{left:100.25%}.pyorg .tier-1.element-4 .super-navigation,.pyorg .tier-1.element-5 .super-navigation,.pyorg .tier-1.element-7 .super-navigation{left:-28em}.pyorg .small-widget p,.pyorg .medium-widget p,.pyorg .medium-widget li,.pyorg .psf-widget p{font-size:.9375em}.pyorg .small-widget{float:left;width:23.4043%;margin-right:2.12766%}.pyorg .small-widget:nth-child(2){margin-right:2.12766%}.pyorg .medium-widget{float:left;width:48.9362%;margin-right:2.12766%}.pyorg .small-widget.last,.pyorg .medium-widget.last{float:right;margin-right:0}.pyorg .blog-widget li,.pyorg .event-widget li{padding-left:7em}.pyorg .blog-widget .say-no-more,.pyorg .event-widget .say-no-more{visibility:visible;display:inline}.pyorg .psf-widget{padding:1.5em 1.75em}.pyorg .psf-widget .widget-title,.pyorg .psf-widget p{margin-right:25.5319%}.pyorg .tag-wrapper{display:inline}.pyorg .sitemap a{text-align:left}.pyorg .sitemap .tier-1{border:0;width:16.6667%}.pyorg .sitemap .tier-1.element-1,.pyorg .sitemap .tier-1.element-2,.pyorg .sitemap .tier-1.element-3,.pyorg .sitemap .tier-1.element-4,.pyorg .sitemap .tier-1.element-5,.pyorg .sitemap .tier-1.element-6,.pyorg .sitemap .tier-1.element-7,.pyorg .sitemap .tier-1.element-8,.pyorg .sitemap .subnav,.pyorg .sitemap .subnav li{border:0}.pyorg .footer-links a{padding:.3em .75em}}@media (width>=64em){.pyorg .psf-widget .widget-title,.pyorg .psf-widget p{margin-right:34.0425%}}.pyorg .fa-linkedin-square:before{content:""}
