/* Çelebi Silver visual refresh. Kept separate from the legacy theme for safe rollback. */
:root {
    --cs-ink: #171919;
    --cs-muted: #777b78;
    --cs-paper: #f5f3ef;
    --cs-white: #fff;
    --cs-line: #d9d7d1;
    --cs-accent: #a9855d;
}

html { scroll-behavior: smooth; }
body { color: var(--cs-ink); background: var(--cs-paper); font-family: 'Roboto', Arial, sans-serif; }
body.templateIndex { background: var(--cs-paper); }
body.templateIndex header#top, header#top { background: rgba(250,249,246,.97); box-shadow: 0 1px 0 rgba(23,25,25,.08); }
header#top .top { padding-top: 7px; padding-bottom: 7px; color: #686b68; letter-spacing: .04em; }
header#top .top .phone-shopping span { font-size: 11px; vertical-align: 0; }
header#top #widget-social i.fa { color: var(--cs-ink); }
.top-navigation { font-family: 'Roboto', Arial, sans-serif; letter-spacing: .055em; }
.top-navigation ul li.top-logo { width: 17%; }
.top-navigation ul li.top-logo img { max-width: 150px; max-height: 62px; object-fit: contain; }
.top-navigation ul li.navigation { width: 75%; }
#top nav.navbar .nav > li > a { color: var(--cs-ink); font-size: 11px; letter-spacing: .1em; padding-top: 27px; padding-bottom: 27px; }
#top nav.navbar .nav > li > a span { margin-right: .2em; }
#top nav.navbar .nav > li > a:hover span, #top nav.navbar .nav > li > a:hover i.fa { color: var(--cs-accent); }
#umbrella .cart-link:after { display: none; }
header#top.affix { background: rgba(250,249,246,.98); box-shadow: 0 3px 18px rgba(0,0,0,.06); }
header#top.affix .navbar-nav > li { padding-top: 2px; padding-bottom: 2px; }
header#top .navbar-toggle .icon-bar { background: var(--cs-ink); }
header#top .line { border-color: rgba(23,25,25,.08); }
header#top .container > .row.visible-xs[style*="background-color:#4dc247"] { background: #252827 !important; }
body > form > .hidden-xs[style*="background-color:#4dc247"] { width: 184px !important; height: 43px !important; right: 18px !important; bottom: 18px !important; padding: 8px 12px !important; border-radius: 2px; background: #252827 !important; box-shadow: 0 8px 24px rgba(0,0,0,.16); }
body > form > .hidden-xs[style*="background-color:#4dc247"] .fa { font-size: 17px !important; }

.cs-home { overflow: hidden; padding-top: 116px; }
.cs-eyebrow { margin: 0 0 20px; color: var(--cs-accent); font-size: 10px; font-weight: 700; letter-spacing: .23em; line-height: 1.6; }
.cs-hero { position: relative; display: flex; min-height: min(690px, calc(100vh - 116px)); align-items: center; overflow: hidden; background: #151616; color: #fff; }
.cs-hero-image, .cs-hero-shade { position: absolute; inset: 0; }
.cs-hero-image { background: url('/assets/images/celebi-silver-hero.png') center 52% / cover no-repeat; transform: scale(1.015); animation: cs-hero-arrive 1.2s ease-out both; }
.cs-hero-shade { background: linear-gradient(90deg, rgba(13,15,15,.88) 0%, rgba(13,15,15,.67) 36%, rgba(13,15,15,.05) 72%), linear-gradient(0deg, rgba(8,9,9,.38), transparent 27%); }
.cs-hero-inner { position: relative; display: flex; width: 100%; max-width: 1440px; min-height: inherit; margin: auto; padding: 84px max(7vw, 35px) 35px; flex-direction: column; justify-content: center; }
.cs-hero-copy { max-width: 560px; }
.cs-hero .cs-eyebrow { color: #d6c4aa; }
.cs-hero h1, .cs-section-heading h2, .cs-intro h2, .cs-craft h2, .cs-contact-cta h2 { margin: 0; font-family: 'IBM Plex Serif', Georgia, serif; font-size: clamp(42px, 5.4vw, 76px); font-weight: 400; letter-spacing: -.045em; line-height: 1.06; }
.cs-hero h1 em, .cs-section-heading h2 em, .cs-intro h2 em, .cs-craft h2 em, .cs-contact-cta h2 em { color: #cbb394; font-weight: 400; }
.cs-hero-copy > p { max-width: 410px; margin: 25px 0 29px; color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.85; }
.cs-hero-actions { display: flex; align-items: center; gap: 27px; flex-wrap: wrap; }
.cs-button { display: inline-flex; min-height: 52px; padding: 0 22px; align-items: center; justify-content: center; gap: 25px; border: 1px solid transparent; font-size: 10px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; transition: background .25s, color .25s, border-color .25s; }
.cs-button:hover { text-decoration: none; }
.cs-button-light { background: #f4f1eb; color: var(--cs-ink); }
.cs-button-light:hover { background: #d7c5ad; color: var(--cs-ink); }
.cs-button-dark { background: var(--cs-ink); color: #fff; }
.cs-button-dark:hover { background: #373a39; color: #fff; }
.cs-text-link { color: #fff; font-size: 11px; letter-spacing: .06em; }
.cs-text-link span { display: inline-block; margin-left: 7px; transition: transform .2s; }
.cs-text-link:hover { color: #e4d6c3; text-decoration: none; }
.cs-text-link:hover span { transform: translateX(4px); }
.cs-hero-foot { display: flex; width: 100%; justify-content: space-between; position: absolute; bottom: 25px; left: 0; padding: 0 max(7vw, 35px); color: rgba(255,255,255,.65); font-size: 9px; letter-spacing: .17em; }
.cs-hero-index { position: absolute; right: 7vw; bottom: 25px; color: rgba(255,255,255,.68); font-size: 10px; letter-spacing: .15em; }
.cs-hero-index i { display: inline-block; width: 28px; height: 1px; margin: 0 8px 3px; background: var(--cs-accent); }
.cs-intro { display: grid; grid-template-columns: .65fr 1.1fr 1fr; gap: 35px; align-items: start; max-width: 1260px; margin: 0 auto; padding: 116px 35px 113px; }
.cs-intro .cs-eyebrow { padding-top: 7px; }
.cs-intro h2 { font-size: clamp(32px, 3.2vw, 45px); line-height: 1.2; }
.cs-intro-copy { max-width: 340px; margin: 5px 0 0; color: var(--cs-muted); font-size: 14px; line-height: 1.9; }
.cs-categories, .cs-featured { max-width: 1440px; margin: 0 auto; padding: 0 6vw 110px; }
.cs-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 38px; }
.cs-section-heading .cs-eyebrow { margin-bottom: 13px; }
.cs-section-heading h2 { font-size: clamp(38px, 4vw, 56px); }
.cs-dark-link { color: var(--cs-ink); margin-bottom: 10px; }
.cs-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.cs-category-card { display: block; color: var(--cs-ink); }
.cs-category-card:hover { color: var(--cs-accent); text-decoration: none; }
.cs-category-image { position: relative; display: block; overflow: hidden; background: #e9e7e2; aspect-ratio: 1 / 1.05; }
.cs-category-image img { width: 100%; height: 100%; display: block; object-fit: cover; mix-blend-mode: multiply; transition: transform .65s cubic-bezier(.2,.65,.2,1); }
.cs-category-card:hover .cs-category-image img { transform: scale(1.045); }
.cs-category-image i { position: absolute; left: 15px; top: 15px; display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; color: #fff; font-size: 9px; font-style: normal; letter-spacing: .06em; }
.cs-category-meta { display: flex; align-items: center; justify-content: space-between; padding: 17px 1px; border-bottom: 1px solid var(--cs-line); font-family: 'IBM Plex Serif', Georgia, serif; font-size: 19px; }
.cs-category-meta b { color: var(--cs-accent); font-family: Arial, sans-serif; font-size: 15px; font-weight: 400; }
.cs-craft { position: relative; display: grid; min-height: 550px; grid-template-columns: 1.05fr .95fr; background: #e9e7e2; }
.cs-craft-image { min-height: 500px; background: url('/assets/images/celebi-silver-hero.png') 72% 57% / cover no-repeat; }
.cs-craft-copy { display: flex; max-width: 590px; padding: 80px 9vw 95px 8vw; flex-direction: column; align-items: flex-start; justify-content: center; }
.cs-craft-copy .cs-eyebrow { margin-bottom: 17px; }
.cs-craft h2 { font-size: clamp(40px, 4.1vw, 58px); }
.cs-craft h2 em { color: var(--cs-accent); }
.cs-craft-copy > p:not(.cs-eyebrow) { max-width: 390px; margin: 23px 0 27px; color: #626663; font-size: 14px; line-height: 1.9; }
.cs-craft-caption { position: absolute; bottom: 20px; left: 4vw; color: rgba(255,255,255,.85); font-size: 9px; letter-spacing: .2em; }
.cs-featured { padding-top: 113px; }
.cs-featured .cs-section-heading { align-items: end; }
.cs-featured-note { margin: 0 0 9px; color: var(--cs-muted); font-size: 12px; line-height: 1.8; }
.cs-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.cs-product-card { min-width: 0; }
.cs-product-image { position: relative; display: block; overflow: hidden; background: #eeece7; aspect-ratio: 1 / 1; cursor: pointer; }
.cs-product-image img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: multiply; transition: transform .6s ease; }
.cs-product-image:hover img { transform: scale(1.05); }
.cs-product-open { position: absolute; right: 13px; bottom: 13px; padding: 10px 12px; background: rgba(250,249,246,.92); color: var(--cs-ink); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.cs-product-open i { margin-left: 7px; color: var(--cs-accent); font-size: 13px; font-style: normal; }
.cs-product-card h3 { margin: 15px 0 5px; font-family: 'IBM Plex Serif', Georgia, serif; font-size: 16px; font-weight: 400; line-height: 1.45; }
.cs-product-card h3 a { color: var(--cs-ink); }
.cs-product-card p { margin: 0; color: var(--cs-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.cs-promo { padding: 70px 6vw 85px; background: #e9e7e2; }
.cs-promo-heading { max-width: 1440px; margin: 0 auto 28px; }
.cs-promo-heading .cs-eyebrow { margin-bottom: 8px; }
.cs-promo-heading h2 { margin: 0; font-family: 'IBM Plex Serif', Georgia, serif; font-size: 28px; font-weight: 400; }
.cs-promo-slider { max-width: 1160px; margin: 0 auto; }
.cs-promo-slider .home-slider-wrapper { margin: 0 auto !important; }
.cs-promo-slider .camera_wrap { max-width: 984px; margin: 0 auto !important; }
.cs-promo-slider .camera_wrap img { object-fit: cover; }
.cs-slider-mobile-source { display: none; }
.cs-contact-cta { padding: 100px 25px 105px; background: #171919; color: #fff; text-align: center; }
.cs-contact-cta .cs-eyebrow { color: #cbb394; }
.cs-contact-cta h2 { font-size: clamp(42px, 5vw, 68px); }
.cs-contact-cta > p:not(.cs-eyebrow) { margin: 19px 0 27px; color: rgba(255,255,255,.69); font-size: 13px; line-height: 1.8; }
.cs-contact-cta .cs-hero-actions { justify-content: center; }
@keyframes cs-hero-arrive { from { opacity: .65; transform: scale(1.055); } to { opacity: 1; transform: scale(1.015); } }

#footer { background: #f5f3ef; }
#footer .footer-content-top { background: #f5f3ef !important; }
#footer .general-title { color: var(--cs-ink); font-family: 'IBM Plex Serif', Georgia, serif; font-weight: 400; }
#footer a { color: #666a67; }
#footer a:hover { color: var(--cs-accent); }
#footer .footer-content-bottom { border-top: 1px solid var(--cs-line); }

@media (max-width: 991px) {
    .cs-home { padding-top: 95px; }
    .cs-hero { min-height: 620px; }
    .cs-intro { grid-template-columns: 1fr 1.5fr; }
    .cs-intro-copy { grid-column: 2; }
    .cs-category-grid, .cs-product-grid { grid-template-columns: repeat(2, minmax(0,1fr)); row-gap: 30px; }
    .cs-craft-copy { padding: 60px 6vw 80px; }
}
@media (max-width: 767px) {
    .cs-home { padding-top: 82px; }
    .cs-hero { min-height: 670px; align-items: flex-end; }
    .cs-hero-image { background-position: 62% center; }
    .cs-hero-shade { background: linear-gradient(90deg, rgba(13,15,15,.75), rgba(13,15,15,.15)), linear-gradient(0deg, rgba(8,9,9,.72), transparent 77%); }
    .cs-hero-inner { min-height: 670px; padding: 60px 25px 72px; justify-content: flex-end; }
    .cs-hero h1 { font-size: clamp(43px, 12vw, 60px); }
    .cs-hero-copy > p { max-width: 340px; font-size: 14px; }
    .cs-hero-actions { gap: 17px; }
    .cs-button { min-height: 49px; padding: 0 16px; gap: 15px; font-size: 9px; }
    .cs-text-link { font-size: 10px; }
    .cs-hero-foot { bottom: 21px; padding: 0 25px; font-size: 8px; }
    .cs-hero-foot span:last-child { display: none; }
    .cs-hero-index { display: none; }
    .cs-intro { display: block; padding: 74px 25px 72px; }
    .cs-intro h2 { font-size: 35px; }
    .cs-intro-copy { margin-top: 21px; font-size: 13px; }
    .cs-categories, .cs-featured { padding: 0 20px 72px; }
    .cs-section-heading { align-items: end; margin-bottom: 24px; }
    .cs-section-heading h2 { font-size: 39px; }
    .cs-section-heading > .cs-text-link { margin-bottom: 4px; white-space: nowrap; font-size: 9px; }
    .cs-category-grid, .cs-product-grid { gap: 22px 12px; }
    .cs-category-image { aspect-ratio: 1 / 1.13; }
    .cs-category-meta { padding: 12px 0; font-size: 15px; }
    .cs-category-image i { width: 31px; height: 31px; left: 9px; top: 9px; }
    .cs-craft { grid-template-columns: 1fr; }
    .cs-craft-image { min-height: 340px; }
    .cs-craft-copy { padding: 53px 25px 76px; }
    .cs-craft h2 { font-size: 43px; }
    .cs-craft-caption { left: 25px; top: 314px; bottom: auto; font-size: 8px; }
    .cs-featured { padding-top: 72px; }
    .cs-featured .cs-section-heading { align-items: flex-start; flex-direction: column; }
    .cs-featured-note { margin-top: -10px; }
    .cs-product-card h3 { font-size: 14px; }
    .cs-product-open { right: 7px; bottom: 7px; padding: 8px; font-size: 8px; }
    .cs-promo { padding: 55px 20px 60px; }
    .cs-contact-cta { padding: 75px 20px 78px; }
    .cs-contact-cta h2 { font-size: 45px; }
    .cs-contact-cta .cs-hero-actions { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
