:root {
  --astc-bg: #fbf7f0;
  --astc-bg-2: #f3ede3;
  --astc-surface: #fffdf9;
  --astc-surface-2: #f8f2ea;
  --astc-ink: #201913;
  --astc-ink-soft: #6d6257;
  --astc-line: rgba(32, 25, 19, 0.1);
  --astc-line-strong: rgba(32, 25, 19, 0.18);
  --astc-primary: #8d4f2b;
  --astc-primary-2: #6d3718;
  --astc-accent: #d5a46e;
  --astc-accent-2: #b57b45;
  --astc-signal: #6f8d82;
  --astc-shadow: 0 26px 70px rgba(71, 45, 20, 0.1);
  --astc-shadow-soft: 0 14px 28px rgba(71, 45, 20, 0.06);
  --astc-radius: 22px;
  --astc-radius-sm: 14px;
  --astc-max: 1240px;
}
html { scroll-behavior: smooth; }
body {
  background:
    radial-gradient(circle at top left, rgba(213,164,110,.16), transparent 22%),
    radial-gradient(circle at right 18%, rgba(111,141,130,.12), transparent 18%),
    linear-gradient(180deg, #fdf9f3 0%, #f7f1e8 56%, #f1e9dd 100%);
  color: var(--astc-ink-soft);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
body,input,textarea,select,button { color: var(--astc-ink-soft); }
p,li { font-size: 16px; line-height: 1.82; }
h1,h2,h3,h4,h5,h6,.post_title,.widgettitle,.title-breadcrumb h1,.page-title,.astc-kicker {
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: .01em;
}
a { color: var(--astc-primary-2); text-decoration:none; transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
a:hover { color: var(--astc-primary); }
#layout,#frame { background: transparent; }
.row,.row_inner,.breadcrumb-row,.page-content .row_inner { max-width: var(--astc-max); }
header,.head,.headdown,.breadcrumb-place,.page-content,#footer,.footer-last { position: relative; }

.head {
  padding: 14px 0 0;
  background: transparent;
}
.head:before {
  content:""; position:absolute; inset:10px 14px 0; border-radius:28px 28px 0 0;
  background: linear-gradient(180deg, rgba(255,253,249,.94), rgba(248,242,234,.9));
  border:1px solid rgba(255,255,255,.76);
  box-shadow: var(--astc-shadow-soft);
}
.head .row,.headdown .row,.breadcrumb-row,.page-content .row,#footer .row,.footer-last .row { position:relative; z-index:1; }
.logo { display:flex; align-items:center; gap:18px; margin:24px 0 14px; }
.logo img { width: 78px; height:auto; filter: saturate(.84) contrast(1.02); }
.site_description {
  margin:0; max-width:440px; color: var(--astc-ink); font-size:30px; line-height:1.02; font-weight:400;
}
.search { margin-top: 24px; }
.search form {
  display:flex; align-items:center; gap:10px; max-width:320px; margin-left:auto; padding:8px 10px 8px 14px;
  border:1px solid rgba(32,25,19,.08); border-radius:999px; background: rgba(255,255,255,.82);
}
.search input {
  flex:1 1 auto; min-width:0; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; color: var(--astc-ink) !important;
}
.search input::placeholder { color: rgba(32,25,19,.42); }
.search button {
  width:40px; height:40px; border:0; border-radius:50%; background: linear-gradient(135deg, var(--astc-primary), var(--astc-primary-2)); color:#fff;
}

.headdown { padding: 0 0 18px; }
.headdown .row:before {
  content:""; position:absolute; inset:0; border-top:1px solid rgba(32,25,19,.06); background:transparent;
}
.headdown .grid_12 { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:12px 0 0; }
.social.social-head { display:flex; align-items:center; gap:10px; }
.social.social-head a {
  display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; color: var(--astc-ink); background: rgba(32,25,19,.05);
}
.social.social-head a:hover { background: var(--astc-primary); color:#fff; transform: translateY(-1px); }
nav { flex:1 1 auto; }
.sf-menu,#mainnav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; margin:0 !important; }
.sf-menu>li,#mainnav>li { padding:0 !important; }
.sf-menu>li>a,#mainnav>li>a {
  display:inline-flex; align-items:center; min-height:44px; padding:0 14px !important; border-radius:999px; color: var(--astc-ink) !important; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
}
.sf-menu>li.current-menu-item>a,.sf-menu>li.current_page_item>a,.sf-menu>li>a:hover,#mainnav>li.current-menu-item>a,#mainnav>li.current_page_item>a,#mainnav>li>a:hover {
  background: rgba(141,79,43,.1); color: var(--astc-primary-2) !important;
}
.sf-menu ul.sub-menu,#mainnav ul.sub-menu { margin-top:10px; padding:10px; border:1px solid rgba(32,25,19,.08); border-radius:14px; background:#fff; box-shadow:var(--astc-shadow-soft); }
.sf-menu ul.sub-menu li a,#mainnav ul.sub-menu li a { border-radius:10px; color: var(--astc-ink) !important; }
.sf-menu ul.sub-menu li a:hover,#mainnav ul.sub-menu li a:hover { background:#f5eee5; color: var(--astc-primary-2) !important; }

.breadcrumb-place { margin: 0; padding: 24px 0 0; background: transparent !important; }
.breadcrumb-place:before {
  content:""; position:absolute; inset:0 14px; border-radius:0 0 30px 30px; background: linear-gradient(180deg, rgba(255,251,246,.94), rgba(243,235,224,.94)); border:1px solid rgba(255,255,255,.78); box-shadow: var(--astc-shadow-soft);
}
.title-breadcrumb { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:16px; }
.title-breadcrumb h1,.page-title { margin:0; color: var(--astc-ink) !important; font-size: clamp(36px, 5vw, 68px); line-height:.92; font-weight:400; }
.breadcrumbIn,.breadcrumb,.breadcrumb li,.breadcrumb a,.breadcrumb i { color: #8a7c6f !important; }

.page-content { padding: 26px 0 86px; background: transparent; }
.page-content .row_inner { padding: 0 6px; }
.pages_cont,.page-content .pages,.astc-product-page,.single .content,.archive .content,.page-content .pages_shop {
  background: rgba(255,253,249,.8); border:1px solid rgba(255,255,255,.76); border-radius:28px; box-shadow: var(--astc-shadow); overflow:hidden; backdrop-filter: blur(12px);
}
.pages_cont { padding: 36px !important; }
.page-content .grid_9.pages,.page-content .grid_12.pages,.page-content .grid_12.pages_cont { width:100%; }
.page-content .sidebar.grid_3 { margin-top:0; }

.sidebar .widget,.astc-widget-sidebar .widget,.astc-filter-card .widget,#footer .widget {
  padding:24px; border:1px solid var(--astc-line); border-radius:18px; background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,242,233,.96)); box-shadow: var(--astc-shadow-soft);
}
.sidebar .widget + .widget,.astc-widget-sidebar .widget + .widget,#footer .widget + .widget { margin-top:22px; }
.widgettitle { margin:0 0 16px; color: var(--astc-ink); font-size:24px; }
.widget ul,.widget .menu,.widget_rss ul,.astc-contact-points,.astc-checklist,.astc-highlight-card ul { list-style:none; margin:0; padding:0; }
.widget li,.widget_rss li,.astc-contact-points li,.astc-checklist li { padding:12px 0; border-top:1px solid var(--astc-line); }
.widget li:first-child,.widget_rss li:first-child { border-top:0; padding-top:0; }
.widget a,.widget_rss a { color: var(--astc-ink-soft); }
.widget a:hover,.widget_rss a:hover { color: var(--astc-primary-2); }
.astc-shell { max-width: var(--astc-max); }

.page-id-1214 .astc-home-page,.page-id-1830 .astc-about-page,.page-id-1032 .astc-blog-page,.page-id-2408 .astc-contact-page,.page-id-3819 .astc-product-page { color: var(--astc-ink); }
.page-id-1214 .astc-home-hero2,.page-id-1830 .astc-about-hero,.page-id-1032 .astc-blog-hero,.page-id-2408 .astc-contact-hero,.page-id-3819 .astc-product-hero,
.astc-home-hero2,.astc-about-hero,.astc-blog-hero,.astc-contact-hero,.astc-product-hero {
  position:relative; overflow:hidden; padding-top:104px !important; padding-bottom:84px !important; border-radius:32px; background:
    radial-gradient(circle at top right, rgba(213,164,110,.18), transparent 18%),
    linear-gradient(135deg, rgba(255,250,244,.96), rgba(245,236,224,.96)) !important; box-shadow: 0 32px 84px rgba(71,45,20,.12);
}
.page-id-1214 .astc-home-hero2:before,.page-id-1830 .astc-about-hero:before,.page-id-1032 .astc-blog-hero:before,.page-id-2408 .astc-contact-hero:before,.page-id-3819 .astc-product-hero:before,
.astc-home-hero2:before,.astc-about-hero:before,.astc-blog-hero:before,.astc-contact-hero:before,.astc-product-hero:before {
  content:""; position:absolute; inset:22px; border:1px solid rgba(32,25,19,.08); border-radius:24px; pointer-events:none;
}
.page-id-1214 .astc-home-hero2:after,.page-id-1830 .astc-about-hero:after,.page-id-1032 .astc-blog-hero:after,.page-id-2408 .astc-contact-hero:after,.page-id-3819 .astc-product-hero:after,
.astc-home-hero2:after,.astc-about-hero:after,.astc-blog-hero:after,.astc-contact-hero:after,.astc-product-hero:after {
  content:"Editorial"; position:absolute; right:40px; top:34px; color: rgba(32,25,19,.18); font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
}
.astc-home-hero-grid,.astc-about-hero-grid,.astc-blog-hero-grid,.astc-contact-hero-grid,.astc-product-layout,.astc-contact-grid { align-items:stretch !important; }
.astc-home-hero-copy h1,.astc-about-hero-copy h1,.astc-blog-hero-copy h1,.astc-contact-hero-copy h1,.astc-product-hero h1 {
  margin:0 0 18px; color: var(--astc-ink) !important; font-size: clamp(46px, 5vw, 80px) !important; line-height:.9 !important; font-weight:400; letter-spacing:-.04em;
}
.astc-home-hero-copy p,.astc-about-hero-copy p,.astc-blog-hero-copy p,.astc-contact-hero-copy p,.astc-product-hero p,.astc-panel p,.astc-contact-card p,.astc-contact-form-wrap p,.folio-desc p,.post_content p { color: #695f55 !important; }
.page-id-1214 .astc-home-hero-copy p,.page-id-1830 .astc-about-hero-copy p,.page-id-1032 .astc-blog-hero-copy p,.page-id-2408 .astc-contact-hero-copy p,.page-id-3819 .astc-product-hero p,
.astc-home-hero-copy p,.astc-about-hero-copy p,.astc-blog-hero-copy p,.astc-contact-hero-copy p,.astc-product-hero p { color: #695f55 !important; font-size: 18px !important; }
.astc-kicker {
  display:inline-flex !important; align-items:center; gap:10px; padding:10px 14px !important; border-radius:999px; background: rgba(141,79,43,.08) !important; border:1px solid rgba(141,79,43,.12) !important; color: var(--astc-primary-2) !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase;
}
.astc-kicker:before { content:""; width:7px; height:7px; border-radius:50%; background: var(--astc-primary); }

.astc-highlight-card,.astc-panel,.astc-info-card,.astc-quote,.astc-contact-card,.astc-contact-form-wrap,.astc-filter-card,.astc-results-head,.post_b,.grid_item,.single .meta_box,.related-posts .post,.astc-product-card,.astc-blog-card,.astc-spec-card {
  border:1px solid rgba(32,25,19,.08) !important; border-radius:20px !important; background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,242,234,.96)) !important; box-shadow: var(--astc-shadow-soft) !important;
}
.astc-highlight-card,.astc-cta-box,.astc-home-highlight,.astc-product-spotlight {
  background: linear-gradient(135deg, #2e2118 0%, #8d4f2b 58%, #d5a46e 140%) !important; color:#fff !important;
}
.astc-highlight-card h3,.astc-highlight-card li,.astc-cta-box h2,.astc-cta-box p,.astc-cta-box a,.astc-home-highlight h2,.astc-home-highlight p { color:#fff !important; }
.astc-home-actions,.astc-about-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:28px; }
.astc-home-actions a,.astc-about-actions a,.astc-cta-box a,.astc-primary-btn,.astc-secondary-btn,.more a,.pages_cont .woocommerce input[type="submit"],.pages_cont .woocommerce button[type="submit"],.woocommerce-page .pages_shop input[type="submit"],.woocommerce-page .pages_shop button[type="submit"],.contactForm #sendMessage,#sendOrder,input[type="submit"],button,.pagi {
  display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 22px !important; border:0 !important; border-radius:999px !important; background: linear-gradient(135deg, var(--astc-primary), var(--astc-primary-2)) !important; color:#fff !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase !important; box-shadow: 0 14px 26px rgba(109,55,24,.18);
}
.astc-secondary-btn { background:#fff !important; color: var(--astc-primary-2) !important; border:1px solid rgba(141,79,43,.14) !important; box-shadow:none !important; }
.astc-home-actions a:hover,.astc-about-actions a:hover,.astc-cta-box a:hover,.more a:hover,.pages_cont .woocommerce input[type="submit"]:hover,.pages_cont .woocommerce button[type="submit"]:hover,.woocommerce-page .pages_shop input[type="submit"]:hover,.woocommerce-page .pages_shop button[type="submit"]:hover,.contactForm #sendMessage:hover,#sendOrder:hover,input[type="submit"]:hover,button:hover,.pagi:hover { transform: translateY(-1px); }
.astc-secondary-btn:hover { background: rgba(141,79,43,.08) !important; color: var(--astc-primary-2) !important; }

input[type="text"],input[type="email"],input[type="tel"],input[type="search"],textarea,select,.pages_cont .woocommerce input,.pages_cont .woocommerce textarea,.pages_cont .woocommerce select,.woocommerce-page .pages_shop input,.woocommerce-page .pages_shop textarea,.woocommerce-page .pages_shop select,.contactForm input,.contactForm textarea {
  border:1px solid rgba(32,25,19,.12) !important; border-radius:14px !important; background: rgba(255,255,255,.92) !important; box-shadow:none !important;
}
input:focus,textarea:focus,select:focus { border-color: rgba(141,79,43,.35) !important; box-shadow: 0 0 0 4px rgba(141,79,43,.08) !important; }

.pages_cont table,.astc-product-page table,.single table,.archive table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid rgba(32,25,19,.1); border-radius:14px; background:#fff; }
.pages_cont table th,.pages_cont table td,.astc-product-page table th,.astc-product-page table td,.single table th,.single table td,.archive table th,.archive table td { padding:14px 16px; border-bottom:1px solid rgba(32,25,19,.08); }
.pages_cont table tr>*+*,.astc-product-page table tr>*+*,.single table tr>*+*,.archive table tr>*+* { border-left:1px solid rgba(32,25,19,.08); }
.pages_cont table tr:last-child>*,.astc-product-page table tr:last-child>*,.single table tr:last-child>*,.archive table tr:last-child>* { border-bottom:0; }

.post_title,.pages_cont h2,.pages_cont h3,.pages_cont h4,.astc-product-page h2,.astc-product-page h3,.astc-product-page h4,.single h2,.single h3,.archive h2,.archive h3 { color: var(--astc-ink); }
.post_title a { color: var(--astc-ink); }
.post_title a:hover { color: var(--astc-primary); }
.post img,.pages_cont img,.astc-product-page img,.archive img,.single img { border-radius: 16px; }
.grid_item,.portfolio .grid_item,.posts .grid_item,.products .product,ul.products li.product,.astc-product-card,.astc-blog-card { overflow:hidden; }
.grid_item .mediaholder,ul.products li.product .product-image,.astc-product-card img,.astc-blog-card img { margin:0; }
.grid_item .mediaholder img,ul.products li.product img,.astc-product-card img,.astc-blog-card img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.grid_item .post_title,ul.products li.product h3,.astc-product-card h3,.astc-blog-card h3 { margin:0; padding:20px; font-size:19px; line-height:1.42; }

.astc-filter-card,.astc-contact-card,.astc-contact-form-wrap,.astc-results-head,.astc-panel,.astc-highlight-card,.astc-info-card,.astc-quote { padding:30px !important; }
.astc-panel h3,.astc-contact-card h3,.astc-contact-form-wrap h3,.astc-info-card h3,.astc-quote h3,.astc-filter-card h3,.astc-results-head h2,.astc-results-head h3 { margin-top:0; color: var(--astc-ink); }
.astc-contact-points li,.astc-checklist li { display:flex; gap:12px; align-items:flex-start; }
.astc-contact-points i,.astc-checklist i { color: var(--astc-primary); }
.f_meta,.f_meta a,.s_meta,.s_meta a,.meta-tag a,.meta_box,.meta_box a { color:#8a7c6f !important; }
.related-posts .block-title,.element-title h3 { color: var(--astc-ink); font-size:34px; line-height:1.02; }

.woocommerce ul.products,.woocommerce-page ul.products,.archive .grid_layout,.posts .grid_layout,.portfolio .grid_layout { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:22px; }
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product,.archive .grid_layout .grid_item,.posts .grid_layout .grid_item,.portfolio .grid_layout .grid_item { float:none !important; width:auto !important; margin:0 !important; padding:0 !important; }
.pagination .current,.pagination a:hover,.page-links>span { background: var(--astc-primary-2) !important; color:#fff !important; }

#footer { margin-top:18px; padding-top:26px; background: transparent; }
#footer:before { content:""; position:absolute; inset:0 14px; border-radius:30px 30px 0 0; background: linear-gradient(180deg, #2c2119 0%, #4b3424 100%); }
#footer .widget,#footer .widget a,#footer .widget li,#footer .widget p,#footer .widgettitle { color: rgba(255,255,255,.88); }
#footer .widget { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.08); box-shadow:none; }
#footer .widgettitle { color:#fff; }
#footer .widget a:hover { color:#fff; }
.footer-last { background: transparent; }
.footer-last .copyright,.footer-last .social a { color: rgba(255,255,255,.7); }
.footer-last .social a:hover { color:#fff; }

.page-id-1214 .astc-home-page .astc-home-section,.page-id-1830 .astc-about-page .astc-about-section,.page-id-1032 .astc-blog-page .astc-blog-section,.page-id-2408 .astc-contact-page .astc-contact-section,.page-id-3819 .astc-product-page .astc-product-section { margin-top:30px; }
.page-id-1214 .astc-home-page .astc-home-section:first-of-type,.page-id-1830 .astc-about-page .astc-about-section:first-of-type,.page-id-1032 .astc-blog-page .astc-blog-section:first-of-type,.page-id-2408 .astc-contact-page .astc-contact-section:first-of-type,.page-id-3819 .astc-product-page .astc-product-section:first-of-type { margin-top:0; }
.astc-home-page .astc-home-grid,.astc-about-page .astc-about-grid,.astc-contact-grid,.astc-product-grid,.astc-blog-grid { gap:24px !important; }
.astc-home-page .astc-home-grid>*,.astc-about-page .astc-about-grid>*,.astc-contact-grid>*,.astc-product-grid>*,.astc-blog-grid>* { min-width:0; }

@media (max-width:1180px) {
  .woocommerce ul.products,.woocommerce-page ul.products,.archive .grid_layout,.posts .grid_layout,.portfolio .grid_layout { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:1024px) {
  .headdown .grid_12 { display:block; padding:12px 0 0; }
  .social.social-head { justify-content:center; margin-bottom:12px; }
  .sf-menu,#mainnav { justify-content:center; }
  .site_description { max-width:none; font-size:24px; }
  .astc-home-hero-copy h1,.astc-about-hero-copy h1,.astc-blog-hero-copy h1,.astc-contact-hero-copy h1,.astc-product-hero h1 { font-size: clamp(38px, 8vw, 58px) !important; }
}
@media (max-width:820px) {
  .logo,.search { justify-content:center; }
  .search form { margin:12px auto 0; }
  .pages_cont { padding:24px !important; border-radius:18px; }
  .page-id-1214 .astc-home-hero2,.page-id-1830 .astc-about-hero,.page-id-1032 .astc-blog-hero,.page-id-2408 .astc-contact-hero,.page-id-3819 .astc-product-hero,.astc-home-hero2,.astc-about-hero,.astc-blog-hero,.astc-contact-hero,.astc-product-hero { padding-top:64px !important; padding-bottom:52px !important; border-radius:20px; }
  .woocommerce ul.products,.woocommerce-page ul.products,.archive .grid_layout,.posts .grid_layout,.portfolio .grid_layout { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  p,li { font-size:15px; }
  .site_description { font-size:20px; line-height:1.08; }
  .title-breadcrumb h1,.page-title,.astc-home-hero-copy h1,.astc-about-hero-copy h1,.astc-blog-hero-copy h1,.astc-contact-hero-copy h1,.astc-product-hero h1 { font-size:32px !important; }
  .astc-filter-card,.astc-contact-card,.astc-contact-form-wrap,.astc-results-head,.astc-panel,.astc-highlight-card,.astc-info-card,.astc-quote,.sidebar .widget,#footer .widget { padding:18px !important; border-radius:14px !important; }
  .astc-home-actions a,.astc-about-actions a,.astc-cta-box a,.astc-primary-btn,.astc-secondary-btn,.more a,.pages_cont .woocommerce input[type="submit"],.pages_cont .woocommerce button[type="submit"],.woocommerce-page .pages_shop input[type="submit"],.woocommerce-page .pages_shop button[type="submit"],.contactForm #sendMessage,#sendOrder,input[type="submit"],button,.pagi { width:100%; }
}
