/* Tripple T Pro LLC - Custom Styles */

html { scroll-behavior: smooth; }

body { overflow-x: hidden; }

/* Scroll reveal */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

/* Hero background pattern (used on inner pages without a custom photo) */
.hero-grid {
  background-image:
    radial-gradient(circle at 20% 20%, rgba(37,99,235,0.25), transparent 40%),
    radial-gradient(circle at 80% 0%, rgba(59,130,246,0.18), transparent 40%),
    linear-gradient(180deg, #0a1a33 0%, #0f2647 100%);
}

/* Hero banner with a real background photo (homepage) */
.hero-banner {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #0a1a33; /* fallback while image loads / if it fails */
}

/* Card hover lift */
.hover-lift { transition: transform .3s ease, box-shadow .3s ease; }
.hover-lift:hover { transform: translateY(-6px); box-shadow: 0 20px 40px -15px rgba(10,26,51,0.25); }

/* Blog content typography (for stored HTML from CMS) */
.post-content h2 { font-size: 1.5rem; font-weight: 800; color: #0a1a33; margin-top: 1.75rem; margin-bottom: .75rem; }
.post-content h3 { font-size: 1.25rem; font-weight: 700; color: #0a1a33; margin-top: 1.5rem; margin-bottom: .5rem; }
.post-content p { margin-bottom: 1rem; line-height: 1.75; color: #374151; }
.post-content ul, .post-content ol { margin: 1rem 0 1rem 1.5rem; }
.post-content ul { list-style: disc; }
.post-content ol { list-style: decimal; }
.post-content li { margin-bottom: .4rem; color: #374151; }
.post-content a { color: #2563eb; text-decoration: underline; }
.post-content img { border-radius: .75rem; margin: 1.25rem 0; }
.post-content blockquote { border-left: 4px solid #2563eb; padding-left: 1rem; color: #4b5563; font-style: italic; margin: 1.25rem 0; }

/* Marquee-ish testimonial scrollbar styling */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

/* Loading fade for images */
img { max-width: 100%; }
