@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400;1,500&family=DM+Sans:wght@300;400;500&display=swap');

:root{
  --forest:#1C3A0E;--moss:#2D5A1B;--leaf:#4A7C2F;--sage:#7BA05B;
  --cream:#F7F3EC;--linen:#EDE8DF;--sand:#D4C9B4;--earth:#8B6E4E;
  --gold:#C4952A;--gold-l:#E8C97A;--ink:#1A1A14;--muted:#6B6559;
  --pg:#0A1628;--pg-nav:#1A2E4A;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'DM Sans',system-ui,sans-serif;
  --r:2px;--r-md:4px;--max:1160px;--pad:40px;--tr:0.22s ease;
}

/* ── BASE ── */
body{font-family:var(--sans);font-weight:300;font-size:15px;line-height:1.7;color:var(--ink);background:var(--cream)}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);font-weight:300;color:var(--forest)}
p{color:var(--muted)}

/* ── LOGO FIX ── */
.custom-logo,.site-branding img{max-height:34px !important;width:auto !important}
.site-title a{font-family:var(--serif) !important;font-size:1.3rem !important;font-weight:400 !important;color:var(--forest) !important}

/* ── HEADER ── */
.site-header,.storefront-primary-navigation{background:var(--cream) !important;border-bottom:1px solid var(--sand) !important;box-shadow:none !important}
.main-navigation ul li a,.storefront-primary-navigation ul li a{font-family:var(--sans) !important;font-size:11px !important;font-weight:500 !important;letter-spacing:.1em !important;text-transform:uppercase !important;color:var(--ink) !important}
.main-navigation ul li a:hover{color:var(--gold) !important}
.site-header-cart .cart-contents{color:var(--forest) !important;font-weight:500}
.site-header-cart .count{background:var(--gold) !important;color:var(--ink) !important}

/* ── STOREFRONT BUTTONS ── */
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.single_add_to_cart_button,#place_order{
  font-family:var(--sans) !important;font-size:11px !important;font-weight:500 !important;
  letter-spacing:.1em !important;text-transform:uppercase !important;
  background:var(--forest) !important;color:#fff !important;
  border-radius:var(--r) !important;padding:11px 22px !important;border:none !important
}
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.single_add_to_cart_button:hover{background:var(--moss) !important}

/* ── FOOTER ── */
.site-footer{background:var(--ink) !important;color:rgba(255,255,255,.55) !important;border-top:none !important}
.site-footer a{color:rgba(255,255,255,.55) !important}
.site-footer a:hover{color:var(--gold-l) !important}
.site-footer .widget-title{font-family:var(--serif) !important;color:rgba(255,255,255,.35) !important;font-size:10px !important;font-weight:500 !important;letter-spacing:.18em !important;text-transform:uppercase !important}
.footer-widget{color:rgba(255,255,255,.5) !important}

/* ── FK PAGE WRAPPER ── */
.fk-page{width:100%;overflow-x:hidden}

/* ── UTILITIES ── */
.fk-wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.fk-eyebrow{display:block;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.fk-eyebrow--light{color:var(--gold-l)}
.fk-h2{font-family:var(--serif);font-size:clamp(24px,3.5vw,36px);font-weight:300;color:var(--forest);margin-bottom:6px}
.fk-h2--light{color:#fff}
.fk-sub{font-size:13px;font-weight:300;color:var(--muted);margin:0}
.fk-sub--light{color:rgba(255,255,255,.45)}

/* ── BUTTONS ── */
.fk-btn{display:inline-block;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:12px 26px;border-radius:var(--r);transition:all var(--tr);cursor:pointer;border:none;text-decoration:none}
.fk-btn--primary{background:var(--forest);color:#fff !important}
.fk-btn--primary:hover{background:var(--moss);color:#fff !important}
.fk-btn--ghost{background:transparent;border:1px solid var(--forest);color:var(--forest) !important}
.fk-btn--ghost:hover{background:var(--forest);color:#fff !important}
.fk-btn--ghost-light{background:transparent;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.75) !important}
.fk-btn--ghost-light:hover{border-color:rgba(255,255,255,.6);color:#fff !important}
.fk-btn--sm{padding:9px 18px !important;font-size:10px !important}

/* ── ANNOUNCEMENT BAR ── */
.fk-ann{background:var(--forest);text-align:center;padding:9px var(--pad);font-size:11px;font-weight:400;letter-spacing:.05em;color:rgba(255,255,255,.82)}
.fk-ann strong{color:var(--gold-l);font-weight:500}

/* ── HERO ── */
.fk-hero{background:var(--cream);padding:72px var(--pad) 0;position:relative;overflow:hidden}
.fk-hero::before{content:'';position:absolute;top:-60px;right:-60px;width:300px;height:300px;border-radius:50%;border:1px solid rgba(196,149,42,.18);pointer-events:none}
.fk-hero::after{content:'';position:absolute;top:-15px;right:-15px;width:170px;height:170px;border-radius:50%;border:1px solid rgba(196,149,42,.1);pointer-events:none}
.fk-hero__inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 420px;gap:60px;align-items:center}
.fk-hero__h1{font-family:var(--serif);font-size:clamp(48px,7vw,80px);font-weight:300;line-height:1.02;color:var(--forest);letter-spacing:-.01em;margin-bottom:20px}
.fk-hero__h1 em{font-style:italic}
.fk-hero__sub{font-size:15px;font-weight:300;color:var(--muted);line-height:1.8;max-width:440px;margin-bottom:30px}
.fk-hero__btns{display:flex;gap:12px;flex-wrap:wrap}
.fk-hero__img{border-radius:var(--r-md);aspect-ratio:4/5;background:var(--linen);border:1px solid var(--sand);overflow:hidden;display:flex;align-items:center;justify-content:center}
.fk-hero__img img{width:100%;height:100%;object-fit:cover}
.fk-hero__img-ph{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px}
.fk-hero__img-ph svg{opacity:.4}
.fk-hero__img-ph span{font-size:10px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--earth);opacity:.6;text-align:center;line-height:1.6}

/* ── TRUST ── */
.fk-trust{background:var(--forest);padding:15px var(--pad)}
.fk-trust__inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.fk-trust__item{font-size:10px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.fk-trust__dot{color:var(--gold);font-size:14px;opacity:.6}

/* ── SECTION SHELL ── */
.fk-sec{padding:56px var(--pad)}
.fk-sec--cream{background:var(--cream)}
.fk-sec--linen{background:var(--linen)}
.fk-sec--white{background:#fff}
.fk-sec--pg{background:var(--pg)}
.fk-sec--forest{background:var(--forest)}
.fk-sec__head{max-width:var(--max);margin:0 auto 28px;padding-bottom:18px;border-bottom:1px solid var(--sand);display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.fk-sec__head--light{border-bottom-color:rgba(196,149,42,.2)}
.fk-sec__head-lft{flex:1}

/* ── PRODUCT GRID ── */
.fk-prod-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.fk-prod{background:#fff;border:1px solid var(--linen);border-radius:var(--r-md);overflow:hidden;transition:box-shadow var(--tr)}
.fk-prod:hover{box-shadow:0 6px 28px rgba(28,58,14,.08)}
.fk-prod--pg{background:#fff;border:1px solid rgba(196,149,42,.2)}
.fk-prod--pg:hover{border-color:rgba(196,149,42,.45);box-shadow:0 6px 28px rgba(0,0,0,.18)}
.fk-prod--bundle{border-color:var(--sage)}
.fk-prod__img{aspect-ratio:1/1;background:var(--linen);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;border-bottom:1px solid var(--linen)}
.fk-prod__img--pg{background:var(--pg-nav);border-bottom:1px solid rgba(196,149,42,.12)}
.fk-prod__img--bundle{background:#eef4ec}
.fk-prod__img img{width:100%;height:100%;object-fit:cover}
.fk-prod__img-ph{display:flex;flex-direction:column;align-items:center;gap:4px}
.fk-prod__img-ph svg{opacity:.35}
.fk-prod__img-ph span{font-size:8px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--earth);opacity:.55;text-align:center;line-height:1.5}
.fk-prod__badge{display:inline-block;font-size:8px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;border-radius:var(--r);margin:10px 12px 0}
.fk-prod__badge--fk{background:rgba(196,149,42,.1);color:var(--gold)}
.fk-prod__badge--pg{background:rgba(196,149,42,.12);color:var(--earth)}
.fk-prod__badge--bundle{background:rgba(74,124,47,.12);color:var(--moss)}
.fk-prod__name{font-family:var(--serif);font-size:15px;font-weight:500;color:var(--forest);padding:6px 12px 2px;line-height:1.25}
.fk-prod__origin{font-size:9px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 12px 6px}
.fk-prod__lede{font-size:11px;font-weight:300;color:var(--muted);padding:0 12px 8px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fk-prod__foot{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 14px}
.fk-prod__price{font-size:15px;font-weight:500;color:var(--gold)}
.fk-prod__btn{background:var(--forest);color:#fff !important;font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:7px 13px;border-radius:var(--r);border:none;cursor:pointer;transition:background var(--tr);text-decoration:none;display:inline-block}
.fk-prod__btn:hover{background:var(--moss);color:#fff !important}

/* ── PG BANNER ── */
.fk-pg-banner{background:var(--pg);padding:44px var(--pad);position:relative;overflow:hidden}
.fk-pg-banner::before{content:'PURE GOLD';position:absolute;right:var(--pad);top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:96px;font-weight:300;color:rgba(196,149,42,.04);letter-spacing:.06em;pointer-events:none;white-space:nowrap}
.fk-pg-banner__inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.fk-pg-banner__title{font-family:var(--serif);font-size:clamp(22px,3vw,32px);font-weight:300;color:#fff;margin-bottom:6px}
.fk-pg-banner__sub{font-size:13px;font-weight:300;color:rgba(255,255,255,.4);margin:0}

/* ── DIFFERENTIATORS ── */
.fk-diff__grid{max-width:var(--max);margin:28px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fk-diff__card{background:var(--linen);border-radius:var(--r-md);padding:28px;border-top:2px solid var(--leaf)}
.fk-diff__num{display:block;font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.fk-diff__title{font-family:var(--serif);font-size:20px;font-weight:500;color:var(--forest);margin-bottom:10px}
.fk-diff__text{font-size:13px;font-weight:300;color:var(--muted);line-height:1.75}

/* ── TESTIMONIALS ── */
.fk-testi__grid{max-width:var(--max);margin:28px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fk-testi__card{background:#fff;border:1px solid var(--linen);border-radius:var(--r-md);border-left:2px solid var(--gold);padding:28px 28px 28px 26px}
.fk-testi__q{font-family:var(--serif);font-style:italic;font-size:17px;font-weight:400;color:var(--forest);line-height:1.65;margin-bottom:16px}
.fk-testi__author{display:block;font-size:10px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}

/* ── EMAIL SIGNUP ── */
.fk-email__inner{max-width:520px;margin:0 auto;text-align:center}
.fk-email__h{font-family:var(--serif);font-size:clamp(28px,3.5vw,40px);font-weight:300;color:#fff;margin-bottom:8px}
.fk-email__sub{font-size:13px;font-weight:300;color:rgba(255,255,255,.5);margin-bottom:28px;line-height:1.7}
.fk-email__form{display:flex;max-width:400px;margin:0 auto}
.fk-email__input{flex:1;padding:12px 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-right:none;border-radius:var(--r) 0 0 var(--r);font-family:var(--sans);font-size:13px;color:rgba(255,255,255,.8);outline:none}
.fk-email__input::placeholder{color:rgba(255,255,255,.35)}
.fk-email__input:focus{border-color:var(--gold)}
.fk-email__btn{background:var(--gold);color:var(--ink);border:none;padding:12px 22px;border-radius:0 var(--r) var(--r) 0;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.fk-email__btn:hover{background:var(--gold-l)}

/* ── WOOCOMMERCE OVERRIDES ── */
.woocommerce ul.products li.product{background:#fff;border:1px solid var(--linen);border-radius:var(--r-md);overflow:hidden}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif) !important;font-size:15px !important;font-weight:500 !important;color:var(--forest) !important}
.woocommerce ul.products li.product .price{color:var(--gold) !important;font-weight:500 !important}
.woocommerce div.product .product_title{font-family:var(--serif) !important;font-weight:300 !important;color:var(--forest) !important}
.woocommerce div.product .price{color:var(--gold) !important;font-weight:500 !important;font-size:1.3rem !important}
.woocommerce-message,.woocommerce-info{border-top:2px solid var(--gold) !important;font-family:var(--sans) !important}

/* ── TABLET ── */
@media(max-width:1024px){
  :root{--pad:28px}
  .fk-hero__inner{grid-template-columns:1fr 360px;gap:40px}
  .fk-prod-grid{grid-template-columns:repeat(3,1fr)}
}

/* ── MOBILE ── */
@media(max-width:768px){
  :root{--pad:20px}
  .fk-ann{font-size:10px;padding:8px var(--pad)}
  .fk-hero{padding:48px var(--pad) 0}
  .fk-hero__inner{grid-template-columns:1fr;gap:32px}
  .fk-hero__h1{font-size:clamp(40px,11vw,56px)}
  .fk-hero__sub{max-width:100%;font-size:14px}
  .fk-hero__btns{flex-direction:column}
  .fk-hero__btns .fk-btn{text-align:center}
  .fk-hero__img{aspect-ratio:3/2;border-radius:var(--r-md) var(--r-md) 0 0}
  .fk-trust__inner{flex-direction:column;align-items:flex-start;gap:0}
  .fk-trust__item{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08);width:100%}
  .fk-trust__item:last-child{border-bottom:none}
  .fk-trust__dot{display:none}
  .fk-sec{padding:44px var(--pad)}
  .fk-sec__head{flex-direction:column;align-items:flex-start;gap:12px}
  .fk-prod-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .fk-prod__name{font-size:13px}
  .fk-prod__foot{flex-direction:column;align-items:flex-start;gap:8px}
  .fk-prod__btn{width:100%;text-align:center;padding:9px}
  .fk-pg-banner::before{display:none}
  .fk-pg-banner__inner{flex-direction:column;align-items:flex-start}
  .fk-diff__grid{grid-template-columns:1fr;gap:12px}
  .fk-testi__grid{grid-template-columns:1fr;gap:12px}
  .fk-testi__q{font-size:15px}
  .fk-email__form{flex-direction:column;max-width:100%}
  .fk-email__input{border-right:1px solid rgba(255,255,255,.18);border-bottom:none;border-radius:var(--r) var(--r) 0 0}
  .fk-email__btn{border-radius:0 0 var(--r) var(--r);padding:13px}
  .custom-logo,.site-branding img{max-height:26px !important}
}

/* ── SMALL MOBILE ── */
@media(max-width:420px){
  .fk-prod-grid{grid-template-columns:1fr}
  .fk-prod__foot{flex-direction:row;align-items:center}
  .fk-prod__btn{width:auto}
}