@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.125rem; text-align: center; } nav a.active { text-decoration: none; opacity: 0.5; } .container { max-width: 81rem; width: 100%; margin: 0 auto; display: flex; gap: 2rem; } @keyframes logo-rotation { from { transform: rotate(0); } to { transform: rotate(360deg); } } .logo { position: relative; display: flex; gap: 0.75rem; margin-top: 0.75rem; flex-direction: column; text-align: center; align-items: center; margin-bottom: 0.5rem; } .logo-img, .logo a { height: 95px; width: 108.38px; } .logo h1 { font-weight: 300; font-style: italic; margin-bottom: -0.25rem; } .logo-bg::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-bg2::before { /* animation: linear both logo-rotation 20s; */ background-image: url("/static/logo-bg2.png"); background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; content: ""; left: calc(50% - 108px); top: -30px; z-index: -1; width: 215px; height: 155px; } .logo-glasses { position: absolute; top: 10px; left: calc(50% - 20px); width: 70px; object-fit: contain; pointer-events: none; } h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: 0.5rem; font-weight: 900; } h1 { font-size: 1.75rem; line-height: 1.2; } h2 { font-size: 1.75rem; } h3 { font-size: 1.5rem; line-height: 1.2; } .h4 { font-size: 1.25rem; } .h5 { font-size: 1.125rem; font-style: normal; } aside { max-width: 23rem; width: 100%; display: flex; flex-direction: column; gap: 1.5rem; } aside p:last-child { margin-bottom: 0; } aside h2 { font-size: 1.25rem; } .content { max-width: 56rem; width: 100%; } .content h2 { font-size: 3.5rem; 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.66rem; transition: background-color 0.2s; position: relative; display: flex; flex-direction: column; } .shop-item:hover .shop-item-backdrop { opacity: 1; } .shop-item-backdrop { position: absolute; opacity: 0; content: ''; left: -1rem; transition: opacity 0.2s; top: -1rem; right: -1rem; bottom: -1rem; background-color: #ffed7a; z-index: -1; } .shop-item-not-published { opacity: 0.5; } .shop-item-imgs { background-color: #00000011; position: relative; width: 17.66rem; 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 { color: currentColor; text-decoration: none; } .shop-item-title h3 { font-size: 1.375rem; margin-bottom: 0.375rem; font-weight: 700; position: relative; } h2[id=content] { padding-top: 1.5rem; margin-top: -1.5rem; } .product-page-layout #content { position: absolute; top: -1.5rem; } .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:not(:first-child) { 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; } .narrow { max-width: 35rem; } button, input:not([type=checkbox]), select { height: 1.75rem; } .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-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; } .paginator { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; } .cookies-agreement { margin-bottom: 1rem; background-color: #ffed7a; padding: 0.75rem 1rem; } .with-backdrop { position: relative; } .with-backdrop::before { content: ''; position: absolute; left: -1.25rem; right: -0.25rem; top: -0.75rem; bottom: -0.75rem; border: 0.375rem #ffed7a solid; transform: rotate(-1deg); z-index: -1; } .font-size-1-25 { font-size: 1.25rem; } .font-size-0-875 { font-size: 0.875rem; } .d-block { display: block !important; } .d-flex, .d-flex-desktop { 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-25 { margin-bottom: 1.25rem !important; } .mb-1-5 { margin-bottom: 1.5rem !important; } .mb-2 { margin-bottom: 2rem !important; } .mt-2 { margin-top: 2rem !important; } .mt-auto { margin-top: auto !important; } .mr-0-5 { margin-right: 0.5rem !important; } @media screen and (max-width: 70rem) { body { margin: 2rem; } aside { max-width: 100%; } .container { flex-wrap: wrap; } .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; position: relative; } .product-page-img-mobile { display: block; } .product-page-imgs > *:first-child { display: none; } .product-page-delimiter { display: none; } .back { display: none; } } @media screen and (max-width: 41rem) { .shop-item, .shop-item-imgs, .shop-item-img { width: 100%; } .d-flex-desktop { flex-direction: column; } } @media (prefers-color-scheme: dark) { body { background-color: #211e1c; color: #ffffff; } a { color: burlywood; } .gallery > div { background-color: #ffffff22; } .shop-item-backdrop { background-color: #42381b; } .shop-item-imgs { background-color: #ffffff22; } .logo::before { mix-blend-mode: overlay; } .cookies-agreement { color: #211e1c; background-color: #f7c533; } .order-state-placed { color: #211e1c; background-color: #f7c533; } .with-backdrop::before { border-color: #42381b; } }