
:root{
--primary-blue:#C99B55;--strong-blue:#D7AC79;--deep-navy:#000000;--secondary-navy:#000000;--heading-dark:#000000;--body-text:#575A67;--page-background:#FAFBFC;--white:#FFFFFF;--muted-text:#9BA0AB;--light-blue:#E2C8A8;--border-blue:#E8D6BF;--medium-blue:#D8B78F;
}

/* =========================================================
   CITY LIST PAGE - FULLY NAMESPACED
   No global selectors except isolated rr-inner header/footer.
========================================================= */
 .cty-page{--cty-blue:#D7AC79;--cty-blue2:#D7AC79;--cty-navy:#000000;--cty-ink:#000000;--cty-muted:#D7AC79;--cty-line:#E8D6BF;--cty-bg:#FFFFFF}
.cty-page{width:100%;overflow-x:hidden;background:#FFFFFF;color:var(--cty-ink);font-family:Inter,Arial,sans-serif}
.cty-page *{box-sizing:border-box}
.cty-shell{width:min(1160px,calc(100% - 40px));margin:0 auto}

/* header/footer isolated */

.cty-breadcrumb{height:44px;background:#FFFFFF;border-bottom:1px solid #FAFBFC}
.cty-breadcrumb .cty-shell{height:100%;display:flex;align-items:center;gap:10px;font-size:13px}
.cty-breadcrumb a{color:#000000;text-decoration:none}
.cty-breadcrumb span:last-child{color:#D7AC79;font-weight:600}

/* hero */
.cty-hero{position:relative;height:282px;overflow:hidden;background:#000000}
.cty-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cty-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.42))}
.cty-hero__content{position:relative;z-index:2;width:min(1000px,calc(100% - 40px));height:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#FFFFFF;padding-top:2px}
.cty-hero__icon{color:#D7AC79;font-size:31px;margin-bottom:10px;position:relative}
.cty-hero__icon:before,.cty-hero__icon:after{content:"";position:absolute;top:50%;width:68px;height:1px;background:linear-gradient(90deg,transparent,#C99B55)}
.cty-hero__icon:before{right:calc(100% + 18px)} .cty-hero__icon:after{left:calc(100% + 18px);transform:scaleX(-1)}
.cty-hero h1{margin:0;font-size:40px;line-height:1.14;letter-spacing:-.8px;font-weight:700;text-shadow:0 2px 10px #0005}
.cty-hero h1 span{color:#D7AC79}
.cty-hero p{margin:14px 0 0;font-size:15px;color:#FFFFFF}
.cty-hero__ornament{display:flex;align-items:center;gap:5px;margin-top:17px}
.cty-hero__ornament i,.cty-hero__ornament b{display:block;height:2px;border-radius:8px}
.cty-hero__ornament i{width:22px;background:#FFFFFF}.cty-hero__ornament b{width:48px;background:#D7AC79}

/* floating tools */
.cty-float{position:fixed;right:10px;top:128px;z-index:40;display:grid;gap:8px}
.cty-float__item{width:84px;height:72px;border:0;border-radius:8px;color:#FFFFFF;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:600 11px/1.1 Inter,Arial,sans-serif;box-shadow:0 7px 18px #0003;cursor:pointer}
.cty-float__item span{font-size:25px}.cty-float__item--wa{background:#C99B55}.cty-float__item--call{background:#D7AC79}.cty-float__item--enq{background:#C99B55}

/* main city section */
.cty-destinations{background:linear-gradient(#FFFFFF,#FFFFFF);padding:13px 0 15px}
.cty-section-head{text-align:center;margin-bottom:13px}
.cty-section-head__title{display:flex;align-items:center;justify-content:center;gap:14px}
.cty-section-head h2{margin:0;font-size:24px;line-height:1.2;color:#000000;font-weight:800}
.cty-line{width:54px;height:1px;background:#D7AC79;position:relative}
.cty-line:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;border:1px solid #D7AC79;border-radius:50%;background:#FFFFFF}
.cty-section-head__title .cty-line:last-child:after{right:auto;left:0}
.cty-section-head p{margin:7px 0 0;font-size:12px;color:#D7AC79}

.cty-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.cty-card{background:#FFFFFF;border:1px solid #E8D6BF;border-radius:10px;overflow:hidden;box-shadow:0 5px 18px rgba(6,40,84,.10);transition:transform .28s ease,box-shadow .28s ease}
.cty-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(6,40,84,.15)}
.cty-card__image{height:152px;position:relative;overflow:visible}
.cty-card__image img{width:100%;height:100%;display:block;object-fit:cover}
.cty-card__badge{position:absolute;left:14px;bottom:-27px;width:56px;height:56px;border-radius:50%;background:#FFFFFF;border:1.5px solid #D7AC79;color:#D7AC79;display:grid;place-items:center;font-size:23px;box-shadow:0 3px 10px #0002}
.cty-card__body{padding:14px 14px 13px}
.cty-card__body h3{margin:0 0 0 74px;font-size:18px;line-height:1.2;color:#000000;font-weight:800}
.cty-card__mini-line{display:block;width:30px;height:2px;background:#D7AC79;margin:7px 0 8px 74px}
.cty-card__body p{margin:0 0 13px 74px;font-size:10px;line-height:1.55;color:#111;}
.cty-card__cta{height:34px;width:100%;border-radius:5px;background:linear-gradient(90deg,#D7AC79,#D7AC79);display:flex;align-items:center;justify-content:center;position:relative;color:#FFFFFF;text-decoration:none;font-size:11px;font-weight:500}
.cty-card__cta i{position:absolute;right:10px;width:20px;height:20px;border-radius:50%;background:#FFFFFF;color:#D7AC79;display:grid;place-items:center;font-size:9px}

.cty-trust{margin-top:16px;background:#FFFFFF;border:1px solid #E8D6BF;border-radius:10px;box-shadow:0 5px 15px rgba(6,40,84,.08);display:grid;grid-template-columns:repeat(4,1fr);padding:16px 12px}
.cty-trust article{display:flex;align-items:center;gap:15px;padding:0 14px;border-right:1px solid #E8D6BF;min-width:0}
.cty-trust article:last-child{border-right:0}
.cty-trust__icon{width:54px;height:54px;border-radius:50%;border:1.5px solid #D7AC79;color:#D7AC79;display:grid;place-items:center;flex:0 0 54px;font-size:23px}
.cty-trust h3{margin:0 0 5px;font-size:11px;color:#D7AC79;font-weight:700}
.cty-trust p{margin:0;font-size:9.5px;line-height:1.55;color:#111;}

/* footer same family */

.cty-mobile-bar{display:none}

/* modal */
.cty-modal{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100;display:none;align-items:center;justify-content:center;padding:18px}
.cty-modal.is-open{display:flex}
.cty-modal__dialog{width:min(430px,100%);background:#FFFFFF;border-radius:14px;padding:24px;position:relative;box-shadow:0 20px 60px #0005}
.cty-modal__close{position:absolute;right:13px;top:10px;border:0;background:none;font-size:28px;cursor:pointer;color:#000000}
.cty-modal h2{margin:0 0 6px;font-size:23px}.cty-modal p{margin:0 0 18px;color:#D7AC79;font-size:13px}
.cty-modal label{display:grid;gap:5px;font-size:12px;font-weight:700;margin-top:11px}
.cty-modal input,.cty-modal select{width:100%;height:43px;border:1px solid #E8D6BF;border-radius:7px;padding:0 11px;outline:none;font:inherit;background:#FFFFFF}
.cty-modal input:focus,.cty-modal select:focus{border-color:#D7AC79;box-shadow:0 0 0 3px #C99B5518}
.cty-modal small{display:block;min-height:13px;color:#C99B55;font-size:10px;margin-top:3px}
.cty-modal form>button{width:100%;height:43px;border:0;border-radius:7px;background:#D7AC79;color:#FFFFFF;font-weight:800;cursor:pointer}
.cty-form-status{font-size:12px;color:#C99B55;margin-top:9px;text-align:center}

/* reveal */
.cty-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}
.cty-reveal.is-visible{opacity:1;transform:none}

/* responsive */
@media(max-width:1100px){
  .cty-shell{width:min(100% - 28px,1080px)}
  .cty-grid{gap:16px}
  .cty-card__body p{margin-left:62px}
  .cty-card__body h3,.cty-card__mini-line{margin-left:62px}
  .cty-trust{grid-template-columns:repeat(2,1fr);gap:16px 0}
  .cty-trust article:nth-child(2){border-right:0}.cty-trust article:nth-child(-n+2){padding-bottom:12px}.cty-trust article:nth-child(n+3){padding-top:12px}
}
@media(max-width:820px){
  .cty-hero{height:260px}.cty-hero h1{font-size:34px}
  .cty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cty-card:last-child{grid-column:1/-1;max-width:calc(50% - 8px);justify-self:center;width:100%}
  .cty-float{display:none}
}
@media(max-width:600px){
  .cty-shell{width:100%;padding-left:12px;padding-right:12px}
  .cty-breadcrumb{height:39px}.cty-breadcrumb .cty-shell{font-size:11px}
  .cty-hero{height:250px}.cty-hero__content{width:calc(100% - 28px)}
  .cty-hero h1{font-size:28px;line-height:1.18}.cty-hero p{font-size:12.5px}.cty-hero__icon{font-size:25px}
  .cty-destinations{padding:16px 0 18px}.cty-section-head h2{font-size:21px}.cty-section-head p{font-size:11px}
  .cty-line{width:35px}
  .cty-grid{grid-template-columns:1fr;gap:15px}
  .cty-card:last-child{grid-column:auto;max-width:none}
  .cty-card__image{height:188px}
  .cty-card__body{padding:16px}.cty-card__body h3{font-size:19px}.cty-card__body p{font-size:11px}
  .cty-card__badge{width:58px;height:58px}
  .cty-trust{grid-template-columns:1fr;padding:7px 14px}.cty-trust article{border-right:0!important;border-bottom:1px solid #E8D6BF;padding:13px 2px!important}.cty-trust article:last-child{border-bottom:0}
  .cty-trust h3{font-size:12px}.cty-trust p{font-size:10.5px}
  .cty-mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:80;display:grid;grid-template-columns:1fr 1fr;background:#FFFFFF;padding:8px 9px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -5px 18px #0003}
  .cty-mobile-bar a,.cty-mobile-bar button{height:44px;border:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#FFFFFF;text-decoration:none;font-weight:800;font-size:12px}
  .cty-mobile-bar a{background:#000000;border-radius:6px 0 0 6px}.cty-mobile-bar button{background:#D7AC79;border-radius:0 6px 6px 0}
}
@media(max-width:380px){
  .cty-hero h1{font-size:24px}.cty-card__image{height:168px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.cty-reveal{opacity:1;transform:none;transition:none}.cty-card{transition:none}
}

/* ============================================================
   FINAL CITY PAGE CONTACT + DETAIL-STYLE ENQUIRY PATCH
   ============================================================ */
.cty-float{right:12px!important;top:132px!important;gap:6px!important}
.cty-float__item{width:68px!important;height:58px!important;border-radius:7px!important;gap:3px!important;font-size:9.5px!important;box-shadow:0 5px 14px rgba(0,0,0,.22)!important}
.cty-float__item span{font-size:20px!important}

.cty-modal__dialog{width:min(420px,calc(100% - 24px))!important;padding:0!important;overflow:hidden!important;border-radius:12px!important}
.cty-modal__close{z-index:3;color:#FFFFFF!important;right:12px!important;top:7px!important;font-size:24px!important}
.cty-modal__title{height:49px;background:linear-gradient(135deg,#000000,#000000);color:#FFFFFF;display:flex;align-items:center;justify-content:center;gap:9px;font-size:17px;font-weight:800;padding:0 42px 0 18px}
.cty-modal form{padding:14px 16px 10px}
.cty-form-field{margin-bottom:10px}
.cty-form-field label{display:block;font-size:11px;font-weight:700;margin:0 0 5px;color:#000000}
.cty-form-control{position:relative}
.cty-form-control input,.cty-form-control select{width:100%!important;height:42px!important;border:1px solid #E8D6BF!important;border-radius:5px!important;background:#FFFFFF!important;padding:0 38px 0 12px!important;color:#222!important;outline:0!important;font:500 12px/1.2 Inter,Arial,sans-serif!important;box-shadow:none!important}
.cty-form-control input:focus,.cty-form-control select:focus{border-color:#D7AC79!important;box-shadow:0 0 0 3px #C99B551A!important}
.cty-form-control i{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#9BA0AB;pointer-events:auto;cursor:pointer}
.cty-form-select select{appearance:none}
.cty-form-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cty-form-field small{display:block;min-height:0!important;height:0;overflow:hidden;color:#C99B55;font-size:10px;margin:0;transition:.15s}
.cty-form-field.has-error small{height:auto;min-height:14px!important;margin-top:4px}
.cty-form-field.has-error input,.cty-form-field.has-error select{border-color:#C99B55!important;background:#FFFFFF!important}
.cty-form-submit{width:100%!important;height:40px!important;border:0!important;border-radius:5px!important;background:#D7AC79!important;color:#FFFFFF!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}
.cty-form-status{display:none;background:#FAFBFC;color:#C99B55;padding:9px;border-radius:5px;margin-top:9px;font-size:11px;text-align:center}
.cty-safe-note{margin:0 16px 13px;padding:10px 12px;border:1px solid #E8D6BF;background:#FAFBFC;border-radius:7px;color:#000000;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10.5px;font-weight:700;text-align:center}
.cty-safe-note i{color:#D7AC79;font-size:14px}
.ui-datepicker{font-family:Inter,Arial,sans-serif!important;font-size:13px!important;z-index:100005!important;border:0!important;box-shadow:0 12px 32px #00000033!important;padding:8px!important}
.ui-datepicker .ui-datepicker-header{background:#D7AC79!important;border:0!important;color:#FFFFFF!important}
.ui-datepicker .ui-state-disabled{opacity:.28!important}.ui-datepicker .ui-state-active{background:#D7AC79!important;color:#FFFFFF!important;border-color:#D7AC79!important}

@media(max-width:820px){.cty-float{display:none!important}}
@media(max-width:600px){
  .cty-modal{align-items:flex-end!important;padding:10px!important}
  .cty-modal__dialog{width:100%!important;max-height:calc(100vh - 20px)!important;overflow-y:auto!important}
  .cty-modal__title{height:47px!important;font-size:16px!important}
  .cty-modal form{padding:13px 14px 9px!important}
  .cty-form-control input,.cty-form-control select{height:43px!important;font-size:12.5px!important}
  .cty-form-two{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .cty-safe-note{margin:0 14px 12px!important;font-size:10.5px!important}
  .cty-mobile-bar{padding-left:10px!important;padding-right:10px!important}
  .cty-mobile-bar a,.cty-mobile-bar button{height:42px!important;font-size:11.5px!important}
}
@media(max-width:360px){
  .cty-form-two{grid-template-columns:1fr!important}
}


/* FINAL REQUESTED CITY CONTACT PALETTE */
.cty-float__item--wa{background:#C99B55!important}
.cty-float__item--call{background:#000000!important}
.cty-float__item--enq{background:#D7AC79!important}
.cty-mobile-bar a{background:#000000!important}
.cty-mobile-bar button{background:#D7AC79!important}


/* FINAL approved quick-contact palette */
.cty-float__item--wa{background:#C99B55!important}
.cty-float__item--call{background:#000000!important}
.cty-float__item--enq{background:#D7AC79!important}
.cty-mobile-bar a{background:#000000!important}
.cty-mobile-bar button{background:#D7AC79!important}

/* FINAL REQUEST: semantic validation colors */
.has-error input,.has-error select,.rrd-field.has-error .rrd-control input,.rrd-field.has-error .rrd-control select,.cty-form-field.has-error input,.cty-form-field.has-error select{border-color:#dc2626!important;box-shadow:0 0 0 1px rgba(220,38,38,.08)!important}.has-error small,.rrd-field.has-error small,.cty-form-field.has-error small{color:#dc2626!important}.rrd-success{color:#16a34a!important;border:1px solid #16a34a!important;background:#FFFFFF!important}

/* Final breadcrumb color correction */
.cty-breadcrumb,.cty-breadcrumb a,.cty-breadcrumb span,.cty-breadcrumb span:last-child{color:#000000!important;}
