/* =========================================================
   CARTHAGE ANNECY — RESPONSIVE.CSS FINAL
   Adapté au thème bleu nuit / doré / ivoire
   Header foncé + logo capsule premium
========================================================= */

/* =========================
   01. GRAND ÉCRAN
========================= */

@media (min-width: 1500px) {
  :root {
    --container: 1320px;
    --header-height: 104px;
  }

  .logo-area {
    padding: 8px 18px 8px 11px;
  }

  .logo-img {
    height: 78px;
    max-width: 410px;
  }

  .hero-content h1 {
    font-size: 96px;
  }

  .page-hero-content h1 {
    font-size: 98px;
  }

  .univers-card,
  .univers-card img {
    min-height: 260px;
  }

  .dish-card img {
    height: 225px;
  }

  .gallery-grid {
    grid-auto-rows: 310px;
  }
}

/* =========================
   02. DESKTOP MOYEN
========================= */

@media (max-width: 1350px) {
  .header-container,
  .section-container,
  .footer-container,
  .quick-reservation-container,
  .values-container,
  .footer-bottom {
    width: min(var(--container), calc(100% - 48px));
  }

  .logo-area {
    padding: 7px 14px 7px 9px;
  }

  .logo-img {
    height: 68px;
    max-width: 315px;
  }

  .main-nav {
    gap: 18px;
  }

  .nav-link {
    font-size: 11px;
    letter-spacing: 0.7px;
  }

  .header-btn {
    min-width: 154px;
    padding-inline: 18px;
    font-size: 11px;
  }
}

/* =========================
   03. LAPTOP
========================= */

@media (max-width: 1200px) {
  :root {
    --container: 1060px;
    --header-height: 90px;
  }

  .header-container {
    height: var(--header-height);
    gap: 18px;
  }

  .logo-area {
    padding: 6px 12px 6px 8px;
  }

  .logo-img {
    height: 58px;
    max-width: 275px;
  }

  .main-nav {
    gap: 14px;
  }

  .nav-link {
    font-size: 10.5px;
  }

  .header-btn {
    min-width: 145px;
    height: 46px;
    font-size: 10.5px;
  }

  .hero-content {
    max-width: 560px;
  }

  .hero-content h1 {
    font-size: clamp(48px, 6.5vw, 82px);
  }

  .univers-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
  }

  .dishes-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .quick-reservation-container {
    grid-template-columns: 235px 1fr;
  }

  .quick-form {
    grid-template-columns: repeat(2, 1fr);
  }

  .menu-layout {
    grid-template-columns: 320px 1fr;
    gap: 32px;
  }

  .menu-side-panel {
    top: 190px;
  }

  .menu-category {
    padding: 34px 32px 26px;
  }

  .specialites-mini-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .specialite-feature-content {
    padding: 56px 46px;
  }

  .reservation-layout,
  .contact-layout {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 32px;
  }

  .reservation-form-card,
  .contact-form-card {
    padding: 40px 34px;
  }

  .about-intro-layout,
  .about-ambiance-layout {
    gap: 34px;
  }

  .about-signature-grid,
  .gallery-values-grid,
  .reservation-benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-container {
    grid-template-columns: 1.2fr 1fr 1fr;
  }

  .footer-column:last-child {
    grid-column: 1 / -1;
    padding-left: 0;
    padding-top: 10px;
    border-left: none;
  }
}

/* =========================
   04. TABLETTE / MENU MOBILE
========================= */

@media (max-width: 1024px) {
  :root {
    --header-height: 84px;
  }

  .header-container {
    height: var(--header-height);
  }

  .main-nav,
  .header-btn {
    display: none;
  }

  .menu-toggle {
    display: flex;
    flex-shrink: 0;
  }

  .mobile-menu {
    display: flex;
    top: var(--header-height);
    border-radius: 0 0 24px 24px;
  }

  .logo-area {
    min-width: 0;
    max-width: calc(100% - 60px);
    padding: 6px 12px 6px 8px;
  }

  .logo-img {
    height: 54px;
    max-width: 280px;
  }

  .hero-section {
    min-height: auto;
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.99) 0%,
        rgba(255, 248, 236, 0.94) 52%,
        rgba(7, 27, 51, 0.17) 100%
      ),
      url("../assets/images/home/hero-carthage.jpg") center / cover no-repeat;
  }

  .hero-container {
    padding: 70px 0 74px;
  }

  .hero-content {
    max-width: 650px;
  }

  .page-hero {
    min-height: 390px;
  }

  .page-hero-content {
    padding: 62px 0;
  }

  .page-hero-content h1 {
    font-size: clamp(48px, 8vw, 76px);
  }

  .page-hero-content p:not(.section-kicker) {
    font-size: 16px;
  }

  .menu-tabs-section,
  .gallery-filter-section {
    top: var(--header-height);
  }

  .menu-layout {
    grid-template-columns: 1fr;
  }

  .menu-side-panel {
    position: relative;
    top: 0;
    grid-template-columns: repeat(2, 1fr);
  }

  .menu-side-card {
    grid-column: 1 / -1;
    order: -1;
  }

  .menu-side-image img,
  .menu-side-image.small img {
    height: 280px;
  }

  .menu-category {
    scroll-margin-top: 170px;
  }

  .specialite-feature,
  .specialite-feature.reverse {
    grid-template-columns: 1fr;
  }

  .specialite-feature.reverse .specialite-feature-image,
  .specialite-feature.reverse .specialite-feature-content {
    order: initial;
  }

  .specialite-feature-image {
    min-height: 390px;
  }

  .specialite-feature-image img {
    height: 390px;
  }

  .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 260px;
  }

  .gallery-card.large,
  .gallery-card.wide {
    grid-column: span 1;
    grid-row: span 1;
  }

  .reservation-layout,
  .contact-layout,
  .about-intro-layout,
  .about-ambiance-layout,
  .experience-section,
  .special-moment-section,
  .about-story-section {
    grid-template-columns: 1fr;
  }

  .reservation-visual {
    grid-template-columns: repeat(2, 1fr);
  }

  .reservation-image,
  .contact-side-image {
    min-height: 390px;
  }

  .experience-image,
  .special-moment-image,
  .about-story-image {
    min-height: 410px;
  }

  .experience-text,
  .special-moment-text,
  .about-story-text {
    padding: 66px 42px;
  }

  .about-intro-image img {
    height: 470px;
  }

  .about-ambiance-gallery img {
    height: 420px;
  }

  .about-ambiance-gallery img:nth-child(2) {
    height: 420px;
    margin-top: 0;
  }

  .reservation-info-grid,
  .contact-info-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }

  .menu-cta-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .menu-cta-text h2,
  .menu-cta-text p:not(.section-kicker) {
    margin-left: auto;
    margin-right: auto;
  }

  .menu-cta-actions {
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
  }

  .call-band-container {
    flex-direction: column;
    text-align: center;
  }

  .footer-container {
    grid-template-columns: 1fr 1fr;
    gap: 34px;
  }

  .footer-brand {
    grid-column: 1 / -1;
  }

  .footer-bottom {
    flex-direction: column;
    text-align: center;
  }
}

/* =========================
   05. TABLETTE PORTRAIT
========================= */

@media (max-width: 900px) {
  .section-container,
  .header-container,
  .footer-container,
  .quick-reservation-container,
  .values-container,
  .footer-bottom {
    width: calc(100% - 34px);
  }

  .logo-img {
    height: 50px;
    max-width: 255px;
  }

  .hero-content h1 {
    font-size: clamp(44px, 8vw, 68px);
  }

  .section-heading h2,
  .menu-intro h2,
  .gallery-experience-content h2,
  .about-intro-text h2,
  .about-ambiance-text h2,
  .reservation-form-heading h2,
  .legal-content h2,
  .specialite-feature-content h2 {
    font-size: clamp(34px, 6vw, 54px);
  }

  .quick-reservation-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .quick-form {
    grid-template-columns: repeat(2, 1fr);
  }

  .quick-benefits {
    grid-template-columns: 1fr;
    max-width: 560px;
  }

  .quick-benefits div {
    justify-content: flex-start;
    text-align: left;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.055);
  }

  .values-container {
    grid-template-columns: repeat(3, 1fr);
  }

  .value-item {
    border-bottom: 1px solid rgba(196, 160, 90, 0.18);
  }

  .value-item:nth-child(3) {
    border-right: none;
  }

  .value-item:nth-child(4),
  .value-item:nth-child(5) {
    border-bottom: none;
  }

  .specialites-mini-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .reservation-info-grid,
  .contact-info-grid,
  .gallery-values-grid,
  .about-signature-grid,
  .reservation-benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .legal-content {
    padding: 42px 32px;
  }
}

/* =========================
   06. MOBILE LARGE
========================= */

@media (max-width: 768px) {
  :root {
    --header-height: 78px;
  }

  .header-container {
    height: var(--header-height);
    gap: 12px;
  }

  .mobile-menu {
    top: var(--header-height);
  }

  .logo-area {
    max-width: calc(100% - 56px);
    padding: 5px 10px 5px 7px;
  }

  .logo-img {
    height: 46px;
    max-width: 220px;
  }

  .menu-toggle {
    width: 42px;
    height: 42px;
    border-radius: 14px;
  }

  .hero-section {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.99) 0%,
        rgba(255, 248, 236, 0.94) 55%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/home/hero-carthage.jpg") center / cover no-repeat;
  }

  .hero-container {
    padding: 58px 0 62px;
  }

  .hero-content {
    max-width: 100%;
  }

  .hero-content h1 {
    font-size: clamp(40px, 10vw, 60px);
    line-height: 0.98;
  }

  .hero-description {
    max-width: 100%;
    margin-top: 22px;
    font-size: 15px;
    line-height: 1.8;
  }

  .hero-actions,
  .page-hero-actions,
  .menu-cta-actions,
  .legal-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .hero-actions .btn,
  .page-hero-actions .btn,
  .menu-cta-actions .btn,
  .legal-actions .btn,
  .call-band .btn {
    width: 100%;
  }

  .hero-features {
    gap: 14px;
  }

  .hero-feature {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid rgba(196, 160, 90, 0.20);
    border-radius: 20px;
    background: rgba(255, 248, 236, 0.50);
    backdrop-filter: blur(10px);
  }

  .hero-feature p {
    max-width: none;
  }

  .page-hero {
    min-height: 340px;
  }

  .page-hero-content {
    padding: 52px 0;
  }

  .page-hero-content h1 {
    font-size: clamp(38px, 11vw, 60px);
    line-height: 1;
  }

  .page-hero-content p:not(.section-kicker) {
    font-size: 15px;
    line-height: 1.75;
  }

  .menu-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/menu/menu-hero.jpg") center / cover no-repeat;
  }

  .specialites-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/specialites/specialites-hero.jpg") center / cover no-repeat;
  }

  .galerie-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/galerie/galerie-hero.jpg") center / cover no-repeat;
  }

  .reservation-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/reservation/reservation-hero.jpg") center / cover no-repeat;
  }

  .about-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/about/about-hero.jpg") center / cover no-repeat;
  }

  .contact-hero {
    background:
      linear-gradient(
        180deg,
        rgba(255, 248, 236, 0.98) 0%,
        rgba(255, 248, 236, 0.92) 58%,
        rgba(7, 27, 51, 0.16) 100%
      ),
      url("../assets/images/contact/contact-hero.jpg") center / cover no-repeat;
  }

  .univers-section,
  .menu-page-section,
  .specialites-page-section,
  .gallery-page-section,
  .reservation-page-section,
  .about-intro-section,
  .contact-page-section,
  .contact-form-section,
  .legal-section,
  .gallery-experience-section,
  .about-signature-section,
  .about-ambiance-section,
  .reservation-info-section,
  .map-section,
  .dishes-section,
  .menu-cta-section,
  .specialites-cards-section,
  .values-section,
  .reservation-benefits-section {
    padding: 60px 0;
  }

  .section-heading {
    margin-bottom: 34px;
  }

  .section-heading h2 {
    font-size: clamp(34px, 9vw, 50px);
  }

  .section-heading p:last-child {
    font-size: 14px;
  }

  .ornament-line span {
    width: 54px;
  }

  .univers-grid,
  .dishes-grid,
  .gallery-grid,
  .reservation-info-grid,
  .contact-info-grid,
  .gallery-values-grid,
  .about-signature-grid,
  .reservation-benefits-grid,
  .footer-container,
  .specialites-mini-grid {
    grid-template-columns: 1fr;
  }

  .univers-card {
    min-height: 280px;
    border-radius: 28px;
  }

  .univers-card::before {
    border-radius: 20px;
  }

  .univers-card img {
    min-height: 280px;
  }

  .dishes-grid {
    gap: 20px;
  }

  .dish-card img {
    height: 230px;
  }

  .dish-info {
    min-height: auto;
  }

  .quick-title p {
    font-size: 34px;
  }

  .quick-form {
    grid-template-columns: 1fr;
    padding: 18px;
    border-radius: 24px;
  }

  .quick-benefits {
    width: calc(100% - 34px);
  }

  .menu-tabs-wrapper,
  .gallery-filter-wrapper {
    width: calc(100% - 18px);
    justify-content: flex-start;
    gap: 10px;
  }

  .menu-tab {
    min-height: 50px;
    padding: 0 16px;
    font-size: 10px;
  }

  .menu-tab span {
    font-size: 19px;
  }

  .gallery-filter {
    min-width: 100px;
    height: 42px;
    padding: 0 16px;
    font-size: 11px;
  }

  .menu-side-panel {
    grid-template-columns: 1fr;
  }

  .menu-side-card {
    order: 0;
  }

  .menu-side-image img,
  .menu-side-image.small img {
    height: 250px;
  }

  .menu-category {
    padding: 30px 22px 22px;
  }

  .menu-category-title {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .menu-category-title span {
    display: none;
  }

  .menu-category-title h2 {
    font-size: 28px;
  }

  .menu-item {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 17px 0;
  }

  .menu-item strong {
    width: fit-content;
    min-width: 82px;
  }

  .menu-item.highlight {
    margin: 8px 0 0;
    padding: 18px;
  }

  .specialite-mini-card,
  .specialite-mini-card img {
    min-height: 280px;
    height: 280px;
  }

  .specialite-feature {
    margin-bottom: 24px;
  }

  .specialite-feature-image {
    min-height: 310px;
  }

  .specialite-feature-image img {
    height: 310px;
  }

  .specialite-feature-content {
    padding: 48px 28px 38px;
  }

  .special-number {
    top: 18px;
    right: 20px;
    width: 46px;
    height: 46px;
    font-size: 18px;
  }

  .gallery-grid {
    grid-auto-rows: auto;
  }

  .gallery-card,
  .gallery-card.large,
  .gallery-card.wide {
    min-height: 290px;
  }

  .gallery-card img {
    height: 290px;
  }

  .gallery-caption {
    left: 16px;
    right: 16px;
    bottom: 16px;
    padding: 14px;
  }

  .gallery-caption h3 {
    font-size: 21px;
  }

  .gallery-value,
  .about-signature-card,
  .reservation-benefit,
  .reservation-info-card,
  .contact-info-card {
    min-height: auto;
    padding: 30px 22px;
  }

  .reservation-visual {
    grid-template-columns: 1fr;
  }

  .reservation-image,
  .contact-side-image {
    min-height: 340px;
    padding: 8px;
  }

  .reservation-form-card,
  .contact-form-card,
  .legal-content {
    padding: 30px 20px;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }

  .experience-image,
  .special-moment-image,
  .about-story-image {
    min-height: 320px;
  }

  .experience-text,
  .special-moment-text,
  .about-story-text {
    padding: 52px 22px;
  }

  .about-intro-image img {
    height: 350px;
  }

  .about-ambiance-gallery {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .about-ambiance-gallery img,
  .about-ambiance-gallery img:nth-child(2) {
    height: 300px;
    margin-top: 0;
  }

  .about-story-stats {
    grid-template-columns: 1fr;
  }

  .map-wrapper iframe {
    min-height: 330px;
  }

  .values-container {
    grid-template-columns: 1fr 1fr;
  }

  .value-item {
    border-right: 1px solid rgba(196, 160, 90, 0.18);
    border-bottom: 1px solid rgba(196, 160, 90, 0.18);
  }

  .value-item:nth-child(2),
  .value-item:nth-child(4) {
    border-right: none;
  }

  .value-item:nth-child(5) {
    grid-column: 1 / -1;
    border-right: none;
    border-bottom: none;
  }

  .footer-container {
    padding: 46px 0 34px;
    gap: 30px;
  }

  .footer-column {
    padding-left: 0;
    padding-top: 22px;
    border-left: none;
    border-top: 1px solid rgba(228, 201, 130, 0.22);
  }

  .footer-logo img {
    height: 62px;
    max-width: 240px;
  }

  .footer-bottom div {
    flex-wrap: wrap;
    justify-content: center;
  }
}

/* =========================
   07. MOBILE STANDARD
========================= */

@media (max-width: 560px) {
  .section-container,
  .header-container,
  .footer-container,
  .quick-reservation-container,
  .values-container,
  .footer-bottom {
    width: calc(100% - 24px);
  }

  .logo-area {
    padding: 4px 8px 4px 6px;
  }

  .logo-img {
    height: 40px;
    max-width: 195px;
  }

  .mobile-menu {
    padding: 14px 14px 20px;
  }

  .mobile-link {
    padding: 14px;
    font-size: 12px;
  }

  .btn {
    width: 100%;
    min-height: 48px;
    padding-inline: 18px;
    font-size: 11px;
  }

  .hero-container {
    padding: 50px 0 54px;
  }

  .hero-content h1 {
    font-size: clamp(36px, 11vw, 48px);
    letter-spacing: -0.6px;
  }

  .hero-description {
    font-size: 14px;
    line-height: 1.75;
  }

  .page-hero {
    min-height: 320px;
  }

  .page-hero-content {
    width: calc(100% - 22px);
    padding: 46px 0;
  }

  .page-hero-content h1 {
    font-size: clamp(34px, 11vw, 48px);
    letter-spacing: -0.4px;
  }

  .page-hero-content p:not(.section-kicker) {
    font-size: 14px;
  }

  .section-kicker {
    font-size: 10px;
    letter-spacing: 2.2px;
  }

  .section-heading h2,
  .menu-intro h2,
  .gallery-experience-content h2,
  .about-intro-text h2,
  .about-ambiance-text h2,
  .reservation-form-heading h2,
  .legal-content h2,
  .specialite-feature-content h2,
  .menu-cta-text h2 {
    font-size: clamp(30px, 9vw, 42px);
  }

  .quick-title p {
    font-size: 30px;
  }

  .dish-info {
    flex-direction: column;
    align-items: flex-start;
  }

  .menu-category {
    padding: 26px 16px 20px;
  }

  .menu-category::before,
  .reservation-form-card::before,
  .contact-form-card::before,
  .legal-content::before {
    inset: 7px;
    border-radius: 18px;
  }

  .menu-category-title h2 {
    font-size: 24px;
  }

  .menu-item h3 {
    font-size: 14px;
  }

  .menu-item p {
    font-size: 13px;
  }

  .menu-item strong {
    min-height: 38px;
    font-size: 15px;
  }

  .specialite-feature-content {
    padding: 42px 20px 34px;
  }

  .gallery-caption {
    left: 12px;
    right: 12px;
    bottom: 12px;
    padding: 12px;
  }

  .gallery-caption h3 {
    font-size: 19px;
  }

  .reservation-note,
  .contact-side-card {
    padding: 24px 18px;
  }

  .reservation-note h3,
  .contact-side-card h3 {
    font-size: 26px;
  }

  .reservation-form-heading h2 {
    font-size: 34px;
  }

  .form-group input,
  .form-group select {
    height: 50px;
  }

  .reservation-submit {
    height: 52px;
  }

  .legal-block p,
  .legal-block li,
  .legal-block address {
    font-size: 14px;
  }

  .map-wrapper {
    padding: 6px;
  }

  .map-wrapper iframe {
    min-height: 280px;
  }

  .footer-logo img {
    height: 54px;
    max-width: 220px;
  }

  .footer-brand p,
  .footer-column p,
  .footer-column a,
  .footer-column address {
    font-size: 13px;
  }

  .footer-bottom {
    font-size: 11px;
  }
}

/* =========================
   08. PETIT MOBILE
========================= */

@media (max-width: 420px) {
  :root {
    --header-height: 74px;
  }

  .header-container {
    height: var(--header-height);
    gap: 10px;
  }

  .mobile-menu {
    top: var(--header-height);
  }

  .logo-area {
    padding: 4px 7px 4px 5px;
  }

  .logo-img {
    height: 35px;
    max-width: 170px;
  }

  .menu-toggle {
    width: 40px;
    height: 40px;
  }

  .menu-toggle span {
    width: 21px;
  }

  .hero-content h1 {
    font-size: 35px;
    line-height: 1.03;
  }

  .page-hero-content h1 {
    font-size: 33px;
    line-height: 1.03;
  }

  .ornament-line span {
    width: 40px;
  }

  .univers-section,
  .menu-page-section,
  .specialites-page-section,
  .gallery-page-section,
  .reservation-page-section,
  .about-intro-section,
  .contact-page-section,
  .contact-form-section,
  .legal-section,
  .gallery-experience-section,
  .about-signature-section,
  .about-ambiance-section,
  .reservation-info-section,
  .map-section,
  .dishes-section,
  .menu-cta-section,
  .specialites-cards-section,
  .values-section,
  .reservation-benefits-section {
    padding: 48px 0;
  }

  .univers-card,
  .univers-card img {
    min-height: 245px;
  }

  .dish-card img {
    height: 205px;
  }

  .specialite-mini-card,
  .specialite-mini-card img {
    min-height: 245px;
    height: 245px;
  }

  .gallery-card,
  .gallery-card img {
    min-height: 250px;
    height: 250px;
  }

  .reservation-image,
  .contact-side-image {
    min-height: 280px;
  }

  .about-intro-image img,
  .about-ambiance-gallery img,
  .about-ambiance-gallery img:nth-child(2) {
    height: 260px;
  }

  .values-container {
    grid-template-columns: 1fr;
  }

  .value-item,
  .value-item:nth-child(2),
  .value-item:nth-child(4),
  .value-item:nth-child(5) {
    grid-column: auto;
    border-right: none;
    border-bottom: 1px solid rgba(196, 160, 90, 0.18);
  }

  .value-item:last-child {
    border-bottom: none;
  }

  .reservation-form-card,
  .contact-form-card,
  .legal-content,
  .menu-category,
  .dish-card,
  .specialite-mini-card,
  .gallery-card,
  .reservation-image,
  .contact-side-image,
  .about-intro-image,
  .about-ambiance-gallery,
  .map-wrapper,
  .reservation-note,
  .contact-side-card {
    border-radius: 22px;
  }
}