.eyebrow{font-size:13px;font-weight:650;color:var(--green);letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.project-detail .page-intro{padding-bottom:26px}.project-jump{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.project-jump a{padding:10px 17px;border:1px solid var(--line);border-radius:4px;text-decoration:none;font-size:14px;font-weight:600;min-height:44px}.project-jump a:hover{background:var(--pale);border-color:var(--green)}.project-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:start}.project-main-visual{min-width:0}.project-main-visual>.media-tile img{width:100%;aspect-ratio:16/10;object-fit:cover}.project-summary{padding:28px;background:var(--pale);min-width:0}.project-summary h2{font-size:27px;margin:24px 0 14px}.project-summary>p{font-size:15px;margin-bottom:22px}.project-summary .specs{margin:0}.project-summary .specs>div{gap:16px}.project-summary .specs dd{margin:0;overflow-wrap:anywhere}.project-summary>.button{width:100%;margin-top:10px}.project-summary .form-note{margin-bottom:0}.project-plans,.project-detail #project-views,.project-detail #project-options{scroll-margin-top:22px}.project-plans{border-bottom:1px solid var(--line)}.project-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project-plan-grid.single-plan{grid-template-columns:minmax(0,960px);justify-content:center}.project-plan-grid figure{margin:0;min-width:0}.project-plan-grid figcaption{font-size:14px;color:var(--muted);padding-top:12px}.media-tile{display:block;position:relative;text-decoration:none;background:#fff;min-width:0}.project-plan-grid .media-tile{border:1px solid var(--line);padding:16px 16px 52px}.project-plan-grid .media-tile img{width:100%;height:auto;max-height:680px;object-fit:contain}.media-tile:hover{outline:2px solid var(--green);outline-offset:2px}.media-enlarge{position:absolute;bottom:12px;right:12px;padding:6px 12px;background:#fff;color:var(--green);font-size:13px;font-weight:600;border:1px solid var(--line);border-radius:3px;box-shadow:0 2px 8px #0001}.project-view-grid .media-tile img{width:100%;height:100%;max-height:480px;object-fit:contain;background:var(--pale)}.project-documents{margin-top:24px;display:flex;gap:12px 24px;align-items:center;flex-wrap:wrap}.project-documents h3{font-size:18px}.project-documents a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.plan-request{background:var(--pale);padding:32px}.plan-request p{margin:18px 0 24px}.project-estimate{display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--pale);padding:30px}.project-estimate p{margin-top:12px;font-size:15px}.project-estimate .button{flex-shrink:0}.project-mobile-action{display:none}.card-plans-link{display:flex!important;justify-content:space-between;align-items:center;color:var(--green);border:1px solid var(--line);border-radius:4px;padding:10px 15px;margin-top:14px;min-height:44px;font-size:14px;font-weight:600}.card-plans-link:hover{background:var(--pale);border-color:var(--green)}
.media-dialog{padding:0;border:0;border-radius:8px;width:min(1400px,96vw);max-width:96vw;height:94vh;height:94dvh;max-height:96dvh;background:#fff;color:var(--ink);overflow:hidden;overscroll-behavior:contain}.media-dialog::backdrop{background:rgb(16 27 24 / 82%)}.media-dialog[open]{display:flex;flex-direction:column}.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line);flex-shrink:0}.viewer-toolbar h2{font-size:18px;line-height:1.35;letter-spacing:0;overflow-wrap:anywhere}.media-dialog button{font:inherit;font-size:14px;cursor:pointer;padding:10px 14px;min-height:44px;border:1px solid #aebbb5;border-radius:4px;background:white;color:var(--ink);flex-shrink:0}.media-dialog button:hover{background:var(--pale);border-color:var(--green)}.media-dialog button:disabled{opacity:.4;cursor:default}.viewer-stage{flex:1;min-height:0;overflow:auto;display:grid;place-items:center;background:#f1f3f1;overscroll-behavior:contain;padding:12px}.viewer-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;min-height:0}.viewer-stage.is-zoomed{display:block}.viewer-stage.is-zoomed img{max-width:none;max-height:none;height:auto;margin:0 auto}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:12px;padding:12px;flex-wrap:wrap}.viewer-controls span{font-size:14px;min-width:55px;text-align:center;font-variant-numeric:tabular-nums}.viewer-status{font-size:13px;text-align:center;margin:0 auto;padding:0 16px 12px}.viewer-open{overflow:hidden}
@media(max-width:960px){.project-overview{gap:26px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.project-summary{padding:22px}.project-summary .specs>div{font-size:14px}}
@media(max-width:680px){.project-overview{grid-template-columns:1fr}.project-jump{gap:7px;margin-bottom:22px}.project-jump a{padding:9px 12px;font-size:13px}.project-plan-grid{grid-template-columns:1fr;gap:28px}.project-plan-grid .media-tile{padding:6px 6px 47px}.project-main-visual>.media-tile img{aspect-ratio:16/10}.project-summary h2{font-size:25px}.project-summary .specs{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.project-summary .specs>div{display:block;padding:10px 0;border-bottom:1px solid var(--line)}.project-summary .specs dd{font-size:20px;margin-top:5px}.project-estimate{display:block;padding:24px}.project-estimate .button{width:100%;margin-top:22px}.project-mobile-action{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:15;background:#fff;box-shadow:0 -2px 12px #0002;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.project-mobile-action .button{flex:1;padding:10px 8px;min-height:46px;font-size:14px}body:has(.project-mobile-action){padding-bottom:85px}html:has(.project-mobile-action){scroll-padding-bottom:100px}.media-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.viewer-toolbar{padding:12px;align-items:start}.viewer-toolbar h2{font-size:15px}.viewer-toolbar button{font-size:13px;padding:10px}.viewer-stage{padding:6px}.viewer-controls{gap:8px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.viewer-status:empty{display:none}}
