/* VR Interior v22 — cinematic video-first landing experience */
.video-home{background:#f4f0e8}
.video-home .topbar{
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:linear-gradient(180deg,rgba(5,5,5,.92),rgba(5,5,5,.55) 65%,transparent);
  border-bottom:1px solid rgba(214,178,95,.16); color:#fff;
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.video-home .topbar .brandCopy strong,.video-home .topbar .nav a{color:#fff}
.video-home .topbar .brandCopy small{color:#d9b75e}
.video-home .topbar .nav a:hover{color:#efc967}
.video-home .topbar .menuBtn{color:#fff;border-color:rgba(255,255,255,.25)}
.video-home .dw-banner{display:none!important}

.videoHero{position:relative;width:100%;height:100svh;min-height:650px;background:#080808;overflow:hidden;isolation:isolate}
.videoHeroMedia{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#090909}
.videoHeroOverlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.02) 45%,rgba(0,0,0,.55) 100%);pointer-events:none}
.videoHeroMark{position:absolute;left:clamp(22px,5vw,78px);bottom:clamp(70px,10vh,120px);z-index:2;display:flex;flex-direction:column;gap:3px;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.55)}
.videoHeroMark span{font-family:"Cormorant Garamond",serif;font-size:clamp(26px,3vw,48px);font-weight:600;letter-spacing:.08em}
.videoHeroMark small{font:700 11px/1.3 "Manrope",sans-serif;letter-spacing:.22em;color:#e1bd65}
.videoHeroControls{position:absolute;right:clamp(18px,3vw,52px);bottom:clamp(62px,8vh,104px);z-index:3;display:flex;gap:10px}
.videoHeroControls button{appearance:none;border:1px solid rgba(255,255,255,.36);background:rgba(8,8,8,.58);color:#fff;border-radius:999px;padding:12px 18px;font:700 12px "Manrope",sans-serif;letter-spacing:.03em;cursor:pointer;backdrop-filter:blur(10px);transition:.25s ease}
.videoHeroControls button:hover{background:#d8b35c;border-color:#d8b35c;color:#111;transform:translateY(-1px)}
.videoProgress{position:absolute;z-index:4;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.12)}
.videoProgress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#a57b27,#f0cd76);box-shadow:0 0 20px rgba(236,193,90,.5)}

.leadGateway{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(38px,6vw,90px);align-items:center;padding:clamp(70px,8vw,120px) max(5vw,28px);background:radial-gradient(circle at 15% 0%,rgba(215,177,92,.14),transparent 34%),#f5f1e8;color:#171717;border-bottom:1px solid rgba(60,44,15,.1)}
.leadGatewayCopy{max-width:720px}
.leadGatewayCopy h1{font-family:"Cormorant Garamond",serif;font-size:clamp(44px,5vw,76px);line-height:.96;margin:13px 0 20px;letter-spacing:-.025em}
.leadGatewayCopy h1 span{color:#8e691d;font-style:italic;font-weight:600}
.leadGatewayCopy>p{max-width:660px;color:#5a554b;font:500 clamp(15px,1.25vw,18px)/1.75 "Manrope",sans-serif;margin:0 0 34px}
.leadProofGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(48,40,24,.14);border:1px solid rgba(48,40,24,.12);margin-top:28px}
.leadProofGrid div{background:#f8f5ee;padding:20px;display:grid;grid-template-columns:34px 1fr;column-gap:9px;align-items:start}
.leadProofGrid b{grid-row:1/3;color:#a87b22;font:800 12px "Manrope",sans-serif;padding-top:2px}
.leadProofGrid strong{font:800 13px "Manrope",sans-serif;color:#1c1b18}
.leadProofGrid span{font:500 11px/1.45 "Manrope",sans-serif;color:#756f65;margin-top:4px}
.leadOffer{margin-top:22px;border-left:3px solid #c89c3b;padding:13px 17px;display:flex;flex-direction:column;gap:3px;background:rgba(211,171,82,.09)}
.leadOffer small{font:800 9px "Manrope",sans-serif;letter-spacing:.18em;color:#8b661b}
.leadOffer strong{font:800 18px "Manrope",sans-serif}
.leadOffer span{font:500 10px/1.5 "Manrope",sans-serif;color:#736c60}

.leadGatewayCard{background:#11100e;color:#fff;border:1px solid rgba(222,184,93,.45);box-shadow:0 30px 70px rgba(32,24,8,.22);padding:clamp(26px,3vw,42px);position:relative;overflow:hidden}
.leadGatewayCard:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(211,171,82,.09);filter:blur(6px);right:-90px;top:-90px}
.leadCardTop{position:relative;display:flex;flex-direction:column;gap:7px;margin-bottom:25px}
.leadCardTop span{font:800 10px "Manrope",sans-serif;letter-spacing:.16em;color:#d9b65e}
.leadCardTop b{font:600 clamp(28px,2.7vw,42px)/1.05 "Cormorant Garamond",serif}
.leadCardTop small{font:500 11px "Manrope",sans-serif;color:#9c978e}
#quickLeadForm{position:relative;display:flex;flex-direction:column;gap:14px}
.quickRow{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#quickLeadForm label{display:flex;flex-direction:column;gap:7px;font:700 11px "Manrope",sans-serif;color:#d2cdc2}
#quickLeadForm input,#quickLeadForm select{width:100%;box-sizing:border-box;border:1px solid #3b3935;background:#1a1917;color:#fff;border-radius:0;padding:14px 14px;outline:none;font:600 13px "Manrope",sans-serif;transition:.2s ease}
#quickLeadForm input:focus,#quickLeadForm select:focus{border-color:#d2a64d;box-shadow:0 0 0 2px rgba(210,166,77,.12)}
.quickLeadSubmit{margin-top:4px;border:0;background:linear-gradient(135deg,#e2bd64,#bd8f30);color:#111;padding:16px 18px;font:800 13px "Manrope",sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:.25s ease}
.quickLeadSubmit:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(209,169,78,.18)}
.quickLeadSubmit:disabled{opacity:.65;cursor:wait;transform:none}
.quickPrivacy{margin:0;color:#827d74;font:500 9px/1.55 "Manrope",sans-serif}
#quickLeadStatus{margin:0;min-height:18px;font-size:11px}

.video-home .strip{margin-top:0}

@media (max-width:900px){
  .leadGateway{grid-template-columns:1fr;gap:42px;padding:72px 24px}
  .leadGatewayCopy{max-width:none}
  .video-home .topbar{background:rgba(9,9,9,.88)}
}
@media (max-width:680px){
  .videoHero{height:100svh;min-height:620px}
  .videoHeroMedia{object-fit:cover}
  .videoHeroMark{left:20px;bottom:96px}
  .videoHeroMark span{font-size:28px}
  .videoHeroMark small{font-size:9px}
  .videoHeroControls{right:16px;bottom:34px;gap:7px}
  .videoHeroControls button{padding:10px 13px;font-size:10px}
  .leadGateway{padding:60px 18px}
  .leadGatewayCopy h1{font-size:48px}
  .leadProofGrid{grid-template-columns:1fr}
  .leadGatewayCard{padding:24px 18px}
  .quickRow{grid-template-columns:1fr}
}

/* V23 hardening: video must stay visible above any inherited hero styling */
.video-home .videoHero{display:block!important;visibility:visible!important;opacity:1!important;z-index:1!important}
.video-home .videoHeroMedia{display:block!important;visibility:visible!important;opacity:1!important;z-index:0!important;pointer-events:none}
.video-home .videoHeroOverlay{z-index:1!important}
.video-home .videoHeroMark,.video-home .videoHeroControls,.video-home .videoProgress{z-index:3!important}

/* V27 responsive video fit — keep the full cinematic frame visible on iPad / phones */
.video-home .videoHero{
  height:100svh;
  min-height:0;
  background:#080808;
}
.video-home .videoHero::before{
  content:"";
  position:absolute;
  inset:-4%;
  z-index:0;
  background:
    linear-gradient(rgba(5,5,5,.34),rgba(5,5,5,.34)),
    url('assets/video/vr-hero-poster-v23.jpg') center/cover no-repeat;
  filter:blur(24px) saturate(.9) brightness(.65);
  transform:scale(1.08);
  opacity:.95;
  pointer-events:none;
}
.video-home .videoHeroMedia{
  z-index:1!important;
  background:transparent!important;
}
.video-home .videoHeroOverlay{z-index:2!important}
.video-home .videoHeroMark,.video-home .videoHeroControls{z-index:4!important}
.video-home .videoProgress{z-index:5!important}

/* Touch devices (iPad/iPhone/Android tablets): never crop the supplied video */
@media (pointer:coarse){
  .video-home .videoHeroMedia{
    object-fit:contain!important;
    object-position:center center!important;
  }
}

/* Tablet widths get the same full-frame treatment even with a mouse/trackpad */
@media (max-width:1100px){
  .video-home .videoHeroMedia{
    object-fit:contain!important;
    object-position:center center!important;
  }
  .video-home .videoHeroMark{left:22px;bottom:88px}
  .video-home .videoHeroControls{right:18px;bottom:max(24px,env(safe-area-inset-bottom))}
}

/* Phones: true viewport height + safe-area aware controls */
@media (max-width:680px){
  .video-home .videoHero{
    height:100svh!important;
    min-height:0!important;
  }
  .video-home .videoHeroMedia{
    object-fit:contain!important;
    object-position:center center!important;
  }
  .video-home .videoHeroMark{
    left:18px!important;
    right:18px;
    bottom:82px!important;
  }
  .video-home .videoHeroControls{
    right:14px!important;
    bottom:max(18px,env(safe-area-inset-bottom))!important;
  }
}

/* V28 — Quick consultation form visibility fix
   Keep light fields intentionally, but force entered values, placeholders,
   native selects and browser autofill to stay readable on every device. */
#quickLeadForm input,
#quickLeadForm select {
  background:#fffdf8 !important;
  color:#171713 !important;
  -webkit-text-fill-color:#171713 !important;
  caret-color:#171713 !important;
  border-color:#d8cdb9 !important;
  color-scheme:light !important;
}
#quickLeadForm input::placeholder {
  color:#777269 !important;
  -webkit-text-fill-color:#777269 !important;
  opacity:1 !important;
}
#quickLeadForm select option {
  background:#fffdf8 !important;
  color:#171713 !important;
}
#quickLeadForm input:focus,
#quickLeadForm select:focus {
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border-color:#d2a64d !important;
  box-shadow:0 0 0 3px rgba(210,166,77,.16) !important;
}
#quickLeadForm input:-webkit-autofill,
#quickLeadForm input:-webkit-autofill:hover,
#quickLeadForm input:-webkit-autofill:focus,
#quickLeadForm input:-webkit-autofill:active {
  -webkit-text-fill-color:#171713 !important;
  caret-color:#171713 !important;
  -webkit-box-shadow:0 0 0 1000px #fffdf8 inset !important;
  box-shadow:0 0 0 1000px #fffdf8 inset !important;
  transition:background-color 99999s ease-out 0s;
}
@media (max-width: 900px) {
  #quickLeadForm input,
  #quickLeadForm select {
    font-size:16px !important; /* prevents iOS zoom and keeps values legible */
    min-height:50px;
  }
}
