/*
Theme Name:   Astra Child — Studios de la Seine
Description:  Thème enfant Astra. Design noir/rouge identique au site lesstudiosdelaseine.com.
Template:     astra
Version:      2.0.0
Text Domain:  sdls-child
*/


@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Montserrat:wght@200;300;400;500;600&display=swap');

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
  --red:#c1121f; --red-dark:#a00f19;
  --black:#000000; --black2:#0d0d0d; --black3:#141414; --black4:#1c1c1c;
  --white:#ffffff; --grey:#6b6b6b; --grey-light:#9e9e9e;
  --border:rgba(255,255,255,0.08);
}

html { scroll-behavior:smooth; }
body { background:var(--black) !important; color:var(--white) !important;
       font-family:'Montserrat',sans-serif !important; font-weight:300; overflow-x:hidden; }

/* ── RESET ASTRA ── */
#page, .site, .ast-container, #content, .site-content,
.ast-article-post, .entry-content, #primary,
.ast-separate-container .ast-article-post,
.ast-plain-container .ast-article-post {
  padding:0 !important; margin:0 !important;
  max-width:100% !important; width:100% !important;
  background:var(--black) !important;
}
.ast-breadcrumbs-wrapper, .page-title-bar { display:none !important; }
.ast-above-header-bar, .ast-below-header-bar { display:none !important; }

/* ── NAV ASTRA override complet ── */
#masthead, .site-header, .ast-primary-header-bar {
  background:rgba(0,0,0,0.93) !important;
  backdrop-filter:blur(14px) !important;
  border-bottom:1px solid var(--border) !important;
  position:sticky !important; top:0; z-index:1000 !important;
}
.ast-site-identity .site-title a,
.site-title a {
  font-family:'Cormorant Garamond',serif !important;
  font-size:1rem !important; letter-spacing:0.28em !important;
  text-transform:uppercase !important; color:#fff !important;
  text-decoration:none !important;
}
.main-navigation .menu-item > a,
.main-header-menu .menu-item > a,
#site-navigation .menu-item > a {
  font-family:'Montserrat',sans-serif !important;
  font-size:0.62rem !important; letter-spacing:0.2em !important;
  text-transform:uppercase !important; color:var(--grey-light) !important;
  font-weight:400 !important; padding:5px 0 !important;
}
.main-navigation .menu-item > a:hover,
.main-header-menu .menu-item.current-menu-item > a { color:#fff !important; }
.main-header-menu .menu-item.current-menu-item > a {
  border-bottom:1px solid var(--red) !important;
}
.ast-header-cta .ast-custom-button, .ast-header-custom-item a.ast-custom-button {
  background:var(--red) !important; color:#fff !important;
  font-size:0.6rem !important; letter-spacing:0.18em !important;
  text-transform:uppercase !important; border-radius:0 !important;
  padding:9px 24px !important; font-family:'Montserrat',sans-serif !important;
}

/* ── FOOTER ASTRA override ── */
.site-footer, #colophon, .ast-small-footer,
.footer-widget-area, .ast-footer-widget-area {
  background:var(--black) !important;
  border-top:1px solid var(--border) !important;
  color:var(--grey) !important; font-family:'Montserrat',sans-serif !important;
}
.site-footer a, .ast-small-footer a,
.footer-widget-area a { color:var(--grey) !important; }
.site-footer a:hover, .footer-widget-area a:hover { color:#fff !important; }

/* ── UTILITAIRES ── */
.sdls-tag { font-size:.58rem; letter-spacing:.35em; text-transform:uppercase;
            color:var(--red); margin-bottom:14px; display:block; }
.sdls-rule { width:40px; height:2px; background:var(--red); margin:22px 0; display:block; }
.sdls-title { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,4vw,3.5rem);
              font-weight:300; line-height:1.1; margin-bottom:20px; color:#fff; }
.sdls-title em { font-style:italic; }

.sdls-btn-primary { display:inline-block; background:var(--red); color:#fff;
  padding:13px 34px; font-family:'Montserrat',sans-serif; font-size:.65rem;
  font-weight:500; letter-spacing:.2em; text-transform:uppercase;
  text-decoration:none; transition:background .25s; border:none; cursor:pointer; }
.sdls-btn-primary:hover { background:var(--red-dark); color:#fff; }
.sdls-btn-outline { display:inline-block; background:transparent; color:#fff;
  padding:13px 34px; font-family:'Montserrat',sans-serif; font-size:.65rem;
  font-weight:300; letter-spacing:.2em; text-transform:uppercase;
  text-decoration:none; border:1px solid rgba(255,255,255,.3); transition:border-color .25s; }
.sdls-btn-outline:hover { border-color:#fff; color:#fff; }

.sdls-section { padding:100px 50px; }
.sdls-inner { max-width:1200px; margin:0 auto; }

@media(max-width:768px) { .sdls-section { padding:65px 20px; } }
