/* ===== Office4Garden global theming (native Elementor widgets) ===== */
:root{
--o4g-cream:#F7EFE2;--o4g-ceramic:#EFE4D2;--o4g-white:#FFFFFF;--o4g-canopy:#1F4D3D;
--o4g-accent:#2E6E52;--o4g-house:#152E25;--o4g-mist:#DCE8DF;--o4g-terracotta:#C1592B;
--o4g-ink:rgba(20,20,15,.87);--o4g-ink-soft:rgba(20,20,15,.6);--o4g-border:#E3D8C4;
--o4g-white-soft:rgba(255,255,255,.72);--o4g-white-10:rgba(255,255,255,.10);--o4g-white-24:rgba(255,255,255,.24);--o4g-white-40:rgba(255,255,255,.40);
}
body{background:var(--o4g-cream);font-family:'Manrope',sans-serif;color:var(--o4g-ink);}
a{color:var(--o4g-accent);}
.elementor-button,.xpro-elementor-button{border-radius:999px !important;font-weight:700 !important;}

/* ---- Eyebrow pill ---- */
.o4g-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--o4g-canopy);text-transform:uppercase;letter-spacing:.08em;background:var(--o4g-mist);padding:7px 16px 7px 11px;border-radius:999px;line-height:1;}
.o4g-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--o4g-terracotta);flex-shrink:0;}
.o4g-eyebrow--inverted{background:var(--o4g-white-10);color:#fff;}
.o4g-eyebrow .elementor-heading-title{color:inherit;font:inherit;letter-spacing:inherit;}

/* ---- Hero ---- */
.o4g-hero{position:relative;overflow:visible;}
.o4g-hero-dots{position:absolute;top:16px;right:16px;width:150px;height:150px;pointer-events:none;z-index:0;
  background-image:radial-gradient(circle, var(--o4g-canopy) 1.6px, transparent 1.6px);background-size:20px 20px;opacity:.14;}
.o4g-hero-media{position:relative;background:var(--o4g-mist);border-radius:42% 58% 65% 35% / 45% 40% 60% 55%;padding:28px;}
.o4g-hero-media .elementor-widget-image img{border-radius:16px;box-shadow:0 18px 40px rgba(20,20,15,.14);position:relative;z-index:1;display:block;width:100%;}
.o4g-badge{background:var(--o4g-white);border-radius:16px;box-shadow:0 10px 30px rgba(20,20,15,.12);padding:14px 20px;position:absolute;left:-18px;bottom:-18px;z-index:3;}
.o4g-badge .o4g-badge-num{color:var(--o4g-canopy);font-weight:800;font-size:19px;line-height:1;}
.o4g-badge .o4g-badge-label{color:var(--o4g-ink-soft);font-size:13px;}
@media(max-width:960px){.o4g-hero-dots{display:none;}.o4g-badge{left:8px;bottom:8px;}}

/* ---- Section head (eyebrow above heading) ---- */
.o4g-eyebrow-center{justify-content:center;}

/* ---- Trust strip: dividers between items ---- */
.o4g-trust > .e-con-inner > .elementor-element,
.o4g-trust .o4g-trust-item{position:relative;}
.o4g-trust-item{border-right:1px solid var(--o4g-border);}
.o4g-trust-item:last-child{border-right:none;}
@media(max-width:767px){.o4g-trust-item{border-right:none;}}

/* ---- Why / feature cards (icon-box) hover ---- */
.o4g-card .elementor-widget-container,.o4g-card{transition:transform .25s ease,box-shadow .25s ease;}
.o4g-card:hover{transform:translateY(-6px);}

/* ---- Process band steps ---- */
.o4g-step{border-top:2px solid var(--o4g-white-24);padding-top:26px;position:relative;}
.o4g-step::before{content:'';position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:var(--o4g-terracotta);box-shadow:0 0 0 4px var(--o4g-house);}
.o4g-step .o4g-step-n .elementor-heading-title{color:var(--o4g-white-40)!important;font-weight:800;line-height:1;}
.o4g-blob-deco{position:absolute;bottom:-60px;left:-60px;width:240px;height:240px;background:var(--o4g-white-10);border-radius:42% 58% 65% 35% / 45% 40% 60% 55%;pointer-events:none;z-index:0;}

/* ---- Testimonials (serif italic, quote mark) ---- */
.o4g-testi{position:relative;overflow:hidden;border-radius:20px;padding:36px;}
.o4g-testi::before{content:'\201C';position:absolute;top:-26px;left:20px;font-family:'Lora',Georgia,serif;font-size:140px;line-height:1;opacity:.14;pointer-events:none;}
.o4g-testi--dark{background:var(--o4g-canopy);}
.o4g-testi--dark::before{color:#fff;}
.o4g-testi--light{background:var(--o4g-white);box-shadow:0 12px 32px rgba(20,20,15,.08);}
.o4g-testi--light::before{color:var(--o4g-canopy);}
.o4g-testi .o4g-testi-quote .elementor-widget-container{font-family:'Lora',Georgia,serif;font-style:italic;font-size:22px;line-height:1.5;position:relative;z-index:1;}
.o4g-testi .o4g-testi-attr .elementor-widget-container{position:relative;z-index:1;font-weight:700;}

/* ---- Gallery cards ---- */
.o4g-gallery-card{transition:transform .25s ease;}
.o4g-gallery-card:hover{transform:translateY(-6px);}
.o4g-gallery-card .elementor-widget-image img{border-radius:16px;box-shadow:0 12px 32px rgba(20,20,15,.08);}

/* ---- Borough / link cards ---- */
.o4g-borough{transition:transform .25s ease,box-shadow .25s ease;}
.o4g-borough:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(20,20,15,.12);}

/* ---- FAQ accordion polish ---- */
.o4g-accordion .elementor-accordion-item{border:none;border-bottom:1px solid var(--o4g-border);background:transparent;}
.o4g-accordion .elementor-tab-title{font-weight:600;padding:20px 4px;}
.o4g-accordion .elementor-tab-content{color:var(--o4g-ink-soft);padding:0 4px 20px;background:transparent;}

/* ---- Mobile action bar ---- */
.xpro-mobile-action-bar{position:fixed;left:0;right:0;bottom:0;display:none;z-index:999;}
@media(max-width:767px){.xpro-mobile-action-bar{display:flex;}}
