/* ============================================================
   DAVY LHEUREUX — CORE STYLES
   Partagé par toutes les pages du site
   ============================================================ */

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:#05050e;color:#F2EFE9;font-family:'Outfit',sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
a{color:inherit;}
img{max-width:100%;display:block;}

/* === WEBGL CANVAS === */
#out{position:fixed;inset:0;width:100%;height:100%;z-index:0;display:block;}
#dp-cv{position:absolute;top:-9999px;left:-9999px;}

/* === GRAIN === */
.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.45;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");
  background-size:150px;}

/* === UI LAYER === */
.ui{position:relative;z-index:10;}

/* === NAV === */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 2rem;height:60px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(242,239,233,0);background:rgba(5,5,14,0);backdrop-filter:blur(0px);
  transition:all .5s ease;transform:translateY(-100%);opacity:0;pointer-events:none;}
.nav.visible{transform:translateY(0);opacity:1;pointer-events:all;
  border-bottom-color:rgba(242,239,233,.08);background:rgba(5,5,14,.75);backdrop-filter:blur(20px);}
.nav.static{transform:translateY(0);opacity:1;pointer-events:all;border-bottom-color:rgba(242,239,233,.08);background:rgba(5,5,14,.75);backdrop-filter:blur(20px);}
.nav-logo{font-family:'Anybody',sans-serif;font-weight:900;font-size:1.15rem;letter-spacing:-.02em;color:#F2EFE9;text-decoration:none;}
.nav-links{display:flex;gap:2rem;align-items:center;}
.nav-links a{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(242,239,233,.55);text-decoration:none;transition:color .2s;}
.nav-links a:hover{color:#F2EFE9;}
.nav-links a.active{color:#F2EFE9;}
.nav-links a.nav-cta{background:#F2EFE9;color:#05050e;border:none;padding:.55rem 1.4rem;font-family:'Outfit',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:2rem;cursor:pointer;text-decoration:none;transition:opacity .2s,transform .15s;}
.nav-links a.nav-cta:hover{opacity:.88;transform:translateY(-1px);color:#05050e;}

/* === SECTIONS === */
section{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;}
.section-inner{max-width:880px;width:100%;margin:0 auto;padding:2rem 1.5rem;}
.section-label{font-family:'Outfit',sans-serif;font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(242,239,233,.55);margin-bottom:1.5rem;display:inline-block;}
.section-eyebrow{font-family:'Outfit',sans-serif;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(242,239,233,.35);text-align:center;margin-bottom:1.5rem;}
.section-title{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(2rem,6vw,3.2rem);line-height:1;letter-spacing:-.03em;margin-bottom:1.5rem;
  background:linear-gradient(135deg,rgba(242,239,233,.95),rgba(242,239,233,.6));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.section-lead{font-family:'Young Serif',serif;font-size:clamp(1rem,2.5vw,1.2rem);line-height:1.7;color:rgba(242,239,233,.7);max-width:580px;margin-bottom:2.5rem;}

/* === REVEAL === */
[data-reveal]{transform:translateY(50px) scale(.97);opacity:0;transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .9s cubic-bezier(.16,1,.3,1);}
[data-reveal].visible{transform:translateY(0) scale(1);opacity:1;}

/* === HERO === */
.hero{text-align:center;flex-direction:column;}
.hero-raf{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(5rem,18vw,10rem);letter-spacing:-.04em;line-height:.9;margin-bottom:.6rem;
  background:linear-gradient(135deg,rgba(242,239,233,.95),rgba(242,239,233,.6));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-raf:has(.hero-dot){display:inline-flex;align-items:center;justify-content:center;gap:0;}
.hero-dot{width:.08em;height:.08em;border-radius:50%;background:rgba(242,239,233,.18);display:inline-block;flex-shrink:0;margin:0 .08em;align-self:center;}
.hero-sub{font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(242,239,233,.35);margin-bottom:3.5rem;}
.hero-hook{font-family:'Young Serif',serif;line-height:1.4;color:rgba(242,239,233,.6);max-width:none;margin:0 auto 1.5rem;padding:0 1rem;}
.hero-hook em{display:block;font-style:normal;color:rgba(242,239,233,.95);font-size:clamp(1.35rem,3.4vw,2rem);margin-bottom:.6rem;}
.hero-hook-sub{display:block;font-size:clamp(.95rem,2.1vw,1.15rem);color:rgba(242,239,233,.55);}
.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;}
.hero-scroll span{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(242,239,233,.6);}
.scroll-line{width:1px;height:40px;background:rgba(242,239,233,.55);animation:scrollPulse 2s ease infinite;}
@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(1);}50%{opacity:.8;transform:scaleY(1.3);}}

/* Hero variant for non-home pages: plus compact */
.page-hero{min-height:70vh;text-align:center;flex-direction:column;padding-top:22vh;padding-bottom:4rem;}
.page-hero .hero-raf{font-size:clamp(2.8rem,9vw,4.8rem);margin-bottom:1rem;}
.page-hero .hero-sub{margin-bottom:1.5rem;}

/* === PROBLÈME === */
.probleme{text-align:left;}
.probleme .section-inner{padding-top:4rem;padding-bottom:4rem;}
.prob-line{font-family:'Young Serif',serif;font-size:clamp(1.05rem,3vw,1.35rem);line-height:1.8;color:rgba(242,239,233,.18);margin-bottom:.3rem;
  transform:translateY(50px) scale(.97);opacity:0;transition:all .8s cubic-bezier(.16,1,.3,1);}
.prob-line.visible{transform:translateY(0) scale(1);opacity:1;color:rgba(242,239,233,.45);}
.prob-kicker{font-family:'Young Serif',serif;font-size:clamp(1.1rem,3vw,1.4rem);line-height:1.6;color:rgba(242,239,233,.4);margin-top:.3rem;}
.prob-kicker.prob-kicker--first{margin-top:2.5rem;}
.prob-final{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(1.6rem,4.5vw,2.8rem);letter-spacing:-.02em;line-height:1.1;margin-top:1.4rem;
  background:linear-gradient(110deg,#c084fc,#818cf8,#38bdf8,#34d399,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  background-size:200% auto;animation:rainbowShift 4s ease infinite;}
@keyframes rainbowShift{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}

/* === RAF SECTION === */
.raf-section{text-align:center;}
.raf-section .section-inner{padding-top:5rem;padding-bottom:5rem;}
.raf-triptyque{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem;}
.raf-dim{transform:translateY(50px) scale(.97);opacity:0;transition:all .9s cubic-bezier(.16,1,.3,1);}
.raf-dim.visible{transform:translateY(0) scale(1);opacity:1;}
.raf-letter{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(4rem,12vw,6.5rem);letter-spacing:-.03em;line-height:1;margin-bottom:.3rem;
  background:linear-gradient(135deg,rgba(242,239,233,.9),rgba(242,239,233,.45));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.raf-word{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(242,239,233,.4);margin-bottom:.5rem;}
.raf-desc{font-family:'Young Serif',serif;font-size:clamp(.85rem,2vw,1rem);color:rgba(242,239,233,.55);line-height:1.5;margin:0 auto;white-space:nowrap;}
.raf-sep{width:60px;height:2px;margin:0 auto;background:linear-gradient(90deg,#667EEA,#764BA2,#F5576C,#43E97B,#4FACFE,#667EEA);border-radius:1px;}
.raf-punchline{margin-top:2.5rem;}
.raf-punchline-main{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(1.3rem,4vw,2rem);letter-spacing:-.02em;line-height:1.1;margin-bottom:.7rem;
  background:linear-gradient(110deg,#c084fc,#818cf8,#38bdf8,#34d399,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  background-size:200% auto;animation:rainbowShift 4s ease infinite;}
.raf-punchline-sub{font-family:'Young Serif',serif;font-size:clamp(.88rem,2vw,1rem);color:rgba(242,239,233,.5);line-height:1.5;white-space:nowrap;}

/* === OFFRES === */
.offres{text-align:center;}
.offres .section-inner{padding-top:5rem;padding-bottom:5rem;max-width:1000px;}
.offres-grid{display:grid;grid-template-columns:repeat(2,minmax(0,360px));gap:1.5rem;justify-content:center;}

/* Flip cards */
.flip-card{perspective:1000px;width:100%;max-width:360px;height:480px;cursor:pointer;margin:0 auto;}
.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d;}
.flip-card:hover .flip-card-inner,.flip-card.touched .flip-card-inner{transform:rotateY(180deg);}
.flip-card-front,.flip-card-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:1rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;overflow:hidden;}

/* RECTO — bordure fine, 2 barres rainbow haut/bas via divs inline dans le HTML */
.flip-card-front{
  padding:2.5rem;
  border:1px solid rgba(242,239,233,0.08);
  gap:1.1rem;
}
.flip-card.light .flip-card-front{background:rgba(242,239,233,0.10);}
.flip-card.dark .flip-card-front{background:rgba(20,20,40,0.35);}
.card-kicker{font-family:'Outfit',sans-serif;font-weight:500;font-size:1.1rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(242,239,233,.3);line-height:1;}
.card-name{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(1.8rem,5vw,2.5rem);letter-spacing:-.02em;line-height:1;color:#F2EFE9;}

/* VERSO — full-card anchor */
.flip-card-back{transform:rotateY(180deg);padding:1.9rem 1.4rem;text-decoration:none;color:inherit;}
.flip-card-back:focus-visible{outline:2px solid rgba(192,132,252,.6);outline-offset:2px;}
.card-back-inner{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between;align-items:center;height:100%;width:100%;gap:.6rem;}
.card-back-kicker{font-family:'Outfit',sans-serif;font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;}
.card-back-mid{display:flex;flex-direction:column;align-items:center;gap:.55rem;}
.card-back-list{list-style:none;display:flex;flex-direction:column;gap:.3rem;margin:0;padding:0;text-align:center;}
.card-back-list li{font-family:'Young Serif',serif;font-size:.78rem;line-height:1.4;}
.card-back-price{font-family:'Anybody',sans-serif;font-weight:900;font-size:1.9rem;letter-spacing:-.02em;line-height:1;margin-top:.4rem;}
.card-back-foot{display:flex;flex-direction:column;align-items:center;gap:.4rem;}
.card-back-btn{font-family:'Outfit',sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.9rem 1.8rem;border-radius:2rem;display:inline-block;transition:opacity .2s;}
.flip-card-back:hover .card-back-btn{opacity:.88;}
.card-back-note{font-family:'Young Serif',serif;font-style:italic;font-size:.78rem;opacity:.7;}

/* Variant: light verso (Pack Starter) — translucide clair + backdrop-filter */
.flip-card.light .flip-card-back{
  background:rgba(242,239,233,0.65);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  color:#0D0D0D;
}
.flip-card.light .card-back-kicker{color:rgba(13,13,14,.55);}
.flip-card.light .card-back-list li{color:rgba(13,13,14,.78);}
.flip-card.light .card-back-price{color:#0D0D0D;}
.flip-card.light .card-back-btn{background:#0D0D0D;color:#F2EFE9;}
.flip-card.light .card-back-note{color:rgba(13,13,14,.6);}

/* Variant: premium verso (Pack Élite) — translucide sombre + backdrop-filter */
.flip-card.dark .flip-card-back{
  background:rgba(20,20,40,0.75);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  color:#F2EFE9;
}
.flip-card.dark .card-back-kicker{color:rgba(242,239,233,.55);}
.flip-card.dark .card-back-list li{color:rgba(242,239,233,.85);}
.flip-card.dark .card-back-btn{background:#F2EFE9;color:#0D0D0D;}
.flip-card.dark .card-back-note{color:rgba(242,239,233,.6);}

/* Shared CTA (used on other sections, kept for ghost variant + methode page) */
.offre-cta{display:inline-block;background:#F2EFE9;color:#05050e;padding:.8rem 1.6rem;font-family:'Outfit',sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border-radius:2rem;text-decoration:none;transition:opacity .2s,transform .15s;}
.offre-cta:hover{opacity:.88;transform:translateY(-1px);color:#05050e;}
.offre-cta.ghost{background:transparent;color:#F2EFE9;border:1px solid rgba(242,239,233,.25);}
.offre-cta.ghost:hover{border-color:rgba(242,239,233,.55);color:#F2EFE9;}

/* Pilule de lien unifiée (fin de section) */
.pill-link{display:inline-block;font-family:'Outfit',sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(242,239,233,.4);text-decoration:none;border:1px solid rgba(242,239,233,.12);padding:.55rem 1.5rem;border-radius:2rem;transition:all .2s ease;}
.pill-link:hover{color:rgba(242,239,233,.8);border-color:rgba(242,239,233,.3);}

/* === TÉMOIGNAGES === */
.temoignages{text-align:center;}
.temoignages .section-inner{padding-top:5rem;padding-bottom:5rem;max-width:1080px;}

/* Homepage: grid vidéos (styles inline sur les cartes, responsive ici) */
@media(max-width:900px){.temo-grid{grid-template-columns:repeat(2,1fr) !important;}.temo-grid>div{height:auto !important;}}
@media(max-width:520px){.temo-grid{grid-template-columns:1fr !important;}.temo-grid>div{height:auto !important;}}
.temoignages-more{text-align:center;margin-top:2rem;}
.temoignages-more a{font-family:'Outfit',sans-serif;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(242,239,233,.35);text-decoration:none;transition:color .2s;}
.temoignages-more a:hover{color:rgba(242,239,233,.7);}
@media(max-width:768px){.temoin-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.temoin-grid{grid-template-columns:1fr;}}

/* /temoignages.html page — preserved */
.temoignages-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:2rem;}
.quote-card{background:rgba(10,10,22,.5);backdrop-filter:blur(18px);border:1px solid rgba(242,239,233,.07);border-radius:1.25rem;padding:2.5rem 2.2rem;text-align:left;position:relative;}
.quote-mark{position:absolute;top:1rem;left:1.5rem;font-family:'Anybody',sans-serif;font-weight:900;font-size:4rem;line-height:1;color:rgba(192,132,252,.25);}
.quote-text{font-family:'Young Serif',serif;font-size:clamp(1.05rem,2.5vw,1.2rem);line-height:1.7;color:rgba(242,239,233,.85);margin-left:2rem;margin-bottom:1.5rem;}
.quote-author{margin-left:2rem;display:flex;align-items:center;gap:.8rem;}
.quote-author-dot{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#c084fc,#38bdf8);flex-shrink:0;}
.quote-author-text{font-family:'Outfit',sans-serif;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(242,239,233,.55);}

/* === DAVY === */
.davy{text-align:center;}
.davy .section-inner{padding-top:5rem;padding-bottom:5rem;display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:center;max-width:960px;}
.davy-photo{width:100%;aspect-ratio:1;border-radius:1.25rem;background:linear-gradient(135deg,rgba(192,132,252,.25),rgba(56,189,248,.18),rgba(52,211,153,.15));position:relative;overflow:hidden;border:1px solid rgba(242,239,233,.08);}
.davy-photo::after{content:"DL";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Anybody',sans-serif;font-weight:900;font-size:5rem;letter-spacing:-.03em;color:rgba(242,239,233,.28);}
.davy-text{text-align:left;}
.davy-text .section-title{text-align:left;margin-bottom:1.2rem;}
.davy-bio{font-family:'Young Serif',serif;font-size:1.05rem;line-height:1.8;color:rgba(242,239,233,.75);margin-bottom:1.2rem;}
.davy-bio strong{color:#F2EFE9;font-weight:400;
  background:linear-gradient(110deg,#c084fc,#818cf8,#38bdf8,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.davy-signature{font-family:'Anybody',sans-serif;font-weight:900;font-size:1.1rem;letter-spacing:-.02em;color:rgba(242,239,233,.6);}

/* === PODCAST === */
.podcast{text-align:center;}
.podcast .section-inner{padding-top:5rem;padding-bottom:5rem;max-width:920px;}
.podcast-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem;}
.episode-card{display:grid;grid-template-columns:auto 1fr auto;gap:1.2rem;align-items:center;background:rgba(10,10,22,.5);backdrop-filter:blur(18px);border:1px solid rgba(242,239,233,.07);border-radius:1rem;padding:1.5rem 1.8rem;text-align:left;text-decoration:none;color:inherit;transition:border-color .3s,transform .3s;}
.episode-card:hover{border-color:rgba(242,239,233,.2);transform:translateX(4px);}
.episode-number{font-family:'Anybody',sans-serif;font-weight:900;font-size:1.6rem;letter-spacing:-.02em;color:rgba(242,239,233,.3);min-width:3rem;}
.episode-meta{flex:1;}
.episode-title{font-family:'Anybody',sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-.01em;color:#F2EFE9;margin-bottom:.2rem;line-height:1.3;}
.episode-date{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(242,239,233,.4);}
.episode-play{width:38px;height:38px;border-radius:50%;border:1px solid rgba(242,239,233,.25);display:flex;align-items:center;justify-content:center;color:#F2EFE9;transition:background .2s,border-color .2s;flex-shrink:0;}
.episode-card:hover .episode-play{background:#F2EFE9;color:#05050e;border-color:#F2EFE9;}
.episode-play svg{width:12px;height:12px;}
.podcast-more{margin-top:2rem;}

/* === NEWSLETTER === */
.newsletter{text-align:center;}
.newsletter .section-inner{padding-top:5rem;padding-bottom:5rem;max-width:620px;}
.newsletter-title{font-family:'Anybody',sans-serif;font-weight:900;font-size:clamp(2.5rem,7vw,3.5rem);letter-spacing:-.03em;line-height:1;margin-bottom:.6rem;
  background:linear-gradient(110deg,#c084fc,#818cf8,#38bdf8,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.newsletter-sub{font-size:.65rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(242,239,233,.45);margin-bottom:1.5rem;}
.newsletter-desc{font-family:'Young Serif',serif;font-size:1.05rem;line-height:1.7;color:rgba(242,239,233,.7);margin-bottom:2rem;}
.newsletter-form{display:flex;gap:.6rem;background:rgba(10,10,22,.6);backdrop-filter:blur(18px);border:1px solid rgba(242,239,233,.1);border-radius:2rem;padding:.35rem;max-width:480px;margin:0 auto;transition:border-color .3s;}
.newsletter-form:focus-within{border-color:rgba(192,132,252,.4);}
.newsletter-form input{flex:1;background:transparent;border:none;outline:none;color:#F2EFE9;font-family:'Outfit',sans-serif;font-size:.9rem;padding:0 1rem;min-width:0;}
.newsletter-form input::placeholder{color:rgba(242,239,233,.35);}
.newsletter-form button{background:#F2EFE9;color:#05050e;border:none;padding:.7rem 1.4rem;font-family:'Outfit',sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-radius:2rem;cursor:pointer;transition:opacity .2s;white-space:nowrap;}
.newsletter-form button:hover{opacity:.85;}
.newsletter-note{font-size:.7rem;color:rgba(242,239,233,.35);margin-top:1rem;letter-spacing:.05em;}

/* === FOOTER === */
.footer{padding:3rem 2rem 2rem;border-top:1px solid rgba(242,239,233,.08);background:rgba(5,5,14,.6);backdrop-filter:blur(18px);margin-top:3rem;}
.footer-inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem;}
.footer-brand .nav-logo{font-size:1.4rem;display:inline-block;margin-bottom:.8rem;}
.footer-tag{font-family:'Young Serif',serif;font-size:.9rem;line-height:1.6;color:rgba(242,239,233,.55);max-width:280px;}
.footer-col h4{font-family:'Outfit',sans-serif;font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(242,239,233,.4);margin-bottom:1rem;font-weight:500;}
.footer-col ul{list-style:none;}
.footer-col li{margin-bottom:.55rem;}
.footer-col a{font-size:.85rem;color:rgba(242,239,233,.7);text-decoration:none;transition:color .2s;}
.footer-col a:hover{color:#F2EFE9;}
.footer-bottom{max-width:1000px;margin:0 auto;padding-top:1.5rem;border-top:1px solid rgba(242,239,233,.06);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;}
.footer-copy{font-size:.75rem;color:rgba(242,239,233,.35);letter-spacing:.05em;}
.footer-social{display:flex;gap:1rem;}
.footer-social a{width:34px;height:34px;border-radius:50%;border:1px solid rgba(242,239,233,.15);display:flex;align-items:center;justify-content:center;color:rgba(242,239,233,.6);transition:border-color .2s,color .2s,background .2s;}
.footer-social a:hover{border-color:rgba(242,239,233,.4);color:#F2EFE9;}
.footer-social svg{width:15px;height:15px;}

/* Sections à hauteur libre (contenu court) */
.davy,.podcast,.newsletter{min-height:auto;padding:5rem 0;}

/* Footer v2 — responsive mobile */
@media(max-width:640px){
  footer>div:first-child{grid-template-columns:1fr !important;gap:2rem !important;}
  footer>div:last-child{flex-direction:column !important;align-items:center !important;text-align:center !important;}
  footer>div:last-child>div{justify-content:center;flex-wrap:wrap;}
}

/* === RESPONSIVE === */
@media(max-width:720px){
  .offres-grid{grid-template-columns:1fr;}
  .davy .section-inner{grid-template-columns:1fr;gap:2rem;}
  .davy-photo{max-width:260px;margin:0 auto;}
  .davy-text{text-align:center;}
  .davy-text .section-title{text-align:center;}
  .footer-inner{grid-template-columns:1fr;gap:2rem;}
}
@media(max-width:768px){
  #podcast-grid{grid-template-columns:1fr !important;max-width:400px !important;}
}
@media(max-width:640px){
  .nav{padding:0 1.2rem;}
  .nav-links{display:none !important;}
  #menu-toggle{display:flex !important;}
  #mobile-menu.open{display:flex !important;}
  .hero{padding-top:20vh;}
  .raf-triptyque{gap:2rem;}
  .raf-desc{white-space:normal;max-width:280px;}
  .raf-punchline-sub{white-space:normal;max-width:320px;margin:0 auto;}
  .flip-card{height:480px;}
  .flip-card-front{padding:2rem 1.4rem;gap:.9rem;}
  .flip-card-back{padding:1.7rem 1.2rem;}
  .card-back-price{font-size:1.7rem;}
  .section-inner{padding:1.5rem 1.2rem;}
  .probleme .section-inner,.raf-section .section-inner,.offres .section-inner,.temoignages .section-inner,.davy .section-inner,.podcast .section-inner,.newsletter .section-inner{padding-top:4rem;padding-bottom:4rem;}
  .newsletter-form{flex-direction:column;border-radius:1.2rem;padding:.6rem;}
  .newsletter-form input{padding:.6rem 1rem;}
  .episode-card{padding:1.2rem 1.3rem;gap:.8rem;}
  .episode-number{font-size:1.3rem;min-width:2.2rem;}
  .footer-bottom{flex-direction:column;text-align:center;}
}
