/* Controles de participación de cada proyecto. */
.participation-ui { margin-top: 4px; }

.participation-btn {
  width: 100%;
  min-height: 52px;
  border: 1.5px solid var(--ink);
  background: var(--ink);
  color: #fff;
  padding: 13px 17px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .01em;
  cursor: pointer;
  transition: background .2s, border-color .2s, transform .2s, box-shadow .2s;
}

.participation-btn:hover {
  background: var(--blue);
  border-color: var(--blue);
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(32, 75, 234, .2);
}

.participation-btn:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 4px;
}

.participation-btn[aria-expanded="true"] {
  background: var(--blue);
  border-color: var(--blue);
}

.participation-icon {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border: 1px solid currentColor;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 19px;
  line-height: 1;
  transition: transform .35s ease;
}

.participation-btn[aria-expanded="true"] .participation-icon { transform: rotate(45deg); }

.participation-panel {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows .55s cubic-bezier(.16, 1, .3, 1), opacity .35s ease;
}

.participation-panel[aria-hidden="false"] {
  grid-template-rows: 1fr;
  opacity: 1;
}

.participation-panel-inner { overflow: hidden; }
.participation-panel .detail-body { padding: 20px 2px 15px; }
.participation-panel .detail-body > p:first-child { max-width: 72ch; font-size: 16px; line-height: 1.75; }
.archive-card > p:last-child { font-size: 15px; line-height: 1.65; }

.archive-image {
  width: 100%;
  aspect-ratio: 16 / 10;
  display: block;
  object-fit: contain;
  object-position: center top;
  margin-bottom: 20px;
  background: #eef0f4;
  border: 1px solid var(--line);
}

@media (prefers-reduced-motion: reduce) {
  .participation-panel,
  .participation-btn,
  .participation-icon {
    animation: none !important;
    transition: none !important;
  }
}

/* Unified portfolio */
.portfolio-unified .section-head{margin-bottom:2.3rem}.portfolio-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.portfolio-filter,.portfolio-tag{border:1px solid rgba(17,24,39,.14);background:#fff;color:#111827;border-radius:999px;padding:.65rem 1rem;font:700 .78rem/1 Inter,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.portfolio-filter:hover,.portfolio-tag:hover{transform:translateY(-1px);border-color:#111827}.portfolio-filter.is-active{background:#111827;color:#fff;border-color:#111827}.featured-project{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,42%);gap:1.5rem;padding:1.1rem;border:1px solid rgba(17,24,39,.12);border-radius:34px;background:linear-gradient(135deg,#f8fafc,#eef2ff);box-shadow:0 24px 70px rgba(15,23,42,.09);margin:0 0 1.6rem}.featured-copy{padding:1.4rem;display:flex;flex-direction:column;justify-content:center;gap:1rem}.featured-eyebrow,.portfolio-year{color:#64748b;font:800 .76rem/1.3 Inter,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}.featured-project h3{font-size:clamp(2rem,4vw,4.5rem);line-height:.94;letter-spacing:-.06em;margin:0;color:#111827}.featured-project p{font-size:1.02rem;line-height:1.7;color:#334155;max-width:760px}.featured-image{min-height:340px;border-radius:26px;overflow:hidden;background:#e5e7eb;display:block}.featured-image img{width:100%;height:100%;object-fit:cover;display:block}.portfolio-meta-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:0 0 1.2rem}.portfolio-count,.portfolio-note{margin:0;color:#64748b}.portfolio-note{font-size:.9rem}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.portfolio-card{display:flex;flex-direction:column;min-height:100%;border:1px solid rgba(17,24,39,.1);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 14px 36px rgba(15,23,42,.06)}.portfolio-image{aspect-ratio:16/10;background:#f1f5f9;display:block;overflow:hidden}.portfolio-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.portfolio-card:hover .portfolio-image img{transform:scale(1.035)}.portfolio-image-empty{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.portfolio-card-body{display:flex;flex-direction:column;gap:.85rem;padding:1.1rem;flex:1}.portfolio-card h3{font-size:1.35rem;line-height:1.05;letter-spacing:-.03em;margin:0;color:#111827}.portfolio-card p{font-size:.93rem;line-height:1.58;color:#475569;margin:0}.portfolio-tags{display:flex;flex-wrap:wrap;gap:.45rem}.portfolio-tag{padding:.48rem .72rem;font-size:.68rem;background:#f8fafc}.portfolio-actions{display:flex;flex-direction:column;gap:.7rem;margin-top:auto}.featured-link,.portfolio-actions .site-link{align-self:flex-start}.portfolio-detail{border-top:1px solid rgba(17,24,39,.09);padding-top:.7rem}.portfolio-detail summary{cursor:pointer;color:#111827;font-weight:800;font-size:.85rem}.portfolio-detail p{margin-top:.6rem}.blue-section .archive,.story-layout .archive{display:none}@media (max-width:980px){.featured-project{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-meta-row{align-items:flex-start;flex-direction:column}.featured-image{min-height:260px}}@media (max-width:640px){.portfolio-grid{grid-template-columns:1fr}.portfolio-filter{width:100%;justify-content:center}.featured-copy{padding:.6rem}.featured-project h3{font-size:2.2rem}.featured-image{min-height:220px}}


/* Refined testimonial layout */
.testimonials{background:#f3f6fb}.testimonials .section-head{margin-bottom:1.8rem}.testimonial-intro{margin-bottom:1.5rem}.testimonial-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:1.35rem!important;align-items:stretch!important;margin-top:2rem!important}.testimonial-card{grid-column:span 6;background:#fff!important;color:#17202d!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:30px!important;padding:2rem!important;min-height:0!important;box-shadow:0 20px 55px rgba(15,23,42,.07)!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:1.6rem!important}.testimonial-card.featured{background:#fff!important;color:#17202d!important;border-color:rgba(15,23,42,.08)!important}.testimonial-card:nth-child(2),.testimonial-card:nth-child(3),.testimonial-card:nth-child(7),.testimonial-card:nth-child(8),.testimonial-card:nth-child(9){grid-column:1/-1}.testimonial-card:nth-child(2){background:#17202d!important;color:#fff!important}.testimonial-card:nth-child(2) .relation,.testimonial-card:nth-child(2) .testimonial-person,.testimonial-card:nth-child(2) .testimonial-person span{border-color:rgba(255,255,255,.18)!important;color:rgba(255,255,255,.72)!important}.testimonial-card:nth-child(2) .linkedin-link{color:#fff!important}.testimonial-card .relation{align-self:flex-start;border:1px solid rgba(15,23,42,.12)!important;background:#fff;border-radius:999px!important;padding:.55rem .8rem!important;margin:0 0 1.1rem!important;color:#475569!important;font-size:.72rem!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}.testimonial-card.featured .relation{border-color:rgba(15,23,42,.12)!important;color:#475569!important}.testimonial-card:nth-child(2) .relation{background:rgba(255,255,255,.06)!important}.testimonial-card blockquote,.testimonial-card.featured blockquote{font-family:Georgia,serif!important;font-size:clamp(1.1rem,1.55vw,1.55rem)!important;line-height:1.42!important;letter-spacing:-.015em!important;margin:0!important;color:inherit!important}.testimonial-card:nth-child(2) blockquote,.testimonial-card:nth-child(7) blockquote,.testimonial-card:nth-child(8) blockquote,.testimonial-card:nth-child(9) blockquote{font-size:clamp(1.08rem,1.35vw,1.38rem)!important;line-height:1.5!important}.testimonial-person{margin-top:auto!important;border-top:1px solid rgba(15,23,42,.1)!important;padding-top:1rem!important;display:grid!important;gap:.35rem!important}.testimonial-card.featured .testimonial-person{border-color:rgba(15,23,42,.1)!important}.testimonial-person strong{font-size:1rem!important;line-height:1.25!important;color:inherit!important}.testimonial-person span{font-size:.82rem!important;line-height:1.45!important;color:#64748b!important}.linkedin-link{font-size:.8rem!important;font-weight:900!important;color:#204bea!important;width:max-content!important}@media(max-width:900px){.testimonial-grid{grid-template-columns:1fr!important}.testimonial-card,.testimonial-card.featured,.testimonial-card:nth-child(n){grid-column:1/-1!important}}@media(max-width:640px){.testimonial-card{border-radius:24px!important;padding:1.35rem!important}.testimonial-card blockquote,.testimonial-card.featured blockquote{font-size:1.05rem!important}}
.whatsapp-cta{display:inline-flex!important;align-items:center;justify-content:center;gap:.7rem;width:auto;max-width:100%;min-height:54px;margin-top:1.2rem;padding:.9rem 1.35rem!important;border:1px solid rgba(37,211,102,.45)!important;border-radius:999px;background:#25d366!important;color:#06130a!important;text-decoration:none!important;font-weight:800;font-size:1rem;line-height:1.2;letter-spacing:-.01em;box-shadow:0 18px 42px rgba(37,211,102,.22);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.whatsapp-cta:hover{background:#1ebe5d!important;transform:translateY(-1px);box-shadow:0 22px 48px rgba(37,211,102,.3)}@media(max-width:640px){.whatsapp-cta{width:100%;padding:.95rem 1rem!important;font-size:.95rem;text-align:center}}

.nav-pdf{border:1px solid rgba(32,75,234,.25);background:#204bea;color:#fff;border-radius:999px;padding:.55rem .85rem;font:700 12px/1 Arial,Helvetica,sans-serif;cursor:pointer}.nav-pdf:hover{background:#173ac0}@media print{@page{size:A4;margin:14mm}html{scroll-padding-top:0!important}body{background:#fff!important;color:#111!important;font-size:11pt!important}.skip,.header,.portfolio-toolbar,.portfolio-meta-row,.site-link,.whatsapp-cta,footer{display:none!important}.wrap{max-width:none!important;padding:0!important}section,.hero{padding:18mm 0 10mm!important;break-inside:auto}.hero{padding-top:0!important}.ribbon{grid-template-columns:repeat(3,1fr)!important}.section-head,.story-layout{grid-template-columns:1fr 2fr!important;gap:12mm!important}.section-head{margin-bottom:10mm!important}h1{font-size:46pt!important;line-height:.95!important}.section-head h2,.closing h2{font-size:30pt!important;line-height:1.05!important}.featured-project{display:grid!important;grid-template-columns:1fr!important;box-shadow:none!important;border:1px solid #d8d8d8!important;background:#fff!important;break-inside:avoid}.featured-project h3{font-size:28pt!important}.featured-image{display:block!important;width:100%!important;min-height:0!important;max-height:none!important;overflow:visible!important}.featured-image img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:top center!important}.portfolio-grid{display:block!important}.portfolio-card{display:block!important;width:100%!important;break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important;border:1px solid #d8d8d8!important;margin:0 0 8mm!important;overflow:visible!important}.portfolio-image{display:block!important;width:100%!important;max-height:none!important;aspect-ratio:auto!important;overflow:visible!important}.portfolio-image img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:top center!important}.portfolio-card h3{font-size:18pt!important}.portfolio-card p,.portfolio-detail p{font-size:10pt!important;line-height:1.45!important}.portfolio-detail summary{display:none!important}.portfolio-detail{display:block!important;border-top:1px solid #e5e5e5!important;padding-top:4mm!important}.portfolio-detail p{display:block!important}.testimonial-grid{display:block!important;width:100%!important}.testimonial-card,.testimonial-card.featured{display:block!important;width:100%!important;max-width:none!important;min-height:0!important;break-inside:avoid!important;page-break-inside:avoid!important;box-shadow:none!important;border:1px solid #d8d8d8!important;margin:0 0 8mm!important;padding:8mm!important}.testimonial-card blockquote,.testimonial-card.featured blockquote{font-size:12pt!important;line-height:1.45!important}.blue-section{background:#fff!important;color:#111!important}.blue-section *{color:#111!important}.services{grid-template-columns:1fr 1fr!important}.closing{break-inside:avoid!important}.closing p{max-width:150mm!important}}

