/* Page-scoped additions preserve the existing Irish Desk landing page. */
body { font-family: "Montserrat", "Segoe UI", sans-serif; }
body > header { box-sizing: border-box; width: 100%; }
.contenedor-cards .card { box-sizing: border-box; max-width: 100%; }
.portada h1 { box-sizing: border-box; overflow-wrap: anywhere; }
.portada > div { min-width: 0; max-width: 100%; }
.irish-hub, .irish-desk-people { box-sizing: border-box; max-width: 1200px; margin: 0 auto; padding: clamp(36px, 6vw, 80px) 24px; color: #29251f; }
.irish-hub [hidden] { display: none !important; }
.irish-hub *, .irish-desk-people * { box-sizing: border-box; }
.irish-hub { scroll-margin-top: 110px; }
.irish-hub-intro { max-width: 880px; }
.irish-hub-eyebrow { font-size: .75rem; font-weight: 700; letter-spacing: .1em; color: #6b5b40; }
.irish-hub h2, .irish-desk-people h2 { font-size: clamp(1.65rem, 3.5vw, 2.5rem); line-height: 1.2; margin: 16px 0; }
.irish-hub p, .irish-desk-people p { line-height: 1.75; margin: 12px 0; }
.irish-hub-subheading { font-size: 1.15rem; font-weight: 600; }
.irish-hub-controls { margin: 28px 0 36px; padding: 24px; background: #f8f0e4; border: 1px solid #dfd0b9; border-radius: 16px; }
.irish-hub-controls label { display: block; font-weight: 700; margin-bottom: 10px; }
.irish-hub-controls input[type="search"] { width: 100%; max-width: none; min-width: 0; padding: 14px 16px; border: 1px solid #8a7859; border-radius: 8px; background: #fff; color: #29251f; font: inherit; }
.irish-hub-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.irish-hub-filters button, .irish-hub-reset { min-height: 44px; padding: 10px 14px; border: 1px solid #8a7859; border-radius: 8px; background: #fff; color: #463c2d; font: inherit; cursor: pointer; }
.irish-hub-filters button[aria-pressed="true"] { background: #6b5b40; color: #fff; }
.irish-hub-results { font-size: .9rem; }
.irish-hub-reset { background: transparent; }
.irish-hub :focus-visible, .faq-section summary:focus-visible { outline: 3px solid #295875; outline-offset: 4px; }
.irish-hub-topic { margin: 36px 0; scroll-margin-top: 110px; }
.irish-hub-topic h3 { font-size: 1.35rem; line-height: 1.4; margin-bottom: 16px; }
.irish-hub-question { margin: 10px 0; border: 1px solid #dfd0b9; border-radius: 10px; background: #fff; scroll-margin-top: 110px; }
.irish-hub-question summary { padding: 20px; cursor: pointer; font-weight: 650; line-height: 1.55; overflow-wrap: anywhere; }
.irish-hub-question[open] summary { background: #f8f0e4; border-radius: 10px 10px 0 0; }
.irish-hub-answer { padding: 20px; line-height: 1.8; white-space: pre-line; overflow-wrap: anywhere; }
.irish-hub-empty { padding: 20px; background: #f8f0e4; border-radius: 10px; }
.irish-hub-disclaimer { font-size: .85rem; color: #5d5548; }
.irish-hub-cta { margin-top: 30px; padding: 28px; border-radius: 16px; background: #f8f0e4; }
.irish-hub-cta .btn-cta { display: inline-block; margin-top: 10px; }
.irish-desk-people { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.irish-desk-people article { padding: 26px; border: 1px solid #dfd0b9; border-radius: 16px; background: #fdf8f0; }
.irish-desk-people h2 { font-size: 1.5rem; }
.irish-desk-people a { color: #295875; text-decoration: underline; }
.faq-section details.accordion-item summary { padding-right: 28px; list-style: none; }
.faq-section details.accordion-item summary::-webkit-details-marker { display: none; }
.faq-section details.accordion-item[open] .accordion-header::after { content: '−'; }
.faq-section details.accordion-item .accordion-content { max-height: none; overflow: visible; }
.faq-section details.accordion-item[open] .accordion-content { padding-top: 14px; }
.servicios-lista .accordion-content { max-height: none; }
.servicios-lista [hidden] { display: none !important; }
/* One testimonial block serves every viewport; the original customer quotation is unchanged. */
.testimonio.main-container { display: flex; }
@media (max-width: 760px) {
    body > header { padding-left: 18px; padding-right: 18px; }
    body > header #contenedor_logo { max-width: calc(100% - 44px); }
    body > header #contenedor_logo svg { max-width: 100%; height: auto; }
    body > header #contenedor_menu { width: auto; min-width: 24px; flex: 1; justify-content: flex-end; }
    .testimonio.main-container { flex-direction: column; padding: 24px 18px; }
    .testimonio .testimonio-content { min-width: 0; min-height: 0; }
    .irish-desk-people { grid-template-columns: minmax(0, 1fr); }
    .irish-hub, .irish-desk-people { padding-left: 18px; padding-right: 18px; }
    .irish-hub-controls, .irish-hub-cta { padding: 18px; }
    .irish-hub-question summary, .irish-hub-answer { padding: 16px; }
}
