/* ==========================================================
   AAA website refresh, Oct 2026
   Night blue #1B2A42 · Cream #F6F3EA · Copper #A66339
   Sage #E7EBE1 · Sand #F1E6DC · White
   Titles: Playfair Display · Text: DM Sans
   ========================================================== */
:root{
  --aaa-night:#1b2a42; --aaa-cream:#f6f3ea; --aaa-copper:#a66339; --aaa-copper-dark:#8c5130;
  --aaa-sage:#e7ebe1; --aaa-sand:#f1e6dc; --aaa-white:#fff; --aaa-muted:#5b6575;
  --aaa-radius:18px; --aaa-shadow:0 10px 30px rgba(27,42,66,.08);
}

/* ---------- Typography ---------- */
body,body p,body li,body input,body textarea,body select,body button,
#top nav ul li a,#slide-out-widget-area,.nectar-button,.wpb_text_column{
  font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body{color:var(--aaa-night);-webkit-font-smoothing:antialiased}
body p,body li{line-height:1.75}
h1,h2,h3,.nectar-split-heading h1,.nectar-split-heading h2,.nectar-split-heading h3{
  font-family:'Playfair Display',Georgia,serif!important;letter-spacing:0!important;text-transform:none!important;
}
h1,.nectar-split-heading h1{font-weight:500!important;line-height:1.12!important}
h2,.nectar-split-heading h2{font-weight:500!important;line-height:1.18!important}
h3{font-weight:500!important}
/* Long texts read better left-aligned */
.wpb_text_column p[style*="justify"]{text-align:left!important}
.wpb_text_column a:not(.nectar-button):not(.aaa-btn):not(.aaa-link):not(.aaa-cta){color:var(--aaa-copper);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.wpb_text_column a:not(.nectar-button):not(.aaa-btn):not(.aaa-link):not(.aaa-cta):hover{color:var(--aaa-copper-dark)}

/* ---------- Reusable pieces ---------- */
.aaa-eyebrow{display:block;font-family:'DM Sans',sans-serif;font-size:12.5px!important;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--aaa-copper)!important;margin:0 0 14px!important;line-height:1.4!important}
.aaa-lead{font-size:18px;color:var(--aaa-muted)}
.aaa-btn{display:inline-block;background:var(--aaa-copper);color:#fff!important;border-radius:999px;padding:15px 30px;font-weight:600;font-size:15px;line-height:1.2;text-decoration:none!important;transition:background .2s,transform .2s;border:0}
.aaa-btn:hover{background:var(--aaa-copper-dark);transform:translateY(-1px)}
.aaa-btn--night{background:var(--aaa-night)}
.aaa-btn--night:hover{background:#0f1a2c}
.aaa-link{display:inline-block;font-weight:600;color:var(--aaa-night)!important;text-decoration:underline!important;text-underline-offset:4px;text-decoration-thickness:1.5px!important}
.aaa-link:hover{color:var(--aaa-copper)!important}
.aaa-link--copper{color:var(--aaa-copper)!important;text-decoration:none!important}
.aaa-link--copper:hover{color:var(--aaa-copper-dark)!important}
.aaa-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:30px}
.aaa-labels{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.aaa-label{display:inline-block;background:var(--aaa-sage);color:var(--aaa-night);font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px;line-height:1.3}
.aaa-label--sand{background:var(--aaa-sand)}

/* ---------- Theme buttons: one calm, rounded style ---------- */
body .nectar-button:not(.see-through):not(.see-through-2):not(.see-through-3){
  background-color:var(--aaa-copper)!important;border-radius:999px!important;box-shadow:none!important;
  font-weight:600!important;letter-spacing:.01em!important;text-transform:none!important;
}
body .nectar-button:not(.see-through):not(.see-through-2):not(.see-through-3):hover{background-color:var(--aaa-copper-dark)!important;box-shadow:none!important}
body .nectar-button.see-through,body .nectar-button.see-through-2,body .nectar-button.see-through-3{border-radius:999px!important;text-transform:none!important;letter-spacing:.01em!important;font-weight:600!important}
body .nectar-button.large{padding:15px 32px!important;font-size:15px!important}

/* ---------- Header ---------- */
#header-outer,#header-outer:not(.transparent){background-color:rgba(246,243,234,.97)!important;box-shadow:none!important;border-bottom:1px solid rgba(27,42,66,.08)}
#header-outer.small-nav,#header-outer.scrolled-down{box-shadow:0 4px 18px rgba(27,42,66,.06)!important}
#top nav>ul>li>a,#header-outer #top nav>ul>li>a{font-size:15px!important;letter-spacing:0!important;font-weight:500!important;color:var(--aaa-night)!important}
#top nav>ul>li>a:hover,#top nav>ul>li.current-menu-item>a{color:var(--aaa-copper)!important}
#header-outer #top nav>ul>li.aaa-nav-pill>a{color:#fff!important}
#header-outer #top nav>ul>li.aaa-nav-pill>a .menu-title-text{background:var(--aaa-night);color:#fff!important;border-radius:999px;padding:9px 20px;transition:background .2s}
#header-outer #top nav>ul>li.aaa-nav-pill>a:hover .menu-title-text{background:var(--aaa-copper)}
#header-outer #top nav>ul>li.aaa-nav-pill>a:after{display:none!important}
#top nav>ul>li>ul.sub-menu,#header-outer nav>ul>li>.sub-menu{border-radius:12px;overflow:hidden;box-shadow:var(--aaa-shadow)!important}

/* ---------- Hero ---------- */
.aaa-hero h1{font-size:clamp(38px,4.6vw,64px)!important;margin-bottom:22px!important;color:var(--aaa-night)}
.aaa-hero .aaa-lead{max-width:540px}
.aaa-hero__media{position:relative;padding-bottom:30px}
.aaa-hero__media img.aaa-hero__img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:26px;max-height:640px}
.aaa-hero__card{position:absolute;left:-28px;bottom:0;max-width:330px;background:#fff;border-radius:18px;padding:18px 22px;box-shadow:var(--aaa-shadow);text-decoration:none!important;color:var(--aaa-night)!important;transition:transform .2s}
.aaa-hero__card:hover{transform:translateY(-3px)}
.aaa-hero__card .aaa-eyebrow{font-size:11px!important;margin-bottom:6px!important}
.aaa-hero__card strong{display:block;font-family:'Playfair Display',Georgia,serif;font-size:21px;font-weight:500;line-height:1.25;margin-bottom:4px}
.aaa-hero__meta{display:block;font-size:14px;color:var(--aaa-muted)}
@media (max-width:999px){.aaa-hero__card{left:16px;right:16px;max-width:none}.aaa-hero__media{margin-top:36px}}

/* ---------- Section heads ---------- */
.aaa-section-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px 30px;margin-bottom:34px}
.aaa-section-head h2{margin:0!important;font-size:clamp(30px,3vw,42px)!important}

/* ---------- Event cards ---------- */
.aaa-events{display:grid;grid-template-columns:repeat(var(--aaa-cols,3),minmax(0,1fr));gap:34px 28px}
@media (max-width:999px){.aaa-events{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.aaa-events{grid-template-columns:1fr}}
.aaa-event__img{display:block;border-radius:var(--aaa-radius);overflow:hidden;background:var(--aaa-sand)}
.aaa-event__img img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease}
.aaa-event:hover .aaa-event__img img{transform:scale(1.04)}
.aaa-event__body{padding:16px 2px 0}
.aaa-event__date{font-size:14px!important;font-weight:600;color:var(--aaa-muted);margin:0 0 4px!important;padding:0!important}
.aaa-event__title{font-size:23px!important;line-height:1.25!important;margin:0 0 10px!important}
.aaa-event__title a{color:var(--aaa-night)!important;text-decoration:none!important}
.aaa-event__title a:hover{color:var(--aaa-copper)!important}

/* ---------- Welcome / quote ---------- */
.aaa-quote{font-family:'Playfair Display',Georgia,serif!important;font-style:italic;font-size:clamp(28px,3vw,40px)!important;line-height:1.25!important;color:var(--aaa-night);margin:0 0 14px!important}
.aaa-quote-by{font-size:14px!important;letter-spacing:.14em;text-transform:uppercase;color:var(--aaa-copper)!important;font-weight:600}

/* ---------- Footer ---------- */
.aaa-footer{color:#d9dde4}
.aaa-footer h4{font-family:'DM Sans',sans-serif!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase;color:#c9a27e!important;margin-bottom:16px!important}
.aaa-footer a{color:#f6f3ea!important;text-decoration:none!important;display:block;padding:4px 0;font-size:15px;opacity:.9;transition:opacity .2s,color .2s}
.aaa-footer a:hover{opacity:1;color:#e3b48f!important}
.aaa-footer .aaa-brand{font-family:'Playfair Display',Georgia,serif;font-size:28px;color:#fff;line-height:1.2;margin:0 0 12px}
.aaa-footer p{color:#c7ccd5!important;font-size:15px}
.aaa-footer .aaa-social{display:flex;gap:10px;margin-top:18px}
.aaa-footer .aaa-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(246,243,234,.3);border-radius:50%;padding:0}
.aaa-footer .aaa-social a:hover{border-color:#e3b48f}
.aaa-footer .aaa-social svg{width:17px;height:17px;fill:currentColor}
.aaa-footer-bottom{border-top:1px solid rgba(246,243,234,.14);margin-top:40px;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13.5px;color:#a9b0bc}
.aaa-footer-bottom a{display:inline;font-size:13.5px}
#footer-outer{background-color:var(--aaa-night)!important}
#footer-outer #footer-widgets{display:none}
#footer-outer #copyright{display:none}

/* ---------- Shop (FluentCart) ---------- */
.aaa-shop-head{max-width:760px;margin:30px 0 44px}
.aaa-shop-head h1{font-size:clamp(36px,4vw,54px)!important;margin-bottom:16px!important}
.fct-shop-filter-wrapper,.fct-shop-view-switcher,.fluent-product-view-switcher,.fct-shop-filter-toggle-button{display:none!important}
.fct-products-container{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:30px!important}
.fct-product-card{background:#fff!important;border:0!important;border-radius:var(--aaa-radius)!important;overflow:hidden;box-shadow:var(--aaa-shadow)!important;padding:0 0 24px!important;display:flex!important;flex-direction:column;transition:transform .25s,box-shadow .25s}
.fct-product-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(27,42,66,.12)!important}
.fct-product-card-image-wrap{display:block;overflow:hidden;margin:0 0 18px!important;border-radius:0!important}
.fct-product-card-image{display:block;width:100%!important;height:auto!important;aspect-ratio:3/2;object-fit:cover;border-radius:0!important}
h3.fct-product-card-title{margin:0 22px 8px!important;font-size:21px!important;line-height:1.3!important;flex-grow:1}
h3.fct-product-card-title a{color:var(--aaa-night)!important;text-decoration:none!important;font-family:'Playfair Display',Georgia,serif!important;text-transform:none!important;font-weight:500!important}
.fct-product-card-prices{margin:0 22px 16px!important;font-weight:600;font-size:17px;color:var(--aaa-copper)!important}
.fct-product-card .fluent-cart-add-to-cart-button{margin:0 22px!important;align-self:flex-start;background:var(--aaa-copper)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:12px 24px!important;font-weight:600!important;font-size:15px!important;cursor:pointer;transition:background .2s}
.fct-product-card .fluent-cart-add-to-cart-button:hover{background:var(--aaa-copper-dark)!important}
/* shop fixes */
.aaa-shop-head h1{color:var(--aaa-night)!important}
.aaa-shop-head a{color:var(--aaa-copper);text-decoration:underline;text-underline-offset:3px}
.fct-product-card .fluent-cart-add-to-cart-button{box-sizing:border-box!important;width:auto!important;max-width:calc(100% - 44px)!important;align-self:flex-start!important;margin:auto 22px 0!important;padding:12px 26px!important;line-height:1.2!important;height:auto!important;min-height:0!important}
.fct-product-card-prices{margin-bottom:18px!important}

/* ---------- Account (FluentCart customer portal) ---------- */
body{--fct-primary-text-color:#1b2a42;--fct-secondary-text-color:#5b6575;--fct-btn-bg-color:#a66339;--fct-btn-text-color:#fff;--fct-border-color:#e4ddcf;--fct-divider-color:#ece6da;--fct-secondary-bg-color:#f6f3ea;--fct-secondary-btn-hover-bg-color:#f1e6dc;
  --fct-customer-dashboard-border-color:#e4ddcf;--fct-customer-dashboard-text-color:#1b2a42;--fct-customer-dashboard-primary-text-color:#1b2a42;--fct-customer-dashboard-title-color:#1b2a42;--fct-customer-dashboard-card-bg:#fff;--fct-customer-dashboard-surface-muted:#f6f3ea;--fct-customer-dashboard-row-divider-color:#ece6da;--fct-customer-dashboard-nav-text-color:#3d4a5e;--fct-customer-dashboard-nav-active-text-color:#a66339;--fct-customer-dashboard-nav-active-bg-color:#f1e6dc;--fct-customer-dashboard-hover-bg:#f6f3ea;--fct-customer-dashboard-logout-btn-text-color:#a66339}
.aaa-account-head{max-width:760px;margin:30px 0 36px}
.aaa-account-head h1{font-size:clamp(34px,3.6vw,48px)!important;color:var(--aaa-night)!important;margin-bottom:12px!important}
.fct_auth_wrap{display:flex;justify-content:flex-start;margin:0 0 60px}
.fct_auth_message{background:#fff;border-radius:var(--aaa-radius);box-shadow:var(--aaa-shadow);padding:40px 44px;max-width:520px;width:100%}
.fct_auth_message h2{font-size:30px!important;margin:0 0 10px!important;color:var(--aaa-night)}
.fct_auth_message p{color:var(--aaa-muted);margin-bottom:24px!important}
.fct_auth_message .fct-customer-login-btn,.fct-customer-dashboard-app-container .el-button--primary,.fct-customer-dashboard-app-container button.primary{background:var(--aaa-copper)!important;border-color:var(--aaa-copper)!important;color:#fff!important;border-radius:999px!important;padding:13px 30px!important;font-weight:600!important;text-decoration:none!important;display:inline-block;line-height:1.2!important;height:auto!important;box-shadow:none!important}
.fct_auth_message .fct-customer-login-btn:hover,.fct-customer-dashboard-app-container .el-button--primary:hover{background:var(--aaa-copper-dark)!important;border-color:var(--aaa-copper-dark)!important}
.fct_customer_profile_wrap{margin-bottom:60px}
.fct-customer-dashboard-app-container,.fct-customer-root-container{border-radius:var(--aaa-radius)!important;font-family:'DM Sans',sans-serif!important}
.fct-customer-navs-wrap,.fct-customer-dashboard-navs-wrap{background:#fff!important;border-radius:var(--aaa-radius)!important;border-color:#e4ddcf!important}
.fct-customer-nav-link{border-radius:12px!important}
.fct-customer-dashboard-main-content{background:#fff;border-radius:var(--aaa-radius);box-shadow:var(--aaa-shadow)}
.fct-customer-dashboard-main-content h1,.fct-customer-dashboard-main-content h2,.fct-customer-dashboard-main-content h3{font-family:'Playfair Display',Georgia,serif!important;font-weight:500!important;letter-spacing:0!important}

/* ---------- Event cards: place first ---------- */
.aaa-event__body{text-align:left!important}
.aaa-event__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px}
.aaa-event__place{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--aaa-copper)}
.aaa-event__place svg{width:15px;height:15px;fill:currentColor;flex:none}
.aaa-event__title{text-align:left!important}
.aaa-event__date{text-align:left!important}
.aaa-retreats-grid{text-align:left}

/* ---------- Photo framing ---------- */
.aaa-card img.img-with-animation{object-position:50% 28%}
.aaa-hero__media img.aaa-hero__img{object-position:50% 35%}

/* ---------- Footer: warmer, more contrast ---------- */
.aaa-footer-row > .row-bg-wrap .row-bg{background:radial-gradient(1200px 500px at 100% 0%,rgba(166,99,57,.35),transparent 60%),radial-gradient(800px 400px at 0% 100%,rgba(201,162,126,.18),transparent 60%),#1b2a42!important}
.aaa-footer-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;background:var(--aaa-copper);border-radius:22px;padding:34px 40px;margin:0 0 56px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.aaa-footer-cta .aaa-eyebrow{color:#f6e3d3!important;margin-bottom:6px!important}
.aaa-footer-cta__title{font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(24px,2.4vw,34px)!important;line-height:1.2!important;color:#fff!important;margin:0!important;padding:0!important}
.aaa-footer-cta .aaa-actions{margin-top:0}
.aaa-btn--light{background:#fff!important;color:var(--aaa-night)!important}
.aaa-btn--light:hover{background:var(--aaa-cream)!important}
.aaa-link--light{color:#fff!important}
.aaa-link--light:hover{color:var(--aaa-cream)!important}
.aaa-footer h4{color:#e8a77c!important}
.aaa-footer .aaa-brand{position:relative;padding-bottom:14px}
.aaa-footer .aaa-brand:after{content:"";position:absolute;left:0;bottom:0;width:46px;height:3px;border-radius:3px;background:var(--aaa-copper)}
.aaa-footer .aaa-social a{background:var(--aaa-copper);border-color:var(--aaa-copper)!important;color:#fff!important}
.aaa-footer .aaa-social a:hover{background:#fff;color:var(--aaa-copper)!important}
.aaa-footer a:hover{color:#e8a77c!important}
.aaa-footer-bottom{border-top-color:rgba(232,167,124,.25)}
.aaa-footer-bottom a{color:#e8a77c!important}
@media (max-width:690px){.aaa-footer-cta{padding:28px 24px}}
.aaa-hero h1 + .aaa-quote-by{margin:-8px 0 22px!important}
.aaa-welcome .aaa-card img.img-with-animation{aspect-ratio:4/5;object-position:50% 30%}
/* footer: full width, no copper rule */
.aaa-quote--slogan{font-style:normal!important}

/* ---------- Forms (Fluent Forms) ---------- */
.fluentform .ff-el-form-control,.fluentform .ff-el-form-control:focus,.fluentform textarea,.fluentform textarea:focus,.fluentform input[type=text],.fluentform input[type=email],.fluentform input[type=tel]{color:var(--aaa-night)!important;-webkit-text-fill-color:var(--aaa-night)!important;background:#fff!important;border:1px solid #e4ddcf!important;border-radius:12px!important;box-shadow:none!important;font-family:'DM Sans',sans-serif!important;font-size:16px!important;padding:14px 16px!important}
.fluentform .ff-el-form-control:focus{border-color:var(--aaa-copper)!important;outline:0!important;box-shadow:0 0 0 3px rgba(166,99,57,.15)!important}
.fluentform .ff-el-form-control::placeholder{color:#8a929e!important;-webkit-text-fill-color:#8a929e!important}
.fluentform .ff-el-input--label label{font-weight:600!important;color:var(--aaa-night)!important}
.fluentform .ff_submit_btn_wrapper button,.fluentform button.ff-btn-submit{background:var(--aaa-copper)!important;border:0!important;border-radius:999px!important;padding:14px 34px!important;color:#fff!important;font-weight:600!important;font-family:'DM Sans',sans-serif!important}
.fluentform .ff_submit_btn_wrapper button:hover{background:var(--aaa-copper-dark)!important}
