/* Ker Coast | Shared QR guide visual contract, 2026-10-26.
   Applied ONLY to authenticated/temporary Hôtes and Partenaire guide routes
   (/h/{property}/ and /go/{partner|demo}/). Public marketing/SEO demos and
   editorial templates are deliberately untouched. Scoped on <html>. */
html[data-kc-qr-guide]{
  color-scheme:light;
  background:#fbf8f2!important;
  scroll-padding-top:138px;
}
html[data-kc-qr-guide] body{
  background:#fbf8f2!important;
  color:#172f43!important;
  color-scheme:light;
}
html[data-kc-qr-guide] #kc-partner{
  --kc-green:#14344e;
  --kc-green-2:#234b68;
  --kc-teal:#356b91;
  --kc-cream:#fbf8f2;
  --kc-sand:#e5eef6;
  --kc-ink:#172f43;
  --kc-muted:#536574;
  --kc-white:#fffdfa;
  --kc-line:#cbd9e3;
  --kc-shadow:0 14px 38px rgba(20,52,78,.10);
  --kc-radius:20px;
  display:block!important;
  visibility:visible!important;
  background:#fbf8f2!important;
  color:#172f43!important;
  color-scheme:light;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
html[data-kc-qr-guide] .kc-desktop-mobile-only{display:none!important}
html[data-kc-qr-guide] #kc-partner .kc-shell{
  width:min(100%,1180px);
  max-width:1180px;
}
html[data-kc-qr-guide] #kc-partner .kc-top{
  background:#fffdfa!important;
  color:#14344e!important;
  border-bottom:1px solid #cbd9e3!important;
  backdrop-filter:none!important;
  box-shadow:0 5px 18px rgba(20,52,78,.06);
}
html[data-kc-qr-guide] #kc-partner .kc-partner-name,
html[data-kc-qr-guide] #kc-partner .kc-top .kc-partner-name{
  color:#34536a!important;
  opacity:1!important;
}
html[data-kc-qr-guide] #kc-partner .kc-badge{
  background:#e5eef6!important;
  color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner .kc-top [data-kc-lang]{
  min-width:44px!important;
  min-height:44px!important;
  border:1px solid #9aafc1!important;
  background:#fffdfa!important;
  color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner .kc-top [data-kc-lang][aria-pressed="true"]{
  background:#14344e!important;
  color:#fff!important;
  border-color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-section,.kc-footer){
  color:#172f43;
}
html[data-kc-qr-guide] #kc-partner .kc-section{
  background:#fbf8f2!important;
}
html[data-kc-qr-guide] #kc-partner .kc-section.kc-soft{
  background:#edf3f8!important;
  border-color:#cbd9e3!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-section,.kc-footer) :is(h2,h3){
  color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-lead,.kc-kicker,.kc-photo-source,.kc-day-sub){
  color:#536574!important;
  opacity:1!important;
}
html[data-kc-qr-guide] #kc-partner .kc-kicker,
html[data-kc-qr-guide] #kc-partner .kc-choice small{
  color:#356b91!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-choice,.kc-day,.kc-card,.kc-resto,.kc-service,.kc-rain,.kc-hours,.kc-market-day,.kc-mini-parking,.kc-detail){
  background:#fffdfa!important;
  color:#172f43!important;
  border-color:#cbd9e3!important;
  box-shadow:0 10px 28px rgba(20,52,78,.06);
}
html[data-kc-qr-guide] #kc-partner :is(.kc-choice,.kc-day,.kc-card,.kc-resto,.kc-service,.kc-rain,.kc-hours) :is(p,small,span):not(.kc-chip){
  color:inherit;
}
html[data-kc-qr-guide] #kc-partner .kc-choice span{
  color:#536574!important;
}
html[data-kc-qr-guide] #kc-partner .kc-day-head{
  background:linear-gradient(135deg,#14344e,#234b68)!important;
  color:#fff!important;
}
html[data-kc-qr-guide] #kc-partner .kc-day-head :is(h3,.kc-day-num,.kc-day-sub){
  color:#fff!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-facts>span,.kc-chip,.kc-budget-key>span,.kc-verified){
  background:#e5eef6!important;
  color:#14344e!important;
  border-color:#cbd9e3!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-note,.kc-tip,.kc-alert,.kc-parking,.kc-trustbar){
  background:#edf3f8!important;
  color:#234b68!important;
  border-color:#cbd9e3!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-note,.kc-tip,.kc-alert,.kc-parking) :is(p,small,strong){
  color:#234b68!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-btn,.kc-button):not(.kc-outline){
  background:#14344e!important;
  border-color:#14344e!important;
  color:#fff!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-btn,.kc-button).kc-outline{
  background:#fffdfa!important;
  border-color:#9aafc1!important;
  color:#14344e!important;
}
/* The shared Souvenir stylesheet uses html body :is(...), whose specificity
   includes the strongest branch even when another branch matches. That rule
   previously forced #173d35 on real Hôtes/Partner QR bars. Restrict this
   stronger override to the actual controlled-guide URLs. */
html[data-kc-qr-guide] body #kc-partner nav.kc-bottomnav{
  --kcs-nav-bg:#14344e!important;
  --kcs-nav-ink:#eff5f9!important;
  --kcs-nav-hover:#234b68!important;
  --kcs-nav-focus:#bd7d29!important;
  background:#14344e!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
}
html[data-kc-qr-guide] body #kc-partner nav.kc-bottomnav :is(a,button){
  background:transparent!important;
  color:#eff5f9!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-kc-qr-guide] body #kc-partner nav.kc-bottomnav :is(a,button):is(:hover,:focus-visible){
  background:#234b68!important;
  color:#fff!important;
}
html[data-kc-qr-guide] body #kc-partner nav.kc-bottomnav :is(a,button):is([aria-current]:not([aria-current="false"]),.is-active,.active){
  background:#356b91!important;
  color:#fff!important;
}
html[data-kc-qr-guide] body #kc-partner nav.kc-bottomnav :is(a,button):focus-visible{
  outline:3px solid #bd7d29!important;
  outline-offset:-4px!important;
}
html[data-kc-qr-guide] #kc-partner .kc-footer{
  background:#fbf8f2!important;
  border-color:#cbd9e3!important;
}
html[data-kc-qr-guide] #kc-partner .kc-footer :is(p,a,small){
  color:#234b68!important;
}
html[data-kc-qr-guide] #kc-partner .kc-hero :is(h1,.kc-eyebrow,p,.kc-hero-meta span){
  color:#fff!important;
  opacity:1!important;
}
html[data-kc-qr-guide] #kc-partner .kc-hero .kc-hero-meta span{
  border-color:rgba(255,255,255,.48)!important;
  background:rgba(20,52,78,.48)!important;
}
html[data-kc-qr-guide] #kc-partner :is(a,button):focus-visible{
  outline:3px solid #bd7d29!important;
  outline-offset:3px!important;
}
/* The recommender was previously a dark-green island; bring its content and
   input controls into the same readable light design, including dark mode. */
html[data-kc-qr-guide] #kc-partner .kc-recommender{
  background:#fffdfa!important;
  color:#172f43!important;
  border:1px solid #cbd9e3!important;
  box-shadow:0 12px 32px rgba(20,52,78,.09);
}
html[data-kc-qr-guide] #kc-partner .kc-recommender :is(h3,.kc-ge-eyebrow,.kc-ge-intro),
html[data-kc-qr-guide] #kc-partner .kc-ge-fieldset legend{
  color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner .kc-ge-option{
  background:#edf3f8!important;
  border-color:#9aafc1!important;
  color:#14344e!important;
}
html[data-kc-qr-guide] #kc-partner .kc-ge-option[aria-pressed="true"]{
  background:#14344e!important;
  border-color:#14344e!important;
  color:#fff!important;
}
html[data-kc-qr-guide] #kc-partner .kc-recommend-run{
  background:#14344e!important;
  color:#fff!important;
}

/* Advanced Hôtes recommendations keep the same light presentation. */
html[data-kc-qr-guide="hotes"] .kch-property-advanced{
  background:#edf3f8!important;
  color:#172f43!important;
}
html[data-kc-qr-guide="hotes"] .kch-property-advanced :is(h2,h3,p,li){
  color:#14344e!important;
}
@media(max-width:699px){
  html[data-kc-qr-guide] #kc-partner :is(.kc-section,.kc-section.kc-soft){
    padding-top:45px;
    padding-bottom:45px;
  }
  html[data-kc-qr-guide] #kc-partner .kc-choice,
  html[data-kc-qr-guide] #kc-partner .kc-card{
    border-radius:16px;
  }
}
@media(prefers-color-scheme:dark){
  /* Intentionally constant light reading surface, including dark-mode devices. */
  html[data-kc-qr-guide] #kc-partner .kc-top{
    background:#fffdfa!important;
    color:#14344e!important;
  }
  html[data-kc-qr-guide] #kc-partner .kc-top [data-kc-lang]{
    background:#fffdfa!important;
    color:#14344e!important;
  }
  html[data-kc-qr-guide] #kc-partner .kc-top [data-kc-lang][aria-pressed="true"]{
    background:#14344e!important;
    color:#fff!important;
  }
}


/* October 2026 mobile customer polish.
   The private historical masters still carry green dark-mode and photo-caption
   rules. Override only real, access-controlled guest guides without editing
   editorial data, partner identity, permanent QR slugs or the demo deadline. */
html[data-kc-qr-guide] #kc-partner .kc-photo-feature,
html[data-kc-qr-guide] #kc-partner .kc-section-photo {
  background:#edf3f8!important;
}
html[data-kc-qr-guide] #kc-partner .kc-photo-caption {
  background:#14344e!important;
  color:#fffdfa!important;
  border-color:#14344e!important;
  backdrop-filter:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
html[data-kc-qr-guide] #kc-partner .kc-photo-caption :is(strong,span) {
  color:#fffdfa!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-kc-qr-guide] #kc-partner .kc-photo-caption small {
  color:#dce9f3!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-rain .kc-type,.kc-hours .kc-type,.kc-card .kc-type,.kc-resto .kc-type,.kc-market-day strong,.kc-price,.kc-time) {
  color:#356b91!important;
  opacity:1!important;
}
html[data-kc-qr-guide] #kc-partner .kc-market-day {
  background:#fffdfa!important;
  border-color:#cbd9e3!important;
  color:#172f43!important;
}
html[data-kc-qr-guide] #kc-partner .kc-market-day span {
  color:#536574!important;
  opacity:1!important;
}
html[data-kc-qr-guide] #kc-partner :is(.kc-parking-icon,.kc-mapbox) {
  background:#14344e!important;
  color:#fff!important;
}
html[data-kc-qr-guide] #kc-partner .kc-service-demo {
  background:#edf3f8!important;
  color:#14344e!important;
  border-color:#cbd9e3!important;
}
html[data-kc-qr-guide] #kc-partner .kc-service-demo :is(strong,p,span) {
  color:#14344e!important;
}
@media(max-width:899px) {
  /* Preserve the exact territory photograph; lift the legacy green veil. */
  html[data-kc-qr-guide] #kc-partner .kc-hero:before {
    background:linear-gradient(90deg,rgba(20,52,78,.34),rgba(20,52,78,.12) 58%,transparent)!important;
  }
  html[data-kc-qr-guide] #kc-partner .kc-hero:after {
    opacity:.18!important;
  }
  html[data-kc-qr-guide] #kc-partner .kc-photo-caption {
    border-radius:0 0 20px 20px!important;
  }
}


/* Shared marine reading contract, including legacy master previews. Pair every
   forced light surface with its ink: OS dark-mode rules must not whiten it. */
html[data-kc-qr-guide] body #kc-partner#kc-partner {
  --kc-green:#14344e!important;--kc-green-2:#234b68!important;--kc-teal:#285b80!important;
  --kc-cream:#fbf8f2!important;--kc-white:#fffdfa!important;--kc-ink:#173247!important;
  --kc-muted:#3c5263!important;--kc-line:#cfdae3!important;
  background:#fbf8f2!important;color:#173247!important;color-scheme:light;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-section,.kc-footer){
  background:#fbf8f2!important;color:#173247!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-card,.kc-day,.kc-choice,.kc-rain,.kc-resto,.kc-hours,.kc-service){
  background:#fffdfa!important;color:#173247!important;border-color:#cfdae3!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-section :is(h2,h3,h4,.kc-stop strong){color:#14344e!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-section :is(.kc-lead,.kc-stop p,.kc-card p,.kc-rain p,.kc-resto p,.kc-hours p,.kc-service p,.kc-source-note,.kc-photo-source,.kc-detail,.kc-mini-parking,.kc-type){
  color:#3c5263!important;opacity:1!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-detail,.kc-mini-parking,.kc-note,.kc-tip){background:#edf3f8!important;color:#234b68!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-btn,.kc-button,.kc-chip){background:#14344e!important;color:#fff!important;border-color:#14344e!important;opacity:1!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-btn,.kc-button).kc-outline{background:#fffdfa!important;color:#14344e!important;border-color:#9aafc1!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-btn,.kc-button,.kc-chip) :is(span,small,strong){color:inherit!important;opacity:1!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-btn,.kc-button,.kc-chip):hover{background:#234b68!important;color:#fff!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-top{background:#fffdfa!important;color:#14344e!important;border-color:#cfdae3!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-partner-name{color:#14344e!important;opacity:1!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-photo-feature .kc-photo-caption,
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-heritage-detail .kc-photo-caption{background:#14344e!important;color:#fffdfa!important;backdrop-filter:none!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-photo-caption :is(h2,h3,strong,span,small){color:#fffdfa!important;opacity:1!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-day-head{background:#14344e!important;color:#fff!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-day-head :is(h3,.kc-day-sub,.kc-day-num){color:#fff!important;opacity:1!important}

/* Cover masters and cached layout CSS that still force pale dark-mode ink. */
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-btn,.kc-button,.kc-chip,.kc-explore-title){-webkit-text-fill-color:currentColor!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-mini-parking,.kc-detail) strong{color:inherit!important}

/* The map panel stays dark; keep its copy separate from the light section ink. */
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-mapbox{background:#14344e!important;color:#fffdfa!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-section .kc-mapbox :is(h2,h3,h4,.kc-kicker,p){color:#fffdfa!important;opacity:1!important}

/* Guest controls and their revealed content use the same light reading surface. */
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-feedback,.kc-report-dialog,.kc-recommend-card){
  background:#fffdfa!important;color:#173247!important;border-color:#cfdae3!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-recommend-card small,.kc-recommend-card strong,.kc-recommend-card b,.kc-feedback>strong,.kc-report-form h3,.kc-report-field>span){
  color:#14344e!important;opacity:1!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-recommend-results>p,.kc-recommend-card span,.kc-feedback>p,.kc-report-form>p){
  color:#3c5263!important;opacity:1!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-recommend-results{border-color:#cfdae3!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-trustbar button,.kc-feedback button,.kc-report-actions button){
  background:#edf3f8!important;color:#14344e!important;border-color:#9aafc1!important;
  -webkit-text-fill-color:currentColor!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-trustbar button,.kc-feedback button,.kc-report-actions button):hover{background:#e5eef6!important;color:#14344e!important}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-report-actions button[type="submit"]{
  background:#14344e!important;color:#fff!important;border-color:#14344e!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-report-field :is(input,select,textarea){
  background:#fffdfa!important;color:#173247!important;border-color:#9aafc1!important;
  -webkit-text-fill-color:currentColor!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner .kc-report-field :is(input,textarea)::placeholder{color:#536574!important;opacity:1!important}

html body #kc-partner#kc-partner .kc-section.kc-soft{background:#edf3f8!important;color:#173247!important}

html[data-kc-qr-guide] body #kc-partner#kc-partner #pluie .kc-rain .kc-type{color:#356b91!important;opacity:1!important}

/* Facts are informational pills, not action links. Legacy day selectors and
   OS dark-mode rules must use the same marine palette in every section. */
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-facts > span,.kc-chips > .kc-chip,.kc-chip){
  background:#14344e!important;
  color:#fffdfa!important;
  border-color:#14344e!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
html[data-kc-qr-guide] body #kc-partner#kc-partner :is(.kc-budget-key > span,.kc-verified,.kc-badge){
  background:#e5eef6!important;
  color:#14344e!important;
  border-color:#cbd9e3!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
