/* =========================================================
   ROYALKINGS PUBLIC EXPERIENCE ENHANCEMENTS
   Shared by Real Estate + Travel & Global Mobility
   ========================================================= */

html,body{max-width:100%;overflow-x:clip}
.offcanvas{max-width:100vw}
.study-photo{background-image:url('../images/site/travel-study.webp')!important}

/* ---------- Center desktop navigation ---------- */
@media (min-width:1200px){
  .site-header .navbar{position:relative}
  .site-header .navbar-collapse{position:static!important;display:flex!important;justify-content:flex-end!important}
  .site-header .navbar-nav{position:absolute;left:50%;transform:translateX(-50%);margin:0!important;white-space:nowrap;z-index:4}
  .site-header .nav-actions{margin-left:auto!important;position:relative;z-index:5}
  .site-header .nav-link{padding-left:7px!important;padding-right:7px!important}
}

/* ---------- Compact inner heroes: 350–400px ---------- */
.inner-hero{
  height:380px!important;
  min-height:380px!important;
  padding:44px 0 42px!important;
  align-items:center!important;
}
.inner-hero.functional-hero{height:350px!important;min-height:350px!important;padding:36px 0!important}
.inner-hero.editorial-hero{height:400px!important;min-height:400px!important;padding:46px 0!important}
.inner-hero .breadcrumb-line{margin-bottom:22px!important}
.inner-hero .inner-hero-copy{max-width:760px}
.inner-hero h1{font-size:clamp(2.55rem,4.6vw,4.65rem)!important;line-height:.94!important;margin:12px 0 15px!important;letter-spacing:-.055em!important}
.inner-hero p{font-size:.9rem!important;line-height:1.65!important;max-width:680px}

.travel-inner-hero{
  height:380px!important;
  min-height:380px!important;
  display:flex!important;
  align-items:center!important;
}
.travel-inner-hero.hero-faq,.travel-inner-hero.hero-contact,.travel-inner-hero.hero-saved{height:350px!important;min-height:350px!important}
.travel-inner-hero.hero-study,.travel-inner-hero.hero-work,.travel-inner-hero.hero-visa,.travel-inner-hero.hero-custom{height:400px!important;min-height:400px!important}
.travel-inner-hero .inner-hero-copy{padding:42px 0!important;max-width:760px}
.travel-inner-hero .inner-hero-copy h1{font-size:clamp(2.55rem,4.6vw,4.6rem)!important;line-height:.94!important;letter-spacing:-.055em!important;margin:12px 0 14px!important}
.travel-inner-hero .inner-hero-copy p{font-size:.9rem!important;line-height:1.65!important;max-width:680px;margin:15px 0!important}

/* Detail-page hero treatments also respect the requested inner-page scale. */
.development-detail-hero,.tour-detail-hero,.destination-detail-hero{
  height:400px!important;
  min-height:400px!important;
}
.development-detail-hero{padding:42px 0!important}
.dev-detail-copy h1,.tour-detail-title h1,.destination-detail-copy h1{font-size:clamp(2.7rem,5vw,4.7rem)!important;line-height:.92!important}
.tour-detail-title{bottom:66px!important}
.tour-detail-actions{bottom:30px!important}
.destination-detail-copy{bottom:54px!important}
.destination-stamp{bottom:30px!important}

/* ---------- FAQ icons ---------- */
.faq-accordion .accordion-button{padding-right:84px!important;min-height:68px;position:relative;background:#fff!important;color:#101820!important;box-shadow:none!important}
.faq-accordion .accordion-button::after{
  position:absolute!important;
  right:22px!important;
  top:50%!important;
  transform:translateY(-50%) rotate(0deg)!important;
  width:38px!important;
  height:38px!important;
  margin:0!important;
  border-radius:50%;
  background:linear-gradient(135deg,#1299eb,#087ac1)!important;
  background-image:none!important;
  display:grid!important;
  place-items:center!important;
  content:"+"!important;
  color:#fff!important;
  font:700 1.4rem/1 Manrope,sans-serif!important;
  box-shadow:0 9px 22px rgba(18,153,235,.22);
  transition:transform .45s cubic-bezier(.22,.75,.25,1),box-shadow .3s ease!important;
}
.faq-accordion .accordion-button:not(.collapsed)::after{
  content:"×"!important;
  transform:translateY(-50%) rotate(180deg)!important;
  box-shadow:0 12px 28px rgba(18,153,235,.34);
}
.faq-accordion .accordion-item{border:1px solid #e2e7ea!important;border-radius:16px!important;overflow:hidden;margin-bottom:10px;background:#fff}
.faq-accordion .accordion-button:not(.collapsed){color:#087ac1!important}
.faq-accordion .accordion-body{padding:4px 26px 25px;line-height:1.75;color:#62707a}

.faq-list details{border:1px solid #e2e7ea!important;border-radius:16px!important;margin-bottom:10px;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease}
.faq-list details[open]{border-color:rgba(18,153,235,.45)!important;box-shadow:0 13px 35px rgba(5,20,30,.07)}
.faq-list summary{padding-right:24px!important}
.faq-list summary>i{
  flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,#1299eb,#087ac1);color:#fff;font-size:.84rem;
  box-shadow:0 9px 22px rgba(18,153,235,.22);transition:transform .45s cubic-bezier(.22,.75,.25,1),box-shadow .3s ease
}
.faq-list details[open] summary>i{transform:rotate(135deg);box-shadow:0 12px 28px rgba(18,153,235,.34)}

/* ---------- Animated buttons ---------- */
.btn.rk-animated{
  transform-origin:center;
  animation:rkButtonDance 8s ease-in-out infinite;
  will-change:transform;
}
.btn.rk-animated:hover,.btn.rk-animated:focus-visible{
  animation:rkButtonSpin .72s cubic-bezier(.2,.75,.25,1) 1 both!important;
}
@keyframes rkButtonSpin{
  0%{transform:rotate(0deg) scale(1)}
  55%{transform:rotate(210deg) scale(1.045)}
  100%{transform:rotate(360deg) scale(1.025)}
}
@keyframes rkButtonDance{
  0%,78%,100%{transform:translateY(0) rotate(0)}
  82%{transform:translateY(-4px) rotate(-1.2deg)}
  85%{transform:translateY(1px) rotate(1.6deg)}
  88%{transform:translateY(-2px) rotate(-.8deg)}
  91%{transform:translateY(0) rotate(0)}
}

/* ---------- Slim CTA card language ---------- */
.page-cta{background:transparent!important;padding:38px 0!important;color:#fff}
.page-cta-shell{
  background:linear-gradient(120deg,#087ac1,#1299eb)!important;
  padding:28px 32px!important;border-radius:22px;box-shadow:0 20px 48px rgba(18,153,235,.18);
  grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:28px!important
}
.page-cta h2{font-size:clamp(1.55rem,2.25vw,2.25rem)!important;margin:5px 0 4px!important;line-height:1.04!important}
.page-cta p{font-size:.78rem;max-width:700px}
.page-cta-actions{justify-content:flex-end}

.article-end-cta{padding:26px 28px!important;margin-top:42px!important;border-radius:18px!important}
.article-end-cta h2{font-size:1.65rem!important;margin:5px 0 16px!important}

.inline-cta{background:transparent!important;padding:34px 0!important}
.inline-cta>.container-xxl{
  background:linear-gradient(120deg,#087ac1,#1299eb);padding:26px 30px!important;border-radius:20px;
  box-shadow:0 18px 45px rgba(18,153,235,.16)
}
.inline-cta h2{font-size:1.6rem!important;margin-top:4px!important}

.contact-cta{
  max-width:1384px;margin:38px auto!important;border-radius:22px;padding:32px 36px!important;
  min-height:0!important;box-shadow:0 20px 55px rgba(4,17,26,.16)
}
.contact-cta h2{font-size:clamp(1.75rem,2.6vw,2.55rem)!important;margin:6px 0!important}
.contact-cta:after{font-size:13rem!important;top:-75%!important}

.owner-cta{padding:42px 0!important}
.owner-shell{min-height:260px!important;border-radius:22px;box-shadow:0 18px 48px rgba(18,153,235,.16)}
.owner-copy{padding:34px 38px!important}
.owner-copy h2{font-size:2.25rem!important;margin-bottom:10px}
.owner-image{min-height:260px!important}

.travel-final-cta{
  width:min(1384px,calc(100% - 56px));min-height:315px!important;margin:40px auto!important;border-radius:24px;overflow:hidden;
  box-shadow:0 24px 65px rgba(4,17,26,.18)
}
.travel-final-copy h2{font-size:clamp(2rem,3.5vw,3.3rem)!important;margin:8px 0 16px!important}
.travel-final-copy>p{margin-bottom:18px}

/* ---------- Fixed contact rail ---------- */
.rk-contact-rail{
  position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:1060;
  display:flex;flex-direction:column;gap:9px
}
.rk-contact-rail a{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff!important;
  box-shadow:0 12px 30px rgba(4,17,26,.2);position:relative;transition:transform .25s ease,box-shadow .25s ease
}
.rk-contact-rail a:hover{transform:translateX(-5px) scale(1.06);box-shadow:0 16px 35px rgba(4,17,26,.28)}
.rk-contact-rail .rk-wa{background:#20a65a}.rk-contact-rail .rk-call{background:#087ac1}.rk-contact-rail .rk-email{background:#07131d}
.rk-contact-rail a::before{
  content:attr(data-label);position:absolute;right:58px;white-space:nowrap;background:#07131d;color:#fff;
  padding:7px 10px;border-radius:8px;font:700 .63rem Manrope,sans-serif;opacity:0;pointer-events:none;transform:translateX(6px);transition:.2s
}
.rk-contact-rail a:hover::before{opacity:1;transform:translateX(0)}

/* ---------- Timed CTA alert ---------- */
.rk-timed-alert{
  position:fixed;right:82px;bottom:26px;z-index:1070;width:min(390px,calc(100vw - 112px));
  background:#fff;border:1px solid rgba(18,153,235,.2);border-left:5px solid #1299eb;border-radius:16px;
  box-shadow:0 22px 65px rgba(3,18,28,.18);padding:17px 45px 17px 18px;
  opacity:0;visibility:hidden;transform:translateY(25px) scale(.96);transition:.42s cubic-bezier(.22,.75,.25,1)
}
.rk-timed-alert.show{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.rk-alert-kicker{font:900 .53rem Manrope,sans-serif;letter-spacing:.12em;color:#1299eb;display:block;margin-bottom:5px}
.rk-timed-alert strong{font:800 .92rem/1.25 Manrope,sans-serif;display:block;color:#0b1720}
.rk-timed-alert p{font-size:.68rem;line-height:1.5;color:#66737b;margin:5px 0 9px}
.rk-timed-alert a{font:800 .65rem Manrope,sans-serif;color:#087ac1!important}
.rk-alert-close{position:absolute;right:10px;top:9px;border:0;background:transparent;width:30px;height:30px;border-radius:50%;color:#6e7a82}
.rk-alert-close:hover{background:#f0f5f8;color:#0b1720}

/* Keep lower fixed UI from fighting with the new rail/alerts. */
@media (max-width:1199.98px){
  .site-header .navbar-nav{position:static;transform:none}
}
@media (max-width:767.98px){
  .inner-hero,.inner-hero.functional-hero,.inner-hero.editorial-hero{height:auto!important;min-height:350px!important;padding:42px 0!important}
  .inner-hero .breadcrumb-line{margin-bottom:16px!important}
  .inner-hero h1{font-size:2.65rem!important}
  .travel-inner-hero,.travel-inner-hero.hero-faq,.travel-inner-hero.hero-contact,.travel-inner-hero.hero-saved,.travel-inner-hero.hero-study,.travel-inner-hero.hero-work,.travel-inner-hero.hero-visa,.travel-inner-hero.hero-custom{height:auto!important;min-height:350px!important}
  .travel-inner-hero .inner-hero-copy{padding:44px 0!important}
  .travel-inner-hero .inner-hero-copy h1{font-size:2.65rem!important}
  .development-detail-hero,.tour-detail-hero,.destination-detail-hero{height:400px!important;min-height:400px!important}
  .tour-detail-title{left:18px!important;right:18px!important;bottom:105px!important}
  .tour-detail-actions{left:18px!important;bottom:28px!important;flex-direction:row!important;flex-wrap:wrap}
  .destination-detail-copy{left:18px!important;right:18px!important;bottom:62px!important}
  .destination-stamp{display:none!important}
  .page-cta{padding:28px 0!important}
  .page-cta-shell{grid-template-columns:1fr!important;padding:24px 20px!important;gap:18px!important}
  .page-cta-actions{justify-content:flex-start!important}
  .inline-cta{padding:28px 0!important}
  .inline-cta>.container-xxl{margin-left:16px!important;margin-right:16px!important;width:auto!important;padding:22px!important;gap:16px!important}
  .owner-shell{grid-template-columns:1fr!important;min-height:0!important;margin:0 16px}
  .owner-copy{padding:28px 24px!important}.owner-image{min-height:210px!important}
  .contact-cta{width:calc(100% - 32px);margin:28px 16px!important;padding:26px 22px!important}
  .contact-shell{grid-template-columns:1fr!important;gap:20px!important}.contact-actions{justify-content:flex-start!important}
  .travel-final-cta{width:calc(100% - 32px);margin:28px 16px!important;min-height:330px!important}
  .travel-final-cta .container-xxl{padding-left:22px!important;padding-right:22px!important}
  .rk-contact-rail{right:10px;top:auto;bottom:88px;transform:none;gap:7px}
  .rk-contact-rail a{width:43px;height:43px}
  .rk-contact-rail a::before{display:none}
  .rk-timed-alert{right:60px;bottom:91px;width:calc(100vw - 80px);padding:14px 40px 14px 15px}
  .faq-accordion .accordion-button{padding-left:18px!important;padding-right:70px!important;font-size:.82rem}
  .faq-accordion .accordion-button::after{right:15px!important;width:34px!important;height:34px!important}
  .faq-list summary{padding:18px!important;font-size:.8rem!important}.faq-list summary>i{width:34px;height:34px;flex-basis:34px}
}

@media (prefers-reduced-motion:reduce){
  .btn.rk-animated{animation:none!important}
  .btn.rk-animated:hover,.btn.rk-animated:focus-visible{transform:none!important;transition:none!important}
  .rk-timed-alert,.faq-list summary>i,.faq-accordion .accordion-button::after{transition:none!important}
}

/* ==========================================================
   2026 SENIOR UI PASS — FORMS, FIELDS, CARDS & PRICE DISPLAY
   ========================================================== */
:root{
  --rk-card-radius:22px;
  --rk-control-radius:14px;
  --rk-soft:#f6f9fb;
  --rk-soft-blue:#edf8ff;
  --rk-border:#dbe5ea;
  --rk-border-strong:#c7d7e0;
  --rk-focus:rgba(18,153,235,.14);
  --rk-shadow-sm:0 12px 32px rgba(6,19,30,.07);
  --rk-shadow-md:0 22px 55px rgba(6,19,30,.11);
  --rk-shadow-lg:0 30px 80px rgba(6,19,30,.15);
}

/* Professional field system */
.form-control,.form-select{
  min-height:58px!important;
  border:1px solid var(--rk-border)!important;
  border-radius:var(--rk-control-radius)!important;
  background-color:#fff!important;
  color:#14212a!important;
  font:650 .79rem/1.25 Manrope,sans-serif!important;
  padding:0 16px!important;
  box-shadow:0 1px 0 rgba(6,19,30,.02),inset 0 0 0 1px rgba(255,255,255,.45)!important;
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background-color .22s ease!important;
}
textarea.form-control{min-height:132px!important;padding:15px 16px!important;resize:vertical}
.form-control:hover,.form-select:hover{border-color:var(--rk-border-strong)!important;background:#fcfdfe!important}
.form-control:focus,.form-select:focus{
  border-color:#1299eb!important;
  box-shadow:0 0 0 5px var(--rk-focus),0 10px 24px rgba(6,19,30,.06)!important;
  transform:translateY(-1px);
  background:#fff!important;
}
.form-control::placeholder{color:#9aa7af!important;font-weight:500!important;opacity:1}
.form-select{background-position:right 15px center!important;padding-right:42px!important}
.form-check-input{width:19px;height:19px;border:1px solid #c8d5dd;border-radius:5px!important;box-shadow:none!important}
.form-check-input:checked{background-color:#1299eb;border-color:#1299eb}
.form-check-input:focus{box-shadow:0 0 0 4px var(--rk-focus)!important;border-color:#1299eb}

/* JS-enhanced field icons */
.rk-field-label{display:block!important;position:relative}
.rk-field-label>span:first-child,.rk-field-label:not(:has(>span:first-child)){
  font-weight:800;
}
.rk-control-wrap{position:relative;display:block;margin-top:7px}
.rk-control-wrap .form-control,.rk-control-wrap .form-select{margin-top:0!important;padding-left:48px!important}
.rk-control-wrap textarea.form-control{padding-left:48px!important}
.rk-input-icon{
  position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:3;
  width:20px;height:20px;display:grid;place-items:center;color:#1299eb;font-size:.76rem;pointer-events:none
}
.rk-control-wrap:has(textarea) .rk-input-icon{top:20px;transform:none}
.rk-required-mark{color:#1299eb;margin-left:4px;font-size:.72rem}
.rk-field-label:focus-within{color:#0f75b2!important}

/* Form surfaces */
.contact-form,.travel-contact-form,.mini-wizard,.wizard-form,.alert-builder form,.site-form,.diaspora-form-section form,
.enquiry-shell,.search-panel,.tour-filter-shell,.sticky-quote,.enquiry-card{
  border:1px solid rgba(18,153,235,.10)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdfe 100%)!important;
  box-shadow:var(--rk-shadow-md)!important;
}
.contact-form,.travel-contact-form,.mini-wizard,.wizard-form{padding:42px!important}
.contact-form,.travel-contact-form,.sticky-quote,.enquiry-card{border-top:4px solid #1299eb!important}
.search-panel,.tour-filter-shell{overflow:hidden}
.search-panel .search-tabs button{border-radius:0 0 12px 12px}

/* Homepage horizontal search gets a refined glass/card finish without breaking its grid. */
.property-search,.travel-search{
  border-radius:18px!important;overflow:hidden!important;
  box-shadow:0 28px 70px rgba(4,20,31,.22)!important;
  border:1px solid rgba(255,255,255,.55)!important;border-top:5px solid #1299eb!important
}
.property-search label,.travel-search label{transition:background .2s ease}
.property-search label:hover,.travel-search label:hover{background:#f7fbfd}
.property-search select,.travel-search select{font-size:.78rem!important;color:#1d2a33}

/* Make multi-step / filter forms read like designed products. */
.wizard-shell,.request-wizard-shell,.custom-wizard-shell{
  border-radius:26px!important;overflow:hidden!important;box-shadow:var(--rk-shadow-lg)!important;
  border:1px solid rgba(18,153,235,.10)!important
}
.wizard-panel>small,.custom-step>span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:var(--rk-soft-blue);color:#087ac1!important}
.wizard-fields,.row.g-3{row-gap:18px!important}
.quick-chips button{border:1px solid #dce7ed!important;border-radius:999px!important;background:#fff!important;transition:.2s!important}
.quick-chips button:hover{border-color:#1299eb!important;color:#087ac1!important;transform:translateY(-1px)}
.choice-grid label span,.support-options span{
  border-radius:16px!important;border:1px solid var(--rk-border)!important;background:#fff!important;
  box-shadow:0 8px 20px rgba(6,19,30,.04);transition:.22s ease!important
}
.choice-grid label:hover span,.support-options label:hover span{transform:translateY(-2px);border-color:#91cff2!important;box-shadow:0 14px 30px rgba(6,19,30,.08)}
.choice-grid input:checked+span,.support-options input:checked+span{background:linear-gradient(180deg,#f3fbff,#e9f7ff)!important;border-color:#1299eb!important;box-shadow:0 0 0 4px rgba(18,153,235,.08)!important}

/* Card design language — consistent radius, depth, hover and borders. */
.property-card,.tour-card,.team-grid article,.unit-grid article,.saved-item,.service-quick,.enquiry-card,.sticky-quote,
.about-values article,.destination-library-card,.verification-card,.mini-card,.include-card,.consult-topics span,
.service-points span,.study-country-grid article,.practical-grid>div,.alert-builder,.contact-method,.saved-empty{
  border-radius:var(--rk-card-radius)!important;
}
.property-card,.tour-card,.team-grid article,.unit-grid article,.saved-item,.service-quick,.about-values article,
.verification-card,.include-card,.study-country-grid article,.practical-grid>div{
  border:1px solid rgba(21,63,87,.10)!important;
  box-shadow:var(--rk-shadow-sm)!important;
  overflow:hidden;
  transition:transform .28s cubic-bezier(.22,.75,.25,1),box-shadow .28s ease,border-color .28s ease!important
}
.property-card:hover,.tour-card:hover,.team-grid article:hover,.unit-grid article:hover,.saved-item:hover,.service-quick:hover,
.about-values article:hover,.verification-card:hover,.include-card:hover,.study-country-grid article:hover,.practical-grid>div:hover{
  transform:translateY(-7px)!important;box-shadow:var(--rk-shadow-md)!important;border-color:rgba(18,153,235,.25)!important
}
.property-image,.tour-image{overflow:hidden}
.property-image:before,.tour-image:before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);pointer-events:none;z-index:2}
.property-body,.tour-body{padding:26px!important}
.property-card h3,.tour-card h3{font-size:1.3rem!important;line-height:1.15!important}
.property-meta,.tour-body>small{letter-spacing:.11em!important}
.property-facts,.tour-meta{background:#f8fafb;border:0!important;border-radius:12px;padding:12px 13px!important;margin:17px 0!important}
.property-foot,.tour-foot{padding-top:2px}
.property-foot strong,.tour-foot>b{color:#0b1720!important;font-size:.9rem!important;line-height:1.2}
.property-foot strong small,.tour-foot>b small{display:block;font-size:.52rem!important;color:#8a959c!important;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.property-foot a,.tour-foot a{display:inline-flex;align-items:center;gap:5px;padding:8px 0;font-weight:900!important}
.save,.compare,.save-tour{border:1px solid rgba(8,32,47,.08)!important;box-shadow:0 8px 24px rgba(4,20,31,.13)!important;transition:.2s ease!important}
.save:hover,.compare:hover,.save-tour:hover{transform:scale(1.08);color:#1299eb}
.status,.tour-badges span{border-radius:999px!important;box-shadow:0 8px 20px rgba(4,20,31,.12)}

/* Grid cards that previously looked table-like now get breathing room. */
.journey-grid{border:0!important;gap:16px!important}
.journey{border:1px solid rgba(21,63,87,.10)!important;border-radius:20px!important;box-shadow:var(--rk-shadow-sm);overflow:hidden}
.journey:hover{box-shadow:var(--rk-shadow-md)!important;border-color:rgba(18,153,235,.24)!important}
.travel-service-grid{border:0!important;gap:12px!important}
.travel-service-grid>a{border:1px solid rgba(255,255,255,.12)!important;border-radius:18px!important;overflow:hidden;background:rgba(255,255,255,.018)}
.travel-service-grid>a:hover{transform:translateY(-5px);background:rgba(255,255,255,.055)!important}
.destination-tile,.destination-library-card,.mobility-panel,.group-panel{border-radius:22px!important;overflow:hidden}
.location-grid{gap:18px!important}.location-card{border-radius:20px!important}
.development-item{background:#fff;border:1px solid rgba(21,63,87,.10);border-radius:26px;overflow:hidden;box-shadow:var(--rk-shadow-sm);padding:18px!important}
.development-item .dev-photo{border-radius:18px!important;overflow:hidden}

/* Price hierarchy */
.rk-price{display:inline-flex;align-items:baseline;gap:5px;color:#0b1720;font-family:Manrope,sans-serif;font-weight:900}
.rk-price small{font-size:.5rem;color:#1299eb;text-transform:uppercase;letter-spacing:.1em;margin-right:2px}
.rk-price em{font-style:normal;font-size:.58rem;color:#7e8a92;font-weight:700}
.rk-price-note{display:block;margin-top:5px;font-size:.54rem;color:#8b969e;line-height:1.4}
.price-disclaimer{margin-top:18px;padding:13px 15px;border-radius:12px;background:#eef8fe;color:#58717f;font-size:.62rem;line-height:1.55;border:1px solid rgba(18,153,235,.12)}
.price-disclaimer i{color:#1299eb;margin-right:6px}

/* Development unit pricing */
.unit-price{display:flex;align-items:baseline;gap:5px;margin:12px 0 16px;font:900 1.05rem Manrope,sans-serif;color:#0b1720}
.unit-price small{font-size:.52rem;color:#1299eb;text-transform:uppercase;letter-spacing:.1em}
.unit-price em{font-style:normal;font-size:.56rem;color:#87939b;font-weight:700}

/* Better responsive form ergonomics */
@media(max-width:767.98px){
  .contact-form,.travel-contact-form,.mini-wizard,.wizard-form{padding:26px 20px!important;border-radius:20px!important}
  .form-control,.form-select{min-height:56px!important}
  .property-card,.tour-card{border-radius:18px!important}
  .property-body,.tour-body{padding:22px!important}
  .wizard-shell,.request-wizard-shell,.custom-wizard-shell{border-radius:20px!important}
  .journey-grid,.travel-service-grid{gap:10px!important}
}

.social-placeholder{opacity:.55;cursor:not-allowed;display:inline-flex;align-items:center;justify-content:center}.social-placeholder:hover{opacity:.7}

/* ---- Admin-managed CTA alert strip (Admin > CTA Alerts) ---- */
.rk-cta-alert{position:relative;display:block;background:#0b2a45;color:#fff;font-size:.82rem;line-height:1.35;overflow:hidden}
.rk-cta-alert .rk-cta-item{display:none;align-items:center;justify-content:center;gap:14px;
  padding:9px 46px 9px 18px;text-align:center;flex-wrap:wrap}
.rk-cta-alert .rk-cta-item.is-visible{display:flex}
.rk-cta-alert .rk-cta-item span{opacity:.95}
.rk-cta-alert .rk-cta-item a{color:#4db5ff;font-weight:700;text-decoration:none;white-space:nowrap}
.rk-cta-alert .rk-cta-item a:hover,.rk-cta-alert .rk-cta-item a:focus-visible{text-decoration:underline}
.rk-cta-close{position:absolute;top:50%;right:12px;transform:translateY(-50%);background:none;border:0;
  color:#fff;opacity:.7;font-size:1rem;line-height:1;padding:6px;cursor:pointer;min-width:32px;min-height:32px}
.rk-cta-close:hover,.rk-cta-close:focus-visible{opacity:1}
@media (max-width:575.98px){.rk-cta-alert .rk-cta-item{font-size:.76rem;padding:8px 44px 8px 14px;gap:8px}}
@media (prefers-reduced-motion:reduce){.rk-cta-alert .rk-cta-item{transition:none}}

/* ---- Team role line on the public team grid ---- */
.team-grid .team-role{display:block;font-size:.82rem;font-weight:700;color:#0b2a45;margin:2px 0 6px}

/* ---- Listing search tabs rendered as links (preserve button styling) ---- */
.search-tabs a{border:0;padding:13px 30px;background:#0b1720;color:#fff;font:800 .66rem Manrope,sans-serif;
  text-decoration:none;display:inline-flex;align-items:center;border-radius:0 0 12px 12px}
.search-tabs a.active,.search-tabs a:hover,.search-tabs a:focus-visible{background:#1299eb;color:#fff}
.search-panel .advanced-grid label{display:flex;flex-direction:column;gap:6px}
.search-panel .advanced-grid label span{font:700 .6rem Manrope,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#5a6b7d}
@media (max-width:575.98px){.search-tabs{flex-wrap:wrap;margin-left:0}.search-tabs a{flex:1 1 auto;justify-content:center;padding:11px 14px}}

/* ---- Client testimonials published from Admin > Testimonials ---- */
.testimonial-side .testimonial-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:14px;padding:16px 18px;margin-bottom:12px;color:#fff}
.testimonial-side .testimonial-card i{color:#4db5ff;font-size:.9rem;margin-bottom:8px;display:block}
.testimonial-side .testimonial-card p{font-size:.84rem;line-height:1.5;margin:0 0 10px}
.testimonial-side .testimonial-meta b{display:block;font-size:.8rem}
.testimonial-side .testimonial-meta small{font-size:.68rem;opacity:.75;letter-spacing:.05em;text-transform:uppercase}

/* ---- Containment fix: absolutely positioned card overlays must anchor to
       their own card, not to the page. Without this every card's status
       badge, save and compare button stacks in the viewport corner. ---- */
.property-card .property-image,
.property-card .inner-prop-img,
.tour-card .tour-image,
.project-card .project-image,
.destination-card .destination-image,
.property-grid .property-card,
.tour-grid .tour-card{position:relative}
.insights-feature .if-image,
.insight-main .insight-image,
.insight-stack .insight-thumb,
.articles-grid .article-img,
.team-grid .team-photo{position:relative;background-size:cover;background-position:center}
