
:root { --gold:#c8a200; --soft:#f7f6f2; --black:#0b0b0b; }
* { box-sizing:border-box; }
body { margin:0; background:var(--soft); color:#111; font-family:'Lato',sans-serif; }
h1,h2,h3 { font-family:'Playfair Display',serif; }
/* Header */
.header { position:sticky; top:0; z-index:1000; display:flex; align-items:center; justify-content:space-between; padding:12px 22px; background:#fff; border-bottom:5px solid var(--gold);}
.logo img { height:62px; width:auto; }
.nav a { color:var(--gold); text-decoration:none; margin:0 10px; font-weight:700; transition:all .25s; padding-bottom:4px; }
.nav a:hover { border-bottom:2px solid var(--gold); }
.nav a.active { color:#000; border-bottom:3px solid var(--gold); }
.icons a { margin-left:14px; font-size:20px; text-decoration:none; color:#111; }
#cart-count { background:var(--gold); color:#000; padding:2px 6px; border-radius:10px; font-size:12px; vertical-align:middle; }

/* Hero slideshow (CSS fade) */
.hero { position:relative; height:520px; overflow:hidden; border-bottom:5px solid var(--gold);}
.hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; animation:fade 15s infinite; }
.hero img:nth-child(1) { animation-delay:0s; }
.hero img:nth-child(2) { animation-delay:5s; }
.hero img:nth-child(3) { animation-delay:10s; }
@keyframes fade { 0%{opacity:0} 10%{opacity:1} 30%{opacity:1} 40%{opacity:0} 100%{opacity:0} }
.hero-cta { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); text-align:center; }
.hero-cta h1 { font-family:'Priestacy', cursive; font-size:62px; color:var(--gold); opacity:0; animation:fadein 2.2s forwards; }
@keyframes fadein { from{opacity:0; transform:translate(-50%,-48%)} to{opacity:1; transform:translate(-50%,-50%)} }
.btn { display:inline-block; background:var(--gold); color:#000; padding:12px 18px; border-radius:6px; text-decoration:none; font-weight:800; border:2px solid var(--gold); }
.btn:hover { background:transparent; color:var(--gold); }

/* Layout */
.container { max-width:1150px; margin:28px auto; padding:0 18px; }
.section-title { color:var(--gold); text-align:center; font-size:28px; margin:16px 0; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; }
.card { background:#fff; border:3px solid var(--gold); border-radius:8px; padding:14px; text-align:center; }
.card img { width:100%; height:260px; object-fit:cover; border-radius:6px; }
.price { color:var(--gold); font-weight:800; margin:6px 0; }
.shop-btn { background:var(--gold); color:#000; padding:10px 16px; border-radius:6px; text-decoration:none; font-weight:800; border:2px solid var(--gold); display:inline-block; }
.shop-btn:hover { background:transparent; color:var(--gold); }

/* Gallery */
.gallery-grid img { width:100%; border:4px solid var(--gold); border-radius:8px; }

/* Footer */
footer { background:#fff; padding:22px; text-align:center; border-top:5px solid var(--gold); }
footer .social img { width:28px; margin:0 6px; }
.mailing-list input { padding:8px; width:240px; }
.mailing-list button { background:var(--gold); color:#000; border:none; padding:8px 14px; font-weight:800; border-radius:6px; }

/* Forms */
.form { max-width:520px; margin:0 auto; background:#fff; padding:20px; border:5px solid var(--gold); border-radius:8px; }
.form input, .form textarea { width:100%; padding:12px; margin:8px 0; border:1px solid #ccc; }
