{"id":43,"date":"2026-03-25T23:50:05","date_gmt":"2026-03-25T23:50:05","guid":{"rendered":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/?page_id=43"},"modified":"2026-04-03T12:32:03","modified_gmt":"2026-04-03T12:32:03","slug":"kapsul","status":"publish","type":"page","link":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/","title":{"rendered":"KAPS\u00dcL"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>KAPS\u00dcL | Smart Medication Management<\/title>\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Serif+Display:ital@0;1&#038;family=DM+Sans:wght@300;400;500;600;700&#038;family=Space+Mono:wght@400;700&#038;display=swap\" rel=\"stylesheet\">\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\n    <style>\n        :root {\n            --navy:       #2c4066;\n            --navy-deep:  #1a2a44;\n            --navy-light: #3d5580;\n            --green:      #6a9640;\n            --green-vivid:#79a14b;\n            --green-pale: #e8f0de;\n            --cream:      #faf9f6;\n            --white:      #ffffff;\n            --gray-100:   #f4f6f8;\n            --gray-200:   #e8ecf0;\n            --gray-500:   #8494a8;\n            --gray-700:   #4a5568;\n            --text:       #1e2d42;\n            --font-display: 'DM Serif Display', Georgia, serif;\n            --font-body:    'DM Sans', system-ui, sans-serif;\n            --font-mono:    'Space Mono', monospace;\n            --transition:   all 0.45s cubic-bezier(0.16, 1, 0.3, 1);\n            --radius-sm:    10px;\n            --radius-md:    20px;\n            --radius-lg:    32px;\n            --shadow-card:  0 2px 12px rgba(44,64,102,0.08), 0 8px 32px rgba(44,64,102,0.06);\n            --shadow-hover: 0 8px 30px rgba(44,64,102,0.14), 0 20px 60px rgba(44,64,102,0.10);\n        }\n\n        html, body { margin: 0; padding: 0; }\n        *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }\n        html { scroll-behavior: smooth; }\n        body { font-family: var(--font-body); color: var(--text); background: var(--cream); overflow-x: hidden; -webkit-font-smoothing: antialiased; }\n        img { display: block; max-width: 100%; }\n        a  { text-decoration: none; color: inherit; }\n\n        \/* SCROLL REVEAL *\/\n        .reveal { opacity: 0; transform: translateY(40px); transition: opacity 0.8s ease, transform 0.8s ease; }\n        .reveal.active { opacity: 1; transform: translateY(0); }\n        .reveal-delay-1 { transition-delay: 0.1s; }\n        .reveal-delay-2 { transition-delay: 0.2s; }\n        .reveal-delay-3 { transition-delay: 0.3s; }\n        .reveal-delay-4 { transition-delay: 0.4s; }\n\n        \/* NAVIGATION *\/\n        nav {\n            position: fixed;\n            top: 0; left: 0; right: 0; margin: 0;\n            z-index: 1000;\n            padding: 0 6%;\n            height: 72px;\n            display: flex;\n            align-items: center;\n            justify-content: space-between;\n            background: rgba(250,249,246,0.92);\n            backdrop-filter: blur(16px);\n            -webkit-backdrop-filter: blur(16px);\n            border-bottom: 1px solid rgba(44,64,102,0.08);\n            transition: opacity 0.4s ease, visibility 0.4s ease;\n        }\n        nav.nav-hidden { opacity: 0; visibility: hidden; pointer-events: none; }\n        .nav-logo img { height: 52px; width: auto; }\n        .nav-links { display: flex; list-style: none; gap: 36px; align-items: center; }\n        .nav-links a { font-weight: 600; font-size: 0.88rem; letter-spacing: 0.02em; color: var(--navy); position: relative; padding-bottom: 2px; }\n        .nav-links a::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 2px; background: var(--green-vivid); transition: width 0.3s ease; border-radius: 2px; }\n        .nav-links a:hover::after { width: 100%; }\n        .nav-links a:hover { color: var(--green); }\n        .nav-hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 4px; background: none; border: none; }\n        .nav-hamburger span { display: block; width: 24px; height: 2px; background: var(--navy); border-radius: 2px; transition: 0.3s; }\n\n        \/* HERO *\/\n        .hero { min-height: 100vh; background: var(--navy-deep); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 100px 6% 80px; position: relative; overflow: hidden; }\n        .hero::before { content: ''; position: absolute; top: -200px; left: -200px; width: 700px; height: 700px; background: radial-gradient(circle, rgba(106,150,64,0.18) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }\n        .hero::after { content: ''; position: absolute; bottom: -150px; right: -150px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(61,85,128,0.3) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }\n        .hero-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px); background-size: 48px 48px; pointer-events: none; }\n        .hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(106,150,64,0.18); border: 1px solid rgba(106,150,64,0.35); color: #9dc968; padding: 7px 18px; border-radius: 50px; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 28px; animation: fadeInDown 0.8s ease both; }\n        .hero-badge span { width: 7px; height: 7px; border-radius: 50%; background: #9dc968; animation: pulse 2s infinite; }\n        .hero h1 { font-family: var(--font-display); font-size: clamp(3.8rem, 9vw, 7rem); color: var(--white); line-height: 1.0; letter-spacing: -0.02em; margin-bottom: 8px; animation: fadeInUp 0.9s 0.2s ease both; }\n        .hero h1 em { font-style: italic; color: #9dc968; }\n        .hero-sub { font-family: var(--font-mono); font-size: 0.8rem; color: rgba(255,255,255,0.35); letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 28px; animation: fadeInUp 0.9s 0.3s ease both; }\n        .hero p { font-size: clamp(1rem, 2vw, 1.2rem); color: rgba(255,255,255,0.72); max-width: 620px; line-height: 1.75; margin-bottom: 48px; animation: fadeInUp 0.9s 0.4s ease both; }\n        .hero-buttons { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; animation: fadeInUp 0.9s 0.55s ease both; }\n        .btn-primary { background: var(--green); color: var(--white); padding: 16px 38px; border-radius: 50px; font-weight: 700; font-size: 0.95rem; transition: var(--transition); border: 2px solid transparent; }\n        .btn-primary:hover { background: #7ab54a; transform: translateY(-3px); box-shadow: 0 12px 35px rgba(106,150,64,0.45); }\n        .btn-outline { background: transparent; color: var(--white); padding: 14px 38px; border-radius: 50px; font-weight: 600; font-size: 0.95rem; border: 2px solid rgba(255,255,255,0.3); transition: var(--transition); }\n        .btn-outline:hover { border-color: rgba(255,255,255,0.7); background: rgba(255,255,255,0.07); transform: translateY(-3px); }\n        .scroll-indicator { position: absolute; bottom: 36px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 8px; animation: fadeInUp 1s 1s ease both; }\n        .scroll-indicator span { font-size: 0.72rem; letter-spacing: 0.15em; text-transform: uppercase; color: rgba(255,255,255,0.35); font-weight: 600; }\n        .scroll-mouse { width: 24px; height: 38px; border: 2px solid rgba(255,255,255,0.25); border-radius: 12px; display: flex; justify-content: center; padding-top: 6px; }\n        .scroll-mouse::after { content: ''; width: 3px; height: 8px; background: rgba(255,255,255,0.5); border-radius: 2px; animation: scrollDown 1.8s infinite; }\n        .hero-stats { position: absolute; bottom: 0; left: 0; right: 0; background: rgba(255,255,255,0.05); border-top: 1px solid rgba(255,255,255,0.08); display: flex; justify-content: center; gap: 0; animation: fadeInUp 1s 0.8s ease both; }\n        .hero-stat { padding: 20px 50px; text-align: center; border-right: 1px solid rgba(255,255,255,0.08); }\n        .hero-stat:last-child { border-right: none; }\n        .hero-stat-number { font-family: var(--font-display); font-size: 1.9rem; color: var(--white); line-height: 1; margin-bottom: 4px; }\n        .hero-stat-number em { color: #9dc968; font-style: normal; }\n        .hero-stat-label { font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.4); font-weight: 600; }\n\n        \/* SECTION COMMONS *\/\n        section { padding: 100px 6%; }\n        .section-label { font-family: var(--font-mono); font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--green-vivid); font-weight: 700; margin-bottom: 14px; display: flex; align-items: center; gap: 10px; }\n        .section-label::before { content: ''; display: inline-block; width: 28px; height: 2px; background: var(--green-vivid); border-radius: 2px; }\n        .section-title { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3rem); color: var(--navy-deep); line-height: 1.15; letter-spacing: -0.02em; }\n        .section-desc { font-size: 1.05rem; color: var(--gray-700); max-width: 560px; line-height: 1.8; margin-top: 16px; }\n\n        \/* PROBLEM *\/\n        #problem { background: var(--white); display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }\n        .problem-stat-card { background: var(--navy-deep); color: var(--white); border-radius: var(--radius-lg); padding: 52px 48px; position: relative; overflow: hidden; }\n        .problem-stat-card::before { content: ''; position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; background: radial-gradient(circle, rgba(106,150,64,0.25) 0%, transparent 70%); border-radius: 50%; }\n        .problem-big-number { font-family: var(--font-display); font-size: 5.5rem; line-height: 1; color: var(--white); margin-bottom: 8px; }\n        .problem-big-number em { color: #9dc968; font-style: normal; }\n        .problem-stat-card p { font-size: 1.05rem; color: rgba(255,255,255,0.72); line-height: 1.7; max-width: 340px; }\n        .problem-secondary-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }\n        .problem-mini-card { background: var(--gray-100); border-radius: var(--radius-md); padding: 24px; border-left: 3px solid var(--green-vivid); }\n        .problem-mini-card strong { display: block; font-family: var(--font-display); font-size: 1.6rem; color: var(--navy-deep); margin-bottom: 4px; }\n        .problem-mini-card span { font-size: 0.82rem; color: var(--gray-500); font-weight: 500; }\n        .problem-text .section-title { max-width: 440px; }\n        .problem-text .section-desc { max-width: 460px; }\n        .problem-quote { margin-top: 36px; padding: 24px 28px; background: var(--green-pale); border-radius: var(--radius-md); border-left: 4px solid var(--green-vivid); }\n        .problem-quote p { font-family: var(--font-display); font-style: italic; font-size: 1.05rem; color: var(--navy-deep); line-height: 1.6; }\n        .problem-quote cite { display: block; margin-top: 10px; font-size: 0.78rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--green); }\n\n        \/* FEATURES *\/\n        #features { background: var(--cream); }\n        .features-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 64px; gap: 40px; }\n        .features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }\n        .feature-card { background: var(--white); border-radius: var(--radius-lg); padding: 40px 36px; border: 1px solid var(--gray-200); transition: var(--transition); position: relative; overflow: hidden; }\n        .feature-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--green) 0%, var(--green-vivid) 100%); transform: scaleX(0); transition: transform 0.4s ease; transform-origin: left; }\n        .feature-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-hover); }\n        .feature-card:hover::before { transform: scaleX(1); }\n        .feature-icon { width: 56px; height: 56px; background: var(--green-pale); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; margin-bottom: 24px; transition: var(--transition); }\n        .feature-card:hover .feature-icon { background: var(--green); }\n        .feature-icon i { font-size: 1.4rem; color: var(--green); transition: var(--transition); }\n        .feature-card:hover .feature-icon i { color: var(--white); }\n        .feature-card h3 { font-size: 1.1rem; font-weight: 700; color: var(--navy-deep); margin-bottom: 12px; }\n        .feature-card p { font-size: 0.92rem; color: var(--gray-500); line-height: 1.75; }\n        .feature-card-large { grid-column: span 3; background: var(--navy-deep); color: var(--white); display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }\n        .feature-card-large .feature-icon { background: rgba(106,150,64,0.2); }\n        .feature-card-large .feature-icon i { color: #9dc968; }\n        .feature-card-large:hover .feature-icon { background: var(--green); }\n        .feature-card-large:hover .feature-icon i { color: var(--white); }\n        .feature-card-large h3 { color: var(--white); font-size: 1.4rem; }\n        .feature-card-large p { color: rgba(255,255,255,0.65); font-size: 1rem; }\n        .feature-large-visual { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }\n        .flv-item { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-sm); padding: 20px; }\n        .flv-item strong { display: block; font-family: var(--font-mono); font-size: 1.4rem; color: #9dc968; margin-bottom: 4px; }\n        .flv-item span { font-size: 0.78rem; color: rgba(255,255,255,0.45); font-weight: 500; }\n\n        \/* HOW IT WORKS *\/\n        #how-it-works { background: var(--white); }\n        .hiw-header { text-align: center; max-width: 620px; margin: 0 auto 72px; }\n        .hiw-header .section-label { justify-content: center; }\n        .hiw-header .section-label::before { display: none; }\n        .hiw-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; position: relative; }\n        .hiw-steps::before { content: ''; position: absolute; top: 44px; left: calc(12.5% + 24px); right: calc(12.5% + 24px); height: 2px; background: linear-gradient(90deg, var(--green-pale) 0%, var(--green) 50%, var(--green-pale) 100%); z-index: 0; }\n        .hiw-step { text-align: center; padding: 0 24px; position: relative; z-index: 1; }\n        .hiw-step-num { width: 88px; height: 88px; background: var(--white); border: 2px solid var(--green-pale); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 28px; font-family: var(--font-mono); font-size: 1.2rem; font-weight: 700; color: var(--green); transition: var(--transition); position: relative; }\n        .hiw-step:hover .hiw-step-num { background: var(--green); border-color: var(--green); color: var(--white); transform: scale(1.1); box-shadow: 0 8px 28px rgba(106,150,64,0.35); }\n        .hiw-step-icon { position: absolute; bottom: -6px; right: -6px; width: 28px; height: 28px; background: var(--navy-deep); border-radius: 50%; display: flex; align-items: center; justify-content: center; }\n        .hiw-step-icon i { font-size: 0.65rem; color: var(--white); }\n        .hiw-step h4 { font-weight: 700; font-size: 1rem; color: var(--navy-deep); margin-bottom: 10px; }\n        .hiw-step p { font-size: 0.88rem; color: var(--gray-500); line-height: 1.7; }\n\n        \/* APP SCREENSHOTS *\/\n        #app-screens { background: var(--navy-deep); padding: 100px 6%; overflow: hidden; }\n        .app-header { text-align: center; margin-bottom: 72px; }\n        .app-header .section-label { justify-content: center; color: #9dc968; }\n        .app-header .section-label::before { background: #9dc968; }\n        .app-header .section-title { color: var(--white); }\n        .app-header .section-desc { color: rgba(255,255,255,0.55); margin: 16px auto 0; }\n        .app-screens-container { display: grid; grid-template-columns: 1fr 1.3fr 1fr; gap: 24px; align-items: end; max-width: 960px; margin: 0 auto; }\n        .app-screen-item { text-align: center; }\n        .app-screen-item.center { transform: translateY(-30px); }\n        .phone-frame { position: relative; display: inline-block; width: 100%; max-width: 240px; margin: 0 auto; }\n        .center .phone-frame { max-width: 280px; }\n        .phone-outer { background: #0d1520; border-radius: 38px; padding: 10px; box-shadow: 0 0 0 1px rgba(255,255,255,0.08), 0 40px 80px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.1); }\n        .center .phone-outer { box-shadow: 0 0 0 1px rgba(121,161,75,0.4), 0 60px 100px rgba(0,0,0,0.7), 0 0 60px rgba(106,150,64,0.15), inset 0 1px 0 rgba(255,255,255,0.1); }\n        .phone-inner { background: #1a2333; border-radius: 30px; overflow: hidden; aspect-ratio: 9\/19.5; position: relative; }\n        .phone-screenshot { width: 100%; height: 100%; object-fit: cover; object-position: top; }\n        .app-screen-label { margin-top: 20px; font-size: 0.8rem; font-weight: 600; color: rgba(255,255,255,0.5); letter-spacing: 0.04em; }\n        .center .app-screen-label { color: rgba(255,255,255,0.85); font-size: 0.85rem; }\n\n        \/* TECH SPECS *\/\n        #tech-specs { background: var(--cream); }\n        .specs-header { text-align: center; max-width: 600px; margin: 0 auto 72px; }\n        .specs-header .section-label { justify-content: center; }\n        .specs-header .section-label::before { display: none; }\n        .specs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }\n        .spec-panel { background: var(--white); border-radius: var(--radius-lg); padding: 44px 40px; border: 1px solid var(--gray-200); }\n        .spec-panel-title { display: flex; align-items: center; gap: 14px; margin-bottom: 32px; }\n        .spec-panel-icon { width: 48px; height: 48px; background: var(--navy-deep); border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; }\n        .spec-panel-icon i { font-size: 1.1rem; color: var(--white); }\n        .spec-panel-title h3 { font-size: 1.1rem; font-weight: 700; color: var(--navy-deep); }\n        .spec-panel-title span { font-size: 0.75rem; color: var(--gray-500); }\n        .spec-items { display: flex; flex-direction: column; gap: 16px; }\n        .spec-item { display: flex; align-items: flex-start; gap: 14px; }\n        .spec-item-dot { width: 8px; height: 8px; background: var(--green-vivid); border-radius: 50%; margin-top: 6px; flex-shrink: 0; }\n        .spec-item-content strong { display: block; font-size: 0.9rem; font-weight: 700; color: var(--navy-deep); margin-bottom: 2px; }\n        .spec-item-content span { font-size: 0.82rem; color: var(--gray-500); }\n        .spec-panel.power-panel { grid-column: span 2; background: var(--navy-deep); }\n        .spec-panel.power-panel .spec-panel-title h3 { color: var(--white); }\n        .spec-panel.power-panel .spec-panel-title span { color: rgba(255,255,255,0.45); }\n        .spec-panel.power-panel .spec-panel-icon { background: rgba(106,150,64,0.25); }\n        .spec-panel.power-panel .spec-panel-icon i { color: #9dc968; }\n        .power-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }\n        .power-metric { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.07); border-radius: var(--radius-md); padding: 24px 20px; }\n        .power-metric-value { font-family: var(--font-mono); font-size: 1.6rem; color: #9dc968; margin-bottom: 6px; line-height: 1; }\n        .power-metric-label { font-size: 0.78rem; color: rgba(255,255,255,0.45); font-weight: 500; }\n        .power-metric-note { font-size: 0.7rem; color: rgba(255,255,255,0.25); margin-top: 4px; }\n        .power-pass { margin-top: 20px; display: inline-flex; align-items: center; gap: 10px; background: rgba(106,150,64,0.18); border: 1px solid rgba(106,150,64,0.35); color: #9dc968; padding: 10px 20px; border-radius: 50px; font-size: 0.82rem; font-weight: 700; letter-spacing: 0.05em; }\n        .power-pass i { font-size: 0.85rem; }\n\n        \/* TEAM *\/\n        #team { background: var(--white); }\n        .team-header { text-align: center; max-width: 580px; margin: 0 auto 72px; }\n        .team-header .section-label { justify-content: center; }\n        .team-header .section-label::before { display: none; }\n        .team-container { display: flex; flex-direction: column; gap: 24px; align-items: center; }\n        .team-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; }\n        .team-member { background: var(--cream); border: 1px solid var(--gray-200); border-radius: var(--radius-lg); padding: 36px 28px; text-align: center; width: 220px; transition: var(--transition); display: block; cursor: pointer; }\n        .team-member:hover { transform: translateY(-8px); box-shadow: var(--shadow-hover); border-color: var(--navy); }\n        .member-photo { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; margin: 0 auto 18px; border: 3px solid var(--green-pale); display: block; transition: var(--transition); }\n        .team-member:hover .member-photo { border-color: var(--green-vivid); }\n        .team-member h4 { font-size: 0.95rem; font-weight: 700; color: var(--navy-deep); margin-bottom: 4px; }\n        .team-member .role { font-size: 0.72rem; color: var(--green-vivid); font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; }\n        .linkedin-icon { margin-top: 14px; color: #0a66c2; font-size: 1.2rem; transition: var(--transition); display: inline-block; }\n        .team-member:hover .linkedin-icon { transform: scale(1.2); }\n        .team-university-badge { margin-top: 56px; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 20px 36px; background: var(--cream); border: 1px solid var(--gray-200); border-radius: 50px; max-width: fit-content; margin-left: auto; margin-right: auto; }\n        .team-university-badge i { font-size: 1.3rem; color: var(--navy); }\n        .team-university-badge span { font-size: 0.85rem; font-weight: 600; color: var(--navy); }\n        .team-university-badge span em { font-style: normal; color: var(--green-vivid); }\n\n        \/* FOOTER *\/\n        footer { background: var(--navy-deep); color: rgba(255,255,255,0.45); padding: 60px 6%; }\n        .footer-inner { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px; flex-wrap: wrap; padding-bottom: 40px; border-bottom: 1px solid rgba(255,255,255,0.07); }\n        .footer-brand img { height: 44px; margin-bottom: 14px; filter: brightness(0) invert(1); opacity: 0.8; }\n        .footer-brand p { font-size: 0.85rem; max-width: 280px; line-height: 1.7; }\n        .footer-links h5 { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.6); margin-bottom: 16px; }\n        .footer-links ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }\n        .footer-links a { font-size: 0.85rem; color: rgba(255,255,255,0.4); transition: color 0.3s; }\n        .footer-links a:hover { color: rgba(255,255,255,0.85); }\n        .footer-bottom { margin-top: 32px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }\n        .footer-bottom p { font-size: 0.8rem; }\n        .footer-tag { font-family: var(--font-mono); font-size: 0.7rem; background: rgba(106,150,64,0.15); color: #9dc968; border: 1px solid rgba(106,150,64,0.25); padding: 5px 14px; border-radius: 50px; }\n\n        \/* ANIMATIONS *\/\n        @keyframes fadeInUp { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: translateY(0); } }\n        @keyframes fadeInDown { from { opacity: 0; transform: translateY(-16px); } to { opacity: 1; transform: translateY(0); } }\n        @keyframes pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.5; transform: scale(0.85); } }\n        @keyframes scrollDown { 0% { opacity: 0; transform: translateY(0); } 40% { opacity: 1; } 80% { opacity: 0; transform: translateY(10px); } 100% { opacity: 0; } }\n\n        \/* RESPONSIVE *\/\n        @media (max-width: 1024px) {\n            #problem { grid-template-columns: 1fr; gap: 48px; }\n            .features-grid { grid-template-columns: 1fr 1fr; }\n            .feature-card-large { grid-column: span 2; }\n            .hiw-steps { grid-template-columns: 1fr 1fr; gap: 40px; }\n            .hiw-steps::before { display: none; }\n            .app-screens-container { grid-template-columns: 1fr 1fr 1fr; }\n            .app-screen-item.center { transform: none; }\n            .specs-grid { grid-template-columns: 1fr; }\n            .spec-panel.power-panel { grid-column: span 1; }\n            .power-grid { grid-template-columns: 1fr 1fr; }\n        }\n        @media (max-width: 768px) {\n            section { padding: 72px 5%; }\n            .nav-links { display: none; }\n            .nav-hamburger { display: flex; }\n            .hero h1 { font-size: 3.2rem; }\n            .hero-stats { flex-wrap: wrap; }\n            .hero-stat { padding: 16px 24px; border-right: none; border-bottom: 1px solid rgba(255,255,255,0.08); }\n            .features-header { flex-direction: column; gap: 20px; }\n            .features-grid { grid-template-columns: 1fr; }\n            .feature-card-large { grid-column: span 1; grid-template-columns: 1fr; }\n            .hiw-steps { grid-template-columns: 1fr; }\n            .app-screens-container { grid-template-columns: 1fr; max-width: 280px; }\n            .app-screen-item:not(.center) { display: none; }\n            .power-grid { grid-template-columns: 1fr 1fr; }\n            .footer-inner { flex-direction: column; gap: 36px; }\n            .footer-bottom { flex-direction: column; text-align: center; }\n        }\n    <\/style>\n<\/head>\n<body>\n\n    <nav id=\"main-nav\">\n        <a href=\"#\" class=\"nav-logo\">\n            <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/logo-1.png\" alt=\"KAPS\u00dcL Logo\">\n        <\/a>\n        <ul class=\"nav-links\">\n            <li><a href=\"#problem\">Problem<\/a><\/li>\n            <li><a href=\"#features\">Features<\/a><\/li>\n            <li><a href=\"#how-it-works\">How It Works<\/a><\/li>\n            <li><a href=\"#app-screens\">App<\/a><\/li>\n            <li><a href=\"#tech-specs\">Specs<\/a><\/li>\n            <li><a href=\"#team\">Team<\/a><\/li>\n        <\/ul>\n        <button class=\"nav-hamburger\" id=\"hamburger\" aria-label=\"Open menu\">\n            <span><\/span><span><\/span><span><\/span>\n        <\/button>\n    <\/nav>\n\n    <section class=\"hero\" id=\"home\">\n        <div class=\"hero-grid\"><\/div>\n        <div class=\"hero-badge\"><span><\/span>GE401 \u00b7 Bilkent University Senior Design<\/div>\n        <h1>KAP<em>S\u00dcL<\/em><\/h1>\n        <p class=\"hero-sub\">Smart Medication Management System<\/p>\n        <p>An IoT-enabled smart pill dispenser that automates medication scheduling, ensures accurate dispensing, and keeps caregivers informed \u2014 in real time.<\/p>\n        <div class=\"hero-buttons\">\n            <a href=\"#features\" class=\"btn-primary\">Explore Features<\/a>\n            <a href=\"#how-it-works\" class=\"btn-outline\">See How It Works<\/a>\n        <\/div>\n        <div class=\"hero-stats\">\n            <div class=\"hero-stat\"><div class=\"hero-stat-number\"><em>24<\/em><\/div><div class=\"hero-stat-label\">Dose Capacity<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"hero-stat-number\"><em>24h<\/em><\/div><div class=\"hero-stat-label\">Battery Backup<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"hero-stat-number\"><em>75<\/em><span style=\"font-size:1.2rem;color:rgba(255,255,255,0.5)\">dB<\/span><\/div><div class=\"hero-stat-label\">Alarm Volume<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"hero-stat-number\"><em>Real<\/em><\/div><div class=\"hero-stat-label\">-Time Sync<\/div><\/div>\n        <\/div>\n        <div class=\"scroll-indicator\"><div class=\"scroll-mouse\"><\/div><span>Scroll<\/span><\/div>\n    <\/section>\n\n    <section id=\"problem\">\n        <div class=\"problem-visual reveal\">\n            <div class=\"problem-stat-card\">\n                <div class=\"problem-big-number\"><em>50%<\/em><\/div>\n                <p>of patients with chronic conditions do not take their medications as prescribed \u2014 with elderly patients being the most affected group.<\/p>\n            <\/div>\n            <div class=\"problem-secondary-cards\">\n                <div class=\"problem-mini-card\"><strong>125,000+<\/strong><span>annual deaths linked to non-adherence (US alone)<\/span><\/div>\n                <div class=\"problem-mini-card\"><strong>$300B<\/strong><span>in preventable healthcare costs each year<\/span><\/div>\n            <\/div>\n        <\/div>\n        <div class=\"problem-text reveal reveal-delay-2\">\n            <div class=\"section-label\">The Challenge<\/div>\n            <h2 class=\"section-title\">Medication adherence is a critical, unsolved problem.<\/h2>\n            <p class=\"section-desc\">Complex dosage schedules, cognitive decline, and lack of real-time oversight leave millions of elderly patients vulnerable to missed or incorrect doses.<\/p>\n            <div class=\"problem-quote\">\n                <p>&#8220;Non-adherence is the world&#8217;s most prescribed, but least taken medicine.&#8221;<\/p>\n                <cite>\u2014 WHO, Adherence to Long-Term Therapies Report<\/cite>\n            <\/div>\n            <p class=\"section-desc\" style=\"margin-top:24px;\">KAPS\u00dcL addresses this directly: an automated dispenser that removes the guesswork, connects patients to caregivers, and creates a safety net that works even during power outages.<\/p>\n        <\/div>\n    <\/section>\n\n    <section id=\"features\">\n        <div class=\"features-header reveal\">\n            <div>\n                <div class=\"section-label\">Core Capabilities<\/div>\n                <h2 class=\"section-title\">Everything a smart dispenser should be.<\/h2>\n            <\/div>\n            <p class=\"section-desc\" style=\"max-width:360px;\">Designed from the ground up for reliability, accessibility, and peace of mind.<\/p>\n        <\/div>\n        <div class=\"features-grid\">\n            <div class=\"feature-card reveal reveal-delay-1\">\n                <div class=\"feature-icon\"><i class=\"fas fa-capsules\"><\/i><\/div>\n                <h3>14-Dose Carousel<\/h3>\n                <p>The rotating disc with 14 slots provides up to 1 week of coverage with twice-daily use.<\/p>\n            <\/div>\n            <div class=\"feature-card reveal reveal-delay-2\">\n                <div class=\"feature-icon\"><i class=\"fas fa-battery-full\"><\/i><\/div>\n                <h3>Power Failure Redundancy<\/h3>\n                <p>A load-sharing topology seamlessly switches to a 4000 mAh Li-Ion battery during outages, ensuring zero downtime and 24+ hours of backup operation.<\/p>\n            <\/div>\n            <div class=\"feature-card reveal reveal-delay-3\">\n                <div class=\"feature-icon\"><i class=\"fas fa-bell\"><\/i><\/div>\n                <h3>75 dB Audible Alarm<\/h3>\n                <p>A PWM-driven speaker generates high-volume alerts when doses are due, with distinct tone patterns for medication reminders vs. critical system errors.<\/p>\n            <\/div>\n            <div class=\"feature-card reveal reveal-delay-1\">\n                <div class=\"feature-icon\"><i class=\"fas fa-wifi\"><\/i><\/div>\n                <h3>Wi-Fi IoT Connectivity<\/h3>\n                <p>The ESP32-WROOM-32 connects via IEEE 802.11 b\/g\/n for real-time data sync with Firebase Cloud, keeping schedules and logs always up to date.<\/p>\n            <\/div>\n            <div class=\"feature-card reveal reveal-delay-2\">\n                <div class=\"feature-icon\"><i class=\"fas fa-shield-alt\"><\/i><\/div>\n                <h3>Secure Authentication<\/h3>\n                <p>Each physical device is paired to the app via a unique registration key. Encrypted session tokens protect patient data end-to-end.<\/p>\n            <\/div>\n            <div class=\"feature-card reveal reveal-delay-3\">\n                <div class=\"feature-icon\"><i class=\"fas fa-display\"><\/i><\/div>\n                <h3>Elderly-First Interface<\/h3>\n                <p>A 2.4&#8243; TFT LCD shows time, next dose, and battery status at a glance. Three large tactile buttons eliminate complexity for non-tech-savvy users.<\/p>\n            <\/div>\n            <div class=\"feature-card feature-card-large reveal\">\n                <div>\n                    <div class=\"feature-icon\"><i class=\"fas fa-mobile-screen\"><\/i><\/div>\n                    <h3>Caregiver Mobile App<\/h3>\n                    <p>A cross-platform Flutter application gives caregivers complete remote visibility. View adherence history, receive missed-dose alerts, and manage schedules \u2014 from anywhere in the world.<\/p>\n                <\/div>\n                <div class=\"feature-large-visual\">\n                    <div class=\"flv-item\"><strong>FCM<\/strong><span>Instant push notifications<\/span><\/div>\n                    <div class=\"flv-item\"><strong>Firebase<\/strong><span>Real-time cloud sync<\/span><\/div>\n                    <div class=\"flv-item\"><strong>iOS &#038; Android<\/strong><span>Flutter cross-platform<\/span><\/div>\n                    <div class=\"flv-item\"><strong>Live Graphs<\/strong><span>Daily \/ weekly \/ monthly<\/span><\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/section>\n\n    <section id=\"how-it-works\">\n        <div class=\"hiw-header reveal\">\n            <div class=\"section-label\">The Process<\/div>\n            <h2 class=\"section-title\">Simple for users. Sophisticated inside.<\/h2>\n            <p class=\"section-desc\" style=\"margin: 16px auto 0;\">From initial setup to a missed-dose alert reaching the caregiver \u2014 here&#8217;s the full flow.<\/p>\n        <\/div>\n        <div class=\"hiw-steps\">\n            <div class=\"hiw-step reveal reveal-delay-1\">\n                <div class=\"hiw-step-num\">01<div class=\"hiw-step-icon\"><i class=\"fas fa-key\"><\/i><\/div><\/div>\n                <h4>Pair &#038; Authenticate<\/h4>\n                <p>The caregiver registers the device using a unique key via the mobile app. Firebase validates the key and links the device to the account.<\/p>\n            <\/div>\n            <div class=\"hiw-step reveal reveal-delay-2\">\n                <div class=\"hiw-step-num\">02<div class=\"hiw-step-icon\"><i class=\"fas fa-calendar-check\"><\/i><\/div><\/div>\n                <h4>Schedule Doses<\/h4>\n                <p>Up to 14 dose times are configured through the Dosage Scheduler. Schedules sync to Firebase and download to the ESP32 via Wi-Fi.<\/p>\n            <\/div>\n            <div class=\"hiw-step reveal reveal-delay-3\">\n                <div class=\"hiw-step-num\">03<div class=\"hiw-step-icon\"><i class=\"fas fa-clock\"><\/i><\/div><\/div>\n                <h4>Alarm &#038; Dispense<\/h4>\n                <p>At scheduled time, the stepper motor aligns the correct compartment and a 75 dB alarm sounds. The patient presses Dispense to release the pill.<\/p>\n            <\/div>\n            <div class=\"hiw-step reveal reveal-delay-4\">\n                <div class=\"hiw-step-num\">04<div class=\"hiw-step-icon\"><i class=\"fas fa-chart-line\"><\/i><\/div><\/div>\n                <h4>Log &#038; Alert<\/h4>\n                <p>Status is written to Firebase as &#8220;TAKEN&#8221; or &#8220;MISSED&#8221;. Missed doses trigger an instant FCM push notification to the caregiver&#8217;s phone.<\/p>\n            <\/div>\n        <\/div>\n    <\/section>\n\n    <section id=\"app-screens\">\n        <div class=\"app-header reveal\">\n            <div class=\"section-label\">Mobile Application<\/div>\n            <h2 class=\"section-title\">Your medication hub, in your pocket.<\/h2>\n            <p class=\"section-desc\">The companion app keeps both patients and caregivers in the loop \u2014 with real-time sync, rich adherence analytics, and smart notifications.<\/p>\n        <\/div>\n        <div class=\"app-screens-container reveal\">\n\n            <div class=\"app-screen-item\">\n                <div class=\"phone-frame\">\n                    <div class=\"phone-outer\">\n                        <div class=\"phone-inner\">\n                            <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/04\/figure2.png\" alt=\"Patient's medication add page\" class=\"phone-screenshot\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <div class=\"app-screen-label\">Medication Add<\/div>\n            <\/div>\n\n            <div class=\"app-screen-item center\">\n                <div class=\"phone-frame\">\n                    <div class=\"phone-outer\">\n                        <div class=\"phone-inner\">\n                            <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/04\/figure1.png\" alt=\"Patient's main dashboard\" class=\"phone-screenshot\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <div class=\"app-screen-label\">Patient Dashboard<\/div>\n            <\/div>\n\n            <div class=\"app-screen-item\">\n                <div class=\"phone-frame\">\n                    <div class=\"phone-outer\">\n                        <div class=\"phone-inner\">\n                            <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/04\/figure3.png\" alt=\"Caregiver's main page\" class=\"phone-screenshot\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <div class=\"app-screen-label\">Caregiver View<\/div>\n            <\/div>\n\n        <\/div>\n    <\/section>\n\n    <section id=\"tech-specs\">\n        <div class=\"specs-header reveal\">\n            <div class=\"section-label\">Technical Architecture<\/div>\n            <h2 class=\"section-title\">Built on a solid engineering foundation.<\/h2>\n            <p class=\"section-desc\" style=\"margin: 16px auto 0;\">Every component chosen for precision, reliability, and cost-effectiveness.<\/p>\n        <\/div>\n        <div class=\"specs-grid\">\n            <div class=\"spec-panel reveal reveal-delay-1\">\n                <div class=\"spec-panel-title\">\n                    <div class=\"spec-panel-icon\"><i class=\"fas fa-microchip\"><\/i><\/div>\n                    <div><h3>Hardware Core<\/h3><span>Control &#038; Processing<\/span><\/div>\n                <\/div>\n                <div class=\"spec-items\">\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>ESP32-WROOM-32 MCU<\/strong><span>240 MHz dual-core, 4 MB flash, 520 KB SRAM, integrated Wi-Fi &#038; BT<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>28BYJ-48 Stepper Motor<\/strong><span>High-precision carousel rotation via ULN2003A driver array<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>SG90 Servo Motor<\/strong><span>PWM-controlled dispensing lid (trapdoor) mechanism<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>2.4&#8243; TFT LCD (240\u00d7320)<\/strong><span>SPI bus interface; displays time, battery, next-dose info<\/span><\/div><\/div>\n                <\/div>\n            <\/div>\n            <div class=\"spec-panel reveal reveal-delay-2\">\n                <div class=\"spec-panel-title\">\n                    <div class=\"spec-panel-icon\"><i class=\"fas fa-code\"><\/i><\/div>\n                    <div><h3>Software Stack<\/h3><span>App &#038; Cloud<\/span><\/div>\n                <\/div>\n                <div class=\"spec-items\">\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>Flutter Framework<\/strong><span>Single codebase for iOS (14.0+) and Android (10.0+) deployment<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>Firebase Firestore<\/strong><span>Real-time NoSQL cloud database for dosage plans and adherence logs<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>Firebase Authentication<\/strong><span>Encrypted session tokens + unique device registration key system<\/span><\/div><\/div>\n                    <div class=\"spec-item\"><div class=\"spec-item-dot\"><\/div><div class=\"spec-item-content\"><strong>HTTPS REST API (JSON)<\/strong><span>Bidirectional device-cloud sync; offline-resilient with local caching<\/span><\/div><\/div>\n                <\/div>\n            <\/div>\n            <div class=\"spec-panel power-panel reveal\">\n                <div class=\"spec-panel-title\">\n                    <div class=\"spec-panel-icon\"><i class=\"fas fa-bolt\"><\/i><\/div>\n                    <div><h3>Power Budget Analysis<\/h3><span>Worst-case scenario \u00b7 Battery operation \u00b7 Full dispense mode<\/span><\/div>\n                <\/div>\n                <div class=\"power-grid\">\n                    <div class=\"power-metric\"><div class=\"power-metric-value\">2.60 A<\/div><div class=\"power-metric-label\">Peak Draw (with 30% margin)<\/div><div class=\"power-metric-note\">vs. 4.0 A rated capacity<\/div><\/div>\n                    <div class=\"power-metric\"><div class=\"power-metric-value\">4000 mAh<\/div><div class=\"power-metric-label\">Li-Ion Battery<\/div><div class=\"power-metric-note\">3.7V nominal \u00b7 3200 mAh usable<\/div><\/div>\n                    <div class=\"power-metric\"><div class=\"power-metric-value\">~24 h<\/div><div class=\"power-metric-label\">Battery Runtime<\/div><div class=\"power-metric-note\">Typical usage scenario<\/div><\/div>\n                    <div class=\"power-metric\"><div class=\"power-metric-value\">85%<\/div><div class=\"power-metric-label\">Boost Converter Efficiency<\/div><div class=\"power-metric-note\">MT3608 \/ XL6009 target<\/div><\/div>\n                <\/div>\n                <div class=\"power-pass\"><i class=\"fas fa-circle-check\"><\/i>Design Verdict: PASS \u2014 Safe for all operational modes<\/div>\n            <\/div>\n        <\/div>\n    <\/section>\n\n    <section id=\"team\">\n        <div class=\"team-header reveal\">\n            <div class=\"section-label\">The People Behind It<\/div>\n            <h2 class=\"section-title\">Team 12<\/h2>\n        <\/div>\n        <div class=\"team-container reveal\">\n            <div class=\"team-row\">\n                <a href=\"https:\/\/www.linkedin.com\/in\/hidayet-selim-asan\/\" target=\"_blank\" class=\"team-member\">\n                    <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/hidayet.png\" alt=\"Hidayet Selim Asan\" class=\"member-photo\">\n                    <h4>Hidayet Selim Asan<\/h4><span class=\"role\">Product Developer<\/span>\n                    <i class=\"fab fa-linkedin linkedin-icon\"><\/i>\n                <\/a>\n                <a href=\"https:\/\/www.linkedin.com\/in\/ramazan-semih-akg\u00fcl-35287825a\/\" target=\"_blank\" class=\"team-member\">\n                    <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/semih.png\" alt=\"Ramazan Semih Akg\u00fcl\" class=\"member-photo\">\n                    <h4>Ramazan Semih Akg\u00fcl<\/h4><span class=\"role\">Product Developer<\/span>\n                    <i class=\"fab fa-linkedin linkedin-icon\"><\/i>\n                <\/a>\n                <a href=\"https:\/\/www.linkedin.com\/in\/sefa-emre-kavgaci-43400424a\/\" target=\"_blank\" class=\"team-member\">\n                    <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/emre.png\" alt=\"Sefa Emre Kavgac\u0131\" class=\"member-photo\">\n                    <h4>Sefa Emre Kavgac\u0131<\/h4><span class=\"role\">App Developer<\/span>\n                    <i class=\"fab fa-linkedin linkedin-icon\"><\/i>\n                <\/a>\n            <\/div>\n            <div class=\"team-row\">\n                <a href=\"https:\/\/www.linkedin.com\/in\/faik-burak-\u00e7akar\/\" target=\"_blank\" class=\"team-member\">\n                    <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/faik.png\" alt=\"Faik Burak \u00c7akar\" class=\"member-photo\">\n                    <h4>Faik Burak \u00c7akar<\/h4><span class=\"role\">Marketing Manager<\/span>\n                    <i class=\"fab fa-linkedin linkedin-icon\"><\/i>\n                <\/a>\n                <a href=\"https:\/\/www.linkedin.com\/in\/faruk-kezer\/\" target=\"_blank\" class=\"team-member\">\n                    <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/faruk.png\" alt=\"Faruk Kezer\" class=\"member-photo\">\n                    <h4>Faruk Kezer<\/h4><span class=\"role\">Marketing Manager<\/span>\n                    <i class=\"fab fa-linkedin linkedin-icon\"><\/i>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"team-university-badge reveal\">\n            <i class=\"fas fa-graduation-cap\"><\/i>\n            <span>Bilkent University \u00b7 <em>GE 401-402<\/em> \u00b7 Innovative Design and Entrepreneurship \u00b7 2026<\/span>\n        <\/div>\n    <\/section>\n\n    <footer>\n        <div class=\"footer-inner\">\n            <div class=\"footer-brand\">\n                <img decoding=\"async\" src=\"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-content\/uploads\/2026\/03\/logo-1.png\" alt=\"KAPS\u00dcL Logo\">\n                <p>An IoT-enabled smart pill dispenser designed to improve medication adherence for elderly patients and provide peace of mind for caregivers.<\/p>\n            <\/div>\n            <div class=\"footer-links\">\n                <h5>Navigation<\/h5>\n                <ul>\n                    <li><a href=\"#problem\">The Problem<\/a><\/li>\n                    <li><a href=\"#features\">Features<\/a><\/li>\n                    <li><a href=\"#how-it-works\">How It Works<\/a><\/li>\n                    <li><a href=\"#app-screens\">Mobile App<\/a><\/li>\n                    <li><a href=\"#tech-specs\">Tech Specs<\/a><\/li>\n                    <li><a href=\"#team\">Team<\/a><\/li>\n                <\/ul>\n            <\/div>\n        <\/div>\n        <div class=\"footer-bottom\">\n            <p>&copy; 2026 KAPS\u00dcL \u00b7 Team 12 \u00b7 Bilkent University<\/p>\n            <div class=\"footer-tag\">GE 401-402 Senior Design<\/div>\n        <\/div>\n    <\/footer>\n\n    <script>\n        const revealEls = document.querySelectorAll('.reveal');\n        const revealObserver = new IntersectionObserver((entries) => {\n            entries.forEach(entry => {\n                if (entry.isIntersecting) {\n                    entry.target.classList.add('active');\n                    revealObserver.unobserve(entry.target);\n                }\n            });\n        }, { threshold: 0.12 });\n        revealEls.forEach(el => revealObserver.observe(el));\n\n        const nav = document.getElementById('main-nav');\n        window.addEventListener('scroll', () => {\n            nav.classList.toggle('nav-hidden', window.scrollY > 80);\n        });\n\n        const hamburger = document.getElementById('hamburger');\n        const navLinks  = document.querySelector('.nav-links');\n        hamburger.addEventListener('click', () => {\n            const open = navLinks.style.display === 'flex';\n            if (open) {\n                navLinks.style.display = 'none';\n            } else {\n                Object.assign(navLinks.style, {\n                    display: 'flex', flexDirection: 'column',\n                    position: 'absolute', top: '72px', left: '0', right: '0',\n                    background: 'rgba(250,249,246,0.98)', padding: '20px 6%',\n                    gap: '16px', boxShadow: '0 8px 24px rgba(0,0,0,0.08)'\n                });\n            }\n        });\n        navLinks.querySelectorAll('a').forEach(a => {\n            a.addEventListener('click', () => { if (window.innerWidth < 769) navLinks.style.display = 'none'; });\n        });\n    <\/script>\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>KAPS\u00dcL | Smart Medication Management Problem Features How It Works App Specs Team GE401 \u00b7 Bilkent University Senior Design KAPS\u00dcL Smart Medication Management System An IoT-enabled smart pill dispenser that automates medication scheduling, ensures accurate dispensing, and keeps caregivers informed \u2014 in real time. Explore Features See How It Works 24 Dose Capacity 24h Battery [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-43","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/pages\/43","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/comments?post=43"}],"version-history":[{"count":14,"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/pages\/43\/revisions"}],"predecessor-version":[{"id":78,"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/pages\/43\/revisions\/78"}],"wp:attachment":[{"href":"https:\/\/ge401ge402.bilkent.edu.tr\/Kapsul\/wp-json\/wp\/v2\/media?parent=43"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}