/* C案の追加テンプレート。本文はJavaScriptに依存しない。 */
.t-main,.t-crumb{max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}
.t-main{padding-bottom:clamp(72px,9vw,140px)}
.t-crumb{display:flex;flex-wrap:wrap;gap:12px;padding-block:22px;font-size:.8125rem;color:#5c5c58}
.t-crumb a,.t-crumb>span{display:inline-flex;align-items:center;min-height:44px}
.t-main>.t-crumb,.p89-article-wrap>.t-crumb{padding-inline:0}/* 親が gutter を持つので二重にしない（2026-09-21） */
.t-intro{padding-block:clamp(32px,6vw,88px);max-width:1000px}
.t-kicker{font-family:var(--en);letter-spacing:.12em;font-size:.8125rem;font-weight:500;margin-bottom:20px}
.t-intro h1{font-size:clamp(2rem,4.6vw,4.8rem);line-height:1.35;letter-spacing:-.025em;font-weight:700;overflow-wrap:anywhere;line-break:strict;text-wrap:balance}
.t-lead{font-size:1.0625rem;line-height:1.95;max-width:40em;margin-top:26px}
.t-section{margin-top:clamp(64px,8vw,112px)}
.t-section>h2{font-size:clamp(1.4rem,2.5vw,2rem);margin-bottom:32px}
.t-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 28px}
.t-card{min-width:0;border-top:1px solid var(--rule);padding-top:16px}
.t-card a{display:block}.t-card-shot{aspect-ratio:3/2;overflow:hidden}
.t-card-shot img{transition:transform .55s cubic-bezier(.2,.65,.3,1)}
.t-card h2{font-size:1.25rem;line-height:1.7;letter-spacing:.01em;text-wrap:pretty;overflow-wrap:anywhere}
.t-meta{display:flex;align-items:center;gap:8px;font-family:var(--en);font-size:.8125rem;margin-block:18px 10px}
.t-meta>span:last-child{margin-left:auto;font-variant-numeric:tabular-nums}
.t-dot{width:8px;height:8px;border-radius:50%;background:var(--photo)}
.t-dot.ride{background:var(--ride)}.t-dot.garage{background:var(--garage)}.t-dot.build{background:var(--build)}
.t-read{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;margin-top:10px;border-bottom:1px solid #bbb}
.t-button{min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid currentColor;padding:12px 0;font-size:1rem;text-align:left;line-height:1.6;max-width:100%;overflow-wrap:anywhere}
.t-button span{margin-left:auto}
.t-category{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:56px;margin-bottom:24px;align-items:center}
.t-category.dark{background:#141414;color:#fff}.t-category.light{border:1px solid var(--rule)}
.t-category h2{font-family:var(--en);font-size:clamp(1.8rem,4vw,3.7rem);letter-spacing:-.045em;line-height:1.15;overflow-wrap:anywhere;margin-bottom:20px}
.t-category>img{aspect-ratio:4/3;height:auto}.t-category .t-button{margin-top:30px}
.t-tags{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 40px}
.t-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
.t-filters button{border:1px solid #ccc;min-height:48px;padding:10px 22px;font-size:.9375rem;transition:background .2s,color .2s}
.t-filters button[aria-pressed=true]{background:#111;color:#fff;border-color:#111}
.t-result{font-size:.875rem;margin-block:24px}.t-feature{display:grid;grid-template-columns:1.2fr 1fr;background:#141414;color:white;align-items:center}
.t-feature>img{height:auto;aspect-ratio:4/3}.t-feature>div{padding:48px}
.t-feature h2{font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.6;margin-bottom:30px}
.t-prose{max-width:720px;margin:60px auto 0;font-size:1.125rem;line-height:1.95;overflow-wrap:anywhere;line-break:strict}
.t-prose h2{font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.6;margin:2.5em 0 1em}
.t-prose p+p{margin-top:1.5em}.t-prose .t-button{display:flex;margin-top:20px}
.t-wide{margin:0}.t-wide img{height:auto;object-fit:contain}
.t-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px}
.t-guide-grid section>img{height:auto;aspect-ratio:4/3;margin-bottom:30px}
.t-guide-grid h2{font-size:1.7rem;margin-bottom:16px}.t-guide-grid p{line-height:1.9;font-size:1.0625rem}.t-guide-grid .t-button{display:flex;margin-top:24px}
.t-person{display:flex;align-items:center;gap:48px;padding:48px 0;border-block:1px solid var(--rule)}
.t-monogram{font-family:var(--en);font-size:clamp(5rem,12vw,10rem);font-weight:700;letter-spacing:-.09em;line-height:1;background:#f3f3f1;padding:36px 48px}
.t-person h2{font-size:2rem;margin-bottom:12px}
.t-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 32px}
.t-gallery figure{margin:0}.t-gallery figure:nth-child(3n){grid-column:1/-1;width:80%;justify-self:center}
.t-gallery img{height:auto}.t-gallery a{display:block;cursor:zoom-in}
.t-gallery figcaption{font-size:.875rem;display:flex;gap:24px;padding-top:16px}
.t-gallery figcaption span{font-family:var(--en)}
.t-lightbox{border:0;background:#111;color:white;padding:24px;width:min(1100px,95vw);max-height:95dvh}
.t-lightbox::backdrop{background:#000d}.t-lightbox img{max-height:72dvh;width:100%;height:auto;object-fit:contain}.t-lightbox button{display:block;min-height:48px;margin-left:auto;padding:10px 16px}.t-lightbox p{margin-top:16px}
.t-search{max-width:760px;margin-bottom:32px}.t-search label{display:block;font-size:1rem;margin-bottom:12px}
.t-search>div{display:flex;gap:16px}.t-search input{min-width:0;flex:1}.t-search .t-button{background:#111;color:white;padding:12px 28px;border:0}
.t-search input,.t-form input,.t-form textarea,.t-form select{border:1px solid #999;background:white;color:#111;padding:14px;font:inherit;font-size:1rem;min-height:52px;border-radius:0;max-width:100%;width:100%}
.t-form,.t-confirm{max-width:700px;margin-inline:auto;font-size:1.0625rem;line-height:1.9}
.t-form label{display:block;margin-block:28px 10px;font-weight:500}.t-form label span{font-size:.8125rem;margin-left:12px;font-weight:400}
.t-form .t-button{width:100%;margin-top:30px}.t-note{font-size:.875rem;background:#f4f4f2;padding:20px;line-height:1.9}
.t-confirm dt{font-size:.875rem;color:#666;margin-top:24px}.t-confirm dd{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.t-confirm>p{margin:28px 0}
.t-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.t-directory>.t-button{display:flex;min-height:72px}.t-page-row{display:flex;align-items:center;gap:24px;border-top:1px solid var(--rule);padding:26px 0;min-width:0}
.t-page-row>span{font-family:var(--en);font-size:.875rem}.t-page-row>div{min-width:0;flex:1}.t-page-row h2{font-size:1.125rem}.t-page-row p{font-size:.8125rem;color:#666;overflow-wrap:anywhere;margin-top:6px}.t-page-row b{font-weight:400}
.t-footer{background:#111;color:#fff;padding:64px var(--gutter) 32px}
.t-wordmark{font-family:var(--en);font-size:clamp(2rem,6vw,5rem);font-weight:700;letter-spacing:-.05em}
.t-footer>p{font-family:var(--en);font-size:.8125rem;letter-spacing:.07em;margin:12px 0 32px}
.t-footer nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 32px;max-width:1100px}
.t-footer nav a{font-size:.9375rem;display:flex;align-items:center;min-height:48px;border-bottom:1px solid #444}
.t-footer-end{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:48px;font-size:.8125rem}.t-footer-end a{min-height:44px;display:flex;align-items:center}.t-footer-end small{margin-left:auto;font-size:.8125rem}
@media(hover:hover){.t-card a:hover img{transform:scale(1.025)}.t-button:hover,.t-page-row:hover{opacity:.65}}
@keyframes t-enter{from{transform:translateY(12px);opacity:.65}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:no-preference){.t-intro{animation:t-enter .6s ease-out}.t-button:active,.t-filters button:active{transform:translateY(1px)}}
@media(max-width:900px){.t-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.t-category{padding:32px;gap:24px}.t-feature>div{padding:28px}.t-footer nav{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){
 .t-crumb{font-size:.8125rem;padding-block:10px}.t-intro{padding-block:26px 38px}.t-intro h1{font-size:2rem;line-height:1.5;letter-spacing:-.015em}.t-kicker{margin-bottom:16px;font-size:.8125rem}.t-lead{font-size:1.0625rem;margin-top:20px}
 .t-grid{grid-template-columns:1fr;gap:38px}.t-card h2{font-size:1.25rem;line-height:1.65}.t-card-shot{aspect-ratio:3/2}.t-meta{margin-top:16px}.t-read{font-size:.9375rem}
 .t-category{grid-template-columns:1fr;padding:28px 20px;gap:28px}.t-category h2{font-size:clamp(1.65rem,7vw,2.6rem)}.t-category .t-button{display:flex;margin-top:20px}.t-category>img{aspect-ratio:auto}
 .t-tags,.t-guide-grid,.t-directory{grid-template-columns:1fr}.t-feature{grid-template-columns:1fr}.t-feature>div{padding:28px 22px}.t-feature h2{font-size:1.75rem}
 .t-prose{font-size:1.0625rem;line-height:1.95;margin-top:40px}.t-prose h2{font-size:1.375rem;line-height:1.6;margin-top:48px}.t-guide-grid{gap:52px}.t-guide-grid p{font-size:1.0625rem}.t-guide-grid h2{font-size:1.5rem}
 .t-person{align-items:flex-start;gap:20px;flex-direction:column;padding:28px 0}.t-monogram{font-size:5rem;padding:24px 32px}.t-person h2{font-size:1.75rem}
 .t-gallery{grid-template-columns:1fr;gap:38px}.t-gallery figure:nth-child(3n){grid-column:auto;width:100%}.t-gallery figcaption{gap:14px}
 .t-search>div{gap:8px}.t-search .t-button{padding:12px 18px}.t-filters{gap:8px}.t-filters button{padding-inline:16px}.t-form,.t-confirm{font-size:1.0625rem}.t-note{padding:16px}
 .t-page-row{gap:16px;padding-block:22px}.t-page-row h2{font-size:1.0625rem}.t-footer{padding-top:48px}.t-footer nav{gap:8px 24px}.t-footer-end{gap:12px 24px}.t-footer-end small{width:100%;margin:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.template-page *, .template-page *::before,.template-page *::after{animation:none!important;transition:none!important}}
.t-meta time{margin-left:auto;font-variant-numeric:tabular-nums;font-size:.8125rem;letter-spacing:.02em}
