/* Executive AV brand layer on top of the shared RCK site stylesheet (style.css is kept identical). */
:root, [data-theme='light'] {
  --font-display: 'Outfit', 'Plus Jakarta Sans', 'Helvetica Neue', sans-serif;
  --color-navy: #1c2033; --color-navy-dark: #12152a;
  --color-orange: #e0602a; --color-orange-hover: #c9521f; --color-orange-light: #fdf0ea;
  --color-primary: #e0602a; --color-primary-hover: #c9521f; --color-primary-active: #ad4518;
}
[data-theme='dark'] { --color-orange-light: #2a1a10; }

/* EA mark + wordmark */
.ea-logo { flex-direction: row !important; align-items: center; gap: 10px; }
.ea-mark { width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; flex-shrink: 0;
  background: linear-gradient(145deg, #2a3150, #1c2033 60%, #12152a); color: #fff;
  font: 800 16px/1 'Outfit', sans-serif; letter-spacing: .02em; position: relative; box-shadow: 0 2px 8px rgba(18,21,42,.25); }
.ea-mark::after { content: ''; position: absolute; left: 11px; right: 11px; bottom: 8px; height: 2px; border-radius: 2px; background: #e0602a; }
.ea-word { display: flex; flex-direction: column; gap: 3px; line-height: 1; }
.ea-word b { font: 800 17px/1 'Outfit', sans-serif; letter-spacing: .06em; color: var(--color-navy); white-space: nowrap; }
.ea-word small { font: 600 9.5px/1 'Outfit', sans-serif; letter-spacing: .2em; color: var(--color-text-muted); white-space: nowrap; }
[data-theme='dark'] .ea-word b { color: #fff; }
[data-theme='dark'] .ea-mark { background: linear-gradient(145deg, #343c60, #232842); }
.logo-footer .ea-word b { color: #fff; font-size: 20px; }
.logo-footer .ea-word small { color: rgba(255,255,255,.6); }
.logo-footer .ea-mark { width: 48px; height: 48px; font-size: 19px; background: linear-gradient(145deg, #343c60, #232842); }
@media (max-width: 600px) { .ea-mark { width: 36px; height: 36px; font-size: 14px; } .ea-word b { font-size: 15px; } .ea-word small { font-size: 8.5px; letter-spacing: .16em; } }
@media (max-width: 380px) { .ea-word small { display: none; } }

/* Estimator iframe grows to the estimator's height (the page reports it) */
.estimator-iframe { min-height: 640px; transition: height .2s ease; }

/* No construction photos: navy AV artwork until Executive AV job photos are added */
.intro-bg-image { background:
  radial-gradient(circle at 82% 30%, rgba(224,96,42,.35) 0 2px, transparent 3px) 0 0/28px 28px,
  radial-gradient(ellipse at 85% 40%, #2b3252 0%, #1c2033 45%, #12152a 100%); }
.intro-overlay { background: linear-gradient(135deg, rgba(18,21,42,.88) 0%, rgba(28,32,51,.6) 60%, rgba(224,96,42,.25) 100%); }
.service-image { position: relative; background-color: #1c2033; background-repeat: no-repeat; background-position: center; background-size: auto 62%; }
.service-image::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 50% 55%, rgba(224,96,42,.22), transparent 60%); }
.service-img-1 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Crect x='34' y='14' width='52' height='92' rx='10'/%3E%3Ccircle cx='60' cy='70' r='20'/%3E%3Ccircle cx='60' cy='70' r='7' stroke='%23e0602a'/%3E%3Ccircle cx='60' cy='34' r='6'/%3E%3Cpath d='M98 46c6 8 6 20 0 28M106 38c10 13 10 31 0 44M22 46c-6 8-6 20 0 28M14 38c-10 13-10 31 0 44' stroke='%23e0602a' opacity='.8'/%3E%3C/svg%3E"); }
.service-img-2 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 120' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Crect x='10' y='20' width='120' height='70' rx='6'/%3E%3Cpath d='M58 44l24 11-24 11z' stroke='%23e0602a' fill='%23e0602a' fill-opacity='.25'/%3E%3Cpath d='M50 104h40M70 90v14'/%3E%3C/svg%3E"); }
.service-img-3 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M48 86h24M51 98h18'/%3E%3Cpath d='M74 74c1-6 4-10 8-14a26 26 0 1 0-44 0c4 4 7 8 8 14z'/%3E%3Cpath d='M60 6v8M24 20l6 6M96 20l-6 6M10 52h8M102 52h8' stroke='%23e0602a'/%3E%3Cpath d='M54 52l6-10 6 10-6 10z' stroke='%23e0602a'/%3E%3C/svg%3E"); }
.about-image { background:
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 150' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' opacity='.9'%3E%3Crect x='40' y='30' width='120' height='68' rx='5'/%3E%3Cpath d='M80 116h40M100 98v18'/%3E%3Crect x='14' y='44' width='18' height='54' rx='4'/%3E%3Crect x='168' y='44' width='18' height='54' rx='4'/%3E%3Ccircle cx='23' cy='80' r='6' stroke='%23e0602a'/%3E%3Ccircle cx='177' cy='80' r='6' stroke='%23e0602a'/%3E%3Cpath d='M70 64h60' stroke='%23e0602a' opacity='.6'/%3E%3C/svg%3E") center/62% no-repeat,
  radial-gradient(ellipse at 50% 45%, #2e3658 0%, #1c2033 55%, #12152a 100%); }

/* Gallery placeholder until photos are picked in the app */
.gallery-grid:has(.gallery-empty) { columns: 1; }
.gallery-empty { column-span: all; break-inside: avoid; padding: 48px 20px; text-align: center; border: 1px dashed rgba(255,255,255,.25);
  border-radius: 14px; color: rgba(255,255,255,.7); font-size: 15px; }
