*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Helvetica Neue',Arial,sans-serif;color:var(--sm-text);background:var(--sm-white);line-height:1.6;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
h1,h2,h3,h4{font-family:'Georgia',serif;font-weight:400;color:var(--sm-navy);}

/* header */
.site-header{background:var(--sm-white);border-bottom:1px solid #eee;position:relative;z-index:10;}
.header-inner{max-width:1280px;margin:0 auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;}
.header-logo{font-family:'Georgia',serif;font-size:1.4rem;font-weight:700;color:var(--sm-navy);letter-spacing:1px;}
.header-logo span{font-weight:300;color:var(--sm-gold);}
.header-nav{display:flex;gap:32px;}
.nav-link{font-size:.92rem;color:var(--sm-text);}
.nav-link:hover{color:var(--sm-gold);}
.header-cta{background:var(--sm-navy);color:#fff;padding:10px 22px;border-radius:2px;font-size:.88rem;}

/* hero */
.hero{position:relative;min-height:600px;display:flex;align-items:center;overflow:hidden;}
.hero-media{position:absolute;inset:0;}
.hero-media img{width:100%;height:100%;object-fit:cover;}
.hero-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,29,58,.55) 0%,rgba(18,29,58,.15) 55%,rgba(18,29,58,0) 80%);}
.hero-overlay{position:relative;z-index:2;max-width:560px;padding:0 60px;color:#fff;}
.hero-overlay h1{font-size:3rem;color:#fff;margin-bottom:20px;line-height:1.15;}
.hero-overlay p{font-size:1.05rem;margin-bottom:28px;max-width:440px;}
.btn-primary{display:inline-block;background:#fff;color:var(--sm-navy);padding:14px 30px;font-size:.95rem;letter-spacing:.5px;}
.btn-secondary{display:inline-block;background:#fff;color:var(--sm-navy);padding:14px 30px;font-size:.95rem;}
.hero-arrows{position:absolute;bottom:28px;right:40px;display:flex;gap:12px;z-index:2;}
.arrow-btn{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:transparent;color:#fff;font-size:1.3rem;cursor:pointer;}

/* intro band */
.intro-band{background:var(--sm-blue-band);position:relative;padding:80px 32px;}
.intro-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.intro-band h2{font-size:2.2rem;color:var(--sm-navy-dark);}
.intro-band p{color:var(--sm-navy-dark);font-size:1rem;}

/* section title */
.section-title{text-align:left;max-width:1280px;margin:0 auto;padding:56px 32px 24px;font-size:1.8rem;}

/* category grid */
.grid-4{max-width:1280px;margin:0 auto;padding:0 32px 60px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.cat-card{position:relative;border-radius:2px;overflow:hidden;aspect-ratio:3/4;}
.cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.cat-card:hover img{transform:scale(1.05);}
.cat-label{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,rgba(18,29,58,.85),transparent);color:#fff;padding:20px 16px 14px;font-size:1rem;font-family:'Georgia',serif;}

/* product cards */
.product-card{background:var(--sm-ivory);padding:16px;text-align:center;}
.product-card img{aspect-ratio:1/1;object-fit:cover;margin-bottom:14px;}
.product-card h3{font-size:1rem;margin-bottom:6px;}
.product-card .price{color:var(--sm-gold);font-weight:600;}

/* wholesale band */
.wholesale-band{background:var(--sm-blue-band-light);padding:70px 32px;}
.wholesale-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
.wholesale-text h2{font-size:2rem;margin-bottom:16px;}
.wholesale-text p{margin-bottom:24px;color:var(--sm-navy-dark);}
.wholesale-media img{border-radius:2px;}

/* footer */
.site-footer{background:var(--sm-navy);color:#cfd6ea;}
.footer-inner{max-width:1280px;margin:0 auto;padding:56px 32px 32px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;}
.footer-col .footer-logo{font-family:'Georgia',serif;font-size:1.3rem;color:#fff;letter-spacing:1px;}
.footer-col .footer-logo span{font-weight:300;color:var(--sm-gold);}
.footer-col p{margin-top:12px;font-size:.9rem;color:#a8b0c8;}
.footer-col h4{color:#fff;font-family:inherit;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;}
.footer-col a{display:block;font-size:.9rem;color:#cfd6ea;margin-bottom:10px;}
.footer-col a:hover{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 32px;text-align:center;font-size:.82rem;color:#8b93ad;}

/* generic page header for inner pages */
.page-hero{background:var(--sm-navy);color:#fff;padding:70px 32px;text-align:center;}
.page-hero h1{color:#fff;font-size:2.2rem;}
.page-content{max-width:900px;margin:0 auto;padding:60px 32px;}
.page-content h2{margin:32px 0 14px;font-size:1.4rem;}
.page-content p{margin-bottom:16px;color:var(--sm-text-muted);}

/* contact form */
.contact-form{max-width:600px;margin:0 auto;padding:60px 32px;}
.contact-form label{display:block;font-size:.85rem;margin-bottom:6px;color:var(--sm-text);}
.contact-form input,.contact-form textarea{width:100%;padding:12px;border:1px solid #ddd;margin-bottom:20px;font-family:inherit;font-size:.95rem;}
.contact-form button{background:var(--sm-navy);color:#fff;padding:14px 32px;border:none;font-size:.95rem;cursor:pointer;}

/* blog list (orphan page) */
.blog-hero{background:var(--sm-navy);color:#fff;padding:60px 32px;text-align:center;}
.blog-hero h1{color:#fff;}
.blog-grid{max-width:1280px;margin:0 auto;padding:50px 32px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}

@media(max-width:900px){
  .intro-inner,.wholesale-inner{grid-template-columns:1fr;}
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr;}
  .header-nav{display:none;}
  .hero-overlay h1{font-size:2.2rem;}
  .blog-grid{grid-template-columns:1fr;}
}
