/*
Theme Name: Architecture Nyon
Author: Tris informatique
Author URI: https://www.trisinformatique.com
Version: 7.1.1
Template: enfold
*/

#top .logo img {
	margin-top: 10px;
}

#top .logo, .logo a {
	overflow: visible;
}

.svg-overlay{
	height: 150px;
    position: absolute;
    top: auto;
    bottom: 180px;
    left: 0;
    right: 0;
}
.svg-overlay .container { min-width: 100% !important; padding:0px; }
.svg-overlay-top .container { min-width: 100% !important; padding:0px; }
.svg-overlay svg { width:100%; }

@media (max-width: 992px) {
	.svg-overlay {
		bottom: 50px;
	}	
}

#tris-homepage-slider {
	z-index: 1;
}

.avia-fullscreen-slider .caption_bottom .slideshow_caption {
	bottom: 290px!important;
}

p {
	text-align: justify!important;
}

.slideshow_align_caption h1{
	color: white!important;
}

.slideshow_align_caption h2{
	color: white!important;
}

h1, h2 {
	font-weight: 400!important;
	color: #233E87!important;
}

h1 {
	margin-bottom: 25px!important;
}

#full_slider_1 {
	max-height: 235px;
	overflow: hidden;
}

#tris-homepage-slider .slideshow_align_caption {
	background: rgba(35, 62, 135, 0.5)!important;
	max-width: 60%;
    padding: 20px;
}

@media (max-width: 992px) {
	#tris-homepage-slider .slideshow_align_caption {
		max-width: 90%;
	}
	
	#tris-homepage-slider .slideshow_inner_caption {
		max-height: 200px;
	}
}

.main_color .special-heading-inner-border {
	border-color: #233E87;
	border-width: initial;
	opacity: 1;
}

.avia_textblock strong {
	color: #515151!important;
}

/* ninja-form styling */

#top .nf-field-description {
	z-index:100;
}
/*only for checkbox consent*/
.checkbox-container.label-right .checkbox-wrap{
	flex-direction:column;
}
#top .nf-multi-cell .nf-cell{
	padding:0;
	padding-right:5px;
}
#top .nf-form-content {
	padding-left:0;
}
/*btn*/
#top .nf-field .submit-wrap .nf-field-element{
	width: fit-content;
	margin-left: 6px;
}
#top .nf-field .nf-field-element button{
	margin-left: 6px;
}
#top .nf-field .nf-field-element button,
#top .nf-field .submit-wrap .nf-field-element input[type="submit"]{
	padding:15px 30px;
	overflow:visible;
	color: #233E87;
	background: #c3d1e4;
	font-weight: bold;
}

#nf-label-field-14 {
	font-weight: bold!important;
}

#top .nf-field .submit-wrap .nf-field-element input[type="submit"]:hover {
	color: #c3d1e4;
	background: #233E87;
}

#top .nf-fu-progress{
	border-radius:0;
	height:var(--border-width);
}
#top #ninja_forms_required_items,
.nf-field-container {
    margin-bottom: 0px !important;
}
#top label{
font-weight:400;	
}

#top .nf-field-element input[type="text"],
#top .nf-field-element input[type="email"],
#top .nf-field-element input[type="tel"]
{
	margin-bottom: 0 !important;
}
button,
input[type="button"] {
    cursor: pointer;
}
/*END ninja form */

/* HEADER */
/* Style de base */
.av-main-nav > li > a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  overflow: hidden;
}

.av-main-nav > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 15px;
  width: 100%;
  height: 2px;
  background: #233e87;
  transform: translateX(-101%);
  transition: transform 0.3s ease;
}

.av-main-nav > .av-burger-menu-main > a::after {
	content: none!important;
}

.av-main-nav > li > a:hover::after {
  transform: translateX(0);
}


.menu-item  .avia-menu-text {
	font-weight: normal;
	font-size: 17px;
}

.current-menu-item .avia-menu-text {
	font-weight: bold;
}
/* END HEADER */

/* AVIA ELEMENT */
.avia-button-wrap a.av-link-btn {
	background: none;
	color : #233E87!important;
	font-weight: bold;
	text-decoration: underline!important;
	border: none;
}

.avia-button-wrap a.av-link-btn:hover {
	background: none;
	color : #c3d1e4!important;
	font-weight: bold;
	text-decoration: underline!important;
	border: none;
}

.trs-service-excerpt {
	padding: 0px 25px;
}

/* Style de base */
a.avia-button.av-link-btn {
  background: none !important;     
  color: #233E87 !important;       /* Texte bleu */
  font-weight: bold;               
  text-decoration: underline;      
  transition: color 0.3s ease;     
  border: none !important;         
  padding: 0 !important;
  position: relative;              /* Nécessaire pour le ::after */
  cursor: pointer;                 /* Reste cliquable comme un bouton */
}

a.avia-button.av-link-btn:hover {
  color: #233E87 !important;
}

/* Flèche cachée par défaut */
a.avia-button.av-link-btn::after {
  content: "→";                    /* La flèche */
  color: #233E87;                  /* Même bleu que le texte */
  position: absolute;
  opacity: 0;                      /* Invisible au départ */
  transform: translateX(5px);      /* Légèrement décalée */
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.bottom-hero .avia-button-wrap a.av-link-btn::after {
	color: #FFFFFF;  
}

/* Au hover, on fait apparaître la flèche */
a.avia-button.av-link-btn:hover::after {
  opacity: 1;
  transform: translateX(10px);     /* Elle glisse vers la droite */
}


span.avia_button_background.avia-button.avia-color-theme-color-highlight {
    background: none!important;
    border: none!important;
}


/* SHORTCODES */
.enfold-portfolio-categories-icons {
    display: flex;
    justify-content: space-around; /* espace égal sur toute la largeur */
    flex-wrap: wrap; /* permet de passer à la ligne si trop d’éléments */
    width: 100%;
    margin: 20px 0;
}

.portfolio-cat-item {
    flex: 1; /* prend une largeur égale */
    min-width: 120px; /* largeur mini */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; /* aligne tout en haut */
    text-align: center;
}

.portfolio-cat-icon {
    font-size: 32px;
    margin-bottom: 8px;
    line-height: 1; /* évite les décalages verticaux */
	height: 120px;
	width: 120px;
}

.portfolio-cat-title {
    min-height: 40px; /* force la même hauteur pour tous les titres */
    display: flex;
    align-items: center; /* centre verticalement le texte */
    justify-content: center; /* centre horizontalement */
	text-transform: uppercase;
	color: #233E87;
}

.portfolio-cat-title a {
    text-decoration: none;
    font-weight: bold;
    color: #333;
}

.portfolio-cat-title a:hover {
    color: #0073aa;
}


/* END SHORTCODES */

.av-sort-by-term {
	background: rgba(35, 62, 135, 0.1);
	padding: 15px 0px;
	margin: 40px 0px;
}

.text-sep {
	margin: 0px 20px;
}

.av-sort-by-term .inner_sort_button {
	color: #233E87;
    text-transform: uppercase;
}

.av-sort-by-term .active_sort .inner_sort_button {
    font-weight: bold;
}


.tris-member-card .av_textblock_section p {
    margin: 0px;
}

.tris-member-card .av_textblock_section:first-of-type p {
    text-transform: uppercase;
    margin: 9px 0px;
}

.trs-no-margin {
	margin-top: 0px!important;
	margin-right: 0px!important;
	margin-bottom: 0px!important;
	margin-left: 0px!important;
}

.tris-service-card p {
	text-align: center!important;
}

/* MASSONERY */
.av-masonry-container figcaption .avia-arrow{
	display: none;
}

.av-masonry-container figcaption {
	background-color: white!important;
}

.av-masonry-container h3 {
	font-weight: 400;
}

/* END MASSONERY */

.bottom-hero {
	text-align: center;
    text-align: center;
    color: white;
	padding: 85px 20px;
}

.bottom-hero h2{
	color: white!important;
	text-align: center;
	max-width: 35%;
	margin: 0px auto!important;
}

.bottom-hero .avia-button-wrap a.av-link-btn{
	color: white!important;
	text-align: center;
}

.bottom-hero p {
	max-width: 50%;
	margin: 11px auto;
}

@media (max-width: 992px) {
	.bottom-hero h2{
		max-width: 100%;
	}
	
	.bottom-hero p {
		max-width: 100%;
		font-size: 0.8rem;
		margin: 0px;
		text-align: center!important;
	}
	
	.bottom-hero {
		padding: 20px;
	}
}

/* --- Contact --- */
.avia_codeblock .nf-form-cont .nf-before-form-content {
	font-weight: bold;
}

.iconbox svg {
	max-width: 30px;
}
/* --- End Contact --- */

/* --- Magazine Card Custom Enfold --- */
#top .slide-entry.posttype-post {
    background: #fff;
    border-radius: var(--border-radius);
    box-shadow: 0 3px 16px rgba(39,179,166,0.08);
    border: 1.5px solid var(--teal-light);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 320px;
    transition: box-shadow .16s, transform .16s;
}
#top .slide-entry.posttype-post:hover {
    box-shadow: 0 8px 28px 0 rgba(39,179,166,0.15);
    transform: translateY(-3px) scale(1.012);
}

#top .slide-entry.posttype-post .slide-image {
    width: 100%;
    aspect-ratio: 16/10;
    background: var(--teal-light);
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    overflow: hidden;
    position: relative;
    margin: 0;
}
#top .slide-entry.posttype-post .slide-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    transition: transform .18s;
}
#top .slide-entry.posttype-post:hover .slide-image img {
    transform: scale(1.035) rotate(-0.2deg);
}

/* Badge date */
#top .slide-entry.posttype-post .entry-footer .slide-meta {
    display:none;
	position: absolute;
    top: 0.65rem;
    left: 1rem;
    background: #fff;
    color: var(--main-color);
    padding: 0.27em 1.1em;
    border-radius: calc(var(--border-radius) * 0.7);
    border: 1px solid var(--teal-light);
    box-shadow: 0 2px 7px rgba(39,179,166,0.07);
    z-index: 2;
    pointer-events: none;
}

/* --- Contenu --- */
#top .slide-entry.posttype-post .slide-content {
    display: flex;
    flex-direction: column;
    padding: 1.06rem 1.06rem 1rem 1.06rem;
    min-height: 135px;
    flex: 1 1 auto;
    background: transparent;
    position: relative;
}

#top .slide-entry.posttype-post .slide-entry-title {
    color: var(--secondary-color);
    font-size: 1.10rem;
    font-weight: 700;
    margin: 0 0 .44em 0;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 2.5em;
    letter-spacing: -0.01em;
}
#top .slide-entry.posttype-post .slide-entry-title a {
    color: inherit;
    text-decoration: none;
    transition: color .13s;
}
#top .slide-entry.posttype-post:hover .slide-entry-title a {
    color: var(--main-color);
}

/* Badge catégorie news, sous le titre */
#top .slide-entry.posttype-post .blog-categories {
    display: inline-block;
    background: var(--pill-bg);
    color: var(--pill-color);
    font-weight: 700;
    border-radius: calc(var(--border-radius) * 0.85);
    padding: 3px 13px 2px 13px;
    margin-top: 10px;
    text-transform: uppercase;
    border: 1px solid var(--teal-light);
    letter-spacing: 0.01em;
    transition: background .17s, color .14s;
}

/* Lire la suite : bouton stylé */
#top .slide-entry.posttype-post .read-more-link {
    margin-top: auto;
    text-align: left;
}
#top .slide-entry.posttype-post .read-more-link .more-link {
    background: var(--beige);
    color: #fff !important;
    padding: 7px 18px;
    border-radius: 99px;
    transition: background .15s, opacity .15s;
    display: inline-flex;
    align-items: center;
	justify-content: center;
  	width: auto;
}
.main_color .slide-entry.posttype-post a.more-link .avia-svg-icon svg:first-child{
	fill:#fff;
}
#top .slide-entry.posttype-post .read-more-link .more-link:hover {
    opacity:0.8;
}

/* --- Responsive --- */
@media (max-width: 900px) {
    #top .slide-entry.posttype-post .slide-content { padding: .95rem .95rem .90rem .95rem;}
}

@media (max-width: 767px) {
	.responsive #top #wrap_all .avia-content-slider-odd .slide-entry.posttype-post.slide-parity-even{margin-bottom:20px;}
	#top .avia-content-slider .slide-entry-wrap{margin-bottom:0;}
}
@media (max-width: 600px) {
    #top .slide-entry.posttype-post { border-radius: calc(var(--border-radius) * 0.7);}
    #top .slide-entry.posttype-post .slide-image,
    #top .slide-entry.posttype-post .slide-image img { border-radius: calc(var(--border-radius) * 0.7) calc(var(--border-radius) * 0.7) 0 0;}
    #top .slide-entry.posttype-post .slide-content { padding: .75rem .78rem .75rem .78rem;}
    #top .slide-entry.posttype-post .slide-entry-title { font-size: 1em;}
}

/* END MAGAZINE CARD CUSTOM ENFOLD "/

/* FOOTER */
#footer {
    padding: 0px;
	margin-bottom: 60px;
}

#footer #schedules {
	line-height: 2.5rem;
}

#footer .widget {
    margin: 0px;
}

#footer .widgettitle {
    font-size: 1.5em;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    border-color: var(--orange);
}
#footer p{
	margin: 0;
}

#footer h3 {
	 font-size: 19px;
	font-weight: 400;
	border: none!important;
	text-transform: uppercase;
	margin-bottom: 16px;
}

#footer .av-icon-char{
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
}

#footer .contact-info {
	margin-top: 25px;
}

#footer .contact-detail{
	display: inline-block;
}
#socket .copyright{ width : 100%; }