
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; line-height: 1.5; }

:root{
--bg: #f8e6e2;
  --card: #fff;
  --border: #eee3e1;
  --navy: #1f2a55;
  --pink: #f1a2a0;
  --text: #1b1b1f;
  --muted: rgba(27,27,31,.65);

  --radius: 16px;
  --maxw: 1000px;
  --header-h: 84px;
}

html{
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 16px);
}

body{ background: var(--bg); color: var(--text); }

.site-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--header-h);
  z-index: 1000;

  background: rgba(251,247,246,.9);
  border-bottom: 1px solid var(--border);
}

.header-inner{
  max-width: var(--maxw);
  margin: 0 auto;
  height: 100%;
  padding: 14px 16px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.brand h1{ margin: 0; font-size: 18px; }
.brand p{ margin: 3px 0 0; font-size: 13px; color: var(--muted); }

.site-nav{ display: flex; gap: 10px; flex-wrap: wrap; }

.site-nav a{
  text-decoration: none;
  color: var(--navy);
  font-size: 14px;

  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid transparent;
}

.site-nav a:hover{
  background: rgba(241,162,160,.18);
  border-color: var(--border);

}

.site-nav a.active,
.site-nav a[aria-current="page"]{
  background: var(--navy);
  color: white;
}

main{
  max-width: var(--maxw);
  margin: 0 auto;
  padding: calc(var(--header-h) + 24px) 16px 56px;
}

.section{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px;
  margin: 16px 0;
}

.section h2{ margin: 0 0 10px; color: var(--navy); }
.section h3{ margin: 18px 0 6px; color: var(--navy); font-size: 16px; }
.section p{ margin: 10px 0; }

img{ max-width: 100%; height: auto; }

.figure{ margin: 12px 0 0; }
.figure-img{
  max-width: 600px;   
  width: 100%;
  border-radius: var(--radius);
  border: 1px solid var(--border);
}
.caption{ margin-top: 8px; font-size: 13px; color: var(--muted); }

.repo-link a{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid var(--border);

  background: rgba(241,162,160,.22);
  color: var(--navy);
  font-weight: 500;
  text-decoration: none;
}

.repo-link a:hover{
  background: rgba(241,162,160,.28);
}


.slider{
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 8px 2px 12px;
}
.slide{
  flex: 0 0 auto;
  width: min(280px, 75vw); 
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 10px;
  background: white;
}
.slide img{
  border-radius: calc(var(--radius) - 6px);
  border: 1px solid var(--border);
}

.soft-divider{
  border: none;
  border-top: 1px solid var(--border);
  margin: 32px 0;
}


.pdf-wrapper{
  width: 85%;
  max-width: 800px;
  height: 90vh;
  margin: 24px auto 0;

  border: 1px solid var(--border);
  border-radius: var(--radius);
  overflow: hidden;
  background: white;
}

.pdf-wrapper iframe{
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}


.site-footer{
  text-align: center;
  color: var(--muted);
  padding: 18px 16px 34px;
}

.study-images{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.study-images figure{ margin: 0; }

.study-images img{
  width: 100%;
  border-radius: 12px;
  border: 1px solid var(--border);
}

.study-images .wide{
  grid-column: span 2;
}



@media (max-width: 700px){
  .brand p{ display: none; }
  :root{ --header-h: 96px; }
}

.site-nav a.active,
.site-nav a[aria-current="page"]{
  background: var(--navy);
  color: white;
}

main{
  max-width: var(--maxw);
  margin: 0 auto;
  padding: calc(var(--header-h) + 24px) 16px 56px;
}

.section{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 20px;
  margin: 16px 0;
}

.section h2{ margin: 0 0 10px; color: var(--navy); }
.section h3{ margin: 18px 0 6px; color: var(--navy); font-size: 16px; }
.section p{ margin: 10px 0; }

img{ max-width: 100%; height: auto; }

.figure{ margin: 12px 0 0; }
.figure-img{
  max-width: 600px;   
  width: 100%;
  border-radius: var(--radius);
  border: 1px solid var(--border);
}
.caption{ margin-top: 8px; font-size: 13px; color: var(--muted); }

.repo-link a{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid var(--border);

  background: rgba(241,162,160,.22);
  color: var(--navy);
  font-weight: 500;
  text-decoration: none;
}

.repo-link a:hover{
  background: rgba(241,162,160,.28);
}


.slider{
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 8px 2px 12px;
}
.slide{
  flex: 0 0 auto;
  width: min(280px, 75vw); 
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 10px;
  background: white;
}
.slide img{
  border-radius: calc(var(--radius) - 6px);
  border: 1px solid var(--border);
}

.soft-divider{
  border: none;
  border-top: 1px solid var(--border);
  margin: 32px 0;
}


.pdf-wrapper{
  width: 85%;
  max-width: 800px;
  height: 90vh;
  margin: 24px auto 0;

  border: 1px solid var(--border);
  border-radius: var(--radius);
  overflow: hidden;
  background: white;
}

.pdf-wrapper iframe{
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}


.site-footer{
  text-align: center;
  color: var(--muted);
  padding: 18px 16px 34px;
}

.study-images{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.study-images figure{ margin: 0; }

.study-images img{
  width: 100%;
  border-radius: 12px;
  border: 1px solid var(--border);
}

.study-images .wide{
  grid-column: span 2;
}

.download-apk{
  margin-top: 16px;
}

.download-apk a{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 12px 18px;
  border-radius: 999px;
  border: 1px solid var(--border);

  background: var(--navy);
  color: white;
  font-weight: 500;
  text-decoration: none;
}

.download-apk a:hover{
  opacity: 0.9;
}


.video-wrapper{
  max-width: 320px;       /* phone-sized */
  margin: 0 auto;
}

.video-wrapper video{
  width: 100%;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: black;
}



@media (max-width: 700px){
  .brand p{ display: none; }
  :root{ --header-h: 96px; }
}

@media (max-width: 700px){
  .pdf-wrapper{
    width: 100%;
    height: 70vh;
  }
}
