styles.css 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578
  1. @font-face {
  2. font-family: "IBM Plex Mono Light";
  3. src: url("../fonts/IBMPlexMono-Light.woff2") format("woff2"),
  4. url("../fonts/IBMPlexMono-Light.woff") format("woff"),
  5. font-style: normal;
  6. font-weight: 100;
  7. font-display: swap;
  8. }
  9. @font-face {
  10. font-family: "IBM Plex Mono Light Italic";
  11. src: url("../fonts/IBMPlexMono-LightItalic.woff2") format("woff2"),
  12. url("../fonts/IBMPlexMono-LightItalic.woff") format("woff"),
  13. font-style: italic;
  14. font-weight: 100;
  15. font-display: swap;
  16. }
  17. @font-face {
  18. font-family: "Inter Bold";
  19. src: url("../fonts/Inter-Bold.woff2") format("woff2"),
  20. url("../fonts/Inter-Bold.woff") format("woff"),
  21. font-style: normal;
  22. font-weight: 900;
  23. font-display: swap;
  24. }
  25. @font-face {
  26. font-family: "Inter Bold Italic";
  27. src: url("../fonts/Inter-BoldItalic.woff2") format("woff2"),
  28. url("../fonts/Inter-BoldItalic.woff") format("woff"),
  29. font-style: italic;
  30. font-weight: 900;
  31. font-display: swap;
  32. }
  33. @font-face {
  34. font-family: "Weiss Rund Gotisch";
  35. src: url("../fonts/weissrundgotisch.regular.woff2") format("woff2"),
  36. url("../fonts/weissrundgotisch.regular.woff") format("woff"),
  37. font-style: normal;
  38. font-weight: 400;
  39. font-display: swap;
  40. }
  41. :root {
  42. --nav-height: 35px;
  43. --c-white: #ffffff;
  44. --c-anon-gray: #a5a5a5;
  45. --c-light-gray: #dbdbdb;
  46. --c-gray: #b7b7b7;
  47. --c-pink: #ffbcfc;
  48. --c-dark-bright-brown: #241b18;
  49. --c-dark-rubin: #3d230b;
  50. --c-rubin: #610000;
  51. --c-dark-red: #520000;
  52. --c-deep-brown: #2B2222;
  53. --c-terre: #AA9494;
  54. --c-green: #8dff98;
  55. --c-forest-green: #4c8042;
  56. --c-light-green: #f2ffcd;
  57. --c-light-blue: #bffbff;
  58. --c-another-blue: #80d1ff;
  59. --c-cyan: #00ffff;
  60. --c-dark-teal: #005669;
  61. --c-bluegreen: #002f10;
  62. --c-dark-green: #002C29;
  63. --c-dark-bluegreen: #001b1d;
  64. --c-blue: #00114c;
  65. --c-dark-blue: #00111d;
  66. --c-brown: #2f2a00;
  67. --c-dark-brown: #1a1d00;
  68. --c-gray: #4b4b4b;
  69. --c-dark-gray: #555353;
  70. --c-bright-black: #020713;
  71. --c-gaow: #160E0E;
  72. --c-blackish: #11181d;
  73. --c-dark-black: #090d10;
  74. --c-black: #090909;
  75. --c-blackest: #000000;
  76. --c-yet-gray: #292929;
  77. --f-mono: "IBM Plex Mono Light", monospace;
  78. --f-mono-italic: "IBM Plex Mono Light Italic", monospace;
  79. --f-sans: "Inter Bold", sans-serif;
  80. --f-sans-italic: "Inter Bold Italic", sans-serif;
  81. --f-gothic: "Weiss Rund Gotisch", serif;
  82. }
  83. @media screen and (min-width: 760px) {
  84. :root {
  85. --nav-height: 47px;
  86. }
  87. }
  88. /* basic reset */
  89. html {
  90. box-sizing: border-box;
  91. scroll-padding-top: var(--nav-height);
  92. }
  93. *, *:before, *:after {
  94. box-sizing: inherit
  95. }
  96. html, body {
  97. scroll-behavior: smooth;
  98. }
  99. html, body,
  100. h1, h2, h3, h4, h5, h6,
  101. p,
  102. ol, ul, li,
  103. figure {
  104. margin: 0;
  105. padding: 0
  106. }
  107. figure img {
  108. display: block;
  109. }
  110. ol, ul {
  111. padding-left: 1rem;
  112. }
  113. img {
  114. max-width: 100%;
  115. height: auto;
  116. }
  117. button {
  118. font-family: inherit;
  119. font-size: inherit;
  120. border: none;
  121. border-radius: 0;
  122. margin: 0;
  123. padding: 0;
  124. background: none;
  125. color: inherit;
  126. cursor: pointer;
  127. }
  128. /* basic typographic styles */
  129. body {
  130. -webkit-overflow-scrolling: touch;
  131. -ms-overflow-style: none;
  132. -webkit-font-smoothing: antialiased;
  133. -moz-osx-font-smoothing: grayscale;
  134. text-rendering: optimizeLegibility;
  135. width: 100%;
  136. height: 100%;
  137. }
  138. html {
  139. width: 100%;
  140. height: 100%;
  141. box-sizing: border-box;
  142. color: var(--c-white);
  143. font-size: 12px;
  144. font-family: var(--f-mono);
  145. }
  146. a {
  147. text-decoration: none;
  148. color: inherit;
  149. }
  150. input,
  151. select,
  152. textarea {
  153. background-color: inherit;
  154. color: inherit;
  155. border: 0;
  156. font-family: inherit;
  157. font-style: inherit;
  158. font-weight: inherit;
  159. font-size: inherit;
  160. margin: 0;
  161. padding: 0;
  162. }
  163. input::placeholder,
  164. textarea::placeholder {
  165. opacity: 1;
  166. color: #9f879b;
  167. }
  168. fieldset {
  169. border: 0;
  170. padding: 0;
  171. }
  172. /* typography */
  173. .fs-small {
  174. font-size: 10px;
  175. }
  176. .fs-medium {
  177. font-size: 1rem;
  178. }
  179. .fs-biggish {
  180. font-size: 14px;
  181. }
  182. .fs-big {
  183. font-size: 15px;
  184. }
  185. .fs-bigger {
  186. font-size: 16px;
  187. }
  188. .fs-large {
  189. font-size: 18px;
  190. }
  191. .fs-larger {
  192. font-size: 20px;
  193. }
  194. .fs-huge {
  195. font-size: 24px;
  196. }
  197. .fs-wide {
  198. font-size: 30px;
  199. }
  200. .ff-sans {
  201. font-family: var(--f-sans);
  202. }
  203. .ff-sans em,
  204. .ff-sans italic {
  205. font-family: var(--f-sans-italic);
  206. font-style: normal;
  207. }
  208. .ff-mono em,
  209. .ff-mono italic {
  210. font-family: var(--f-mono-italic);
  211. font-style: normal;
  212. }
  213. @media screen and (min-width: 540px) {
  214. .sm-fs-medium {
  215. font-size: 1rem;
  216. }
  217. .sm-fs-biggish {
  218. font-size: 14px;
  219. }
  220. .sm-fs-big {
  221. font-size: 15px;
  222. }
  223. .sm-fs-large {
  224. font-size: 18px;
  225. }
  226. .sm-fs-larger {
  227. font-size: 20px;
  228. }
  229. .sm-fs-huge {
  230. font-size: 24px;
  231. }
  232. }
  233. @media screen and (min-width: 1280px) {
  234. .bg-fs-big {
  235. font-size: 15px;
  236. }
  237. }
  238. .tac {
  239. text-align: center;
  240. }
  241. .tar {
  242. text-align: right;
  243. }
  244. @media screen and (min-width: 540px) {
  245. .sm-tar {
  246. text-align: right;
  247. }
  248. }
  249. .copy h3,
  250. .copy h4,
  251. .copy h5,
  252. .copy h6,
  253. .copy p,
  254. .copy table {
  255. max-width: 700px;
  256. }
  257. .copy-h-reset-weight h1,
  258. .copy-h-reset-weight h2,
  259. .copy-h-reset-weight h3,
  260. .copy-h-reset-weight h4,
  261. .copy-h-reset-weight h5,
  262. .copy-h-reset-weight h6 {
  263. font-weight: inherit;
  264. }
  265. .copy-h-reset h1,
  266. .copy-h-reset h2,
  267. .copy-h-reset h3,
  268. .copy-h-reset h4,
  269. .copy-h-reset h5,
  270. .copy-h-reset h6 {
  271. font-size: inherit;
  272. font-style: inherit;
  273. }
  274. .copy-h h1,
  275. .copy-h h2 {
  276. font-size: 30px;
  277. font-family: var(--f-gothic);
  278. padding: 15px 20px;
  279. border-bottom: 1px solid var(--c-gray);
  280. }
  281. @media screen and (min-width: 1920px) {
  282. .copy-h h1,
  283. .copy-h h2 {
  284. padding: 30px 50px;
  285. }
  286. .copy-h-front h1,
  287. .copy-h-front h2,
  288. .copy-h-page h1,
  289. .copy-h-page h2 {
  290. padding: 2.5rem 4.2rem;
  291. }
  292. }
  293. .copy-h-page h3,
  294. .copy-h-page h4,
  295. .copy-h-page h5,
  296. .copy-h-page h6 {
  297. font-size: inherit;
  298. }
  299. .copy-page h3,
  300. .copy-page h4,
  301. .copy-page h5,
  302. .copy-page h6,
  303. .copy-page p {
  304. padding: 0.75rem 0.75rem 2.5rem 0.7rem;
  305. }
  306. .copy-page table {
  307. margin: 0 0.75rem 2.45em 0.7rem;
  308. }
  309. .copy-page table td {
  310. width: 7.5rem;
  311. }
  312. .copy a {
  313. color: var(--c-cyan);
  314. }
  315. .ttu {
  316. text-transform: uppercase;
  317. }
  318. .hvc:hover {
  319. color: var(--c-green);
  320. }
  321. .checkout-image {
  322. width: 120px;
  323. }
  324. @media screen and (min-width: 540px) {
  325. .checkout-image {
  326. width: 220px;
  327. }
  328. }
  329. .img-page img {
  330. max-height: 1000px;
  331. }
  332. @media screen and (min-width: 2400px) {
  333. .img-page img {
  334. max-height: 12000px;
  335. }
  336. }
  337. /* borders */
  338. .bd-white {
  339. border: 1px solid var(--c-white);
  340. }
  341. .bdb-pink {
  342. border-bottom: 1px solid var(--c-pink);
  343. }
  344. .bdb-dark-green {
  345. border-bottom: 1px solid var(--c-dark-green);
  346. }
  347. .bd-dark-rubin {
  348. border: 1px solid var(--c-dark-rubin);
  349. }
  350. .bdt-dark-red {
  351. border-top: 1px solid var(--c-dark-red);
  352. }
  353. .bdb-dark-red {
  354. border-bottom: 1px solid var(--c-dark-red);
  355. }
  356. .bd-yet-gray {
  357. border: 1px solid var(--c-yet-gray);
  358. }
  359. .bd-deep-brown {
  360. border: 1px solid var(--c-deep-brown);
  361. }
  362. .bdt-gray {
  363. border-top: 1px solid var(--c-gray);
  364. }
  365. .bdb-gray {
  366. border-bottom: 1px solid var(--c-gray);
  367. }
  368. .bd-dark-gray {
  369. border: 1px solid var(--c-dark-gray);
  370. }
  371. .bd-brown {
  372. border: 1px solid var(--c-brown);
  373. }
  374. .bd-blue {
  375. border: 1px solid var(--c-blue);
  376. }
  377. .bd-bluegreen {
  378. border: 1px solid var(--c-bluegreen);
  379. }
  380. @media screen and (min-width: 760px) {
  381. .md-bdl-pink {
  382. border-left: 1px solid var(--c-pink);
  383. }
  384. .md-bdl-rubin {
  385. border-left: 1px solid var(--c-rubin);
  386. }
  387. }
  388. @media screen and (min-width: 1280px) {
  389. .bg-bdr-gray {
  390. border-right: 1px solid var(--c-gray);
  391. }
  392. .bg-bdl-gray {
  393. border-left: 1px solid var(--c-gray);
  394. }
  395. }
  396. @media screen and (min-width: 1920px) {
  397. .lg-bdr-gray {
  398. border-right: 1px solid var(--c-gray);
  399. }
  400. .lg-bdl-gray {
  401. border-left: 1px solid var(--c-gray);
  402. }
  403. .lg-bdl-pink {
  404. border-left: 1px solid var(--c-pink);
  405. }
  406. }
  407. .brad-6 {
  408. border-radius: 6px;
  409. }
  410. /* display */
  411. .vh {
  412. clip: rect(0 0 0 0);
  413. clip-path: inset(50%);
  414. height: 1px;
  415. overflow: hidden;
  416. position: absolute;
  417. white-space: nowrap;
  418. width: 1px;
  419. }
  420. .dn {
  421. display: none;
  422. }
  423. .dib {
  424. display: inline-block;
  425. }
  426. .db {
  427. display: block;
  428. }
  429. .x {
  430. display: flex;
  431. }
  432. .xw {
  433. flex-wrap: wrap;
  434. }
  435. .xdr {
  436. flex-direction: row;
  437. }
  438. .xdc {
  439. flex-direction: column;
  440. }
  441. .xaic {
  442. align-items: center;
  443. }
  444. .xaib {
  445. align-items: baseline;
  446. }
  447. .xjsb {
  448. justify-content: space-between;
  449. }
  450. .xo1 {
  451. order: 1;
  452. }
  453. .xo2 {
  454. order: 2;
  455. }
  456. .xo3 {
  457. order: 3;
  458. }
  459. .x1 {
  460. flex: 1;
  461. }
  462. .g-4-16 {
  463. gap: 4.16rem;
  464. }
  465. @media screen and (min-width: 400px) {
  466. .tn-xdr {
  467. flex-direction: row;
  468. }
  469. }
  470. @media screen and (min-width: 540px) {
  471. .sm-xaic {
  472. align-items: center;
  473. }
  474. .sm-xo1 {
  475. order: 1;
  476. }
  477. .sm-xo2 {
  478. order: 2;
  479. }
  480. .sm-xo3 {
  481. order: 3;
  482. }
  483. }
  484. @media screen and (min-width: 760px) {
  485. .md-dn {
  486. display: none;
  487. }
  488. .md-db {
  489. display: block;
  490. }
  491. .md-x {
  492. display: flex;
  493. }
  494. .md-xdc {
  495. flex-direction: column;
  496. }
  497. .md-xdr {
  498. flex-direction: row;
  499. }
  500. .md-xw {
  501. flex-wrap: wrap;
  502. }
  503. .md-xo1 {
  504. order: 1;
  505. }
  506. .md-xo2 {
  507. order: 2;
  508. }
  509. .md-xo3 {
  510. order: 3;
  511. }
  512. }
  513. @media screen and (min-width: 1280px) {
  514. .bg-xw {
  515. flex-wrap: wrap;
  516. }
  517. .bg-xdr {
  518. flex-direction: row;
  519. }
  520. .bg-xdc {
  521. flex-direction: column;
  522. }
  523. .bg-xjsb {
  524. justify-content: space-between;
  525. }
  526. .bg-xo1 {
  527. order: 1;
  528. }
  529. .bg-xo2 {
  530. order: 2;
  531. }
  532. .bg-xo3 {
  533. order: 3;
  534. }
  535. }
  536. @media screen and (min-width: 1920px) {
  537. .lg-x {
  538. display: flex;
  539. }
  540. .lg-xdr {
  541. flex-direction: row;
  542. }
  543. .lg-xw {
  544. flex-wrap: wrap;
  545. }
  546. .lg-xdc {
  547. flex-direction: column;
  548. }
  549. .lg-xo1 {
  550. order: 1;
  551. }
  552. .lg-xo2 {
  553. order: 2;
  554. }
  555. .lg-xo3 {
  556. order: 3;
  557. }
  558. .lg-xjsb {
  559. justify-content: space-between;
  560. }
  561. }
  562. .dg {
  563. display: grid;
  564. }
  565. /* position */
  566. .z1 {
  567. z-index: 1;
  568. }
  569. .z2 {
  570. z-index: 2;
  571. }
  572. .psr {
  573. position: relative;
  574. }
  575. .psf {
  576. position: fixed;
  577. }
  578. .psa {
  579. position: absolute;
  580. }
  581. .t0 {
  582. top: 0;
  583. }
  584. .b0 {
  585. bottom: 0;
  586. }
  587. .l0 {
  588. left: 0;
  589. }
  590. .t50 {
  591. top: 50%;
  592. }
  593. .l50 {
  594. left: 50%;
  595. }
  596. .ttcx {
  597. transform: translateX(-50%);
  598. }
  599. .ttcc {
  600. transform: translate(-50%, -50%);
  601. }
  602. .mta {
  603. margin-top: auto;
  604. }
  605. .mla {
  606. margin-left: auto;
  607. }
  608. .mra {
  609. margin-right: auto;
  610. }
  611. .mt1 {
  612. margin-top: 1rem;
  613. }
  614. .mr1 {
  615. margin-right: 1rem;
  616. }
  617. .mr0-5 {
  618. margin-right: 0.5rem;
  619. }
  620. .ml0-5 {
  621. margin-left: 0.5rem;
  622. }
  623. .ml1 {
  624. margin-left: 1rem;
  625. }
  626. .mb1-25 {
  627. margin-bottom: 1.25rem;
  628. }
  629. .mb4-25 {
  630. margin-bottom: 4.25rem;
  631. }
  632. /* spacing */
  633. .pt0-25 {
  634. padding-top: 0.25rem;
  635. }
  636. .pr0-25 {
  637. padding-right: 0.25rem;
  638. }
  639. .pb0-25 {
  640. padding-bottom: 0.25rem;
  641. }
  642. .pl0-25 {
  643. padding-left: 0.25rem;
  644. }
  645. .pt0-5 {
  646. padding-top: 0.5rem;
  647. }
  648. .pr0-5 {
  649. padding-right: 0.5rem;
  650. }
  651. .pb0-5 {
  652. padding-bottom: 0.5rem;
  653. }
  654. .pl0-5 {
  655. padding-left: 0.5rem;
  656. }
  657. .pt0-75 {
  658. padding-top: 0.75rem;
  659. }
  660. .pr0-75 {
  661. padding-right: 0.75rem;
  662. }
  663. .pb0-75 {
  664. padding-bottom: 0.75rem;
  665. }
  666. .pl0-75 {
  667. padding-left: 0.75rem;
  668. }
  669. .pt0-85 {
  670. padding-top: 0.85rem;
  671. }
  672. .pr0-85 {
  673. padding-right: 0.85rem;
  674. }
  675. .pb0-85 {
  676. padding-bottom: 0.85rem;
  677. }
  678. .pl0-85 {
  679. padding-left: 0.85rem;
  680. }
  681. .pt1 {
  682. padding-top: 1rem;
  683. }
  684. .pb1 {
  685. padding-bottom: 1rem;
  686. }
  687. .pb1-25 {
  688. padding-bottom: 1.25rem;
  689. }
  690. .pt1-7 {
  691. padding-top: 1.7rem;
  692. }
  693. .pb1-7 {
  694. padding-bottom: 1.7rem;
  695. }
  696. .pb2 {
  697. padding-bottom: 2rem;
  698. }
  699. .pt3-5 {
  700. padding-top: 3.5rem;
  701. }
  702. .pb3 {
  703. padding-bottom: 3rem;
  704. }
  705. .pt4-25 {
  706. padding-top: 4.25rem;
  707. }
  708. .pb4-25 {
  709. padding-bottom: 4.25rem;
  710. }
  711. .pt4-75 {
  712. padding-top: 4.75rem;
  713. }
  714. .pb4-75 {
  715. padding-bottom: 4.75rem;
  716. }
  717. .pb5-5 {
  718. padding-bottom: 5.5rem;
  719. }
  720. .pt7 {
  721. padding-top: 7rem;
  722. }
  723. .pb7 {
  724. padding-bottom: 7rem;
  725. }
  726. @media screen and (min-width: 540px) {
  727. .sm-pr0 {
  728. padding-right: 0;
  729. }
  730. .sm-pl0 {
  731. padding-left: 0;
  732. }
  733. }
  734. @media screen and (min-width: 760px) {
  735. .md-ml1-25 {
  736. margin-left: 1.25rem;
  737. }
  738. .md-pt0-5 {
  739. padding-top: 0.5rem;
  740. }
  741. .md-pr0-5 {
  742. padding-right: 0.5rem;
  743. }
  744. .md-pb0-5 {
  745. padding-bottom: 0.5rem;
  746. }
  747. .md-pl0-5 {
  748. padding-left: 0.5rem;
  749. }
  750. .md-pt1 {
  751. padding-top: 1rem;
  752. }
  753. .md-pr1 {
  754. padding-right: 1rem;
  755. }
  756. .md-pb1 {
  757. padding-bottom: 1rem;
  758. }
  759. .md-pl1 {
  760. padding-left: 1rem;
  761. }
  762. .md-pr1-3 {
  763. padding-right: 1.3rem;
  764. }
  765. .md-pl1-3 {
  766. padding-left: 1.3rem;
  767. }
  768. .md-pt3-35 {
  769. padding-top: 3.35rem;
  770. }
  771. .md-pr3-35 {
  772. padding-right: 3.35rem;
  773. }
  774. .md-pb3-35 {
  775. padding-bottom: 3.35rem;
  776. }
  777. .md-pl3-35 {
  778. padding-left: 3.35rem;
  779. }
  780. .md-pt4-2 {
  781. padding-top: 4.2rem;
  782. }
  783. .md-pr4-2 {
  784. padding-right: 4.2rem;
  785. }
  786. .md-pb4-2 {
  787. padding-bottom: 4.2rem;
  788. }
  789. .md-pl4-2 {
  790. padding-left: 4.2rem;
  791. }
  792. }
  793. @media screen and (min-width: 1280px) {
  794. .bg-pb0 {
  795. padding-bottom: 0;
  796. }
  797. .bg-pt1-25 {
  798. padding-top: 1.25rem;
  799. }
  800. .bg-pr1-25 {
  801. padding-right: 1.25rem;
  802. }
  803. .bg-pb1-25 {
  804. padding-bottom: 1.25rem;
  805. }
  806. .bg-pl1-25 {
  807. padding-left: 1.25rem;
  808. }
  809. .bg-pt1-7 {
  810. padding-top: 1.7rem;
  811. }
  812. .bg-pr1-7 {
  813. padding-right: 1.7rem;
  814. }
  815. .bg-pb1-7 {
  816. padding-bottom: 1.7rem;
  817. }
  818. .bg-pl1-7 {
  819. padding-left: 1.7rem;
  820. }
  821. }
  822. @media screen and (min-width: 1280px) {
  823. .bg-pt4-2 {
  824. padding-top: 4.2rem;
  825. }
  826. .bg-pr8-3 {
  827. padding-right: 8.3rem;
  828. }
  829. .bg-pb4-2 {
  830. padding-bottom: 4.2rem;
  831. }
  832. .bg-pl4-2 {
  833. padding-left: 4.2rem;
  834. }
  835. .bg-pl8-3 {
  836. padding-left: 8.3rem;
  837. }
  838. }
  839. @media screen and (min-width: 1920px) {
  840. .lg-pb0 {
  841. padding-bottom: 0;
  842. }
  843. .lg-pr2 {
  844. padding-right: 2;
  845. }
  846. .lg-pt0-42 {
  847. padding-top: 0.42rem;
  848. }
  849. .lg-pr0-42 {
  850. padding-right: 0.42rem;
  851. }
  852. .lg-pb0-42 {
  853. padding-bottom: 0.42rem;
  854. }
  855. .lg-pl0-42 {
  856. padding-left: 0.42rem;
  857. }
  858. .lg-pt4-2 {
  859. padding-top: 4.2rem;
  860. }
  861. .lg-pr4-2 {
  862. padding-right: 4.2rem;
  863. }
  864. .lg-pb4-2 {
  865. padding-bottom: 4.2rem;
  866. }
  867. .lg-pl4-2 {
  868. padding-left: 4.2rem;
  869. }
  870. .lg-pt8-3 {
  871. padding-top: 8.3rem;
  872. }
  873. .lg-pr8-3 {
  874. padding-right: 8.3rem;
  875. }
  876. .lg-pb8-3 {
  877. padding-bottom: 8.3rem;
  878. }
  879. .lg-pl8-3 {
  880. padding-left: 8.3rem;
  881. }
  882. }
  883. /* logos */
  884. .logo-eye {
  885. width: 27px;
  886. height: 22.7px;
  887. }
  888. .logo-hardware {
  889. width: 120px;
  890. height: 14px;
  891. }
  892. @media screen and (min-width: 760px) {
  893. .logo-hardware {
  894. width: 160px;
  895. height: 18px;
  896. }
  897. }
  898. /* colors */
  899. .bgc-white {
  900. background-color: var(--c-white);
  901. }
  902. .bgc-gr-black {
  903. background: linear-gradient(180deg, var(--c-blackish) 0%, var(--c-dark-black) 100%);
  904. background: var(--c-dark-black);
  905. }
  906. .bgc-black {
  907. background-color: var(--c-black);
  908. }
  909. .bgc-blackest {
  910. background-color: var(--c-blackest);
  911. }
  912. .bgc-gaow {
  913. background-color: var(--c-gaow);
  914. }
  915. .bgc-bright-black {
  916. background-color: var(--c-bright-black);
  917. }
  918. .fgc-terre {
  919. color: var(--c-terre);
  920. }
  921. .fgc-gray {
  922. color: var(--c-gray);
  923. }
  924. .fgc-dark-gray {
  925. color: var(--c-dark-gray);
  926. }
  927. .bgc-dark-brown {
  928. background-color: var(--c-dark-brown);
  929. }
  930. .bgc-dark-bright-brown {
  931. background-color: var(--c-dark-bright-brown);
  932. }
  933. .fgc-light-gray {
  934. color: var(--c-light-gray);
  935. }
  936. .fgc-anon-gray {
  937. color: var(--c-anon-gray);
  938. }
  939. .fgc-green {
  940. color: var(--c-green);
  941. }
  942. .fgc-light-blue {
  943. color: var(--c-light-blue);
  944. }
  945. .bgc-dark-blue {
  946. background-color: var(--c-dark-blue);
  947. }
  948. .bgc-dark-bluegreen {
  949. background-color: var(--c-dark-bluegreen);
  950. }
  951. .fgc-cyan {
  952. color: var(--c-cyan);
  953. }
  954. /* --- */
  955. .btn-product-code {
  956. padding: 2px 4px 3px 4px;
  957. }
  958. .btn-checkout-remove {
  959. padding: 5px 7px;
  960. }
  961. .btn-submit {
  962. padding: 8px 12px 10px 12px;
  963. }
  964. .btn-product-soldout {
  965. border: 1px solid var(--c-dark-rubin);
  966. background-color: var(--c-dark-bright-brown);
  967. color: var(--c-light-gray);
  968. }
  969. .btn-product-unselectable {
  970. border: 1px solid var(--c-bluegreen);
  971. background-color: var(--c-dark-black);
  972. color: var(--c-light-gray);
  973. }
  974. .btn-product-available {
  975. cursor: pointer;
  976. border: 1px solid var(--c-bluegreen);
  977. background-color: var(--c-dark-bluegreen);
  978. color: var(--c-cyan);
  979. }
  980. .btn-product-available:hover {
  981. cursor: pointer;
  982. border: 1px solid var(--c-dark-teal);
  983. background-color: var(--c-blackish);
  984. color: var(--c-another-blue);
  985. }
  986. .payment-buttons {
  987. gap: 1rem;
  988. }
  989. .btn-stripe {
  990. width: 88px;
  991. height: 42px
  992. }
  993. .btn-nowpayments {
  994. width: 170px;
  995. height: 42px
  996. }
  997. @media screen and (min-width: 540px) {
  998. .btn-stripe {
  999. width: 116px;
  1000. height: 55px
  1001. }
  1002. .btn-nowpayments {
  1003. width: 220px;
  1004. height: 55px
  1005. }
  1006. }
  1007. .product-size-guide h1,
  1008. .product-size-guide h2,
  1009. .product-size-guide h3,
  1010. .product-size-guide h4,
  1011. .product-size-guide h5,
  1012. .product-size-guide h6 {
  1013. color: var(--c-another-blue);
  1014. text-transform: uppercase;
  1015. padding-bottom: 1.7rem;
  1016. }
  1017. .product-size-guide table {
  1018. width: 100%;
  1019. }
  1020. .copy table {
  1021. table-layout: fixed;
  1022. border-collapse: collapse;
  1023. }
  1024. .copy th,
  1025. .copy td {
  1026. padding: 4px 0;
  1027. text-transform: uppercase;
  1028. font-size: 10px;
  1029. }
  1030. .copy td {
  1031. border-bottom: 1px solid var(--c-forest-green);
  1032. text-align: center;
  1033. }
  1034. .copy td:first-child {
  1035. text-align: left;
  1036. color: var(--c-light-green);
  1037. }
  1038. /* grid border ref: <https://geary.co/internal-borders-css-grid/> */
  1039. .related-products {
  1040. grid-template-columns: repeat(2, 1fr);
  1041. overflow: hidden;
  1042. --gap: 4px;
  1043. --line-offset: calc(var(--gap) / 2);
  1044. --line-thickness: 1px;
  1045. --line-color: var(--c-gray);
  1046. }
  1047. @media screen and (min-width: 760px) {
  1048. .related-products {
  1049. grid-template-columns: repeat(4, 1fr);
  1050. }
  1051. }
  1052. @media screen and (min-width: 2400px) {
  1053. .related-products {
  1054. grid-template-columns: repeat(5, 1fr);
  1055. }
  1056. }
  1057. /* add border magic-filler to the last row not having enough blocks to
  1058. create an even border-bottom line */
  1059. .related-products::after {
  1060. content: '';
  1061. background-color: var(--c-gray);
  1062. width: 1000%;
  1063. height: 1px;
  1064. margin-top: auto;
  1065. }
  1066. .related-products-child {
  1067. border-bottom: 1px solid var(--c-gray);
  1068. border-right: 1px solid var(--c-gray);
  1069. }
  1070. .related-products a:hover {
  1071. color: var(--c-cyan);
  1072. border-right: 1px solid var(--c-gray);
  1073. }
  1074. .cart-icon:hover{
  1075. color: var(--c-cyan);
  1076. }
  1077. .fgc-cyan:hover{
  1078. color: var(--c-pink);
  1079. }
  1080. .copy-checkout-disclaimer {
  1081. display: grid;
  1082. grid-template-columns: repeat(2, 1fr);
  1083. gap: 20px;
  1084. }
  1085. @media screen and (min-width: 760px) {
  1086. .copy-checkout-disclaimer {
  1087. gap: 34px;
  1088. }
  1089. }
  1090. .sunset {
  1091. width: 100%;
  1092. height: 15vh;
  1093. background-repeat: no-repeat;
  1094. background-position: bottom;
  1095. }
  1096. /* --- */
  1097. .curp {
  1098. cursor: pointer;
  1099. }
  1100. .cura {
  1101. cursor: auto;
  1102. }
  1103. /* sizes */
  1104. .w5r {
  1105. width: 5rem;
  1106. }
  1107. .w30 {
  1108. width: 30%;
  1109. }
  1110. .w50 {
  1111. width: 50%;
  1112. }
  1113. .w70 {
  1114. width: 70%;
  1115. }
  1116. .w100 {
  1117. width: 100%;
  1118. }
  1119. .mw-680px {
  1120. max-width: 680px;
  1121. }
  1122. .h15vh {
  1123. height: 15vh;
  1124. }
  1125. .h100 {
  1126. height: 100%;
  1127. }
  1128. @media screen and (min-width: 540px) {
  1129. .sm-w30 {
  1130. width: 30%;
  1131. }
  1132. .sm-w70 {
  1133. width: 70%;
  1134. }
  1135. .sm-w100 {
  1136. width: 100%;
  1137. }
  1138. }
  1139. @media screen and (min-width: 760px) {
  1140. .md-w25 {
  1141. width: 25%;
  1142. }
  1143. .md-w30 {
  1144. width: 30%;
  1145. }
  1146. .md-w50 {
  1147. width: 50%;
  1148. }
  1149. .md-w70 {
  1150. width: 70%;
  1151. }
  1152. .md-w100 {
  1153. width: 100%;
  1154. }
  1155. .md-h100 {
  1156. height: 100%;
  1157. }
  1158. }
  1159. @media screen and (min-width: 1280px) {
  1160. .bg-w25 {
  1161. width: 25%;
  1162. }
  1163. .bg-w50 {
  1164. width: 50%;
  1165. }
  1166. .bg-w75 {
  1167. width: 75%;
  1168. }
  1169. .bg-w100 {
  1170. width: 100%;
  1171. }
  1172. }
  1173. @media screen and (min-width: 1920px) {
  1174. .lg-w25 {
  1175. width: 25%;
  1176. }
  1177. .lg-w75 {
  1178. width: 75%;
  1179. }
  1180. .lg-w50 {
  1181. width: 50%;
  1182. }
  1183. }
  1184. @media screen and (min-width: 2400px) {
  1185. .hg-w1200 {
  1186. width: 1200px;
  1187. }
  1188. .hg-x1 {
  1189. flex: 1;
  1190. }
  1191. }
  1192. .nav-height {
  1193. padding-top: 34.7px
  1194. }
  1195. @media screen and (min-width: 760px) {
  1196. .nav-height {
  1197. padding-top: 46.7px
  1198. }
  1199. }
  1200. .form-input {
  1201. padding: 14.5px 10px;
  1202. background-color: #00120e;
  1203. border: 1px solid #213f38;
  1204. }
  1205. @media screen and (min-width: 760px) {
  1206. .sticky-prod-info {
  1207. position: sticky;
  1208. top: 48px;
  1209. background-color: var(--c-black);
  1210. z-index: 1;
  1211. }
  1212. }
  1213. /* icons */
  1214. .icon-p {
  1215. width: 12px;
  1216. height: 12px;
  1217. }
  1218. /* Spinner for the cart */
  1219. #loader {
  1220. position: fixed;
  1221. top: 0;
  1222. left: 0;
  1223. width: 100vw;
  1224. height: 100vh;
  1225. background: rgba(0, 0, 0, 0.8);
  1226. display: none; /* hidden by default */
  1227. justify-content: center;
  1228. align-items: center;
  1229. z-index: 9999;
  1230. }
  1231. .spinner {
  1232. border: 8px solid #f3f3f3;
  1233. border-top: 8px solid #00FFFF;
  1234. border-radius: 50%;
  1235. width: 60px;
  1236. height: 60px;
  1237. animation: spin 1s linear infinite;
  1238. }
  1239. @keyframes spin {
  1240. 0% { transform: rotate(0deg); }
  1241. 100% { transform: rotate(360deg); }
  1242. }