#output {
    overflow: hidden;
}

.banner,
.banner * {
    box-sizing: border-box;
}

.banner {
    background-color: #fff;
    overflow: hidden;
    position: relative;
}

.banner::after {
    border: 1px solid #c7c7c7;
    content: " ";
    position: absolute; inset: 0;
    z-index: 999;
}

.bloc_body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0; padding: 0;
}

.a_ct {
    color:#000;
    display: block;
    text-decoration:none;
    visibility: visible !important;
    &:focus {
        outline: 1px solid #000;
        outline-offset: 2px;
    }
}

address {
    font-style: normal;
}

.max-wh {
    max-width: 100%;
    max-height: 100%;
}

button {
    outline: none;
    border: none
}

.sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    margin: -1px; padding: 0;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px; height: 1px;
}
@font-face {
    font-family: 'sana_sans_altblack';
    src: url('https://cdn.acotedemoi.com/auchan/fonts/sanasansalt-black-webfont.woff2') format('woff2'),
         url('https://cdn.acotedemoi.com/auchan/fonts/sanasansalt-black-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'sana_sans_altbold';
    src: url('https://cdn.acotedemoi.com/auchan/fonts/sanasansalt_bold_1-webfont.woff2') format('woff2'),
         url('https://cdn.acotedemoi.com/auchan/fonts/sanasansalt_bold_1-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

#output {
    overflow: hidden;
    position: relative;
}

.banner {
    background-color: #fff;
}

.banner::after {
    border: 1px solid #c7c7c7;
}

/*******************************/
/** DISABLED REPIQUAGE **/
/*******************************/
.no-repiq .shop-name,
.no-repiq .shop-name-last,
.no-repiq address {
    display: none;
}

#output[data-adtype="custom_auchan_operation"].format-300x250 .no-repiq .rdv,
#output[data-adtype="custom_auchan_catalog"].format-300x250 .no-repiq .rdv {
    margin-bottom: 23px;
}

#output[data-adtype="custom_auchan_catalog"].format-300x250 .no-repiq .last-slide .cta {
    bottom: 0;
}

#output[data-adtype="custom_auchan_operation"].format-300x600 .no-repiq .cta,
#output[data-adtype="custom_auchan_catalog"].format-300x600 .no-repiq .cta {
    top: -10px
}

#output[data-adtype="custom_auchan_operation"].format-300x600 .no-repiq .logo-last,
#output[data-adtype="custom_auchan_catalog"].format-300x600 .no-repiq .logo-last {
    margin: 95px auto 0
}

#output[data-adtype="custom_auchan_operation"].format-728x90 .no-repiq .logo-last {
    top: 50%;
}

#output[data-adtype="custom_auchan_catalog"].format-728x90 .no-repiq .logo-last {
    top: 25%
}

#output[data-adtype="custom_auchan_operation"].format-970x250 .no-repiq .logo-last {
    display: none;
}

#output[data-adtype="custom_auchan_operation"].format-970x250 .no-repiq .rdv {
    position: relative; top: 72px;
}

#output[data-adtype="custom_auchan_catalog"].format-970x250 .no-repiq .col-C {
    align-self: center;
    padding-top: 0;
}


#output[data-adtype="custom_auchan_operation"].format-320x480 .no-repiq .rdv,
#output[data-adtype="custom_auchan_catalog"].format-320x480 .no-repiq .rdv,
#output[data-adtype="custom_auchan_operation_interstitiel"] .no-repiq .rdv,
#output[data-adtype="custom_auchan_catalog_interstitiel"] .no-repiq .rdv{
    margin-bottom: 60px;
}

.a_ct {
    color:black;
    display: block;
    text-decoration:none;
    position: relative;
    z-index: 200;
}

.blur {
    background-color: rgba(254, 250, 238, .9);
}

.product-link,
.arrow {
    position: absolute;
    z-index: 500;
}

.product-link {
    color: currentColor;
    inset: 0;
    text-decoration: none;
}

/*******************************/
/** HEADER **/
/*******************************/
.logo, .logo-last, .logo-mini {
    fill: #E0001A;
}
.shop-name,
.shop-name-last {
    color: #E0001A;
    font-family: 'sana_sans_altbold', sans-serif;
}

.date {
    color: #000000;
    font-family: 'sana_sans_altblack', sans-serif;
}

.shop-address,
.shop-postcode,
.shop-city {
    color: #000000;
    font-family: 'sana_sans_altbold', sans-serif;
}

.rdv {
    color: #000000;
    font-family: 'sana_sans_altbold', sans-serif;
}

/*******************************/
/** PRODUCT **/
/*******************************/
.product-description {
    color: #000000;
    font-family: 'sana_sans_altbold', sans-serif;
}
/*******************************/
/** FOOTER **/
/*******************************/
.cta {
    background-color: #E0001A;
    color: #FFFFFF;
    font-family: 'sana_sans_altbold', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    width: max-content;
}

.legal-notice,
.legal-notice-product-item {
    color: #000000;
    font-family: 'sana_sans_altbold', sans-serif;
}.banner {
    display: flex;
    flex-direction: column;
    text-align: center;
}

/*******************************/
/** HEADER **/
/*******************************/
.header {
    position: relative;
    z-index: 20;
}

.promo-min,
.logo-last,
.shop-name-last,
.rdv,
address {
    transform: scale(0);
}


.logo-last,
.shop-address,
.shop-name-last {
    display: block;
}

/*******************************/
/** MAIN **/
/*******************************/
.main {
    flex: 1;
    position: relative;
    z-index: 10;
}

.promo,
.promo-min {
    position: absolute;
}

.promo img,
.promo-min img{
    max-width: 100%;
    max-height: 100%;
}

.catalog,
.promo-min {
  opacity: 0;
}

.rdv,
.catalog {
    display: block;
}

.last-slide {
    position: absolute;
}

.catalog,
.rdv {
    margin: 0 auto;
}

/*******************************/
/** PRODUCT **/
/*******************************/
.slider {
    position: absolute;
    z-index: 500;
}

.slide {
    display: grid;
    margin: 0 auto;
    opacity: 0;
}

.container-tag {
    display: flex;
    flex-direction: column;
}

.picto {
    align-content: center;
    align-self: flex-start;
    transform-origin: center;
}

.price {
    display: flex;
    align-items: center;
    flex: 1;
}

.picto img,
.price img,
.product-img img {
    max-width: 100%; max-height: 100%;
}

.product-img  {
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-description {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-transform: uppercase;
}

/*******************************/
/** FOOTER **/
/*******************************/
.footer {
    position: relative;
    z-index: 20;
}

.legal-notice, .legal-notice-product {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: absolute;
    width: 100%;
}

.legal-notice {
    opacity: 0;
}

.legal-notice-product {
    min-height: 20px;
}

.legal-notice-product-item {
    opacity: 0;
}

.cta {
    border-radius: 5px;
    margin: 0 auto;
    position: absolute;
    transform-origin: left;
    left: 50%;
}



.banner, #output{
    width:300px; height:600px;
}

.banner {
    background: url("../../assets/bg_300x600.webp") no-repeat 0 0/100%;
}

/*******************************/
/** HEADER  **/
/*******************************/
.logo {
    margin: 19px auto -3px;
    width: 145px;
}

.logo-mini {
    display: none;
}

address {
    font-size: 19px;
    line-height: 20px;
    padding: 0 5px;
}

.shop-name {
    display: block;
    font-size: 14px;
    margin-bottom: 6px;
}

.date {
    font-size: 15px;
}

.date time:first-child {
    text-transform: capitalize;
}

/*******************************/
/** MAIN  **/
/*******************************/
.main {
    flex: 1;
}

.promo {
    top: 66px; left: 19px;
    width: 259px; height: 350px;
}

.promo-min {
    top: 75px; left: 30px;
    width: 240px; height: 240px;
}

/*******************************/
/** LAST SLIDE   **/
/*******************************/

.last-slide {
    height: 422px;
    position: relative; top: -85px
}

.catalog {
    margin: 11px auto 22px;
    width: 152px; height: 195px;
}

.rdv {
    font-size: 21px;
    line-height: 21px;
    width: 180px;
}

.rdv.specific-shop {
    margin: 50px auto;
}

.rdv.specific-shop ~ .logo-last,
.rdv.specific-shop ~ .shop-name-last {
    margin: 0 auto;
}

.logo-last {
    margin: 28px auto 0;
    width: 163px; height: 39px;
}

.shop-name-last {
    margin: 11px 0 23px;
}

/*******************************/
/** PRODUCT **/
/*******************************/
.slider, .slide {
    width: 262px;
}

.slider {
    top: 162px; left: 50%;
    transform: translateX(-50%);
}

.slide {
    grid-template-columns: 150px 97px ;
    grid-template-rows: 100px 130px 50px;
    grid-gap: 16px;
}

.container-tag {
    grid-column: 2/3;
    grid-row: 1/3;
}

.picto {
    margin-bottom: 8px;
    width: 100%; height: 55px;
}

.picto + .picto {
    margin-bottom: 13px;
}

.product-img {
    grid-column: 1/2;
    grid-row: 1/3;
}

.product-description {
    font-size: 18px;
    grid-column: 1/3;
    grid-row: 3/5;
    line-height: 19px;
}

/*******************************/
/** FOOTER  **/
/*******************************/
.footer {
    height: 90px;
}

.cta {
    border-radius: 20px;
    font-size: 19px;
    height: 40px;
    line-height: 40px;
    min-width: 140px;
    max-width: 200px;
    top: -22px; left: 50%;
    transform: translateX(-50%);
}

.cta.specific-shop {
    top: -5px;
}

.legal-notice,
.legal-notice-product {
    bottom: -1px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 10px;
    width: 100%; height: 50px;
}

.legal-notice {
    opacity: 1;
    font-size: 9px;
}

.legal-notice-product {
    font-size: 8px;
}

.legal-notice-product-item {
    display: none;
}
