/* ============================================
   La Mine De Diamant - White & Gold Luxury Theme
   Premium jeweler aesthetic
   ============================================ */

/* --- Reset & Base --- */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --gold:#C8A84E;
  --gold-light:#D4B96A;
  --gold-dark:#B8942D;
  --gold-muted:#A8903E;
  --bg:#FDFBF7;
  --bg-card:#FFFFFF;
  --bg-elevated:#F6F3ED;
  --bg-input:#F9F7F3;
  --bg-dark:#1A1815;
  --text:#1B1B1B;
  --text-muted:#7A7064;
  --text-dim:#9E9488;
  --border:#E8E2D9;
  --border-gold:rgba(200,168,78,.25);
  --radius:8px;
  --radius-lg:12px;
  --radius-xl:16px;
  --shadow:0 2px 20px rgba(0,0,0,.06);
  --shadow-hover:0 8px 32px rgba(0,0,0,.1);
  --shadow-gold:0 4px 24px rgba(200,168,78,.12);
  --transition:all .3s ease;
  --max-w:1200px;
  --font-heading:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --font-body:'Inter',-apple-system,system-ui,sans-serif;
}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold-dark);text-decoration:none;transition:var(--transition)}
.content a,p a,.cookie-inner a{text-decoration:underline;text-decoration-color:rgba(200,168,78,.4)}
.content a:hover,p a:hover,.cookie-inner a:hover{text-decoration-color:var(--gold-dark)}
.nav a,.footer a,.hero a,.btn{text-decoration:none!important}
a:hover{color:var(--gold)}
h1,h2,h3,h4,h5{font-family:var(--font-heading);font-weight:600;line-height:1.2;color:var(--text)}
h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.02em}
h2{font-size:clamp(1.5rem,3.5vw,2.5rem)}
h3{font-size:clamp(1.2rem,2.5vw,1.75rem)}
p{margin-bottom:1rem}
ul,ol{padding-left:1.5rem}
::selection{background:var(--gold);color:#fff}

/* --- Utilities --- */
.container{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}
.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}
.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}
.text-center{text-align:center}.text-gold{color:var(--gold)}.text-muted{color:var(--text-muted)}
.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}
.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.hidden{display:none!important}

/* --- Grid --- */
.grid{display:grid;gap:1.5rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
@media(min-width:769px) and (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}

.grid-split{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.grid-split-center{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
@media(max-width:768px){.grid-split,.grid-split-center{grid-template-columns:1fr;gap:1.5rem}}

/* --- Shop Layout --- */
.shop-layout{display:grid;grid-template-columns:260px 1fr;gap:2rem;align-items:start}
@media(max-width:1024px){.shop-layout{grid-template-columns:1fr}.shop-sidebar{order:2}}
.shop-sidebar{position:sticky;top:120px}
.sidebar-block{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1rem}
.sidebar-title{font-family:var(--font-heading);font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid var(--gold)}
.sidebar-link{display:block;padding:.35rem 0;font-size:.88rem;color:var(--text-muted);transition:var(--transition)}
.sidebar-link:hover,.sidebar-link.active{color:var(--gold-dark);font-weight:600}
.sidebar-group{margin-bottom:.25rem}
.sidebar-parent{display:block;padding:.4rem 0;font-size:.9rem;font-weight:600;color:var(--text);transition:var(--transition)}
.sidebar-parent:hover,.sidebar-parent.active{color:var(--gold-dark)}
.sidebar-children{list-style:none;padding:0 0 0 .75rem;margin:0 0 .5rem}
.sidebar-children li a{display:block;padding:.25rem 0;font-size:.84rem;color:var(--text-muted);transition:var(--transition)}
.sidebar-children li a:hover,.sidebar-children li a.active{color:var(--gold-dark)}
.sidebar-children .count{font-size:.75rem;color:var(--text-dim)}

/* Google Reviews Widget */
.google-reviews-widget{font-size:.85rem}
.gr-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}
.gr-stars{color:#F4B400;font-size:1rem;letter-spacing:1px}
.gr-rating{font-weight:700;color:var(--text);font-size:.9rem}
.gr-review{padding:.6rem 0;border-bottom:1px solid var(--border)}
.gr-review:last-child{border-bottom:none}
.gr-review-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}
.gr-review-head strong{font-size:.82rem;color:var(--text)}
.gr-review-stars{color:#F4B400;font-size:.8rem}
.gr-review p{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.4}
.gr-link{display:block;margin-top:.75rem;font-size:.8rem;color:var(--gold);font-weight:600;text-align:center}

/* --- Buttons --- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;border-radius:var(--radius);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition);border:none;text-decoration:none;line-height:1.4}
.btn-gold{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:#fff;box-shadow:0 2px 12px rgba(200,168,78,.3)}
.btn-gold:hover{background:linear-gradient(135deg,var(--gold-light) 0%,var(--gold) 100%);color:#fff;transform:translateY(-1px);box-shadow:0 4px 20px rgba(200,168,78,.4)}
.btn-outline{background:transparent;color:var(--gold-dark);border:1.5px solid var(--gold)}
.btn-outline:hover{background:var(--gold);color:#fff}
.btn-dark{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}
.btn-dark:hover{border-color:var(--gold);color:var(--gold-dark)}
.btn-sm{padding:.5rem 1.25rem;font-size:.85rem}
.btn-lg{padding:1rem 2.5rem;font-size:1.1rem}

/* --- Price Ticker Bar --- */
.gold-ticker{position:fixed;top:0;left:0;right:0;z-index:1001;background:linear-gradient(90deg,var(--bg-dark) 0%,#252218 50%,var(--bg-dark) 100%);border-bottom:1px solid rgba(200,168,78,.2);height:34px;display:flex;align-items:center;justify-content:center}
.gold-ticker-track{display:flex;align-items:center;justify-content:space-evenly;width:100%;max-width:1400px;margin:0 auto;white-space:nowrap;padding:0 1rem}
.ticker-item{display:inline-flex;align-items:center;gap:.4rem;padding:0 .5rem}
.ticker-label{font-size:.72rem;color:rgba(255,255,255,.55);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.ticker-price{font-size:.8rem;color:var(--gold-light);font-weight:700;font-family:var(--font-heading)}
.ticker-dot{color:rgba(200,168,78,.25);font-size:.35rem;line-height:1}
@media(max-width:1024px){.gold-ticker{height:30px}.ticker-item{padding:0 .3rem}.ticker-label{font-size:.6rem}.ticker-price{font-size:.68rem}}

/* --- Navigation --- */
.nav{position:fixed;top:34px;left:0;right:0;z-index:1000;background:rgba(253,251,247,.96);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:var(--transition);box-shadow:0 1px 8px rgba(0,0,0,.04)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:70px;max-width:1400px;margin:0 auto;padding:0 1.5rem}
.nav-logo img{height:40px;width:auto}
.nav-logo span{font-family:var(--font-heading);font-size:1.3rem;color:var(--gold-dark);font-weight:700;letter-spacing:.03em;white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:0;list-style:none;padding:0;margin:0}
.nav-links a{padding:.5rem .65rem;color:var(--text-muted);font-size:.85rem;font-weight:500;border-radius:var(--radius);transition:var(--transition);white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--gold-dark)}
.nav-cta{display:flex;align-items:center;gap:.6rem;flex-shrink:0}
.nav-cta .btn{white-space:nowrap;padding:.6rem 1.2rem;font-size:.85rem}
.lang-switch{display:flex;gap:2px;background:var(--bg-elevated);border-radius:var(--radius);padding:2px;flex-shrink:0}
.lang-switch a{padding:4px 10px;font-size:.75rem;color:var(--text-muted);border-radius:6px;text-transform:uppercase;font-weight:600;letter-spacing:.05em}
.lang-switch a.active{background:var(--gold);color:#fff}
.nav-toggle{display:none;background:none;border:none;color:var(--text);cursor:pointer;padding:8px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.nav-toggle svg{width:24px;height:24px;pointer-events:none}

/* --- Nav Dropdown --- */
.has-dropdown{position:relative}
.nav-dropdown{position:absolute;top:100%;left:0;min-width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 30px rgba(0,0,0,.1);padding:.5rem 0;list-style:none;margin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease,transform .2s ease;transform:translateY(6px);z-index:100}
.has-dropdown:hover>.nav-dropdown,.has-dropdown:focus-within>.nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.nav-dropdown li{position:relative}
.nav-dropdown>li>a{display:flex;align-items:center;justify-content:space-between;padding:.55rem 1.2rem;font-size:.88rem;color:var(--text);font-weight:500;transition:background .15s,color .15s;white-space:nowrap}
.nav-dropdown>li>a:hover{background:rgba(200,168,78,.08);color:var(--gold-dark)}
.nav-dropdown>li>a svg{opacity:.4;flex-shrink:0;margin-left:.5rem}
.nav-dropdown>li>a:hover svg{opacity:.7}
.dd-divider{height:1px;background:var(--border);margin:.35rem 0}
.dd-all{color:var(--gold)!important;font-weight:600!important;font-size:.85rem!important}
.nav-sub-dropdown{position:absolute;left:100%;top:-.5rem;min-width:200px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 30px rgba(0,0,0,.1);padding:.5rem 0;list-style:none;margin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;z-index:101}
.has-sub:hover>.nav-sub-dropdown{opacity:1;visibility:visible;pointer-events:auto}
.nav-sub-dropdown li a{display:block;padding:.45rem 1.2rem;font-size:.85rem;color:var(--text-muted);transition:background .15s,color .15s}
.nav-sub-dropdown li a:hover{background:rgba(200,168,78,.08);color:var(--gold-dark)}

@media(max-width:1024px){
  .nav{top:30px}
  .nav-inner{height:56px;gap:.5rem;position:relative}
  .nav-links{display:none!important;position:absolute;top:100%;left:0;right:0;height:calc(100vh - 86px);background:var(--bg);flex-direction:column;padding:1.5rem;gap:.25rem;overflow-y:auto;z-index:9999}
  .nav-links.open{display:flex!important}
  .nav-links li{width:100%}
  .nav-links a{font-size:1.1rem;padding:.75rem 1rem;display:block;border-bottom:1px solid var(--border);white-space:normal;color:var(--text)}
  .nav-links a:hover,.nav-links a.active{color:var(--gold-dark)}
  .nav-toggle{display:block;position:relative;z-index:10;-webkit-tap-highlight-color:transparent}
  .nav-cta{min-width:auto;gap:.5rem;flex-shrink:1;pointer-events:auto}
  .nav-cta .btn{display:none}
  .lang-switch a{padding:3px 8px;font-size:.7rem}
  .nav-dropdown{position:static;transform:none!important;min-width:auto;box-shadow:none;border:none;border-radius:0;padding:0 0 0 1rem;opacity:1;visibility:visible;pointer-events:auto;background:transparent;display:none}
  .nav-dropdown.open{display:block}
  .has-dropdown:hover>.nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;display:none}
  .has-dropdown:hover>.nav-dropdown.open{display:block}
  .nav-dropdown>li>a{padding:.5rem .75rem;font-size:1rem;border-bottom:1px solid var(--border)}
  .nav-sub-dropdown{position:static;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:none;border-radius:0;padding:0 0 0 .75rem;min-width:auto;background:transparent}
  .nav-sub-dropdown li a{font-size:.95rem;padding:.4rem .75rem}
  .dd-divider{display:none}
  .shop-sidebar{position:static}
}

/* --- Hero --- */
.hero{position:relative;min-height:80vh;display:flex;align-items:center;overflow:hidden;padding-top:104px}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.35}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,24,21,.8) 0%,rgba(26,24,21,.6) 50%,rgba(26,24,21,.45) 100%)}
.hero-content{position:relative;z-index:2;max-width:var(--max-w);margin:0 auto;padding:4rem 1.5rem}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;background:rgba(200,168,78,.15);border:1px solid rgba(200,168,78,.3);border-radius:50px;color:var(--gold-light);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.5rem}
.hero h1{max-width:700px;margin-bottom:1rem;color:#fff}
.hero h1 .gold{color:var(--gold-light)}
.hero-desc{max-width:550px;color:rgba(255,255,255,.7);font-size:1.1rem;margin-bottom:2rem;line-height:1.8;min-height:3.6em}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.hero-stats{display:flex;gap:3rem;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(200,168,78,.25)}
.hero-stat-value{font-family:var(--font-heading);font-size:2rem;color:var(--gold-light);font-weight:700}
.hero-stat-label{font-size:.8rem;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem}
@media(max-width:768px){.hero-stats{flex-direction:column;gap:1.5rem}.hero{min-height:auto;padding:6rem 0 3rem}}

/* --- Sections --- */
.section{padding:5rem 0}
.section-dark{background:var(--bg-elevated)}
.section-header{text-align:center;margin-bottom:3rem}
.section-header .overline{display:block;color:var(--gold-dark);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.75rem}
.section-header p{max-width:600px;margin:1rem auto 0;color:var(--text-muted)}
.section-divider{width:60px;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-light));margin:1rem auto}

/* --- Cards --- */
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition);box-shadow:var(--shadow)}
.card:hover{border-color:var(--border-gold);box-shadow:var(--shadow-hover);transform:translateY(-4px)}
.card-img{position:relative;overflow:hidden;aspect-ratio:1/1;background:var(--bg-elevated)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.card:hover .card-img img{transform:scale(1.05)}
.card-badge{position:absolute;top:12px;left:12px;padding:4px 10px;background:var(--gold);color:#fff;font-size:.7rem;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}
.card-body{padding:1.25rem}
.card-body h3{font-size:1.1rem;margin-bottom:.5rem}
.card-body h3 a{color:var(--text)}
.card-body h3 a:hover{color:var(--gold-dark)}
.card-price{font-family:var(--font-heading);font-size:1.3rem;color:var(--gold-dark);font-weight:700}
.card-price .old{font-size:.9rem;color:var(--text-dim);text-decoration:line-through;margin-left:.5rem;font-weight:400}
.card-meta{font-size:.8rem;color:var(--text-muted);margin-top:.5rem}

/* --- Gold Calculator --- */
.calc{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-gold)}
.calc-title{font-family:var(--font-heading);font-size:1.5rem;color:var(--gold-dark);margin-bottom:1.5rem;text-align:center}
.calc-row{display:flex;gap:1rem;margin-bottom:1rem}
.calc-row>*{flex:1}
.calc label{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.calc input,.calc select{width:100%;padding:.75rem 1rem;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:1rem;transition:var(--transition)}
.calc input:focus,.calc select:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(200,168,78,.12)}
.calc select option{background:var(--bg-card);color:var(--text)}
.calc-result{text-align:center;margin-top:1.5rem;padding:1.5rem;background:rgba(200,168,78,.06);border:1px solid var(--border-gold);border-radius:var(--radius)}
.calc-result-label{font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}
.calc-result-value{font-family:var(--font-heading);font-size:2.5rem;color:var(--gold-dark);font-weight:700}
@media(max-width:768px){.calc-row{flex-direction:column;gap:.75rem}}

/* --- Gold Prices Table --- */
.price-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}
.price-table th{background:var(--bg-elevated);padding:1rem;text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark);font-weight:700;border-bottom:2px solid var(--border-gold)}
.price-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border);font-size:.95rem}
.price-table tr:last-child td{border-bottom:none}
.price-table tr:hover td{background:rgba(200,168,78,.04)}
.price-table .karat{font-family:var(--font-heading);font-size:1.1rem;color:var(--text);font-weight:700}
.price-table .price{color:var(--gold-dark);font-weight:600}

/* --- Categories Grid --- */
.categories-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.category-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);text-decoration:none;transition:var(--transition);box-shadow:var(--shadow)}
.category-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:var(--shadow-gold)}
.category-icon{font-size:2.5rem;line-height:1}
.category-name{font-size:.95rem;font-weight:600;color:var(--text);text-align:center}
.category-card:hover .category-name{color:var(--gold-dark)}
@media(max-width:768px){.categories-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:769px) and (max-width:1024px){.categories-grid{grid-template-columns:repeat(3,1fr)}}

/* --- Brands Marquee --- */
.brands-marquee{overflow:hidden;padding:1rem 0 2rem;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.brands-track{display:flex;animation:brandsScroll 40s linear infinite;width:max-content}
.brands-group{display:flex;align-items:center;gap:5rem;padding:0 2.5rem;flex-shrink:0}
.brands-group img{height:70px;width:auto;opacity:.45;transition:var(--transition);filter:grayscale(100%)}
.brands-group img:hover{opacity:1;filter:grayscale(0%)}
@keyframes brandsScroll{0%{transform:translateX(0)}100%{transform:translateX(-33.333%)}}
@media(max-width:768px){.brands-group{gap:3rem;padding:0 1.5rem}.brands-group img{height:50px}}

/* --- Testimonials --- */
.testimonial{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;position:relative;box-shadow:var(--shadow)}
.testimonial::before{content:'\201C';position:absolute;top:-.1em;left:1rem;font-family:var(--font-heading);font-size:5rem;color:var(--gold);opacity:.15;line-height:1}
.testimonial p{font-style:italic;color:var(--text);margin-bottom:1rem;position:relative;z-index:1}
.testimonial-author{font-weight:600;color:var(--gold-dark);font-size:.9rem}
.testimonial-location{font-size:.8rem;color:var(--text-muted)}
.stars{color:var(--gold);font-size:.9rem;letter-spacing:2px;margin-bottom:.5rem}

/* --- Trust Bar --- */
.trust-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:2rem 0}
.trust-item{text-align:center;padding:1.5rem}
.trust-icon{width:48px;height:48px;margin:0 auto 1rem;color:var(--gold)}
.trust-item h3{font-size:.95rem;margin-bottom:.4rem;color:var(--text)}
.trust-item p{font-size:.8rem;color:var(--text-muted);line-height:1.5}
@media(max-width:768px){.trust-bar{grid-template-columns:repeat(2,1fr)}}

/* --- Location Cards --- */
.location-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.location-card-img{height:200px;overflow:hidden}
.location-card-img img{width:100%;height:100%;object-fit:cover}
.location-card-body{padding:1.5rem}
.location-card-body h3{color:var(--gold-dark);font-size:1.2rem;margin-bottom:1rem}
.location-detail{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:.75rem;font-size:.9rem;color:var(--text-muted)}
.location-detail svg{width:18px;height:18px;color:var(--gold);flex-shrink:0;margin-top:2px}

/* --- Blog Cards --- */
.blog-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition);box-shadow:var(--shadow)}
.blog-card:hover{border-color:var(--border-gold);transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.blog-card-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bg-elevated);flex-shrink:0}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.blog-card:hover .blog-card-img img{transform:scale(1.05)}
.blog-card-body{padding:1.25rem 1.5rem 1.5rem;flex:1}
.blog-card-body .date{font-size:.8rem;color:var(--gold-dark);margin-bottom:.5rem}
.blog-card-body h3{font-size:1.1rem;margin-bottom:.5rem;line-height:1.4;font-family:var(--font-heading);font-weight:600}
.blog-card-body h3 a{color:var(--text);text-decoration:none}
.blog-card-body h3 a:hover{color:var(--gold-dark)}
.blog-card-body .excerpt{font-size:.85rem;color:var(--text-muted);line-height:1.6;margin:0}

/* --- Breadcrumbs --- */
.breadcrumbs{padding:.75rem 0;font-size:.8rem}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem;padding:0}
.breadcrumbs li::after{content:'/';margin-left:.5rem;color:var(--text-dim)}
.breadcrumbs li:last-child::after{display:none}
.breadcrumbs a{color:rgba(255,255,255,.6)}
.breadcrumbs a:hover{color:var(--gold-light)}
.breadcrumbs .current{color:var(--gold-light)}

/* --- Page Header --- */
.page-header{position:relative;padding:9.25rem 0 3rem;overflow:hidden;background:var(--bg-dark)}
.page-header-bg{position:absolute;inset:0}
.page-header-bg img{width:100%;height:100%;object-fit:cover;opacity:.15}
.page-header-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(26,24,21,.7) 0%,rgba(26,24,21,.95) 100%)}
.page-header .container{position:relative;z-index:2}
.page-header h1{margin-bottom:.5rem;color:#fff}
.page-header .lead{color:rgba(255,255,255,.65);font-size:1.1rem;max-width:600px}

/* --- Forms --- */
.form-group{margin-bottom:1.25rem}
.form-group label{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.4rem;font-weight:500}
.form-control{width:100%;padding:.75rem 1rem;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.95rem;font-family:var(--font-body);transition:var(--transition)}
.form-control:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(200,168,78,.12)}
textarea.form-control{resize:vertical;min-height:120px}
.form-control::placeholder{color:var(--text-dim)}

/* --- Pagination --- */
.pagination{display:flex;justify-content:center;gap:.5rem;margin-top:2rem}
.pagination a,.pagination span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius);font-size:.9rem;font-weight:600;transition:var(--transition)}
.pagination a{background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border)}
.pagination a:hover{border-color:var(--gold);color:var(--gold-dark)}
.pagination .current{background:var(--gold);color:#fff;border:1px solid var(--gold)}

/* --- Footer --- */
.footer{background:var(--bg-dark);border-top:none;padding:4rem 0 0;color:rgba(255,255,255,.8)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
.footer-brand p{color:rgba(255,255,255,.5);font-size:.9rem;margin-top:1rem;line-height:1.7}
.footer h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-light);margin-bottom:1rem;font-family:var(--font-body);font-weight:700}
.footer ul{list-style:none;padding:0}
.footer ul li{margin-bottom:.5rem}
.footer ul a{color:rgba(255,255,255,.5);font-size:.9rem}
.footer ul a:hover{color:var(--gold-light)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.5rem 0;margin-top:3rem;text-align:center;font-size:.8rem;color:rgba(255,255,255,.35)}
@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}

/* --- Content --- */
.content{line-height:1.8;font-size:1rem}
.content h2{margin:2rem 0 1rem;font-size:1.5rem}
.content h3{margin:1.5rem 0 .75rem;font-size:1.25rem}
.content ul,.content ol{margin-bottom:1rem}
.content li{margin-bottom:.4rem;color:var(--text-muted)}
.content img{border-radius:var(--radius);margin:1.5rem 0}
.content a{color:var(--gold-dark);text-decoration:underline;text-decoration-color:rgba(200,168,78,.3)}
.content a:hover{text-decoration-color:var(--gold-dark)}
.content blockquote{border-left:3px solid var(--gold);padding:1rem 1.5rem;margin:1.5rem 0;background:rgba(200,168,78,.05);border-radius:0 var(--radius) var(--radius) 0;font-style:italic;color:var(--text-muted)}

/* --- FAQ --- */
.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;overflow:hidden}
.faq-question{width:100%;padding:1rem 1.25rem;background:var(--bg-card);border:none;color:var(--text);font-size:1rem;font-family:var(--font-body);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition)}
.faq-question:hover{color:var(--gold-dark)}
.faq-question svg{width:20px;height:20px;transition:transform .3s ease;flex-shrink:0;color:var(--gold)}
.faq-question[aria-expanded="true"] svg{transform:rotate(180deg)}
.faq-answer{padding:0 1.25rem;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;color:var(--text-muted);font-size:.95rem;line-height:1.7}
.faq-answer.open{max-height:500px;padding:0 1.25rem 1.25rem}

/* --- Gallery --- */
.gallery{display:grid;gap:.5rem}
.gallery-main{aspect-ratio:1/1;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elevated)}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.gallery-thumbs{display:flex;gap:.5rem;overflow-x:auto}
.gallery-thumb{width:80px;height:80px;border-radius:var(--radius);overflow:hidden;border:2px solid transparent;cursor:pointer;flex-shrink:0;transition:var(--transition)}
.gallery-thumb.active,.gallery-thumb:hover{border-color:var(--gold)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}

/* --- Process Steps --- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;counter-reset:step}
.step{text-align:center;padding:2rem 1.5rem;position:relative;counter-increment:step}
.step::before{content:counter(step);display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:rgba(200,168,78,.08);border:2px solid var(--gold);color:var(--gold-dark);font-family:var(--font-heading);font-size:1.3rem;font-weight:700;margin:0 auto 1.25rem}
.step h3{font-size:1.1rem;margin-bottom:.75rem}
.step p{font-size:.9rem;color:var(--text-muted);line-height:1.6}
@media(max-width:768px){.steps{grid-template-columns:1fr}}

/* --- CTA Section --- */
.cta-section{position:relative;padding:5rem 0;text-align:center;overflow:hidden;background:linear-gradient(135deg,var(--bg-dark) 0%,#2a2418 50%,var(--bg-dark) 100%)}
.cta-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(200,168,78,.1) 0%,transparent 70%)}
.cta-section h2{margin-bottom:1rem;position:relative;color:#fff}
.cta-section p{color:rgba(255,255,255,.6);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto;position:relative}
.cta-section .btn{position:relative}

/* --- Alert --- */
.alert{padding:1rem 1.25rem;border-radius:var(--radius);margin-bottom:1.5rem;font-size:.9rem}
.alert-success{background:#f0faf4;border:1px solid #b8dfc9;color:#1a7a42}
.alert-error{background:#fef2f2;border:1px solid #f5c6c6;color:#991b1b}
.alert-info{background:#f0f4fa;border:1px solid #b8c9df;color:#1b4a7a}

/* --- Map --- */
.map-container{border-radius:var(--radius-lg);overflow:hidden;height:350px;border:1px solid var(--border)}
.map-container iframe{width:100%;height:100%;border:0}

/* --- Coins Grid --- */
.coin-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;text-align:center;transition:var(--transition);box-shadow:var(--shadow)}
.coin-card:hover{border-color:var(--border-gold);transform:translateY(-4px);box-shadow:var(--shadow-gold)}
.coin-card-img{width:150px;height:150px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;background:var(--bg-elevated);border:2px solid var(--border-gold)}
.coin-card-img img{width:100%;height:100%;object-fit:cover}
.coin-card h3{font-size:1rem;margin-bottom:.5rem}
.coin-card .weight{font-size:.85rem;color:var(--text-muted)}
.coin-card .price{font-family:var(--font-heading);font-size:1.2rem;color:var(--gold-dark);font-weight:700;margin-top:.5rem}

/* --- Animations --- */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.fade-up{animation:fadeUp .6s ease forwards}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
.gold-shimmer{background:linear-gradient(90deg,var(--gold) 0%,var(--gold-light) 50%,var(--gold) 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 3s linear infinite}

/* --- Skeleton/Loading --- */
.skeleton{background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--border) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}

/* --- WhatsApp Float --- */
.whatsapp-float{position:fixed;bottom:24px;right:24px;z-index:999;display:flex;align-items:center;gap:.75rem;background:#25D366;border-radius:50px;padding:.75rem 1.25rem .75rem 1rem;box-shadow:0 4px 16px rgba(37,211,102,.3);transition:var(--transition);text-decoration:none;color:#fff}
.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(37,211,102,.4);color:#fff}
.whatsapp-icon{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.whatsapp-icon svg{width:32px;height:32px;fill:#fff}
.whatsapp-label{font-size:.85rem;font-weight:600;line-height:1.3;max-width:200px;white-space:normal}
@media(max-width:768px){.whatsapp-float{bottom:16px;right:16px;padding:.6rem 1rem .6rem .75rem;gap:.5rem}.whatsapp-icon,.whatsapp-icon svg{width:26px;height:26px}.whatsapp-label{font-size:.78rem;max-width:160px}}

/* --- Cookie Banner --- */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--bg-card);border-top:1px solid var(--border);padding:1.25rem;display:none;box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.cookie-banner.show{display:block}
.cookie-inner{max-width:var(--max-w);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.cookie-inner p{font-size:.85rem;color:var(--text-muted);margin:0}
.cookie-inner a{color:var(--gold-dark)}
.cookie-actions{display:flex;gap:.5rem;flex-shrink:0}
@media(max-width:768px){.cookie-inner{flex-direction:column;text-align:center}}

/* --- Gallery Page --- */
.gallery-categories{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.gallery-cat-link{padding:.5rem 1rem;border-radius:var(--radius);border:1px solid var(--border);color:var(--text-muted);font-size:.85rem;text-decoration:none;transition:var(--transition)}
.gallery-cat-link:hover,.gallery-cat-link.active{border-color:var(--gold);color:var(--gold-dark);background:rgba(200,168,78,.06)}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}
.gallery-item{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-card);border:1px solid var(--border);transition:var(--transition);box-shadow:var(--shadow)}
.gallery-item:hover{border-color:var(--border-gold);transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.gallery-item img{width:100%;height:220px;object-fit:cover;display:block;transition:transform .3s ease}
.gallery-item:hover img{transform:scale(1.03)}
.gallery-item-caption{padding:.75rem 1rem;font-size:.85rem;color:var(--text-muted)}
.gallery-item a{text-decoration:none;color:inherit;display:block}
@media(max-width:600px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.gallery-item img{height:140px}.gallery-item-caption{padding:.5rem .75rem;font-size:.78rem}}

/* --- Print --- */
@media print{.nav,.footer,.whatsapp-float,.cookie-banner{display:none!important}body{background:#fff;color:#000}h1,h2,h3{color:#000}}
