.clients { text-align:center; }
.hero { min-height:690px; background-image:url('/assets/sonido-profesional.png') !important; background-position:center right !important; background-size:cover !important; }
.hero-copy { padding:60px 0; }
.client-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:20px; align-items:center; }
.client-grid img { width:100%; max-height:115px; object-fit:contain; filter:grayscale(1); }
.testimonials { background:#f4f4f4; }
.quotes { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
blockquote { margin:0; padding:26px; background:#fff; font-size:18px; }
.closing { background:#101010; color:#fff; text-align:center; padding:28px 0 70px; }
.closing h2 { max-width:900px; margin:0 auto 32px; font-size:clamp(28px,4vw,48px); line-height:1.15; }
footer img { width:110px; max-height:74px; object-fit:contain; }
@media (max-width:800px) { .client-grid,.quotes { grid-template-columns:1fr; } .client-grid img { max-height:90px; } }

/* Reglas verificadas contra la portada pública original; no se carga código de WordPress. */
.site-header { min-height:178px; padding:25px max(24px, calc((100% - 1320px) / 2)); background:#111; }
.brand img { width:300px; height:auto; display:block; }
nav { gap:32px; }
nav a { font-family:Arial, Helvetica, sans-serif; font-size:16px; font-weight:400; }
nav a.with-menu::after { content:'⌄'; margin-left:8px; font-size:18px; vertical-align:2px; }
.menu-group { position:relative; color:#fff; }
.menu-group summary { cursor:pointer; list-style:none; text-transform:uppercase; font-family:Arial, Helvetica, sans-serif; font-size:16px; white-space:nowrap; }
.menu-group summary::-webkit-details-marker { display:none; }
.menu-group summary::after { content:'⌄'; margin-left:8px; font-size:18px; vertical-align:2px; }
.submenu { position:absolute; z-index:20; top:30px; left:-20px; min-width:255px; padding:12px 0; background:#111; box-shadow:0 12px 24px #0008; }
.submenu a { display:block; padding:10px 20px; color:#fff; font-size:14px; text-transform:none; white-space:nowrap; }
.submenu a:hover, .submenu a:focus { background:#fa823f; color:#fff; }
.hero { min-height:690px; background-color:#f7f7f7; }
.hero-copy { width:min(1320px, calc(100% - 48px)); padding-top:200px; padding-bottom:74px; }
.hero h1 { max-width:760px; font-family:Arial, Helvetica, sans-serif; font-size:64px; font-weight:700; line-height:1.42; letter-spacing:-.035em; margin-bottom:36px; }
.hero p { max-width:590px; font-size:17px; font-weight:600; line-height:1.35; }
.button { background:#fa823f; color:#fff; border-radius:0; font-size:20px; font-weight:300; letter-spacing:0; padding:14px 22px; text-transform:none; }
.services { width:100%; max-width:none; padding:72px max(24px, calc((100% - 1140px) / 2)) 118px; background:#fa823f; }
.services h2 { color:#fff; text-align:center; text-transform:uppercase; margin:0 0 66px; font-size:52px; }
.cards { gap:50px; }
.cards article { min-height:525px; padding:20px 20px 28px; background:#fff; border-radius:20px; text-align:center; }
.cards img { height:240px; border-radius:16px; }
.cards h3 { margin:22px 0 18px; font-weight:700; }
.cards p { margin:0; font-size:16px; line-height:1.65; }
.feature { background:#fff; color:#000; }
.feature img { min-height:600px; height:600px; object-fit:contain; }
.feature div { padding:110px clamp(36px, 7vw, 110px); }
.feature h2 { color:#fa823f; font-size:clamp(34px,4vw,50px); font-weight:700; }
.feature p { color:#333; font-size:16px; }
.button-light { background:#fa823f; color:#fff; }
.closing { background:#000; }
footer img { width:150px; max-height:none; }
 .clients { padding-top:120px; padding-bottom:85px; }
.clients h2 { margin:0 0 70px; font-size:44px; }
.testimonials .section { padding-top:80px; padding-bottom:90px; }
.testimonials h2 { margin:0 0 46px; font-size:48px; }
@media (max-width:800px) { .hero-copy { width:calc(100% - 48px); padding-top:100px; } .hero h1 { font-size:46px; line-height:1.18; } .brand img { width:190px; } }
@media (max-width:800px) { nav { justify-content:flex-start; } .menu-group { width:100%; } .submenu { position:static; width:100%; margin-top:8px; } }

.inner-hero { min-height:530px; display:flex; align-items:center; background-position:center; background-size:cover; color:#fff; }
.inner-hero > div { width:min(1200px, calc(100% - 48px)); margin:auto; padding:60px 0; }
.inner-hero h1 { max-width:780px; margin:0 0 22px; font-size:clamp(42px,5vw,68px); line-height:1.08; }
.inner-hero p { max-width:640px; font-size:20px; line-height:1.45; }
.origin-details h2 { text-align:center; font-size:clamp(28px,3vw,44px); margin:0 0 48px; }
.origin-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.origin-cards article { min-height:230px; padding:36px 30px; border-top:5px solid #fa823f; box-shadow:0 8px 30px #00000015; }
.origin-cards h3 { margin:0 0 18px; font-size:20px; }
.origin-cards p { line-height:1.6; }
.route-cta { padding:85px 24px; text-align:center; background:#000; color:#fff; }
.route-cta h2 { margin:0 0 30px; font-size:clamp(30px,4vw,48px); }
.contact-hero { background:linear-gradient(90deg,#000c,#0005), url('/assets/eventos.png') center/cover; }
@media (max-width:800px) { .origin-cards { grid-template-columns:1fr; } .inner-hero { min-height:440px; } }

.priority-feature { display:grid; grid-template-columns:1fr 1fr; min-height:520px; }
.priority-feature > div { padding:90px max(24px, calc((100vw - 1140px) / 2)); padding-right:clamp(36px, 7vw, 110px); }
.priority-feature h2 { margin:0 0 26px; color:#fa823f; font-size:clamp(30px, 3.5vw, 48px); line-height:1.15; }
.priority-feature p { max-width:580px; color:#333; font-size:17px; line-height:1.7; }
.priority-feature .button { margin-top:18px; }
.priority-feature aside { display:grid; place-items:center; padding:48px; color:#fff; background:linear-gradient(135deg,#171717,#555); }
.priority-feature aside h2 { max-width:460px; color:#fff; text-align:center; }
.priority-gallery { text-align:center; }
.priority-gallery > div { display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.priority-gallery img { width:100%; aspect-ratio:1; object-fit:cover; }
@media (max-width:800px) { .priority-feature { grid-template-columns:1fr; } .priority-feature > div { padding:62px 24px; } .priority-feature aside { min-height:260px; } .priority-gallery > div { grid-template-columns:repeat(2,1fr); } }
