/* vh-theme.css — brand palette sampled from assets/img/logo.png */
:root{
  --vh-red:#c0303c;
  --vh-red-dark:#a82730;
  --vh-orange:#f09030;
  --vh-orange-deep:#e0562f;
  --vh-blue:#0078a8;
  --vh-teal:#00a8e4;
  --vh-yellow:#fcb43c;
  --vh-navy:#0B1528;
  /* text-safe gradient: both stops clear 4.5:1 against white */
  --vh-grad:linear-gradient(100deg,var(--vh-red) 0%,var(--vh-orange-deep) 100%);
  --vh-grad-hover:linear-gradient(100deg,var(--vh-red-dark) 0%,#c9481f 100%);
  /* decorative only, never behind text */
  --vh-grad-wide:linear-gradient(100deg,var(--vh-red) 0%,var(--vh-orange) 100%);
}

/* --- frame utilities: the compiled CSS remaps these to blue, brand them back --- */
.bg-\[\#D4541A\],
.bg-\[\#FF4D00\]{background-color:var(--vh-red)!important;background-image:var(--vh-grad)!important;}
.bg-\[\#B8451A\],
.bg-\[\#c24813\]{background-color:var(--vh-red-dark)!important;background-image:var(--vh-grad-hover)!important;}
.hover\:bg-\[\#B8451A\]:hover,
.hover\:bg-\[\#c24813\]:hover{background-color:var(--vh-red-dark)!important;background-image:var(--vh-grad-hover)!important;}
.bg-\[\#D4541A\]\/5{background-color:rgba(192,48,60,.05)!important;background-image:none!important;}
.bg-\[\#D4541A\]\/10{background-color:rgba(192,48,60,.1)!important;background-image:none!important;}
.bg-\[\#D4541A\]\/20{background-color:rgba(192,48,60,.2)!important;background-image:none!important;}

.text-\[\#D4541A\],
.text-\[\#FF4D00\]{color:var(--vh-red)!important;}
.hover\:text-\[\#D4541A\]:hover,
.hover\:text-\[\#FF4D00\]:hover{color:var(--vh-red)!important;}
.border-\[\#FF4D00\]{border-color:var(--vh-red)!important;}
.border-\[\#FF4D00\]\/35{border-color:rgba(192,48,60,.35)!important;}
.border-\[\#FF4D00\]\/40{border-color:rgba(192,48,60,.4)!important;}
.focus-visible\:ring-\[\#FF4D00\]:focus-visible{--tw-ring-color:var(--vh-red)!important;}
.text-\[\#FFB800\]{color:var(--vh-yellow)!important;}
.shadow-\[\#FF4D00\]{--tw-shadow-color:var(--vh-red)!important;}

/* script headline words + section-title spans ride the logo blue wave */
.font-caveat.text-\[\#D4541A\],
.font-caveat.text-\[\#FF4D00\]{color:var(--vh-blue)!important;}

/* --- vh- sections --- */
.vh-btn-solid{background:var(--vh-grad);}
.vh-btn-solid:hover{background:var(--vh-grad-hover);opacity:1;}
.vh-cta .vh-btn-solid{background:var(--vh-grad);}
.vh-about2-btn{background:var(--vh-grad);}
.vh-about2-btn:hover{background:var(--vh-grad-hover);}
.vh-about2-eyebrow{color:var(--vh-blue);}
.vh-about2-num{color:var(--vh-blue);}
.vh-about2-badge-l{color:var(--vh-red);}
.vh-about2-ico{color:var(--vh-blue);}
.vh-about2-link{color:var(--vh-red);}

/* --- Char Dham 2x2 grid --- */
.vh-dh-dhams{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px;}
.vh-dham{position:relative;display:block;min-width:0;overflow:hidden;border-radius:18px;aspect-ratio:4/3;
  background:#16233c;text-decoration:none;transform:translateZ(0);
  transition:transform .25s ease,box-shadow .25s ease;}
.vh-dham img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease;}
.vh-dham::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(6,12,24,.86) 0%,rgba(6,12,24,.45) 34%,rgba(6,12,24,0) 66%);}
.vh-dham-txt{position:absolute;left:12px;right:12px;bottom:10px;z-index:2;}
.vh-dham-n{display:block;color:#fff;font-weight:700;font-size:15px;line-height:1.2;letter-spacing:-.01em;
  text-shadow:0 1px 6px rgba(0,0,0,.5);}
.vh-dham-s{display:block;color:rgba(255,255,255,.82);font-weight:600;font-size:10.5px;line-height:1.3;margin-top:2px;
  text-shadow:0 1px 5px rgba(0,0,0,.55);}
.vh-dham:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.4);}
.vh-dham:hover img{transform:scale(1.06);}
@media (prefers-reduced-motion:reduce){.vh-dham,.vh-dham img{transition:none;}}

@media (min-width:1024px){
  .vh-dh-dhams{gap:14px;padding:28px;align-content:center;height:100%;}
  .vh-dham-n{font-size:18px;}
  .vh-dham-s{font-size:11.5px;}
}

/* ================= HEADER: single nav-sizing source (every page links this file) ================= */
:root{--navbar-height:88px;}
nav[class*="z-[9999]"]{height:88px!important;}
img.vh-logo{width:auto!important;max-width:210px!important;height:auto!important;max-height:72px!important;object-fit:contain;}
main [class~="pt-24"],main [class~="pt-[88px]"]{padding-top:96px;}

/* ================= MOBILE (<=767px) SIZING PASS ================= */
@media (max-width:767px){
  :root{--navbar-height:64px;}
  nav[class*="z-[9999]"]{height:64px!important;padding-left:20px!important;padding-right:20px!important;}
  img.vh-logo{max-width:150px!important;max-height:44px!important;}
  nav[class*="z-[9999]"] button{min-width:40px!important;min-height:40px!important;padding:8px!important;}
  nav[class*="z-[9999]"] button svg{width:24px!important;height:24px!important;}
  main [class~="pt-24"],main [class~="pt-[88px]"]{padding-top:76px;}

  /* type scale */
  h1,.vh-h1{font-size:26px!important;line-height:1.2!important;}
  .vh-h2,.vh-pk-head h2,.vh-enq h2,.vh-ct h2,.vh-ab h2{font-size:24px!important;line-height:1.22!important;}
  .vh-eyebrow,.vh-about2-eyebrow,.vh-card-tag{font-size:11px!important;}
  .vh-lead,.vh-ab-p,.vh-prose p,.vh-about2-p{font-size:15px!important;line-height:1.55!important;}

  /* buttons + inputs: 44px tall, 15px */
  .vh-btn,.vh-btn-solid,.vh-btn-ghost,.vh-about2-btn,.vh-cb-btn,.vh-card-btn{min-height:44px!important;font-size:15px!important;}
  .vh-in,.vh-f input,.vh-f select{min-height:44px!important;font-size:14px!important;padding:10px 12px!important;}
  .vh-f textarea,textarea.vh-in{min-height:88px!important;font-size:14px!important;}
  .vh-enq-btns button{min-height:44px!important;font-size:15px!important;}
}

/* R3: thinner display type */
.font-black,.font-extrabold{font-weight:700!important;}
h1.font-black{letter-spacing:-.01em;}

/* R7: hero photo bg, low opacity, white text, no eyebrow */
.vh-hero-bg{position:relative;isolation:isolate;background-color:#0B1528}.vh-hero-bg::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--hero-img) center/cover no-repeat;opacity:.16}.vh-hero-bg,.vh-hero-bg h1,.vh-hero-bg p,.vh-hero-bg a,.vh-hero-bg span,.vh-hero-bg .vh-sub{color:#fff!important}.vh-hero-bg .vh-rule{display:none}
