/* Stage 8B: Sem Parar. Native data and lightbox remain in TAEC Site Core. */
.elementor .taec-case-hero { background:radial-gradient(ellipse at top right,#1689c94d,transparent 65%),#071f35; }
.elementor .taec-case-hero>.e-con-inner,.elementor .taec-case-overview>.e-con-inner,.elementor .taec-case-gallery>.e-con-inner { gap:28px; }
.elementor .taec-case-hero h1.elementor-heading-title { font-size:clamp(44px,5vw,68px);line-height:1.1;letter-spacing:-.04em; }
body .elementor .taec-case-hero .elementor-widget-text-editor { color:#d9e6f0;font-size:18px;line-height:1.75;max-width:65ch; }
.elementor .taec-case-hero .taec-label .elementor-heading-title { color:#d9e6f0; }
.elementor .taec-case-cover img { width:100%;height:520px;object-fit:cover;border-radius:28px; }
.elementor .taec-case-overview .taec-project-facts { padding:24px 28px;background:#f4f7fa;border:1px solid #dfe7ee;border-radius:18px;margin:0; }
.elementor .taec-case-overview .taec-project-facts dt { font-size:11px;letter-spacing:.09em; }
.elementor .taec-case-overview .taec-project-facts dd { margin:8px 0 0;font-size:18px;font-weight:600; }
.elementor .taec-case-intro-row,.elementor .taec-case-contact-row { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px; }
.elementor .taec-case-intro-row>.e-con,.elementor .taec-case-contact-row>.e-con { width:auto;min-width:0;gap:24px; }
.elementor .taec-case-intro-row h2.elementor-heading-title,.elementor .taec-case-gallery h2.elementor-heading-title { font-size:clamp(30px,3.2vw,44px);line-height:1.18;letter-spacing:-.035em; }
.elementor .taec-case-overview .elementor-widget-text-editor,.elementor .taec-case-gallery .elementor-widget-text-editor { font-size:16px;line-height:1.8;color:var(--taec-muted); }
.elementor .taec-case-gallery { background:#f4f7fa; }
.elementor .taec-case-gallery .taec-gallery { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.elementor .taec-case-gallery .taec-gallery a { display:block;overflow:hidden;border-radius:20px; }
.elementor .taec-case-gallery .taec-gallery img { display:block;width:100%;height:270px;object-fit:cover;border-radius:20px;transition:transform .35s; }
.elementor .taec-case-contact { background:linear-gradient(120deg,#071f35,#073b63);border-top:4px solid #ff791a; }
.elementor .taec-case-contact h2.elementor-heading-title { font-size:clamp(32px,3.4vw,44px);line-height:1.15; }
.elementor .taec-case-contact .elementor-widget-text-editor { font-size:17px;line-height:1.8; }
@media(hover:hover) { .elementor .taec-case-gallery .taec-gallery a:hover img { transform:scale(1.035); } }
@media(max-width:1024px) { .elementor .taec-case-cover img { height:420px; } .elementor .taec-case-intro-row,.elementor .taec-case-contact-row { gap:32px; } .elementor .taec-case-gallery .taec-gallery { gap:18px; } .elementor .taec-case-gallery .taec-gallery img { height:220px; } }
@media(max-width:767px) { .elementor .taec-case-hero h1.elementor-heading-title { font-size:clamp(38px,10vw,48px); } body .elementor .taec-case-hero .elementor-widget-text-editor { font-size:16px; } .elementor .taec-case-cover img { height:300px;border-radius:20px; } .elementor .taec-case-intro-row,.elementor .taec-case-contact-row { grid-template-columns:1fr;gap:24px; } .elementor .taec-case-intro-row h2.elementor-heading-title,.elementor .taec-case-gallery h2.elementor-heading-title,.elementor .taec-case-contact h2.elementor-heading-title { font-size:clamp(28px,7.2vw,34px); } .elementor .taec-case-gallery .taec-gallery { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; } .elementor .taec-case-gallery .taec-gallery a,.elementor .taec-case-gallery .taec-gallery img { border-radius:12px; } .elementor .taec-case-gallery .taec-gallery img { height:150px; } .elementor .taec-case-overview .elementor-widget-text-editor,.elementor .taec-case-gallery .elementor-widget-text-editor { font-size:15px; } .elementor .taec-case-hero .elementor-button,.elementor .taec-case-overview .elementor-button,.elementor .taec-case-contact .elementor-button { width:100%; } }
@media(prefers-reduced-motion:reduce) { .elementor .taec-case-gallery .taec-gallery img { transition:none;transform:none!important; } }

/* A single registered photo should fill its gallery instead of leaving empty columns. */
.elementor .taec-case-gallery .taec-gallery>a:only-child { grid-column:1 / -1; }
.elementor .taec-case-gallery .taec-gallery>a:only-child img { height:420px; }
@media(max-width:767px) { .elementor .taec-case-gallery .taec-gallery>a:only-child img { height:260px; } }

/* Optional confirmed case data. No markup is emitted while fields are empty. */
.elementor .taec-case-extra { display:grid;gap:28px;margin-top:12px; }
.elementor .taec-case-extra section { padding:32px;border:1px solid #dfe7ee;border-radius:20px;background:#f7f9fb; }
.elementor .taec-case-extra h2 { font-size:clamp(24px,2.5vw,32px);line-height:1.25;margin:0 0 20px; }
.elementor .taec-case-extra p { font-size:16px;line-height:1.8;color:var(--taec-muted);margin:0;white-space:normal;overflow-wrap:anywhere; }
.elementor .taec-case-specs dl { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0; }
.elementor .taec-case-specs dt { font-size:12px;color:var(--taec-muted);line-height:1.6; }
.elementor .taec-case-specs dd { font-size:20px;font-weight:600;margin:8px 0 0;line-height:1.5;overflow-wrap:anywhere; }
@media(max-width:767px) { .elementor .taec-case-extra section { padding:24px; } .elementor .taec-case-specs dl { grid-template-columns:1fr;gap:20px; } .elementor .taec-case-extra p { font-size:15px; } }
