/* Chattanooga v3 homepage — service bulletin */
body.site-page main.ctm{width:100% !important;max-width:none;margin:0}
.ctm{color:#1c2733;font-size:1.05rem;line-height:1.68}
.ctm h2{font-size:clamp(1.45rem,3vw,1.9rem);color:#12263f;margin:.2em 0 .5em}
.ctm p{margin:.8em 0}
.ctm a{color:#0b5aa2}

.ct-mast{background:#12263f;color:#fff;padding:64px 24px 56px;border-bottom:4px solid #e8630a}
.ct-mast-in{max-width:820px;margin:0 auto;text-align:left}
.ct-kick{font-family:'Courier New',monospace;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:#f0a06a;margin:0 0 14px}
.ct-mast h1{font-size:clamp(2rem,4.6vw,3rem);line-height:1.08;margin:0 0 14px;color:#fff}
.ct-sub{font-size:1.16rem;color:#b9c4d3;margin:0 0 26px;max-width:34em}
.ct-note{font-family:'Courier New',monospace;font-size:.85rem;color:#8fa2b8;margin-top:14px}

.ct-call{display:inline-block;background:#e8630a;color:#fff !important;text-decoration:none;font-weight:700;
  font-family:'Courier New',monospace;font-size:1.1rem;padding:12px 28px;border-radius:2px}
.ct-call:hover{background:#c25208}
.ct-call-lg{font-size:1.35rem;padding:16px 36px}

.ct-heroph{max-width:1020px;margin:-30px auto 30px;padding:0 24px}
.ct-sec{max-width:720px;margin:0 auto;padding:26px 24px 4px}
.ctp-ph{max-width:1020px;margin:36px auto;padding:0 24px}
.ctp-ph img{width:100%;max-height:430px;object-fit:cover;border:1px solid #12263f}
.ctp-ph figcaption{font-family:'Courier New',monospace;font-size:.78rem;color:#5b6b7d;margin-top:6px;letter-spacing:.03em}
.ctp-ref{font-family:'Courier New',monospace;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;color:#e8630a;font-weight:700;margin:0 0 8px}
.ctp-row{display:flex;align-items:baseline;gap:8px;padding:6px 0;font-size:.98rem}
.ctp-row span{font-family:'Courier New',monospace;text-transform:uppercase;font-size:.74rem;letter-spacing:.06em;color:#5b6b7d;white-space:nowrap}
.ctp-row i{flex:1;border-bottom:1px dotted #9fb0c2;transform:translateY(-4px)}
.ctp-row b{font-weight:700;color:#12263f}

.ct-spec{padding:10px 24px}
.ct-spec-in{max-width:720px;margin:26px auto;border:1px solid #12263f;border-left:4px solid #e8630a;background:#f7f9fb;padding:20px 24px}

.ct-band{background:#e8630a;color:#fff;text-align:center;padding:42px 24px;margin:44px 0}
.ct-band p{font-size:1.3rem;font-weight:700;margin:0 0 16px}
.ct-band .ct-call{background:#12263f}
.ct-band .ct-call:hover{background:#0b1a2e}
.ct-band-note{font-size:.95rem !important;font-weight:400 !important;margin-top:14px !important;color:#ffe1c9 !important}

.ct-faq{background:#f7f9fb;border-top:3px solid #12263f;padding:48px 0;margin-top:44px}
.ct-faq-in{max-width:760px;margin:0 auto;padding:0 24px}
.ct-q{background:#fff;border:1px solid #c9d4e0;margin:10px 0;padding:0}
.ct-q summary{cursor:pointer;font-weight:700;color:#12263f;padding:14px 18px;list-style-position:inside}
.ct-q p{margin:0;padding:0 18px 16px;color:#41505f}

.ct-close{text-align:center;padding:56px 24px}
.ct-close p{max-width:42em;margin:0 auto 22px}

@media (max-width:640px){
  .ct-call-lg{font-size:1.15rem;padding:14px 26px}
  .ctp-row{flex-wrap:wrap}.ctp-row i{display:none}
}

/* ===== v3.1 polish: content image alignment + rhythm (2026-07-03) =====
   Fixes platform rule `body.site-page figure{margin:0}` out-specifying site
   figure classes (left-anchored images), oversized portrait images, and
   excessive vertical spacing. Append AFTER site css; idempotent by marker. */
figure[class$="-ph"],figure[class$="-photo"],figure[class$="-fig"],
figure.vnp-pic,figure.srp-pic,figure.pxp-pic,figure.hbp-cardpic,figure.sr-wide{
 max-width:720px !important;margin:24px auto !important;padding:0 20px !important;
 box-sizing:border-box;float:none;clear:both}
figure[class$="-ph"] img,figure[class$="-photo"] img,figure[class$="-fig"] img,
figure.vnp-pic img,figure.srp-pic img,figure.pxp-pic img,figure.hbp-cardpic img,figure.sr-wide img{
 width:100% !important;display:block;max-height:480px;object-fit:cover}
body main[class] h2{margin-top:30px}
main[class] section>h2:first-child,main[class] div>h2:first-child{margin-top:0}
body main[class] p{margin-top:12px;margin-bottom:12px}
main[class] section[class*="-sec"]{margin-top:32px}
