/* Yardscape on the Gardyn theme: only the colour scheme, fonts and logo differ from the theme.
   Palette: green #92AF4D, white, black. Black is text only. Solid sections are green; photos carry a green overlay. */

/* the theme still asks for the old "FontAwesome" family (menu button, arrows, back-to-top): serve it from Font Awesome 6 Solid */
@font-face{font-family:"FontAwesome";src:url(../fonts/fontawesome6/webfonts/fa-solid-900.woff2) format("woff2");font-weight:normal;font-style:normal;font-display:block}

/* ---------- theme variables remapped ---------- */
*{
  --primary-color:#92AF4D; --primary-color-rgb:146,175,77; --secondary-color:#92AF4D; --secondary-color-rgb:146,175,77;
  --background:#fff; --title-font-color:#000; --body-font-color:rgba(0,0,0,.76); --dark-body-font-color:#fff;
  --bg-color-even:#fff; --bg-color-odd:rgba(146,175,77,.1);
  --bg-dark-1:#92AF4D; --bg-dark-1-rgb:146,175,77; --bg-dark-2:#92AF4D; --bg-dark-3:#92AF4D; --bg-dark-3-rgb:146,175,77;
  --bg-grey:rgba(146,175,77,.1); --bg-light:rgba(146,175,77,.13);
  --title-font:"Bricolage Grotesque","Plus Jakarta Sans",system-ui,sans-serif; --body-font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif; --mainmenu-font:"Plus Jakarta Sans",system-ui,sans-serif;
  --body-font-weight:400; --title-font-weight:700; --h4-font-weight:650; --h5-font-weight:650; --h6-font-weight:650;
  --border-default:solid 1px rgba(0,0,0,.14); --rounded-1:14px;
  --green:#92AF4D; --wash:rgba(146,175,77,.13); --line:rgba(0,0,0,.12); --shadow:0 1px 2px rgba(0,0,0,.04),0 10px 28px rgba(0,0,0,.08); --ease:cubic-bezier(.2,.7,.2,1);
}
html{scroll-padding-top:110px}
body{-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.75}
h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;text-wrap:balance}
h1{line-height:1.04}h2{line-height:1.1}
.lead{font-size:clamp(1.02rem,.98rem + .3vw,1.2rem);line-height:1.7}
::selection{background:#92AF4D;color:#000}
:focus-visible{outline:3px solid #92AF4D;outline-offset:3px}
.yd-skip{position:absolute;left:-999px;top:8px;background:#92AF4D;color:#000;padding:.6rem 1rem;border-radius:8px;font-weight:700;z-index:2000}
.yd-skip:focus{left:8px}
.yd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* accents: the theme's highlighted word becomes black text on a green marker */
.id-color,.id-color-2{color:inherit!important}
.id-color-2{background:linear-gradient(transparent 60%,rgba(146,175,77,.6) 60%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .05em}
.text-light .id-color-2,.section-dark .id-color-2{background:linear-gradient(transparent 60%,rgba(146,175,77,.75) 60%)}
.subtitle{background:none!important;padding:0!important;display:inline-flex;align-items:center;gap:.6rem;font:700 .75rem/1 var(--body-font);letter-spacing:.16em;text-transform:uppercase}
.subtitle::before{content:"";width:28px;height:3px;border-radius:2px;background:#92AF4D}
.text-light .subtitle{color:#fff}
.text-light .subtitle::before{background:#fff}

/* ---------- on photos: white text over the theme's own overlays ---------- */
.text-light h1,.text-light h2,.text-light h3,.text-light h4,.text-light p,.text-light .lead,.text-light .crumb,.text-light .crumb a,.text-light span{text-shadow:0 1px 3px rgba(0,0,0,.25),0 2px 24px rgba(0,0,0,.32)}
.bg-blur{background:rgba(255,255,255,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.35)}
section#subheader{padding-top:clamp(9rem,7rem + 6vw,12rem);padding-bottom:clamp(3.5rem,3rem + 3vw,6rem)}
#subheader h1{font-size:clamp(2.1rem,1.3rem + 3vw,3.9rem)}
#subheader .yd-h1-post{font-size:clamp(1.8rem,1.2rem + 2.2vw,3rem)}
ul.crumb li.active{opacity:.85}
#section-intro h1{font-size:clamp(2.4rem,1.4rem + 4.4vw,5rem);line-height:1}
#section-intro .swiper-inner{background-size:cover;background-position:center}
.swiper-button-prev,.swiper-button-next{background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;width:48px;height:48px;color:#fff}
.swiper-button-prev::after,.swiper-button-next::after{font-size:16px}

/* ---------- solid green surfaces carry black text ---------- */
.bg-color,.bg-dark-2,.bg-dark-1,.bg-dark,section.bg-color{background:#92AF4D!important;color:#000}
.bg-color h1,.bg-color h2,.bg-color h3,.bg-color h4,.bg-color h5,.bg-color p,.bg-color span,.bg-color a:not(.btn-main):not(.btn-line),
.bg-dark-2 h2,.bg-dark-2 span,.bg-dark-2 p{color:#000;text-shadow:none}
.bg-color-2{background:#fff!important;color:#000;border:2px solid #92AF4D}
.bg-color-2 h4,.bg-color-2 p,.bg-color-2 span{color:#000}
.bg-color-2.p-4{border-width:0;background:#92AF4D!important}
.bg-light{background:rgba(146,175,77,.13)!important;color:var(--body-font-color)}
.bg-light h4 a.text-dark,.text-dark{color:#000!important}
.padding30{padding:30px}

/* ---------- buttons ---------- */
.btn-main,a.btn-main,input[type=submit].btn-main{background:#92AF4D;color:#000!important;border:1.5px solid #92AF4D;border-radius:999px;font-family:var(--body-font);font-weight:700;letter-spacing:.04em;padding:.85rem 1.7rem;line-height:1;box-shadow:0 6px 18px rgba(146,175,77,.4);transition:transform .25s var(--ease),box-shadow .25s}
.btn-main:hover,a.btn-main:hover{background:#92AF4D;color:#000!important;transform:translateY(-2px);box-shadow:0 10px 26px rgba(146,175,77,.55)}
.btn-main.btn-line,a.btn-line,a.btn-main.btn-line{background:transparent;color:#fff!important;border:1.5px solid rgba(255,255,255,.85);box-shadow:none}
.btn-main.btn-line:hover,a.btn-line:hover{background:#fff;color:#000!important;border-color:#fff}
section:not(.text-light):not(.jarallax) .btn-main.btn-line,.bg-light .btn-main.btn-line,.yd-form .btn-main.btn-line{color:#000!important;border-color:rgba(0,0,0,.3)}
section:not(.text-light):not(.jarallax) .btn-main.btn-line:hover,.bg-light .btn-main.btn-line:hover{background:#fff;border-color:#000}
.btn-main.btn-white,a.btn-main.btn-white{background:#fff;border-color:#fff;color:#000!important}
.hover .btn-line,.hover a.btn-line{border-color:#000;color:#000!important;background:transparent}
.hover .btn-line:hover{background:#fff}
#mainmenu li ul.mega a.btn-main{color:#000}

/* ---------- header ---------- */
header.transparent #mainmenu>li>a,header.transparent #mainmenu>li>a.menu-item{color:#fff;font-weight:650;text-shadow:0 1px 12px rgba(0,0,0,.25)}
header #logo img{height:62px;width:auto}
header.smaller{background:#92AF4D}
header.smaller #logo img{height:50px}
header.smaller #mainmenu>li>a,header.smaller #mainmenu>li>a.menu-item{color:#000;text-shadow:none}
header.smaller .btn-main{background:#fff;border-color:#fff;box-shadow:none}
header.smaller #menu-btn{color:#000}
#topbar{background:rgba(146,175,77,.9)}
#topbar,#topbar a,#topbar i,#topbar .topbar-widget a{color:#000!important}
#topbar .social-icons a{color:#000;border-color:rgba(0,0,0,.25)}
#mainmenu>li>a.active::after,#mainmenu>li>a:hover::after{background:#fff}
/* dropdown and mega: white panels, black text */
#mainmenu li ul,#mainmenu ul.mega{background:#fff;border:0;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.18)}
#mainmenu li ul li a,#mainmenu ul li a.menu-item,header.transparent #mainmenu li ul li a{color:#000!important;font-weight:600;text-shadow:none;text-transform:none}
#mainmenu li ul li a:hover{background:rgba(146,175,77,.16)!important}
#mainmenu ul.mega{border-radius:0 0 22px 22px}
#mainmenu ul.mega .sb-menu{background:transparent}
#mainmenu .sb-menu h5,#mainmenu .sb-menu h5 a{color:#000!important;font:650 .98rem/1.3 var(--title-font);text-transform:none;letter-spacing:-.01em;text-shadow:none;padding:0;background:none!important}
#mainmenu .sb-menu .hover{border-radius:12px}
#mainmenu .sb-menu img{width:100%;aspect-ratio:4/3;object-fit:cover}
.yd-mega__sub{font-size:.78rem;line-height:1.45;color:rgba(0,0,0,.6);text-transform:none;font-weight:500;margin-top:.2rem}
.yd-mega__icon{position:absolute;left:.6rem;top:.6rem;display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:#fff;border:2px solid #92AF4D;color:#000;font-size:.85rem;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.yd-mega__icon i{color:#000}
#mainmenu .sb-menu .col-lg-2 a{padding:0;display:block;color:#000}
#mainmenu .sb-menu .relative.hover>a{display:block;line-height:0}
.yd-mega__all{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;height:100%;min-height:9rem;padding:1.2rem .8rem!important;border-radius:14px;background:#92AF4D;color:#000!important;text-transform:none;line-height:1.3;text-align:center}
.yd-mega__all strong{font:650 1rem/1.25 var(--title-font);color:#000}
.yd-mega__all small{font-size:.76rem;font-weight:500;color:rgba(0,0,0,.78)}
.yd-mega__all:hover{background:#92AF4D!important}
.yd-mega__foot{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;padding:1rem .25rem 0;margin-top:1.1rem;border-top:1px solid rgba(0,0,0,.1);font-size:.85rem;color:rgba(0,0,0,.65);text-transform:none}
#mainmenu .sb-menu .yd-mega__foot a{display:inline-flex;gap:.5rem;align-items:center;width:auto;font-weight:700;color:#000;border-bottom:2px solid #92AF4D;padding:0 0 2px;background:none!important}
@media (max-width:991px){
  header.header-mobile #mainmenu ul.mega .container{padding:0;max-width:none}
  header.header-mobile #mainmenu .sb-menu{padding:.5rem 0!important}
  header.header-mobile #mainmenu .sb-menu .col-6{width:50%}
  header.header-mobile #mainmenu .yd-mega__foot span{display:none}
  header.header-mobile #mainmenu li ul,header.header-mobile #mainmenu ul.mega{box-shadow:none;border-radius:0}
  #section-intro .v-center{min-height:100vh}
}

/* ---------- icons ---------- */
.yd-icon{display:inline-grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:50%;background:rgba(146,175,77,.2);border:2px solid #92AF4D;color:#000;font-size:1.05rem;line-height:1}
.yd-icon i{color:#000;line-height:1}
.yd-icon--solid{background:#fff;border-color:#fff}
.bg-color .yd-icon,.bg-dark-2 .yd-icon,.bg-color-2.p-4 .yd-icon{background:#fff;border-color:#fff}
.bg-color-2:not(.p-4) .yd-icon{background:#92AF4D;border-color:#92AF4D}
.yd-icon--lg{width:3.5rem;height:3.5rem;font-size:1.35rem}
.abs-middle.yd-icon{position:absolute;left:1.25rem}
.yd-arrow i,.bg-blur .yd-arrow i{color:#000}
.bg-color .hover img{aspect-ratio:4/3;object-fit:cover;width:100%}
.yd-arrow{display:grid;place-items:center;flex:none;width:2.6rem;height:2.6rem;border-radius:50%;background:#fff;color:#000}
.yd-contact{display:flex;gap:.8rem;align-items:center;margin-top:.7rem;font-weight:650;color:#000}
.yd-contact small{display:block;font-weight:500;font-size:.72rem;color:rgba(0,0,0,.7)}

/* ---------- cards on the theme's hover pattern ---------- */
.hover .abs.hover-op-1,.hover .abs.hover-op-1 div,.hover .hover-op-1{color:#000;text-shadow:none}
.hover .hover-op-0 h4,.hover .hover-op-0 h5,.hover .hover-op-0 div{color:#fff}
.bg-blur h5,.bg-blur div{color:#fff}
.hover .bg-blur h5{margin:0;font-size:1.05rem}
.hover .bg-blur{background:rgba(255,255,255,.2)}
.bg-color .p-4 p,.bg-color .p-4 .mt-3{color:#000}
#section-intro .bg-blur .btn-main{white-space:nowrap}
.yd-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
.yd-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.1rem;border-radius:999px;border:1.5px solid rgba(0,0,0,.2);background:#fff;font:650 .875rem/1 var(--body-font);color:#000;cursor:pointer}
.yd-chip:hover{border-color:#000}
.yd-chip[aria-pressed="true"]{background:#92AF4D;border-color:#92AF4D}
.yd-chip small{font-weight:600;opacity:.7}
[data-kind][hidden]{display:none!important}
.de_count h2{color:#000}
.yd-video{border-radius:var(--rounded-1);overflow:hidden;box-shadow:var(--shadow)}
.yd-video video{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}

/* ---------- project + post pages ---------- */
.yd-gallery{columns:3;column-gap:.75rem}
.yd-gallery a{display:block;margin-bottom:.75rem;border-radius:12px;overflow:hidden;break-inside:avoid;background:rgba(146,175,77,.12)}
.yd-gallery img{width:100%;display:block;transition:transform .7s var(--ease)}
.yd-gallery a:hover img{transform:scale(1.05)}
.yd-lightbox{position:fixed;inset:0;z-index:3000;background:rgba(255,255,255,.97);display:none;place-items:center;padding:4.5rem 1rem 3.5rem}
.yd-lightbox.is-open{display:grid}
.yd-lightbox img{max-width:min(1200px,100%);max-height:100%;border-radius:12px;box-shadow:var(--shadow);object-fit:contain}
.yd-lightbox button{position:absolute;display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;border:1.5px solid rgba(0,0,0,.2);background:#fff;color:#000;cursor:pointer}
.yd-lightbox button:hover{background:#92AF4D;border-color:#92AF4D}
.yd-lightbox .lb-x{top:1rem;right:1rem}.yd-lightbox .lb-p{left:1rem;top:50%}.yd-lightbox .lb-n{right:1rem;top:50%}
.yd-lightbox .lb-c{position:absolute;bottom:1rem;left:0;right:0;text-align:center;font-weight:600;font-size:.875rem;color:#000}
.yd-pager{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.yd-pager a{display:grid;gap:.3rem;padding:1.4rem 1.75rem;border:1px solid rgba(0,0,0,.12);border-radius:var(--rounded-1);transition:border-color .25s,background .25s}
.yd-pager a:hover{border-color:#92AF4D;background:rgba(146,175,77,.13)}
.yd-pager a:last-child{text-align:right}
.yd-pager small{font:700 .72rem/1 var(--body-font);letter-spacing:.14em;text-transform:uppercase;color:rgba(0,0,0,.6)}
.yd-pager strong{font:650 1.15rem/1.3 var(--title-font);color:#000}
.yd-aside{position:sticky;top:120px}
.yd-prose{font-size:1.06rem;line-height:1.85}
.yd-prose>*+*{margin-top:1.25em}
.yd-prose h2{font-size:clamp(1.55rem,1.3rem + 1vw,2.1rem);margin-top:2.2em}
.yd-prose h3{font-size:1.35rem;margin-top:1.8em}
.yd-prose p{margin:0;color:var(--body-font-color)}
.yd-prose strong{color:#000}
.yd-prose a{color:#000;font-weight:600;text-decoration:underline;text-decoration-color:#92AF4D;text-decoration-thickness:2px;text-underline-offset:4px}
.yd-prose ul{list-style:none;display:grid;gap:.6rem;padding:1.5rem;border-radius:var(--rounded-1);background:rgba(146,175,77,.13)}
.yd-prose ul li{position:relative;padding-left:1.8rem}
.yd-prose ul li::before{content:"";position:absolute;left:0;top:.62em;width:.9rem;height:.9rem;border-radius:50% 0 50% 0;background:#92AF4D}
.yd-prose figure{margin:2em 0}.yd-prose figure img{width:100%;border-radius:var(--rounded-1)}
.yd-prose>p:first-of-type{font-size:1.2rem;line-height:1.7;color:#000}
.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:.1rem;counter-reset:t}
.toc a{display:flex;gap:.7rem;padding:.5rem .6rem;border-radius:10px;font-size:.9rem;font-weight:600;color:rgba(0,0,0,.75);line-height:1.4}
.toc a::before{counter-increment:t;content:counter(t,decimal-leading-zero);font:700 .75rem/1.9 var(--title-font);color:rgba(0,0,0,.55)}
.toc a:hover,.toc a.is-active{background:rgba(146,175,77,.3);color:#000}
.yd-share{display:flex;gap:.5rem}
.yd-share a,.yd-share button{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;border:1.5px solid rgba(0,0,0,.2);background:#fff;color:#000;cursor:pointer}
.yd-share a:hover,.yd-share button:hover,.yd-share .is-done{background:#92AF4D;border-color:#92AF4D}
.yd-faq{display:grid;gap:.75rem}
.yd-faq details{border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff}
.yd-faq details[open]{border-color:#92AF4D;background:rgba(146,175,77,.1)}
.yd-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.4rem;cursor:pointer;list-style:none;font:650 1.05rem/1.4 var(--title-font);color:#000}
.yd-faq summary::-webkit-details-marker{display:none}
.yd-faq summary i{transition:transform .25s;flex:none}
.yd-faq details[open] summary i{transform:rotate(45deg)}
.yd-faq details p{padding:0 1.4rem 1.3rem;margin:0}
.yd-sitemap{list-style:none;padding:0;margin:.75rem 0 0}
.yd-sitemap a{display:inline-block;padding:.25rem 0;font-weight:500;color:rgba(0,0,0,.75)}
.yd-sitemap a:hover{color:#000;text-decoration:underline;text-decoration-color:#92AF4D;text-underline-offset:4px;text-decoration-thickness:2px}
.yd-404__n{font:800 clamp(6rem,4rem + 12vw,12rem)/1 var(--title-font);letter-spacing:-.06em;color:#000;background:linear-gradient(transparent 70%,#92AF4D 70%);width:max-content;margin:0 auto 1rem}

/* ---------- forms ---------- */
.yd-formcard{padding:clamp(1.5rem,3vw,2.75rem)}
.yd-form{display:grid;gap:1.4rem}
.yd-field{display:grid;gap:.5rem}
.yd-field>label,.yd-fieldset>legend{font:650 .875rem/1.3 var(--body-font);color:#000;margin:0}
.yd-fieldset{border:0;padding:0;margin:0;display:grid;gap:.75rem}
.yd-req{color:#000;opacity:.6;font-weight:500}
.yd-form .form-control{min-height:3.25rem;padding:.8rem 1rem;border:1.5px solid rgba(0,0,0,.18);border-radius:14px;background:#fff;color:#000;font-size:1rem;margin:0;box-shadow:none}
.yd-form textarea.form-control{min-height:9rem;resize:vertical}
.yd-form .form-control:focus{outline:0;border-color:#92AF4D;box-shadow:0 0 0 4px rgba(146,175,77,.3)}
.yd-form .form-control[aria-invalid="true"]{border-color:#000}
.yd-err{font-size:.85rem;font-weight:600;color:#000;display:none}
.has-err>.yd-err{display:block}
.yd-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem}
.yd-opt{position:relative;margin:0}
.yd-opt input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.yd-opt span{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border:1.5px solid rgba(0,0,0,.18);border-radius:14px;background:#fff;font-weight:600;font-size:.93rem;color:#000;min-height:3.25rem;transition:border-color .2s,background .2s}
.yd-opt span::before{content:"";flex:none;width:1.25rem;height:1.25rem;border-radius:6px;border:1.5px solid rgba(0,0,0,.28);background:#fff center/70% no-repeat}
.yd-opt input[type=radio]+span::before{border-radius:50%}
.yd-opt:hover span{border-color:rgba(0,0,0,.45)}
.yd-opt input:checked+span{border-color:#92AF4D;background:rgba(146,175,77,.22)}
.yd-opt input:checked+span::before{background-color:#92AF4D;border-color:#92AF4D;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.yd-opt input:focus-visible+span{outline:3px solid #92AF4D;outline-offset:2px}
.yd-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.yd-note{font-size:.85rem;color:rgba(0,0,0,.6);margin:0}
.yd-msg{padding:1rem 1.4rem;border-radius:12px;background:#92AF4D;font-weight:600;color:#000;display:none}
.yd-msg.is-on{display:block}
.yd-steps{display:flex;gap:.4rem;margin-bottom:1.5rem}
.yd-steps i{flex:1;height:6px;border-radius:3px;background:rgba(146,175,77,.3)}
.yd-steps i.is-on{background:#92AF4D}
.yd-steplabel{font-size:.85rem;font-weight:700;color:#000;margin-bottom:.5rem}
.yd-step{display:grid;gap:1.4rem}
.yd-steps-on .yd-step{display:none}
.yd-steps-on .yd-step.is-on{display:grid;animation:yd-rise .4s var(--ease)}
.yd-step>h2{font-size:clamp(1.4rem,1.2rem + .9vw,1.9rem);text-transform:none}
.yd-stepnav{display:flex;justify-content:space-between;gap:.75rem;margin-top:.5rem}
html:not(.yd-steps-on) .yd-stepnav [data-next],html:not(.yd-steps-on) .yd-stepnav [data-prev],html:not(.yd-steps-on) .yd-steps,html:not(.yd-steps-on) .yd-steplabel{display:none}
@keyframes yd-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ---------- footer ---------- */
footer.section-dark,footer{background:#92AF4D;color:#000}
footer h5,footer .fw-bold,footer p,footer address,footer a,footer li,footer .de-flex-col,footer .subfooter{color:#000}
footer a:hover{color:#000;opacity:.7}
footer .social-icons a{display:inline-grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:#fff;border:0;color:#000;margin-right:.4rem}
footer .subfooter{background:transparent;border-top:1px solid rgba(0,0,0,.18)}
footer img.w-150px{width:170px}
#back-to-top{background:#92AF4D;color:#000}

@media (max-width:991px){.yd-gallery{columns:2}.yd-aside{position:static}}
@media (max-width:575px){.yd-gallery{columns:1}.yd-pager{grid-template-columns:1fr}.yd-pager a:last-child{text-align:left}.yd-stepnav{flex-direction:column-reverse}.yd-stepnav .btn-main{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{header,footer,.yd-aside{display:none}}
header.transparent #mainmenu>li>a.active,header.transparent #mainmenu>li>a.menu-item.active{color:#fff!important}
header.smaller #mainmenu>li>a.active,header.smaller #mainmenu>li>a.menu-item.active{color:#000!important}
/* links in body copy are black with a green underline */
.bg-light a:not(.btn-main):not(.btn-line):not(.yd-sidelink),.yd-prose a,p a:not(.btn-main){color:#000}
.bg-light p a,p a:not(.btn-main):not(.btn-line){text-decoration:underline;text-decoration-color:#92AF4D;text-decoration-thickness:2px;text-underline-offset:3px}
#mainmenu .sb-menu img{height:auto!important}
.yd-mega__icon{z-index:3}
#mainmenu .sb-menu h5,#mainmenu .sb-menu h5 a,.yd-mega__sub{text-align:center;display:block}
#mainmenu .sb-menu .yd-mega__all .yd-icon{display:inline-grid!important;width:3.5rem!important;height:3.5rem!important;font-size:1.3rem!important;line-height:1;position:static;margin:0}
#mainmenu .sb-menu .yd-mega__all .yd-icon i{display:inline-block;font-size:1.3rem;line-height:1}
/* the theme paints the mobile header with the title colour; ours is black, so use green */
header.header-mobile,header.header-mobile.transparent,header.header-mobile.smaller{background:#92AF4D!important}
header.header-mobile #mainmenu a.menu-item,header.header-mobile #mainmenu>li>a{color:#000!important;text-shadow:none}
header.header-mobile #mainmenu,header.header-mobile #mainmenu ul{background:#fff}
header.header-mobile #menu-btn{color:#000}
header.header-mobile #mainmenu{left:0;margin:0;padding:0 24px 1.5rem;width:100%}
.text-light{color:#fff!important}
.bg-color .text-light,.hover .hover-op-1.text-light{color:#000!important}

/* images keep their own proportions: width/height attributes must not stretch them */
img:not(.jarallax-img):not([class*=swiper]){height:auto;max-width:100%}
img.hover-scale-1-1,.hover img,.yd-gallery img,.rounded-10px,.w-100.rounded-1{height:auto}
.hover.rounded-1>img.hover-scale-1-1{aspect-ratio:16/11;object-fit:cover;width:100%}
.relative>img.rounded-10px{aspect-ratio:4/4.6;object-fit:cover;object-position:top;width:100%}

/* ================= layout system =================
   One gutter, one header offset and one section rhythm drive every page at every width. */
:root{--yd-gutter:clamp(16px,4vw,28px);--yd-head:132px;--yd-sec:clamp(3.25rem,2rem + 4.5vw,6.5rem);--yd-pad:clamp(1.25rem,1rem + 1vw,2rem)}
@media (max-width:1200px){:root{--yd-head:0px}
  /* below 1200px the theme switches to a fixed mobile header and pushes the page down by a fixed 58px; use the real header height */
  #content{margin-top:var(--yd-hh,76px)!important}}
.container,.container-fluid{--bs-gutter-x:calc(var(--yd-gutter) * 2);padding-left:var(--yd-gutter);padding-right:var(--yd-gutter)}
section{padding-top:var(--yd-sec);padding-bottom:var(--yd-sec)}
section.no-top{padding-top:0}section.no-bottom{padding-bottom:0}section.pt-0{padding-top:0}section.pb-0{padding-bottom:0}
section.p-4{padding-top:var(--yd-sec)!important;padding-bottom:var(--yd-sec)!important;padding-left:0!important;padding-right:0!important}
section.px-4{padding-left:0!important;padding-right:0!important}
.container-fluid{max-width:1600px;margin-inline:auto}

/* hero: header offset, centred copy, feature card and slider arrows on one baseline */
#section-intro{min-height:min(100svh,62rem);display:flex}
#section-intro .swiper{position:absolute;inset:0;z-index:0;width:100%;height:100%}
#section-intro .swiper-wrapper,#section-intro .swiper-slide,#section-intro .swiper-inner{height:100%}
#section-intro .yd-hero__in{position:relative;z-index:1000;display:flex;flex-direction:column;justify-content:space-between;gap:var(--yd-pad);
  padding-top:calc(var(--yd-head) + var(--yd-pad));padding-bottom:var(--yd-pad);min-height:inherit}
.yd-hero__text{margin-block:auto;max-width:48rem;padding-block:var(--yd-pad)}
.yd-hero__text .lead{max-width:38rem;margin-bottom:0}
.yd-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.yd-hero__actions .btn-main{margin:0}
.yd-hero__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.yd-hero__card{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1rem 1.1rem 1rem 1.5rem;width:min(100%,31rem)}
.yd-hero__card .btn-main{margin:0;flex:none}
.yd-hero__nav{display:flex;gap:.5rem}
.yd-hero__nav .swiper-button-prev,.yd-hero__nav .swiper-button-next{position:static;margin:0;inset:auto;transform:none}
header+#content #section-intro,#content #section-intro{margin-top:0}

/* image sub-headers share the same header offset */
section#subheader{padding-top:calc(var(--yd-head) + clamp(2.25rem,1.5rem + 3vw,4.5rem));padding-bottom:clamp(2.5rem,2rem + 3vw,5rem)}
#subheader .col-lg-8>*:last-child{margin-bottom:0}
#subheader .crumb{margin-bottom:1.25rem}
#subheader h1{margin-bottom:1rem}

/* stat boxes: four equal tiles */
.yd-stat{display:flex;align-items:center;gap:1.1rem;height:100%;min-height:7.5rem;padding:1.4rem 1.5rem}
.yd-stat .yd-icon{flex:none}
.yd-stat h2,.yd-stat h4{margin:0}

@media (max-width:991px){
  #section-intro{min-height:auto}
  #section-intro .yd-hero__in{padding-top:clamp(3rem,10vw,5rem);padding-bottom:clamp(2rem,6vw,3rem)}
  .yd-hero__text{padding-block:0}
}
@media (max-width:575px){
  .yd-hero__foot{flex-direction:column;align-items:stretch}
  .yd-hero__card{width:100%}
  .yd-hero__nav{justify-content:flex-end}
  .yd-hero__actions .btn-main{flex:1 1 100%}
  .yd-stat{min-height:6.5rem}
}
/* mobile header: fixed, predictable height (the page offset above relies on it); the theme grows it to full height when the menu opens */
@media (max-width:1200px){
  :root{--yd-hh:76px}
  header.header-mobile{height:var(--yd-hh);padding:0!important}
  header.header-mobile .de-flex{height:var(--yd-hh);align-items:center}
  header.header-mobile #logo img{height:50px;width:auto}
}
@media (max-width:1200px) and (min-width:992px){#section-intro{min-height:calc(min(100svh,62rem) - var(--yd-hh))}}

/* ================= text on Yardscape green is white ================= */
:root{--yd-on-green:#fff;--yd-on-green-shadow:0 1px 2px rgba(0,0,0,.22)}
::selection{color:#fff}
.bg-color,.bg-dark-2,.bg-dark-1,.bg-dark,section.bg-color,.bg-color-2.p-4{color:#fff}
.bg-color h1,.bg-color h2,.bg-color h3,.bg-color h4,.bg-color h5,.bg-color p,.bg-color span,.bg-color small,.bg-color a:not(.btn-main):not(.btn-line),
.bg-dark-2 h2,.bg-dark-2 h4,.bg-dark-2 span,.bg-dark-2 p,.bg-dark-2 div,.bg-color-2.p-4 h2,.bg-color-2.p-4 span,.bg-color-2.p-4 div,.de_count h2,.bg-color .p-4 p,.bg-color .p-4 .mt-3{color:#fff;text-shadow:var(--yd-on-green-shadow)}
.bg-color .yd-icon i,.bg-dark-2 .yd-icon i{color:#000;text-shadow:none}
.bg-color-2:not(.p-4) .yd-icon i{color:#fff}
.bg-color .subtitle::before,.yd-green .subtitle::before{background:#fff}
.bg-color .text-light,.hover .hover-op-1.text-light{color:#fff!important}
/* buttons */
.btn-main,a.btn-main,input[type=submit].btn-main{color:#fff!important;text-shadow:var(--yd-on-green-shadow)}
.btn-main:hover,a.btn-main:hover{color:#fff!important}
.btn-main.btn-white,a.btn-main.btn-white,header.smaller .btn-main{color:#000!important;text-shadow:none}
.btn-main.btn-line,a.btn-line,a.btn-main.btn-line{text-shadow:none}
/* hover overlays */
.hover .abs.hover-op-1,.hover .abs.hover-op-1 div,.hover .hover-op-1{color:#fff;text-shadow:var(--yd-on-green-shadow)}
.hover .btn-line,.hover a.btn-line{border-color:#fff;color:#fff!important}
.hover .btn-line:hover{background:#fff;color:#000!important}
/* bars and surfaces */
#topbar,#topbar a,#topbar i,#topbar .topbar-widget a{color:#fff!important;text-shadow:var(--yd-on-green-shadow)}
#topbar .social-icons a{color:#fff;border-color:rgba(255,255,255,.55)}
header.smaller #mainmenu>li>a,header.smaller #mainmenu>li>a.menu-item,header.smaller #mainmenu>li>a.active,header.smaller #mainmenu>li>a.menu-item.active{color:#fff!important;text-shadow:var(--yd-on-green-shadow)}
header.smaller #menu-btn,header.header-mobile #menu-btn{color:#fff}
.yd-mega__all,.yd-mega__all strong,.yd-mega__all small{color:#fff!important;text-shadow:var(--yd-on-green-shadow)}
.yd-mega__all .yd-icon i{color:#000;text-shadow:none}
.yd-chip[aria-pressed="true"]{color:#fff}
.yd-msg{color:#fff}
.yd-skip,#back-to-top{color:#fff}
.yd-share a:hover,.yd-share button:hover,.yd-share .is-done,.yd-lightbox button:hover{color:#fff}
.yd-opt input:checked+span::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.yd-contact,.yd-contact small{color:#fff}
.yd-contact small{opacity:.9}
/* footer */
footer.section-dark,footer{color:#fff}
footer h5,footer .fw-bold,footer p,footer address,footer a,footer li,footer .de-flex-col,footer .subfooter,footer .subfooter a,footer i{color:#fff;text-shadow:var(--yd-on-green-shadow)}
footer a:hover{color:#fff;opacity:.8}
footer .social-icons a,footer .social-icons a i{color:#000;text-shadow:none}
footer .subfooter{border-top-color:rgba(255,255,255,.4)}
.yd-menu-cta .btn-main{color:#fff!important}

/* ================= mobile menu =================
   Below 1200px the theme turns the menu into a full-screen panel. Make it a clear, tappable list. */
@media (max-width:1200px){
  header.header-mobile #menu-btn{position:relative;z-index:5;width:44px;height:44px;margin:0 0 0 .5rem;display:inline-grid;place-items:center;padding:0;border-radius:50%}
  header.header-mobile #menu-btn::before{font-size:1.3rem;line-height:1;color:#fff}
  header.header-mobile #menu-btn.menu-open::before{content:"\f00d"}
  header.header-mobile .menu_side_area{display:flex;align-items:center;gap:.5rem}
  header.header-mobile .menu_side_area .btn-main{padding:.65rem 1.1rem;font-size:.8rem}
  header.header-mobile #mainmenu{background:#fff;padding:.5rem var(--yd-gutter) 2rem;overflow-y:auto;-webkit-overflow-scrolling:touch;height:calc(100% - var(--yd-hh))}
  header.header-mobile #mainmenu>li{position:relative;border-bottom:1px solid rgba(0,0,0,.1);margin:0}
  header.header-mobile #mainmenu>li>a.menu-item{display:block;padding:1rem 3.25rem 1rem 0;font:700 1.15rem/1.2 var(--title-font);letter-spacing:-.01em;text-transform:none;color:#000!important;text-shadow:none}
  header.header-mobile #mainmenu>li>a.menu-item.active{box-shadow:none}
  header.header-mobile #mainmenu>li>a.menu-item.active::before{content:"";display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:#92AF4D;margin-right:.6rem;vertical-align:middle}
  header.header-mobile #mainmenu li>span{position:absolute;right:0;top:.55rem;margin:0;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:rgba(146,175,77,.2)!important;cursor:pointer}
  header.header-mobile #mainmenu li>span::before{content:"\f078";font:900 .8rem/1 "Font Awesome 6 Free";color:#000;transition:transform .25s}
  header.header-mobile #mainmenu li>span.active::before{transform:rotate(180deg)}
  header.header-mobile #mainmenu li>ul{padding:0 0 1rem;background:none;border:0;box-shadow:none}
  header.header-mobile #mainmenu li>ul>li{border:0}
  header.header-mobile #mainmenu li>ul>li>a{display:block;padding:.8rem .25rem;font-weight:600;font-size:1rem;color:#000!important;text-shadow:none}
  header.header-mobile #mainmenu li>ul>li>a:hover{background:rgba(146,175,77,.16)!important}
  header.header-mobile #mainmenu .sb-menu{padding:0!important}
  header.header-mobile #mainmenu .yd-mega__foot{border-top:0;padding:.25rem 0 0;margin:0}
  header.header-mobile #mainmenu .yd-mega__foot span{display:none}
  .yd-menu-cta{display:grid;gap:.9rem;padding:1.5rem 0 0;border:0!important}
  .yd-menu-cta .btn-main{width:100%;justify-content:center;padding:1rem 1.5rem}
  .yd-menu-line{display:flex;align-items:center;gap:.75rem;font-weight:650;color:#000;padding:.35rem 0}
  .yd-menu-line i{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:rgba(146,175,77,.2);border:2px solid #92AF4D;font-size:.85rem;color:#000}
}
@media (min-width:1201px){.yd-menu-cta{display:none}}

/* ================= brand mark, legal pages ================= */
.yd-icon--mark{background:#fff;border-color:#92AF4D;padding:.55rem}
.yd-icon--mark img{width:100%;height:100%;object-fit:contain}
.yd-legal-meta{display:inline-flex;align-items:center;font-size:.9rem;font-weight:600;color:rgba(0,0,0,.65);margin-bottom:1.5rem}
.yd-prose ul+h2,.yd-prose p+h2{margin-top:2.2em}
.yd-prose>.yd-legal-meta+h2{margin-top:.5em}
.yd-note a{color:#000;text-decoration:underline;text-decoration-color:#92AF4D;text-underline-offset:3px}
@media (max-width:1200px){
  header.header-mobile #mainmenu li>ul{padding:0!important}
  header.header-mobile #mainmenu li>ul .sb-menu{padding:.25rem 0 .75rem!important}
  header.header-mobile #mainmenu li.yd-menu-cta>a.yd-menu-line{display:flex!important;flex-direction:row;align-items:center;justify-content:flex-start;gap:.75rem;text-align:left;text-transform:none;width:auto;padding:.35rem 0!important;font:650 1rem/1.3 var(--body-font);color:#000!important;letter-spacing:0}
  header.header-mobile #mainmenu li.yd-menu-cta>a.btn-main{display:flex!important;justify-content:center;text-transform:uppercase;padding:1rem 1.5rem!important;color:#fff!important}
}

.yd-menu-cta{display:none}
header.header-mobile .yd-menu-cta{display:grid!important}

/* ================= desktop header (1200px and up) =================
   One row: logo, menu, call to action, all centred on the same line. Scrolling swaps the top bar for a compact solid bar. */
@media (min-width:1201px){
  header.transparent{transition:background .3s,box-shadow .3s}
  header .de-flex{align-items:center;min-height:84px;gap:2rem}
  header .de-flex>.de-flex-col{align-items:center}
  header .de-flex>.header-col-mid{flex:1 1 auto;justify-content:center}
  header #logo{max-width:none;display:flex;align-items:center}
  header #logo a{display:flex;align-items:center}
  header #logo img{height:56px;width:auto}
  header #logo .logo-mobile{display:none}
  header #mainmenu{display:flex;align-items:center;gap:.25rem;margin:0}
  header #mainmenu>li{display:flex;align-items:center;margin:0}
  header #mainmenu>li>a.menu-item{display:flex;align-items:center;height:84px;padding:0 .9rem;font-size:.82rem;letter-spacing:.06em;white-space:nowrap}
  header #mainmenu>li>a.menu-item::after{bottom:22px}
  header .menu_side_area{display:flex;align-items:center;margin:0}
  header .menu_side_area .btn-main{white-space:nowrap;padding:.8rem 1.5rem;margin:0}
  header #menu-btn{display:none}
  /* sticky state */
  header.smaller{box-shadow:0 8px 28px rgba(0,0,0,.16)}
  header.smaller .de-flex{min-height:68px}
  header.smaller #logo img{height:44px}
  header.smaller #mainmenu>li>a.menu-item{height:68px}
  header.smaller #mainmenu>li>a.menu-item::after{bottom:14px}
  header.smaller #topbar{margin-top:-46px}
  header.smaller .menu_side_area .btn-main{padding:.65rem 1.3rem}
  /* the mega panel is fixed to the viewport: pin it right under the header bar (130px, or 68px once sticky) */
  header #mainmenu>li>ul.mega{top:130px}
  header.smaller #mainmenu>li>ul.mega{top:68px}
  header #mainmenu>li{position:relative}
  header #mainmenu>li>ul:not(.mega){top:100%;left:0;margin-top:0}
  header #mainmenu>li>ul.mega{position:fixed;left:0;right:0}
}
@media (min-width:1201px) and (max-width:1359.98px){header .de-flex{gap:1rem}header #mainmenu>li>a.menu-item{padding:0 .65rem;font-size:.78rem}}
@media (min-width:1201px){
  #topbar{height:46px;display:flex;align-items:center;overflow:hidden}
  #topbar>.container{width:100%}
  #topbar .topbar-widget a{white-space:nowrap}
  header .sm-pt10{padding-top:0}
  header>.container{padding-top:0;padding-bottom:0}
}
header #mainmenu>li.yd-menu-cta{display:none!important}
header.header-mobile #mainmenu>li.yd-menu-cta{display:grid!important}

/* ---- Arabic (RTL): Almarai for Arabic glyphs only, Latin keeps the brand fonts ---- */
html[lang="ar-AE"] body,html[lang="ar-AE"] h1,html[lang="ar-AE"] h2,html[lang="ar-AE"] h3,html[lang="ar-AE"] h4,html[lang="ar-AE"] h5,html[lang="ar-AE"] h6,html[lang="ar-AE"] .btn-main,html[lang="ar-AE"] #mainmenu a,html[lang="ar-AE"] input,html[lang="ar-AE"] select,html[lang="ar-AE"] textarea,html[lang="ar-AE"] button{font-family:"Almarai","Plus Jakarta Sans",sans-serif}
html[lang="ar-AE"] h1,html[lang="ar-AE"] h2,html[lang="ar-AE"] h3,html[lang="ar-AE"] h4{letter-spacing:0;line-height:1.35}
html[lang="ar-AE"] body{line-height:1.8}
.yd-lang{display:inline-flex;align-items:center;font-weight:700;font-size:14px;margin-inline-end:14px;color:inherit}
.yd-lang:hover{color:var(--yd-green,#92AF4D)}
.yd-menu-lang{justify-content:center}
[dir=rtl] .fa-arrow-right,[dir=rtl] .fa-arrow-left,[dir=rtl] .fa-chevron-right,[dir=rtl] .fa-chevron-left,[dir=rtl] .fa-angle-right,[dir=rtl] .fa-angle-left,[dir=rtl] .fa-arrow-up-right-from-square{transform:scaleX(-1)}
[dir=rtl] .lb-p i,[dir=rtl] .lb-n i{transform:none}
[dir=rtl] a[href^="tel:"],[dir=rtl] a[href^="mailto:"]{direction:ltr;unicode-bidi:isolate}
[dir=rtl] .yd-menu-line:not(.yd-menu-lang){flex-direction:row-reverse;justify-content:flex-start}
[dir=rtl] .text-start{text-align:right!important}
