/*
Theme Name: Lucas Gillard 2026
Description: Réécriture propre du thème portfolio de Lucas Gillard architecte (post-hack 2026). CSS d'origine conservé, PHP entièrement réécrit.
Version: 2.0
Author: AMO
Text Domain: lucasgillard
*/

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, strong, 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 {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }



@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Regular-webfont.eot’);
src: url(‘fonts/Roboto-Regular-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Regular-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Regular-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Regular-webfont.svg#RobotoRegular’) format(‘svg’);
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Italic-webfont.eot’);
src: url(‘fonts/Roboto-Italic-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Italic-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Italic-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Italic-webfont.svg#RobotoItalic’) format(‘svg’);
font-weight: normal;
font-style: italic;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Bold-webfont.eot’);
src: url(‘fonts/Roboto-Bold-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Bold-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Bold-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Bold-webfont.svg#RobotoBold’) format(‘svg’);
font-weight: bold;
font-style: normal;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-BoldItalic-webfont.eot’);
src: url(‘fonts/Roboto-BoldItalic-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-BoldItalic-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-BoldItalic-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-BoldItalic-webfont.svg#RobotoBoldItalic’) format(‘svg’);
font-weight: bold;
font-style: italic;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Thin-webfont.eot’);
src: url(‘fonts/Roboto-Thin-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Thin-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Thin-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Thin-webfont.svg#RobotoThin’) format(‘svg’);
font-weight: 200;
font-style: normal;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-ThinItalic-webfont.eot’);
src: url(‘fonts/Roboto-ThinItalic-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-ThinItalic-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-ThinItalic-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-ThinItalic-webfont.svg#RobotoThinItalic’) format(‘svg’); (under the Apache Software License).
font-weight: 200;
font-style: italic;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Light-webfont.eot’);
src: url(‘fonts/Roboto-Light-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Light-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Light-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Light-webfont.svg#RobotoLight’) format(‘svg’);
font-weight: 100;
font-style: normal;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-LightItalic-webfont.eot’);
src: url(‘fonts/Roboto-LightItalic-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-LightItalic-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-LightItalic-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-LightItalic-webfont.svg#RobotoLightItalic’) format(‘svg’);
font-weight: 100;
font-style: italic;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-Medium-webfont.eot’);
src: url(‘fonts/Roboto-Medium-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-Medium-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-Medium-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-Medium-webfont.svg#RobotoMedium’) format(‘svg’);
font-weight: 300;
font-style: normal;
}

@font-face {
font-family: 'Roboto';
src: url(‘fonts/Roboto-MediumItalic-webfont.eot’);
src: url(‘fonts/Roboto-MediumItalic-webfont.eot?#iefix’) format(’embedded-opentype’),
url(‘fonts/Roboto-MediumItalic-webfont.woff’) format(‘woff’),
url(‘fonts/Roboto-MediumItalic-webfont.ttf’) format(‘truetype’),
url(‘fonts/Roboto-MediumItalic-webfont.svg#RobotoMediumItalic’) format(‘svg’);
font-weight: 300;
font-style: italic;
}











article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
        font-family: "Roboto";
}

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

textarea:focus, input:focus {
  outline: 0; }



.current-menu-item > a,
.current-menu-ancestor > a,
.current_page_item > a,
.current_page_ancestor > a {
    color: #5dadd3;}



a[href^="mailto:"] {   margin-top:10px;
  display:inline-block;
  font-family: "roboto" cursive;
  color: #111111;
  font-size: 14px;
}

a[href^="mailto:"]:hover {
color: #5dadd3;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

a {
  text-decoration: none;
color: #111111;}

h1 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 35px;
    font-weight: 300 !important;
    margin-bottom:0.2em;
}


h2 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 30px;
    font-weight: 300 !important;
    margin-bottom:0.2em;
}

h3 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 20px;
    font-weight: 100 !important;
    margin-bottom:0.2em;
}


h4 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 16px;
    font-weight: 300 !important;
    margin-bottom:0.2em;
}

h5 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    margin-bottom:0.2em;
}


h6 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    margin-bottom:0.2em;
}


p {
  font-size: 1em;
  line-height: 18px; }



/* WB-Width Largeur website */
.wb-width {
    clear:both;
  width: 100%;
  max-width: 970px;
  margin: auto;
    overflow:hidden;
}



/* Naviation */

.news-title p {
    font-size:12px;
    color:#656565;
}

#menu-portoflio-container {
    height:auto;
    overflow:hidden;
    text-align: center;
    width:auto;
        margin:auto;
    text-align:center;
}

#menu-portoflio-container li {
    display:inline-block;
    height: 35px;
    text-align: center;
    margin-bottom:10px;
}

#menu-portoflio-container a {
    text-decoration:none;
    min-width:150px:;
    margin-left:20px;
    margin-right:20px;
    font-size:13px;
}

.menu {
    padding-top:5px;
}

nav {
  height: 90px;
  line-height: 80px;
}

nav img {
  float: left;
  display: block;
  height: 85px;
  width: auto;
  padding-top: 10px; }

.webtitle {
  float: left;
    width:50%;

}


nav .webtitle h3 a{
    display:block;
    text-decoration: none;
    font-family: "roboto" cursive;
    font-size: 15px;
    font-weight: 100 !important;
    float:left;
    margin-top:12px;
    padding:none;
    height:15px;
    widht:100%;
}

nav .webtitle h4 a{
    font-family: "roboto" cursive;
    font-size: 13px;
    font-weight: 300 !important;
    display:block;
    float:left;
    margin:none;
    padding:none;
    height:12px;
    width:auto;
    clear:both;
}

nav h1 {
    font-family: Roboto;
    font-size:18px;
    font-style: normal;
  font-weight: 100 !important;
  float: left;
  line-height: 15px;
  color: #1f1f1f;
margin:0;}

nav h2 {
    font-family: Roboto;
    font-size:15px;
    font-weight: 300;
  clear: both;
  float: left;
  line-height: 40px;
  color: #4292ff;
    margin;0;}

nav .logo {
  float: left;
  width: 75%;
  padding-left: 15px; }

nav .menu {
  display: none; }

nav ul {
  float: right;
  text-align: center;
  width: auto; }

nav li {
  display: block;
  float: left;
  width: auto;
  line-height: 80px; }

nav a {
 font-family: Roboto;
 font-size:13px;
 font-style: normal;
  font-weight: 300;
  display: block;
  width: 100px;
  color: #343434; }

nav a:hover, a:active {
  color: #5dadd3;
 -webkit-transition: linear .5s;
  /* For Safari 3.1 to 6.0 */
  transition: linear .3s; }

/* Movile Navigation */
.mobilenav {
  margin-top: 10px;
  display: block;
  width: 60px;
  float: right;
  margin-right: 20px; }

.mobilenav a {
  display: block;
  width: 60px;
  height: 60px;
  background: url(img/menu.png); }

.mobile-hide {
  background: #3c3c3c;
  display: none; }

.mobile-menu {
  margin: auto;
  max-width: 970px;
  display: block;
  width: 100%;
  overflow: hidden;
  *zoom: 1;
  padding: 20px;
  text-align: center; }

.mobile-menu li {
  display: block;
  width: 100%;
  float: left;
  height: 60px;
  padding: 2%;
  line-height: 60px;
  margin-bottom: 10px; }

.mobile-menu a {
  display: block;
  color: #ffffff; }

.mobile-menu a:hover {
  display: block;
  background: #343434;
}

.mobile-menu:before,
.mobile-menu:after {
  content: " ";
  display: table; }

.mobile-menu:after {
  clear: both; }


/* Page Alone */
.work-nav {
  text-align: center;
  margin: auto;
  height: auto;
  width: 360px;
  margin-top: 2em; }

.content-title {
  font-family: Roboto;
  font-weight: 100;
  display: block;
  width: 100%;
  float: left;
  text-align: center;
  font-size: 2.5em;
  margin-bottom: 1em; }

.content p {
  font-size: 1em;
  color: #666666;
  padding-top: 10px; }

.previous {
  position:fixed;
  bottom:2%;
  left:5%;
  width:40px;
  float: left;
  line-height: 3em; }

.next {
  position:fixed;
  bottom:2%;
  right:7%;
  width: 40px;
  float:left;
 line-height: 3em;
}

.white-barre {
 position:fixed;
  bottom:0;
  width:100%;
  height:70px;
background-color:white;
}


.no-arrow {
  heigt:40px;
  float: left;
  line-height: 3em; }

.previous a {
  font-size: 0.5px;
  width: 50px;
  height: 49px;
  background: url(img/arrowred.png) top left;
  background-color:white;
  display: block; }

.previous a:hover {
  background: url(img/arrowred.png) bottom left;
  }


.next a {
  font-size: 0.5px;
  width: 50px;
  height: 49px;
  display: block;
  background: url(img/arrowred.png) top right;
  background-color:white;
}

.next a:hover {
  background: url(img/arrowred.png) bottom right;
 }


.post-content {
  clear: both;
  }


.thumbnail-page {
    float:left;
    width:100%;}

.post-content blockquote {
    float:left;
    width:100%;
    clear:both;
}


.post-content p {
    float:left;
    width:auto;
    color:#656565;
    font-size:13px;
    padding:10px;
}

.post-content img {
    display:block;
}

.post-content blockquote p {
    width:100%;
    font-size: 13px;
    font-family: roboto;
    padding:10px;
}

.post-content blockquote h1 {
    padding-left:10px;
    padding-right:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 35px;
    font-weight: 300 !important;
    margin-bottom:1em;
    color:#585858;
}


.post-content blockquote h2 {
    padding-top:10px;
    padding-left:10px;
    display:block;
    width:100%;
    float:left;
    font-family: roboto;
    font-size: 30px;
    font-weight: 300 !important;
    margin-bottom:0.2em;
    color:#585858;
}

.post-content blockquote h3 {
    padding-left:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 20px;
    font-weight: 100 !important;
    margin-bottom:0.2em;
    color:#767676;
}


.post-content blockquote h4 {
    padding-left:10px;
    display:block;
    width:100%;
    float:left;
    font-family: "roboto" cursive;
    font-size: 16px;
    font-weight: 300 !important;
    margin-bottom:0.2em;
    color:#989898;
}

.post-content blockquote h5 {
    padding-left:10px;
    display:block;
    width:100%;
    float:left;
    margin-bottom:0.2em;
    color:#989898;
}


.post-content blockquote h6 {
    padding-left:10px;
    display:block;
    width:100%;
    float:left;
    margin-bottom:0.2em;
    color:#989898;
}


/* Portfolio */
#portfolio {
  width: 100%;
  overflow: hidden;
}

.work {
  float: left;
  width: 50%;
  position: relative;
  margin: 0 auto;
}


.work-thumb-cat {
  position: absolute;
  display: block;
  height: 100%;
  width: 100%; }

.work-info {
  visibility: hidden;
  width: 100%;
  height:100%;
  background: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  border:solid 1px #dbdbdb;
    opacity:0;
    transition: opacity .5s ease-in-out;
   -moz-transition: opacity .5s ease-in-out;
   -webkit-transition: opacity .5s ease-in-out;
 }

.work-thumb {
  height: 100%;
  overflow: hidden; }

  .work-pitch {
    color: #1f1f1f;
    padding: 15px;
    font-size: 11px;
   }

.work-thumb img {
  display: block;
  border: none;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}


.work-title h3 {
  font-family: 'Advent Pro', sans-serif;
  font-size:26px;
  font-weight: 200;
  text-transform: uppercase;
  display: block;
  padding:15px;
  color: #1f1f1f; }

.project {
    position:absolute;
    bottom:15px;
    right:15px;
    width:50%;
    line-height: 25px;
    display:block;
    background-color:#333333;
    color:white;
    text-align: center;
    text-transform: uppercase;
    font-size:14px;
    margin:auto;
    height:25px;
}


.back a {
 margin-left:38px;
 position:absolute;
 width:80px;;
 line-height: 20px;
 display:block;
  font-size: 0.5px;
  width: 50px;
  height: 48px;
  background: url(img/arrowcircle.png) top left;
  background-color:white;
  display: block; }

.back a:hover {
  background: url(img/arrowcircle.png) bottom left;
  }

.project {
 margin-left:38px;
 position:absolute;
 width:80px;;
 line-height: 20px;
 display:block;
  font-size: 0.5px;
  width: 50px;
  height: 48px;
  background: url(img/arrowcircle.png) bottom right;
  background-color:white;
  display: block; }

/* Gallery WP */

#gallery-1 {
    padding-left:10px;
    padding-right:10px;
    clear:both;
    margin: auto;
    width: 100%;
    border:none;
    text-align: center;
	}
	#gallery-1 .gallery-item {
		margin-top: 10px;
		text-align: center;
        height:auto;
        border:none;

	}
	#gallery-1 img {
		border: none !important ;
        padding:1px;
        width:100%;
        height:auto !important ;
	}
	#gallery-1 .gallery-caption {
		margin-left: 0;
	}
	/* see gallery_shortcode() in wp-includes/media.php */




/* Responsive Iframe */


.video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;clear:both;}
.video-container iframe, .video-container object, .video-container embed, .video-container video { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }


/* News */

.news {
    overflow:hidden;
    padding:10px;
    width:90%;
    border-bottom:dotted 1px silver;
    margin:auto;
    clear:both;
}

.news img {
    display:block;
}

.news-thumb {width:30%;float:left;max-width:230px;max-height:230px;}
.news-thumb img{width:100%; height:auto;}

.news-info {width:100%;float:left;color:#1f1f1f;text-align:center;}
.news-pitch {    width:100%;
    font-size: 13px;
    font-family: "roboto" cursive;
    padding:15px;
    color:#656565;
text-align: left;
}

/* Footer */

.houzz a {
  padding-left: 0px !important;
  padding-top:5px !important;
}

.footer {
  margin-top:40px;
  margin-bottom: 20px;
  text-align: center;
  border-top:solid 1px silver;
  padding-top:15px;
}

.footer a {
  display: inline-block;
  padding-left: 15px;
  padding-top: 15px; }

.footer p {
    width:100%;
    clear:both;
    font-family: roboto;
    color:#666666;
    font-size:12px;
}


.footer strong {
    color:#3c3c3c;
    font-size:13px;
    padding-left:15px;
    padding-right:5px;
}


/* IMG ARTICLE SIZE */

.aligncenter {
    margin:auto;
    padding:auto;
    text-align:center;
}

.alignleft {
    float:left;
    margin-right:15px;
}


.alignright {
    float:right;
    margin-left:15px;
}

.size-full {
    width:100%;
    height:auto;
    clear:both;
}

.size-medium {
    width:50% !important;
    height:auto;
}


@media screen and (min-width: 700px)  {

    .post-content p {
    float:left;
    padding:10px;
        width:auto;

}



  .work-nav {
    width: 700px; }


  #portfolio {
    width: 100%;
    margin: auto;}

  .work {
    width: 23.5%;
    height: 23.5%;
    margin: 0.75%;
  }

    #gallery-1 .gallery-item {
        float: left;
		margin-top: 10px;
		text-align: center;
        padding-left:5px;
        padding-right:5px;
        border:none;
	}


  .mobile-hide {
    background: #3c3c3c;
    display: none; } }

@media screen and(min-width: 900px)    {
  .work-nav {
    width: 900px; }


  #portfolio {
    width: 100%; }




  .sp-small-head {
    background: url(img/bg-smallhead.png) top repeat-x; } }
@media screen and (min-width: 1000px)    {

  .wrapper-1 {
 position: fixed;
  background-color:#FFF;
  z-index:200;
  left: 0;
  right: 0;
  top:0;
  background: #fff;
}

.wrapper-1 .wb-width {
  border-bottom:solid 1px silver ;
background: #fff;
}
    body {    padding-top:110px;}

    .work-nav {
    width: 900px; }


  .content-title {
    width: 100%; }

  .slider {
    height: 250px;
    overflow: hidden; }

  .slide-link {
    float: right;
    margin-right: 40px;
    margin-top: 5px; }

  nav .menu {
    display: block; }

  nav .logo {
    float: left;
    width: 35%; }

  .mobilenav {
    display: none; }

.post-content blockquote p {
    width:50%;
    font-size: 13px;
    font-family: "roboto" cursive;
    padding:10px;
}

    .post-content blockquote h1 {
        width:50%;
}


.post-content blockquote h2 {
    width:50%;
}

.post-content blockquote h3 {
    width:50%;
}


.post-content blockquote h4 {
    width:50%;
}

.post-content blockquote h5 {
    width:50%;
}


.post-content blockquote h6 {
    width:50%;
}


.news-pitch blockquote p {
    width:50%;
    font-size: 13px;
    font-family: "roboto" cursive;
    padding:10px;
    float:left;
}

.news-pitch blockquote h1 {
        width:50%;
}


.news-pitch blockquote h2 {
    width:50%;
}

.news-pitch blockquote h3 {
    width:50%;
}


.news-pitch blockquote h4 {
    width:50%;
}

.news-pitch blockquote h5 {
    width:50%;
}


.news-pitch blockquote h6 {
    width:50%;
}



 }

@media screen and (min-width: 1200px)  {
  #portfolio {
    width: 970px; }

.work:hover .work-info {
   visibility: visible;
    opacity:0.85;
}

 }
@media screen and (min-width: 1275px)   {
    .white-barre {
background:none;
}
.next {
  bottom:45%;
}

.previous {
  position:fixed;
  bottom:45%;
}


 }
@media screen and (min-width: 1700px)   {




}


#wb-player { position:relative; display:block; height:auto; max-height:650px;overflow:hidden;}

video {position: relative;display:block;right: 0;bottom: 0;min-width: 100%;width: auto;
    height: auto;z-index: -100;background-color:#fff;background:url(../img/schrijven.jpg) no-repeat;
    top: 0px;left: 0px;background-size: cover;background-position: 50% 50%;overflow:hidden;}

.wb-title-video {color:#fff;position:absolute;top:30%;text-align:center;width:100%; }


/* ============================================================
   Correctifs 2026 (réécriture propre) : largeurs de galerie.
   L'original dépendait du style inline injecté par WP
   (use_default_gallery_style) ; on le remplace par du CSS explicite.
   ============================================================ */
.gallery { overflow: hidden; clear: both; }
.gallery .gallery-item { float: left; margin: 0; }
.gallery-columns-2 .gallery-item { width: 50%; }
.gallery-columns-3 .gallery-item { width: 33.333%; }
.gallery-columns-4 .gallery-item { width: 25%; }
.gallery-columns-5 .gallery-item { width: 20%; }
@media only screen and (max-width: 600px) {
  .gallery .gallery-item { width: 50% !important; }
}

/* Texte accessible aux moteurs/lecteurs d'écran mais invisible (h1 de la home). */
.screen-reader-text {
  position: absolute;
  width: 1px; height: 1px;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}
