/*
Theme Name: Château de l'Isle Savary
Theme URI: http://www.chateau-isle-savary.fr/
Description: Thème enfant d'Astra pour le Château de l'Isle Savary — en-tête sur mesure.
Author: Refonte 2026
Template: astra
Version: 1.0
*/

/* ===== En-tête Astra masqué, remplacé par le nôtre ===== */
#masthead,
.ast-mobile-header-wrap { display: none !important; }

/* ===== En-tête sur mesure ===== */
.ch-header{
  position:sticky; top:0; z-index:999; background:#fff;
  border-bottom:1px solid var(--ch-line,#ece6dd);
  box-shadow:0 1px 10px rgba(0,0,0,.05);
}
.ch-header__bar{
  max-width:1340px; margin:0 auto; display:flex; align-items:center;
  justify-content:space-between; gap:18px; padding:13px 22px;
}
.ch-header__brand{
  font-family:'Playfair Display',Georgia,serif; font-weight:700;
  font-size:1.28rem; color:var(--ch-wine,#6d2b3a); text-decoration:none;
  line-height:1.05; white-space:nowrap;
}
.ch-header__brand small{
  display:block; font-family:'Mulish',sans-serif; font-weight:700;
  font-size:.6rem; letter-spacing:.24em; text-transform:uppercase;
  color:var(--ch-gold,#b2894f); margin-top:3px;
}

/* Navigation */
.ch-nav{ display:flex; align-items:center; gap:16px; }
.ch-nav ul{ list-style:none; display:flex; align-items:center; gap:15px; margin:0; padding:0; }
.ch-nav li{ position:relative; }
.ch-nav a{ text-decoration:none; color:var(--ch-dark,#2b2a28); font-size:.82rem;
  font-weight:600; letter-spacing:.01em; transition:color .2s; }
.ch-nav a:hover{ color:var(--ch-gold,#b2894f); }
.ch-nav .current-menu-item>a,
.ch-nav .current_page_item>a{ color:var(--ch-wine,#6d2b3a); }

/* Sous-menu (Galerie) : on neutralise les toggles injectés par Astra */
.ch-nav .dropdown-menu-toggle,
.ch-nav .ast-menu-toggle,
.ch-nav .ast-header-navigation-arrow{ display:none !important; }

.ch-nav ul ul{
  display:none; position:absolute; top:100%; left:-14px; margin-top:14px; background:#fff;
  border:1px solid var(--ch-line,#ece6dd); box-shadow:0 12px 28px rgba(0,0,0,.09);
  min-width:210px; padding:8px 0; flex-direction:column; gap:0; z-index:50;
}
/* pont invisible : comble l'espace entre le titre et le menu pour ne pas perdre le survol */
.ch-nav li.menu-item-has-children > ul.sub-menu::before{
  content:""; position:absolute; left:0; right:0; top:-16px; height:16px;
}
.ch-nav li.menu-item-has-children:hover > ul.sub-menu,
.ch-nav li.menu-item-has-children:focus-within > ul.sub-menu,
.ch-nav li.menu-item-has-children.ch-open > ul.sub-menu{ display:flex !important; }
.ch-nav ul ul li{ width:100%; }
.ch-nav ul ul li a{ display:block; padding:9px 18px; white-space:nowrap; }
.ch-nav .menu-item-has-children > a::after{ content:" ▾"; font-size:.7em; color:var(--ch-muted,#6f6a62); }

/* Sélecteur de langue (ajouté au menu par le mu-plugin) */
.ch-nav .ch-lang a{ color:var(--ch-muted,#6f6a62); font-size:.8rem; font-weight:700; }
.ch-nav .ch-lang--current a{ color:var(--ch-wine,#6d2b3a); }
.ch-nav .ch-lang-sep{ color:#d4cdc1; }

/* Bouton Devis */
.ch-header__cta{
  background:var(--ch-gold,#b2894f); color:#fff !important; padding:9px 16px;
  border-radius:2px; font-weight:700; font-size:.8rem; white-space:nowrap;
  letter-spacing:.01em; text-decoration:none; transition:background .2s;
}
.ch-header__cta:hover{ background:#9c7540; }

/* Burger (masqué en desktop) */
.ch-burger-chk{ display:none; }
.ch-burger{ display:none; flex-direction:column; gap:5px; cursor:pointer; padding:6px; }
.ch-burger span{ width:26px; height:2px; background:var(--ch-wine,#6d2b3a); display:block; }

/* ===== Responsive ===== */
@media(max-width:1024px){
  .ch-burger{ display:flex; order:3; }
  .ch-nav{
    order:4; flex-basis:100%; display:none; flex-direction:column;
    align-items:stretch; gap:0; padding-top:10px;
  }
  .ch-burger-chk:checked ~ .ch-nav{ display:flex; }
  .ch-nav ul{ flex-direction:column; align-items:stretch; width:100%; gap:0; }
  .ch-nav ul li{ width:100%; border-top:1px solid var(--ch-line,#ece6dd); }
  .ch-nav ul li a{ display:block; padding:12px 4px; }
  .ch-nav ul ul{ position:static; display:flex; border:none; box-shadow:none;
    padding:0 0 0 16px; min-width:0; }
  .ch-nav .menu-item-has-children>a::after{ content:""; }
  .ch-header__cta{ margin:12px 0; text-align:center; }
  .ch-header__bar{ flex-wrap:wrap; }
}

/* ===== Galerie ===== */
/* La galerie prend toute la largeur utile (neutralise la contrainte des pages intérieures) */
.entry-content:has(.ch-gallery-wrap){ max-width:none !important; }
.ch-gallery-wrap{ max-width:1240px; margin:0 auto; padding:0 22px; }
.ch-gallery-section{ margin-bottom:8px; }
.ch-gallery-section .ch-overline{ text-align:center; margin-bottom:.4em; }
.ch-gallery-section h2{ text-align:center; color:var(--ch-wine,#6d2b3a);
  font-size:clamp(1.4rem,2.4vw,1.95rem); margin:48px 0 20px; }
.ch-grid-photos{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.ch-gal{ display:block; overflow:hidden; border-radius:3px; cursor:zoom-in; }
.ch-gal img{ width:100%; height:215px !important; object-fit:cover; display:block; transition:transform .45s ease; }
.ch-gal:hover img{ transform:scale(1.06); }
@media(max-width:900px){ .ch-grid-photos{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px){ .ch-grid-photos{ grid-template-columns:repeat(2,1fr); } .ch-gal img{ height:150px !important; } }

/* Lightbox */
.ch-lb{ position:fixed; inset:0; background:rgba(22,14,16,.95); display:none;
  z-index:99999; align-items:center; justify-content:center; }
.ch-lb.open{ display:flex; }
.ch-lb__fig{ margin:0; max-width:92vw; max-height:88vh; }
.ch-lb img{ max-width:92vw; max-height:82vh; display:block; box-shadow:0 12px 50px rgba(0,0,0,.6); }
.ch-lb__cap{ color:#eee; text-align:center; font-size:.9rem; margin-top:10px; }
.ch-lb button{ position:absolute; background:none; border:none; color:#fff; cursor:pointer; opacity:.85; transition:opacity .2s; }
.ch-lb button:hover{ opacity:1; }
.ch-lb__close{ top:16px; right:26px; font-size:2.4rem; line-height:1; }
.ch-lb__prev,.ch-lb__next{ top:50%; transform:translateY(-50%); font-size:3rem; padding:10px 18px; }
.ch-lb__prev{ left:10px; } .ch-lb__next{ right:10px; }
@media(max-width:600px){ .ch-lb__prev,.ch-lb__next{ font-size:2rem; padding:6px 10px; } }

/* ===== Formulaire de devis ===== */
.ch-devis-intro{ max-width:720px; margin:0 auto 26px; text-align:center; color:var(--ch-muted,#6f6a62); line-height:1.7; }
.ch-form{ max-width:760px; margin:0 auto; }
.ch-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:4px 22px; }
.ch-form .wpcf7-form p{ margin:0 0 14px; }
.ch-form label{ font-size:.92rem; }
.ch-form select{ width:100%; padding:12px 14px; margin-top:6px; border:1px solid #d9d2c7;
  border-radius:3px; font-family:inherit; font-size:1rem; background:#fff; box-sizing:border-box; }
.ch-form .wpcf7-submit{ margin-top:6px; }
@media(max-width:600px){ .ch-form-grid{ grid-template-columns:1fr; } }

/* ===== Page Contact ===== */
.entry-content:has(.ch-contact-wrap){ max-width:none !important; }
.ch-contact-wrap{ max-width:1120px; margin:0 auto; padding:0 22px; }
.ch-contact-intro{ text-align:center; max-width:680px; margin:0 auto 44px; color:var(--ch-muted,#6f6a62); line-height:1.7; }
.ch-contact-grid{ display:grid; grid-template-columns:1fr 1.15fr; gap:50px; align-items:start; }
.ch-contact-info h2,.ch-contact-form h2{ font-size:1.5rem; color:var(--ch-wine,#6d2b3a); margin:0 0 24px; }
.ch-info-item{ display:flex; gap:16px; margin-bottom:26px; }
.ch-info-item__ic{ flex:none; width:46px; height:46px; border-radius:50%; background:var(--ch-cream,#faf6f0);
  display:flex; align-items:center; justify-content:center; color:var(--ch-wine,#6d2b3a); }
.ch-info-item__ic svg{ width:20px; height:20px; }
.ch-info-item h3{ font-size:1rem; margin:0 0 3px; color:var(--ch-dark,#2b2a28); }
.ch-info-item p,.ch-info-item a{ margin:0; color:var(--ch-muted,#6f6a62); font-size:.95rem; line-height:1.55; text-decoration:none; }
.ch-info-item a:hover{ color:var(--ch-gold,#b2894f); }
.ch-socials{ display:flex; gap:12px; margin-top:8px; }
.ch-socials a{ width:42px; height:42px; border-radius:50%; background:var(--ch-wine,#6d2b3a);
  color:#fff !important; display:flex; align-items:center; justify-content:center; transition:background .2s; }
.ch-socials a:hover{ background:var(--ch-gold,#b2894f); }
.ch-socials svg{ width:20px; height:20px; fill:currentColor; }
.ch-map{ margin-top:56px; }
.ch-map iframe{ width:100%; height:400px; border:0; border-radius:4px; display:block; }
@media(max-width:860px){ .ch-contact-grid{ grid-template-columns:1fr; gap:38px; } }

/* ===== Infos pratiques ===== */
.entry-content:has(.ch-ip-wrap){ max-width:none !important; }
.ch-ip-wrap{ max-width:1080px; margin:0 auto; padding:0 22px; }
.ch-ip-intro{ text-align:center; max-width:680px; margin:0 auto 20px; color:var(--ch-muted,#6f6a62); line-height:1.7; }
.ch-ip-section{ margin:52px 0; }
.ch-ip-section > .ch-overline{ text-align:center; }
.ch-ip-section > h2{ text-align:center; color:var(--ch-wine,#6d2b3a); font-size:clamp(1.5rem,2.6vw,2rem); margin:.1em 0 1.2em; }
.ch-cols-2{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.ch-ibox{ border:1px solid var(--ch-line,#ece6dd); border-radius:4px; padding:28px 26px; background:#fff; }
.ch-ibox__ic{ width:46px; height:46px; border-radius:50%; background:var(--ch-cream,#faf6f0);
  display:flex; align-items:center; justify-content:center; color:var(--ch-wine,#6d2b3a); margin-bottom:14px; }
.ch-ibox__ic svg{ width:22px; height:22px; }
.ch-ibox h3{ color:var(--ch-wine,#6d2b3a); font-size:1.15rem; margin:0 0 .5em; }
.ch-ibox p{ color:var(--ch-muted,#6f6a62); font-size:.95rem; line-height:1.65; margin:0; }
/* bloc visite */
.ch-visit{ background:var(--ch-cream,#faf6f0); border-radius:6px; padding:34px 32px; }
.ch-visit__period{ text-align:center; font-weight:700; color:var(--ch-wine,#6d2b3a); margin:0 0 18px; font-size:1.05rem; }
.ch-hours{ display:grid; grid-template-columns:1fr 1fr; gap:18px 30px; max-width:720px; margin:0 auto; }
.ch-hours li{ list-style:none; }
.ch-hours ul{ margin:0; padding:0; }
.ch-hours .lab{ display:block; font-weight:700; color:var(--ch-dark,#2b2a28); margin-bottom:2px; }
.ch-hours .val{ color:var(--ch-muted,#6f6a62); font-size:.95rem; }
.ch-note{ text-align:center; color:var(--ch-muted,#6f6a62); font-size:.92rem; margin:20px auto 0; max-width:620px; }
.ch-note strong{ color:var(--ch-wine,#6d2b3a); }
/* tarifs */
.ch-prices{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; max-width:760px; margin:0 auto; }
.ch-price{ border:1px solid var(--ch-line,#ece6dd); border-radius:4px; text-align:center; padding:28px 18px; background:#fff; }
.ch-price .plab{ color:var(--ch-dark,#2b2a28); font-weight:700; font-size:1.05rem; }
.ch-price .psub{ color:var(--ch-muted,#6f6a62); font-size:.82rem; margin-top:3px; }
.ch-price .pval{ font-family:'Playfair Display',serif; color:var(--ch-gold,#b2894f); font-size:2.3rem; font-weight:700; margin:12px 0 0; }
@media(max-width:760px){ .ch-cols-2,.ch-hours,.ch-prices{ grid-template-columns:1fr; } }

/* ===== Page Vidéos ===== */
.entry-content:has(.ch-videos-wrap){ max-width:none !important; }
.ch-videos-wrap{ max-width:1080px; margin:0 auto; padding:0 22px; }
.ch-videos-intro{ text-align:center; max-width:680px; margin:0 auto 10px; color:var(--ch-muted,#6f6a62); line-height:1.7; }
.ch-vid-section{ margin:50px 0; }
.ch-vid-section > .ch-overline{ text-align:center; }
.ch-vid-section > h2{ text-align:center; color:var(--ch-wine,#6d2b3a); font-size:clamp(1.5rem,2.6vw,2rem); margin:.1em 0 1.1em; }
.ch-vid-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:30px; }
.ch-vid-grid--one{ grid-template-columns:1fr; max-width:820px; margin:0 auto; }
.ch-vid__frame{ position:relative; padding-top:56.25%; border-radius:5px; overflow:hidden; background:#000; box-shadow:0 8px 24px rgba(0,0,0,.12); }
.ch-vid__frame iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.ch-vid__title{ margin-top:13px; text-align:center; font-weight:700; color:var(--ch-dark,#2b2a28); font-size:1rem; }
@media(max-width:700px){ .ch-vid-grid{ grid-template-columns:1fr; } }

/* ===== Pages Réceptions (commun) ===== */
.entry-content:has(.ch-recep-wrap){ max-width:none !important; }
.ch-recep-wrap{ max-width:1120px; margin:0 auto; padding:0 22px; }
.ch-recep-lead{ text-align:center; max-width:780px; margin:0 auto; color:var(--ch-muted,#6f6a62); line-height:1.8; }
.ch-sec{ margin:46px 0; }
.ch-sec > .ch-overline{ text-align:center; }
.ch-sec > h2{ text-align:center; color:var(--ch-wine,#6d2b3a); font-size:clamp(1.5rem,2.6vw,2rem); margin:.1em 0 1em; }

/* Location d'espace : cartes + tableau */
.ch-spaces{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.ch-space{ border:1px solid var(--ch-line,#ece6dd); border-radius:5px; overflow:hidden; background:#fff; box-shadow:0 3px 14px rgba(0,0,0,.04); }
.ch-space img{ height:190px !important; width:100%; object-fit:cover; display:block; }
.ch-space__body{ padding:22px 22px 26px; }
.ch-space__body h3{ color:var(--ch-wine,#6d2b3a); font-size:1.25rem; margin:0 0 .4em; }
.ch-space__body p{ color:var(--ch-muted,#6f6a62); font-size:.9rem; line-height:1.55; margin:0 0 14px; }
.ch-chips{ display:flex; gap:8px; flex-wrap:wrap; }
.ch-chip{ background:var(--ch-cream,#faf6f0); color:var(--ch-wine,#6d2b3a); font-weight:700; font-size:.74rem; padding:6px 11px; border-radius:20px; }
.ch-cap{ margin:40px auto 0; max-width:820px; border:1px solid var(--ch-line,#ece6dd); border-radius:6px; overflow:hidden; }
.ch-cap table{ width:100%; border-collapse:collapse; font-size:.92rem; }
.ch-cap th,.ch-cap td{ padding:14px 18px; text-align:left; }
.ch-cap thead{ background:var(--ch-wine,#6d2b3a); color:#fff; }
.ch-cap tbody tr:nth-child(even){ background:var(--ch-cream,#faf6f0); }
.ch-cap td:first-child{ font-weight:700; color:var(--ch-wine,#6d2b3a); }

/* Prestations : groupes + tags */
.ch-presta{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.ch-pcard{ border:1px solid var(--ch-line,#ece6dd); border-radius:6px; padding:28px 26px; background:#fff; }
.ch-pcard__ic{ width:46px; height:46px; border-radius:50%; background:var(--ch-cream,#faf6f0); display:flex; align-items:center; justify-content:center; color:var(--ch-wine,#6d2b3a); margin-bottom:14px; }
.ch-pcard__ic svg{ width:22px; height:22px; }
.ch-pcard h3{ color:var(--ch-wine,#6d2b3a); font-size:1.2rem; margin:0 0 .3em; }
.ch-pcard > p{ color:var(--ch-muted,#6f6a62); font-size:.9rem; margin:0 0 16px; }
.ch-tags{ display:flex; flex-wrap:wrap; gap:9px; }
.ch-tag{ background:var(--ch-cream,#faf6f0); color:var(--ch-dark,#2b2a28); font-size:.84rem; font-weight:600; padding:7px 14px; border-radius:4px; border:1px solid var(--ch-line,#ece6dd); }

/* Loisirs : deux colonnes */
.ch-loisirs{ display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.ch-lcol{ border:1px solid var(--ch-line,#ece6dd); border-radius:6px; padding:28px 30px; background:#fff; }
.ch-lcol h3{ color:var(--ch-wine,#6d2b3a); font-size:1.2rem; margin:0 0 .8em; display:flex; align-items:center; gap:10px; }
.ch-lcol ul{ list-style:none; margin:0; padding:0; }
.ch-lcol li{ padding:9px 0; border-bottom:1px solid var(--ch-line,#ece6dd); color:var(--ch-dark,#2b2a28); font-size:.95rem; display:flex; justify-content:space-between; gap:12px; }
.ch-lcol li:last-child{ border-bottom:0; }
.ch-lcol li .dist{ color:var(--ch-gold,#b2894f); font-weight:700; font-size:.82rem; white-space:nowrap; }
.ch-recep-note{ text-align:center; color:var(--ch-muted,#6f6a62); font-size:.88rem; margin:26px auto 0; max-width:680px; }

@media(max-width:820px){ .ch-spaces,.ch-presta,.ch-loisirs{ grid-template-columns:1fr; } }

/* ===== Méga-menu Réceptions ===== */
.ch-nav ul.ch-mega{ width:720px; max-width:calc(100vw - 44px); left:50%; right:auto; transform:translateX(-50%); padding:0;
  grid-template-columns:1.4fr 1fr; }
.ch-nav li.menu-item-has-children.ch-open > ul.ch-mega,
.ch-nav li.menu-item-has-children:hover > ul.ch-mega{ display:grid !important; }
.ch-mega__left{ padding:20px 10px 20px 18px; }
.ch-mega a.mm-item{ display:flex; gap:13px; padding:12px; border-radius:6px; text-decoration:none; color:inherit; }
.ch-mega a.mm-item:hover{ background:var(--ch-cream,#faf6f0); }
.ch-mega .mm-ic{ flex:none; width:40px; height:40px; border-radius:50%; background:var(--ch-cream,#faf6f0); display:flex; align-items:center; justify-content:center; color:var(--ch-wine,#6d2b3a); }
.ch-mega .mm-ic svg{ width:20px; height:20px; }
.ch-mega h4{ margin:0 0 2px; color:var(--ch-wine,#6d2b3a); font-size:.98rem; }
.ch-mega .mm-desc{ margin:0; color:var(--ch-muted,#6f6a62); font-size:.82rem; line-height:1.4; font-weight:400; letter-spacing:0; }
.ch-mega__promo{ position:relative; color:#fff; display:flex; flex-direction:column; justify-content:flex-end; padding:22px; min-height:220px;
  background-size:cover; background-position:center; }
.ch-mega__promo::before{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(40,20,25,.2),rgba(45,20,28,.82)); }
.ch-mega__promo > *{ position:relative; z-index:1; }
.ch-mega__promo .ov{ text-transform:uppercase; letter-spacing:.18em; font-size:.64rem; font-weight:700; color:#e9cf9f; }
.ch-mega__promo h4{ color:#fff; font-family:'Playfair Display',serif; margin:.3em 0 .7em; font-size:1.2rem; line-height:1.2; }
.ch-mega__promo a{ align-self:flex-start; background:var(--ch-gold,#b2894f); color:#fff !important; text-decoration:none; font-weight:700; font-size:.78rem; padding:9px 15px; border-radius:2px; }
@media(max-width:1024px){
  .ch-nav ul.ch-mega{ width:100%; grid-template-columns:1fr; left:auto; right:auto; transform:none; box-shadow:none; border:0; }
  .ch-mega__promo{ display:none; }
  .ch-mega__left{ padding:0; }
  .ch-mega a.mm-item{ padding:10px 0; }
  .ch-nav .ch-lang-sep{ display:none; }
}

/* Illustration pleine largeur dans les pages Réceptions */
.ch-recep-illus{ margin:26px 0 0; border-radius:6px; overflow:hidden; box-shadow:0 6px 20px rgba(0,0,0,.08); }
.ch-recep-illus img{ width:100%; height:300px !important; object-fit:cover; display:block; }
@media(max-width:600px){ .ch-recep-illus img{ height:200px; } }

/* Rangée d'illustrations (activités) */
.ch-illus-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:26px; }
.ch-illus-cell{ position:relative; border-radius:6px; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,.08); }
.ch-illus-cell img{ width:100%; height:220px !important; object-fit:cover; display:block; }
.ch-illus-cell .cap{ position:absolute; left:0; right:0; bottom:0; padding:24px 15px 12px; color:#fff; font-weight:700;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(30,15,18,.78)); font-family:'Playfair Display',serif; font-size:1.08rem; }
@media(max-width:700px){ .ch-illus-row{ grid-template-columns:1fr; } .ch-illus-cell img{ height:190px; } }

/* ===== Livre d'or / Avis ===== */
.entry-content:has(.ch-reviews-wrap){ max-width:none !important; }
.ch-reviews-wrap{ max-width:1120px; margin:0 auto; padding:0 22px; }
.ch-reviews-intro{ text-align:center; max-width:720px; margin:0 auto 10px; color:var(--ch-muted,#6f6a62); line-height:1.7; }
.ch-reviews-note{ text-align:center; font-size:.82rem; color:var(--ch-gold,#b2894f); font-weight:700; letter-spacing:.04em; margin:0 0 26px; }
.ch-reviews{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.ch-review{ background:#fff; border:1px solid var(--ch-line,#ece6dd); border-radius:8px; padding:26px 24px; box-shadow:0 3px 14px rgba(0,0,0,.04); display:flex; flex-direction:column; }
.ch-review__stars{ color:#f5b100; letter-spacing:2px; font-size:1.05rem; margin-bottom:12px; }
.ch-review__text{ color:var(--ch-dark,#2b2a28); line-height:1.65; font-size:.96rem; margin:0 0 18px; flex:1; }
.ch-review__who{ display:flex; align-items:center; gap:11px; }
.ch-review__ava{ width:40px; height:40px; border-radius:50%; background:var(--ch-wine,#6d2b3a); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-family:'Playfair Display',serif; }
.ch-review__name{ font-weight:700; color:var(--ch-dark,#2b2a28); font-size:.92rem; line-height:1.2; }
.ch-review__src{ font-size:.78rem; color:var(--ch-muted,#6f6a62); }
.ch-reviews-cta{ text-align:center; margin-top:44px; }
.ch-reviews-cta .ch-btn{ display:inline-flex; align-items:center; gap:10px; }
.ch-reviews-cta svg{ width:18px; height:18px; }
@media(max-width:820px){ .ch-reviews{ grid-template-columns:1fr; } }
