/*
Theme Name: DHANVIK
Theme URI: https://dhanvik.in
Author: DHANVIK
Description: Elementor-ready theme for DHANVIK, an agri-trading company in the non-basmati rice and paddy supply chain. Header and footer are edited in Appearance > Customize and Appearance > Menus. All six pages are built with native Elementor widgets, so every text, image, button and colour is editable in the Elementor editor. Requires the free Elementor plugin (3.16 or newer).
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: dhanvik
*/

:root{
  --dv-green:#1F4D2B; --dv-gold:#E0A526; --dv-cream:#FAF6EA; --dv-char:#222222; --dv-white:#fff;
  --dv-line:#E9E2CC;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dv-cream);color:var(--dv-char);font-family:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5{font-family:'Playfair Display',Georgia,serif;color:var(--dv-green);line-height:1.15}
a{color:var(--dv-green);text-decoration:none}
img{max-width:100%;height:auto}
.screen-reader-text{position:absolute;left:-9999px}

/* ---------- Header ---------- */
.dv-header{position:sticky;top:0;z-index:999;background:#fff;border-bottom:1px solid var(--dv-line)}
body.admin-bar .dv-header{top:32px}
@media(max-width:782px){body.admin-bar .dv-header{top:46px}}
.dv-header__in{max-width:1440px;margin:0 auto;height:84px;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.dv-logo{display:flex;align-items:center;gap:10px;font-family:'Playfair Display',serif;font-weight:800;font-size:28px;letter-spacing:3px;color:var(--dv-green)}
.dv-logo img{max-height:52px;width:auto}
.dv-nav ul{display:flex;gap:36px;list-style:none;margin:0;padding:0}
.dv-nav a{font-weight:500;font-size:16px;color:var(--dv-char);padding-bottom:4px;border-bottom:3px solid transparent}
.dv-nav .current-menu-item>a,.dv-nav .current_page_item>a,.dv-nav a:hover{color:var(--dv-green);border-bottom-color:var(--dv-gold);font-weight:600}
.dv-btn{display:inline-block;padding:14px 28px;border-radius:999px;font-weight:600;font-size:16px;background:var(--dv-gold);color:var(--dv-char);transition:transform .2s,box-shadow .2s}
.dv-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 20px rgba(0,0,0,.15);color:var(--dv-char)}
.dv-burger{display:none;background:none;border:0;font-size:32px;color:var(--dv-green);cursor:pointer;line-height:1}
@media(max-width:1024px){
  .dv-header__in{padding:0 20px;height:68px}
  .dv-burger{display:block}
  .dv-header .dv-btn--hd{display:none}
  .dv-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--dv-line);padding:16px 20px 24px}
  .dv-nav.is-open{display:block}
  .dv-nav ul{flex-direction:column;gap:14px}
  .dv-logo{font-size:22px}
}

/* ---------- Footer ---------- */
.dv-footer{background:#17391f;color:#cfdccf;padding:72px 48px 32px;font-size:15px}
.dv-footer__in{max-width:1248px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1.2fr;gap:64px}
.dv-footer h4{color:#fff;font-family:'Inter',sans-serif;font-size:15px;margin:0 0 14px}
.dv-footer a{color:#cfdccf}
.dv-footer a:hover{color:var(--dv-gold)}
.dv-footer ul{list-style:none;margin:0;padding:0}
.dv-footer li{margin:8px 0}
.dv-footer .dv-logo{color:#fff}
.dv-social{display:flex;gap:12px;margin-top:18px}
.dv-social a{width:38px;height:38px;border-radius:50%;border:1.5px solid #5d8267;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff}
.dv-footer__copy{max-width:1248px;margin:48px auto 0;padding-top:24px;border-top:1px solid #34573c;font-size:13px}
@media(max-width:860px){.dv-footer{padding:48px 20px 28px}.dv-footer__in{grid-template-columns:1fr;gap:32px}}

/* ---------- Elementor fine-tuning ---------- */
.elementor-widget-text-editor,.elementor-widget-icon-box .elementor-icon-box-description,.elementor-widget-testimonial .elementor-testimonial-content,.elementor-widget-accordion .elementor-tab-content,.elementor-widget-icon-list .elementor-icon-list-text,.elementor-widget-counter .elementor-counter-title{font-family:'Inter',sans-serif}
.elementor-widget-icon-box .elementor-icon-box-title,.elementor-widget-counter .elementor-counter-number-wrapper,.elementor-widget-accordion .elementor-tab-title{font-family:'Playfair Display',serif}
.elementor-widget-accordion .elementor-accordion-item{border-radius:16px;border:1px solid #efe8d2;margin-bottom:14px;background:#fff;overflow:hidden}
.elementor-widget-accordion .elementor-tab-title{padding:22px 28px}
.elementor-widget-accordion .elementor-tab-content{padding:0 28px 24px;border:0}
.dv-card{transition:transform .25s ease,box-shadow .25s ease}
.dv-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(31,77,43,.12)}
.elementor-widget-button .elementor-button{transition:transform .2s ease,box-shadow .2s ease}
.elementor-widget-button .elementor-button:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 8px 20px rgba(0,0,0,.18)}
.dv-grain{background-image:repeating-linear-gradient(115deg,rgba(31,77,43,.045) 0 2px,transparent 2px 14px)}
@media(min-width:1025px){
  .dv-hero{animation:dv-zoom 24s ease-in-out infinite alternate}
}
@keyframes dv-zoom{from{background-size:112%}to{background-size:128%}}
@media(prefers-reduced-motion:reduce){.dv-hero{animation:none}.dv-card,.dv-btn,.elementor-widget-button .elementor-button{transition:none}}

/* ---------- Enquiry forms ([dhanvik_form]) ---------- */
.dv-form{display:flex;flex-direction:column;gap:14px;width:100%}
.dv-form input[type=text],.dv-form input[type=tel],.dv-form input[type=email],.dv-form textarea{width:100%;background:#fff;border:1.5px solid #d9d2b8;border-radius:12px;padding:16px 18px;font:15px 'Inter',sans-serif;color:var(--dv-char)}
.dv-form input:focus,.dv-form textarea:focus{outline:0;border-color:var(--dv-green)}
.dv-form button{background:var(--dv-green);color:#fff;border:0;border-radius:999px;padding:16px 32px;font:600 16px 'Inter',sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}
.dv-form button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.18)}
.dv-form .dv-hp{position:absolute;left:-9999px;opacity:0}
.dv-msg{padding:14px 18px;border-radius:12px;margin-bottom:14px;font-size:15px;font-weight:500}
.dv-msg--ok{background:#e6f2e8;color:var(--dv-green)}
.dv-msg--err{background:#fdecea;color:#8a2a1f}

/* ---------- Generic content (blog, 404) ---------- */
.dv-wrap{max-width:900px;margin:0 auto;padding:72px 24px}
.dv-wrap h1{font-size:44px;margin:0 0 24px}
.dv-wrap article{margin-bottom:48px}
