/* Top Saffron Child - lightweight, local-only CSS */
.topsaffron-saffron-site {
    --topsaffron-red:#e00000;
    --topsaffron-red-dark:#9f0000;
    --topsaffron-yellow:#ffc400;
    --topsaffron-cream:#fff8e5;
    --topsaffron-ink:#24110f;
    --topsaffron-muted:#6b5b55;
    --topsaffron-border:#f1dfb0;
    --topsaffron-white:#ffffff;
}

.topsaffron-saffron-site a { color: var(--topsaffron-red); }
.topsaffron-saffron-site a:hover { color: var(--topsaffron-red-dark); }
.topsaffron-saffron-site .button,
.topsaffron-saffron-site button,
.topsaffron-saffron-site .btn,
.topsaffron-saffron-site .wd-button-wrapper a,
.topsaffron-saffron-site .single_add_to_cart_button,
.topsaffron-saffron-site .add_to_cart_button {
    border-radius: 999px !important;
}
.topsaffron-saffron-site .single_add_to_cart_button,
.topsaffron-saffron-site .add_to_cart_button,
.topsaffron-saffron-site .checkout-button,
.topsaffron-saffron-site .woocommerce-mini-cart__buttons .button.checkout {
    background: var(--topsaffron-red) !important;
    color: #fff !important;
    border-color: var(--topsaffron-red) !important;
}
.topsaffron-saffron-site .single_add_to_cart_button:hover,
.topsaffron-saffron-site .add_to_cart_button:hover,
.topsaffron-saffron-site .checkout-button:hover {
    background: var(--topsaffron-red-dark) !important;
    border-color: var(--topsaffron-red-dark) !important;
}
.topsaffron-saffron-site .wd-header-top,
.topsaffron-saffron-site .topbar-wrapp,
.topsaffron-saffron-site .header-banner {
    background: var(--topsaffron-yellow) !important;
    color: var(--topsaffron-ink) !important;
}
.topsaffron-saffron-site .wd-nav > li > a:hover,
.topsaffron-saffron-site .wd-nav > li.current-menu-item > a {
    color: var(--topsaffron-red) !important;
}

.topsaffron-home {
    color: var(--topsaffron-ink);
    line-height: 1.9;
}
.topsaffron-hero {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0,1.1fr) minmax(280px,.9fr);
    gap: 34px;
    align-items: center;
    padding: clamp(38px, 6vw, 86px);
    margin: 0 auto 38px;
    background:
        radial-gradient(circle at 20% 12%, rgba(255,196,0,.36), transparent 26%),
        linear-gradient(135deg, #fff 0%, var(--topsaffron-cream) 52%, #fff 100%);
    border: 1px solid var(--topsaffron-border);
    border-radius: 30px;
}
.topsaffron-hero:before {
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:8px;
    background: var(--topsaffron-yellow);
}
.topsaffron-kicker,
.topsaffron-section__head span,
.topsaffron-panel span {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color: var(--topsaffron-red);
    font-weight: 800;
    letter-spacing:.03em;
}
.topsaffron-kicker:before,
.topsaffron-section__head span:before,
.topsaffron-panel span:before {
    content:"";
    width:22px;
    height:3px;
    background: var(--topsaffron-yellow);
    border-radius:10px;
}
.topsaffron-hero h1 {
    max-width: 720px;
    margin: 14px 0 18px;
    font-size: clamp(30px, 4.5vw, 58px);
    line-height: 1.25;
    color: var(--topsaffron-red);
    font-weight: 900;
}
.topsaffron-hero p {
    max-width: 640px;
    margin: 0 0 24px;
    color: var(--topsaffron-muted);
    font-size: 16px;
}
.topsaffron-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}
.topsaffron-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height: 46px;
    padding: 0 24px;
    border-radius: 999px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.topsaffron-btn:hover { transform: translateY(-2px); }
.topsaffron-btn--primary {
    background: var(--topsaffron-red);
    color:#fff !important;
    box-shadow: 0 16px 35px rgba(224,0,0,.18);
}
.topsaffron-btn--primary:hover { background: var(--topsaffron-red-dark); }
.topsaffron-btn--ghost {
    background:#fff;
    border:1px solid var(--topsaffron-border);
    color:var(--topsaffron-ink) !important;
}
.topsaffron-hero__visual {
    display:flex;
    justify-content:center;
}
.topsaffron-pack-card {
    position: relative;
    width: min(360px,100%);
    aspect-ratio: .84/1;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding: 34px 28px;
    background: #fff;
    border:1px solid var(--topsaffron-border);
    border-radius: 28px;
    box-shadow: 0 24px 60px rgba(36,17,15,.12);
    text-align:center;
}
.topsaffron-pack-card img {
    display:block;
    width: 220px;
    max-width: 90%;
    margin: 0 auto;
    height:auto;
}
.topsaffron-pack-card strong {
    color:var(--topsaffron-red);
    font-size:26px;
    font-weight:900;
}
.topsaffron-pack-card small { color:var(--topsaffron-muted); }
.topsaffron-saffron-threads {
    position:absolute;
    left:34px;
    right:34px;
    top:45%;
    height:90px;
    background:
        linear-gradient(120deg, transparent 0 20%, rgba(224,0,0,.95) 21% 23%, transparent 24% 100%),
        linear-gradient(64deg, transparent 0 44%, rgba(255,196,0,.95) 45% 47%, transparent 48% 100%),
        linear-gradient(30deg, transparent 0 52%, rgba(224,0,0,.8) 53% 55%, transparent 56% 100%);
    opacity:.75;
    transform: rotate(-8deg);
}
.topsaffron-trust {
    display:grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap:14px;
    margin: 0 0 44px;
}
.topsaffron-trust div,
.topsaffron-cat-card,
.topsaffron-info-grid article,
.topsaffron-panel {
    background:#fff;
    border:1px solid var(--topsaffron-border);
    border-radius: 22px;
    box-shadow: 0 10px 30px rgba(36,17,15,.05);
}
.topsaffron-trust div {
    padding: 18px 20px;
}
.topsaffron-trust strong {
    display:block;
    color:var(--topsaffron-red);
    font-size:17px;
}
.topsaffron-trust span { color:var(--topsaffron-muted); font-size:13px; }
.topsaffron-section { margin: 48px 0; }
.topsaffron-section__head {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:16px;
    margin-bottom:20px;
}
.topsaffron-section__head h2 {
    margin:0;
    font-size: clamp(24px, 3vw, 38px);
    color: var(--topsaffron-ink);
    font-weight:900;
}
.topsaffron-cat-grid {
    display:grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap:16px;
}
.topsaffron-cat-card {
    position:relative;
    overflow:hidden;
    min-height: 150px;
    padding: 20px;
    text-decoration:none !important;
    color:var(--topsaffron-ink) !important;
}
.topsaffron-cat-card:before {
    content:"";
    position:absolute;
    left:-35px;
    bottom:-35px;
    width:120px;
    height:120px;
    background: radial-gradient(circle, rgba(255,196,0,.75), rgba(224,0,0,.16) 55%, transparent 70%);
    border-radius:50%;
}
.topsaffron-cat-card span {
    display:block;
    position:relative;
    color:var(--topsaffron-red);
    font-weight:800;
    font-size:12px;
    margin-bottom:8px;
}
.topsaffron-cat-card strong {
    position:relative;
    display:block;
    font-size:18px;
    font-weight:900;
}
.topsaffron-products-wrap .products { margin-bottom:0; }
.topsaffron-split {
    display:grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap:18px;
    margin: 52px 0;
}
.topsaffron-panel {
    padding: 30px;
    min-height: 250px;
    background: linear-gradient(135deg, #fff, var(--topsaffron-cream));
}
.topsaffron-panel h2 {
    color:var(--topsaffron-red);
    font-weight:900;
    margin: 12px 0;
}
.topsaffron-panel p { color:var(--topsaffron-muted); }
.topsaffron-panel a {
    display:inline-flex;
    margin-top:10px;
    color:#fff !important;
    background:var(--topsaffron-red);
    padding:10px 22px;
    border-radius:999px;
    text-decoration:none !important;
    font-weight:800;
}
.topsaffron-info-grid {
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap:16px;
}
.topsaffron-info-grid article { padding:24px; }
.topsaffron-info-grid h3 {
    color:var(--topsaffron-red);
    font-weight:900;
    margin:0 0 8px;
}
.topsaffron-info-grid p { color:var(--topsaffron-muted); margin:0; }
.topsaffron-contact-strip {
    display:flex;
    flex-wrap:wrap;
    gap:14px 26px;
    align-items:center;
    justify-content:center;
    margin: 48px 0 20px;
    padding: 22px;
    background: var(--topsaffron-red);
    color:#fff;
    border-radius: 24px;
}
.topsaffron-contact-strip strong { font-size:20px; }
.topsaffron-contact-strip span {
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
}
.topsaffron-note {
    padding:18px 20px;
    background:var(--topsaffron-cream);
    border:1px solid var(--topsaffron-border);
    border-radius:18px;
}
@media (max-width: 1024px){
    .topsaffron-hero { grid-template-columns: 1fr; }
    .topsaffron-cat-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .topsaffron-trust { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 767px){
    .topsaffron-hero { padding: 34px 18px; border-radius: 22px; }
    .topsaffron-cat-grid,
    .topsaffron-info-grid,
    .topsaffron-split { grid-template-columns: 1fr; }
    .topsaffron-trust { grid-template-columns: 1fr; }
    .topsaffron-section__head { display:block; }
    .topsaffron-pack-card { width:100%; }
}
