/*
 * Sapphire Home — Premium V2 visual layer
 * Scope: frontend presentation only.
 * Commerce routes, forms, add-to-cart data attributes, checkout markup,
 * Iyzico/Yurtiçi logic and controllers/models are intentionally untouched.
 */

:root {
  --shp-ink: #11110f;
  --shp-muted: #716f69;
  --shp-line: rgba(17,17,15,.14);
  --shp-soft-line: rgba(17,17,15,.08);
  --shp-paper: #fff;
  --shp-warm: #f6f3ed;
  --shp-warm-2: #eee8de;
  --shp-accent: #9b7d4e;
  --shp-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --shp-sans: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  --shp-max: 1320px;
  --shp-header: 76px;
  --shp-nav: 44px;
  --shp-ease: cubic-bezier(.22,.61,.36,1);
}

/* ---------- foundation ---------- */
html { scroll-behavior: smooth; }
body.sh-premium-v2 {
  background: var(--shp-paper) !important;
  color: var(--shp-ink) !important;
  font-family: var(--shp-sans) !important;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.sh-premium-v2 *, body.sh-premium-v2 *::before, body.sh-premium-v2 *::after { box-sizing: border-box; }
body.sh-premium-v2 a { color: inherit; }
body.sh-premium-v2 a:hover, body.sh-premium-v2 a:focus { color: inherit; text-decoration: none; }
body.sh-premium-v2 h1,
body.sh-premium-v2 h2,
body.sh-premium-v2 h3,
body.sh-premium-v2 h4,
body.sh-premium-v2 h5,
body.sh-premium-v2 h6 { font-family: var(--shp-serif) !important; color: var(--shp-ink); font-weight: 500; }
body.sh-premium-v2 .container { width: min(100% - 48px, var(--shp-max)); max-width: var(--shp-max); }
body.sh-premium-v2 #sh-page-wrapper { min-width: 0; overflow: clip; }
body.sh-premium-v2 img { max-width: 100%; }
body.sh-premium-v2 :focus-visible { outline: 1px solid var(--shp-ink); outline-offset: 3px; }

/* ---------- announcement ---------- */
body.sh-premium-v2 #sapphire-announcement {
  min-height: 29px;
  padding: 7px 18px !important;
  background: var(--shp-ink) !important;
  color: #fff !important;
  font-size: 9px !important;
  line-height: 1.45;
  letter-spacing: .18em !important;
  text-transform: uppercase;
}

/* ---------- header / brand ---------- */
body.sh-premium-v2 #sapphire-sticky-wrapper {
  position: relative;
  z-index: 1030;
  background: rgba(255,255,255,.985);
}
body.sh-premium-v2 #sapphire-header {
  height: var(--shp-header);
  min-height: var(--shp-header);
  padding: 0 !important;
  background: rgba(255,255,255,.985) !important;
  border-bottom: 1px solid var(--shp-soft-line);
}
body.sh-premium-v2 #sapphire-header > .container {
  width: 100% !important;
  max-width: none !important;
  padding: 0 42px !important;
}
body.sh-premium-v2 .header-row { min-height: var(--shp-header) !important; height: var(--shp-header); }
body.sh-premium-v2 .header-col-center { z-index: 3; }
body.sh-premium-v2 .header-logo-link { display: inline-flex !important; align-items: center; justify-content: center; min-height: 44px; }
body.sh-premium-v2 .header-logo-link img { display: none !important; }
body.sh-premium-v2 .header-logo-link::after,
body.sh-premium-v2 .header-logo-text {
  content: 'SAPPHIRE HOME';
  font-family: var(--shp-serif) !important;
  font-size: 27px !important;
  line-height: 1;
  font-weight: 500 !important;
  letter-spacing: .18em !important;
  color: var(--shp-ink) !important;
  white-space: nowrap;
}
body.sh-premium-v2 .header-actions { gap: 25px !important; }
body.sh-premium-v2 .header-action-btn,
body.sh-premium-v2 .b2b-sticky-header-btn,
body.sh-premium-v2 .gift-card-sticky-btn {
  min-height: 32px;
  border: 0 !important;
  background: transparent !important;
  color: var(--shp-ink) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  font-family: var(--shp-sans) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase;
}
body.sh-premium-v2 .b2b-sticky-header-btn,
body.sh-premium-v2 .gift-card-sticky-btn { display: none !important; }
body.sh-premium-v2 #sapphire-search-toggle { opacity: 0; pointer-events: none; width: 1px; }
body.sh-premium-v2 #sapphire-search-toggle-right { display: inline-flex !important; }
body.sh-premium-v2 #sapphire-search-toggle-right svg,
body.sh-premium-v2 #sapphire-profile-toggle > svg,
body.sh-premium-v2 #sapphire-cart-toggle > svg,
body.sh-premium-v2 .header-col-right a[aria-label="Favoriler"] > svg { display: none !important; }
body.sh-premium-v2 #sapphire-search-toggle-right::after { content: 'SEARCH'; }
body.sh-premium-v2 #sapphire-profile-toggle::after { content: 'ACCOUNT'; }
body.sh-premium-v2 #sapphire-cart-toggle::after { content: 'BAG'; }
body.sh-premium-v2 .header-col-right a[aria-label="Favoriler"]::after { content: 'WISHLIST'; }
body.sh-premium-v2 #sapphire-profile-toggle .avatar-circle {
  width: 28px; height: 28px; margin-right: 2px;
  background: var(--shp-ink) !important; color:#fff;
}
body.sh-premium-v2 #sapphire-profile-toggle .avatar-circle + * { display:none; }
body.sh-premium-v2 .cart-badge {
  top: -1px !important; right: -11px !important;
  min-width: 14px !important; height: 14px; padding: 1px 3px !important;
  border-radius: 50% !important; background: var(--shp-ink) !important;
  font-size: 8px !important; line-height: 12px !important;
}
body.sh-premium-v2 .header-action-btn:hover { opacity: .52 !important; }

/* ---------- desktop collection nav ---------- */
@media (min-width: 992px) {
  body.sh-premium-v2 #sapphire-menu-collapse {
    display: block !important;
    height: var(--shp-nav) !important;
    overflow: visible !important;
    background: rgba(255,255,255,.985);
    border-bottom: 1px solid var(--shp-line);
  }
  body.sh-premium-v2 #sapphire-menu { height: var(--shp-nav); padding: 0 !important; background: transparent !important; }
  body.sh-premium-v2 #sapphire-menu .sapphire-menu-container {
    width: min(100% - 84px, var(--shp-max));
    height: 100%; padding: 0 !important;
    display: flex; align-items: center; justify-content: center;
  }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list {
    height: 100%; display: flex !important; align-items: center; justify-content: center;
    gap: clamp(18px, 2.1vw, 34px) !important; margin: 0 !important;
  }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list li { height: 100%; }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list li a {
    position: relative; display: flex !important; align-items: center; height: 100%; padding: 0 !important;
    font-family: var(--shp-sans) !important; font-size: 10px !important; font-weight: 500 !important;
    letter-spacing: .14em !important; color: var(--shp-ink) !important;
  }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list li a::after {
    content:''; position:absolute; left:0; right:0; bottom:9px; height:1px; background:var(--shp-ink);
    transform:scaleX(0); transform-origin:center; transition:transform .18s ease;
  }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list li a:hover::after { transform:scaleX(1); }

  /* Existing sticky JS moves menu into header row. Style that state, don't fight it. */
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky { background:#fff; border-bottom:1px solid var(--shp-line); }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky #sapphire-header { height:64px; min-height:64px; border-bottom:0; }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky .header-row { height:64px !important; min-height:64px !important; }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky .header-logo-link::after { font-size:20px !important; }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky .header-row #sapphire-menu-collapse.sticky-menu-inrow {
    height:64px !important; border:0 !important; padding-left:28px !important;
  }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky .header-row #sapphire-menu .sapphire-cat-list { gap:20px !important; justify-content:flex-start; }
  body.sh-premium-v2 #sapphire-sticky-wrapper.is-sticky .header-row #sapphire-menu .sapphire-cat-list > li > a { font-size:9px !important; }
}

/* ---------- mobile header/menu ---------- */
@media (max-width: 991px) {
  :root { --shp-header: 66px; }
  body.sh-premium-v2 #sapphire-header > .container { padding: 0 18px !important; }
  body.sh-premium-v2 .header-row { min-height:66px !important; height:66px; }
  body.sh-premium-v2 .header-logo-link::after, body.sh-premium-v2 .header-logo-text { font-size:20px !important; letter-spacing:.13em !important; }
  body.sh-premium-v2 .mobile-flex-actions { gap:13px !important; }
  body.sh-premium-v2 .header-col-right .header-actions { gap:15px !important; }
  body.sh-premium-v2 #sapphire-profile-toggle::after,
  body.sh-premium-v2 #sapphire-cart-toggle::after { display:none; }
  body.sh-premium-v2 #sapphire-profile-toggle > svg,
  body.sh-premium-v2 #sapphire-cart-toggle > svg { display:block !important; width:20px; height:20px; }
  body.sh-premium-v2 #sapphire-menu-collapse { background:#fff; border-bottom:1px solid var(--shp-line); }
  body.sh-premium-v2 #sapphire-menu { padding: 10px 0 18px !important; }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list { padding:0 18px !important; }
  body.sh-premium-v2 #sapphire-menu .sapphire-cat-list li a {
    padding:14px 0 !important; border-bottom:1px solid var(--shp-soft-line);
    font-size:11px !important; letter-spacing:.14em !important; font-weight:500 !important;
  }
  body.sh-premium-v2 .mobile-language-container { border-top:0 !important; margin-top:0 !important; justify-content:flex-start !important; padding:16px 18px 0 !important; }
}

/* ---------- search ---------- */
body.sh-premium-v2 #sapphire-search-dropdown { background:#fff !important; border-bottom:1px solid var(--shp-line); }
body.sh-premium-v2 #sapphire-search-dropdown.open { max-height:110px !important; padding:24px 0 !important; }
body.sh-premium-v2 .search-bar-inner { max-width:760px !important; }
body.sh-premium-v2 .search-bar-inner input {
  height:45px; padding:0 2px !important; border:0 !important; border-bottom:1px solid var(--shp-ink) !important;
  font-size:14px !important; letter-spacing:.03em; box-shadow:none !important;
}
body.sh-premium-v2 .search-bar-inner button { width:45px; height:45px; padding:0 !important; justify-content:center; background:transparent !important; color:var(--shp-ink) !important; border:0 !important; border-bottom:1px solid var(--shp-ink) !important; }

/* ---------- account drawer ---------- */
body.sh-premium-v2 #sapphire-drawer-overlay { background:rgba(9,9,8,.34) !important; backdrop-filter:blur(2px); }
body.sh-premium-v2 #sapphire-drawer { width:min(440px, 94vw) !important; right:min(-440px, -94vw); background:#fff !important; box-shadow:-16px 0 50px rgba(0,0,0,.08) !important; }
body.sh-premium-v2 #sapphire-drawer.open { right:0 !important; }
body.sh-premium-v2 .drawer-top { padding:25px 28px !important; border-bottom:1px solid var(--shp-line) !important; }
body.sh-premium-v2 .drawer-title { font-family:var(--shp-serif) !important; font-size:24px !important; font-weight:500 !important; letter-spacing:.02em; }
body.sh-premium-v2 .drawer-content { padding:28px !important; }
body.sh-premium-v2 .drawer-field input,
body.sh-premium-v2 .drawer-field select { border:1px solid var(--shp-line) !important; border-radius:0 !important; min-height:46px !important; box-shadow:none !important; }
body.sh-premium-v2 .drawer-btn-primary { background:var(--shp-ink) !important; border:1px solid var(--shp-ink) !important; border-radius:0 !important; min-height:48px; letter-spacing:.12em; text-transform:uppercase; font-size:10px !important; }
body.sh-premium-v2 .drawer-btn-secondary { border-radius:0 !important; min-height:48px; letter-spacing:.1em; text-transform:uppercase; font-size:10px !important; }


/* ---------- homepage: OpenCart-native port of approved React prototype ---------- */
body.sh-premium-v2 #shp-v3-home {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  background: #fff;
  color: var(--shp-ink);
}
body.sh-premium-v2 #shp-v3-home .shp-v3-eyebrow {
  margin: 0 0 27px;
  font-family: var(--shp-sans) !important;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .22em;
  line-height: 1.4;
  text-transform: uppercase;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-discover {
  display: inline-block;
  padding: 0 0 8px;
  border: 0;
  border-bottom: 1px solid var(--shp-ink);
  color: var(--shp-ink) !important;
  font-family: var(--shp-sans) !important;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .18em;
  line-height: 1.4;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: opacity 180ms ease;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-discover:hover { opacity: .5; }

/* HERO */
body.sh-premium-v2 .shp-v3-hero {
  min-height: 590px;
  display: grid;
  grid-template-columns: 58% 42%;
  background: #f7f7f5;
  border-bottom: 1px solid var(--shp-soft-line);
}
body.sh-premium-v2 .shp-v3-hero-media {
  display: block;
  min-width: 0;
  height: 590px;
  overflow: hidden;
  background: #eee;
}
body.sh-premium-v2 .shp-v3-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center 59%;
  transition: transform 900ms var(--shp-ease);
}
body.sh-premium-v2 .shp-v3-hero-media:hover img { transform: scale(1.012); }
body.sh-premium-v2 .shp-v3-hero-copy {
  height: 590px;
  padding: 60px 11%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
body.sh-premium-v2 .shp-v3-hero-copy h1 {
  max-width: 640px;
  margin: 0 !important;
  font-family: var(--shp-serif) !important;
  font-size: clamp(54px, 5vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
  color: var(--shp-ink) !important;
}
body.sh-premium-v2 .shp-v3-hero-text {
  max-width: 520px;
  margin: 31px 0 !important;
  font-family: var(--shp-serif) !important;
  font-size: 20px !important;
  font-weight: 400;
  line-height: 1.6 !important;
  color: #44413d;
}

/* INTRO */
body.sh-premium-v2 .shp-v3-intro {
  padding: 125px 20px 110px;
  text-align: center;
  background: #fff;
}
body.sh-premium-v2 .shp-v3-intro .shp-v3-eyebrow { margin-bottom: 32px; }
body.sh-premium-v2 .shp-v3-intro h2 {
  max-width: 900px;
  margin: 0 auto !important;
  font-family: var(--shp-serif) !important;
  font-size: clamp(44px, 5vw, 72px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: -.025em !important;
}
body.sh-premium-v2 .shp-v3-intro-text {
  max-width: 620px;
  margin: 35px auto 0;
  font-family: var(--shp-serif) !important;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.75;
  color: #4c4944;
}

/* PRODUCTS */
body.sh-premium-v2 .shp-v3-products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px;
  background: var(--shp-line);
  border-top: 1px solid var(--shp-line);
  border-bottom: 1px solid var(--shp-line);
}
body.sh-premium-v2 .shp-v3-product { min-width: 0; background: #fff; }
body.sh-premium-v2 .shp-v3-product-link { display: block; }
body.sh-premium-v2 .shp-v3-product-image {
  width: 100%;
  aspect-ratio: .85;
  overflow: hidden;
  background: #f5f5f3;
}
body.sh-premium-v2 .shp-v3-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 700ms cubic-bezier(.2,.7,.2,1);
}
body.sh-premium-v2 .shp-v3-product:hover .shp-v3-product-image img { transform: scale(1.025); }
body.sh-premium-v2 .shp-v3-product-info {
  min-height: 110px;
  padding: 25px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
}
body.sh-premium-v2 .shp-v3-product-info h3 {
  margin: 0 0 8px !important;
  font-family: var(--shp-serif) !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
}
body.sh-premium-v2 .shp-v3-product-info p,
body.sh-premium-v2 .shp-v3-product-info > span {
  margin: 0 !important;
  font-family: var(--shp-sans) !important;
  font-size: 10px !important;
  font-weight: 400;
  letter-spacing: .08em;
}
body.sh-premium-v2 .shp-v3-product-info p { color: #77736c; }
body.sh-premium-v2 .shp-v3-product-info > span { flex-shrink: 0; white-space: nowrap; }
body.sh-premium-v2 .shp-v3-skeleton {
  background: linear-gradient(90deg, #f3f1ed 0%, #faf9f6 50%, #f3f1ed 100%);
  background-size: 200% 100%;
  animation: shpV3Skeleton 1.5s linear infinite;
}
@keyframes shpV3Skeleton { to { background-position: -200% 0; } }

/* STORY */
body.sh-premium-v2 .shp-v3-story {
  min-height: 570px;
  padding: 100px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #20201e;
  color: #fff;
}
body.sh-premium-v2 .shp-v3-story .shp-v3-eyebrow { color: rgba(255,255,255,.72); }
body.sh-premium-v2 .shp-v3-story h2 {
  max-width: 1050px;
  margin: 0 0 42px !important;
  color: #fff !important;
  font-family: var(--shp-serif) !important;
  font-size: clamp(46px, 5.5vw, 80px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: -.03em !important;
}
body.sh-premium-v2 .shp-v3-story-text {
  max-width: 650px;
  margin: -14px auto 38px;
  color: rgba(255,255,255,.72);
  font-family: var(--shp-serif) !important;
  font-size: 17px;
  line-height: 1.75;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-discover-light {
  color: #fff !important;
  border-bottom-color: #fff;
}

/* OpenCart modules below the premium composition */
body.sh-premium-v2 .shp-v3-opencart-modules {
  width: min(100% - 48px, var(--shp-max));
  margin: 0 auto;
  padding: 0;
}
body.sh-premium-v2 .shp-v3-opencart-modules:empty { display: none; }

/* Header click/stacking compatibility with the existing working Twig/JS. */
body.sh-premium-v2 #sapphire-sticky-wrapper { z-index: 5000 !important; }
body.sh-premium-v2 #sapphire-header,
body.sh-premium-v2 #sapphire-menu-collapse,
body.sh-premium-v2 #sapphire-menu,
body.sh-premium-v2 .header-actions,
body.sh-premium-v2 .header-action-btn,
body.sh-premium-v2 #sapphire-menu a { pointer-events: auto !important; }
body.sh-premium-v2 #sapphire-search-dropdown { position: relative; z-index: 4990; }
body.sh-premium-v2 #sapphire-drawer-overlay { z-index: 6000 !important; }
body.sh-premium-v2 #sapphire-drawer { z-index: 6010 !important; }

@media (max-width: 900px) {
  body.sh-premium-v2 .shp-v3-hero {
    min-height: 0;
    display: flex;
    flex-direction: column;
  }
  body.sh-premium-v2 .shp-v3-hero-media {
    width: 100%;
    height: 58vh;
    min-height: 430px;
    order: 1;
  }
  body.sh-premium-v2 .shp-v3-hero-copy {
    width: 100%;
    height: auto;
    min-height: 390px;
    order: 2;
    padding: 65px 25px 75px;
    align-items: center;
    text-align: center;
  }
  body.sh-premium-v2 .shp-v3-hero-copy .shp-v3-eyebrow {
    width: 100%;
    margin-bottom: 32px;
    text-align: center;
  }
  body.sh-premium-v2 .shp-v3-hero-copy h1 {
    width: 100%;
    margin: 0 auto !important;
    font-size: clamp(46px, 13vw, 58px) !important;
    line-height: 1 !important;
    text-align: center;
  }
  body.sh-premium-v2 .shp-v3-hero-text {
    width: 100%;
    max-width: 390px;
    margin: 32px auto !important;
    font-size: 19px !important;
    line-height: 1.55 !important;
    text-align: center;
  }

  body.sh-premium-v2 .shp-v3-intro { padding: 95px 25px 90px; }
  body.sh-premium-v2 .shp-v3-intro h2 {
    max-width: 560px;
    font-size: clamp(42px, 12vw, 54px) !important;
    line-height: 1.02 !important;
  }
  body.sh-premium-v2 .shp-v3-intro-text {
    max-width: 400px;
    margin-top: 32px;
    font-size: 18px;
    line-height: 1.6;
  }

  body.sh-premium-v2 .shp-v3-products { grid-template-columns: 1fr; }
  body.sh-premium-v2 .shp-v3-product-image { aspect-ratio: 1; }
  body.sh-premium-v2 .shp-v3-product-info {
    min-height: 100px;
    padding: 22px 20px 25px;
  }

  body.sh-premium-v2 .shp-v3-story {
    min-height: 500px;
    padding: 80px 25px;
  }
  body.sh-premium-v2 .shp-v3-story h2 {
    font-size: clamp(42px, 12vw, 56px) !important;
  }
}

@media (max-width: 480px) {
  body.sh-premium-v2 .shp-v3-hero-media {
    height: 52vh;
    min-height: 390px;
  }
  body.sh-premium-v2 .shp-v3-hero-copy {
    padding-left: 22px;
    padding-right: 22px;
  }
  body.sh-premium-v2 .shp-v3-intro {
    padding-left: 22px;
    padding-right: 22px;
  }
  body.sh-premium-v2 .shp-v3-product-info h3 {
    font-size: 21px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.sh-premium-v2 .shp-v3-hero-media img,
  body.sh-premium-v2 .shp-v3-product-image img { transition: none !important; }
  body.sh-premium-v2 .shp-v3-skeleton { animation: none !important; }
}

/* ---------- story / brand / shoppable ---------- */

body.sh-premium-v2 .sh-responsive-section { padding:40px 0 80px !important; }
body.sh-premium-v2 .sh-responsive-inner { max-width:var(--shp-max) !important; padding:0 24px !important; }
body.sh-premium-v2 .sh-responsive-img { border-radius:0 !important; box-shadow:none !important; }
body.sh-premium-v2 .shoppable-desktop-tooltip, body.sh-premium-v2 #shoppable-modal { border-radius:0 !important; box-shadow:0 18px 60px rgba(0,0,0,.14) !important; }
body.sh-premium-v2 .shoppable-btn { border-color:#fff !important; background:rgba(255,255,255,.92) !important; color:var(--shp-ink) !important; }

/* ---------- breadcrumbs & generic page shell ---------- */
body.sh-premium-v2 .breadcrumb,
body.sh-premium-v2 .sapphire-breadcrumb { margin:22px 0 38px !important; padding:0 !important; background:transparent !important; border:0 !important; }
body.sh-premium-v2 .breadcrumb > li,
body.sh-premium-v2 .breadcrumb > li > a,
body.sh-premium-v2 .sapphire-breadcrumb li,
body.sh-premium-v2 .sapphire-breadcrumb a { color:#8c8983 !important; font-size:9px !important; letter-spacing:.1em; text-transform:uppercase; }
body.sh-premium-v2 .breadcrumb > li + li:before { color:#bbb !important; }
body.sh-premium-v2 #content > h1 { margin:0 0 34px !important; font-size:clamp(34px,4vw,56px) !important; font-weight:400 !important; letter-spacing:-.025em; }

/* ---------- category / search / specials product grids ---------- */
body.sh-premium-v2 .sc-grid-category { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:44px 26px !important; justify-content:stretch !important; margin-bottom:60px !important; }
body.sh-premium-v2 .sc-grid-category .sc-card { min-height:0 !important; max-width:none !important; }
body.sh-premium-v2 .sc-grid-category .showcase-card-image { aspect-ratio:3/4 !important; }
body.sh-premium-v2 .sc-grid-category .showcase-card-info { text-align:left !important; }
body.sh-premium-v2 .sc-grid-category .sc-card-title { margin:0 0 7px !important; padding:0 !important; text-align:left !important; font-family:var(--shp-serif) !important; font-size:19px !important; font-weight:400 !important; white-space:normal !important; }
body.sh-premium-v2 .sc-grid-category [id^="sc-price-"] { text-align:left; color:var(--shp-muted) !important; font-size:12px !important; font-weight:400 !important; }
body.sh-premium-v2 .pagination > li > a, body.sh-premium-v2 .pagination > li > span { border:0 !important; border-bottom:1px solid transparent !important; color:var(--shp-muted) !important; background:transparent !important; }
body.sh-premium-v2 .pagination > .active > span { color:var(--shp-ink) !important; border-bottom-color:var(--shp-ink) !important; }

/* ---------- product detail ---------- */
body.sh-premium-v2 .sapphire-pdp-container { padding-top:0 !important; }
body.sh-premium-v2 .sapphire-pdp-main { gap:clamp(36px,5vw,82px) !important; align-items:flex-start !important; }
body.sh-premium-v2 .sapphire-pdp-gallery { flex:0 0 58% !important; max-width:58% !important; }
body.sh-premium-v2 .sapphire-pdp-info { flex:1 !important; max-width:none !important; padding-top:8px !important; }
body.sh-premium-v2 .sapphire-gallery-main { background:var(--shp-warm) !important; }
body.sh-premium-v2 .sapphire-gallery-main img { object-fit:cover !important; }
body.sh-premium-v2 .sapphire-thumb-item { border-radius:0 !important; border:1px solid transparent !important; background:var(--shp-warm) !important; }
body.sh-premium-v2 .sapphire-thumb-item.active, body.sh-premium-v2 .sapphire-thumb-item:hover { border-color:var(--shp-ink) !important; }
body.sh-premium-v2 .pdp-title { margin:0 0 14px !important; font-size:clamp(34px,3.4vw,50px) !important; line-height:1.05 !important; font-weight:400 !important; letter-spacing:-.03em; }
body.sh-premium-v2 .pdp-meta { margin-bottom:24px !important; color:#8a8781 !important; font-size:9px !important; letter-spacing:.12em !important; text-transform:uppercase; }
body.sh-premium-v2 .pdp-short-desc { color:var(--shp-muted) !important; font-size:13px !important; line-height:1.85 !important; }
body.sh-premium-v2 .pdp-price-area h2, body.sh-premium-v2 .pdp-price-area .price-new { font-family:var(--shp-sans) !important; font-size:18px !important; font-weight:500 !important; }
body.sh-premium-v2 .pdp-attributes-box { border:1px solid var(--shp-soft-line) !important; border-radius:0 !important; }
body.sh-premium-v2 .pdp-attr-box-item { border-right-color:var(--shp-soft-line) !important; }
body.sh-premium-v2 .sapphire-pill > span { border-radius:0 !important; border-color:var(--shp-line) !important; }
body.sh-premium-v2 .sapphire-pill input:checked + span { background:var(--shp-ink) !important; border-color:var(--shp-ink) !important; color:#fff !important; }
body.sh-premium-v2 .pdp-actions { gap:10px !important; }
body.sh-premium-v2 .pdp-qty-wrapper { height:50px !important; border:1px solid var(--shp-ink) !important; }
body.sh-premium-v2 .pdp-btn-cart { min-height:50px; background:var(--shp-ink) !important; font-size:10px !important; letter-spacing:.16em !important; }
body.sh-premium-v2 .pdp-btn-cart:hover { background:#333 !important; }
body.sh-premium-v2 .pdp-btn-wishlist { border-color:var(--shp-line) !important; }
body.sh-premium-v2 .pdp-fragrance-profile { margin-top:28px !important; background:var(--shp-warm) !important; border:0 !important; border-radius:0 !important; padding:24px !important; }
body.sh-premium-v2 .pdp-accordion-header { font-family:var(--shp-sans) !important; font-size:10px !important; letter-spacing:.14em !important; font-weight:500 !important; }

/* ---------- forms / account / information ---------- */
body.sh-premium-v2 .form-control {
  height:46px; border:1px solid var(--shp-line) !important; border-radius:0 !important; box-shadow:none !important;
  background:#fff; color:var(--shp-ink); font-size:13px;
}
body.sh-premium-v2 textarea.form-control { height:auto; min-height:130px; padding-top:12px; }
body.sh-premium-v2 .form-control:focus { border-color:var(--shp-ink) !important; box-shadow:none !important; }
body.sh-premium-v2 label, body.sh-premium-v2 .control-label { color:#5d5a55; font-size:11px; font-weight:500; }
body.sh-premium-v2 legend { border-bottom:1px solid var(--shp-line) !important; padding-bottom:12px; font-family:var(--shp-serif); font-size:24px; }
body.sh-premium-v2 .btn { border-radius:0 !important; box-shadow:none !important; }
body.sh-premium-v2 .btn-primary,
body.sh-premium-v2 input.btn-primary,
body.sh-premium-v2 button.btn-primary {
  background:var(--shp-ink) !important; border-color:var(--shp-ink) !important; color:#fff !important;
  min-height:44px; padding:10px 20px; font-size:10px; font-weight:500; letter-spacing:.12em; text-transform:uppercase;
}
body.sh-premium-v2 .btn-primary:hover { background:#333 !important; border-color:#333 !important; }
body.sh-premium-v2 .btn-default { background:#fff !important; border-color:var(--shp-line) !important; color:var(--shp-ink) !important; min-height:42px; }
body.sh-premium-v2 .well, body.sh-premium-v2 .panel, body.sh-premium-v2 .panel-default { border:1px solid var(--shp-soft-line) !important; border-radius:0 !important; box-shadow:none !important; background:#fff !important; }
body.sh-premium-v2 .panel-heading { border-bottom:1px solid var(--shp-soft-line) !important; background:var(--shp-warm) !important; }
body.sh-premium-v2 .list-group-item { border-color:var(--shp-soft-line) !important; }

/* ---------- cart + checkout: presentation only ---------- */
body.sh-premium-v2 #checkout-cart,
body.sh-premium-v2 #checkout-checkout { padding-bottom:80px; }
body.sh-premium-v2 #checkout-cart .table-responsive,
body.sh-premium-v2 #checkout-checkout .table-responsive { border:0 !important; }
body.sh-premium-v2 .table { color:var(--shp-ink); }
body.sh-premium-v2 .table > thead > tr > td,
body.sh-premium-v2 .table > thead > tr > th { border-bottom:1px solid var(--shp-ink) !important; border-top:0 !important; color:#77736c; font-size:9px; font-weight:500; letter-spacing:.11em; text-transform:uppercase; }
body.sh-premium-v2 .table > tbody > tr > td { border-top:1px solid var(--shp-soft-line) !important; vertical-align:middle; }
body.sh-premium-v2 #checkout-cart .table img { max-width:90px; background:var(--shp-warm); }
body.sh-premium-v2 #checkout-cart .input-group .form-control { height:40px; }
body.sh-premium-v2 #checkout-cart .input-group-btn .btn { height:40px; min-height:40px; }
body.sh-premium-v2 #accordion .panel-heading h4, body.sh-premium-v2 #accordion .panel-title { font-family:var(--shp-sans) !important; font-size:11px !important; letter-spacing:.08em; }
body.sh-premium-v2 #accordion .panel-heading a { display:block; padding:4px 0; }
body.sh-premium-v2 #collapse-checkout-option .radio label,
body.sh-premium-v2 #collapse-payment-method .radio label,
body.sh-premium-v2 #collapse-shipping-method .radio label { font-size:13px; }
body.sh-premium-v2 [id^="collapse-"] .buttons { margin-top:22px; }

/* ---------- gift card / wholesale / about / contact ---------- */
body.sh-premium-v2 #gift-card-gift-card,
body.sh-premium-v2 #information-contact,
body.sh-premium-v2 #information-information { padding-bottom:86px; }
body.sh-premium-v2 .gift-card-container,
body.sh-premium-v2 .b2b-form-box { border-radius:0 !important; box-shadow:none !important; border:1px solid var(--shp-soft-line) !important; }
body.sh-premium-v2 .b2b-form-box { padding:clamp(28px,4vw,54px) !important; }
body.sh-premium-v2 .about-hero h1 { font-size:clamp(44px,6vw,78px) !important; font-weight:400 !important; letter-spacing:-.03em !important; }
body.sh-premium-v2 .about-section { padding:90px 0 !important; }
body.sh-premium-v2 .mv-card { border-radius:0 !important; box-shadow:none !important; border:1px solid var(--shp-soft-line); }
body.sh-premium-v2 .value-item { border-color:#b9a27b !important; }

/* ---------- footer ---------- */
body.sh-premium-v2 .sapphire-footer-services { background:var(--shp-warm) !important; border-top:1px solid var(--shp-soft-line) !important; }
body.sh-premium-v2 .fs-grid { padding:54px 0 !important; gap:28px !important; }
body.sh-premium-v2 .fs-icon-wrapper { width:112px !important; height:112px !important; border-color:rgba(17,17,15,.25) !important; }
body.sh-premium-v2 .fs-service-title { color:var(--shp-ink) !important; font-weight:400 !important; }
body.sh-premium-v2 footer {
  background:var(--shp-ink) !important; color:#f5f4f0 !important; padding-top:64px !important;
  border-top:0 !important;
}
body.sh-premium-v2 footer a, body.sh-premium-v2 footer span, body.sh-premium-v2 footer div, body.sh-premium-v2 footer p { color:rgba(255,255,255,.76) !important; }
body.sh-premium-v2 footer a:hover { color:#fff !important; }
body.sh-premium-v2 footer input { border-radius:0 !important; }

/* ---------- responsive ---------- */
@media (max-width: 1199px) {
  body.sh-premium-v2 .showcase-slider .sc-card { flex-basis:calc(33.333% - 16px) !important; max-width:calc(33.333% - 16px) !important; }
  body.sh-premium-v2 .sc-grid-category { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width: 991px) {
  body.sh-premium-v2 .container { width:min(100% - 32px,var(--shp-max)); }
  body.sh-premium-v2 .sapphire-slide img { min-height:0; max-height:none !important; aspect-ratio:4/5; }
  body.sh-premium-v2 .sapphire-showcase-section { padding:62px 0 68px; }
  body.sh-premium-v2 .sapphire-showcase-section > .container { width:calc(100% - 28px); }
  body.sh-premium-v2 .showcase-slider .sc-card { flex:0 0 calc(50% - 7px) !important; max-width:calc(50% - 7px) !important; }
  body.sh-premium-v2 .sc-grid-category { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:34px 14px !important; padding:0 !important; }
  body.sh-premium-v2 .sapphire-pdp-main { display:block !important; }
  body.sh-premium-v2 .sapphire-pdp-gallery, body.sh-premium-v2 .sapphire-pdp-info { max-width:100% !important; width:100% !important; }
  body.sh-premium-v2 .sapphire-pdp-info { padding-top:34px !important; }
}
@media (max-width: 575px) {
  body.sh-premium-v2 .container { width:calc(100% - 28px); padding-left:0; padding-right:0; }
  body.sh-premium-v2 #sapphire-announcement { font-size:8px !important; }
  body.sh-premium-v2 .header-logo-link::after, body.sh-premium-v2 .header-logo-text { font-size:17px !important; letter-spacing:.11em !important; }
  body.sh-premium-v2 .sapphire-slider-desc { padding:48px 18px !important; }
  body.sh-premium-v2 .sapphire-showcase-section { padding:52px 0 58px; }
  body.sh-premium-v2 .showcase-title { font-size:31px !important; }
  body.sh-premium-v2 .showcase-slider { gap:12px !important; }
  body.sh-premium-v2 .showcase-slider .sc-card { flex:0 0 calc(50% - 6px) !important; max-width:calc(50% - 6px) !important; }
  body.sh-premium-v2 .sc-card-heading, body.sh-premium-v2 .sc-grid-category .sc-card-title { font-size:15px !important; }
  body.sh-premium-v2 .sc-add-btn, body.sh-premium-v2 [data-sh-add-cart="1"] { min-height:40px; padding:0 8px !important; font-size:8px !important; letter-spacing:.1em !important; }
  body.sh-premium-v2 .sc-grid-category { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:30px 10px !important; }
  body.sh-premium-v2 .pdp-title { font-size:34px !important; }
  body.sh-premium-v2 .pdp-actions { flex-wrap:wrap; }
  body.sh-premium-v2 .pdp-qty-wrapper { width:118px; }
  body.sh-premium-v2 .pdp-btn-cart { min-width:calc(100% - 128px); }
  body.sh-premium-v2 .pdp-btn-wishlist { width:100%; height:46px; }
  body.sh-premium-v2 #checkout-cart .table-responsive { overflow-x:auto !important; }
  body.sh-premium-v2 footer { padding-top:48px !important; }
  body.sh-premium-v2 .fs-icon-wrapper { width:80px !important; height:80px !important; padding:4px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.sh-premium-v2 *, body.sh-premium-v2 *::before, body.sh-premium-v2 *::after {
    scroll-behavior:auto !important; animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important;
  }
}

/* === MOBILE LOGO FIX === */
@media (max-width: 575px) {
  body.sh-premium-v2 .header-col-center .header-logo-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0 !important;
  }

  body.sh-premium-v2 .header-col-center .header-logo-link img,
  body.sh-premium-v2 .header-col-center .header-logo-link picture {
    font-size: 0 !important;
  }

  body.sh-premium-v2 .header-col-center .header-logo-link::after {
    content: 'SAPPHIRE HOME' !important;
    display: block !important;
    font-family: var(--shp-serif) !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    letter-spacing: .11em !important;
    white-space: nowrap !important;
  }
}

/* === MOBILE HEADER DESKTOP-ELEMENT FIX === */
@media (max-width: 991px) {

  /* Desktop SEARCH mobilde görünmesin */
  body.sh-premium-v2 #sapphire-search-toggle-right {
    display: none !important;
  }

  /* Header sağındaki desktop-only elemanlar mobilde görünmesin */
  body.sh-premium-v2 .header-col-right .hidden-xs,
  body.sh-premium-v2 .header-col-right .hidden-sm {
    display: none !important;
  }
}


/* Campaign hero — responsive artwork. Scoped to homepage campaign only.
   The image is displayed at its natural aspect ratio, never cropped. */
body.sh-premium-v2 #shp-v3-home .shp-v3-hero:has(.shp-v3-campaign-media) {
  min-height: 0 !important;
  align-items: stretch;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-hero-media.shp-v3-campaign-media {
  position: relative !important;
  display: block !important;
  width: 100%;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: #080807;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-campaign-media picture,
body.sh-premium-v2 #shp-v3-home .shp-v3-campaign-media picture > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-campaign-media .shp-v3-campaign-cta {
  position: absolute;
  display: block;
  z-index: 2;
  cursor: pointer;
  /* Desktop artwork: button near lower center */
  left: 36%;
  top: 83%;
  width: 28%;
  height: 10%;
}
body.sh-premium-v2 #shp-v3-home .shp-v3-hero:has(.shp-v3-campaign-media) .shp-v3-hero-copy {
  height: auto !important;
  min-height: 0 !important;
  padding-top: 22px;
  padding-bottom: 22px;
}
@media (max-width: 900px) {
  body.sh-premium-v2 #shp-v3-home .shp-v3-hero-media.shp-v3-campaign-media {
    order: 1;
    height: auto !important;
    min-height: 0 !important;
  }
  body.sh-premium-v2 #shp-v3-home .shp-v3-campaign-media .shp-v3-campaign-cta {
    /* Portrait artwork: button at bottom */
    left: 23%;
    top: 85.5%;
    width: 54%;
    height: 7%;
  }
  body.sh-premium-v2 #shp-v3-home .shp-v3-hero:has(.shp-v3-campaign-media) .shp-v3-hero-copy {
    min-height: 390px !important;
    padding-top: 65px;
    padding-bottom: 75px;
  }
}
