/* Approved commerce composition: the reference's spacing, imagery, motion and card rhythm.
   Colors stay in Sovengrid's blue/navy/amber family. Scoped to the public store. */
body.sg-store-page {
    --commerce-canvas:#f7f8fa;
    --commerce-ink:#1b3049;
    --commerce-muted:#65768a;
    --commerce-line:#e5eaf0;
    --commerce-blue:#2563eb;
    --commerce-deep:#174b91;
    --commerce-hero:#c8e0f2;
    --commerce-tile:#a9d3f0;
    --commerce-gold:#f2d092;
    --commerce-shadow:0 17px 38px rgba(25,55,87,.12);
    background:var(--commerce-canvas);
    color:var(--commerce-ink);
    font-family:var(--font-sans, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}


body.sg-store-page :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--commerce-blue);outline-offset:3px; }
body.sg-store-page :is(input,select,textarea):focus:not(:focus-visible) { outline:none; }

/* Portada: stories + one image-led main banner + two image-led promotions. */
body.sg-index-page .sg-home-shell { padding-top:12px; }
.sg-commerce-stories { display:flex;align-items:flex-start;gap:clamp(18px,4.5vw,75px);margin:14px 0 24px;overflow-x:auto;scrollbar-width:none; }
.sg-commerce-stories::-webkit-scrollbar { display:none; }
.sg-commerce-story { display:block;min-width:94px;text-align:center;text-decoration:none;color:#273b50;font-size:12px;font-weight:750;line-height:1.25; }
.sg-commerce-story__figure { display:grid;place-items:center;width:88px;height:88px;overflow:hidden;margin:0 auto 9px;border-radius:50%;background:#d8e9f7;color:#1d5a99;font-size:30px;transition:transform .26s,box-shadow .26s; }
.sg-commerce-story:nth-child(3n/**/+2) .sg-commerce-story__figure { background:#e3e8f5; }
.sg-commerce-story:nth-child(3n) .sg-commerce-story__figure { background:#f1e0c3; }
.sg-commerce-story__figure img { width:100%;height:100%;object-fit:contain;transform:scale(1.45); }
.sg-commerce-story:hover .sg-commerce-story__figure { transform:translateY(-4px);box-shadow:0 8px 17px rgba(30,48,64,.15); }
body.sg-index-page.sg-officevibe-store .sg-index-hero { grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:20px;min-height:380px; }
body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero__core { min-height:380px;border-radius:10px;background:var(--commerce-hero);padding:clamp(28px,3vw,40px);color:#204c73; }
body.sg-index-page .sg-index-hero__core::before { width:540px;height:540px;inset:-75px -50px auto auto;border:0;background:rgba(255,255,255,.2);box-shadow:0 0 0 75px rgba(255,255,255,.08); }
body.sg-index-page .sg-index-hero__core::after { display:none; }
body.sg-index-page .sg-index-hero__topline { color:#1d5a99;letter-spacing:.09em;text-transform:uppercase; }
body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero h1 { max-width:55%;color:#204c73;font-size:clamp(26px,2.45vw,39px);line-height:1.2;letter-spacing:-.04em; }
body.sg-index-page .sg-index-hero h1 em { color:#1d5a99; }
body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero__lead { max-width:55%;color:#47647d;font-size:13px; }
body.sg-index-page .sg-market-hero-art { right:-3%;bottom:-14%;width:58%;height:120%; }
body.sg-index-page .sg-market-hero-art img { filter:drop-shadow(0 16px 15px rgba(35,65,94,.19)); }
body.sg-index-page .sg-index-hero .sg-index-button--primary { border-radius:5px;background:#fff;color:#204c73;box-shadow:0 5px 14px rgba(35,65,94,.11); }
body.sg-index-page .sg-index-hero .sg-index-button--quiet { border-color:rgba(32,76,115,.5);color:#204c73; }
body.sg-index-page .sg-index-hero .sg-index-button--primary:hover { background:#f6fbff;transform:translateY(-2px); }
body.sg-index-page.sg-officevibe-store .sg-index-rail__page { gap:20px; }
body.sg-index-page.sg-officevibe-store .sg-index-service { min-height:380px;align-content:start;padding:46px 20px 160px;border-radius:10px;background:var(--commerce-tile);color:#215678;text-align:center; }
body.sg-index-page.sg-officevibe-store .sg-index-service:nth-child(2) { background:var(--commerce-gold);color:#6e4a20; }
body.sg-index-page .sg-index-service__body { position:relative;z-index:2; }
body.sg-index-page .sg-index-service__body strong { color:inherit;font-size:clamp(18px,1.65vw,24px); }
body.sg-index-page .sg-index-service__body em { display:block;font-style:normal;color:#3d6583;font-size:12px; }
body.sg-index-page .sg-index-service:nth-child(2) .sg-index-service__body em { color:#765a38; }
body.sg-index-page .sg-ref-service-art { right:4%;bottom:-12px;width:92%;height:52%;object-fit:contain;filter:drop-shadow(0 10px 12px rgba(42,60,63,.16)); }
body.sg-index-page .sg-index-rail__pager { border-radius:25px;background:#fff; }
body.sg-index-page .sg-style-trust-strip { margin:20px 0 0;padding:17px 20px;border:0;border-radius:10px;background:#fff; }
body.sg-index-page .sg-style-trust-strip strong { color:#3d4c5b;font-size:13px; }
body.sg-index-page .sg-index-section { margin-top:78px; }
body.sg-index-page .sg-index-section__head { margin-bottom:27px; }
body.sg-index-page .sg-index-section__head h2 { color:#25364a;font-size:22px;letter-spacing:-.03em; }
body.sg-index-page.sg-officevibe-store .sg-index-category-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0;background:transparent; }
body.sg-index-page.sg-officevibe-store .sg-index-category,
body.sg-index-page.sg-officevibe-store .sg-index-category:first-child { display:grid;grid-column:auto;grid-template-columns:42% minmax(0,1fr);grid-template-rows:1fr;align-items:center;justify-content:stretch;min-height:206px;gap:14px;padding:15px;border:0;border-radius:10px;background:#fff;text-align:left;box-shadow:none; }
body.sg-index-page .sg-index-category::before { display:none; }
body.sg-index-page .sg-commerce-category-art { display:grid;place-items:center;align-self:stretch;overflow:hidden;border-radius:9px;background:#dcebf5; }
body.sg-index-page .sg-index-category:nth-child(3n/**/+2) .sg-commerce-category-art { background:#e1e6f4; }
body.sg-index-page .sg-index-category:nth-child(3n) .sg-commerce-category-art { background:#f0e3d1; }
body.sg-index-page .sg-commerce-category-art img { width:100%;height:100%;max-height:172px;object-fit:contain;transform:scale(1.36);transition:transform .35s; }
body.sg-index-page .sg-index-category__number { display:none !important; }
body.sg-index-page .sg-index-category__copy strong,
body.sg-index-page .sg-index-category:first-child .sg-index-category__copy strong { color:#25364a;font-size:15px;line-height:1.35; }
body.sg-index-page .sg-index-category__copy small { color:#80909e;font-size:12px; }
body.sg-index-page.sg-officevibe-store .sg-index-category:hover { background:#fff;box-shadow:var(--commerce-shadow);transform:translateY(-3px); }
body.sg-index-page .sg-index-category:hover .sg-commerce-category-art img { transform:scale(1.47) rotate(-2deg); }
body.sg-index-page .sg-commerce-products__controls { display:flex;align-items:center;gap:7px;flex-wrap:wrap; }
body.sg-index-page .sg-commerce-products__controls a { margin-right:10px; }
body.sg-index-page .sg-commerce-products__controls button { display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--commerce-line);border-radius:8px;background:#fff;color:var(--commerce-ink); }
body.sg-index-page .sg-commerce-products__controls button:hover { border-color:var(--commerce-blue);color:var(--commerce-deep); }
body.sg-index-page .sg-index-product-grid { display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 80px)/5);grid-template-columns:none;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9cbde1 var(--commerce-line);padding:0 0 17px; }
body.sg-index-page .sg-index-product-slot { min-width:0;scroll-snap-align:start; }
body.sg-index-page .sg-index-product-card.sg-catalog-card { border:0 !important;border-radius:10px !important;background:#fff;box-shadow:none; }
body.sg-index-page .sg-index-product-card.sg-catalog-card:hover { border:0 !important;box-shadow:var(--commerce-shadow); }
body.sg-index-page .sg-index-product-card .sg-product-media--card { border:0;background:#fff !important; }
body.sg-index-page .sg-index-product-card .sg-product-media--card img { object-fit:contain;padding:14px; }
body.sg-index-page .sg-index-product-card .sg-catalog-card__body { padding:13px !important; }
body.sg-index-page .sg-index-product-card .sg-catalog-card__title a { color:#25364a;font-size:14px; }
body.sg-index-page .sg-index-product-card .sg-catalog-card__facts span { border-radius:12px;background:#edf3f8;color:#557284; }

/* The same merchandise finish on the catalog, product pages and buying journey. */
body.sg-store-page .sg-catalog-products-grid .sg-catalog-card,
body.sg-store-page .sg-compare-card,
body.sg-store-page .sg-combo-product { border:1px solid var(--commerce-line) !important;border-radius:10px !important;background:#fff;box-shadow:none; }
body.sg-store-page .sg-catalog-products-grid .sg-catalog-card:hover,
body.sg-store-page .sg-combo-product:hover { box-shadow:var(--commerce-shadow);transform:translateY(-2px); }
body.sg-store-page .sg-catalog-card .sg-product-media--card { background:#fff !important; }
body.sg-store-page .sg-catalog-card .sg-product-media--card img { object-fit:contain;padding:12px; }
body.sg-store-page .sg-catalog-card__title a { color:var(--commerce-ink);font-size:14px; }
body.sg-store-page .sg-catalog-card__price { color:var(--commerce-deep); }
body.sg-store-page .sg-shop-shell { max-width:1480px; }
body.sg-store-page .sg-shop-hero { border-radius:10px;background:var(--commerce-hero);color:#204c73;box-shadow:none; }
body.sg-store-page .sg-shop-hero h1 { color:#204c73;letter-spacing:-.04em; }
body.sg-store-page .sg-shop-hero p { color:#47647d; }
body.sg-store-page .sg-shop-filter-rail,
body.sg-store-page .sg-shop-mobile-filters,
body.sg-store-page .sg-shop-toolbar { border-radius:10px;background:#fff; }
body.sg-store-page .sg-shop-toolbar :is(input[type=search],button[type=submit]) { border-radius:7px; }
body.sg-store-page .sg-shop-toolbar button[type=submit] { background:var(--commerce-blue);color:#fff; }
body.sg-store-page .sg-shop-toolbar button[type=submit]:hover { background:var(--commerce-deep); }
body.sg-store-page .sg-combo-category-choice,
body.sg-store-page .sg-combo-summary,
body.sg-store-page .sg-combo-category-stage,
body.sg-store-page .sg-combo-catalog,
body.sg-store-page .sg-compare-summary,
body.sg-store-page .sg-compare-empty { border-radius:10px;background:#fff; }
body.sg-store-page .sg-checkout-section,
body.sg-store-page .sg-cart-shell :is(article,aside) { border-radius:10px; }
body.sg-store-page .sg-checkout-heading h1,
body.sg-store-page .sg-compare-title,
body.sg-store-page .sg-combo-builder__headline h1 { color:var(--commerce-ink);letter-spacing:-.04em; }
body.sg-store-page .sg-checkout-customer input,
body.sg-store-page .sg-checkout-customer textarea { border-radius:7px; }
body.sg-store-page .sg-checkout-customer :is(input,textarea):focus-visible { border-color:var(--commerce-blue);box-shadow:0 0 0 4px rgba(37,99,235,.12); }
body.sg-store-page .sg-compare-primary,
body.sg-store-page .sg-combo-summary__checkout { border-radius:7px; }
@media (max-width:1180px) {
    body.sg-index-page.sg-officevibe-store .sg-index-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.sg-index-page .sg-index-product-grid { grid-auto-columns:calc((100% - 40px)/3); }
}
@media (max-width:1050px) {
    body.sg-index-page.sg-officevibe-store .sg-index-hero { grid-template-columns:1fr; }
    body.sg-index-page.sg-officevibe-store .sg-index-service { min-height:240px;padding:38px 25px 105px; }
    body.sg-index-page .sg-ref-service-art { height:51%; }
}
@media (max-width:680px) {
    .sg-commerce-stories { gap:12px;margin-top:7px; }
    .sg-commerce-story { min-width:78px;font-size:10px; }
    .sg-commerce-story__figure { width:66px;height:66px; }
    body.sg-index-page.sg-officevibe-store .sg-index-hero { gap:10px; }
    body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero__core { min-height:490px;padding:29px 22px 210px; }
    body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero h1,
    body.sg-store-page.sg-index-page.sg-officevibe-store .sg-index-hero__lead { max-width:100%; }
    body.sg-index-page .sg-market-hero-art { right:0;bottom:-17%;width:92%;height:78%; }
    body.sg-index-page .sg-index-hero__actions { display:flex;flex-wrap:wrap; }
    body.sg-index-page.sg-officevibe-store .sg-index-service { min-height:213px;padding:40px 11px 92px; }
    body.sg-index-page .sg-index-service__body strong { font-size:16px; }
    body.sg-index-page .sg-index-service__body em { display:none; }
    body.sg-index-page .sg-ref-service-art { right:2%;bottom:-5px;width:96%;height:47%;opacity:1; }
    body.sg-index-page.sg-officevibe-store .sg-index-category-grid { gap:10px; }
    body.sg-index-page.sg-officevibe-store .sg-index-category,
    body.sg-index-page.sg-officevibe-store .sg-index-category:first-child { min-height:170px;grid-template-columns:1fr;grid-template-rows:85px auto;gap:7px;padding:10px;text-align:left; }
    body.sg-index-page .sg-commerce-category-art img { max-height:85px;transform:scale(1.2); }
    body.sg-index-page .sg-index-category__copy strong { font-size:12px; }
    body.sg-index-page .sg-index-category__copy small { display:none; }
    body.sg-index-page .sg-index-product-grid { grid-auto-columns:calc((100% - 10px)/2);gap:10px; }
    body.sg-index-page .sg-index-section { margin-top:54px; }
}
@media (prefers-reduced-motion:reduce) {
    body.sg-store-page *,body.sg-store-page *::before,body.sg-store-page *::after { scroll-behavior:auto !important;animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important; }
}
