.listing-page{padding:32px 48px}.breadcrumb-custom{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;font-family:ui-monospace,monospace;font-size:12px}.listing-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.listing-head h1{letter-spacing:-.02em;margin:0 0 8px;font-family:Instrument Serif,Georgia,serif;font-size:56px;line-height:1}.listing-head .meta{color:var(--muted);gap:14px;font-family:ui-monospace,monospace;font-size:12px;display:flex}.gallery{border-radius:var(--r-lg);grid-template-rows:1fr 1fr;grid-template-columns:2fr 1fr 1fr;gap:8px;height:460px;display:grid;overflow:hidden}.gallery .ph{aspect-ratio:auto;height:100%}.gallery .a{grid-row:1/3}.gallery-single{border-radius:var(--r-lg);background:var(--soft);height:460px;position:relative;overflow:hidden}.gallery:has(.gallery-single){border-radius:0;height:auto;display:block;overflow:visible}.listing-content{grid-template-columns:1fr 380px;gap:48px;margin-top:36px;display:grid}.listing-content h3{margin:0 0 12px;font-family:Instrument Serif,Georgia,serif;font-size:28px}.specs{grid-template-columns:1fr 1fr;gap:14px;margin:24px 0;display:grid}.specs.cols-3{grid-template-columns:1fr 1fr 1fr}.spec{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:14px 16px}.spec .l{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,monospace;font-size:11px}.spec .v{margin-top:4px;font-family:Instrument Serif,Georgia,serif;font-size:24px}.spec .note{color:var(--muted-2);margin-top:2px;font-family:ui-monospace,monospace;font-size:11px}.price-breakdown{background:var(--soft);border-radius:var(--r);margin:12px 0;padding:14px 16px}.price-breakdown .prow{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.price-breakdown .prow .pl{color:var(--muted)}.price-breakdown .prow.once .pl:after{content:" (once)";font-size:10px}.price-breakdown .prow.grand{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:14px;font-weight:600}.book-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:24px;position:sticky;top:80px}.book-card .price-row{align-items:baseline;gap:6px;display:flex}.book-card .price{font-family:Instrument Serif,Georgia,serif;font-size:40px;line-height:1}.book-card .price-unit{color:var(--muted);font-family:ui-monospace,monospace;font-size:12px}.book-card .field{border:1px solid var(--line);border-radius:var(--r);margin-top:10px;padding:10px 14px}.book-card .field .l{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-family:ui-monospace,monospace;font-size:10px}.book-card .field .v{margin-top:2px;font-size:14px}.book-card .totals{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.book-card .totals .row{justify-content:space-between;padding:4px 0;font-size:14px;display:flex}.book-card .totals .row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:18px}.book-card .totals .row.total .v{font-family:Instrument Serif,Georgia,serif;font-size:24px}.listing-chips{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.pub-logo{border-radius:var(--r);background:var(--ink);color:#fff;text-align:center;flex-shrink:0;place-items:center;width:92px;min-height:92px;padding:10px;font-family:Instrument Serif,Georgia,serif;font-size:21px;line-height:1.05;display:grid}.pub-freq{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-family:ui-monospace,monospace;font-size:12px}.map-canvas{border-radius:var(--r-lg);border:1px solid var(--line);height:320px;margin-top:12px;position:relative;overflow:hidden}.icon-btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;place-items:center;width:30px;height:30px;font-size:16px;line-height:1;transition:background-color .12s,border-color .12s;display:grid}.icon-btn:hover{background:var(--soft);border-color:var(--ink)}.book-form .bf-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:14px 0 6px;font-family:ui-monospace,monospace;font-size:10px}.book-form select,.book-form textarea,.book-form input[type=date]{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);width:100%;color:var(--ink);padding:10px 12px;font:500 14px Montserrat,sans-serif}.book-form textarea{resize:vertical;min-height:64px}.book-form .bf-dates{grid-template-columns:1fr 1fr;gap:8px;display:grid}.book-form .bf-days{flex-wrap:wrap;gap:4px;display:flex}.book-form .bf-day{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);cursor:pointer;min-width:36px;color:var(--muted);flex:1;padding:7px 0;font:600 11px ui-monospace,monospace;transition:all .12s}.book-form .bf-day.on{background:var(--ink);border-color:var(--ink);color:#fff}.book-form .bf-toggle{border:1px solid var(--line);border-radius:var(--r);cursor:pointer;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.book-form .bf-toggle input{margin-top:3px}.book-form .bf-toggle .tl{font-size:13px;font-weight:600}.book-form .bf-toggle .td{color:var(--muted);margin-top:2px;font-size:11px}.bf-summary{background:var(--soft);border-radius:var(--r);margin-top:16px;padding:14px 16px}.bf-summary .bf-row{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.bf-summary .bf-row .bl{color:var(--muted)}.bf-summary .bf-row.grand{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:14px;font-weight:600}[x-cloak]{display:none!important}.inv-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}@media (width<=992px){.listing-content{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;height:360px}.gallery .a{grid-area:auto/1/auto/-1}.inv-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.listing-page{padding:24px 16px}.listing-head{flex-direction:column;align-items:flex-start;gap:12px}.listing-head h1{font-size:32px}.listing-content h3{font-size:20px}.gallery{height:260px}.specs,.specs.cols-3{grid-template-columns:1fr 1fr}}@media (width<=576px){.listing-head h1{font-size:26px}.book-card{padding:16px}.book-card .price{font-size:32px}.gallery{grid-template-columns:1fr;height:auto}.gallery .ph{aspect-ratio:4/3;height:auto}.gallery-single{height:260px}.inv-grid{grid-template-columns:1fr}}
