/* ==================================================== */
/* Normalisation
/* ==================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {display: block; }
audio, canvas, video {display: inline-block; }
audio:not([controls]) {display: none; height: 0; }
[hidden] {display: none; }

html {font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea {font-family: sans-serif; }
body {margin: 0; position: relative}
table {border-collapse: collapse; border-spacing: 0; }

a:focus {outline: thin dotted; }
a:active, a:hover {outline: 0; }

h1 {font-size: 2em; margin: 0.67em 0; }
h2 {font-size: 1.5em; margin: 0.83em 0; }
h3 {font-size: 1.17em; margin: 1em 0; }
h4 {font-size: 1em; margin: 1.33em 0; }
h5 {font-size: 0.83em; margin: 1.67em 0; }
h6 {font-size: 0.75em; margin: 2.33em 0; }

abbr[title] {border-bottom: 1px dotted; }
b, strong {font-weight: bold; }
blockquote {margin: 1em 40px; }
dfn {font-style: italic; }
mark {background: #ff0; color: #000; }
p, pre {margin: 1em 0; }
code, kbd, pre, samp {font-family: monospace, serif; font-size: 1em; }
pre {white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q {quotes: none; }
q:before, q:after {content: ''; content: none; }
small {font-size: 80%; }
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup {top: -0.5em; }
sub {bottom: -0.25em; }
dl, menu, ol, ul {margin: 1em 0; }
dd {margin: 0 0 0 40px; }

menu, ol, ul {padding: 0 0 0 40px; }
nav ul, nav ol {list-style: none; list-style-image: none; }

img {border: 0; -ms-interpolation-mode: bicubic; }
svg:not(:root) {overflow: hidden; }
figure {margin: 0; }

form {margin: 0; }
fieldset {border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
legend {border: 0; padding: 0; white-space: normal; }
textarea {overflow: auto; vertical-align: top; }
button, input, select, textarea {font-size: 100%; margin: 0; vertical-align: baseline; }
button, input {line-height: normal; }
button, html input[type="button"], input[type="reset"], input[type="submit"] {-webkit-appearance: button; cursor: pointer; }
button[disabled], input[disabled] {cursor: default; }
input[type="checkbox"], input[type="radio"] {box-sizing: border-box; padding: 0; }
input[type="search"] {-webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {-webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner {border: 0; padding: 0; }


/* ==================================================== */
/* Général
/* ==================================================== */
html {
  padding: 2em;
  background: radial-gradient(ellipse at center, rgba(0,0,0,0) 50%,rgba(0,0,0,0.5) 100%) center fixed,
              url('images/photo-fond.jpg') no-repeat center fixed;
  background-color: #000;
  background-size: 100% 100%, cover;
}

body {
  margin: 5em auto;
  padding: 0;
  border-radius: 6px;
  background: #fff url('images/texture-fond.jpg');
  background-clip: padding-box;
  max-width: 38em;

  font: 1.125em/1.3 'Brandon Grotesque', 'Trebuchet MS', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

address dt { color: #ffd200; }

a {
  color: inherit;
  text-decoration: none;
  outline: none;
}

p {
	margin-top: 0;
}
	p + p {
		margin-top: 1em;
	}

body > header {
  padding: 6em 4em 4em;
}

body > header h1 { margin: 0 0 1em 0; }
body > header h1 img {
  display: block;
  width: 50%;
  height: auto;
  margin: auto;
}

p.intro {
  text-align: center;
  font-size: 1.125em
}

h1, h2, h3, a, button, label, header, footer { font-family: 'Brandon Grotesque', 'Trebuchet MS', 'Helvetica Neue', Helvetica, Arial, sans-serif }

h1 {
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ffd200;
}

.social-medias,
.facebook-like {
	position: absolute;
	right:0;
	top:-3.5em;
	vertical-align: middle;
}

.social-medias a {
	color: #FFF;
	display: inline-block;
	vertical-align: top;
	font-size: 125%;
	line-height: 1em;
}

div[role="main"] { 
  border-bottom: 1px dashed #ddd;
}

div[role="main"] > section {
  position: relative;
  padding: 0;
  border-top: 1px dashed #ddd;
}
div[role="main"] > section + section { background-position: right top; }
div[role="main"] > section + section + section { background-position: left top; }

div[role="main"] > section > h1,
div[role="main"] > section h1.sticky_menu {
  position: relative;
  top: 0;
  cursor: pointer;
  margin: 0;
  padding: 1em 0;
  color: inherit;

  font-size: 1.5em;
  line-height: 1em;
  text-align: center;
}

div[role="main"] > section > h1:after,
div[role="main"] > section h1.sticky_menu:after {
  content: '›';
  position: absolute;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);


  color: #ffd200;
}

div[role="main"] > section > h1:after {
  opacity: 0;
  transition: left 0.2s, right 0.2s, opacity 0.2s;
}

div[role="main"] .active h1:after,
div[role="main"] .active h1.sticky_menu:after { 
  -webkit-transform: rotate(-45deg); 
  transform: rotate(-45deg); 
	content: '+';

}
div[role="main"] > section > h1:after,
div[role="main"] > section h1.sticky_menu:after { right: 15%; }
div[role="main"] > section > h1:hover:after,
div[role="main"] > section h1.sticky_menu:hover:after { opacity: 1; }
div[role="main"] > section > h1:hover:after,
div[role="main"] > section h1.sticky_menu:hover:after { right: 3em; }

div[role="main"] > section > h1 + *,
div[role="main"] > section .sticky-wrapper + *  { 
  padding: 2em 4em 0;
  margin-bottom: 4em; 
}

.stuck{
  background-color: white;
  position: fixed !important;
}


#menus section+section,
#buffets section+section { margin: 4em 0; }

#menus section > h2,
#buffets section > h2,
#buffets-des-fetes section > h2 {
  margin: 0 0 -0.5em;
  font-size: 2.5em;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  color: #ffd200;
}



/*
#buffets section > h2 {
	margin-bottom: 1em;
}
*/

.menu { 
  padding: 0;
  margin: -2%;
}
.menu > * {
  display: inline-block;
  width: 45%;
  margin: 0 2% 2em;
  vertical-align: top;
}
.menu > * > img { 
  display: block;
  margin: auto;
  max-width: 100%;
  height: auto;
}
.menu > * > h3 { 
  text-align: center; 
  margin: 0;
}
.menu > * > .prix { 
  margin: 0;
  padding-bottom: 1em;
  text-align: center;
  border-bottom: 1px dashed #ccc;
}
.menu > * ul {
  padding: 0;
  padding-left: 1em;
  list-style-type: circle;
  line-height: 1.25;
}

.menu ul li {
	margin-bottom: .75em;
}

#buffets-des-fetes,
#buffets {
	text-align: center;
}

#buffets h3,
#buffets-des-fetes h3 { 
  text-align: center; 
  margin: 0;
}


input, textarea {
  background: none;
  border: none;
  border-bottom: 2px solid #ccc;
  padding: 1% 0;

  font: inherit;
}
input:focus, textarea:focus { border-color: inherit; }

button,
.button {
  background: none;
  border: 5px solid #ffd200;
  border-radius: 5px;
  padding: 0.25em 1em;
  background: transparent;
  transition: background 0.2s;
  min-width: 32%;

  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
button:hover, .button:hover { background: #ffd200; }

button.small,
.button.small {
	font-size: 0.85em;
	display: inline-block;
	margin-top: 5%;
	padding:0.5em 0;
	width: 45%;
	border: 0;
	background: #222;
	color: #FFF;
	
}

.button.small:hover {
	background: #ffd200;
}

.button.small:nth-child(2n) {
	margin-left: 5%;	
}

.button.small.auto {
	width: auto;
	padding: 0.5em 1em;
}

.button.small.auto.center {
  display: block; margin-left: auto; margin-right: auto;
  width: auto;
  padding: 0.5em 1em;
}

#contact-coord { 
  overflow: hidden;
}
#contact-coord > p { 
  display: block;
  float: left;
  width: 32%;
  margin: 0 1%;
}
#contact-coord > p:first-child { margin-left: 0; }
#contact-coord > p:last-child { margin-right: 0; }

#commande form p { 
  position: relative; 
  padding-bottom: 1.5em;
}

#commande form label {
  position: absolute;
  right: 0; bottom: 0; left: 0;
  display: block;
  padding: 0.25em 0;

  font-size: 0.75em;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ccc;
}
#commande input, #commande textarea {
  width: 100%;
  box-sizing: border-box;
}

#commande textarea { height: 8em; resize: none; }

.form-actions { text-align: right; }

body > footer {
  text-align: center;
  font-size: 0.85em;
  margin: 3em 0 0;
}

address {
  font-style: normal; 
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 4em;
  border-radius: 0 0 6px 6px;
}
address > * { margin: 0; }
address dl > * { display: inline; margin: 0; padding: 0; }
address dt {
  margin-right: -0.8em;
  text-transform: uppercase;
  font-weight: bold;
}
address dd + dt { margin-left: 0.5em; }



@media only screen 
and (min-device-width : 320px) 
and (max-device-width : 480px) {
	html {
		background: #FFF;
		padding: 0;
	}
	body {
		margin: 0;
		max-width: 100%;
		font-size: 2em;
		line-height: 1.25em;
	}
	div[role="main"],
	div[role="main"] > section {
		border-top-width: 2px;
	}
	
}

