:root{
  --ucla-blue:#2774AE;
  --ucla-dark:#2774AE;
  --ucla-yellow:#FFD100;
  --muted:#1A1A1A;
  --max-width:900px;
  --pad:18px;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color:#222;
  background:#fff;
  -webkit-font-smoothing:antialiased;
}
.container{
  max-width:var(--max-width);
  margin:0 auto;
}

/* Header */
.site-header{padding:12px 0}
.header-inner{display:flex;align-items:center;justify-content:space-between;}
.logo{margin:0;font-weight:800;color:var(--ucla-blue);font-size:70px}
.logo-accent{color:var(--ucla-dark)}
.tagline{margin:4px 0 0;color:var(--muted);text-transform:lowercase;font-weight:800;font-size:25px}
/* Stack logos vertically */
.partner-logos{
  display:flex;
  flex-direction:column;
  align-items:flex-start;   /* left align */
  margin-right: 120px;  
}

.logo-box img {
    height: 50px;   /* choose your visual size */
    width: auto;
    display: block;
}

.logo-img{
  height:36px;
  width:auto;
  object-fit:contain;
}

/* Shine LA standalone image */

.shine-image{
  width: 70%;        /* or whatever width you want */
  height: auto;
  display: block;
}

.shine-image-section .container {
    text-align: right;   /* pushes inline/block content right */
    margin-top: 0;
}

.shine-image {
    width: 70%;          /* or whatever width you want */
    height: auto;
    display: inline-block;  /* key: must NOT be block */
}

.shine-image {
    width: 100%;
    height: auto;
}

.shine-image-section {
    margin-bottom: 0;
}

.shine-image-section .container {
    line-height: 0;   /* optional safeguard */
}



/* Hero */
.brand{
    padding: 26px;}
.hero-wrap{    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;  /* adjust smaller (0–16px) */align-items:start}
.hero-copy .lead{font-weight:700;color:#222;margin:0 0 10px}
.hero-copy {
    padding: 0 26px 10px 26px; /* top right bottom left */
}
.hero-copy p{color:var(--muted);margin:0 0 10px}
.pdf-link a{color:var(--ucla-dark);font-weight:700;text-decoration:none;border-bottom:2px solid rgba(0,0,0,0.04);padding-bottom:2px}

/* Hero image: responsive crop */
.hero-image{width:100%;height:320px;overflow:hidden}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center right;display:block}

/* Panels */
.panels-grid{display:grid;grid-template-columns:1fr;}
.panel{padding:26px;color:#fff;min-height:220px;display:flex;flex-direction:column;justify-content:center}
.panel h2{margin:0 0 12px;font-size:25px;font-weight:800;text-transform:lowercase}
.panel .panel-content p{margin:0 0 10px;color:inherit;opacity:.95}
.panel-blue{background:var(--ucla-blue)}
.panel-yellow{background:var(--ucla-yellow);color:#111}

/* buttons */
.btn{display:inline-block;padding:12px 18px;background:var(--ucla-dark);color:#fff;font-weight:700;text-decoration:none;border:none;cursor:pointer}
.btn.cta{background:var(--ucla-blue)}

/* Promo */
.promo-grid{display:grid;grid-template-columns:1fr;align-items:center}
.promo-copy h3{
  margin:0;
  font-weight:800;
  font-size:clamp(20px, 6vw, 55px);
  line-height:1.02;
}
.promo-copy{
    max-width: 500px;      /* control readable line length */
    margin: 0 auto;        /* center the block */
    text-align: left;      /* keep text left-aligned */
}
.accent-blue{color:var(--ucla-blue)}
.accent-yellow{color:var(--ucla-yellow)}

.promo-visual{position:relative;overflow:hidden;min-height:160px}
.promo-visual img{width:100%;height:100%;object-fit:cover;display:block}
.promo-badge{position:absolute;right:12px;bottom:12px;background:#fff;padding:8px 12px;font-weight:800;color:var(--ucla-dark);box-shadow:0 8px 20px rgba(0,0,0,.12)}

@media (min-width: 820px) {
    .shine-image {
        width: 70%;
    }

}.shine-image {
    width: 100%;
    height: auto;
}

@media (min-width: 820px) {
    .shine-image {
        width: 70%;
    }
}


/* Desktop layout */
@media(min-width:820px){
  .hero-wrap{grid-template-columns:1fr 460px;}
  .hero-image{height:420px}
  .panels-grid{grid-template-columns:1fr 1fr}
  .promo-grid{
    display:grid;
    grid-template-columns: 1fr 1fr;  /* equal width columns */
}
.promo-visual-mobile{
  display: none;
}
  }

/*Mobile */
@media(max-width:819px){
.logo h1 {
  font-size: 70px;
}

.promo-copy h3{
  margin:50px;
  font-size: 45px;
}

.shine-image {
  display: none;
}

.brand {
    padding: 26px 5px 6px 26px;
}

.logo {
  font-size: 35px;
}

.partner-logos{
  margin-right: 26px;
}

.tagline {    
    font-size: 15px;
    line-height: 20px;
}

.logo-box img {
    height: 30px;
 }

  }


