   * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
   }

   body {
     font-family: 'Lato', sans-serif;
     line-height: 1.6;
     color: #333;
     background: #fff;
   }

   h1,
   h2,
   h3,
   h4 {
     font-family: "Fraunces", serif;
   }

   .hero {
     background: linear-gradient(135deg, #4162d8 0%, #2e4ab8 100%);
     color: white;
     padding: 100px 20px 80px;
     text-align: center;
     position: relative;
     overflow: hidden;
   }

   @keyframes float {
     from {
       transform: translateY(0) rotate(0deg);
     }

     to {
       transform: translateY(-120px) rotate(360deg);
     }
   }

   .hero-content {
     position: relative;
     z-index: 1;
     max-width: 900px;
     margin: 0 auto;
   }

   .logo-section {
     text-align: center;
     margin-bottom: 30px;
   }

   .logo {
     max-width: 100%;
     height: auto;
     width: 500px;
   }

   .hero h1 {
     font-size: 4em;
     margin-bottom: 20px;
     font-weight: 900;
     text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.15);
     letter-spacing: -1px;
   }

   .hero p {
     font-size: 1.4em;
     margin-bottom: 30px;
     opacity: 0.95;
     font-weight: 300;
     line-height: 1.5;
   }

   .badge {
     display: inline-block;
     background: rgba(255, 255, 255, 0.15);
     padding: 8px 20px;
     border-radius: 30px;
     font-size: 0.9em;
     margin: 10px 5px;
     backdrop-filter: blur(10px);
     border: 1px solid rgba(255, 255, 255, 0.2);
   }

   .cta-button {
     display: inline-block;
     background: white;
     color: #4162d8;
     padding: 18px 45px;
     font-size: 1.2em;
     font-weight: 700;
     text-decoration: none;
     border-radius: 50px;
     margin: 20px 10px;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
     transition: all 0.3s ease;
     border: none;
     cursor: pointer;
   }

   .cta-button:hover {
     transform: translateY(-3px);
     box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
     background: #fff5e5;
   }

   .cta-button.secondary {
     background: transparent;
     color: white;
     border: 3px solid white;
   }

   .cta-button.secondary:hover {
     background: rgba(255, 255, 255, 0.15);
   }

   .section {
     padding: 80px 20px;
     max-width: 1200px;
     margin: 0 auto;
   }

   .section h2 {
     font-family: "Fraunces", serif;
     font-size: 3em;
     text-align: center;
     margin-bottom: 20px;
     color: #4162d8;
     font-weight: 700;
   }

   .section-subtitle {
     text-align: center;
     font-size: 1.2em;
     color: #666;
     max-width: 800px;
     margin: 0 auto 50px;
     line-height: 1.7;
   }

   /* Photo Gallery Section */
   .photo-hero {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
     gap: 20px;
     margin: 40px 0;
   }

   .photo-card {
     position: relative;
     overflow: hidden;
     border-radius: 15px;
     height: 350px;
     background: #f5f5f5;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #999;
     font-style: italic;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
   }

   .photo-card img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform 0.5s ease;
   }

   .photo-card:hover img {
     transform: scale(1.05);
   }

   .photo-placeholder {
     text-align: center;
     padding: 20px;
   }

   .features {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
     gap: 40px;
     margin-top: 40px;
   }

   .feature {
     text-align: center;
     padding: 35px;
     border-radius: 15px;
     transition: all 0.3s ease;
     background: #fff;
     border: 2px solid #f0f0f0;
   }

   .feature:hover {
     transform: translateY(-5px);
     box-shadow: 0 15px 40px rgba(65, 98, 216, 0.12);
     border-color: #4162d8;
   }

   .feature-icon {
     font-size: 4em;
     margin-bottom: 20px;
   }

   .feature h3 {
     font-family: "Fraunces", serif;
     font-size: 1.6em;
     margin-bottom: 15px;
     color: #4162d8;
   }

   .feature p {
     color: #555;
     line-height: 1.7;
   }

   .experience {
     background: linear-gradient(135deg, #fff5e5 0%, #ffe8cc 100%);
     border-radius: 20px;
     padding: 60px 40px;
     margin: 40px 0;
     text-align: center;
     border: 2px solid #ffd699;
   }

   .experience h3 {
     font-family: "Fraunces", serif;
     font-size: 2.5em;
     margin-bottom: 20px;
     color: #4162d8;
   }

   .experience-points {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
     gap: 30px;
     margin-top: 30px;
   }

   .experience-point {
     background: white;
     padding: 25px;
     border-radius: 15px;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
     transition: all 0.3s ease;
   }

   .experience-point:hover {
     transform: translateY(-3px);
     box-shadow: 0 8px 25px rgba(65, 98, 216, 0.15);
   }

   .experience-point h4 {
     font-family: "Fraunces", serif;
     color: #4162d8;
     margin-bottom: 10px;
     font-size: 1.2em;
   }

   .experience-point p {
     color: #555;
     line-height: 1.6;
   }

   /* Signature Pizzas Showcase */
   .signature-section {
     background: #fafafa;
   }

   .pizza-showcase {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
     gap: 30px;
     margin-top: 40px;
   }

   .pizza-card {
     background: white;
     border-radius: 15px;
     overflow: hidden;
     box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
     transition: all 0.3s ease;
     border: 2px solid #f0f0f0;
   }

   .pizza-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 15px 40px rgba(65, 98, 216, 0.15);
     border-color: #4162d8;
   }

   .pizza-image {
     width: 100%;
     height: 250px;
     background: #f5f5f5;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #999;
   }

   .pizza-image img {
     width: 100%;
     height: 100%;
     object-fit: cover;
   }

   .pizza-info {
     padding: 25px;
   }

   .pizza-info h3 {
     font-family: "Fraunces", serif;
     font-size: 1.8em;
     color: #4162d8;
     margin-bottom: 10px;
   }

   .pizza-info p {
     color: #555;
     line-height: 1.7;
   }

   .event-types {
     background: #fff;
   }

   .event-grid {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
     gap: 30px;
   }

   .event-card {
     background: #fafafa;
     padding: 35px;
     border-radius: 15px;
     text-align: center;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
     transition: all 0.3s ease;
     border: 2px solid #f0f0f0;
   }

   .event-card:hover {
     border-color: #4162d8;
     transform: scale(1.03);
     background: white;
     box-shadow: 0 8px 25px rgba(65, 98, 216, 0.12);
   }

   .event-icon {
     font-size: 3em;
     margin-bottom: 15px;
   }

   .event-card h3 {
     font-family: "Fraunces", serif;
     color: #4162d8;
     margin-bottom: 10px;
     font-size: 1.4em;
   }

   .event-card p {
     color: #555;
     line-height: 1.6;
   }

   .social-proof {
     background: #4162d8;
     color: white;
     text-align: center;
   }

   .social-proof h2 {
     color: white;
   }

   .testimonial {
     max-width: 800px;
     margin: 40px auto;
     padding: 40px;
     background: rgba(255, 255, 255, 0.1);
     border-radius: 15px;
     font-style: italic;
     font-size: 1.15em;
     border-left: 5px solid #fff5e5;
     line-height: 1.8;
     backdrop-filter: blur(10px);
   }

   .testimonial-author {
     margin-top: 20px;
     font-weight: 600;
     font-style: normal;
     color: #fff5e5;
   }

   .stats {
     display: grid;
     grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
     gap: 40px;
     margin-top: 50px;
   }

   .stat {
     text-align: center;
   }

   .stat-number {
     font-family: "Fraunces", serif;
     font-size: 3.5em;
     font-weight: 700;
     color: #fff5e5;
   }

   .booking-section {
     background: linear-gradient(135deg, #fff5e5 0%, #ffe8cc 100%);
     color: #333;
     text-align: center;
   }

   .booking-section h2 {
     color: #4162d8;
   }

   .booking-form {
     max-width: 100%;
     margin: 40px auto;
     background: white;
     padding: 40px;
     border-radius: 15px;
     box-shadow: 0 10px 40px rgba(65, 98, 216, 0.15);
     border: 2px solid #4162d8;
   }

   .form-group {
     margin-bottom: 25px;
     text-align: left;
   }

   .form-group label {
     display: block;
     margin-bottom: 8px;
     color: #333;
     font-weight: 600;
   }

   .form-group input,
   .form-group select,
   .form-group textarea {
     width: 100%;
     padding: 12px;
     border: 2px solid #e0e0e0;
     border-radius: 8px;
     font-size: 1em;
     transition: all 0.3s ease;
     font-family: 'Lato', sans-serif;
   }

   .form-group input:focus,
   .form-group select:focus,
   .form-group textarea:focus {
     outline: none;
     border-color: #4162d8;
     box-shadow: 0 0 0 3px rgba(65, 98, 216, 0.1);
   }

   .urgency {
     background: white;
     border-left: 5px solid #4162d8;
     padding: 20px 25px;
     margin: 30px auto;
     border-radius: 8px;
     color: #333;
     max-width: 700px;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
   }

   .urgency strong {
     color: #4162d8;
   }

   footer {
     background: #2d2d2d;
     color: white;
     text-align: center;
     padding: 40px 20px;
   }

   footer a {
     color: #fff5e5;
     text-decoration: none;
     transition: color 0.3s ease;
   }

   footer a:hover {
     color: #ffd699;
   }

   .women-owned {
     display: inline-block;
     background: rgba(255, 255, 255, 0.2);
     padding: 12px 30px;
     border-radius: 30px;
     margin: 20px auto;
     font-weight: 600;
     backdrop-filter: blur(10px);
     font-size: 1.05em;
     border: 1px solid rgba(255, 255, 255, 0.3);
   }

   .action-photos {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 20px;
     margin: 40px 0;
   }

   .action-photo {
     height: 300px;
     border-radius: 15px;
     overflow: hidden;
     background: #f5f5f5;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #999;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
   }

   .action-photo img {
     width: 100%;
     height: 100%;
     object-fit: cover;
   }

   .social-icons a:focus {
     outline: 2px solid #fff;
     outline-offset: 4px;
   }

     .event-list {
       max-width: 900px;
       margin: 0 auto;
     }

     .event-columns {
       display: grid;
       grid-template-columns: 1fr 1fr;
       gap: 60px;
     }

     .event-column ul {
       list-style: none;
       padding: 0;
     }

     .event-column li {
       padding: 16px 0;
       border-bottom: 1px solid #e8e8e8;
       font-size: 1.05em;
       line-height: 1.6;
       color: #666;
     }

     .event-column li:last-child {
       border-bottom: none;
     }

     .event-column li strong {
       color: #1a1a1a;
       font-weight: 600;
       display: block;
       margin-bottom: 4px;
       font-size: 1.1em;
     }

     @media (max-width: 768px) {
       .event-columns {
         grid-template-columns: 1fr;
         gap: 0;
       }
     }

   @media (max-width: 768px) {
     .hero h1 {
       font-size: 2.5em;
     }

     .hero p {
       font-size: 1.2em;
     }

     .section h2 {
       font-size: 2.2em;
     }

     .action-photos {
       grid-template-columns: 1fr;
     }
   }

   /* Booking Button */
     .center {
       text-align: center;
     }

      .cta-section-button {
        display: inline-block;
          background: #4162d8;
          color: white;
          padding: 18px 45px;
          font-size: 1.2em;
          font-weight: 700;
          text-decoration: none;
          border-radius: 50px;
          margin: 20px 10px;
          box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
          transition: all 0.3s ease;
          border: none;
          cursor: pointer;

      }

      .cta-section-button:hover {
        transform: translateY(-3px);
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
        background: #1d401d;
        color: white;
      }

     /* Booking Form */
     *,
     *::before,
     *::after {
       box-sizing: border-box;
       margin: 0;
       padding: 0;
     }

     :root {
       --blue: #4162d8;
       --white: #ffffff;
       --off-white: #f7f8fc;
       --text: #1a1f36;
       --label: #3a4060;
       --muted: #6b7399;
       --border: #dde1f0;
       --accent: #4162d8;
       --accent-light: rgba(65, 98, 216, 0.08);
       --error: #d63b3b;
       --success: #1a7a4a;
     }

     .catering-form-wrap {
       font-family: 'Plus Jakarta Sans', sans-serif;
       max-width: 660px;
       margin: 0 auto;
       padding: 40px 16px 60px;
     }

     .cf-header {
       text-align: center;
       margin-bottom: 32px;
     }

     .cf-header h2 {
       font-size: clamp(1.6rem, 4vw, 2.2rem);
       font-weight: 600;
       color: var(-blue);
       letter-spacing: -0.02em;
       margin-bottom: 8px;
     }

     .cf-header p {
       font-size: 0.9rem;
       font-weight: 300;
     }

     .cf-card {
       background: var(--white);
       border-radius: 12px;
       padding: clamp(24px, 5vw, 44px);
       box-shadow: 0 20px 60px rgba(20, 30, 80, 0.25);
      text-align: start;
     }

     .cf-section {
       font-size: 0.65rem;
       font-weight: 600;
       letter-spacing: 0.14em;
       text-transform: uppercase;
       color: var(--accent);
       margin-top: 32px;
       margin-bottom: 16px;
       padding-bottom: 8px;
       border-bottom: 1px solid var(--border);
     }

     .cf-section:first-of-type {
       margin-top: 0;
     }

     .cf-row {
       display: grid;
       grid-template-columns: 1fr 1fr;
       gap: 14px;
     }

     @media (max-width: 500px) {
       .cf-row {
         grid-template-columns: 1fr;
       }
     }

     .cf-field {
       display: flex;
       flex-direction: column;
       margin-bottom: 16px;
     }

     .cf-field:last-child {
       margin-bottom: 0;
     }

     .cf-field label {
       font-size: 0.78rem;
       font-weight: 500;
       color: var(--label);
       margin-bottom: 6px;
       letter-spacing: 0.01em;
     }

     .cf-field label .req {
       color: var(--accent);
       margin-left: 2px;
     }

     .cf-field label .opt {
       color: var(--muted);
       font-weight: 300;
       font-size: 0.72rem;
       margin-left: 4px;
     }

     .cf-field input,
     .cf-field select,
     .cf-field textarea {
       width: 100%;
       padding: 10px 13px;
       border: 1.5px solid var(--border);
       border-radius: 7px;
       background: var(--off-white);
       font-family: 'Plus Jakarta Sans', sans-serif;
       font-size: 0.875rem;
       color: var(--text);
       transition: border-color 0.18s, box-shadow 0.18s, background 0.18s;
       appearance: none;
       -webkit-appearance: none;
     }

     .cf-field input:focus,
     .cf-field select:focus,
     .cf-field textarea:focus {
       outline: none;
       border-color: var(--accent);
       box-shadow: 0 0 0 3px rgba(65, 98, 216, 0.12);
       background: var(--white);
     }

     .cf-select-wrap {
       position: relative;
       display: block;
     }

     .cf-select-wrap::after {
       content: '';
       position: absolute;
       right: 13px;
       top: 50%;
       transform: translateY(-50%);
       width: 12px;
       height: 7px;
       background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7399' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
       background-repeat: no-repeat;
       background-size: contain;
       pointer-events: none;
     }

     .cf-select-wrap select {
       padding-right: 34px;
       cursor: pointer;
       width: 100%;
     }

     .cf-field textarea {
       resize: vertical;
       min-height: 100px;
       line-height: 1.6;
     }

     .cf-check-group {
       display: flex;
       flex-direction: column;
       gap: 8px;
     }

     .cf-check-option {
       display: flex;
       align-items: center;
       gap: 10px;
       padding: 9px 13px;
       border: 1.5px solid var(--border);
       border-radius: 7px;
       background: var(--off-white);
       cursor: pointer;
       transition: border-color 0.15s, background 0.15s;
       user-select: none;
       pointer-events: none;
     }

     .cf-check-option:hover {
       border-color: var(--accent);
       background: var(--accent-light);
     }

     .cf-check-option input[type="checkbox"] {
       width: 15px !important;
       height: 15px !important;
       min-width: 15px;
       cursor: pointer;
       pointer-events: auto;
       position: relative;
       z-index: 2;
     }

     .cf-check-option:has(input:checked) {
       border-color: var(--accent);
       background: var(--accent-light);
     }

     .cf-check-option span {
       font-size: 0.875rem;
       color: var(--text);
     }

     .cf-check-option input:checked+span {
       color: var(--accent);
       font-weight: 500;
     }

     .cf-error-msg {
       font-size: 0.73rem;
       color: var(--error);
       margin-top: 4px;
       display: none;
     }

     .cf-field.has-error input,
     .cf-field.has-error select,
     .cf-field.has-error textarea {
       border-color: var(--error);
       background: #fff8f8;
     }

     .cf-field.has-error .cf-error-msg {
       display: block;
     }

     .cf-submit-wrap {
       margin-top: 28px;
       padding-top: 24px;
       border-top: 1px solid var(--border);
       text-align: center;
     }

     .cf-submit-note {
       font-size: 0.78rem;
       color: var(--muted);
       margin-bottom: 14px;
     }

     .cf-submit-btn {
       background: var(--accent);
       color: #fff;
       border: none;
       padding: 13px 40px;
       font-family: 'Plus Jakarta Sans', sans-serif;
       font-size: 0.875rem;
       font-weight: 600;
       letter-spacing: 0.02em;
       border-radius: 8px;
       cursor: pointer;
       width: 100%;
       max-width: 300px;
       transition: background 0.18s, transform 0.1s, box-shadow 0.18s;
       box-shadow: 0 4px 14px rgba(65, 98, 216, 0.35);
     }

     .cf-submit-btn:hover {
       background: #3351c0;
       box-shadow: 0 6px 20px rgba(65, 98, 216, 0.45);
     }

     .cf-submit-btn:active {
       transform: scale(0.99);
     }

     .cf-submit-btn:disabled {
       background: #a0aac8;
       box-shadow: none;
       cursor: not-allowed;
       transform: none;
     }

     .cf-banner {
       display: none;
       text-align: center;
       padding: 28px 20px;
       border-radius: 8px;
       margin-top: 20px;
     }

     .cf-banner.success {
       background: rgba(26, 122, 74, 0.07);
       border: 1px solid rgba(26, 122, 74, 0.2);
     }

     .cf-banner.fail {
       background: rgba(214, 59, 59, 0.06);
       border: 1px solid rgba(214, 59, 59, 0.2);
     }

     .cf-banner-icon {
       font-size: 1.8rem;
       margin-bottom: 10px;
     }

     .cf-banner h3 {
       font-size: 1.1rem;
       font-weight: 600;
       margin-bottom: 6px;
     }

     .cf-banner.success h3 {
       color: var(--success);
     }

     .cf-banner.fail h3 {
       color: var(--error);
     }

     .cf-banner p {
       font-size: 0.85rem;
       color: var(--muted);
       line-height: 1.5;
     }

     @media (max-width: 600px) {
       .cf-row {
         display: block !important;
       }

       .cf-row .cf-field {
         width: 100%;
         margin-bottom: 16px;
       }
     }