/* Stone Galleria Contextual Discovery V7: restrained editorial image mosaic. */
.sg-cd-v7{clear:both;padding:clamp(32px,5vw,64px) 0;color:#282d31}
.sg-cd-v7 .sg-cd-head{margin:0 0 24px}
.sg-cd-v7 .sg-cd-heading{margin:0 0 8px;font-size:clamp(1.55rem,2.5vw,2.25rem);font-weight:600;line-height:1.23;color:#282d31}
.sg-cd-v7 .sg-cd-intro{margin:0;color:#5d6368;font-size:clamp(.92rem,1.2vw,1.05rem);line-height:1.6;max-width:900px}
.sg-cd-v7 .sg-cd-links{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(170px,16vw,230px);gap:14px}
.sg-cd-v7 .sg-cd-tile{list-style:none!important;position:relative;grid-column:span 3;min-width:0;min-height:0;margin:0!important;padding:0!important;overflow:hidden;border-radius:5px;background:#e8e8e4}
.sg-cd-v7 .sg-cd-tile:first-child{grid-column:span 6;grid-row:span 2}
.sg-cd-v7 .sg-cd-count-1 .sg-cd-tile:first-child{grid-column:span 12;grid-row:span 2}
.sg-cd-v7 .sg-cd-count-2 .sg-cd-tile:nth-child(2){grid-column:span 6;grid-row:span 2}
.sg-cd-v7 .sg-cd-count-3 .sg-cd-tile:nth-child(n+2){grid-column:span 6}
.sg-cd-v7 .sg-cd-count-4 .sg-cd-tile:nth-child(4){grid-column:span 6}
.sg-cd-v7 .sg-cd-count-6 .sg-cd-tile:nth-child(6){grid-column:span 12}
.sg-cd-v7 .sg-cd-link{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;color:#fff!important;background:#3a4145;text-decoration:none!important;border:0!important;box-shadow:none!important;isolation:isolate}
.sg-cd-v7 .sg-cd-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.sg-cd-v7 .sg-cd-has-image .sg-cd-link::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06) 12%,rgba(0,0,0,.04) 30%,rgba(0,0,0,.76) 100%)}
.sg-cd-v7 .sg-cd-no-image .sg-cd-link{background:linear-gradient(145deg,#303943,#182029)}
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-category .sg-cd-link{background:linear-gradient(140deg,#72746c,#434940)}
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-blog .sg-cd-link{background:linear-gradient(140deg,#4d565b,#252d32)}
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-calculator .sg-cd-link{background:linear-gradient(140deg,#374c57,#23333b)}
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list .sg-cd-link{background:linear-gradient(135deg,#222528,#111519)}
.sg-cd-v7 .sg-cd-graphic{position:absolute;inset:18% 10% 18% 43%;opacity:.14;pointer-events:none;border:1px solid currentColor;transform:rotate(-9deg)}
.sg-cd-v7 .sg-cd-graphic span{position:absolute;display:block;height:1px;left:12%;right:12%;background:currentColor}
.sg-cd-v7 .sg-cd-graphic span:nth-child(1){top:26%}.sg-cd-v7 .sg-cd-graphic span:nth-child(2){top:48%}.sg-cd-v7 .sg-cd-graphic span:nth-child(3){top:70%;right:32%}
.sg-cd-v7 .sg-cd-content{position:absolute;z-index:2;inset:auto 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:clamp(16px,2vw,28px) clamp(17px,2vw,28px) 22px;max-width:100%;overflow-wrap:anywhere}
.sg-cd-v7 .sg-cd-link-title{display:block;color:inherit!important;font-size:clamp(1.05rem,1.5vw,1.43rem);line-height:1.28;font-weight:650;letter-spacing:-.012em;max-width:100%;text-shadow:0 1px 4px rgba(0,0,0,.15)}
.sg-cd-v7 .sg-cd-tile:first-child .sg-cd-link-title{font-size:clamp(1.4rem,2.4vw,2.2rem)}
.sg-cd-v7 .sg-cd-link-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:rgba(255,255,255,.91);font-size:.9rem;line-height:1.45;max-width:48ch}
.sg-cd-v7 .sg-cd-arrow{position:absolute;right:15px;top:-6px;color:rgba(255,255,255,.85);font-size:1.35rem;line-height:1}
.sg-cd-v7[dir="rtl"] .sg-cd-content{align-items:flex-start;text-align:right}
.sg-cd-v7[dir="rtl"] .sg-cd-arrow{right:auto;left:15px;transform:scaleX(-1)}
.sg-cd-v7 .sg-cd-link:focus-visible{outline:3px solid #d3a366;outline-offset:-4px}
@media(hover:hover){.sg-cd-v7 .sg-cd-link:hover .sg-cd-image{transform:scale(1.035)}}
@media(max-width:991px){
.sg-cd-v7 .sg-cd-links{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:210px;gap:12px}
.sg-cd-v7 .sg-cd-tile,.sg-cd-v7 .sg-cd-count-1 .sg-cd-tile:first-child,.sg-cd-v7 .sg-cd-count-2 .sg-cd-tile:nth-child(2),.sg-cd-v7 .sg-cd-count-3 .sg-cd-tile:nth-child(n+2),.sg-cd-v7 .sg-cd-count-4 .sg-cd-tile:nth-child(4),.sg-cd-v7 .sg-cd-count-6 .sg-cd-tile:nth-child(6){grid-column:span 1;grid-row:span 1}
.sg-cd-v7 .sg-cd-tile:first-child{grid-column:span 2;grid-row:span 1;min-height:280px}
.sg-cd-v7 .sg-cd-tile:last-child:nth-child(even){grid-column:span 2}
}
@media(max-width:575px){
.sg-cd-v7 .sg-cd-links{grid-template-columns:minmax(0,1fr);grid-auto-rows:210px;gap:10px}
.sg-cd-v7 .sg-cd-tile,.sg-cd-v7 .sg-cd-tile:first-child,.sg-cd-v7 .sg-cd-tile:last-child:nth-child(even){grid-column:1/-1;grid-row:span 1;min-height:0}
.sg-cd-v7 .sg-cd-tile:first-child{min-height:270px}
.sg-cd-v7 .sg-cd-link-title{font-size:1.15rem}
.sg-cd-v7 .sg-cd-tile:first-child .sg-cd-link-title{font-size:1.45rem}
.sg-cd-v7 .sg-cd-content{padding:20px}
.sg-cd-v7 .sg-cd-head{margin-bottom:19px}
}
@media(prefers-reduced-motion:reduce){.sg-cd-v7 .sg-cd-image{transition:none}}

/* SG V7 APPROVED DESIGN PREVIEW 3 */

/* Card geometry */
.sg-cd-v7 .sg-cd-tile {
    border-radius: 9px;
}

/* Photographic overlays */
.sg-cd-v7 .sg-cd-has-image .sg-cd-link::before {
    background: linear-gradient(
        180deg,
        rgba(0,0,0,.10) 0%,
        rgba(0,0,0,.04) 35%,
        rgba(0,0,0,.50) 72%,
        rgba(0,0,0,.92) 100%
    );
}

/* Typography */
.sg-cd-v7 .sg-cd-content {
    padding: 28px 30px 30px;
    gap: 9px;
}

.sg-cd-v7 .sg-cd-link-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: clamp(1.2rem, 1.5vw, 1.65rem);
    font-weight: 600;
    line-height: 1.22;
    letter-spacing: -.025em;
    max-width: calc(100% - 35px);
}

.sg-cd-v7 .sg-cd-tile:first-child .sg-cd-link-title {
    font-size: clamp(2rem, 3vw, 2.7rem);
    font-weight: 650;
    line-height: 1.12;
    max-width: 95%;
}

/* Circular navigation arrows */
.sg-cd-v7 .sg-cd-arrow {
    display: none !important;
}

.sg-cd-v7 .sg-cd-link::after {
    content: "↗";
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 4;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 50%;
    background: rgba(0,0,0,.28);
    color: #fff;
    font: 25px/1 Arial,sans-serif;
    pointer-events: none;
    box-sizing: border-box;
}

/* Preserve RTL positioning */
.sg-cd-v7[dir="rtl"] .sg-cd-link::after {
    right: auto;
    left: 20px;
    transform: scaleX(-1);
}

/* Text-only tile treatment */
.sg-cd-v7 .sg-cd-no-image .sg-cd-link {
    background: linear-gradient(
        145deg,
        #30363a 0%,
        #131719 85%
    );
}

.sg-cd-v7 .sg-cd-no-image .sg-cd-graphic {
    opacity: .42;
    transform: rotate(-7deg) scale(1.04);
}

/* Mobile visual refinements only.
   Existing carousel mechanics remain untouched. */
@media (max-width: 575px) {
    .sg-cd-v7 .sg-cd-content {
        padding: 22px;
    }

    .sg-cd-v7 .sg-cd-link-title {
        font-size: 1.18rem;
    }

    .sg-cd-v7 .sg-cd-tile:first-child .sg-cd-link-title {
        font-size: 1.7rem;
    }

    .sg-cd-v7 .sg-cd-link::after {
        width: 34px;
        height: 34px;
        font-size: 21px;
        top: 15px;
        right: 15px;
    }

    .sg-cd-v7[dir="rtl"] .sg-cd-link::after {
        right: auto;
        left: 15px;
    }
}

/* SG V7 ARCHITECTURAL PRICE CARD */

.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list .sg-cd-link {
    background:
        radial-gradient(
            ellipse at 78% 25%,
            rgba(185,165,128,.18),
            transparent 55%
        ),
        linear-gradient(
            135deg,
            #333b3e 0%,
            #1a2025 65%,
            #111519 100%
        );
}

/* Decorative pricing label, English pages */
html:lang(en) .sg-cd-v7
.sg-cd-no-image.sg-cd-type-price_list
.sg-cd-link::before {
    content: "STONE PRICING";
    position: absolute;
    top: 27px;
    left: 29px;
    z-index: 2;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
    color: #d4bea1;
    pointer-events: none;
}

/* Layered stone sample illustration */
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list
.sg-cd-graphic {
    position: absolute;
    inset: auto;
    top: 24%;
    right: 19%;
    width: 39%;
    height: 41%;
    opacity: 1;
    transform: rotate(-8deg);
    border-radius: 2px;
    border: 1px solid rgba(226,215,195,.48);
    background:
        repeating-linear-gradient(
            135deg,
            transparent 0px,
            transparent 18px,
            rgba(205,200,185,.065) 19px,
            transparent 20px
        ),
        linear-gradient(145deg,#41494b,#22282b);
    box-shadow:
        -10px 9px 0 -1px #293137,
        -11px 10px 0 0 rgba(216,196,160,.38),
        -21px 19px 0 -1px #1b2329,
        -22px 20px 0 0 rgba(216,196,160,.25),
        0 20px 35px rgba(0,0,0,.28);
    pointer-events: none;
}

/* Engraved sample lines */
.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list
.sg-cd-graphic span {
    height: 1px;
    left: 17%;
    right: 17%;
    background: rgba(228,216,194,.44);
}

.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list
.sg-cd-graphic span:nth-child(1) {
    top: 29%;
}

.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list
.sg-cd-graphic span:nth-child(2) {
    top: 49%;
}

.sg-cd-v7 .sg-cd-no-image.sg-cd-type-price_list
.sg-cd-graphic span:nth-child(3) {
    top: 69%;
    right: 35%;
}

/* Responsive label */
@media (max-width:575px) {
    html:lang(en) .sg-cd-v7
    .sg-cd-no-image.sg-cd-type-price_list
    .sg-cd-link::before {
        top: 22px;
        left: 22px;
    }
}

/* SG V7.5 BALANCED SECTION SPACING */

/*
 * Desktop category-page rhythm.
 * Adjust actual container padding rather than
 * applying negative margins to the discovery section.
 */

@media (min-width: 992px) {

    /* Product section: reduce bottom whitespace */
    main:has(> .sg-cd-v7)
    > .sub-section.nsc-section:has(.image-container.product-page) {
        padding-bottom: 35px !important;
    }

    /* Discovery: balanced internal breathing room */
    main > .sg-cd-v7 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 32px !important;
        padding-bottom: 32px !important;
    }

    /* Assistance section: closer to discovery mosaic */
    main > .sg-cd-v7 + .sub-section.resources {
        padding-top: 45px !important;
    }
}

/* SG V7.6 HELP SECTION BACKGROUND */

/*
 * Soft stone-grey transition after Contextual Discovery.
 * Preserve existing cards, typography, and mobile scrolling.
 */

.sg-cd-v7 + .sub-section.resources {
    background: #f6f7f5 !important;
    border-top: 1px solid #e7e9e5;
}
