/* ------------------------------------------------------------------------------
 *  Design enhancements for index.html and privacy-policy.html
 *  Loaded after style.css - same fonts, colours and buttons as the main site
 * ---------------------------------------------------------------------------- */
:root{
    --en-blue: #3B14FF;
    --en-red: #CC102A;
    --en-ink: #080223;
    --en-grey: #606060;
    --en-soft: #F6F6F6;
    --en-pink: #FFD1E0;
    --en-line: #E6E6EC;
    --en-gradient: linear-gradient(86deg, #CC102A 3.24%, #2404C4 57.37%);
    --en-shadow: 0 10px 40px rgba(8, 2, 35, 0.08);
    --en-shadow-hover: 0 20px 50px rgba(59, 20, 255, 0.14);
}
html{scroll-behavior: smooth;}
body.enh{padding-top: 0; overflow-x: hidden;}
.enh section{position: relative;}
.enh h2{letter-spacing: -0.5px;}
.enh .btn-primary{box-shadow: 0 8px 20px rgba(59, 20, 255, 0.25);}
.enh .btn-primary:hover{box-shadow: 0 8px 20px rgba(204, 16, 42, 0.25); transform: translateY(-1px);}
.enh .btn-primary i{transition: transform 0.3s ease;}
.enh .btn-primary:hover i{transform: translateX(4px);}

/* Navbar */
.enh .navbar .container{border: 1px rgba(255, 255, 255, 0.6) solid;}
.enh .scrolled .container{background: rgba(255, 255, 255, 0.88) !important; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);}
.enh .navbar .nav-link{transition: color 0.2s ease;}
.enh .navbar .nav-link:hover{color: var(--en-blue);}

/* Hero - starts from the top, behind the floating navbar */
.enh .hero{padding-top: 140px; overflow: hidden;}
.enh .hero.pb-0{padding-bottom: 30px !important;}
.enh .hero:before, .enh .hero:after{content: ""; position: absolute; border-radius: 50%; filter: blur(80px); z-index: 0; pointer-events: none;}
.enh .hero:before{width: 560px; height: 560px; background: rgba(255, 209, 224, 0.75); top: -180px; left: -180px;}
.enh .hero:after{width: 600px; height: 600px; background: rgba(59, 20, 255, 0.12); top: 120px; right: -220px;}
.enh .hero .container{position: relative; z-index: 1;}
.enh .hero h1{letter-spacing: -1px;}

/* Services block in hero */
.enh .services{background: #FFF; border: 1px var(--en-line) solid; border-radius: 24px; box-shadow: 0 30px 70px rgba(8, 2, 35, 0.1);}
.enh .services-block{border-radius: 16px; margin: 0 15px 10px 15px; transition: all 0.3s ease;}
.enh .services-block:hover{background: var(--en-soft); transform: translateX(6px);}
.enh .services-block img{width: 64px; padding: 10px; background: #F3F0FF; border-radius: 16px; transition: all 0.3s ease;}
.enh .services-block:hover img{background: var(--en-pink);}

/* What we offer */
.offer-card{max-width: 980px; margin: 0 auto; padding: 60px; border-radius: 28px; background: linear-gradient(#FFF, #FFF) padding-box, linear-gradient(120deg, rgba(204, 16, 42, 0.35), rgba(36, 4, 196, 0.35)) border-box; border: 2px transparent solid; box-shadow: var(--en-shadow);}

/* Who it's for */
.enh #who-its-for{background: linear-gradient(135deg, #FFD1E0 0%, #FFE6EE 50%, #EFEBFF 100%);}
.enh #who-its-for ul.styled li{background-color: rgba(255, 255, 255, 0.6); background-position: 15px 50%; padding: 12px 15px 12px 55px; border-radius: 14px; margin-bottom: 10px; font-size: 20px; transition: all 0.3s ease;}
.enh #who-its-for ul.styled li:hover{background-color: #FFF; transform: translateX(6px); box-shadow: 0 6px 20px rgba(8, 2, 35, 0.06);}
.enh #who-its-for .box-shadow{border-radius: 24px; box-shadow: 0 30px 60px rgba(8, 2, 35, 0.15);}

/* Use cases */
.enh .use-case-block{border: 1px var(--en-line) solid; box-shadow: none; border-radius: 20px; position: relative; overflow: hidden; transition: all 0.35s ease;}
.enh .use-case-block:before{content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--en-gradient); transform: scaleX(0); transform-origin: left; transition: transform 0.4s ease;}
.enh .use-case-block:hover{background: #FFF; box-shadow: var(--en-shadow-hover); transform: translateY(-6px); border-color: #D4CCFF;}
.enh .use-case-block:hover:before{transform: scaleX(1);}
.enh .use-case-img img{transition: transform 0.4s ease;}
.enh .use-case-block:hover .use-case-img img{transform: scale(1.08);}

/* Why now - video CTA */
.enh .cta{border-radius: 28px; overflow: hidden;}
.enh .cta-block video{border-radius: 0;}
.enh .cta:after{content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(8, 2, 35, 0.55) 0%, rgba(36, 4, 196, 0.2) 100%); z-index: 0;}
.enh .cta-block .cta-content{z-index: 2;}

/* Sample report CTA */
.sample-cta{position: relative; overflow: hidden; border-radius: 28px; background: var(--en-ink); padding: 70px 40px; text-align: center;}
.sample-cta:before, .sample-cta:after{content: ""; position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none;}
.sample-cta:before{width: 380px; height: 380px; background: rgba(59, 20, 255, 0.5); top: -180px; left: 5%;}
.sample-cta:after{width: 340px; height: 340px; background: rgba(204, 16, 42, 0.35); bottom: -200px; right: 5%;}
.sample-cta > *{position: relative; z-index: 1;}
.sample-cta h2{color: #FFF;}
.sample-cta p{color: #C4C3CA; margin-bottom: 25px;}
.btn-white{background: #FFF; color: var(--en-ink); border-radius: 26px; padding: 12px 34px; font-weight: 600; transition: all 0.3s ease-in-out; box-shadow: 0 10px 30px rgba(255, 255, 255, 0.15);}
.btn-white:hover{background: var(--en-blue); color: #FFF; transform: translateY(-2px);}
.btn-outline-light-soft{color: #FFF; border: 1px rgba(255, 255, 255, 0.35) solid; border-radius: 26px; padding: 12px 34px; transition: all 0.3s ease-in-out;}
.btn-outline-light-soft:hover{background: rgba(255, 255, 255, 0.1); color: #FFF; border-color: #FFF;}

/* Footer */
.enh .site-footer{background: var(--en-soft); border-top: 1px var(--en-line) solid; padding: 0; color: var(--en-ink); text-align: left;}
.enh .site-footer .footer-top{display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 45px 0 35px 0; border-bottom: 1px var(--en-line) solid;}
.enh .site-footer .footer-brand img{height: 44px; margin: 0;}
.enh .site-footer .footer-email-link{display: inline-flex; align-items: center; gap: 10px; font-size: 16px; color: var(--en-ink); background: #FFF; border: 1px var(--en-line) solid; border-radius: 26px; padding: 10px 20px; transition: all 0.3s ease;}
.enh .site-footer .footer-email-link i{color: var(--en-blue);}
.enh .site-footer .footer-email-link:hover{border-color: var(--en-blue); color: var(--en-blue); box-shadow: 0 6px 18px rgba(59, 20, 255, 0.12);}
.enh .site-footer .footer-bottom{display: flex; align-items: center; justify-content: space-between; gap: 15px 30px; flex-wrap: wrap; padding: 22px 0;}
.enh .site-footer .footer-copy{font-size: 14px; color: var(--en-grey); margin: 0;}
.enh .site-footer .footer-links{display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0; padding: 0;}
.enh .site-footer .footer-links a{font-size: 14px; color: var(--en-ink); transition: color 0.2s ease;}
.enh .site-footer .footer-links a:hover{color: var(--en-blue);}

/* Privacy policy */
.enh .policy-hero{padding-bottom: 60px !important; overflow: visible; overflow-x: clip; z-index: 0;}
.enh .policy-hero + section{z-index: 1;}
.enh .policy-hero p{display: inline-flex; align-items: center; gap: 8px; background: #FFF; border: 1px var(--en-line) solid; border-radius: 26px; padding: 6px 18px; font-size: 15px;}
.enh .decisions{background: #FFF; border: 1px var(--en-line) solid; border-radius: 28px; padding: 50px 60px; box-shadow: var(--en-shadow); position: relative; z-index: 1;}
.enh .decisions h4, .enh .decisions h5{font-size: 24px; font-weight: 600; margin: 45px 0 18px 0; padding-left: 18px; position: relative;}
.enh .decisions h4:before, .enh .decisions h5:before{content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 4px; border-radius: 4px; background: var(--en-gradient);}
.enh .decisions ul.styled li{background: none; position: relative; padding-left: 22px;}
.enh .decisions ul.styled li:before{content: ""; position: absolute; left: 2px; top: 11px; width: 7px; height: 7px; border-radius: 50%; background: var(--en-blue);}
.enh .decisions a{color: var(--en-blue); text-decoration: underline; text-underline-offset: 3px;}
.enh .decisions a:hover{color: var(--en-red);}
.enh .policy-contact{background: var(--en-soft); border-radius: 18px; padding: 25px 30px; margin: 20px 0;}

/* Scroll reveal */
.reveal{opacity: 0; transform: translateY(30px); transition: opacity 0.7s ease, transform 0.7s ease;}
.reveal.in{opacity: 1; transform: none;}
.reveal-d1{transition-delay: 0.1s;}
.reveal-d2{transition-delay: 0.2s;}
.reveal-d3{transition-delay: 0.3s;}
.reveal-d4{transition-delay: 0.4s;}


@media (prefers-reduced-motion: reduce){
    html{scroll-behavior: auto;}
    .reveal{opacity: 1; transform: none; transition: none;}
}
@media (max-width: 1024px){
    .enh .hero{padding-top: 120px;}
}
@media (max-width: 768px){
    .enh .site-footer .footer-top, .enh .site-footer .footer-bottom{flex-direction: column; text-align: center;}
    .enh .site-footer .footer-top{padding: 40px 0 30px 0;}
    .enh .site-footer .footer-links{justify-content: center; gap: 10px 22px;}
    .offer-card{padding: 40px 25px;}
    .enh .decisions{padding: 35px 25px;}
    .sample-cta{padding: 50px 25px;}
    .enh .cta{border-radius: 20px;}
}
@media (max-width: 600px){
    .enh .hero{padding-top: 110px;}
    .enh #who-its-for ul.styled li{font-size: 17px;}
}
