/* The 2026 redesign, live port (27.10.2026): the rules that came out of the /v2-preview/ review on top of
   the designer's redesign-2026.css, which loads first. Layout only - every text is the live page's own. */

/* Home "new chapter" block: the film (the site's own .vbanner player button) fills the photo frame. */
#content .rd-photo.rd-film .vbanner { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: pointer; display: block; }
#content .rd-photo.rd-film .vbanner__img { width: 100%; height: 100%; object-fit: cover; display: block; }
#content .rd-photo.rd-film .rd-cap { pointer-events: none; z-index: 2; }

/* Home (27.10.2026, besserzypern mockup): the four trust badges under the hero buttons as quiet
   pills, as in the designer's later build. */
#content #view-home .trust-row { padding-top: 24px; border-top: 1px solid rgba(255,255,255,.15); display: flex; flex-wrap: wrap; align-items: center; }
#content #view-home .trust-badge { display: flex; align-items: center; gap: 8px; line-height: 1.3; }
#content #view-home .trust-badge .ck { color: #EED6A3; line-height: 1; }
#content #view-home .trust-badge strong { color: rgba(255,255,255,.92); font-weight: 700; }
#content #view-home .trust-row { margin-top: 34px; gap: 10px 10px; max-width: 780px; }
#content #view-home .trust-badge { padding: 8px 14px 8px 10px; border-radius: 999px; border: 1px solid rgba(238,214,163,.35); background: rgba(11,62,39,.35);
  backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); color: rgba(255,255,255,.82); font-size: 12.5px; }
#content #view-home .trust-badge .ck { width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; background: rgba(238,214,163,.18); font-size: 12px; flex: 0 0 auto; }
@media (max-width: 600px) {
  #content #view-home .trust-row { justify-content: center; }
  #content #view-home .trust-badge { font-size: 12px; }
}

/* Hero sound toggle (27.10.2026, besserzypern mockup): one round icon-only button, no text label. */
.cy-np .hero .pv-sound .pv-sound__btn { width: 40px; height: 40px; padding: 0; gap: 0; border-radius: 50%; display: grid; place-items: center; }
.cy-np .hero .pv-sound .pv-sound__btn svg { width: 18px; height: 18px; }
.cy-np .hero .pv-sound .pv-sound__btn::after { content: none; }
.cy-np .hero .pv-sound:not(.is-on) .pv-sound__btn--off, .cy-np .hero .pv-sound.is-on .pv-sound__btn--on { display: none; }

/* Footer (27.10.2026, besserzypern mockup): brand | addresses | contact | Information; the bar
   carries the copyright only; the Terms note sits in the footer note. */
.pmg-footer .rd-cols .rd-brand .pmg-footer__title { margin-bottom: 0; }
.pmg-footer .rd-cols .rd-addr .pmg-footer__addr:first-child { margin-top: 0; }
.pmg-footer .rd-cols .rd-contact .pmg-footer__contact { margin-top: 0; }
.pmg-footer .rd-fnote p { margin: 0 0 8px; font-size: 12.5px; line-height: 1.6; color: #B5B5B5; max-width: 920px; text-align: left; }
.pmg-footer .rd-fnote p a { color: #EED6A3; }
#footer .rd-fnote p { color: #B5B5B5; }
@media (max-width: 980px) { .pmg-footer .rd-cols .rd-brand, .pmg-footer .rd-cols .rd-contact { grid-column: auto; } }
@media (max-width: 600px) { .pmg-footer .pmg-footer__inner.rd-cols { grid-template-columns: 1fr; } }
@media (min-width: 981px) { .pmg-footer .pmg-footer__inner.rd-cols { grid-template-columns: 1.1fr 1.25fr 1.05fr .85fr; } }

/* Living in Cyprus hero, EN + ES (27.10.2026, Denys: like the besserzypern "Leben in Zypern" hero):
   Open Sans headline, white bold line + gold light-italic line, eyebrow without the rule, wide lead. */
#content .hero.hero-living.rd-hero-sans { background: linear-gradient(100deg, rgba(0,39,24,.93) 0%, rgba(0,39,24,.65) 45%, rgba(0,39,24,.3) 100%), url("/assets/img/content/cyprus/beach-restaurant-sunset.webp") center/cover no-repeat; }
#content .hero.hero-living.rd-hero-sans::before { content: none; }
#content .hero.rd-hero-sans .eyebrow::before { content: none; display: none; }
#content .hero.rd-hero-sans h1, #content .hero.rd-hero-sans h1 .em { font-family: 'Open Sans', Arial, sans-serif !important; }
#content .hero.rd-hero-sans h1 { font-weight: 700; font-size: 56px; line-height: 1.12; letter-spacing: -.01em; max-width: 17ch; color: #fff; }
#content .hero.rd-hero-sans h1 .em { display: block; font-weight: 400; font-style: italic; color: #EED6A3; }
#content .hero.rd-hero-sans p.lead { font-size: 16.5px; line-height: 1.75; max-width: 76ch !important; margin-top: 34px; }
@media (max-width: 980px) { #content .hero.rd-hero-sans h1 { font-size: 44px; } }
@media (max-width: 600px) { #content .hero.rd-hero-sans h1 { font-size: 36px; } #content .hero.rd-hero-sans p.lead { font-size: 15.5px; } }

/* Home FAQ without the designer's side card: one centred column, the live booking button under it. */
#content .rd-faq .wrap.narrow { max-width: 860px; }
#content .rd-faq .faq-cta { margin-top: 28px; text-align: center; }

/* Contact cards carry the live button labels only (no sublines). */
#content .rd-m div { align-self: center; }

/* Header keeps its size when the page scrolls (Denys, 27.10.2026): the shrink at 24px moved the whole
   page up, and around that point the header flipped between the two sizes - a visible jump. The shadow
   still marks the scrolled state. */
.pmg-mh.is-scrolled .pmg-mh__in { padding: 14px 32px; }
.pmg-mh.is-scrolled .pmg-mh__brand .header-wrap__logo img { height: 38px; }
@media screen and (min-width: 1321px) {
  .pmg-mh.is-scrolled .pmg-mh__brand .header-wrap__logo img { height: 40px; }
  .pmg-mh.is-scrolled .pmg-mh__slogan img { height: 24px; }
}
@media screen and (min-width: 1321px) and (max-width: 1599px) {
  .pmg-mh.is-scrolled .pmg-mh__brand .header-wrap__logo img { height: 38px; }
  .pmg-mh.is-scrolled .pmg-mh__slogan img { height: 20px; }
}
@media screen and (max-width: 700px) {
  .pmg-mh.is-scrolled .pmg-mh__in { padding: 9px 14px; }
  .pmg-mh.is-scrolled .pmg-mh__brand .header-wrap__logo img { height: 26px; }
}

/* Contact page parity (27.10.2026): besserzypern's design file zeroes the office card
   padding and centres the method icons; keep both sites on the pmg.com values. */
#content .office:not(:has(.rd-photo)) { padding: 22px 24px 24px; }
#content .rd-m { align-items: flex-start; }
#content .rd-m svg { margin-top: 2px; }
