/* =========================================================
   LimoVibes Policies - FINAL (Fioxen look, Gold/Black, White body)
   Left = premium gold brand | Right = hero image (Fioxen :after)
   ========================================================= */


/* =========================================================
   HERO (Breadcrumbs) – keep right image, make left premium gold
   ========================================================= */

.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs{
  position: relative !important;
  overflow: hidden !important;
  box-shadow: inset -20px 0 40px rgba(0,0,0,.20);
}

/* LEFT SIDE (gold) – premium gradient */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs{
  background:
    radial-gradient(circle at 22% 35%, #fff1c7 0%, rgba(255,241,199,0) 52%),
    linear-gradient(135deg, #f7d77a 0%, #e4bc4b 38%, #d4af37 68%, #b88717 100%) !important;
}

/* Subtle texture on left (premium) */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 25% 30%, rgba(255,255,255,.22), rgba(255,255,255,0) 55%),
    radial-gradient(circle at 70% 65%, rgba(0,0,0,.10), rgba(0,0,0,0) 60%);
  z-index: 1;
  pointer-events:none;
}

/* Put the text above everything */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .container{
  position: relative !important;
  z-index: 2 !important;
}

/* Title styling */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .page-title .title{
  color:#111 !important;
  font-weight: 900 !important;
  letter-spacing: -0.8px !important;
  text-shadow: 0 10px 30px rgba(0,0,0,.10);
}

/* Breadcrumb pill base */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .breadcrumbs-link{
  display: inline-flex !important;
  gap: 10px;
  align-items: center;
  padding: 14px 22px;
  border-radius: 999px;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 14px 35px rgba(0,0,0,.10);
  margin-top: 18px;
}
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .breadcrumbs-link li,
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .breadcrumbs-link li a{
  color: rgba(0,0,0,.78) !important;
  font-weight: 700;
}
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .breadcrumbs-link li a:hover{
  color: #000 !important;
  text-decoration: underline;
}


/* =========================================================
   RIGHT SIDE IMAGE (Fioxen :after) — FORCE DEFAULT IMAGE + SHOW FULL
   ========================================================= */

/* ✅ Keep :after behind text and visible */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs:after{
  z-index: 0 !important;
  background-image: url("https://limovibes.com/wp-content/uploads/2025/12/lv-breadcrumb-default.jpg") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;    /* show full image */
  background-color: #0b0b0b !important;   /* fill empty space */
  box-shadow: inset 0 0 0 1000px rgba(0,0,0,.15);
}


/* =========================================================
   HERO HEIGHT (Fioxen-like, no extra black space)
   ========================================================= */

.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs{
  padding: 0 !important;
  min-height: unset !important;
  height: 280px !important;   /* ✅ final height */
}

/* Center hero content + avoid header overlap */
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .container{
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
}
.page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs .page-title{
  padding-top: 55px !important; /* adjust 45–70 if needed */
  margin: 0 !important;
}


/* =========================================================
   HERO TITLE FIX — ONE LINE, NO DOTS
   ========================================================= */

.page-template-page-policy 
.hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs 
.page-title .title{
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: unset !important;
  max-width: 100% !important;
  font-size: clamp(32px, 4vw, 46px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px;
  font-weight: 800;
}

/* Mobile allow wrap */
@media (max-width: 768px){
  .page-template-page-policy 
  .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs 
  .page-title .title{
    white-space: normal !important;
    font-size: 30px !important;
  }
}


/* =========================================================
   BREADCRUMB PILL FINAL — one line + single separator " | "
   ========================================================= */

.page-template-page-policy .lv-policy-breadcrumbs .breadcrumbs-link{
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}

/* kill theme separators */
.page-template-page-policy .lv-policy-breadcrumbs .breadcrumbs-link li + li:before,
.page-template-page-policy .lv-policy-breadcrumbs .breadcrumbs-link li + li:after{
  content: none !important;
  display: none !important;
}

/* our single clean separator */
.page-template-page-policy .lv-policy-breadcrumbs .breadcrumbs-link li{
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}
.page-template-page-policy .lv-policy-breadcrumbs .breadcrumbs-link li:not(:last-child)::after{
  content: " | " !important;
  display: inline-block !important;
  margin: 0 10px !important;
  opacity: .7 !important;
}


/* =========================================================
   BODY SECTION (WHITE like Fioxen)
   ========================================================= */

.page-template-page-policy .lv-policy-section{
  padding-top: 60px !important;
  padding-bottom: 90px !important;
  background: #ffffff !important;
}
.page-template-page-policy .lv-policy-section .container{
  max-width: 1140px !important;
}


/* =========================================================
   POLICY CARD (PREMIUM GOLD + WHITE BODY)
   ========================================================= */

.lv-policy-card{
  background: #ffffff !important;
  border: 1px solid rgba(212,175,55,.28) !important;
  border-radius: 18px !important;
  padding: 34px !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.10) !important;
}

/* top line (chip + effective date) */
.lv-policy-top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(212,175,55,.18);
}

.lv-policy-chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(212,175,55,.14);
  color: #111;
  border: 1px solid rgba(212,175,55,.35);
}

.lv-policy-effective{
  font-size: 13px;
  color: rgba(0,0,0,.55);
  font-weight: 700;
}

/* headings */
.lv-policy-card h2,
.lv-policy-card h3{
  color: #111 !important;
  font-weight: 900 !important;
  margin-top: 26px !important;
}

/* Gold bullet */
.lv-policy-card h3::before{
  content: "•";
  color: #D4AF37;
  margin-right: 10px;
}

/* text */
.lv-policy-card p,
.lv-policy-card li{
  color: rgba(0,0,0,.78) !important;
  line-height: 1.75 !important;
}
.lv-policy-card ul{
  padding-left: 20px !important;
}

/* links */
.lv-policy-card a{
  color: #b38728 !important;
  text-decoration: underline !important;
  font-weight: 700 !important;
}

/* bottom note */
.lv-policy-bottom{
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(212,175,55,.18);
  color: rgba(0,0,0,.70);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 768px){
  .page-template-page-policy .hero-area .breadcrumbs-wrapper.lv-policy-breadcrumbs{
    height: 260px !important;
  }
  .lv-policy-card{
    padding: 22px !important;
  }
  .lv-policy-top{
    flex-direction: column;
    align-items: flex-start;
  }
}

/* =========================================================
   FIX: DOUBLE BORDER (NESTED .lv-policy-card inside .lv-policy-card)
   ========================================================= */

/* If a lv-policy-card is inside another lv-policy-card, make inner one plain */
.page-template-page-policy .lv-policy-card .lv-policy-card{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* Make sure only the OUTER card keeps spacing */
.page-template-page-policy .lv-policy-card{
  padding: 1px !important;
}
/* =========================================================
   PRIVACY POLICY – PRODUCTION UI (ToC + Callouts + CCPA + Smooth Scroll)
   Paste at END (latest wins)
   ========================================================= */

/* Smooth scroll polish */
html{ scroll-behavior: smooth; }

/* When jumping to anchors, avoid sticky header overlap */
.lv-policy-doc h3[id], .lv-policy-doc h4[id]{
  scroll-margin-top: 120px; /* adjust if your header is taller */
}

/* Wider content option (your request: more width) */
.page-template-page-policy .lv-policy-section .container{
  max-width: 1240px !important;
}
.page-template-page-policy .lv-policy-section .col-lg-10{
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

/* Ensure no double border if nested wrapper appears */
.page-template-page-policy .lv-policy-card .lv-policy-card{
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Doc layout */
.lv-policy-doc{
  position: relative;
}

/* Content container spacing */
.lv-policy-content{
  margin-top: 18px;
}

/* ToC wrapper */
.lv-policy-toc-wrap{
  margin: 18px 0 22px;
}

/* ToC card */
.lv-policy-toc{
  border: 1px solid rgba(212,175,55,.25);
  border-radius: 16px;
  padding: 18px 18px 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,1));
  box-shadow: 0 14px 34px rgba(0,0,0,.07);
}

.lv-policy-toc__title{
  font-weight: 900;
  letter-spacing: -0.3px;
  color: #111;
  margin-bottom: 10px;
}

.lv-policy-toc__list{
  margin: 0;
  padding-left: 18px;
  columns: 2;                 /* desktop: 2 columns */
  column-gap: 26px;
}

.lv-policy-toc__list li{
  break-inside: avoid;
  margin: 6px 0;
  font-weight: 700;
}

.lv-policy-toc__list a{
  color: rgba(0,0,0,.78);
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(212,175,55,.55);
  padding-bottom: 1px;
  transition: all .18s ease;
}

.lv-policy-toc__list a:hover{
  color: #000;
  border-bottom-style: solid;
}

.lv-policy-toc__list a.is-active{
  color: #000;
  border-bottom: 2px solid rgba(212,175,55,1);
}

.lv-policy-toc__footer{
  margin-top: 10px;
  display: flex;
  justify-content: flex-end;
}

.lv-policy-backtop{
  font-weight: 900;
  color: #b38728 !important;
  text-decoration: none !important;
}

/* Callouts */
.lv-callout{
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 12px;
  align-items: start;
  padding: 14px 16px;
  border-radius: 16px;
  margin: 18px 0;
  border: 1px solid rgba(212,175,55,.25);
  background: rgba(212,175,55,.10);
  box-shadow: 0 12px 28px rgba(0,0,0,.06);
}

.lv-callout__icon{
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  font-weight: 900;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(0,0,0,.08);
}

.lv-callout__body p{
  margin: 0;
}

/* Info variant */
.lv-callout--info{
  background: rgba(255,255,255,.75);
  border-color: rgba(212,175,55,.22);
}

/* Warning / legal notice variant */
.lv-callout--warn{
  background: rgba(0,0,0,.04);
  border-color: rgba(0,0,0,.12);
}
.lv-callout--warn .lv-callout__icon{
  background: rgba(212,175,55,.18);
}

/* California callout – special premium */
.lv-callout--ccpa{
  background: linear-gradient(135deg, rgba(212,175,55,.18), rgba(255,255,255,.85));
  border-color: rgba(212,175,55,.35);
}
.lv-callout--ccpa .lv-callout__icon{
  background: rgba(0,0,0,.88);
  color: rgba(212,175,55,1);
  border-color: rgba(212,175,55,.35);
}

/* Lists */
.lv-policy-list{
  padding-left: 20px !important;
  margin-top: 10px;
}
.lv-policy-list li{
  margin: 6px 0;
}

/* Section headings polish */
.lv-policy-doc h3{
  position: relative;
  padding-top: 6px;
}
.lv-policy-doc h3::after{
  content:"";
  display:block;
  margin-top: 10px;
  height: 1px;
  background: rgba(212,175,55,.18);
}

/* Responsive ToC */
@media (max-width: 992px){
  .lv-policy-toc__list{
    columns: 1;
  }
}

/* =========================================================
   LV POLICIES — FINAL APPEND OVERRIDES (PASTE AT VERY END)
   Purpose:
   - Fix bullet chaos, spacing, numbering hierarchy
   - Remove "double border / outer frame" feel
   - Add premium TOC, callouts, table styling, smooth anchors
   ========================================================= */

/* Smooth anchor scroll */
html{ scroll-behavior:smooth; }
#lv-pp-1, #lv-pp-2, #lv-pp-3, #lv-pp-4, #lv-pp-5, #lv-pp-6, #lv-pp-7, #lv-pp-8, #lv-pp-9, #lv-pp-9b, #lv-pp-10, #lv-pp-11, #lv-pp-12, #lv-pp-13{
  scroll-margin-top: 120px;
}

/* =========================================================
   REMOVE OUTER "SECOND BORDER" FEEL + MAKE CONTENT WIDER
   (Your theme has col-lg-10 + justify-center causing the outer frame)
   ========================================================= */
.page-template-page-policy .lv-policy-section .row.justify-content-center{
  justify-content: flex-start !important;
}
.page-template-page-policy .lv-policy-section .col-lg-10{
  flex: 0 0 100% !important;
  max-width: 100% !important;
}
.page-template-page-policy .lv-policy-section .container{
  max-width: 1240px !important; /* wider */
}

/* If the theme adds any wrapper "panel" look, kill it safely */
.page-template-page-policy .lv-policy-section .contact-wrapper,
.page-template-page-policy .lv-policy-section .contact-wrapper .contact-form,
.page-template-page-policy .lv-policy-section .row > div > div:not(.lv-policy-card){
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* =========================================================
   POLICY CARD — keep only ONE border (clean)
   ========================================================= */
.lv-policy-card{
  border: 1px solid rgba(212,175,55,.22) !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.10) !important;
}

/* Remove any accidental nested border effect */
.lv-policy-card *{
  outline: none !important;
}

/* =========================================================
   HEADINGS — stop theme pseudo bullets from messing layout
   ========================================================= */
.lv-policy-card h3::before{ content: none !important; } /* your old gold dot on h3 */
.lv-policy-card h3{
  position: relative;
  padding-left: 18px;
}
.lv-policy-card h3:before{
  content:"";
  position:absolute;
  left:0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #D4AF37;
  box-shadow: 0 0 0 5px rgba(212,175,55,.12);
}

/* Sub headings (4.1 / 4.2 etc) */
.lv-policy-sub{
  margin-top: 18px !important;
  margin-bottom: 8px !important;
  font-weight: 900 !important;
  color:#111 !important;
}
.lv-policy-card h4.lv-policy-sub{
  font-size: 18px !important;
  line-height: 1.35 !important;
}

/* =========================================================
   BULLETS — clean premium bullets (fix spacing + indent)
   Use only .lv-bullets for all UL inside policy
   ========================================================= */
.lv-policy-card ul:not(.lv-policy-toc-list):not(.lv-bullets){
  margin: 0 !important;
  padding-left: 0 !important;
  list-style: none !important;
}

.lv-bullets{
  list-style: none !important;
  padding-left: 0 !important;
  margin: 10px 0 14px !important;
}
.lv-bullets li{
  position: relative;
  padding-left: 26px !important;
  margin: 10px 0 !important;
  line-height: 1.75 !important;
}
.lv-bullets li:before{
  content:"";
  position:absolute;
  left:0;
  top: 0.55em;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #D4AF37;
  box-shadow: 0 0 0 4px rgba(212,175,55,.15);
}

/* Fix the "tight list" look */
.lv-policy-card p{
  margin: 12px 0 !important;
}
.lv-policy-section-block{
  padding-top: 6px;
}

/* =========================================================
   TOC — luxury card look
   ========================================================= */
.lv-policy-toc{
  margin-top: 22px;
  padding: 18px 18px 8px;
  border-radius: 16px;
  border: 1px solid rgba(212,175,55,.20);
  background: linear-gradient(180deg, rgba(212,175,55,.08), rgba(255,255,255,1));
  box-shadow: 0 14px 35px rgba(0,0,0,.06);
}
.lv-policy-toc .lv-policy-h{
  margin: 0 0 10px !important;
  font-weight: 900 !important;
  color:#111 !important;
}
.lv-policy-toc-list{
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 16px;
}
.lv-policy-toc-list li{
  margin: 0 !important;
}
.lv-policy-toc-list a{
  display: inline-flex;
  width: 100%;
  padding: 10px 12px;
  border-radius: 12px;
  text-decoration: none !important;
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(0,0,0,.06);
  color: rgba(0,0,0,.85) !important;
  font-weight: 800 !important;
  transition: transform .18s ease, box-shadow .18s ease;
}
.lv-policy-toc-list a:hover{
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
}

/* Mobile TOC */
@media (max-width: 768px){
  .lv-policy-toc-list{
    grid-template-columns: 1fr;
  }
}

/* Divider */
.lv-policy-divider{
  margin: 22px 0 !important;
  border: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(212,175,55,0), rgba(212,175,55,.35), rgba(212,175,55,0)) !important;
}

/* =========================================================
   CALLOUTS — aligned icon + premium background
   ========================================================= */
.lv-callout{
  display: flex !important;
  gap: 14px !important;
  align-items: flex-start !important;
  padding: 16px 16px !important;
  border-radius: 16px !important;
  margin: 16px 0 !important;
  border: 1px solid rgba(0,0,0,.06) !important;
}
.lv-callout-icon{
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 38px !important;
  margin-top: 2px !important;
  font-size: 18px !important;
}
.lv-callout-body p{
  margin: 6px 0 !important;
}
.lv-callout-info{
  background: rgba(212,175,55,.08) !important;
  border-color: rgba(212,175,55,.22) !important;
}
.lv-callout-info .lv-callout-icon{
  background: rgba(212,175,55,.16) !important;
  color: #111 !important;
  border: 1px solid rgba(212,175,55,.25) !important;
}
.lv-callout-warn{
  background: rgba(0,0,0,.03) !important;
  border-color: rgba(0,0,0,.10) !important;
}
.lv-callout-warn .lv-callout-icon{
  background: rgba(0,0,0,.08) !important;
  color: #111 !important;
  border: 1px solid rgba(0,0,0,.12) !important;
}
.lv-callout-success{
  background: rgba(212,175,55,.07) !important;
  border-color: rgba(212,175,55,.20) !important;
}
.lv-callout-success .lv-callout-icon{
  background: rgba(212,175,55,.15) !important;
  color: #111 !important;
  border: 1px solid rgba(212,175,55,.25) !important;
}

/* CCPA Special callout */
.lv-callout-ccpa{
  background:
    radial-gradient(circle at 20% 20%, rgba(212,175,55,.18), rgba(212,175,55,0) 55%),
    rgba(0,0,0,.03) !important;
  border: 1px solid rgba(212,175,55,.25) !important;
}
.lv-callout-ccpa .lv-callout-icon{
  background: linear-gradient(135deg, #f7d77a, #d4af37, #b88717) !important;
  color: #111 !important;
  border: 1px solid rgba(0,0,0,.10) !important;
}

/* =========================================================
   TABLE — premium responsive table
   ========================================================= */
.lv-policy-tablewrap{
  overflow: auto;
  border-radius: 16px;
  border: 1px solid rgba(212,175,55,.22);
  box-shadow: 0 12px 30px rgba(0,0,0,.06);
  margin: 14px 0 18px;
}
.lv-policy-table{
  width: 100%;
  border-collapse: collapse;
  min-width: 720px;
  background: #fff;
}
.lv-policy-table thead th{
  text-align: left;
  padding: 14px 14px;
  font-weight: 900;
  color: #111;
  background: rgba(212,175,55,.10);
  border-bottom: 1px solid rgba(212,175,55,.18);
}
.lv-policy-table tbody td{
  padding: 14px 14px;
  border-bottom: 1px solid rgba(0,0,0,.06);
  color: rgba(0,0,0,.80);
}
.lv-policy-table tbody tr:hover td{
  background: rgba(212,175,55,.06);
}

/* =========================================================
   CONTACT BOX — premium card
   ========================================================= */
.lv-policy-contactbox{
  margin-top: 12px;
  padding: 16px 16px;
  border-radius: 16px;
  border: 1px solid rgba(212,175,55,.20);
  background: rgba(255,255,255,.98);
  box-shadow: 0 14px 35px rgba(0,0,0,.06);
}
.lv-policy-contactbox p{
  margin: 6px 0 !important;
}

/* =========================================================
   FINAL tiny polish
   ========================================================= */
.lv-policy-card a{
  text-decoration: none !important;
  border-bottom: 1px dashed rgba(179,135,40,.55) !important;
}
.lv-policy-card a:hover{
  border-bottom-style: solid !important;
}

/* =========================================================
   Policies Index ( /policies/ landing ) — FINAL (NO GRID / NO 1fr)
   Paste at the END
   ========================================================= */

.page-template-page-policy .lv-policy-index{ width:100%; }

.page-template-page-policy .lv-policy-index-title{
  margin: 0 0 8px 0;
  font-weight: 900;
  letter-spacing: -0.5px;
  font-size: 26px;
}
.page-template-page-policy .lv-policy-index-sub{
  margin: 0;
  color: rgba(0,0,0,.78);
  line-height: 1.65;
}

/* FLEX GRID (strict editors safe) */
.page-template-page-policy .lv-policy-index-grid{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 18px !important;
  margin-top: 22px !important;
}

/* 2 columns desktop */
.page-template-page-policy .lv-policy-index-grid .lv-policy-index-card{
  width: calc(50% - 9px) !important;
}

/* card */
.page-template-page-policy .lv-policy-index-card{
  display: flex !important;
  gap: 16px !important;
  align-items: flex-start !important;
  padding: 20px !important;
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid rgba(212,175,55,.22) !important;
  box-shadow: 0 14px 40px rgba(0,0,0,.08) !important;
  text-decoration: none !important;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.page-template-page-policy .lv-policy-index-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 55px rgba(0,0,0,.12);
  border-color: rgba(212,175,55,.38);
}

/* icon (no grid used) */
.page-template-page-policy .lv-policy-index-icon{
  width: 44px !important;
  height: 44px !important;
  border-radius: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(212,175,55,.14) !important;
  border: 1px solid rgba(212,175,55,.30) !important;
  color: #111 !important;
  flex: 0 0 44px !important;
}
.page-template-page-policy .lv-policy-index-icon i{ font-size: 18px !important; }

/* text */
.page-template-page-policy .lv-policy-index-h{
  margin: 0 0 6px 0 !important;
  font-weight: 900 !important;
  color: #111 !important;
}
.page-template-page-policy .lv-policy-index-excerpt{
  margin: 0 0 10px 0 !important;
  color: rgba(0,0,0,.74) !important;
  line-height: 1.65 !important;
}
.page-template-page-policy .lv-policy-index-cta{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 800 !important;
  color: #b38728 !important;
  text-decoration: underline !important;
}

.page-template-page-policy .lv-policy-index-foot{ margin-top: 22px !important; }

/* Mobile: 1 column */
@media (max-width: 900px){
  .page-template-page-policy .lv-policy-index-grid .lv-policy-index-card{
    width: 100% !important;
  }
}
/* =========================================================
   Contact Form (UI only) — Fioxen-style / Premium Gold
   ========================================================= */

.page-template-page-policy .lv-contact-form{ margin-top: 10px; }

.page-template-page-policy .lv-form-grid{
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.page-template-page-policy .lv-field{
  width: calc(50% - 8px);
}

.page-template-page-policy .lv-field-full{
  width: 100%;
}

@media (max-width: 900px){
  .page-template-page-policy .lv-field{ width: 100%; }
}

.page-template-page-policy .lv-field label{
  display: block;
  margin: 0 0 8px 0;
  font-weight: 900;
  color: #111;
  font-size: 14px;
}

.page-template-page-policy .lv-field input,
.page-template-page-policy .lv-field select,
.page-template-page-policy .lv-field textarea{
  width: 100%;
  border-radius: 14px;
  border: 1px solid rgba(212,175,55,.28);
  background: #fff;
  padding: 12px 14px;
  font-size: 15px;
  color: #111;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  outline: none;
}

.page-template-page-policy .lv-field textarea{ resize: vertical; }

.page-template-page-policy .lv-field input:focus,
.page-template-page-policy .lv-field select:focus,
.page-template-page-policy .lv-field textarea:focus{
  border-color: rgba(212,175,55,.55);
  box-shadow: 0 18px 50px rgba(0,0,0,.10);
  transform: translateY(-1px);
}

.page-template-page-policy .lv-form-actions{
  display: flex;
  align-items: flex-start;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 6px;
}

.page-template-page-policy .lv-btn-primary{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 900;
  cursor: pointer;
  background: linear-gradient(135deg,#f7d77a 0%, #d4af37 55%, #b88717 100%);
  color: #111;
  box-shadow: 0 18px 50px rgba(0,0,0,.12);
}

.page-template-page-policy .lv-btn-primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 22px 60px rgba(0,0,0,.16);
}

.page-template-page-policy .lv-form-note{
  margin: 10px 0 0 0;
  color: rgba(0,0,0,.72);
  line-height: 1.6;
  flex: 1 1 320px;
}
