.alk-google-badge{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem;margin:1.5rem 0;color:inherit;font-size:.9rem}.alk-google-badge img{max-width:70px;height:auto}.alk-google-badge small{display:block}.alk-reviews-page{padding-top:170px;padding-bottom:3rem;color:#203944}.alk-reviews-page h1{text-align:center;margin-bottom:2rem}.alk-reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem;margin:1.5rem 0}.alk-review-card{padding:1.5rem;background:#fbf8f1;border:1px solid #e4ded3;min-width:0;overflow-wrap:anywhere}.alk-review-card header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.alk-review-card time{font-size:.8rem}.alk-review-stars{color:#896919;letter-spacing:.12em;margin:.6rem 0}.alk-review-text{white-space:normal}.alk-review-reply{margin:1rem 0 0 1rem;padding-left:1rem;border-left:2px solid #b99b60;font-size:.9rem}.alk-review-sort,.alk-review-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin:1.5rem 0}.alk-review-sort [aria-current]{text-decoration:underline;font-weight:bold}.alk-review-booking{grid-column:1/-1;text-align:center;padding:1.5rem;background:#f4f0e7}.alk-review-booking a{display:inline-block;border-bottom:1px solid;padding:.25rem}.alk-reviews-home>a{display:block;text-align:center}#alk-booking-award{padding:2.5rem .8rem .8rem;border:1px solid #bca779;max-width:min(90vw,950px);max-height:90vh;background:#fff}#alk-booking-award::backdrop{background:rgba(12,28,37,.75)}#alk-booking-award>img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}#alk-booking-award button{position:absolute;right:10px;top:3px;border:0;background:transparent;font-size:2rem;color:#183749;cursor:pointer}.alk-recognitions :focus-visible,.alk-reviews-page :focus-visible,#alk-booking-award :focus-visible{outline:3px solid #88652b;outline-offset:4px}@media(max-width:480px){.alk-reviews-page{padding-top:140px}.alk-review-reply{margin-left:0}.alk-google-badge{padding:0 .5rem}}

/* Progressive enhancement: without JS the complete server-rendered text is visible. */
.alk-reviews-grid{align-items:start}
.alk-review-text{--review-lines:6;line-height:1.6}
.alk-review-reply{--review-lines:4;line-height:1.6}
.alk-review-text.is-collapsible:not(.is-expanded),.alk-review-reply.is-collapsible:not(.is-expanded){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--review-lines);line-clamp:var(--review-lines);max-height:calc(var(--review-lines) * 1.6em);overflow:hidden}
.alk-review-toggle{display:block;margin:.5rem 0 0;padding:.15rem 0;background:none;border:0;color:#586242;font:inherit;font-size:.9rem;line-height:1.5;text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.alk-review-toggle[hidden]{display:none}
.alk-review-toggle:hover{color:#8C6110}
.alk-review-toggle:focus-visible{outline:3px solid #88652b;outline-offset:4px}

/* Heliades recognition pattern, adapted only to Alkifron branding / four-card grid. */
.recognitions-section {
  grid-column: 1/-1;
  grid-row: 4;
  order: 3;
  width: calc(100% - 48px);
  max-width:1140px;
  margin: 40px auto 0;
  padding: 48px 0 16px;
  border-top: 1px solid #94704a;
  color: #183749;
  text-align: center;
}

.recognitions-section .recognition-eyebrow {
  font-size: 12px;
  letter-spacing: 2.4px;
  font-weight: 600;
  margin: 0 0 14px;
  color: #fff4da;
}

.recognitions-section h2 {
  font-size: 38px;
  line-height: 1.25;
  margin: 0 0 34px;
}

.recognition-grid {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
}

.recognition-card {
  grid-column: span 2;
  min-width: 0;
  padding: 16px 10px 12px;
  position: relative;
  display: grid;
  grid-template-rows: 26px 58px 1px 60px var(--badge-height, 174px) 20px;
  justify-items: center;
  align-items: center;
  gap: 6px;
  background: #fbf8f1;
  border: 1px solid #bca779;
  border-radius: 2px;
  box-shadow: none;
}

.recognitions-section .recognition-card p {
  margin: 0;
}

.recognition-platform {
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 400;
  color: #183749;
}

.recognition-platform img {
  height: 24px;
  width: 74px;
  max-width: 100%;
  object-fit: contain;
}

.recognition-media {
  height: 58px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.recognitions-section .recognition-value {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
  gap: 5px;
  min-height: 0;
  font-size: clamp(38px, 4vw, 58px);
  line-height: 1.1;
  color: #183749;
  white-space: nowrap;
  flex-wrap: nowrap;
  text-decoration: none;
}

.recognition-value small {
  display: inline;
  width: auto;
  flex: 0 0 auto;
  font: 13px Arial, sans-serif;
  color: #526168;
  white-space: nowrap;
}

.recognitions-section .recognition-value.words {
  font-size: 32px;
  align-items: center;
  letter-spacing: -0.02em;
}

.recognitions-section .recognition-symbols {
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: #96773e;
  font: 16px/18px Arial, sans-serif;
  margin: 0;
}

.recognitions-section .recognition-symbol-slot {
  display: flex;
  position: relative;
  width: 14px;
  height: 18px;
  flex: 0 0 14px;
  align-items: center;
  justify-content: center;
}

.recognitions-section .rating-circle {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: currentColor;
}

.recognitions-section .recognition-star .star-outline {
  display: block;
  color: #d1c3ad;
}

.recognitions-section .recognition-star .star-fill {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  white-space: nowrap;
  color: #96773e;
}

.recognition-rule {
  height: 1px;
  width: 28px;
  background: #96773e;
  margin: 0;
  flex-shrink: 0;
}

.recognitions-section .recognition-label {
  font-size: 12px;
  line-height: 1.5;
  color: #253b45;
  align-self: start;
  width: 100%;
  height: 60px;
  display: grid;
  grid-template-rows: 32px 18px 10px;
  text-align: center;
  overflow: hidden;
}

.recognitions-section .recognition-label-text {
  display: block;
  height: 32px;
  font-size: inherit;
  font-weight: 400;
  line-height: 16px;
  color: #253b45;
  overflow: hidden;
}

.recognitions-section .recognition-asof {
  display: block;
  height: 10px;
  font: 9px/10px Arial, sans-serif;
  color: #526168;
}

.recognition-badge-row {
  height: var(--badge-height, 174px);
  width: 100%;
  max-width: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  min-width: 0;
  overflow: hidden;
}

.recognitions-section img {
  max-width: 100%;
  height: auto;
}

.recognitions-section .recognition-badge-row .award-enlarge {
  display: block;
  max-width: 100%;
}

.recognition-quote {
  width: 100%;
  max-width: 160px;
  font-size: 12px;
  line-height: 1.65;
  color: #253b45;
  text-align: center;
}

.recognition-quote blockquote {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  font: inherit;
  color: inherit;
  max-height: 3.3em;
}

.recognition-quote cite {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  overflow-wrap: anywhere;
  font: normal 10px/1.65 Arial, sans-serif;
  color: #526168;
  max-height: 3.3em;
}

.recognition-badge-proof {
  width: 100%;
  max-width: 160px;
  height: auto;
  max-height: 100px;
  object-fit: contain;
}

.recognition-badge-row .booking-badge {
  width: 148px;
  height: 148px;
  object-fit: contain;
  max-width: 100%;
}

.recognition-actions {
  height: 20px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.recognition-action {
  font-size: 12px;
  color: #183749;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.recognition-card .recognition-overlay {
  position: absolute;
  inset: 0;
  z-index: 10;
}

.recognition-overlay span {
  position: absolute;
  bottom: 12px;
  left: 0;
  right: 0;
  font-size: 12px;
  text-decoration: underline;
  text-underline-offset: 4px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.recognitions-section a:focus-visible {
  outline: 3px solid #183749;
  outline-offset: 4px;
}

.recognitions-section a:hover {
  color: #183749;
}

/* One existing action covers its own card; no wrapper or nested links. */
.recognition-card--linked {
  cursor: pointer;
  isolation: isolate;
}
.recognition-stretched-link::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
}
.recognition-card--linked:hover {
  border-color: #96773e;
  box-shadow: 0 2px 10px rgba(24,55,73,.12);
}
.recognitions-section .recognition-stretched-link:focus-visible {
  outline: none;
}
.recognition-stretched-link:focus-visible::after {
  outline: 3px solid #88652b;
  outline-offset: 4px;
}
.recognition-card--linked:hover .recognition-action,
.recognition-card--linked .recognition-action:focus-visible {
  color: #8C6110;
}

.recognition-google-content, .recognition-fallback {
  display: contents;
}

.recognition-google-content[hidden], .recognition-google-content:not([hidden]) + .recognition-fallback {
  display: none;
}

body footer.footer .copyright-wrapper {
  grid-row: 5;
  order: 4;
}

body footer.footer .recognitions-section ~ .copyright-wrapper .back-to-top-wrapper {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (max-width: 1279px) {
  .recognition-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .recognition-card:nth-child(4) {
    grid-column: 2/span 2;
  }

  .recognition-card:nth-child(5) {
    grid-column: 4/span 2;
  }
}
@media (max-width: 991px) {
  .recognitions-section {
    width: calc(100% - 48px);
    margin-left: 24px;
    margin-right: 24px;
  }
}
@media (max-width: 575px) {
  .recognitions-section {
    width: calc(100% - 24px);
    margin-left: 12px;
    margin-right: 12px;
    padding-top: 32px;
    margin-top: 24px;
  }

  .recognitions-section h2 {
    font-size: 27px;
    margin-bottom: 24px;
  }

  .recognition-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
  }

  .recognition-card {
    padding: 14px 16px 12px;
  }

  .recognition-card:nth-child(4) {
    grid-column: span 2;
  }

  .recognition-card:nth-child(5) {
    grid-column: 2/span 2;
  }

  .recognition-card:nth-child(-n+2) {
    --badge-height:148px;
  }

  .recognition-card:nth-child(3), .recognition-card:nth-child(4) {
    --badge-height:108px;
  }

  .recognition-card:nth-child(5) {
    --badge-height:152px;
  }

  .recognition-platform {
    font-size: 13px;
  }

  .recognitions-section .recognition-value {
    font-size: 38px;
  }

  .recognitions-section .recognition-value.words {
    font-size: 26px;
  }

  .recognitions-section .recognition-label {
    font-size: 11px;
  }

  .recognition-quote {
    font-size: 11px;
  }

  .recognition-badge-proof {
    max-width: 100%;
  }

}
@media (max-width: 374px) {
  .recognition-card {
    padding-left: 8px;
    padding-right: 8px;
  }

  .recognitions-section .recognition-value.words {
    font-size: 24px;
  }
}
.recognitions-section>h2{color:#fff4da}
.alk-google-slot{display:contents}
.alk-google-slot[hidden]{display:none!important}
.recognition-value{font-family:ivypresto-headline,Georgia,serif}
.recognition-card button{background:none;border:0;color:inherit;cursor:pointer;padding:0}
.recognition-card .alk-award-open{max-width:100%}
.recognition-card button.recognition-action{text-decoration:underline;text-underline-offset:4px;color:#183749}
.alk-google-badge a{color:inherit;text-decoration:underline}
.alk-reviews-home{max-width:1140px;margin:3rem auto;padding:1rem 24px;color:#253b45}
.alk-reviews-home>h2{text-align:center;font-size:clamp(1.5rem,3vw,2.4rem)}
#alk-booking-award:not([open]){display:none}
#alk-booking-award[open]{display:block}
@media(min-width:576px) and (max-width:1279px){.recognition-grid>.recognition-card--tripadvisor{grid-column:3/span 2}}

/* WO42: independent masks avoid colouring all five glyphs through inherited text colour. */
.alk-rating{display:inline-flex;align-items:center;gap:4px;color:#96773e;vertical-align:middle;line-height:1;letter-spacing:normal}
.alk-rating-symbol{position:relative;display:inline-block;width:16px;height:16px;flex:0 0 16px}
.alk-rating-symbol svg{position:absolute;inset:0;width:100%;height:100%;fill:currentColor;overflow:visible}
.alk-rating-symbol .alk-rating-base{fill:#d1c3ad}
.alk-rating-symbol .alk-rating-symbol-fill{clip-path:inset(0 calc(100% - var(--symbol-fill)) 0 0)}
.alk-rating--bubbles .alk-rating-base{fill:#fff;stroke:currentColor;stroke-width:1.3}
.recognitions-section .recognition-value small{font:13px/1 Arial,sans-serif;align-self:baseline}
/* Owner-approved static badge; no Tripadvisor widget or remote resource. */
.recognition-card--tripadvisor .tripadvisor-badge{width:160px;max-width:100%;height:auto;max-height:var(--badge-height,174px);object-fit:contain}
