/*
 * Solis store style: Nest. Loaded only while this style is active.
 * Defines the --solis-* tokens for light and dark mode, then the
 * style-specific layout rules.
 */

:root {
    --solis-bg: #faf6f1;
    --solis-surface: #ffffff;
    --solis-surface-2: #f1e9df;
    --solis-text: #2b2420;
    --solis-muted: #76695f;
    --solis-border: #e8dccf;
    --solis-accent: #b4572f;
    --solis-on-accent: #ffffff;
    --solis-accent-soft: rgba(194, 100, 63, .11);
    --solis-chat: #b4572f;
    --solis-sale: #b4572f;
    --nest-sage: #7d8f6c;
    --nest-sage-soft: rgba(125, 143, 108, .16);
    --solis-radius: 16px;
    --solis-radius-lg: 28px;
    --solis-btn-radius: 99px;
    --solis-shadow: 0 16px 40px rgba(90, 50, 30, .1);
    --solis-font-head: "DM Serif Display", Georgia, serif;
    --solis-font-body: "Manrope", system-ui, sans-serif;
    --solis-product-ratio: 4 / 5;
    --solis-card-pad: 0;
    --solis-card-border: transparent;
    --solis-tone-1: linear-gradient(135deg, #f3dccd 0%, #f7ebe1 100%);
    --solis-tone-2: linear-gradient(135deg, #dfe5d5 0%, #eef1e8 100%);
    --solis-tone-3: linear-gradient(135deg, #ece2d4 0%, #f6efe6 100%);
    --solis-tone-4: linear-gradient(135deg, #e7d9d3 0%, #f3ebe7 100%);
    --solis-art-radius: 999px 999px 18px 18px;
    --solis-announce-bg: var(--nest-sage);
    --solis-announce-text: #fff;
}

html[data-theme="dark"] {
    --solis-bg: #151210;
    --solis-surface: #1f1a17;
    --solis-surface-2: #2a231f;
    --solis-text: #f4ece4;
    --solis-muted: #ab9d93;
    --solis-border: #3a302a;
    --solis-accent: #e08a63;
    --solis-on-accent: #1e0e06;
    --solis-accent-soft: rgba(224, 138, 99, .13);
    --solis-sale: #e08a63;
    --nest-sage: #a3b592;
    --nest-sage-soft: rgba(163, 181, 146, .14);
    --solis-shadow: 0 16px 40px rgba(0, 0, 0, .45);
    --solis-tone-1: linear-gradient(135deg, #33231b 0%, #241b16 100%);
    --solis-tone-2: linear-gradient(135deg, #232a1f 0%, #1b1f18 100%);
    --solis-tone-3: linear-gradient(135deg, #2e261d 0%, #221c16 100%);
    --solis-tone-4: linear-gradient(135deg, #2f2420 0%, #221a17 100%);
    --solis-announce-bg: #3d4834;
}

h1, h2, h3, .solis-section-title, .solis-slide-title { font-weight: 400; }
.solis-site-title { font-weight: 400; font-size: 1.55rem; }
.solis-brand-mark { border-radius: 999px 999px 8px 8px; background: var(--nest-sage); }
.solis-nav a { font-weight: 600; font-size: .9rem; }

/* Slider: arch-shaped media panel */
.solis-slide-title { font-size: clamp(2.2rem, 5vw, 4rem); line-height: 1.02; }
.solis-slide-title::first-line { font-style: italic; }
.solis-slide-eyebrow { color: var(--nest-sage); letter-spacing: .16em; }
.solis-slide-media { margin: clamp(16px, 3vw, 32px); margin-left: 0; }
.solis-slide.has-image .solis-slide-media { border-radius: 999px 999px var(--solis-radius) var(--solis-radius); overflow: hidden; }
.solis-art-item { box-shadow: none; background: var(--solis-surface); }
.solis-art-1 { width: clamp(170px, 24vw, 300px); aspect-ratio: 3 / 4; }
.solis-art-2 { background: var(--nest-sage); color: #fff; border-radius: 50%; }
.solis-art-3 { background: var(--solis-accent); color: #fff; }
.solis-slider-dot.is-active { background: var(--nest-sage); }
@media (max-width: 800px) { .solis-slide-media { margin: 16px 16px 0; } }

.solis-eyebrow { color: var(--nest-sage); }

/* Arch category tiles */
.solis-cats--arches { grid-template-columns: repeat(6, 1fr); gap: clamp(12px, 2vw, 22px); }
.solis-cats--arches .solis-cat a { background: transparent; border: 0; padding: 0; }
.solis-cats--arches .solis-cat a:hover { box-shadow: none; }
.solis-cats--arches .solis-cat-media { width: 100%; aspect-ratio: 3 / 4; border-radius: 999px 999px 14px 14px; background: var(--solis-tone-1); }
.solis-cats--arches .solis-cat:nth-child(even) .solis-cat-media { background: var(--solis-tone-2); color: var(--nest-sage); }
.solis-cats--arches .solis-cat-media .solis-icon { width: 40%; height: 40%; stroke-width: 1.1; }
.solis-cats--arches .solis-cat-label { font-family: var(--solis-font-head); font-size: 1.1rem; font-weight: 400; }
@media (max-width: 900px) { .solis-cats--arches { grid-template-columns: repeat(3, 1fr); } }

/* Products: image-led with soft rounded images */
.woocommerce ul.products li.product { background: transparent; }
.woocommerce ul.products li.product:hover { box-shadow: none; }
.woocommerce ul.products li.product a img { border-radius: var(--solis-radius); transition: transform .4s ease; }
.woocommerce ul.products li.product:hover a img { transform: scale(1.02); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-weight: 600; }
.woocommerce ul.products li.product .button { align-self: flex-start; }
.woocommerce span.onsale { background: var(--nest-sage); }

/* Shop by style band */
.nest-styles { background: var(--nest-sage-soft); }
.nest-lead { color: var(--solis-muted); margin: 12px 0 24px; max-width: 44ch; }
.nest-style-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--solis-border); }
.nest-style-list a {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px 4px;
    border-bottom: 1px solid var(--solis-border);
    color: var(--solis-text);
    text-decoration: none;
    transition: padding .2s ease, color .2s ease;
}
.nest-style-list a:hover { padding-left: 14px; color: var(--solis-accent); }
.nest-style-num { font-size: .8rem; font-weight: 700; color: var(--solis-muted); }
.nest-style-name { flex: 1; font-family: var(--solis-font-head); font-size: clamp(1.5rem, 3vw, 2.2rem); line-height: 1.1; }
.nest-style-list .solis-icon { width: 22px; height: 22px; }

.nest-perks .solis-perks { padding: 26px 0; border-block: 1px solid var(--solis-border); }
.nest-perks .solis-perk-icon { border-radius: 999px 999px 10px 10px; background: var(--nest-sage-soft); color: var(--nest-sage); }

.solis-post-card { border: 0; background: transparent; }
.solis-post-card-thumb { border-radius: 999px 999px var(--solis-radius) var(--solis-radius); overflow: hidden; aspect-ratio: 4 / 5; }
.solis-post-card-body { padding-inline: 0; }
.solis-post-card-body h3 { font-weight: 400; font-size: 1.35rem; }
