
.cvh-wrap,.cvh-wrap *{box-sizing:border-box}.cvh-wrap{position:relative;left:50%;width:100vw;margin-left:-50vw;background:#0d0907;color:#f6ead5;border-top:2px solid #c99b32;border-bottom:2px solid #c99b32}.cvh-wrap>header{padding:38px 20px 30px;text-align:center;background:linear-gradient(135deg,#4e070a,#a70d11 50%,#4e070a)}.cvh-partner>span{color:#e5b84c;font-size:10px;font-weight:900;letter-spacing:3px}.cvh-wrap>header h2{margin:5px 0!important;color:#f2cc61!important;font-family:Georgia,serif!important;font-size:clamp(42px,6vw,68px)!important}.cvh-wrap>header p{max-width:800px;margin:auto;color:#fff0d2;font-style:italic}.cvh-shell{max-width:1180px;margin:auto;padding:30px 20px 58px}.cvh-title{margin:18px 0!important;color:#f0c85d!important;text-align:center;font-family:Georgia,serif!important;font-size:25px!important}.cvh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:36px}.cvh-card{overflow:hidden;background:#17110d;border:1px solid #70531e;border-radius:10px}.cvh-image{position:relative;height:215px;overflow:hidden;background:#070504}.cvh-image img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:cover!important;object-position:center center!important}.cvh-body{position:relative;z-index:1;background:#17110d}.cvh-body{padding:18px}.cvh-badge{display:inline-block;margin-bottom:7px;padding:5px 8px;color:#35140a;background:#e1b74d;border-radius:999px;font-size:8px;font-weight:900}.cvh-body>small{display:block;color:#d6a640;font-weight:900;text-transform:uppercase}.cvh-body h3{margin:5px 0 9px!important;color:#f3d27c!important;font-family:Georgia,serif!important;font-size:24px!important}.cvh-body p{color:#d5c19c;line-height:1.45}.cvh-distance{color:#efc55c!important;font-weight:900}.cvh-offer{margin:12px 0;padding:10px;color:#35140a;background:#e0b348;border-radius:6px;font-weight:900}.cvh-phone{font-weight:900}.cvh-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.cvh-actions a,.cvh-partner a{padding:10px 13px;color:#fff6de!important;background:linear-gradient(180deg,#a91117,#71090d)!important;border:1px solid #d9aa3f!important;border-radius:999px!important;text-decoration:none!important;font-size:9px;font-weight:900}.cvh-actions .cvh-book{color:#35140a!important;background:#e0b348!important}.cvh-note{margin:20px 0;padding:18px 20px;background:#17110d;border-left:4px solid #d7a63d;border-radius:6px}.cvh-note b{color:#efc75b}.cvh-note p{margin:6px 0 0;color:#d7c39f}.cvh-partner{margin-top:30px;padding:30px;text-align:center;background:linear-gradient(135deg,#3d0709,#791015,#3d0709);border:2px solid #c99b32;border-radius:11px}.cvh-partner h3{margin:5px 0!important;color:#f3d27c!important;font-family:Georgia,serif!important;font-size:32px!important}.cvh-partner p{max-width:700px;margin:8px auto 18px;color:#f0dfbd}.cvh-empty{padding:35px;text-align:center;color:#d8c49e;border:1px dashed #74571f;border-radius:9px}@media(max-width:850px){.cvh-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cvh-wrap{left:auto;width:100%;margin-left:0}.cvh-wrap>header h2{font-size:34px!important;line-height:1.05!important}.cvh-grid{grid-template-columns:1fr}.cvh-shell{padding-left:12px;padding-right:12px}.cvh-actions{flex-direction:column}.cvh-actions a{width:100%;text-align:center}}


/* Signature CarcaVintage by Vintie’s & Co — harmonisée avec les autres modules CarcaVintage */
.cvh-brandlockup{position:relative;display:inline-block;margin:0 auto 12px;padding:2px 34px 15px 0;line-height:1}
.cvh-brandname{display:block;color:#f2cc61;font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,3vw,34px);font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px 0 #250304}
.cvh-byline{position:absolute;right:-22px;bottom:0;color:#fff0d2;font-family:"Brush Script MT","Segoe Script","Snell Roundhand",cursive;font-size:clamp(18px,2.3vw,28px);font-weight:500;letter-spacing:.01em;white-space:nowrap;transform:rotate(-8deg);transform-origin:center;text-shadow:0 2px 3px rgba(0,0,0,.35)}
@media(max-width:600px){.cvh-brandlockup{margin-bottom:10px;padding-right:24px;padding-bottom:14px}.cvh-brandname{font-size:24px;letter-spacing:.05em}.cvh-byline{right:-10px;bottom:0;font-size:20px;transform:rotate(-7deg)}}

/* Réservations directes — v1.2.0 */
.cvh-direct-meta{display:flex;flex-wrap:wrap;gap:7px 10px;margin:12px 0;color:#ead8b4;font-size:12px;font-weight:800}
.cvh-direct-meta>span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;background:#211812;border:1px solid #5e451c;border-radius:999px}
.cvh-direct-meta .cvh-price{color:#f0c85d}
.cvh-availability.available{color:#d8f3dc;border-color:#587b5b}
.cvh-availability.on_request{color:#f5d982;border-color:#8c6e24}
.cvh-availability.full{color:#f7b0b0;border-color:#8b3737}
.cvh-direct{margin-top:12px;border:1px solid #76551f;border-radius:9px;background:#100c09;overflow:hidden}
.cvh-direct>summary{cursor:pointer;list-style:none;padding:12px 14px;text-align:center;color:#35140a;background:#e0b348;font-size:10px;font-weight:900;letter-spacing:.04em}
.cvh-direct>summary::-webkit-details-marker{display:none}
.cvh-direct>summary:after{content:' +';font-size:15px}
.cvh-direct[open]>summary:after{content:' −'}
.cvh-direct-panel{padding:16px}
.cvh-direct-intro{margin:0 0 14px!important;color:#e2cfaa!important;font-size:13px}
.cvh-unavailable{margin:0 0 14px;padding:10px 12px;color:#e7cf9f;background:#211812;border-left:3px solid #c99b32;border-radius:5px;font-size:12px}
.cvh-unavailable ul{margin:6px 0 0 18px;padding:0}
.cvh-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cvh-res-form label{display:block;color:#e7d5b3;font-size:12px;font-weight:800}
.cvh-res-form label>span{color:#e0b348}
.cvh-res-form input[type="text"],.cvh-res-form input[type="email"],.cvh-res-form input[type="tel"],.cvh-res-form input[type="date"],.cvh-res-form input[type="number"],.cvh-res-form textarea{width:100%;margin-top:5px;padding:10px 11px;color:#1a120d;background:#fffaf0;border:1px solid #b89856;border-radius:6px;font:inherit}
.cvh-res-form textarea{resize:vertical}
.cvh-message{margin-top:10px}
.cvh-consent{margin:12px 0!important;font-weight:500!important;line-height:1.4}
.cvh-consent input{margin-right:6px}
.cvh-consent a{color:#f0c85d!important}
.cvh-res-form button{width:100%;padding:11px 14px;color:#fff7e8;background:linear-gradient(180deg,#8a4149,#713b43);border:1px solid #d1a94c;border-radius:999px;font-size:10px;font-weight:900;cursor:pointer}
.cvh-res-form button:hover{color:#713b43;background:#c6a15b}
.cvh-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.cvh-direct-disabled{margin-top:12px;padding:11px 13px;text-align:center;color:#f7c4c4;background:#251113;border:1px solid #7d3438;border-radius:7px;font-size:12px;font-weight:800}
.cvh-res-notice{margin:0 0 13px;padding:11px 12px;border-radius:6px;font-size:12px;font-weight:800;line-height:1.4}
.cvh-res-notice.success{color:#dff4df;background:#18331b;border:1px solid #567e59}
.cvh-res-notice.error{color:#ffd1d1;background:#3a1719;border:1px solid #8f454a}
@media(max-width:600px){.cvh-form-grid{grid-template-columns:1fr}.cvh-direct-panel{padding:13px}.cvh-direct-meta{gap:6px}.cvh-direct-meta>span{font-size:11px}}

/* Correctif v1.2.1 : les photos, notamment portrait, restent strictement contenues dans leur cadre et ne recouvrent plus le titre ni le texte. */

/* Règlement & acceptations — v1.3.0 */
.cvh-rules-acceptance{margin:14px 0;padding:12px 13px;background:#1b130f;border:1px solid #6f5222;border-radius:7px}
.cvh-rules-acceptance .cvh-consent{margin:0 0 10px!important}
.cvh-rules-acceptance .cvh-consent:last-child{margin-bottom:0!important}
.cvh-rules-page{max-width:920px;margin:40px auto;padding:34px 38px;color:#2a211b;background:#fffaf0;border:1px solid #c6a15b;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.cvh-rules-page .cvh-rules-kicker{margin:0 0 8px;color:#9a7429;font-size:11px;font-weight:900;letter-spacing:.16em;text-align:center}
.cvh-rules-page h1{margin:0!important;color:#713b43!important;text-align:center;font-family:Georgia,serif!important;font-size:clamp(32px,5vw,48px)!important}
.cvh-rules-version{text-align:center;color:#7b6a5c;font-size:12px}
.cvh-rules-content{margin-top:28px;line-height:1.65}
.cvh-rules-specific{margin-top:28px;padding:22px;background:#f7eee2;border-left:4px solid #713b43;border-radius:7px}
.cvh-rules-specific h2{margin-top:0!important;color:#713b43!important;font-family:Georgia,serif!important}
.cvh-rules-note{margin-top:28px;padding:14px 16px;background:#211812;color:#f3dfbd;border-radius:7px}
@media(max-width:600px){.cvh-rules-page{margin:20px 12px;padding:24px 18px}.cvh-rules-page h1{font-size:30px!important}}

/* Catégories & fiches accordéon — v1.5.0 */
.cvh-category-intro{max-width:820px;margin:0 auto 24px!important;text-align:center;color:#d7c39f!important;font-size:14px;line-height:1.55}
.cvh-categories{display:flex;flex-direction:column;gap:13px;margin:0 0 32px}
.cvh-category{overflow:hidden;background:#140e0b;border:1px solid #76591f;border-radius:11px;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.cvh-category>summary{list-style:none}
.cvh-category>summary::-webkit-details-marker{display:none}
.cvh-category-summary{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;min-height:70px;padding:14px 18px;cursor:pointer;background:linear-gradient(135deg,#3b080a,#6f0b0f 58%,#3b080a);user-select:none}
.cvh-category-summary:hover{filter:brightness(1.08)}
.cvh-category-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#211612;border:1px solid #c99b32;border-radius:50%;font-size:22px}
.cvh-category-name{color:#f2cc61;font-family:Georgia,serif;font-size:21px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.cvh-category-count{padding:6px 9px;color:#f5dfb4;background:#1d1410;border:1px solid #75571f;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}
.cvh-category-toggle{display:flex;align-items:center;justify-content:center;width:30px;height:30px;color:#32140a;background:#e0b348;border-radius:50%;font-size:22px;font-weight:900;line-height:1}
.cvh-category[open]>.cvh-category-summary .cvh-category-toggle{font-size:0}
.cvh-category[open]>.cvh-category-summary .cvh-category-toggle:after{content:'−';font-size:22px}
.cvh-category-panel{padding:10px;background:#0f0a08}

.cvh-lodging-details{overflow:hidden;margin:8px 0;background:#19120e;border:1px solid #5c451d;border-radius:9px}
.cvh-lodging-details>summary{list-style:none}
.cvh-lodging-details>summary::-webkit-details-marker{display:none}
.cvh-lodging-summary{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:86px;padding:9px 12px;cursor:pointer;background:#19120e}
.cvh-lodging-summary:hover{background:#211711}
.cvh-summary-thumb{display:flex;align-items:center;justify-content:center;width:82px;height:66px;overflow:hidden;background:#0b0705;border-radius:7px}
.cvh-summary-thumb img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:cover!important;object-position:center!important}
.cvh-summary-placeholder{font-size:26px;border:1px solid #5d431b}
.cvh-summary-main{min-width:0}
.cvh-summary-topline{display:flex;align-items:center;flex-wrap:wrap;gap:7px 9px}
.cvh-summary-topline>strong{color:#f3d27c;font-family:Georgia,serif;font-size:20px;line-height:1.15}
.cvh-summary-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:7px;color:#d7c39f;font-size:11px;font-weight:800}
.cvh-summary-meta .cvh-price{color:#efc55c}
.cvh-summary-meta .cvh-availability{padding:3px 7px;border:1px solid;border-radius:999px}
.cvh-summary-action{display:flex;align-items:center;gap:6px;color:#f2cc61;font-size:10px;font-weight:900;letter-spacing:.06em;white-space:nowrap}
.cvh-chevron{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#2b1d14;border:1px solid #846522;border-radius:50%;font-size:18px;transition:transform .2s ease}
.cvh-lodging-details[open]>.cvh-lodging-summary .cvh-chevron{transform:rotate(180deg)}
.cvh-lodging-panel{padding:18px;border-top:1px solid #5c451d;background:#17110d}
.cvh-detail-layout{display:grid;grid-template-columns:minmax(220px,34%) 1fr;gap:22px;align-items:start}
.cvh-detail-image{overflow:hidden;min-height:210px;max-height:310px;background:#080503;border-radius:9px}
.cvh-detail-image img{display:block!important;width:100%!important;height:100%!important;min-height:210px!important;max-height:310px!important;max-width:none!important;margin:0!important;object-fit:cover!important;object-position:center!important}
.cvh-detail-content h4{margin:0 0 10px!important;color:#f3d27c!important;font-family:Georgia,serif!important;font-size:27px!important}
.cvh-detail-content p{color:#d5c19c;line-height:1.5}
.cvh-detail-content .cvh-address{color:#efc55c;font-weight:800}
.cvh-lodging-panel>.cvh-direct{margin-top:18px}

@media(max-width:700px){
  .cvh-category-summary{grid-template-columns:auto 1fr auto;gap:9px;padding:12px}
  .cvh-category-icon{width:38px;height:38px;font-size:19px}
  .cvh-category-name{font-size:17px;line-height:1.15}
  .cvh-category-count{grid-column:2/3;justify-self:start;margin-top:-4px;font-size:10px}
  .cvh-category-toggle{grid-column:3/4;grid-row:1/3}
  .cvh-lodging-summary{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;padding:8px}
  .cvh-summary-thumb{width:64px;height:58px}
  .cvh-summary-topline>strong{font-size:17px}
  .cvh-summary-meta{font-size:10px;gap:4px 7px}
  .cvh-summary-action{font-size:0}
  .cvh-summary-action .cvh-chevron{font-size:17px}
  .cvh-detail-layout{grid-template-columns:1fr;gap:15px}
  .cvh-detail-image{min-height:190px;max-height:250px}
  .cvh-detail-image img{min-height:190px!important;max-height:250px!important}
  .cvh-lodging-panel{padding:13px}
}
