/*
Theme Name: WEE — We Envision Everything
Theme URI: https://wee.gy
Author: We Envision Everything
Author URI: https://wee.gy
Description: A bespoke luxury theme for We Envision Everything (wee.gy) — procurement & logistics concierge in Georgetown, Guyana. Deep-green and gold branding matched to the WEE CRM, with built-in Register / Place an Order / Become a Supplier calls-to-action linking to crm.wee.gy. Full-width marketing pages for Home, About, Services, Contact and FAQs.
Version: 1.7.5
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wee-luxury
Tags: business, luxury, custom-logo, custom-menu, featured-images, full-width-template, threaded-comments
*/

/* ============================================================
   WEE — Design System
   Brand palette (from WEE CRM link brief):
     deep green  #193A23   gold #C4A244 / light #DBB251
     muted       #6E6656   ink  #161616   cream #F5F1E5
   ============================================================ */

:root{
  --green:#193A23;
  --green-700:#12301c;
  --green-900:#0d2114;
  --gold:#DBB251;          /* Muted Gold — official brand */
  --gold-light:#E7C877;
  --gold-soft:#efe2c1;
  --oats:#E6DAC8;          /* Creamed Oats — official brand */
  --muted:#6E6656;
  --ink:#161616;
  --cream:#F7F3EA;
  --cream-2:#F0E9D9;
  --paper:#ffffff;
  --line:rgba(25,58,35,.14);
  --shadow:0 18px 50px -20px rgba(13,33,20,.45);
  --shadow-soft:0 10px 30px -18px rgba(13,33,20,.35);
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Montserrat","Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --wrap:1180px;
  --radius:14px;
  --radius-lg:22px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  font-weight:400;
  color:var(--ink);
  background:var(--cream);
  line-height:1.7;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--green);text-decoration:none;transition:color .2s ease,opacity .2s ease}
a:hover{color:var(--gold)}

h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--green);line-height:1.12;margin:0 0 .5em}
h1{font-size:clamp(2.6rem,6vw,4.6rem);letter-spacing:-.5px}
h2{font-size:clamp(2rem,4vw,3rem)}
h3{font-size:clamp(1.4rem,2.4vw,1.9rem)}
p{margin:0 0 1.1em}
.eyebrow{
  font-family:var(--sans);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.28em;
  font-size:.72rem;
  color:var(--gold);
  margin:0 0 1rem;
}
.eyebrow--light{color:var(--gold-light)}
.lede{font-size:1.2rem;color:var(--muted);max-width:60ch}

/* ---------- Layout ---------- */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.section{padding:clamp(64px,9vw,120px) 0}
.section--tight{padding:clamp(48px,6vw,80px) 0}
.section--green{background:var(--green);color:var(--cream)}
.section--green h1,.section--green h2,.section--green h3{color:#fff}
.section--cream2{background:var(--cream-2)}
.center{text-align:center}
.center .lede{margin-left:auto;margin-right:auto}
.section-head{max-width:720px;margin:0 auto clamp(40px,5vw,64px)}
.divider{width:64px;height:2px;background:var(--gold);border:0;margin:20px 0}
.center .divider{margin-left:auto;margin-right:auto}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55em;
  font-family:var(--sans);font-weight:500;font-size:.95rem;letter-spacing:.02em;
  padding:.95em 1.9em;border-radius:999px;border:1.5px solid transparent;
  cursor:pointer;transition:all .22s ease;white-space:nowrap;
}
.btn--gold{background:var(--gold);color:var(--green-900);border-color:var(--gold)}
.btn--gold:hover{background:var(--gold-light);border-color:var(--gold-light);color:var(--green-900);transform:translateY(-2px)}
.btn--green{background:var(--green);color:#fff;border-color:var(--green)}
.btn--green:hover{background:var(--green-700);color:#fff;transform:translateY(-2px)}
.btn--outline{background:transparent;color:var(--green);border-color:var(--green)}
.btn--outline:hover{background:var(--green);color:#fff}
.btn--ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn--ghost-light:hover{background:#fff;color:var(--green);border-color:#fff}
.btn--lg{padding:1.1em 2.4em;font-size:1.02rem}
.btn-row{display:flex;flex-wrap:wrap;gap:14px}
.center .btn-row{justify-content:center}

/* ============================================================
   Header / Navigation
   ============================================================ */
.site-header{position:sticky;top:0;z-index:100;background:var(--green);border-bottom:1px solid rgba(219,178,81,.35);box-shadow:0 4px 24px rgba(13,33,20,.28)}
.site-header .wrap{max-width:1340px}
.nav{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:10px 0}
.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}
.brand__mono{height:100px;width:auto;display:block}
.brand__logo{height:152px;width:auto;display:block}   /* wordmark ~1.5× monogram, matching the live site */
@media (max-width:1340px){.brand__mono{height:84px}.brand__logo{height:128px}}
@media (max-width:1180px){.brand__mono{height:74px}.brand__logo{height:112px}}
@media (max-width:520px){.brand__mono{height:52px}.brand__logo{height:80px}}
@media (max-width:400px){.brand__mono{height:56px}.brand__logo{display:none}}

.nav-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.nav-social{display:flex;gap:10px}
.nav-social a{width:30px;height:30px;border-radius:50%;border:1px solid rgba(219,178,81,.5);display:flex;align-items:center;justify-content:center;color:var(--gold-light)}
.nav-social a:hover{background:var(--gold);color:var(--green-900);border-color:var(--gold)}
.nav-social svg{width:14px;height:14px}
.nav-bottom{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:flex-end}

.nav-menu{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:flex-end}
.nav-menu a{font-family:var(--sans);font-weight:500;font-size:.96rem;color:var(--cream);position:relative;padding:6px 0;letter-spacing:.01em;white-space:nowrap}
.nav-menu a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--gold);transition:width .25s ease}
.nav-menu a:hover{color:#fff}
.nav-menu a:hover::after{width:100%}
.nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}

.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;color:var(--gold-light)}
.nav-toggle svg{width:30px;height:30px}

/* Mobile nav */
@media (max-width:1120px){
  .nav-toggle{display:inline-flex}
  .nav-right{
    position:fixed;inset:0 0 0 auto;width:min(360px,88vw);
    background:var(--green-900);color:#fff;padding:96px 32px 40px;
    transform:translateX(100%);transition:transform .3s ease;
    align-items:stretch;gap:26px;box-shadow:var(--shadow);z-index:99;overflow-y:auto;
  }
  .nav-right.is-open{transform:translateX(0)}
  .nav-social{justify-content:flex-start}
  .nav-bottom{flex-direction:column;align-items:stretch;gap:24px}
  .nav-menu{flex-direction:column;align-items:flex-start;gap:20px}
  .nav-menu a{font-size:1.15rem}
  .nav-actions{flex-direction:column;align-items:stretch;width:100%;gap:12px}
  .nav-actions .btn{width:100%}
  body.nav-open{overflow:hidden}
  .nav-backdrop{position:fixed;inset:0;background:rgba(13,33,20,.5);opacity:0;visibility:hidden;transition:.3s;z-index:98}
  .nav-backdrop.is-open{opacity:1;visibility:visible}
}

/* ============================================================
   Hero
   ============================================================ */
.hero{position:relative;background:var(--green) center/cover no-repeat;color:var(--cream);overflow:hidden}
.hero::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(120deg,rgba(13,33,20,.92) 0%,rgba(13,33,20,.80) 45%,rgba(25,58,35,.62) 100%),
    radial-gradient(1200px 600px at 85% -10%,rgba(196,162,68,.20),transparent 60%),
    radial-gradient(900px 500px at 0% 110%,rgba(196,162,68,.10),transparent 60%);
  pointer-events:none;
}
.hero__inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding:clamp(70px,10vw,130px) 0}
.hero h1{color:#fff;margin-bottom:.35em}
.hero .lede{color:var(--gold-soft);font-size:1.28rem;max-width:52ch}
.hero__cta{margin-top:34px}
.hero__panel{
  background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(219,178,81,.35);border-radius:var(--radius-lg);
  padding:38px;backdrop-filter:blur(4px);
}
.hero__panel h3{color:var(--gold-light)}
.hero__panel ol{margin:0;padding-left:1.1em;color:var(--cream)}
.hero__panel li{margin:0 0 14px;padding-left:6px}
.hero__panel li::marker{color:var(--gold);font-family:var(--serif);font-weight:700}
@media (max-width:900px){.hero__inner{grid-template-columns:1fr;gap:40px}}

/* Trust strip */
.trust{background:var(--green-900);color:var(--gold-soft)}
.trust .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px 40px;padding:22px 24px}
.trust span{font-size:.86rem;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.trust span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}

/* ============================================================
   Cards / grids
   ============================================================ */
.grid{display:grid;gap:26px}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}

.card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:34px 30px;box-shadow:var(--shadow-soft);transition:transform .25s ease,box-shadow .25s ease;
  height:100%;
}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card__num{font-family:var(--serif);font-size:2.4rem;color:var(--gold);line-height:1;margin-bottom:14px;font-weight:600}
.card__icon{width:52px;height:52px;margin-bottom:18px;color:var(--green)}
.card h3{margin-bottom:.4em}
.card p{color:var(--muted);margin-bottom:0}
.card__link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-weight:500;color:var(--green)}
.card__link::after{content:"→";transition:transform .2s ease}
.card__link:hover::after{transform:translateX(4px)}

/* Value pills */
.values{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:8px}
.pill{
  border:1px solid var(--gold);color:var(--green);border-radius:999px;
  padding:.6em 1.4em;font-size:.9rem;letter-spacing:.14em;text-transform:uppercase;background:var(--cream-2);
}
.section--green .pill{border-color:var(--gold-light);color:var(--gold-light);background:transparent}

/* ============================================================
   Service detail blocks (Services page)
   ============================================================ */
.service{
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;
  padding:clamp(44px,6vw,72px) 0;border-bottom:1px solid var(--line);
}
.service:last-child{border-bottom:0}
.service--flip .service__media{order:2}
@media (max-width:840px){.service,.service--flip .service__media{grid-template-columns:1fr;order:0}}
.service__tag{font-family:var(--serif);font-size:1rem;color:var(--gold);font-weight:600}
.service ul.included{list-style:none;padding:0;margin:1.2em 0 0;display:grid;gap:10px}
.service ul.included li{position:relative;padding-left:30px;color:var(--muted)}
.service ul.included li::before{content:"✓";position:absolute;left:0;top:0;color:var(--gold);font-weight:700}
.steps{counter-reset:step;list-style:none;padding:0;margin:0;display:grid;gap:16px}
.steps li{position:relative;padding-left:52px;color:var(--muted)}
.steps li::before{
  counter-increment:step;content:counter(step);
  position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;
  background:var(--green);color:var(--gold-light);font-family:var(--serif);font-weight:600;
  display:flex;align-items:center;justify-content:center;font-size:1rem;
}
.service__media{background:var(--green);border-radius:var(--radius-lg);padding:38px;color:var(--cream);position:relative;overflow:hidden}
.service__media::after{content:"";position:absolute;right:-40px;bottom:-40px;width:160px;height:160px;border:1px solid rgba(219,178,81,.3);border-radius:50%}
.service__media h4{font-family:var(--serif);color:var(--gold-light);font-size:1.3rem;margin:0 0 18px}
.service__media .btn{margin-top:18px}

/* ============================================================
   How it works (steps row)
   ============================================================ */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:flow}
@media (max-width:900px){.flow{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.flow{grid-template-columns:1fr}}
.flow__item{text-align:center}
.flow__badge{
  width:64px;height:64px;margin:0 auto 18px;border-radius:50%;
  border:1.5px solid var(--gold);color:var(--green);
  display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.6rem;font-weight:600;
}
.section--green .flow__badge{border-color:var(--gold-light);color:var(--gold-light)}

/* ============================================================
   CTA band
   ============================================================ */
.cta-band{background:linear-gradient(135deg,var(--green),var(--green-900));color:#fff;text-align:center;border-radius:var(--radius-lg);padding:clamp(48px,7vw,80px) 24px;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 300px at 50% -20%,rgba(219,178,81,.25),transparent 70%)}
.cta-band > *{position:relative}
.cta-band h2{color:#fff}
.cta-band .lede{color:var(--gold-soft);margin:0 auto 30px}

/* ============================================================
   FAQ (accordion)
   ============================================================ */
.faq{max-width:840px;margin:0 auto;display:grid;gap:14px}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft)}
.faq summary{
  list-style:none;cursor:pointer;padding:22px 26px;font-family:var(--serif);font-size:1.2rem;color:var(--green);
  font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:16px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.6rem;color:var(--gold);transition:transform .25s ease;line-height:1}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 26px 24px;color:var(--muted)}

/* ============================================================
   Contact
   ============================================================ */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
@media (max-width:840px){.contact-grid{grid-template-columns:1fr}}
.contact-list{list-style:none;padding:0;margin:0;display:grid;gap:26px}
.contact-list li{display:flex;gap:16px;align-items:flex-start}
.contact-list .ci{flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:var(--green);color:var(--gold-light);display:flex;align-items:center;justify-content:center}
.contact-list .ci svg{width:22px;height:22px}
.contact-list h4{margin:0 0 3px;font-size:1.15rem}
.contact-list a,.contact-list span{color:var(--muted)}
.contact-list a:hover{color:var(--gold)}
.form-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:36px;box-shadow:var(--shadow-soft)}
.form-row{display:grid;gap:6px;margin-bottom:18px}
.form-row label{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500}
.form-row input,.form-row textarea,.form-row select{
  font-family:var(--sans);font-size:1rem;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:var(--cream-2);color:var(--ink);width:100%;
}
.form-row input:focus,.form-row textarea:focus,.form-row select:focus{outline:none;border-color:var(--gold);background:#fff}
.form-row textarea{min-height:130px;resize:vertical}

/* ============================================================
   Footer
   ============================================================ */
.site-footer{background:var(--green-900);color:var(--gold-soft);padding:72px 0 30px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;margin-bottom:48px}
@media (max-width:840px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}
.footer-grid h4{color:#fff;font-family:var(--serif);font-size:1.2rem;margin:0 0 18px}
.footer-brand .brand__name{color:#fff}
.footer-brand p{color:var(--gold-soft);opacity:.85;font-size:.95rem}
.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.footer-list a{color:var(--gold-soft);opacity:.9;font-size:.96rem}
.footer-list a:hover{color:var(--gold-light);opacity:1}
.footer-cta .btn{width:100%;margin-bottom:12px}
.social{display:flex;gap:12px;margin-top:18px}
.social a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(219,178,81,.4);display:flex;align-items:center;justify-content:center;color:var(--gold-soft)}
.social a:hover{background:var(--gold);color:var(--green-900);border-color:var(--gold)}
.social svg{width:18px;height:18px}
.footer-bottom{border-top:1px solid rgba(219,178,81,.2);padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.85rem;opacity:.8}
.footer-bottom a{color:var(--gold-soft)}

/* ============================================================
   Generic WP page/post content (page.php, index.php, 404)
   ============================================================ */
.entry{max-width:820px;margin:0 auto}
.entry h1{margin-bottom:.3em}
.entry img{border-radius:var(--radius);margin:1.5em 0}
.entry ul,.entry ol{color:var(--muted);padding-left:1.3em}
.entry li{margin-bottom:.5em}
.entry blockquote{border-left:3px solid var(--gold);margin:1.5em 0;padding:.4em 0 .4em 1.4em;color:var(--muted);font-family:var(--serif);font-size:1.3rem}
.page-hero{position:relative;background:var(--green) center/cover no-repeat;color:var(--cream);text-align:center;padding:clamp(84px,10vw,132px) 24px;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,33,20,.90) 0%,rgba(25,58,35,.60) 100%);z-index:0}
.page-hero > *,.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{color:#fff;margin-bottom:.2em}
.page-hero .lede{color:var(--gold-soft);margin:0 auto}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;background:#fff;padding:10px 16px;border-radius:8px;z-index:999}

/* ============================================================
   Brand logo images (real WEE logos)
   ============================================================ */
.brand__logo{height:52px;width:auto;display:block}
@media (max-width:520px){.brand__logo{height:42px}}
.footer-brand .brand__logo{height:82px}

/* ============================================================
   Image frames / figures
   ============================================================ */
.figure{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.figure img{width:100%;height:100%;object-fit:cover;display:block}
.figure--framed{border:1px solid var(--line);padding:10px;background:var(--paper);border-radius:var(--radius-lg)}
.figure--framed img{border-radius:calc(var(--radius-lg) - 8px)}
.figure--gold::after{content:"";position:absolute;inset:14px;border:1px solid rgba(219,178,81,.6);border-radius:calc(var(--radius-lg) - 6px);pointer-events:none}

/* Split feature (image + copy) */
.feature{display:grid;grid-template-columns:0.9fr 1.1fr;gap:clamp(32px,5vw,64px);align-items:center}
.feature--flip .feature__media{order:2}
.feature__media{position:relative}
.feature__media .figure{aspect-ratio:4/5;max-width:460px;margin:0 auto}
.feature__badge{position:absolute;right:-12px;bottom:24px;background:var(--gold);color:var(--green-900);font-family:var(--serif);font-weight:600;padding:14px 22px;border-radius:12px;box-shadow:var(--shadow-soft);font-size:1.05rem;line-height:1.2;max-width:190px}
@media (max-width:840px){.feature{grid-template-columns:1fr;gap:36px}.feature--flip .feature__media{order:0}.feature__media .figure{max-width:380px}}

/* ============================================================
   Team grid
   ============================================================ */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.team--2{grid-template-columns:repeat(2,1fr);max-width:840px;margin:0 auto;gap:36px}
@media (max-width:820px){.team{grid-template-columns:repeat(3,1fr);gap:16px}}
@media (max-width:600px){.team,.team--2{grid-template-columns:1fr;max-width:380px;margin:0 auto}}
.team__card{text-align:center}
.team__photo{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:1/1;box-shadow:var(--shadow-soft);border:1px solid var(--line);margin-bottom:18px}
.team__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.team__card:hover .team__photo img{transform:scale(1.05)}
.team__name{font-family:var(--serif);font-size:1.4rem;color:var(--green);margin:0 0 2px}
.team__role{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0}

/* ============================================================
   Service image (Services page)
   ============================================================ */
.service__photo{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}
.service__photo img{width:100%;height:100%;object-fit:cover;display:block}
.service--imggrid{grid-template-columns:1fr 1fr}
@media (max-width:840px){.service--imggrid{grid-template-columns:1fr}}
.service--flip .service__photo{order:2}
@media (max-width:840px){.service--flip .service__photo{order:0}}
.svc-process{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}
.svc-process summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--green);letter-spacing:.02em;padding:6px 0}
.svc-process summary::-webkit-details-marker{display:none}
.svc-process summary::after{content:"+";color:var(--gold);font-size:1.4rem;line-height:1}
.svc-process[open] summary::after{content:"\2013"}
.svc-process .steps{margin-top:18px}

/* ============================================================
   Carousel (Services gallery)
   ============================================================ */
.carousel{position:relative;max-width:960px;margin:0 auto}
.carousel__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;scroll-behavior:smooth;padding:6px;-ms-overflow-style:none;scrollbar-width:none}
.carousel__track::-webkit-scrollbar{display:none}
.carousel__slide{flex:0 0 100%;scroll-snap-align:center;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.carousel__slide img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.carousel__btn{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:0;background:var(--gold);color:var(--green-900);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-soft);transition:background .2s ease,transform .2s ease;z-index:2}
.carousel__btn:hover{background:var(--gold-light);transform:translateY(-50%) scale(1.06)}
.carousel__btn svg{width:22px;height:22px}
.carousel__btn--prev{left:-14px}
.carousel__btn--next{right:-14px}
.carousel__dots{display:flex;gap:10px;justify-content:center;margin-top:22px}
.carousel__dot{width:10px;height:10px;border-radius:50%;border:0;background:var(--line);cursor:pointer;padding:0;transition:background .2s ease,transform .2s ease}
.carousel__dot.is-active{background:var(--gold);transform:scale(1.25)}
@media (max-width:720px){.carousel__btn--prev{left:2px}.carousel__btn--next{right:2px}}

/* WooCommerce baseline (store not featured, but keep it usable) */
.woocommerce a.button,.woocommerce button.button,.woocommerce .button{background:var(--green)!important;color:#fff!important;border-radius:999px!important}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--green-700)!important}

/* ---------- Header/Footer side gutters (Pagelayer strips .wrap padding) ---------- */
header.pagelayer-header .wrap,
.site-header .wrap,
footer.pagelayer-footer .wrap,
.site-footer .wrap{padding-left:32px !important;padding-right:32px !important;box-sizing:border-box !important}
@media (max-width:600px){
  header.pagelayer-header .wrap,
  .site-header .wrap,
  footer.pagelayer-footer .wrap,
  .site-footer .wrap{padding-left:18px !important;padding-right:18px !important}
}

/* ---------- Branded buttons — win over plugin .btn resets (Pagelayer/BoldGrid) ---------- */
.btn--gold{background:var(--gold) !important;color:var(--green-900) !important;border-color:var(--gold) !important}
.btn--gold:hover{background:var(--gold-light) !important;color:var(--green-900) !important;border-color:var(--gold-light) !important}
.btn--ghost-light{background:transparent !important;color:#fff !important;border-color:rgba(255,255,255,.55) !important}
.btn--ghost-light:hover{background:#fff !important;color:var(--green) !important;border-color:#fff !important}
.btn--outline{background:transparent !important;color:var(--green) !important;border-color:var(--green) !important}
.btn--outline:hover{background:var(--green) !important;color:#fff !important;border-color:var(--green) !important}
.btn--green{background:var(--green) !important;color:#fff !important;border-color:var(--green) !important}
.btn--green:hover{background:var(--green-700) !important;color:#fff !important;border-color:var(--green-700) !important}

/* ---------- Body copy readability: 1.5 line spacing (left-aligned) ---------- */
p{line-height:1.5}

/* ---------- Taller buttons (more presence) ---------- */
.btn{padding:1.15em 1.9em}
.btn--lg{padding:1.35em 2.4em}

/* ---------- Button layout & sizing (win over plugin .btn reset) ---------- */
.btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;line-height:1.15 !important;text-align:center !important;vertical-align:middle;padding-top:1.05em !important;padding-bottom:1.05em !important;font-size:.95rem !important}
.btn--lg{padding-top:1.15em !important;padding-bottom:1.15em !important;font-size:1.02rem !important}

/* ---------- Gold accent text larger; eased oversized headings ---------- */
.eyebrow{font-size:.9rem !important;letter-spacing:.16em !important;font-weight:600 !important}
h1{font-size:clamp(2.4rem,5vw,4rem) !important}
h2{font-size:clamp(1.8rem,3.6vw,2.6rem) !important}

/* ---------- Button borders: force width+style so outlines show (plugin sets border:0); gold outline ---------- */
.btn--gold{border:1.5px solid var(--gold) !important}
.btn--gold:hover{border:1.5px solid var(--gold-light) !important}
.btn--ghost-light{border:1.5px solid var(--gold) !important}
.btn--ghost-light:hover{border:1.5px solid var(--gold) !important}
.btn--outline{border:1.5px solid var(--green) !important}
.btn--outline:hover{border:1.5px solid var(--green) !important}
.btn--green{border:1.5px solid var(--green) !important}
.btn--green:hover{border:1.5px solid var(--green-700) !important}

/* ---------- Round 2: taller buttons, hero padding, tighter spacing, step gap, mobile pills ---------- */
.btn{padding-top:1.3em !important;padding-bottom:1.3em !important}
.btn--lg{padding-top:1.6em !important;padding-bottom:1.6em !important}
.hero__inner{padding-left:24px !important;padding-right:24px !important;padding-top:clamp(52px,7vw,96px) !important;padding-bottom:clamp(52px,7vw,96px) !important}
.section{padding-top:clamp(44px,6vw,80px) !important;padding-bottom:clamp(44px,6vw,80px) !important}
.section--tight{padding-top:clamp(32px,4.5vw,58px) !important;padding-bottom:clamp(32px,4.5vw,58px) !important}
.section-head{margin-bottom:clamp(28px,4vw,46px) !important}
.steps{gap:26px !important}
@media (max-width:600px){.values{flex-direction:column;align-items:center}}

/* ---------- Smaller body & lede text on tablet and mobile ---------- */
@media (max-width:840px){
  .hero .lede{font-size:1.08rem !important}
  .lede{font-size:1.05rem !important}
}
@media (max-width:600px){
  body{font-size:16px}
  .hero .lede,.lede{font-size:1rem !important}
}

/* ---------- Bigger gold service labels (Services page) ---------- */
.service__tag{font-size:1.3rem !important}
@media (max-width:600px){.service__tag{font-size:1.15rem !important}}

/* ---------- Restore theme body colors (Pagelayer forces body white-on-white, hiding text on plain pages) ---------- */
body.pagelayer-body{color:var(--ink) !important;background:var(--cream) !important}
.entry,.entry p,.entry li{color:var(--ink)}

/* ---------- Unify body font to Montserrat (plugin forces Poppins on inherited text); headings & gold service labels stay serif ---------- */
body.pagelayer-body,
body.pagelayer-body p:not(.service__tag),
body.pagelayer-body li,
body.pagelayer-body .lede,
body.pagelayer-body .btn,
body.pagelayer-body input,
body.pagelayer-body textarea,
body.pagelayer-body select{font-family:var(--sans) !important}

/* ---------- Hero-panel "Start now" outline button (green-on-green override hid it; restore gold on dark panel) ---------- */
.hero__panel .btn--outline{background:transparent !important;color:var(--gold-light) !important;border:1.5px solid var(--gold-light) !important}
.hero__panel .btn--outline:hover{background:var(--gold) !important;color:var(--green-900) !important;border:1.5px solid var(--gold) !important}
