.elementor-kit-9{--e-global-color-primary:#1C1A2E;--e-global-color-secondary:#4A3F7A;--e-global-color-text:#4A4350;--e-global-color-accent:#C9A96A;--e-global-color-3206ae6:#9D96C0;--e-global-color-a115014:#F5F0E8;--e-global-color-68efe74:#EDE8DE;--e-global-color-55f77e1:#E8856A;--e-global-color-184e34a:#2A2535;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:300;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-primary-word-spacing:0em;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-size:1rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.75em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-secondary-word-spacing:0em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-weight:500;--e-global-typography-text-text-transform:uppercase;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.2em;--e-global-typography-text-word-spacing:0em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-weight:300;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1.75em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0em;--e-global-typography-2067017-font-family:"DM Sans";--e-global-typography-2067017-font-size:0.68rem;--e-global-typography-2067017-font-weight:400;--e-global-typography-2067017-text-transform:uppercase;--e-global-typography-2067017-font-style:normal;--e-global-typography-2067017-text-decoration:none;--e-global-typography-2067017-line-height:1em;--e-global-typography-2067017-word-spacing:0em;--e-global-typography-e5331db-font-family:"DM Sans";--e-global-typography-e5331db-font-size:0.65rem;--e-global-typography-e5331db-font-weight:400;--e-global-typography-e5331db-text-transform:uppercase;--e-global-typography-e5331db-font-style:normal;--e-global-typography-e5331db-line-height:1em;--e-global-typography-e5331db-letter-spacing:0.22em;--e-global-typography-e5331db-word-spacing:0em;--e-global-typography-ec05ce0-font-family:"Cormorant Garamond";--e-global-typography-ec05ce0-font-size:1rem;--e-global-typography-ec05ce0-font-weight:300;--e-global-typography-ec05ce0-text-transform:none;--e-global-typography-ec05ce0-font-style:italic;--e-global-typography-ec05ce0-text-decoration:none;--e-global-typography-ec05ce0-line-height:1.4em;--e-global-typography-ec05ce0-letter-spacing:0px;--e-global-typography-ec05ce0-word-spacing:0em;--e-global-typography-350ecde-font-family:"Cormorant Garamond";--e-global-typography-350ecde-font-weight:300;--e-global-typography-350ecde-font-style:normal;--e-global-typography-350ecde-text-decoration:none;--e-global-typography-350ecde-line-height:1.08em;--e-global-typography-350ecde-letter-spacing:0px;--e-global-typography-350ecde-word-spacing:0em;--e-global-typography-19a7628-font-family:"DM Sans";--e-global-typography-19a7628-font-size:0.85rem;--e-global-typography-19a7628-font-weight:500;--e-global-typography-19a7628-text-transform:none;--e-global-typography-19a7628-font-style:normal;--e-global-typography-19a7628-text-decoration:none;--e-global-typography-19a7628-line-height:1.5em;--e-global-typography-19a7628-letter-spacing:0px;--e-global-typography-19a7628-word-spacing:0em;--e-global-typography-8d6af5e-font-family:"DM Sans";--e-global-typography-8d6af5e-font-size:0.68rem;--e-global-typography-8d6af5e-font-weight:400;--e-global-typography-8d6af5e-text-transform:uppercase;--e-global-typography-8d6af5e-font-style:normal;--e-global-typography-8d6af5e-text-decoration:underline;--e-global-typography-8d6af5e-line-height:1px;--e-global-typography-72b560e-font-family:"Cormorant Garamond";--e-global-typography-72b560e-font-weight:300;--e-global-typography-ab22b66-font-family:"Cormorant Garamond";--e-global-typography-ab22b66-font-size:1.2rem;--e-global-typography-ab22b66-font-weight:400;--e-global-typography-c54d984-font-family:"DM Sans";--e-global-typography-c54d984-font-weight:400;--e-global-typography-c54d984-letter-spacing:0.22em;--e-global-typography-b7907be-font-family:"Cormorant Garamond";--e-global-typography-b7907be-font-weight:300;--e-global-typography-3d379f2-font-family:"Cormorant Garamond";--e-global-typography-3d379f2-font-size:2.4rem;--e-global-typography-3d379f2-font-weight:300;--e-global-typography-18193d0-font-family:"DM Sans";--e-global-typography-18193d0-font-size:0.9rem;--e-global-typography-18193d0-font-weight:400;background-color:#F5F0E8;color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );text-decoration:var( --e-global-typography-secondary-text-decoration );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:var( --e-global-color-accent );font-family:"DM Sans", Sans-serif;font-size:0.68rem;font-weight:500;text-transform:uppercase;color:var( --e-global-color-primary );padding:0.65rem 1.4rem 0.65rem 1.4rem;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:var( --e-global-color-secondary );font-family:"DM Sans", Sans-serif;font-weight:400;}.elementor-kit-9 a:hover{color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-weight:400;}.elementor-kit-9 h1{color:var( --e-global-color-a115014 );font-family:"Cormorant Garamond", Sans-serif;font-weight:300;}.elementor-kit-9 h2{color:var( --e-global-color-184e34a );font-family:"Cormorant Garamond", Sans-serif;font-weight:300;}.elementor-kit-9 h3{color:var( --e-global-color-184e34a );font-family:"Cormorant Garamond", Sans-serif;font-weight:400;}.elementor-kit-9 h4{color:var( --e-global-color-184e34a );font-family:"DM Sans", Sans-serif;font-weight:500;}.elementor-kit-9 h5{color:var( --e-global-color-184e34a );font-family:"DM Sans", Sans-serif;font-weight:500;}.elementor-kit-9 h6{color:var( --e-global-color-184e34a );font-family:"DM Sans", Sans-serif;font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1100px;}.e-con{--container-max-width:1100px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-9{--e-global-typography-primary-font-size:36px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:14px;--e-global-typography-2067017-font-size:14px;--e-global-typography-e5331db-font-size:16px;--e-global-typography-ec05ce0-font-size:16px;--e-global-typography-350ecde-font-size:62px;--e-global-typography-19a7628-font-size:0.85rem;font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:900px){.elementor-kit-9{--e-global-typography-primary-font-size:26px;--e-global-typography-accent-font-size:14px;--e-global-typography-e5331db-font-size:14px;--e-global-typography-ec05ce0-font-size:14px;--e-global-typography-350ecde-font-size:38px;--e-global-typography-19a7628-font-size:0.85rem;font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================
   VENVISTA — COMPLETE CUSTOM CSS
   Site Settings → Settings → Custom CSS
   WCAG 2.1 AA compliant colour usage
   ============================================ */

/* ── CSS VARIABLES ─────────────────────────── */
:root {
  --midnight: #1C1A2E;
  --dusk:     #4A3F7A;
  --lavender: #9D96C0;
  --gold:     #C9A96A;
  --sienna:   #E8856A;
  --linen:    #F5F0E8;
  --linen-dk: #EAE5DC;
  --dark:     #2A2535;
  --body:     #4A4350;
  --serif:    'Cormorant Garamond', Georgia, serif;
  --sans:     'DM Sans', sans-serif;
  --mono:     'DM Mono', monospace;

  /* ── ACCESSIBLE TEXT ON DARK BACKGROUNDS ── */
  /* Use these instead of rgba opacity values  */
  /* Linen at 65% opacity on Midnight = #a9a5a6 = 6.97:1 PASS */
  --text-dark-primary:   #F5F0E8;        /* Linen full — 14.97:1 */
  --text-dark-secondary: #a9a5a6;        /* Linen 65% — 6.97:1  */
  --text-dark-muted:     #88858b;        /* Linen 50% — 4.67:1  */
  /* NEVER use rgba(245,240,232,0.4) or lower on Midnight — fails AA */
  /* NEVER use Lavender (#9D96C0) on light backgrounds — fails AA */
  /* NEVER use Dusk (#4A3F7A) on Midnight — fails AA */
}

/* ── EM TAG COLOURS ────────────────────────── */
.elementor-widget-heading h1 em {
  font-style: italic;
  color: var(--gold) !important;
}
.elementor-widget-heading h2 em {
  font-style: italic;
  color: var(--dusk) !important;
}
.elementor-widget-heading h2.on-dark em {
  font-style: italic;
  color: var(--gold) !important;
}
.elementor-widget-heading h3 em {
  font-style: italic;
  color: var(--dusk) !important;
}

/* ── FLUID HEADING SIZES ───────────────────── */
.elementor-widget-heading h1 {
  font-size: clamp(2.6rem, 5.5vw, 4.2rem);
  line-height: 1.08;
}
.elementor-widget-heading h2 {
  font-size: clamp(1.8rem, 3.5vw, 2.7rem);
  line-height: 1.15;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(201,169,106,0.2);
}
.elementor-widget-heading h2.on-dark {
  border-bottom-color: rgba(201,169,106,0.15);
}

/* ── GHOST BUTTONS ─────────────────────────── */
.ghost-btn .elementor-button {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(74,63,122,0.3) !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: var(--dusk) !important;
  box-shadow: none !important;
}
.ghost-btn .elementor-button:hover {
  background: transparent !important;
  border-bottom-color: var(--midnight) !important;
  color: var(--midnight) !important;
}
.ghost-btn-light .elementor-button {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(245,240,232,0.4) !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: #a9a5a6 !important; /* Linen 65% — 6.97:1 on Midnight */
  box-shadow: none !important;
}
.ghost-btn-light .elementor-button:hover {
  border-bottom-color: var(--gold) !important;
  color: var(--gold) !important;
}
.ghost-btn-dk .elementor-button {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(74,63,122,0.3) !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: var(--dusk) !important;
  box-shadow: none !important;
}
.ghost-btn-dk .elementor-button:hover {
  background: transparent !important;
  border-bottom-color: var(--midnight) !important;
  color: var(--midnight) !important;
}

/* ── CLAIM STRIP ───────────────────────────── */
/* Linen 50% on Midnight = #88858b = 4.67:1 — just passes AA */
.claim-item {
  font-size: 0.8rem; /* increased from 0.72rem for readability */
  letter-spacing: 0.08em;
  color: #88858b; /* Linen 50% on Midnight — 4.67:1 PASS */
  padding: 0.25rem 1.5rem;
  position: relative;
}
.claim-item+.claim-item::before {
  content: '·';
  position: absolute;
  left: 0;
  color: #88858b; /* same as text — decorative separator */
}

/* ── HOVER CARD ────────────────────────────── */
.hover-card {
  transition: border-color 0.25s;
}
.hover-card:hover {
  border-color: rgba(74,63,122,0.3) !important;
}

/* ── WHO CARD ──────────────────────────────── */
.who-card {
  position: relative;
  overflow: hidden;
  transition: border-color 0.3s;
}
.who-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--gold);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s;
}
.who-card:hover::after {
  transform: scaleX(1);
}

/* ── WHO TAG ───────────────────────────────── */
/* Dusk on Linen = 8.11:1 — passes AA comfortably */
.who-tag p {
  font-size: 0.8rem; /* increased from 0.62rem */
  color: var(--dusk);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.who-tag p::before {
  content: '';
  display: inline-block;
  width: 1.25rem;
  height: 1px;
  background: var(--gold);
  flex-shrink: 0;
}

/* ── PLATFORM PILLS ────────────────────────── */
/* Dusk on Linen = 8.11:1 PASS */
.platform-pill .elementor-button {
  background: transparent;
  border: 0.5px solid rgba(74,63,122,0.2);
  border-radius: 0;
  color: var(--dusk);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.25rem 0.6rem;
}

/* ── CATEGORY FILTER ───────────────────────── */
.cat-filter-btn .elementor-button {
  background: transparent;
  border: 0.5px solid rgba(74,63,122,0.25);
  border-radius: 0;
  color: var(--dusk);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: all 0.2s;
}
.cat-filter-btn .elementor-button:hover,
.cat-filter-btn.active .elementor-button {
  background: var(--dusk);
  border-color: var(--dusk);
  color: var(--linen); /* Linen on Dusk — passes AA */
}

/* ── SPAIN FLAG PILLS ──────────────────────── */
.spain-flag .elementor-button {
  background: transparent !important;
  border: 0.5px solid rgba(245,240,232,0.3) !important;
  border-radius: 0 !important;
  color: #88858b !important; /* Linen 50% — 4.67:1 PASS */
}
.spain-flag.active .elementor-button {
  border-color: var(--gold) !important;
  color: var(--gold) !important;
}

/* ── DOMAIN ROWS ───────────────────────────── */
/* Linen 50% on Midnight = 4.67:1 PASS */
.domain-row p {
  font-family: var(--mono);
  font-size: 0.8rem; /* increased from 0.78rem */
  color: #88858b; /* Linen 50% — 4.67:1 PASS */
  padding: 0.5rem 0.75rem;
  border: 0.5px solid rgba(255,255,255,0.06);
  margin-bottom: 0.4rem;
}
.domain-row-primary p {
  border-color: rgba(201,169,106,0.35) !important;
  color: var(--gold) !important; /* Gold on Midnight = 7.57:1 PASS */
}

/* ── ROI CALCULATOR ────────────────────────── */
.roi-calc {
  background: #ffffff !important;
  border: 0.5px solid rgba(74,63,122,0.15) !important;
  padding: 1.75rem !important;
}
.calc-title {
  font-family: var(--serif) !important;
  font-size: 1.25rem !important;
  color: var(--dark) !important; /* Dark on White = 13.09:1 PASS */
  margin-bottom: 0.25rem !important;
}
.calc-sub {
  font-size: 0.82rem !important; /* increased from 0.75rem */
  color: var(--body) !important; /* Body on White = 9.50:1 PASS */
  margin-bottom: 1.5rem !important;
}
.calc-field {
  margin-bottom: 1.25rem !important;
}
.calc-label {
  display: block !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--dusk) !important; /* Dusk on White = 9.20:1 PASS */
  margin-bottom: 0.5rem !important;
}
.calc-input {
  width: 100% !important;
  background: var(--linen) !important;
  border: 0.5px solid rgba(74,63,122,0.2) !important;
  color: var(--dark) !important; /* Dark on Linen = 13.09:1 PASS */
  font-family: var(--mono) !important;
  font-size: 1.1rem !important;
  padding: 0.7rem 1rem !important;
  outline: none !important;
}
.calc-slider {
  width: 100% !important;
  accent-color: var(--gold) !important;
}
.calc-result {
  background: var(--linen) !important;
  border-top: 3px solid var(--gold) !important;
  padding: 1.25rem !important;
  margin-top: 1.5rem !important;
}
.calc-result-label {
  font-size: 0.72rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--dusk) !important; /* Dusk on Linen = 8.11:1 PASS */
  margin-bottom: 0.4rem !important;
}
.calc-result-value {
  font-family: var(--serif) !important;
  font-size: 2.5rem !important;
  font-weight: 300 !important;
  color: var(--dark) !important; /* Dark on Linen = 13.09:1 PASS */
  line-height: 1 !important;
}
.calc-result-sub {
  font-size: 0.8rem !important; /* increased from 0.72rem */
  color: var(--body) !important; /* Body on Linen = 8.38:1 PASS */
  margin-top: 0.5rem !important;
  line-height: 1.5 !important;
}

/* ── TOUR EMBED WRAPPERS ───────────────────── */
.tour-embed-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.tour-embed-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.tour-embed-wide {
  height: 340px;
  overflow: hidden;
  position: relative;
}
.tour-embed-wide iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}

/* ── STICKY HEADER ─────────────────────────── */
.sticky-header {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: all 0.3s;
}

/* ── CONTAINER PADDING RESET ───────────────── */
.e-con {
  --container-default-padding-top: 0px;
  --container-default-padding-right: 0px;
  --container-default-padding-bottom: 0px;
  --container-default-padding-left: 0px;
}

/* ── RESPONSIVE ────────────────────────────── */
@media (max-width: 900px) {
  .elementor-widget-heading h1 {
    font-size: clamp(2.2rem, 8vw, 2.8rem);
  }
  .elementor-widget-heading h2 {
    font-size: clamp(1.6rem, 6vw, 2.2rem);
  }
}

@media (max-width: 767px) {
  .elementor-widget-html div[style*="padding-bottom:56.25%"] {
    min-height: 200px !important;
  }
}
@media (max-width: 767px) {
  .claim-item+.claim-item::before {
    display: none;
  }
}
@font-face {
  font-display: swap;
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  src: url('https://venvista.co.uk/wp-content/fonts/cormorant-garamond-v21-latin-300.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  src: url('https://venvista.co.uk/wp-content/fonts/cormorant-garamond-v21-latin-300italic.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  src: url('https://venvista.co.uk/wp-content/fonts/cormorant-garamond-v21-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  src: url('https://venvista.co.uk/wp-content/fonts/dm-sans-v17-latin-300.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  src: url('https://venvista.co.uk/wp-content/fonts/dm-sans-v17-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  src: url('https://venvista.co.uk/wp-content/fonts/dm-sans-v17-latin-500.woff2') format('woff2');
}
/* ── VV TOUR EMBED ─────────────────────────── */
.vv-tour-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  cursor: pointer;
}
.vv-half {
  aspect-ratio: 16 / 9;
}
.vv-full {
  aspect-ratio: 16 / 9;
}
.vv-poster {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.vv-play-btn {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.45);
  border: 1px solid rgba(255,255,255,0.5);
  color: white;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.5rem 1.25rem 0.5rem 0.75rem;
  cursor: pointer;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.vv-play-btn:hover {
  background: rgba(0,0,0,0.65);
  border-color: white;
}
.vv-tour-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.vv-play-btn:hover {
  background: rgba(0,0,0,0.65) !important;
  border-color: white !important;
  color: white !important;
}
#tours {
  scroll-margin-top: 80px;
}
@media (max-width: 767px) {
  #tours {
    scroll-margin-top: 80px;
  }
}/* End custom CSS */