:root{
  --roma-bg: #0b0b10;
  --roma-surface: #12121a;
  --roma-surface-2: #171722;
  --roma-text: #f3f3f5;
  --roma-muted: #b8b8c2;
  --roma-border: rgba(255,255,255,.10);
  --roma-accent: #f28c16; /* from logo */
  --roma-accent-2: #ffb45a;
  --roma-radius: 18px;
  --roma-shadow: 0 10px 40px rgba(0,0,0,.45);
  --roma-max: 1180px;
}

/* Base */
body{
  background: var(--roma-bg);
  color: var(--roma-text);
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  letter-spacing: .1px;
}

h1,h2,h3,h4,h5,h6{
  font-family: "Space Grotesk", Inter, system-ui, sans-serif;
  letter-spacing: .2px;
}

/* Links */
a{ color: var(--roma-text); }
a:hover{ color: var(--roma-accent); }

/* Astra containers: keep it cinematic and wide */
.ast-container, .site-content .ast-container{
  max-width: var(--roma-max);
}

/* Sections helpers */
.roma-section{
  border: 1px solid var(--roma-border);
  background: linear-gradient(180deg, var(--roma-surface), var(--roma-bg));
  border-radius: var(--roma-radius);
  box-shadow: var(--roma-shadow);
  padding: clamp(18px, 3vw, 36px);
}

.roma-grid{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 18px;
}

/* Buttons */
.wp-block-button__link,
button, input[type="submit"], .button, .ast-button{
  border-radius: 999px !important;
  background: var(--roma-accent) !important;
  color: #0b0b10 !important;
  border: 0 !important;
  box-shadow: 0 10px 24px rgba(242,140,22,.25);
  font-weight: 600;
}
.wp-block-button__link:hover,
button:hover, input[type="submit"]:hover, .button:hover, .ast-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
}

/* Forms */
input, textarea, select{
  background: var(--roma-surface-2);
  color: var(--roma-text);
  border: 1px solid var(--roma-border);
  border-radius: 12px;
}
input:focus, textarea:focus, select:focus{
  outline: none;
  border-color: rgba(242,140,22,.55);
  box-shadow: 0 0 0 3px rgba(242,140,22,.18);
}

/* Cards (for services / projects) */
.roma-card{
  border: 1px solid var(--roma-border);
  background: radial-gradient(1200px 600px at 20% 10%, rgba(242,140,22,.10), transparent 35%),
              linear-gradient(180deg, var(--roma-surface-2), var(--roma-bg));
  border-radius: 20px;
  box-shadow: var(--roma-shadow);
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease;
}
.roma-card:hover{
  transform: translateY(-2px);
  border-color: rgba(242,140,22,.35);
}

.roma-card__inner{ padding: 18px; }
.roma-card__eyebrow{
  color: var(--roma-accent-2);
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.roma-card__title{
  margin: 8px 0 8px;
  font-size: 20px;
}
.roma-card__text{ color: var(--roma-muted); }

/* Project thumbnails */
.roma-thumb{
  aspect-ratio: 16/9;
  width: 100%;
  background: rgba(255,255,255,.06);
  display: block;
}

/* Footer subtle */
.site-footer{
  border-top: 1px solid var(--roma-border);
}
