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

body {
  font-family: Arial, Helvetica, sans-serif;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 58px;                 /* SAME as logo height */
  z-index: 1000;

  display: flex;
  align-items: center;

  padding-left: 40px;
  background: transparent;     /* stays clean over hero */
}


.header-brand {
  display: flex;
  align-items: center;
  gap: 16px;
}

.site-header.scrolled {
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(6px);
}


.logo {
  height: 48px;
}


.brand-text {
  color: #ffffff;
  font-size: 26px;          /* BIG and confident */
  letter-spacing: 4px;
  font-weight: 800;
  /*text-transform: uppercase;*/
  white-space: nowrap;
}



.hero {
  position: relative;
  height: 100vh;
  background-image: url("https://lh3.googleusercontent.com/QSnAAxvBEBEQB2VWTTKcusJQFZZq51rrA6kCslhdeXLnhf4u9rsrP7ua51zPrQBVHVmciaNVodwCw0XViyV7RV0orK59");
  background-size: cover;
  background-position: center;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
}

.hero-content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  text-align: center;
}

.hero-content h1 {
  font-size: 64px;
  letter-spacing: 2px;
  font-weight: 700;
}

.hero-content p {
  font-size: 24px;
  margin-top: 12px;
}

.hero-socials {
  display: flex;
  gap: 16px;
  margin-top: 24px;
}

.hero-socials img {
  width: 28px;
  height: 28px;
}

/* ================================
   IM CREATOR – STORY SECTION
   ================================ */

.ic-section {
  width: 100%;
  background: #fff;
}

.ic-story {
  padding-top: 80px;   /* IM Creator is top-heavy */
  padding-bottom: 40px;
}

.ic-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 60px;

  display: flex;
  align-items: flex-start; /* IMPORTANT: not centered */
  gap: 90px;
}

/* Text column is narrower than image */
.ic-col-text {
  width: 42%;
}

.ic-col-text h2 {
  font-size: 26px;
  letter-spacing: 2px;
  font-weight: 700;
  margin-bottom: 36px;
}

.ic-col-text p {
  font-size: 15px;
  line-height: 1.9;
  margin-bottom: 22px;
  max-width: 520px; /* IM Creator clamps text width */
}

/* Image column is visually dominant */
.ic-col-image {
  width: 58%;
}

.ic-image-frame {
  width: 100%;
  height: 440px; /* fixed visual height */
  background-image: url("https://lh3.googleusercontent.com/vRD8zzKdWWQUJ5RLo9c4QV3UPsskdq_e7vZ9oVvq5k4ajMbgymDjWOjgg_kx1JRArq13nYPmvfNEKWMk92ldvcKc5zGwh1w");
  background-size: cover;
  background-position: center;
}

/* Mobile – IM Creator stacks late */
@media (max-width: 980px) {
  .ic-container {
    flex-direction: column;
    gap: 50px;
    padding: 0 32px;
  }

  .ic-col-text,
  .ic-col-image {
    width: 100%;
  }

  .ic-image-frame {
    height: 320px;
  }
}

/* ================================
   IM CREATOR – VISION SECTION
   ================================ */

.ic-vision {
  padding-top: 80px;
  padding-bottom: 80px;
}

/* Flip layout (image left, text right) */
.ic-reverse {
  flex-direction: row-reverse;
}

/* Vision image — replace URL if needed */
.ic-vision-image {
  background-image: url("https://lh3.googleusercontent.com/zSDFvVwy-2xra-zNX6JCehbcp8QOqkCKlV0q5cqBwuWLFQdQW6p9wD_-az9-ojnNzUcHCxWz4_N_zMNy83WVDqUSKWndpQ=s1600");
}

   /* ================================
   IM CREATOR – GALLERY INTRO TEXT
   ================================ */

.ic-gallery-intro {
  padding: 60px 40px 60px;
  text-align: center;
  background: #2f3e4e;   /* SAME as Meet the Team */
  color: #ffffff;
}

.ic-gallery-intro h2 {
  font-size: 26px;
  letter-spacing: 1.5px;
  font-weight: 600;
}


/* ================================
   IM CREATOR – IMAGE GRID
   ================================ */

.ic-gallery {
  width: 100vw;
  margin-left: calc(50% - 50vw); /* break out of page width */
  padding: 0;
}

.ic-gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
}

.ic-gallery-item {
  aspect-ratio: 4 / 5;   /* taller tiles */
  background-size: cover;
  background-position: center;
}

/* Replace these URLs with the exact gallery images from IM Creator */
.ic-g1 { background-image: url("https://lh3.googleusercontent.com/NMBjsiPuw4wnRPaZYhWG2f8fv1TZ83T0kWXchlalTlmk2HD36r42w9ReDfhR5nL7Wp2h9P18qEurP4sGYOTi4_KdSFv3pzU=s952"); }
.ic-g2 { background-image: url("https://lh3.googleusercontent.com/jNzKGglTQuuuMU7ZSI3TYWAVq2qKdNUeTlf4A_IDvkRmp-3Nr2GrdgyyXEUfBaRg2APzA_0cRufJkBtgNWHvmZs5Z92w2A=s952"); }
.ic-g3 { background-image: url("https://lh3.googleusercontent.com/pEsou1kLj-B0J4Ka8zSwcn5OmEFjUSQkhReK_ioRupYGbnw6kj3Va_30_9E5kKonqi50uSd_wYo6XLejQGnuSOVqlwEKrgw=s952"); }
.ic-g4 { background-image: url("https://lh3.googleusercontent.com/_Qdz89ToX8Ql7ib8ve_YgUAUjeRbu332P6W4ENFRymCzcgdQYVDnmPct6-w2Aw-9_XnddTepFDq4vMwbaxk0w28srSwjbN0=s952"); }
.ic-g5 { background-image: url("https://lh3.googleusercontent.com/5sah2qJcIhmkzSSHpj6XxDT0u5xL5ScguRFWZHp3ayNHAI-RDvRbFSmir_RuYkXEn8kd4e0Wg3zC8T5rvAH6lFrhdo2JbFBd=s952"); }
.ic-g6 { background-image: url("https://lh3.googleusercontent.com/VBt7t9SwAiHW18P0FOufB0z-C1DUKBc4cJgy6hJZRQYRyWDhvgFEWGcHfcmG4MSp5rIU9LmGpfB8SiRVJOjqsNuzzlY5EXSg=s952"); }
.ic-g7 { background-image: url("https://lh3.googleusercontent.com/-AY_yUAfQGguoY-lgPlrHg8qA1E7jXZvmpkZHJUvGH-VHpvHjjplKV5L3eFuDbHvWnppC8IohU3ogZIwv_NxYzDkYta1RuY=s952"); }
.ic-g8 { background-image: url("https://lh3.googleusercontent.com/41xUqpg0rofW7Zakg6ieohOnT085E0yRE9Ph2Z07fXPxHxAbeiPgf0FXj6BbjlR59GkBPrnUJMIUeVQEOX_l2It8nW6_SDNu=s952"); }

/* Tablet */
@media (max-width: 1024px) {
  .ic-gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ic-gallery-item {
    height: 260px;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .ic-gallery-grid {
    grid-template-columns: 1fr;
  }

  .ic-gallery-item {
    height: 220px;
  }
}

/* ================================
   IM CREATOR – MEET THE TEAM
   ================================ */

.ic-team {
  background: #2f3e4e;
  color: #ffffff;
  padding: 60px 0;
}

.ic-team-inner {
  max-width: 1200px;
  margin: auto;
  padding: 0 40px;
}

.ic-team h2 {
  text-align: center;
  font-size: 26px;
  letter-spacing: 2px;
  margin-bottom: 80px;
}

.ic-team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 60px 40px;
}

.ic-team-member {
  text-align: center;
}

.ic-team-photo {
  width: 100%;
  aspect-ratio: 1 / 1;
  background-size: cover;
  background-position: center;
  margin-bottom: 20px;
}

/* Replace these with exact IM Creator image URLs */
.t1 { background-image: url("https://lh3.googleusercontent.com/dwnoFw8hv7hiTxILUougtkRImEgoJk3udWngXCcX-q0NBqbsAMlNEHjoJZpZkZQU-O01n64__puNm5M9543D2Qtn2hzqWZQe=s550"); }
.t2 { background-image: url("https://lh3.googleusercontent.com/yaTB8Y7Q8v26Of6HjFUoO4IwBSWr52atQXz_G9oFf6gk0Zbc-pKIXu03T9VG3qQ3RfYBvYfTOp7KFMypPF0gk2Ct2yTe2dM=s550"); }
.t3 { background-image: url("https://lh3.googleusercontent.com/Ne0cCdSW2HsQnf0ToYHC2ejKGjT4sZQCOKPIFl87js3ekyQvopJj6pVCNYa7g0NjC1_IhFnx-n4OIz0GyIAwfrzRSqX-EeE=s550"); }
.t4 { background-image: url("https://lh3.googleusercontent.com/EpebExjbG8gMIMzUnw1gSRbXwH_DOV_I3iYTrBmGlkfgr6dD6G7z4rIP4XrClA47m37x0-3ps9oIKurIxn88Gd7ZmBlwxlY=s550"); }
.t5 { background-image: url(""); }
.t6 { background-image: url("https://lh3.googleusercontent.com/dOA4npfesIVKtiEbAt6st99Jr00qe_2lOWmRJSn67JRKAtYG4FYbwknLqwWgrkKpouHsshEhu7I1PwA6MPEo0FgjIcQxdNo=s550"); }
.t7 { background-image: url("https://lh3.googleusercontent.com/h_SE1UA-ycULchoBE5-UkcAxhC0MUZlT2JyYl088eE5f-SMY7G-Npw2AKNMMBUBJCtp3-Nw6Dc3vIcb63jZn902KywvhX8Y=s550"); }
.t8 { background-image: url("https://lh3.googleusercontent.com/DLGI6Y0inVfn-XXyEOmHqiEz-dyER4unZjYhe0W_IVe8RvwapynKU-CAetMtw8uJ4vdumZfn2AJbNHhRsKjLei_1aC8IrR0K=s550"); }
.t9 { background-image: url("https://lh3.googleusercontent.com/tUsfJVV4KEp1SviR67_57MF3AY04ZArtk_BlTWKNU1yBEYndUdiFzMsBvjn_UvEfC34ZuXdNc_L0PQE99L1w2MCwDR9TYw=s550"); }
.t10 { background-image: url("https://lh3.googleusercontent.com/D-_6dWk-j2djQWRah8tnYu9rTlZNb0rOVhn5Ve-SEHokwuBrmjFvwi8oG7JjaBlkfYSc7TtUx_Yy2zwHa6EMHn7msR6YoIA=s550"); }

.ic-team-member h3 {
  font-size: 16px;
  margin: 0 0 6px;
}

.ic-team-member p {
  font-size: 14px;
  opacity: 0.85;
}

/* Tablet */
@media (max-width: 1100px) {
  .ic-team-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 600px) {
  .ic-team-grid {
    grid-template-columns: 1fr;
  }
}

/* ================================
   IM CREATOR – QUOTE BANNER
   ================================ */

.ic-quote {
  position: relative;
  width: 100%;
  min-height: 420px;
  background-image: url("https://lh3.googleusercontent.com/Rp2L9stW-L1t59IgBK4dvBVHRL8L8AgngoBhMfZ6IQOoVDM1lKKvGEOLQvS6HOaI4nd52Mzzw7Je8jTnWX69J55F8X0fIyZ6=s1600");
  background-size: cover;
  background-position: center;
}

.ic-quote-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}

.ic-quote-content {
  position: relative;
  z-index: 1;
  min-height: 420px;          /* ensures vertical centering works */
  display: flex;
  align-items: center;        /* vertical centering */
  justify-content: center;    /* horizontal centering */
  padding: 40px 40px;
  text-align: center;
}


.ic-quote-content p {
  max-width: 900px;
  color: #ffffff;
  font-size: 36px;
  line-height: 1.3;
}

/* Mobile */
@media (max-width: 600px) {
  .ic-quote-content p {
    font-size: 22px;
  }
}

/* ================================
   IM CREATOR – CONTACT SPLIT
   ================================ */

.ic-contact-split {
  display: flex;
  width: 100%;
  min-height: 420px;
}

/* LEFT PANEL */
.ic-contact-left {
  width: 50%;
  background: #2f3e4e;
  color: #ffffff;
  display: flex;
  align-items: center;     /* vertical centering */
  justify-content: center;
  padding: 60px;
}

.ic-contact-content {
  max-width: 480px;
  text-align: center;
}

.ic-contact-content h2 {
  font-size: 22px;
  letter-spacing: 2px;
  margin-bottom: 20px;
}

.ic-contact-content p {
  font-size: 15px;
  line-height: 1.8;
  margin-bottom: 30px;
}

/* PHONE BUTTON */
.ic-contact-button {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 999px;
  background: #ffffff;
  color: #2f3e4e;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: 600;
}

/* RIGHT PANEL (MAP) */
.ic-contact-right {
  width: 50%;
}

.ic-contact-right iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* MOBILE */
@media (max-width: 900px) {
  .ic-contact-split {
    flex-direction: column;
  }

  .ic-contact-left,
  .ic-contact-right {
    width: 100%;
  }

  .ic-contact-right {
    height: 300px;
  }
}

/* ================================
   IM CREATOR – LATEST NEWS
   ================================ */

.ic-news {
  background: #000000;
  color: #ffffff;
  padding: 120px 0;
}

.ic-news-inner {
  max-width: 1200px;
  margin: auto;
  padding: 0 40px;
  text-align: center;
}

.ic-news h2 {
  font-size: 26px;
  letter-spacing: 2px;
  margin-bottom: 10px;
}

.ic-news-sub {
  font-size: 15px;
  opacity: 0.8;
  margin-bottom: 70px;
}

.ic-news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

.ic-news-card {
  background: #ffffff;
  color: #000000;
  padding: 40px 30px;
  text-align: center;
}

.ic-news-card h3 {
  font-size: 14px;
  letter-spacing: 1px;
  margin-bottom: 20px;
}

.ic-news-card p {
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 30px;
}

.ic-news-btn {
  display: inline-block;
  padding: 10px 24px;
  border-radius: 999px;
  background: #000000;
  color: #ffffff;
  text-decoration: none;
  font-size: 13px;
}

/* Tablet */
@media (max-width: 1000px) {
  .ic-news-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 600px) {
  .ic-news-grid {
    grid-template-columns: 1fr;
  }
}

.ic-site-footer {
  background: #ffffff;
  padding: 50px 20px 50px; /* more breathing room */
  text-align: center;
}

.ic-site-footer-inner {
  max-width: 900px;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.ic-footer-title {
  font-size: 26px;          /* bigger */
  letter-spacing: 4px;      /* IM Creator feel */
  font-weight: 800;
  margin-bottom: 20px;      /* spacing above & below */
}

.ic-footer-social {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 20px;
}

.ic-footer-social a {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s ease;
  background: transparent;
}

/* Brand colours */
.ic-footer-social a.facebook { color: #1877F2; }
.ic-footer-social a.instagram { color: #E1306C; }
.ic-footer-social a.email { color: #555; }
.ic-footer-social a.phone { color: #2E7D32; }

.ic-footer-social a:hover {
  transform: translateY(-2px);
  background: rgba(0, 0, 0, 0.06);
}

.ic-footer-social svg {
  width: 36px;
  height: 36px;
  fill: currentColor;
}


.ic-footer-bank {
  font-size: 13px;
  line-height: 1.9;
  opacity: 0.65;
}


/* HARD FIX: prevent content touching screen edge */
body {
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
}

input,
textarea {
  width: 100%;
  max-width: calc(100% - 20px);
}

table td {
  padding: 6px 20px 6px 6px;
}

/* ADMIN FORM – table cell padding fix */
td {
  padding-right: 20px;
}

td:last-child {
  padding-right: 20px;
}

td:nth-child(2) {
  padding-right: 20px;
}

