
  :root{
    --blue:#008DD2;
    --blue-deep:#005E8C;
    --pink:#E5097F;
    --pink-light:#FCD7EA;
    --blue-light:#D9EFFB;
    --ink:#1C2A30;
    --paper:#FBFDFF;
  }
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Inter',sans-serif;
  }
  h1,h2,h3,.font-display{
    font-family:'Cormorant Garamond',serif;
  }
  .navbar-brand{
    font-family:'Cormorant Garamond',serif;
    font-weight:700;
    letter-spacing:.5px;
    color:var(--blue) !important;
  }
  .navbar-logo{
    height:42px;
    width:auto;
  }
  .hero{
    background:linear-gradient(135deg,var(--blue-deep) 0%,var(--blue) 65%);
    color:#fff;
    padding:5rem 0 4rem;
    position:relative;
    overflow:hidden;
  }
  .hero::after{
    content:"";
    position:absolute;
    right:-60px;top:-60px;
    width:260px;height:260px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:50%;
  }
  .hero::before{
    content:"";
    position:absolute;
    left:-40px;bottom:-90px;
    width:220px;height:220px;
    background:var(--pink);
    opacity:.18;
    border-radius:50%;
  }
  .hero h1{
    font-weight:700;
    font-size:clamp(2.1rem,4vw,3.4rem);
    line-height:1.1;
  }
  .eyebrow{
    letter-spacing:3px;
    text-transform:uppercase;
    font-size:.75rem;
    color:var(--pink-light);
    font-weight:600;
  }
  .badge-gold{
    background:var(--pink);
    color:#fff;
    font-weight:600;
    letter-spacing:.5px;
  }
  .rank-num{
    font-family:'Cormorant Garamond',serif;
    font-weight:700;
    font-size:2.6rem;
    color:var(--pink);
    line-height:1;
  }
  .card-studio{
    border:1px solid rgba(0,141,210,.15);
    border-radius:14px;
    background:#fff;
    transition:transform .2s ease, box-shadow .2s ease;
  }
  .card-studio:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(0,141,210,.15);
  }
  .card-featured{
    border:2px solid var(--pink);
    background:linear-gradient(180deg,#fff 0%,var(--blue-light) 100%);
  }
  .divider-gold{
    height:2px;
    width:64px;
    background:var(--pink);
    margin:0 auto;
  }
  .section-title{
    font-weight:700;
    color:var(--blue-deep);
  }
  .btn-maroon{
    background:var(--pink);
    border-color:var(--pink);
    color:#fff;
  }
  .btn-maroon:hover{
    background:#c00870;
    border-color:#c00870;
    color:#fff;
  }
  footer{
    background:var(--blue-deep);
    color:var(--blue-light);
  }
  .toc{
    background:#fff !important;
    border:1px solid rgba(0,141,210,.15) !important;
  }
  .toc a{
    color:var(--blue-deep);
    text-decoration:none;
    font-weight:500;
  }
  .toc a:hover{ color:var(--pink); text-decoration:underline; }
  .faq-q{
    color:var(--blue-deep);
    font-weight:600;
  }
  .table thead{
    background:var(--blue) !important;
  }
  .table-warning{
    background:var(--pink-light) !important;
  }
  html{ scroll-behavior:smooth; }
  .navbar{ position:sticky; top:0; z-index:1030; }
  section[id]{ scroll-margin-top:80px; }
  .breadcrumb{
    background:transparent;
    font-size:.85rem;
    padding:.6rem 0;
    margin-bottom:0;
  }
  .breadcrumb-item a{ color:var(--blue-deep); text-decoration:none; }
  .breadcrumb-item a:hover{ color:var(--pink); text-decoration:underline; }
  .breadcrumb-item.active{ color:#6c7a80; }
  .byline{
    color:#5b6b72;
    font-size:.9rem;
  }
  .related-card{
    border:1px solid rgba(0,141,210,.15);
    border-radius:12px;
    background:#fff;
    padding:1.25rem;
    height:100%;
  }
  .related-card a{
    color:var(--blue-deep);
    font-weight:600;
    text-decoration:none;
  }
  .related-card a:hover{ color:var(--pink); }
