.cfg-page{padding-block:1.5rem 3rem}
.cfg-back{margin:0 0 .5rem}
.cfg-levels .cfg-card{display:flex;flex-direction:column;gap:.5rem}
.cfg-levels .cfg-card .btn{margin-top:auto;align-self:flex-start}
.cfg-price strong{font-size:1.6rem}
.cfg-section{margin-top:2rem}
.cfg-gallery{display:flex;flex-wrap:wrap;gap:1rem}
.cfg-photo{display:block;border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#1e2c46,#03060d);box-shadow:0 8px 28px rgba(0,0,0,.45);max-width:min(100%,320px)}
.cfg-photo img{display:block;width:100%;height:auto}
.cfg-photo:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.cfg-hint{opacity:.75;font-size:.92rem}
.cfg-specs{display:grid;gap:.5rem;margin:0}
.cfg-spec{display:grid;grid-template-columns:minmax(9rem,14rem) 1fr;gap:.75rem;padding:.6rem .8rem;border-radius:10px;background:rgba(255,255,255,.04)}
.cfg-spec dt{font-weight:700}
.cfg-spec dd{margin:0}
@media (max-width:640px){.cfg-spec{grid-template-columns:1fr;gap:.2rem}}
.cfg-principle{font-weight:600;margin-top:1rem}
.cfg-note{margin-top:2rem;padding:.8rem 1rem;border-left:3px solid currentColor;opacity:.9}
.cfg-list{padding-inline-start:1.2rem}
.cfg-request{margin:1.5rem 0}
.tier-form{margin-top:1.5rem}
/* v20261016a: gallery thumbs share one height, no background strip under shorter photos */
.cfg-gallery{align-items:flex-start}
.cfg-photo{max-width:100%}
.cfg-photo img{height:320px;width:auto;max-width:100%;object-fit:cover}
@media (max-width:640px){.cfg-gallery{flex-direction:column}.cfg-photo{width:100%}.cfg-photo img{width:100%;height:auto}}
/* v20261018a: Level 3 illustration (16:9) and caption; availability badge spacing */
.cfg-photo-wide img{aspect-ratio:16/9}
.cfg-caption{margin:.5rem 0 0;font-size:.85rem;opacity:.7;font-style:italic}
.cfg-level .avail{margin:.2rem 0 0}
.cfg-closing{margin-top:2rem;font-size:1.1rem}
