﻿*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --kjn_rotorua-gradient-primary: linear-gradient(135deg, #4338ca 0%, #431a6f 45%, #22d3ee 100%);
  --kjn_rotorua-gradient-secondary: linear-gradient(45deg, #8b5cf6 0%, #ec4899 50%, #ffbf1f 100%);
  --kjn_rotorua-gradient-tertiary: linear-gradient(225deg, #0f766e 0%, #14b8a6 45%, #22c55e 100%);
  --kjn_rotorua-color-accent-1: #4f46e5;
  --kjn_rotorua-color-accent-2: #22d3ee;
  --kjn_rotorua-color-accent-3: #fbbf24;
  --kjn_rotorua-color-dark: #1a1a2e;
  --kjn_rotorua-color-light: #f8fafc;
  --kjn_rotorua-font-heading: 'Playfair Display', serif;
  --kjn_rotorua-font-body: 'Inter', sans-serif;
  --kjn_rotorua-shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.1);
  --kjn_rotorua-shadow-medium: 0 8px 30px rgba(0, 0, 0, 0.15);
  --kjn_rotorua-shadow-strong: 0 12px 40px rgba(0, 0, 0, 0.2);
  --kjn_rotorua-transition-fast: 0.3s ease;
  --kjn_rotorua-transition-medium: 0.5s ease;
  --kjn_rotorua-transition-slow: 0.8s ease;
}

body {
  font-family: var(--kjn_rotorua-font-body);
  line-height: 1.6;
  color: var(--kjn_rotorua-color-dark);
  background-color: var(--kjn_rotorua-color-light);
  overflow-x: hidden;
}

.baa7be5805884bb8 {
  background: var(--kjn_rotorua-gradient-primary);
  padding: 1rem 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  box-shadow: var(--kjn_rotorua-shadow-medium);
}

.ce56608009934b37 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.dcabd0ea8fb74456 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.f138ccda6c77456e {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}

.c56492b0340e48f4 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  color: white;
}

.ebf653f684f044c9 {
  display: flex;
  list-style: none;
  gap: 2rem;
}

.e162893078b24aac {
  text-decoration: none;
  color: white;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
  position: relative;
  padding: 0.5rem 0;
}

.e162893078b24aac::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: white;
  transition: var(--kjn_rotorua-transition-fast);
}

.e162893078b24aac:hover::after {
  width: 100%;
}

.c674cfe3957d47e5 {
  display: none;
  font-size: 1.5rem;
  color: white;
  cursor: pointer;
}

@media (max-width: 768px) {
  .ce56608009934b37 {
    padding: 0 1rem;
    flex-direction: column;
    gap: 1rem;
  }
  
  .d1a1336d98af4323 {
    width: 100%;
  }
  
  .ebf653f684f044c9 {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
  }
  
  .c674cfe3957d47e5 {
    display: block;
    position: absolute;
    top: 1rem;
    right: 1rem;
  }
  
  .d1a1336d98af4323 {
    display: none;
  }
  
  .d1a1336d98af4323.active {
    display: block;
  }
}

@media (max-width: 480px) {
  .ce56608009934b37 {
    padding: 0 0.5rem;
  }
  
  .c56492b0340e48f4 {
    font-size: 1.2rem;
  }
}

.d28518b2c7e4487c {
  min-height: 100vh;
  background: var(--kjn_rotorua-gradient-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  margin-top: 71px;
}

.d28518b2c7e4487c::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('/site-resources/media-assets/bg-gen1.webp') center/cover no-repeat;
  opacity: 0.2;
  animation: kjn_rotorua-bg-pulse 8s ease-in-out infinite;
}

@keyframes kjn_rotorua-bg-pulse {
  0%, 100% { transform: scale(1); opacity: 0.2; }
  50% { transform: scale(1.05); opacity: 0.3; }
}

.c067b280282345bc {
  max-width: 1450px;
  padding: 4rem 2rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.a179a02edfce4700 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3.5rem;
  color: white;
  margin-bottom: 1.5rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  animation: kjn_rotorua-title-float 6s ease-in-out infinite;
}

@keyframes kjn_rotorua-title-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

.fc1739e23b4a4491 {
  font-size: 1.2rem;
  color: white;
  max-width: 600px;
  margin: 0 auto 3rem;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.b54b879e4a1f483c {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.b31f015d1c0a40e5 {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 20px;
  padding: 2rem;
  width: 200px;
  text-align: center;
  transition: var(--kjn_rotorua-transition-medium);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.b31f015d1c0a40e5:hover {
  transform: translateY(-10px) scale(1.05);
  background: rgba(255, 255, 255, 0.2);
}

.c930d66a63744d7c {
  color: white;
  font-weight: 500;
  margin-bottom: 1rem;
  min-height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.b31f015d1c0a40e5 i {
  font-size: 2.5rem;
  color: var(--kjn_rotorua-color-accent-3);
  margin-bottom: 1rem;
  display: block;
}

.e1c4a9ba1aba4448 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: white;
  color: var(--kjn_rotorua-color-accent-1);
  padding: 0.5rem 1rem;
  min-height: 68px;
  border-radius: 25px;
  text-decoration: none;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
  margin-top: 0.5rem;
}

.e1c4a9ba1aba4448:hover {
  background: var(--kjn_rotorua-color-accent-3);
  color: white;
}

@media (max-width: 1024px) {
  .a179a02edfce4700 {
    font-size: 3rem;
  }
  
  .b54b879e4a1f483c {
    gap: 1.5rem;
  }
  
  .b31f015d1c0a40e5 {
    width: 180px;
    padding: 1.5rem;
  }
}

@media (max-width: 768px) {
  .d28518b2c7e4487c {
    padding-top: 7rem;
  }
  
  .c067b280282345bc {
    padding: 2rem 1rem;
  }
  
  .a179a02edfce4700 {
    font-size: 2.5rem;
  }
  
  .fc1739e23b4a4491 {
    font-size: 1.1rem;
  }
  
  .b54b879e4a1f483c {
    gap: 1rem;
  }
  
  .b31f015d1c0a40e5 {
    width: 160px;
    padding: 1rem;
  }
}

@media (max-width: 480px) {
  .c067b280282345bc {
    padding: 1rem 0.5rem;
  }
  
  .a179a02edfce4700 {
    font-size: 2rem;
  }
  
  .fc1739e23b4a4491 {
    font-size: 1rem;
  }
  
  .b54b879e4a1f483c {
    flex-direction: column;
    align-items: center;
  }
  
  .b31f015d1c0a40e5 {
    width: 100%;
    max-width: 250px;
  }
}

.c5a0b44ea39240b4 {
  padding: 6rem 0;
  background: var(--kjn_rotorua-color-light);
}

.c3e6ee1f46a148e3 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
}

.f6d1e92888634f24 {
  display: flex;
  align-items: center;
  gap: 4rem;
  margin-bottom: 6rem;
}

.a6fa872a30464d57 {
  flex-direction: row;
}

.ecebf1d6aafe48da {
  flex: 1;
}

.ecebf1d6aafe48da img {
  width: 100%;
  max-width: 500px;
  height: 100%;
  max-height: 400px;
  border-radius: 20px;
  box-shadow: var(--kjn_rotorua-shadow-strong);
  transition: var(--kjn_rotorua-transition-medium);
}

.ecebf1d6aafe48da img:hover {
  transform: scale(1.05) rotate(2deg);
}

.f9e4c2a66bf043ca {
  flex: 1;
}

.b5bb0a944282403e {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 2.5rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1.5rem;
  background: var(--kjn_rotorua-gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.ca20a7517a0d4a4d {
  font-size: 1.1rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 2rem;
  line-height: 1.8;
}

.f419b10defb14acb {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
}

.ce460dbde5064b76 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--kjn_rotorua-gradient-tertiary);
  padding: 0.5rem 1rem;
  border-radius: 25px;
  color: white;
  font-weight: 500;
}

.ce460dbde5064b76 i {
  font-size: 1.2rem;
}

.d1eed21c8a894cee {
  display: inline-block;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 1rem 2rem;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
  box-shadow: var(--kjn_rotorua-shadow-medium);
}

.d1eed21c8a894cee:hover {
  transform: translateY(-3px);
  box-shadow: var(--kjn_rotorua-shadow-strong);
}

@media (max-width: 1024px) {
  .f6d1e92888634f24 {
    gap: 3rem;
  }
  
  .b5bb0a944282403e {
    font-size: 2.2rem;
  }
}

@media (max-width: 768px) {
  .c5a0b44ea39240b4 {
    padding: 4rem 0;
  }
  
  .c3e6ee1f46a148e3 {
    padding: 0 1rem;
  }
  
  .f6d1e92888634f24 {
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 4rem;
  }
  
  .a6fa872a30464d57 {
    flex-direction: column;
  }
  
  .b5bb0a944282403e {
    font-size: 2rem;
  }
  
  .f419b10defb14acb {
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .c5a0b44ea39240b4 {
    padding: 2rem 0;
  }
  
  .c3e6ee1f46a148e3 {
    padding: 0 0.5rem;
  }
  
  .b5bb0a944282403e {
    font-size: 1.8rem;
  }
  
  .ca20a7517a0d4a4d {
    font-size: 1rem;
  }
  
  .ce460dbde5064b76 {
    padding: 0.4rem 0.8rem;
    font-size: 0.9rem;
  }
}

.a61e7836716c46a1 {
  min-height: 80vh;
  background: var(--kjn_rotorua-gradient-tertiary);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.a61e7836716c46a1::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('/site-resources/media-assets/bg-gen2.webp') center/cover no-repeat;
  opacity: 0.15;
  animation: kjn_rotorua-bg-rotate 20s linear infinite;
}

@keyframes kjn_rotorua-bg-rotate {
  0% { transform: rotate(0) scale(1); }
  50% { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}

.f12dc1baecf74776 {
  max-width: 1450px;
  padding: 4rem 2rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.bc3402fb7bb74c96 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  color: white;
  margin-bottom: 3rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.ccc55d9fa78547f3 {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.daa52c3841564ac4 {
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(15px);
  border-radius: 25px;
  padding: 2.5rem 2rem;
  width: 250px;
  text-align: center;
  transition: var(--kjn_rotorua-transition-medium);
  border: 1px solid rgba(255, 255, 255, 0.3);
  position: relative;
  overflow: hidden;
}

.daa52c3841564ac4::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: var(--kjn_rotorua-gradient-primary);
  opacity: 0;
  transition: var(--kjn_rotorua-transition-medium);
  transform: rotate(45deg);
}

.daa52c3841564ac4:hover::before {
  opacity: 0.1;
}

.daa52c3841564ac4:hover {
  transform: translateY(-15px) scale(1.05);
  background: rgba(255, 255, 255, 0.25);
}

.daa52c3841564ac4 i {
  font-size: 3rem;
  color: var(--kjn_rotorua-color-accent-3);
  margin-bottom: 1.5rem;
  display: block;
  position: relative;
  z-index: 1;
}

.f635bcb30ba346f1 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.5rem;
  color: white;
  min-height: 77px;
  margin-bottom: 1rem;
  position: relative;
  z-index: 1;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

.e5abb2bb10da420d {
  color: white;
  position: relative;
  z-index: 1;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

@media (max-width: 1024px) {
  .bc3402fb7bb74c96 {
    font-size: 2.5rem;
  }
  
  .daa52c3841564ac4 {
    width: 220px;
    padding: 2rem 1.5rem;
  }
}

@media (max-width: 768px) {
  .f12dc1baecf74776 {
    padding: 2rem 1rem;
  }
  
  .bc3402fb7bb74c96 {
    font-size: 2.2rem;
  }
  
  .ccc55d9fa78547f3 {
    gap: 1.5rem;
  }
  
  .daa52c3841564ac4 {
    width: 200px;
    padding: 1.5rem 1rem;
  }
}

@media (max-width: 480px) {
  .f12dc1baecf74776 {
    padding: 1rem 0.5rem;
  }
  
  .bc3402fb7bb74c96 {
    font-size: 2rem;
  }
  
  .ccc55d9fa78547f3 {
    flex-direction: column;
    align-items: center;
  }
  
  .daa52c3841564ac4 {
    width: 100%;
    max-width: 280px;
  }
}

.cfeee11fae2146b5 {
  padding: 6rem 0;
  background: var(--kjn_rotorua-color-light);
}

.e18e2f3945db4d45 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
}

.d63b749a72194253 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  text-align: center;
  margin-bottom: 4rem;
  background: var(--kjn_rotorua-gradient-secondary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.a5c3aa70694648c7 {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.dcd303038b6449a0 {
  background: white;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: var(--kjn_rotorua-shadow-medium);
  transition: var(--kjn_rotorua-transition-medium);
  position: relative;
  width: 310px;
  height: 100%;
}

.dcd303038b6449a0:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: var(--kjn_rotorua-shadow-strong);
}

.ab2a1177d7da4c09 {
  position: absolute;
  top: 1rem;
  left: 1rem;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 0.5rem 1rem;
  border-radius: 15px;
  font-size: 0.8rem;
  font-weight: 500;
  z-index: 2;
}

.c1964e45aa8c429e {
  width: 100%;
  max-width: 310px;
  height: 100%;
  min-height: 205px;
  transition: var(--kjn_rotorua-transition-medium);
}

.dcd303038b6449a0:hover .c1964e45aa8c429e {
  transform: scale(1.1);
}

.e0d13dd5bb574318 {
  padding: 1.5rem;
  text-align: center;
}

.ba91468e4ed54930 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.5rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1rem;
}

.ea069ddee1114d9c {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.ea069ddee1114d9c i {
  font-size: 1.5rem;
  color: var(--kjn_rotorua-color-accent-1);
}

.a115c3123771430c {
  display: inline-block;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 0.8rem 2rem;
  border-radius: 25px;
  text-decoration: none;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
}

.a115c3123771430c:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: scale(1.05);
}

@media (max-width: 1024px) {
  .d63b749a72194253 {
    font-size: 2.5rem;
  }
  
  .dcd303038b6449a0 {
    width: 280px;
  }
}

@media (max-width: 768px) {
  .cfeee11fae2146b5 {
    padding: 4rem 0;
  }
  
  .e18e2f3945db4d45 {
    padding: 0 1rem;
  }
  
  .d63b749a72194253 {
    font-size: 2.2rem;
    margin-bottom: 3rem;
  }
  
  .a5c3aa70694648c7 {
    gap: 1.5rem;
  }
  
  .dcd303038b6449a0 {
    width: 250px;
  }
}

@media (max-width: 480px) {
  .cfeee11fae2146b5 {
    padding: 2rem 0;
  }
  
  .e18e2f3945db4d45 {
    padding: 0 0.5rem;
  }
  
  .d63b749a72194253 {
    font-size: 2rem;
  }
  
  .a5c3aa70694648c7 {
    flex-direction: column;
    align-items: center;
  }
  
  .dcd303038b6449a0 {
    width: 100%;
    max-width: 300px;
  }
}

.f6dca32edeef49a9 {
  min-height: 70vh;
  background: var(--kjn_rotorua-gradient-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}

.f6dca32edeef49a9::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('/site-resources/media-assets/bg-gen3.webp') center/cover no-repeat;
  opacity: 0.1;
  animation: kjn_rotorua-bg-shift 10s ease-in-out infinite;
}

@keyframes kjn_rotorua-bg-shift {
  0%, 100% { transform: translateX(0) scale(1); }
  50% { transform: translateX(-10px) scale(1.02); }
}

.e8939720c2df4b83 {
  max-width: 1450px;
  padding: 4rem 2rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.a3b4ba341ab2444e {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  color: white;
  margin-bottom: 2rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.c79e84de146d48c6 {
  font-size: 1.2rem;
  color: white;
  max-width: 800px;
  margin: 0 auto 3rem;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
  line-height: 1.8;
}

.a2a888f0a7fe4740 {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  margin-bottom: 3rem;
}

.a7dac45ff47c45a1 {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
  border-radius: 20px;
  padding: 1.5rem;
  width: 180px;
  text-align: center;
  transition: var(--kjn_rotorua-transition-medium);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.a7dac45ff47c45a1:hover {
  transform: translateY(-5px) rotate(3deg);
  background: rgba(255, 255, 255, 0.3);
}

.a7dac45ff47c45a1 i {
  font-size: 2rem;
  color: var(--kjn_rotorua-color-accent-3);
  margin-bottom: 1rem;
  display: block;
}

.a7dac45ff47c45a1 p {
  color: white;
  font-weight: 500;
}

.a4c8b813dd414e37 {
  display: inline-block;
  background: white;
  color: var(--kjn_rotorua-color-accent-1);
  padding: 1.2rem 3rem;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 500;
  font-size: 1.1rem;
  transition: var(--kjn_rotorua-transition-fast);
  box-shadow: var(--kjn_rotorua-shadow-medium);
}

.a4c8b813dd414e37:hover {
  background: var(--kjn_rotorua-color-accent-3);
  color: white;
  transform: scale(1.05);
}

@media (max-width: 1024px) {
  .a3b4ba341ab2444e {
    font-size: 2.5rem;
  }
  
  .a2a888f0a7fe4740 {
    gap: 1.5rem;
  }
  
  .a7dac45ff47c45a1 {
    width: 160px;
    padding: 1.2rem;
  }
}

@media (max-width: 768px) {
  .e8939720c2df4b83 {
    padding: 2rem 1rem;
  }
  
  .a3b4ba341ab2444e {
    font-size: 2.2rem;
  }
  
  .c79e84de146d48c6 {
    font-size: 1.1rem;
  }
  
  .a2a888f0a7fe4740 {
    gap: 1rem;
  }
  
  .a7dac45ff47c45a1 {
    width: 140px;
    padding: 1rem;
  }
}

@media (max-width: 480px) {
  .e8939720c2df4b83 {
    padding: 1rem 0.5rem;
  }
  
  .a3b4ba341ab2444e {
    font-size: 2rem;
  }
  
  .c79e84de146d48c6 {
    font-size: 1rem;
  }
  
  .a2a888f0a7fe4740 {
    flex-direction: column;
    align-items: center;
  }
  
  .a7dac45ff47c45a1 {
    width: 100%;
    max-width: 200px;
  }
}

.c818d6a08bfc4012 {
  padding: 6rem 0;
  background: var(--kjn_rotorua-color-light);
}

.bd3fad32e5404765 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
}

.f849c2c3d4e540ce {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  text-align: center;
  margin-bottom: 4rem;
  background: var(--kjn_rotorua-gradient-tertiary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.b7bd2472a16d42f3 {
  display: flex;
  gap: 3rem;
  margin-bottom: 3rem;
}

.e6b2323a12a5406e {
  flex: 1;
  background: white;
  border-radius: 20px;
  padding: 2rem;
  box-shadow: var(--kjn_rotorua-shadow-soft);
}

.f82679b43fb14be2 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.5rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid var(--kjn_rotorua-color-accent-2);
}

.e4165ec34c3046b9 {
  margin-bottom: 1rem;
  border-radius: 10px;
  overflow: hidden;
  background: var(--kjn_rotorua-color-light);
}

.fb325d5597ea4b55 {
  padding: 1rem;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: var(--kjn_rotorua-transition-fast);
}

.fb325d5597ea4b55:hover {
  background: var(--kjn_rotorua-gradient-secondary);
}

.fb325d5597ea4b55 i {
  transition: var(--kjn_rotorua-transition-fast);
}

.fb325d5597ea4b55.active i {
  transform: rotate(45deg);
}

.ef9e35eacf2141fb {
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: var(--kjn_rotorua-transition-medium);
  background: white;
}

.ef9e35eacf2141fb.active {
  padding: 1rem;
  max-height: 500px;
}

.ef9e35eacf2141fb p {
  color: var(--kjn_rotorua-color-dark);
  line-height: 1.6;
}

.cf617866880744c8 {
  display: block;
  text-align: center;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 1.2rem 2.5rem;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 500;
  margin: 0 auto;
  width: fit-content;
  transition: var(--kjn_rotorua-transition-fast);
  box-shadow: var(--kjn_rotorua-shadow-medium);
}

.cf617866880744c8:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: scale(1.05);
}

@media (max-width: 1024px) {
  .f849c2c3d4e540ce {
    font-size: 2.5rem;
  }
  
  .b7bd2472a16d42f3 {
    gap: 2rem;
  }
}

@media (max-width: 768px) {
  .c818d6a08bfc4012 {
    padding: 4rem 0;
  }
  
  .bd3fad32e5404765 {
    padding: 0 1rem;
  }
  
  .f849c2c3d4e540ce {
    font-size: 2.2rem;
    margin-bottom: 3rem;
  }
  
  .b7bd2472a16d42f3 {
    flex-direction: column;
    gap: 2rem;
  }
}

@media (max-width: 480px) {
  .c818d6a08bfc4012 {
    padding: 2rem 0;
  }
  
  .bd3fad32e5404765 {
    padding: 0 0.5rem;
  }
  
  .f849c2c3d4e540ce {
    font-size: 2rem;
  }
  
  .e6b2323a12a5406e {
    padding: 1.5rem;
  }
  
  .f82679b43fb14be2 {
    font-size: 1.3rem;
  }
}

.c7115785c953452b {
  padding: 6rem 0;
  background: var(--kjn_rotorua-gradient-secondary);
}

.c0df5f9e0fc04f7e {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
}

.f6c58ff8f5bc4970 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  text-align: center;
  margin-bottom: 4rem;
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.d265cce4d56c4540 {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}

.e726c354613d4b9d {
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(15px);
  border-radius: 20px;
  padding: 2rem;
  width: calc(50% - 1rem);
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: var(--kjn_rotorua-transition-medium);
  position: relative;
  overflow: hidden;
}

.e726c354613d4b9d::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--kjn_rotorua-gradient-primary);
}

.e726c354613d4b9d:hover {
  transform: translateY(-10px);
  background: rgba(255, 255, 255, 0.25);
}

.cb4d6081e39e48c1 {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
  position: relative;
}

.eb056883ba004bb3 {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 3px solid var(--kjn_rotorua-color-accent-3);
}

.dbc408f40354455f {
  flex: 1;
}

.be04bead37134ab6 {
  font-weight: 500;
  color: white;
  margin-bottom: 0.2rem;
}

.c5d06134affa4ffd {
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
}

.acffe5cb2885406d {
  display: flex;
  gap: 0.2rem;
}

.acffe5cb2885406d i {
  color: var(--kjn_rotorua-color-accent-3);
  font-size: 0.9rem;
}

.b0ec35d321b64d0b {
  font-size: 1.5rem;
  color: var(--kjn_rotorua-color-accent-3);
  opacity: 0.7;
}

.ddafde4749e342bb {
  color: white;
  font-style: italic;
  margin-bottom: 1rem;
  line-height: 1.6;
}

.f863e87acd1444d5 {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.9rem;
  text-align: right;
}

@media (max-width: 1024px) {
  .f6c58ff8f5bc4970 {
    font-size: 2.5rem;
  }
  
  .e726c354613d4b9d {
    width: calc(50% - 1rem);
  }
}

@media (max-width: 768px) {
  .c7115785c953452b {
    padding: 4rem 0;
  }
  
  .c0df5f9e0fc04f7e {
    padding: 0 1rem;
  }
  
  .f6c58ff8f5bc4970 {
    font-size: 2.2rem;
    margin-bottom: 3rem;
  }
  
  .d265cce4d56c4540 {
    gap: 1.5rem;
  }
  
  .e726c354613d4b9d {
    width: 100%;
    max-width: 400px;
  }
}

@media (max-width: 480px) {
  .c7115785c953452b {
    padding: 2rem 0;
  }
  
  .c0df5f9e0fc04f7e {
    padding: 0 0.5rem;
  }
  
  .f6c58ff8f5bc4970 {
    font-size: 2rem;
  }
  
  .e726c354613d4b9d {
    padding: 1.5rem;
  }
  
  .cb4d6081e39e48c1 {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
}

.ec79ca8f5fc14222 {
  padding: 6rem 0;
  background: var(--kjn_rotorua-color-light);
}

.ee334bc7d3264fb8 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
}

.db50adaedd9f41ee {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3rem;
  text-align: center;
  margin-bottom: 3rem;
  background: var(--kjn_rotorua-gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.e9098ddeb08b462e {
  max-width: 900px;
  margin: 0 auto 4rem;
}

.a60124b0400a4a19 {
  font-size: 1.1rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1.5rem;
  line-height: 1.8;
}

.a60124b0400a4a19 a {
  color: var(--kjn_rotorua-color-accent-1);
  text-decoration: none;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
}

.a60124b0400a4a19 a:hover {
  color: var(--kjn_rotorua-color-accent-2);
}

.e874413601544a22 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3rem;
  flex-wrap: wrap;
}

.e0e3bb55990f46b3 {
  transition: var(--kjn_rotorua-transition-medium);
}

.e0e3bb55990f46b3:hover {
  transform: scale(1.1);
}

.e0e3bb55990f46b3 img {
  border-radius: 10px;
  box-shadow: var(--kjn_rotorua-shadow-soft);
}

@media (max-width: 1024px) {
  .db50adaedd9f41ee {
    font-size: 2.5rem;
  }
  
  .e874413601544a22 {
    gap: 2rem;
  }
}

@media (max-width: 768px) {
  .ec79ca8f5fc14222 {
    padding: 4rem 0;
  }
  
  .ee334bc7d3264fb8 {
    padding: 0 1rem;
  }
  
  .db50adaedd9f41ee {
    font-size: 2.2rem;
    margin-bottom: 2rem;
  }
  
  .e9098ddeb08b462e {
    margin-bottom: 3rem;
  }
  
  .e874413601544a22 {
    gap: 1.5rem;
  }
}

@media (max-width: 480px) {
  .ec79ca8f5fc14222 {
    padding: 2rem 0;
  }
  
  .ee334bc7d3264fb8 {
    padding: 0 0.5rem;
  }
  
  .db50adaedd9f41ee {
    font-size: 2rem;
  }
  
  .a60124b0400a4a19 {
    font-size: 1rem;
  }
  
  .e874413601544a22 {
    flex-direction: column;
    gap: 1rem;
  }
}

.c682c6ee255d4a0e {
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 4rem 0 2rem;
  position: relative;
  overflow: hidden;
}

.c682c6ee255d4a0e::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('/site-resources/media-assets/bg-gen4.webp') center/cover no-repeat;
  opacity: 0.1;
}

.ab0e446ada7b4454 {
  max-width: 1450px;
  margin: 0 auto;
  padding: 0 2rem;
  position: relative;
  z-index: 1;
}

.be050b7ab0a64731 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

.dca464b8a7a14e9a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.c5b0be034b434ae3 {
  width: 50px;
  height: 50px;
  border-radius: 50%;
}

.f51c59b49f2f462e {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.8rem;
  font-weight: 600;
}

.c57e3a306702472f {
  display: flex;
  list-style: none;
  gap: 2rem;
}

.ca5a781aac114ea9 {
  color: white;
  text-decoration: none;
  transition: var(--kjn_rotorua-transition-fast);
  font-weight: 500;
}

.ca5a781aac114ea9:hover {
  color: var(--kjn_rotorua-color-accent-3);
}

.cd102cee847749dc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}

.d92b9c29f3014eae p {
  color: rgba(255, 255, 255, 0.8);
}

.f4661100952a4e15 {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.fd93e2bc0f394d39 {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  font-size: 0.9rem;
  transition: var(--kjn_rotorua-transition-fast);
}

.fd93e2bc0f394d39:hover {
  color: var(--kjn_rotorua-color-accent-3);
}

.d84a8510d0024c71 {
  display: flex;
  gap: 1rem;
}

.d84a8510d0024c71 i {
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.8);
  transition: var(--kjn_rotorua-transition-fast);
}

.d84a8510d0024c71 i:hover {
  color: var(--kjn_rotorua-color-accent-3);
  transform: scale(1.2);
}

@media (max-width: 1024px) {
  .be050b7ab0a64731 {
    flex-direction: column;
    gap: 2rem;
    text-align: center;
  }
  
  .c57e3a306702472f {
    justify-content: center;
  }
}

@media (max-width: 768px) {
  .c682c6ee255d4a0e {
    padding: 3rem 0 1.5rem;
  }
  
  .ab0e446ada7b4454 {
    padding: 0 1rem;
  }
  
  .be050b7ab0a64731 {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
  }
  
  .c57e3a306702472f {
    flex-direction: column;
    gap: 1rem;
  }
  
  .cd102cee847749dc {
    flex-direction: column;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .c682c6ee255d4a0e {
    padding: 2rem 0 1rem;
  }
  
  .ab0e446ada7b4454 {
    padding: 0 0.5rem;
  }
  
  .f51c59b49f2f462e {
    font-size: 1.5rem;
  }
  
  .f4661100952a4e15 {
    justify-content: center;
  }
}

.d2f95f24dc304875 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.95);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 2000;
  padding: 2rem;
  overflow-y: auto;
}

.d2f95f24dc304875.active {
  display: flex;
}

.f210d8de5b764847 {
  background: white;
  border-radius: 25px;
  padding: 3rem;
  max-width: 600px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  box-shadow: var(--kjn_rotorua-shadow-strong);
  animation: d2f95f24dc304875-appear 0.5s ease-out;
}

@keyframes d2f95f24dc304875-appear {
  0% { opacity: 0; transform: scale(0.8) translateY(-50px); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

.af11cb7eca6946c6 {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  font-size: 2rem;
  cursor: pointer;
  color: var(--kjn_rotorua-color-dark);
  transition: var(--kjn_rotorua-transition-fast);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.af11cb7eca6946c6:hover {
  background: var(--kjn_rotorua-color-light);
  color: var(--kjn_rotorua-color-accent-1);
}

.ba820305416a4f4e {
  margin-bottom: 2.5rem;
}

.ba820305416a4f4e:last-child {
  margin-bottom: 0;
}

.e39d187c647e44d8 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 2.2rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1.5rem;
  background: var(--kjn_rotorua-gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.c9d2b428dc8148ab {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.5rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1rem;
}

.c9aa8a460c56421e {
  color: var(--kjn_rotorua-color-dark);
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

.ab6be0fe24ab4693 {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 2rem;
}

.e4ee8bb5b76e40a4 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--kjn_rotorua-color-light);
  padding: 0.8rem 1.2rem;
  border-radius: 15px;
  font-weight: 500;
}

.e4ee8bb5b76e40a4 i {
  color: var(--kjn_rotorua-color-accent-1);
  font-size: 1.2rem;
}

.b3332fdce00b4c26 {
  position: relative;
  margin-bottom: 1.5rem;
}

.eb0f1428a8a347e0,
.b1b5a7b384ca4b95 {
  width: 100%;
  padding: 1rem;
  border: 2px solid #e0e0e0;
  border-radius: 10px;
  font-size: 1rem;
  transition: var(--kjn_rotorua-transition-fast);
  background: white;
}

.b1b5a7b384ca4b95 {
  min-height: 120px;
  resize: vertical;
}

.eb0f1428a8a347e0:focus,
.b1b5a7b384ca4b95:focus {
  outline: none;
  border-color: var(--kjn_rotorua-color-accent-1);
  box-shadow: 0 0 0 3px rgba(255, 51, 102, 0.1);
}

.ac467dbbe0654374 {
  position: absolute;
  top: 1rem;
  left: 1rem;
  color: #999;
  transition: var(--kjn_rotorua-transition-fast);
  pointer-events: none;
  background: white;
  padding: 0 0.5rem;
}

.eb0f1428a8a347e0:focus + .ac467dbbe0654374,
.eb0f1428a8a347e0:not(:placeholder-shown) + .ac467dbbe0654374,
.b1b5a7b384ca4b95:focus + .ac467dbbe0654374,
.b1b5a7b384ca4b95:not(:placeholder-shown) + .ac467dbbe0654374 {
  top: -0.5rem;
  left: 0.8rem;
  font-size: 0.8rem;
  color: var(--kjn_rotorua-color-accent-1);
}

.bd1b9b5e46a345a7 {
  color: #ef4444;
  font-size: 0.8rem;
  margin-top: 0.5rem;
  min-height: 1rem;
}

.ea2617973b7a43df {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  margin-bottom: 1.5rem;
}

.f29de6b302d84da7 {
  margin-top: 0.2rem;
}

.e9b0dd0af2a544e8 {
  color: var(--kjn_rotorua-color-dark);
  line-height: 1.4;
}

.e9b0dd0af2a544e8 a {
  color: var(--kjn_rotorua-color-accent-1);
  text-decoration: none;
  font-weight: 500;
}

.e9b0dd0af2a544e8 a:hover {
  text-decoration: underline;
}

.b528f51d6a7f4678 {
  width: 100%;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  border: none;
  padding: 1.2rem;
  border-radius: 15px;
  font-size: 1.1rem;
  font-weight: 500;
  cursor: pointer;
  transition: var(--kjn_rotorua-transition-fast);
}

.b528f51d6a7f4678:not(:disabled):hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: translateY(-2px);
}

.b528f51d6a7f4678:disabled {
  background: #ccc;
  cursor: not-allowed;
  transform: none;
}

.e3ca923cf7b14c8a {
  display: flex;
  gap: 1rem;
  margin-top: 2rem;
}

.c99786cd94aa4a9a {
  flex: 1;
  text-align: center;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 1rem 2rem;
  border-radius: 15px;
  text-decoration: none;
  font-weight: 500;
  transition: var(--kjn_rotorua-transition-fast);
  border: none;
  cursor: pointer;
}

.c99786cd94aa4a9a:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: translateY(-2px);
}

.d06fd4901c3f439c {
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  border: none;
  padding: 1rem 2rem;
  border-radius: 15px;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  transition: var(--kjn_rotorua-transition-fast);
  display: block;
  margin: 0 auto;
}

.d06fd4901c3f439c:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .d2f95f24dc304875 {
    padding: 1rem;
  }
  
  .f210d8de5b764847 {
    padding: 2rem;
  }
  
  .e39d187c647e44d8 {
    font-size: 1.8rem;
  }
  
  .ab6be0fe24ab4693 {
    flex-direction: column;
  }
  
  .e3ca923cf7b14c8a {
    flex-direction: column;
  }
}

@media (max-width: 480px) {
  .f210d8de5b764847 {
    padding: 1.5rem;
  }
  
  .e39d187c647e44d8 {
    font-size: 1.6rem;
  }
  
  .af11cb7eca6946c6 {
    top: 1rem;
    right: 1rem;
  }
}

.f524d098510e4f4f {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.98);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3000;
  padding: 2rem;
}

.e41fdcd09cd842bd {
  background: white;
  border-radius: 25px;
  padding: 3rem;
  max-width: 500px;
  width: 100%;
  text-align: center;
  box-shadow: var(--kjn_rotorua-shadow-strong);
  animation: kjn_rotorua-age-appear 0.6s ease-out;
}

@keyframes kjn_rotorua-age-appear {
  0% { opacity: 0; transform: scale(0.5) rotate(-10deg); }
  100% { opacity: 1; transform: scale(1) rotate(0); }
}

.a8a6290d2cdd45a5 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 2.5rem;
  color: var(--kjn_rotorua-color-dark);
  margin-bottom: 1.5rem;
  background: var(--kjn_rotorua-gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.fe97f5373eb44f79 {
  color: var(--kjn_rotorua-color-dark);
  font-size: 1.1rem;
  margin-bottom: 2.5rem;
  line-height: 1.6;
}

.bb75f44aa8414a22 {
  display: flex;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
  justify-content: center;
}

.ab8595598c7c4571 {
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  border: none;
  padding: 1.2rem 2.5rem;
  border-radius: 25px;
  font-size: 1.1rem;
  font-weight: 500;
  cursor: pointer;
  transition: var(--kjn_rotorua-transition-fast);
  flex: 1;
  max-width: 200px;
}

.ab8595598c7c4571:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: scale(1.05);
}

.f7afc8bfd12d4a88 {
  background: transparent;
  color: var(--kjn_rotorua-color-dark);
  border: 2px solid #e0e0e0;
  padding: 1.2rem 2.5rem;
  border-radius: 25px;
  font-size: 1.1rem;
  font-weight: 500;
  text-decoration: none;
  transition: var(--kjn_rotorua-transition-fast);
  flex: 1;
  max-width: 200px;
}

.f7afc8bfd12d4a88:hover {
  border-color: var(--kjn_rotorua-color-accent-1);
  color: var(--kjn_rotorua-color-accent-1);
  transform: scale(1.05);
}

.f65207b5046a45ae {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.f65207b5046a45ae img {
  border-radius: 8px;
}

@media (max-width: 768px) {
  .f524d098510e4f4f {
    padding: 1rem;
  }
  
  .e41fdcd09cd842bd {
    padding: 2rem;
  }
  
  .a8a6290d2cdd45a5 {
    font-size: 2rem;
  }
  
  .bb75f44aa8414a22 {
    flex-direction: column;
    align-items: center;
  }
  
  .ab8595598c7c4571,
  .f7afc8bfd12d4a88 {
    max-width: 100%;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .e41fdcd09cd842bd {
    padding: 1.5rem;
  }
  
  .a8a6290d2cdd45a5 {
    font-size: 1.8rem;
  }
  
  .fe97f5373eb44f79 {
    font-size: 1rem;
  }
  
  .f65207b5046a45ae {
    gap: 1rem;
  }
}

.a2260f3eab3f46df {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  padding: 1.5rem 2rem;
  z-index: 1000;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.2);
  animation: a2260f3eab3f46df-slide 0.5s ease-out;
}

@keyframes a2260f3eab3f46df-slide {
  0% { transform: translateY(100%); }
  100% { transform: translateY(0); }
}

.ddcf85f2698d4aed {
  max-width: 1450px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}

.f49b6c194a014112 {
  flex: 1;
  margin: 0;
  line-height: 1.5;
}

.f49b6c194a014112 a {
  color: var(--kjn_rotorua-color-accent-3);
  text-decoration: none;
  font-weight: 500;
}

.f49b6c194a014112 a:hover {
  text-decoration: underline;
}

.d71a82da672f4cea {
  background: white;
  color: var(--kjn_rotorua-color-accent-1);
  border: none;
  padding: 0.8rem 2rem;
  border-radius: 25px;
  font-weight: 500;
  cursor: pointer;
  transition: var(--kjn_rotorua-transition-fast);
  white-space: nowrap;
}

.d71a82da672f4cea:hover {
  background: var(--kjn_rotorua-color-accent-3);
  color: white;
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .a2260f3eab3f46df {
    padding: 1rem;
  }
  
  .ddcf85f2698d4aed {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }
  
  .d71a82da672f4cea {
    width: 100%;
    max-width: 200px;
  }
}

.e2ef7da6d6414235 {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  width: 50px;
  height: 50px;
  background: var(--kjn_rotorua-gradient-primary);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--kjn_rotorua-transition-fast);
  z-index: 999;
  box-shadow: var(--kjn_rotorua-shadow-medium);
  opacity: 0;
  visibility: hidden;
}

.e2ef7da6d6414235.active {
  opacity: 1;
  visibility: visible;
}

.e2ef7da6d6414235:hover {
  background: var(--kjn_rotorua-gradient-secondary);
  transform: scale(1.1);
}

@media (max-width: 768px) {
  .e2ef7da6d6414235 {
    bottom: 1rem;
    right: 1rem;
    width: 45px;
    height: 45px;
  }
}

.ae66c9c557c54808 {
  min-height: 100vh;
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 50%, #c4b5fd 100%);
  background-size: 400% 400%;
  animation: kjnpages_404_gradient 15s ease infinite;
}

@keyframes kjnpages_404_gradient {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.a5d0d839227343c4 {
  padding: 6rem 0 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
}

.b81f69690b8b4b13 {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 2rem;
}

.e7a8f1f7f3e74a04 {
  text-align: center;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(20px);
  border-radius: 30px;
  padding: 4rem 3rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
}

.e7a8f1f7f3e74a04::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  transform: rotate(45deg);
  animation: kjnpages_404_shine 6s ease-in-out infinite;
}

@keyframes kjnpages_404_shine {
  0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
  100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.a2d698785a504634 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 4.5rem;
  color: white;
  margin-bottom: 1.5rem;
  text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
  animation: kjnpages_404_title_bounce 2s ease-in-out infinite;
  position: relative;
  z-index: 1;
}

@keyframes kjnpages_404_title_bounce {
  0%, 100% { 
    transform: translateY(0) scale(1);
    text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
  }
  50% { 
    transform: translateY(-10px) scale(1.05);
    text-shadow: 5px 5px 10px rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 255, 255, 0.5);
  }
}

.c76927730033468b {
  font-size: 1.4rem;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 3rem;
  line-height: 1.6;
  position: relative;
  z-index: 1;
  font-weight: 500;
}

.f77f4c1bbd5e499d {
  position: relative;
  width: 200px;
  height: 200px;
  margin: 0 auto 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c86d4232f8b14912 {
  position: absolute;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(10px);
  border: 2px solid rgba(255, 255, 255, 0.5);
  animation: kjnpages_404_orb_rotate 4s linear infinite;
}

.c6a31041e7fd4bd4 {
  width: 180px;
  height: 180px;
  animation-delay: 0s;
}

.c4975896b3ee4480 {
  width: 140px;
  height: 140px;
  animation-delay: -1.33s;
}

.d877f7b563744c96 {
  width: 100px;
  height: 100px;
  animation-delay: -2.66s;
}

@keyframes kjnpages_404_orb_rotate {
  0% { 
    transform: rotate(0deg) scale(1);
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
  }
  50% { 
    transform: rotate(180deg) scale(1.1);
    box-shadow: 0 0 30px rgba(255, 255, 255, 0.5);
  }
  100% { 
    transform: rotate(360deg) scale(1);
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.3);
  }
}

.de2420f5487b457c {
  width: 60px;
  height: 60px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(15px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, 0.4);
  z-index: 2;
  animation: kjnpages_404_center_pulse 2s ease-in-out infinite;
}

@keyframes kjnpages_404_center_pulse {
  0%, 100% { 
    transform: scale(1);
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
  }
  50% { 
    transform: scale(1.1);
    box-shadow: 0 0 25px rgba(255, 255, 255, 0.5);
  }
}

.de2420f5487b457c i {
  font-size: 1.8rem;
  color: white;
  animation: kjnpages_404_search 3s ease-in-out infinite;
}

@keyframes kjnpages_404_search {
  0%, 100% { transform: rotate(0deg) scale(1); }
  25% { transform: rotate(15deg) scale(1.1); }
  75% { transform: rotate(-15deg) scale(1.1); }
}

.c6d76a8d4a804d6f {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(15px);
  border-radius: 20px;
  padding: 2rem;
  margin-bottom: 2.5rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  gap: 1.5rem;
  text-align: left;
  position: relative;
  z-index: 1;
  transition: all 0.3s ease;
}

.c6d76a8d4a804d6f:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-5px);
}

.f7ee629d440e40d5 {
  font-size: 2.5rem;
  color: rgba(255, 255, 255, 0.9);
  animation: kjnpages_404_compass 4s ease-in-out infinite;
}

@keyframes kjnpages_404_compass {
  0%, 100% { transform: rotate(0deg) scale(1); }
  25% { transform: rotate(90deg) scale(1.1); }
  50% { transform: rotate(180deg) scale(1); }
  75% { transform: rotate(270deg) scale(1.1); }
}

.c6d76a8d4a804d6f p {
  color: rgba(255, 255, 255, 0.9);
  font-size: 1.1rem;
  line-height: 1.6;
  margin: 0;
  flex: 1;
  font-weight: 500;
}

.c9b69e1e13704588 {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
  position: relative;
  z-index: 1;
}

.c09fbd0722ae4943 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
  color: white;
  text-decoration: none;
  padding: 1.2rem 2.5rem;
  border-radius: 50px;
  font-size: 1.2rem;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 8px 25px rgba(255, 191, 107, 0.3);
  border: 2px solid transparent;
  animation: kjnpages_404_btn_glow 2s ease-in-out infinite;
}

@keyframes kjnpages_404_btn_glow {
  0%, 100% { 
    box-shadow: 0 8px 25px rgba(255, 149, 107, 0.3);
  }
  50% { 
    box-shadow: 0 12px 35px rgba(255, 159, 107, 0.5), 0 0 20px rgba(255, 179, 107, 0.4);
  }
}

.c09fbd0722ae4943:hover {
  transform: translateY(-3px) scale(1.05);
  background: linear-gradient(135deg, #22d3ee 0%, #4f46e5 100%);
}

.c09fbd0722ae4943 i {
  font-size: 1.3rem;
  transition: transform 0.3s ease;
}

.c09fbd0722ae4943:hover i {
  transform: scale(1.2) rotate(10deg);
}

.c2106a3d6cec458c {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  padding: 1rem 1.5rem;
  border-radius: 25px;
  color: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.c2106a3d6cec458c:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
}

.c2106a3d6cec458c i {
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.8);
}

.c2106a3d6cec458c p {
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
}

.c2106a3d6cec458c a {
  color: #e0f2fe;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
}

.c2106a3d6cec458c a:hover {
  color: #4f46e5;
  text-shadow: 0 0 10px rgba(255, 179, 107, 0.5);
}

.de905455260c4125 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 1rem;
  position: relative;
  z-index: 1;
}

.a2ab4576596b4099 {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(15px);
  border-radius: 15px;
  padding: 1.5rem 1rem;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
  animation: kjnpages_404_feature_float 3s ease-in-out infinite;
}

.a2ab4576596b4099:nth-child(1) { animation-delay: 0s; }
.a2ab4576596b4099:nth-child(2) { animation-delay: 0.5s; }
.a2ab4576596b4099:nth-child(3) { animation-delay: 1s; }
.a2ab4576596b4099:nth-child(4) { animation-delay: 1.5s; }

@keyframes kjnpages_404_feature_float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

.a2ab4576596b4099:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-5px) scale(1.05);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.a2ab4576596b4099 i {
  font-size: 2rem;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 0.8rem;
  display: block;
  transition: all 0.3s ease;
}

.a2ab4576596b4099:hover i {
  transform: scale(1.2) rotate(10deg);
  color: #e0f2fe;
}

.a2ab4576596b4099 span {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.3;
}

@media (max-width: 768px) {
  .b81f69690b8b4b13 {
    padding: 0 1rem;
  }
  
  .e7a8f1f7f3e74a04 {
    padding: 3rem 2rem;
  }
  
  .a2d698785a504634 {
    font-size: 3.5rem;
  }
  
  .c76927730033468b {
    font-size: 1.2rem;
  }
  
  .c6d76a8d4a804d6f {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }
  
  .de905455260c4125 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .a5d0d839227343c4 {
    padding: 4rem 0 2rem;
  }
  
  .e7a8f1f7f3e74a04 {
    padding: 2.5rem 1.5rem;
  }
  
  .a2d698785a504634 {
    font-size: 2.8rem;
  }
  
  .c76927730033468b {
    font-size: 1.1rem;
  }
  
  .f77f4c1bbd5e499d {
    width: 150px;
    height: 150px;
  }
  
  .c6a31041e7fd4bd4 {
    width: 140px;
    height: 140px;
  }
  
  .c4975896b3ee4480 {
    width: 110px;
    height: 110px;
  }
  
  .d877f7b563744c96 {
    width: 80px;
    height: 80px;
  }
  
  .de2420f5487b457c {
    width: 50px;
    height: 50px;
  }
  
  .c09fbd0722ae4943 {
    padding: 1rem 2rem;
    font-size: 1.1rem;
  }
  
  .c2106a3d6cec458c {
    flex-direction: column;
    gap: 0.5rem;
    text-align: center;
  }
  
  .de905455260c4125 {
    grid-template-columns: 1fr;
  }
}

.a806b890482c4a21 {
  min-height: 100vh;
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
}

.b2b02ca8c37f4563 {
  padding: 8rem 0 4rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
}

.d3fdc213cd3849e3 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

.a04a8541573946f8 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3.5rem;
  color: white;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  animation: kjnpages_responsible_title_glow 3s ease-in-out infinite;
}

@keyframes kjnpages_responsible_title_glow {
  0%, 100% { 
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(255, 255, 255, 0.5);
  }
  50% { 
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3), 0 0 30px rgba(255, 255, 255, 0.8), 0 0 40px rgba(255, 255, 255, 0.6);
  }
}

.cb06f37e5a0b4d53 {
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 2rem;
}

.d8925457a0d14365 {
  font-size: 4rem;
  color: rgba(255, 255, 255, 0.8);
  animation: kjnpages_responsible_icon_help 4s ease-in-out infinite;
}

@keyframes kjnpages_responsible_icon_help {
  0%, 100% { transform: scale(1) rotate(0deg); }
  25% { transform: scale(1.1) rotate(-5deg); }
  75% { transform: scale(1.1) rotate(5deg); }
}

.d9c3d164375b46f9 {
  padding: 4rem 0;
}

.db914b5ae3414a30 {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-bottom: 3rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.7;
  color: #333;
  border: 3px solid transparent;
  background-clip: padding-box;
  position: relative;
}

.db914b5ae3414a30::before {
  content: '';
  position: absolute;
  top: -3px;
  left: -3px;
  right: -3px;
  bottom: -3px;
  background: linear-gradient(135deg, #4338ca, #431a6f, #4338ca);
  border-radius: 20px;
  z-index: -1;
  animation: kjnpages_responsible_border_rotate 4s linear infinite;
}

@keyframes kjnpages_responsible_border_rotate {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.af123dfba6e04e43 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 2rem;
}

.e9436eea7f754944 {
  background: white;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: all 0.4s ease;
  border: 2px solid transparent;
  position: relative;
}

.e9436eea7f754944::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #4338ca, #431a6f, #4338ca);
  background-size: 200% 100%;
  animation: kjnpages_responsible_progress 3s linear infinite;
}

@keyframes kjnpages_responsible_progress {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.e9436eea7f754944:hover {
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
}

.f3bbf4c50cf54801 {
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
  padding: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: white;
  position: relative;
  overflow: hidden;
}

.f3bbf4c50cf54801::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  transform: rotate(45deg);
  animation: kjnpages_responsible_shine 6s ease-in-out infinite;
}

@keyframes kjnpages_responsible_shine {
  0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
  100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.f3bbf4c50cf54801 i {
  font-size: 2rem;
  z-index: 1;
  animation: kjnpages_responsible_icon_bounce 2s ease-in-out infinite;
}

@keyframes kjnpages_responsible_icon_bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

.f3bbf4c50cf54801 h2 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.6rem;
  margin: 0;
  font-weight: 600;
  z-index: 1;
}

.fa3d7642c0604db7 {
  padding: 2.5rem;
  position: relative;
}

.fa3d7642c0604db7 p {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
}

.d373c3c9d70b4319 {
  list-style: none;
  padding: 0;
  margin: 0;
}

.d373c3c9d70b4319 li {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.2rem 0;
  border-bottom: 1px solid #f0f0f0;
  transition: all 0.3s ease;
  position: relative;
}

.d373c3c9d70b4319 li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
  transition: width 0.3s ease;
}

.d373c3c9d70b4319 li:hover::before {
  width: 4px;
}

.d373c3c9d70b4319 li:hover {
  background-color: #eef2ff;
  padding-left: 1.5rem;
  border-radius: 8px;
}

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

.d373c3c9d70b4319 i {
  font-size: 1.3rem;
  color: #4338ca;
  min-width: 30px;
  margin-top: 0.2rem;
  transition: all 0.3s ease;
}

.d373c3c9d70b4319 li:hover i {
  transform: scale(1.2) rotate(10deg);
  color: #431a6f;
}

.d373c3c9d70b4319 span {
  color: #333;
  font-size: 1rem;
  line-height: 1.5;
  flex: 1;
}

.b8447d8e232f4dd1 {
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
  padding: 1.5rem;
  border-radius: 15px;
  margin-top: 2rem;
  text-align: center;
  color: white;
  display: flex;
  align-items: center;
  gap: 1rem;
  animation: kjnpages_responsible_contact_pulse 2s ease-in-out infinite;
}

@keyframes kjnpages_responsible_contact_pulse {
  0%, 100% { 
    transform: scale(1);
    box-shadow: 0 4px 15px rgba(255, 107, 107, 0.3);
  }
  50% { 
    transform: scale(1.02);
    box-shadow: 0 6px 20px rgba(255, 107, 107, 0.5);
  }
}

.b8447d8e232f4dd1 i {
  font-size: 1.5rem;
}

.b8447d8e232f4dd1 p {
  margin: 0;
  color: white;
  font-weight: 500;
}

.b8447d8e232f4dd1 a {
  color: white;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
}

.b8447d8e232f4dd1 a:hover {
  color: #e0f2fe;
  text-shadow: 0 0 10px rgba(255, 234, 167, 0.5);
}

.e4677a8015bf46b4 {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-top: 3rem;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  border: 3px solid transparent;
  background-clip: padding-box;
  position: relative;
}

.e4677a8015bf46b4::before {
  content: '';
  position: absolute;
  top: -3px;
  left: -3px;
  right: -3px;
  bottom: -3px;
  background: linear-gradient(135deg, #4338ca, #431a6f, #4338ca);
  border-radius: 20px;
  z-index: -1;
  animation: kjnpages_responsible_border_rotate 4s linear infinite;
}

.b14eae3667af4a0a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
  padding: 1.5rem 2rem;
  border-radius: 25px;
  color: white;
  font-weight: 600;
  font-size: 1.1rem;
  margin-bottom: 2rem;
  text-align: center;
}

.b14eae3667af4a0a i {
  font-size: 1.8rem;
  animation: kjnpages_responsible_handshake 2s ease-in-out infinite;
}

@keyframes kjnpages_responsible_handshake {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-10deg); }
  75% { transform: rotate(10deg); }
}

.f30dfc02493e4d30 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.c197165a963c492c {
  transition: transform 0.3s ease;
}

.c197165a963c492c:hover {
  transform: scale(1.1);
}

.c197165a963c492c img {
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease;
}

.c197165a963c492c:hover img {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}

@media (max-width: 1024px) {
  .d3fdc213cd3849e3 {
    padding: 0 1.5rem;
  }
  
  .af123dfba6e04e43 {
    grid-template-columns: 1fr;
  }
  
  .a04a8541573946f8 {
    font-size: 3rem;
  }
}

@media (max-width: 768px) {
  .b2b02ca8c37f4563 {
    padding: 6rem 0 3rem;
  }
  
  .a04a8541573946f8 {
    font-size: 2.5rem;
  }
  
  .cb06f37e5a0b4d53 {
    font-size: 1.1rem;
  }
  
  .d9c3d164375b46f9 {
    padding: 2rem 0;
  }
  
  .f3bbf4c50cf54801 {
    padding: 1.5rem;
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
  
  .f3bbf4c50cf54801 h2 {
    font-size: 1.4rem;
  }
  
  .fa3d7642c0604db7 {
    padding: 2rem;
  }
  
  .f30dfc02493e4d30 {
    gap: 1.5rem;
  }
}

@media (max-width: 480px) {
  .d3fdc213cd3849e3 {
    padding: 0 1rem;
  }
  
  .b2b02ca8c37f4563 {
    padding: 5rem 0 2rem;
  }
  
  .a04a8541573946f8 {
    font-size: 2rem;
  }
  
  .d8925457a0d14365 {
    font-size: 3rem;
  }
  
  .db914b5ae3414a30 {
    padding: 1.5rem;
    font-size: 1rem;
  }
  
  .fa3d7642c0604db7 {
    padding: 1.5rem;
  }
  
  .d373c3c9d70b4319 li {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
    padding: 1.5rem 0;
  }
  
  .b8447d8e232f4dd1 {
    flex-direction: column;
    gap: 0.5rem;
    text-align: center;
  }
  
  .f30dfc02493e4d30 {
    flex-direction: column;
  }
}

.c4136b2af5224e29 {
  min-height: 100vh;
  background: linear-gradient(135deg, #a5f3fc 0%, #d1fae5 100%);
}

.f29fc6f36c8a46fa {
  padding: 8rem 0 4rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px);
}

.cb424747d06c4d5e {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

.e3e9b406b1ee4ec5 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3.5rem;
  color: #2d5a3c;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
  animation: kjnpages_cookies_title_wiggle 3s ease-in-out infinite;
}

@keyframes kjnpages_cookies_title_wiggle {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(1deg); }
  75% { transform: rotate(-1deg); }
}

.cbf6326dec4e4f50 {
  font-size: 1.3rem;
  color: #4a7c59;
  margin-bottom: 2rem;
}

.f2f0d16d0c744b04 {
  font-size: 4rem;
  color: #4a7c59;
  animation: kjnpages_cookies_icon_bite 4s ease-in-out infinite;
}

@keyframes kjnpages_cookies_icon_bite {
  0%, 100% { transform: scale(1) rotate(0deg); }
  25% { transform: scale(1.1) rotate(5deg); }
  50% { transform: scale(1) rotate(0deg); }
  75% { transform: scale(1.1) rotate(-5deg); }
}

.dcc1abb2b68f49f6 {
  padding: 4rem 0;
}

.f184fc80845b4d6c {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-bottom: 3rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.7;
  color: #333;
  border: 2px dashed #a5f3fc;
  position: relative;
}

.f184fc80845b4d6c::before {
  content: 'рџЌЄ';
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  background: white;
  padding: 0 1rem;
  font-size: 1.5rem;
}

.a95e7d8330a44c41 {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.faea209436914db0 {
  background: white;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.faea209436914db0:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
  border-color: #a5f3fc;
}

.cfe8e2cdb2504c5a {
  background: linear-gradient(135deg, #a5f3fc 0%, #d1fae5 100%);
  padding: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #2d5a3c;
  position: relative;
}

.cfe8e2cdb2504c5a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #a5f3fc, #d1fae5, #a5f3fc);
  animation: kjnpages_cookies_progress 3s linear infinite;
}

@keyframes kjnpages_cookies_progress {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.cfe8e2cdb2504c5a i {
  font-size: 2rem;
  animation: kjnpages_cookies_header_icon 2s ease-in-out infinite;
}

@keyframes kjnpages_cookies_header_icon {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-5px) scale(1.1); }
}

.cfe8e2cdb2504c5a h2 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.8rem;
  margin: 0;
  font-weight: 600;
}

.e9736ecbd0734015 {
  padding: 2.5rem;
}

.e9736ecbd0734015 p {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
}

.d3d15abd8b1c4aa4 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
}

.d3d15abd8b1c4aa4 li {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.2rem;
  background: #f0fdfa;
  border-radius: 12px;
  transition: all 0.3s ease;
  border: 1px solid #dcfce7;
  position: relative;
  overflow: hidden;
}

.d3d15abd8b1c4aa4 li::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(168, 230, 207, 0.2), transparent);
  transition: left 0.5s ease;
}

.d3d15abd8b1c4aa4 li:hover::before {
  left: 100%;
}

.d3d15abd8b1c4aa4 li:hover {
  background: #ecfeff;
  transform: translateX(5px);
  box-shadow: 0 4px 15px rgba(168, 230, 207, 0.3);
}

.d3d15abd8b1c4aa4 i {
  font-size: 1.4rem;
  color: #4caf50;
  min-width: 35px;
  transition: all 0.3s ease;
}

.d3d15abd8b1c4aa4 li:hover i {
  transform: scale(1.2) rotate(10deg);
  color: #2d5a3c;
}

.d3d15abd8b1c4aa4 span {
  color: #333;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 500;
}

.c2179ebf9e1c41d6 {
  background: linear-gradient(135deg, #fde68a 0%, #fbcfe8 100%);
  padding: 1.5rem;
  border-radius: 15px;
  margin-top: 2rem;
  text-align: center;
  color: #6d28d9;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  animation: kjnpages_cookies_contact_pulse 2s ease-in-out infinite;
  border: 2px solid #fbcfe8;
}

@keyframes kjnpages_cookies_contact_pulse {
  0%, 100% { 
    transform: scale(1);
    box-shadow: 0 4px 15px rgba(255, 170, 165, 0.3);
  }
  50% { 
    transform: scale(1.02);
    box-shadow: 0 6px 20px rgba(255, 170, 165, 0.5);
  }
}

.c2179ebf9e1c41d6 i {
  font-size: 1.5rem;
}

.c2179ebf9e1c41d6 a {
  color: #6d28d9;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.1rem;
  transition: all 0.3s ease;
}

.c2179ebf9e1c41d6 a:hover {
  color: #4f46e5;
  text-shadow: 0 0 10px rgba(255, 107, 107, 0.3);
}

.b13fdae9162e4427 {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-top: 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  border: 2px solid #a5f3fc;
  position: relative;
  overflow: hidden;
}

.b13fdae9162e4427::before {
  content: 'рџЌЄрџЌЄрџЌЄ';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  font-size: 2rem;
  opacity: 0.1;
  pointer-events: none;
  animation: kjnpages_cookies_float 10s linear infinite;
}

@keyframes kjnpages_cookies_float {
  0% { transform: translateY(-50%) translateX(-100%); }
  100% { transform: translateY(-50%) translateX(100%); }
}

.b704394e7c2746b9,
.ae004ae0e0ff494f {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #555;
  font-weight: 500;
  z-index: 1;
}

.b704394e7c2746b9 i,
.ae004ae0e0ff494f i {
  font-size: 1.5rem;
  color: #4caf50;
}

.b704394e7c2746b9 {
  background: linear-gradient(135deg, #a5f3fc 0%, #d1fae5 100%);
  padding: 1rem 1.5rem;
  border-radius: 25px;
  color: #2d5a3c;
}

.b704394e7c2746b9 i {
  color: #2d5a3c;
  animation: kjnpages_cookies_settings_spin 4s linear infinite;
}

@keyframes kjnpages_cookies_settings_spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@media (max-width: 1024px) {
  .cb424747d06c4d5e {
    padding: 0 1.5rem;
  }
  
  .e3e9b406b1ee4ec5 {
    font-size: 3rem;
  }
  
  .d3d15abd8b1c4aa4 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .f29fc6f36c8a46fa {
    padding: 6rem 0 3rem;
  }
  
  .e3e9b406b1ee4ec5 {
    font-size: 2.5rem;
  }
  
  .cbf6326dec4e4f50 {
    font-size: 1.1rem;
  }
  
  .dcc1abb2b68f49f6 {
    padding: 2rem 0;
  }
  
  .cfe8e2cdb2504c5a {
    padding: 1.5rem;
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
  
  .cfe8e2cdb2504c5a h2 {
    font-size: 1.5rem;
  }
  
  .e9736ecbd0734015 {
    padding: 2rem;
  }
  
  .b13fdae9162e4427 {
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .cb424747d06c4d5e {
    padding: 0 1rem;
  }
  
  .f29fc6f36c8a46fa {
    padding: 5rem 0 2rem;
  }
  
  .e3e9b406b1ee4ec5 {
    font-size: 2rem;
  }
  
  .f2f0d16d0c744b04 {
    font-size: 3rem;
  }
  
  .f184fc80845b4d6c {
    padding: 1.5rem;
    font-size: 1rem;
  }
  
  .e9736ecbd0734015 {
    padding: 1.5rem;
  }
  
  .d3d15abd8b1c4aa4 li {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
    padding: 1.5rem;
  }
  
  .c2179ebf9e1c41d6 {
    flex-direction: column;
    gap: 0.5rem;
  }
}

.e0e08cf5c1cb4938 {
  min-height: 100vh;
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
}

.ed53fe73519e48e5 {
  padding: 8rem 0 4rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
}

.e663dc9d170c4630 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

.f7760715dd9f4190 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3.5rem;
  color: white;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  animation: kjnpages_terms_title_bounce 2s ease-in-out infinite;
}

@keyframes kjnpages_terms_title_bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

.eee25058d6e54f77 {
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 2rem;
}

.f9065ba453334010 {
  font-size: 4rem;
  color: rgba(255, 255, 255, 0.8);
  animation: kjnpages_terms_icon_spin 8s linear infinite;
}

@keyframes kjnpages_terms_icon_spin {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}

.cd5bb939c271476e {
  padding: 4rem 0;
}

.a7280cf627ba4ed8 {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-bottom: 3rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.7;
  color: #333;
  border-right: 5px solid #4f46e5;
  position: relative;
  overflow: hidden;
}

.a7280cf627ba4ed8::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #4f46e5, #22d3ee, #4f46e5);
  animation: kjnpages_terms_gradient 3s linear infinite;
}

@keyframes kjnpages_terms_gradient {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.c4ac2021925b413c {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
  gap: 2rem;
}

.f9fd45136c6548fe {
  background: white;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  border: 2px solid transparent;
  position: relative;
}

.f9fd45136c6548fe:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
  border-color: #4f46e5;
}

.a48e2275a19c4acd {
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
  padding: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: white;
  position: relative;
  overflow: hidden;
}

.a48e2275a19c4acd::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  transform: rotate(45deg);
  animation: kjnpages_terms_shine 3s ease-in-out infinite;
}

@keyframes kjnpages_terms_shine {
  0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
  100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.a48e2275a19c4acd i {
  font-size: 2rem;
  z-index: 1;
  animation: kjnpages_terms_icon_pulse 2s ease-in-out infinite;
}

@keyframes kjnpages_terms_icon_pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

.a48e2275a19c4acd h2 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.6rem;
  margin: 0;
  font-weight: 600;
  z-index: 1;
}

.fdaa99eab5d64289 {
  padding: 2.5rem;
  position: relative;
}

.fdaa99eab5d64289 p {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
}

.bcd23f92b8af4342 {
  list-style: none;
  padding: 0;
  margin: 0;
}

.bcd23f92b8af4342 li {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.2rem 0;
  border-bottom: 1px solid #f0f0f0;
  transition: all 0.3s ease;
  position: relative;
}

.bcd23f92b8af4342 li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
  transition: width 0.3s ease;
}

.bcd23f92b8af4342 li:hover::before {
  width: 4px;
}

.bcd23f92b8af4342 li:hover {
  background-color: #f5f3ff;
  padding-left: 1.5rem;
  border-radius: 8px;
}

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

.bcd23f92b8af4342 i {
  font-size: 1.3rem;
  color: #4f46e5;
  min-width: 30px;
  margin-top: 0.2rem;
  transition: all 0.3s ease;
}

.bcd23f92b8af4342 li:hover i {
  transform: scale(1.2) rotate(5deg);
  color: #22d3ee;
}

.bcd23f92b8af4342 span {
  color: #333;
  font-size: 1rem;
  line-height: 1.5;
  flex: 1;
}

.e4ddcdfb184f4ac5 {
  background: linear-gradient(135deg, #4f46e5 0%, #9b59b6 100%);
  padding: 1.5rem;
  border-radius: 15px;
  margin-top: 2rem;
  text-align: center;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  animation: kjnpages_terms_contact_bounce 2s ease-in-out infinite;
}

@keyframes kjnpages_terms_contact_bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

.e4ddcdfb184f4ac5 i {
  font-size: 1.5rem;
}

.e4ddcdfb184f4ac5 a {
  color: white;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.1rem;
  transition: all 0.3s ease;
}

.e4ddcdfb184f4ac5 a:hover {
  color: #22d3ee;
  text-shadow: 0 0 10px rgba(254, 202, 87, 0.5);
}

.f4d441d7ca9640af {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-top: 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  border: 2px solid #4f46e5;
}

.dece40a7773a4745,
.e09ecc7b323d4716 {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #555;
  font-weight: 500;
}

.dece40a7773a4745 i,
.e09ecc7b323d4716 i {
  font-size: 1.5rem;
  color: #4f46e5;
}

.dece40a7773a4745 {
  background: linear-gradient(135deg, #4f46e5 0%, #22d3ee 100%);
  padding: 1rem 1.5rem;
  border-radius: 25px;
  color: white;
}

.dece40a7773a4745 i {
  color: white;
  animation: kjnpages_terms_check_spin 3s ease-in-out infinite;
}

@keyframes kjnpages_terms_check_spin {
  0%, 100% { transform: rotate(0deg) scale(1); }
  25% { transform: rotate(10deg) scale(1.1); }
  75% { transform: rotate(-10deg) scale(1.1); }
}

@media (max-width: 1024px) {
  .e663dc9d170c4630 {
    padding: 0 1.5rem;
  }
  
  .c4ac2021925b413c {
    grid-template-columns: 1fr;
  }
  
  .f7760715dd9f4190 {
    font-size: 3rem;
  }
}

@media (max-width: 768px) {
  .ed53fe73519e48e5 {
    padding: 6rem 0 3rem;
  }
  
  .f7760715dd9f4190 {
    font-size: 2.5rem;
  }
  
  .eee25058d6e54f77 {
    font-size: 1.1rem;
  }
  
  .cd5bb939c271476e {
    padding: 2rem 0;
  }
  
  .a48e2275a19c4acd {
    padding: 1.5rem;
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
  
  .a48e2275a19c4acd h2 {
    font-size: 1.4rem;
  }
  
  .fdaa99eab5d64289 {
    padding: 2rem;
  }
  
  .f4d441d7ca9640af {
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .e663dc9d170c4630 {
    padding: 0 1rem;
  }
  
  .ed53fe73519e48e5 {
    padding: 5rem 0 2rem;
  }
  
  .f7760715dd9f4190 {
    font-size: 2rem;
  }
  
  .f9065ba453334010 {
    font-size: 3rem;
  }
  
  .a7280cf627ba4ed8 {
    padding: 1.5rem;
    font-size: 1rem;
  }
  
  .fdaa99eab5d64289 {
    padding: 1.5rem;
  }
  
  .bcd23f92b8af4342 li {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
    padding: 1.5rem 0;
  }
  
  .e4ddcdfb184f4ac5 {
    flex-direction: column;
    gap: 0.5rem;
  }
}

.ddd1df07613b49d2 {
  min-height: 100vh;
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
}

.d46ca23b49334f02 {
  padding: 8rem 0 4rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}

.d8d0775d4d48481b {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

.bd0b83e155364535 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 3.5rem;
  color: white;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  animation: kjnpages_title_glow 3s ease-in-out infinite;
}

@keyframes kjnpages_title_glow {
  0%, 100% { text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(255, 255, 255, 0.5); }
  50% { text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3), 0 0 30px rgba(255, 255, 255, 0.8); }
}

.b39686f4682b4e2f {
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 2rem;
}

.f568e914b5d1422b {
  font-size: 4rem;
  color: rgba(255, 255, 255, 0.8);
  animation: kjnpages_icon_float 4s ease-in-out infinite;
}

@keyframes kjnpages_icon_float {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-10px) rotate(5deg); }
}

.d08f6fecaf234006 {
  padding: 4rem 0;
}

.df0920b3274f4f41 {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-bottom: 3rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.7;
  color: #333;
  border-left: 5px solid #4338ca;
}

.d8167259c743437f {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.cf877cc2df3a4b2b {
  background: white;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(102, 126, 234, 0.1);
}

.cf877cc2df3a4b2b:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.e0f248943dd54ea3 {
  background: linear-gradient(135deg, #4338ca 0%, #431a6f 100%);
  padding: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: white;
}

.e0f248943dd54ea3 i {
  font-size: 2rem;
  animation: kjnpages_icon_spin 6s linear infinite;
}

@keyframes kjnpages_icon_spin {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}

.e0f248943dd54ea3 h2 {
  font-family: var(--kjn_rotorua-font-heading);
  font-size: 1.8rem;
  margin: 0;
  font-weight: 600;
}

.b393cbb0ab8d44c9 {
  padding: 2.5rem;
}

.b393cbb0ab8d44c9 p {
  font-size: 1.1rem;
  color: #555;
  margin-bottom: 1.5rem;
  line-height: 1.6;
  font-weight: 500;
}

.a7799c85bdd3453d {
  list-style: none;
  padding: 0;
  margin: 0;
}

.a7799c85bdd3453d li {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid #f0f0f0;
  transition: background-color 0.3s ease;
}

.a7799c85bdd3453d li:hover {
  background-color: #eef2ff;
  padding-left: 1rem;
  border-radius: 8px;
}

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

.a7799c85bdd3453d i {
  font-size: 1.3rem;
  color: #4338ca;
  min-width: 30px;
  transition: transform 0.3s ease;
}

.a7799c85bdd3453d li:hover i {
  transform: scale(1.2) rotate(10deg);
}

.a7799c85bdd3453d span {
  color: #333;
  font-size: 1rem;
  line-height: 1.5;
}

.d32bacb0f08f470d {
  background: linear-gradient(135deg, #c4b5fd 0%, #fb7185 100%);
  padding: 1.5rem;
  border-radius: 15px;
  margin-top: 2rem;
  text-align: center;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  animation: kjnpages_contact_pulse 2s ease-in-out infinite;
}

@keyframes kjnpages_contact_pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.02); }
}

.d32bacb0f08f470d i {
  font-size: 1.5rem;
}

.d32bacb0f08f470d a {
  color: white;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.1rem;
  transition: color 0.3s ease;
}

.d32bacb0f08f470d a:hover {
  color: #facc15;
}

.cf1bc56feaa9423b {
  background: white;
  padding: 2.5rem;
  border-radius: 20px;
  margin-top: 3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.d69fd645495b41e7,
.f5d81de9e3944d94 {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #555;
}

.d69fd645495b41e7 i,
.f5d81de9e3944d94 i {
  font-size: 1.5rem;
  color: #4338ca;
}

.f5d81de9e3944d94 {
  background: linear-gradient(135deg, #38bdf8 0%, #67e8f9 100%);
  padding: 1rem 1.5rem;
  border-radius: 25px;
  color: white;
}

.f5d81de9e3944d94 i {
  color: white;
  animation: kjnpages_heartbeat 1.5s ease-in-out infinite;
}

@keyframes kjnpages_heartbeat {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.2); }
}

@media (max-width: 1024px) {
  .d8d0775d4d48481b {
    padding: 0 1.5rem;
  }
  
  .bd0b83e155364535 {
    font-size: 3rem;
  }
}

@media (max-width: 768px) {
  .d46ca23b49334f02 {
    padding: 6rem 0 3rem;
  }
  
  .bd0b83e155364535 {
    font-size: 2.5rem;
  }
  
  .b39686f4682b4e2f {
    font-size: 1.1rem;
  }
  
  .d08f6fecaf234006 {
    padding: 2rem 0;
  }
  
  .e0f248943dd54ea3 {
    padding: 1.5rem;
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
  
  .e0f248943dd54ea3 h2 {
    font-size: 1.5rem;
  }
  
  .b393cbb0ab8d44c9 {
    padding: 2rem;
  }
  
  .cf1bc56feaa9423b {
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .d8d0775d4d48481b {
    padding: 0 1rem;
  }
  
  .d46ca23b49334f02 {
    padding: 5rem 0 2rem;
  }
  
  .bd0b83e155364535 {
    font-size: 2rem;
  }
  
  .f568e914b5d1422b {
    font-size: 3rem;
  }
  
  .df0920b3274f4f41 {
    padding: 1.5rem;
    font-size: 1rem;
  }
  
  .b393cbb0ab8d44c9 {
    padding: 1.5rem;
  }
  
  .a7799c85bdd3453d li {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
    padding: 1.5rem 0;
  }
  
  .d32bacb0f08f470d {
    flex-direction: column;
    gap: 0.5rem;
  }
}



