jee.scss 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. @charset "UTF-8";
  2. @import "../bower_components/foundation/scss/normalize.scss";
  3. @import "../bower_components/foundation/scss/foundation/functions";
  4. $row-width: rem-calc(1250);
  5. // $total-columns: 12;
  6. $column-gutter: rem-calc(20);
  7. //@import "../bower_components/foundation/scss/foundation/settings"; // this is not working, causing an error on compilation
  8. @import "../bower_components/foundation/scss/foundation/components/global";
  9. @import "../bower_components/foundation/scss/foundation/components/type";
  10. @import "../bower_components/foundation/scss/foundation/components/clearing";
  11. // @import "../bower_components/foundation/scss/foundation/components/inline-lists";
  12. @import "../bower_components/foundation/scss/foundation/components/grid";
  13. // @import "../bower_components/foundation/scss/foundation/components/top-bar";
  14. @import "../bower_components/foundation/scss/foundation/components/block-grid";
  15. // @import "../bower_components/foundation/scss/foundation.scss"; // without importing the whole foundation, the final css files is 75% less heavier
  16. /*
  17. * ESADHaR
  18. */
  19. @import "communs.scss";
  20. @import "fonts.scss";
  21. @import "misc.scss";
  22. html{
  23. position:relative;
  24. }
  25. body{
  26. position:relative;
  27. height:100%!important;
  28. /* IE10 Consumer Preview */
  29. background-image: -ms-linear-gradient(top, #FFFDE9 0%, #BECFD9 100%);
  30. /* Mozilla Firefox */
  31. background-image: -moz-linear-gradient(top, #FFFDE9 0%, #BECFD9 100%);
  32. /* Opera */
  33. background-image: -o-linear-gradient(top, #FFFDE9 0%, #BECFD9 100%);
  34. /* Webkit (Safari/Chrome 10) */
  35. background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFFDE9), color-stop(1, #BECFD9));
  36. /* Webkit (Chrome 11+) */
  37. background-image: -webkit-linear-gradient(top, #FFFDE9 0%, #BECFD9 100%);
  38. /* W3C Markup, IE10 Release Preview */
  39. background-image: linear-gradient(to bottom, #FFFDE9 0%, #BECFD9 100%);
  40. }
  41. #root{
  42. position:relative;
  43. width:100%;
  44. height:100%;
  45. overflow: hidden;
  46. // width:1125px;
  47. // height:900px;
  48. // margin:-450px auto 0;
  49. // top:50%;
  50. }
  51. @keyframes introLogo{
  52. 0% {opacity:0;}
  53. 35% {opacity:1;}
  54. 50% {opacity:1;}
  55. 75% {opacity:0;}
  56. 100% {opacity:0;}
  57. }
  58. @keyframes introLogoBlured{
  59. 0% {opacity:0;}
  60. 50% {opacity:0;}
  61. 60% {opacity:0.8;}
  62. 100% {opacity:0.8;}
  63. }
  64. @keyframes introSlogan{
  65. 0% {opacity:0;}
  66. 50% {opacity:0;}
  67. 70% {opacity:1;}
  68. 90% {opacity:1;}
  69. 100% {opacity:0;}
  70. }
  71. body{
  72. user-select:none;
  73. }
  74. $animeLogoDuration:8s;
  75. #header{
  76. position:absolute;
  77. overflow:hidden;
  78. width:700px;
  79. height:310px;
  80. top:50%; left:50%;
  81. margin-left:-350px;
  82. margin-top:-155px;
  83. transition-property: "transform";
  84. transition-duration: 0.2s;
  85. transition-timing-function:ease-out;
  86. animation-fill-mode: forwards;
  87. h1{
  88. position:absolute;
  89. width:100%; height:100%;
  90. a{display:block;margin-top:-500%;}
  91. // filter:url(#blur-effect);
  92. &:after, &:before{
  93. content:"";
  94. display:block;
  95. width:100%; height:100%;
  96. position:absolute;
  97. top:0; left:0;
  98. opacity:0;
  99. }
  100. &:before{
  101. background: transparent url('../assets/img/logo.svg') no-repeat center center;
  102. animation: introLogo $animeLogoDuration linear 0s;
  103. animation-fill-mode: forwards;
  104. }
  105. &:after{
  106. background: transparent url('../assets/img/logo-blured.svg') no-repeat center center;
  107. animation: introLogoBlured $animeLogoDuration linear 0s;
  108. animation-fill-mode: forwards;
  109. }
  110. }
  111. h2{
  112. background: transparent url('../assets/img/slogan.svg') no-repeat center center;
  113. position:absolute;
  114. width:100%; height:100%;
  115. a{display:block;margin-top:-500%;}
  116. opacity:0;
  117. animation: introSlogan $animeLogoDuration linear 0s;
  118. animation-fill-mode: forwards;
  119. }
  120. } // #header
  121. div.messages{
  122. position:absolute;
  123. top:20px; right:20px;
  124. width:250px; max-height:30%;
  125. overflow-y:auto;
  126. }
  127. #main{
  128. position:absolute;
  129. width:100%; height:100%;
  130. &>.region, &>.region>.block-system, &>.region>.block-system>.content{
  131. position:relative;
  132. width:100%; height:100%;
  133. }
  134. .node-chapitre.node-teaser{
  135. position:absolute;
  136. transition: transform 0.2s ease-out;
  137. // animation-fill-mode: forwards;
  138. // INTERACTIVITÉ - - - - - - - - - - - --
  139. // ----- DEFAULT MODE ----
  140. .field-name-field-comprendre{
  141. opacity:0; height:1px; overflow:hidden;
  142. transition:1s ease-out;
  143. transition-property:opacity height;
  144. }
  145. .field-name-field-partie{
  146. opacity:0;
  147. position:absolute;
  148. transition:1s ease-out 1s;
  149. transition-property: opacity transform;
  150. // just let see the field vignette of first partie
  151. &:nth-child(3){
  152. z-index:2;
  153. opacity:1;
  154. transition-delay:0;
  155. >.field-type-text{
  156. opacity:0;
  157. transition:1s ease-out 1s;
  158. transition-property: opacity;
  159. }
  160. >.field-name-field-vignette{cursor:pointer;z-index:2;}
  161. }
  162. }
  163. // &.closed .field-name-field-partie{
  164. // transform:none!important;
  165. // }
  166. .links{
  167. opacity:0;>*{display:none;}
  168. transition:1s ease-out 1s;
  169. transition-property:opacity;
  170. }
  171. &:after{
  172. opacity:0;
  173. // display:none;
  174. transition: 3s ease-out;
  175. transition-property:opacity;
  176. }
  177. // ----- PREVIEW MODE ------
  178. &.previewed{
  179. &:after{opacity:1;}
  180. .field-name-field-comprendre{opacity:1; height:6em;}
  181. .links{opacity:1;>*{display:block;}}
  182. .field-name-field-partie{
  183. opacity:1; z-index:0;
  184. // display all fields inside each parties
  185. >.field{opacity:1; z-index:-1; cursor:default;}
  186. }
  187. }
  188. // ------- GENERALS (non interactive) - - - - - - - - - - - - - - - - - -
  189. &:after{ // background
  190. content:" ";
  191. background-size:contain;
  192. // background-clip: content-box;
  193. background-repeat: no-repeat;
  194. position:absolute;
  195. $pad:-2em;
  196. top:-$pad;
  197. left:$pad*6; right:$pad*6;
  198. bottom:$pad*15;
  199. // border: 1px solid blue;
  200. z-index:-1;
  201. }
  202. h2.node-title{
  203. font-family: "epflulb";
  204. font-weight:normal;
  205. text-transform: uppercase;
  206. text-align: center;
  207. max-width: 8.5em;
  208. line-height: 1.1em;
  209. @media #{$large-up} {
  210. font-size: 1.3em;
  211. }
  212. @media #{$xlarge-up} {
  213. font-size:1.8em;
  214. }
  215. z-index: 5;
  216. }
  217. .field-name-field-comprendre{
  218. h1,h2,h3,h4,h5,h6{display:none!important;}
  219. max-width:15em;
  220. p{margin:0;}
  221. }
  222. .field-name-field-partie{clear:both; padding-top:1em;}
  223. $shadow-size:3.5em;
  224. .field-name-field-vignette{
  225. position:relative;
  226. float:left;
  227. $shadow-size:3.5em;
  228. padding:$shadow-size;
  229. margin-top:-$shadow-size*1.15;
  230. margin-right:-$shadow-size+1.5em;
  231. margin-bottom:0;
  232. margin-left:0;
  233. background-size: contain;
  234. background-repeat: no-repeat;
  235. background-origin: center center;
  236. }
  237. .field-type-text{ min-width:14em; }
  238. .field-name-field-titre{
  239. font-family: "epflul";
  240. font-size:1.6em;
  241. line-height:1.1;
  242. }
  243. .field-name-field-sous-titre{
  244. font-family: "epflul";
  245. font-size:1.4em;
  246. line-height:1.2;
  247. }
  248. .field-name-field-description{
  249. // font-family: "epf-lul";
  250. font-size:0.88em;
  251. line-height:1.2;
  252. }
  253. ul.links{
  254. margin:0; text-align: right; z-index:5; position:relative;
  255. li.node-readmore{
  256. padding:0;
  257. a{
  258. display:inline-block;
  259. height:25px;
  260. font-family: "open_sans";
  261. font-weight: 900;
  262. color:#000!important;
  263. width:8em; text-align: left;
  264. background: transparent url(../assets/img/readmore-btn.svg) no-repeat right center;
  265. }
  266. }
  267. }
  268. .line{
  269. z-index:-1;
  270. position:absolute;
  271. top:$shadow-size - 0.5em; left:$shadow-size+2.5em;
  272. transform-origin:top left;
  273. width:2px; background-color:red;
  274. opacity:0.4;
  275. // transition: 3s ease-out;
  276. // transition-property:height;
  277. }
  278. } // node-chapitre
  279. // COLORS BY NODE - - - - - - - - - - - - - - - - - - - - -
  280. //SOL
  281. #node-2{
  282. &::after{ background-image : url(../assets/img/bgd-sol.svg); }
  283. &, a{color:$SOL-col-txt;}
  284. h2.node-title{&,a{color:$SOL-color;}}
  285. .field-name-field-vignette{ background-image:url(../assets/img/shadow-sol.svg); }
  286. .line{background-color:$SOL-col-active;}
  287. }
  288. //DPH
  289. #node-3{
  290. &::after{ background-image : url(../assets/img/bgd-dph.svg); }
  291. &, a{color:$DPH-col-txt;}
  292. h2.node-title{&,a{color:$DPH-color;}}
  293. .field-name-field-vignette{ background-image:url(../assets/img/shadow-dph.svg); }
  294. .line{background-color:$DPH-col-active;}
  295. }
  296. // SUB
  297. #node-4{
  298. &::after{ background-image : url(../assets/img/bgd-sub.svg); }
  299. &, a{color:$SUB-col-txt;}
  300. h2.node-title{&,a{color:$SUB-color;}}
  301. .field-name-field-vignette{ background-image:url(../assets/img/shadow-sub.svg); }
  302. .line{background-color:$SUB-col-active;}
  303. }
  304. // BC
  305. #node-5{
  306. &::after{ background-image : url(../assets/img/bgd-bc.svg); }
  307. &, a{color:$BC-col-txt;}
  308. h2.node-title{&,a{color:$BC-color;}}
  309. .field-name-field-vignette{ background-image:url(../assets/img/shadow-bc.svg); }
  310. .line{background-color:$BC-col-active;}
  311. }
  312. //OPP
  313. #node-6{
  314. &::after{ background-image : url(../assets/img/bgd-opp.svg); }
  315. &, a{color:$OPP-col-txt;}
  316. h2.node-title{&,a{color:$OPP-color;}}
  317. .field-name-field-vignette{ background-image:url(../assets/img/shadow-opp.svg); }
  318. .line{background-color:$OPP-col-active;}
  319. }
  320. //DUB
  321. #node-7{
  322. &::after{ background-image : url(../assets/img/bgd-dub.svg); }
  323. &, a{color:$DUB-col-txt;}
  324. h2.node-title{&,a{color:$DUB-color;}}
  325. .field-name-field-vignette{ background-image:url(../assets/img/shadow-dub.svg); }
  326. .line{background-color:$DUB-col-active;}
  327. }
  328. // JUSO
  329. #node-8{
  330. &::after{ background-image : url(../assets/img/bgd-juso.svg); }
  331. &, a{color:$JUSO-col-txt;}
  332. h2.node-title{&,a{color:$JUSO-color;}}
  333. .field-name-field-vignette{ background-image:url(../assets/img/shadow-juso.svg); }
  334. .line{background-color:$JUSO-col-active;}
  335. }
  336. .chapter-wrapper{
  337. position:absolute;
  338. top:0; left:0; bottom:0; right:0;
  339. }
  340. } // main
  341. #footer{
  342. position:fixed;
  343. bottom:0; right:0;
  344. .block{
  345. display:inline-block;
  346. vertical-align: top;
  347. }
  348. }