/* Turbogen's approved navy/red editorial design; no duplicate page header/hero. */
.tg-projects-page{padding:44px 0 70px;background:var(--tg-site-bg,#fff);min-height:50vh;color:#071f4e}
.tg-projects-intro{max-width:720px;margin-bottom:34px}
.tg-projects-eyebrow{font-size:11px;color:var(--tg-red,#e21f2f);font-weight:750;display:inline-flex;gap:10px;align-items:center}
.tg-projects-eyebrow:before{content:"";display:block;width:26px;height:2px;background:currentColor}
.tg-projects-intro h1,.tg-project-detail-heading h1{font-size:clamp(26px,3.4vw,39px);font-weight:850;line-height:1.55;margin:12px 0}
.tg-projects-intro p,.tg-project-detail-heading>p{font-size:14px;line-height:2.1;color:#657184}
.tg-project-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.tg-project-card{background:#fff;border:1px solid #e7eaf0;border-radius:18px;overflow:hidden;box-shadow:0 10px 32px #071f4e0b;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.tg-project-card:hover{transform:translateY(-4px);box-shadow:0 22px 46px #071f4e19}
.tg-project-image{height:220px;display:grid;place-items:center;background:#e9eff5;overflow:hidden;color:#789;min-height:0}
.tg-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.tg-project-card:hover .tg-project-image img{transform:scale(1.035)}
.tg-project-card-text{padding:20px 22px 22px;display:flex;flex:1;flex-direction:column}
.tg-project-card-text>span{color:var(--tg-red,#e21f2f);font-size:10px;font-weight:700}
.tg-project-card-text h2,.tg-project-card-text h3{font-size:17px;line-height:1.7;font-weight:800;margin:8px 0}
.tg-project-card-text p{color:#687386;font-size:12px;line-height:2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.tg-project-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf0f3;padding-top:14px;margin-top:auto;font-size:11px}
.tg-project-card-bottom a,.tg-project-next a{color:var(--tg-red,#e21f2f);font-weight:800}
.tg-project-card-bottom small{color:#8892a0}
.tg-project-pages{margin-top:32px}
.tg-project-empty{grid-column:1/-1;border:1px dashed #cfd6e0;border-radius:16px;padding:45px 20px;text-align:center;color:#687386}
.tg-project-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;color:#798395;font-size:11px;margin-bottom:31px}
.tg-project-breadcrumb a:hover{color:var(--tg-red,#e21f2f)}
.tg-project-detail-heading{max-width:880px;margin-bottom:30px}
.tg-project-meta{display:flex;flex-wrap:wrap;gap:20px;color:#64748b;margin-top:20px;font-size:12px}
.tg-project-meta b{color:#071f4e}
.tg-project-detail-cover{overflow:hidden;border-radius:20px;max-height:540px;box-shadow:0 24px 60px #071f4e16;margin:0 0 38px;background:#e9eff5}
.tg-project-detail-cover img{width:100%;max-height:540px;object-fit:cover}
.tg-project-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:35px;align-items:start}
.tg-project-detail-grid:has(>.tg-project-story:only-child){grid-template-columns:1fr}
.tg-project-story,.tg-project-specification{padding:27px;border-radius:17px;background:#fff;border:1px solid #e9edf2}
.tg-project-story h2,.tg-project-specification h2,.tg-project-related h2{font-size:21px;font-weight:850;margin:0 0 17px}
.tg-project-story-text{white-space:normal;overflow-wrap:anywhere;color:#505e70;font-size:14px;line-height:2.35}
.tg-project-spec-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #edf0f3;padding:15px 0;font-size:12px}
.tg-project-spec-row:last-child{border:0}
.tg-project-spec-row span{color:#687386}
.tg-project-next{margin:29px 0 52px}
.tg-project-related{border-top:1px solid #e1e6ee;padding-top:32px}
.tg-project-related .tg-project-image{height:165px}
@media(max-width:1000px){.tg-project-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.tg-project-detail-grid{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:650px){.tg-projects-page{padding:28px 0 44px}.tg-project-cards{grid-template-columns:1fr;gap:15px}.tg-project-image{height:215px}.tg-project-detail-grid{grid-template-columns:1fr;gap:18px}.tg-project-story,.tg-project-specification{padding:20px}.tg-project-detail-cover{border-radius:14px}}

.tg-project-story-text :is(h2,h3,h4){margin:18px 0 10px;font-size:20px;font-weight:800;color:#071f4e}.tg-project-story-text :is(ul,ol){padding-right:23px;list-style:revert}.tg-project-story-text p{margin:0 0 14px}.tg-project-story-text img{max-width:100%;height:auto;border-radius:12px;margin:18px 0}

/* Reuses the site design system for project taxonomies. */
.tg-project-categories,.tg-project-category-tags{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 28px}
.tg-project-categories a,.tg-project-category-tags a{font-size:12px;line-height:1.8;padding:8px 17px;border:1px solid #e0e7ef;border-radius:12px;background:#fff;color:#385071;transition:.2s}
.tg-project-categories a:hover,.tg-project-categories a.is-active,.tg-project-category-tags a:hover{background:var(--tg-navy,#071f4e);border-color:var(--tg-navy,#071f4e);color:#fff}
.tg-project-category-tags{margin:12px 0 0}
.tg-project-category-tags a{padding:4px 12px;font-size:11px}

/* Same heading size as the native product/article list pages. */
.tg-projects-intro h1{font-size:21px;line-height:1.65;font-weight:800}

@media(min-width:640px){.tg-projects-intro h1{font-size:25px}}
