@font-face { font-family: "Open Sans"; font-weight: 300; src: url("/static/fonts/OpenSans-Light.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: regular; src: url("/static/fonts/OpenSans-Regular.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: regular; font-style: italic; src: url("/static/fonts/OpenSans-Italic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 700; src: url("/static/fonts/OpenSans-SemiBold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 700; font-style: italic; src: url("/static/fonts/OpenSans-SemiBoldItalic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 800; src: url("/static/fonts/OpenSans-Bold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 800; font-style: italic; src: url("/static/fonts/OpenSans-BoldItalic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 900; src: url("/static/fonts/OpenSans-ExtraBold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 900; font-style: italic; src: url("/static/fonts/OpenSans-ExtraBoldItalic.ttf") format("truetype"); } body { background-color: #ffffff; margin: 4rem; font-family: "Open Sans", sans-serif, sans, monospace; line-height: 1.5; } @font-face { font-family: "Open Sans"; font-weight: 300; src: url("/static/fonts/OpenSans-Light.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: regular; src: url("/static/fonts/OpenSans-Regular.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: regular; font-style: italic; src: url("/static/fonts/OpenSans-Italic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 700; src: url("/static/fonts/OpenSans-SemiBold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 700; font-style: italic; src: url("/static/fonts/OpenSans-SemiBoldItalic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 800; src: url("/static/fonts/OpenSans-Bold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 800; font-style: italic; src: url("/static/fonts/OpenSans-BoldItalic.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 900; src: url("/static/fonts/OpenSans-ExtraBold.ttf") format("truetype"); } @font-face { font-family: "Open Sans"; font-weight: 900; font-style: italic; src: url("/static/fonts/OpenSans-ExtraBoldItalic.ttf") format("truetype"); } * { box-sizing: border-box; } a { color: #529b57; font-weight: bold; } nav { font-size: 1.25rem; } nav a.active { text-decoration: none; opacity: 0.5; } .container { display: flex; flex-wrap: wrap; gap: 2rem; } @keyframes logo-rotation { from { transform: rotate(0); } to { transform: rotate(360deg); } } .logo { height: 95px; position: relative; display: flex; gap: 1.25rem; align-items: center; margin-bottom: 1rem; } .logo-img, .logo a { height: 95px; width: 108.38px; } .logo h1 { font-weight: 900; margin-bottom: -0.25rem; } .logo::before { animation: infinite linear logo-rotation 120s; background-image: url("/static/logo-bg.png"); background-repeat: no-repeat; background-size: cover; position: absolute; content: ""; left: -50px; top: -58px; z-index: -1; width: 215px; height: 215px; } .logo-glasses { position: absolute; top: 10px; left: 35px; width: 70px; object-fit: contain; pointer-events: none; } h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: 0.5rem; } h1 { font-size: 1.75rem; line-height: 1.2; } h2 { font-size: 1.75rem; } h3 { font-size: 1.375rem; } .h5 { font-size: 1.125rem; font-style: normal; } aside { max-width: 23rem; display: flex; flex-direction: column; gap: 1.5rem; } aside h2 { font-weight: 900; } aside p:last-child { margin-bottom: 0; } .content { max-width: 56rem; width: 100%; } .content h2 { font-size: 3.5rem; font-weight: 900; line-height: 1; margin-bottom: 0.75rem; } p { margin-top: 0; } .gallery { display: grid; grid-template-columns: repeat(9, 1fr); grid-template-rows: repeat(16, 5rem); grid-gap: 1rem; max-width: calc(100vw - 6rem); width: 100%; font-size: 0; } .gallery > div { background-color: #00000011; } .gallery > div:nth-child(1) { grid-column: 1 / span 4; grid-row: 1 / span 5; } .gallery > div:nth-child(2) { grid-column: 1 / span 4; grid-row: 6 / span 3; } .gallery > div:nth-child(3) { grid-column: 5 / span 5; grid-row: 1 / span 8; } .gallery > div:nth-child(4) { grid-column: 1 / span 5; grid-row: 9 / span 8; } .gallery > div:nth-child(5) { grid-column: 6 / span 4; grid-row: 9 / span 4; } .gallery > div:nth-child(6) { grid-column: 6 / span 4; grid-row: 13 / span 4; } .gallery img, .gallery video { width: 100%; height: 100%; object-fit: cover; } .shop-items { display: flex; gap: 2.5rem 1.5rem; flex-wrap: wrap; } .shop-item { width: 17.5rem; } .shop-item-not-published { opacity: 0.5; } .shop-item-imgs { background-color: #00000011; position: relative; width: 17.5rem; margin-bottom: 1rem; aspect-ratio: 1; overflow: hidden; } .shop-item-img { position: absolute; left: 0; top: 0; object-fit: cover; object-position: center; height: 100%; width: 100%; opacity: 0; } .shop-item-img:first-child { opacity: 1; } .shop-item-img:hover { opacity: 1; left: 0 !important; width: 100% !important; z-index: 2 !important; } .shop-item-price { margin-bottom: 0.25rem; } .shop-item-title { font-size: 1.25rem; margin-top: 0.375rem; margin-bottom: 0.25rem; } .product-page-layout { display: flex; gap: 0 2rem; } .product-page-layout > * { flex: 50%; } .product-page-imgs { display: flex; flex-direction: column; gap: 1rem; font-size: 0; } .product-page-img, .product-page-img-mobile { max-width: 100%; width: 100%; } .product-page-img-mobile { display: none; } .order { display: flex; gap: 1rem; flex-wrap: wrap; } .order-line { width: 15.5rem; } .order-line, .basket-item { display: flex; gap: 0.75rem; line-height: 1.2; } .basket-item { margin-top: 1rem; } .order-line-title, .basket-item-title { display: block; font-size: 1rem; margin-bottom: 0.375rem; } .order-line, .basket-item-image { font-size: 0; } .order-line img, .basket-item-image img { width: 5rem; height: 5rem; object-fit: cover; object-position: center; } .order-line-price, .basket-item-price { font-size: 1rem; font-style: italic; margin-bottom: 0.25rem; } .basket-item-remove { margin-top: 0.375rem; } .back { margin-bottom: 1rem; } .form { display: flex; flex-direction: column; gap: 1rem; max-width: 35rem; } .form-group { display: flex; flex-direction: column; gap: 1rem; } .form-row label { display: block; margin-bottom: 0.25rem; font-weight: 600; } .form-row input[type=checkbox] { vertical-align: middle; margin-left: 0; } .form-row input[type=checkbox] + label { display: inline; } .form-row select, .form-row textarea, .form-row input:not([type=checkbox]) { width: 100%; } .form-row input:not([type=checkbox]), .form-row select { height: 1.75rem; } .form-file-img { width: 5.25rem; height: 5.25rem; object-fit: cover; object-position: center; display: none; } .form textarea { min-height: 4rem; } .form-required-marker { font-size: 0.75rem; opacity: 0.4; } .form-error { font-style: italic; color: crimson; font-size: 0.75rem; font-weight: bold; margin-top: 0.375rem; } .form-subheader { margin-bottom: -0.375rem; } .form-help { opacity: 0.4; font-size: 0.75rem; margin-top: 0.375rem; } .form-error + .form-help { margin-top: 0.25rem; } .order-state { padding: 0.125rem 0.375rem; } .order-state-cart { background-color: #efefef; } .order-state-placed { background-color: #ffed7a; } .order-state-done { background-color: #529b57; color: #ffffff; } .order-state-canceled { background-color: #e65c5c; color: #ffffff; } .font-size-0-875 { font-size: 0.875rem; } .d-block { display: block !important; } .d-flex { display: flex !important; } .d-inline-block { display: inline-block !important; } .gap-0-25 { gap: 0.25rem !important; } .gap-0-5 { gap: 0.5rem !important; } .gap-1 { gap: 1rem !important; } .mb-0 { margin-bottom: 0 !important; } .mb-0-25 { margin-bottom: 0.25rem !important; } .mb-0-5 { margin-bottom: 0.5rem !important; } .mb-1 { margin-bottom: 1rem !important; } .mb-1-5 { margin-bottom: 1.5rem !important; } .mb-2 { margin-bottom: 2rem !important; } @media screen and (max-width: 50rem) { body { margin: 1rem; } aside { max-width: 100%; } .content h2 { font-size: 2.5rem; } .gallery { display: flex; flex-direction: column; gap: 1rem; max-width: 100%; } .gallery > div { display: contents; position: relative; display: flex; } .gallery img, .gallery video { position: static; } .product-page-layout { flex-direction: column; } .product-page-img-mobile { display: block; } .product-page-imgs > *:first-child { display: none; } .product-page-delimiter { display: none; } .back { margin-bottom: 0.25rem; } } @media screen and (max-width: 41rem) { .shop-item, .shop-item-imgs, .shop-item-img { width: 100%; } } @media (prefers-color-scheme: dark) { body { background-color: #211e1c; color: #ffffff; } a { color: burlywood; } .gallery > div { background-color: #ffffff22; } .shop-item-imgs { background-color: #ffffff22; } .logo::before { mix-blend-mode: overlay; } }