/* Compenser le header fixe */
.rt-hero { margin-top:0; }
.rt-page-hero { padding-top:120px; }

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=Lato:wght@300;400;700&display=swap');

:root {
  --honey:       #C8861A;
  --honey-light: #F5C842;
  --honey-dark:  #7A4F0D;
  --bark:        #3B2410;
  --cream:       #FAF6EC;
  --sage:        #4A5E3A;
  --white:       #FFFFFF;
  --text:        #2A1A0A;
  --muted:       #6B5740;
  --stone:       #8A8070;
}

/* Base */
body { font-family:'Lato',sans-serif; color:var(--text); line-height:1.8; background:var(--cream); }
img  { max-width:100%; height:auto; display:block; }
a    { color:var(--honey); text-decoration:none; transition:color .2s; }
a:hover { color:var(--honey-dark); }

/* Compenser le header fixe Divi */
.rt-static-page #page-container { padding-top:0; }
.rt-static-page .et_pb_section_first { padding-top:0 !important; }

/* Typographie */
.rt-label {
  display:block; color:var(--honey); font-size:.7rem;
  letter-spacing:.2em; text-transform:uppercase; font-weight:700; margin-bottom:10px;
}
h1, h2, h3 { font-family:'Playfair Display',Georgia,serif; color:var(--bark); line-height:1.15; }
h1  { font-size:clamp(2.4rem,5vw,3.8rem); margin-bottom:20px; }
h2  { font-size:clamp(1.8rem,3.5vw,2.6rem); margin-bottom:18px; }
h3  { font-size:1.2rem; margin-bottom:8px; }
p   { color:var(--muted); margin-bottom:1rem; }
.lead { font-size:1.1rem; font-weight:300; max-width:600px; }
.rt-italic { font-style:italic; }

/* Divider */
.rt-divider { width:60px; height:2px; background:var(--honey); border:none; margin:16px 0 28px; }

/* Layout */
.rt-container        { max-width:1100px; margin:0 auto; padding:0 32px; }
.rt-container--narrow{ max-width:860px;  margin:0 auto; padding:0 32px; }
.rt-section          { padding:80px 32px; }
.rt-section--white   { background:var(--white); }
.rt-section--cream   { background:var(--cream); }
.rt-section--bark    { background:var(--bark); }
.rt-section--sage    { background:var(--sage); }
.rt-section--flush   { padding:0; }

/* Grilles */
.rt-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.rt-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.rt-grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }

/* Hero */
.rt-hero {
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg,var(--bark) 0%,#4A2810 55%,var(--honey-dark) 100%);
  position:relative; overflow:hidden; text-align:center; padding:120px 40px 80px;
}
.rt-hero__hex {
  position:absolute; inset:0; opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='52'%3E%3Cpolygon points='30,2 56,16 56,44 30,58 4,44 4,16' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E");
  background-size:60px 52px;
}
.rt-hero__content { position:relative; z-index:1; max-width:780px; margin:0 auto; }
.rt-hero__eyebrow {
  display:block; color:var(--honey-light); font-size:.72rem; letter-spacing:.2em;
  text-transform:uppercase; font-weight:700; margin-bottom:20px;
}
.rt-hero h1        { color:var(--cream); font-size:clamp(2.8rem,6vw,4.8rem); margin-bottom:22px; }
.rt-hero h1 em     { color:var(--honey-light); font-style:italic; }
.rt-hero__sub      { color:rgba(250,246,236,.76); font-size:1.15rem; font-weight:300; max-width:540px; margin:0 auto 36px; line-height:1.8; }
.rt-hero__badges   { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-bottom:44px; }
.rt-hero__badge    { background:rgba(255,255,255,.07); border:1px solid rgba(245,200,66,.28); color:var(--honey-light); padding:5px 16px; border-radius:2px; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; font-weight:700; }
.rt-hero__btns     { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

/* Page hero (sous-pages) */
.rt-page-hero { padding:120px 32px 60px; background:var(--cream); }

/* Boutons */
.rt-btn {
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 32px; border-radius:2px; font-size:.8rem;
  letter-spacing:.1em; text-transform:uppercase; font-weight:700;
  text-decoration:none; transition:all .2s; border:2px solid transparent; cursor:pointer;
  font-family:'Lato',sans-serif;
}
.rt-btn--primary { background:var(--honey); color:var(--white); border-color:var(--honey); }
.rt-btn--primary:hover { background:var(--honey-dark); border-color:var(--honey-dark); color:var(--white); }
.rt-btn--outline { background:transparent; color:var(--honey-light); border-color:var(--honey-light); }
.rt-btn--outline:hover { background:var(--honey-light); color:var(--bark); }
.rt-btn--ghost   { background:transparent; color:var(--honey-light); border-color:rgba(245,200,66,.4); }
.rt-btn--ghost:hover { background:var(--honey); border-color:var(--honey); color:var(--white); }
.rt-btn--light   { background:var(--honey-light); color:var(--bark); border-color:var(--honey-light); }
.rt-btn--light:hover { background:var(--honey); border-color:var(--honey); color:var(--white); }

/* Badges terroir */
.rt-badges       { display:flex; gap:12px; flex-wrap:wrap; margin:0 0 20px; }
.rt-badge        { background:var(--cream); border:1px solid rgba(200,134,26,.25); color:var(--honey-dark); padding:4px 14px; border-radius:2px; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; font-weight:700; }
.rt-badge--dark  { background:rgba(255,255,255,.07); border-color:rgba(245,200,66,.28); color:var(--honey-light); }

/* Carte */
.rt-card { background:var(--white); border:1px solid rgba(200,134,26,.15); border-radius:4px; overflow:hidden; transition:transform .25s,box-shadow .25s; }
.rt-card:hover { transform:translateY(-4px); box-shadow:0 12px 40px rgba(58,36,16,.1); }
.rt-card__img  { height:180px; display:flex; align-items:center; justify-content:center; font-size:3.5rem; background:linear-gradient(135deg,rgba(200,134,26,.06),rgba(58,36,16,.04)); }
.rt-card__body { padding:22px 24px; }
.rt-tag        { display:inline-block; background:var(--cream); color:var(--honey-dark); font-size:.65rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:3px 10px; border-radius:2px; border:1px solid rgba(200,134,26,.2); margin-bottom:10px; }

/* Blurb */
.rt-blurb   { background:var(--white); border:1px solid rgba(200,134,26,.15); border-radius:4px; padding:28px; }
.rt-blurb h3{ font-size:1rem; margin-bottom:6px; }
.rt-blurb p { font-size:.9rem; margin:0; }

/* Stats */
.rt-stat        { background:rgba(255,255,255,.04); border:1px solid rgba(200,134,26,.18); padding:44px 20px; text-align:center; }
.rt-stat__num   { font-family:'Playfair Display',Georgia,serif; font-size:3rem; color:var(--honey-light); line-height:1; display:block; margin-bottom:8px; }
.rt-stat__label { font-size:.7rem; color:rgba(250,246,236,.55); letter-spacing:.15em; text-transform:uppercase; font-weight:700; }

/* Placeholder image */
.rt-img-placeholder { border-radius:4px; display:flex; align-items:center; justify-content:center; font-size:4rem; background:linear-gradient(135deg,rgba(200,134,26,.08),rgba(58,36,16,.06)); }

/* Timeline */
.rt-timeline { width:100%; border-collapse:collapse; }
.rt-timeline tr { border-bottom:1px solid rgba(200,134,26,.25); }
.rt-timeline td:first-child { padding:20px 28px 20px 0; font-family:'Playfair Display',Georgia,serif; font-size:1.2rem; font-weight:600; color:var(--honey); white-space:nowrap; vertical-align:top; width:140px; }
.rt-timeline td:last-child  { padding:20px 0 20px 28px; vertical-align:top; }
.rt-timeline strong { font-family:'Playfair Display',Georgia,serif; color:var(--bark); display:block; margin-bottom:4px; font-size:1.05rem; }
.rt-timeline span   { font-size:.9rem; color:var(--muted); }

/* Newsletter */
.rt-nl          { padding:80px 32px; text-align:center; }
.rt-nl h2       { color:var(--cream); margin-bottom:12px; }
.rt-nl p        { color:rgba(250,246,236,.78); max-width:500px; margin:0 auto 28px; }
.rt-nl__form    { display:flex; max-width:440px; margin:0 auto; }
.rt-nl__form input { flex:1; padding:14px 18px; border:none; border-radius:2px 0 0 2px; font-size:.9rem; background:rgba(255,255,255,.12); color:var(--cream); outline:none; font-family:'Lato',sans-serif; }
.rt-nl__form input::placeholder { color:rgba(250,246,236,.4); }
.rt-nl__form button { padding:14px 22px; background:var(--honey); color:var(--white); border:none; border-radius:0 2px 2px 0; font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; font-family:'Lato',sans-serif; transition:background .2s; white-space:nowrap; }
.rt-nl__form button:hover { background:var(--honey-light); color:var(--bark); }
.rt-nl__note    { margin-top:10px; font-size:.72rem; color:rgba(250,246,236,.4); }

/* Quote box */
.rt-quote { background:var(--cream); border-left:3px solid var(--honey); padding:16px 20px; margin-top:24px; font-style:italic; font-size:.95rem; color:var(--muted); line-height:1.7; }

/* CTA section */
.rt-cta       { padding:80px 32px; text-align:center; }
.rt-cta h2    { color:var(--cream); margin-bottom:16px; }
.rt-cta p     { color:rgba(250,246,236,.8); max-width:540px; margin:0 auto 32px; }

/* Coming soon banner */
.rt-cs-banner   { background:var(--honey); color:var(--white); padding:22px 36px; border-radius:2px; text-align:center; margin-bottom:40px; }
.rt-cs-banner strong { font-family:'Playfair Display',Georgia,serif; font-size:1.2rem; }
.rt-cs-banner p { color:rgba(255,255,255,.9); font-size:.9rem; margin:6px 0 0; }

/* Countdown */
.rt-countdown        { display:flex; gap:24px; justify-content:center; flex-wrap:wrap; margin:32px 0; }
.rt-countdown__item  { text-align:center; }
.rt-countdown__num   { font-family:'Playfair Display',Georgia,serif; font-size:3.2rem; font-weight:600; color:var(--honey); display:block; line-height:1; }
.rt-countdown__label { font-size:.65rem; color:var(--muted); letter-spacing:.15em; text-transform:uppercase; font-weight:700; margin-top:4px; display:block; }

/* Value item */
.rt-value   { background:var(--cream); border-left:3px solid var(--honey); padding:16px 20px; border-radius:0 4px 4px 0; }
.rt-value h4{ font-family:'Playfair Display',Georgia,serif; font-size:.95rem; color:var(--bark); margin-bottom:4px; }
.rt-value p { font-size:.83rem; margin:0; }

/* Produit card */
.rt-prod    { background:var(--cream); border:1px solid rgba(200,134,26,.2); border-radius:4px; padding:32px 24px; text-align:center; }
.rt-prod span.rt-prod__emoji { font-size:3rem; margin-bottom:14px; display:block; }
.rt-prod h3 { font-size:1.05rem; margin-bottom:6px; }
.rt-prod p  { font-size:.85rem; margin-bottom:16px; }
.rt-prod .rt-price { display:inline-block; background:var(--honey); color:var(--white); font-size:.75rem; font-weight:700; letter-spacing:1px; padding:6px 18px; border-radius:2px; }

/* Contact */
.rt-form-group       { margin-bottom:18px; }
.rt-form-group label { display:block; font-size:.8rem; font-weight:700; color:var(--bark); margin-bottom:6px; letter-spacing:.04em; }
.rt-form-group input,
.rt-form-group textarea,
.rt-form-group select { width:100%; padding:12px 16px; border:1px solid rgba(200,134,26,.3); border-radius:2px; font-family:'Lato',sans-serif; font-size:.95rem; color:var(--text); background:var(--white); outline:none; transition:border-color .2s; }
.rt-form-group input:focus,
.rt-form-group textarea:focus,
.rt-form-group select:focus { border-color:var(--honey); }
.rt-form-group textarea { resize:vertical; min-height:120px; }
.rt-form-note { font-size:.75rem; color:var(--muted); margin-top:8px; font-style:italic; }

.rt-contact-block        { margin-bottom:24px; }
.rt-contact-block strong { font-family:'Playfair Display',Georgia,serif; color:var(--bark); display:block; margin-bottom:4px; }
.rt-contact-block p,
.rt-contact-block a      { font-size:.95rem; color:var(--muted); margin:0; }
.rt-contact-block a      { color:var(--honey); }

/* Capsule caption */
.rt-caption { background:var(--honey); color:var(--white); padding:10px 18px; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; text-align:center; margin-top:0; }

/* Animations */
@keyframes rt-fadeUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
.rt-hero__content > * { animation:rt-fadeUp .7s ease both; }
.rt-hero__content > *:nth-child(1){animation-delay:.1s}
.rt-hero__content > *:nth-child(2){animation-delay:.2s}
.rt-hero__content > *:nth-child(3){animation-delay:.35s}
.rt-hero__content > *:nth-child(4){animation-delay:.5s}
.rt-hero__content > *:nth-child(5){animation-delay:.65s}

/* Responsive */
@media(max-width:980px){
  .rt-grid-2{grid-template-columns:1fr;gap:40px}
  .rt-grid-3{grid-template-columns:1fr}
  .rt-grid-4{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .rt-section{padding:60px 16px}
  .rt-page-hero{padding:100px 16px 50px}
  .rt-grid-4{grid-template-columns:1fr 1fr}
  .rt-hero{padding:100px 20px 60px}
  h1{font-size:2.2rem}
  h2{font-size:1.7rem}
}
