
:root{--green:#088A4B; --green-700:#066a3a; --text:#1a1f2b; --muted:#5b6472; --bg:#f7faf7; --card:#ffffff; --ring: rgba(8,138,75,.25); --shadow: 0 10px 30px rgba(24,24,24,.07); --maxw: 1160px; --radius:16px}

/* Smooth scrolling for entire page */
html {
  scroll-behavior: smooth;
}

/* Scroll progress indicator */
.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 0%;
  height: 3px;
  background: linear-gradient(90deg, var(--green), #b3ffd1);
  z-index: 9999;
  transition: width 0.1s ease;
}

/* Scroll-triggered animations */
.fade-up {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.fade-up.animate-in {
  opacity: 1;
  transform: translateY(0);
}

/* Enhanced animations */
@keyframes pulse-gentle {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes float {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes shimmer {
  0% { background-position: -200px 0; }
  100% { background-position: calc(200px + 100%) 0; }
}

/* Loading shimmer effect */
.loading-shimmer {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200px 100%;
  animation: shimmer 1.5s infinite;
}

/* Clean service cards without excessive sales elements */

/* Clean trust messaging */
.trust-summary {
  font-weight: 600;
  color: var(--text);
  text-align: center;
}

/* Floating elements */
.float-animation {
  animation: float 6s ease-in-out infinite;
}

/* Enhanced hover effects for trust badges */
.trust-badge:hover {
  transform: translateY(-4px) scale(1.05);
  transition: all 0.3s ease;
}

.trust-badge:hover .badge-icon {
  transform: scale(1.2);
  transition: all 0.3s ease;
}

/* Enhanced accessibility */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Focus styles */
*:focus {
  outline: 2px solid var(--green);
  outline-offset: 2px;
}

.btn:focus {
  outline: 3px solid rgba(8,138,75,0.5);
  outline-offset: 2px;
}

/* Removed intrusive notification styles for cleaner design */

/* Enhanced image fade-in */
.fade-in {
  opacity: 0;
  animation: fadeIn 0.6s ease forwards;
}

@keyframes fadeIn {
  to { opacity: 1; }
}

/* Performance optimizations */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  will-change: opacity;
}

.service-card {
  will-change: transform, box-shadow;
}

/* Enhanced section stats */
.section-stats {
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin-top: 1.5rem;
  padding: 1rem;
  background: rgba(8,138,75,0.05);
  border-radius: 16px;
  border: 1px solid rgba(8,138,75,0.1);
}

.stat-item {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.stat-item strong {
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--green);
  line-height: 1;
}

.stat-item span {
  font-size: 0.85rem;
  color: var(--muted);
  font-weight: 500;
}

/* Interactive elements */
.service-card .card-body {
  transition: all 0.3s ease;
}

.service-card:hover .card-body {
  transform: translateY(-2px);
}

.service-card:hover .service-features span {
  background: var(--green);
  color: white;
  transform: scale(1.05);
}

/* Enhanced CTA buttons */
.btn-primary {
  position: relative;
  overflow: hidden;
}

.btn-primary::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.5s;
}

.btn-primary:hover::before {
  left: 100%;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  
  .fade-up {
    opacity: 1;
    transform: none;
  }
}

/* Enhanced form validation styles */
.error {
  border-color: #ff6b6b !important;
  box-shadow: 0 0 0 3px rgba(255,107,107,0.2) !important;
  animation: shake 0.3s ease-in-out;
}

.error-message {
  color: #ff6b6b;
  font-size: 0.8rem;
  margin-top: 0.25rem;
  display: block;
  font-weight: 500;
}

.loading-spinner {
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 2px solid #ffffff40;
  border-radius: 50%;
  border-top-color: #ffffff;
  animation: spin 1s ease-in-out infinite;
  margin-right: 0.5rem;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  75% { transform: translateX(5px); }
}

/* Enhanced testimonials */
.testimonial-slider {
  position: relative;
  overflow: hidden;
}

.t-slide {
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transform: scale(0.95);
  opacity: 0.7;
}

.t-slide.active {
  transform: scale(1);
  opacity: 1;
}

.t-slide blockquote {
  position: relative;
  background: linear-gradient(135deg, #f8fbf9, #ffffff);
  border-left: 4px solid var(--green);
  padding: 2rem;
  border-radius: 16px;
  box-shadow: var(--shadow);
  transition: all 0.3s ease;
}

.t-slide:hover blockquote {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

/* Removed floating CTA for cleaner design */

/* Enhanced footer */
.footer {
  background: linear-gradient(135deg, #0e1b12, #1a2e20);
  color: #cfe5d6;
  position: relative;
  overflow: hidden;
}

.footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: -50%;
  width: 200%;
  height: 100%;
  background: linear-gradient(45deg, transparent, rgba(255,255,255,0.03), transparent);
  animation: sweep 8s infinite;
}

@keyframes sweep {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

.footer-content {
  position: relative;
  z-index: 2;
}

@media (max-width: 768px) {
  .section-stats {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
  }
  
  .stat-item {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
  }
  
  .stat-item strong {
    font-size: 1.2rem;
  }
  
  .floating-cta {
    right: 15px;
    bottom: 80px;
    padding: 0.8rem 1.2rem;
    font-size: 0.9rem;
  }
}
*{box-sizing:border-box} html,body{margin:0;padding:0}
body{font-family:'Inter',system-ui,Segoe UI,Roboto,Arial,Helvetica,sans-serif; color:var(--text); background:var(--bg); line-height:1.65}
img{max-width:100%; display:block} a{color:inherit; text-decoration:none}
.container{width:92%; max-width:var(--maxw); margin:0 auto}
.center{text-align:center} .small{font-size:.9rem} .micro{font-size:.8rem} .muted{color:var(--muted)}
.skip-link{position:absolute; left:-999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus{left:8px; top:8px; background:#000; color:#fff; padding:.4rem .6rem; border-radius:8px}

.card{background:var(--card); border:1px solid #eef1f4; border-radius:16px; overflow:hidden; box-shadow: var(--shadow); padding:1rem}
.btn{display:inline-block; padding:.85rem 1.15rem; border-radius:12px; border:1px solid #e5e8ed; background:#fff; color:var(--text); font-weight:600; transition:.2s ease; box-shadow: var(--shadow)}
.btn:hover{transform:translateY(-1px)} .btn-primary{background:#066a3a; color:#fff; border-color:transparent; font-weight:800; text-shadow: 0 1px 2px rgba(0,0,0,0.2)}
.btn-primary:hover{background:var(--green-700)} .btn-outline{background:#ffffff; border:2px solid #066a3a; color:#066a3a; box-shadow:0 2px 8px rgba(0,0,0,0.1); font-weight:700} .btn-outline:hover{background:#066a3a; border-color:#066a3a; color:#ffffff; transform:translateY(-1px)}
.btn-text{background:transparent; border:none; box-shadow:none; color:var(--green); padding:0} .btn-small{padding:.5rem .8rem; font-size:.9rem}

.topbar{background:#0e1b12; color:#cfe5d6; font-size:.85rem; padding: 0}
.topbar-inner{display:flex; align-items:center; justify-content:space-between; height:48px; padding: 0 1rem}
.topbar-license{font-weight: 600; white-space: nowrap}
.topbar-phone{color:#cfe5d6; text-decoration: none; font-weight: 600; white-space: nowrap}
.topbar-actions{display: flex; align-items: center; gap: 1rem}
.topbar .btn-small{padding: 0.4rem 0.8rem; font-size: 0.85rem; font-weight: 700; border-radius: 4px; white-space: nowrap}
.urgency-text{background:#ff6b6b; color:#fff; padding:.25rem .75rem; border-radius:15px; font-weight:600; font-size:.8rem; animation:pulse-gentle 2s infinite}
.header{position:sticky; top:0; z-index:40; background:#ffffff; box-shadow:0 1px 0 #eef1f4}
.header-inner{display:flex; align-items:center; justify-content:space-between; height:70px; position:relative}
.logo{font-weight:800; font-size:1.15rem; display:flex; align-items:center; gap:.4rem}
.logo-img{height:2.5rem; width:auto; object-fit:contain}
.logo .leaf{filter:saturate(1.2)} .nav{display:flex; gap:1rem; align-items:center}
.nav a{padding:.4rem .6rem; border-radius:8px} .hamburger{display:none; background:transparent; border:none; font-size:1.6rem}
/* Floating chat widget */
.floating-chat{position:fixed; right:20px; bottom:20px; z-index:1000}
.chat-toggle{width:60px; height:60px; border-radius:50%; background:var(--green); color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.5rem; cursor:pointer; box-shadow:var(--shadow); transition:.3s ease}
.chat-toggle:hover{background:var(--green-700); transform:scale(1.1)}

.chat-widget{position:absolute; bottom:70px; right:0; width:350px; height:450px; background:#fff; border-radius:16px; box-shadow:0 8px 30px rgba(0,0,0,.15); display:flex; flex-direction:column; overflow:hidden; z-index:1001}
.chat-header{background:var(--green); color:#fff; padding:1rem; font-weight:600; display:flex; justify-content:space-between; align-items:center}
.chat-close{background:none; border:none; color:#fff; font-size:1.5rem; cursor:pointer; padding:0; width:24px; height:24px; display:flex; align-items:center; justify-content:center}

.chat-body{flex:1; display:flex; flex-direction:column; min-height:0}
.chat-messages{flex:1; padding:1rem; overflow-y:auto; display:flex; flex-direction:column; gap:1rem; min-height:0}
.message{max-width:85%}
.bot-message{align-self:flex-start}
.user-message{align-self:flex-end}
.message-content{background:#f1f7f3; padding:.75rem 1rem; border-radius:12px; line-height:1.4; font-size:.9rem}
.user-message .message-content{background:var(--green); color:#fff}
.typing-indicator .message-content{opacity:0.7; font-style:italic}

.quick-btn{background:#fff; border:1px solid var(--green); color:var(--green); padding:.5rem .75rem; border-radius:8px; cursor:pointer; margin:.25rem 0; display:block; width:100%; text-align:left; font-size:.85rem}
.quick-btn:hover{background:var(--green); color:#fff}

.chat-input{display:flex; padding:1rem; border-top:1px solid #eef1f4; gap:.5rem; flex-shrink:0; background:#fff}
.chat-input input{flex:1; padding:.75rem; border:1px solid #dfe4ea; border-radius:8px; outline:none; font-size:.9rem}
.chat-input input:focus{border-color:var(--green)}
.chat-input button{background:var(--green); color:#fff; border:none; padding:.75rem 1rem; border-radius:8px; cursor:pointer; font-size:.9rem; font-weight:600}
.chat-input button:hover{background:var(--green-700)}

/* Enhanced mobile touch interactions */
@media (max-width: 480px){
  .chat-widget{width:280px; height:450px}
  .floating-chat{right:15px; bottom:15px}
  .chat-input{padding:0.75rem; gap:0.5rem}
  .chat-input input{padding:0.7rem; font-size:0.9rem}
  .chat-input button{padding:0.7rem 0.9rem; font-size:0.9rem}
  
  /* VINYL FLOORS MOBILE FIX - Stop form from floating over hero */
  .vinyl-hero .quick-form{
    position:static !important;
    top:auto !important;
    right:auto !important;
    z-index:1 !important;
    width:100% !important;
    max-width:100% !important;
    margin:2rem 0 0 0 !important;
  }
  .vinyl-hero .hero-inner{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:1fr !important;
  }
  
  /* Mobile layout fixes - clean gradient instead of blurry image */
  .hero{
    height:100vh; 
    min-height:100vh; 
    background: linear-gradient(135deg, #2c5f3f 0%, #1a3d2b 100%) !important;
    background-size:cover; 
    position:relative
  }
  .hero::before{content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:linear-gradient(135deg,rgba(0,0,0,.5),rgba(0,0,0,.3)); z-index:1}
  .hero-inner{position:relative; z-index:2; display:flex; flex-direction:column; justify-content:center; align-items:center; height:100%; padding:2rem 0}
  .hero-copy{text-align:center; color:#fff; margin-bottom:2rem}
  .hero h1{font-size:1.8rem; margin-bottom:0.5rem; line-height:1.2}
  .hero .lead{font-size:1.1rem; margin-bottom:1.5rem; opacity:0.95}
  .hero-highlights{justify-content:center; margin:1.5rem 0}
  .hero-ctas{justify-content:center; margin:2rem 0}
  
  /* Form in separate section - mobile only */
  .mobile-form-section{display:block}
  .mobile-form-section .quick-form{position:static; width:100%; max-width:none; height:auto; background:#fff; padding:2rem; border-radius:16px; box-shadow:0 4px 20px rgba(0,0,0,.1); border:1px solid #e0e0e0}
  
  /* Clean stats section */
  .trust-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:2rem 0; text-align:center}
  .trust{text-align:left; max-width:none; margin:1rem 0}
  
  /* Trust badges section */
  .enhanced-trust{background:#f8f9fa; padding:2rem 0; margin-top:0}
  /* Hide stats from hero, show in separate section */
  .hero .trust-stats, .hero .trust{display:none}

/* Desktop responsive - show form on right side */
@media (min-width: 768px) {
  .hero{height:80vh; min-height:600px}
  .hero-inner{display:grid; grid-template-columns:1fr 400px; gap:2rem; align-items:center}
  .hero-copy{text-align:left}
  
  /* Hide mobile form section on desktop */
  .mobile-form-section{display:none}
  
  /* Show desktop form in hero */
  .hero-inner::after{
    content:'';
    grid-column:2;
    position:relative;
  }
  
  .hero{position:relative}
  
  /* Desktop form styling */
  .desktop-form{
    display:block !important;
    position:absolute;
    top:50%;
    right:2rem;
    transform:translateY(-50%);
    width:350px;
    background:rgba(255,255,255,.95);
    padding:2rem;
    border-radius:16px;
    box-shadow:0 8px 30px rgba(0,0,0,.2);
    z-index:100;
  }
}
  .section{padding:30px 0}
  .section-head{margin-bottom:20px}
  .section-head h2{font-size:1.5rem; margin-bottom:0.5rem}
  .section-head p{font-size:0.9rem}
  .card{padding:0.75rem; margin-bottom:1.25rem; touch-action: manipulation}
  .card-body{padding:1.25rem}
  .card-body h3{font-size:1.2rem; margin-bottom:0.5rem}
  .card-body p{font-size:0.9rem; line-height:1.4}
  .card-img{height:180px; border-radius:12px}
  .logos{font-size:0.8rem; gap:0.6rem; padding:10px 0}
  .container{width:95%; padding:0 10px}
  
  /* Enhanced mobile service cards */
  .service-card {
    margin-top: 1.2rem; /* Reduced space on mobile */
  }
  
  .service-card:hover {
    transform: translateY(-4px) scale(1.01);
  }
  
  .service-stats {
    position: absolute;
    top: -12px; /* Closer on mobile */
    left: 0.5rem;
    right: 0.5rem;
    flex-direction: row;
    gap: 0.5rem;
    justify-content: center;
  }
  
  .popularity, .price-range {
    font-size: 0.65rem;
    padding: 0.3rem 0.6rem;
    max-width: none;
  }
  
  .service-features {
    flex-direction: column;
    gap: 0.25rem;
  }
  
  .cards-3 {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  
  /* Better touch targets */
  .btn, button, a[href] {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  
  /* Improved mobile navigation */
  .nav a {
    padding: 1rem;
    touch-action: manipulation;
  }
}

.hero{position:relative; min-height:100vh; height:100vh; display:flex; align-items:center; background-size:cover; background-position:center center; background-repeat:no-repeat; background-attachment:fixed; margin:0; padding:0; border:none; overflow:hidden}
.hero::before{content:''; position:absolute; top:0; left:0; right:0; bottom:0; background:linear-gradient(135deg,rgba(0,0,0,.5),rgba(0,0,0,.3)); z-index:1}
.hero-inner{position:relative; z-index:2; display:grid; grid-template-columns: 1.2fr .8fr; gap:1.2rem; padding:80px 0 40px; color:#fff; text-shadow: 0 2px 10px rgba(0,0,0,.3); overflow: visible}
.hero h1{font-size: clamp(2rem, 3.2vw + 1rem, 3.2rem); margin:50px 0 .4rem 0}
.hero .accent{color:#b3ffd1} 
.hero .lead{max-width:60ch; color:#e8f5ec; font-weight: 600; font-size: 1.2rem} 
.hero-ctas{display:flex; gap:.8rem; flex-wrap:wrap; margin-top:1rem}
.hero-highlights{display:flex; justify-content:center; gap:1rem; margin:1rem 0; flex-wrap: wrap}
.hero-highlights .highlight{background:rgba(255,255,255,0.15); backdrop-filter:blur(10px); color:#fff; padding:0.5rem 1rem; border-radius:25px; font-size:0.9rem; font-weight:600; border:1px solid rgba(255,255,255,0.2)}
.trust{list-style:none; padding:0; margin:1rem 0 0; display:grid; gap:.3rem}
.quick-form{backdrop-filter: blur(6px); background:rgba(255,255,255,.95); color:#1b2321; text-shadow:none; position:absolute; top:0; right:0; z-index:9999; box-shadow:0 8px 30px rgba(0,0,0,.15)}
.quick-form h3{margin-top:0; margin-bottom:0.75rem; font-size:1.3rem} .quick-form label{display:block; font-weight:600; font-size:.9rem; margin:.4rem 0 .2rem}
.quick-form input, .quick-form select{width:100%; padding:.7rem .8rem; border-radius:8px; border:1px solid #dfe4ea; outline:none; font-size:0.9rem; margin-bottom:0.3rem}
.quick-form input[type="file"]{padding:0.4rem; background:#f8f9fa; border:1px solid #dfe4ea; cursor:pointer; font-size:0.8rem; border-radius:8px}
.quick-form input[type="file"]:hover{border-color:#088A4B; background:#f0f9f4}
.quick-form input:focus, .quick-form select:focus{border-color:var(--green); box-shadow: 0 0 0 3px var(--ring)}
.quick-form .consent{font-weight:500; display:flex; gap:.5rem; align-items:flex-start; margin:0.75rem 0}
.quick-form .form-subtitle{color:#6c757d; font-size:.85rem; margin-bottom:0.5rem}
.quick-form .consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  cursor: pointer;
  accent-color: var(--green);
  flex-shrink: 0;
  transform: scale(1.2);
}
.quick-form .consent label {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  cursor: pointer;
  line-height: 1.4;
}

.logo-row{background:#0e1b12; color:#cfe5d6; margin-top:-1px; position:relative; z-index:1}
.logos{display:flex; gap:1.2rem; align-items:center; justify-content:center; padding:10px 0; flex-wrap:wrap}

.section{padding:56px 0 60px 0} .section-head{margin-bottom:18px} .alt{background:#f1f7f3}
.grid{display:grid; gap:1.1rem} .two-col{display:grid; gap:1.4rem; grid-template-columns: 1.1fr .9fr; align-items:center}
.cards-3{grid-template-columns: repeat(3, minmax(0,1fr)); gap: 2rem} .gallery-3{grid-template-columns: repeat(3, minmax(0,1fr)); gap:1rem}

.project-card{position:relative; border-radius:16px; overflow:hidden; transition:.3s ease; cursor:pointer}
.project-card:hover{transform:translateY(-4px); box-shadow: var(--shadow)}
.project-card img{width:100%; height:240px; object-fit:cover; transition:.3s ease}
.project-card:hover img{transform:scale(1.05)}
.project-overlay{position:absolute; bottom:0; left:0; right:0; background:linear-gradient(transparent, rgba(0,0,0,0.8)); color:#fff; padding:2rem 1.5rem 1.5rem; transform:translateY(20px); opacity:0; transition:.3s ease}
.project-card:hover .project-overlay{transform:translateY(0); opacity:1}
.project-overlay h4{margin:0 0 .5rem; font-size:1.1rem; font-weight:600}
.project-overlay p{margin:0; font-size:.9rem; opacity:.9}

.gallery .center{margin-top:3rem}
.gallery .btn-outline{background:#fff; color:var(--green); border:2px solid var(--green); padding:1rem 2rem; font-weight:600; font-size:1rem}
.gallery .btn-outline:hover{background:var(--green); color:#fff; transform:translateY(-2px)}

.gallery-3 img{border-radius:16px; width:100%; height:200px; object-fit:cover; transition:.3s ease}
.gallery-3 img:hover{transform:scale(1.02)}

/* Project Slideshow */
.project-slideshow{position:relative; max-width:600px; margin:0 auto}
.slideshow-container{position:relative; border-radius:12px; overflow:hidden; box-shadow:var(--shadow)}
.slide{display:none; position:relative}
.slide.active{display:block}
.slide img{width:100%; height:400px; object-fit:cover; border-radius:12px}
.slide-prev, .slide-next{position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,0.7); color:#fff; border:none; padding:12px 16px; cursor:pointer; font-size:18px; border-radius:4px; transition:0.3s ease; z-index:10}
.slide-prev{left:15px}
.slide-next{right:15px}
.slide-prev:hover, .slide-next:hover{background:rgba(0,0,0,0.9)}
.slide-counter{text-align:center; margin-top:10px; color:var(--text-muted); font-size:14px}
.card-img{width:100%; aspect-ratio: 4/3; object-fit: cover; background:#f5f5f5; transition:.3s ease} .card-img:hover{transform:scale(1.02)} .rounded{border-radius:14px} .shadow{box-shadow: var(--shadow)}

.process .steps{list-style:none; padding:0; margin:0; display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:1rem}
.process .steps li{display:flex; gap:.8rem; background:#fff; border:1px solid #eef1f4; border-radius:14px; padding:1rem; box-shadow: var(--shadow)}
.process .steps li span{display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; min-width:40px; background:var(--green); color:#fff; font-weight:700; border-radius:50%; font-size:1.1rem}

.footer{background:#0e1b12; color:#cfe5d6; margin-top:36px}
.footer-grid{display:grid; gap:1rem; grid-template-columns: 1.2fr 1fr 1fr 1.1fr; padding:24px 0}
.footer a{color:#e3f2e8} .footer-bottom{border-top:1px solid rgba(255,255,255,.1); padding:14px 0}
.social-links{margin-top:1rem; display:flex; gap:0.75rem; flex-wrap:wrap}
.social-links a{display:inline-flex; align-items:center; gap:0.5rem; color:#e3f2e8; text-decoration:none; padding:0.5rem 1rem; background:rgba(8,138,75,0.2); border-radius:8px; transition:all 0.3s; border:1px solid rgba(8,138,75,0.3); font-size:0.9rem}
.social-links a:hover{color:#fff; background:var(--green); border-color:var(--green); transform:translateY(-1px)}

.form label{display:block; margin:.6rem 0 .25rem; font-weight:600}
.form input, .form select, .form textarea{width:100%; padding:.9rem 1rem; border-radius:12px; border:1px solid #dfe4ea; outline:none; background:#fff}
.form input:focus, .form select:focus, .form textarea:focus{border-color: var(--green); box-shadow: 0 0 0 3px var(--ring)}
.form .two{grid-template-columns:1fr 1fr} .form .actions{margin-top:.6rem}

.accordion details{background:#fff; border:1px solid #eef1f4; padding:.6rem .9rem; border-radius:12px; margin:.5rem 0; box-shadow: var(--shadow)}
.accordion summary{cursor:pointer; font-weight:700}

.cta{background:linear-gradient(180deg,#ffffff,#ecf6ef)} .cta-inner{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:24px 0}

.mobile-cta{position:fixed; left:0; right:0; bottom:0; display:none; grid-template-columns:1fr 1fr; gap:2px; background:#fff; border-top:1px solid #eef1f4; z-index:60}
.mobile-cta a{display:block; text-align:center; padding:12px 12px; font-weight:700}
.mobile-cta .primary{background:var(--green); color:#fff}

/* Page hero styles */
.page-hero{padding:40px 0; background:#f1f7f3; text-align:center}
.page-hero h1{margin:0 0 .5rem; font-size: clamp(2rem, 3vw + 1rem, 2.5rem)}
.page-hero .lead{margin:0; font-size:1.1rem; color:var(--muted)}

/* Vinyl landing page styles */
.vinyl-hero{position:relative; min-height:80vh; display:grid; align-items:center; color:#fff}
.vinyl-hero .hero-inner{padding:180px 0 80px}
.vinyl-hero h1{text-shadow: 2px 2px 8px rgba(0,0,0,0.8), 0 0 20px rgba(0,0,0,0.5)}
.vinyl-hero .lead{text-shadow: 1px 1px 4px rgba(0,0,0,0.8)}
.vinyl-benefits{display:flex; gap:1.5rem; margin:1.5rem 0; flex-wrap:wrap}
.benefit-item{display:flex; align-items:center; gap:0.5rem; background:rgba(0,0,0,0.4); padding:0.75rem 1rem; border-radius:8px; backdrop-filter:blur(4px); border: 1px solid rgba(255,255,255,0.2)}
.trust-badges{display:flex; gap:1.5rem; margin-top:1.5rem; flex-wrap:wrap; font-size:0.9rem; text-shadow: 1px 1px 3px rgba(0,0,0,0.8)}
.package-price{font-size:1.5rem; color:var(--green); margin:1rem 0; text-align:center}

/* Big pricing banner */
.big-pricing-banner{background: linear-gradient(135deg, #f8f9fa, #ffffff); padding:4rem 0; border-bottom:3px solid var(--green)}
.pricing-banner-content{display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center}
.pricing-main{text-align:center}
.pricing-main h2{margin:0 0 1rem; font-size:2.5rem; color:var(--text)}
.big-price{margin:1.5rem 0}
.starting{display:block; font-size:1.2rem; color:var(--muted); margin-bottom:0.5rem}
.price{font-size:4rem; font-weight:800; color:var(--green); line-height:1}
.price small{font-size:1.5rem; color:var(--muted)}
.pricing-includes{font-size:1.1rem; color:var(--muted); margin-top:1rem}
.pricing-note{font-size:1rem; color:var(--green); font-weight:600; margin-top:0.5rem}
.pricing-features{text-align:center}
.feature-grid{display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:2rem}
.cta-buttons{display:flex; gap:1rem; justify-content:center; flex-wrap:wrap}
.cta-buttons .btn{font-weight:700; text-shadow:none}
.cta-buttons .btn-primary{background:var(--green); color:#fff; border:2px solid var(--green)}
.cta-buttons .btn-outline{background:#fff; color:var(--green); border:2px solid var(--green)}
.cta-buttons .btn:hover{transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,0.2)}
.feature{display:flex; flex-direction:column; align-items:center; gap:0.5rem; padding:1rem; background:#fff; border-radius:12px; box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.feature-icon{font-size:2rem}
.feature span:last-child{font-weight:600; color:var(--text)}

/* Empire-style sections */
.empire-style{background: linear-gradient(180deg, #ffffff, #f8f9fa)}
.how-it-works-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:2rem; margin-top:3rem}
.step-card{background:#fff; border-radius:16px; padding:2rem; text-align:center; box-shadow:0 8px 30px rgba(0,0,0,0.1); position:relative}
.step-number{position:absolute; top:-15px; left:50%; transform:translateX(-50%); background:var(--green); color:#fff; width:40px; height:40px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:1.2rem}
.step-img{width:100%; height:200px; border-radius:12px; margin:1rem 0; object-fit:cover}
.step-card h3{margin:1rem 0; color:var(--text)}
.step-card p{color:var(--muted); line-height:1.6; margin-bottom:1.5rem}

/* Promotional banners */
.promo-banner{background:var(--green); color:#fff; padding:1rem 0; text-align:center; font-weight:600}
.promo-banner .container{display:flex; align-items:center; justify-content:center; gap:1rem; flex-wrap:wrap}
.promo-highlight{background:rgba(255,255,255,0.2); padding:0.5rem 1rem; border-radius:8px; font-size:1.1rem}

/* Vinyl showcase */
.vinyl-showcase{background:#f8f9fa; padding:2rem; border-radius:16px; margin-top:2rem}
.showcase-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:1.5rem}
.showcase-item{text-align:center; background:#fff; padding:1rem; border-radius:12px; box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.showcase-item h4{margin:0.75rem 0 0.5rem; color:var(--text)}
.showcase-item p{margin:0; color:var(--muted); font-size:0.9rem}

/* Featured package styling */
.featured-package{position:relative}
.popular-badge{position:absolute; top:-10px; left:50%; transform:translateX(-50%); background:var(--green); color:#fff; padding:0.5rem 1rem; border-radius:20px; font-size:0.8rem; font-weight:700; text-transform:uppercase}

/* Virtual consultation form */
.virtual-consult-form{margin-top:2rem; color:var(--text)}
.virtual-consult-form h3{color:var(--text); font-weight:700}
.form-intro{color:var(--text); margin-bottom:1.5rem; font-size:1rem; opacity:0.8}
.virtual-consult-form label{color:var(--text); font-weight:600}
.virtual-consult-form textarea, .quick-form textarea{resize:vertical; min-height:50px; color:#333; font-size:0.85rem; line-height:1.3; border:1px solid #dfe4ea; border-radius:8px; padding:0.5rem; width:100%; background:#fff}
.virtual-consult-form input, .virtual-consult-form select, .virtual-consult-form textarea{color:var(--text); border:2px solid #dfe4ea}
.virtual-consult-form input:focus, .virtual-consult-form select:focus, .virtual-consult-form textarea:focus{border-color:var(--green)}
.virtual-consult-form .small{color:var(--text); opacity:0.7}

/* Social proof section */
.social-proof{background:var(--green); color:#fff; padding:3rem 0}
.stats-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); gap:2rem; text-align:center}
.stat-item{padding:1rem}
.stat-number{font-size:3rem; font-weight:800; margin-bottom:0.5rem}
.stat-label{font-size:1.1rem; opacity:0.9}

/* Video testimonials */
.video-testimonials{margin-top:2rem}
.video-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:2rem}
.video-testimonial{background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 8px 30px rgba(0,0,0,0.1)}
.video-placeholder{position:relative; cursor:pointer}
.play-button{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); background:rgba(8,138,75,0.9); color:#fff; width:60px; height:60px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.5rem; transition:all 0.3s}
.play-button:hover{background:var(--green); transform:translate(-50%, -50%) scale(1.1)}
.testimonial-content{padding:1.5rem}
.testimonial-content h4{margin:0 0 1rem; color:var(--text)}
.testimonial-content p{color:var(--muted); line-height:1.6; margin-bottom:1rem}
.testimonial-content cite{color:var(--green); font-weight:600}

/* Financing section */
.financing{background:#f8f9fa}
.financing-options{display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap:2rem; margin-top:2rem}
.financing-card{background:#fff; padding:2rem; border-radius:16px; box-shadow:0 4px 20px rgba(0,0,0,0.1); text-align:center}
.financing-card.featured{border:2px solid var(--green); transform:scale(1.05)}
.financing-card h3{margin:0 0 1rem; color:var(--text); font-size:1.5rem}
.financing-term{font-size:1.2rem; color:var(--green); font-weight:700; margin-bottom:1.5rem}
.financing-benefits{list-style:none; padding:0; text-align:left}
.financing-benefits li{padding:0.5rem 0; color:var(--text); position:relative; padding-left:1.5rem}
.financing-benefits li:before{content:'✓'; position:absolute; left:0; color:var(--green); font-weight:700}
.financing-note{font-size:0.8rem; color:var(--muted); margin-top:1rem; font-style:italic}

/* Comparison table */
.comparison-table{margin-top:2rem; overflow-x:auto}
.comparison-table table{width:100%; border-collapse:collapse; background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 4px 20px rgba(0,0,0,0.1)}
.comparison-table th, .comparison-table td{padding:1rem; text-align:center; border-bottom:1px solid #eef1f4}
.comparison-table th{background:#f8f9fa; font-weight:700; color:var(--text)}
.comparison-table th.highlight{background:var(--green); color:#fff}
.comparison-table td.highlight{background:rgba(8,138,75,0.1); font-weight:600; color:var(--green)}
.comparison-table tr:last-child td{border-bottom:none}

@media (max-width: 768px){
  .pricing-banner-content{grid-template-columns:1fr; gap:2rem}
  .pricing-main h2{font-size:2rem}
  .price{font-size:3rem}
  .feature-grid{grid-template-columns:1fr 1fr}
}

@media (max-width: 640px){
  .vinyl-hero .hero-inner{padding:180px 0 35px}
  .vinyl-benefits{flex-direction:column; gap:0.75rem}
  .benefit-item{justify-content:center; text-align:center}
  .trust-badges{flex-direction:column; gap:0.5rem; text-align:center}
  .how-it-works-grid{grid-template-columns:1fr; gap:1.5rem}
  .step-card{padding:1.5rem}
  .stats-grid{grid-template-columns:1fr 1fr; gap:1rem}
  .video-grid{grid-template-columns:1fr}
  .financing-options{grid-template-columns:1fr}
  .financing-card.featured{transform:none}
  .big-pricing-banner{padding:3rem 0}
  .feature-grid{grid-template-columns:1fr}
}

@media (max-width: 640px){
  .vinyl-hero .hero-inner{padding:180px 0 35px; display:flex; flex-direction:column}
  .vinyl-benefits{flex-direction:column; gap:0.75rem}
  .benefit-item{justify-content:center; text-align:center}
  .trust-badges{flex-direction:column; gap:0.5rem; text-align:center}
  .vinyl-hero .quick-form{position:static !important; width:100%; max-width:100%; margin-top:2rem}
  .how-it-works-grid{grid-template-columns:1fr; gap:1.5rem}
  .step-card{padding:1.5rem}
}

/* Testimonials styles */
.testimonials{display:grid; gap:2rem; max-width:800px; margin:0 auto}
.testimonials blockquote{background:#fff; border:1px solid #eef1f4; border-radius:16px; padding:2rem; margin:0; box-shadow: var(--shadow)}
.testimonials blockquote p{margin:0 0 1rem; font-size:1.1rem; line-height:1.6}
.testimonials cite{color:var(--muted); font-style:normal; font-weight:600}

/* Testimonial slider styles */
.testimonial-slider{position:relative; max-width:700px; margin:0 auto}
.t-slide{display:none; text-align:center; background:#fff; border:1px solid #eef1f4; border-radius:16px; padding:2.5rem 2rem; margin:0; box-shadow: var(--shadow)}
.t-slide.active{display:block}
.t-slide p{margin:0 0 1.5rem; font-size:1.2rem; line-height:1.6; font-style:italic}
.t-slide cite{color:var(--muted); font-style:normal; font-weight:600; font-size:.95rem}
.t-controls{display:flex; justify-content:center; gap:1rem; margin-top:1.5rem}
.t-prev, .t-next{background:var(--green); color:#fff; border:none; border-radius:50%; width:40px; height:40px; font-size:1.2rem; cursor:pointer; transition:.2s ease; display:flex; align-items:center; justify-content:center}
.t-prev:hover, .t-next:hover{background:var(--green-700); transform:scale(1.1)}

/* Card body styles */
.card-body{padding:1.5rem}

/* Checklist styles */
.checklist{list-style:none; padding:0; margin:1rem 0}
.checklist li{display:flex; align-items:center; gap:.5rem; margin:.5rem 0}
.checklist li::before{content:'✓'; color:var(--green); font-weight:700; font-size:1.1rem}

/* Enhanced hero elements */
.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%{transform:scale(1)} 50%{transform:scale(1.05)} 100%{transform:scale(1)}}

.trust-enhanced{margin-top:2rem}
.trust-stats{display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5rem; margin-bottom:1.5rem; text-align:center}
.stat{background:rgba(255,255,255,0.95); padding:1rem; border-radius:12px; box-shadow:var(--shadow)}
.stat strong{display:block; font-size:1.5rem; font-weight:800; color:var(--green); margin-bottom:.25rem}
.stat span{font-size:.85rem; color:var(--muted); font-weight:600}

/* Enhanced form styles */
.urgent-form{border:3px solid var(--green); position:relative; background:linear-gradient(135deg, #fff 0%, #f8fffe 100%); margin-top: 1.5rem; overflow: visible; padding-bottom: 1.5rem}
.urgent-form::before{content:'🔥 POPULAR'; position:absolute; top:-12px; right:1rem; background:var(--green); color:#fff; padding:.25rem .75rem; border-radius:20px; font-size:.75rem; font-weight:700; z-index: 10}
.form-header{text-align:center; margin-bottom:1.5rem; border-bottom:2px solid #eef1f4; padding-bottom:1rem}
.form-header h3{margin:0 0 .5rem; color:var(--green); font-size:1.3rem}
.urgency{margin:0; color:#e74c3c; font-weight:600; font-size:.9rem; background:#fff3f3; padding:.5rem; border-radius:6px; border-left:4px solid #e74c3c}

/* Button enhancements */
.btn-primary.pulse{box-shadow:0 0 0 0 rgba(8, 138, 75, 0.4); animation:pulse-shadow 2s infinite}
@keyframes pulse-shadow{0%{box-shadow:0 0 0 0 rgba(8, 138, 75, 0.4)} 70%{box-shadow:0 0 0 10px rgba(8, 138, 75, 0)} 100%{box-shadow:0 0 0 0 rgba(8, 138, 75, 0)}}

.form-incentive{background:linear-gradient(135deg, #fff3cd, #ffeaa7); border:1px solid #fadb84; padding:.75rem; margin:.75rem 0; border-radius:8px; text-align:center; font-size:.9rem}

/* Enhanced trust section */
.enhanced-trust{background:linear-gradient(135deg, #f8fffe 0%, #eef9f6 100%); border-top:1px solid #e0f2e7; border-bottom:1px solid #e0f2e7; margin-top:0; padding-top:2rem; position:relative; z-index:1}
.trust-banner{display:grid; gap:1.5rem; align-items:center}
.live-activity{text-align:center; color:#e74c3c; font-weight:600; font-size:.9rem; background:#fff; padding:.75rem; border-radius:25px; box-shadow:var(--shadow); animation:pulse-gentle 3s infinite}
@keyframes pulse-gentle{0%, 100%{opacity:1} 50%{opacity:0.8}}
.trust-logos{display:grid; grid-template-columns:repeat(auto-fit, minmax(120px, 1fr)); gap:1rem}
.trust-badge{display:flex; align-items:center; gap:.75rem; background:#fff; padding:1rem; border-radius:12px; box-shadow:var(--shadow); transition:.2s ease}
.trust-badge:hover{transform:translateY(-2px); box-shadow:0 8px 25px rgba(0,0,0,0.15)}
.badge-icon{font-size:1.5rem}
.trust-badge div strong{display:block; font-weight:700; color:var(--green)}
.trust-badge div small{color:var(--muted); font-size:.8rem}

/* Enhanced testimonials */
.enhanced-testimonials{background:linear-gradient(135deg, #f8fffe 0%, #ffffff 100%)}
.recent-indicator{color:var(--green); font-weight:600; margin:0}
.rating{margin-bottom:.75rem; font-size:1.1rem}
.t-slide .location, .t-slide .date{color:var(--green); font-weight:500}

/* Enhanced CTA */
.enhanced-cta{background:linear-gradient(135deg, var(--green) 0%, #066d3b 100%); color:#fff}
.enhanced-cta .cta-inner{display:grid; grid-template-columns:1fr auto; gap:3rem; align-items:center}
.cta-content h3{color:#fff; margin-bottom:1rem}
.cta-content p{color:#e8f5e8; margin-bottom:1.5rem}
.urgency-count{background:#fff; color:var(--green); padding:.25rem .5rem; border-radius:4px; font-weight:700}
.cta-benefits{list-style:none; padding:0; margin:0}
.cta-benefits li{color:#fff; margin:.5rem 0; font-weight:500}
.cta-buttons{text-align:center}
.cta-buttons .btn{margin:.5rem 0; width:100%; max-width:280px}
.guarantee{color:#d4edda; font-size:.9rem; margin:1rem 0 0; font-weight:500}

/* Lead magnet */
.lead-magnet{background:linear-gradient(135deg, #fff5f5 0%, #fff9f9 100%); border:2px dashed #ff6b6b; border-radius:12px; padding:2rem; margin:2rem 0; text-align:center}
.magnet-content h4{color:#ff6b6b; margin-bottom:1rem}
.magnet-content p{margin-bottom:1.5rem}
.magnet-form{display:flex; gap:1rem; max-width:400px; margin:0 auto 1rem}
.magnet-form input{flex:1; padding:.75rem; border:2px solid #ff6b6b; border-radius:8px; font-size:1rem}
.magnet-form .btn{white-space:nowrap}
.privacy{font-size:.85rem; color:var(--muted); margin:0}

@media (max-width: 980px){
  .nav{display:none; position:absolute; right:1rem; top:100%; background:#fff; border:1px solid #eef1f4; border-radius:12px; padding:.8rem 0; box-shadow: var(--shadow); min-width:160px; z-index:1000}
  .nav a{display:block; padding:.8rem 1rem; border-radius:0; transition:.2s ease} 
  .nav a:hover{background:#f8f9fa; color:var(--green)}
  .nav.show{display:block} .hamburger{display:block}
  .two-col{grid-template-columns:1fr} .cards-3{grid-template-columns:1fr 1fr} .gallery-3{grid-template-columns:1fr 1fr}
  .process .steps{grid-template-columns:1fr 1fr} 
  .hero-inner{grid-template-columns:1fr; gap:2.5rem; text-align:center; padding:180px 0 50px}
  .mobile-cta{display:grid}
  .floating-chat{bottom:80px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .cta-inner{flex-direction:column; text-align:center}
  .hero{height:85vh; background-attachment:fixed; background-position:center center}
  .quick-form{margin-top:2rem; max-width:380px; margin-left:auto; margin-right:auto; padding:1.5rem; position:relative !important; z-index:1 !important}
  .hero-ctas{justify-content:center; gap:1rem; margin-top:1.5rem}
  .trust{max-width:280px; margin:1.5rem auto 0; text-align:left}
  .hero h1{line-height:1.15; margin-bottom:0.75rem}
  .hero .lead{margin-bottom:0; font-size:1.05rem}
}
@media (max-width: 640px){
  .cards-3, .gallery-3{grid-template-columns:1fr}
  .header-inner{height:64px}
  .process .steps{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .form .two{grid-template-columns:1fr}
  .topbar{font-size: 0.8rem}
  .topbar-inner{height:42px; padding:0 0.8rem; gap: 0.5rem}
  .topbar-license{font-size: 0.7rem}
  .topbar-phone{display: none !important}
  .topbar .btn-small{padding: 0.35rem 0.8rem; font-size: 0.8rem}
  .hero{height:80vh; padding-top:0; background-position:center center; background-attachment:fixed}
  .hero-inner{padding:60px 0 30px; gap:2rem}
  .hero h1{font-size:2.2rem; line-height:1.1; margin:30px 0 0.5rem 0; font-weight:700}
  .hero .lead{font-size:1.1rem; margin:0.25rem 0 1rem; line-height:1.3; font-weight: 600}
  .hero-highlights{gap:0.5rem; margin:1rem 0}
  .hero-highlights .highlight{padding:0.4rem 0.8rem; font-size:0.8rem}
  .hero-ctas{flex-direction:column; align-items:stretch; gap:.8rem; max-width:300px; margin:0 auto}
  .hero-ctas .btn{width:100%; text-align:center; padding:1rem; font-size:1rem; font-weight:600}
  .quick-form{margin-top:2rem; padding:1.75rem 1.5rem; max-width:320px}
  .quick-form h3{font-size:1.4rem; margin-bottom:1rem; text-align:center}
  .quick-form input, .quick-form select{padding:1rem; font-size:1rem; margin-bottom:0.5rem}
  .quick-form .btn{padding:1rem; font-size:1rem}
  .trust{font-size:0.9rem; margin-top:1.25rem; line-height:1.3}
  .logos{font-size:0.85rem; gap:0.8rem; padding:12px 0}
  .section{padding:35px 0}
  .section-head{margin-bottom:24px; text-align:center}
  .section-head h2{font-size:1.75rem; margin-bottom:0.75rem}
  .section-head p{font-size:1rem; color:var(--muted)}
  
  /* Project page mobile button spacing */
  .project-slideshow{margin-bottom:2rem}
  .btn-outline{margin-top:1.5rem; margin-left:0 !important; display:block; width:100%; clear:both}
  .btn-primary{margin-bottom:1rem; display:block; width:100%; clear:both}
  div[style*="margin-top: 2rem"] .btn{margin-left:0 !important; display:block; width:100%}
  div[style*="margin-top: 2rem"] .btn + .btn{margin-top:1.5rem}
  
  /* Enhanced mobile responsiveness */
  .trust-stats{grid-template-columns:repeat(2, 1fr)}
  .trust-logos{grid-template-columns:repeat(2, 1fr)}
  .enhanced-cta .cta-inner{grid-template-columns:1fr; gap:2rem; text-align:center}
  .cta-buttons .btn{width:100%; margin:.75rem 0}
  .magnet-form{flex-direction:column; gap:.75rem}
  .magnet-form .btn{width:100%}
  .urgency-text{font-size:.75rem; padding:.2rem .5rem}
  .card{margin-bottom:1.5rem; border-radius:16px}
  .card-body{padding:1.5rem}
  .card-body h3{font-size:1.3rem; margin-bottom:0.75rem}
  .card-body p{font-size:0.95rem; line-height:1.5; margin-bottom:1rem}
  .container{width:94%; padding:0 12px}
}

