@import url("https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Nunito+Sans:ital,opsz,wght@0,6..12,300;0,6..12,400;0,6..12,600;1,6..12,400&display=swap");

:root {
    --black-color: #222;
    --white-color: #fff;
    --main-color: #222;
    --surface-color: #f7f6f2;
    --muted-color: #5c5c5c;
    --border-color: #e6e6e6;
    --accent-color: #222;
    --radius-sm: 0;
    --radius-md: 0;
    --shadow-soft: none;
}

html,
body,
body *:not(i) {
    font-family: "Nunito Sans", "tt-font", sans-serif;
}

h1, h2, h3, h4, .product_heading h1, .shop-plp__title h1, .banner_video__text h1, .banner_video__text h2 {
    font-family: "Libre Baskerville", "Merriweather", serif;
    font-weight: 400;
    letter-spacing: 0;
    color: #222;
}

body {
    background: #fff;
    color: #222;
}

a {
    color: inherit;
}

.global_btn,
button.global_btn,
.catalog-add-cart {
    background: #222;
    border: 1px solid #222;
    border-radius: 0;
    color: #fff;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    box-shadow: none;
}

.global_btn:hover,
button.global_btn:hover,
.catalog-add-cart:hover:not(:disabled) {
    background: #000;
    color: #fff;
}

.myNav {
    background: #fff;
    border-bottom: 0;
    box-shadow: none;
}

.bottom-menu {
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    background: #fff;
}

.bottom-menu ul li a {
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: none;
    color: #222;
}

.bottom-menu ul li a::after {
    background: #222;
    height: 1px;
}

.offer {
    background: #f7f6f2;
    color: #222;
}

.offer_info p,
.offer_info p a {
    color: #222;
    font-size: 13px;
}

.banner_video__text h3 {
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-size: 12px;
    font-family: "Nunito Sans", sans-serif;
}

.card__inner,
.shop-card {
    background: transparent;
    border: 0;
    box-shadow: none;
}

.card--img img,
.media_hover img,
.shop-related img {
    border-radius: 0;
}

.card__inner_content a,
.card__inner_content span {
    color: #222;
}

.shop-filters,
.purchasing_wrapper,
.product_box,
footer {
    background: #fff;
}

.shop-pdp__buy,
.purchasing_wrapper__content {
    background: #fff;
}

footer,
.footer_wrapper {
    border-top: 1px solid #eee;
    background: #f7f6f2;
}

.footer_wrapper h6 {
    font-family: "Nunito Sans", sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
}

input,
select,
textarea,
.form-select,
.form-control {
    border-radius: 0 !important;
    border-color: #ccc;
    font-family: "Nunito Sans", sans-serif;
}

.admin-shell {
    font-family: "Nunito Sans", sans-serif;
}

.cart_wrapper {
    background: #fff;
    padding-bottom: 48px;
}

.cart-line,
.cart-items-panel,
.cart-summary {
    border-radius: 0;
    box-shadow: none;
}

.banner_video__text h1,
.banner_video__text h2 {
    color: #fff;
}

#main-content img,
#main-content > section,
#main-content .banner_video__content,
#main-content .elements_wrapper__content,
#main-content .holiday_wrapper__content,
#main-content .gathering_wrapper__inner {
    border-radius: 14px;
    overflow: hidden;
}

.design_wrapper__content {
    background: #f5f3ee;
    color: #243d2e;
    border-radius: 16px;
}

.design_wrapper__content h6 {
    color: #697c66;
    letter-spacing: 0.12em;
}

.design_wrapper__content h3 {
    color: #243d2e;
}

.design-btn a {
    background: #2e4937;
    color: #fff;
    border: 1px solid #2e4937;
    border-radius: 8px;
}

.design-btn a:hover {
    background: #203827;
    color: #fff;
}

.home-page .container,
.home-page .container-fluid {
    padding-inline: clamp(0.5rem, 1.25vw, 1rem);
}

/* Database-backed catalog headings and sibling links, with optional imagery. */
.bottom-menu .catalog-mega-menu {
    display: flex;
    padding: 28px;
    gap: 28px;
    border-radius: 0;
    align-items: flex-start;
}
.catalog-menu-columns {
    flex: 1;
    min-width: 0;
    column-count: 4;
    column-gap: 32px;
}
.catalog-menu-columns .menu_coloumn {
    break-inside: avoid;
    margin-bottom: 28px;
}
.bottom-menu .catalog-mega-menu .menu_list h6 {
    padding: 0;
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.bottom-menu .catalog-mega-menu a {
    padding: 5px 0 !important;
    font-size: 16px;
    line-height: 1.4;
    text-transform: none;
}
.bottom-menu .catalog-mega-menu .catalog-child-link {
    padding-left: 16px !important;
    font-size: 14px;
}
.catalog-menu-feature { flex: 0 0 24%; background: #f0eeeb; padding: 20px; }
.catalog-menu-feature img { width: 100%; height: 320px; object-fit: cover; }
.catalog-menu-feature span { display: block; margin-top: 16px; }
@media (max-width: 1200px) {
    .catalog-menu-columns { column-count: 3; column-gap: 20px; }
    .catalog-menu-feature { flex-basis: 23%; padding: 12px; }
}
@media (max-width: 900px) {
    .catalog-menu-columns { column-count: 2; }
    .catalog-menu-feature { display: none; }
}
