.elementor-1062 .elementor-element.elementor-element-4d331850{padding:0px 0px 0px 0px;}.elementor-1062 .elementor-element.elementor-element-639443d2 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS */:root{
  --g-dark:#456C24;--g-brand:#5D8237;--g-light:#88A95A;--g-accent:#A6C56B;--g-bg:#E8F1D8;
  --g-deep:#33501B;
  --o-primary:#E57C06;--o-cta:#F08A12;--o-gold:#D89B35;--o-lightgold:#F2C96D;
  --ink:#2B2B2B;--gray:#6B6B6B;--l-gray:#F5F5F5;--white:#FFFFFF;--line:#E7E2D6;
  --ease:cubic-bezier(.22,.61,.27,1);
  --nav-h:90px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Hanken Grotesk',sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;}

/* ── SCROLL PROGRESS ── */
#se-prog{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--g-brand),var(--o-primary));z-index:10001;transition:width .1s linear;pointer-events:none;}

/* ── NAV SHELL — 3-column CSS grid ── */
.se-nav{
  position:fixed;top:0;left:0;right:0;z-index:9999;
  display:grid;
  grid-template-columns:1fr auto 1fr;  /* LEFT | CENTER | RIGHT */
  align-items:center;
  padding:0 5%;
  height:var(--nav-h);
  /* give the bar a visible tinted background so it reads well before scroll */
  background:rgba(248,252,242,.72);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  transition:background .4s var(--ease),box-shadow .4s var(--ease),height .4s var(--ease);
}
.se-nav.scrolled{
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 4px 32px rgba(43,43,43,.12);
  --nav-h:72px;
}

/* ── COL 1: LOGO (left-aligned) ── */
.se-nav-logo{
  display:flex;
  align-items:center;
  gap:11px;
  text-decoration:none;
  justify-self:start;
}
.se-nav-logo img,
.se-logo-img{
  height:72px;
  width:auto;
  flex-shrink:0;
  transition:height .4s var(--ease);
}
.se-nav.scrolled .se-logo-img{ height:56px; }
.se-logo-svg{
  width:44px;
  height:44px;
  flex-shrink:0;
  transition:all .4s var(--ease);
}
.se-nav.scrolled .se-logo-svg{ width:36px;height:36px; }
.se-brand-name{
  display:flex;
  flex-direction:column;
  line-height:1;
}
.se-brand-name .b1{
  font-family:'Bricolage Grotesque',sans-serif;
  font-size:20px;
  font-weight:800;
  color:var(--g-dark);
  letter-spacing:-.4px;
  transition:font-size .4s;
}
.se-nav.scrolled .se-brand-name .b1{ font-size:17px; }
.se-brand-name .b2{
  font-family:'Fraunces',serif;
  font-style:italic;
  font-size:10.5px;
  font-weight:500;
  color:var(--o-primary);
  margin-top:3px;
  letter-spacing:.1px;
}

/* ── COL 2: MENU (center) ── */
.se-nav-menu{
  display:flex;
  align-items:center;
  gap:32px;
  list-style:none;
  justify-self:center;
}
.se-nav-menu a{
  color:var(--ink);
  text-decoration:none;
  font-size:14.5px;
  font-weight:600;
  white-space:nowrap;
  transition:color .2s;
  position:relative;
  padding-bottom:4px;
}
.se-nav-menu a::after{
  content:'';
  position:absolute;
  left:0;bottom:0;
  width:0;height:2px;
  background:var(--o-primary);
  border-radius:2px;
  transition:width .3s var(--ease);
}
.se-nav-menu a:hover,
.se-nav-menu a.active{ color:var(--o-primary); }
.se-nav-menu a:hover::after,
.se-nav-menu a.active::after{ width:100%; }

/* ── COL 3: CTA (right-aligned) ── */
.se-nav-right{
  display:flex;
  align-items:center;
  gap:14px;
  justify-self:end;
}
.se-btn-cta{
  background:var(--o-cta);
  color:#fff;
  text-decoration:none;
  padding:11px 22px;
  border-radius:40px;
  font-size:13.5px;
  font-weight:700;
  white-space:nowrap;
  transition:all .3s var(--ease);
  box-shadow:0 6px 18px rgba(240,138,18,.3);
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.se-btn-cta:hover{ transform:translateY(-2px);box-shadow:0 12px 28px rgba(240,138,18,.44); }

/* ── HAMBURGER (hidden on desktop) ── */
.se-hamb{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  cursor:pointer;
  background:none;
  border:none;
  padding:6px 4px;
  margin-left:8px;
}
.se-hamb span{
  display:block;
  width:24px;
  height:2px;
  background:var(--g-dark);
  border-radius:2px;
  transition:all .35s var(--ease);
  transform-origin:center;
}
.se-hamb.open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.se-hamb.open span:nth-child(2){ opacity:0;transform:scaleX(0); }
.se-hamb.open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ── SLIDE-OUT DRAWER ── */
.se-drawer{
  position:fixed;
  top:0;right:0;
  width:min(320px,85vw);
  height:100vh;
  background:#fff;
  z-index:10000;
  transform:translateX(100%);
  transition:transform .42s var(--ease);
  display:flex;
  flex-direction:column;
  box-shadow:-12px 0 50px rgba(43,43,43,.18);
  overflow-y:auto;
}
.se-drawer.open{ transform:translateX(0); }
.se-drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 24px;
  border-bottom:1px solid var(--line);
}
.se-drawer-logo{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
}
.se-drawer-logo .b1{
  font-family:'Bricolage Grotesque',sans-serif;
  font-size:18px;
  font-weight:800;
  color:var(--g-dark);
  letter-spacing:-.3px;
}
.se-drawer-logo .b2{
  font-family:'Fraunces',serif;
  font-style:italic;
  font-size:10px;
  font-weight:500;
  color:var(--o-primary);
  margin-top:2px;
}
.se-drawer-close{
  background:none;border:none;cursor:pointer;
  width:36px;height:36px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--gray);
  transition:background .2s;
}
.se-drawer-close:hover{ background:var(--l-gray); }
.se-drawer-nav{
  list-style:none;
  padding:16px 0;
  flex:1;
}
.se-drawer-nav li a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 24px;
  font-size:16px;
  font-weight:600;
  color:var(--ink);
  text-decoration:none;
  border-left:3px solid transparent;
  transition:all .25s;
}
.se-drawer-nav li a:hover,
.se-drawer-nav li a.active{
  color:var(--o-primary);
  background:rgba(229,124,6,.06);
  border-left-color:var(--o-primary);
}
.se-drawer-nav li a .dn-dot{
  width:7px;height:7px;
  border-radius:50%;
  background:var(--g-accent);
  flex-shrink:0;
}
.se-drawer-footer{
  padding:20px 24px;
  border-top:1px solid var(--line);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.se-drawer-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:var(--o-cta);
  color:#fff;
  text-decoration:none;
  padding:15px;
  border-radius:40px;
  font-size:14px;
  font-weight:700;
  box-shadow:0 8px 22px rgba(240,138,18,.32);
  transition:all .3s;
}
.se-drawer-cta:hover{ transform:translateY(-2px);box-shadow:0 14px 30px rgba(240,138,18,.44); }
.se-drawer-phone{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:var(--g-dark);
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  padding:10px;
  border-radius:40px;
  border:1.5px solid var(--line);
  transition:all .25s;
}
.se-drawer-phone:hover{ border-color:var(--g-brand);color:var(--g-brand); }

/* ── OVERLAY ── */
.se-overlay{
  position:fixed;
  inset:0;
  background:rgba(30,40,20,.45);
  z-index:9999;
  opacity:0;
  pointer-events:none;
  transition:opacity .4s var(--ease);
  backdrop-filter:blur(3px);
}
.se-overlay.open{ opacity:1;pointer-events:auto; }

/* ── TABLET (≤1024px): hide center menu, show hamburger right ── */
@media(max-width:1024px){
  .se-nav{
    grid-template-columns:1fr auto;  /* LEFT logo | RIGHT {cta+hamb} */
  }
  .se-nav-menu{ display:none!important; }
  .se-btn-cta{ display:none; }  /* hide desktop CTA, drawer has its own */
  .se-hamb{ display:flex; }
  .se-nav-right{ gap:8px; }
}

/* ── MOBILE (≤640px) ── */
@media(max-width:640px){
  .se-nav{ padding:0 4%; }
  .se-brand-name .b1{ font-size:17px; }
  .se-brand-name .b2{ display:none; }
  .se-logo-svg{ width:36px;height:36px; }
}/* End custom CSS */