.tc-cms-prose{max-width:960px;font-size:18px;line-height:1.75;overflow-wrap:anywhere}
.tc-cms-prose h2{margin-top:56px;margin-bottom:24px;font-size:32px}
.tc-cms-prose h3{margin:28px 0 16px;font-size:23px}
.tc-cms-prose p{margin:16px 0}.tc-cms-prose ul,.tc-cms-prose ol{padding-left:26px;margin:24px 0}
.tc-cms-prose li{padding:8px 0}.tc-cms-prose img{max-width:100%;height:auto;border-radius:14px;margin:28px 0}
.tc-cms-prose a{color:#074782;text-decoration:underline}.tc-cms-prose details{padding:22px 0;border-bottom:1px solid #dce5ee}
.tc-cms-prose summary{cursor:pointer;font-weight:600}.tc-cms-prose .tc-content__price{margin:0 0 48px;padding:32px}
.tc-cms-prose .tc-content__price h2{margin:0 0 16px}.tc-cms-breadcrumbs{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px;font-size:14px;color:#697185}
.tc-cms-cta-copy{font-size:18px;line-height:1.7;max-width:760px;margin:24px 0 32px}
.tc-content__card .tc-cms-card-price{font-size:23px;color:#074782;font-weight:600}
.tc-cms-card-image{width:100%;height:170px;object-fit:contain;margin-bottom:20px}
.tc-content--portfolio-project .tc-content__hero{padding-top:58px;padding-bottom:62px}
.tc-content--portfolio-project .tc-content__hero-art{max-height:250px;aspect-ratio:3 / 2}
.tc-cms-prose .tc-project-link{display:flex;align-items:center;gap:22px;padding:26px 28px;margin:0 0 48px;border:1px solid #dce6ee;border-radius:18px;background:linear-gradient(115deg,#f2f7fb,#fff);color:#074782;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.tc-project-link__icon{display:grid;place-items:center;flex:0 0 54px;height:54px;background:#e5eff7;border-radius:14px}
.tc-project-link__copy{display:grid;gap:3px;min-width:0}.tc-project-link__label{font-size:13px;color:#697185}.tc-project-link__copy strong{font-size:22px;font-weight:600;overflow-wrap:anywhere}
.tc-project-link__action{margin-left:auto;white-space:nowrap;font-size:15px}.tc-project-link__action span{margin-left:10px;font-size:23px}
.tc-cms-prose .tc-project-link:hover{border-color:#8eafca;box-shadow:0 6px 20px #1048780b}.tc-project-link:focus-visible{outline:3px solid #074782;outline-offset:4px}
@media(max-width:560px){.tc-cms-prose .tc-project-link{padding:20px;gap:14px;flex-wrap:wrap}.tc-project-link__copy strong{font-size:20px}.tc-project-link__action{margin-left:68px}.tc-project-link__copy{flex:1}}
@media(prefers-reduced-motion:reduce){.tc-cms-prose .tc-project-link{transition:none}}
.tc-content__gallery h2{margin-bottom:28px}
.tc-content__gallery .swiper-container{position:relative;overflow:hidden;padding-bottom:0}
.tc-content__gallery .swiper-slide{height:auto}
.tc-content__gallery figure{height:100%;margin:0;background:#f4f8fb;border-radius:14px;overflow:hidden}
.tc-content__gallery figure a{display:block}
.tc-content__gallery img{display:block;width:100%;height:auto;aspect-ratio:2 / 1;object-fit:contain;margin:0;border-radius:0;background:#f5f6fb}
.tc-content__gallery figcaption{padding:14px 18px;color:#697185;font-size:14px;line-height:1.45}
.tc-gallery-button{position:absolute;bottom:0;z-index:2;width:44px;height:44px;border:1px solid #dce5ee;border-radius:50%;background:#fff;color:#074782;font-size:22px;cursor:pointer}
.tc-gallery-button--prev{left:14px}.tc-gallery-button--next{right:14px}
.tc-gallery-status{margin:16px 58px 0;min-height:44px;line-height:44px;text-align:center;color:#697185;font-size:14px}
.tc-gallery-button:focus-visible,.tc-content__gallery a:focus-visible{outline:3px solid #074782;outline-offset:3px}
.tc-content__gallery .swiper-container:not(.swiper-initialized) .swiper-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.tc-content__gallery .swiper-container:not(.swiper-initialized) .tc-gallery-button{display:none}
@media(prefers-reduced-motion:reduce){.tc-content__gallery .swiper-wrapper{transition:none!important}}
@media(max-width:560px){.tc-cms-prose{font-size:17px}.tc-cms-prose h2{font-size:27px;margin-top:40px}.tc-cms-prose .tc-content__price{padding:22px}}
/* Compact project website link, 2026-09-17. */
.tc-cms-prose .tc-project-link{width:min(100%,520px);gap:12px;padding:12px 16px;margin-bottom:24px;border-radius:12px;line-height:1.4}
.tc-project-link__icon{flex-basis:36px;height:36px;border-radius:9px}.tc-project-link__icon svg{width:20px;height:20px}
.tc-project-link__copy{gap:2px}.tc-project-link__label{font-size:12px}.tc-project-link__copy strong{font-size:17px}
.tc-project-link__action{font-size:13px}.tc-project-link__action span{margin-left:6px;font-size:18px}
.tc-cms-prose .tc-project-link+h2{margin-top:28px}
@media(max-width:560px){.tc-cms-prose .tc-project-link{padding:12px;gap:10px;flex-wrap:nowrap}.tc-project-link__copy{flex:1}.tc-project-link__copy strong{font-size:16px}.tc-project-link__action{margin-left:auto;font-size:0}.tc-project-link__action span{margin-left:0;font-size:20px}}
/* Equal content tracks within each visual card row, including wrapped titles. */
.tc-content__card .tc-card-title{min-height:2.2em}
.about-carousel__card h3{min-height:2.3em}
@supports(grid-template-rows:subgrid){
  .tc-content__cards-inner>.tc-content__card{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0;align-items:start;min-height:0}
  .tc-content__card>.tc-cms-card-image{grid-row:1}
  .tc-content__card>.tc-card-label{grid-row:2;margin:0}
  .tc-content__card>.tc-card-title{grid-row:3;min-height:0;margin:10px 0 0}
  .tc-content__card>.tc-cms-card-price{grid-row:4}
  .tc-content__card>.tc-card-description{grid-row:5}
  .tc-content__card>.text-link{grid-row:6;margin-top:0;align-self:end}
}
@media(max-width:560px){.tc-content__card .tc-card-title,.about-carousel__card h3{min-height:0}}
