/* ===========================================
   DELFA — Main Stylesheet (standalone)
   Mobile-first
   =========================================== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
img{max-width:100%;height:auto;display:block}a{text-decoration:none}ul,ol{list-style:none}
button{cursor:pointer;border:none;background:none;font:inherit}input,textarea,select{font:inherit}

:root{
  --terra:#B7472A;--terra-light:#C2552D;--terra-dark:#8B3A1F;--terra-deep:#6B2A15;
  --cream:#FAF3E8;--cream-dark:#EDE2D0;--sand:#D4BFA0;--charcoal:#1A1410;
  --gold:#C9A96E;--gold-light:#DBBF8A;--text-dark:#2A1F16;--text-muted:#7A6B5A;
  --green:#4A8F3A;--green-light:#6DBF5B;--white:#FFFFFF;
  --r-sm:8px;--r-md:12px;--r-lg:14px;--r-xl:16px;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--cream);font-family:'DM Sans',-apple-system,sans-serif;color:var(--text-dark);line-height:1.6;font-size:16px;overflow-x:hidden}

h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;color:var(--charcoal);line-height:1.15}
h4,h5,h6{font-family:'Josefin Sans',sans-serif;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}
h1{font-size:32px}h2{font-size:28px}h3{font-size:22px}h4{font-size:14px}
a{color:var(--terra);transition:color .2s}a:hover{color:var(--terra-dark)}
p{margin-bottom:1em}::selection{background:rgba(183,71,42,.12)}

/* Layout */
.delfa-container{max-width:1280px;margin:0 auto;padding:0 20px}
.delfa-container-narrow{max-width:800px}
.delfa-container-wide{max-width:1140px}
.delfa-main{min-height:60vh;padding-top:60px}
.delfa-site-content{min-height:100vh;display:flex;flex-direction:column}

/* Buttons */
.delfa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--terra);color:var(--cream);border:none;border-radius:var(--r-lg);font-family:'Josefin Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:2px;text-transform:uppercase;padding:14px 28px;min-height:48px;transition:all .2s;cursor:pointer;-webkit-tap-highlight-color:transparent}
.delfa-btn:hover{background:var(--terra-dark);color:var(--cream);transform:translateY(-1px);box-shadow:0 6px 20px rgba(183,71,42,.25)}
.delfa-btn:active{transform:scale(.98)}
.delfa-btn-outline{background:transparent;color:var(--terra);border:2px solid var(--terra)}
.delfa-btn-outline:hover{background:var(--terra);color:var(--cream)}

/* Forms */
input[type="text"],input[type="email"],input[type="number"],input[type="password"],input[type="search"],input[type="tel"],textarea,select{border:1.5px solid var(--cream-dark);border-radius:var(--r-md);background:var(--white);padding:12px 16px;width:100%;transition:border-color .2s}
input:focus,textarea:focus,select:focus{border-color:var(--terra);outline:none;box-shadow:0 0 0 3px rgba(183,71,42,.08)}

/* ============================================
   HEADER
   ============================================ */
.delfa-header{position:fixed;top:0;width:100%;z-index:1000;background:rgba(250,243,232,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(183,71,42,.06)}
.delfa-header-inner{max-width:1280px;margin:0 auto;padding:12px 20px;display:flex;justify-content:space-between;align-items:center}
.delfa-logo{display:flex;align-items:center;gap:6px;font-family:'Josefin Sans',sans-serif;font-size:18px;font-weight:600;letter-spacing:5px;color:var(--charcoal);text-decoration:none}
.delfa-logo-africa-img{height:32px;width:auto;object-fit:contain}
.delfa-logo .custom-logo{height:36px;width:auto}
.delfa-nav-desktop{display:none}
.delfa-menu{display:flex;gap:28px;align-items:center;list-style:none}
.delfa-menu li a{font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);font-weight:400;padding:8px 0;transition:color .2s}
.delfa-menu li a:hover{color:var(--terra)}
.delfa-header-actions{display:flex;align-items:center;gap:12px}
.delfa-cart-link{display:flex;align-items:center;gap:6px;color:var(--charcoal);min-height:44px;min-width:44px;justify-content:center;position:relative}
.delfa-cart-count{position:absolute;top:2px;right:-4px;background:var(--terra);color:var(--cream);font-size:9px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Josefin Sans',sans-serif}
.delfa-cart-count:empty{display:none}
.delfa-burger{width:44px;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.delfa-burger span{display:block;width:22px;height:2px;background:var(--charcoal);border-radius:2px;transition:all .3s}
.delfa-burger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.delfa-burger.open span:nth-child(2){opacity:0}
.delfa-burger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.delfa-nav-mobile{position:fixed;top:60px;left:0;right:0;bottom:0;background:var(--cream);z-index:999;display:flex;flex-direction:column;padding:30px 20px;transform:translateX(100%);transition:transform .3s ease}
.delfa-nav-mobile.open{transform:translateX(0)}
.delfa-mobile-menu{list-style:none;display:flex;flex-direction:column}
.delfa-mobile-menu li a{display:flex;align-items:center;min-height:56px;font-family:'Josefin Sans',sans-serif;font-size:16px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--charcoal);border-bottom:1px solid var(--cream-dark);padding:0 4px}
.delfa-mobile-menu li a:hover{color:var(--terra)}
.delfa-mobile-cart-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px;padding:16px;background:var(--terra);color:var(--cream);border-radius:var(--r-lg);font-family:'Josefin Sans',sans-serif;font-size:14px;font-weight:600;letter-spacing:2px;text-transform:uppercase}

/* ============================================
   FOOTER
   ============================================ */
.delfa-footer{background:var(--charcoal);padding:40px 20px 20px}
.delfa-footer-inner{max-width:1280px;margin:0 auto}
.delfa-footer-grid{display:flex;flex-direction:column;gap:28px;margin-bottom:28px}
.delfa-footer-logo{font-family:'Josefin Sans',sans-serif;font-size:16px;letter-spacing:5px;color:var(--cream);font-weight:600;display:flex;align-items:center;gap:6px;margin-bottom:8px}
.delfa-footer-africa-img{height:24px;width:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.85}
.delfa-footer-tagline{font-size:13px;color:rgba(250,243,232,.3);font-weight:300;line-height:1.7}
.delfa-footer-col h4{font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(250,243,232,.35);font-weight:600;margin-bottom:12px}
.delfa-footer-links li a{display:flex;align-items:center;min-height:36px;font-size:13px;color:rgba(250,243,232,.5);font-weight:300}
.delfa-footer-links li a:hover{color:var(--cream)}
.delfa-footer-bottom{padding-top:20px;border-top:1px solid rgba(250,243,232,.06);font-size:11px;color:rgba(250,243,232,.2);text-align:center}

/* ============================================
   HOMEPAGE
   ============================================ */
.delfa-hero{background:linear-gradient(135deg,var(--terra-dark),var(--terra-light));padding:80px 20px 60px;margin-top:60px;position:relative;overflow:hidden}
.delfa-hero-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1}
.delfa-hero-tag{font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--gold-light);font-weight:600;display:block;margin-bottom:12px}
.delfa-hero-title{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:700;color:var(--cream);line-height:1.1;margin-bottom:16px}
.delfa-hero-text{font-size:16px;color:rgba(250,243,232,.7);font-weight:300;line-height:1.8;max-width:500px;margin-bottom:28px}
.delfa-hero-btn{background:var(--cream);color:var(--terra)}
.delfa-hero-btn:hover{background:var(--white);color:var(--terra-dark);box-shadow:0 6px 20px rgba(0,0,0,.15)}
.delfa-features{padding:50px 0}
.delfa-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.delfa-feature{background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--r-xl);padding:24px 18px;text-align:center;transition:all .3s}
.delfa-feature:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.04)}
.delfa-feature-icon{font-size:28px;margin-bottom:10px}
.delfa-feature h3{font-size:16px;margin-bottom:6px}
.delfa-feature p{font-size:13px;color:var(--text-muted);font-weight:300;line-height:1.6;margin-bottom:0}
.delfa-home-products{padding:50px 0;background:var(--white)}
.delfa-section-title{text-align:center;font-size:32px;margin-bottom:30px}
.delfa-story-cta{background:linear-gradient(135deg,var(--terra-dark),var(--terra-light));padding:50px 0}
.delfa-story-inner{text-align:center}
.delfa-story-stats{display:flex;justify-content:center;gap:40px;flex-wrap:wrap}
.delfa-stat{display:flex;flex-direction:column;align-items:center}
.delfa-stat-num{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:700;color:var(--cream)}
.delfa-stat-label{font-family:'Josefin Sans',sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-light);font-weight:300;margin-top:4px}

/* ============================================
   BLOG / POSTS
   ============================================ */
.delfa-page-title{text-align:center;margin:40px 0 30px;font-size:36px}
.delfa-posts-grid{display:grid;grid-template-columns:1fr;gap:24px}
.delfa-post-card{background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--r-xl);overflow:hidden;transition:all .3s}
.delfa-post-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.04)}
.delfa-post-thumb img{width:100%;aspect-ratio:16/9;object-fit:cover}
.delfa-post-content{padding:20px}
.delfa-post-title{font-size:20px;margin-bottom:8px}
.delfa-post-title a{color:var(--charcoal)}
.delfa-post-title a:hover{color:var(--terra)}
.delfa-post-excerpt{font-size:14px;color:var(--text-muted);font-weight:300;margin-bottom:12px}
.delfa-read-more{font-family:'Josefin Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--terra);font-weight:600}
.delfa-single-title{margin:40px 0 12px;font-size:36px}
.delfa-single-meta{font-size:13px;color:var(--text-muted);margin-bottom:24px}
.delfa-single-thumb{border-radius:var(--r-xl);overflow:hidden;margin-bottom:30px}
.delfa-single-content{font-size:16px;line-height:1.8}
.delfa-single-content p{margin-bottom:1.2em}
.delfa-page-content{font-size:16px;line-height:1.8;padding:20px 0 40px}
.delfa-pagination{padding:30px 0;text-align:center}
.delfa-pagination .nav-links{display:flex;justify-content:center;gap:8px}
.delfa-pagination a,.delfa-pagination span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-sm);font-size:14px;font-weight:500;border:1px solid var(--cream-dark)}
.delfa-pagination .current{background:var(--terra);color:var(--cream);border-color:var(--terra)}

/* ============================================
   WOOCOMMERCE OVERRIDES
   ============================================ */
.woocommerce-breadcrumb{font-size:12px!important;color:var(--text-muted)!important;font-weight:300!important;padding:10px 0!important}
.woocommerce-breadcrumb a{color:var(--text-muted)!important}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--terra)!important;color:var(--cream)!important;border:none!important;border-radius:var(--r-lg)!important;font-family:'Josefin Sans',sans-serif!important;font-weight:600!important;font-size:13px!important;letter-spacing:2px!important;text-transform:uppercase!important;padding:12px 24px!important;transition:all .2s!important}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--terra-dark)!important}
.woocommerce-message{border-top-color:var(--green)!important}
.woocommerce-info{border-top-color:var(--gold)!important}
.woocommerce-error{border-top-color:var(--terra)!important}
.star-rating{color:var(--gold)!important}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-family:'Cormorant Garamond',serif!important;font-size:24px!important;font-weight:700!important;color:var(--charcoal)!important}
.woocommerce div.product p.price del{color:var(--sand)!important;font-size:16px!important}
.woocommerce div.product p.price ins{color:var(--terra)!important;text-decoration:none!important}
.woocommerce span.onsale{background:var(--terra)!important;color:var(--cream)!important;font-family:'Josefin Sans',sans-serif!important;font-size:10px!important;font-weight:600!important;letter-spacing:1px!important;padding:5px 14px!important;border-radius:20px!important;min-width:auto!important;min-height:auto!important;line-height:1.4!important}

/* WooCommerce product cards (shop) */
.woocommerce ul.products li.product{background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--r-xl);overflow:hidden;transition:all .3s;padding:0!important}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(139,58,31,.08)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:'Cormorant Garamond',serif!important;font-size:18px!important;font-weight:700!important;color:var(--charcoal)!important;padding:12px 16px 4px!important}
.woocommerce ul.products li.product .price{padding:0 16px!important;font-size:16px!important}
.woocommerce ul.products li.product .button{margin:12px 16px 16px!important;width:calc(100% - 32px)!important;text-align:center!important}

/* ============================================
   RESPONSIVE — TABLET (768px+)
   ============================================ */
@media(min-width:768px){
  .delfa-container{padding:0 40px}
  .delfa-header-inner{padding:14px 40px}
  .delfa-burger{display:none}
  .delfa-nav-desktop{display:block}
  .delfa-logo{font-size:20px;letter-spacing:6px}
  .delfa-main{padding-top:68px}
  .delfa-hero{padding:100px 40px 80px;margin-top:68px}
  .delfa-hero-title{font-size:52px}
  .delfa-features-grid{grid-template-columns:repeat(4,1fr);gap:20px}
  .delfa-posts-grid{grid-template-columns:repeat(2,1fr)}
  .delfa-footer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
  .delfa-footer{padding:50px 40px 24px}
  h1{font-size:42px}h2{font-size:34px}
}

/* DESKTOP (1024px+) */
@media(min-width:1024px){
  .delfa-hero-title{font-size:60px}
  .delfa-posts-grid{grid-template-columns:repeat(3,1fr)}
  .delfa-footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:50px}
  .delfa-logo{font-size:22px;letter-spacing:8px}
  h1{font-size:48px}h2{font-size:38px}
}

/* LARGE (1400px+) */
@media(min-width:1400px){
  .delfa-hero-title{font-size:68px}
}

::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--cream)}
::-webkit-scrollbar-thumb{background:var(--sand);border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:var(--terra)}
