:root { --kk:#b84b2d; --dark:#202428; }
html { scroll-behavior:smooth; scroll-padding-top:104px; }
body { color:#22272b; }
.container { max-width:1120px; }
.skip-link { position:absolute; z-index:2000; top:-80px; left:16px; padding:10px 14px; border-radius:4px; background:#0b2a4a; color:#fff; font-weight:700; }
.skip-link:focus { top:10px; color:#fff; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.site-header { position:sticky; z-index:1000; top:0; border-bottom:1px solid rgba(11,42,74,.08); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.site-header .container { width:min(calc(100% - 2rem),1200px); max-width:none; padding-right:0; padding-left:0; }
.site-footer .container { max-width:1200px; }
.header-inner { display:flex; min-height:88px; align-items:center; justify-content:space-between; gap:.75rem; }
.brand { display:inline-flex; min-height:44px; align-items:center; gap:.9rem; color:#0b2a4a; text-decoration:none; }
.brand:hover { color:#0b2a4a; }
.brand-logo { width:56px; height:56px; object-fit:contain; }
.brand-copy { display:grid; gap:2px; }
.brand-copy strong { font-size:1.05rem; line-height:1.2; }
.brand-copy small { color:#42546c; font-size:.82rem; }
.site-nav { display:flex; flex-wrap:nowrap; align-items:center; gap:.18rem; }
.site-nav a { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:.54rem .62rem; border-radius:8px; color:#42546c; font-size:.88rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.site-nav a:hover, .site-nav a:focus-visible, .site-nav a.is-active { background:#fff1e7; color:#0b2a4a; }
.site-nav a[href^="https://api1.kkdatasvc.com"] { border:1px solid rgba(191,78,0,.22); background:#fff1e7; color:#0b2a4a; }
.nav-toggle { display:none; width:48px; min-height:44px; flex-direction:column; align-items:center; justify-content:center; padding:6px; border:1px solid #d7e1ec; border-radius:8px; background:#fff; color:#0b2a4a; cursor:pointer; }
.nav-toggle span { display:block; width:20px; height:2px; margin:3px auto; background:currentColor; }
.nav-toggle .sr-only { width:1px; height:1px; margin:-1px; background:transparent; }
.btn-primary { background:#b84b2d; border-color:#b84b2d; }
.btn-primary:hover { background:#963a22; border-color:#963a22; }
.label { margin:0 0 8px; color:#b84b2d; font-size:12px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hero { position:relative; isolation:isolate; min-height:670px; display:flex; align-items:center; overflow:hidden; background:#111820; }
.hero-photo, .hero-shade { position:absolute; inset:0; }
.hero-photo { z-index:-2; background:url('/house/assets/images/custom-home-model-r02-1280.jpg') center 52%/cover no-repeat; transform:scale(1.002); }
.hero-shade { z-index:-1; background:linear-gradient(90deg,rgba(9,17,23,.9) 0%,rgba(9,17,23,.78) 56%,rgba(9,17,23,.52) 82%,rgba(9,17,23,.25) 100%); }
.hero-content { padding-top:64px; padding-bottom:64px; }
.hero-copy { max-width:1000px; }
.hero .label, #contact .label { color:#f28b6c; }
.hero h1 { max-width:680px; margin:0 0 16px; font-size:clamp(42px,5vw,68px); line-height:1.02; }
.hero-introduction { max-width:1000px; text-shadow:0 1px 2px rgba(0,0,0,.48); }
.hero-intro-primary { max-width:920px; margin:0 0 18px; color:rgba(255,255,255,.9); font-size:17px; line-height:1.52; }
.hero-intro-grid { display:grid; grid-template-columns:1.45fr 1fr .82fr; border-top:1px solid rgba(255,255,255,.34); border-bottom:1px solid rgba(255,255,255,.34); }
.hero-intro-grid p { margin:0; padding:15px 18px 15px 0; color:rgba(255,255,255,.82); font-size:14px; line-height:1.45; }
.hero-intro-grid p + p { padding-left:18px; border-left:1px solid rgba(255,255,255,.34); }
.hero-detail-link { display:inline-block; margin-top:8px; color:#fff; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.hero-detail-link:hover { color:#f8b29d; }
.facts { background:#fff; }
.fact { display:flex; flex-direction:column; gap:4px; padding:22px 26px; border-right:1px solid #ddd; }
.fact:last-child { border:0; }
.fact strong { font-size:22px; }
.fact span { color:#687078; font-size:14px; }
.section { padding:42px 0; }
.floorplan-section { padding:70px 0 54px; background:#f4f2ee; }
.floorplan-heading { max-width:780px; margin-bottom:38px; }
.floorplan-heading h2 { margin:0 0 14px; font-size:42px; }
.floorplan-heading > p:last-child { margin:0; color:#555e64; font-size:18px; line-height:1.55; }
.floorplan-models { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.floorplan-model { display:flex; min-width:0; margin:0; flex-direction:column; border:1px solid #cfd3d5; background:#fff; }
.floorplan-copy { display:flex; height:100%; flex-direction:column; padding:24px; }
.floorplan-style { margin:0 0 7px; color:#b84b2d; font-size:12px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.floorplan-copy h3 { margin:0 0 12px; font-size:32px; }
.floorplan-copy h4 { margin:18px 0 7px; font-size:18px; }
.floorplan-copy > p:not(.floorplan-style) { color:#555e64; font-size:14px; line-height:1.5; }
.floorplan-summary { margin:0; color:#202428!important; font-size:16px!important; }
.floorplan-stats { display:grid; grid-template-columns:repeat(2,1fr); margin:auto 0 0; padding-top:20px; }
.floorplan-stats div { display:flex; flex-direction:column; padding:10px 8px 10px 0; border-top:1px solid #d7dbdd; }
.floorplan-stats div + div { padding-left:10px; border-left:1px solid #d7dbdd; }
.floorplan-stats div:nth-child(3) { border-left:0; }
.floorplan-stats dt { order:2; color:#687078; font-size:11px; text-transform:uppercase; }
.floorplan-stats dd { order:1; margin:0 0 2px; font-size:20px; font-weight:750; }
.floorplan-gallery { min-width:0; order:-1; background:#1b2024; }
.floorplan-stage { position:relative; min-height:0; aspect-ratio:4 / 3; overflow:hidden; }
.floorplan-slide { position:absolute; inset:0; margin:0; }
.floorplan-slide[hidden] { display:none; }
.floorplan-slide img { width:100%; height:100%; object-fit:cover; }
.floorplan-slide.is-drawing { padding:24px; background:#eef0f1; }
.floorplan-slide.is-drawing a { display:block; width:100%; height:100%; }
.floorplan-slide.is-drawing img { object-fit:contain; }
.floorplan-slide figcaption { position:absolute; right:0; bottom:0; left:0; padding:32px 62px 14px; background:linear-gradient(transparent,rgba(0,0,0,.82)); color:#fff; font-size:13px; }
.floorplan-slide.is-drawing figcaption { padding-top:20px; background:rgba(20,24,27,.88); }
.floorplan-nav { position:absolute; z-index:2; top:50%; width:44px; height:64px; border:0; background:rgba(0,0,0,.54); color:#fff; font-size:42px; line-height:1; transform:translateY(-50%); }
.floorplan-prev { left:0; }
.floorplan-next { right:0; }
.floorplan-count { position:absolute; z-index:2; top:14px; right:14px; min-width:54px; padding:5px 8px; background:rgba(0,0,0,.66); color:#fff; font-size:12px; text-align:center; }
.floorplan-custom { display:grid; grid-template-columns:1.15fr .85fr; gap:56px; align-items:center; margin-top:38px; padding:38px 0 10px; border-top:1px solid #c9ced1; }
.floorplan-custom h3 { margin:0 0 12px; font-size:32px; }
.floorplan-custom p:last-child { margin:0; color:#555e64; font-size:16px; line-height:1.55; }
.floorplan-custom ul { margin:0 0 20px; padding-left:20px; }
.floorplan-custom li { margin-bottom:8px; }
.section h2 { margin:0 0 12px; font-size:34px; }
.info { height:100%; padding:16px; border:1px solid #d9dddf; border-radius:4px; }
.info h3, .scope h3 { font-size:18px; }
.info p, .scope p { margin:0; color:#5f666c; }
.construction-strip img { width:100%; height:195px; object-fit:cover; border-radius:4px; }
.construction-strip small { display:block; margin-top:5px; color:#667078; }
.comparison-section .container { max-width:1320px; }
.comparison-heading { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; margin-bottom:20px; }
.comparison-heading p:last-child { margin:0; color:#5f666c; }
.comparison-wrap { overflow-x:auto; border:1px solid #cfd4d7; background:#fff; }
.comparison-table { width:100%; min-width:1180px; table-layout:fixed; border-collapse:collapse; font-size:13px; line-height:1.35; }
.comparison-table th, .comparison-table td { padding:11px 12px; border-right:1px solid #d7dbdd; border-bottom:1px solid #d7dbdd; vertical-align:top; }
.comparison-table th:last-child, .comparison-table td:last-child { border-right:0; }
.comparison-table tbody tr:last-child th, .comparison-table tbody tr:last-child td { border-bottom:0; }
.comparison-table thead th { background:#24292d; color:#fff; font-size:14px; }
.comparison-table thead th:first-child { width:170px; }
.comparison-table tbody th { background:#f3f4f4; font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.comparison-detail-link { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; color:#202428; text-decoration:none; }
.comparison-detail-link span { color:#a63f24; font-size:16px; line-height:1; }
.comparison-detail-link:hover { color:#b84b2d; text-decoration:underline; text-underline-offset:3px; }
.comparison-table .group-row td { padding:9px 12px; background:#d9dee1; color:#202428; font-size:13px; font-weight:700; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.comparison-table .kk-column { background:#fff1eb; }
.comparison-table thead .kk-column { background:#b84b2d; }
.comparison-table tbody td.kk-column { color:#202428; font-weight:650; }
.comparison-table tbody tr:nth-child(even) td:not(.kk-column) { background:#f8f9f9; }
.comparison-table .priority-row th, .comparison-table .priority-row td { padding-top:16px; padding-bottom:16px; border-bottom:2px solid #aeb5b9; }
.comparison-table .priority-row th { background:#e7eaeb; }
.comparison-table .priority-row td strong { display:inline-block; margin-bottom:2px; color:#202428; font-size:16px; }
.comparison-table .priority-row td.kk-column strong { color:#a63f24; font-size:18px; }
.comparison-table .service-life-row td { padding-top:14px; padding-bottom:14px; }
.comparison-table .service-life-row td:last-child { background:#fff0e9; }
.comparison-table .service-life-row td:last-child strong { color:#a63f24; font-size:16px; }
.comparison-note { margin:10px 0 0; color:#687078; font-size:12px; }
.comparison-swipe { display:none; }
.gallery-section { overflow:hidden; }
.gallery-heading { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); gap:36px; align-items:end; margin-bottom:18px; }
.gallery-heading p:last-child { margin:0; color:#626970; }
.gallery-filters { display:flex; gap:7px; overflow-x:auto; padding:0 0 12px; scrollbar-width:thin; }
.gallery-filters button { flex:0 0 auto; padding:7px 11px; border:1px solid #cbd0d3; border-radius:3px; background:#fff; color:#343a3f; font-size:13px; }
.gallery-filters button:hover, .gallery-filters button.is-active { border-color:#202428; background:#202428; color:#fff; }
.gallery-filters span { margin-left:4px; opacity:.65; }
.vehicle-gallery { border:1px solid #cfd4d7; background:#16191c; }
.gallery-stage { position:relative; height:620px; background:#101214; overflow:hidden; }
.gallery-main { width:100%; height:100%; object-fit:contain; }
.gallery-nav { position:absolute; z-index:2; top:50%; width:48px; height:64px; border:0; background:rgba(0,0,0,.55); color:#fff; font-size:44px; line-height:1; transform:translateY(-50%); }
.gallery-prev { left:0; }
.gallery-next { right:0; }
.gallery-expand { position:absolute; z-index:2; top:14px; right:14px; padding:8px 12px; border:1px solid rgba(255,255,255,.65); border-radius:3px; background:rgba(0,0,0,.58); color:#fff; font-size:13px; }
.gallery-status { position:absolute; z-index:2; right:0; bottom:0; left:0; display:flex; justify-content:space-between; padding:13px 16px; background:linear-gradient(transparent,rgba(0,0,0,.78)); color:#fff; }
.gallery-status span { font-variant-numeric:tabular-nums; }
.gallery-rail { display:flex; gap:7px; overflow-x:auto; padding:9px; background:#252a2e; scrollbar-color:#747b80 #252a2e; }
.gallery-thumb { position:relative; flex:0 0 132px; height:88px; padding:0; overflow:hidden; border:2px solid transparent; border-radius:2px; background:#111; opacity:.66; }
.gallery-thumb:hover, .gallery-thumb.is-active { border-color:#e16d4a; opacity:1; }
.gallery-thumb img { width:100%; height:100%; object-fit:cover; }
.gallery-thumb span { position:absolute; right:4px; bottom:3px; padding:1px 4px; background:rgba(0,0,0,.68); color:#fff; font-size:10px; }
.gallery-thumb[hidden] { display:none; }
.gallery-lightbox { position:fixed; z-index:2000; inset:0; display:none; align-items:center; justify-content:center; padding:48px 70px; background:rgba(4,6,7,.96); }
.gallery-lightbox[aria-hidden="false"] { display:flex; }
.gallery-lightbox img { max-width:100%; max-height:calc(100vh - 110px); object-fit:contain; }
.lightbox-close { position:absolute; z-index:2; top:16px; right:22px; width:44px; height:44px; border:0; background:transparent; color:#fff; font-size:42px; line-height:1; }
.lightbox-nav { position:absolute; top:50%; width:54px; height:70px; border:0; background:rgba(255,255,255,.1); color:#fff; font-size:48px; transform:translateY(-50%); }
.lightbox-prev { left:10px; }
.lightbox-next { right:10px; }
.lightbox-caption { position:absolute; right:70px; bottom:16px; left:70px; display:flex; justify-content:space-between; color:#fff; }
.gallery-open { overflow:hidden; }
.price { font-size:48px!important; line-height:.9; }
.price span { font-size:20px; font-weight:400; }
.scope { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.scope > div { padding:18px; border:1px solid #d9dddf; }
.compact-form { padding:20px; background:white; color:#202428; border-radius:5px; }
.compact-form label { display:block; margin-bottom:5px; font-size:14px; font-weight:650; }
.compact-form .form-control, .compact-form .form-select { min-height:42px; }
#contact a { color:white; }
.site-footer { padding:48px 0 18px; background:#0b1f36; color:#b4c3d4; font-size:14px; }
.footer-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(200px,.75fr) minmax(240px,.95fr); gap:48px; align-items:start; }
.site-footer p, .site-footer li { color:#b4c3d4; }
.footer-brand { margin:0 0 10px; color:#fff!important; font-size:19px; font-weight:800; }
.footer-heading { margin:0 0 10px; color:#fff!important; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.footer-links { display:grid; gap:4px; margin:0; padding:0; list-style:none; }
.site-footer .footer-links:not(.footer-contact) { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:16px; }
.footer-links li { margin:0; }
.footer-links a { display:inline-flex; min-height:40px; align-items:center; padding:4px 0; color:#dce7f2; text-decoration:none; }
.footer-links a:hover, .footer-links a:focus-visible { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.footer-contact li:first-child { color:#fff; }
.footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 36px; margin-top:28px; padding-top:18px; border-top:1px solid rgba(255,255,255,.13); }
.footer-bottom p { margin:0; }
.footer-note { max-width:620px; }
.comparison-detail-page { background:#f5f6f6; }
.detail-hero { padding:56px 0 42px; border-bottom:1px solid #d7dbdd; background:#fff; }
.detail-hero .container { max-width:930px; }
.detail-hero h1 { max-width:800px; margin:8px 0 16px; font-size:clamp(40px,5vw,62px); line-height:1.02; }
.detail-hero p:last-child { max-width:820px; margin:0; color:#555e64; font-size:20px; line-height:1.55; }
.detail-back { display:inline-block; margin-bottom:28px; color:#4f585e; font-size:14px; text-decoration:none; }
.detail-back:hover { color:#b84b2d; }
.kk-advantage { padding:34px 0; background:#22272b; color:#fff; }
.kk-advantage .label { color:#f28b6c; }
.kk-advantage .container { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.kk-advantage h2 { margin:0 0 12px; font-size:30px; }
.kk-advantage p:last-child { margin:0; color:rgba(255,255,255,.78); font-size:16px; line-height:1.6; }
.advantage-mechanism { padding-left:28px; border-left:1px solid rgba(255,255,255,.25); }
.detail-media { padding:34px 0 4px; background:#fff; }
.detail-media-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:16px; }
.detail-media-heading h2 { margin:0; font-size:28px; }
.detail-media-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.detail-media-grid figure { margin:0; }
.detail-media-grid button { width:100%; height:250px; padding:0; overflow:hidden; border:0; background:#202428; }
.detail-media-grid img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.detail-media-grid button:hover img { transform:scale(1.025); }
.detail-media-grid figcaption { min-height:66px; padding:9px 2px 0; color:#5f686e; font-size:13px; line-height:1.45; }
.detail-photo-viewer { position:fixed; z-index:2100; inset:0; display:none; align-items:center; justify-content:center; flex-direction:column; padding:54px 70px 28px; background:rgba(5,7,8,.96); }
.detail-photo-viewer[aria-hidden="false"] { display:flex; }
.detail-photo-viewer img { max-width:100%; max-height:calc(100vh - 125px); object-fit:contain; }
.detail-photo-viewer p { max-width:900px; margin:12px auto 0; color:#fff; text-align:center; }
.detail-viewer-close { position:absolute; top:13px; right:20px; width:46px; height:46px; border:0; background:transparent; color:#fff; font-size:42px; line-height:1; }
.comparison-context { padding:34px 0 0; }
.comparison-context h2 { margin:0; font-size:28px; }
.detail-comparison { padding:34px 0; }
.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.detail-card { min-height:190px; padding:24px; border:1px solid #d5d9db; border-top:4px solid #8a9297; background:#fff; }
.detail-card h2 { margin:0 0 12px; font-size:21px; }
.detail-card p { margin:0; color:#596168; font-size:16px; line-height:1.55; }
.buyer-result { padding:0 0 34px; }
.buyer-result .container { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.buyer-result .container > div { padding:24px; border:1px solid #d5d9db; background:#fff; }
.buyer-result h2 { margin:0 0 10px; font-size:24px; }
.buyer-result p:last-child { margin:0; color:#596168; line-height:1.6; }
.detail-question { padding:0 0 38px; }
.detail-question .container { display:flex; align-items:center; justify-content:space-between; gap:35px; padding-top:26px; padding-bottom:26px; border-top:1px solid #ccd1d3; border-bottom:1px solid #ccd1d3; }
.detail-question h2 { margin:0 0 8px; font-size:28px; }
.detail-question p:last-child { max-width:760px; margin:0; color:#596168; }
.detail-question .btn { flex:0 0 auto; }
.detail-source { margin:-20px 0 32px; color:#687078; font-size:12px; }
.detail-source a { color:#4e5960; }
.detail-footer-nav { padding:0 0 38px; }
.detail-footer-nav .container { display:flex; flex-wrap:wrap; gap:12px 28px; }
.detail-footer-nav a { color:#343a3f; font-weight:650; }

@media (min-width:768px) and (max-width:1099px) {
  .hero { min-height:720px; }
  .hero-intro-grid { grid-template-columns:1.35fr 1fr; }
  .hero-intro-grid p:nth-child(3) { grid-column:1 / -1; padding:12px 0; border-top:1px solid rgba(255,255,255,.24); border-left:0; }
}

@media (max-width:1240px) {
  .header-inner { flex-wrap:wrap; padding:.85rem 0; }
  .nav-toggle { display:inline-flex; margin-left:auto; }
  .site-nav { display:none; width:100%; flex-direction:column; align-items:stretch; padding-bottom:.5rem; }
  .site-nav.is-open { display:flex; }
  .site-nav a { justify-content:flex-start; }
}

@media (min-width:768px) and (max-width:991px) {
  .floorplan-models { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .floorplan-model:last-child { grid-column:1 / -1; }
  .floorplan-model:last-child .floorplan-stage { aspect-ratio:16 / 7; }
}

@media (max-width:767px) {
  .brand-copy small { display:none; }
  .hero { min-height:0; align-items:flex-end; }
  .hero-photo { background-position:58% center; }
  .hero-shade { background:linear-gradient(0deg,rgba(9,17,23,.94) 0%,rgba(9,17,23,.75) 57%,rgba(9,17,23,.18) 100%); }
  .hero-content { padding-top:84px; padding-bottom:28px; }
  .hero h1 { margin-bottom:14px; font-size:37px; }
  .hero-intro-primary { margin-bottom:14px; font-size:14px; line-height:1.48; }
  .hero-intro-grid { grid-template-columns:1fr; }
  .hero-intro-grid p { padding:10px 0; font-size:12px; line-height:1.45; }
  .hero-intro-grid p + p { padding-left:0; border-top:1px solid rgba(255,255,255,.24); border-left:0; }
  .fact { padding:14px 4px; border-right:0; border-bottom:1px solid #ddd; }
  .floorplan-section { padding:38px 0 28px; }
  .floorplan-heading { margin-bottom:24px; }
  .floorplan-heading h2 { font-size:31px; }
  .floorplan-heading > p:last-child { font-size:16px; }
  .floorplan-models { grid-template-columns:1fr; gap:18px; }
  .floorplan-model { min-height:0; }
  .floorplan-copy { padding:24px 18px; }
  .floorplan-copy h3 { font-size:34px; }
  .floorplan-copy h4 { margin-top:16px; font-size:18px; }
  .floorplan-summary { font-size:16px; }
  .floorplan-slide.is-drawing { padding:12px; }
  .floorplan-slide figcaption { padding:30px 50px 11px; font-size:11px; }
  .floorplan-custom { grid-template-columns:1fr; gap:18px; padding-top:28px; }
  .floorplan-custom h3 { font-size:27px; }
  .section { padding:30px 0; }
  .section h2 { font-size:29px; }
  .construction-strip img { height:190px; }
  .comparison-heading { grid-template-columns:1fr; gap:8px; margin-bottom:12px; }
  .comparison-wrap { margin-right:-12px; }
  .comparison-swipe { display:block; margin:0 0 7px; color:#6b7379; font-size:12px; }
  .comparison-table { min-width:1060px; font-size:12px; }
  .comparison-table th, .comparison-table td { padding:10px; }
  .comparison-table thead th:first-child { width:150px; }
  .comparison-table tbody th { position:sticky; left:0; z-index:1; box-shadow:1px 0 0 #d7dbdd; }
  .comparison-table .group-row td { position:static; box-shadow:none; }
  .gallery-heading { grid-template-columns:1fr; gap:6px; }
  .gallery-stage { height:390px; }
  .gallery-nav { width:38px; height:54px; font-size:36px; }
  .gallery-expand { top:9px; right:9px; padding:6px 8px; font-size:11px; }
  .gallery-status { padding:10px 11px; font-size:12px; }
  .gallery-thumb { flex-basis:108px; height:72px; }
  .gallery-lightbox { padding:52px 8px 62px; }
  .lightbox-nav { width:42px; height:60px; font-size:40px; }
  .lightbox-caption { right:12px; bottom:18px; left:12px; font-size:12px; }
  .scope { grid-template-columns:1fr; }
  .compact-form { padding:15px; }
  .footer-grid { grid-template-columns:1fr; gap:22px; }
  .site-footer { padding:28px 0 14px; }
  .footer-bottom { margin-top:20px; }
  .detail-hero { padding:34px 0 28px; }
  .detail-hero h1 { font-size:38px; }
  .detail-hero p:last-child { font-size:17px; }
  .detail-back { margin-bottom:20px; }
  .detail-grid { grid-template-columns:1fr; }
  .detail-card { min-height:0; padding:18px; }
  .kk-advantage .container, .buyer-result .container { grid-template-columns:1fr; gap:24px; }
  .advantage-mechanism { padding:22px 0 0; border-top:1px solid rgba(255,255,255,.25); border-left:0; }
  .detail-media-heading { display:block; }
  .detail-media-grid { grid-template-columns:1fr; }
  .detail-media-grid button { height:230px; }
  .detail-media-grid figcaption { min-height:0; padding-bottom:12px; }
  .detail-photo-viewer { padding:55px 8px 28px; }
  .detail-question .container { align-items:flex-start; flex-direction:column; gap:18px; }
}

@media (max-width:480px) {
  .site-header .container { width:min(calc(100% - 1.25rem),1200px); }
}
