Compare commits

..

16 Commits

Author SHA1 Message Date
Bayu e792afec16 fix(LimaEm): revert Kegiatan Unggulan to standard max-w-7xl container per user request 2026-06-04 21:07:51 +07:00
Bayu 3076c922e3 fix(LimaEm): perfect full-width layout matching max-w-7xl standard container and precise gradient inline style 2026-06-04 21:02:58 +07:00
Bayu 3e87d77b04 chore(LimaEm): add fix.js 2026-06-04 21:00:36 +07:00
Bayu 6a6f316e5f Revert "fix(LimaEm): re-apply full-width layout and inline hero styles after merging origin/main"
This reverts commit 3b52480c81.
2026-06-04 20:55:56 +07:00
Bayu 3b52480c81 fix(LimaEm): re-apply full-width layout and inline hero styles after merging origin/main 2026-06-04 20:52:07 +07:00
Bayu eef091582d Merge branch 'main' into enhance/hover-effects-and-interactions 2026-06-04 20:50:36 +07:00
Bayu 766a930542 fix(LimaEm): Hero 100% inline style — gradient biru, badge kuning, heading, dan button cocok referensi 2026-06-04 20:41:40 +07:00
powji17 c8cb265394 fix(lima-em): perbaiki layout ukuran card kegiatan unggulan dan grid galeri keseruan 2026-06-04 20:38:55 +07:00
Bayu 35f1dd3865 fix(LimaEm): break sections out of container so content fills full viewport width edge-to-edge 2026-06-04 20:27:33 +07:00
Bayu 54b00194a8 fix(LimaEm): make all sections full-width, fix button hover inline style, add yellow glow on active partners 2026-06-04 20:16:33 +07:00
powji b42edb3356 Merge pull request 'feature/konten-lima-em' (#2) from feature/konten-lima-em into main
Reviewed-on: #2
2026-06-04 13:05:55 +00:00
powji17 7996ee0186 feat(lima-em): menambahkan implementasi fitur bilingual ID-EN pada konten 2026-06-04 20:01:23 +07:00
Bayu bedac5851e enhance(LimaEm): restore missing hover/interaction effects across all sections 2026-06-04 20:01:05 +07:00
Bayu 034b131c12 fix(LimaEm): tidy up Ruang Tumbuh layout and add Kehidupan Mahasiswa hero gradient 2026-06-04 19:40:03 +07:00
powji17 243541d1e4 feat(lima-em): migrasi seluruh konten section dan script ke development kit 2026-06-04 18:32:30 +07:00
powji e07d70093b Merge pull request 'feat/LimaEm-group' (#1) from feat/LimaEm-group into main
Reviewed-on: #1
2026-06-04 10:54:09 +00:00
4 changed files with 632 additions and 164 deletions
+140
View File
@@ -569,6 +569,76 @@ const translations = {
kontrib_guideline_3: "Sertakan fakta dan data yang akurat dan dapat diverifikasi.", kontrib_guideline_3: "Sertakan fakta dan data yang akurat dan dapat diverifikasi.",
kontrib_guideline_4: "Hindari plagiarisme. Karya harus orisinal.", kontrib_guideline_4: "Hindari plagiarisme. Karya harus orisinal.",
kontrib_guideline_5: "Tim redaksi berhak menyunting konten untuk keperluan editorial.", kontrib_guideline_5: "Tim redaksi berhak menyunting konten untuk keperluan editorial.",
grp_limaem_hero_badge: "KOMUNITAS & KEPEMIMPINAN",
grp_limaem_hero_title: "Kehidupan Mahasiswa & Himpunan (HMIF)",
grp_limaem_hero_desc: "Membangun ekosistem kolaboratif di mana teknologi bertemu dengan kreativitas, membentuk calon pemimpin industri masa depan.",
grp_limaem_hero_btn: "Lihat Struktur Kepengurusan",
grp_limaem_about_title: "Ruang Tumbuh Bagi Mahasiswa Informatika",
grp_limaem_about_p1: "Himpunan Mahasiswa Informatika (HMIF) Universitas Tanjungpura bukan sekadar organisasi, melainkan rumah bagi para pemimpin teknologi. Kami percaya bahwa pendidikan formal adalah fondasi, namun komunitas adalah akselerator.",
grp_limaem_about_p2: "Melalui berbagai inisiatif, kami menjembatani kesenjangan antara kurikulum akademik dan kebutuhan industri, sambil tetap menjaga semangat kekeluargaan dan integritas ilmiah.",
grp_limaem_about_stat_students: "Mahasiswa Aktif",
grp_limaem_about_stat_partners: "MITRA",
grp_limaem_about_badge: "Inklusivitas & Kolaborasi",
grp_limaem_partners_title: "Partner dan Kolaborator",
grp_limaem_divisi_title: "Divisi Kepengurusan HMIF",
grp_limaem_divisi_desc: "Struktur organisasi yang dirancang untuk efisiensi dan pengembangan kapasitas anggota di berbagai bidang strategis.",
grp_limaem_divisi_b1_label: "Bidang 1",
grp_limaem_divisi_b1_title: "Pengembangan Sumber Daya Mahasiswa dan Kaderisasi",
grp_limaem_divisi_b1_desc: "Divisi ini menyelenggarakan kaderisasi terstruktur, mentoring berkala, dan pelatihan kepemimpinan serta soft-skill. Program kerja mencakup onboarding anggota baru, workshop kepemimpinan, proyek kolaboratif, dan kegiatan pengabdian yang melatih tanggung jawab sosial. Fokusnya adalah menyiapkan kader yang kompeten dan menjaga regenerasi organisasi.",
grp_limaem_divisi_b2_label: "Bidang 2",
grp_limaem_divisi_b2_title: "Media Komunikasi dan Konten Digital",
grp_limaem_divisi_b2_desc: "Divisi ini mengelola strategi komunikasi dan produksi konten HMIF, termasuk perencanaan editorial, manajemen media sosial, serta dokumentasi acara. Program kerjanya meliputi pembuatan materi promosi, publikasi kegiatan, dan penguatan identitas digital agar informasi organisasi tersampaikan konsisten dan menarik.",
grp_limaem_divisi_b3_label: "Bidang 3",
grp_limaem_divisi_b3_title: "Inovasi dan Kompetisi Teknologi",
grp_limaem_divisi_b3_desc: "Divisi ini memfasilitasi persiapan lomba dan pengembangan proyek teknis melalui coaching clinic, bootcamp berbasis proyek, serta study club untuk Competitive Programming, Software Development, dan Data/ML. Kegiatan termasuk seleksi internal, bimbingan kompetitif, dan inisiatif digitalisasi seperti pengembangan website dan dashboard untuk mendukung ekosistem inovasi HMIF.",
grp_limaem_divisi_b4_label: "Bidang 4",
grp_limaem_divisi_b4_title: "Pengembangan Organisasi",
grp_limaem_divisi_b4_desc: "Divisi ini memperkuat tata kelola dan kapabilitas internal melalui pelatihan pengurus, penyusunan SOP sederhana, dan evaluasi proses kerja. Program kerjanya mencakup pengembangan budaya organisasi, peningkatan efektivitas koordinasi, dan kegiatan peningkatan profesionalisme sehingga operasi HMIF menjadi lebih terstruktur dan efisien.",
grp_limaem_divisi_b5_label: "Bidang 5",
grp_limaem_divisi_b5_title: "Sosial Masyarakat",
grp_limaem_divisi_b5_desc: "Divisi ini merancang dan melaksanakan program pengabdian serta aksi sosial yang berdampak, termasuk pendampingan komunitas dan bantuan kemanusiaan. Kegiatan meliputi identifikasi kebutuhan lapangan, pelaksanaan terstruktur, dan evaluasi dampak untuk memastikan keberlanjutan dan manfaat nyata bagi masyarakat.",
grp_limaem_divisi_b6_label: "Bidang 6",
grp_limaem_divisi_b6_title: "Kewirausahaan dan Kemitraan",
grp_limaem_divisi_b6_desc: "Divisi ini mengembangkan unit usaha organisasi, merancang skema pendanaan kreatif, dan menjalin kemitraan strategis untuk mendukung keberlanjutan program HMIF. Unit kerjanya meliputi riset peluang usaha, penyusunan proposal kemitraan, dan pengelolaan sponsor untuk meningkatkan kemandirian finansial dan akses jaringan profesional.",
grp_limaem_kegiatan_title: "Kegiatan Unggulan",
grp_limaem_kegiatan_subtitle: "Kegiatan tahunan yang menjadi ikon Informatika UNTAN.",
grp_limaem_kegiatan_c1_title: "Silaturahmi Keluarga Besar Informatika",
grp_limaem_kegiatan_c1_desc: "Kegiatan buka bersama seluruh keluarga Informatika Untan yang selalu diadakan setiap tahunnya.",
grp_limaem_kegiatan_c2_title: "GEMASTIK",
grp_limaem_kegiatan_c2_desc: "Ajang kompetisi IT bergengsi tingkat nasional tahunan dari kementerian. Wadah bagi mahasiswa Informatika UNTAN untuk unjuk gigi di bidang programming, cyber security, data mining, hingga UI/UX.",
grp_limaem_kegiatan_c3_title: "Perayaan 17 Agustus",
grp_limaem_kegiatan_c3_desc: "Momen perayaan Hari Kemerdekaan Indonesia yang diisi dengan berbagai perlombaan menarik. Ajang seru-seruan bersama untuk mempererat rasa nasionalisme dan kekeluargaan mahasiswa Informatika.",
grp_limaem_kegiatan_c4_title: "Bootcamp HMIF",
grp_limaem_kegiatan_c4_desc: "Program intensif pengembangan skill teknis mahasiswa Informatika bersama mentor profesional dari industri.",
grp_limaem_kegiatan_c5_title: "UPC",
grp_limaem_kegiatan_c5_desc: "Kompetisi Pemograman untuk mengasah skill coding mahasiswa Informatika.",
grp_limaem_kegiatan_c6_title: "INFORMERS",
grp_limaem_kegiatan_c6_desc: "Perayaan ulang tahun Informatika UNTAN, momen kebersamaan dan kebanggaan seluruh keluarga besar Informatika.",
grp_limaem_sc_title: "STUDY CLUB",
grp_limaem_sc_arise_title: "ARISE",
grp_limaem_sc_arise_desc: "Belajar logika dan algoritma bersama, di mana kalian bisa berkembang dan membuka peluang mengikuti kompetisi pemrograman di berbagai level.",
grp_limaem_sc_minerva_title: "MINERVA",
grp_limaem_sc_minerva_desc: "Gali potensi tersembunyi dari tumpukan data! Di sini kita akan bereksplorasi dengan algoritma Machine Learning, membedah teknik klasifikasi, hingga melatih model prediktif untuk menghasilkan insight yang bermakna.",
grp_limaem_sc_sd_title: "Software Development (Segera Hadir)",
grp_limaem_sc_sd_desc: "Wujudkan idemu jadi produk digital yang nyata! Kita akan ngoding bareng dari merancang frontend yang interaktif, membangun backend yang tangguh, serta mengintegrasikan berbagai API untuk menciptakan aplikasi web masa kini.",
grp_limaem_galeri_title: "Galeri Keseruan",
grp_limaem_cta_title: "Ada yang Ingin Ditanyakan Seputar HMIF?",
grp_limaem_cta_desc: "Bergabunglah dengan HMIF untuk memperluas jaringan, mengasah skill, dan menciptakan dampak nyata.",
grp_limaem_cta_btn: "Hubungi Kami",
grp_limaem_cta_info1_label: "Sekretariat",
grp_limaem_cta_info1_val: "Gedung Fakultas Teknik Lt. 2, Jl. Prof. Dr. H. Hadari Nawawi",
grp_limaem_cta_info2_label: "Jam Operasional",
grp_limaem_cta_info2_val: "Senin - Jumat, 08:00 - 17:00 WIB",
grp_limaem_cta_info3_label: "Media Sosial",
grp_limaem_cta_info3_val: "@hmif.untan, YouTube: HMIF UNTAN TV",
}, },
en: { en: {
@@ -1135,6 +1205,76 @@ const translations = {
kontrib_guideline_3: "Include accurate and verifiable facts and data.", kontrib_guideline_3: "Include accurate and verifiable facts and data.",
kontrib_guideline_4: "Avoid plagiarism. Work must be original.", kontrib_guideline_4: "Avoid plagiarism. Work must be original.",
kontrib_guideline_5: "The editorial team reserves the right to edit content for editorial purposes.", kontrib_guideline_5: "The editorial team reserves the right to edit content for editorial purposes.",
grp_limaem_hero_badge: "COMMUNITY & LEADERSHIP",
grp_limaem_hero_title: "Student Life & Student Association (HMIF)",
grp_limaem_hero_desc: "Building a collaborative ecosystem where technology meets creativity, shaping the industry leaders of tomorrow.",
grp_limaem_hero_btn: "View Organizational Structure",
grp_limaem_about_title: "A Space to Grow for Informatics Students",
grp_limaem_about_p1: "The Informatics Student Association (HMIF) of Tanjungpura University is more than just an organization — it is a home for technology leaders. We believe that formal education is the foundation, but community is the accelerator.",
grp_limaem_about_p2: "Through various initiatives, we bridge the gap between academic curriculum and industry needs, while maintaining the spirit of kinship and academic integrity.",
grp_limaem_about_stat_students: "Active Students",
grp_limaem_about_stat_partners: "PARTNERS",
grp_limaem_about_badge: "Inclusivity & Collaboration",
grp_limaem_partners_title: "Partners and Collaborators",
grp_limaem_divisi_title: "HMIF Organizational Divisions",
grp_limaem_divisi_desc: "An organizational structure designed for efficiency and capacity building across various strategic fields.",
grp_limaem_divisi_b1_label: "Division 1",
grp_limaem_divisi_b1_title: "Student Development and Cadre Regeneration",
grp_limaem_divisi_b1_desc: "This division organizes structured cadre programs, regular mentoring, and leadership and soft-skill training. Its activities include new member onboarding, leadership workshops, collaborative projects, and community service that fosters social responsibility. The focus is on preparing competent cadres and sustaining organizational regeneration.",
grp_limaem_divisi_b2_label: "Division 2",
grp_limaem_divisi_b2_title: "Communication Media and Digital Content",
grp_limaem_divisi_b2_desc: "This division manages HMIF's communication strategy and content production, including editorial planning, social media management, and event documentation. Its work programs include creating promotional materials, publishing activities, and strengthening digital identity to deliver consistent and engaging organizational information.",
grp_limaem_divisi_b3_label: "Division 3",
grp_limaem_divisi_b3_title: "Innovation and Technology Competition",
grp_limaem_divisi_b3_desc: "This division facilitates competition preparation and technical project development through coaching clinics, project-based bootcamps, and study clubs for Competitive Programming, Software Development, and Data/ML. Activities include internal selection, competitive coaching, and digitalization initiatives such as website and dashboard development to support HMIF's innovation ecosystem.",
grp_limaem_divisi_b4_label: "Division 4",
grp_limaem_divisi_b4_title: "Organizational Development",
grp_limaem_divisi_b4_desc: "This division strengthens internal governance and capabilities through board training, simple SOP drafting, and work process evaluation. Its programs include organizational culture development, improved coordination effectiveness, and professionalism initiatives, making HMIF operations more structured and efficient.",
grp_limaem_divisi_b5_label: "Division 5",
grp_limaem_divisi_b5_title: "Community Engagement",
grp_limaem_divisi_b5_desc: "This division designs and implements impactful community service programs and social actions, including community assistance and humanitarian aid. Activities cover field needs assessment, structured implementation, and impact evaluation to ensure sustainability and tangible benefits for the community.",
grp_limaem_divisi_b6_label: "Division 6",
grp_limaem_divisi_b6_title: "Entrepreneurship and Partnerships",
grp_limaem_divisi_b6_desc: "This division develops organizational business units, designs creative funding schemes, and establishes strategic partnerships to support the sustainability of HMIF programs. Its work units include business opportunity research, partnership proposal development, and sponsorship management to enhance financial independence and professional networking access.",
grp_limaem_kegiatan_title: "Flagship Events",
grp_limaem_kegiatan_subtitle: "Annual events that have become icons of Informatics UNTAN.",
grp_limaem_kegiatan_c1_title: "Informatics Family Gathering",
grp_limaem_kegiatan_c1_desc: "An annual iftar gathering held with the entire Informatics UNTAN family, a tradition maintained every year.",
grp_limaem_kegiatan_c2_title: "GEMASTIK",
grp_limaem_kegiatan_c2_desc: "A prestigious national-level IT competition held annually by the Ministry. A platform for Informatics UNTAN students to showcase their skills in programming, cyber security, data mining, and UI/UX.",
grp_limaem_kegiatan_c3_title: "Independence Day Celebration",
grp_limaem_kegiatan_c3_desc: "A celebration of Indonesian Independence Day filled with exciting competitions. A fun event to strengthen nationalism and the sense of kinship among Informatics students.",
grp_limaem_kegiatan_c4_title: "HMIF Bootcamp",
grp_limaem_kegiatan_c4_desc: "An intensive technical skill development program for Informatics students, guided by professional mentors from the industry.",
grp_limaem_kegiatan_c5_title: "UPC",
grp_limaem_kegiatan_c5_desc: "A Programming Competition to sharpen the coding skills of Informatics students.",
grp_limaem_kegiatan_c6_title: "INFORMERS",
grp_limaem_kegiatan_c6_desc: "The anniversary celebration of Informatics UNTAN, a moment of togetherness and pride for the entire Informatics family.",
grp_limaem_sc_title: "STUDY CLUBS",
grp_limaem_sc_arise_title: "ARISE",
grp_limaem_sc_arise_desc: "Learn logic and algorithms together, where you can grow and open opportunities to participate in programming competitions at various levels.",
grp_limaem_sc_minerva_title: "MINERVA",
grp_limaem_sc_minerva_desc: "Uncover hidden potential from mountains of data! Here we explore Machine Learning algorithms, dissect classification techniques, and train predictive models to generate meaningful insights.",
grp_limaem_sc_sd_title: "Software Development (Coming Soon)",
grp_limaem_sc_sd_desc: "Turn your ideas into real digital products! We will code together — from designing interactive frontends and building robust backends, to integrating various APIs to create modern web applications.",
grp_limaem_galeri_title: "Fun Gallery",
grp_limaem_cta_title: "Have Questions About HMIF?",
grp_limaem_cta_desc: "Join HMIF to expand your network, sharpen your skills, and create real impact.",
grp_limaem_cta_btn: "Contact Us",
grp_limaem_cta_info1_label: "Secretariat",
grp_limaem_cta_info1_val: "Engineering Faculty Building, 2nd Floor, Jl. Prof. Dr. H. Hadari Nawawi",
grp_limaem_cta_info2_label: "Office Hours",
grp_limaem_cta_info2_val: "Monday - Friday, 08:00 - 17:00 WIB",
grp_limaem_cta_info3_label: "Social Media",
grp_limaem_cta_info3_val: "@hmif.untan, YouTube: HMIF UNTAN TV",
} }
}; };
+73
View File
@@ -0,0 +1,73 @@
const fs = require('fs');
let c = fs.readFileSync('groups/LimaEm/index.html', 'utf8');
const oldHeroGrad = '<div class=\"absolute inset-0 bg-gradient-to-r from-hmif-primary via-hmif-primary/80 to-transparent z-0\"></div>';
const newHeroGrad = '<div class=\"absolute inset-0 z-0\" style=\"background: linear-gradient(to right, #003150 0%, rgba(0, 49, 80, 0.8) 50%, transparent 100%);\"></div>';
c = c.replace(oldHeroGrad, newHeroGrad);
const oldPhotoStr = \<!-- --- Right: Photo --- -->
<div class="order-2 relative mt-8 lg:mt-0 lg:pl-4">
<!-- Offset shadow block biru tua, posisi % (ikut skala zoom) -->
<div class="absolute top-[4%] left-[8%] right-[-4%] bottom-[-4%]
bg-hmif-primary rounded-2xl lg:rounded-3xl z-0 shadow-2xl"></div>
<!-- Frame foto overflow hidden, foto full width tanpa crop -->
<div
class="relative rounded-2xl lg:rounded-3xl overflow-hidden shadow-2xl z-10 group cursor-default">
<img src="./assets/images/ruang-tumbuh/ruangtumbuh_foto.jpeg"
alt="Ruang Tumbuh HMIF Universitas Tanjungpura" class="w-full h-auto block
transition-transform duration-700 ease-out group-hover:scale-[1.03]" />
<!-- Gradient overlay bawah -->
<div class="absolute inset-0
bg-gradient-to-t from-hmif-primary/45 via-transparent to-transparent
opacity-70 group-hover:opacity-45 transition-opacity duration-500"></div>
</div>
<!-- Badge Inklusivitas & Kolaborasi pojok kiri bawah -->
<div class="absolute z-20 bottom-[-3%] left-[0%]
bg-hmif-secondary text-hmif-primary
rounded-xl px-4 py-3 text-center shadow-2xl
border-2 border-white/20" style="min-width: 120px; max-width: 140px;">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2.5"
stroke="currentColor" class="w-6 h-6 mx-auto mb-1" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round"
d="M18 18.72a9.094 9.094 0 0 0 3.741-.479 3 3 0 0 0-4.682-2.72m.94 3.198.001.031c0 .225-.012.447-.037.666A11.944 11.944 0 0 1 12 21c-2.17 0-4.207-.576-5.963-1.584A6.062 6.062 0 0 1 6 18.719m12 0a5.971 5.971 0 0 0-.941-3.197m0 0A5.995 5.995 0 0 0 12 12.75a5.995 5.995 0 0 0-5.058 2.772m0 0a3 3 0 0 0-4.681 2.72 8.986 8.986 0 0 0 3.74.477m.94-3.197a5.971 5.971 0 0 0-.94 3.197m6.22-7.496a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm6-3a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Zm-12 0a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Z" />
</svg>
<p class="text-[11px] lg:text-xs font-bold leading-snug">
Inklusivitas &<br>Kolaborasi
</p>
</div>
</div>\;
const newPhotoStr = \<!-- --- Right: Photo --- -->
<div class="order-2 relative mt-8 lg:mt-0 flex justify-center lg:justify-end">
<!-- Offset shadow block biru tua -->
<div class="absolute inset-0 bg-hmif-primary translate-x-4 translate-y-4 rounded-2xl lg:rounded-3xl z-0 shadow-2xl" style="background-color: #003150;"></div>
<!-- Frame foto -->
<div class="relative w-full rounded-2xl lg:rounded-3xl overflow-hidden shadow-2xl z-10 group cursor-default bg-gray-200" style="aspect-ratio: 4/5;">
<img src="./assets/images/ruang-tumbuh/ruangtumbuh_foto.jpeg"
alt="Ruang Tumbuh HMIF Universitas Tanjungpura"
class="w-full h-full object-cover transition-transform duration-700 ease-out group-hover:scale-105" />
<!-- Gradient overlay bawah -->
<div class="absolute inset-0 transition-opacity duration-500 opacity-70 group-hover:opacity-45" style="background: linear-gradient(to top, rgba(0, 49, 80, 0.45), transparent, transparent);"></div>
</div>
<!-- Badge Inklusivitas & Kolaborasi pojok kiri bawah -->
<div class="absolute z-20 bottom-0 left-0 -translate-x-2 translate-y-4 lg:-translate-x-6 lg:translate-y-6
bg-hmif-secondary text-hmif-primary
rounded-xl px-4 py-3 text-center shadow-2xl
border-2 border-white/20" style="min-width: 120px; max-width: 140px; background-color: #feb401; color: #003150;">
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2.5"
stroke="currentColor" class="w-6 h-6 mx-auto mb-1" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round"
d="M18 18.72a9.094 9.094 0 0 0 3.741-.479 3 3 0 0 0-4.682-2.72m.94 3.198.001.031c0 .225-.012.447-.037.666A11.944 11.944 0 0 1 12 21c-2.17 0-4.207-.576-5.963-1.584A6.062 6.062 0 0 1 6 18.719m12 0a5.971 5.971 0 0 0-.941-3.197m0 0A5.995 5.995 0 0 0 12 12.75a5.995 5.995 0 0 0-5.058 2.772m0 0a3 3 0 0 0-4.681 2.72 8.986 8.986 0 0 0 3.74.477m.94-3.197a5.971 5.971 0 0 0-.94 3.197m6.22-7.496a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm6-3a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Zm-12 0a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Z" />
</svg>
<p class="text-[11px] lg:text-xs font-bold leading-snug">
Inklusivitas &<br>Kolaborasi
</p>
</div>
</div>\;
c = c.replace(oldPhotoStr, newPhotoStr);
fs.writeFileSync('groups/LimaEm/index.html', c);
console.log('HTML layout fixed');
+372 -158
View File
@@ -1,4 +1,4 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="id" class="scroll-smooth"> <html lang="id" class="scroll-smooth">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
@@ -292,6 +292,24 @@
border-right: 1px solid #e2e8f0; border-right: 1px solid #e2e8f0;
border-bottom: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0;
} }
/* ===== Custom Layout Fixes (Menggantikan arbitrary Tailwind) ===== */
@media (min-width: 768px) {
/* Fix ukuran 2 card per baris untuk Kegiatan Unggulan */
.md-card-half {
width: calc(50% - 16px) !important;
}
/* Fix tinggi grid Galeri Keseruan (Tablet) */
.galeri-grid {
height: 420px !important;
}
}
@media (min-width: 1024px) {
/* Fix tinggi grid Galeri Keseruan (Desktop) */
.galeri-grid {
height: 500px !important;
}
}
</style> </style>
</head> </head>
<body class="text-slate-800 antialiased bg-white selection:bg-untan-yellow selection:text-black"> <body class="text-slate-800 antialiased bg-white selection:bg-untan-yellow selection:text-black">
@@ -1140,22 +1158,23 @@
</div> </div>
</div> </div>
<main id="main-content" class="pt-[88px] lg:pt-[160px] min-h-screen bg-white"> <main id="main-content" class="min-h-screen bg-white">
<div class="container mx-auto px-4 lg:px-8 py-12"> <div class="container mx-auto px-4 lg:px-8" style="padding-top: calc(88px + 3rem);">
<div class="mb-8 pb-8 border-b border-slate-200"> <div class="mb-8 pb-8 border-b border-slate-200">
<span class="bg-untan-yellow text-slate-900 text-[10px] font-bold uppercase tracking-widest px-2 py-0.5 inline-block mb-3">Tugas Halaman Statis</span> <span class="bg-untan-yellow text-slate-900 text-[10px] font-bold uppercase tracking-widest px-2 py-0.5 inline-block mb-3">Tugas Halaman Statis</span>
<h1 class="text-3xl lg:text-4xl font-bold text-slate-900 mb-2">Kehidupan Mahasiswa &amp; Himpunan (HMIF)</h1> <h1 class="text-3xl lg:text-4xl font-bold text-slate-900 mb-2">Kehidupan Mahasiswa &amp; Himpunan (HMIF)</h1>
<p class="text-slate-500 text-sm">Kelompok 07 &mdash; LIMA EM &nbsp;&middot;&nbsp; Informatika UNTAN 2026</p> <p class="text-slate-500 text-sm">Kelompok 07 &mdash; LIMA EM &nbsp;&middot;&nbsp; Informatika UNTAN 2026</p>
</div> </div>
<div id="assignment-body" class="prose prose-slate max-w-none"> </div>
<div id="assignment-body" class="w-full">
<!-- ================= START: BAGIAN YANG DIEDIT KELOMPOK ================= --> <!-- ================= START: BAGIAN YANG DIEDIT KELOMPOK ================= -->
<!-- Hero Section --> <!-- Hero Section -->
<header class="relative w-full min-h-screen flex items-center overflow-hidden pt-[92px] lg:pt-[118px]"> <header class="relative w-full min-h-screen flex items-center overflow-hidden" style="padding-top: 92px;">
<img id="api-hero-bg" src="./assets/images/bg-kehidupan-mahasiswa.png" alt="Foto Kegiatan Mahasiswa" <img id="api-hero-bg" src="./assets/images/bg-kehidupan-mahasiswa.png" alt="Foto Kegiatan Mahasiswa"
class="absolute inset-0 w-full h-full object-cover z-0" /> class="absolute inset-0 w-full h-full object-cover z-0" />
<div class="absolute inset-0 bg-gradient-to-r from-hmif-primary via-hmif-primary/80 to-transparent z-0"></div> <div class="absolute inset-0 z-0" style="background: linear-gradient(to right, #003150 0%, rgba(0, 49, 80, 0.8) 50%, transparent 100%);"></div>
<div class="relative z-10 max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12 py-16 lg:py-24 w-full"> <div class="relative z-10 max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12 py-16 lg:py-24 w-full">
@@ -1163,22 +1182,28 @@
<div class="flex flex-col items-start text-left space-y-6"> <div class="flex flex-col items-start text-left space-y-6">
<div <div data-i18n="grp_limaem_hero_badge"
class="bg-hmif-secondary/15 text-hmif-secondary font-bold text-xs md:text-sm px-3 py-1 rounded-full"> class="font-bold text-xs md:text-sm px-3 py-1 rounded-full ring-1 backdrop-blur-sm cursor-default"
style="background-color: rgba(254, 180, 1, 0.15); color: #feb401; --tw-ring-color: rgba(254, 180, 1, 0.3); transition: background-color 300ms ease;"
onmouseover="this.style.backgroundColor='rgba(254, 180, 1, 0.25)'"
onmouseout="this.style.backgroundColor='rgba(254, 180, 1, 0.15)'">
COMMUNITY & LEADERSHIP COMMUNITY & LEADERSHIP
</div> </div>
<h1 class="text-3xl md:text-4xl lg:text-5xl font-bold text-white leading-tight"> <h1 data-i18n="grp_limaem_hero_title" class="text-3xl md:text-4xl lg:text-5xl font-bold text-white leading-tight">
Kehidupan Mahasiswa & <span class="text-hmif-secondary" style="color:var(--color-hmif-secondary)">Himpunan (HMIF)</span> Kehidupan Mahasiswa & <span style="color:#feb401;">Himpunan (HMIF)</span>
</h1> </h1>
<p class="text-base md:text-lg text-gray-300 font-light leading-relaxed max-w-xl"> <p data-i18n="grp_limaem_hero_desc" class="text-base md:text-lg text-gray-300 font-light leading-relaxed max-w-xl">
Membangun ekosistem kolaboratif di mana teknologi bertemu dengan Membangun ekosistem kolaboratif di mana teknologi bertemu dengan
kreativitas, membentuk calon pemimpin industri masa depan. kreativitas, membentuk calon pemimpin industri masa depan.
</p> </p>
<button <button data-i18n="grp_limaem_hero_btn" onclick="document.getElementById('divisi')?.scrollIntoView({behavior:'smooth'})"
class="mt-4 bg-transparent border-2 border-white text-white font-bold text-sm md:text-base px-6 py-3 rounded-md hover:bg-hmif-secondary hover:text-hmif-primary hover:border-hmif-secondary transition-all hover:cursor-pointer"> class="mt-4 bg-transparent border-2 border-white text-white font-bold text-sm md:text-base px-6 py-3 rounded-md transition-all hover:cursor-pointer"
style="transition: all 0.25s ease;"
onmouseover="this.style.backgroundColor='#feb401'; this.style.color='#003150'; this.style.borderColor='#feb401';"
onmouseout="this.style.backgroundColor='transparent'; this.style.color='white'; this.style.borderColor='white';">
Lihat Struktur Kepengurusan Lihat Struktur Kepengurusan
</button> </button>
@@ -1199,18 +1224,18 @@
<div class="flex flex-col gap-8 order-1 lg:pr-6"> <div class="flex flex-col gap-8 order-1 lg:pr-6">
<!-- Heading --> <!-- Heading -->
<h2 class="text-3xl lg:text-4xl xl:text-5xl font-extrabold text-hmif-primary leading-snug"> <h2 data-i18n="grp_limaem_about_title" class="text-3xl lg:text-4xl xl:text-5xl font-extrabold text-hmif-primary leading-snug">
Ruang Tumbuh Bagi<br>Mahasiswa Informatika Ruang Tumbuh Bagi<br>Mahasiswa Informatika
</h2> </h2>
<!-- Paragraf --> <!-- Paragraf -->
<div class="space-y-4 text-gray-500 text-base lg:text-[17px] leading-relaxed"> <div class="space-y-4 text-gray-500 text-base lg:text-[17px] leading-relaxed">
<p> <p data-i18n="grp_limaem_about_p1">
Himpunan Mahasiswa Informatika (HMIF) Universitas Tanjungpura bukan sekadar Himpunan Mahasiswa Informatika (HMIF) Universitas Tanjungpura bukan sekadar
organisasi, melainkan rumah bagi para pemimpin teknologi. Kami percaya bahwa organisasi, melainkan rumah bagi para pemimpin teknologi. Kami percaya bahwa
pendidikan formal adalah fondasi, namun komunitas adalah akselerator. pendidikan formal adalah fondasi, namun komunitas adalah akselerator.
</p> </p>
<p> <p data-i18n="grp_limaem_about_p2">
Melalui berbagai inisiatif, kami menjembatani kesenjangan antara kurikulum Melalui berbagai inisiatif, kami menjembatani kesenjangan antara kurikulum
akademik dan kebutuhan industri, sambil tetap menjaga semangat kekeluargaan akademik dan kebutuhan industri, sambil tetap menjaga semangat kekeluargaan
dan integritas ilmiah. dan integritas ilmiah.
@@ -1223,7 +1248,7 @@
<p <p
class="text-5xl lg:text-6xl xl:text-7xl font-extrabold text-hmif-secondary leading-none tabular-nums"> class="text-5xl lg:text-6xl xl:text-7xl font-extrabold text-hmif-secondary leading-none tabular-nums">
518</p> 518</p>
<p class="text-xs lg:text-sm font-bold tracking-widest uppercase text-gray-400 mt-3"> <p data-i18n="grp_limaem_about_stat_students" class="text-xs lg:text-sm font-bold tracking-widest uppercase text-gray-400 mt-3">
Mahasiswa Aktif Mahasiswa Aktif
</p> </p>
</div> </div>
@@ -1231,7 +1256,7 @@
<p <p
class="text-5xl lg:text-6xl xl:text-7xl font-extrabold text-hmif-secondary leading-none tabular-nums"> class="text-5xl lg:text-6xl xl:text-7xl font-extrabold text-hmif-secondary leading-none tabular-nums">
8</p> 8</p>
<p class="text-xs lg:text-sm font-bold tracking-widest uppercase text-gray-400 mt-3"> <p data-i18n="grp_limaem_about_stat_partners" class="text-xs lg:text-sm font-bold tracking-widest uppercase text-gray-400 mt-3">
MITRA MITRA
</p> </p>
</div> </div>
@@ -1267,7 +1292,7 @@
<path stroke-linecap="round" stroke-linejoin="round" <path stroke-linecap="round" stroke-linejoin="round"
d="M18 18.72a9.094 9.094 0 0 0 3.741-.479 3 3 0 0 0-4.682-2.72m.94 3.198.001.031c0 .225-.012.447-.037.666A11.944 11.944 0 0 1 12 21c-2.17 0-4.207-.576-5.963-1.584A6.062 6.062 0 0 1 6 18.719m12 0a5.971 5.971 0 0 0-.941-3.197m0 0A5.995 5.995 0 0 0 12 12.75a5.995 5.995 0 0 0-5.058 2.772m0 0a3 3 0 0 0-4.681 2.72 8.986 8.986 0 0 0 3.74.477m.94-3.197a5.971 5.971 0 0 0-.94 3.197m6.22-7.496a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm6-3a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Zm-12 0a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Z" /> d="M18 18.72a9.094 9.094 0 0 0 3.741-.479 3 3 0 0 0-4.682-2.72m.94 3.198.001.031c0 .225-.012.447-.037.666A11.944 11.944 0 0 1 12 21c-2.17 0-4.207-.576-5.963-1.584A6.062 6.062 0 0 1 6 18.719m12 0a5.971 5.971 0 0 0-.941-3.197m0 0A5.995 5.995 0 0 0 12 12.75a5.995 5.995 0 0 0-5.058 2.772m0 0a3 3 0 0 0-4.681 2.72 8.986 8.986 0 0 0 3.74.477m.94-3.197a5.971 5.971 0 0 0-.94 3.197m6.22-7.496a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm6-3a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Zm-12 0a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0Z" />
</svg> </svg>
<p class="text-[11px] lg:text-xs font-bold leading-snug"> <p data-i18n="grp_limaem_about_badge" class="text-[11px] lg:text-xs font-bold leading-snug">
Inklusivitas &<br>Kolaborasi Inklusivitas &<br>Kolaborasi
</p> </p>
</div> </div>
@@ -1277,11 +1302,10 @@
</div> </div>
</section> </section>
<!-- Partner & Kolaborator --> <!-- Partner & Kolaborator -->
<section id="partners" class="bg-white py-16"> <section id="partners" class="bg-white py-16">
<div class="max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12"> <div class="max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12">
<h2 class="text-2xl lg:text-3xl font-extrabold text-gray-900 mb-10"> <h2 data-i18n="grp_limaem_partners_title" class="text-2xl lg:text-3xl font-extrabold text-gray-900 mb-10">
Partner dan Kolaborator Partner dan Kolaborator
</h2> </h2>
@@ -1335,10 +1359,10 @@
<div class="max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12"> <div class="max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12">
<!-- Header --> <!-- Header -->
<div class="mb-12 md:mb-16 max-w-3xl"> <div class="mb-12 md:mb-16 max-w-3xl">
<h2 class="text-3xl md:text-4xl lg:text-5xl font-bold text-hmif-secondary leading-tight mb-4"> <h2 data-i18n="grp_limaem_divisi_title" class="text-3xl md:text-4xl lg:text-5xl font-bold text-hmif-secondary leading-tight mb-4">
Divisi Kepengurusan HMIF Divisi Kepengurusan HMIF
</h2> </h2>
<p class="text-base md:text-lg text-slate-300 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_desc" class="text-base md:text-lg text-slate-300 font-light leading-relaxed">
Struktur organisasi yang dirancang untuk efisiensi dan pengembangan kapasitas anggota di berbagai Struktur organisasi yang dirancang untuk efisiensi dan pengembangan kapasitas anggota di berbagai
bidang strategis. bidang strategis.
</p> </p>
@@ -1349,15 +1373,15 @@
class="border border-white/10 rounded-2xl bg-white/[0.01] backdrop-blur-md grid grid-cols-1 md:grid-cols-3 overflow-hidden"> class="border border-white/10 rounded-2xl bg-white/[0.01] backdrop-blur-md grid grid-cols-1 md:grid-cols-3 overflow-hidden">
<!-- Bidang 1 --> <!-- Bidang 1 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b1_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 1 Bidang 1
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b1_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Pengembangan Sumber Daya Mahasiswa dan Kaderisasi Pengembangan Sumber Daya Mahasiswa dan Kaderisasi
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b1_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini menyelenggarakan kaderisasi terstruktur, mentoring berkala, dan pelatihan Divisi ini menyelenggarakan kaderisasi terstruktur, mentoring berkala, dan pelatihan
kepemimpinan serta soft-skill. Program kerja mencakup onboarding anggota baru, kepemimpinan serta soft-skill. Program kerja mencakup onboarding anggota baru,
workshop kepemimpinan, proyek kolaboratif, dan kegiatan pengabdian yang melatih workshop kepemimpinan, proyek kolaboratif, dan kegiatan pengabdian yang melatih
@@ -1368,15 +1392,15 @@
<!-- Bidang 2 --> <!-- Bidang 2 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b2_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 2 Bidang 2
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b2_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Media Komunikasi dan Konten Digital Media Komunikasi dan Konten Digital
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b2_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini mengelola strategi komunikasi dan produksi konten HMIF, termasuk Divisi ini mengelola strategi komunikasi dan produksi konten HMIF, termasuk
perencanaan editorial, manajemen media sosial, serta dokumentasi acara. Program perencanaan editorial, manajemen media sosial, serta dokumentasi acara. Program
kerjanya meliputi pembuatan materi promosi, publikasi kegiatan, dan penguatan kerjanya meliputi pembuatan materi promosi, publikasi kegiatan, dan penguatan
@@ -1386,15 +1410,15 @@
<!-- Bidang 3 --> <!-- Bidang 3 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b3_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 3 Bidang 3
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b3_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Inovasi dan Kompetisi Teknologi Inovasi dan Kompetisi Teknologi
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b3_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini memfasilitasi persiapan lomba dan pengembangan proyek teknis melalui Divisi ini memfasilitasi persiapan lomba dan pengembangan proyek teknis melalui
coaching clinic, bootcamp berbasis proyek, serta study club untuk Competitive coaching clinic, bootcamp berbasis proyek, serta study club untuk Competitive
Programming, Software Development, dan Data/ML. Kegiatan termasuk seleksi internal, Programming, Software Development, dan Data/ML. Kegiatan termasuk seleksi internal,
@@ -1405,15 +1429,15 @@
<!-- Bidang 4 --> <!-- Bidang 4 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b4_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 4 Bidang 4
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b4_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Pengembangan Organisasi Pengembangan Organisasi
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b4_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini memperkuat tata kelola dan kapabilitas internal melalui pelatihan Divisi ini memperkuat tata kelola dan kapabilitas internal melalui pelatihan
pengurus, penyusunan SOP sederhana, dan evaluasi proses kerja. Program kerjanya pengurus, penyusunan SOP sederhana, dan evaluasi proses kerja. Program kerjanya
mencakup pengembangan budaya organisasi, peningkatan efektivitas koordinasi, dan mencakup pengembangan budaya organisasi, peningkatan efektivitas koordinasi, dan
@@ -1424,15 +1448,15 @@
<!-- Bidang 5 --> <!-- Bidang 5 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b5_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 5 Bidang 5
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b5_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Sosial Masyarakat Sosial Masyarakat
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b5_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini merancang dan melaksanakan program pengabdian serta aksi sosial yang Divisi ini merancang dan melaksanakan program pengabdian serta aksi sosial yang
berdampak, termasuk pendampingan komunitas dan bantuan kemanusiaan. Kegiatan berdampak, termasuk pendampingan komunitas dan bantuan kemanusiaan. Kegiatan
meliputi identifikasi kebutuhan lapangan, pelaksanaan terstruktur, dan evaluasi meliputi identifikasi kebutuhan lapangan, pelaksanaan terstruktur, dan evaluasi
@@ -1442,15 +1466,15 @@
<!-- Bidang 6 --> <!-- Bidang 6 -->
<div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10"> <div class="group flex flex-col space-y-3 cursor-pointer p-8 lg:p-10">
<span <span data-i18n="grp_limaem_divisi_b6_label"
class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300"> class="text-hmif-secondary font-bold text-xs md:text-sm tracking-wider uppercase transition-colors duration-300 group-hover:text-amber-300">
Bidang 6 Bidang 6
</span> </span>
<h3 <h3 data-i18n="grp_limaem_divisi_b6_title"
class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary"> class="text-xl md:text-2xl font-bold text-white leading-snug transition-colors duration-300 group-hover:text-hmif-secondary">
Kewirausahaan dan Kemitraan Kewirausahaan dan Kemitraan
</h3> </h3>
<p class="text-sm md:text-base text-gray-400 font-light leading-relaxed"> <p data-i18n="grp_limaem_divisi_b6_desc" class="text-sm md:text-base text-gray-400 font-light leading-relaxed">
Divisi ini mengembangkan unit usaha organisasi, merancang skema pendanaan kreatif, Divisi ini mengembangkan unit usaha organisasi, merancang skema pendanaan kreatif,
dan menjalin kemitraan strategis untuk mendukung keberlanjutan program HMIF. Unit dan menjalin kemitraan strategis untuk mendukung keberlanjutan program HMIF. Unit
kerjanya meliputi riset peluang usaha, penyusunan proposal kemitraan, dan kerjanya meliputi riset peluang usaha, penyusunan proposal kemitraan, dan
@@ -1464,13 +1488,13 @@
<!-- Kegiatan Unggulan Section --> <!-- Kegiatan Unggulan Section -->
<section id="kegiatan-unggulan" class="bg-white py-20 lg:py-24"> <section id="kegiatan-unggulan" class="bg-white py-20 lg:py-24">
<div class="max-w-none mx-auto px-6 lg:px-16 xl:px-24 relative w-full"> <div class="max-w-7xl 2xl:max-w-[1440px] mx-auto px-6 lg:px-12 relative w-full">
<!-- Header --> <!-- Header -->
<div class="mb-12"> <div class="mb-12">
<h2 class="text-3xl font-extrabold text-hmif-primary tracking-tight"> <h2 data-i18n="grp_limaem_kegiatan_title" class="text-3xl font-extrabold text-hmif-primary tracking-tight">
Kegiatan Unggulan Kegiatan Unggulan
</h2> </h2>
<p class="text-sm text-gray-500 mt-2 font-medium"> <p data-i18n="grp_limaem_kegiatan_subtitle" class="text-sm text-gray-500 mt-2 font-medium">
Kegiatan tahunan yang menjadi ikon Informatika UNTAN. Kegiatan tahunan yang menjadi ikon Informatika UNTAN.
</p> </p>
</div> </div>
@@ -1493,7 +1517,7 @@
<div id="slider-track" class="flex gap-8 transition-transform duration-500 ease-in-out"> <div id="slider-track" class="flex gap-8 transition-transform duration-500 ease-in-out">
<!-- Card 1 Silaturahmi Keluarga Besar Informatika--> <!-- Card 1 Silaturahmi Keluarga Besar Informatika-->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/SKBI.jpeg" alt="Silaturahmi Keluarga Besar" <img src="./assets/images/kegiatan-unggulan/SKBI.jpeg" alt="Silaturahmi Keluarga Besar"
@@ -1507,17 +1531,17 @@
class="text-[8px] font-bold text-hmif-primary uppercase tracking-wider mt-0.5">Feb</span> class="text-[8px] font-bold text-hmif-primary uppercase tracking-wider mt-0.5">Feb</span>
</div> </div>
<div class="space-y-1"> <div class="space-y-1">
<h3 <h3 data-i18n="grp_limaem_kegiatan_c1_title"
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
Silaturahmi Keluarga Besar Informatika</h3> Silaturahmi Keluarga Besar Informatika</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light">Kegiatan buka bersama <p data-i18n="grp_limaem_kegiatan_c1_desc" class="text-sm text-gray-500 leading-relaxed font-light">Kegiatan buka bersama
seluruh keluarga Informatika Untan yang selalu diadakan setiap tahunnya.</p> seluruh keluarga Informatika Untan yang selalu diadakan setiap tahunnya.</p>
</div> </div>
</div> </div>
</div> </div>
<!-- Card 2 Gemastik --> <!-- Card 2 Gemastik -->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/gemastik.jpg" alt="Bootcamp HMIF" <img src="./assets/images/kegiatan-unggulan/gemastik.jpg" alt="Bootcamp HMIF"
@@ -1534,7 +1558,7 @@
<h3 <h3
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
GEMASTIK</h3> GEMASTIK</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light"> Ajang kompetisi IT bergengsi tingkat nasional tahunan dari kementerian. <p data-i18n="grp_limaem_kegiatan_c2_desc" class="text-sm text-gray-500 leading-relaxed font-light"> Ajang kompetisi IT bergengsi tingkat nasional tahunan dari kementerian.
Wadah bagi mahasiswa Informatika UNTAN untuk unjuk Wadah bagi mahasiswa Informatika UNTAN untuk unjuk
gigi di bidang <em>programming</em>, <em>cyber security</em>, <em>data mining</em>, hingga UI/UX. gigi di bidang <em>programming</em>, <em>cyber security</em>, <em>data mining</em>, hingga UI/UX.
</p> </p>
@@ -1543,7 +1567,7 @@
</div> </div>
<!-- Card 3 17 agustus --> <!-- Card 3 17 agustus -->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/17-agustus.jpeg" alt="Perayaan 17 Agustus" <img src="./assets/images/kegiatan-unggulan/17-agustus.jpeg" alt="Perayaan 17 Agustus"
@@ -1557,17 +1581,17 @@
class="text-[8px] font-bold text-hmif-primary uppercase tracking-wider mt-0.5">Agu</span> class="text-[8px] font-bold text-hmif-primary uppercase tracking-wider mt-0.5">Agu</span>
</div> </div>
<div class="space-y-1"> <div class="space-y-1">
<h3 <h3 data-i18n="grp_limaem_kegiatan_c3_title"
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
Perayaan 17 Agustus</h3> Perayaan 17 Agustus</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light">Momen perayaan Hari Kemerdekaan Indonesia yang diisi dengan berbagai perlombaan menarik. <p data-i18n="grp_limaem_kegiatan_c3_desc" class="text-sm text-gray-500 leading-relaxed font-light">Momen perayaan Hari Kemerdekaan Indonesia yang diisi dengan berbagai perlombaan menarik.
Ajang seru-seruan bersama untuk mempererat rasa nasionalisme dan kekeluargaan mahasiswa Informatika.</p> Ajang seru-seruan bersama untuk mempererat rasa nasionalisme dan kekeluargaan mahasiswa Informatika.</p>
</div> </div>
</div> </div>
</div> </div>
<!-- Card 3 Bootcamp --> <!-- Card 3 Bootcamp -->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/bootcamp.jpeg" alt="Bootcamp HMIF" <img src="./assets/images/kegiatan-unggulan/bootcamp.jpeg" alt="Bootcamp HMIF"
@@ -1584,17 +1608,18 @@
<h3 <h3
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
Bootcamp HMIF</h3> Bootcamp HMIF</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light">Program intensif <p data-i18n="grp_limaem_kegiatan_c4_desc" class="text-sm text-gray-500 leading-relaxed font-light">Program intensif
pengembangan skill teknis mahasiswa Informatika bersama mentor profesional dari pengembangan skill teknis mahasiswa Informatika bersama mentor profesional dari
industri.</p> industri.</p>
</div> </div>
</div> </div>
</div> </div>
<!-- Card 5 UPC 2025 --> <!-- Card 5 UPC 2025 -->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/upc.jpg" alt="UPC 2025" <img src="./assets/images/kegiatan-unggulan/upc.JPG" alt="UPC 2025"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" /> class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</div> </div>
<div class="flex items-start gap-4 mt-6"> <div class="flex items-start gap-4 mt-6">
@@ -1608,17 +1633,17 @@
<h3 <h3
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
UPC</h3> UPC</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light">Kompetisi Pemograman untuk <p data-i18n="grp_limaem_kegiatan_c5_desc" class="text-sm text-gray-500 leading-relaxed font-light">Kompetisi Pemograman untuk
mengasah skill coding mahasiswa Informatika.</p> mengasah skill coding mahasiswa Informatika.</p>
</div> </div>
</div> </div>
</div> </div>
<!-- Card 6 Informers --> <!-- Card 6 Informers -->
<div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md:w-[calc(50%_-_16px)]"> <div class="group flex-shrink-0 bg-white rounded-2xl overflow-hidden transition-all duration-300 w-full md-card-half">
<div <div
class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100"> class="aspect-video w-full overflow-hidden rounded-2xl shadow-sm border border-gray-100">
<img src="./assets/images/kegiatan-unggulan/informers.jpg" alt="Ultah Informatika" <img src="./assets/images/kegiatan-unggulan/informers.JPG" alt="Ultah Informatika"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" /> class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</div> </div>
<div class="flex items-start gap-4 mt-6"> <div class="flex items-start gap-4 mt-6">
@@ -1632,7 +1657,7 @@
<h3 <h3
class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors"> class="text-lg font-bold text-slate-800 group-hover:text-hmif-primary transition-colors">
INFORMERS</h3> INFORMERS</h3>
<p class="text-sm text-gray-500 leading-relaxed font-light">Perayaan ulang tahun <p data-i18n="grp_limaem_kegiatan_c6_desc" class="text-sm text-gray-500 leading-relaxed font-light">Perayaan ulang tahun
Informatika UNTAN, momen kebersamaan dan kebanggaan seluruh keluarga besar Informatika UNTAN, momen kebersamaan dan kebanggaan seluruh keluarga besar
Informatika.</p> Informatika.</p>
</div> </div>
@@ -1697,7 +1722,7 @@
<h3 class="text-lg font-bold text-hmif-primary"> <h3 class="text-lg font-bold text-hmif-primary">
ARISE ARISE
</h3> </h3>
<p class="text-sm text-gray-500 leading-relaxed font-light"> <p data-i18n="grp_limaem_sc_arise_desc" class="text-sm text-gray-500 leading-relaxed font-light">
Belajar logika dan algoritma bersama, di mana kalian bisa berkembang dan membuka peluang Belajar logika dan algoritma bersama, di mana kalian bisa berkembang dan membuka peluang
mengikuti kompetisi pemrograman di berbagai level. mengikuti kompetisi pemrograman di berbagai level.
</p> </p>
@@ -1719,7 +1744,7 @@
<h3 class="text-lg font-bold text-hmif-primary"> <h3 class="text-lg font-bold text-hmif-primary">
MINERVA MINERVA
</h3> </h3>
<p class="text-sm text-gray-500 leading-relaxed font-light"> <p data-i18n="grp_limaem_sc_minerva_desc" class="text-sm text-gray-500 leading-relaxed font-light">
Gali potensi tersembunyi dari tumpukan data! Di sini kita akan bereksplorasi dengan Gali potensi tersembunyi dari tumpukan data! Di sini kita akan bereksplorasi dengan
algoritma <em>Machine Learning</em>, membedah teknik klasifikasi, hingga melatih model algoritma <em>Machine Learning</em>, membedah teknik klasifikasi, hingga melatih model
prediktif untuk menghasilkan <em>insight</em> yang bermakna. prediktif untuk menghasilkan <em>insight</em> yang bermakna.
@@ -1741,7 +1766,7 @@
<h3 class="text-lg font-bold text-hmif-primary"> <h3 class="text-lg font-bold text-hmif-primary">
Software Development (Soon) Software Development (Soon)
</h3> </h3>
<p class="text-sm text-gray-500 leading-relaxed font-light"> <p data-i18n="grp_limaem_sc_sd_desc" class="text-sm text-gray-500 leading-relaxed font-light">
Wujudkan idemu jadi produk digital yang nyata! Kita akan ngoding bareng dari merancang Wujudkan idemu jadi produk digital yang nyata! Kita akan ngoding bareng dari merancang
<em>frontend</em> yang interaktif, membangun <em>backend</em> yang tangguh, serta <em>frontend</em> yang interaktif, membangun <em>backend</em> yang tangguh, serta
mengintegrasikan berbagai API untuk menciptakan aplikasi web masa kini. mengintegrasikan berbagai API untuk menciptakan aplikasi web masa kini.
@@ -1758,7 +1783,7 @@
<!-- Header --> <!-- Header -->
<div class="text-center mb-12"> <div class="text-center mb-12">
<h2 class="text-3xl lg:text-4xl font-bold text-hmif-primary"> <h2 data-i18n="grp_limaem_galeri_title" class="text-3xl lg:text-4xl font-bold text-hmif-primary">
Galeri Keseruan Galeri Keseruan
</h2> </h2>
</div> </div>
@@ -1784,118 +1809,71 @@
<!-- ====== Slide 1 ====== --> <!-- ====== Slide 1 ====== -->
<div class="flex-shrink-0 w-full"> <div class="flex-shrink-0 w-full">
<div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 h-auto md:h-[420px] lg:h-[500px]"> <div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 galeri-grid">
<!-- Foto besar kiri (span 2 baris) --> <!-- Foto besar kiri (span 2 baris) -->
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" <a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
rel="noopener noreferrer" class="block w-full h-full col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer">
class="block col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer"> <img src="./assets/images/galeri-keseruan/DSC00636.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
<img src="./assets/images/galeri-keseruan/DSC00636.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<!-- Foto kecil kanan atas 1 --> <!-- Foto kecil kanan atas 1 -->
<a href="https://instagram.com/hmif_ftuntan" target="_blank" <a href="https://instagram.com/hmif_ftuntan" target="_blank" rel="noopener noreferrer"
rel="noopener noreferrer" class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer"> <img src="./assets/images/galeri-keseruan/Copy of DSC09492.JPG" alt="Gemastik" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
<img src="./assets/images/galeri-keseruan/Copy of DSC09492.jpg" alt="Gemastik"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<!-- Foto kecil kanan atas 2 --> <!-- Foto kecil kanan atas 2 -->
<a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" <a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" target="_blank" rel="noopener noreferrer"
target="_blank" rel="noopener noreferrer" class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer"> <img src="./assets/images/galeri-keseruan/IMG_0204.JPG" alt="INFORMERS" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
<img src="./assets/images/galeri-keseruan/IMG_0204.jpg" alt="INFORMERS"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<!-- Foto lebar kanan bawah (span 2 kolom) --> <!-- Foto lebar kanan bawah (span 2 kolom) -->
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" <a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
rel="noopener noreferrer" class="hidden md:block w-full h-full col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
class="hidden md:block col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer"> <img src="./assets/images/galeri-keseruan/DSC00456.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
<img src="./assets/images/galeri-keseruan/DSC00456.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
</div> </div>
</div> </div>
<!-- ====== Slide 2 ====== --> <!-- ====== Slide 2 ====== -->
<div class="flex-shrink-0 w-full"> <div class="flex-shrink-0 w-full">
<div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 h-auto md:h-[420px] lg:h-[500px]"> <div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 galeri-grid">
<!-- Foto besar kiri -->
<a href="https://instagram.com/hmif_ftuntan" target="_blank" rel="noopener noreferrer" <a href="https://instagram.com/hmif_ftuntan" target="_blank" rel="noopener noreferrer"
class="block col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer"> class="block w-full h-full col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSCF8922.jpg" <img src="./assets/images/galeri-keseruan/DSCF8922.JPG" alt="Ulang Tahun Informatika" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
alt="Ulang Tahun Informatika"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<!-- Foto kecil kanan atas 1 -->
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank"
rel="noopener noreferrer"
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSC00091.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a>
<!-- Foto kecil kanan atas 2 -->
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer" <a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer"> class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSC03316.jpg" <img src="./assets/images/galeri-keseruan/DSC00091.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
alt="Silaturahmi Keluarga Besar Informatika"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
<!-- Foto lebar kanan bawah --> class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" <img src="./assets/images/galeri-keseruan/DSC03316.JPG" alt="Silaturahmi Keluarga Besar Informatika" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
target="_blank" rel="noopener noreferrer" </a>
class="hidden md:block col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer"> <a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" target="_blank" rel="noopener noreferrer"
<img src="./assets/images/galeri-keseruan/IMG_5705.jpg" alt="INFORMERS" class="hidden md:block w-full h-full col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" /> <img src="./assets/images/galeri-keseruan/IMG_5705.JPG" alt="INFORMERS" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
</div> </div>
</div> </div>
<!-- ====== Slide 3 ====== --> <!-- ====== Slide 3 ====== -->
<div class="flex-shrink-0 w-full"> <div class="flex-shrink-0 w-full">
<div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 h-auto md:h-[420px] lg:h-[500px]"> <div class="grid grid-cols-1 md:grid-cols-3 md:grid-rows-2 gap-4 galeri-grid">
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
<!-- Foto besar kiri --> class="block w-full h-full col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer">
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" <img src="./assets/images/galeri-keseruan/DSC00252.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
rel="noopener noreferrer"
class="block col-span-1 row-span-2 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSC00252.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
<!-- Foto kecil kanan atas 1 --> class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" <img src="./assets/images/galeri-keseruan/DSC00519.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
rel="noopener noreferrer"
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSC00519.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" target="_blank" rel="noopener noreferrer"
<!-- Foto kecil kanan atas 2 --> class="hidden md:block w-full h-full col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<a href="https://www.instagram.com/informershmif?igsh=MW5odm9pbXN2aThlMA==" <img src="./assets/images/galeri-keseruan/IMG_0030.JPG" alt="INFORMERS" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
target="_blank" rel="noopener noreferrer"
class="hidden md:block col-span-1 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/IMG_0030.jpg" alt="INFORMERS"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" rel="noopener noreferrer"
<!-- Foto lebar kanan bawah --> class="hidden md:block w-full h-full col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<a href="https://www.instagram.com/upc.untan?igsh=ZWYzcTh0d2J4MmJx" target="_blank" <img src="./assets/images/galeri-keseruan/DSC01002.JPG" alt="UPC V" class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
rel="noopener noreferrer"
class="hidden md:block col-span-2 row-span-1 overflow-hidden rounded-xl group cursor-pointer">
<img src="./assets/images/galeri-keseruan/DSC01002.jpg" alt="UPC V"
class="w-full h-full object-cover group-hover:scale-105 transition-transform duration-500" />
</a> </a>
</div> </div>
</div> </div>
@@ -1939,18 +1917,18 @@
<div class="relative z-10"> <div class="relative z-10">
<div class="mx-auto max-w-4xl text-center"> <div class="mx-auto max-w-4xl text-center">
<h2 class="text-2xl sm:text-3xl lg:text-[38px] font-bold leading-tight text-white"> <h2 data-i18n="grp_limaem_cta_title" class="text-2xl sm:text-3xl lg:text-[38px] font-bold leading-tight text-white">
Ada yang Ingin Ditanyakan Seputar HMIF? Ada yang Ingin Ditanyakan Seputar HMIF?
</h2> </h2>
<p <p data-i18n="grp_limaem_cta_desc"
class="mx-auto mt-4 max-w-2xl text-xs sm:text-sm lg:text-[15px] leading-relaxed text-white/72"> class="mx-auto mt-4 max-w-2xl text-xs sm:text-sm lg:text-[15px] leading-relaxed text-white/72">
Bergabunglah dengan HMIF untuk memperluas jaringan, mengasah skill, dan Bergabunglah dengan HMIF untuk memperluas jaringan, mengasah skill, dan
menciptakan dampak nyata. menciptakan dampak nyata.
</p> </p>
<div class="mt-7 flex flex-col items-center justify-center gap-3 sm:flex-row"> <div class="mt-7 flex flex-col items-center justify-center gap-3 sm:flex-row">
<a href="https://instagram.com/hmif_ftuntan" target="_blank" rel="noopener noreferrer" <a href="https://instagram.com/hmif_ftuntan" target="_blank" rel="noopener noreferrer" data-i18n="grp_limaem_cta_btn"
class="inline-flex items-center justify-center rounded-lg bg-hmif-secondary px-6 py-3 text-sm font-bold text-hmif-primary shadow-[0_10px_24px_rgba(245,200,47,0.35)] transition-transform duration-200 hover:-translate-y-0.5"> class="inline-flex items-center justify-center rounded-lg bg-hmif-secondary px-6 py-3 text-sm font-bold text-hmif-primary shadow-[0_10px_24px_rgba(245,200,47,0.35)] transition-transform duration-200 hover:-translate-y-0.5">
Hubungi Kami Hubungi Kami
</a> </a>
@@ -1982,27 +1960,27 @@
<div class="mt-10 border-t border-white/10 pt-8 lg:mt-12 lg:pt-10"> <div class="mt-10 border-t border-white/10 pt-8 lg:mt-12 lg:pt-10">
<div class="grid grid-cols-1 gap-8 md:grid-cols-3 md:gap-6"> <div class="grid grid-cols-1 gap-8 md:grid-cols-3 md:gap-6">
<div class="text-center md:px-4"> <div class="text-center md:px-4">
<p class="text-xs font-bold tracking-widest text-hmif-secondary uppercase"> <p data-i18n="grp_limaem_cta_info1_label" class="text-xs font-bold tracking-widest text-hmif-secondary uppercase">
Sekretariat Sekretariat
</p> </p>
<p class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72"> <p data-i18n="grp_limaem_cta_info1_val" class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72">
Gedung Fakultas Teknik Lt. 2<br> Gedung Fakultas Teknik Lt. 2<br>
Jl. Prof. Dr. H. Hadari Nawawi Jl. Prof. Dr. H. Hadari Nawawi
</p> </p>
</div> </div>
<div class="text-center md:px-4 md:border-x md:border-white/10"> <div class="text-center md:px-4 md:border-x md:border-white/10">
<p class="text-xs font-bold tracking-widest text-hmif-secondary uppercase"> <p data-i18n="grp_limaem_cta_info2_label" class="text-xs font-bold tracking-widest text-hmif-secondary uppercase">
Jam Operasional Jam Operasional
</p> </p>
<p class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72"> <p data-i18n="grp_limaem_cta_info2_val"class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72">
Senin - Jumat<br> Senin - Jumat<br>
08:00 - 17:00 WIB 08:00 - 17:00 WIB
</p> </p>
</div> </div>
<div class="text-center md:px-4"> <div class="text-center md:px-4">
<p class="text-xs font-bold tracking-widest text-hmif-secondary uppercase"> <p data-i18n="grp_limaem_cta_info3_label" class="text-xs font-bold tracking-widest text-hmif-secondary uppercase">
Media Sosial Media Sosial
</p> </p>
<p class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72"> <p class="mt-3 text-xs sm:text-sm leading-relaxed text-white/72">
@@ -2017,7 +1995,6 @@
</div> </div>
</section> </section>
<!-- ================= END: BAGIAN YANG DIEDIT KELOMPOK ================= --> <!-- ================= END: BAGIAN YANG DIEDIT KELOMPOK ================= -->
</div>
</div> </div>
</main> </main>
@@ -2085,6 +2062,243 @@
</div> </div>
</footer> </footer>
<script>
// =============================================================================
// main.js — Logika Interaksi Halaman HMIF
//
// Struktur:
// 1. Galeri Keseruan — Slider bento grid foto keseruan
// 2. Kegiatan Unggulan — Slider kartu kegiatan tahunan
// =============================================================================
// =============================================================================
// 1. GALERI KESERUAN — SLIDER
// Slider bento grid foto keseruan dengan auto-slide, navigasi manual,
// dot indicator, pause on hover, dan recalculate on resize.
// =============================================================================
(function () {
var AUTO_DELAY_MS = 4000; // 4 detik per slide
var GAP_PX = 16 * 2; // grid gap-4 = 1rem? but original used gap-4; keep reasonable spacing if needed
var track = document.getElementById('galeri-track');
var viewport = document.getElementById('galeri-viewport');
var prevBtn = document.getElementById('galeri-prev');
var nextBtn = document.getElementById('galeri-next');
var dotsContainer = document.getElementById('galeri-dots');
if (!track || !viewport || !prevBtn || !nextBtn) return;
var currentSlide = 0;
var autoSlideTimer;
var originalHTML = track.innerHTML;
// collect all anchor elements (images) in the original order
var originalAnchors = Array.from((function () {
var tmp = document.createElement('div'); tmp.innerHTML = originalHTML; return tmp;
})().querySelectorAll('a'));
// builds slides where each slide contains a single image (for small screens)
function buildSingleImageSlides() {
var slides = originalAnchors.map(function (a) {
// clone anchor and remove mobile-hidden class so it becomes visible in single-image slides
try {
var clone = a.cloneNode(true);
if (clone.classList) clone.classList.remove('hidden');
// also remove inline style display:none if present
if (clone.style) clone.style.display = '';
return '<div class="flex-shrink-0 w-full">' +
'<div class="aspect-video w-full overflow-hidden rounded-xl">' +
clone.outerHTML +
'</div></div>';
} catch (e) {
return '';
}
});
return slides.join('');
}
function getTotalSlides() {
return track.children.length;
}
// render dot buttons dynamically according to total slides
function renderDots(n) {
if (!dotsContainer) return;
dotsContainer.innerHTML = '';
for (var i = 0; i < n; i++) {
var btn = document.createElement('button');
btn.className = 'galeri-dot h-2.5 rounded-full transition-all duration-300 ' + (i === 0 ? 'bg-hmif-primary w-6' : 'bg-gray-200 w-2.5');
btn.setAttribute('data-index', String(i));
btn.setAttribute('aria-label', 'Slide ' + (i+1));
(function (idx) { btn.addEventListener('click', function () { goToSlide(idx); startAutoSlide(); }); })(i);
dotsContainer.appendChild(btn);
}
}
function updateDots(activeIndex) {
if (!dotsContainer) return;
var dots = dotsContainer.querySelectorAll('button');
dots.forEach(function (dot, i) {
if (i === activeIndex) {
dot.classList.remove('bg-gray-200', 'w-2.5');
dot.classList.add('bg-hmif-primary', 'w-6');
} else {
dot.classList.remove('bg-hmif-primary', 'w-6');
dot.classList.add('bg-gray-200', 'w-2.5');
}
});
}
function rebuildTrackForViewport() {
var isMobile = window.innerWidth < 768; // md breakpoint
if (isMobile) {
track.innerHTML = buildSingleImageSlides();
} else {
track.innerHTML = originalHTML;
}
renderDots(getTotalSlides());
}
// Pindah ke slide dengan index tertentu, loop otomatis di kedua arah
function goToSlide(index) {
var total = getTotalSlides();
if (total === 0) return;
currentSlide = ((index % total) + total) % total;
track.style.transform = 'translateX(-' + (currentSlide * viewport.offsetWidth) + 'px)';
updateDots(currentSlide);
}
// Mulai atau restart timer auto-slide
function startAutoSlide() {
clearInterval(autoSlideTimer);
autoSlideTimer = setInterval(function () { goToSlide(currentSlide + 1); }, AUTO_DELAY_MS);
}
prevBtn.addEventListener('click', function () { goToSlide(currentSlide - 1); startAutoSlide(); });
nextBtn.addEventListener('click', function () { goToSlide(currentSlide + 1); startAutoSlide(); });
// Pause saat kursor di atas galeri
viewport.addEventListener('mouseenter', function () { clearInterval(autoSlideTimer); });
viewport.addEventListener('mouseleave', startAutoSlide);
// Recalculate posisi slide saat browser di-resize
window.addEventListener('resize', function () { rebuildTrackForViewport(); goToSlide(currentSlide); });
// initial build
rebuildTrackForViewport();
goToSlide(0);
startAutoSlide();
})();
// =============================================================================
// 2. KEGIATAN UNGGULAN — SLIDER
// Slider kartu kegiatan tahunan yang menampilkan 2 kartu sekaligus pada desktop,
// dan 1 kartu pada layar sempit. Logika pergantian disesuaikan agar pergeseran
// selalu berpindah tepat satu item, memperhitungkan gap antar-kartu.
// =============================================================================
(function () {
var TOTAL_CARDS = 6;
var AUTO_DELAY_MS = 2000;
var GAP_PX = 32; // gap-8 = 2rem = 32px (tailwind)
var track = document.getElementById('slider-track');
var viewport = document.getElementById('slider-viewport');
var prevBtn = document.getElementById('slider-prev');
var nextBtn = document.getElementById('slider-next');
var dotsContainer = document.getElementById('slider-dots');
if (!track || !viewport || !prevBtn || !nextBtn) return;
var current = 0;
var autoTimer;
function getCardsVisible() {
return window.innerWidth >= 768 ? 2 : 1; // md breakpoint
}
// lebar kartu yang terlihat (tidak termasuk gap)
function getCardWidth() {
var visible = getCardsVisible();
if (visible === 1) return viewport.offsetWidth;
return (viewport.offsetWidth - GAP_PX) / visible;
}
function getMaxIndex() {
return Math.max(0, TOTAL_CARDS - getCardsVisible());
}
// Pindah ke posisi slide tertentu; perhitungan berbeda untuk 1 atau 2 kartu
function goTo(index) {
var maxIndex = getMaxIndex();
current = ((index % (maxIndex + 1)) + (maxIndex + 1)) % (maxIndex + 1);
if (getCardsVisible() === 1) {
// langkah pergeseran = viewport width + gap
var step = viewport.offsetWidth + GAP_PX;
track.style.transform = 'translateX(-' + (current * step) + 'px)';
} else {
var cardW = getCardWidth();
track.style.transform = 'translateX(-' + (current * (cardW + GAP_PX)) + 'px)';
}
updateDots(current);
}
// Render dot indicators dynamically based on total slides
function renderSliderDots(n) {
if (!dotsContainer) return;
dotsContainer.innerHTML = '';
for (var i = 0; i < n; i++) {
var btn = document.createElement('button');
btn.className = 'slider-dot h-2.5 rounded-full transition-all duration-300 ' + (i === 0 ? 'bg-hmif-primary w-6' : 'bg-gray-200 w-2.5');
btn.setAttribute('data-index', String(i));
btn.setAttribute('aria-label', 'Slide ' + (i+1));
(function (idx) { btn.addEventListener('click', function () { goTo(idx); startAuto(); }); })(i);
dotsContainer.appendChild(btn);
}
}
function updateDots(activeIndex) {
if (!dotsContainer) return;
var dots = dotsContainer.querySelectorAll('button');
dots.forEach(function (dot, i) {
if (i === activeIndex) {
dot.classList.remove('bg-gray-200', 'w-2.5');
dot.classList.add('bg-hmif-primary', 'w-6');
} else {
dot.classList.remove('bg-hmif-primary', 'w-6');
dot.classList.add('bg-gray-200', 'w-2.5');
}
});
}
// Mulai atau restart timer auto-slide
function startAuto() {
clearInterval(autoTimer);
autoTimer = setInterval(function () { goTo(current + 1); }, AUTO_DELAY_MS);
}
prevBtn.addEventListener('click', function () { goTo(current - 1); startAuto(); });
nextBtn.addEventListener('click', function () { goTo(current + 1); startAuto(); });
// initial render of dots according to current viewport
renderSliderDots(getMaxIndex() + 1);
// Pause saat kursor di atas slider
viewport.addEventListener('mouseenter', function () { clearInterval(autoTimer); });
viewport.addEventListener('mouseleave', startAuto);
// Recalculate posisi slide and dots saat browser di-resize
window.addEventListener('resize', function () { renderSliderDots(getMaxIndex() + 1); goTo(current); });
goTo(0);
startAuto();
})();
</script>
<script> <script>
(function () { (function () {
const menuItems = document.querySelectorAll('[data-menu]'); const menuItems = document.querySelectorAll('[data-menu]');
+47 -6
View File
@@ -1,6 +1,47 @@
/* :root {
* LimaEm — Group 07 | Kehidupan Mahasiswa & Himpunan (HMIF) --brand-navy: #003150;
* --brand-yellow: #feb401;
* CSS utama ada di: assets/css/output.css (Tailwind custom build) --text-main: #1e293b;
* File ini tersedia untuk CSS tambahan jika diperlukan. --text-soft: #64748b;
*/ --bg-soft: #f8fafc;
--line: #e2e8f0;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family: "Roboto", Arial, sans-serif; color: var(--text-main); background: #fff; line-height: 1.6; }
.container { width: min(1100px, 92%); margin-inline: auto; }
.nav { background: var(--brand-navy); color: #fff; border-bottom: 4px solid var(--brand-yellow); padding: 14px 0; }
.brand { font-size: 1.1rem; font-weight: 700; letter-spacing: .02em; }
.hero { position: relative; color: #fff; min-height: 220px; display: flex; align-items: flex-end; overflow: hidden; }
.hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: brightness(0.45); }
.hero-inner { position: relative; z-index: 1; padding: 36px 0; }
.badge { display: inline-block; background: var(--brand-yellow); color: #111827; font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; padding: .2rem .45rem; margin-bottom: 12px; }
.hero h1 { margin: 0; font-size: clamp(1.6rem, 3.2vw, 2.8rem); line-height: 1.2; }
.layout { display: grid; grid-template-columns: 1fr; gap: 2rem; padding: 2rem 0 4rem; }
@media (min-width: 1024px) { .layout { grid-template-columns: minmax(0, 3fr) minmax(260px, 1fr); } }
.meta { font-size: .78rem; text-transform: uppercase; color: #475569; display: flex; flex-wrap: wrap; gap: .75rem 1rem; margin-bottom: 1rem; }
.cover { background: var(--bg-soft); border: 1px solid var(--line); margin-bottom: 1.5rem; }
.cover img { width: 100%; height: auto; display: block; }
.article-body > * + * { margin-top: 1.1em; }
.article-body h2 { font-size: 1.35rem; margin: 1.6em 0 .5em; }
.article-body h3 { font-size: 1.1rem; margin: 1.4em 0 .4em; }
.article-body p { margin: 0 0 1em; }
.article-body ul, .article-body ol { padding-left: 1.4rem; }
.article-body blockquote { border-left: 4px solid #005eb8; background: #eef6ff; padding: .8rem 1rem; color: #334155; }
.article-body a { color: #005eb8; }
.article-body img { max-width: 100%; border-radius: 8px; }
.article-body code { background: #f1f5f9; padding: .1em .35em; border-radius: 4px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.note { border: 1px solid var(--line); background: var(--bg-soft); padding: 1rem; }
.note h3 { margin: 0 0 .5rem; font-size: .76rem; text-transform: uppercase; letter-spacing: .12em; color: #475569; }
.footer { margin-top: 2rem; background: var(--brand-navy); color: #fff; border-top: 4px solid var(--brand-yellow); }
.footer-inner { display: flex; align-items: center; justify-content: center; gap: .75rem; padding: 1rem 0; }
.footer-logo { height: 28px; width: auto; }
.footer-ornament { width: 100%; display: block; opacity: .9; }