/* Integration only. The visual design itself remains in the unmodified V3 CSS. */
.cpv3-mobile-only{display:none!important}
.cpv3-vacation{background:#fff6dd;border-bottom:1px solid #d5ad55;color:#3a321d;text-align:center;padding:12px 20px;font-size:15px}
.cpv3-vacation>div{max-width:1180px;margin:auto}
.cpv3-site .hero-visual>picture,.cpv3-site .hero-visual>.cpv3-desktop-only,.cpv3-site .hero-visual>.cpv3-mobile-only{display:block;width:100%;height:535px}
.cpv3-site .hero-visual>picture img,.cpv3-site .hero-visual>.cpv3-desktop-only img,.cpv3-site .hero-visual>.cpv3-mobile-only img,.cpv3-site .hero-visual>.cpv3-photo-video{width:100%;height:100%;object-fit:cover;object-position:50% 50%;border-radius:170px 170px 5px 5px}
.cpv3-site .store-grid>picture img,.cpv3-site .store-grid>.cpv3-desktop-only img,.cpv3-site .store-grid>.cpv3-mobile-only img{width:100%;height:420px;object-fit:cover;border-radius:5px}
.cpv3-site .location-grid>picture,.cpv3-site .location-grid>.cpv3-desktop-only,.cpv3-site .location-grid>.cpv3-mobile-only{display:block}
.cpv3-site .location-grid .location-photo{width:100%;height:510px;object-fit:cover}
.cpv3-site .quote-notice[data-cpv3-feed-state=error]{border-color:#b66c53}
.cpv3-site .quote-choice:disabled{opacity:.65}
.cpv3-site dialog #request-form{position:relative}
.cpv3-site .cpv3-forminator{margin-top:17px}
.cpv3-site .cpv3-forminator .forminator-ui{margin:0!important}
.cpv3-site .cpv3-forminator .forminator-field{margin-bottom:14px}
.cpv3-site .cpv3-forminator .forminator-label{font-size:13px;font-weight:600;color:var(--ink)}
.cpv3-site .cpv3-forminator input:not([type=checkbox]),.cpv3-site .cpv3-forminator select,.cpv3-site .cpv3-forminator textarea{width:100%;border:1px solid #c4c7bf;border-radius:4px;padding:12px;background:#fff;color:var(--ink)}
.cpv3-site .cpv3-forminator .forminator-button-submit{display:block;width:100%;min-height:52px;background:var(--ink);color:#fff;border-radius:4px;border:0;font-weight:600}
/* Invisible reCAPTCHA can append its badge outside the Forminator form. */
body.cpv3-site .grecaptcha-badge{visibility:hidden!important}
.cpv3-site .promo-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.25fr) minmax(310px,1fr);gap:32px}
.cpv3-site .promo-grid>.promo-number{font-size:clamp(150px,12.8vw,185px);padding-right:28px;white-space:nowrap}
.cpv3-site .promo-grid>.promo-number span{font-size:.44em}
.cpv3-site .promo-copy{min-width:0}
.cpv3-site .promo-copy h2{font-size:clamp(32px,3vw,42px)}
.cpv3-site .promo-inline-form{min-width:0;margin:0;padding:0 0 0 30px;border-left:1px solid #baa266}
.cpv3-site .promo-inline-form .forminator-label,.cpv3-site .promo-inline-form .forminator-checkbox__label{color:var(--ink)}
.cpv3-site .promo-inline-form .forminator-button-submit{width:100%!important;background:var(--ink);color:#fff}
.cpv3-site .promo-inline-form .forminator-row{margin:0 0 9px!important}
.cpv3-site .promo-inline-form .forminator-row:has(.forminator-field-name){display:grid!important;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:10px}
.cpv3-site .promo-inline-form .forminator-col{width:auto!important;min-width:0;padding:0!important}
.cpv3-site .promo-inline-form .forminator-field{margin:0!important}
.cpv3-site .promo-inline-form .forminator-label{display:block;margin:0 0 4px;font-size:12px;line-height:1.2}
.cpv3-site .promo-inline-form input:not([type=checkbox]),.cpv3-site .promo-inline-form select{min-height:40px;height:40px;margin:0;padding:8px 10px;font-size:13px}
.cpv3-site .promo-inline-form input[name="phone-1"]::placeholder{color:transparent}
.cpv3-site .promo-inline-form .forminator-checkbox{margin:0!important}
.cpv3-site .promo-inline-form .forminator-checkbox__label{font-size:12px;line-height:1.25}
.cpv3-site .promo-inline-form .forminator-button-submit{min-height:42px;padding:9px 14px;font-size:13px}
.cpv3-generic{min-height:45vh}
.cpv3-consent-video{position:relative;overflow:hidden;background:#edeae2}
.cpv3-consent-video video{display:block;width:100%;height:100%;object-fit:cover}
.cpv3-hero-video{width:100%;max-width:420px;aspect-ratio:16/9;margin:8px auto 28px;border-radius:5px}
.cpv3-site .store-grid>.cpv3-consent-video{width:100%;height:420px;border-radius:5px}
.cpv3-hero-video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:68px;height:68px;border:0;border-radius:50%;background:#fffdf0d9;color:#a36e22;font-size:26px;cursor:pointer;box-shadow:0 4px 24px #0003}
.cpv3-hero-video-play[hidden]{display:none}
.cpv3-video-consent{position:absolute;right:8px;bottom:4px;left:8px;padding:6px 8px;background:#fffdf0e6;color:#333;font-size:12px;text-align:center}
.cpv3-video-consent[hidden]{display:none}
@media(max-width:1050px){.cpv3-site .hero-visual>picture,.cpv3-site .hero-visual>.cpv3-desktop-only,.cpv3-site .hero-visual>.cpv3-mobile-only{height:510px}.cpv3-site .hero-visual>picture img,.cpv3-site .hero-visual>.cpv3-photo-video{border-radius:110px 110px 5px 5px}}
@media(max-width:760px){.cpv3-desktop-only{display:none!important}.cpv3-mobile-only{display:initial!important}.cpv3-site .hero-visual>picture,.cpv3-site .hero-visual>.cpv3-mobile-only{height:260px}.cpv3-site .hero-visual>picture img,.cpv3-site .hero-visual>.cpv3-mobile-only img{border-radius:0;object-position:center 51%}.cpv3-site .store-grid>picture img,.cpv3-site .store-grid>.cpv3-mobile-only img{height:300px}.cpv3-site .store-grid>.cpv3-consent-video{height:300px}.cpv3-site .location-grid .location-photo{height:340px}}
@media(max-width:760px){body.cpv3-site>.iubenda-tp-btn.iubenda-cs-preferences-link{translate:0 calc(-70px - env(safe-area-inset-bottom))!important}}
.cpv3-site .cpv3-consent-video.cpv3-mobile-only{display:none!important}
.cpv3-site [hidden]{display:none!important}
.cpv3-review-viewport{overflow:hidden;touch-action:pan-y}
.cpv3-review-carousel,.cpv3-bunny{position:relative}
.cpv3-review-carousel .review-grid{display:flex;gap:25px;will-change:transform}
.cpv3-review-carousel .review-grid figure{flex:0 0 calc((100% - 75px)/4);min-width:0}
.cpv3-review-carousel .review-grid .cpv3-review-card{height:280px;display:flex;flex-direction:column;padding:21px 22px}
.cpv3-review-carousel .review-grid .cpv3-review-card blockquote{flex:1 1 auto;min-height:0;margin:12px 0;font:400 17px/1.45 var(--serif);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.cpv3-review-carousel .review-grid .cpv3-review-card figcaption{flex:none}
.cpv3-review-controls,.cpv3-bunny-preview-controls{position:absolute;inset:0;margin:0;pointer-events:none;z-index:2}
.cpv3-review-controls button,.cpv3-bunny-preview-controls button{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid #b7bcb0;border-radius:50%;background:#fff;color:var(--ink);font-size:30px;line-height:1;pointer-events:auto}
.cpv3-bunny-preview-controls{inset:0 0 auto;height:190px}
.cpv3-review-prev,.cpv3-bunny-prev{left:max(-70px,calc(50% - 50vw + 4px))}
.cpv3-review-next,.cpv3-bunny-next{right:max(-70px,calc(50% - 50vw + 4px))}
.cpv3-review-controls button:hover{background:var(--soft)}
.cpv3-review-position,.cpv3-bunny-position{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cpv3-videos{margin:0 0 26px}
.cpv3-bunny-preview-viewport{overflow:hidden;touch-action:pan-y}
.cpv3-bunny-preview-track{display:flex;gap:20px;will-change:transform}
.cpv3-bunny-preview{position:relative;flex:0 0 calc((100% - 60px)/4);height:190px;border:0;border-radius:8px;background:#242622;color:#fff;padding:0;overflow:hidden;text-align:left}
.cpv3-bunny-preview img{width:100%;height:100%;object-fit:cover}
.cpv3-bunny-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fffdf0e8;color:#9a761f;font-size:20px;padding-left:3px}
.cpv3-bunny-title{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;background:linear-gradient(transparent,#000b);font-size:14px;font-weight:600}
.cpv3-bunny-preview-controls button:hover{background:var(--soft)}
.cpv3-bunny-consent{padding:16px 20px;border:1px solid var(--line);border-radius:8px;background:var(--soft);text-align:center;margin-top:18px}
.cpv3-bunny-consent p{max-width:600px;margin:0 auto 10px}
.cpv3-bunny .bunny-video-gallery{max-width:100%}
.cpv3-site dialog.cpv3-bunny-player{width:min(900px,calc(100vw - 28px));max-width:none;max-height:none;border:0;border-radius:8px;padding:0;background:#000;color:#fff;overflow:visible}
.cpv3-bunny-player::backdrop{background:#000c}
.cpv3-bunny-player iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:8px}
.cpv3-bunny-close{position:absolute;top:-18px;right:-15px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#222;font-size:26px;line-height:1;box-shadow:0 2px 9px #0006;z-index:2}
.cpv3-privacy-widget{position:fixed;right:20px;bottom:20px;z-index:99990}
.cpv3-privacy-control{display:grid;place-items:center;width:52px;height:52px;border:1px solid #d5d8cb;border-radius:50%;background:#fff;color:#67511d;box-shadow:0 4px 16px #0003;cursor:pointer}
.cpv3-privacy-control svg{width:25px;height:25px;fill:currentColor}
.cpv3-privacy-status{position:absolute;right:0;bottom:62px;width:min(320px,calc(100vw - 30px));margin:0;padding:12px 14px;border:1px solid #d5d8cb;border-radius:5px;background:#fff;box-shadow:0 4px 16px #0002;font-size:13px}
body.cpv3-site>.iubenda-tp-btn.iubenda-cs-preferences-link{display:none!important}
@media(min-width:761px) and (max-width:1050px){.cpv3-review-carousel .review-grid figure{flex-basis:calc((100% - 25px)/2)}.cpv3-bunny-preview{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:760px){.cpv3-site .cpv3-consent-video.cpv3-mobile-only{display:block!important}}
@media(max-width:760px){.cpv3-review-carousel .review-grid{gap:14px}.cpv3-review-carousel .review-grid figure{flex-basis:100%}.cpv3-review-carousel .review-grid .cpv3-review-card{padding-left:26px;padding-right:26px}.cpv3-videos{margin-bottom:20px}.cpv3-bunny-preview{flex-basis:100%;height:210px}.cpv3-bunny-preview-controls{height:210px}.cpv3-bunny-consent{padding:20px}.cpv3-review-controls button,.cpv3-bunny-preview-controls button{width:44px;height:44px;border:0;border-radius:0;background:transparent;font-size:23px;isolation:isolate}.cpv3-review-controls button::before,.cpv3-bunny-preview-controls button::before{content:"";position:absolute;inset:6px;border:1px solid #b7bcb0;border-radius:50%;background:#fffdf0eb;z-index:-1}.cpv3-review-prev,.cpv3-bunny-prev{left:max(-76px,calc(50% - 50vw))}.cpv3-review-next,.cpv3-bunny-next{right:max(-76px,calc(50% - 50vw))}}
@media(max-width:760px){.cpv3-privacy-widget{right:15px;bottom:calc(74px + env(safe-area-inset-bottom))}.cpv3-privacy-control{width:46px;height:46px}.cpv3-privacy-status{bottom:56px}}
@media(min-width:761px) and (max-width:1099px){.cpv3-site .promo-grid{grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:26px 34px}.cpv3-site .promo-grid>.promo-number{grid-row:span 2;align-self:stretch;display:flex;align-items:center;justify-content:center;font-size:clamp(150px,17vw,180px)}.cpv3-site .promo-inline-form{grid-column:2;border-left:0;border-top:1px solid #baa266;padding:26px 0 0}}
@media(max-width:760px){.cpv3-site .promo-grid{grid-template-columns:minmax(0,1fr);gap:25px}.cpv3-site .promo-grid>.promo-number{font-size:125px;padding:0 0 24px;white-space:normal}.cpv3-site .promo-grid>.promo-number span{font-size:70px}.cpv3-site .promo-copy h2{font-size:38px}.cpv3-site .promo-inline-form{border-left:0;border-top:1px solid #baa266;padding:26px 0 0;margin-top:2px}}
@media(max-width:380px){.cpv3-site .hero-visual>picture,.cpv3-site .hero-visual>.cpv3-mobile-only,.cpv3-site .hero-visual>video.cpv3-mobile-only{height:225px}}
@media (min-width:761px) {
  .cpv3-section-hidden-desktop { display:none !important; }
}
@media (max-width:760px) {
  .cpv3-section-hidden-mobile { display:none !important; }
}

/* Native Google aggregate footer, positioned between videos and review cards. */
.cpv3-site .cpv3-videos{margin-bottom:0}
.cpv3-google-summary{display:table;max-width:100%;margin:24px auto;border:1px solid #c89c27;border-radius:24px;background:#232520;color:#fff;padding:18px 25px;box-sizing:border-box}
.cpv3-google-summary .ti-fade-container{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px 10px}
.cpv3-google-summary .ti-rating-text,.cpv3-google-summary .ti-large-logo,.cpv3-google-summary .ti-v-center{margin:0;padding:0;line-height:1.3}
.cpv3-google-summary .ti-rating-text{font:600 17px/1.3 Arial,sans-serif;white-space:nowrap}
.cpv3-google-summary .ti-rating-text strong{font-weight:700}
.cpv3-google-summary .ti-rating-text a{color:inherit;text-decoration:none}
.cpv3-google-summary .ti-rating-text a:hover{text-decoration:underline;text-underline-offset:3px}
.cpv3-google-summary .ti-rating-text a:focus-visible{outline:2px solid #ffd55d;outline-offset:4px;border-radius:2px}
.cpv3-google-summary .ti-stars{display:inline-flex;align-items:center;gap:1px;flex:none;line-height:1}
.cpv3-google-summary .ti-stars img{display:block;width:21px;height:21px;margin:0}
.cpv3-google-summary .ti-large-logo img{display:block;width:78px;height:auto;max-width:none;margin:0}
@media(max-width:760px){.cpv3-google-summary{margin:20px auto;padding:15px 16px;border-radius:20px}.cpv3-google-summary .ti-rating-text{font-size:15px}.cpv3-google-summary .ti-stars img{width:20px;height:20px}.cpv3-google-summary .ti-large-logo img{width:74px}}
