.retour {
    padding: .3rem;
    text-align: center;
}

.retour a {
    margin: 0;
    padding: 0;
}

.retour img {
    vertical-align: middle;
    border-radius: 0.8rem;
    width: 3.5rem;
}

.retour a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 2.35rem;
    padding: .25rem .7rem;
    color: #003c72;
    background: linear-gradient(180deg, #fff, #bfeeff);
    border: .07rem solid #00689c;
    border-radius: 999px;
    box-shadow: inset 0 .04rem .07rem #fff, 0 .1rem .22rem #003c5f38;
    font: 800 .82rem Arial, Helvetica, sans-serif;
    text-decoration: none;
}

.retour a::before {
    content: "←";
    display: inline-grid;
    place-items: center;
    width: 1.55rem;
    height: 1.55rem;
    color: #fff;
    background: #00689c;
    border-radius: 50%;
    font-size: 1.05rem;
}

.retour a img {
    display: none;
}

.retour a::after {
    content: "Retour";
}

.retour a:hover,
.retour a:focus-visible {
    background: linear-gradient(180deg, #fff, #d8ffd9);
    border-color: #006615;
    outline: none;
    transform: translateY(-.05rem);
}

article,
.division_2,
.story_text,
p.cadre_text {
    border-radius: .5rem;
    background: #ffffff57;
    border: .05rem solid #ffffff8a;
    box-shadow: 0 .12rem .38rem #003c5f1f;
    backdrop-filter: blur(.08rem);
}

article h1,
article h2,
.division_2 h2,
.story_text h2 {
    line-height: 1.25;
}

/**********      ADIXAGACHE      **********/

.agache {
    background-image: url(../img/fondpierre_opt.webp);
    background-position: center top;
    background-repeat: repeat;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 0.6rem;
    text-align: center;
    min-height: 100vh;
}

.agache div.galerie {
    margin: 0;
}

.bg_barre_agache,
.agache footer {
    background: #95af0099;
}

.agache .galerie figcaption {
    text-align: center;
    font-size: .7rem;
    line-height: .8rem
}

@media all and (max-width: 800px) {
    .agache_cadre {
        column-count: 1
    }

    p.cadre_text {
        column-count: 1;
        margin: .2rem 3rem
    }
}

@media all and (min-width: 801px) and (max-width: 1250px) {
    .agache_cadre {
        column-count: 2
    }

    p.cadre_text {
        column-count: 1;
        margin: .2rem 3rem
    }
}

@media all and (min-width: 1251px) {
    .agache_cadre {
        column-count: 3
    }

    p.cadre_text {
        column-count: 2;
        column-gap: 5rem;
        margin: .2rem 5rem
    }
}

.agache_cadre {
    column-fill: balance;
    column-width: 8rem;
    column-gap: 1.2rem;
    margin: .9rem 2rem;
    padding: .4rem;
    border: .2rem solid #575757;
    border-radius: 1.5rem;
    background: #e3ed1a
}

.agache_cadre h1 {
    font-size: 1.3rem;
    margin: 0
}

.agache_cadre h1 span {
    font-size: .8rem
}

.agache_cadre_p {
    text-align: justify;
    font-size: .8rem;
    font-weight: 600;
    line-height: .9rem
}

.agache_cadre_img {
    float: left;
    width: 12rem;
    padding: 0;
    margin: 0 .5rem;
    border-radius: .7rem;
    border: solid .1rem #00461ecc;
    max-width: 100%;
}

.agache_cadre_img1 {
    vertical-align: middle;
    width: 12rem;
    padding: 0;
    margin: auto;
    border-radius: .7rem;
    border: solid .1rem #00461ecc;
    max-width: 100%;
}

.small_text {
    text-align: center;
    font-size: .4rem;
}

p.renvoi {
    display: inline-block;
    width: 11rem;
    padding: 1.2rem;
    font-size: .8rem;
    font-weight: bold;
    color: #aa2c2c;
    border: 0.2rem solid;
    border-radius: 50%;
    background: #b12c2c33;
}

/**********       ADIXANGLET       **********/

.anglet {
    background-image: url(../img/fondpastel_opt.webp);
    color: #2e1d96;
    font-family: 'Cooper Black', sans-serif;
    padding-bottom: 1.5rem;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    position: relative;
}

.anglet .barre_adix,
footer {
    background: #5145ff80;
}

.anglet .galerie {
    margin: 0;
}


.anglet_div1 {
    text-align: center;
    max-width: 100%;
}

.division_2 {
    display: inline-block;
    vertical-align: middle;
    text-align: justify;
    font-size: 0.7rem;
    font-weight: bold;
    border: 0.2rem solid #7601b0;
    border-radius: 1.5rem;
    margin: 0.5rem;
    padding: 0.3rem;
    width: 18rem;
    height: auto;
    max-width: 100%;
}

.division_2 div {
    text-align: center;
    padding: 0;
}

.division_2 p {
    margin: 0;
}

.division_2 div figure {
    display: block;
    margin: 0.2rem;
    padding: 0;
}

.divis {
    width: 100%;
}

.divis div {
    display: inline-block;
    vertical-align: middle;
    margin: 0 1.4rem;
}

.anglet footer {
    position: absolute;
    bottom: 0
}

/**********     ADIXAVEYRON2017     **********/

.aveyron {
    display: block;
    background-image: url(../photos_pages/Gorges_Aveyron_22.webp);
    position: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: -1;
    filter: blur(0.2rem);
}

.avey {
    display: block;
    color: #00461e;
    font-family: haritzaga;
    text-align: center;
    font-size: 1.3rem;
    border: 0.1rem solid #ff0000;
    border-radius: 2rem;
    padding: 0.4rem;
    margin: 0.2rem 2rem;
    background: #da4e0033;
}

.aveyron_footer {
    background: #f7f7f766;
}

/**********       ADIXBORDA       **********/

.borda {
    background-image: url(../img/Jaunefon_opt.webp);
    text-align: center;
    margin-bottom: 2rem;
}

.borda article img {
    float: left;
    width: 10rem;
    padding: 0;
    margin: 0.2rem;
    border-radius: 1.5rem;
    border: solid 0.1rem #00461ecc;
    max-width: 100%;
}

.borda article,
.boulin article {
    column-count: 3;
    column-fill: balance;
    column-width: 14rem;
    column-gap: 1.2rem;
    font-size: 1rem;
    font-weight: bolder;
    margin: 0.2rem;
    padding: 0.4rem;
}

.borda p,
.boulin p {
    text-align: justify;
    margin: 0;
}

.borda p span,
.boulin p span {
    font-family: haritzaga;
}

.borda h1,
.boulin h1 {
    font-family: Haritzaga;
    color: #cd0000;
    font-size: 1.1rem;
    line-height: 1.2rem;
    text-align: center;
}

/**********       ADIXBOULIN       **********/

.boulin {
    background-image: url(../img/Jaunefon_opt.webp);
    line-height: 1.2rem;
}

.img_boulin {
    display: flex;
    justify-content: space-around;
    max-width: 100%;
}

.img_boulin img {
    width: 8rem;
    border-radius: 1.5rem;
    border: solid 0.1rem #00461ecc;
    margin: .3rem .5rem;
}

/**********     ADIXOTXOTE     **********/

.otxote {
    background-image: url(../img/8te2_opt.webp);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    line-height: 1rem;
    font-weight: bolder;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    position: relative;
}

.otxote article {
    column-count: 3;
    column-fill: balance;
    column-width: 14rem;
    column-gap: 1.5rem;
    font-size: 0.8rem;
    padding: 0 0.8rem;
    margin-bottom: 1.5rem;
}

.otxote h1 {
    color: #00156b;
    font-size: 1.2rem;
    text-align: center;
    font-family: haritzaga;
    line-height: normal;
    margin-bottom: 0.5rem;
}

.otxote h1 span {
    font-family: 'Cooper Black', sans-serif;
    font-size: 0.8rem;
}


.otxote h2 {
    font-family: 'Cooper Black', sans-serif;
    font-size: 0.8rem;
    color: #004b00;
    text-align: center;
    font-size: 1rem;
    font-weight: bolder;
    line-height: 1rem;
}

.otxote h2 span {
    font-size: 0.5rem;
}


.otxote p {
    color: #004b00;
    font-family: 'Cooper Black', sans-serif;
    text-align: justify;
}

.otxote_div {
    display: block;
}

.otxote_flot_left {
    float: left;
    width: 6rem;
    padding: 0;
    margin: 0.4rem;
}

.otxote_flot_right {
    float: right;
    width: 6rem;
    padding: 0;
    margin: 0.4rem
}

.otxote footer {
    position: absolute;
    bottom: 0;
    background: #1e00aa66
}

/**********   ADIXCONTACT   **********/

.contact {
    background-image: url(../img/fondver_opt.webp);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    text-align: center;
    font-family: 'Cooper Black', sans-serif;
    min-height: 90vh;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.contact h2 {
    font-family: haritzaga;
    color: #006900;
    font-size: 1.4rem;
    margin-top: 0.3rem;
    margin-bottom: 0.3rem;
    padding: 0
}

.contact h2 img {
    vertical-align: middle
}

.contact h2 .logo_adix {
    width: 3.4rem !important;
    height: 3.4rem !important;
    border-radius: 50%;
    object-fit: cover
}


.contact table {
    background: #5afa3c1a;
    table-layout: fixed;
    margin: auto;
    border-collapse: collapse;
    max-width: 98%
}

.contact table img {
    vertical-align: middle
}

.contact table span {
    display: inline-block
}

.contact table td {
    border: .2rem solid #006900;
    padding: .3rem
}

.contact_span {
    font-family: 'Cooper Black', sans-serif;
    font-size: .6rem;
    margin: 0;
    padding: 0
}

.contact_div {
    display: inline-block;
    justify-content: center;
    text-align: center
}

.contact_souligne {
    text-decoration: underline
}

.contact_petit {
    font-size: .6rem
}


/**********       ADIXMESSEDEMARIAGE      **********/

.messe {
    background-image: linear-gradient(#fff7, #fff5), url(../img/Fond_mariage_opt.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    font-family: 'Cooper Black', sans-serif;
    font-weight: bolder;
    text-align: center;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative
}

.messe h1 {
    color: #3c327d;
    margin: 0 auto;
    padding: 0;
    font-size: 1.5rem;
    font-family: haritzaga;
    text-align: center
}

.messe h2 {
    font-size: .8rem;
    margin: .1rem .4rem;
    font-weight: bold;
    text-align: center
}

.messe_intro {
    display: inline-block;
    margin: .4rem auto;
    padding-left: 1.3rem;
    text-align: left
}

.messe_intro li {
    font-size: .7rem;
    line-height: 1rem
}

.messe header span {
    display: block;
    font-size: .6rem;
    text-align: center
}

.messe header p {
    font-size: .9rem;
    line-height: .6rem;
    margin-bottom: .1rem
}

.messe_div {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: .4rem auto;
    max-width: 48rem;
    width: 100%
}

.messe_div ul {
    display: inline-block;
    font-size: .7rem;
    margin: 0;
    padding: 0 .8rem;
    list-style-type: none;
    text-align: left
}

.messe_div li {
    padding-bottom: .3rem;
    line-height: 1rem
}

.messe_div li>span {
    text-decoration: underline;
    font-size: .8rem
}

.messe_div .but {
    border: .1rem solid #000000;
    border-radius: .6rem;
    color: #000000;
    padding: 0 .2rem;
    text-align: center;
    font-family: 'Cooper Black', sans-serif;
    font-size: .7rem
}

.messe_div .butt {
    border: .1rem solid #0500f0;
    border-radius: .6rem;
    color: #0500f0;
    padding: 0 .2rem;
    text-align: center;
    font-family: 'Cooper Black', sans-serif;
    font-size: .7rem;
    cursor: pointer;
    transition-duration: .2s
}

.messe_div .butt:hover {
    box-shadow: 0 .5rem 1rem 0 #00000080, 0 .5rem 1rem 0 #0000004d;
    background: #0500f0;
    color: #ffffff
}

.messe_p {
    font-size: .7rem;
    margin: .4rem;
    margin-bottom: 2rem
}

.messe_p span {
    color: #0500f0;
    font-weight: bolder
}

.messe_p .sp_vert {
    color: #067900;
}

.messe footer {
    position: absolute;
    bottom: 0;
    background: #ffffff66
}

/**********      ADIXSOON      **********/

.soon {
    background-image: linear-gradient(#003c5f26, #ffffff3d), url(../img/Fond_musical_1_opt.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    text-align: center
}

.soon header {
    display: block;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap
}

.soon header p {
    font-family: haritzaga;
    color: #fd5959;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0;
    line-height: 2rem
}

.soon header p span {
    color: #7fff00;
    margin: .2rem
}

.soon article h2 {
    font-family: haritzaga;
    color: #7fff00
}

.soon h3 {
    font-family: haritzaga;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1.25rem;
    font-weight: bold;
    color: #fff;
    background: #003c72cc;
    border: .08rem solid #ffffffcc;
    border-radius: .65rem;
    padding: .35rem .8rem;
    margin: .8rem auto .35rem;
    text-shadow: 0 .06rem .08rem #00000099;
    box-shadow: 0 .16rem .4rem #001d2f40
}

.soon article p {
    font-family: 'cooper black', sans-serif;
    font-size: .8rem
}


.soon table {
    margin: 1rem auto;
    table-layout: fixed;
    max-width: 98%;
    border-collapse: separate;
    border-spacing: .15rem;
    border-radius: 1rem;
    overflow: hidden
}

.soon table th {
    background: #9eb4fc
}

.soon table td div {
    display: inline-block;
    vertical-align: middle
}

.soon table img {
    width: 3rem;
    vertical-align: middle;
    border-radius: .5rem
}

.soon table td,
.soon table th {
    padding: .1rem;
    font-size: .75rem;
    font-weight: bolder;
    color: #460000;
    height: 2rem;
    width: auto
}

.soon_div {
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: .5rem;
    margin: 0
}

.soon_div img {
    vertical-align: middle;
    margin: 0;
    padding: 0
}

.bg_barre_soon,
.soon footer {
    background: #bcfc28
}

.passe {
    background: #fff
}

.soon table tr.is-past td {
    background: #fff;
    color: #222;
}

.soon table tr.is-past td:first-child::after {
    content: " passé";
    display: inline-block;
    margin-left: .35rem;
    padding: .05rem .25rem;
    color: #666;
    background: #eeeeee;
    border-radius: .3rem;
    font-size: .65rem;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700;
}

.prevu {
    background: #c5ff95
}

.important {
    background: #ff9595
}

.jaune {
    font-family: 'cooper black',
        sans-serif;
    font-size: .8rem;
    color: #ffd700;
    font-weight: bold
}

.rouge {
    font-size: .8rem;
    color: #cc0000;
    font-weight: bold
}

.blanc {
    font-size: .8rem;
    color: #fff;
    font-weight: bold
}

.degrade {
    font-family: Haritzaga;
    font-weight: normal;
    font-size: 1.3rem;
    background-image: linear-gradient(to right, #0000a8 0%, #00f700, #ffff00, #ff1919, #7d00d6, #ee82ee 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent
}

/**********      ADIXGALERIES      **********/

.bg_barre_galeries {
    background: #fac864
}

.adixphotos {
    background-image: linear-gradient(#fff8, #e9fbff73), url(../img/Fond_musical_1_opt.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-blend-mode: screen
}

.cellule-clic {
    width: 100%;
    min-height: calc(100vh - 4rem);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem .65rem 2rem
}

.cellule-clic ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
    gap: .55rem;
    width: min(64rem, 100%);
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.cellule-clic li {
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: auto;
    margin: 0;
    font-family: 'Cooper Black', sans-serif;
    font-weight: bolder;
    font-size: clamp(.9rem, 2.3vw, 1.15rem);
    text-align: center
}

.cellule-clic li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 3.1rem;
    text-decoration: none;
    color: #fff;
    padding: .55rem .45rem;
    border: .12rem solid #cc0000;
    border-radius: .65rem;
    background: #008a3bcc;
    box-shadow: 0 .15rem .4rem #001d2f40;
    transition: transform .16s ease, box-shadow .16s ease, color .16s ease, border-color .16s ease
}

.cellule-clic li a:hover {
    background: url(../img_anim/drap_basque.webp);
    background-size: cover;
    border-color: #ac0000;
    color: #005a00;
    transform: translateY(-.08rem);
    box-shadow: 0 .28rem .7rem #001d2f66
}

.cellule-clic a:visited {
    color: #585858;
    border-color: #585858;
    background: #d0d0d0
}

@media all and (max-width:640px) {
    .cellule-clic {
        justify-content: flex-start;
        padding: .65rem .45rem 1.4rem;
    }

    .cellule-clic ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .42rem;
    }

    .cellule-clic li a {
        min-height: 2.85rem;
        padding: .45rem .25rem;
        border-radius: .55rem;
    }
}

/********** PRESENTATION **********/

.present {
    background-image: url(../img/fondNote_opt.webp);
    font-family: 'Cooper Black', sans-serif;
    font-size: .8rem;
    color: #050505;
    font-weight: bolder;
    line-height: 1rem;
    text-shadow: 0 .05rem .1rem #ffffff;

}

.present .barre_adix a img {
    width: 2.5rem
}

.bg_barre_present,
.present footer {
    background: #4d3a00cc;
    color: #fff8d7;
    text-shadow: 0 .05rem .12rem #000000b3
}

.present h2 {
    color: #001f0b;
    text-align: center;
    font-size: 1.2rem;
    font-family: haritzaga;
    margin-top: 0.5rem;
    text-shadow: 0 .06rem .12rem #ffffff, 0 0 .35rem #fff8cf
}

.present h2 img,
.present header img {
    width: 1rem;
    vertical-align: middle
}

.photos_present {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 0.1rem;

}

.photos_present div {
    padding: 0;
    width: 22rem;
    margin: 0.2rem 0;
    vertical-align: middle;
    font-size: 0.8rem;
    font-weight: bolder
}

.photos_present p {
    display: inline-block;
    margin: .25rem auto;
    padding: .25rem .45rem;
    color: #050505;
    background: #fff8e6e8;
    border: .05rem solid #ffffff;
    border-radius: .45rem;
    text-shadow: none
}

.chef {
    padding: 0;
    width: 22rem;
    margin: 0.2rem 0;
    vertical-align: middle;
    font-size: 0.8rem;
    font-weight: bolder
}

p.cadre_text {
    display: block;
    column-fill: balance;
    padding: 0.65rem;
    text-align: justify;
    font-size: 0.86rem;
    line-height: 180%;
    color: #050505;
    background: #fff8eefa;
    border-color: #ffffff;
    box-shadow: 0 .18rem .6rem #00000040;
    text-shadow: none
}

.present div {
    text-align: center
}

.present h2 span {
    font-size: 0.7rem;
    font-weight: bolder;
    font-family: Georgia, 'Times New Roman', Times, serif
}

.present div ul li {
    text-align: left;
    width: 100%;
    color: #050505;
    background: #fff8e6e8;
    margin: .18rem 0;
    padding: .18rem .35rem;
    border-radius: .35rem;
    text-shadow: none
}

.present div ul li span {
    text-decoration: underline
}

.present table {
    margin: 1rem auto;
    border-collapse: collapse;
    table-layout: fixed;
    max-width: 70%
}

.present table td {
    text-align: center;
    padding: 0.08rem;
    font-size: 0.76rem;
    border: 0.15rem solid #164400;
    background: #fff8eef5;
    color: #050505;
    text-shadow: none
}

.present table td img {
    width: 3rem;
    padding: 0.2rem
}


/**********       ADIXHISTORIQUE      **********/

.story {
    background-image: linear-gradient(#ffffffb0, #f0fbff99), url(../img/Choeur_hommes_opt.webp);
    background-repeat: repeat;
    background-size: auto;
    color: #00555f;
    font-family: 'Cooper Black', sans-serif;
    font-weight: bold
}

.story .galerie figcaption,
.story .galerie p {
    text-align: center;
    font-size: .9rem
}

.story .barre_adix,
.story footer {
    background: #4132ff4d
}

.story header div a img {
    width: 3rem
}

.story h1 {
    background: #0e00cd;
    border-radius: 1.8rem;
    color: #01ebdb;
    font-size: 1.7rem;
    text-align: center;
    margin: 0 3rem;
    padding: 0.25rem
}

.story_text {
    justify-content: center;
    align-items: center;
    align-content: center;
    margin: 1.5rem auto;
    max-width: 65%
}

.story_text img {
    margin-right: 1rem
}

.story h2 {
    font-size: 1.6rem;
    text-align: center;
    font-weight: bold;
    color: #007a5c;
    text-decoration: underline;
    margin-bottom: 2.5rem
}

.story p.story_renvoi {
    font-size: 1rem;
    color: #0120cf
}

.story_renvoi a {
    font-size: 1.2rem;
    text-decoration: none;
    border: 0.2rem solid;
    padding: 0.3rem;
    border-radius: 0.8rem;
    background: #019dc44d
}

.story_renvoi a:hover {
    color: #ff0000;
    border: 0.2rem solid;
    background: #ff000033
}

@media all and (max-width: 640px) {
    .agache {
        background-image: none;
        isolation: isolate;
        min-height: 100vh;
        min-height: 100dvh;
        position: relative;
    }

    .agache::before {
        content: "";
        position: fixed;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        background-image: url(../img/fondpierre_opt.webp);
        background-position: center top;
        background-repeat: repeat;
        background-size: auto;
    }
}

@media all and (max-width: 640px) {

    .anglet,
    .borda,
    .boulin,
    .contact,
    .otxote,
    .present {
        background-image: none;
        isolation: isolate;
        min-height: 100vh;
        min-height: 100dvh;
        position: relative;
    }

    .anglet::before,
    .borda::before,
    .boulin::before,
    .contact::before,
    .otxote::before,
    .present::before {
        content: "";
        position: fixed;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        background-position: center top;
        background-repeat: repeat;
        background-size: auto;
    }

    .anglet::before {
        background-image: url(../img/fondpastel_opt.webp);
    }

    .borda::before,
    .boulin::before {
        background-image: url(../img/Jaunefon_opt.webp);
    }

    .contact::before {
        background-image: url(../img/fondver_opt.webp);
    }

    .otxote::before {
        background-image: url(../img/8te2_opt.webp);
    }

    .present::before {
        background-image: url(../img/fondNote_opt.webp);
    }
}
