/* Project styles for project1.html - minimal readable case study layout */
:root{
  --bg: #f7f5f3;
  --muted: #6b6b6b;
  --accent: #00a65a;
  --darkgrey: #727272;
  --max-width: 640px;
  --gap: 8px;
  --font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
}

/* Global box model and body reset */
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{
  background:var(--bg);
  color:#222;
  font-family:var(--font-sans);
  -webkit-font-smoothing:antialiased;
  margin:0;
  overflow-x:hidden; /* prevent horizontal overflow when resizing */
}

.site-header{padding:20px 16px 0}
.back{color:#47534c;text-decoration:none;font-size:14px;display:inline-block;margin-bottom:24px}

.container{
  width:100%;
  max-width:var(--max-width);
  margin:180px auto 80px;
  
}



.intro{
  display:flex;
  flex-direction:column;
  gap:var(--gap);
  margin-bottom:16px;
}
.client{
  color:var(--accent);
  font-weight:600;
  font-size:16px;
  text-decoration:none;
}
.page-title{font-size:28px;font-weight:500;margin:0}
.role{font-size:16px;color:var(--muted);margin:0;font-weight:500; margin-bottom: 24px;}

.media.placeholder{
  background:#dedede;
  width:100%;
  max-width:100%; /* never exceed parent container */
  aspect-ratio: 472 / 296; /* scales proportionally */
  border-radius:6px;
  margin:18px 0 28px;
  background-size:cover;
  background-position:center;
  overflow:hidden;
}
.media.placeholder img{width:100%;height:100%;object-fit:cover;display:block}

.caption{font-size:13px;color:var(--muted);font-style:italic; text-align: center; margin-bottom: 20px;}

.summary-cta{display:flex;gap:14px;align-items:flex-start;margin-bottom:28px}

.highlight{font-family:var(--font-sans); background:var(--darkgrey);padding:16px;border-radius:10px;flex:1;box-shadow:0 6px 18px rgba(0,0,0,0.03);width:100%;box-sizing:border-box; margin-bottom: 20px;}
.highlight p{font-family:var(--font-sans); margin:0 0 8px 0;font-size:14px; color: var(--bg);}

.section{
  margin:0; /* remove collapsing margins */
  padding-block:20px; /* 20px top + 20px bottom = 40px between sections */
}
.section h2{font-size:16px;margin:8px 0 10px;color:#333}
.section p{color:#444;line-height:1.6;margin:0 0 14px}

.site-footer{max-width:var(--max-width);margin:0 auto;padding:30px 18px 60px;color:var(--muted)}
.credits{font-size:13px}

/* Tablet & mobile: ensure container has 16px side padding */
@media (max-width:820px){
  .container{padding-left:16px;padding-right:16px}
}
@media (max-width:520px){
  .container{padding-left:16px;padding-right:16px}
}

