* {box-sizing:border-box;padding:0;margin:0}
html { font-size: 10px; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; overflow-y: scroll;  }
html { height: 100%;}
/* SanFranciscoDisplay: en remplacement provisoire de LL Riforma car elle coute 790 chf pour 1! domaine...*/
html,body {font-family: courier new,courier,monospace,"Helvetica Neue",Arial,Helvetica,sans-serif; font-weight:400; font-style:normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
body{ font-size: 1.3rem; min-height:100vh }
header, section, footer, aside, nav, main, article, figure {display: block;}

.u-bold, strong, b { font-weight: 500; }
.u-bolder { font-weight: 700; }
header .u-bold, strong, b { font-weight: bold; }
.u-light {font-weight: 300}
.u-italic, em, i { font-style: italic; }

/* text sizes */
h1, .u-text-xxl { font-size:4.8rem; }     /*  */
h2, .u-text-xl { font-size:4rem;font-weight:700; padding:0.5rem 0 1rem 0; line-height: 4rem}     /*  */
h3, .u-text-l { font-size:3rem;font-weight:700; line-height: 3.5rem; padding: 0.5rem 0}     /*  */
h4, .u-text-m { font-size: 1.8rem; font-weight: 400; line-height:1.7 }     /*  */
p, .u-text-r, td {/*font-size:2rem; line-height:1.4; */padding:0 0 1.2rem 0;}                                    /*  */
h5, .u-text-s { font-size: 1.4rem}
h6, .u-text-xs { font-size: 1rem}

/* text colors */
body {color: #333}

.c-rich {font-size:1.6rem; line-height:1.7;}
.c-rich li {padding-left:2.5rem;}
.c-rich li:before {content:"•";display:inline-block;margin-left:-2.5rem;width:2.5rem;text-align:center;transform:scale(1.5);opacity:1}
.u-text-upper {text-transform: uppercase;}
.u-text-center {text-align: center;}
.u-text-light {opacity:0.6;}

.u-clear:after {content:"";display:table;clear:both}

input, textarea, select { font-family:inherit; font-weight:300 }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
ul, li {list-style:none}
a {text-decoration: none;color:inherit;outline:none}
a:hover {color:inherit}

header.t-memo {position:relative;position:-webkit-sticky;position:sticky;top:0px;z-index:1001;width:100%;background:white;color:black}
header.t-site {position:fixed;top:0;left:0;width:200px;padding:20px}
main.t-site {margin-left:200px;padding:20px 0 0 0}
.t-mobile {display:none}
header.t-site.t-mobile {display:none;width:100%;background:white;padding:0px 10px 20px 10px;z-index:3;top:50px;border-bottom:2px solid #999}
.t-burger {position:fixed;left:0;right:0;top:0;padding:10px 20px;height:50px;z-index:4;font-size:3rem;text-align:right;background:white}
@media screen and (max-width: 768px) {
    header.t-site.t-desktop {display:none}
    .t-mobile {display:block}
    main.t-site {margin-left:0;padding:50px 0px 50px 10px}
}

header.t-site nav {margin-top:1.2rem} 
header.t-site nav.t-group + nav {margin-top:0rem} 
header.t-site nav a {display:block} 

section.t-text, section.t-images {max-width:760px; margin-right: 10px;}
@media screen and (max-width: 768px) {
    section.t-images {border-bottom: 3px solid #333;margin-bottom: 3em;}
}
section.t-text h1 {font-weight:bold;font-size:inherit;margin-bottom:1.2rem;}
section.t-text {padding-bottom:20px}
section.t-images img, section.t-images iframe {margin-bottom:20px}
section.t-gallery a {position:relative;display:inline-block;vertical-align:top;padding:0 10px 0 0}

section.t-gallery a:after {content:"";display:block;position:absolute;z-index:1;top:0;left:0;bottom:10px;right:10px;background:rgba(0,0,0,0.5);opacity:0;transition:all 0.4s ease}
section.t-gallery div {position:absolute;z-index:2;color:white;top:50%;left:0;width:100%;text-align:center;transform:translate(0, -50%);opacity:0;transition:all 0.4s ease}
section.t-gallery a:hover:after  {opacity:1}
section.t-gallery a:hover div {opacity:1}
section.t-gallery img {margin-bottom:10px}

section.t-gallery a {width:33.2%}
@media screen and (max-width: 960px) {  section.t-gallery a {width:49.9%}}
@media screen and (max-width: 640px) {  section.t-gallery a {width:100%}}
@media screen and (min-width: 1600px) { section.t-gallery a {width:24.9%}}
@media screen and (min-width: 2000px) { section.t-gallery a {width:19.9%}}

.c-cookieconsent {position:fixed;z-index:1001;display:table;bottom:0;left:0;width:100%;background:white;padding:2rem;text-align:center}
.c-cookieconsent > div {display:table-cell;padding-right:1rem}


img {display:block;width:100%;}
video {box-shadow: 0 0 1px black;}

.o-grid {display:block;width:100%}
.o-grid-gutter { margin-left:-1rem; width: calc(100% + 2rem)}
.o-grid-gutter > [class*='o-grid-soft'], .o-grid-gutter > [class*='o-grid-hard'] {padding: 0 1rem;}

[class*='o-grid-soft'], [class*='o-grid-hard'] {  display: inline-block; vertical-align: top; position: relative; }
.o-grid-soft-0, .o-grid-hard-0 { display: none }
.o-grid-soft-1, .o-grid-hard-1 { width: 8.3333% }
.o-grid-soft-2, .o-grid-hard-2 { width: 16.6666% }
.o-grid-soft-3, .o-grid-hard-3 { width: 25% }
.o-grid-soft-4, .o-grid-hard-4 { width: 33.3333%; margin: -1px 0 0 -1px;}
.o-grid-soft-5, .o-grid-hard-5 { width: 41.6666% }
.o-grid-soft-6, .o-grid-hard-6 { width: 50% }
.o-grid-soft-7, .o-grid-hard-7 { width: 58.333% }
.o-grid-soft-8, .o-grid-hard-8 { width: 66.6666% }
.o-grid-soft-9, .o-grid-hard-9 {  width: 75% }
.o-grid-soft-10, .o-grid-hard-10 { width: 83.3333% }
.o-grid-soft-11, .o-grid-hard-11 { width: 91.6666% }
.o-grid-soft-12, .o-grid-hard-12 { display: block; width: 100% }
.o-grid-soft-10-wide { width: 83.3333%; margin-left: 8.3333%;margin-right: 8.3333%}
.o-grid-bottom [class*='o-grid-soft'], .o-grid-bottom [class*='o-grid-hard'] { vertical-align: bottom; }

.u-padding {padding:2rem}
.u-padding-s {padding:1rem}
.u-padding-rel {padding:8rem 8% 0 8%}
.u-padding-h {padding:0 2rem}
.u-padding-v {padding:2rem 0}
.u-padding-t-s {padding-top:1rem}
.u-padding-t {padding-top:2rem}
.u-padding-t-l {padding-top:3rem}
.u-padding-t-xl {padding-top:8rem}
.u-padding-b-s {padding-bottom:1rem}
.u-padding-b {padding-bottom:2rem}
.u-padding-b-l {padding-bottom:3rem}
.u-padding-b-xl {padding-bottom:8rem}
.u-padding-right-zero {padding-right:0}
.u-padding-left-zero {padding-left:0}

.c-padding-grid {padding:3rem calc(8.3333% + 2rem)}
.c-padding-grid + .c-padding-grid {padding-top:0}
.u-block {display:block}
.u-none, .none {display:none}
.u-rel {position:relative}
.u-abs {position:absolute;top:0;left:0}
.u-back-white {background-color: white}
.u-float-right {float:right}
.u-clear:after {content:"";display:block;clear:both}
.u-text-right {text-align:right}
.u-text-left {text-align:left}
.u-pointer {cursor:pointer}
.u-lineheight-1 {line-height:0.9}

.no-transition-onload {transition-duration: 0s !important}
.no-decoration {text-decoration:none}

.o-covr {	/* mini-lightbox */ }
.o-covr-back { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000; background: rgba(0, 0, 0, 0.3) }
.o-covr-main { position: fixed; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background: white; padding: 2rem; border-radius: 0.5rem; }
.o-covr-main { max-width: 640px; }
.o-covr-body { min-height: 5rem; max-height: 80vh; overflow: auto; }
.o-covr-foot { margin-top: 2rem; text-align: right }
.o-covr-foot:empty { margin-top: 0 }

.u-ellipsis {overflow:hidden;text-overflow: ellipsis; white-space: nowrap;;}

/* trumbow */
.trumbowyg-modal input[type=file] {padding:0;margin-top:-1px}
.trumbowyg-editor img {width:50%;box-shadow:0 0 2px #d7e0e2}
.trumbowyg-editor img {width:50%}
.trumbowyg-editor td img {width:100%}

.trumbowyg-editor > *::before {content: "*";color:black;opacity:0.3;position: absolute;left: 0px;width: 1.5rem;text-align: center;font-family: arial;font-size: 9px;box-shadow: 1px 1px 2px gray;line-height: 21px;}
.trumbowyg-editor > *:hover::before {opacity:0.8}
.trumbowyg-editor > p::before {content: "p"}
.trumbowyg-editor > h1::before {content: "h1"}
.trumbowyg-editor > h2::before {content: "h2"}
.trumbowyg-editor > h3::before {content: "h3"}
.trumbowyg-editor > h4::before {content: "h4"}
.trumbowyg-editor > h5::before {content: "h5"}
.trumbowyg-editor > h6::before {content: "h6"}
.trumbowyg-editor > ul::before {content: "ul"}
.trumbowyg-editor > p::before {content: "p"}
.trumbowyg-editor > table::before {content: "T"}


replaced_script {display:block;width: 100%;background:grey; color: grey; height:1.5em; overflow:hidden;position:relative;margin-bottom:2px}
replaced_script:before {content: "SCRIPT INSIDE"; color: white; margin-left:40%}
/* memo */
.o-memo {font-size:1.5rem; font-weight: 300;}
.o-memo .o-button {display:inline-block;border:1px solid #ddd;padding:0.5rem 2rem}
ul.ds-memo-tree li span {opacity:0.5}
ul[data-dropdown] {display:none}
.ds-form-fields .grid {	line-height: 1.3;}
.t-memo .ds-form-fields .grid {	line-height: 1.6;}
.t-memo ul.ds-memo-tree li.current,.t-memo  div.dataset div.ds-form-head {font-weight: 400;}
.t-memo .ag-theme-balham {color: #000;font-family: inherit;font-weight: 300;font-size: 13px;}
.t-memo .ag-theme-balham .ag-header {color: #000;font-family: inherit;font-weight: 400;font-size: 13px;}
.t-memo .ag-theme-balham .ag-row {cursor:pointer}
.t-memo h6 {font-size: 1.4rem; font-weight: 300; margin-bottom: 2rem;}

.o-field-grid input[type=text] {max-width:100%}
.o-field-grid input[type=checkbox] {margin:0 1rem;width:auto !important}
.o-field-head {color:#999;padding: 1.5rem 0.5rem 0.5rem 0rem; }
.o-memo .o-field-head {font-weight: 400;color:#222;padding: 0.5rem 0.5rem 0.5rem 0rem; }
.o-field-val {padding-right:0.5rem; line-height:1.9 }
.c-memo-user {position:relative;}

/* radio */
@keyframes fade {
    0% { opacity: 1.0; }
    50% { opacity: 0; }
    100% { opacity: 1.0; }
}
.js-blink { animation:fade 2000ms infinite; }