_variable.scss 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. // VARIABLES
  2. // typography - most used fonts
  3. $mainFont: Lato, Sans-serif;
  4. $titleFont: Syne, Sans-serif;
  5. // typography - utilité fonts
  6. @mixin publique-font {
  7. font-family: PlayfairDisplay, serif;
  8. font-style: italic;
  9. }
  10. @mixin sociale-font {
  11. font-family: ManifontGrotesk, sans-serif;
  12. font-weight: bold;
  13. font-style: italic;
  14. }
  15. @mixin culturelle-font {
  16. font-family: Avara, serif;
  17. font-weight: bold;
  18. font-style: italic;
  19. }
  20. // typography - index fonts
  21. @mixin figures-libres-font {
  22. font-family: Syne, sans-serif;
  23. font-weight: bold;
  24. }
  25. @mixin commanditaires-font {
  26. font-family: Moche, sans-serif;
  27. font-weight: bold;
  28. }
  29. @mixin projets-font {
  30. font-family: Redaction50, serif;
  31. font-weight: bold;
  32. }
  33. // typography - general sizes
  34. $currentSize: 1.2em;
  35. $smallSize: 0.95em;
  36. $tinySize: 0.75em;
  37. $currentLineHeight: 1.25em;
  38. $titleLineHeight: 1.1em;
  39. // typography - sizes mobile
  40. $titleFontSizeMobile: 1.8em;
  41. $bigFontSizeMobile: 2.2em;
  42. // typography - sizes desktop
  43. $bigFontSizeDesktop: 2.9em;
  44. // typography - pictograms
  45. $pictoInlineWidth: 12px;
  46. $pictoInlineHeight: 10px;
  47. $pictoSmallWidth: 25px;
  48. $pictoSmallHeight: 23px;
  49. $pictoLargeWidth: 45px;
  50. $pictoLargeHeight: 37px;
  51. $pictoExtraLargeWidth: 60px;
  52. $pictoExtraLargeHeight: 54px;
  53. // colors - theme colors
  54. $mainColor: #0e1229;
  55. $mainColorSoft: #1f2429;
  56. $bgColor: #f5f5f5;
  57. $color_publique: #ffaeab;
  58. $color_sociale: #71ff94;
  59. $color_culturelle: #feff74;
  60. $color_commanditaire: #fabbde;
  61. $color_figureslibres: #82f8ee;
  62. $color_projets: #4bffc9;
  63. // colors - gradient
  64. $bgGradientToBottom: linear-gradient(to bottom, #{$bgColor}, #{$bgColor}00);
  65. $bgGradientToLeft: linear-gradient(to left, #{$bgColor}, #{$bgColor}00);
  66. // colors - opacity
  67. $transparency: 0.4;
  68. // layout - general
  69. $navHeight: 7vh;
  70. $sectionSpacing: 30px;
  71. // layout - mobile
  72. $bodyMarginMobile: 3vw;
  73. $navGradientHeightMobile: 4vh;
  74. $footerHeightMobile: 7vh;
  75. // layout - desktop
  76. $navGradientHeightDesktop: 2vh;
  77. $bodyWidth: 65vw;
  78. $maxBodyWidth: 1300px;
  79. $footerHeightDesktop: 5vh;
  80. $marginTopShortContent: 7vh;
  81. $footerHeightDesktop: 4vh;
  82. // transition
  83. @mixin transition-ease-out($transitions...) {
  84. $unfoldedTransitions: ();
  85. @each $transition in $transitions {
  86. $unfoldedTransitions: append($unfoldedTransitions, unfoldTransition($transition), comma);
  87. }
  88. transition: $unfoldedTransitions;
  89. }
  90. @function unfoldTransition ($transition) {
  91. $property: all;
  92. $duration: .4s;
  93. $defaultProperties: ($property, $duration, ease-out);
  94. $unfoldedTransition: ();
  95. @for $i from 1 through length($defaultProperties) {
  96. $p: null;
  97. @if $i <= length($transition) {
  98. $p: nth($transition, $i)
  99. } @else {
  100. $p: nth($defaultProperties, $i)
  101. }
  102. $unfoldedTransition: append($unfoldedTransition, $p);
  103. }
  104. @return $unfoldedTransition;
  105. }
  106. // animation
  107. @keyframes arrowIndex {
  108. 30% { transform: translateY(0px); }
  109. 50% { transform: translateY(20px); }
  110. 70% { transform: translateY(0px); }
  111. }
  112. // media queries - tablet
  113. $minScreenWidthS: 576px;
  114. // media queries - small desktop
  115. $minScreenWidthM: 996px;
  116. // media queries - large desktop
  117. $minScreenWidthL: 1500px;