/* ==========================================================
   KORPORATIVNI DOGAĐAJI I FAMILY DAY
   Poseban stylesheet — ne menja postojeći main.css
========================================================== */

:root {
  --corp-yellow: #FDD305;
  --corp-brown: #A15100;
  --corp-green: #6DA80F;
  --corp-orange: #CC4203;
  --corp-ink: #1c2417;
  --corp-copy: #5f6659;
  --corp-cream: #fffdf5;
  --corp-soft: #f5f8ed;
  --corp-white: #fff;
  --corp-shadow: 0 24px 70px rgba(58, 73, 37, .14);
}

.corp-page {
  overflow: hidden;
  color: var(--corp-ink);
  background: #fff;
}

.corp-page h1,
.corp-page h2,
.corp-page h3,
.corp-page p {
  margin-top: 0;
}

.corp-page h1,
.corp-page h2,
.corp-page h3 {
  color: var(--corp-ink);
}

.corp-page p {
  color: var(--corp-copy);
  line-height: 1.85;
}

.corp-eyebrow,
.corp-section-heading > span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 17px;
  color: var(--corp-orange);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.corp-eyebrow::before,
.corp-section-heading > span::before {
  content: "";
  width: 30px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--corp-yellow), var(--corp-orange));
}

.corp-eyebrow--green {
  color: var(--corp-green);
}

.corp-section-heading {
  max-width: 760px;
  margin: 0 auto 52px;
}

.corp-section-heading h2,
.corp-intro h2,
.corp-family h2,
.corp-anywhere h2,
.corp-service h2 {
  margin-bottom: 20px;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

/* Hero */
.corp-hero {
  position: relative;
  padding: 92px 0 105px;
  background:
    radial-gradient(circle at 18% 20%, rgba(253, 211, 5, .22), transparent 28%),
    radial-gradient(circle at 86% 74%, rgba(109, 168, 15, .16), transparent 30%),
    linear-gradient(135deg, #fffdf5 0%, #f8fbf1 55%, #fff 100%);
}

.corp-hero::after {
  content: "";
  position: absolute;
  left: -2%;
  right: -2%;
  bottom: -1px;
  height: 54px;
  background: #fff;
  clip-path: polygon(0 62%, 12% 76%, 28% 52%, 45% 74%, 64% 45%, 81% 70%, 100% 48%, 100% 100%, 0 100%);
}

.corp-hero__panel {
  position: relative;
  padding: clamp(28px, 4.8vw, 70px);
  border: 1px solid rgba(255,255,255,.82);
  border-radius: 38px;
  background: rgba(255,255,255,.72);
  box-shadow: var(--corp-shadow);
  backdrop-filter: blur(18px);
}

.corp-hero h1 {
  margin-bottom: 24px;
  font-size: clamp(46px, 6vw, 78px);
  line-height: .98;
  letter-spacing: -.06em;
}

.corp-hero__lead {
  max-width: 670px;
  margin-bottom: 31px;
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 500;
}

.corp-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 38px;
}

.corp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 13px 24px;
  border: 2px solid transparent;
  border-radius: 18px;
  font-weight: 800;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}

.corp-btn:hover {
  transform: translateY(-3px);
}

.corp-btn--primary {
  color: #fff;
  background: linear-gradient(135deg, var(--corp-orange), #ef6b1d);
  box-shadow: 0 14px 30px rgba(204,66,3,.26);
}

.corp-btn--primary:hover {
  color: #fff;
  box-shadow: 0 18px 40px rgba(204,66,3,.34);
}

.corp-btn--ghost {
  color: var(--corp-ink);
  border-color: rgba(28,36,23,.14);
  background: rgba(255,255,255,.78);
}

.corp-btn--ghost:hover {
  color: var(--corp-orange);
  border-color: rgba(204,66,3,.28);
}

.corp-btn--light {
  color: var(--corp-ink);
  background: #fff;
  box-shadow: 0 14px 34px rgba(0,0,0,.13);
}

.corp-btn--light:hover {
  color: var(--corp-orange);
}

.corp-hero__facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.corp-hero__facts > div {
  padding: 18px 16px;
  border: 1px solid rgba(109,168,15,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.78);
}

.corp-hero__facts strong,
.corp-hero__facts span {
  display: block;
}

.corp-hero__facts strong {
  color: var(--corp-green);
  font-size: 21px;
}

.corp-hero__facts span {
  margin-top: 3px;
  color: var(--corp-copy);
  font-size: 13px;
}

.corp-hero__visual {
  position: relative;
  width: min(100%, 545px);
  margin-left: auto;
  padding: 19px;
}

.corp-hero__image {
  position: relative;
  z-index: 2;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  border: 10px solid rgba(255,255,255,.87);
  border-radius: 34px 34px 120px 34px;
  box-shadow: 0 28px 65px rgba(37,48,25,.22);
  transform: rotate(2deg);
}

.corp-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.corp-hero__shape {
  position: absolute;
  border-radius: 40px;
}

.corp-hero__shape--yellow {
  top: 0;
  right: 0;
  width: 58%;
  height: 53%;
  background: var(--corp-yellow);
  transform: rotate(8deg);
}

.corp-hero__shape--green {
  left: 0;
  bottom: 0;
  width: 42%;
  height: 36%;
  background: var(--corp-green);
  transform: rotate(-8deg);
}

.corp-hero__badge {
  position: absolute;
  z-index: 4;
  left: -8px;
  bottom: 48px;
  display: flex;
  align-items: center;
  gap: 11px;
  max-width: 250px;
  padding: 15px 18px;
  border-radius: 18px;
  color: #fff;
  background: var(--corp-orange);
  box-shadow: 0 18px 36px rgba(204,66,3,.28);
  font-weight: 700;
}

.corp-hero__badge i {
  font-size: 27px;
}

.corp-hero__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(2px);
  animation: corpFloat 7s ease-in-out infinite;
}

.corp-hero__orb--one {
  top: 70px;
  left: 4%;
  width: 95px;
  height: 95px;
  background: rgba(253,211,5,.33);
}

.corp-hero__orb--two {
  right: 4%;
  bottom: 100px;
  width: 145px;
  height: 145px;
  background: rgba(109,168,15,.19);
  animation-delay: -2s;
}

.corp-hero__word {
  position: absolute;
  right: -1vw;
  top: 16%;
  color: rgba(161,81,0,.035);
  font-size: clamp(90px, 17vw, 260px);
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: 1;
  user-select: none;
}

@keyframes corpFloat {
  50% { transform: translateY(-16px) rotate(5deg); }
}

/* Shared image sections */
.corp-intro,
.corp-family,
.corp-anywhere,
.corp-service,
.corp-gallery,
.corp-cta,
.corp-clients,
.corp-activities {
  padding: 105px 0;
}

.corp-intro__visual,
.corp-anywhere__visual {
  position: relative;
  overflow: visible;
  width: min(100%, 570px);
}

.corp-intro__visual img,
.corp-anywhere__visual img {
  width: 100%;
  aspect-ratio: 5 / 4;
  object-fit: cover;
  border-radius: 34px;
  box-shadow: var(--corp-shadow);
}

.corp-intro__stamp,
.corp-anywhere__badge {
  position: absolute;
  right: -20px;
  bottom: -24px;
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 245px;
  padding: 17px 20px;
  border-radius: 20px;
  color: #fff;
  background: linear-gradient(135deg, var(--corp-green), #88bf28);
  box-shadow: 0 17px 38px rgba(109,168,15,.27);
  font-weight: 750;
}

.corp-intro__stamp i,
.corp-anywhere__badge i {
  font-size: 27px;
}

.corp-copy p + p {
  margin-top: 17px;
}

/* Clients */
.corp-clients {
  background: var(--corp-soft);
}

.corp-clients__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
}

.corp-client {
  min-height: 118px;
  padding: 22px 16px;
  border: 1px solid rgba(109,168,15,.12);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 13px 34px rgba(51,67,32,.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform .25s ease, box-shadow .25s ease;
}

.corp-client:hover {
  transform: translateY(-7px);
  box-shadow: 0 20px 42px rgba(51,67,32,.14);
}

.corp-client strong {
  color: var(--corp-brown);
  font-size: clamp(17px, 2vw, 24px);
  letter-spacing: .03em;
}

.corp-client span {
  margin-top: 3px;
  color: var(--corp-copy);
  font-size: 12px;
}

/* Family */
.corp-family {
  background:
    radial-gradient(circle at 90% 20%, rgba(253,211,5,.22), transparent 25%),
    #fff;
}

.corp-family__surface {
  padding: clamp(28px, 5vw, 70px);
  border-radius: 38px;
  background: linear-gradient(135deg, #fff9da, #f4f9e9);
  box-shadow: var(--corp-shadow);
}

.corp-family__features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 28px;
}

.corp-family__features > div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 15px;
  border-radius: 15px;
  background: rgba(255,255,255,.75);
  font-weight: 700;
}

.corp-family__features i {
  color: var(--corp-green);
  font-size: 22px;
}

.corp-family__visual {
  position: relative;
}

.corp-family__visual > img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50% 50% 28px 50%;
  box-shadow: 0 26px 60px rgba(55,69,35,.2);
}

.corp-family__quote {
  position: absolute;
  right: -10px;
  bottom: 25px;
  width: min(90%, 320px);
  padding: 18px 20px;
  border-radius: 18px;
  color: #fff;
  background: var(--corp-orange);
  box-shadow: 0 18px 38px rgba(204,66,3,.25);
}

.corp-family__quote i {
  display: block;
  margin-bottom: 6px;
  font-size: 24px;
}

.corp-family__quote p {
  margin: 0;
  color: #fff;
  line-height: 1.5;
  font-weight: 700;
}

/* Activities */
.corp-activities {
  background: #fff;
}

.corp-activities__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 17px;
}

.corp-activity-card {
  position: relative;
  overflow: hidden;
  min-height: 205px;
  padding: 27px 20px;
  border: 1px solid rgba(109,168,15,.12);
  border-radius: 25px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(55,70,35,.09);
  text-align: center;
  transition: transform .28s ease, box-shadow .28s ease;
}

.corp-activity-card::before {
  content: "";
  position: absolute;
  inset: auto -22px -48px auto;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: rgba(253,211,5,.2);
  transition: transform .35s ease;
}

.corp-activity-card:hover {
  transform: translateY(-9px);
  box-shadow: 0 24px 55px rgba(55,70,35,.15);
}

.corp-activity-card:hover::before {
  transform: scale(1.65);
}

.corp-activity-card > span {
  position: relative;
  z-index: 1;
  width: 70px;
  height: 70px;
  margin: 0 auto 22px;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(135deg, var(--corp-green), #92c73c);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 33px;
  transform: rotate(-4deg);
}

.corp-activity-card:nth-child(even) > span {
  background: linear-gradient(135deg, var(--corp-orange), #ef7c29);
}

.corp-activity-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 20px;
}

/* Anywhere */
.corp-anywhere {
  background: var(--corp-soft);
}

.corp-place-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 27px;
}

.corp-place-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 15px;
  border-radius: 999px;
  color: var(--corp-ink);
  background: #fff;
  box-shadow: 0 8px 20px rgba(55,69,35,.08);
  font-weight: 700;
}

.corp-place-list i {
  color: var(--corp-orange);
}

/* Service */
.corp-service__card {
  position: relative;
  overflow: hidden;
  padding: clamp(34px, 5vw, 70px);
  border-radius: 40px;
  background: linear-gradient(135deg, #203313, #466a21);
  box-shadow: 0 30px 75px rgba(36,56,21,.25);
}

.corp-service .corp-section-heading h2,
.corp-service .corp-section-heading > span {
  color: #fff;
}

.corp-service .corp-section-heading > span::before {
  background: var(--corp-yellow);
}

.corp-service__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 15px;
}

.corp-service-item {
  position: relative;
  min-height: 230px;
  padding: 25px 19px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 22px;
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(10px);
  transition: transform .25s ease, background .25s ease;
}

.corp-service-item:hover {
  transform: translateY(-7px);
  background: rgba(255,255,255,.17);
}

.corp-service-item > span {
  display: block;
  margin-bottom: 18px;
  color: var(--corp-yellow);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .12em;
}

.corp-service-item i {
  display: block;
  margin-bottom: 20px;
  color: #fff;
  font-size: 37px;
}

.corp-service-item p {
  margin: 0;
  color: #fff;
  line-height: 1.55;
  font-weight: 700;
}

.corp-service__shape {
  position: absolute;
  border-radius: 50%;
  opacity: .16;
}

.corp-service__shape--one {
  top: -100px;
  right: -60px;
  width: 300px;
  height: 300px;
  background: var(--corp-yellow);
}

.corp-service__shape--two {
  left: -80px;
  bottom: -120px;
  width: 270px;
  height: 270px;
  background: var(--corp-orange);
}

/* Gallery */
.corp-gallery {
  background:
    radial-gradient(circle at 12% 18%, rgba(253,211,5,.17), transparent 24%),
    linear-gradient(180deg, #fff, #fbfdf7);
}

.corp-gallery__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 340px;
    gap: 20px;
    max-width: 1100px;
    margin: 0 auto;
}

.corp-gallery__item {
  position: relative;
  overflow: hidden;
  border-radius: 23px;
  box-shadow: 0 15px 36px rgba(43,56,28,.12);
}

.corp-gallery__item--hero {
  grid-column: span 2;
  grid-row: span 2;
}

.corp-gallery__item--tall {
  grid-row: span 2;
}

.corp-gallery__item--wide {
  grid-column: span 2;
}

.corp-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease, filter .5s ease;
}

.corp-gallery__item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(28,36,23,.5));
  opacity: .38;
  transition: opacity .3s ease;
}

.corp-gallery__item > span {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  color: var(--corp-ink);
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  opacity: 0;
  transform: translate(-50%, -40%) scale(.8);
  transition: opacity .3s ease, transform .3s ease;
}

.corp-gallery__item:hover img {
  transform: scale(1.065);
  filter: saturate(1.07);
}

.corp-gallery__item:hover::after {
  opacity: .63;
}

.corp-gallery__item:hover > span {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

/* CTA */
.corp-cta {
  padding-top: 30px;
}

.corp-cta__card {
  position: relative;
  overflow: hidden;
  padding: clamp(38px, 6vw, 78px);
  border-radius: 40px;
  color: #fff;
  background:
    linear-gradient(115deg, rgba(132,52,0,.95), rgba(204,66,3,.9)),
    url("../images/slike/manifestacije/10.jpg") center/cover;
  box-shadow: 0 30px 75px rgba(111,52,10,.28);
}

.corp-cta__content {
  position: relative;
  z-index: 2;
  max-width: 760px;
}

.corp-cta__content > span {
  display: block;
  margin-bottom: 13px;
  color: var(--corp-yellow);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .15em;
}

.corp-cta h2 {
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(42px, 5.5vw, 70px);
  letter-spacing: -.05em;
}

.corp-cta p {
  max-width: 680px;
  margin-bottom: 27px;
  color: rgba(255,255,255,.92);
  font-size: 18px;
}

.corp-cta__rings {
  position: absolute;
  right: -80px;
  top: -80px;
  width: 330px;
  height: 330px;
  border: 45px solid rgba(253,211,5,.16);
  border-radius: 50%;
  box-shadow: 0 0 0 45px rgba(255,255,255,.05);
}

/* Magnific popup polish */
.mfp-bg {
  background: #10160d !important;
  opacity: .96 !important;
}

.mfp-title,
.mfp-counter {
  color: #fff !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .corp-clients__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .corp-activities__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .corp-service__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .corp-gallery__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 991.98px) {
  .corp-hero {
    padding-top: 65px;
  }

  .corp-hero__visual {
    margin: 0 auto;
  }

  .corp-intro__visual,
  .corp-anywhere__visual {
    margin: 0 auto;
  }

  .corp-intro__stamp,
  .corp-anywhere__badge {
    right: 15px;
  }

  .corp-gallery__grid {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 240px;
  }

  .corp-gallery__item--hero,
  .corp-gallery__item--wide {
    grid-column: span 2;
  }

  .corp-gallery__item--tall {
    grid-row: span 1;
  }
}

@media (max-width: 767.98px) {
  .corp-intro,
  .corp-family,
  .corp-anywhere,
  .corp-service,
  .corp-gallery,
  .corp-cta,
  .corp-clients,
  .corp-activities {
    padding: 75px 0;
  }

  .corp-hero__panel {
    border-radius: 27px;
  }

  .corp-hero h1 {
    font-size: clamp(41px, 14vw, 58px);
  }

  .corp-hero__facts {
    grid-template-columns: 1fr;
  }

  .corp-hero__image {
    border-radius: 28px 28px 80px 28px;
  }

  .corp-hero__badge {
    left: 5px;
    bottom: 32px;
    max-width: 220px;
  }

  .corp-family__features {
    grid-template-columns: 1fr;
  }

  .corp-family__quote {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: -35px;
  }

  .corp-clients__grid,
  .corp-activities__grid,
  .corp-service__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .corp-gallery__grid {
    grid-auto-rows: 205px;
  }

  .corp-service-item {
    min-height: 210px;
  }
}

@media (max-width: 575.98px) {
  .corp-btn {
    width: 100%;
  }

  .corp-clients__grid,
  .corp-activities__grid,
  .corp-service__grid,
  .corp-gallery__grid {
    grid-template-columns: 1fr;
  }

  .corp-gallery__grid {
    grid-auto-rows: 245px;
  }

  .corp-gallery__item--hero,
  .corp-gallery__item--wide {
    grid-column: span 1;
  }

  .corp-gallery__item--hero {
    grid-row: span 1;
  }

  .corp-client,
  .corp-activity-card,
  .corp-service-item {
    min-height: auto;
  }

  .corp-intro__stamp,
  .corp-anywhere__badge {
    position: relative;
    right: auto;
    bottom: auto;
    max-width: none;
    margin: -18px 14px 0;
  }

  .corp-cta__card {
    border-radius: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .corp-page *,
  .corp-page *::before,
  .corp-page *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}