.hp-section{max-width:1180px;margin:32px auto;padding:20px;color:#26372e}.hp-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.hp-head h2{margin:0;font-size:29px}.hp-head a,.hp-link{color:#89602e;text-decoration:underline;text-underline-offset:4px}.hp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.hp-card{min-width:0;border:1px solid #ddd3c2;border-radius:14px;overflow:hidden;background:#fffef9;box-shadow:0 5px 20px #23382b08}.hp-body{padding:22px}.hp-body h3{margin:12px 0;font-size:23px}.hp-body p{color:#69736a;white-space:pre-line;overflow-wrap:anywhere}.hp-tag{display:inline-block;padding:4px 12px;background:#eee9dd;border-radius:20px;font-size:12px}.hp-visual{width:100%;height:225px;object-fit:cover;display:block;background:#eae5d9}.hp-card video.hp-visual{object-fit:contain;background:#172923}.hp-empty{padding:30px;border:1px solid #ddd3c2;border-radius:14px;color:#69736a;background:#fffef9}.hp-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px}.hp-split .hp-card{width:100%}.hp-detail{border:1px solid #d8ddcf;border-radius:18px;width:min(850px,calc(100% - 28px));max-height:88vh;padding:24px;background:#fffef9;color:#26372e}.hp-detail::backdrop{background:#0009}.hp-detail img,.hp-detail video{display:block;width:100%;max-height:65vh;object-fit:contain;margin:18px 0;background:#172923}.hp-detail p{white-space:pre-line;overflow-wrap:anywhere}.hp-detail button,.hp-admin button{padding:10px 17px;border-radius:8px;cursor:pointer;background:#26372e;color:white;border:0}.hp-detail h2{font-size:28px}.hp-stops{line-height:2}.hp-admin{margin:20px 0}.hp-admin .hp-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hp-admin select,.hp-admin input{width:100%;min-width:0}.hp-admin label{display:block;margin:10px 0 5px}.hp-admin button{margin:10px 0}.hp-note{font-size:14px;color:#69736a}.hp-status[role=alert]{color:#9c2626}.hp-open{background:transparent!important;color:#89602e!important;border:0;text-decoration:underline;cursor:pointer;font:inherit;padding:6px 0}.hp-kind{font-size:12px}.hp-section:focus{outline:none}@media(max-width:850px){.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-split{grid-template-columns:1fr}.hp-head{align-items:flex-start}.hp-head h2{font-size:25px}.hp-admin .hp-slots{grid-template-columns:1fr}}@media(max-width:550px){.hp-section{padding:16px;margin:18px auto}.hp-grid{grid-template-columns:1fr}.hp-head{flex-wrap:wrap}.hp-visual{height:220px}.hp-detail{padding:16px}}

.hp-video-section{margin-block:16px;padding-block:10px}
.hp-video-section .hp-head{margin-bottom:12px}
.hp-video-section .hp-head h2{font-size:clamp(1.1rem,2.5vw,1.55rem)}
.hp-video-section .hp-head a{flex:none;padding-block:8px}
.hp-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,18px)}
.hp-video-card{display:flex;min-width:0;flex-direction:column;align-items:stretch;gap:0;padding:0;text-align:start;border:1px solid #d5ddd6;border-radius:12px;overflow:hidden;background:#fff;color:#26372e;font:inherit;cursor:pointer}
.hp-video-card:focus-visible{outline:3px solid #8c572c;outline-offset:2px}
.hp-video-cover{position:relative;display:grid;place-items:center;aspect-ratio:16/9;max-height:148px;background:linear-gradient(145deg,#21453e,#437566);overflow:hidden}
.hp-video-cover img{position:absolute;width:100%;height:100%;object-fit:cover}
.hp-play-icon{z-index:1;display:grid;place-items:center;width:clamp(26px,6vw,44px);aspect-ratio:1;border-radius:50%;background:#17322ce8;color:#fff;border:1px solid #ffffff75;font-size:clamp(.7rem,2vw,1rem);padding-inline-start:2px}
.hp-video-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:8px 9px;line-height:1.45;font-size:clamp(.75rem,2.45vw,1rem);font-weight:700;overflow-wrap:anywhere}
.hp-gallery-nav{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}
.hp-video-dialog video{display:block;width:100%;max-height:68dvh;background:#142520;object-fit:contain}
@media(max-width:540px){.hp-video-section{padding-inline:10px;margin-block:12px}.hp-video-title{margin:6px}.hp-video-card{border-radius:8px}}
