*{ box-sizing:border-box; }
img{ max-width:100%; height:auto; }

.hvy-navhead{ border-bottom:1px solid #222; text-align:center; }
.hvy-navlogo{ font-size:3rem; font-weight:900; letter-spacing:4px; }
.hvy-navnav{ display:flex; justify-content:center; gap:2rem; }
.hvy-navnav a{ text-decoration:none; font-size:1rem; font-weight:700; letter-spacing:1px; padding:0.5rem; transition:.2s; border-bottom:2px solid transparent;}
.hvy-navnav a:hover,.hvy-navnav a.active{ color:#ff008c; border-bottom-color:#ff008c;}


 .hvymc { display:flex; flex-direction:column; gap:0.5rem; }
 .hcard2 { display:flex; flex-direction:row; gap:0.5rem; }
 .hcardleft{ width:30%; aspect-ratio:16/9; overflow:hidden; }
 .hcardleft img{ width:100%; height:100%; object-fit:cover; display:block; }
 .hcardright { }
 .hhhero{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
 .hcard{ position:relative; aspect-ratio:16/8; overflow:hidden; }
 .hcard img{ width:100%; height:100%; display:block; object-fit:cover; }
 .hhoverlay{ position:absolute; left:0; right:0; bottom:0; padding:0.5rem; color:#fff; background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 90%,rgba(0,0,0,0) 100%); }
 .hvyffmeta{ font-size:.8rem; text-transform:uppercase; line-height:1.2; font-weight:900; }
 .hvyffdate { }
 .hvyfftype{ color:red; font-weight:700; margin-left:.4rem; }
 .hvyfftitle{ font-size:1rem; line-height:1.2; }
 .hvylo { max-width:1400px; margin:0 auto; padding:1rem; display:grid;  grid-template-columns:40% 60%; gap:1rem; }
 .hvysb { display:flex; flex-direction:column }
 .hvytp { margin-bottom:1rem } 
 .hvyfc { gap:1rem; display:flex; flex-direction:column }
 .hvybp { display:flex; flex-direction:row; gap:1rem; }
 .hvytitle { font-size:1rem; padding:0.5rem; font-weight:900; letter-spacing:.2rem; background:black; color:white; }
 .hpanel2 { width:100% }


.hvyreview{ display:flex; gap:.5rem; padding:.75rem 1rem; border-bottom:1px solid #7c7878; }
.hpanel2 .hvyreview:last-child { border-bottom:none; }
.hvyreview img{ width:80px; height:60px; object-fit:cover; }
.hvyreview a{ text-decoration:none; font-weight:600; font-size:1rem; }
.hrevcontent { }
.hvyrevleft { }
.hvyrevright { }
.hvyevm{ font-size:.75rem; color:#000; text-transform:uppercase; margin-bottom:.25rem; line-height:1; }
.hrevdate{ color:#000; font-weight:900; }
.hrevart { font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:.2rem; }
.hrevtit{ color:red; font-weight:700; margin-left:.4rem; }

.hvy-footer{ border-top:1px solid #222; text-align:center; padding:2rem 1rem; margin-top:2rem; }
.hvy-footerlogo{ font-size:2rem; font-weight:900; letter-spacing:4px; margin-bottom:1rem; }
.hvy-footernav{ display:flex; justify-content:center; gap:1.5rem; flex-wrap:wrap; margin-bottom:1rem; }
.hvy-footernav a{ text-decoration:none; font-size:.9rem; font-weight:700; letter-spacing:1px; transition:.2s; }
.hvy-footernav a:hover{ color:#ff008c; }
.hvy-footercopy{ font-size:.8rem; color:#888; }

.hvy-page-grid{ padding:0.5rem; max-width:1400px; margin:0 auto; }
.hwrap{ max-width:1400px; margin:0 auto; padding:1rem; }
.hlayout{ max-width:1400px; margin:0 auto; padding:1rem; display:grid; grid-template-columns:minmax(0,3fr) 25%; gap:1rem; }
.hev-main{} .hev-type{} .hvyfdate{} .hpanel{} .hvyfitem a{}

.hero-container{ gap:1rem; display:flex; flex-direction:row; }
.hero-title{ width:5%; background:black; color:white; writing-mode:vertical-rl; text-orientation:upright; padding:0.5rem; font-weight:900; }
.hhero{ display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.hhero-card{ position:relative; aspect-ratio:16/8; overflow:hidden; }
.hhero-card img{ width:100%; height:100%; display:block; object-fit:cover; }
.hoverlay{ position:absolute; left:0; right:0; bottom:0; padding:0.5rem; color:#fff; background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 90%,rgba(0,0,0,0) 100%); }

.hmainpanel{ margin-bottom:1.5rem; }
.hgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:0.5rem; }
.hthb{ position:relative; width:100%; aspect-ratio:16/10; overflow:hidden; }
.hthb img{ width:100%; height:100%; object-fit:cover; display:block; }
.hvyfmeta{ font-size:.8rem; text-transform:uppercase; line-height:1.2; gap:0.5rem; font-weight:900; }
.hvyftype{ color:red; font-weight:700; margin-left:.4rem; }
.hvyftitle{ font-size:1rem; line-height:1.2; }
.hcard a{ color:inherit; text-decoration:none; }
.hcard h3{ margin:0.3rem; font-size:0.8rem; }
.hcard p{ margin:0.3rem; color:#555; font-size:1rem; }
.hsb{ display:flex; flex-direction:column; gap:1rem; }

.hpanel{ }
.hpanel-title{ padding:0.5rem; font-weight:900; letter-spacing:.2rem; background:black; color:white; }

.hrev{ display:flex; gap:.5rem; padding:.75rem 1rem; border-bottom:1px solid #7c7878; }
.hpanel .hrev:last-child { border-bottom:none; }
.hrev img{ width:80px; height:60px; object-fit:cover; }
.hrev a{ text-decoration:none; font-weight:600; font-size:1rem; }
.hrevcontent { }
.hrevm{ font-size:.75rem; color:#000; text-transform:uppercase; margin-bottom:.25rem; line-height:1; }
.hrevd{ color:#000; font-weight:900; }
.hrevartist { font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:.2rem; }
.hrevt{ color:red; font-weight:700; margin-left:.4rem; }

.hsearch form { display:flex; flex-direction:row; gap:1rem; }
.hsearch input{ width:100%; padding:0.5rem; border:1px solid #ddd; margin-bottom:.5rem; box-sizing:border-box; }
.hsearch button{ padding:0.5rem; border:0; background:#000; color:#fff; margin-bottom:.5rem; cursor:pointer; font-weight:700; }
.hvyfgrid{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1rem; }
.hvyfitem{ padding:0.25rem; border:1px solid #fff; border-radius:.4rem; transition:border-color .2s ease,transform .2s ease; }
.hvyfitem:hover{ border-color:#ef3b34; transform:translateY(-2px); }
.hvyfthumb{ position:relative; aspect-ratio:1/1; }
.hvyfthumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.hvyfoverlay{ position:absolute; left:0; right:0; bottom:0; padding:0.5rem; color:#fff; background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 90%,rgba(0,0,0,0) 100%); }
@media(max-width:1200px){ .hvyfgrid{ grid-template-columns:repeat(4,1fr); } }

@media(max-width:900px){.hlayout{grid-template-columns:1fr;}.hero-container{flex-direction:column;}
.hero-title{width:100%;writing-mode:horizontal-tb;text-orientation:mixed;text-align:center;letter-spacing:.2rem;}
.hhero{grid-template-columns:repeat(2,1fr);}.hgrid{grid-template-columns:repeat(2,1fr);}
.hsb{margin-top:1rem;}.hvy-navlogo{font-size:2.5rem;}.hvy-navnav{flex-wrap:wrap;gap:1rem;}.hvyfgrid{grid-template-columns:repeat(3,1fr);}}

@media(max-width:600px){.hwrap{padding:.5rem;}.hhero{grid-template-columns:1fr;}
.hhero-card{aspect-ratio:16/10;}.hgrid{grid-template-columns:1fr;}.hvyfgrid{grid-template-columns:repeat(2,1fr);}.hnewsitem{padding:.5rem;}
.hvy-navlogo{font-size:2rem;}.hvy-navnav{gap:.5rem;}.hvy-navnav a{font-size:.9rem;padding:.25rem;}.hero-title{padding:.75rem;}}

@media(max-width:480px){.hvyfgrid{grid-template-columns:1fr;}.hvy-navnav{justify-content:center;}.hpanel-title{font-size:.9rem;}.hvyftitle{font-size:.9rem;}}
