html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike,  sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

body{
    font-family: 'Montserrat', sans-serif;
    color:#000;
}
a{ color: #000; }
em{ font-style: italic; }
.panel-page #center .content,
main form.user-pass,
main form.user-login-form,
main form.user-pass-reset,
.ctn{
    max-width:1084px;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
}
.ctn .ctn{ padding-left: 0; padding-right: 0; }
.center{ text-align: center; }
.right{ text-align: right; }
img.contain{ object-fit: contain !important; }
div.messages{ margin: 0 0 60px 0 !important; }
#logo{ width: 287px; height: auto; }
#header{ display: flex; max-width: 100%; align-items: center; justify-content: space-between; width: 100%; box-sizing: border-box; border-bottom: 1px solid rgba(219, 219, 230, 0.7); }
footer{ background: #000; color:#fff; text-align: center; padding: 40px 0; }
.semibold{ font-weight: 500; }

div.messages {  background-position: 8px center; /* LTR */  background-repeat: no-repeat;  border: 1px solid;  margin: 6px 0;  padding: 10px 10px 10px 50px; /* LTR */}
div.messages--status {  background-image: url(../img/message-24-ok.png);  border-color: #be7;}
div.messages--status,.messages--ok {  color: #234600;}
div.messages--status, table tr.ok {  background-color: #f8fff0;}
div.messages--warning {  background-image: url(../img/message-24-warning.png); border-color: #ed5;}
div.messages--warning, .warning { color: #840;}
div.messages--warning, table tr.warning { background-color: #fffce5;}
div.messages--error {background-image: url(../img/message-24-error.png);border-color: #ed541d;}
div.messages--error,.error { color: #8c2e0b;}
div.messages--error, table tr.error { background-color: #fef5f1;}
div.messages--error p.error { color: #333;}
div.messages ul { margin: 0 0 0 1em;padding: 0;}
div.messages ul li { list-style-image: none;}
h1#branding{ margin-bottom: 0; }
#wrapper{ min-height: 100vh; display: flex; justify-content: flex-start; flex-direction: column;}
#wrapper #header { flex-grow: 0; }
#center{ flex-grow: 1; }
#wrapper footer{ flex-grow: 0; }
.module-logo{ margin-bottom: 40px;}
.module-socials{ margin-bottom: 100px; }
.module-socials p{ display: inline-block; text-transform: uppercase; vertical-align: middle; font-weight: 700; font-size: 0.9rem; margin: 0 3px !important;}
.module-socials a{ width: 20px; height: 20px; display: inline-block; vertical-align: middle; margin: 0 3px; }
.module-socials a img{ display: block; }
footer{ flex-grow: 0; }
footer .block-menu{ border-top: 1px solid #fff; }
footer .block-menu ul{ display: flex; width: 100%; text-align: center; list-style: none; margin: 0; padding:10px 0; }
footer .block-menu ul > *{ flex: auto; list-style: none; }
footer .block-menu ul li a{ color: #fff; text-decoration: none; font-size: 0.9rem;  }

#logo-floater{ flex: auto; flex-grow: 0; min-width: 200px; margin-right: 40px; }
.main-menu{ display: flex; flex: auto; flex-grow: 0;  flex-basis: 600px;  }
.main-menu > *{ flex: auto; }
.main-menu a{ display:block; text-decoration: none; white-space: nowrap; }
.main-menu > li { padding-top: 50px; padding-bottom: 50px; }
.main-menu > li > a{ display:block; text-transform: uppercase; font-weight: 500; padding: 0 20px; font-size: 0.9rem; text-align: center;  }
.main-menu > li > a:hover{ font-weight: 900; }
.main-menu > li:last-child{ background:#DBDBE6; background:rgba(219,219,230,0.7); }
.main-menu li a.active,
.main-menu > li:has(.active) > a,
.main-menu > li.on > a{ font-weight: 900 !important; }
.main-menu .submenu{ position: absolute; width: 100%; left:0; z-index: 100; padding-top:50px; display: none; text-align: left; border-bottom: 1px solid rgba(219, 219, 230, 0.7); }
.main-menu .submenu-ctn{ padding: 50px 0; background: #fff; }
.main-menu .submenu li{ margin-bottom: 5px; }
.main-menu .on .submenu{ display: block; }
.main-menu .submenu-ctn > .ctn{ display: flex; }
.main-menu .submenu .submenu-title{ font-weight: 400; font-size: 40px; text-transform: uppercase; min-width: 45%; text-align: left; }
.main-menu .submenu ul li a{ display:block; text-transform: uppercase; font-weight: 500; padding: 5px 0; font-size: 0.9rem;  }
.main-menu .submenu ul li a:hover{ font-weight: 900; }
.languages{ display: flex; flex: auto; flex-shrink: 0; flex-grow: 0; margin-left: 50px;   }
.languages > li{ font-weight: 500; text-transform: uppercase; padding: 10px 2px; font-size: 0.9rem;}
.languages > li:last-child{ display: none; }
.languages .on{ font-weight: 900; }
.toggle-menu{ display: none; flex: none;  width: 50px; }
.burger-menu{ display: none; }
.burger-menu .languages{ display: flex; justify-content: flex-end; margin-right: 20px; gap: 0.5em; }

h1{ font-size: 70px; line-height: 63px; margin-bottom: 30px; text-align: center; }
h2{ font-size: 44px; line-height: 44px; font-weight: 700; margin-bottom: 30px; text-align: center; max-width: 1084px; }
h3{ font-size: 20px; margin-bottom: 20px; }
p{ font-weight: 500; font-size: 18px; line-height: 24px }
img{ max-width: 100%; }
/*img.rounded{ border-radius: 30px; filter: drop-shadow(0px 10px 10px #919191); }*/
strong.big{ font-size: 40px; font-weight: 500;}
.fs50{ font-size: 50px; line-height: 68px; }

body:not(.path-frontpage) main{ margin-bottom: 5em; }

.breadcrumb{ display: none; }
.module-video .controls{ position: absolute; padding-top: 15px; padding-left: 20px; z-index: 2000; }
.module-video .controls img{ width: 50px; display: block; cursor: pointer; }
.row{ display: flex; align-items: center; align-items: stretch;  }
.row > *{ flex:auto; }
.row h2{ margin-bottom: 15px; }
.row.row-2 > *{ flex-basis: 50%; }
.row.row-2 > .img{ flex-basis: calc(50% + 80px); }
.row .img img{ display: block; width: 100%; height: auto;}
.row p{  }

.row-banner{ margin-bottom: 3rem; }

.row-banner + .row-centered > .text:only-child{ padding-top: 0; }

.table{ display: flex; flex-direction: column; }
.table .row{ display: flex; }
.table .row > *{ display: flex;  padding: 20px; }
.table .row .text h2{ margin-left: 0; margin-right: 0; }

.block-video video{ max-width: 100%; display: block; width: 100%; height: auto; }

#expertise-1{ background: #DBDBE6; }
#expertise-1 h2{ text-align: center; }

.node--type-page-contenu h2{ margin: 60px 0; }
.node--type-page-contenu .row .text h2{ margin-top: 0; margin-bottom: 30px; }
.node--type-page-contenu .field--name-body > .field-items > .field-item > div > *:last-child{ padding-bottom: 0;  }


.row .text h3{ font-size: 38px; line-height: 42px; font-weight: normal; }
.row .text p{ font-size: 18px; font-weight: normal; margin-bottom: 30px }
.row .img{ width: 50%; }
.row .img img{ display: block; object-fit: cover; height:100%; }

.row-text-img{ padding-bottom: 0; flex-wrap: wrap; margin: 0 6rem 90px 6rem; }
.row-text-img .text h2{ text-align: left; margin: 0 0 20px 0 !important; }
/*.row-text-img .text{ background: #F0F0EF; }*/
.row-text-img .text{ background: #FFF; padding: 6rem 6rem; }
.row-text-img .text:first-of-type{ padding-left: 2rem; padding-right: 6rem; }
.row-text-img .text:last-of-type{ padding-left: 6rem; padding-right: 2rem; }
.row-text-img .img{ width: 35%; }
.row .text{  display: flex; box-sizing: border-box; flex-direction: column; justify-content: center; padding: 3rem 8rem;  width: 50%;}


.row + h2,
.row .text h2{ margin-left: auto; margin-right: auto; }

.row-centered{ justify-content: center; max-width: 1084px; margin-left: auto; margin-right: auto;  }
.row-centered .text{  text-align: center; padding-bottom: 0; max-width: 1084px; margin-left: auto; margin-right: auto;  }
.row-centered > .text:only-child{ padding-left: 0; padding-right: 0; padding-bottom: 3rem; }
.row-centered .text p{ margin-bottom: 20px; }
.row-centered .text p:last-child{ margin-bottom: 0px; }
.row-centered .text img{ }

.row-centered .intro{  text-align: center; }

.row-column{ flex-flow: column; max-width: 80vw; margin: auto; padding-bottom: 0; align-items: center; }
.row-column > * { flex: auto; }

.row-text-blacked { flex-flow: column; }
.row-text-blacked .text{ background: #000; margin-left: 10rem; margin-right: 10rem; margin-top: -6rem; width: auto; text-align: center; }
.row-text-blacked .text h3{ font-size: 24px; line-height: 36px; }
.row-text-blacked .img{ width: auto; }
.row-text-blacked .text *{ color:#fff; }

.page-vivog .row-centered .text{ max-width: 60vw; }
.page-sav .socials,
.page-minute-papillon .socials{ padding-top: 0; }
/*.page-expertise .row-column .text{ max-width: 80vw; }*/

.node .content .intro,
.node .content .intro p{ font-size: 26px; line-height: 32px; }
.node .content p.intro,
.node .content .intro p:last-child{ margin-bottom: 0; }

#expertise-2{ margin: 50px 0 ;}
#expertise-2 h2{ margin-bottom: 30px; text-align: center; }
#expertise-2 p img{ height: 80px; width:auto; }
#expertise-2 .logos{ border-top: 1px solid #000; margin: 20px 0; }
#expertise-2 .logos .logo{ background: url(../img/svg/fleche.svg) no-repeat center top; background-size: 10px auto;  padding-top: 10px; }
#expertise-2 .logos .logo:first-child{ margin-right: 20%; }
#expertise-2 .logos .logo img{ display: block; height: 50px; margin: auto; } 

#expertise-3{ margin: 50px 0 ;}
#expertise-3 .text{ padding-left: 0; }

#expertise-4 h2{ }
#expertise-4 .text:first-child{ background: #0E2788; color: #fff;  }
#expertise-4 .carte{ position: relative; width: 200px; margin:0 auto 20px auto; }
#expertise-4 .carte > br{ display: none; }
#expertise-4 .carte span{ position: absolute; font-weight: bold; text-transform: uppercase; white-space: nowrap;  }
#expertise-4 .carte span strong{ font-size: 24px; }
#expertise-4 .carte span.fr{ top: 20px; left: -35px; }
#expertise-4 .carte span.es{ top: 115px; left: 160px; }

#expertise-5{ margin: 50px 0; }
#expertise-5 h2{ text-align: center; margin-bottom: 30px;  }
#expertise-5 h3{ text-transform: uppercase; font-weight: 500; font-size: 16px; margin-bottom: 15px; }
#expertise-5 .row{ margin: 10px 10%; }
#expertise-5 .row .img{ margin-right: 20px; padding: 0; flex-basis: 50%; }
#expertise-5 .row .text{ margin-left: 20px; padding: 0; }


#atelier-1,
#atelier-3{ margin-bottom: 30px; }
#atelier-2{ margin-bottom: 60px; }
#atelier-1 .text{ padding: 0; }
#atelier-1 .img{ flex-shrink: 0; flex-basis: auto ;}
#atelier-1 .img img{ width: 400px; }
#atelier-1 .row{ margin-top: 20px; }
#atelier-1 .row img{ width: 200px; }
#atelier-3 h2{ text-align: center; }
#atelier-3 p { margin-bottom: 30px; }
#atelier-3 .row .text{ padding-right: 0; }
#atelier-3 .row .text p{ text-align: left; }

#accessoires-1{ margin-bottom: 20px; }
#accessoires-1 h1{ font-size: 60px; margin-bottom: 20px; text-align: left; margin-top: 20px; }
#accessoires-1 .img{ flex-basis: 35%; }
#accessoires-1 .text{ padding: 0 0 0 60px ; }
#accessoires-1 .text img{ max-width: 350px; }
#accessoires-2{ margin-bottom: 60px; }
#accessoires-2 .text{ flex-basis: 50%; padding-left: 0; }
#accessoires-2 .img{ flex-basis: 50%; }
#accessoires-3{ margin-bottom: 60px; }
#accessoires-3 .img{ position: relative; flex-basis: 50%; }
#accessoires-3 .img p{ position: absolute; color: #fff; bottom: 20px; left: 50px; }
#accessoires-3 .nb{ font-size: 60px; }
#accessoires-4{ margin-bottom: 30px; }
#accessoires-4 .text{ padding: 0 60px 0 0;}
#accessoires-5{ margin-bottom: 20px; }
#accessoires-5 .row:first-child{ margin-bottom: 20px; }
#accessoires-5 .text{ padding: 0 60px 0 0; flex-basis: 50%; }
#accessoires-5 .text img{ display: block; max-width: 300px; margin: 10px 0; }
#accessoires-5 .img{ width: 50%; }
#accessoires-6{ margin-bottom: 60px; }
#accessoires-6 .text{ padding: 0 0 0 60px; flex-basis: 50%; }
#accessoires-6 .img{ width: 50%; }

#accessoires-7{ margin-bottom: 60px; }
#accessoires-7 .text{ padding-left: 0 ; flex-basis: 50%; }
#accessoires-7 .img{ width: 50%; }

#accessoires-8{ background: url(../img/bg-vietnam@2x.png) repeat center center; padding: 60px 30px; margin-bottom: 60px; }
#accessoires-8 h2{ text-align: center; }
#accessoires-8 h3{  font-weight: bold; }
#accessoires-8 .text{ padding: 0 0 0 60px; flex-basis: 50%; }
#accessoires-8 .img{ width: 50%; }

#accessoires-9{ margin-bottom: 60px; }
#accessoires-9 h2{ margin-bottom: 15px; }
#accessoires-10{ margin-bottom: 60px; }
#accessoires-10 h2{ margin-bottom: 15px; }
#accessoires-10 .text{ padding-left: 0 ; flex-basis: 50%; }
#accessoires-10 .img{ width: 50%; }

#accessoires-11{ background: #84BD31; padding: 30px; margin-bottom: 60px;   }
#accessoires-11 h2{ text-align: center; color: #fff; }
#accessoires-11 p{ color: #fff; }
#accessoires-11 .text{ flex-basis: 50%; }
#accessoires-11 .text img{ max-width: 300px;  }
#accessoires-11 .img{ width: 35%; }

#accessoires-12{ margin-bottom: 60px; padding: 0 60px; }
#accessoires-12 .text{ padding-left: 0 ; flex-basis: 50%; }
#accessoires-12 .img{ width: 50%; }

#accessoires-14{ margin-bottom: 60px; padding: 0 60px; }
#accessoires-14.row{ align-items: flex-end; }
#accessoires-14 .text{ padding-right: 0 ; flex-basis: 50%; padding-top: 0; padding-bottom: 0 }
#accessoires-14 .img{ width: 50%; }

#accessoires-15{ background: url(../img/bg-vietnam@2x.png) repeat center center; padding: 60px 30px; margin-bottom: 60px; }
#accessoires-15 h2{ text-align: center; }
#accessoires-8 h3{  font-weight: bold; }
#accessoires-15 .text{ padding: 0 0 0 60px; flex-basis: 50%; }
#accessoires-15 .img{ width: 50%; }

.page-atelier .row-centered{ margin-bottom: 30px; }
.page-atelier .row-centered .intro{ margin: 0 auto 60px auto; padding: 0px 9rem; font-size: 22px; line-height: 26px; }

.page-histoire .ctn{  }
.years{ border-left: 1px #999999 solid; position: relative; margin: 3rem auto; padding: 0 50px !important; max-width: 1024px;  }
.years .year{ position: relative; margin-bottom: 60px; }
.years .year:before{ content: ''; background: url(../img/svg/boule.svg) no-repeat; background-size: 20px; position: absolute; left: -61px; top: 90px; width:20px; height: 20px; }
.years .year .row{ margin: 4rem 0; }
.years .table .row > *{ padding: 0; }
.years .year .shadow{ position: relative; text-align: left; font-size: 160px; line-height: 140px; font-weight: 700; color: #DBDBE6; margin-bottom: 40px;  }
.years .year .shadow span{ font-size: 80px; line-height: 80px; position: absolute; z-index: 2; left: 0; bottom:0; color: #000; }
.years .year .row > *{ width: 50%;  }
.years .year .row img{ object-fit: contain; }
.years .year h2{ margin-bottom: 15px; font-size: 32px; }
.years .year .row h2{ margin-bottom: 15px; text-align: left;  margin-top: 0; margin-left: 0; margin-right: 0;  }
.years .year .row .text{ padding: 0 5rem; }
.years .year .right { align-items: flex-end; }
.years .year .right h2{ text-align: right;}
.years .year p{ text-align: inherit; }
.years .year .gosbi .img{ width: 75%; }
.years .year .schesir .img img{ max-width: 400px; margin: auto; }
.years .year .hery .img{ width: 75%; }
/*.years .year .earth-animal .img img{ width: auto; }
.years .year .earth-animal .text img{ margin-bottom: 30px; }
.years .year .velbecia{ margin-top: -100px; }
.years .year .velbecia .img{ flex-basis: 80%; }
.years .year .gosbi { width: auto; margin: 20px 0; align-items: center; display: block; }
.years .year .gosbi h2{ margin-right: 20px;  }
.years .year .gosbi > *{ width: auto; flex-grow: 0; margin-bottom: 0; }*/
/*.years .year .terra-felis{ margin-bottom: 30px; }
.years .year-2014 .row{ margin-bottom: 30px; }
.years .year-2014 .row .text{ width: 50%; }*/
/*.years .orijen{ text-align: center; }
.years .orijen p{ margin-bottom: 20px; }
.years .orijen .row{ width: 70%; margin: auto;  }
.years .orijen .img:first-child{ margin-right: 10px; }
.years .orijen .img:last-child{ margin-left: 10px; }
.years .canhegat .text{ flex-basis: 80%; }
.years .vivog-sellerie .img{ flex-basis: 50%; }*/
/*.years .rubbnroll{ text-align: center; }
.years .rubbnroll > img{ max-width: 700px; }
.years .europe h2{ margin-bottom: 15px; font-size: 32px; text-align: right; }
.years .europe .arka-haok h2{ text-align: left; }
.years .europe .arka-haok .text{ width: 100%; }
.years .ludovic h2{ text-align: left; font-size: 32px; }
.years .implantation h2{ text-align: right; font-size: 32px; }
.years .implantation img{ max-width: 250px; object-fit:contain;  }
.years .year-1927 h2{ text-align: left; font-size: 32px; }
.years .year-1927 .row .img{ width: 400px; }
.years .year-1927 .row .text{ width: calc(100% - 400px); }
.years .year-1927 .row img{ object-fit: contain; }*/

.years .europe .table .row:first-child .text,
.years .europe .table .row:first-child .text h2{ width: auto; text-align: center; }
.years .europe .table .row:first-child .img{ display: none; }
.years .europe h2{ margin-bottom: 15px; font-size: 32px; text-align: right; }
.years .europe .arka-haok h2{ text-align: left; }
.years .europe .arka-haok .text{ width: 100%; }

.years .rouvignies{ display: flex; flex-flow: column; margin: auto; width: 85%; }
.years .rouvignies h2{ margin-top: 2rem; }
.years .rouvignies .text{ background: #fff; position: relative; margin: 0 80px; padding: 20px;  }
.years .rouvignies .img{ margin-top: -50px; flex: auto; text-align: center; }
.years .rouvignies .img img{ margin: auto; }

.years .year-2012 .row .text{ width: 75%; }

/*.page-atelier .row-centered{ max-width: 70%; margin-left: auto; margin-right: auto; }
.page-atelier .row-centered .text{ padding: 3rem 8rem;  }
.page-atelier .row-centered h2{ margin-top: 0; }*/

/*.msservices-page .sav-header h1{ font-size: 32px; margin:20px 0 30px 0; text-align: left; font-weight: bold; }*/
.msservices-page .sav-header nav { background: rgba(219,219,230,0.7); padding: 30px 0; }
.msservices-page .sav-header nav ul { margin-left: 30px; display: flex;  }
.msservices-page .sav-header nav ul li{ margin-right: 20px; }
.msservices-page .sav-header nav ul li a { text-transform: uppercase; text-decoration: none; font-size: 14px; }
.msservices-page .sav-header nav ul li.on a { text-decoration: underline; }
.msservices-page .msservices-content { padding: 30px 0; }
.msservices-page .msservices-content h2{ margin-bottom: 30px; font-size: 16px; text-align: left;}
.msservices-page .msservices-content .intro{ margin-bottom: 30px; }
.msservices-page .msservices-list .item,
.page-taxonomy-term .content .question-node{ border-bottom:1px solid #000; }
.msservices-page .msservices-list .item:first-child,
.page-taxonomy-term .content .question-node:first-child{ border-top:1px solid #000; }
.msservices-page .msservices-list .item h3,
.page-taxonomy-term .content .question-node h3{ margin-bottom: 0; font-size: 16px; font-weight: 500;}
.msservices-page .msservices-list .item a,
.page-taxonomy-term .content .question-node a{ display: block; padding: 20px 0; text-decoration: none; }
.msservices-page .categories-list{ display: flex; flex-flow:row wrap; }
.msservices-page .categories-list .category-item{ margin: 0 30px 30px 0; width: calc((100%/3) - 30px); box-shadow: 0 0 8px #cccccc; }
.msservices-page .categories-list .category-item h3{ margin-bottom: 0; font-size: 16px; font-weight: 500; }
.msservices-page .categories-list .category-item a{ display: block; text-decoration: none; display: flex; flex-flow: column; text-align: center; position: relative; }
.msservices-page .categories-list .category-item a img{ width: 100%; display: block; }
.msservices-page .categories-list .category-item a span{ background: #fff; width: 100%; bottom: 50px; position: absolute; padding: 25px 0; }
.custom-contact-page  .msservices-content{ padding: 30px 100px; width: auto; }
.page-taxonomy-term .msservices-page .msservices-content h2{ margin-bottom: 0; }
.page-taxonomy-term .item-list{ padding: 30px 0; }
.msservices-page p{ margin-bottom: 30px; }

.socials{ padding-top: 15px; float: right; }
/*.page-node .socials,
.page-checkout .socials,*/
.abs-socials{ position: absolute; text-align: right;  width:100%; margin-top: 0; padding-top: 15px; z-index: 10;  }
.abs-socials .ctn{ position: relative;}
.abs-socials .buttons{ position: absolute; right: 0;}
.socials a{ margin-right: 10px; }
/*.content-wrapper { background: #ECECEC; }*/
.content-wrapper h1{ text-align: left; margin: 60px 0; padding-right: 230px; }
.page-minute-papillon .socials .ctn,
/*.view-minute-papillon .view-header { max-width: 900px; margin: auto; }*/
.view-minute-papillon .view-header p{ text-align: center; margin-bottom: 30px; }
.view-minute-papillon .view-content{ display: flex; flex-flow: row wrap; margin-bottom: 30px; }
.view-minute-papillon .views-row{ width: calc(100%/3 - 20px); aspect-ratio: 1/1; overflow: hidden;  padding: 10px; position: relative; cursor: pointer; }
.view-minute-papillon .views-row img{ width: 100%; height: auto; object-fit: cover; display: block; }
.view-minute-papillon .minute{ position: relative; cursor: pointer; box-shadow: 0 0 8px #cccccc;}
.view-minute-papillon .minute .text{ position: absolute; bottom: 0; background: #fff; padding: 20px; margin: 0 20px;  }
.view-minute-papillon .minute .text .header{ font-size: 14px; color: #C4A282; text-transform: uppercase; margin-bottom: 10px;  }
.view-minute-papillon .minute .text h2{ font-size: 20px;  margin-bottom: 0; text-align: left; height: 100px; overflow: hidden; height: 66px; line-height: 22px; }
.view-minute-papillon .minute .text h2 a{ text-decoration: none; }
.node-type-minute-papillon .content{  }
.node-minute-papillon h1{ font-size: 45px; line-height: 54px; font-weight: 700;  text-align: left; }
.node-minute-papillon h2,
.node-minute-papillon h3{ font-size: 20px; line-height: 27px; font-weight: 700; text-align: left; }
.node-minute-papillon h2 + h3{ margin-top: -15px; }
.node-type-minute-papillon .field--name-field-introduction p { font-size: 18px; margin-bottom: 30px; font-weight: 400; }
.node-type-minute-papillon .field--name-field-video iframe{ width: 100%; height: auto; aspect-ratio: 16 / 9; }
/*.node-type-minute-papillon .field--name-body h2{ font-weight: 500; font-size: 60px; }*/
/*.node-type-minute-papillon .field--name-body h3{ font-weight: 400; font-size: 35px; margin: 50px 0; }*/
.node-type-minute-papillon .field--name-body h2:has(+ p){ margin-bottom: 20px; }
.node-type-minute-papillon .field--name-body h3:has(+ p){ margin-bottom: 15px; }
.node-type-minute-papillon .field--name-body p:has(+ h2),
.node-type-minute-papillon .field--name-body p:has(+ h3){ margin-bottom: 40px; }
.node-type-minute-papillon .field--name-body h4{ font-weight: 500; font-size: 22px; margin: 40px 0 20px 0; }
.node-type-minute-papillon .field--name-body p{ margin-bottom: 30px; font-weight: 400; font-size: 18px; line-height: 24px;  }
.node-type-minute-papillon .field--name-body strong{ font-weight: 500; }
/* Item */
.button{ cursor: pointer; border: 3px solid #000000; border-radius: 25px; padding: 10px 20px; display: inline-block; text-decoration: none; }
.button:hover,
.button.on{ color: #fff; background: #000; }
.panels-flexible-region-2-center{ width: 100% !important; }

.form-item input.error, .form-item textarea.error, .form-item select.error{border-width:1px; border-color: red !important; color: red !important;}
form{font-size: 14px;line-height: 18px;}
form .form-error{ color: red !important; display: block;}
form .form-item input.error, form .form-item textarea.error, form .form-item select.error {    margin-bottom: 3px;}
form a{	color:#000;text-decoration:none;}
form fieldset{margin-bottom:1em;padding-top:0.5em;}
form fieldset legend{font-weight: normal; font-family: 'Montserrat', sans-serif;font-size: 18px;line-height: 24px;}
form .form-item{margin:0.5em  0 15px 0;}
form .js-form-type-textfield,
form .js-form-type-password{display:block; vertical-align: top; margin-bottom: 15px; }
form .js-form-type-textfield label,
form .js-form-type-textarea label,
form .js-form-type-password label,
form .js-form-type-select label,
form .js-form-type-managed-file label,
form .js-form-type-radios label{ display:block; margin-bottom:5px; font-family: 'Montserrat', sans-serif; font-size:18px; line-height: 24px; font-weight: normal; }
form .js-form-type-textfield input,
form .js-form-type-password input,
form .js-form-type-select select,
form .js-form-type-managed-file input{ padding:5px; font-size: 14px; border:1px solid #5a555b; font-family: 'Montserrat', sans-serif; }
form .js-form-type-managed-file input.form-file{border:none;}
form .js-form-type-textfield input,
form .js-form-type-password input,
form .js-form-type-textarea textarea,
form .js-form-type-select select{ width:100%; box-sizing: border-box; }
form .js-form-type-managed-file .form-managed-file input{margin-right:10px;background:#fff;}
form .js-form-type-textarea textarea{ font-family: 'Montserrat', sans-serif; padding:5px;font-size: 14px;border:1px solid #5a555b;resize:none;}
form .form-managed-file .form-submit{}
form .field-hidden{ display:none; }
form .fieldset-legend{ font-weight: 700; }
#block-martinsellier-form-newsletter .submit{display:inline-block;}
#block-martinsellier-form-newsletter .text label{font-size:12px;letter-spacing:1px;color:#fff;text-align:right;text-transform:uppercase;line-height:12px;float: left;margin:2px 10px 0 0 ;font-weight:normal;}
#block-martinsellier-form-newsletter .text input{border:1px solid #5a555b;;background:#000000;padding:5px;color:#fff;}
#block-martinsellier-form-newsletter .submit input{border:1px solid #5a555b;background:#000000;padding:5px; color:#fff;}
#company-validation-result .form-error{ margin-bottom: 10px; }
form .js-form-type-radio input{-webkit-appearance: radio; display: inline-block; vertical-align: middle; margin-top: 0; }
form .js-form-type-radio label{ display: inline-block; vertical-align: middle; margin: 0; }
form .form-required{ color:#f00 ;} 
form legend .form-required{ color:inherit ; font-weight: 400;}
#kishipping-form,
#kicheckout-login-form { margin-bottom: 60px; max-width: 50% }
#kishipping-form .form-item{ display: block; margin-bottom: 15px;  }
#kicheckout-login-form a,
#kishipping-form a{ text-decoration: underline; }
#kicheckout-login-form a:before,
#kishipping-form a:before{ content: '> '; }
#kishipping-form #edit-submit-button,
form .form-submit{ width: auto; min-width: 200px; }
/*#kishipping-form .form-item input{ width: 250px; }*/
form .button{ margin-bottom: 15px; background: #fff; }
#kishipping-form .result{ margin-top: 30px; }
fieldset.captcha legend,
fieldset.captcha .fieldset-description{ display: none; }


.panel-page .content,
.panel-page .socials .ctn{ max-width:1024px; margin-left: auto; margin-right: auto;}
.panel-pane{ }
.panel-pane .pane-title{ text-align: left; }
.panel-pane h2{ text-transform: uppercase; font-size: 34px; line-height: 70px; text-align: left; }
.panel-pane p{ margin-bottom: 15px; }


.panel-pane p{ margin-bottom: 20px; }
.panel-pane .ctn:last-child{ margin-bottom: 60px;}
.panel-pane.ctn { padding: 0; }

.panel-pane p{ margin-bottom: 15px; }
.panel-pane .ctn{ margin-bottom: 3rem; }

.module-video .desktop{ display: block; }
.module-video .mobile{ display: none; }

.group-values{ flex-flow: column; margin-bottom: 60px; }
.group-values .text{ display: flex; flex-flow: row; padding: 0; margin: 0; width: auto; text-align: left;  }
.group-values .img{ width: auto; }
.group-values .img img{ max-width: 500px; margin: 0 auto;  }
.group-values .text .value{ padding:0; margin: 30px; width: calc(100% / 3 - 20px); }
.group-values .text .value:first-child{ margin-left: 0; }
.group-values .text .value:last-child{ margin-right: 0; }
.group-values .text .title{ padding: 5px 0; border-top: 1px solid #000; border-bottom: 1px solid #000; font-weight: bold; margin-bottom: 30px; text-transform: uppercase; }

.petfood-logos{ display: flex; justify-content: center; flex-flow: row wrap; margin-bottom: 90px; }
.petfood-logos a{ display: flex; align-items: center; width:25%; padding: 50px; box-sizing: border-box; flex-grow: 0; flex-shrink: 1; }
.petfood-logos a:hover{ background: #f5f5f5; }
.petfood-logos a img{ display: block;  }
.page-petfood h2{ margin-bottom: 0 !important; }

.content-wrapper .msservices-page h1{ margin-top: 0; }

.sav-search{ position: relative; margin-bottom: 30px; }
.sav-search .form{ display: flex; border: 1px #000 solid; padding: 5px 15px;   }
.sav-search .form input{ display: block; flex-grow: 1; flex-shrink: 0; border:none; margin-right: 15px;  }
.sav-search .form button{ display: block; flex-grow: 0;  border:none; background: none; }
.sav-search .form button img{ width: 30px; height: 30px; }
.search-results-wrapper { display: none; position: absolute; width: 100%; max-height: 300px; overflow: auto; background: #fff; padding: 5px; box-sizing:  border-box; border: 1px solid #ccc; margin-top: 5px; z-index: 10;}
.sav-search.loading .search-results-wrapper{ display: none; }
.search-results-wrapper ul{ ; }
.search-results-wrapper li, .search-results-wrapper .no-result{ padding: 5px 10px; font-size: 14px; }
.search-results-wrapper li a{ text-decoration: none; font-size: 14px; }
.search-results-wrapper li a:hover{ text-decoration: underline; }

.kicheckout-label{ margin-bottom: 15px; }
.kicheckout-process { margin-bottom: 60px; }


@media screen and (max-width: 1024px) {
    .socials{ display: none; }
    #header{ width: 100%; box-sizing: border-box; padding-top: 20px; padding-bottom: 20px; }
    .toggle-menu{ display: block; }
    .burger-menu{ min-width: 320px; text-align: left; }
    #header > .main-menu{ display: none; }
    .main-menu { display: block; }
    .burger-menu.on{ display: block; }
    .burger-menu .main-menu li{ display: block; background-color: #fff;  padding: 12px 20px; }
    .burger-menu .main-menu li li{ display: block; background-color: #fff;  padding: 8px 20px; }
    .main-menu li a{ display: block; text-align: left; padding:5px 0; }
    .main-menu li:has(> div) > a{ background: url(../img/svg/down-arrow.svg) no-repeat right center; }
    .main-menu li ul{ display: none; }
    .main-menu li.on ul{ display: block; }
    .burger-menu .main-menu .submenu-title{ display: none; }
    .languages{ display: none; }
    .main-menu .submenu{ position: relative; padding: 0; }
    .main-menu .submenu-ctn{ position: relative; padding: 20px 0; }
    .main-menu .submenu-ctn > .ctn{ padding: 0; }
    
    .row .text{ padding: 2rem 3rem; }
    .page-atelier .row-centered{ max-width: none; }
    .page-atelier .row-centered .text{ padding:1.5rem 3rem; }
    .node--type-page-contenu h2{ margin: 30px 0; font-size: 40px; }
}

@media screen and (max-width:900px) {
    h1{ font-size: 46px; text-align: center; }
    .content-wrapper h1{ text-align: center; margin: 30px 0; }
    .abs-socials{ display: none; }
    .content-wrapper h1{ padding-right: 0; }
    footer .menu{ flex-flow: column; }
    footer .menu li{ padding: 0.5rem 0; }
    .module-socials { margin-bottom: 60px; }
    .row-centered{ padding-left: 2rem; padding-right: 2rem;}
    .row-centered .text img{ margin-bottom: 30px; }
    .row.row-text.row-centered .intro{ padding: 0; }
    .row-centered > .text:only-child{ padding-left: 1rem; padding-right: 1rem;  }
    .row-text-img{ flex-flow: column; margin: 0 2rem 30px 2rem; }
    .row-img-text{ flex-flow: column-reverse; }
    .row-text-img .text,
    .row-text-img .img{ width: 100%; padding: 0 !important }
    .row-text-img .img{ margin-bottom: 30px; }
    .row-column .row-img{ flex-flow: column; }
    .row-column .row-img .img{ width: auto; }
    .row-column .row-img .text{ width: auto; padding: 1.5rem 0 !important; }
    .row-column .row-img .text br + br{ display: none; }
    .row-text-blacked{ margin-bottom: 3em; padding: 0; }
    .row-text-blacked .text{ margin-left: 0; margin-right: 0; margin-top: 0; padding: 2rem; }
    
    .node .content .intro, .node .content .intro p{ text-align: center; }
    .row .text p,
    .row .text h2,
    .row .text h3{ text-align: center; }
    .row .text p.fs50{ text-align: left; }
    .panel-pane h2,
    .panel-pane p{ text-align: center !important; }
    #kishipping-form, #kicheckout-login-form{ max-width: none; margin-bottom: 60px; }
    .panel-pane h2{ line-height: normal; }
    #kishipping-form #edit-submit-button, form .form-submit{ width: 100%; color: #000 !important; padding: 10px 20px;}
    
    .years { margin: 3rem 0 3rem 20px; padding: 0 20px 0 20px !important; }
    .years .year{ margin-bottom: 20px; }
    .years .year:before{ top: 30px; left: -31px; }
    .years .year .shadow{ color:#000; font-size: 80px; line-height: 80px;}
    .years .year .shadow span{ display: none; }
    
    .years .year .row{ display: block;  margin: 0 0 2rem 0; }
    .years .year .row > *{ width: auto; display: block; }
    .years .year .row .img{ padding: 0; margin-bottom: 1rem; }
    .years .year .row .text{ padding: 0; }
    .years .year .row:has(.img + .text),
    .years .year .row:has(.right + .text){ flex-direction: column-reverse; display: flex; }
    .years .year .right,
    .years .year .right h2,
    .years .year .row .text p{ text-align: left; }
    .years .orijen .img:first-child,
    .years .orijen .img:last-child{ margin: 0 0 20px 0; }
    .years .year-2014 .row .text{ width: auto; }
    .years .rouvignies{ width: auto; margin-bottom: 1rem; }
    .years .rouvignies .text{ margin: 0; padding: 0; text-align: left;  }
    .years .rouvignies .img,
    .years .rouvignies h2{ margin-top: 0; text-align: left; }
    .years .year-1927 .row .img,
    .years .year-1927 .row .text{ width: auto; }
    .view-minute-papillon .views-row{ width: calc(100% / 2 - 20px); }
    .msservices-page .categories-list .category-item{ width: calc(100% / 2 - 15px); }
    .msservices-page .categories-list .category-item:nth-child(2n){ margin-right: 0; }
    .petfood-logos a{ width:calc(100% / 3); padding: 50px; }
    .custom-contact-page  .msservices-content{ padding: 30px 0; }
}

@media screen and (max-width:640px) {
    .module-video .desktop{ display: none; }
    .module-video .mobile{ display: block; position: relative; }
    .module-video .mobile img{ display: block; width: 100%; height: auto; }
    .module-video .mobile .abs-ctn{ position: absolute; width: 100%; left: 0; bottom: 50px; text-align: center; }
    /*.module-video .mobile .button{ background: #fff; }*/
    .view-minute-papillon .views-row{ width: calc(100% - 20px); }
    .view-minute-papillon .view-header a{ margin: 5px 10px;}
    .msservices-page .categories-list .category-item{ width: 100%; margin-right: 0;   }
    .group-values .text{ display: flex; flex-flow: column; padding: 0; }
    .group-values .text .value{ margin:15px 30px !important; width: auto; }
    .group-values .text .value .title{ text-align: center;}
    .petfood-logos a{ width:50%; padding: 50px; }
}