/* ===================================== */
/* NAUDET 1860 — VERSION PREMIUM PROPRE  */
/* CSS NETTOYÉ (VISUEL IDENTIQUE)       */
/* ===================================== */


/* ===================================== */
/* VARIABLES */
/* ===================================== */

:root{
--naudet-bg:#f3efe8;
--naudet-white:#ffffff;
--naudet-text:#1f1a17;
--naudet-text-soft:#6f5c49;
--naudet-line:#d9ccba;
--naudet-line-soft:#ebe2d7;
--naudet-hover:#f7f2eb;
--naudet-footer:#e8dfd3;
--naudet-shadow:0 8px 22px rgba(0,0,0,0.05);
}


/* ===================================== */
/* RESET */
/* ===================================== */

*{box-sizing:border-box;}

html,
body{
margin:0;
padding:0;
background:var(--naudet-bg);
font-family:'Playfair Display', serif;
overflow-x:hidden;
color:var(--naudet-text);
}

img{
max-width:100%;
height:auto;
display:block;
}

a{
transition:all 0.28s ease;
}


/* ===================================== */
/* STRUCTURE CENTRALE */
/* ===================================== */

#maincontainer,
#bodycontainer{
width:100%;
max-width:1280px;
margin:0 auto;
background:var(--naudet-white);
position:relative;
}


/* ===================================== */
/* TOP BAR */
/* ===================================== */

#topbar{
position:fixed;
top:0;
left:50%;
transform:translateX(-50%);
width:100%;
max-width:1280px;
height:42px;
background:#ffffff;
border-bottom:1px solid #e5e5e5;
z-index:100000;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 20px;
font-size:13px;
letter-spacing:0.5px;
}

#topbar-logo img{
height:28px;
}

#topbar-links{
display:flex;
gap:22px;
}

#topbar-links a{
text-decoration:none;
color:#000;
}

#topbar-links a:hover{
color:#8c6f4e;
}


/* ===================================== */
/* HEADER */
/* ===================================== */

#headercontainer{
position:fixed;
top:42px;
left:50%;
transform:translateX(-50%);
width:100%;
max-width:1280px;
z-index:99999;
background:rgba(245,241,232,0.96);
backdrop-filter:blur(10px);
border-bottom:1px solid #e7ddd0;
padding-bottom:4px;
}


/* ===================================== */
/* LOGO */
/* ===================================== */

#headerarea{
padding:28px 20px 16px 20px;
text-align:center;
}

#headerlogo{
text-align:center;
margin:auto;
}

#headerlogo img{
max-width:220px;
margin:auto;
display:block;
}


/* ===================================== */
/* MENU */
/* ===================================== */

#headermenu{
margin-top:10px;
padding-bottom:14px;
}

#hmenu{
text-align:center;
}

#hmenu > li{
display:inline-block;
margin:0 18px;
}

#hmenu > li > a.menu{
text-decoration:none;
color:#000;
font-size:14px;
letter-spacing:1px;
text-transform:uppercase;
}

#hmenu > li > a.menu:hover{
color:#8c6f4e;
}


/* ===================================== */
/* CONTENU */
/* ===================================== */

#bodycontainer{
padding-top:170px;
}

#bodyarea{
padding:40px 20px;
}


/* ===================================== */
/* TITRES PRODUITS */
/* ===================================== */

.productname a,
.viewtbl a,
.sectiontbarea a,
h2 a,
h3 a{
color:#000 !important;
text-decoration:none !important;
font-weight:normal !important;
font-family:'Playfair Display', serif;
font-size:18px;
letter-spacing:0.4px;
line-height:1.25;
}

.productname a:hover,
.viewtbl a:hover,
.sectiontbarea a:hover,
h2 a:hover,
h3 a:hover{
color:#8c6f4e !important;
}


/* ===================================== */
/* BOUTONS PREMIUM */
/* ===================================== */

.btnmain,
.btn-savoir-plus,
.btn,
.btn-secondary,
.btn-outline,
button,
input[type="submit"],
input[type="button"],
a.button,
a.button-secondary{

display:inline-block;
background:#ffffff !important;
color:var(--naudet-text) !important;
border:1px solid var(--naudet-line) !important;
border-radius:0 !important;
padding:10px 24px !important;
min-width:120px;
text-align:center;
text-decoration:none !important;
text-transform:uppercase;
font-family:'Playfair Display', serif;
font-size:13px !important;
letter-spacing:0.8px;
box-shadow:inset 0 0 0 1px #f1e8dc;
transition:all 0.28s ease;
}

.btnmain:hover,
.btn-savoir-plus:hover,
.btn:hover,
.btn-secondary:hover,
.btn-outline:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
a.button:hover,
a.button-secondary:hover{

background:var(--naudet-hover) !important;
border-color:#cbb89f !important;
box-shadow:0 4px 10px rgba(0,0,0,0.04), inset 0 0 0 1px #f4ede4;
transform:translateY(-1px);
}

.btnmain:active,
.btn:active,
button:active{
transform:translateY(0);
box-shadow:inset 0 2px 6px rgba(0,0,0,0.06);
}


/* ===================================== */
/* LISTING PRODUITS */
/* ===================================== */

td[align="center"][valign="top"],
td[valign="top"][align="center"]{

background:#fff;
border:1px solid var(--naudet-line);
padding:16px 14px 18px 14px !important;
vertical-align:top;
position:relative;
transition:all 0.28s ease;
}

td[align="center"][valign="top"]::before,
td[valign="top"][align="center"]::before{

content:"";
position:absolute;
top:6px;
left:6px;
right:6px;
bottom:6px;
border:1px solid var(--naudet-line-soft);
pointer-events:none;
}

td[align="center"][valign="top"]:hover,
td[valign="top"][align="center"]:hover{

border-color:#cfbea8;
box-shadow:var(--naudet-shadow);
transform:translateY(-2px);
}


/* prix */

.price,
.productprice,
.prix,
span[class*="price"]{

color:var(--naudet-text);
font-family:'Playfair Display', serif;
font-size:17px;
}


/* ===================================== */
/* STRUCTURE BOUTIQUE */
/* ===================================== */

#left-column{
width:25%;
float:left;
}

#content-wrapper{
width:75%;
float:left;
}


/* ===================================== */
/* FOOTER */
/* ===================================== */

#footercontainer{
background:var(--naudet-footer);
width:100%;
border-top:1px solid #d6cfc4;
margin-top:60px;
}

#footercontainer > div{
max-width:1280px;
margin:0 auto;
padding:60px 40px;
}

#fmenu{
display:grid;
grid-template-columns:1.5fr 1fr 1fr 1fr;
gap:60px;
align-items:start;
}

.footer-brand img{
max-width:170px;
margin-bottom:20px;
}

.footer-address{
font-size:14px;
line-height:1.7;
color:#333;
letter-spacing:0.3px;
}

.footer-title{
font-size:14px;
text-transform:uppercase;
letter-spacing:1px;
margin-bottom:18px;
font-weight:600;
}

#fmenu ul{
list-style:none;
padding:0;
margin:0;
}

#fmenu li{
margin-bottom:12px;
}

#fmenu a{
text-decoration:none;
color:#000;
font-size:14px;
letter-spacing:0.3px;
}

#fmenu a:hover{
color:#8c6f4e;
}

.footer-bottom{
margin-top:50px;
padding-top:25px;
border-top:1px solid #d6cfc4;
text-align:center;
font-size:13px;
color:#444;
}


/* ===================================== */
/* BADGES */
/* ===================================== */

img[src*="coq"],
img[src*="france"],
img[src*="epv"]{
display:block;
margin:auto;
}

.home-labels,
.labels,
.badges{
text-align:center;
margin:auto;
}


/* ===================================== */
/* RESPONSIVE */
/* ===================================== */

@media screen and (max-width:1024px){

#bodycontainer{
padding-top:120px;
}

#hmenu > li{
display:block;
margin:12px 0;
text-align:center;
}

#fmenu{
grid-template-columns:1fr;
text-align:center;
}

}

@media screen and (max-width:1000px){

#fmenu{
grid-template-columns:1fr 1fr;
gap:40px;
}

.footer-brand{
grid-column:1 / -1;
text-align:center;
}

}

@media screen and (max-width:600px){

#fmenu{
grid-template-columns:1fr;
text-align:center;
}

#left-column,
#content-wrapper{
width:100%;
float:none;
}

}


/* ===================================== */
/* HEADER PLUS FIN (sans changer logo ni texte) */
/* ===================================== */

/* réduction de l'espace autour du logo */
#headerarea{
padding:12px 20px 6px 20px !important;
}

/* menu plus proche du logo */
#headermenu{
margin-top:4px !important;
padding-bottom:6px !important;
}

/* espace total du header réduit */
#headercontainer{
padding-bottom:2px !important;
}

/* espace nécessaire pour le contenu */
#bodycontainer{
padding-top:120px !important;
}