/* Gutenberg compatibility + styling layer for driving-park theme */

:root{
  --dp-primary:#00AACC;
  --dp-secondary:#1B5E9E;
  --dp-text:#111827;
  --dp-muted:#6b7280;
  --dp-border:#e5e7eb;
  --dp-card:#ffffff;
  --dp-shadow: 0 20px 40px -10px rgba(0,0,0,.12);
  --dp-shadow-soft: 0 10px 25px -5px rgba(0,0,0,.10);
}

/* Typography */
body{
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--dp-text);
}

/* Layout widths similar to Tailwind max-w-7xl */
.wp-block-group.is-layout-constrained,
.wp-block-columns,
.wp-block-cover__inner-container{
  max-width: 80rem; /* 1280px */
  margin-left:auto;
  margin-right:auto;
  padding-left: 1rem;
  padding-right: 1rem;
}

/* Full width */
.alignfull{
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: 100vw;
  max-width: 100vw;
}

.site-content{ overflow-x:hidden; }

/* Gutenberg defaults */
.wp-block-columns{ gap: 2rem; }
.wp-block-heading{ line-height: 1.1; }

/* Buttons */
.wp-block-button__link{
  border-radius: 999px;
  padding: 0.95rem 1.65rem;
  font-weight: 700;
  text-decoration:none;
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.wp-block-button__link:hover{ transform: translateY(-2px); box-shadow: 0 10px 25px -5px rgba(0,170,204,.35); }

/* Default button color if not set */
.wp-block-button__link:not(.has-background){ background: var(--dp-primary); color:#fff; }

/* Cover typography */
.wp-block-cover .wp-block-heading,
.wp-block-cover p{ color:#fff; }

/* Make gallery look like cards */
.wp-block-gallery img{ border-radius: 1rem; }

/* -----------------------------
   Custom classes used by pattern
   ----------------------------- */

/* Card base */
.dp-card{
  background: var(--dp-card);
  border: 1px solid var(--dp-border);
  border-radius: 1.25rem; /* ~rounded-2xl */
  box-shadow: var(--dp-shadow-soft);
  padding: 2rem;
}
.dp-card:hover{ box-shadow: var(--dp-shadow); transform: translateY(-2px); }
.dp-card{ transition: transform .2s ease, box-shadow .2s ease; }

/* Service grid cards: slightly tighter */
.dp-service-card{ padding: 2rem; }

/* Pricing cards */
.dp-pricing-card{ padding: 2rem; }
.dp-pricing-featured{
  border-width: 2px;
  border-color: rgba(0,170,204,.65);
  box-shadow: 0 25px 50px -12px rgba(0,170,204,.25);
}

/* Sections spacing */
.dp-section{ padding-top: 6rem; padding-bottom: 6rem; }
.dp-section--muted{ background: #f9fafb; }

/* Better lists like the old checkmarks */
.dp-checklist{ list-style:none; padding-left:0; }
.dp-checklist li{ position:relative; padding-left: 2.1rem; margin: .9rem 0; font-weight: 600; color:#374151; }
.dp-checklist li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:.15rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: var(--dp-primary);
  color:#fff;
  font-size: .9rem;
}

/* About image looks like onepager */
.dp-about-image img{ border-radius: 1.25rem; box-shadow: var(--dp-shadow); }

/* Contact columns: make inner groups/cards consistent */
.dp-contact .dp-card{ padding: 2rem; }

/* Headings feel closer to the old onepager */
.dp-hero-title{ font-size: clamp(2.7rem, 5.5vw, 4.6rem); letter-spacing: -0.02em; }
.dp-h2{ font-size: clamp(2rem, 3vw, 3rem); letter-spacing: -0.01em; }

/* Reduce Gutenberg default margins a bit */
.wp-block-group > *{ margin-top: 0; }
.wp-block-group > * + *{ margin-top: 1rem; }
