/* Augusta Properties site-level fixes on top of ap-theme.css (the approved theme stays untouched).
   Behaviour styles for what public/pv/pv.js builds (selects, burger, sliders, modals, forms, lightbox), ported from
   the DV build in the theme's tokens, then per-page fixes found walking the static pages at 1440 and 390. */
img[data-main-image]{opacity:1!important}
img[data-placeholder-image]{opacity:0!important}

/* ── react-select: the emotion styles Provident injects at runtime (from their pages, 2026-11-11) ── */
.css-b62m3t-container{position:relative;box-sizing:border-box}
.css-7pg0cj-a11yText{z-index:9999;border:0;clip:rect(1px,1px,1px,1px);height:1px;width:1px;position:absolute;overflow:hidden;padding:0;white-space:nowrap}
.css-10sypkv-control{align-items:center;cursor:default;display:flex;flex-wrap:wrap;justify-content:space-between;min-height:38px;outline:0!important;position:relative;transition:all 100ms;background-color:transparent;border-color:hsl(0,0%,80%);border-radius:4px;border-style:solid;border-width:1px;box-shadow:none;box-sizing:border-box;border:#2F4960}
.css-10sypkv-control:hover{border:none}
.css-hlgwow{align-items:center;display:grid;flex:1;flex-wrap:wrap;-webkit-overflow-scrolling:touch;position:relative;overflow:hidden;padding:2px 8px;box-sizing:border-box}
.css-l7iyos-singleValue{grid-area:1/1/2/3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6B7280;margin-left:2px;margin-right:2px;box-sizing:border-box;font-size:14px;line-height:140%}
.css-1hac4vs-dummyInput{background:0;border:0;caret-color:transparent;font-size:inherit;grid-area:1/1/2/3;outline:0;padding:0;width:1px;color:transparent;left:-100px;opacity:0;position:relative;transform:scale(.01)}
.css-1wy0on6{align-items:center;align-self:stretch;display:flex;flex-shrink:0;box-sizing:border-box}
.css-1uei4ir-indicatorSeparator{align-self:stretch;width:1px;background-color:hsl(0,0%,80%);margin-bottom:8px;margin-top:8px;box-sizing:border-box;display:none}
.css-e4fjve-indicatorContainer{display:flex;transition:color 150ms,transform .2s;color:#6B7280;padding:8px;box-sizing:border-box}
.css-e4fjve-indicatorContainer:hover{color:hsl(0,0%,60%)}
.css-13cymwt-control{align-items:center;cursor:default;display:flex;flex-wrap:wrap;justify-content:space-between;min-height:38px;outline:0!important;position:relative;transition:all 100ms;background-color:#fff;border-color:hsl(0,0%,80%);border-radius:4px;border-style:solid;border-width:1px;box-sizing:border-box}
.css-13cymwt-control:hover{border-color:hsl(0,0%,70%)}
.css-1dimb5e-singleValue{grid-area:1/1/2/3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:hsl(0,0%,20%);margin-left:2px;margin-right:2px;box-sizing:border-box}
.css-1u9des2-indicatorSeparator{align-self:stretch;width:1px;background-color:hsl(0,0%,80%);margin-bottom:8px;margin-top:8px;box-sizing:border-box}
.css-1nb4yxc-placeholder{grid-area:1/1/2/3;color:#6B7280;margin-left:2px;margin-right:2px;box-sizing:border-box;font-size:14px;line-height:140%}
.css-1nmdiq5-menu{top:100%;position:absolute;width:100%;z-index:1;background-color:#fff;border-radius:4px;box-shadow:0 0 0 1px rgba(0,0,0,.1),0 4px 11px rgba(0,0,0,.1);margin-bottom:8px;margin-top:8px;box-sizing:border-box}
.css-qr46ko{max-height:300px;overflow-y:auto;position:relative;padding-bottom:4px;padding-top:4px;box-sizing:border-box}
.css-8cislc-option{cursor:pointer;display:block;font-size:inherit;width:100%;user-select:none;color:#fff;padding:8px 12px;box-sizing:border-box;background:var(--ink);z-index:1}
.css-7ihqqz-option{cursor:pointer;display:block;font-size:inherit;width:100%;user-select:none;color:#000;padding:8px 12px;box-sizing:border-box;background:#fff;z-index:1}
.css-7ihqqz-option:hover{background:var(--paper)}
.react-select__control{cursor:pointer!important}
.pv-menu{z-index:60;min-width:140px;text-align:left}
.pv-sel-open .react-select__dropdown-indicator{transform:rotate(180deg)}
.dev-to{position:relative}
.dev-toggle{cursor:pointer}
.sq-bx button{cursor:pointer}

/* ── Burger menu (offcanvas built by pv.js) ── */
.burger-menu-wrap.offcanvas{visibility:hidden}
.burger-menu-wrap.offcanvas.show{visibility:visible;transform:none}
.burger-menu-wrap .accordion-button a.main-menu{flex:0 1 auto}
.burger-menu-wrap .accordion-button span.main-menu{flex:1 1 auto;width:auto;background:none;border:0;padding:0;margin:0;text-align:left;font:inherit;color:inherit}
body.pv-burger-open .CookieConsent{display:none!important}

/* ── Sliders ── */
.pv-slick .slick-track{visibility:visible;display:flex}
.pv-slick .slick-slide{display:block;float:none;height:auto}
.pv-slick .slick-list{touch-action:pan-y}
.pv-slick .slick-dots{position:static;margin-top:16px}
.pv-slick .slick-dots li button:before{content:"";display:block;width:8px;height:8px;border-radius:50%;background:var(--sand);margin:auto}
.pv-slick .slick-dots li.slick-active button:before{background:var(--ink)}
.pv-slick .custom-arrow{position:absolute;top:50%;transform:translateY(-50%)}
.pv-slick .custom-arrow.slick-disabled{display:none!important}
.pv-slick img{-webkit-user-drag:none}
.pv-slick-variable .slick-list{overflow-x:auto;scrollbar-width:none}
.pv-slick-variable .slick-list::-webkit-scrollbar{display:none}
.pv-slick-variable .slick-track{display:flex;visibility:visible;width:auto!important;transform:none!important}
.pv-slick-variable .slick-slide{display:block;float:none;width:auto!important}
.swiper.swiper-initialized{touch-action:pan-y}
.swiper.swiper-initialized .swiper-wrapper{transition-property:transform}
.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:10px;left:0;position:absolute;text-align:center;width:100%;z-index:10}
.swiper-pagination-bullets .swiper-pagination-bullet{display:inline-block;width:8px;height:8px;margin:0 3px;cursor:pointer;opacity:.6}
.swiper-pagination-bullets .swiper-pagination-bullet-active{opacity:1}
.offplan-nav-bar-wrap .nav-bar-item{cursor:pointer;white-space:nowrap}

/* ── Accordions and tabs ── */
.accordion-button{cursor:pointer}
.tab-body[hidden],[data-pv-pane][hidden]{display:none!important}

/* ── Filter dropdowns (menus pv.js adds) ── */
.filter-dropdown{position:relative}
.filter-dropdown>.filter-dropdown-menu.show{display:block;position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:50}
.filter-dropdown .custom-dropdown-menu{display:flex;gap:16px;background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 2px 0 var(--line),0 -12px 24px 0 rgba(0,0,0,.03),0 8px 24px rgba(0,0,0,.08)}
.filter-dropdown .menu-item-wrap{width:140px}
.filter-dropdown .menu-item-wrap .label{color:#6b7280;font-size:12px;margin-bottom:8px}
.filter-dropdown .menu-item-wrap .react-select__control{border:1px solid var(--line)!important;height:48px;padding:0 4px}
.sort-dropdown{position:relative}
.sort-dropdown>.pv-sort-menu.show{display:block;position:absolute;right:0;top:100%;z-index:50;background:#fff;border-radius:8px;padding:8px 0;min-width:220px;box-shadow:0 8px 24px rgba(0,0,0,.1)}
.pv-sort-menu .dropdown-item{display:block;padding:10px 16px;color:var(--ink);font-size:14px}
.pv-sort-menu .dropdown-item:hover{background:var(--paper)}

/* ── Modals ── */
.pv-modal{position:fixed;inset:0;z-index:1055;overflow-y:auto;opacity:0;transition:opacity .2s}
.pv-modal.show{opacity:1}
.pv-backdrop{position:fixed;inset:0;z-index:1050;background:rgba(14,26,39,.8);opacity:0;transition:opacity .2s}
.pv-backdrop.show{opacity:1}
.pv-modal .register-interest-modal-header{cursor:pointer}
.pv-modal .reg-new h3{color:#fff}
.pv-filter-modal .modal-dialog{max-width:560px;margin:40px auto;padding:0 16px}
.pv-filter-modal .modal-content{background:#fff;border-radius:8px;padding:24px}
.pv-filter-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.pv-filter-head button{background:none;border:0;cursor:pointer;padding:0}
.pv-filter-modal .modal-filter-item{margin-bottom:16px}
.pv-filter-modal .modal-filter-item .label{color:#6b7280;font-size:12px;margin-bottom:8px}
.pv-filter-modal .pv-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pv-filter-modal .react-select__control{border:1px solid var(--line)!important;height:48px}
.pv-filter-foot{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}

/* ── Forms ── */
.pv-tel{position:relative}
.pv-tel .special-label{display:none}
.pv-tel .flag-dropdown{position:absolute;left:0;top:0;bottom:0;width:44px;display:flex;align-items:center;justify-content:center;border:0!important;background:transparent!important;padding:0!important;pointer-events:none}
.pv-tel .flag-dropdown .selected-flag{display:flex;align-items:center}
.pv-tel input.input-phone{padding-left:48px!important;width:100%}
.pv-flag{display:block;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.input-field.pv-invalid,.pv-invalid{border-color:#b3261e!important;box-shadow:0 0 0 1px #b3261e}
.input-box-checkbox{display:flex;align-items:center;gap:12px}
.input-box-checkbox .checkbox-root{cursor:pointer;background:#fff;padding:0;display:flex;align-items:center;justify-content:center}
.input-box-checkbox .pv-check-label{margin:0;cursor:pointer}
.custom-form button[type=submit].pv-busy{opacity:.6;pointer-events:none}
.newsletter-form-section .newsletter-form{display:flex;gap:8px;flex-wrap:wrap}
.newsletter-form-section .newsletter-form .input-box{flex:1 1 160px}
.newsletter-form-section .newsletter-form .input-field{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:4px}

/* ── Cookie bar ── */
.pv-cookie .cookie-wrap .button{cursor:pointer}

/* ── Lightbox (fslightbox look) ── */
.pv-lightbox{font-family:Arial,sans-serif;position:fixed;top:0;left:0;background:linear-gradient(rgba(30,30,30,.9),#000 1810%);z-index:1000000000;user-select:none;touch-action:none}
.pv-lightbox *{box-sizing:border-box}
.fslightbox-full-dimension{width:100%;height:100%}
.fslightbox-absoluted{position:absolute;top:0;left:0}
.fslightbox-flex-centered{display:flex;justify-content:center;align-items:center}
.fslightbox-open{overflow:hidden;height:100%}
.pv-lightbox .fslightbox-svg-path{transition:fill .15s ease;fill:#ddd}
.pv-lightbox .fslightbox-nav{height:45px;width:100%;position:absolute;top:0;left:0;z-index:4}
.pv-lightbox .fslightbox-slide-number-container{display:flex;justify-content:center;align-items:center;position:relative;height:100%;font-size:15px;color:#d7d7d7;max-width:55px;padding-left:12px}
.pv-lightbox .fslightbox-slash{display:block;margin:0 5px;width:1px;height:12px;transform:rotate(15deg);background:#fff}
.pv-lightbox .fslightbox-toolbar{position:absolute;right:0;top:0;height:100%;display:flex;background:rgba(35,35,35,.65)}
.pv-lightbox .fslightbox-toolbar-button{height:100%;width:45px;cursor:pointer}
.pv-lightbox .fslightbox-toolbar-button:hover .fslightbox-svg-path{fill:#fff}
.pv-lightbox .fslightbox-slide-btn-container{display:flex;align-items:center;padding:30px 30px 30px 6px;position:absolute;top:50%;cursor:pointer;z-index:3;transform:translateY(-50%)}
.pv-lightbox .fslightbox-slide-btn-previous-container{left:0}
.pv-lightbox .fslightbox-slide-btn-next-container{right:0;padding:30px 6px 30px 30px}
.pv-lightbox .fslightbox-slide-btn{padding:10px;background:rgba(35,35,35,.65)}
.pv-lightbox .fslightbox-slide-btn-container:hover .fslightbox-svg-path{fill:#f1f1f1}
.pv-lightbox .pv-lb-img{max-width:calc(100vw - 140px);max-height:calc(100vh - 90px);object-fit:contain;transition:transform .2s}
@media (max-width:743px){.pv-lightbox .pv-lb-img{max-width:100vw}.pv-lightbox .fslightbox-slide-btn-container{padding:12px 3px}}
.fslightbox-fade-in-strong{animation:pv-fade .25s cubic-bezier(0,0,.7,1)}
@keyframes pv-fade{from{opacity:.3}to{opacity:1}}
.offplan-images-wrap .image-item,.images-section .main-image,.images-section .sub-image{cursor:pointer}

/* ── Video pop-up ── */
.pv-video{position:fixed;inset:0;z-index:1000000000;background:rgba(14,26,39,.92);display:flex;align-items:center;justify-content:center;padding:16px}
.pv-video-box{width:min(1100px,100%);aspect-ratio:16/9}
.pv-video-box iframe{width:100%;height:100%;border:0}
.pv-video-close{position:absolute;top:16px;right:16px;background:none;border:0;cursor:pointer}

/* ── Phone field: country picker (react-phone-input-2 markup; the flag sprite is in provident.css) ── */
.pv-tel .flag-dropdown{pointer-events:auto;width:56px}
.pv-tel .flag-dropdown .selected-flag{width:100%;height:100%;padding:0;cursor:pointer;background:transparent!important}
.pv-tel .selected-flag .flag{position:absolute;top:50%;left:14px;margin-top:-5.5px}
.pv-tel .selected-flag .arrow{position:absolute;top:50%;margin-top:-2px;left:22px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid var(--muted)}
.pv-tel .selected-flag.open .arrow{border-top:none;border-bottom:4px solid var(--muted)}
.pv-tel input.input-phone{padding-left:60px!important}
.pv-tel .country-list{position:absolute;top:calc(100% + 4px);left:0;z-index:70;width:300px;max-height:260px;overflow-y:auto;margin:0;padding:6px 0;list-style:none;background:var(--white);box-shadow:var(--shadow-h);text-align:left}
.pv-tel .country-list .country{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:14px;color:var(--text);cursor:pointer}
.pv-tel .country-list .country:hover,.pv-tel .country-list .country.highlight{background:var(--paper)}
.pv-tel .country-list .dial-code{color:var(--muted);margin-left:auto}
.pv-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.custom-form .success-msg{color:var(--ink);background:var(--stone);padding:14px 16px;margin-bottom:16px}
.custom-form .error-msg,#form-success-msg .error-msg{color:#b3261e;background:#fbeeed;padding:14px 16px;margin-bottom:16px}
#form-success-msg .success-msg{color:var(--ink);background:var(--stone);padding:14px 16px;margin-bottom:16px}
.pv-modal .reg-new h3{color:#fff}

/* ── Header over a hero (header-transparent): white icons on every width, as on the approved mock-up ── */
.header-wrap.header-transparent .nav-menu-icon-wrap svg [stroke]:not([stroke=none]),.header-wrap.header-transparent .dev-to svg [stroke]:not([stroke=none]){stroke:#fff!important}
.header-wrap.header-transparent .nav-menu-icon-wrap svg [fill]:not([fill=none]),.header-wrap.header-transparent .dev-to svg [fill]:not([fill=none]){fill:#fff!important}
.header-wrap.header-transparent .nav-menu-icon-wrap svg path:not([fill]):not([stroke]){fill:#fff!important}
.header-wrap.header-transparent .dev-to .dev-toggle span{color:#fff!important}
.pv-slick:not(.images-slider)>.slick-list{overflow:hidden}
.images-slider-wrap{overflow:hidden}

/* ── Sticky section bar on project pages: under the header (pv.js keeps --ap-head at the header's height) ── */
.offplan-nav-bar-wrap{top:var(--ap-head,0px)!important}
/* the logo fits the 54px solid header on phones */
@media (max-width:743px){.header-wrap.ap-solid .logo img{height:34px!important}}

/* ── Contact pages over a photo (contact-module-wrap blue-bg): ink scrim instead of Provident's blue, white contact card ── */
.contact-module-wrap .bg-section .overlay{background:linear-gradient(90deg,rgba(14,26,39,.97) 28%,rgba(14,26,39,.62))!important}
.contact-module-wrap.blue-bg .right-section .address-about h2{color:var(--bronze-l)!important}
.contact-module-wrap.blue-bg .right-section .address-about h4{color:rgba(255,255,255,.7)!important}
.contact-module-wrap.blue-bg .right-section .address-about .address-content *,.contact-module-wrap.blue-bg .right-section .address-about .address-content,.contact-module-wrap.blue-bg .right-section .address-about .address-content a,.contact-module-wrap.blue-bg .right-section .address-about .phone,.contact-module-wrap.blue-bg .right-section .address-about .email{color:#fff!important}
.contact-module-wrap.blue-bg .right-section .address-about .divi{background:var(--line-d)!important}

/* ── Page banners over a photo: the line under the title stays readable ── */
.breadcrumbs-wrap.white-color ~ div .banner-container .description,.breadcrumbs-wrap.white-color ~ div .banner-container .description *{color:rgba(255,255,255,.88)!important}

/* ── Provident's navy tile bands (tile-blue-bg, Signature page): our ink band with grain, white type ── */
.tile-block-wrapper.tile-blue-bg{background:var(--ink) var(--grain)!important}
.tile-block-wrapper.tile-blue-bg .content-section .title,.tile-block-wrapper.tile-blue-bg .content-section .heading{color:#fff!important}
.tile-block-wrapper.tile-blue-bg .content-section .description,.tile-block-wrapper.tile-blue-bg .content-section .description *{color:rgba(255,255,255,.78)!important}
.tile-block-wrapper.tile-blue-bg .button-orange{background:transparent!important;border:1px solid rgba(255,255,255,.55)!important;color:#fff!important}
.tile-block-wrapper.tile-blue-bg .button-orange:hover{border-color:var(--bronze-l)!important}
.banner-landing-wrap .banner-container .title .ap-sig{margin-bottom:8px}
.banner-landing-wrap .banner-container .title .ap-sig b{font-size:96px}
@media (max-width:767px){.banner-landing-wrap .banner-container .title .ap-sig b{font-size:64px}}

/* ── Roadshow events band (event-wrap): ink with grain, white type, white event cards ── */
.event-wrap{background:var(--ink) var(--grain)!important}
.event-wrap .event-container h1,.event-wrap .event-container h2,.event-wrap .event-container h3,.event-wrap .event-container .title,.event-wrap .event-container .design_title p{color:#fff!important}
.event-wrap .event-item{background:var(--white)!important}
.event-wrap .event-item .img-section{position:relative;overflow:hidden}
.event-wrap .event-item .img-section img{position:absolute;inset:0}
.event-wrap .event-item .img-section .status{position:relative;z-index:2}

/* ── Provident's line icons served as SVG files (open houses, IFX, services cards): recoloured to ink, as THEME.md does for the .webp ones ── */
img[src*="ggfx-providentestate.s3"][src*="/i/"]{filter:brightness(0) saturate(100%) invert(9%) sepia(16%) saturate(1800%) hue-rotate(175deg) brightness(95%)}
/* the round icon badges (an orange disc with a white glyph in one SVG): the disc turns bronze, the glyph stays white */
.icon-card-icon img[src*="ggfx-providentestate.s3"]{filter:grayscale(1) sepia(.65) saturate(1.3) brightness(.78) contrast(1.05)}

/* shortlist toast (pv.js, saved properties) */
.pv-sl-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:10000;background:#13263A;color:#fff;font-size:14px;line-height:1.4;padding:12px 18px;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:opacity .4s}
.pv-sl-toast a{color:#E9D9B8;text-decoration:underline;margin-left:10px}
.pv-sl-toast.out{opacity:0}

/* listing page gallery with only 2 or 1 photos: the one side photo fills the column, an empty column goes (listings checker 2026-11-12) */
.property-banner-wrap .property-banner .images-section .sub-images .sub-image:only-child{height:100%}
.property-banner-wrap .property-banner .images-section .sub-images:empty{display:none!important}

/* language lists (2026-11-13): the globe panel and the footer settings */
.ap-langs{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;margin:4px 0 0}
.ap-langs a{font-size:14px;color:#1A2942;text-decoration:none;padding:4px 0}
.ap-langs a.active{font-weight:600;text-decoration:underline}
.ap-foot-langs{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:14px}
.ap-foot-langs a{font-size:13px;color:rgba(255,255,255,.75);text-decoration:none}
.ap-foot-langs a.active{color:#fff;text-decoration:underline}

/* other scripts (2026-11-13): the site font for Latin letters, Noto Sans for the letters it lacks */
:lang(ru),:lang(ru) *{font-family:"Google Sans Flex","Noto Sans",sans-serif!important}
:lang(ar),:lang(ar) *{font-family:"Google Sans Flex","Noto Sans Arabic",sans-serif!important}
:lang(hi),:lang(hi) *{font-family:"Google Sans Flex","Noto Sans Devanagari",sans-serif!important}
:lang(zh-Hans),:lang(zh-Hans) *,:lang(zh),:lang(zh) *{font-family:"Google Sans Flex","Noto Sans SC",sans-serif!important}
.dev-to-open .ap-langs{margin-bottom:4px}.dev-to-open .sq-bx+.label{margin-top:14px}

/* Arabic, right to left (2026-11-13): sliders and photo carousels keep running left to right inside, the text in each
   slide reads right to left; tiles, buttons and arrows mirror their spacing */
[dir=rtl] .slick-slider,[dir=rtl] .swiper{direction:ltr}
[dir=rtl] .slick-slide>div,[dir=rtl] .swiper-slide{direction:rtl}
[dir=rtl] .custom-arrow{width:48px!important;height:48px!important}
[dir=rtl] .custom-arrow.slick-next{left:auto!important}
[dir=rtl] .custom-arrow.slick-prev{right:auto!important}
@media (min-width:992px){[dir=rtl] .tile-block-container:not(.align-img-right) .content-section{margin-left:0!important;margin-right:112px!important}}
[dir=rtl] .d-flex>.more-btn,[dir=rtl] .top-section .more-btn{margin-left:0!important;margin-right:auto!important}

/* Launch 2026-11-13: the header's closed mega-menu panels reach past the window edge in Arabic (right to left) and with
   the wider Chinese labels, which let the page scroll sideways. clip (not hidden) keeps the sticky header working. */
html,body{overflow-x:clip}
