/* Ordinary pages, posts, search and 404 in the theme. Loaded after store.css. */
.vh-entry{max-width:820px}
.woocommerce-cart .vh-entry,.woocommerce-checkout .vh-entry,.woocommerce-account .vh-entry{max-width:none}
.vh-page-title{margin-bottom:28px}
.vh-entry .entry-content{font-size:17px;line-height:1.75;color:var(--ink)}
.vh-entry .entry-content>*+*{margin-top:1em}
.vh-entry .entry-content p{margin:0 0 1em}
.vh-entry .entry-content strong{font-weight:600}
.vh-entry .entry-content a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.vh-entry .entry-content h2,.vh-entry .entry-content h3,.vh-entry .entry-content .sow-headline{font-family:var(--serif)!important;font-weight:400!important;font-size:clamp(26px,2.6vw,36px)!important;line-height:1.15!important;color:var(--ink)!important;text-transform:none!important;letter-spacing:0!important;margin:1.4em 0 .5em!important;text-align:left!important}
.vh-entry .entry-content .sow-headline a{color:inherit!important;text-decoration:none}
.vh-entry .entry-content ul,.vh-entry .entry-content ol{padding-left:1.3em;margin:0 0 1em}
.vh-entry .entry-content img{max-width:100%;height:auto;border-radius:16px}

/* SiteOrigin layouts from the old theme: neutral rows, the page's own colours */
.vh-entry .panel-row-style,.vh-entry .siteorigin-panels-stretch{background:none!important;color:inherit!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;width:auto!important;left:auto!important;right:auto!important}
.vh-entry .panel-grid-cell{min-width:0;flex:1 1 280px;width:auto!important;margin:0!important;padding:0!important}
.vh-entry .panel-grid{display:flex;flex-wrap:wrap;gap:32px}
.vh-entry .panel-row-style{display:flex;flex-wrap:wrap;gap:32px;flex:1 1 100%}
.vh-entry .panel-grid-cell-empty{display:none}
.vh-entry .so-panel{margin-bottom:24px!important}
.vh-entry .so-widget-sow-social-media-buttons a{border-radius:50%!important}

/* contact forms (SiteOrigin, Everest Forms, plain) */
.vh-entry form label,.vh-entry .sow-form-field-label-above{display:block;font-size:13px;color:var(--muted);margin-bottom:6px;font-weight:500}
.vh-entry form label strong{font-weight:500}
.vh-entry input[type=text],.vh-entry input[type=email],.vh-entry input[type=tel],.vh-entry input[type=number],.vh-entry textarea,.vh-entry select,.vh-entry .sow-text-field,.vh-entry .sow-contact-form textarea{width:100%!important;min-height:48px;border:0!important;border-radius:14px!important;box-shadow:inset 0 0 0 1px var(--line)!important;background:var(--paper)!important;font:inherit!important;font-size:15px!important;color:var(--ink)!important;padding:10px 16px!important}
.vh-entry textarea{min-height:140px}
.vh-entry input:focus,.vh-entry textarea:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--red)!important}
.vh-entry .sow-contact-form{background:none!important;border:0!important;padding:0!important;box-shadow:none!important}
.vh-entry .sow-form-field,.vh-entry .evf-field{margin-bottom:16px}
.vh-entry form button,.vh-entry form input[type=submit],.vh-entry .sow-submit{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 30px;border:0!important;border-radius:999px!important;background:var(--red)!important;color:#fff!important;font:inherit!important;font-size:12px!important;font-weight:600!important;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;box-shadow:none!important;transition:background-color .25s var(--ease),transform .2s}
.vh-entry form button:hover,.vh-entry form input[type=submit]:hover,.vh-entry .sow-submit:hover{background:var(--red-deep)!important}

/* post lists: blog, archives, search */
.vh-list{display:grid;gap:14px;max-width:820px}
.vh-list-item{display:block;padding:22px 24px;border-radius:20px;background:var(--paper);transition:transform .35s var(--ease)}
.vh-list-item:hover{transform:translateY(-2px)}
.vh-list-item h2{font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.15;margin-bottom:6px}
.vh-list-item p{color:var(--muted);font-size:15px}
.vh-store .navigation.pagination{margin-top:28px}
.vh-store .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.vh-store .nav-links .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line)}
.vh-store .nav-links .current{background:var(--red);color:#fff;box-shadow:none}

/* 404 / nothing found */
.vh-empty{min-height:50vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px}
.vh-empty p:not(.eyebrow){color:var(--muted);max-width:32em}

/* information pages: delivery & payment, contacts */
.vh-entry:has(.vh-info){max-width:1120px}
.vh-info .vh-lead{font-family:var(--serif);font-size:clamp(21px,2.2vw,28px);line-height:1.4;max-width:34em;color:var(--ink);margin:0 0 .6em}
.vh-info h2{position:relative;padding-top:18px}
.vh-info h2::before{content:"";position:absolute;left:0;top:0;width:46px;height:1px;background:var(--gold)}
.vh-info .vh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.vh-info .vh-card{position:relative;background:var(--paper);border-radius:22px;padding:28px 26px;box-shadow:inset 0 0 0 1px var(--line)}
.vh-info .vh-card h3{font-family:var(--serif)!important;font-weight:400!important;font-size:24px!important;line-height:1.2!important;margin:0 0 10px!important}
.vh-info .vh-card p{margin:0;color:var(--muted);font-size:16px;line-height:1.65}
.vh-info .vh-num{display:block;font-family:var(--serif);font-size:15px;letter-spacing:.2em;color:var(--gold-deep,#9A7424);margin-bottom:14px}
.vh-info .vh-wide{max-width:none}
.vh-info .vh-btn{display:inline-flex;align-items:center;justify-content:center;height:50px;padding:0 28px;border-radius:999px;background:var(--red);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transition:background-color .25s var(--ease),transform .2s var(--ease)}
.vh-info .vh-btn:hover{background:var(--ink)}
.vh-info .vh-btn-ghost{background:transparent;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--ink)}
.vh-info .vh-btn-ghost:hover{background:var(--ink);color:var(--bg)!important}
.vh-info .vh-cta{margin-top:56px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:32px 34px;border-radius:26px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--gold)}
.vh-info .vh-cta h3{font-family:var(--serif)!important;font-weight:400!important;font-size:clamp(24px,2.4vw,32px)!important;margin:0 0 6px!important}
.vh-info .vh-cta p{margin:0;color:var(--muted)}
.vh-info .vh-cta-links{display:flex;flex-wrap:wrap;gap:12px}
.vh-info .vh-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:start;margin-top:30px}
.vh-info .vh-contact-list{display:flex;flex-direction:column;gap:14px}
.vh-info .vh-tile{display:flex;flex-direction:column;gap:6px;padding:20px 24px;border-radius:20px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);text-decoration:none!important;color:var(--ink)!important;transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.vh-info a.vh-tile:hover{box-shadow:inset 0 0 0 1px var(--gold);transform:translateY(-2px)}
.vh-info .vh-tile span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.vh-info .vh-tile strong{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.2;overflow-wrap:anywhere}
.vh-info .vh-tile em{font-style:normal;font-size:14px;color:var(--muted)}
.vh-info .vh-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.vh-info .vh-chips a{display:inline-flex;align-items:center;height:38px;padding:0 18px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink)!important;text-decoration:none!important;font-size:14px;transition:background-color .25s,color .25s}
.vh-info .vh-chips a:hover{background:var(--ink);color:var(--bg)!important}
.vh-info .vh-map{display:flex;flex-direction:column;gap:14px;align-items:flex-start;position:sticky;top:110px}
.vh-info .vh-map iframe{width:100%;aspect-ratio:4/3;min-height:340px;border:0;border-radius:24px;box-shadow:0 0 0 1px var(--line),0 24px 50px -30px rgba(0,0,0,.35);filter:saturate(.85)}
@media (max-width:900px){.vh-info .vh-contact{grid-template-columns:1fr}.vh-info .vh-map{position:static;width:100%}.vh-info .vh-cta{padding:26px 22px}}
