/*! HappyLand theme — generic pages, posts, archives, search, 404, comments */
.hl-main{padding:40px 0 80px;min-height:50vh}
.hl-page-head{margin-bottom:26px}
.hl-page-head h1{font-size:clamp(30px,4vw,46px)}
.hl-desc{color:var(--ink-soft);margin-top:6px;max-width:720px}
.hl-page,.hl-single{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-lg);padding:clamp(20px,4vw,40px);box-shadow:var(--shadow-soft)}
.hl-page>.hl-page-head,.hl-single>.hl-page-head{margin-bottom:18px}
.hl-meta{font-size:12.5px;font-weight:700;color:var(--ink-soft);margin-top:4px}
.entry-content{font-size:16px;line-height:2.1}
.entry-content>*+*{margin-top:1.1em}
.entry-content h2,.entry-content h3,.entry-content h4{font-family:var(--font-disp);margin-top:1.6em}
.entry-content h2{font-size:28px}.entry-content h3{font-size:23px}
.entry-content a{color:var(--pink-hard);text-decoration:underline;text-underline-offset:4px}
.entry-content ul,.entry-content ol{padding-inline-start:1.4em}
.entry-content ul{list-style:disc}.entry-content ol{list-style:decimal}
.entry-content blockquote{border-inline-start:6px solid var(--pink);background:var(--pink-soft);border-radius:var(--r-sm);padding:14px 20px;font-weight:600}
.entry-content img{border-radius:var(--r-md);height:auto}
.entry-content table{width:100%;border-collapse:collapse}
.entry-content th,.entry-content td{border:2px solid var(--line);padding:8px 12px;text-align:right}
.alignleft{float:left;margin:0 20px 10px 0}.alignright{float:right;margin:0 0 10px 20px}.aligncenter{margin-inline:auto}
.wp-caption-text,figcaption{font-size:12.5px;color:var(--ink-soft);text-align:center;margin-top:6px}

.hl-post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}
.hl-post-card{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.hl-post-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift)}
.hl-post-thumb img{width:100%;height:190px;object-fit:cover}
.hl-post-card h2{font-size:21px;padding:16px 18px 4px}
.hl-excerpt{padding:0 18px 18px;color:var(--ink-soft);font-size:14px}
.hl-excerpt p{margin:0}
.hl-pagination{margin-top:34px;justify-content:center}

.hl-404{text-align:center;max-width:520px;margin:30px auto;display:grid;gap:12px;justify-items:center}
.hl-404 svg{width:min(240px,70%);height:auto}
.hl-404 h1,.hl-404 h2{font-size:clamp(28px,4vw,40px)}
.hl-404 p{color:var(--ink-soft)}
.hl-none{background:var(--paper);border:2px dashed var(--line);border-radius:var(--r-lg);padding:40px 20px}

.hl-comments{margin-top:34px}
.hl-comments h2{font-size:24px;margin-bottom:14px}
.comment-list{display:grid;gap:14px;list-style:none}
.comment-list .children{margin-inline-start:24px;margin-top:12px;display:grid;gap:12px;list-style:none}
.comment-body{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-md);padding:14px 18px}
.comment-meta{font-size:12.5px;color:var(--ink-soft);font-weight:700;margin-bottom:6px}
.comment-respond{margin-top:24px}
.comment-form{display:grid;gap:12px}
.comment-form label{display:block;font-weight:800;font-size:13px;margin-bottom:4px}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;border:2px solid var(--ink);border-radius:14px;padding:11px 16px;font:inherit;background:var(--paper);outline:none}
.comment-form .submit{background:var(--pink);color:#fff;border:2px solid var(--ink);border-radius:99px;padding:11px 28px;font-weight:800;box-shadow:0 5px 0 var(--pink-hard)}
.search-form{display:flex;gap:8px}
.skip-link{position:absolute;inset-inline-start:-9999px}
.hl-main select,.hl-main input[type=search]{border:2px solid var(--ink);border-radius:14px;padding:10px 14px;font:inherit;background:var(--paper)}
.entry-content a.button,.entry-content .wc-forward{text-decoration:none;color:#fff}
.hl-page .woocommerce{margin-top:6px}
