+.pswp__img {
+ position: absolute;
+ width: auto;
+ height: auto;
+ top: 0;
+ left: 0; }
+
+/*
+ stretched thumbnail or div placeholder element (see below)
+ style is added to avoid flickering in webkit/blink when layers overlap
+*/
+.pswp__img--placeholder {
+ -webkit-backface-visibility: hidden; }
+
+/*
+ div element that matches size of large image
+ large image loads on top of it
+*/
+.pswp__img--placeholder--blank {
+ background: #222; }
+
+.pswp--ie .pswp__img {
+ width: 100% !important;
+ height: auto !important;
+ left: 0;
+ top: 0; }
+
+/*
+ Error message appears when image is not loaded
+ (JS option errorMsg controls markup)
+*/
+.pswp__error-msg {
+ position: absolute;
+ left: 0;
+ top: 50%;
+ width: 100%;
+ text-align: center;
+ font-size: 14px;
+ line-height: 16px;
+ margin-top: -8px;
+ color: #CCC; }
+
+.pswp__error-msg a {
+ color: #CCC;
+ text-decoration: underline; }
+
+/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
+/*
+
+ Contents:
+
+ 1. Buttons
+ 2. Share modal and links
+ 3. Index indicator ("1 of X" counter)
+ 4. Caption
+ 5. Loading indicator
+ 6. Additional styles (root element, top bar, idle state, hidden state, etc.)
+
+*/
+/*
+
+ 1. Buttons
+
+ */
+/* <button> css reset */
+.pswp__button {
+ width: 44px;
+ height: 44px;
+ position: relative;
+ background: none;
+ cursor: pointer;
+ overflow: visible;
+ -webkit-appearance: none;
+ display: block;
+ border: 0;
+ padding: 0;
+ margin: 0;
+ float: right;
+ opacity: 0.75;
+ transition: opacity 0.2s;
+ box-shadow: none; }
+ .pswp__button:focus, .pswp__button:hover {
+ opacity: 1; }
+ .pswp__button:active {
+ outline: none;
+ opacity: 0.9; }
+ .pswp__button::-moz-focus-inner {
+ padding: 0;
+ border: 0; }
+
+/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
+.pswp__ui--over-close .pswp__button--close {
+ opacity: 1; }
+
+.pswp__button,
+.pswp__button--arrow--left:before,
+.pswp__button--arrow--right:before {
+ background: url(default-skin.png) 0 0 no-repeat;
+ background-size: 264px 88px;
+ width: 44px;
+ height: 44px; }
+
+@media (-webkit-min-device-pixel-ratio: 1.1), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
+ /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
+ .pswp--svg .pswp__button,
+ .pswp--svg .pswp__button--arrow--left:before,
+ .pswp--svg .pswp__button--arrow--right:before {
+ background-image: url(default-skin.svg); }
+ .pswp--svg .pswp__button--arrow--left,
+ .pswp--svg .pswp__button--arrow--right {
+ background: none; } }
+
+.pswp__button--close {
+ background-position: 0 -44px; }
+
+.pswp__button--share {
+ background-position: -44px -44px; }
+
+.pswp__button--fs {
+ display: none; }
+
+.pswp--supports-fs .pswp__button--fs {
+ display: block; }
+
+.pswp--fs .pswp__button--fs {
+ background-position: -44px 0; }
+
+.pswp__button--zoom {
+ display: none;
+ background-position: -88px 0; }
+
+.pswp--zoom-allowed .pswp__button--zoom {
+ display: block; }
+
+.pswp--zoomed-in .pswp__button--zoom {
+ background-position: -132px 0; }
+
+/* no arrows on touch screens */
+.pswp--touch .pswp__button--arrow--left,
+.pswp--touch .pswp__button--arrow--right {
+ visibility: hidden; }
+
+/*
+ Arrow buttons hit area
+ (icon is added to :before pseudo-element)
+*/
+.pswp__button--arrow--left,
+.pswp__button--arrow--right {
+ background: none;
+ top: 50%;
+ margin-top: -50px;
+ width: 70px;
+ height: 100px;
+ position: absolute; }
+
+.pswp__button--arrow--left {
+ left: 0; }
+
+.pswp__button--arrow--right {
+ right: 0; }
+
+.pswp__button--arrow--left:before,
+.pswp__button--arrow--right:before {
+ content: '';
+ top: 35px;
+ background-color: rgba(0, 0, 0, 0.3);
+ height: 30px;
+ width: 32px;
+ position: absolute; }
+
+.pswp__button--arrow--left:before {
+ left: 6px;
+ background-position: -138px -44px; }
+
+.pswp__button--arrow--right:before {
+ right: 6px;
+ background-position: -94px -44px; }
+
+/*
+
+ 2. Share modal/popup and links
+
+ */
+.pswp__counter,
+.pswp__share-modal {
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ user-select: none; }
+
+.pswp__share-modal {
+ display: block;
+ background: rgba(0, 0, 0, 0.5);
+ width: 100%;
+ height: 100%;
+ top: 0;
+ left: 0;
+ padding: 10px;
+ position: absolute;
+ z-index: 1600;
+ opacity: 0;
+ transition: opacity 0.25s ease-out;
+ -webkit-backface-visibility: hidden;
+ will-change: opacity; }
+
+.pswp__share-modal--hidden {
+ display: none; }
+
+.pswp__share-tooltip {
+ z-index: 1620;
+ position: absolute;
+ background: #FFF;
+ top: 56px;
+ border-radius: 2px;
+ display: block;
+ width: auto;
+ right: 44px;
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
+ transform: translateY(6px);
+ transition: transform 0.25s;
+ -webkit-backface-visibility: hidden;
+ will-change: transform; }
+ .pswp__share-tooltip a {
+ display: block;
+ padding: 8px 12px;
+ color: #000;
+ text-decoration: none;
+ font-size: 14px;
+ line-height: 18px; }
+ .pswp__share-tooltip a:hover {
+ text-decoration: none;
+ color: #000; }
+ .pswp__share-tooltip a:first-child {
+ /* round corners on the first/last list item */
+ border-radius: 2px 2px 0 0; }
+ .pswp__share-tooltip a:last-child {
+ border-radius: 0 0 2px 2px; }
+
+.pswp__share-modal--fade-in {
+ opacity: 1; }
+ .pswp__share-modal--fade-in .pswp__share-tooltip {
+ transform: translateY(0); }
+
+/* increase size of share links on touch devices */
+.pswp--touch .pswp__share-tooltip a {
+ padding: 16px 12px; }
+
+a.pswp__share--facebook:before {
+ content: '';
+ display: block;
+ width: 0;
+ height: 0;
+ position: absolute;
+ top: -12px;
+ right: 15px;
+ border: 6px solid transparent;
+ border-bottom-color: #FFF;
+ -webkit-pointer-events: none;
+ -moz-pointer-events: none;
+ pointer-events: none; }
+
+a.pswp__share--facebook:hover {
+ background: #3E5C9A;
+ color: #FFF; }
+ a.pswp__share--facebook:hover:before {
+ border-bottom-color: #3E5C9A; }
+
+a.pswp__share--twitter:hover {
+ background: #55ACEE;
+ color: #FFF; }
+
+a.pswp__share--pinterest:hover {
+ background: #CCC;
+ color: #CE272D; }
+
+a.pswp__share--download:hover {
+ background: #DDD; }
+
+/*
+
+ 3. Index indicator ("1 of X" counter)
+
+ */
+.pswp__counter {
+ position: absolute;
+ left: 0;
+ top: 0;
+ height: 44px;
+ font-size: 13px;
+ line-height: 44px;
+ color: #FFF;
+ opacity: 0.75;
+ padding: 0 10px; }
+
+/*
+
+ 4. Caption
+
+ */
+.pswp__caption {
+ position: absolute;
+ left: 0;
+ bottom: 0;
+ width: 100%;
+ min-height: 44px; }
+ .pswp__caption small {
+ font-size: 11px;
+ color: #BBB; }
+
+.pswp__caption__center {
+ text-align: left;
+ max-width: 420px;
+ margin: 0 auto;
+ font-size: 13px;
+ padding: 10px;
+ line-height: 20px;
+ color: #CCC; }
+
+.pswp__caption--empty {
+ display: none; }
+
+/* Fake caption element, used to calculate height of next/prev image */
+.pswp__caption--fake {
+ visibility: hidden; }
+
+/*
+
+ 5. Loading indicator (preloader)
+
+ You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR
+
+ */
+.pswp__preloader {
+ width: 44px;
+ height: 44px;
+ position: absolute;
+ top: 0;
+ left: 50%;
+ margin-left: -22px;
+ opacity: 0;
+ transition: opacity 0.25s ease-out;
+ will-change: opacity;
+ direction: ltr; }
+
+.pswp__preloader__icn {
+ width: 20px;
+ height: 20px;
+ margin: 12px; }
+
+.pswp__preloader--active {
+ opacity: 1; }
+ .pswp__preloader--active .pswp__preloader__icn {
+ /* We use .gif in browsers that don't support CSS animation */
+ background: url(preloader.gif) 0 0 no-repeat; }
+
+.pswp--css_animation .pswp__preloader--active {
+ opacity: 1; }
+ .pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
+ animation: clockwise 500ms linear infinite; }
+ .pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
+ animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite; }
+
+.pswp--css_animation .pswp__preloader__icn {
+ background: none;
+ opacity: 0.75;
+ width: 14px;
+ height: 14px;
+ position: absolute;
+ left: 15px;
+ top: 15px;
+ margin: 0; }
+
+.pswp--css_animation .pswp__preloader__cut {
+ /*
+ The idea of animating inner circle is based on Polymer ("material") loading indicator
+ by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
+ */
+ position: relative;
+ width: 7px;
+ height: 14px;
+ overflow: hidden; }
+
+.pswp--css_animation .pswp__preloader__donut {
+ box-sizing: border-box;
+ width: 14px;
+ height: 14px;
+ border: 2px solid #FFF;
+ border-radius: 50%;
+ border-left-color: transparent;
+ border-bottom-color: transparent;
+ position: absolute;
+ top: 0;
+ left: 0;
+ background: none;
+ margin: 0; }
+
+@media screen and (max-width: 1024px) {
+ .pswp__preloader {
+ position: relative;
+ left: auto;
+ top: auto;
+ margin: 0;
+ float: right; } }
+
+@keyframes clockwise {
+ 0% {
+ transform: rotate(0deg); }
+ 100% {
+ transform: rotate(360deg); } }
+
+@keyframes donut-rotate {
+ 0% {
+ transform: rotate(0); }
+ 50% {
+ transform: rotate(-140deg); }
+ 100% {
+ transform: rotate(0); } }
+
+/*
+
+ 6. Additional styles
+
+ */
+/* root element of UI */
+.pswp__ui {
+ -webkit-font-smoothing: auto;
+ visibility: visible;
+ opacity: 1;
+ z-index: 1550; }
+
+/* top black bar with buttons and "1 of X" indicator */
+.pswp__top-bar {
+ position: absolute;
+ left: 0;
+ top: 0;
+ height: 44px;
+ width: 100%; }
+
+.pswp__caption,
+.pswp__top-bar,
+.pswp--has_mouse .pswp__button--arrow--left,
+.pswp--has_mouse .pswp__button--arrow--right {
+ -webkit-backface-visibility: hidden;
+ will-change: opacity;
+ transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1); }
+
+/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
+.pswp--has_mouse .pswp__button--arrow--left,
+.pswp--has_mouse .pswp__button--arrow--right {
+ visibility: visible; }
+
+.pswp__top-bar,
+.pswp__caption {
+ background-color: rgba(0, 0, 0, 0.5); }
+
+/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
+.pswp__ui--fit .pswp__top-bar,
+.pswp__ui--fit .pswp__caption {
+ background-color: rgba(0, 0, 0, 0.3); }
+
+/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
+.pswp__ui--idle .pswp__top-bar {
+ opacity: 0; }
+
+.pswp__ui--idle .pswp__button--arrow--left,
+.pswp__ui--idle .pswp__button--arrow--right {
+ opacity: 0; }
+
+/*
+ pswp__ui--hidden class is added when controls are hidden
+ e.g. when user taps to toggle visibility of controls
+*/
+.pswp__ui--hidden .pswp__top-bar,
+.pswp__ui--hidden .pswp__caption,
+.pswp__ui--hidden .pswp__button--arrow--left,
+.pswp__ui--hidden .pswp__button--arrow--right {
+ /* Force paint & create composition layer for controls. */
+ opacity: 0.001; }
+
+/* pswp__ui--one-slide class is added when there is just one item in gallery */
+.pswp__ui--one-slide .pswp__button--arrow--left,
+.pswp__ui--one-slide .pswp__button--arrow--right,
+.pswp__ui--one-slide .pswp__counter {
+ display: none; }
+
+.pswp__element--disabled {
+ display: none !important; }
+
+.pswp--minimal--dark .pswp__top-bar {
+ background: none; }
+
+.donation-card {
+ border-radius: 4px;
+ background-color: white;
+ box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.2); }
+
+.ownamount {
+ overflow: hidden;
+ width: 95%;
+ height: 48px;
+ padding: 0 16px;
+ border-radius: 2px;
+ border: none; }
+
+.ownamount {
+ background-color: rgba(38, 50, 56, 0.08);
+ border-bottom: 2px solid #263238;
+ width: 90%; }
+
+input.radiobtn:not(old) {
+ display: none; }
+
+input.radiobtn:not(old) + label {
+ display: inline-block;
+ background-image: url("/static/img/icons/icon-radiobtn-off.png");
+ background-repeat: no-repeat;
+ background-position: 0 0;
+ padding-left: 38px; }
+
+input.radiobtn:not(old):checked + label {
+ background-image: url("/static/img/icons/icon-radiobtn-on.png"); }
+
+.inline-card {
+ border-radius: 8px;
+ background-color: #eceff1;
+ padding: 24px;
+ position: relative;
+ padding: 24px 20px; }
+
+label.amount {
+ width: 84px;
+ height: 48px;
+ display: block;
+ background-color: white;
+ border-radius: 2px;
+ box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.16), 0 1px 2px 0 rgba(0, 0, 0, 0.23);
+ font-size: 20px;
+ color: #42a5f5;
+ text-align: center;
+ margin: 0 8px 16px 8px;
+ padding: 8px 0 0 0; }
+
+input[name=amount] {
+ display: none; }
+
+input[name=amount]:checked + label {
+ background-image: linear-gradient(120deg, #4fc3f7, #1976d2);
+ color: white; }
+
+.or {
+ display: block;
+ height: 200px;
+ width: 1px;
+ border: 1px solid rgba(38, 50, 56, 0.3);
+ position: absolute;
+ left: 350px;
+ top: 12px; }
+ .or:before {
+ content: "OR";
+ font-family: 'Ubuntu', sans-serif;
+ font-size: 16px;
+ font-weight: 500;
+ color: rgba(38, 50, 56, 0.3);
+ background-color: #eceff1;
+ display: block;
+ position: absolute;
+ top: 12px;
+ left: -12px;
+ width: 24px;
+ height: 24px; }
+
+body {
+ min-height: 100vh;
+ display: flex;
+ flex-direction: column; }
+
+.container {
+ width: 100%;
+ max-width: 1200px;
+ flex: 1; }
+
+body {
+ -webkit-font-smoothing: antialiased;
+ font-size: 16px; }
+
+h1 {
+ line-height: 3rem; }
+
+h2 {
+ line-height: 2.75rem; }
+
+h3 {
+ font-size: 20px;
+ line-height: 28px; }
+ @media (min-width: 768px) {
+ h3 {
+ font-size: 24px;
+ line-height: 32px;
+ font-weight: 300;
+ margin-bottom: 0; } }
+ h3.headline {
+ text-align: center;
+ font-size: 32px;
+ line-height: 44px;
+ color: #263238; }
+ @media (min-width: 576px) {
+ h3.headline {
+ font-size: 36px;
+ line-height: 48px; } }
+
+h4 {
+ font-weight: 500;
+ font-size: 16px;
+ line-height: 24px; }
+ @media (min-width: 576px) {
+ h4 {
+ font-size: 20px;
+ line-height: 28px; } }
+ h4.secondHeadline {
+ font-size: 24px;
+ line-height: 32px;
+ text-align: left;
+ margin-top: 24px; }
+
+h5, .h5 {
+ font-size: 16px;
+ line-height: 24px; }
+ @media (min-width: 768px) {
+ h5, .h5 {
+ font-size: 24px;
+ line-height: 32px; } }
+ h5.subheadline,
+ .h5.subheadline {
+ text-align: center;
+ font-size: 16px;
+ line-height: 24px;
+ color: rgba(38, 50, 56, 0.6); }
+
+p {
+ font-size: 16px;
+ line-height: 24px; }
+ p.lead {
+ font-size: inherit;
+ line-height: inherit; }
+ @media (min-width: 768px) {
+ p.lead {
+ font-size: 24px;
+ line-height: 32px; } }
+ p.copy {
+ margin-top: 16px; }
+ @media (min-width: 576px) {
+ p.copy {
+ margin-top: 24px; } }
+
+.display-1 {
+ font-size: 120px;
+ line-height: 144px; }
+
+.display-2 {
+ font-size: 32px;
+ line-height: 44px;
+ margin-bottom: 40px; }
+ @media (min-width: 768px) {
+ .display-2 {
+ font-size: 40px;
+ line-height: 56px;
+ margin-bottom: 3rem; } }
+
+.display-3 {
+ font-size: 24px;
+ line-height: 32px; }
+ @media (min-width: 768px) {
+ .display-3 {
+ font-size: 32px;
+ line-height: 44px; } }
+
+.display-4 {
+ font-size: 14px;
+ line-height: 20px;
+ font-weight: 400; }
+ @media (min-width: 576px) {
+ .display-4 {
+ font-size: 24px;
+ line-height: 32px; } }
+
+.display-5 {
+ font-size: 20px;
+ line-height: 28px; }
+
+small,
+.small {
+ font-size: 14px;
+ line-height: 20px; }
+ @media (min-width: 768px) {
+ small,
+ .small {
+ font-size: 16px;
+ line-height: 24px; } }
+
+.truncate {
+ width: 100%;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis; }
+
+.fireinfo_cat {
+ font-size: 14px;
+ line-height: 20px; }
+
+h5.fireinfo {
+ font-size: 16px;
+ line-height: 28px;
+ font-weight: 500; }
+ @media (min-width: 768px) {
+ h5.fireinfo {
+ font-size: 20px; } }
+
+.fireinfo_per {
+ font-size: 20px;
+ line-height: 28px; }
+
+#mask {
+ width: 100vw;
+ height: 100vh;
+ position: fixed;
+ top: 0;
+ left: 0;
+ background-color: rgba(0, 0, 0, 0.4);
+ display: none;
+ visibility: hidden; }
+ #mask.open {
+ display: block;
+ visibility: visible;
+ z-index: 250; }
+
+.tux {
+ position: absolute;
+ top: 12px;
+ left: 50%;
+ transform: translateX(-50%); }
+ .tux h1 {
+ font-weight: 300 !important;
+ color: #263238;
+ font-size: 20px;
+ line-height: 28px;
+ margin-bottom: 0; }
+ .tux h1 strong {
+ font-weight: 700 !important; }
+ .tux h1:before {
+ content: "";
+ height: 32px;
+ width: 25px;
+ background-image: url("../img/ipfire-tux.png");
+ background-repeat: no-repeat;
+ background-position: center center;
+ background-size: contain;
+ display: inline-block;
+ position: relative; }
+
+.menu-text {
+ transition: opacity .25s ease-in-out; }
+
+.menu-text.hidden {
+ opacity: 0;
+ transition: opacity .35s ease-in-out; }
+
+.fixed-top {
+ transition: background-color .25s linear;
+ height: 56px; }
+ @media (min-width: 576px) {
+ .fixed-top {
+ height: 72px; } }
+ @media (min-width: 992px) {
+ .fixed-top {
+ height: 96px; } }
+ .fixed-top .navbar {
+ width: 100%;
+ z-index: 500; }
+ .fixed-top .navbar a {
+ color: #263238; }
+ @media (min-width: 576px) {
+ .fixed-top .navbar a {
+ margin-top: 8px; } }
+ .fixed-top .navbar .navbar-toggler-left {
+ left: -12px;
+ top: 8px; }
+ @media (min-width: 576px) {
+ .fixed-top .navbar .navbar-toggler-left {
+ top: 17px; } }
+ .fixed-top .navbar .btn {
+ margin-top: .15rem; }
+
+.navbar-brand {
+ font-size: 20px;
+ font-weight: 300;
+ opacity: 0;
+ margin: 0;
+ transition: opacity .7s linear; }
+ @media (min-width: 992px) {
+ .navbar-brand {
+ opacity: 1;
+ font-size: 36px; } }
+ .navbar-brand strong {
+ font-weight: 900; }
+ .navbar-brand img {
+ margin-right: 4px;
+ transform: translateY(-5px);
+ height: 32px;
+ width: auto; }
+ @media (min-width: 992px) {
+ .navbar-brand img {
+ height: 40px; } }
+
+.scrolled {
+ background-color: rgba(255, 255, 255, 0.96);
+ box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15), 0 1px 2px 0 rgba(0, 0, 0, 0.25);
+ height: 56px; }
+ @media (min-width: 576px) {
+ .scrolled {
+ height: 72px; } }
+ @media (min-width: 992px) {
+ .scrolled {
+ height: 96px; } }
+ .scrolled .navbar-brand {
+ opacity: 1; }
+
+.scrolled.fadeout {
+ background-color: rgba(100, 100, 100, 0.5); }
+ .scrolled.fadeout a.btn-donate {
+ opacity: .5; }
+ .scrolled.fadeout a.navbar-brand {
+ opacity: .5; }
+
+#navbarSupportedContent {
+ width: 100%; }
+ @media (max-width: 991px) {
+ #navbarSupportedContent {
+ background: white;
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 256px;
+ height: 100vh;
+ padding-top: 64px;
+ transform: translateX(-256px);
+ transition: all .15s ease-in-out; }
+ #navbarSupportedContent.open {
+ transform: translateX(0);
+ transition: all .15s ease-in-out;
+ box-shadow: 14px 0 28px 0 rgba(0, 0, 0, 0.25), 10px 0 10px 0 rgba(0, 0, 0, 0.26); } }
+
+@media (min-width: 992px) {