main.css 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. /* Variables */
  2. :root {
  3. --tile-margin: .9vw;
  4. --caption-hmargin: calc(2 * var(--tile-margin));
  5. --caption-vmargin: calc(1.5 * var(--tile-margin));
  6. --body-margin: 3.6vw;
  7. --theme-color: #46c8a5;
  8. --bgcolor: white;
  9. --header-inner-space: calc(8 * var(--tile-margin));
  10. --header-space: calc(10 * var(--tile-margin) - 10px + var(--tile-margin));
  11. }
  12. /* Columns */
  13. @media (min-width: 1501px) {
  14. :root { --columns: 5; }
  15. }
  16. @media (max-width: 1500px) {
  17. :root { --columns: 5; }
  18. }
  19. @media (max-width: 1000px) {
  20. :root { --columns: 4; }
  21. }
  22. @media (max-width: 700px) {
  23. :root { --columns: 3; }
  24. }
  25. @media (max-width: 500px) {
  26. :root { --columns: 2; }
  27. }
  28. @media (max-width: 400px) {
  29. :root { --columns: 2; }
  30. }
  31. /* Font Size */
  32. :root {
  33. font-size: 1.2vw;
  34. font-weight: 100;
  35. }
  36. h1 {
  37. font-size: 1.18vw;
  38. }
  39. /* @media (max-width: 1500px) {
  40. :root { font-size: 22px; }
  41. h1 { font-size: 22px; }
  42. }
  43. @media (max-width: 1240px) {
  44. :root { font-size: 18px; }
  45. }
  46. @media (max-width: 1080px) {
  47. :root { font-size: 16px; }
  48. } */
  49. /* Margins */
  50. /* @media (max-width: 1080px) {
  51. :root {
  52. --tile-margin: 12.75px;
  53. --body-margin: 33px;
  54. }
  55. } */
  56. /* Header */
  57. @media (max-width: 600px) {
  58. #mobile-header { visibility: visible; }
  59. #wide-header { visibility: hidden; }
  60. :root { --header-space: 100px; }
  61. }
  62. @media (min-width: 601px) {
  63. #mobile-header { visibility: hidden; }
  64. #wide-header { visibility: visible; }
  65. }
  66. #logo {
  67. width: 10vw;
  68. margin: 0 .7vw -.9vw .5vw;
  69. }
  70. /* Typographies */
  71. @font-face {
  72. font-family: 'akrobat-regular';
  73. src: url('/static/font/Akrobat-Regular.otf') format('opentype');
  74. }
  75. @font-face {
  76. font-family: 'akrobat-bold';
  77. src: url('/static/font/Akrobat-Bold.otf') format('opentype');
  78. }
  79. /* Rules */
  80. :root {
  81. font-family: 'akrobat-regular';
  82. letter-spacing: .07rem;
  83. }
  84. .sec-div {
  85. font-weight: bold;
  86. font-family: 'akrobat-regular';
  87. }
  88. a {
  89. color: black;
  90. margin: .05rem .3rem;
  91. text-decoration: none;
  92. }
  93. a.en {
  94. margin-bottom: .3em;
  95. }
  96. h1 {
  97. font-size: 1.1em;
  98. text-align: center;
  99. letter-spacing: .05rem;
  100. font-weight: 100;
  101. font-family: 'akrobat-bold';
  102. text-decoration: none;
  103. text-transform: uppercase;
  104. margin: .2em 0;
  105. }
  106. h2 {
  107. font-size: .9em;
  108. font-family: 'akrobat-bold';
  109. text-decoration: none;
  110. text-transform: uppercase;
  111. }
  112. a.selected, a[href]:hover {
  113. color: var(--theme-color);
  114. }
  115. div {
  116. display: flex;
  117. }
  118. body {
  119. width: calc(100% - 2*var(--body-margin));
  120. margin: 0 var(--body-margin);
  121. position: absolute;
  122. background-color: var(--bgcolor);
  123. }
  124. #logo #background {
  125. fill: var(--bgcolor) !important;
  126. }
  127. #wide-header {
  128. width: calc(100% - 2*(var(--body-margin)));
  129. margin: 0;
  130. display: flex;
  131. flex-direction: column;
  132. justify-content: flex-end;
  133. position: fixed;
  134. background-color: var(--bgcolor);
  135. height: var(--header-space);
  136. position: fixed;
  137. z-index: 1;
  138. }
  139. .header-box {
  140. padding-bottom: calc(2 * var(--tile-margin));
  141. overflow: hidden;
  142. display: flex;
  143. flex-direction: row;
  144. align-items: flex-end;
  145. justify-content: space-between;
  146. flex-wrap: wrap;
  147. height: var(--header-inner-space);
  148. }
  149. .vbox {
  150. display: flex;
  151. flex-direction: column;
  152. align-items: center;
  153. }
  154. .rbox .vbox {
  155. align-items: flex-end;
  156. }
  157. .lbox .vbox {
  158. align-items: flex-start;
  159. }
  160. .hbox {
  161. display: flex;
  162. flex-direction: row;
  163. align-items: center;
  164. }
  165. .lbox {
  166. display: flex;
  167. flex-direction: row;
  168. align-items: flex-end;
  169. justify-content: flex-start;
  170. }
  171. .rbox {
  172. display: flex;
  173. flex-direction: row;
  174. align-items: center;
  175. justify-content: flex-end;
  176. }
  177. .header-subtitle {
  178. display: flex;
  179. flex-direction: row;
  180. flex-wrap: wrap;
  181. justify-content: flex-end;
  182. align-items: center;
  183. margin-top: 0;
  184. }
  185. #alucho-title, #designer-subtitle {
  186. flex-wrap: wrap;
  187. }
  188. .no-bottom {
  189. margin-bottom: 0;
  190. }
  191. .header-title {
  192. display: flex;
  193. flex-direction: row;
  194. flex-wrap: wrap;
  195. justify-content: flex-end;
  196. align-items: center;
  197. }
  198. a.first {
  199. margin-left: var(--tile-margin);
  200. }
  201. a.last {
  202. margin-right: var(--tile-margin);
  203. }
  204. main {
  205. display: flex;
  206. flex-direction: row;
  207. flex-wrap: wrap;
  208. justify-content: flex-start;
  209. margin-top: calc(var(--header-space) - var(--tile-margin));
  210. position: static;
  211. }
  212. figure {
  213. position: relative;
  214. display: flex;
  215. width: calc(100% / var(--columns) - 2 * var(--tile-margin));
  216. margin: var(--tile-margin);
  217. overflow: hidden;
  218. }
  219. figure img.tile, svg {
  220. display: flex;
  221. width: 100%;
  222. height: 100%;
  223. cursor: pointer;
  224. }
  225. figure figcaption {
  226. font-size: .7em;
  227. padding: var(--caption-vmargin) var(--caption-hmargin);
  228. display: flex;
  229. flex-direction: column;
  230. position: absolute;
  231. background-color: var(--bgcolor);
  232. bottom: 0;
  233. width: calc(100% - 2 * var(--caption-hmargin));
  234. -webkit-transform: translateY(100%);
  235. -ms-transform: translateY(100%);
  236. -o-transform: translateY(100%);
  237. transform: translateY(100%);
  238. -webkit-transition: .3s ease;
  239. -moz-transition: .3s ease;
  240. -o-transition: .3s ease;
  241. transition: .3s ease;
  242. }
  243. figure:hover figcaption {
  244. -webkit-transform: translateY(0);
  245. -ms-transform: translateY(0);
  246. -o-transform: translateY(0);
  247. transform: translateY(0);
  248. -webkit-transition: .3s ease;
  249. -moz-transition: .3s ease;
  250. -o-transition: .3s ease;
  251. transition: .3s ease;
  252. }
  253. figcaption h1 {
  254. margin: 0;
  255. }
  256. .caption {
  257. display: flex;
  258. flex-direction: column;
  259. align-items: flex-start;
  260. }
  261. footer {
  262. display: flex;
  263. flex-direction: column;
  264. margin: 0 var(--tile-margin);
  265. height: var(--body-margin);
  266. font-size: .7em;
  267. font-weight: 900;
  268. }
  269. footer::after {
  270. content: "";
  271. height: var(--tile-margin);
  272. bottom: 0;
  273. }
  274. .footer-content {
  275. height: calc(var(--body-margin) - var(--tile-margin));
  276. display: flex;
  277. flex-direction: row;
  278. flex-wrap: wrap;
  279. justify-content: space-between;
  280. }
  281. footer .copyright, footer .social {
  282. align-items: center;
  283. }
  284. footer a.first {
  285. margin-left: 0;
  286. }
  287. footer a.last {
  288. margin-right: 0;
  289. }
  290. footer svg {
  291. width: auto;
  292. height: 1.5em;
  293. margin-left: .75em;
  294. }
  295. .social a {
  296. margin: 0;
  297. }
  298. .hidden {
  299. visibility: hidden;
  300. }