*, *::before, *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
 
    html, body {
      width: 100%;
      height: 100%;
    }
 
    body {
      background: #1E1E1E;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 100vh;
      overflow: hidden;
      font-family: sans-serif;
    }
 
    .freedom-pizza {
      position: relative;
      width: 520px;
      height: 520px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
 
    .pizza-wrap {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      animation: arriveAndSpin 1.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    }
 
    @keyframes arriveAndSpin {
      0%   { transform: scale(0.08) rotate(-720deg); opacity: 0; }
      60%  { transform: scale(1.08) rotate(20deg);   opacity: 1; }
      80%  { transform: scale(0.97) rotate(-5deg); }
      100% { transform: scale(1)    rotate(0deg);    opacity: 1; }
    }
 
    /* Pizza image — continuous slow spin after entrance */
    .pizza-img {
      width: 560px;
      height: 560px;
      border-radius: 50%;
      object-fit: cover;
      display: block;
      opacity: 0.7;
    }
 
    .freedompizza-content {
      position: absolute;
      inset: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 14px;
      opacity: 0;
      animation: fadeInContent 0.7s ease forwards;
      animation-delay: 1.4s;
      pointer-events: none;
    }
 
    @keyframes fadeInContent {
      from { opacity: 0; transform: translateY(10px); }
      to   { opacity: 1; transform: translateY(0); }
    }
 
    .headline {
      font-family: Impact, 'Arial Black', sans-serif;
      font-size: 76px;
      line-height: 0.88;
      text-align: center;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: -2px;
      text-shadow: 0 2px 16px rgba(0,0,0,0.55);
    }
 
    .headline .dough, .headline .disturb {
      display: block;
    }

    .headline .dough span{
    	font-style: italic;
	padding-right: 13px;
    }
 
    .subtext {
      font-size: 15px;
      color: #fff;
      text-align: center;
      text-shadow: 0 1px 8px rgba(0,0,0,0.75);
      line-height: 1.6;
    }
 
    .cta {
      pointer-events: all;
      margin-top: 4px;
      background: #e02020;
      color: #fff;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
      text-decoration: none;
      padding: 13px 32px;
      border-radius: 100px;
      border: none;
      cursor: pointer;
      transition: background 0.2s, transform 0.12s;
    }
 
    .cta:hover  { background: #c41818; }
    .cta:active { transform: scale(0.97); }