/* Google Fonts downloaded locally for performance reasons */ /* latin-ext */ @font-face { font-family: 'Lato'; font-style: italic; font-weight: 400; font-display: block; src: url('/static/fonts/Lato-Italic-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Lato'; font-style: italic; font-weight: 400; font-display: block; src: url('/static/fonts/Lato-Italic.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* latin-ext */ @font-face { font-family: 'Lato'; font-style: italic; font-weight: 700; font-display: block; src: url('/static/fonts/Lato-BoldItalic-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Lato'; font-style: italic; font-weight: 700; font-display: block; src: url('/static/fonts/Lato-BoldItalic.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* latin-ext */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 400; font-display: block; src: url('/static/fonts/Lato-Regular-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 400; font-display: block; src: url('/static/fonts/Lato-Regular.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* latin-ext */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 700; font-display: block; src: url('/static/fonts/Lato-Bold-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 700; font-display: block; src: url('/static/fonts/Lato-Bold.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* latin-ext */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 900; font-display: block; src: url('/static/fonts/Lato-Black-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Lato'; font-style: normal; font-weight: 900; font-display: block; src: url('/static/fonts/Lato-Black.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* devanagari */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; font-display: block; src: url('/static/fonts/Poppins-Light-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB; } /* latin-ext */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; font-display: block; src: url('/static/fonts/Poppins-Light-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; font-display: block; src: url('/static/fonts/Poppins-Light.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* devanagari */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: block; src: url('/static/fonts/Poppins-Regular-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB; } /* latin-ext */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: block; src: url('/static/fonts/Poppins-Regular-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: block; src: url('/static/fonts/Poppins-Regular.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* devanagari */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-Bold-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB; } /* latin-ext */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-Bold-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-Bold.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* devanagari */ @font-face { font-family: 'Poppins'; font-style: italic; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-BoldItalic-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB; } /* latin-ext */ @font-face { font-family: 'Poppins'; font-style: italic; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-BoldItalic-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Poppins'; font-style: italic; font-weight: 700; font-display: block; src: url('/static/fonts/Poppins-BoldItalic.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* devanagari */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: block; src: url('/static/fonts/Poppins-Black-devanagari.woff2') format('woff2'); unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB; } /* latin-ext */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: block; src: url('/static/fonts/Poppins-Black-ext.woff2') format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: block; src: url('/static/fonts/Poppins-Black.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* Browser elements */ /** * A word on font-sizing units * --------------------------- * Font-sizes should in general be sized in rem (1rem usually equals 16px) * This allows fonts to be resized in browser, which is better for accessibility * (see https://www.w3.org/WAI/WCAG21/Understanding/resize-text.html). * * We can also use ems, if you wish to nest elements and scale (components), but * this gets tricky quite quickly, so for the most part we use rems. * * We show the px value before, as a fallback for non-rem browsers and to remind * us of the calculated size. * * Margins and paddings should be considered if the need to be relative (em or rem) * or happy not to scale with fonts and want set about in px. * If scaling, then in general top and bottom should scale with element (em), and * left and right with root element (rem) to have consistent alignment (see * https://zellwk.com/blog/rem-vs-em/#rems-or-ems%3F for why). * So we set margin like this: * * h2.header { * font-size: 25px; * font-size: 1.5625rem; * margin: 14px; * margin: 0.56em 0.875rem * } * * and remember for the non-font elements, ems are relative to current font size (25px in above example), and rems to root (16px) */ body { font-family: 'Lato', sans-serif; color: #1a2b49; margin: 0; font-weight: inherit; -webkit-font-smoothing: antialiased; font-size: 17px; font-size: 1.0625rem; line-height: 1.4em; } * { box-sizing: border-box; } h1, h2, h3, h4, h5, h6, .subtitle { font-family: 'Poppins', sans-serif; line-height: 1.2em; } h1 { font-size: 2em; } h2 { font-size: 1.5em; } h3 { font-size: 1.17em; } h4 { font-size: 1.0625em; } h5 { font-size: 1em; } h6 { font-size: 1em; font-weight: normal; } b { font-weight: bold; } a:focus, a:hover { text-decoration: underline; } img { max-width: 100%; height: auto; } /* The main wrapper, center aligned */ .container { max-width: 1280px; max-width: 80em; padding-left: 20px; padding-left: min(20px, 5vw); padding-right: 20px; padding-right: min(20px, 5vw); margin: auto; } /* Main title, subtitle and modifiers */ .title, .subtitle { margin-top: 20px; } .subtitle { font-size: 28px; font-size: 1.75rem; line-height: 42px; line-height: 1.5em; font-weight: bold; } .title::before, .subtitle::before { display: block; content: ''; margin-bottom: 15px; border-bottom: solid 1px #a8caba; width: 80px; } .subtitle + .title { margin-top: 0; } .subtitle + .title::before { content: normal; } .title .chapter-unedited { font-family: monospace; text-transform: uppercase; color: red; vertical-align: super; font-size: 0.5em; } .title-lg { font-size: 48px; font-size: 3rem; } .title-alt::before { border-bottom-color: #f7f779; } .title-center { text-align: center; } .title-center::before { margin-left: auto; margin-right: auto; } @media (max-width: 56.25em) { .title-alt::before { margin-left: auto; margin-right: auto; } } h2.header { font-size: 25px; font-size: 1.5625rem; margin: 14px; margin: 0.56em 0.875rem; } .btn { border: 1px solid #1a2b49; border-radius: 50px; padding: 15px 30px; background: #1a2b49; color: #fff; font-size: 14px; font-size: 0.875rem; text-decoration: none; text-align: center; } .btn:hover, .btn:focus, .alt.btn { background: #fff; color: #1a2b49; } .alt.btn:hover, .alt.btn:focus { background: #1a2b49; color: #fff; } .alt-bg { background-color: #5c687d; color: #f2f2f2; } .navigation-logo { color: #fff; white-space: nowrap; text-decoration: none; font-size: 16px; font-size: 1rem; margin-right: 40px; } .navigation-logo:hover, .navigation-logo:focus { text-decoration: none; } .navigation-logo .line-group { display: block; position: relative; z-index: 1; line-height: 1; overflow: hidden; } .navigation-logo .line-group::after { content: ''; position: absolute; height: 1px; width: 100%; background-color: #f7f779; bottom: calc(0.4em - 1px); margin-inline-start: 0.5em; /* cover both rtl and ltr scenarios */ } .navigation-logo .wa { font-weight: 700; letter-spacing: 5px; font-size: 1.3em; font-size: min(1.3em, 7vw); margin-right: -5px; /* fix letter spacing issue for the last letter */ font-family: 'Poppins', sans-serif; } .navigation-logo .pre, .navigation-logo .ha { font-size: 0.8em; letter-spacing: 2px; } header.alt-bg a:hover, footer.alt-bg a:hover, header.alt-bg a:focus, footer.alt-bg a:focus { color: #f7f779; } .alt-bg .btn { border-color: #f7f779; background-color: #f7f779; color: #1a2b49; } .alt-bg .btn:hover, .alt-bg .btn:focus, .alt-bg .alt.btn { background-color: transparent; color: #f7f779; } .alt-bg .alt.btn:hover, .alt-bg .alt.btn:focus { background-color: #f7f779; color: #1a2b49; } .top-header, footer { padding-top: 40px; padding-bottom: 40px; } .top-header, footer .nav { display: flex; justify-content: space-between; align-items: center; } header nav ul, footer nav ul { display: flex; align-items: center; margin: 0; padding-inline-start: 0; flex-wrap: nowrap; } header nav li, footer nav li { display: flex; line-height: 1.4em; text-align: center; } header nav li li, footer nav li li { text-align: left; } header nav .menu li .year-switcher, header nav .menu li .table-of-contents-switcher, header nav .menu li .language-switcher { margin-bottom: 4em; } header nav { display: flex; align-items: center; margin: 0; } header nav > ul > li > * { margin-right: 1.5em; } header nav > ul > li:last-child > * { margin-right: 0; } nav a { text-decoration: none; color: #f2f2f2; } header .cta { display: flex; min-width: 205px; flex-direction: row-reverse; } .table-of-contents-switcher, .language-switcher, .year-switcher { display: flex; justify-content: center; align-items: center; position: relative; font-size: 14px; font-size: 0.875rem; } .search-nav input { min-width: 400px; text-indent: 5px; } .header-search, .footer-search { padding: 5px; } .search-input { line-height: 1.65; } .search-button { border-color: #000; background-color: #f7f779; padding: 6px 27px; width: auto; border: 1px solid #666; border-radius: 2px; } .search-button svg { fill: #000; color: #000; } .table-of-contents-switcher:hover, .language-switcher:hover, .year-switcher:hover { color: #f7f779; } .table-of-contents-switcher::after, .language-switcher::after, .year-switcher::after { content: ""; position: absolute; pointer-events: none; border-style: solid; border-width: 2px 2px 0 0; border-color: currentColor; height: 0.4em; width: 0.4em; top: 50%; margin-top: -0.4em; /* 22px is a magic number equal to the select right computed padding + 2px total sides border */ right: 22px; -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); } .table-of-contents-switcher select, .language-switcher select, .year-switcher select { border: 1px solid currentColor; border-radius: 50px; padding: 20px 38px 20px 20px; background: none; color: inherit; cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; min-width: 100px; min-width: 6.35rem; text-align-last: center; } .table-of-contents-switcher select, .language-switcher select { min-width: 120px; min-width: 7.5rem; } .table-of-contents-switcher select::-ms-expand, .language-switcher select::-ms-expand, .year-switcher select::-ms-expand { display: none; } .table-of-contents-switcher option, .language-switcher option, .year-switcher option { color: #1a2b49; background-color: white; } .table-of-contents-switcher:focus-within, .language-switcher:focus-within, .year-switcher:focus-within, .table-of-contents-switcher select:focus, .language-switcher select:focus, .year-switcher select:focus { border-color: #f7f779; color: #f7f779; } .not-translated { font-style: italic; font-size: 0.9em; } .menu-btn, #menu, #mobile-footer-nav-items, .menu { display: none; } .main { margin: 0 auto; font-size: 17px; font-size: 1.0625rem; } .main a, .main a:visited { color: #0b1423; } h2, h3, h4 { margin-top: 2em; } h2 code, h3 code, h4 code { font-size: inherit; } p, td, th, code, li { font-size: 17px; font-size: 1.0625rem; line-height: 1.6em; } hr { opacity: 0.2; } blockquote, blockquote p { position: relative; font-style: italic; font-size: 19px; font-size: 1.1875rem; line-height: 1.5em; } blockquote::before { content: '"'; content: '"' / ""; position: absolute; top: -4rem; left: -7rem; opacity: 0.05; font-size: 20rem; font-family: 'Courier New', 'Courier', monospace; line-height: 1; pointer-events: none; } blockquote em { font-style: normal; } /* Footer */ footer .container { display: grid; grid-template-areas: 'home-logo nav-items nav-items nav-items' 'hr hr hr hr' 'copyright copyright ha-logo social-media'; grid-template-columns: 280px 1fr 1fr 120px 0 0; grid-template-columns: 17.5rem 1fr 1fr 7.5rem 0 0; } footer .home-logo { grid-area: home-logo; display: flex; justify-content: start; align-items: center; } footer .nav-items { grid-area: nav-items; display: flex; justify-content: flex-end; align-items: center; } footer .mobile-ha-social-media { display: none; } footer .ha-logo { grid-area: ha-logo; display: flex; justify-content: flex-end; align-items: center; color: currentColor; } footer .nav-items > ul > li > * { margin-right: 2vw; } footer .nav-items > ul > li:last-child > * { margin-right: 0; } footer .language-switcher { grid-area: language-switcher; } footer .copyright { grid-area: copyright; display: block; align-items: center; } footer .social-media { grid-area: social-media; display: flex; align-items: center; justify-content: flex-end; } footer ul { margin-block-start: 0; margin-block-end: 0; } footer hr { grid-area: hr; width: 100%; margin: 40px 0 20px 0; } footer hr:last-of-type { grid-area: hr-last; display: none; } p.copyright { margin: 0; font-size: 16px; font-size: 1rem; color: #f2f2f2; } p.copyright a { color: white; } .social-media div { padding: 0 20px; } .social-media li:first-child a { margin-right: 30px; } .social-media li { display: flex; } .social-media a { color: currentColor; } @media (max-width: 72em) and (min-width: 37.51em) { /* Header */ .top-header, footer { position: relative; padding-top: 30px; padding-bottom: 30px; } header nav:first-of-type, footer nav:first-of-type, header .cta { display: none; } header nav > ul > li > * { margin: 0; } header nav > ul > li > a, header nav > ul > li > .search-nav { margin-bottom: 50px; margin-bottom: 3.125rem; font-size: 16px; font-size: 1rem; line-height: 1.4em; } .search-nav input { min-width: 400px; } header nav > ul > li:last-child { margin: 0; } header .social-media li { display: inline; } footer .container { display: grid; grid-template-areas: 'home-logo home-logo home-logo home-logo' 'language-switcher language-switcher language-switcher language-switcher' 'hr hr hr hr' 'nav-items nav-items nav-items nav-items' 'hr-last hr-last hr-last hr-last' 'copyright copyright ha-logo social-media'; grid-template-columns: 3fr 1fr 1fr 120px 0 0; grid-template-rows: 60px auto auto; } footer .home-logo { justify-content: center; } footer .nav-items { grid-area: nav-items; display: flex; justify-content: center; align-items: center; } footer .nav-items ul { display: flex; flex-direction: column; justify-content: center; align-items: center; } footer .nav-items ul li > * { margin: 20px 0; font-size: 16px; font-size: 1rem; } footer hr { margin: 20px 0; } footer hr:last-of-type { display: block; } } .visually-hidden { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; /* added line */ } .hidden { display: none !important; } .nav-dropdown-btn.js-enable, .nav-dropdown-btn.js-enable:hover { opacity: 0.5; color: unset; cursor: unset; } #skiptocontent a { padding: 6px; position: absolute; top: -1000px; left: 0; border-right: 1px solid white; border-bottom: 1px solid white; border-bottom-right-radius: 8px; background: #f7f779; color: #333; -webkit-transition: top 1s ease-out; transition: top 1s ease-out; z-index: 100; } #skiptocontent a:focus { position: absolute; left: 0; top: 0; outline-color: transparent; -webkit-transition: top 0.1s ease-in; transition: top 0.1s ease-in; } /* Mobile View */ @media (max-width: 37.5em) { body, p, td, th, code, li { font-size: 16px; font-size: 1rem; overflow-wrap: break-word; } .visually-hidden-mobile { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; /* added line */ } .title-lg { font-size: 40px; font-size: 2.5rem; font-size: min(2.5rem, 15vw); /* Cap max font size on mobile, if possible. Allows 200% font-size. */ } h2 { font-size: min(1.5rem, 12vw); /* Cap max font size on mobile, if possible. Allows 200% font-size. */ } /* Header */ .top-header, footer { position: relative; padding-top: 30px; padding-bottom: 30px; } .top-header { flex-wrap: wrap; } header nav:first-of-type, footer nav:first-of-type, header .cta { display: none; } .navigation-logo { min-width: auto; max-width: 100%; margin-right: 0; } #menu { margin-left: 40px; } #menu .menu { overflow: auto; } header nav > ul > li > * { margin: 0; } header nav > ul > li > a, header nav > ul > li > .search-nav { margin-bottom: 50px; font-size: 16px; font-size: 1rem; line-height: 1.4em; } .search-nav input { min-width: 200px; margin-bottom: 10px; } header nav > ul > li:last-child { margin: 0; } header .social-media li { display: inline; } .main { display: block; } /* Footer */ footer { overflow: auto; } footer .container { grid-template-areas: 'home-logo' 'hr' 'nav-items' 'ha-social-media' 'hr-last' 'copyright'; grid-template-columns: 1fr; grid-template-rows: auto; } footer .home-logo { grid-area: home-logo; margin: 20px 0; justify-content: center; } footer .mobile-ha-social-media { display: grid; grid-area: ha-social-media; grid-template-areas: 'ha-logo social-media'; } footer .ha-logo { grid-area: ha-logo; display: flex; justify-content: flex-start; align-items: center; margin: 20px 0; } footer .nav-items { grid-area: nav-items; display: flex; justify-content: center; align-items: center; } footer .nav-items ul { display: flex; flex-direction: column; justify-content: center; align-items: center; } footer .nav-items ul li > * { margin: 20px 0; font-size: 16px; font-size: 1rem; } footer .language-switcher { grid-area: language-switcher; } p.copyright { font-size: 12px; font-size: 0.75rem; } footer .copyright { grid-area: copyright; display: block; justify-content: center; align-items: center; margin-top: 20px; text-align: center; } footer .social-media { grid-area: social-media; } footer hr { margin: 20px 0; } footer hr:last-of-type { display: block; } .not-mobile { display: none !important; } } @media (max-width: 72em) { #menu, #mobile-footer-nav-items { display: block; } .menu { position: absolute; display: none; flex-direction: column; top: 100%; left: -20px; /* overcome the parent container's 20px side padding */ right: -20px; /* overcome the parent container's 20px side padding */ border-top: 1px solid rgba(242, 242, 242, 0.2); padding: 60px 30px 30px; background-color: #677486; box-shadow: 0 0 16px 0 rgba(78, 85, 100, 1); z-index: 2; } .menu-btn { background: none; border: 0; display: block; cursor: pointer; padding: 5px; height: 40px; width: 37px; color: #f2f2f2; } .menu-btn:hover { color: #f7f779; } .menu-btn-bar { display: block; width: 27px; height: 2px; background-color: currentColor; border-radius: 2px; transition: 0.15s cubic-bezier(0.75, -0.55, 0.25, 1.55); } .menu-btn-bar + .menu-btn-bar { margin-top: 7px; } .menu-btn-bar:nth-child(2) { width: 20px; margin-left: auto; } .menu-btn-active .menu-btn-bar { margin: 0; position: absolute; } .menu-btn-active .menu-btn-bar:nth-child(1) { -webkit-transform: rotate(45deg); transform: rotate(45deg); } .menu-btn-active .menu-btn-bar:nth-child(2) { opacity: 0; } .menu-btn-active .menu-btn-bar:nth-child(3) { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } .menu-open .menu { display: flex; } .menu-open header { background-color: #667384; } .menu .misc { width: 100%; display: flex; align-items: center; justify-content: space-evenly; margin-top: 20px; } } .nav-dropdown { position: relative; } .nav-dropdown-btn { padding: 18px 45px 18px 20px; font-size: 17px; font-size: 1.0625rem; text-decoration: none; position: relative; display: flex; align-items: center; border-radius: 29px; background-color: transparent; color: white; border: 1px solid currentColor; cursor: pointer; } .nav-dropdown-btn.dropdown-open { border-radius: 29px 29px 0 0; background-color: #5c687d; border-color: #f7f779; border-bottom-color: #5c687d; z-index: 2; } .footer .nav-dropdown-btn.dropdown-open { border-radius: 0 0 29px 29px; background-color: #5c687d; border-color: #f7f779; border-top-color: #5c687d; z-index: 2; } .nav-dropdown-btn:focus, .nav-dropdown-btn:hover { color: #f7f779; } .nav-dropdown-btn:focus:not(:focus-visible) { outline: none; } .nav-dropdown-btn::after, .nav-dropdown-list-current::after { content: ""; position: absolute; pointer-events: none; border-style: solid; border-width: 2px 2px 0 0; border-color: currentColor; height: 7px; width: 7px; top: 50%; margin-top: -7px; right: 23px; -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); transition: all 200ms linear; } .nav-dropdown-btn.dropdown-open::after, .nav-dropdown-list-current::after { width: 17px; right: 16px; margin-top: -9px; } .search-nav .nav-dropdown-btn.dropdown-open::after, .table-of-contents .nav-dropdown-btn.dropdown-open::after { height: 7px; width: 7px; margin-top: -2px; right: 23px; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); } .nav-dropdown-list-current { position: relative; color: #f7f779; } .nav-dropdown-list { background: #5c687d; border: 1px solid #f7f779; border-radius: 0 29px 29px; align-items: flex-start; flex-direction: column; user-select: none; font-size: 17px; font-size: 1.0625rem; color: #fff; position: absolute; z-index: 1; margin-top: -1px; } .footer .nav-dropdown-list { bottom: 56px; border-radius: 29px 29px 29px 0; flex-direction: column-reverse; } .nav-dropdown-list.align-right { right: 0; border-radius: 29px 0 29px 29px; } .footer .nav-dropdown-list.align-right { border-radius: 29px 29px 0 29px; } .nav-dropdown-list.align-center { border-radius: 0 0 29px 29px; } .footer .nav-dropdown-list.align-center { border-radius: 29px 29px 0 0; } .nav-dropdown-list li { width: 100%; } .nav-dropdown-list a { padding: 15px 45px 15px 20px; width: max-content; min-width: 100%; } .nav-dropdown-list-part { white-space: nowrap; padding: 16px 8px 8px 16px; font-weight: bold; font-size: 1.25rem; } .header-search .nav-dropdown-list-part, .footer .footer-search .nav-dropdown-list-part { padding: 16px; } .nav-dropdown-list-part a { padding: 0; } .header-list li:last-child { padding-bottom: 16px; } .footer-list li:last-child { padding-top: 16px; } .nav-dropdown-list-chapter a, .nav-dropdown-list-chapter span { padding: 8px 8px 8px 24px; } .nav-dropdown-list-chapter small a, .nav-dropdown-list-chapter a span { padding: 0; } .nav-dropdown-list-chapter.ebook { display: flex; flex-direction: column; } .nav-dropdown-list-todo, .nav-dropdown-list-current { opacity: 0.5; } .nav-dropdown-list .help-translate { border-top: 1px dashed #bdbdbd; min-width: 10rem; } .footer .nav-dropdown-list .help-translate { border-bottom: 1px dashed #bdbdbd; border-top: none; } .footer .nav-dropdown-list-part { padding: 8px 8px 16px 16px; } .no-wrap { white-space: nowrap; } /* Allow more wrapping for extremely small screens (e.g. very zoomed in) */ @media (max-width: 20em) { body { overflow-wrap: break-word; } .no-wrap { white-space: initial; overflow-wrap: break-word; } } @media (prefers-reduced-motion: reduce) { *, ::before, ::after { animation-delay: -1ms !important; animation-duration: 1ms !important; animation-iteration-count: 1 !important; background-attachment: initial !important; scroll-behavior: auto !important; transition-duration: 0s !important; transition-delay: 0s !important; } } /* Syntax Highlighting */ pre { margin: 0; padding: 6px 10px; line-height: 19px; margin-bottom: 20px; } pre code, td code, th code { border: 0; padding: 0; margin: 0; border-radius: 0; background-color: transparent; background-color: unset; overflow-wrap: unset; } kbd, code { font-size: 1rem; background-color: #f7f7f7; border: 1px solid #dadce0; padding: 1px 2px; overflow-wrap: break-word; } pre .comment { color: #006400; } pre .support { color: #006080; } pre .tag, pre .tag-name { color: #4a3244; } pre .keyword, pre .css-property, pre .vendor-fix, pre .sass, pre .class, pre .id, pre .css-value, pre .entity.function, pre .storage.function { font-weight: bold; color: #4a3244; } pre .css-property, pre .css-value, pre .vendor-fix, pre .support.namespace { color: #333; } pre .function.call { color: navy; } pre .constant.numeric, pre .keyword.unit, pre .hex-color { font-weight: normal; color: #00f; } pre .entity.class { color: #458; } pre .entity.id, pre .entity.function { color: #900; } pre .attribute, pre .variable { color: #000; } pre .string, pre .support.value { font-weight: normal; color: #b31107; } pre .regexp { color: #009926; } /* * Automatically adds language after an anchor if not same language * * Add for links that are obviously in English */ html:not([lang="en"]) main a[href*="/en-US/"]::after, html:not([lang="en"]) main a[href*="/en/"]::after, html:not([lang="en"]) main a[href^="https://en."]::after { content: '(en)'; /* vertical-align: super; */ font-size: 0.6em; vertical-align: baseline; position: relative; top: -1em; } /* * Add links if an explicit `hreflang` attribute exists */ main a[hreflang]::after { content: '(' attr(hreflang) ')'; /* vertical-align: super; */ font-size: 0.6em; vertical-align: baseline; position: relative; top: -1em; } /* * Remove it for English in English pages * (allows us to add this to base content to make it easier for translators) */ html[lang="en"] main a[hreflang="en"]::after { content: initial; } @media print { .top-header, .index, .discuss, #chapter-navigation, footer .navigation-logo, footer #mobile-footer-nav-items, footer .nav-items, footer .table-of-contents, footer .language-switcher, footer .social-media, footer .accessibility-statement, footer .footer-bullet, footer .rss-feed, footer hr { display: none; } .alt-bg { background-color: white; } a.btn { display: none; } h1, h2, h3, p, p.copyright, p.copyright a { color: black; } p.copyright { margin: 0 auto; } footer .ha-logo { color: #62718b; } figure iframe { display: none; } figure .fig-mobile { display: block; max-width: 100%; } figure iframe.video-embed { display: none; } figure .video-fallback-image { display: block; } .fig-description-button { display: none; } }