﻿

/* styles globaux + resets */
html, body, ul { margin: 0; padding: 0; }
html { height: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { font: 100% "Open Sans", Arial, Helvetica, sans-serif; background: #f0f0f0; color: #464646; }
a { color: #464646; text-decoration: none; }
img { max-width: 100%; height: auto; border: 0; outline: none; vertical-align: middle; }
ul { list-style: none; }
input[type=button], input[type=image], input[type=submit], button { cursor: pointer; }


/* gabarit centrage + max-width responsive */
.inner-container { max-width: 900px; margin: 0 auto; padding: 0 15px; }
.ie8 .inner-container { width: 900px; }


/* transitions */
.main-header-logo, .main-header-nav > li > a, 
.main-header-nav .search-toggle, .search-field, .search-btn,
.header-nav > li > a, .liste-volets li a, 
.idee .bouton-vote, .idee .bouton-vote b, 
.load-more, .load-more:before,
.vote-commentaire input, .form-commentaire textarea, 
.user-textfield, .user-textarea, .user-btn { -webkit-transition: ease-in-out 0.15s; transition: ease-in-out 0.15s; }


/* header principal (monidee.ca) */
.main-header { position: relative; z-index: 4; background: #fff; font-size: 17px; }
.main-header .inner-container { position: relative; }
.main-header a { line-height: 40px; cursor: pointer; }
.main-header-logo { float: left; font-weight: 700; color: #c9c9c9; }
.main-header-logo:hover { color: #acacac; }
.main-header-logo:before { content: ""; display: inline-block; width: 18px; height: 27px; vertical-align: text-bottom; margin-right: 10px; background: url(../medias/header-logo-monidee.png) no-repeat; background-size: cover; }
/* navigation (base) */
.main-header-nav { position: absolute; right: 0; }
.main-header-nav a { display: block; padding: 0 15px; white-space: nowrap; text-overflow: ellipsis; color: #58585a; }
.main-header-nav ul { display: none; position: relative; z-index: 8; background: #fff; font-weight: 300; }
.main-header-nav > li { float: left; overflow: hidden; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
.main-header-nav li:hover ul, .main-header-nav .over ul { display: block; }
.main-header-nav li:hover > a, .main-header-nav .over > a, .main-header-nav a:hover, .search-toggle.actif { background: #acacac; color: #fff; }
.main-header-nav .nav-toggle > a {  min-width: 7.5em; }
.nav-toggle > a:after { content: ""; display: inline-block; width: 0; height: 0; margin-left: 10px; border-top: 10px solid #58585a; border-left: 10px solid transparent; border-right: 10px solid transparent; }
.nav-toggle:hover > a:after, .nav-toggle.over > a:after { border-top-color: #fff; }
.main-header-nav .nav-toggle:hover, .main-header-nav .nav-toggle.over { box-shadow: 0px 0px 6px 3px rgba(204,204,204,0.5); }
/* zone recherche */
.main-header-nav .search-toggle a { min-width: 0; padding: 8px 10px; }
.main-header-nav .search-toggle a:after { display: none; }
.search-toggle .ir, .search-btn .ir { width: 24px; height: 24px; background-image: url(../medias/header-search.png); background-size: 24px 48px; }
.search-toggle:hover .ir, .search-toggle.over .ir, .search-toggle.actif .ir, .search-btn .ir { background-position: 0 100%; }
.search-toggle.actif { margin-top: 4px; border-radius: 0; border-top-left-radius: 10px; border-top-right-radius: 10px; }
.search { display: none; position: relative; z-index: 5; clear: both; color: #fff; background: #acacac; border-radius: 10px; }
.search form { position: relative; padding: 15px 55px 15px 15px; }
.search-field { width: 100%; margin: 0; padding: 10px; border: none; -webkit-border-radius: 0; border-top-left-radius: 5px; border-bottom-left-radius: 5px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; font: 14px "Open Sans", Arial, Helvetica, sans-serif; }
.search-btn { position: absolute; right: 15px; top: 15px; bottom: 15px; width: 40px; background: #6b6d6e; border-top-right-radius: 5px; border-bottom-right-radius: 5px; }
.search-btn .ir { margin: 8px 0 0 8px; }
.search-btn:focus, .search-btn:hover { background: #464646; }


/* header consultation */
.header { position: relative; z-index: 5; padding: 25px 0; border-bottom: 5px solid #fff; background: #f0f0f0; background: -webkit-linear-gradient(top, #ffffff 0%, #f0f0f0 100%); background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); box-shadow: 0 0 0 8px rgba(0,0,0,0.2); }
.header-logo { float: left; width: 40.55555555555556%; /* 365/900 */ }
.header-nav { float: right; width: 44.44444444444444%; /* 400/900 */ margin: 4.444444444444444% 0 0; /* 40/900 */ font-size: 24px; line-height: 1.2; font-weight: 300; text-align: center; }
.header-nav > li { margin: 5% 0 0; /* 20/400 */ }
.header-nav > li:first-child { margin-top: 0; }
.header-nav li a { display: block; padding: 0.9em 5% 1em; /* 20/400 */ border: 1px solid #464646; border-radius: 1.583333333333333em; /* 38/24 */ background: #f8f8f8; }
.header-nav > li:first-child > a:hover, .header-nav .nav-toggle:hover > a, .header-nav .nav-toggle.over > a { background: #464646; color: #fff; }
.header-nav .nav-toggle { position: relative; }
.header-nav .nav-toggle > a { position: relative; z-index: 6; }
.header-nav ul { display: none; position: absolute; left: 0; right: 0; margin: -1.5em 0 0; padding: 1.5em 0 0; border-bottom-left-radius: 1.541666666666667em; border-bottom-right-radius: 1.541666666666667em; background: #fff; }
.header-nav ul a { padding: 0.9em 5% 1em; /* 20/400 */ border: none; background: transparent; }
.header-nav ul a:hover { background: #acacac; color: #fff; }
.header-nav ul li:last-child a { border-bottom: none; }
.header-nav li:hover ul, .header-nav .over ul { display: block; box-shadow: 0px 0px 6px 3px rgba(204,204,204,0.5); }


/* zone titre/volet et description sommaire */
.title { position: relative; padding: 40px 0 0; background: #fff url(../medias/bg.jpg) no-repeat 50% 75%; background-size: cover; }
.title:after { content: "Photos : Nicolas Gagnon"; position: absolute; z-index: 2; right: 0.75em; top: 100%; margin-top: 0.25em; color: #000; opacity: 0.66; font-size: 10px; }
.title .inner-container { max-width: none; }
.title h1 { margin: 0.25em -15px 0; padding: 0.25em 0.25em 0.33em; font-size: 75px; line-height: 1; letter-spacing: -0.03em; background: rgba(136,136,136,0.8); color: #fff; text-align: center; }
.title small { display: block; margin: 0 -15px; padding: 0 0 1.5em; background: rgba(136,136,136,0.8); color: #fff; font-size: 18px; line-height: 1.2; font-weight: bold; text-align: center; }
.title .volet { display: block; width: 231px; margin: 0 auto; }
.description { padding: 30px 0; text-align: center; background: #ecf7fb; color: #464646; font-size: 20px; font-weight: 300; line-height: normal; }
.description p { margin: 0 0 1.5em; font: inherit; }
.description p:last-of-type { margin-bottom: 0; }


/* liste des volets */
.liste-volets { padding: 30px 0 20px; background: #fafafa; text-align: center; font-size: 22px; line-height: 1.2; }
.liste-volets h2 { margin: 0 0 0.1em; font-size: 36px; font-weight: 300; }
.liste-volets .view-all { font-weight: 300; color: #2e55a5; text-decoration: underline; }
.liste-volets .view-all:hover { text-decoration: none; }
.liste-volets ul { margin-top: 3.333333333333333%; /* 30/900 */ }
.liste-volets li { float: left; width: 50%; margin: 0 0 4.444444444444444%; /* 40/900 */ }
.liste-volets li:nth-child(2n+1) { clear: left; }
.liste-volets li a { position: relative; display: block; max-width: 231px; margin: 0 auto; }
.liste-volets li a:hover { color: #2e55a5; }
.liste-volets li img { display: block; }
.liste-volets li span { position: absolute; right: 15.1515%; /* 35/231 */ top: 6.4935%; /* 15/231 */ width: 40px; line-height: 40px; border-radius: 20px; margin: -20px -20px 0 0; font-size: 16px; background: #e2211c; color: #fff; }
.liste-volets li strong { display: block; margin-top: -0.5em; }
.liste-volets li small { display: block; margin-top: 0.25em; padding: 0 10px; font-size: 14px; }


/* liste des idées par volet */
/* filtre tous/top-3 */
.filter { position: relative; background: #f0f9fc; }
.filter .inner-container { overflow: hidden; }
.filter ul { padding-top: 4.444444444444444%; padding-bottom: 4.444444444444444%; /* 40/900 */ text-align: center; }
.filter li { display: inline-block; }
.filter li { border-left: 4px solid #4a4b4d; }
.filter li:first-child { border-left: 0; }
.filter li a { display: block; padding: 0 60px; font-size: 32px; line-height: 1; }
.filter li:first-child a { padding-left: 0; }
.filter li:last-child a { padding-right: 0; }
.filter li a:hover, .filter p a { color: #2e55a5; }
.filter .actif { font-weight: 700; }
/* disclaimer top 3 */
.filter p { margin-top: -2.222222222222222%; /* -20/900 */ margin-bottom: 4.444444444444444%; /* 40/900 */ line-height: 1.2; text-align: center; font-size: 20px; font-weight: 300; color: #acacac; }
.filter p:after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: #fff; }
.filter p a { white-space: nowrap; }
.filter p a:hover, .idee .auteur a:hover, .attachments a:hover { text-decoration: underline; }
/* pièces jointes (liste + fiche idées) */
.attachments { display: block; }
.attachments a { display: inline-block; line-height: 26px; max-width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #7b7b7b; }
.attachments a:before { content: ""; display: inline-block; width: 20px; height: 26px; margin: 0 10px 0 0; vertical-align: middle; background: url(../medias/icone-attachment.png) no-repeat; background-size: cover; }
/* liste des idées */
.liste-idees { padding: 48px 0; }
.liste-idees .null { text-align: center; }
.liste-idees .null h2 { font-size: 24px; font-weight: 400; }
.liste-idees .null h2 a { display: inline-block; color: #2e55a5; }
.liste-idees .null h2 a:hover { text-decoration: underline; }
.idee { overflow: hidden; margin: 0 0 5.333333333333333%; /* 48/900 */ padding: 0 19.44444444444444%; /* 175/900 */ background: #f9f9f9; border-radius: 11px; box-shadow: 0px 0px 8px 4px rgba(204,204,204,0.5); font-size: 24px; }
.idee.vote-ouvert { position: relative; background: #fff; }
.idee p { overflow: hidden; margin: 20px 0 15px; font-weight: 300; }
.idee .attachments { margin: 10px 0 0; font-size: 75%; }
.idee .auteur { overflow: hidden; margin: 0 -25px; padding: 15px 25px 0; color: #acacac; font-size: 17px; line-height: 1.2; }
.idee .auteur strong { float: left; margin: 0 10px 15px 0; }
.idee .auteur a { color: #acacac; }
.idee .auteur i { float: right; margin: 0 0 15px; font-style: normal; font-weight: 300; }
.idee .auteur b { position: relative; float: right; margin: -3px 0 10px 24px; padding: 0 5px 0 16px; line-height: 26px; border-radius: 6px; background: #6b6d6e; color: #fff; }
.idee .auteur b:before { content: ""; position: absolute; left: -12px; top: 50%; width: 25px; height: 34px; margin-top: -17px; background: url(../medias/badge-top3.png) no-repeat; }
.idee.vote-ouvert .auteur { background: #f9f9f9; }
.idee.vote-ouvert p { min-height: 100px; }
.idee .bouton-vote { position: absolute; top: 0; bottom: 0; width: 16.66666666666667%; /* 150/900 */ color: #fff; text-align: center; font-size: 20px; }
.idee .bouton-vote b, .form-commentaire:before { position: absolute; left: 0; right: 0; top: 50%; padding-top: 120px; height: 30px; line-height: 30px; margin-top: -75px; background-position: 50% 15%; background-repeat: no-repeat; }
.idee .bouton-vote.pour { left: 0; background: #2e55a5; box-shadow: inset -5px 0px 0px 0px #114784; border-top-left-radius: 11px; border-bottom-left-radius: 11px; }
.idee .bouton-vote.pour b, .pour .form-commentaire:before { background-image: url(../medias/vote-pour.png); }
.idee .bouton-vote.pour:hover { background: #114784; box-shadow: inset -5px 0px 0px 0px #0d3563; }
.idee .bouton-vote.pour:hover b { background-position: 50% 0; }
.idee .bouton-vote.contre { right: 0; background: #6b6d6e; box-shadow: inset 5px 0px 0px 0px #494a4b; border-top-right-radius: 11px; border-bottom-right-radius: 11px; }
.idee .bouton-vote.contre b, .contre .form-commentaire:before { background-image: url(../medias/vote-contre.png); }
.idee .bouton-vote.contre:hover { background: #494a4b; box-shadow: inset 5px 0px 0px 0px #252626; }
.idee .bouton-vote.contre:hover b { background-position: 50% 30%; }
.idee .statut-vote { margin: 0 -31.81818181818182%; padding: 10px 31.81818181818182%; /* 175/550 */ color: #fff; font-size: 17px; line-height: 1.2; }
.idee .statut-vote b { padding-right: 0.5em; }
.idee .statut-vote a { color: #fff; font-weight: 300; }
.idee .statut-vote a:hover { text-decoration: underline; }
.idee .statut-vote.pour { background: #2e55a5; }
.idee .statut-vote.contre { background: #6b6d6e; }


/* banners (stats footer, commentaires) */
.banner { display: block; position: relative; margin: 15px -15px; padding: 0.35em 30px 0.25em; background: #69a936; color: #fff; font-size: 14px; line-height: 1.2; font-weight: 700; }
.banner:before, .banner:after { content: ""; position: absolute; top: -7px; width: 0; height: 0; border-top: 7px solid transparent; }
.banner:before { left: 0; border-right: 15px solid #407429; }
.banner:after { right: 0; border-left: 15px solid #407429; }
.banner.pour { background: #2e55a5; }
.banner.pour:before { border-right-color: #114886; }
.banner.pour:after { border-left-color: #114886; }
.banner.contre { background: #87888a; }
.banner.contre:before { border-right-color: #525354; }
.banner.contre:after { border-left-color: #525354; }


/* bouton chargement */
.load-more { position: relative; display: block; margin-top: 7.111111111111111%; /* 64/900 */ padding-top: 40px; text-align: center; color: #acacac; font-size: 15px; font-weight: 400; cursor: pointer; }
.load-more:before, .load-more:after { content: ""; position: absolute; left: 50%; top: 0; width: 0; height: 0; margin-left: -56px; border-top: 18px solid #acacac; border-left: 56px solid transparent; border-right: 56px solid transparent; }
.load-more:after { top: -1px; border-top-color: #f0f0f0; }
.load-more:hover { color: #6b6d6e; }
.load-more:hover:before { border-top-color: #6b6d6e; }


/* fiche d'idée */
.fiche-idee .inner-container, .vote-commentaire .inner-container, .liste-commentaires .inner-container { max-width: 820px; padding: 0 4.878048780487805%; /* 40/820 */ font-weight: 300; } /* overrides largeur max. */
.ie8 .fiche-idee .inner-container, .ie8 .vote-commentaire .inner-container, .ie8 .liste-commentaires .inner-container { width: 820px; }
.fiche-idee { background: #f0f9fc; font-size: 36px; }
.fiche-idee p { margin: 0; padding: 4.878048780487805% 0 3.658536585365854%; /* 40 et 30/820 */ }
.fiche-idee .attachments { margin: 2.439024390243902% 0 0; /* 20/820 */ font-size: 56%; font-weight: normal; }
.fiche-idee .auteur { padding: 0 0 4.878048780487805%; color: #acacac; font-size: 21px; }
.fiche-idee .auteur a { float: right; margin-left: 10px; color: #2e55a5; }
.fiche-idee .auteur a:hover { text-decoration: underline; }
/* commentaire suite au vote + communs avec interactions usager */
.vote-commentaire, .user-box { position: relative; z-index: 4; background: #6b6d6e; }
.vote-commentaire.pour { background: #2e55a5; }
.form-commentaire, .user-content { position: relative; min-height: 150px; padding: 30px 0 30px 17.07317073170732%; /* 140/820 */ color: #fff; font-size: 22px; }
.form-commentaire:before { content: "Contre"; left: 0; right: auto; width: 88px; text-align: center; font-weight: 700; }
.pour .form-commentaire:before { content: "Pour"; }
.form-commentaire h2 { margin: 0; font-size: 100%; }
.form-commentaire textarea, .user-textfield, .user-textarea { width: 100%; margin: 15px 0 0; padding: 10px; border: none; font: 14px "Open Sans", Arial, Helvetica, sans-serif; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.ie8 .form-commentaire textarea, .ie8 .user-textfield, .ie8 .user-textarea { font-family: Arial, Helvetica, sans-serif; } /* fix caractère password pour IE8 */
.form-commentaire textarea:focus, .user-textfield:focus, .user-textarea:focus, .search-field:focus { box-shadow: 0 0 10px 0 #fff; }
.form-commentaire input::-moz-focus-inner, .user-btn::-moz-focus-inner { padding: 0; border: 0; }
.form-commentaire input, .user-btn { display: inline-block; margin: 15px 0 0; padding: 0.5em 20px; border: 0; border-radius: 4px; background: #868686; color: #fff; font: 18px/1.2 "Open Sans", Arial, Helvetica, sans-serif; text-align: left; white-space: normal; }
.form-commentaire input, input.user-btn { -webkit-appearance: button; }
.form-commentaire input:focus, .form-commentaire input:hover, .user-btn:focus, .user-btn:hover { background: #474747; }
.pour .form-commentaire input { background: #5c8bc0; }
.pour .form-commentaire input:focus, .pour .form-commentaire input:hover { background: #114886; }
.form-commentaire .bt-annuler, .user-btn-alt { float: right; }
/* derniers commentaires */
.liste-commentaires { overflow: hidden; position: relative; z-index: 3; padding: 0 0 30px; box-shadow: 0px 0px 21px 12px rgba(0,0,0,0.21); }
.liste-commentaires h2 { margin: 0; padding: 4.878048780487805% 0 0; /* 40/820 */ line-height: 1; font-size: 21px; font-weight: 300; color: #acacac; }
.liste-commentaires .load-more { margin-top: 4.878048780487805%; /* 40/820 */ }
.commentaire { position: relative; float: left; clear: left; width: 45.48780487804878%; /* 373/820 */ max-width: 333px; margin: 4.878048780487805% 0; /* 40/820 */ margin-right: 9.024390243902439%; /* 74/820 */ background: #fff; }
.ie8 .commentaire { clear: none; }
.commentaire:nth-of-type(even) { float: right; clear: right; margin-right: 0; }
.commentaire p { overflow: hidden; margin: 20px 15px; font-size: 18px; }
.commentaire i { position: absolute; left: 7.807807807807808%; /* 26/333 */ top: 100%; padding: 5px 0 0 64px; font-size: 15px; font-weight: 400; font-style: normal; line-height: 1.2; color: #acacac; }
.commentaire i:before { content: ""; position: absolute; left: 0; top: 0; width: 0; height: 0; border-top: 30px solid #fff; border-left: 50px solid transparent; }


/* interactions usager (formulaires, alertes et confirmations) */
.user-box { background: #58585a; }
.user-box h2 { margin: 40px 0 0; font-size: 100%; }
.user-box h2:first-child { margin-top: 0; }
.user-content { min-height: 100px; padding: 40px 0 40px 23.33333333333333%; /* 210/900 */ font-weight: 300; }
.user-content:before { content: ""; position: absolute; left: 1.111111111111111%; /* 10/900 */ top: 30px; width: 150px; height: 156px; background: url(../medias/icone-mot-passe-oublie.png) no-repeat 0 50%; }
.user-label { display: block; margin: 30px 0 -5px; color: #ffb735; font-size: 16px; font-weight: 400; }
.user-textfield { font-size: 30px; font-weight: 300; }
.user-textfield.placeholder, .user-textarea.placeholder { color: #6b6c6c; opacity: 1; }
.user-textfield[readonly], .user-textarea[readonly], div.user-textarea { background: #dedede; color: #6b6c6c; }
.user-textfield[readonly]:focus, .user-textarea[readonly]:focus { box-shadow: none; }
.user-content p { margin: 25px 0 20px; font-size: 21px; }
/* alertes */
.alert .user-content { padding-top: 80px; padding-bottom: 50px; }
.alert .user-content:before { height: 200px; }
.success { background: #69a936; }
.success .user-btn { background: #92b378; }
.success .user-btn:hover, .success .user-btn:focus { background: #558033; }
.warning { background: #fc5000; }
.warning .user-btn { background: #e37d4d; }
.warning .user-btn:hover, .warning .user-btn:focus { background: #ab3600; }
.error { background: #e2211c; }
.error .user-btn { background: #c96c4d; }
.error .user-btn:hover, .error .user-btn:focus { background: #912804; }
/* icones propres aux sections */
.creation-compte .user-content:before { background-image: url(../medias/icone-creation-compte.png); }
.courriel-envoye .user-content:before { background-image: url(../medias/icone-courriel-envoye.png); }
.probleme .user-content:before { background-image: url(../medias/icone-probleme.png); }
.connexion .user-content:before { background-image: url(../medias/icone-connexion.png); }
.mot-passe-oublie .user-content:before { background-image: url(../medias/icone-mot-passe-oublie.png); }
.courriel-valide .user-content:before { background-image: url(../medias/icone-courriel-valide.png); }
.idee-revisee .user-content:before { background-image: url(../medias/icone-idee-revisee.png); }
.idee-publiee .user-content:before { background-image: url(../medias/icone-idee-publiee.png); }
.idee-refusee .user-content:before { background-image: url(../medias/icone-idee-refusee.png); }
/* autres items propres aux sections */
.user-btn.forgot-pwd { padding-right: 0; font-weight: 400; text-decoration: underline; background: transparent; }
.user-btn.forgot-pwd:hover { text-decoration: none; }
.idee-revisee .user-textarea:last-of-type { margin-bottom: 30px; }


/* footer (statistiques + partage) */
.footer { padding: 45px 0 60px; background: #acacac; line-height: 1.2; }
.footer .inner-container { max-width: 303px; padding-top: 15px; padding-bottom: 30px; border: 1px solid #acacac; border-width: 0 30px; background: #b9b9b9; color: #fff; font-size: 21px; font-weight: 300; }
.ie8 .footer .inner-container { width: 303px; }
.footer .banner { margin: 0 -30px 15px; }
.footer-stats { margin: 20px 0 30px; }
.footer-share-title { float: left; }
.footer-social { float: right; margin-bottom: 20px; }
.footer-social li { float: left; margin-left: 8px; }
.footer-social .ir { width: 24px; height: 24px; background-image: url(../medias/footer-social-sprite.png); }
.footer-social .twitter { width: 29px; background-position: -24px 0; }
.footer-share .url { clear: both; background: #f8f8f8; color: #464646; word-wrap: break-word; font-size: 50%; }
.footer-share .url:before { border-right-color: #cfcfcf; }
.footer-share .url:after { border-left-color: #cfcfcf; }


/* media queries */
/* min-widths: évite bug reflow initial dans IE11 */
@media screen and (min-width: 1px) and (max-width: 840px) {
	.main-header-nav .nav-toggle { border-bottom-right-radius: 0; }
	.user-content { padding-left: 0; font-size: 20px; }
	.user-content:before { position: static; float: left; width: 75px; height: 78px; margin: -15px 15px 15px 0; background-size: 75px auto; }
	.alert .user-content { padding-top: 40px; padding-bottom: 40px; }
	.alert .user-content:before { height: 100px; }
	.user-content p { font-size: 18px; }
	.user-textfield { font-size: 24px; }
}

@media screen and (min-width: 1px) and (max-width: 768px) {
	.header-nav { font-size: 20px; }
	.title { padding: 20px 0 0; }
	.title h1 { font-size: 45px;  }
	.title small { font-size: 16px; }
	.title .volet { width: 115px; }
	.filter li a { padding: 0 45px; font-size: 26px; }
	.filter p { font-size: 18px; }
	.idee .bouton-vote b { padding-top: 90px; margin-top: -60px; background-size: 65px 81px; }
	.fiche-idee { font-size: 30px; }
	.form-commentaire { padding-left: 0; font-size: 20px; }
	.form-commentaire:before { position: static; float: left; margin: -15px 4.878048780487805% 5px 0; padding-top: 64px; width: 54px; height: 20px; line-height: 20px; background-size: 44px 54px; font-size: 16px; }
}

@media screen and (min-width: 1px) and (max-width: 600px) {
	.header-nav .nav-toggle > a:after { margin-left: 6px; vertical-align: middle; border-width: 6px; }
	.header-nav { margin-top: 8.333333333333333%; /* 50/600 */ font-size: 13px; }
	.header-nav li a { padding: 0.6em 5px; }
	.description { font-size: 16px; }
	.filter li { border-width: 2px; }
	.filter li a { padding: 0 30px; font-size: 22px; }
	.filter p { font-size: 16px; }
	.attachments a:before { width: 15px; height: 20px; margin-right: 5px; }
	.liste-volets { font-size: 16px; }
	.liste-volets h2 { font-size: 28px; }
	.liste-volets li a { max-width: 175px; font-size: 16px; }
	.liste-volets li span { width: 30px; height: 30px; line-height: 30px; border-radius: 15px; margin: -15px -15px 0 0; font-size: 14px; }
	.liste-volets li small { font-size: 13px; }		
	.liste-idees { padding: 32px 0; }
	.liste-idees .null h2 { font-size: 20px; }
	.idee { margin: 0 0 30px; padding: 0 25px; font-size: 20px; }
	.idee.vote-ouvert { padding-bottom: 100px; }
	.idee.vote-ouvert p { min-height: 0; }
	.idee .auteur strong, .idee .auteur i, .fiche-idee .auteur a { float: none; display: block; margin-left: 0; margin-right: 0; }
	.idee .auteur strong { margin-bottom: 0.25em; }
	.idee .auteur, .idee .statut-vote, .fiche-idee .auteur { font-size: 16px; }
	.idee .bouton-vote { top: auto; width: 50%; height: 100px; font-size: 16px; box-shadow: none !important; }
	.idee .bouton-vote b { padding-top: 64px; margin-top: -42px; height: 20px; line-height: 20px; background-size: 44px 54px; }
	.idee .bouton-vote.pour { border-top-left-radius: 0; }
	.idee .bouton-vote.contre { border-top-right-radius: 0; }
	.banner { margin: 10px -10px; padding: 0.3em 20px 0.2em; }
	.banner:before, .banner:after { top: -5px; border-top-width: 5px; }
	.banner:before { border-right-width: 10px; }
	.banner:after { border-left-width: 10px; }
	.fiche-idee { font-size: 24px; }
	.fiche-idee .auteur a:before { content: "dans la catégorie " }
	.form-commentaire, .form-commentaire input, .user-content, .user-textfield, .user-btn, .fiche-idee .attachments { font-size: 16px; }
	.form-commentaire:before, .commentaire p, .user-content p, .user-label, .idee .attachments { font-size: 14px; }
	.commentaire p { margin: 10px; }
	.commentaire i { padding: 3px 0 0 48px; font-size: 13px; }
	.commentaire i:before { border-top-width: 20px; border-left-width: 40px; }
	.form-commentaire input, .user-btn { padding: 0.5em 10px; margin-right: 10px; }
	.user-btn-alt { float: none; }
	.liste-commentaires .load-more { margin-top: 45px; }
	.user-content p { margin: 15px 0 10px; }
	.footer { padding: 30px 0 45px; }
	.footer .inner-container { padding: 10px; border-width: 0 15px; }
	.footer .banner { margin: 0 -20px 10px; }
}

@media screen and (min-width: 1px) and (max-width: 480px) {
	.main-header { font-size: 14px; }
	.main-header-logo:before { width: 14px; height: 20px; margin-right: 5px; }
	.main-header-nav a { padding: 0 10px; }
	.main-header-nav .nav-toggle > a:after { margin-left: 6px; vertical-align: middle; border-width: 6px; }
	.main-header-nav .search-toggle a { padding: 12px 10px; }
	.search-toggle .ir, .search-btn .ir { width: 16px; height: 16px; background-size: 16px 32px; }
	.search form { padding: 10px 42px 10px 10px; }
	.search-field { padding: 5px; font-size: 13px; }
	.search-btn { right: 10px; top: 10px; bottom: 10px; width: 32px; }
	.search-btn .ir { margin-top: 6px; }
	.header { padding: 15px 0; border-bottom-width: 2px; }
	.header-logo { width: 48%; }
	.title:after { font-size: 8px; }
	.title h1 { font-size: 30px; }
	.title small { font-size: 13px; }		
	.title .volet { width: 77px; }
	.description { font-size: 14px; }
	.filter li a { padding: 0 15px; font-size: 16px; }
	.filter p { font-size: 14px; }
	.filter p:after { height: 2px; }
	.liste-volets h2 { font-size: 20px; }
	.liste-volets li a { font-size: 15px; }
	.liste-volets li small { font-size: 12px; }		
	.liste-idees .null h2 { font-size: 16px; }
	.idee { margin: 0 0 20px; padding: 0 15px; font-size: 16px; }
	.idee p { margin: 15px 0 10px; }
	.idee .auteur, .idee .statut-vote, .idee .bouton-vote, .fiche-idee .auteur { font-size: 14px; }
	.liste-idees .load-more { margin-top: 32px; }
	.fiche-idee, .liste-commentaires h2 { font-size: 18px; }
	.fiche-idee .inner-container, .vote-commentaire .inner-container, .liste-commentaires .inner-container { padding: 0 15px; }
	.form-commentaire, .user-content, .alert .user-content { padding: 20px 0; }
	.form-commentaire:before, .user-content:before { margin-top: 0; }
	.vote-commentaire .form-commentaire .bt-annuler { float: none; background: transparent; padding: 0.25em 10px; }
	.commentaire, .commentaire:nth-of-type(even) { float: left; width: 100%; max-width: 100%; margin: 15px 0 25px; }
	.user-box h2 { margin: 25px 0 0; }
	.user-label { margin-top: 20px; }
	.idee-revisee .user-textarea:last-of-type { margin-bottom: 10px; }
}

@media screen and (min-width: 1px) and (max-width: 360px) {
	.filter li a { font-size: 14px; }
	.footer .inner-container { max-width: 100%; }
}

@media screen and (min-width: 1px) and (max-width: 320px) {
	.header-nav { margin-top: 0; }
	.header-nav li a { padding: 0.6em 10px; }
	.header-logo { width: 50%; }
}

/* high DPI */
@media
	only screen and (-webkit-min-device-pixel-ratio: 1.5),
	only screen and (-o-min-device-pixel-ratio: 3/2),
	only screen and (min--moz-device-pixel-ratio: 1.5),
	only screen and (min-device-pixel-ratio: 1.5) {
		.main-header-logo:before { background-image: url(../medias/header-logo-monidee-2x.png); }
		.footer-social .ir { background-image: url(../medias/footer-social-sprite-3x.png); background-size: 53px 24px; }
		.idee .auteur b:before { background-image: url(../medias/badge-top3-3x.png); background-size: 25px 34px; }
		.attachments a:before { background-image: url(../medias/icone-attachment-2x.png); }
		.search-toggle .ir, .search-btn .ir { background-image: url(../medias/header-search-2x.png); }
}


/* classes helper non-sémantiques */
.ir { display: block; overflow: hidden; background-repeat: no-repeat; text-align: left; text-indent: -999em; direction: ltr; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; visibility: hidden; } 
.clearfix:after, .clear { clear: both; }
.clearfix { zoom: 1; }