/*
Theme Name: AdoreVera Native
Template: makali
Version: 1.0.0
Description: Maintained AdoreVera layouts without a visual page builder.
*/

.av-native-header { background:#fff; position:relative; z-index:30; }
.av-native-header.av-panel-is-open { z-index:10000; }
.av-native-header .av-shell-inner { width:1170px; max-width:calc(100% - 40px); margin:0 auto; }
.av-native-topbar { height:48px; border-bottom:1px solid #eee; color:#777; font-size:14px; }
.av-native-topbar .av-shell-inner { height:100%; display:flex; align-items:center; gap:32px; }
.av-native-topbar a { color:inherit; }
.av-native-topbar a:hover { color:#897446; }
.av-native-bar { height:100px; display:grid; grid-template-columns:230px 1fr 96px; align-items:center; gap:20px; }
.av-native-logo { display:inline-flex; align-items:center; width:100px; }
.av-native-logo img { display:block; width:100px; height:50px; object-fit:contain; }
.av-native-header .av-native-nav-list { display:flex; align-items:center; justify-content:flex-end; gap:24px; list-style:none; padding:0; margin:0; }
.av-native-header .av-native-nav-list li { padding:0; margin:0; list-style:none; position:relative; }
.av-native-header .av-native-nav-list a { display:block; color:#222; font-size:13px; line-height:1.4; white-space:nowrap; text-decoration:none; }
.av-native-header .av-native-nav-list a:hover,
.av-native-header .av-native-nav-list .current-menu-item>a { color:#a49b73; }
.av-native-header .av-native-nav-list .sub-menu { position:absolute; top:100%; left:0; min-width:180px; background:white; padding:16px; margin:0; list-style:none; display:none; border:1px solid #eee; }
.av-native-header .av-native-nav-list li:hover>.sub-menu,
.av-native-header .av-native-nav-list li:focus-within>.sub-menu { display:block; }
.av-native-actions { display:flex; gap:12px; align-items:center; justify-content:flex-end; }
.av-native-header .av-icon-button { display:inline-flex; align-items:center; justify-content:center; position:relative; width:36px; height:44px; min-width:36px; border:0; background:transparent; color:#555; padding:0; cursor:pointer; }
.av-icon-button svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.5; }
.av-native-header .av-menu-toggle { display:none; }
.av-cart-count { position:absolute; top:1px; right:-4px; border-radius:50%; min-width:17px; height:17px; padding:0 3px; background:#b6ac82; color:#fff; font-size:10px; line-height:17px; text-align:center; }
.av-native-header button:focus-visible,
.av-native-header a:focus-visible { outline:2px solid #7a592c; outline-offset:4px; }
.av-shell-panel[hidden], .av-shell-backdrop[hidden] { display:none !important; }
.av-shell-backdrop { position:fixed; inset:0; z-index:1000; background:rgba(0,0,0,.35); }
.av-shell-panel { position:fixed; inset:0 0 0 auto; z-index:1001; background:#fff; width:380px; max-width:calc(100vw - 24px); padding:28px; overflow-y:auto; color:#222; box-shadow:-8px 0 40px rgba(0,0,0,.12); }
.av-shell-panel h2 { margin:0 44px 24px 0; font-size:24px; line-height:1.3; }
.av-shell-panel .av-panel-close { position:absolute; top:17px; right:17px; }
.av-shell-panel .av-native-nav-list { display:block; margin-top:28px; }
.av-shell-panel .av-native-nav-list a { white-space:normal; font-size:16px; padding:12px 0; border-bottom:1px solid #eee; }
.av-shell-panel .av-native-nav-list .sub-menu { position:static; display:block; padding:0 0 0 16px; border:0; }
.av-shell-panel .av-mobile-contact { margin:28px 0; display:grid; gap:12px; font-size:14px; }
.av-shell-search { display:flex; flex-wrap:wrap; gap:8px; }
.av-shell-search label { width:100%; font-size:14px; margin:0; }
.av-shell-search input[type=search] { flex:1; width:0; min-width:0; height:44px; border:1px solid #ccc; padding:8px 12px; color:#222; }
.av-shell-search button[type=submit] { min-height:44px; background:#7e5726; color:#fff; padding:8px 14px; border:0; }
.av-shell-panel .av-native-cart-content { position:static; margin:0; padding:0; }
.av-shell-panel ul.cart_list { position:static !important; margin:0; padding:0; list-style:none; }
.av-shell-panel ul.cart_list li { padding:14px 24px 14px 0; margin:0; border-bottom:1px solid #eee; position:relative; min-height:82px; }
.av-shell-panel ul.cart_list li a { color:#222; font-size:14px; line-height:1.5; }
.av-shell-panel ul.cart_list li a.remove { position:absolute; right:0; top:14px; }
.av-shell-panel ul.cart_list li img { float:left; margin:0 12px 8px 0; width:56px; height:56px; object-fit:contain; }
.av-shell-panel ul.cart_list li .quantity { display:block; font-size:13px; }
.av-shell-panel .woocommerce-mini-cart__total { margin:20px 0; padding-top:16px; border-top:1px solid #eee; }
.av-shell-panel .woocommerce-mini-cart__buttons { display:flex; flex-wrap:wrap; gap:12px; }
.av-shell-panel .woocommerce-mini-cart__buttons a { background:#7e5726; color:#fff; padding:10px 16px; font-size:14px; }
.av-native-skip { position:absolute; left:16px; top:-100px; z-index:2000; padding:12px 18px; background:#fff; color:#222; }
.av-native-skip:focus { top:8px; }
.av-contact-map { margin:48px 0; }
.av-contact-map iframe { display:block; width:100%; height:450px; border:0; }
.av-cookie-policy { width:1170px; max-width:calc(100% - 40px); margin:48px auto 64px; color:#333; line-height:1.75; }
.av-cookie-policy h1 { font-size:36px; line-height:1.2; margin:0 0 24px; }
.av-cookie-policy-page .entry-header { display:none; }
.av-cookie-preferences { display:inline-block; margin:8px 0 16px; padding:12px 20px; border:0; border-radius:4px; background:#7e5726; color:#fff; font:inherit; cursor:pointer; }
.av-cookie-preferences[hidden] { display:none !important; }
.av-cookie-preferences:focus-visible { outline:3px solid #655333; outline-offset:3px; }
.av-cookie-policy h2 { font-size:28px; line-height:1.3; margin:32px 0 16px; }
.av-cookie-policy h3 { font-size:20px; line-height:1.4; margin:24px 0 12px; }
.av-cookie-policy a { color:#655333; text-decoration:underline; }
.av-cookie-table-wrap { overflow-x:auto; margin:24px 0; }
.av-cookie-policy table { width:100%; min-width:560px; border-collapse:collapse; }
.av-cookie-policy th, .av-cookie-policy td { padding:12px 16px; border:1px solid #ddd; text-align:left; vertical-align:top; }
.av-cookie-policy th { background:#f5f4ef; color:#222; }
.av-cookie-policy code { white-space:normal; overflow-wrap:anywhere; }
.av-contact-layout { display:grid; grid-template-columns:1fr 2fr; gap:64px; width:1170px; max-width:calc(100% - 40px); margin:64px auto; }
.av-contact-layout h2 { font-size:32px; margin:0 0 28px; line-height:1.3; }
.av-contact-details { list-style:none; margin:0; padding:0; }
.av-contact-details li { margin:0 0 28px; padding:0; }
.av-contact-details h3 { font-size:18px; margin:12px 0 8px; }
.av-contact-details img { width:auto; height:40px; }
.av-contact-details p { line-height:1.7; }
.av-contact-details a { color:#655333; text-decoration:underline; }
.av-contact-layout .wpcf7 form { margin:0; }
.av-contact-layout .wpcf7 input:not([type=submit]):not([type=hidden]),
.av-contact-layout .wpcf7 textarea { width:100%; max-width:100%; }
.av-contact-layout .wpcf7 textarea { min-height:180px; }
@media(max-width:1199px) {
 .av-native-topbar,.av-native-desktop-nav,.av-native-header .av-search-toggle { display:none; }
 .av-native-header .av-menu-toggle { display:inline-flex; }
 .av-native-bar { height:172.25px; grid-template-columns:1fr auto; gap:12px; }
 .av-native-logo,.av-native-logo img { width:132px; height:66px; }
 .av-contact-layout { gap:32px; }
}
@media(max-width:767px) {
 .av-native-header .av-shell-inner { max-width:calc(100% - 32px); }
 body.single-product .av-native-header .av-native-bar { height:86px; }
 .av-contact-map { margin:24px 0 32px; }
 .av-contact-map iframe { height:320px; }
 .av-contact-layout { display:block; max-width:calc(100% - 32px); margin:32px auto; }
 .av-contact-layout h2 { font-size:26px; margin-bottom:24px; }
 .av-contact-form { margin-top:40px; }
}
