styles.scss 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728
  1. @import '../bower_components/foundation/scss/normalize.scss';
  2. @import "_settings.scss";
  3. @import '../bower_components/foundation/scss/foundation.scss';
  4. @import '../bower_components/foundation/scss/foundation/components/_global.scss';
  5. @import '../bower_components/foundation/scss/foundation/components/_grid.scss';
  6. $column-gutter: rem-calc(15);
  7. // colors
  8. $maincolor: #5b2d87;
  9. $secondcolor: #e30613;
  10. $cat1: #e30613;
  11. $cat2: #00acba;
  12. $cat3: #5b2d87;
  13. $cat4: #f7a939;
  14. $cat5: #95c11f;
  15. $cat6: #e5007d;
  16. $cat7: #009641;
  17. $cat8: #009fe3;
  18. $catRadius: 12px;
  19. // $font: "CiutadellaRounded", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  20. $font: "cocogoose", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  21. @mixin fontbold{
  22. // TODO : media query
  23. font: $font; font-size:0.95em; font-weight:500; font-variant: normal;
  24. }
  25. @mixin fontnormal{
  26. // TODO : media query
  27. font: $font; font-size:0.8em; font-weight:300; font-variant: normal;
  28. }
  29. body{
  30. font-family: $font;
  31. letter-spacing: 1px;
  32. font-weight: 300;
  33. font-variant: normal;
  34. color: $maincolor;
  35. }
  36. h1,h2,h3,h4,h5,h6{font-family: $font;}
  37. a, a:hover{color:inherit;}
  38. ul,li{padding:0; margin:0; list-style: none;}
  39. // @media $large-up {
  40. // .row.fullwidth{width:1200px;}
  41. // }
  42. #container{
  43. display: block; position: relative;
  44. min-height: 100vh;
  45. }
  46. @media #{$medium-up}{
  47. .row{width:41rem;}
  48. }
  49. @media #{$large-up}{
  50. .row{width:62rem;}
  51. }
  52. @media #{$xlarge-up}{
  53. .row{width:83rem;max-width:83rem;}
  54. }
  55. // @media #{$xxlarge-up}{
  56. // .row{width:125rem;max-width:125rem;}
  57. // }
  58. /*
  59. _ _ _
  60. | | | | | |
  61. | |__| | ___ __ _ __| | ___ _ __
  62. | __ |/ _ \/ _` |/ _` |/ _ \ '__|
  63. | | | | __/ (_| | (_| | __/ |
  64. |_| |_|\___|\__,_|\__,_|\___|_|
  65. */
  66. $headerborderH: 0.3em;
  67. $headerpaddingtopH:0.9em;
  68. $logoH: 9.3em;
  69. $logo_mt:0.3em;
  70. $logo_mb:0.5em;
  71. $titleareaH: $logoH+$logo_mb+$logo_mt;
  72. $titleReducedFactor:0.7555;
  73. $titleReducedFactorSmall:0.5;
  74. $centerpaddingtop: $headerborderH+$headerpaddingtopH+$titleareaH;
  75. $footerheight: 5em;
  76. $centerpaddingbottom:$footerheight+1em;
  77. header#top-bar{
  78. position: fixed; top:0;
  79. width:100%;
  80. // TODO: flou sous le haeder
  81. z-index: 9;
  82. // &:before{
  83. // content:"";
  84. // background: transparent!important;
  85. // border-top: $headerborderH solid $maincolor;
  86. // display: block;
  87. // padding-bottom: $headerpaddingtopH;
  88. // }
  89. >.bg{
  90. padding-top: $headerpaddingtopH;
  91. background-color: rgba(255, 255, 255, 0.95);
  92. >.row{
  93. position:relative; display:block;
  94. padding:0 0.7em;
  95. // box-sizing: border-box;
  96. }
  97. }
  98. #title-area{
  99. // overflow: hidden;
  100. position:relative;
  101. height:$titleareaH;
  102. transition: height 0.4s ease-in-out;
  103. h1{
  104. font-size: 1em; margin: 0;
  105. height:100%;
  106. min-height:$titleareaH*0.8;
  107. overflow: hidden;
  108. position: relative;
  109. a{display: block;
  110. height:$logoH;
  111. margin:$logo_mt 0 $logo_mb;
  112. color:$secondcolor;
  113. @include fontnormal;
  114. font-weight: 500;
  115. &:before{
  116. content:"";
  117. display: block;
  118. $r: 95px;
  119. width:$r; height:$r;
  120. border-radius: $r/2;
  121. border: 17px solid $maincolor;
  122. margin: 0 auto 1em;
  123. }
  124. }
  125. }
  126. }
  127. &.reduced{
  128. #title-area{
  129. height:$titleareaH*$titleReducedFactor;
  130. // @media #{$medium-up}{
  131. // height:$titleareaH*$titleReducedFactorSmall;
  132. // }
  133. }
  134. }
  135. h1, h2{
  136. text-align: center;
  137. a{
  138. color: inherit;
  139. }}
  140. .nav{
  141. padding:0;
  142. position:relative;
  143. height:100%;
  144. ul{padding: 0; margin: 0;}
  145. li{list-style: none;}
  146. // @include breakpoint(medium) {
  147. @media screen and (min-width:$small-breakpoint) {
  148. .wrapper{padding-top: $titleareaH/2-.5em;}
  149. }
  150. }
  151. #left-nav{
  152. // margin-right: -0.1rem;
  153. text-align: left;
  154. h4{
  155. @include fontnormal; margin:0; line-height: 1.9;
  156. a{color:$maincolor;}
  157. // a:hover{text-decoration: underline;}
  158. }
  159. ul{background-color: transparent; padding-bottom: 1em;}
  160. li{
  161. line-height: 1;
  162. // &:not(.active){
  163. overflow: hidden; height:0.01px; transition: height 0.3s ease-in;
  164. // }
  165. position: relative;
  166. // line-height: $catRadius;
  167. // min-width:$catRadius; height:$catRadius;
  168. a{
  169. display: block;
  170. &:before{
  171. content:"";
  172. opacity: 1;
  173. position: relative;
  174. display:inline-block;
  175. border-width: 3px;
  176. border-style: solid;
  177. // line-height: $catRadius;
  178. width:$catRadius; height:$catRadius;
  179. border-radius: $catRadius/2;
  180. }
  181. &.tag-1:before{ border-color: $cat1;}
  182. &.tag-2:before{ border-color: $cat2;}
  183. &.tag-3:before{ border-color: $cat3;}
  184. &.tag-4:before{ border-color: $cat4;}
  185. &.tag-5:before{ border-color: $cat5;}
  186. &.tag-6:before{ border-color: $cat6;}
  187. &.tag-7:before{ border-color: $cat7;}
  188. &.tag-8:before{ border-color: $cat8;}
  189. span{
  190. // position: absolute;
  191. // z-index: -1;
  192. // font-size: 0.7em;
  193. @include fontnormal;
  194. font-weight: 300;
  195. white-space: nowrap;
  196. // opacity: 0;
  197. // transition: opacity 0.3s ease-in-out;
  198. padding:0.15em 0.3em;
  199. // width:0;
  200. }
  201. // &:hover{
  202. // span{ opacity: 1; width:auto; z-index: 10;}
  203. // }
  204. }
  205. // &.active span{
  206. // display:inline-block;
  207. // position:relative;
  208. // &:after{
  209. // content: ""; height:0;
  210. // display: block; margin-top:-.7em; margin-bottom:.7em;
  211. // border-top:0.5em solid $maincolor;}
  212. // }
  213. }
  214. @media #{$medium-up}{
  215. &:hover{
  216. li{
  217. height:1.1em; transition: height 0.5s ease-out;
  218. &:hover span{
  219. // border-bottom: 1px solid #000;
  220. text-decoration: underline;
  221. }
  222. }
  223. }
  224. }
  225. }
  226. #right-nav{
  227. text-align: right;
  228. // margin-left: -0.1rem;
  229. line-height:0.5;
  230. a{@include fontnormal;}
  231. a:hover{@include fontnormal; text-decoration: underline;}
  232. }
  233. div.line{
  234. // position: absolute;
  235. bottom: 0;
  236. height: 1px;
  237. // width: 100%;
  238. // box-sizing: border-box;
  239. content:" ";
  240. border-bottom: 1px solid $secondcolor;
  241. }
  242. }
  243. /*
  244. _____ _
  245. / ____| | |
  246. | | ___ _ __ | |_ ___ _ __
  247. | | / _ \ '_ \| __/ _ \ '__|
  248. | |___| __/ | | | || __/ |
  249. \_____\___|_| |_|\__\___|_|
  250. */
  251. @mixin catlist {
  252. margin:0;
  253. ul{
  254. margin: 0;
  255. li{
  256. position: relative;
  257. display: inline-block;
  258. // line-height: $catRadius;
  259. min-width:$catRadius; height:$catRadius;
  260. margin-right: -0.2em;
  261. a{
  262. display: block;
  263. &:before{
  264. content:"";
  265. opacity: 1;
  266. position: relative;
  267. display:inline-block;
  268. border-width: 3px;
  269. border-style: solid;
  270. // line-height: $catRadius;
  271. width:$catRadius; height:$catRadius;
  272. border-radius: $catRadius/2;
  273. }
  274. &.tag-1:before{ border-color: $cat1;}
  275. &.tag-2:before{ border-color: $cat2;}
  276. &.tag-3:before{ border-color: $cat3;}
  277. &.tag-4:before{ border-color: $cat4;}
  278. &.tag-5:before{ border-color: $cat5;}
  279. &.tag-6:before{ border-color: $cat6;}
  280. &.tag-7:before{ border-color: $cat7;}
  281. &.tag-8:before{ border-color: $cat8;}
  282. span{
  283. position: absolute;
  284. z-index: -1;
  285. font-size: 0.7em;
  286. font-weight: 300;
  287. background-color: #fff;
  288. white-space: nowrap;
  289. opacity: 0;
  290. transition: opacity 0.3s ease-in-out;
  291. padding:0.2em 0.3em;
  292. width:0;
  293. }
  294. &:hover{
  295. span{ opacity: 1; width:auto; z-index: 10;}
  296. }
  297. }
  298. }
  299. }
  300. }
  301. div#center{
  302. padding-top:$centerpaddingtop;
  303. padding-bottom: $centerpaddingbottom;
  304. .columns{
  305. padding: 0;
  306. }
  307. p{
  308. line-height:1.5;
  309. position:relative;
  310. @include fontnormal;
  311. span.stab{
  312. display:inline-block; position:relative;
  313. font-weight:bold;
  314. }
  315. a{
  316. text-decoration: underline;
  317. }
  318. }
  319. /*
  320. * LIST PROJET
  321. */
  322. .projet-block{
  323. padding:0.7em 0.7em 2em;
  324. text-align: left;
  325. nav.categories{
  326. @include catlist;
  327. }
  328. a.image-link{
  329. display: block;
  330. overflow: hidden;
  331. img{
  332. transition: transform 0.4s ease-out;
  333. &:hover{
  334. transition: transform 0.2s ease-in-out;
  335. transform-origin: center;
  336. transform: scale(1.2);
  337. }
  338. }
  339. }
  340. header{
  341. position:relative;
  342. // margin-top:0;padding-top:0;
  343. margin-top: -3em; padding-top: 3.5em; padding-bottom: 0.7em;
  344. // transition:background-color 0.3s ease-in;
  345. }
  346. header>*{
  347. font-family: $font;
  348. // text-align: center;
  349. padding:0; margin:0;
  350. }
  351. h1{
  352. @include fontbold;
  353. color: $maincolor;
  354. margin:0.4em 0 0.5em 0;
  355. line-height: 1.6;
  356. height:auto;
  357. span.date{
  358. font-weight: 200;
  359. border-left: 1px solid $maincolor;
  360. padding:0.2em 0 0 0.5em;
  361. margin-left: 0.2em;
  362. }
  363. }
  364. h2{
  365. @include fontnormal;
  366. margin:0.4em 0 0;
  367. line-height: 1;
  368. a{color: $maincolor;}
  369. }
  370. &.projet-block-text{
  371. text-align: left;
  372. h1{margin-bottom: 0.3em;}
  373. h2{
  374. // font-weight:bold;
  375. @include fontbold;
  376. margin-bottom: 0.3em;
  377. }
  378. }
  379. &:hover{
  380. // header{
  381. // background-color: rgba($maincolor, 0.7); transition-timing-function: ease-out;
  382. // h1:after{border-top:0.5em solid #FFF;transition-timing-function: ease-out;}
  383. // }
  384. }
  385. }
  386. /*
  387. * PAGE PROJET
  388. */
  389. .projet{
  390. .row{margin:0;}
  391. nav.categories{
  392. @include catlist;
  393. padding:0.7em 0.7em 0;
  394. }
  395. h1{
  396. @include fontbold;
  397. color: $maincolor;
  398. margin:0.4em 0 0.5em 0;
  399. padding:0 0.7em;
  400. line-height: 1.6;
  401. height:auto;
  402. span.date{
  403. font-weight: 200;
  404. border-left: 1px solid $maincolor;
  405. padding:0.2em 0 0 0.5em;
  406. margin-left: 0.2em;
  407. }
  408. }
  409. h2{
  410. @include fontnormal;
  411. margin:0.3em 0 0.7em;
  412. padding:0 0.7em;
  413. line-height: 1;
  414. color:$maincolor;
  415. a{color: $maincolor;}
  416. }
  417. p{padding:0 0.7em 0.7em; margin:0;}
  418. #images{
  419. // .row{margin:0;}
  420. // .block{padding:0.7em;}
  421. letter-spacing: 0px;
  422. a{
  423. letter-spacing: normal;
  424. display: inline-block;
  425. margin:0.7em 0 0 0.7em;
  426. }
  427. }
  428. img{
  429. // width:100%;
  430. max-width:100%;
  431. height:300px;
  432. }
  433. }
  434. .default{
  435. >*{padding-left:0.7em;padding-right:0.7em;}
  436. }
  437. // body.projet{
  438. // nav.categories{
  439. // ul.tags li a:hover span{
  440. // text-decoration: underline;
  441. // }
  442. // }
  443. // }
  444. /*
  445. * Catégories
  446. */
  447. // body
  448. nav.categories{
  449. margin: 1em 0;
  450. ul.tags{
  451. margin:0; padding:0; text-align:center;
  452. li{
  453. list-style: none; display:inline-block;
  454. margin:0 1em;
  455. a{
  456. display:block;
  457. // &:hover{text-decoration: underline;}
  458. &:before{
  459. content:"";
  460. opacity: 1;
  461. position: relative;
  462. display:inline-block;
  463. border-width: 3px;
  464. border-style: solid;
  465. // line-height: $catRadius;
  466. width:$catRadius; height:$catRadius;
  467. border-radius: $catRadius/2;
  468. }
  469. &.tag-1:before{ border-color: $cat1;}
  470. &.tag-2:before{ border-color: $cat2;}
  471. &.tag-3:before{ border-color: $cat3;}
  472. &.tag-4:before{ border-color: $cat4;}
  473. &.tag-5:before{ border-color: $cat5;}
  474. &.tag-6:before{ border-color: $cat6;}
  475. &.tag-7:before{ border-color: $cat7;}
  476. &.tag-8:before{ border-color: $cat8;}
  477. }
  478. span{@include fontnormal;}
  479. &.active span{
  480. // display:inline-block;
  481. // position:relative;
  482. // font-weight: bold;
  483. // @include fontbold;
  484. // border-bottom: 1px solid #000;
  485. // line-height: 0.2;
  486. // &:after{
  487. // content: ""; height:0;
  488. // display: block; margin-top:-0.2em; margin-bottom:0.2em;
  489. // border-top:0.5em solid $maincolor;}
  490. }
  491. }
  492. }
  493. }
  494. // #diaporama{
  495. // position:relative;
  496. // height:20vw;
  497. // margin:0 0 1.5em;
  498. // >*{
  499. // position:absolute; top:0; left:0;
  500. // height:100%; width:100%;
  501. // text-align: center;
  502. // opacity:0;
  503. // transition: opacity 0.2s ease-in;
  504. // &.visible{opacity:1;}
  505. //
  506. // img{height:100%;}
  507. // }
  508. // }
  509. // .client-block{
  510. // margin:0 0 1em;
  511. // padding:0.7em;
  512. // h3{
  513. // @include fontbold;
  514. // line-height:0.6; display:inline-block; position:relative;
  515. // margin:0; padding:0;
  516. // // $maincolor overline
  517. // // &:after{
  518. // // content: "";
  519. // // display: block; margin-top:-.5em; margin-bottom:.5em;
  520. // // border-top:0.5em solid $maincolor;
  521. // // transition:border-color 0.3s ease-in;
  522. // // }
  523. // }
  524. // h4{
  525. // margin:0;
  526. // @include fontnormal;
  527. // a:hover{text-decoration: underline;}
  528. // }
  529. //
  530. // }
  531. }
  532. /*
  533. _ _ _
  534. (_) | | | |
  535. _ __ ___ ___ _ __ ___ _ __ ___ ___ _____ | | __ _ _ _ ___ _ _| |_
  536. | '__/ _ \/ __| '_ \ / _ \| '_ \/ __| \ \ / / _ \ | |/ _` | | | |/ _ \| | | | __|
  537. | | | __/\__ \ |_) | (_) | | | \__ \ |\ V / __/ | | (_| | |_| | (_) | |_| | |_
  538. |_| \___||___/ .__/ \___/|_| |_|___/_| \_/ \___| |_|\__,_|\__, |\___/ \__,_|\__|
  539. | | __/ |
  540. |_| |___/
  541. */
  542. @media #{$small-only}{
  543. header#top-bar{
  544. &:before{
  545. padding-bottom: $headerpaddingtopH*0.5;
  546. }
  547. #title-area{
  548. height:$titleareaH -3.1em;
  549. // padding-top: $headerpaddingtopH;
  550. h1{
  551. height:100%;
  552. min-height:($titleareaH - 3.1em)*0.8;
  553. a{display: block;
  554. height:$logoH - 3em;
  555. // height:100%;
  556. }
  557. }
  558. }
  559. &.reduced{
  560. #title-area{
  561. height:($titleareaH - 3.1em)*$titleReducedFactor;
  562. // overflow: hidden;
  563. }
  564. }
  565. .nav{
  566. position:absolute;
  567. top:$headerborderH+$headerpaddingtopH*0.5;
  568. height:auto;
  569. }
  570. #left-nav{left:0;}
  571. #right-nav{right:0;}
  572. }
  573. div#center{
  574. padding-top:$centerpaddingtop - 1.1em;
  575. padding-bottom: $centerpaddingbottom;
  576. }
  577. body.categories{
  578. a.projet-img{
  579. display:none;
  580. }
  581. }
  582. }
  583. /*
  584. __ _
  585. / _| | |
  586. | |_ ___ ___ | |_ ___ _ __
  587. | _/ _ \ / _ \| __/ _ \ '__|
  588. | || (_) | (_) | || __/ |
  589. |_| \___/ \___/ \__\___|_|
  590. */
  591. footer#bottom-bar{
  592. position:absolute; bottom:0;
  593. width:100%; height:$footerheight;
  594. background-color: $maincolor;
  595. color: white;
  596. text-align: center;
  597. padding:1em 0;
  598. // margin: 5vh 0 0;
  599. h1{
  600. @include fontbold; height:auto; display:inline-block; position:relative; margin:0;
  601. color: inherit;
  602. a{
  603. font-weight: inherit;
  604. color: inherit;
  605. }
  606. // &:after{
  607. // content: ""; height:0;
  608. // display: block; margin-top:-.9em; margin-bottom:1em;
  609. // border-top:0.5em solid #fff;
  610. // transition:border-color 0.3s ease-in;}
  611. }
  612. address{
  613. // font-size: 1em; font-weight: normal;
  614. @include fontnormal;
  615. margin:-0.7em 0 0; line-height: 1.1; font-style: normal;
  616. a{text-decoration: underline;}
  617. }
  618. }
  619. div.featherlight:last-of-type{
  620. background-color: rgba(255,255,255,0.9);
  621. div.featherlight-content{
  622. background: none;
  623. span.featherlight-next, span.featherlight-previous{
  624. // left:90%;
  625. // outline: 1px solid red;
  626. &:hover{
  627. background: none;
  628. }
  629. span{
  630. // outline: 1px solid green;
  631. color:$maincolor;
  632. text-shadow: none;
  633. visibility: hidden;
  634. position: relative;
  635. left:0; right:0;
  636. width:100%;
  637. &:after{
  638. // outline: 1px solid purple;
  639. content:">";
  640. display: block;
  641. visibility: visible;
  642. position: absolute;
  643. top:0; width:100%;
  644. text-align: right;
  645. padding:0 0.5em;
  646. // @include font;
  647. font-weight: 500;
  648. font-size: 1.2em;
  649. }
  650. }
  651. }
  652. span.featherlight-previous{
  653. // left:25px;
  654. // right:90%;
  655. span{
  656. &:after{
  657. content:"<";
  658. text-align: left;
  659. }
  660. }
  661. }
  662. }
  663. }