/* --- Testimonials Rich Card Enhancements --- */
.testimonials-card {
  background: linear-gradient(120deg, #e3f2fd 0%, #fff 100%);
  border-radius: 1.2em;
  box-shadow: 0 6px 32px 0 rgba(13,71,161,0.10);
  margin-bottom: 2.5em;
  margin-top: 1.2em;
  padding: 2em 0 2em 0;
  max-width: 700px;
}
.testimonial-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2em;
  margin-bottom: 1.2em;
}
.testimonial-quote-wrap {
  display: flex;
  align-items: center;
  gap: 0.7em;
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 2px 8px 0 rgba(13,71,161,0.06);
  padding: 1.1em 1.5em;
  font-size: 1.18em;
  position: relative;
}
.testimonial-quote-icon {
  color: #1976d2;
  font-size: 1.5em;
  opacity: 0.7;
}
.testimonial-client {
  display: flex;
  align-items: center;
  gap: 1em;
  margin-top: 0.5em;
}
.testimonial-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 2px 8px 0 rgba(13,71,161,0.10);
  border: 3px solid #e3f2fd;
}
.testimonial-client-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.client-name {
  font-weight: 700;
  color: #0d47a1;
  font-size: 1.08em;
}
.client-role {
  color: #1976d2;
  font-size: 0.98em;
  margin-top: 0.1em;
}
@media (max-width: 700px) {
  .testimonials-card {
    padding: 1.2em 0.5em 1.2em 0.5em;
  }
  .testimonial-quote-wrap {
    padding: 0.8em 0.7em;
    font-size: 1em;
  }
  .testimonial-avatar {
    width: 48px;
    height: 48px;
  }
}
/* --- Why Choose Us Rich Enhancements --- */
.why-rich {
  background: linear-gradient(120deg, #e3f2fd 0%, #fff 100%);
  border-radius: 1.2em;
  box-shadow: 0 6px 32px 0 rgba(13,71,161,0.10);
  margin-bottom: 2.5em;
  margin-top: 1.2em;
  padding: 2em 0 2em 0;
}
.why-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.rich-checklist {
  list-style: none;
  padding: 0;
  margin: 1.2em 0 2em 0;
  display: flex;
  flex-direction: column;
  gap: 1.1em;
}
.rich-checklist li {
  font-size: 1.08em;
  display: flex;
  align-items: center;
  gap: 0.7em;
  background: #fff;
  border-radius: 0.7em;
  box-shadow: 0 2px 8px 0 rgba(13,71,161,0.06);
  padding: 0.7em 1em;
  font-weight: 500;
}
.why-icon {
  color: var(--color-primary, #0d47a1);
  font-size: 1.2em;
  min-width: 1.5em;
  text-align: center;
}
.why-imgs {
  display: flex;
  flex-direction: column;
  gap: 1.2em;
  align-items: center;
}
.why-img-card {
  background: #fff;
  border-radius: 1.2em;
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 320px;
}
.why-img-card img {
  width: 100%;
  border-radius: 1.2em 1.2em 0 0;
  display: block;
}
.why-img-caption {
  font-size: 1em;
  color: #555;
  background: #e3f2fd;
  width: 100%;
  text-align: center;
  padding: 0.5em 0;
  border-radius: 0 0 1.2em 1.2em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
}
@media (max-width: 900px) {
  .why-rich {
    padding: 1.2em 0 1.2em 0;
    margin-bottom: 1.2em;
  }
  .why-imgs {
    flex-direction: column;
    gap: 1em;
  }
  .why-img-card {
    max-width: 100%;
  }
}
/* --- Services Card Icon Alignment --- */
.card-icon-wrap {
  width: 100%;
  display: flex;
  justify-content: start;
  align-items: center;
  margin-bottom: 0.7em;
  margin-top: 0.2em;
}
.service-card .card-icon {
  font-size: 2.2em;
  color: var(--color-primary, #0d47a1);
  background: #e3f2fd;
  border-radius: 50%;
  width: 2.3em;
  height: 2.3em;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px 0 rgba(13,71,161,0.08);
}
     /* --- Services Section Rich Enhancements --- */
.services-rich {
  background: linear-gradient(120deg, #e3f2fd 0%, #fff 100%);
  border-radius: 1.2em;
  box-shadow: 0 6px 32px 0 rgba(13,71,161,0.10);
  margin-bottom: 2.5em;
  margin-top: 1.2em;
  padding: 2em 0 2em 0;
}
.services-card-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2em;
  justify-content: center;
  margin-top: 2em;
}
.service-card {
  background: #fff;
  border-radius: 1.2em;
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  padding: 2em 1.3em 1.3em 1.3em;
  max-width: 320px;
  min-width: 220px;
  flex: 1 1 260px;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: box-shadow 0.2s, transform 0.2s;
  border: 1.5px solid var(--muted, #e3f2fd);
}
.service-card:hover, .service-card:focus-within {
  box-shadow: 0 8px 32px 0 rgba(13,71,161,0.16);
  transform: translateY(-4px) scale(1.03);
}
.service-card .card-icon {
  font-size: 2.2em;
  color: var(--color-primary, #0d47a1);
  margin-bottom: 0.7em;
  margin-top: 0.2em;
}
.service-card h3 {
  font-size: 1.18em;
  font-weight: 700;
  margin-bottom: 0.5em;
  color: var(--color-accent, #1976d2);
  text-align: center;
}
.service-card p {
  font-size: 1.04em;
  color: #444;
  text-align: center;
}
@media (max-width: 900px) {
  .services-card-list {
    flex-direction: column;
    gap: 1.2em;
    align-items: stretch;
  }
  .service-card {
    max-width: 100%;
    min-width: 0;
    padding: 1.2em 0.7em 1.2em 0.7em;
  }
}
/* --- Hero Section Rich Enhancements --- */
.hero-rich {
  background: linear-gradient(120deg, #e3f2fd 0%, #fff 100%);
  border-radius: 1.2em;
  box-shadow: 0 6px 32px 0 rgba(13,71,161,0.10);
  margin-bottom: 2.5em;
  margin-top: 1.2em;
  padding-top: 1.2em;
}
.hero-title {
  font-size: 2.2rem;
  font-weight: 800;
  color: var(--color-primary, #0d47a1);
  margin-bottom: 0.5em;
  display: flex;
  align-items: center;
  gap: 0.4em;
}
.hero-lead {
  font-size: 1.18em;
  color: var(--color-accent, #1976d2);
  margin-bottom: 1.3em;
}
.highlight {
  color: #1976d2;
  background: #e3f2fd;
  border-radius: 0.4em;
  padding: 0.05em 0.3em;
  font-weight: 700;
}
.hero-points {
  margin-top: 1.2em;
  padding-left: 0;
  list-style: none;
  display: flex;
  gap: 1.5em;
  font-size: 1.08em;
}
.hero-points li {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 500;
}
.btn-lg {
  font-size: 1.13em;
  padding: 0.9em 1.5em;
}
.hero-img-card {
  background: #fff;
  border-radius: 1.2em;
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0.5em;
}
.hero-img-card img {
  width: 100%;
  max-width: 340px;
  border-radius: 1.2em 1.2em 0 0;
  display: block;
}
.hero-img-caption {
  font-size: 1em;
  color: #555;
  background: #e3f2fd;
  width: 100%;
  text-align: center;
  padding: 0.5em 0;
  border-radius: 0 0 1.2em 1.2em;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
}
@media (max-width: 900px) {
  .hero-rich {
    padding-top: 0.5em;
    margin-bottom: 1.2em;
  }
  .hero-img-card img {
    max-width: 100%;
  }
  .hero-title {
    font-size: 1.4rem;
  }
  .hero-lead {
    font-size: 1em;
  }
  .hero-points {
    flex-direction: column;
    gap: 0.7em;
  }
}
/* --- Header Bottom Shadow --- */
.site-header {
  box-shadow: 0 4px 18px -6px rgba(13,71,161,0.13);
  z-index: 100;
  position: relative;
}
/* --- About Section Enhancements --- */
.about-section.card {
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  border-radius: 1.2rem;
  background: var(--color-bg, #fff);
  padding: 2.2rem 1.5rem 1.5rem 1.5rem;
  margin-bottom: 2.5rem;
  margin-top: 2rem;
  transition: box-shadow 0.2s;
}
.about-section .section-title {
  font-size: 1.6rem;
  color: var(--color-primary, #0d47a1);
  margin-bottom: 1.2em;
  text-align: left;
  font-weight: 700;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.about-lead {
  color: var(--color-accent, #1976d2);
  font-size: 1.13em;
  margin-bottom: 1.5em;
  text-align: left;
}
.about-images-grid {
  display: flex;
  gap: 2em;
  margin-bottom: 2em;
  flex-wrap: wrap;
}
.about-images-grid .img-container {
  flex: 1 1 220px;
  max-width: 340px;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: var(--muted, #e3f2fd);
  border-radius: 1em;
  box-shadow: 0 2px 12px 0 rgba(13,71,161,0.08);
  padding: 1em 0.5em 0.7em 0.5em;
  margin-bottom: 1em;
}
.about-images-grid img {
  border-radius: 0.7em;
  width: 100%;
  height: auto;
  margin-bottom: 0.5em;
}
.img-caption {
  font-size: 0.98em;
  color: #555;
  text-align: center;
  margin-top: 0.2em;
}
.process-list {
  margin: 1.2em 0 2em 1.2em;
  padding: 0;
  list-style: none;
}
.process-list li {
  margin-bottom: 0.7em;
  font-size: 1.08em;
  display: flex;
  align-items: center;
  gap: 0.7em;
}
.process-list i {
  color: var(--color-primary, #0d47a1);
  font-size: 1.1em;
}
.expertise-list {
  margin: 1.2em 0 0 1.2em;
  padding: 0;
  list-style: none;
}
.expertise-list li {
  margin-bottom: 0.7em;
  font-size: 1.08em;
  display: flex;
  align-items: center;
  gap: 0.7em;
}
.expertise-list i {
  color: var(--color-accent, #1976d2);
  font-size: 1.1em;
}
@media (max-width: 900px) {
  .about-images-grid {
    flex-direction: column;
    gap: 1.2em;
    align-items: stretch;
  }
  .about-section.card {
    padding: 1.2rem 0.7rem 1.2rem 0.7rem;
  }
}
/* --- Rich Footer Styles --- */
.rich-footer.card {
  border-radius: 1.2em;
  border: 1.5px solid var(--muted, #e3f2fd);
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  background: var(--color-bg, #fff);
  margin-top: 2.5em;
  padding: 0;
  transition: box-shadow 0.2s, border 0.2s;
}
.footer-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2.5em 1.5em;
}
.footer-brand, .footer-contact, .footer-cta {
  flex: 1 1 180px;
  min-width: 180px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7em;
}
.footer-brand img {
  margin-bottom: 0.5em;
}
.footer-contact .footer-row {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1.08em;
  margin-bottom: 0.2em;
}
.footer-icon {
  font-size: 1.15em;
  color: var(--color-primary, #0d47a1);
  margin-right: 0.2em;
}
.footer-cta .btn-primary {
  margin-bottom: 0.7em;
}
.footer-cta .small {
  font-size: 0.98em;
}
.muted {
  color: #6c757d;
}
@media (max-width: 800px) {
  .footer-grid {
    flex-direction: column;
    gap: 1.5em 0;
    align-items: stretch;
  }
  .rich-footer.card {
    padding: 0;
  }
}
/* --- Contact Form Enhancements --- */
.contact-form .section-title {
  margin-bottom: 1.2em;
  font-size: 1.25rem;
  text-align: center;
}
.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.3em;
  margin-bottom: 1.1em;
}
.form-group label {
  font-weight: 500;
  color: var(--color-primary, #0d47a1);
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1.07em;
}
.form-group input,
.form-group textarea {
  margin-top: 0.2em;
  padding: 0.7em 1em;
  font-size: 1.08em;
  border-radius: 0.7em;
  border: 1.5px solid var(--color-primary, #0d47a1);
  background: var(--color-bg, #fff);
  color: var(--color-text, #222);
  transition: border 0.2s, box-shadow 0.2s;
  box-shadow: 0 1px 4px 0 rgba(13,71,161,0.04);
}
.form-group input:focus,
.form-group textarea:focus {
  border: 1.5px solid var(--color-accent, #1976d2);
  outline: none;
  box-shadow: 0 2px 8px 0 rgba(25,118,210,0.10);
}
.contact-form .btn-primary {
  margin-top: 1.2em;
  font-size: 1.13em;
  padding: 0.9em 0;
  border-radius: 0.7em;
}
.contact-form .contact-icon {
  font-size: 1.15em;
  margin-right: 0.3em;
  color: var(--color-primary, #0d47a1);
}
@media (max-width: 800px) {
  .contact-form.card {
    padding: 1.1rem 0.5rem;
  }
  .form-group input,
  .form-group textarea {
    font-size: 1em;
    padding: 0.6em 0.7em;
  }
}
    /* --- Contact Info Section --- */
.contact-info.card {
  box-shadow: 0 4px 24px 0 rgba(13,71,161,0.10);
  border-radius: 1.2rem;
  background: var(--color-bg, #fff);
  padding: 2rem 1.5rem 1.5rem 1.5rem;
  margin-bottom: 2rem;
  transition: box-shadow 0.2s;
}
.contact-info.card:hover, .contact-info.card:focus-within {
  box-shadow: 0 8px 32px 0 rgba(13,71,161,0.16);
}
.contact-details {
  display: flex;
  flex-direction: column;
  gap: 1.1em;
  margin: 1.2em 0 0.5em 0;
}
.contact-row {
  display: flex;
  align-items: center;
  gap: 0.7em;
  font-size: 1.08em;
}
.contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  font-size: 1.3em;
  border-radius: 50%;
  background: var(--muted, #e3f2fd);
  margin-right: 0.3em;
}

@media (max-width: 800px) {
  .contact-info.card {
    padding: 1.2rem 0.7rem 1.2rem 0.7rem;
  }
  .map-embed iframe {
    height: 180px;
  }
}
/* Contact Page Links */
.contact-links {
  display: flex;
  gap: 16px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
/* Contact Form Error Styles */
.form-error {
  color: #c62828;
  font-size: 0.97rem;
  margin-bottom: 4px;
  min-height: 1.2em;
  display: block;
}
/* About Page Images & Lists */
.about-section {
  max-width: 1000px;
  margin: 0 auto 40px auto;
  padding: 0 8px;
}
.about-images {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  margin: 24px 0 16px 0;
}
.about-images img {
  width: 100%;
  max-width: 320px;
  height: auto;
  border-radius: var(--radius-xl);
  background: #e3f2fd;
  box-shadow: 0 2px 8px rgba(13,71,161,0.08);
  aspect-ratio: 4/3;
  object-fit: cover;
}
.process-list {
  margin: 16px 0 24px 24px;
  padding-left: 16px;
  font-size: 1.05rem;
}
.process-list li {
  margin-bottom: 8px;
}
.expertise-list {
  margin: 0 0 24px 24px;
  padding-left: 16px;
  font-size: 1.05rem;
}
.expertise-list li {
  margin-bottom: 8px;
}
@media (max-width: 700px) {
  .about-images {
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
  }
}

/* TECH SEWING SOLUTIONS — styles (edit :root to change theme) */
:root {
  --blue: #0d47a1;           /* Primary blue */
  --blue-600: #1976d2;       /* Accent blue */
  --bg: #fff;                /* Background */
  --text: #222;              /* Main text */
  --muted: #e3f2fd;          /* Muted bg */
  --radius: 1.25rem;         /* Card/image radius */
  --spacing-4: 4px;
  --spacing-8: 8px;
  --spacing-12: 12px;
  --spacing-16: 16px;
  --font-main: 'Inter', system-ui, Arial, sans-serif;
  /* Phone number: edit in HTML files (footer, contact, etc) */
}
main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 16px 0 16px;
}

:root {
  --color-primary: var(--blue);
  --color-accent: var(--blue-600);
  --color-bg: var(--bg);
  --color-text: var(--text);
  --color-header: var(--blue);
  --color-link: var(--blue);
  --color-link-active: var(--blue-600);
  --color-footer: var(--blue);
  --radius-xl: var(--radius);
  --shadow-card: 0 4px 24px 0 rgba(13,71,161,0.08);
  --transition: 0.2s cubic-bezier(.4,0,.2,1);
  --font-main: var(--font-main);
  --header-height: 64px;
  --spacing: var(--spacing-16);
}

@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

html {
  box-sizing: border-box;
  font-size: 16px;
  scroll-behavior: smooth;
}
*, *:before, *:after {
  box-sizing: inherit;
}

/* Basic reset */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;color:var(--text);background:var(--bg);line-height:1.6}
img{max-width:100%;height:auto;display:block}
.container{width:min(1100px,92%);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:-999px}
.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.5rem 1rem;border:2px solid var(--blue)}

/* Header */
.site-header{position:sticky;top:0;background:#fff;box-shadow:10px;z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--blue);font-weight:800}
.brand img{width:40px;height:40px;object-fit:contain;border-radius:.4rem}
.site-title{font-weight:700}
.site-nav{display:flex;gap:1rem}
.nav-link{padding:.5rem .8rem;border-radius:.6rem;text-decoration:none;color:var(--text)}
.nav-link:hover{background:var(--card)}
.nav-link.active{color:var(--blue);font-weight:600}
.nav-toggle{display:none;background:none;border:2px solid var(--blue);padding:.3rem .6rem;border-radius:.6rem}

/* Responsive nav */
@media (max-width:820px){
  .nav-toggle{display:inline-block}
  .site-nav{position:absolute;right:4%;top:64px;background:#fff;padding:.8rem;border-radius:.8rem;box-shadow:var(--shadow);display:none;flex-direction:column}
  .site-nav.open{display:flex}
}

/* Hero */
.hero{padding:40px 0px;background:radial-gradient(1200px 600px at 10% 0%, rgba(21,101,192,.35), transparent 60%),radial-gradient(800px 400px at 100% 40%, rgba(13,71,161,.25), transparent 60%)}
.hero-grid{display:grid;gap:28px;align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:1.1fr .9fr}}
.hero-copy h1{font-size:clamp(1.8rem,2.3vw + 1rem,3rem);margin:0}
.hero-copy p{color:var(--blue);margin:60px 0 16px}
.hero-points{display:flex;gap:38px;color: rgb(0, 2, 4);flex-wrap:wrap}
.hero-media img{box-shadow:var(--shadow);transform:perspective(1000px) rotateY(-6deg);}

/* Buttons */
.btn{display:inline-block;padding:.75rem 1rem;border-radius:.8rem;text-decoration:none;font-weight:600;transition:transform .1s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--blue);color:#fff}
.btn-outline{border:2px solid var(--blue);color:var(--blue)}
.btn-light{background:#fff;color:var(--blue);box-shadow:var(--shadow)}

/* Grid & cards */
.grid{display:grid;gap:1rem}
.grid.two{grid-template-columns:1fr}
@media (min-width:860px){.grid.two{grid-template-columns:1fr 1fr}}
.cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:var(--card);padding:1rem;border-radius:var(--radius);box-shadow:var(--shadow)}

/* Sections */
.features{padding:1rem 0 2rem}
.cta-band{background:linear-gradient(180deg,var(--blue),var(--blue-600));color:#fff;margin:2rem 0}
.cta-band-inner{display:grid;gap:1rem;align-items:center;padding:2rem 0}

/* Prose */
.prose h1,.prose h2{line-height:1.15}
.prose h1{font-size:2rem}
.prose h2{font-size:1.3rem;margin-top:1.2rem}

/* Contact */
.contact-form{display:grid;gap:.8rem}
.contact-form input,.contact-form textarea{width:100%;padding:.7rem .8rem;border:1px solid #d1d5db;border-radius:.6rem;font:inherit}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--blue);border-color:transparent}
.map{width:100%;height:300px;border:0;border-radius:var(--radius);box-shadow:var(--shadow)}

/* Footer */
.site-footer{margin-top:3rem;border-top:1px solid #e5e7eb}
.footer-inner{display:flex;gap:1rem;justify-content:space-between;align-items:center;padding:1rem 0;flex-wrap:wrap}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Utilities & animations */
.rounded{border-radius:18px}
.shadow{box-shadow:var(--shadow)}
.fade-up{opacity:100;transform:translateY(14px);will-change:transform,opacity}
.zoom-in{opacity:100;transform:scale(.98);will-change:transform,opacity}
.show{opacity:1;transform:none;transition:.6s ease}

/* Services/Features Card Grid */
.services-section {
  margin: 0 auto 40px auto;
  max-width: 1200px;
}
.section-title {
  font-size: 1.5rem;
  color: var(--color-primary);
  margin-bottom: 20px;
  text-align: center;
  font-weight: 700;
}
.card-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
  margin: 32px 0;
}
.card {
  background: #fff;
  border-radius: var(--radius-xl)!important;
  box-shadow: var(--shadow-card);
  padding: 10px 16px 10px 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 180px;
  transition: box-shadow var(--transition), transform var(--transition);
  animation: fadeIn 0.7s var(--transition);
  position: relative;
}
.card:hover, .card:focus-within {
  box-shadow: 0 8px 32px rgba(13,71,161,0.16);
  transform: translateY(-2px) scale(1.02);
}
.card-icon {
  font-size: 2.2rem;
  margin-bottom: 12px;
  color: var(--color-accent);
  line-height: 1;
  width: 2.5em;
  height: 2.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e3f2fd;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(13,71,161,0.08);
}
.card h3 {
  margin: 0 0 8px 0;
  color: var(--color-primary);
  font-size: 1.1rem;
  font-weight: 700;
}
.card p {
  margin: 0;
  color: #444;
  font-size: 0.98rem;
}
section {
  margin-bottom: 40px;
}


/* Cards & grids */
.grid-2{display:grid;gap:24px}
.grid-3{display:grid;gap:24px}
@media(min-width:840px){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}}
.card img{border-radius:14px;margin-bottom:10px}
.rise{transition:transform .2s ease, box-shadow .2s ease}
.rise:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.35)}


/* Why */
.checklist{list-style:none;padding:0;margin:0}
.checklist li{margin:10px 0;padding-left:28px;position:relative}
.checklist li:before{content:'✓';position:absolute;left:7px;top:0;color:#8bd4ff}
.polaroid{display:grid;gap:12px}
.polaroid img{box-shadow:0 10px 30px rgba(0,0,0,.5);transform:rotate(-1.5deg)}
.polaroid img:last-child{transform:rotate(2deg)}

/* Testimonials */
.center{text-align:center}
.quote{font-style:italic;color:#162444;max-width:780px;margin:0 auto 18px}

/* Forms */
.contact-form{display:grid;gap:12px}
.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);;color:#0d1b39}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #5aa2ff;border-color:transparent}

/* Footer */
.site-footer{border-top:1px solid rgba(255,255,255,.1);}
.footer-grid{display:grid;gap:14px;grid-template-columns:1fr;align-items:center;padding:20px 0;}
.footer-grid .small{color:#000308}
@media(min-width:760px){.footer-grid{grid-template-columns:1fr 1fr 1fr}}
