/*
Theme Name: Blocksy Child
Template: blocksy
Description: Thème enfant pour personnalisations Maître Nicoleta Avocat
Version: 1.0.0
*/


/* Hermes Nicoleta premium visual redesign - 20260602
   Test site only: fake logo, generated SVG illustrations, premium navy/ivory/gold palette. */
:root {
  --nicoleta-navy: #07111f;
  --nicoleta-navy-2: #10233f;
  --nicoleta-blue: #15345d;
  --nicoleta-ivory: #f8f1df;
  --nicoleta-cream: #fffaf0;
  --nicoleta-gold: #c9a24f;
  --nicoleta-gold-soft: #e9d28a;
  --nicoleta-ink: #172033;
  --nicoleta-muted: #667085;
  --nicoleta-border: rgba(201, 162, 79, .28);
  --nicoleta-shadow: 0 28px 80px rgba(7, 17, 31, .18);
}

body {
  background: var(--nicoleta-cream) !important;
  color: var(--nicoleta-ink) !important;
}

/* Header premium */
body .ct-header,
body .site-header,
body [data-header*="type-1"] [data-row*="middle"] {
  background: linear-gradient(135deg, var(--nicoleta-navy), var(--nicoleta-navy-2) 62%, #081321) !important;
  border-bottom: 1px solid rgba(201, 162, 79, .32) !important;
  box-shadow: 0 18px 48px rgba(7, 17, 31, .22) !important;
}

body .site-logo-container img,
body [data-id="logo"] img {
  content: url('/wp-content/uploads/nicoleta-brand/nicoleta-logo.svg') !important;
  width: clamp(210px, 28vw, 360px) !important;
  max-width: clamp(210px, 28vw, 360px) !important;
  height: auto !important;
  max-height: 86px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 10px 26px rgba(0,0,0,.26));
}

body [data-id="logo"] .site-title,
body .ct-header nav a,
body header nav a {
  color: var(--nicoleta-ivory) !important;
  letter-spacing: .08em !important;
}

body .ct-header nav a:hover,
body header nav a:hover,
body .ct-header .current-menu-item > a {
  color: var(--nicoleta-gold-soft) !important;
}

/* Global premium typography rhythm */
body h1, body h2, body h3,
body .page-title {
  color: var(--nicoleta-navy) !important;
  letter-spacing: -.025em;
}

body .entry-content p,
body .entry-content li {
  color: #2f3a4f;
  line-height: 1.72;
}

body .entry-content a {
  color: #9f7937 !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

/* Hero illustration injected on homepage */
body.home .entry-content::before {
  content: "";
  display: block;
  width: min(1180px, calc(100vw - 32px));
  height: clamp(250px, 35vw, 470px);
  margin: clamp(12px, 2vw, 28px) auto clamp(26px, 4vw, 54px);
  background:
    linear-gradient(90deg, rgba(7,17,31,.72), rgba(7,17,31,.08) 58%, rgba(7,17,31,.18)),
    url('/wp-content/uploads/nicoleta-brand/nicoleta-hero-justice.svg') center/cover no-repeat;
  border: 1px solid rgba(201, 162, 79, .38);
  box-shadow: var(--nicoleta-shadow);
}

/* Homepage first content block: more editorial/premium */
body.home .entry-content > .wp-block-columns:first-of-type {
  width: min(1180px, calc(100vw - 32px));
  margin-inline: auto !important;
  padding: clamp(22px, 4vw, 54px) !important;
  background: rgba(255, 250, 240, .92);
  border: 1px solid var(--nicoleta-border);
  box-shadow: 0 22px 70px rgba(16, 35, 63, .12);
}

body.home .entry-content > .wp-block-columns:first-of-type img {
  border: 1px solid rgba(201, 162, 79, .38) !important;
  box-shadow: 0 26px 70px rgba(7, 17, 31, .22) !important;
  filter: saturate(.88) contrast(1.03);
}

/* Add generated illustration ambience to regular pages */
body:not(.home).page .entry-content::after {
  content: "";
  display: block;
  width: min(860px, 100%);
  height: clamp(180px, 26vw, 310px);
  margin: clamp(34px, 5vw, 64px) auto 0;
  background: url('/wp-content/uploads/nicoleta-brand/nicoleta-cabinet-card.svg') center/cover no-repeat;
  border: 1px solid rgba(16, 35, 63, .12);
  box-shadow: 0 20px 58px rgba(16, 35, 63, .12);
}

/* Premium cards/blocks */
body .entry-content .wp-block-group,
body .entry-content .wp-block-columns:not(:first-of-type) {
  border-color: rgba(201, 162, 79, .2) !important;
}

body .wp-block-button__link,
body button,
body input[type="submit"] {
  background: linear-gradient(135deg, var(--nicoleta-navy-2), var(--nicoleta-navy)) !important;
  color: var(--nicoleta-ivory) !important;
  border: 1px solid rgba(201, 162, 79, .55) !important;
  border-radius: 0 !important;
  box-shadow: 0 14px 34px rgba(7, 17, 31, .24) !important;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body .wp-block-button__link:hover,
body button:hover,
body input[type="submit"]:hover {
  background: linear-gradient(135deg, #17365f, #07111f) !important;
  color: var(--nicoleta-gold-soft) !important;
  transform: translateY(-1px);
}

/* Footer */
body .ct-footer,
body footer {
  background: var(--nicoleta-navy) !important;
  color: rgba(248,241,223,.78) !important;
  border-top: 1px solid rgba(201, 162, 79, .28) !important;
}

body .ct-footer a,
body footer a {
  color: var(--nicoleta-ivory) !important;
}

/* Mobile adjustments */
@media (max-width: 689.98px) {
  body .site-logo-container img,
  body [data-id="logo"] img {
    width: min(76vw, 310px) !important;
    max-width: min(76vw, 310px) !important;
    max-height: 72px !important;
  }

  body.home .entry-content::before {
    width: calc(100vw - 20px);
    height: 250px;
    margin-top: 10px;
  }

  body.home .entry-content > .wp-block-columns:first-of-type {
    width: calc(100vw - 20px);
    padding: 22px !important;
  }
}


/* Hermes Nicoleta black palette override - 20260602
   Test site only: premium black / anthracite palette. */
:root {
  --nicoleta-navy: #050505;
  --nicoleta-navy-2: #0b0b0d;
  --nicoleta-blue: #151518;
  --nicoleta-ivory: #f4efe4;
  --nicoleta-cream: #0a0a0b;
  --nicoleta-gold: #b89552;
  --nicoleta-gold-soft: #d9bf7a;
  --nicoleta-ink: #f4efe4;
  --nicoleta-muted: #b8b8b8;
  --nicoleta-border: rgba(217, 191, 122, .26);
  --nicoleta-shadow: 0 32px 90px rgba(0, 0, 0, .52);
}

html,
body {
  background:
    radial-gradient(circle at 72% 0%, rgba(184,149,82,.14), transparent 28%),
    linear-gradient(180deg, #000 0%, #0a0a0b 42%, #111113 100%) !important;
  color: #f4efe4 !important;
}

body .site-main,
body #main,
body [data-prefix="single_page"] .site-main,
body article,
body .entry-content {
  background: transparent !important;
}

body .ct-header,
body .site-header,
body [data-header*="type-1"] [data-row*="middle"] {
  background: linear-gradient(135deg, #000, #09090a 55%, #171717) !important;
  border-bottom: 1px solid rgba(217, 191, 122, .34) !important;
  box-shadow: 0 20px 62px rgba(0,0,0,.64) !important;
}

body .ct-header nav a,
body header nav a,
body [data-id="logo"] .site-title {
  color: #f4efe4 !important;
}

body .ct-header nav a:hover,
body header nav a:hover,
body .ct-header .current-menu-item > a,
body .ct-header-trigger:hover {
  color: #d9bf7a !important;
}

body h1,
body h2,
body h3,
body h4,
body .page-title,
body .entry-title {
  color: #f4efe4 !important;
  text-shadow: 0 18px 42px rgba(0,0,0,.42);
}

body .entry-content p,
body .entry-content li,
body .entry-content figcaption,
body .entry-content .wp-block-quote {
  color: rgba(244,239,228,.82) !important;
}

body .entry-content strong,
body .entry-content b {
  color: #fffaf0 !important;
}

body .entry-content a {
  color: #d9bf7a !important;
}

body.home .entry-content::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.30) 58%, rgba(0,0,0,.56)),
    url('/wp-content/uploads/nicoleta-brand/nicoleta-hero-justice.svg') center/cover no-repeat !important;
  border: 1px solid rgba(217, 191, 122, .40) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,.72) !important;
}

body.home .entry-content > .wp-block-columns:first-of-type,
body .entry-content .wp-block-group,
body .entry-content .wp-block-columns:not(:first-of-type),
body .entry-content .wp-block-cover,
body .entry-content .wp-block-media-text,
body .entry-content .wp-block-table,
body .entry-content form {
  background: linear-gradient(145deg, rgba(20,20,22,.94), rgba(5,5,5,.94)) !important;
  border: 1px solid rgba(217, 191, 122, .22) !important;
  box-shadow: 0 24px 78px rgba(0,0,0,.48) !important;
  color: #f4efe4 !important;
}

body.home .entry-content > .wp-block-columns:first-of-type img,
body .entry-content img {
  border-color: rgba(217, 191, 122, .34) !important;
  box-shadow: 0 26px 72px rgba(0,0,0,.54) !important;
  filter: saturate(.82) contrast(1.05) brightness(.88);
}

body:not(.home).page .entry-content::after {
  background:
    linear-gradient(135deg, rgba(0,0,0,.70), rgba(0,0,0,.18)),
    url('/wp-content/uploads/nicoleta-brand/nicoleta-cabinet-card.svg') center/cover no-repeat !important;
  border: 1px solid rgba(217, 191, 122, .30) !important;
  box-shadow: 0 28px 82px rgba(0,0,0,.56) !important;
}

body .wp-block-button__link,
body button,
body input[type="submit"] {
  background: linear-gradient(135deg, #1a1a1c, #000) !important;
  color: #f4efe4 !important;
  border: 1px solid rgba(217, 191, 122, .58) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.56) !important;
}

body .wp-block-button__link:hover,
body button:hover,
body input[type="submit"]:hover {
  background: linear-gradient(135deg, #292929, #050505) !important;
  color: #d9bf7a !important;
}

body input,
body textarea,
body select {
  background: #101012 !important;
  color: #f4efe4 !important;
  border-color: rgba(217, 191, 122, .28) !important;
}

body .ct-footer,
body footer {
  background: #000 !important;
  color: rgba(244,239,228,.76) !important;
  border-top: 1px solid rgba(217, 191, 122, .28) !important;
}

body .ct-footer a,
body footer a {
  color: #f4efe4 !important;
}

body .ct-footer a:hover,
body footer a:hover {
  color: #d9bf7a !important;
}

@media (max-width: 689.98px) {
  body.home .entry-content > .wp-block-columns:first-of-type,
  body .entry-content .wp-block-group,
  body .entry-content .wp-block-columns:not(:first-of-type) {
    background: linear-gradient(145deg, rgba(17,17,18,.96), rgba(0,0,0,.96)) !important;
  }
}


/* Hermes Nicoleta menu/footer harmony - 20260602
   Test site only: align desktop menu, mobile offcanvas and footer with black/gold identity. */

/* Header/menu shell */
body .ct-header [data-row*="middle"] > div,
body .ct-header .ct-container,
body [data-header*="type-1"] .ct-header [data-row*="middle"] > div {
  min-height: clamp(74px, 7vw, 92px) !important;
  align-items: center !important;
}

body .ct-header [data-id="menu"],
body .ct-header nav[data-id="menu"],
body .ct-header .menu-container {
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(217,191,122,.18) !important;
  padding: 6px 8px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 16px 38px rgba(0,0,0,.20) !important;
}

body .ct-header nav ul,
body .ct-header [data-id="menu"] ul,
body .ct-header .menu {
  gap: 2px !important;
  align-items: center !important;
}

body .ct-header .menu .ct-menu-link,
body .ct-header nav .ct-menu-link,
body .ct-header nav a {
  min-height: 38px !important;
  padding: 10px 14px !important;
  color: rgba(244,239,228,.84) !important;
  border: 1px solid transparent !important;
  font-size: clamp(11px, .85vw, 13px) !important;
  font-weight: 700 !important;
  letter-spacing: .105em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease !important;
}

body .ct-header .menu .ct-menu-link:hover,
body .ct-header nav .ct-menu-link:hover,
body .ct-header .menu .current-menu-item > .ct-menu-link,
body .ct-header .menu .current_page_item > .ct-menu-link {
  color: #f4efe4 !important;
  background: linear-gradient(135deg, rgba(217,191,122,.16), rgba(255,255,255,.045)) !important;
  border-color: rgba(217,191,122,.34) !important;
  transform: translateY(-1px);
}

body .ct-header .menu .current-menu-item > .ct-menu-link::after,
body .ct-header .menu .current_page_item > .ct-menu-link::after {
  content: "";
  display: block;
  width: 28px;
  height: 1px;
  margin: 6px auto 0;
  background: linear-gradient(90deg, transparent, #d9bf7a, transparent);
}

/* Header utility icons */
body .ct-header-search,
body .ct-header-trigger,
body .ct-header-trigger .ct-icon-container,
body [data-id="trigger"] {
  color: #f4efe4 !important;
  border-color: rgba(217,191,122,.32) !important;
}

body .ct-header-trigger .ct-icon-container,
body .ct-header-search {
  background: rgba(255,255,255,.045) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.24) !important;
}

body .ct-header-trigger:hover .ct-icon-container,
body .ct-header-search:hover {
  background: rgba(217,191,122,.15) !important;
  color: #d9bf7a !important;
}

/* Mobile/offcanvas menu */
body #offcanvas.ct-panel,
body .ct-drawer-canvas #offcanvas,
body .ct-panel#offcanvas {
  --panel-content-height: 100%;
}

body #offcanvas .ct-panel-inner {
  background:
    radial-gradient(circle at 100% 0%, rgba(217,191,122,.18), transparent 28%),
    linear-gradient(180deg, rgba(0,0,0,.98), rgba(13,13,15,.98)) !important;
  border-left: 1px solid rgba(217,191,122,.28) !important;
  box-shadow: -26px 0 80px rgba(0,0,0,.72) !important;
}

body #offcanvas .ct-panel-content,
body #offcanvas .ct-panel-content-inner {
  padding: clamp(18px, 5vw, 34px) !important;
}

body #offcanvas nav,
body #offcanvas .mobile-menu,
body #offcanvas .menu-container,
body #offcanvas [data-id="mobile-menu"] {
  width: 100% !important;
}

body #offcanvas nav ul,
body #offcanvas .mobile-menu ul,
body #offcanvas .menu {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
}

body #offcanvas nav a,
body #offcanvas .mobile-menu a,
body #offcanvas .ct-menu-link {
  justify-content: center !important;
  width: 100% !important;
  padding: 15px 16px !important;
  color: rgba(244,239,228,.88) !important;
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(217,191,122,.18) !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 14px 34px rgba(0,0,0,.26) !important;
}

body #offcanvas nav a:hover,
body #offcanvas .mobile-menu a:hover,
body #offcanvas .current-menu-item > .ct-menu-link,
body #offcanvas .current_page_item > .ct-menu-link {
  color: #f4efe4 !important;
  background: linear-gradient(135deg, rgba(217,191,122,.20), rgba(255,255,255,.055)) !important;
  border-color: rgba(217,191,122,.42) !important;
}

body #offcanvas .ct-toggle-close,
body #offcanvas .ct-toggle-close .ct-icon {
  color: #f4efe4 !important;
}

/* Footer: premium compact legal bar */
body footer.ct-footer,
body .ct-footer,
body [data-footer*="type-1"] .ct-footer {
  background:
    radial-gradient(circle at 18% 0%, rgba(217,191,122,.11), transparent 28%),
    linear-gradient(180deg, #101012 0%, #000 100%) !important;
  border-top: 1px solid rgba(217,191,122,.34) !important;
  box-shadow: 0 -24px 80px rgba(0,0,0,.42) !important;
}

body footer.ct-footer [data-row*="bottom"],
body .ct-footer [data-row*="bottom"] {
  background: transparent !important;
  border-top: 0 !important;
}

body footer.ct-footer .ct-container,
body .ct-footer .ct-container {
  min-height: 78px !important;
  padding-block: 22px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
}

body footer.ct-footer .ct-footer-copyright,
body .ct-footer .ct-footer-copyright {
  color: rgba(244,239,228,.72) !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body footer.ct-footer a,
body .ct-footer a,
body footer.ct-footer .ct-menu-link,
body .ct-footer .ct-menu-link {
  color: rgba(244,239,228,.86) !important;
  border-bottom: 1px solid rgba(217,191,122,.36) !important;
  text-decoration: none !important;
  transition: color .18s ease, border-color .18s ease !important;
}

body footer.ct-footer a:hover,
body .ct-footer a:hover,
body footer.ct-footer .ct-menu-link:hover,
body .ct-footer .ct-menu-link:hover {
  color: #d9bf7a !important;
  border-bottom-color: #d9bf7a !important;
}

body footer.ct-footer [data-id="menu"] ul,
body footer.ct-footer nav ul,
body .ct-footer [data-id="menu"] ul,
body .ct-footer nav ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px 18px !important;
}

@media (max-width: 999.98px) {
  body .ct-header [data-id="menu"],
  body .ct-header nav[data-id="menu"],
  body .ct-header .menu-container {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
  }
}

@media (max-width: 689.98px) {
  body footer.ct-footer .ct-container,
  body .ct-footer .ct-container {
    min-height: 92px !important;
    padding: 18px 14px !important;
  }

  body footer.ct-footer .ct-footer-copyright,
  body .ct-footer .ct-footer-copyright {
    font-size: 11px !important;
    letter-spacing: .055em !important;
  }
}
