/* GIRVI V5.2 — LIGHT THEME TEXTURE + SURFACE SEPARATION
   Keeps layout, content and interactions unchanged.
   Only improves light-mode ambience and block/background separation. */

body[data-theme="light"]{
  position:relative;
  background:
    radial-gradient(circle at 7% 10%,rgba(247,215,122,.16),transparent 20rem),
    radial-gradient(circle at 92% 18%,rgba(20,140,146,.09),transparent 24rem),
    radial-gradient(circle at 88% 82%,rgba(20,140,146,.05),transparent 21rem),
    linear-gradient(180deg,#fafcff 0%,#f4f7fb 52%,#f8fbfd 100%);
  background-attachment:fixed;
}

body[data-theme="light"]::before,
body[data-theme="light"]::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
}

/* animated micro texture */
body[data-theme="light"]::before{
  opacity:.34;
  background-image:
    radial-gradient(rgba(18,32,51,.050) .55px, transparent .75px),
    radial-gradient(rgba(20,140,146,.030) .55px, transparent .75px),
    linear-gradient(rgba(255,255,255,.55), rgba(255,255,255,0));
  background-size:26px 26px, 42px 42px, 100% 100%;
  background-position:0 0, 12px 10px, 0 0;
  mix-blend-mode:multiply;
  animation:lightTextureDrift 38s linear infinite;
}

/* soft moving sheen */
body[data-theme="light"]::after{
  opacity:.38;
  background:
    radial-gradient(circle at 15% 35%,rgba(255,255,255,.56),transparent 22%),
    radial-gradient(circle at 78% 18%,rgba(255,255,255,.48),transparent 18%),
    linear-gradient(115deg,transparent 0%,rgba(255,255,255,.20) 46%,transparent 68%);
  animation:lightSheenFloat 18s ease-in-out infinite alternate;
}

@keyframes lightTextureDrift{
  0%{background-position:0 0, 12px 10px, 0 0}
  50%{background-position:18px 12px, -6px 28px, 0 0}
  100%{background-position:36px 24px, -20px 50px, 0 0}
}
@keyframes lightSheenFloat{
  0%{transform:translate3d(0,0,0) scale(1)}
  100%{transform:translate3d(0,-10px,0) scale(1.03)}
}

/* existing micro-grid gets subtler and more premium */
body[data-theme="light"] .micro-grid{
  opacity:.18;
  background-image:
    linear-gradient(rgba(18,32,51,.020) 1px,transparent 1px),
    linear-gradient(90deg,rgba(18,32,51,.020) 1px,transparent 1px),
    linear-gradient(90deg,rgba(20,140,146,.018) 1px,transparent 1px);
  background-size:56px 56px,56px 56px,112px 112px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.18));
}

/* softer textured section grounds so white cards stand out */
body[data-theme="light"] .hero,
body[data-theme="light"] .rate-band,
body[data-theme="light"] #quick-actions,
body[data-theme="light"] .products-section,
body[data-theme="light"] .process-section,
body[data-theme="light"] .value-section,
body[data-theme="light"] .trust-section,
body[data-theme="light"] .partner-section,
body[data-theme="light"] .final-cta,
body[data-theme="light"] .site-footer{
  position:relative;
  isolation:isolate;
}

body[data-theme="light"] .hero::after,
body[data-theme="light"] #quick-actions::after,
body[data-theme="light"] .products-section::after,
body[data-theme="light"] .process-section::after,
body[data-theme="light"] .value-section::after,
body[data-theme="light"] .trust-section::after,
body[data-theme="light"] .partner-section::after,
body[data-theme="light"] .final-cta::after,
body[data-theme="light"] .site-footer::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.38;
  background-image:
    radial-gradient(rgba(220,167,43,.055) .7px, transparent .9px),
    radial-gradient(rgba(20,140,146,.040) .7px, transparent .9px);
  background-size:24px 24px, 36px 36px;
  background-position:0 0, 12px 14px;
}

body[data-theme="light"] .rate-band{
  background:
    linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(251,253,255,.96) 58%,rgba(245,251,251,.96) 100%);
}

body[data-theme="light"] #quick-actions{
  background:
    radial-gradient(circle at 0% 26%,rgba(247,215,122,.08),transparent 24rem),
    linear-gradient(180deg,#f8fbfd 0%,#f4f8fb 100%);
}

body[data-theme="light"] .trust-section{
  background:
    radial-gradient(circle at 100% 0%,rgba(20,140,146,.07),transparent 24rem),
    linear-gradient(180deg,#f7fafc 0%,#f2f6fa 100%);
}

body[data-theme="light"] .partner-section{background:linear-gradient(180deg,#fbfdff 0%,#f7fbfc 100%)}
body[data-theme="light"] .final-cta{background:linear-gradient(180deg,#f5f8fb 0%,#f8fbfd 100%)}
body[data-theme="light"] .site-footer{background:linear-gradient(180deg,#fbfdff 0%,#f6f9fc 100%)}

/* cards become slightly warmer/cooler than the section behind them */
body[data-theme="light"] .action-card,
body[data-theme="light"] .product-card,
body[data-theme="light"] .trust-card,
body[data-theme="light"] .mini-card,
body[data-theme="light"] .model-card,
body[data-theme="light"] .estimate-card,
body[data-theme="light"] .partner-board,
body[data-theme="light"] .partner-core,
body[data-theme="light"] .partner-row span{
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(251,253,255,.97));
  box-shadow:
    0 16px 42px rgba(29,47,66,.055),
    0 1px 0 rgba(255,255,255,.90) inset;
}

body[data-theme="light"] .trust-card,
body[data-theme="light"] .action-card,
body[data-theme="light"] .product-card{
  backdrop-filter:blur(3px);
}

/* clearer border contrast */
body[data-theme="light"] .action-card,
body[data-theme="light"] .product-card,
body[data-theme="light"] .trust-card,
body[data-theme="light"] .process-shell,
body[data-theme="light"] .estimate-card,
body[data-theme="light"] .model-card,
body[data-theme="light"] .mini-card,
body[data-theme="light"] .partner-shell,
body[data-theme="light"] .partner-board,
body[data-theme="light"] .value-photo-card{
  border-color:#d7e0e8;
}

/* subtle floating highlight on light cards */
body[data-theme="light"] .action-card::before,
body[data-theme="light"] .product-card::before,
body[data-theme="light"] .trust-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.38),transparent 26%);
  opacity:.85;
}

/* light mode headings remain crisp */
body[data-theme="light"] .trust-card p,
body[data-theme="light"] .product-card p,
body[data-theme="light"] .action-card p{
  color:#66788c;
}

@media (prefers-reduced-motion: reduce){
  body[data-theme="light"]::before,
  body[data-theme="light"]::after{animation:none}
}
