/* Velvet Careers — Premium responsive layer */
:root{
  --vc-gutter:clamp(22px,5vw,60px);
  --vc-max:1120px;
  --vc-radius:0px;
  --vc-shadow:0 22px 60px rgba(45,28,19,.08);
  --vc-shadow-soft:0 12px 32px rgba(45,28,19,.055);
}
html{scroll-padding-top:88px;-webkit-text-size-adjust:100%;}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.16;background-image:radial-gradient(rgba(92,61,46,.08) .55px,transparent .55px);background-size:5px 5px;mix-blend-mode:multiply;}
::selection{background:rgba(92,61,46,.18);color:var(--black);}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent;}
button,a{outline-offset:4px;}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:1px solid var(--brown);outline-offset:3px;}
button{cursor:pointer;}
img{max-width:100%;height:auto;}

/* Navigation — quieter, more architectural */
.site-nav{min-height:72px;padding:20px var(--vc-gutter)!important;transition:padding .28s ease,background .28s ease,box-shadow .28s ease!important;}
.site-nav.is-scrolled{background:rgba(245,240,232,.97);box-shadow:0 6px 30px rgba(45,28,19,.045);}
.nav-logo{white-space:nowrap;}
.nav-links{gap:clamp(18px,2.4vw,30px);}
.nav-links a{position:relative;border-bottom:0!important;}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--brown);transition:right .28s ease;}
.nav-links a:hover::after,.nav-links a.active::after{right:0;}
.nav-cta{white-space:nowrap;}
.nav-toggle{display:none;width:42px;height:42px;border:0;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:0;}
.nav-toggle span{display:block;width:21px;height:1px;background:var(--brown);transition:transform .3s ease,width .3s ease;transform-origin:center;}
.nav-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg);}

/* Global luxury polish */
.section-wrap{width:min(var(--vc-max),100%);}
.section-title{letter-spacing:-.015em;}
.section-sub{font-size:13px;line-height:1.9;}
.btn-primary,.btn-ghost,.nav-cta{min-height:46px;display:inline-flex;align-items:center;justify-content:center;}
.btn-primary{box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);}
.offer-card,.sector-card,.source-card,.blog-card,.pq-card,.fc{transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease,background .35s ease;}
@media (hover:hover){
  .offer-card:hover,.sector-card:hover,.source-card:hover,.blog-card:hover,.pq-card:hover,.fc:hover{box-shadow:var(--vc-shadow-soft);}
}

/* Home hero stats + visual balance */
.hero{min-height:min(900px,100svh);padding-inline:var(--vc-gutter);}
.hero-sub{max-width:560px;font-size:14px;}
.hero-stats{display:flex;gap:0;margin-top:48px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);animation:fadeUp 1s ease 1s both;}
.hero-stats .stat{min-width:155px;padding:18px 24px;text-align:center;border-right:1px solid var(--border);}
.hero-stats .stat:last-child{border-right:0;}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--brown);line-height:1;}
.stat-label{margin-top:6px;font-size:8px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;}

/* Services */
.services-hero{min-height:64vh!important;padding:140px var(--vc-gutter) 80px!important;}
.services-main{padding:92px var(--vc-gutter)!important;}
.services-grid{max-width:var(--vc-max)!important;display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;gap:24px!important;align-items:stretch!important;}
.service-card{min-width:0;}
.service-card:first-child{box-shadow:var(--vc-shadow-soft);}
.service-trust,.service-editorial-cta{padding-left:var(--vc-gutter)!important;padding-right:var(--vc-gutter)!important;}

/* Advice/editorial */
.blog-section{padding-left:var(--vc-gutter);padding-right:var(--vc-gutter);}
.blog-card{cursor:pointer;}
.blog-img{isolation:isolate;}
.blog-img::before{content:"";position:absolute;inset:12px;border:1px solid rgba(92,61,46,.16);z-index:0;}
.blog-category{z-index:2;}
.blog-body{position:relative;}
.article-modal-premium{overscroll-behavior:contain;}
.article-inner-premium{box-shadow:0 30px 90px rgba(0,0,0,.24);}

/* Footer */
footer{padding-left:var(--vc-gutter);padding-right:var(--vc-gutter);}
.footer-logo{white-space:nowrap;}

/* Tablet */
@media (max-width:1024px){
  .offers-grid{grid-template-columns:repeat(2,1fr);}
  .sectors-grid{grid-template-columns:repeat(2,1fr);}
  .sources-grid{grid-template-columns:repeat(2,1fr);}
  .blog-grid{grid-template-columns:repeat(2,1fr);}
  .blog-featured{grid-template-columns:1fr 1fr;}
  .services-grid{grid-template-columns:1fr 1fr!important;}
  .intro-inner-ac{gap:42px;}
  .chiffres-inner-ac{grid-template-columns:repeat(2,1fr);}
  .formules-grid-ac{grid-template-columns:repeat(2,1fr);}
  .proc-grid{grid-template-columns:repeat(2,1fr);gap:34px 10px;}
  .proc-grid::before{display:none;}
}

/* Mobile navigation + layouts */
@media (max-width:780px){
  :root{--vc-gutter:22px;}
  html{scroll-padding-top:72px;}
  body::before{opacity:.1;}
  .site-nav{min-height:68px;padding:13px 20px!important;display:grid!important;grid-template-columns:1fr auto;align-items:center;}
  .nav-logo{font-size:17px;letter-spacing:2.4px;}
  .nav-toggle{display:flex;grid-column:2;grid-row:1;}
  .nav-cta{display:none!important;}
  .nav-links{grid-column:1/-1;display:flex!important;flex-direction:column;align-items:flex-start;gap:0;width:calc(100% + 40px);margin:0 -20px;padding:0 20px;max-height:0;overflow:hidden;opacity:0;pointer-events:none;background:rgba(245,240,232,.99);border-top:1px solid transparent;transition:max-height .38s ease,opacity .25s ease,padding .38s ease,border-color .25s ease;}
  .site-nav.menu-open .nav-links{max-height:330px;opacity:1;pointer-events:auto;padding-top:14px;padding-bottom:20px;border-top-color:var(--border);}
  .nav-links a{width:100%;padding:13px 0;font-size:11px;letter-spacing:2.2px;border-bottom:1px solid var(--border)!important;}
  .nav-links a:last-child{border-bottom:0!important;}
  .nav-links a::after{display:none;}
  body.nav-open{overflow:hidden;}

  /* Type & spacing */
  .section-title{font-size:clamp(31px,10vw,43px);line-height:1.07;}
  .section-sub{font-size:12.5px;line-height:1.85;}
  .section-label{letter-spacing:2.4px;}
  .hero{min-height:auto;padding:122px 22px 72px;}
  .hero::after{height:46px;}
  .hero-eyebrow{font-size:8.5px;letter-spacing:2.6px;line-height:1.6;margin-bottom:22px;}
  .hero-title{font-size:clamp(52px,18vw,74px);line-height:.93;margin-bottom:8px;}
  .hero-sub{font-size:13px;line-height:1.8;margin:18px auto 28px;}
  .hero-actions{width:100%;flex-direction:column;gap:10px;}
  .hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%;margin-left:0;}
  .hero-stats{width:100%;margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);}
  .hero-stats .stat{min-width:0;padding:15px 8px;border-right:1px solid var(--border);}
  .stat-num{font-size:24px;}
  .stat-label{font-size:7px;letter-spacing:.9px;white-space:normal;line-height:1.45;}

  /* Home */
  .search-section,.offers-section,.sectors-section,.metiers-section,.sources-section,.how-section,.cta-section,.ebook-section,#guide{padding-left:22px!important;padding-right:22px!important;}
  .search-section{padding-top:44px;padding-bottom:44px;}
  .search-title{font-size:29px;margin-bottom:20px;}
  .search-bar,.metiers-search-bar,.email-form-footer{flex-direction:column;border:0;gap:8px;}
  .search-input,.metiers-input,.email-input-footer{width:100%;border:1px solid rgba(245,240,232,.16);min-height:50px;}
  .search-btn,.metiers-btn,.email-btn-footer{width:100%;min-height:48px;}
  .filters,.metiers-tags,.blog-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px;margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px;scrollbar-width:none;overscroll-behavior-inline:contain;}
  .filters::-webkit-scrollbar,.metiers-tags::-webkit-scrollbar,.blog-filters::-webkit-scrollbar{display:none;}
  .filter-chip,.metier-tag,.blog-filter{flex:0 0 auto;min-height:38px;}
  .offers-section,.how-section{padding-top:60px;padding-bottom:60px;}
  .offers-grid{grid-template-columns:1fr;margin-top:26px;}
  .offer-card{padding:24px 20px;}
  .offer-title{font-size:19px;}
  .sectors-grid,.sources-grid,.metiers-results{grid-template-columns:1fr;}
  .sector-card{padding:24px 20px;}
  .steps{grid-template-columns:1fr;gap:28px;margin-top:34px;}
  .steps::before{display:none;}
  .step{text-align:left;display:grid;grid-template-columns:48px 1fr;column-gap:16px;}
  .step-num{grid-row:1/3;margin:0;}
  .step-title{margin-top:2px;}
  .ebook-inner{grid-template-columns:1fr;gap:44px;text-align:left;}
  .ebook-mockup{order:-1;}
  .ebook-cover{width:190px;}
  #guide [style*="display:flex;align-items:center;gap:20px"]{flex-direction:column!important;align-items:stretch!important;}
  #guide .btn-primary{width:100%;}
  .cta-section{padding-top:68px;padding-bottom:68px;}

  /* Services */
  .services-hero{min-height:auto!important;padding:118px 22px 68px!important;}
  .services-hero h1{font-size:clamp(46px,14.5vw,66px)!important;line-height:.98!important;}
  .services-hero p:first-of-type{font-size:8px!important;letter-spacing:2.3px!important;gap:8px!important;}
  .services-hero p:first-of-type span{width:14px!important;}
  .services-main{padding:62px 22px!important;}
  .services-grid{grid-template-columns:1fr!important;gap:16px!important;}
  .service-card{padding:28px 24px!important;}
  .service-card .fc-footer{flex-direction:column;align-items:flex-start;gap:10px;}
  .service-trust,.service-editorial-cta{padding:56px 22px!important;}
  .pq-grid{grid-template-columns:1fr;gap:14px;margin-top:30px;}
  .pourqui-wrap,.proc-wrap,.faq-wrap,.intro-band-ac,.formules-wrap,.devis-wrap{padding-left:22px;padding-right:22px;}
  .intro-inner-ac{grid-template-columns:1fr;gap:30px;}
  .formules-grid-ac{grid-template-columns:1fr;}
  .chiffres-inner-ac{grid-template-columns:1fr 1fr;}
  .proc-grid{grid-template-columns:1fr;gap:26px;}
  .proc-step{text-align:left;display:grid;grid-template-columns:52px 1fr;column-gap:16px;padding:0;}
  .proc-circle{grid-row:1/4;margin:0;}
  .form-wrap-ac{padding:28px 20px;}
  .form-grid-ac,.fcb{grid-template-columns:1fr;}

  /* Advice */
  .blog-hero{min-height:auto;padding:118px 22px 52px;}
  .blog-section{padding:46px 22px 68px;}
  .blog-grid{grid-template-columns:1fr;gap:16px;}
  .blog-featured{grid-template-columns:1fr;}
  .blog-featured .blog-img{height:165px;border-right:0;border-bottom:1px solid rgba(92,61,46,.2);}
  .blog-featured .blog-body{padding:26px 22px;}
  .blog-featured .blog-title{font-size:24px;}
  .blog-img{height:155px;}
  .blog-body{padding:22px 20px;}
  .blog-title{font-size:21px;}
  #article-modal,.article-modal-premium{padding:0!important;align-items:stretch!important;background:var(--white)!important;}
  #article-inner,.article-inner-premium{max-width:none!important;max-height:none!important;min-height:100dvh!important;box-shadow:none!important;}
  #article-inner > div:first-of-type{padding:86px 22px 0!important;}
  #article-body{padding:28px 22px 32px!important;font-size:14px!important;line-height:1.85!important;}
  #article-inner > button{position:fixed!important;top:16px!important;right:18px!important;width:42px;height:42px;z-index:3;background:rgba(245,240,232,.96)!important;border:1px solid var(--border)!important;}
  #article-inner > div:last-of-type{margin:0 22px 30px!important;padding:22px!important;flex-direction:column!important;align-items:flex-start!important;}
  #article-inner > div:last-of-type a{width:100%;text-align:center;}

  /* About/legal */
  .about-hero,.legal-hero{padding-left:22px;padding-right:22px;}
  .about-hero{min-height:auto;padding-top:118px;padding-bottom:68px;}
  .about-story,.about-values,.about-timeline,.legal-section{padding-left:22px!important;padding-right:22px!important;}
  .story-grid{grid-template-columns:1fr!important;gap:36px!important;}
  .values-grid{grid-template-columns:1fr!important;}
  .timeline-item{gap:18px;}
  .legal-hero{padding-top:118px;padding-bottom:48px;}

  /* Footer */
  footer{padding:40px 22px;flex-direction:column;align-items:flex-start;gap:24px;}
  .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;width:100%;}
}

@media (max-width:390px){
  :root{--vc-gutter:18px;}
  .site-nav{padding-left:18px!important;padding-right:18px!important;}
  .hero,.services-hero{padding-left:18px!important;padding-right:18px!important;}
  .hero-title{font-size:50px;}
  .hero-stats{grid-template-columns:1fr;}
  .hero-stats .stat{border-right:0;border-bottom:1px solid var(--border);}
  .hero-stats .stat:last-child{border-bottom:0;}
  .stat-label{white-space:nowrap;}
  .footer-links{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
}

/* Final responsive corrections for existing page structures */
.services-main + section{padding-left:var(--vc-gutter)!important;padding-right:var(--vc-gutter)!important;}
.services-main + section > div{max-width:var(--vc-max)!important;}
@media (max-width:780px){
  .services-main + section{padding-top:58px!important;padding-bottom:58px!important;}
  .services-main + section > div{display:grid!important;grid-template-columns:1fr!important;gap:24px!important;}
  .about-grid{grid-template-columns:1fr!important;gap:34px!important;margin-top:34px!important;}
  .values-grid{grid-template-columns:1fr!important;gap:14px!important;margin-top:34px!important;}
  .admin-inner{padding:34px 20px!important;}
  .admin-form-grid{grid-template-columns:1fr!important;}
  .admin-group.full{grid-column:auto!important;}
  .admin-password-input{width:min(100%,300px)!important;}
  .popup-body{padding:34px 24px 28px!important;}
  .popup{max-width:calc(100vw - 28px)!important;}
  .modal{padding:30px 22px!important;}
  .toast{left:16px!important;right:16px!important;bottom:16px!important;text-align:center;}
}

/* La Lettre Velvet — Brevo form integration */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.brevo-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.velvet-newsletter-form{position:relative}
.velvet-newsletter-form button:disabled{opacity:.6;cursor:wait}
.form-error-footer{display:none;max-width:480px;margin:14px auto 0;font-size:11px;letter-spacing:.4px;color:#f2c7bf;text-align:center}
#footer-success{display:none}
@media(max-width:640px){
  .velvet-newsletter-form{display:flex!important;flex-direction:column!important;border:0!important;gap:10px!important;max-width:100%!important}
  .velvet-newsletter-form .email-input-footer{width:100%!important;border:1px solid rgba(245,240,232,.28)!important;padding:15px 16px!important;text-align:center!important}
  .velvet-newsletter-form .email-btn-footer{width:100%!important;padding:15px 18px!important}
}
