/* IRIS Commerce System — original responsive design layer */
:root {
  --iris-navy: #002f6c;
  --iris-navy-deep: #001d46;
  --iris-cyan: #00bddd;
  --iris-cyan-bright: #13d5eb;
  --iris-ice: #eef8fb;
  --iris-white: #fff;
  --iris-ink: #082a4d;
  --iris-muted: #60758b;
  --iris-line: rgba(0, 47, 108, .14);
  --iris-shadow: 0 24px 70px rgba(0, 31, 75, .14);
  --iris-radius-sm: 14px;
  --iris-radius: 24px;
  --iris-radius-lg: 40px;
  --iris-max: 1240px;
  --iris-header-logo-column: 18vw;
  --iris-header-action-column: 12vw;
  --iris-header-menu-column: calc((100vw - var(--iris-header-logo-column) - var(--iris-header-action-column)) / 6);
  --iris-header-top-height: 58px;
  --iris-header-nav-height: 74px;
}

/* Authentication: focused, trustworthy account access. */
.iris-auth {
  min-height: calc(100vh - var(--iris-header-top-height) - var(--iris-header-nav-height));
  padding: clamp(62px, 7vw, 112px) clamp(20px, 5vw, 80px);
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 10% 12%, rgba(8, 184, 206, .13), transparent 30%),
    radial-gradient(circle at 92% 85%, rgba(7, 54, 117, .09), transparent 32%),
    linear-gradient(145deg, #f8fbfd 0%, #edf6fa 100%);
}
.iris-auth__shell { width: min(100%, 1180px); display: grid; grid-template-columns: minmax(0, .9fr) minmax(440px, .78fr); align-items: center; gap: clamp(54px, 8vw, 118px); }
.iris-auth__intro { max-width: 590px; }
.iris-auth__eyebrow { display: block; margin-bottom: 16px; color: var(--iris-cyan); font-size: 14px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.iris-auth__intro h1 { margin: 0; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(46px, 5.2vw, 76px); font-weight: 900; line-height: .98; }
.iris-auth__intro > p { max-width: 540px; margin: 28px 0 0; color: #365979; font-size: clamp(17px, 1.35vw, 20px); line-height: 1.65; }
.iris-auth__trust { margin-top: 30px; display: flex; align-items: center; gap: 13px; color: #58708d; font-size: 14px; font-weight: 800; }
.iris-auth__trust i { width: 38px; aspect-ratio: 1; display: grid; place-items: center; color: var(--iris-navy); background: #dceef3; border-radius: 50%; }
.iris-auth__card { padding: clamp(30px, 4vw, 50px); background: #fff; border: 1px solid rgba(7, 58, 122, .1); border-radius: 30px; box-shadow: 0 26px 70px rgba(0, 38, 88, .14); }
.iris-auth__card-heading { margin-bottom: 34px; }
.iris-auth__card-heading > span { color: var(--iris-cyan); font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.iris-auth__card-heading h2 { margin: 7px 0 0; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(28px, 2.4vw, 36px); font-weight: 900; }
.iris-auth__form { display: grid; gap: 22px; }
.iris-auth__field { margin: 0; }
.iris-auth__field label { margin: 0 0 9px; display: block; color: var(--iris-navy); font-size: 14px; font-weight: 900; }
.iris-auth__label-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.iris-auth__label-row a { margin-bottom: 9px; color: var(--iris-cyan); font-size: 13px; font-weight: 800; }
.iris-auth__input-wrap { position: relative; }
.iris-auth__input-wrap > i { position: absolute; top: 50%; left: 19px; z-index: 2; color: #6b829a; font-size: 16px; transform: translateY(-50%); }
.iris-auth__input-wrap .form-control { width: 100%; height: 60px; padding: 0 54px 0 50px; color: var(--iris-navy); background: #f3f8fa; border: 1px solid #d7e5eb; border-radius: 15px; font-size: 16px; font-weight: 700; box-shadow: none; }
.iris-auth__input-wrap .form-control:focus { background: #fff; border-color: var(--iris-cyan); box-shadow: 0 0 0 4px rgba(8, 184, 206, .12); }
.iris-auth__input-wrap .toggle-password { position: absolute; top: 50%; right: 11px; width: 40px; height: 40px; padding: 0; display: grid; place-items: center; color: #58708d; background: transparent; border: 0; transform: translateY(-50%); }
.iris-auth__field label.error { margin: 8px 0 0; color: #b52f3c; font-size: 12px; line-height: 1.4; }
.iris-auth__message { min-height: 0; color: #b52f3c; text-align: center; font-size: 14px; font-weight: 800; }
.iris-auth__message:empty { display: none; }
.iris-auth__loader { min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 13px; color: var(--iris-navy); font-size: 14px; font-weight: 800; }
.iris-auth__submit { width: 100%; min-height: 64px; padding: 16px 26px; display: inline-flex; align-items: center; justify-content: center; gap: 18px; color: #fff; background: var(--iris-navy); border: 0; border-radius: 999px; font-size: 17px; font-weight: 900; transition: background .2s ease, transform .2s ease; }
.iris-auth__submit:hover,
.iris-auth__submit:focus-visible { color: #fff; background: var(--iris-cyan); transform: translateY(-2px); }
.iris-auth__submit:disabled { cursor: wait; opacity: .58; transform: none; }
.iris-auth__legal { margin: 0; color: #71849a; text-align: center; font-size: 12px; line-height: 1.55; }
.iris-auth__legal a { color: var(--iris-navy); font-weight: 900; text-decoration: underline; text-underline-offset: 2px; }
.iris-auth__register { margin-top: 28px; padding-top: 25px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #dfe9ee; color: #60778e; font-size: 14px; }
.iris-auth__register a { display: inline-flex; align-items: center; gap: 9px; color: var(--iris-cyan); font-weight: 900; }

@media (max-width: 900px) {
  .iris-auth__shell { grid-template-columns: 1fr; gap: 44px; }
  .iris-auth__intro { max-width: 680px; text-align: center; }
  .iris-auth__intro > p { margin-right: auto; margin-left: auto; }
  .iris-auth__trust { justify-content: center; }
  .iris-auth__card { width: min(100%, 580px); justify-self: center; }
}

@media (max-width: 520px) {
  .iris-auth { padding: 48px 16px 64px; }
  .iris-auth__intro h1 { font-size: 43px; }
  .iris-auth__card { padding: 28px 20px; border-radius: 24px; }
  .iris-auth__register { align-items: flex-start; flex-direction: column; gap: 9px; }
}

/* Account onboarding and customer area inherit the approved commerce language. */
.iris-auth--wide .iris-auth__shell { width: min(100%, 1320px); grid-template-columns: minmax(300px, .72fr) minmax(600px, 1.28fr); gap: clamp(44px, 6vw, 92px); }
.iris-auth--wide .iris-auth__card { padding: clamp(28px, 3.2vw, 46px); }
.iris-auth__form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.iris-auth__consent { margin: 0; display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: start; gap: 12px; color: #60758b; font-size: 13px; line-height: 1.55; cursor: pointer; }
.iris-auth__consent input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--iris-cyan); }
.iris-auth__consent-error { min-height: 18px; }
.iris-auth__consent-error label.error { margin: 0; color: #b52f3c; font-size: 12px; line-height: 1.4; }
.iris-auth__consent a,
.iris-auth__secondary-link a { color: var(--iris-navy); font-weight: 900; text-decoration: underline; text-underline-offset: 2px; }
.iris-auth__secondary-link { margin: 18px 0 0; color: #71849a; text-align: center; font-size: 13px; }

/* Activation: a focused verification step with proportional code entry. */
.iris-activation__card { width: 100%; min-width: 0; overflow: hidden; }
.iris-activation__email { margin-bottom: 24px; padding-bottom: 24px; border-bottom: 1px solid var(--iris-line); }
.iris-activation__fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.iris-activation__fieldset legend { margin: 0 0 12px; color: var(--iris-navy); font-size: 14px; font-weight: 900; }
.iris-activation .verification-code { width: 100%; padding: 0; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: clamp(6px, 1vw, 10px); }
.iris-activation .code-input { width: 100% !important; min-width: 0; max-width: 100%; height: clamp(48px, 4.2vw, 60px) !important; padding: 0 !important; color: var(--iris-navy) !important; background: #f3f8fa !important; border: 1px solid #d7e5eb !important; border-radius: 12px !important; font-family: "Saira", sans-serif; font-size: clamp(17px, 1.5vw, 22px) !important; font-weight: 900; text-align: center; text-transform: uppercase; flex: 1 1 0 !important; }
.iris-activation .code-input:focus { background: #fff !important; border-color: var(--iris-cyan) !important; box-shadow: 0 0 0 4px rgba(8, 184, 206, .12); }
.iris-activation__actions { min-width: 0; display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1fr); gap: 16px; }
.iris-activation__clear { min-height: 64px; padding: 15px 24px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; color: var(--iris-navy); background: #fff; border: 1px solid rgba(0, 47, 108, .26); border-radius: 999px; font-size: 16px; font-weight: 900; line-height: 1; white-space: nowrap; }
.iris-activation__clear:hover,
.iris-activation__clear:focus-visible { color: var(--iris-navy); background: var(--iris-ice); border-color: var(--iris-cyan); }
.iris-activation__resend { min-width: 0; margin-top: 4px; padding: 18px 20px; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 18px; background: #f6fafb; border: 1px solid var(--iris-line); border-radius: 16px; text-align: left; }
.iris-activation__resend > div:first-child { display: grid; gap: 3px; }
.iris-activation__resend strong { color: var(--iris-navy); font-size: 14px; }
.iris-activation__resend span { color: #71849a; font-size: 12px; line-height: 1.4; }
.iris-activation__resend-action { display: flex; align-items: center; gap: 12px; }
.iris-activation__resend #resend-btn { min-height: 42px; padding: 10px 16px; color: var(--iris-navy); background: #fff; border: 1px solid var(--iris-line); border-radius: 999px; font-size: 12px; font-weight: 900; white-space: nowrap; }
.iris-activation__resend #resend-btn:not(:disabled):hover,
.iris-activation__resend #resend-btn:not(:disabled):focus-visible { color: #fff; background: var(--iris-cyan); border-color: var(--iris-cyan); }
.iris-activation__resend .countdown-wrapper { width: 46px; height: 46px; flex: 0 0 46px; }
.iris-activation__resend .circle-progress { stroke: var(--iris-cyan); }
.iris-activation__resend .countdown-text { color: var(--iris-navy); font-size: 11px; }

@media (max-width: 560px) {
  .iris-activation__actions { grid-template-columns: 1fr; }
  .iris-activation__clear { order: 2; }
  .iris-activation__resend { align-items: flex-start; flex-direction: column; }
  .iris-activation__resend-action { width: 100%; justify-content: space-between; }
  .iris-activation .verification-code { gap: 5px; }
  .iris-activation .code-input { height: 46px !important; border-radius: 9px !important; font-size: 16px !important; }
}

.iris-account {
  min-height: 72vh;
  padding: clamp(58px, 6vw, 94px) clamp(18px, 4vw, 64px) clamp(76px, 7vw, 116px);
  background:
    radial-gradient(circle at 92% 8%, rgba(0, 189, 221, .12), transparent 25%),
    linear-gradient(180deg, #f4fafc 0%, #fff 48%);
}
.iris-account__shell { width: min(100%, 1240px); margin: 0 auto; }
.iris-account__heading { margin-bottom: clamp(34px, 4vw, 54px); display: flex; align-items: end; justify-content: space-between; gap: 32px; }
.iris-account__heading > div { max-width: 720px; }
.iris-account__eyebrow { display: block; margin-bottom: 12px; color: var(--iris-cyan); font-size: 13px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.iris-account__heading h1 { margin: 0; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(42px, 5vw, 68px); font-weight: 900; line-height: 1; }
.iris-account__heading p { max-width: 660px; margin: 20px 0 0; color: #496985; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.65; }
.iris-account__nav { padding: 6px; display: inline-flex; gap: 5px; background: #e5f1f5; border: 1px solid var(--iris-line); border-radius: 999px; }
.iris-account__nav a { min-height: 46px; padding: 11px 20px; display: inline-flex; align-items: center; gap: 9px; color: var(--iris-navy); border-radius: 999px; font-size: 14px; font-weight: 900; white-space: nowrap; }
.iris-account__nav a:hover,
.iris-account__nav a:focus-visible,
.iris-account__nav a.is-active { color: #fff; background: var(--iris-navy); }
.iris-account__card { padding: clamp(28px, 4vw, 54px); background: #fff; border: 1px solid rgba(0, 47, 108, .1); border-radius: var(--iris-radius-lg); box-shadow: var(--iris-shadow); }
.iris-account__card-heading { margin-bottom: 34px; padding-bottom: 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--iris-line); }
.iris-account__card-heading span { color: var(--iris-cyan); font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.iris-account__card-heading h2 { margin: 6px 0 0; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(28px, 3vw, 40px); font-weight: 900; }
.iris-account__card-heading > i { width: 54px; height: 54px; display: grid; place-items: center; color: var(--iris-navy); background: var(--iris-ice); border-radius: 50%; font-size: 20px; }
.iris-account__form { display: grid; gap: 26px; }
.iris-account__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.iris-account__grid small { margin-top: 8px; display: block; color: #71849a; font-size: 12px; }
.iris-account__grid .form-control:disabled { color: #61778c; background: #edf2f4; cursor: not-allowed; opacity: 1; }
.iris-account__actions { padding-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 28px; border-top: 1px solid var(--iris-line); }
.iris-account__actions p { margin: 0; color: #71849a; font-size: 13px; }
.iris-account__actions .iris-auth__submit { width: min(100%, 320px); }
.iris-account__notice { margin: 0 0 30px; padding: 17px 20px; display: flex; align-items: flex-start; gap: 13px; color: #496985; background: var(--iris-ice); border-left: 4px solid var(--iris-cyan); border-radius: 10px; font-size: 14px; line-height: 1.55; }
.iris-account__notice i { margin-top: 4px; color: var(--iris-navy); }
.iris-orders__table-wrap { overflow-x: auto; border: 1px solid var(--iris-line); border-radius: 18px; }
.iris-orders__table { width: 100%; min-width: 700px; margin: 0; border-collapse: collapse; color: var(--iris-ink); }
.iris-orders__table th { padding: 18px 22px; color: #fff; background: var(--iris-navy); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.iris-orders__table td { padding: 20px 22px; border-bottom: 1px solid var(--iris-line); font-size: 15px; font-weight: 700; }
.iris-orders__table tbody tr:last-child td { border-bottom: 0; }
.iris-orders__table tbody tr:nth-child(even) { background: #f7fbfc; }
.iris-orders__table tbody tr:hover { background: var(--iris-ice); }

@media (max-width: 900px) {
  .iris-auth--wide .iris-auth__shell { grid-template-columns: 1fr; }
  .iris-account__heading { align-items: flex-start; flex-direction: column; }
  .iris-account__nav { align-self: stretch; }
  .iris-account__nav a { flex: 1; justify-content: center; }
}

@media (max-width: 680px) {
  .iris-auth__form-grid,
  .iris-account__grid { grid-template-columns: 1fr; }
  .iris-account__card { border-radius: 26px; }
  .iris-account__actions { align-items: stretch; flex-direction: column; }
  .iris-account__actions .iris-auth__submit { width: 100%; }
}

@media (max-width: 420px) {
  .iris-account__nav a { padding-right: 13px; padding-left: 13px; }
  .iris-account__card-heading > i { display: none; }
}

html { scroll-behavior: smooth; }
body { color: var(--iris-ink); background: var(--iris-white); font-family: "Nunito Sans", sans-serif; }
body.custom-cursor { cursor: auto; }
.custom-cursor__cursor, .custom-cursor__cursor-two { display: none !important; }
.container { max-width: var(--iris-max); }
a { transition: color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease; }

/* Prevent provisional HTML from flashing before backend content is applied. */
.page-wrapper > :not(.main-header-two):not(.stricky-header) {
  transition: opacity .32s ease;
}

body.iris-content-loading .page-wrapper > :not(.main-header-two):not(.stricky-header) {
  visibility: hidden;
  opacity: 0;
}

body.iris-content-loading .preloader {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.iris-events-loading .page-wrapper > :not(.main-header-two):not(.stricky-header),
body.iris-event-loading .page-wrapper > :not(.main-header-two):not(.stricky-header) {
  visibility: hidden;
  opacity: 0;
}

body.iris-events-loading .preloader,
body.iris-event-loading .preloader {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.iris-content-ready .page-wrapper > :not(.main-header-two):not(.stricky-header) {
  visibility: visible;
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .page-wrapper > :not(.main-header-two):not(.stricky-header) {
    transition: none;
  }
}

/* Header follows the supplied IRIS reference as a strict two-row grid. */
.main-header-two { position: relative; z-index: 100; background: var(--iris-white); }
.main-header-two .container { width: 100%; max-width: 100%; padding: 0; }
.main-header-two__top { height: var(--iris-header-top-height); min-height: 0; padding: 0; background: #073675; border-bottom: 1px solid rgba(255,255,255,.7); }
.main-header-two__top-inner { height: var(--iris-header-top-height); min-height: 0; padding: 0; display: grid; grid-template-columns: calc(100vw - 24vw) 24vw; }
.main-header-two__top-text { display: flex; align-items: center; justify-content: flex-start; margin: 0; padding-left: var(--iris-header-logo-column); color: white; font-size: 15px; letter-spacing: 0; }
.main-header-two__top-text .language-flag { display: none; }
.main-header-two__social-box { display: grid; grid-template-columns: 49% 25.5% 25.5%; align-items: stretch; margin: 0; }
.main-header-two__social-title { display: flex; align-items: center; justify-content: center; margin: 0; color: white; font-size: 15px; letter-spacing: 0; border-left: 1px solid rgba(255,255,255,.72); }
.main-menu-two__social { display: contents; }
.main-menu-two__social a { width: auto; height: var(--iris-header-top-height); display: grid; place-items: center; color: white; background: #073675; font-size: 27px; border-left: 1px solid rgba(255,255,255,.72); border-radius: 0; }
.main-menu-two__social a::after { display: none; }
.main-menu-two__social a + a { margin-left: 0; }
.main-menu-two__social a:hover { color: white; background: rgba(255,255,255,.1); }
.main-menu-two__wrapper { background: #f7f7f7; border-bottom: 1px solid #d4d8df; }
.main-menu-two__wrapper-inner { height: var(--iris-header-nav-height); min-height: 0; display: grid; grid-template-columns: var(--iris-header-logo-column) calc(100vw - var(--iris-header-logo-column)); }
.main-menu-two__left, .main-menu-two__right { height: var(--iris-header-nav-height); }
.main-menu-two__left { display: flex; align-items: center; justify-content: center; border-right: 1px solid #cbd0d8; }
.main-menu-two__logo { width: 100%; height: 100%; margin: 0; padding: 0; display: grid; place-items: center; overflow: hidden; }
.main-menu-two__logo img { width: min(17.5vw, 360px); max-width: none; height: auto; max-height: none; object-fit: contain; mix-blend-mode: multiply; }
.main-menu-two__right { display: grid; grid-template-columns: calc(100vw - var(--iris-header-logo-column) - var(--iris-header-action-column)) var(--iris-header-action-column); align-items: stretch; }
.main-menu-two__main-menu-box, .main-menu__list { height: 100%; }
.main-menu__list { display: grid !important; grid-template-columns: repeat(6, var(--iris-header-menu-column)); }
.main-menu .main-menu__list > li,
.main-menu .main-menu__list > li + li,
.stricky-header .main-menu__list > li,
.stricky-header .main-menu__list > li + li { box-sizing: border-box; height: 100%; margin: 0 !important; padding: 0 !important; border-right: 1px solid #cbd0d8; }
.main-menu__list > li > a { height: 100%; display: flex; justify-content: center; align-items: center; padding: 0 12px; color: #063270; font-family: "Nunito Sans", sans-serif; font-size: 15px; font-weight: 600; letter-spacing: 0; text-align: center; text-transform: none; }
.main-header-two .main-menu__list > li.current > a,
.stricky-header .main-menu__list > li.current > a { color: #063270 !important; background: transparent; font-weight: 900; }
.main-header-two .main-menu__list > li > a:hover,
.stricky-header .main-menu__list > li > a:hover { color: #063270 !important; background: #f0f0f0; }
.main-menu-two__search-box, .main-menu-two__cart-box { display: none !important; }
.main-menu-two__search-cart-btn-box { height: var(--iris-header-nav-height); margin: 0; padding: 0; display: block; }
.main-menu-two__btn-box { width: 100%; height: 100%; }
.main-header-two .main-menu-two__btn,
.stricky-header .main-menu-two__btn { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; padding: 0 12px; color: white; background: #073675; border-radius: 0; font-size: 12px; line-height: 1.05; text-align: left; box-shadow: none; }
.main-header-two .main-menu-two__btn i,
.stricky-header .main-menu-two__btn i { margin-right: 10px; font-size: 25px; }
.main-header-two .main-menu-two__btn span,
.stricky-header .main-menu-two__btn span { display: block; }
.main-header-two .main-menu-two__btn strong,
.stricky-header .main-menu-two__btn strong { display: block; font-size: 14px; }
.main-header-two .main-menu-two__btn::before,
.stricky-header .main-menu-two__btn::before { display: none; }
.main-header-two .main-menu-two__btn:hover,
.stricky-header .main-menu-two__btn:hover { color: white; background: #073675; transform: none; box-shadow: none; }
.stricky-header { box-shadow: 0 5px 18px rgba(0,31,75,.12); }
.stricky-header .main-menu-two__wrapper-inner { grid-template-columns: 18% 1fr; }

/* Clean IRIS header component. Legacy navigation is no longer part of its layout. */
.main-header-two { width: 100%; }
.stricky-header { display: none !important; }
.iris-header {
  --actions-width: clamp(220px, 12vw, 260px);
  --announcement-height: 56px;
  --navigation-height: 70px;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--actions-width);
  background: #073675;
}
.iris-header__primary { min-width: 0; display: grid; grid-template-rows: var(--announcement-height) var(--navigation-height); }
.iris-header__announcement { display: grid; grid-template-columns: 18% minmax(0, 1fr); align-items: center; padding-right: 30px; color: #fff; }
.iris-header__announcement-content { grid-column: 2; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: clamp(18px, 2.4vw, 46px); }
.iris-header__announcement-engagement { display: flex; align-items: center; justify-content: flex-end; gap: clamp(24px, 2.2vw, 42px); }
.iris-header__announcement p { margin: 0; font-size: clamp(13px, .82vw, 16px); line-height: 1; }
.iris-header__announcement-whatsapp { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: clamp(13px, .82vw, 16px); line-height: 1; white-space: nowrap; }
.iris-header__announcement-whatsapp:hover,
.iris-header__announcement-whatsapp:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.iris-header__announcement-whatsapp i { width: 18px; height: 18px; display: grid; place-items: center; font-size: 18px; }
.iris-header__commerce-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); white-space: nowrap; }
.iris-header__commerce-actions a { position: relative; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: #fff; font-size: clamp(12px, .72vw, 14px); font-weight: 800; line-height: 1; border-left: 1px solid #e9e9e9; }
.iris-header__commerce-actions a > span:not(.cart-count) { display: inline-flex; align-items: center; line-height: 1; }
.iris-header__commerce-actions a:hover,
.iris-header__commerce-actions a:focus-visible { color: #fff; background: rgba(255,255,255,.08); text-decoration: none; }
.iris-header__commerce-actions i { width: 28px; height: 25px; flex: 0 0 25px; display: inline-grid; place-items: center; color: #fff; font-size: 23px; line-height: 1; text-align: center; }
.iris-header__commerce-actions .fa-shopping-cart { font-size: 22px; }
.iris-header__commerce-actions .cart-count { position: absolute; top: -10px; right: -12px; min-width: 18px; height: 18px; padding: 0 4px; display: none; place-items: center; color: #073675; background: #fff; border-radius: 999px; font-size: 10px; font-weight: 900; }
.iris-header__navigation { display: grid; grid-template-columns: 18% minmax(0, 1fr); background: #f7f7f7; }
.iris-header__logo { display: grid; place-items: center; overflow: hidden; }
.iris-header__logo img { width: min(17.5vw, 360px); max-width: none; height: auto; mix-blend-mode: multiply; }
.iris-header__links { min-width: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.iris-header__links a { position: relative; display: grid; place-items: center; padding: 0 12px; color: #073675; font-size: clamp(16px, 1.15vw, 21px); font-weight: 500; text-align: center; }
.iris-header__links a:nth-child(odd) { background: #e9e9e9; }
.iris-header__links a:nth-child(even) { background: #f7f7f7; }
.iris-header__links a::after { content: ""; position: absolute; left: 50%; bottom: 17px; width: 0; height: 2px; background: #073675; transform: translateX(-50%); transition: width .2s ease; }
.iris-header__links a:hover,
.iris-header__links a:focus-visible,
.iris-header__links a[aria-current="page"] { color: #073675; font-weight: 800; }
.iris-header__links a:hover::after,
.iris-header__links a:focus-visible::after,
.iris-header__links a[aria-current="page"]::after { width: min(72%, 110px); }
.iris-header__actions { display: grid; grid-template-rows: var(--announcement-height) var(--navigation-height); background: #073675; }
.iris-header__social-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #e9e9e9; }
.iris-header__social-actions a { display: grid; place-items: center; color: #fff; font-size: 28px; border-left: 1px solid #e9e9e9; }
.iris-header__social-actions a i { width: 30px; height: 30px; display: grid; place-items: center; line-height: 1; }
.iris-header__social-actions a .fa-facebook-f { font-size: 24px; }
.iris-header__social-actions a .fa-instagram { font-size: 27px; }
.iris-header__social-actions a:hover,
.iris-header__social-actions a:focus-visible { color: #fff; background: rgba(255,255,255,.08); }
.iris-header__whatsapp { display: flex; align-items: center; justify-content: center; gap: 11px; padding: 0 14px; color: #fff; font-size: 13px; line-height: 1.05; }
.iris-header__whatsapp i { font-size: 27px; }
.iris-header__whatsapp strong { display: block; font-size: 17px; }
.iris-header__whatsapp:hover,
.iris-header__whatsapp:focus-visible { color: #fff; background: rgba(255,255,255,.08); }
.iris-header__mobile { display: none; }

/* Mobile drawer contains only navigation, social links and WhatsApp. */
.mobile-nav__content { width: min(88vw, 390px); padding: 72px 30px 34px; background: #073675; }
.mobile-nav__content .logo-box { display: none; }
.mobile-nav__close { top: 25px; right: 27px; color: white; font-size: 22px; }
.mobile-nav__container { border: 0; }
.mobile-nav__content .main-menu__list { display: block !important; height: auto; }
.mobile-nav__content .main-menu__list > li { height: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.mobile-nav__content .main-menu__list > li > a { height: 55px; padding: 0; justify-content: flex-start; color: white; background: transparent; font-size: 17px; font-weight: 700; }
.mobile-nav__top { display: block; margin: 32px 0 0; }
.iris-mobile-social-label { color: white; margin-bottom: 16px; font-size: 15px; }
.mobile-nav__social { gap: 12px; }
.mobile-nav__social a, .mobile-nav__social a + a { width: 48px; height: 48px; margin: 0; display: grid; place-items: center; color: white; font-size: 21px; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; }
.mobile-nav__social .fa-facebook-f { font-size: 18px; }
.mobile-nav__social .fa-instagram { font-size: 21px; }
.mobile-nav__contact { margin: 28px 0 0; }
.mobile-nav__contact li { display: block; }
.iris-mobile-whatsapp { min-height: 70px; display: flex !important; align-items: center; padding: 14px 17px; color: #073675 !important; background: white; border-radius: 10px; font-size: 16px; line-height: 1.15; }
.iris-mobile-whatsapp i { margin-right: 13px; color: #073675; font-size: 28px; }
.iris-mobile-whatsapp strong { display: block; font-size: 19px; }

/* Typography and actions */
.section-title__tagline { color: var(--iris-cyan); font-size: 13px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.section-title__title { color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(34px, 5vw, 66px); line-height: .98; font-weight: 800; letter-spacing: -.045em; }
.section-title__text { color: var(--iris-muted); font-size: 17px; line-height: 1.7; }
.thm-btn, .btn-base { background: var(--iris-navy); color: white; border: 0; border-radius: 999px; padding: 15px 25px; font-weight: 800; font-size: 13px; letter-spacing: .02em; }
.thm-btn:hover, .btn-base:hover { background: var(--iris-cyan); color: var(--iris-navy-deep); transform: translateY(-2px); box-shadow: 0 12px 30px rgba(0,189,221,.24); }

/* Home hero */
.main-slider-two { background: var(--iris-navy-deep); }
.main-slider-two .swiper-slide { min-height: min(760px, 82vh); }
.main-slider-two .image-layer-two { opacity: .8; transform: none !important; }
.main-slider-two .image-layer-two::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,22,55,.96) 0%, rgba(0,34,76,.68) 48%, rgba(0,31,70,.08) 84%); }
.main-slider-two__content { max-width: 670px; padding: 110px 0 120px; }
.main-slider-two__image { max-width: min(360px, 72vw); margin-bottom: 30px; }
.main-slider-two__sub-title { color: var(--iris-cyan-bright); font-weight: 800; letter-spacing: .04em; }
.main-slider-two__title { color: var(--iris-white); font-family: "Saira", sans-serif; font-size: clamp(30px, 4.3vw, 62px); line-height: 1.02; letter-spacing: -.04em; max-width: 640px; }
.main-slider-two__btn { background: var(--iris-white); color: var(--iris-navy); }

/* Image-only hero carousel. All visual content belongs to each slide image. */
.iris-visual-carousel { position: relative; width: 100%; overflow: hidden; background: #001d46; }
.iris-visual-carousel .swiper-container,
.iris-visual-carousel .swiper-wrapper,
.iris-visual-carousel .swiper-slide { width: 100%; }
.iris-visual-carousel__image { display: block; width: 100%; aspect-ratio: 12 / 5; object-fit: cover; object-position: center; }
.iris-visual-carousel__cta { position: absolute; left: 29.2%; bottom: 25%; z-index: 6; width: clamp(330px, 20.2vw, 420px); min-height: clamp(76px, 5vw, 98px); display: flex; align-items: center; justify-content: space-between; padding: 18px clamp(34px, 2.6vw, 54px); color: #073f91; background: #fff; border-radius: 999px; font-size: clamp(24px, 1.55vw, 32px); font-weight: 800; line-height: 1; box-shadow: 0 14px 34px rgba(0,29,70,.16); transform: translateX(-50%); }
.iris-visual-carousel__cta i { font-size: .72em; }
.iris-visual-carousel__cta:hover,
.iris-visual-carousel__cta:focus-visible { color: #073f91; background: #f4f4f4; transform: translateX(-50%) translateY(-3px); }
.iris-visual-carousel__controls { position: absolute; left: 50%; bottom: 9%; z-index: 5; display: flex; align-items: center; gap: 28px; transform: translateX(-50%); }
.iris-visual-carousel__controls .swiper-button-prev,
.iris-visual-carousel__controls .swiper-button-next { position: static; width: 58px; height: 58px; margin: 0; display: grid; place-items: center; color: #073675; background: #fff; border: 0; border-radius: 50%; font-size: 20px; box-shadow: 0 10px 30px rgba(0,29,70,.18); transform: none; }
.iris-visual-carousel__controls .swiper-button-prev::after,
.iris-visual-carousel__controls .swiper-button-next::after { display: none; }
.iris-visual-carousel__controls .swiper-button-prev:hover,
.iris-visual-carousel__controls .swiper-button-next:hover { color: #073675; background: #f3f3f3; }

/* New products: API-driven expandable product cards. */
.iris-new-products { position: relative; overflow: hidden; padding: clamp(52px, 4vw, 76px) 0 clamp(90px, 8vw, 135px); background: radial-gradient(circle at 82% 18%, rgba(0,213,235,.44), transparent 38%), radial-gradient(circle at 55% 70%, rgba(0,157,202,.32), transparent 46%), linear-gradient(112deg, #002451 0%, #005b82 52%, #009cc2 100%); }
.iris-new-products .container { width: min(92vw, 1400px); max-width: none; }
.iris-new-products__title { margin: 0 0 clamp(48px, 4vw, 66px); color: #fff; font-family: "Saira", sans-serif; text-align: center; text-transform: uppercase; }
.iris-new-products__title span,
.iris-new-products__title strong { display: block; }
.iris-new-products__title span { color: transparent; -webkit-text-stroke: 2px #fff; font-size: clamp(64px, 5.7vw, 88px); font-weight: 900; line-height: .8; letter-spacing: -.05em; }
.iris-new-products__title strong { margin-top: 16px; color: #fff; font-size: clamp(36px, 3.4vw, 52px); font-weight: 900; line-height: .9; letter-spacing: -.04em; }
.iris-new-products__grid { display: grid; grid-template-columns: repeat(3, minmax(260px, 320px)); justify-content: space-between; align-items: start; gap: clamp(36px, 5vw, 78px); }
.iris-home-products-empty {
  grid-column: 1 / -1;
  width: min(100%, 540px);
  min-height: 210px;
  margin: 0 auto;
  padding: clamp(28px, 3.2vw, 40px);
  display: grid;
  place-content: center;
  text-align: center;
  color: #fff;
  background: rgba(2, 38, 77, .42);
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 22px;
  box-shadow: 0 20px 36px rgba(0, 24, 52, .22);
}
.iris-home-products-empty h3 {
  margin: 0;
  color: #fff;
  font-family: "Saira", sans-serif;
  font-size: clamp(28px, 2.5vw, 38px);
  font-weight: 900;
  line-height: 1.05;
}
.iris-home-products-empty p {
  margin: 14px 0 0;
  color: rgba(255, 255, 255, .88);
  font-size: 18px;
  line-height: 1.5;
}
.iris-square-catalog__grid .iris-home-products-empty {
  color: #083a6f;
  background: #fff;
  border: 1px solid rgba(8, 58, 111, .16);
  box-shadow: 0 16px 34px rgba(5, 45, 95, .12);
}
.iris-square-catalog__grid .iris-home-products-empty h3 {
  color: #083a6f;
}
.iris-square-catalog__grid .iris-home-products-empty p {
  color: #58708d;
}
.iris-new-product-card { width: 100%; min-width: 0; }
.iris-new-product-card__image { position: relative; overflow: visible; width: 100%; aspect-ratio: .82; }
.iris-new-product-card__media { position: absolute; inset: 0; overflow: hidden; display: grid; place-items: center; background: #fff; border-radius: 20px; }
.iris-new-product-card__media img { width: 150%; max-width: none; height: 150%; object-fit: contain; }
.iris-new-product-card__toggle { position: absolute; left: 50%; bottom: 0; z-index: 3; width: 48px; height: 48px; padding: 0; display: grid; place-items: center; color: #fff; background: #08b8ce; border: 0; border-radius: 50%; font-family: Arial, sans-serif; font-size: 25px; font-weight: 700; line-height: 1; box-shadow: 0 4px 8px rgba(0,39,82,.26); transform: translate(-50%, 50%); transition: background .2s ease, transform .2s ease; }
.iris-new-product-card__toggle:hover,
.iris-new-product-card__toggle:focus-visible { background: #019caf; transform: translate(-50%, 50%) scale(1.08); }
.iris-new-product-card__panel { max-height: 0; overflow: hidden; opacity: 0; background: #08b8ce; border-radius: 0 0 12px 12px; transition: max-height .38s ease, opacity .24s ease; }
.iris-new-product-card__content { padding: 58px 22px 28px; color: #fff; text-align: center; }
.iris-new-product-card__content h3 { min-height: 2.3em; margin: 0 0 10px; overflow: hidden; color: #fff; font-family: "Saira", sans-serif; font-size: clamp(19px, 1.3vw, 23px); font-weight: 850; line-height: 1.15; overflow-wrap: anywhere; word-break: break-word; text-transform: uppercase; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.iris-new-product-card__meta { width: fit-content; max-width: 100%; margin: 0 auto; overflow: hidden; color: rgba(255,255,255,.88); font-size: 13px; font-weight: 800; line-height: 1.35; letter-spacing: .055em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.iris-new-product-card__packaging { min-height: 44px; margin: 14px 0 0; display: flex; align-items: baseline; justify-content: center; gap: 8px; color: #fff; line-height: 1; }
.iris-new-product-card__price-amount { font-family: "Saira", sans-serif; font-size: clamp(30px, 2.2vw, 38px); font-weight: 900; letter-spacing: -.035em; }
.iris-new-product-card__price-currency { color: rgba(255,255,255,.82); font-size: 12px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.iris-new-product-card__description { margin: 16px 0 0; overflow: hidden; color: rgba(255,255,255,.94); font-size: clamp(15px, 1vw, 17px); line-height: 1.55; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.iris-new-product-card__learn { position: relative; width: min(100%, 220px); min-height: 52px; margin: 25px auto 0; padding: 10px 48px; display: flex; align-items: center; justify-content: center; color: #0299b1; background: #fff; border-radius: 999px; font-size: 14px; font-weight: 800; text-align: center; }
.iris-new-product-card__learn i { position: absolute; right: 22px; top: 50%; transform: translateY(-50%); }
.iris-new-product-card__learn:hover,
.iris-new-product-card__learn:focus-visible { color: #073675; background: #f4f4f4; }
.iris-new-product-card.is-expanded .iris-new-product-card__media { border-radius: 20px 20px 0 0; }
.iris-new-product-card.is-expanded .iris-new-product-card__panel { max-height: 430px; opacity: 1; }
.iris-new-products__catalog-action { margin-top: clamp(62px, 6vw, 92px); text-align: center; }
.iris-new-products__catalog-link { min-width: min(90vw, 310px); min-height: 64px; padding: 16px 24px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; color: #fff; background: #129dd1; border-radius: 999px; font-size: 17px; font-weight: 900; box-shadow: 0 12px 30px rgba(0,39,82,.16); }
.iris-new-products__catalog-link:hover,
.iris-new-products__catalog-link:focus-visible { color: #fff; background: #0b8fbe; transform: translateY(-2px); }

/* Editorial content blocks */
.iris-home-contact { position: relative; isolation: isolate; min-height: clamp(650px, 55vw, 930px); overflow: hidden; background-color: #eaf1fa; background-position: center; background-repeat: no-repeat; background-size: cover; }
.iris-home-contact::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, rgba(241, 247, 252, .97) 0%, rgba(241, 247, 252, .88) 25%, rgba(241, 247, 252, .48) 45%, rgba(241, 247, 252, .12) 61%, rgba(241, 247, 252, 0) 72%);
}
.iris-home-contact__overlay { display: none; }
.iris-home-contact__content { position: relative; z-index: 1; width: 58%; min-height: inherit; padding: clamp(310px, 26vw, 420px) 3vw clamp(55px, 6vw, 100px) 11.5vw; color: #073675; }
.iris-home-contact__heading { position: absolute; top: clamp(72px, 9vw, 150px); left: 50%; width: min(90%, 1120px); margin: 0; text-align: center; transform: translateX(-50%); }
.iris-home-contact__heading h2 { margin: 0; color: #073675; font-family: "Saira", sans-serif; font-size: clamp(52px, 4.55vw, 76px); font-weight: 800; line-height: .94; letter-spacing: -.035em; text-transform: uppercase; }
.iris-home-contact__heading p { margin: 18px 0 0; color: #08b8ce; font-size: clamp(29px, 2.55vw, 42px); font-weight: 600; line-height: 1.05; }
.iris-home-contact__details { width: fit-content; max-width: 100%; margin: 0; padding: 0; display: grid; gap: clamp(30px, 3.15vw, 52px); list-style: none; }
.iris-home-contact__details li { display: grid; grid-template-columns: clamp(68px, 5vw, 90px) minmax(0, 1fr); align-items: center; gap: clamp(25px, 2vw, 38px); }
.iris-home-contact__icon { width: clamp(68px, 5vw, 90px); aspect-ratio: 1; display: grid; place-items: center; color: #fff; background: #073675; border-radius: 50%; font-size: clamp(29px, 2.25vw, 40px); }
.iris-home-contact__details a { display: block; color: #073675; background: none; font-size: clamp(27px, 2.15vw, 36px); font-weight: 800; line-height: 1.1; overflow-wrap: anywhere; }
.iris-home-contact__details a::before,
.iris-home-contact__details a::after,
.iris-home-contact__details p::before,
.iris-home-contact__details p::after { display: none !important; content: none !important; }
.iris-home-contact__details a > i,
.iris-home-contact__details a > span { display: none !important; }
.iris-home-contact__details a:hover { color: #08a9c0; }
.iris-home-contact__details p { margin: 0; color: #073675; font-size: clamp(21px, 1.65vw, 27px); line-height: 1.25; }
.iris-home-contact__support-copy,
.iris-home-contact__support-hours { display: block; }
.iris-home-contact__support-copy { font-weight: 400; }
.iris-home-contact__support-hours { margin-top: .12em; font-weight: 900; }
.iris-contact-form-section { padding: clamp(72px, 5vw, 96px) 0 clamp(80px, 6vw, 112px); background: #fbfbfb; }
.iris-contact-form-section__inner { width: min(88vw, 1440px); margin: 0 auto; }
.iris-contact-form-section__heading { margin-bottom: clamp(48px, 4vw, 64px); text-align: center; }
.iris-contact-form-section__heading h2 { margin: 0; color: #073675; font-family: "Saira", sans-serif; font-size: clamp(42px, 3.7vw, 62px); font-weight: 800; line-height: 1.04; letter-spacing: -.03em; text-transform: uppercase; }
.iris-contact-form-section__heading p { margin: clamp(20px, 2vw, 32px) auto 0; color: #08b8ce; font-size: clamp(23px, 1.9vw, 32px); font-weight: 400; line-height: 1.16; }
.iris-contact-form { display: grid; grid-template-columns: minmax(0, .86fr) minmax(0, 1.04fr); gap: clamp(40px, 4vw, 64px); align-items: start; }
.iris-contact-form__fields { display: grid; gap: clamp(24px, 1.7vw, 28px); }
.iris-contact-form label { display: block; margin: 0; color: #073675; font-size: clamp(19px, 1.35vw, 23px); font-weight: 800; line-height: 1.1; }
.iris-contact-form input,
.iris-contact-form textarea { width: 100%; margin-top: 12px; padding: 14px 16px; color: #073675; background: #fff; border: 1px solid rgba(7,54,117,.55); border-radius: 0; outline: none; font-family: "Nunito Sans", sans-serif; font-size: 17px; box-shadow: none; }
.iris-contact-form input { height: clamp(56px, 3.7vw, 64px); }
.iris-contact-form textarea { height: clamp(260px, 20vw, 320px); resize: vertical; }
.iris-contact-form input:focus,
.iris-contact-form textarea:focus { border-width: 2px; border-color: #073675; }
.iris-contact-form__submit-wrap { margin-top: clamp(24px, 2vw, 32px); display: flex; justify-content: flex-end; }
.iris-contact-form__submit { width: min(100%, 480px); min-height: clamp(80px, 5vw, 96px); padding: 20px 36px; color: #fff; background: #073675; border: 0; border-radius: 999px; font-size: clamp(24px, 1.7vw, 29px); font-weight: 600; line-height: 1; }
.iris-contact-form__submit:hover,
.iris-contact-form__submit:focus-visible { background: #002c66; }
.iris-home-about { width: 100%; min-height: clamp(620px, 56vw, 900px); display: grid; grid-template-columns: 47.25% 52.75%; background: #001d49; }
.iris-home-about__content { display: flex; align-items: center; color: #fff; background: #001d49; }
.iris-home-about__inner { width: min(72%, 620px); margin: 0 auto; }
.iris-home-about__inner h2 { margin: 0 0 clamp(45px, 5vw, 72px); color: #fff; font-family: "Saira", sans-serif; font-size: clamp(48px, 4.3vw, 70px); font-weight: 800; line-height: .98; }
.iris-home-about__inner p { margin: 0; color: #fff; font-size: clamp(24px, 2vw, 34px); font-weight: 400; line-height: 1.45; }
.iris-home-about__inner p strong { font-weight: 900; }
.iris-home-about__link { position: relative; width: min(100%, 360px); min-height: 88px; margin-top: clamp(55px, 6vw, 88px); padding: 18px 66px 18px 34px; display: flex; align-items: center; justify-content: center; color: #073f91; background: #fff; border-radius: 999px; font-size: clamp(17px, 1.3vw, 22px); font-weight: 800; text-align: center; }
.iris-home-about__link i { position: absolute; right: 42px; top: 50%; transform: translateY(-50%); }
.iris-home-about__link:hover,
.iris-home-about__link:focus-visible { color: #073f91; background: #f1f4f7; transform: translateY(-2px); }
.iris-home-about__image { min-width: 0; overflow: hidden; }
.iris-home-about__image img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.iris-about-page { background: #fff; }
.iris-about-page .about-one { padding-top: 120px; }
.iris-about-page .skill-one { padding-bottom: 120px; }
.iris-about-footer { min-height: 170px; padding: 38px 5vw; display: flex; align-items: center; justify-content: space-between; gap: 40px; background: #001d49; }
.iris-about-footer img { width: 150px; }
.iris-about-footer nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 28px; }
.iris-about-footer nav a { color: #fff; font-size: 14px; font-weight: 700; }
.iris-about-footer nav a:hover { color: #00bddd; }
.experience-one { background: var(--iris-navy-deep); padding: 110px 0; min-height: 560px; overflow: hidden; }
.experience-one .about-us-container { width: 50%; margin-left: 0; padding-left: max(24px, calc((100vw - var(--iris-max))/2)); padding-right: 70px; }
.experience-one-shape-1 { left: 50%; right: 0; width: 50%; height: 100%; background-position: center; background-size: cover; }
.experience-one .section-title { text-align: left !important; }
.experience-one .section-title__title, .experience-one .experience-one__text, .experience-one .section-link { color: var(--iris-white); }
.experience-one .section-title__title { font-size: clamp(34px, 4.5vw, 58px); }
.experience-one .section-link { opacity: .76; }
.services-one, .services-three, .blog-one, .contact-page { padding: 110px 0; }
.services-one.bg-gradient { background: radial-gradient(circle at 85% 10%, rgba(0,189,221,.22), transparent 34%), linear-gradient(135deg, var(--iris-navy-deep), #006993); }

/* Product cards shared by home and catalog */
.services-three__single, .shop-one__single { background: var(--iris-white); border: 1px solid var(--iris-line); border-radius: var(--iris-radius); overflow: hidden; box-shadow: 0 10px 30px rgba(0,31,75,.06); height: calc(100% - 30px); margin-bottom: 30px; }
.services-three__single:hover, .shop-one__single:hover { transform: translateY(-6px); box-shadow: var(--iris-shadow); }
.services-three__img-box, .shop-one__image { background: #f7fbfd; overflow: hidden; }
.services-three__img img, .shop-one__image img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; padding: 28px; }
.services-three__hover-content { background: linear-gradient(180deg, rgba(0,47,108,.05), rgba(0,47,108,.96)); }
.services-three__title { font-family: "Saira", sans-serif; padding: 22px 24px 26px; font-size: 20px; font-weight: 800; }
.services-three__title a { color: var(--iris-navy); }

/* Catalog navigation and filters */
.iris-products-page .services-one > .products-container { width: min(calc(100% - 48px), var(--iris-max)); }
.iris-products-page .products-container > .section-title { max-width: 920px; margin-right: auto; margin-bottom: 0; margin-left: auto; }
.iris-products-page .products-container > .row { margin: clamp(42px, 4vw, 62px) 0 0; }
.products-container { max-width: var(--iris-max); }
.products-container .product-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-content: start;
  margin: 0 !important;
  padding: 30px 24px 26px;
  color: var(--iris-navy);
  background: #fff;
  border: 1px solid var(--iris-line);
  border-radius: 22px;
  box-shadow: 0 16px 38px rgba(0, 47, 108, .09);
}
.iris-catalog-filter-title {
  margin: 0;
  padding-bottom: 18px;
  color: var(--iris-navy);
  border-bottom: 1px solid var(--iris-line);
  font-family: "Saira", sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: -.02em;
}
.filter-section { width: 100%; }
.filter-section h5 {
  margin: 0 0 14px !important;
  color: var(--iris-cyan);
  font-weight: 900;
  font-size: 14px;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.filter-list { display: grid; grid-template-columns: 1fr; gap: 10px; }
.filter-checkbox-label,
.filter-item {
  width: 100%;
  min-height: 46px;
  margin: 0;
  padding: 11px 14px;
  display: flex !important;
  align-items: center;
  gap: 9px;
  color: var(--iris-navy);
  background: var(--iris-ice);
  border: 1px solid var(--iris-line);
  border-radius: 12px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.filter-checkbox-label:hover,
.filter-item:hover { color: var(--iris-navy); background: #eafcff; border-color: var(--iris-cyan); transform: translateX(2px); }
.filter-checkbox-label:has(input:checked),
.filter-active { color: #fff; background: var(--iris-cyan); border-color: var(--iris-cyan); }
.filter-checkbox-label input { width: 17px; height: 17px; margin: 0; accent-color: var(--iris-navy); }
.iris-catalog-filter-clear {
  width: 100%;
  min-height: 52px;
  padding: 12px 18px;
  color: #fff;
  background: var(--iris-navy);
  border: 1px solid var(--iris-navy);
  border-radius: 999px;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  box-shadow: none;
  transition: color .2s ease, background-color .2s ease, transform .2s ease;
}
.iris-catalog-filter-clear:hover,
.iris-catalog-filter-clear:focus-visible { color: #fff; background: var(--iris-cyan); transform: translateY(-2px); }
.breadcrumb { background: transparent; font-size: 12px; font-weight: 800; }
#productContainer > [class*="col-"] { margin-bottom: 28px; }
#customPageNumbers { display: flex; justify-content: center; gap: 8px; }
.iris-products-page #customPagination { height: auto; margin-top: clamp(30px, 4vw, 54px); }
.iris-products-page #customPageNumbers { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 12px; }
.iris-products-page #customPageNumbers a {
  width: auto;
  min-width: 56px;
  min-height: 56px;
  margin: 0;
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--iris-navy);
  background: var(--iris-white);
  border: 1px solid var(--iris-line);
  border-radius: 999px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 8px 24px rgba(0, 47, 108, .06);
}
.iris-products-page #customPageNumbers a:first-child,
.iris-products-page #customPageNumbers a:last-child { width: 220px; }
.iris-products-page #customPageNumbers a.active { color: #fff; background: var(--iris-navy); border-color: var(--iris-navy); }
.iris-products-page #customPageNumbers a.disabled { color: #8493a3; background: #eef1f4; box-shadow: none; opacity: .72; }
.iris-products-page #customPageNumbers a:not(.disabled):hover { color: #fff; background: var(--iris-navy); border-color: var(--iris-navy); transform: translateY(-2px); }

/* Catalog results reuse the approved expandable product language from home. */
#productContainer.iris-catalog-products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: clamp(26px, 3vw, 44px);
  width: 100%;
  margin: 0;
  padding: clamp(34px, 4vw, 58px);
  background: radial-gradient(circle at 90% 8%, rgba(0, 189, 221, .11), transparent 34%), #f4f8fb;
  border: 1px solid var(--iris-line);
  border-radius: 28px;
}
.iris-catalog-product-column { min-width: 0; }
.iris-catalog-product-card { max-width: 360px; margin: 0 auto; }
.iris-catalog-product-card .iris-new-product-card__image { aspect-ratio: .88; }
.iris-catalog-product-card .iris-new-product-card__media { border-radius: 22px; }
.iris-catalog-product-card .iris-new-product-card__media img { width: 100%; height: 100%; padding: clamp(24px, 3vw, 42px); object-fit: contain; }
.iris-catalog-product-card.is-expanded .iris-new-product-card__media { border-radius: 22px 22px 0 0; }
.iris-catalog-product-card .iris-new-product-card__panel { border-radius: 0 0 18px 18px; }
.iris-catalog-product-card.is-expanded .iris-new-product-card__panel { max-height: 520px; }
.iris-catalog-product-card .iris-new-product-card__content { padding: 58px 26px 34px; }
.iris-catalog-product-card .iris-new-product-card__description { -webkit-line-clamp: 5; }
.iris-catalog-product-card .iris-new-product-card__learn { width: min(100%, 250px); }

/* Square catalog: approved visual identity with live Square data. */
.iris-square-catalog {
  min-height: 760px;
  padding: clamp(52px, 5vw, 88px) clamp(20px, 4vw, 72px) clamp(80px, 7vw, 120px);
  background-color: #f5f8fb;
  background-image: radial-gradient(circle, rgba(7, 54, 117, .09) 2px, transparent 2.5px);
  background-size: 28px 28px;
}
.iris-square-catalog__layout {
  width: min(100%, 1740px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr);
  gap: clamp(34px, 3.5vw, 62px);
  align-items: start;
}
.iris-square-catalog__filters {
  position: sticky;
  top: 24px;
  display: grid;
  gap: 26px;
  padding: 38px 32px 34px;
  background: #fff;
  border: 1px solid var(--iris-line);
  border-radius: 26px;
  box-shadow: 0 18px 45px rgba(0, 47, 108, .11);
}
.iris-square-catalog__filters h1 {
  margin: 0;
  padding-bottom: 22px;
  color: var(--iris-navy);
  border-bottom: 1px solid var(--iris-line);
  font-family: "Saira", sans-serif;
  font-size: clamp(20px, 1.5vw, 27px);
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}
.iris-square-catalog__search { display: grid; grid-template-columns: 1fr 44px; overflow: hidden; border: 1px solid var(--iris-line); border-radius: 14px; background: var(--iris-ice); }
.iris-square-catalog__search input { min-width: 0; height: 48px; padding: 0 14px; color: var(--iris-navy); border: 0; outline: 0; background: transparent; }
.iris-square-catalog__search button { color: #fff; border: 0; background: var(--iris-cyan); }
.iris-square-catalog__filter-section h2 {
  margin: 0 0 18px;
  color: var(--iris-cyan);
  font-family: "Saira", sans-serif;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.iris-square-catalog__filter-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.iris-square-catalog__filter-option {
  width: 100%;
  min-height: 54px;
  padding: 12px 18px;
  color: var(--iris-navy);
  background: var(--iris-ice);
  border: 1px solid var(--iris-line);
  border-radius: 14px;
  font-size: 15px;
  font-weight: 900;
  text-align: left;
  transition: .2s ease;
}
.iris-square-catalog__filter-option:hover,
.iris-square-catalog__filter-option:focus-visible,
.iris-square-catalog__filter-option.is-active { color: #fff; background: var(--iris-cyan); border-color: var(--iris-cyan); transform: translateX(3px); }
#product-filters { min-height: 20px; color: var(--iris-navy); font-size: 13px; font-weight: 800; }
.iris-square-catalog__results {
  min-width: 0;
  padding: clamp(42px, 4vw, 72px);
  background: radial-gradient(circle at 88% 5%, rgba(8, 184, 206, .12), transparent 36%), rgba(244, 248, 251, .96);
  border: 1px solid var(--iris-line);
  border-radius: 30px;
}
.iris-square-catalog__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(30px, 4vw, 72px); align-items: start; }
.iris-square-catalog__loader { min-height: 120px; display: flex; align-items: center; justify-content: center; gap: 18px; color: var(--iris-navy); font-weight: 800; }
.iris-square-catalog__load-more { margin-top: 46px; display: flex; justify-content: center; }
.iris-square-catalog__load-more .iris-catalog-filter-clear { width: min(100%, 260px); }
.iris-square-catalog .iris-catalog-product-card .iris-new-product-card__image { aspect-ratio: .86; }
.iris-square-catalog .iris-catalog-product-card .iris-new-product-card__media img { padding: clamp(24px, 3vw, 46px); }

@media (max-width: 1199px) {
  .iris-square-catalog__layout { grid-template-columns: 260px minmax(0, 1fr); }
  .iris-square-catalog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .iris-square-catalog { padding: 28px 16px 70px; }
  .iris-square-catalog__layout { grid-template-columns: 1fr; }
  .iris-square-catalog__filters { position: static; padding: 26px 20px; }
  .iris-square-catalog__results { padding: 32px 18px; }
  .iris-square-catalog__grid { grid-template-columns: 1fr; gap: 38px; }
}

/* Cart: editorial product list and stable order summary. */
.cart-page-container.iris-cart {
  min-height: calc(100vh - 180px);
  padding: clamp(54px, 6vw, 92px) clamp(18px, 4vw, 64px) clamp(72px, 7vw, 112px);
  background:
    radial-gradient(circle at 8% 8%, rgba(14, 184, 207, .09), transparent 28%),
    linear-gradient(180deg, #f8fbfd 0%, #fff 48%);
}

.iris-cart__shell { width: min(100%, 1500px); margin: 0 auto; }
.iris-cart__header { margin-bottom: clamp(32px, 4vw, 54px); }
.iris-cart__header span {
  display: block;
  margin-bottom: 8px;
  color: var(--iris-cyan);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.iris-cart__header h1 {
  margin: 0;
  color: var(--iris-navy);
  font-family: "Saira", sans-serif;
  font-size: clamp(40px, 4.2vw, 64px);
  font-weight: 900;
  line-height: 1;
}
.iris-cart__loader { min-height: 72px; display: flex; align-items: center; justify-content: center; gap: 16px; color: var(--iris-navy); font-weight: 800; }
.iris-cart__message { min-height: 0; display: grid; place-items: center; }
.iris-cart__message:has(.toast-message) { min-height: 72px; }
.iris-cart__message:empty { display: none; }
.iris-cart__message .toast-message { position: static; width: fit-content; max-width: min(100%, 520px); margin: 0; padding: 11px 22px; transform: none; border-radius: 999px; font-size: 15px; font-weight: 800; box-shadow: 0 10px 28px rgba(0, 38, 88, .14); }
.iris-cart__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, 390px); align-items: start; gap: clamp(28px, 3.5vw, 54px); }
.iris-cart__products { min-width: 0; }
.iris-cart__items { min-width: 0; display: grid; gap: 22px; }

.iris-cart-item {
  min-width: 0;
  padding: 22px;
  display: grid;
  grid-template-columns: 150px minmax(190px, 1fr) 160px 140px 92px;
  align-items: center;
  gap: clamp(18px, 2vw, 30px);
  background: #fff;
  border: 1px solid rgba(7, 58, 122, .1);
  border-radius: 28px;
  box-shadow: 0 18px 46px rgba(4, 46, 98, .08);
}
.iris-cart-item__image {
  width: 150px;
  aspect-ratio: 1;
  padding: 16px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #edf6f9;
  border: 1px solid rgba(7, 58, 122, .08);
  border-radius: 20px;
  transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease;
}
.iris-cart-item__image img { width: 100%; height: 100%; display: block; object-fit: contain; mix-blend-mode: multiply; filter: saturate(.96) contrast(1.03); }
.iris-cart-item__image:hover,
.iris-cart-item__image:focus-visible { background: #f1f8fa; border-color: rgba(8, 184, 206, .34); box-shadow: 0 10px 24px rgba(0, 47, 108, .09); }
.iris-cart-item__identity { min-width: 0; }
.iris-cart-item__identity h2 { margin: 0; font-family: "Saira", sans-serif; font-size: clamp(20px, 1.55vw, 26px); font-weight: 900; line-height: 1.18; }
.iris-cart-item__identity h2 a { color: var(--iris-navy); }
.iris-cart-item__identity h2 a:hover { color: var(--iris-cyan); }
.iris-cart-item__identity p { margin: 10px 0 0; color: #58708d; font-size: 15px; font-weight: 700; }
.iris-cart-item__quantity > span,
.iris-cart-item__total > span { display: block; margin-bottom: 10px; color: #68809a; font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.iris-cart-item .quantity-box {
  width: 150px;
  height: 48px;
  display: grid;
  grid-template-columns: 44px 1fr 44px;
  align-items: center;
  overflow: hidden;
  background: #f2f8fb;
  border: 1px solid #d4e5ed;
  border-radius: 999px;
}
.iris-cart-item .quantity-box button { width: 44px; height: 46px; padding: 0; display: grid; place-items: center; color: var(--iris-navy); background: transparent; border: 0; font-size: 13px; transition: color .2s ease, background .2s ease; }
.iris-cart-item .quantity-box button:hover,
.iris-cart-item .quantity-box button:focus-visible { color: #fff; background: var(--iris-cyan); }
.iris-cart-item .quantity-box output { color: var(--iris-navy); text-align: center; font-size: 17px; font-weight: 900; }
.iris-cart-item__total strong { display: block; color: var(--iris-navy); font-size: 20px; font-weight: 900; white-space: nowrap; }
.iris-cart-item__remove { width: 78px; min-height: 78px; padding: 10px 5px; display: grid; grid-template-rows: 24px 16px; place-items: center; align-content: center; gap: 7px; color: #b02d3a; background: #fff5f6; border: 1px solid #f1ccd1; border-radius: 18px; font-size: 12px; font-weight: 900; line-height: 1; }
.iris-cart-item__remove i { width: 24px; height: 24px; display: grid; place-items: center; font-size: 19px; line-height: 1; }
.iris-cart-item__remove span { display: block; line-height: 16px; }
.iris-cart-item__remove:hover,
.iris-cart-item__remove:focus-visible { color: #fff; background: #c93443; border-color: #c93443; }
.iris-cart__list-actions { min-height: 70px; padding: 22px 8px 0; display: flex; justify-content: flex-end; }
.iris-cart__list-actions:empty { display: none; }
.iris-cart__clear-button {
  min-height: 46px;
  padding: 10px 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #a9303c;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 900;
}
.iris-cart__clear-button:hover,
.iris-cart__clear-button:focus-visible { color: #a9303c; background: #fff2f3; border-color: #efc9ce; }

.iris-cart__summary {
  position: sticky;
  top: 28px;
  padding: clamp(28px, 3vw, 38px);
  background: var(--iris-navy);
  border-radius: 28px;
  box-shadow: 0 22px 54px rgba(0, 38, 88, .18);
}
.iris-cart__summary[hidden] { display: none !important; }
.iris-cart__summary h2 { margin: 0 0 28px; color: #fff; font-family: "Saira", sans-serif; font-size: 28px; font-weight: 900; }
.iris-cart__summary .cart-total { margin: 0; }
.iris-cart__summary .cart-total li { margin: 0; padding: 17px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: rgba(255,255,255,.78); border-bottom: 1px solid rgba(255,255,255,.15); font-size: 16px; }
.iris-cart__summary .cart-total li + li { margin-top: 0; }
.iris-cart__summary .cart-total li span:first-child { width: auto; color: inherit; font-size: inherit; font-weight: 700; }
.iris-cart__summary .cart-total li:last-child { color: #fff; border-bottom: 0; font-size: 21px; font-weight: 900; }
.iris-cart__summary .cart-total .thm-text { color: var(--iris-cyan); }
.iris-cart__summary .cart-page__buttons { width: 100%; margin-top: 34px; display: block; }
.iris-cart__summary .cart-page__buttons-2 { width: 100%; margin-left: 0; display: grid; gap: 12px; }
.iris-cart__button { width: 100%; min-height: 72px; padding: 18px 26px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; border: 2px solid transparent; border-radius: 999px; font-size: 19px; font-weight: 900; line-height: 1; }
.iris-cart__button i { font-size: 20px; }
.iris-cart__button--primary { color: var(--iris-navy); background: #fff; }
.iris-cart__button--primary:hover,
.iris-cart__button--primary:focus-visible { color: #fff; background: var(--iris-cyan); }

.iris-cart-empty { min-height: 360px; padding: clamp(24px, 4vw, 48px); display: grid; grid-template-columns: minmax(190px, 280px) minmax(0, 1fr); align-items: center; gap: clamp(28px, 5vw, 64px); background: #fff; border: 1px solid rgba(7, 58, 122, .1); border-radius: 28px; box-shadow: 0 18px 46px rgba(4, 46, 98, .08); }
.iris-cart-empty__image { aspect-ratio: 1; padding: 20px; display: grid; place-items: center; overflow: hidden; background: #eef8fb; border-radius: 22px; }
.iris-cart-empty__image img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.iris-cart-empty h2 { margin: 0; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(30px, 3vw, 46px); font-weight: 900; }
.iris-cart-empty p { margin: 14px 0 24px; color: #58708d; font-size: 17px; }
.iris-cart-empty a { display: inline-flex; align-items: center; gap: 13px; color: var(--iris-cyan); font-size: 16px; font-weight: 900; }

/* Cart confirmation dialog: balanced actions and Iris visual language. */
.iris-cart-page .confirm-modal-overlay { background: rgba(2, 20, 45, .68); backdrop-filter: blur(3px); }
.iris-cart-page .confirm-modal-content { width: min(calc(100% - 32px), 560px); max-width: none; padding: clamp(30px, 4vw, 46px); background: #fff; border: 1px solid rgba(7, 58, 122, .1); border-radius: 26px; box-shadow: 0 28px 80px rgba(0, 28, 68, .3); }
.iris-cart-page #confirm-modal-message { max-width: 430px; margin: 0 auto; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(20px, 2vw, 25px); font-weight: 800; line-height: 1.35; }
.iris-cart-page .confirm-modal-actions { margin-top: 32px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.iris-cart-page .confirm-modal-actions .btn { width: 100%; min-height: 58px; padding: 14px 20px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; font-size: 16px; font-weight: 900; }
.iris-cart-page .confirm-modal-actions .btn::before { display: none; }
.iris-cart-page .confirm-modal-actions .btn-cancel { color: var(--iris-navy); background: #eef4f7; border: 1px solid #d7e3e9; }
.iris-cart-page .confirm-modal-actions .btn-confirm { color: #fff; background: var(--iris-navy); border: 1px solid var(--iris-navy); }
.iris-cart-page .confirm-modal-actions .btn-cancel:hover,
.iris-cart-page .confirm-modal-actions .btn-cancel:focus-visible { background: #dfecef; }
.iris-cart-page .confirm-modal-actions .btn-confirm:hover,
.iris-cart-page .confirm-modal-actions .btn-confirm:focus-visible { background: var(--iris-cyan); border-color: var(--iris-cyan); }

@media (max-width: 1220px) {
  .iris-cart__layout { grid-template-columns: 1fr; }
  .iris-cart__summary { position: static; width: min(100%, 600px); justify-self: end; }
}

@media (max-width: 900px) {
  .iris-cart-item { grid-template-columns: 130px minmax(0, 1fr) 150px; }
  .iris-cart-item__image { width: 130px; grid-row: span 2; }
  .iris-cart-item__quantity { grid-column: 2; }
  .iris-cart-item__total { grid-column: 3; grid-row: 1; }
  .iris-cart-item__remove { grid-column: 3; grid-row: 2; grid-template-columns: 24px auto; grid-template-rows: 1fr; min-height: 48px; width: 100%; }
}

@media (max-width: 620px) {
  .cart-page-container.iris-cart { padding: 42px 16px 70px; }
  .iris-cart-item { padding: 18px; grid-template-columns: 104px minmax(0, 1fr); gap: 18px; border-radius: 22px; }
  .iris-cart-item__image { width: 104px; grid-row: auto; }
  .iris-cart-item__quantity { grid-column: 1 / -1; }
  .iris-cart-item .quantity-box { width: 100%; grid-template-columns: 52px 1fr 52px; }
  .iris-cart-item__total { grid-column: 1; grid-row: auto; }
  .iris-cart-item__remove { grid-column: 2; grid-row: auto; }
  .iris-cart__summary { padding: 26px 22px; border-radius: 22px; }
  .iris-cart__list-actions { padding-right: 0; }
  .iris-cart-empty { grid-template-columns: 1fr; text-align: center; }
  .iris-cart-empty__image { width: min(100%, 230px); justify-self: center; }
  .iris-cart-empty a { justify-content: center; }
}

/* Product detail: editorial presentation with Square data and cart intact. */
.iris-product-detail {
  min-height: calc(100vh - var(--iris-header-top-height) - var(--iris-header-nav-height));
  padding: clamp(54px, 6vw, 100px) clamp(20px, 4vw, 72px) clamp(72px, 7vw, 118px);
  background: radial-gradient(circle at 10% 12%, rgba(8,184,206,.10), transparent 30%), radial-gradient(circle at 92% 88%, rgba(7,54,117,.08), transparent 34%), linear-gradient(145deg, #f8fbfd 0%, #eef6fa 100%);
}
.iris-product-detail__shell {
  width: min(100%, 1440px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(48px, 6vw, 104px);
  align-items: center;
}
.iris-product-detail__media { min-width: 0; }
.iris-product-detail__image-stage {
  width: 100%;
  min-height: clamp(480px, 42vw, 680px);
  padding: clamp(32px, 4.5vw, 76px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(7,54,117,.10);
  border-radius: clamp(24px, 2.4vw, 38px);
  box-shadow: 0 24px 70px rgba(0,47,108,.12);
}
.iris-product-detail__image-stage img {
  width: 100%;
  height: 100%;
  max-height: 570px;
  object-fit: contain;
  object-position: center;
}
.iris-product-detail__information { min-width: 0; align-self: center; }
.iris-product-detail__loader { min-height: 90px; display: flex; align-items: center; justify-content: flex-start; gap: 18px; color: var(--iris-navy); font-weight: 800; }
.iris-product-detail__heading { margin-bottom: clamp(24px, 2.4vw, 38px); }
.iris-product-detail .product-details__title {
  max-width: 100%;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--iris-navy);
  font-family: "Saira", sans-serif;
  font-size: clamp(38px, 4vw, 62px);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -.045em;
  word-break: break-word;
  text-transform: uppercase;
}
.iris-product-detail .product-details__title--long {
  font-size: clamp(27px, 3vw, 46px);
  line-height: 1.08;
  letter-spacing: -.025em;
}
.iris-product-detail__price { margin: 16px 0 0; color: var(--iris-cyan); font-size: clamp(23px, 2vw, 32px); font-weight: 900; line-height: 1; }
.iris-product-detail__description { max-width: 68ch; color: #173a67; font-size: clamp(16px, 1.12vw, 19px); line-height: 1.7; }
.iris-product-detail__description p { margin: 0 0 18px; color: inherit; font-size: inherit; line-height: inherit; }
.iris-product-detail__description h2 { margin: 32px 0 16px; color: var(--iris-navy); font-family: "Saira", sans-serif; font-size: clamp(19px, 1.4vw, 24px); font-weight: 900; text-transform: uppercase; }
.iris-product-detail__description ul { margin: 0; padding: 0; display: grid; gap: 10px; list-style: none; }
.iris-product-detail__description li { position: relative; padding-left: 25px; }
.iris-product-detail__description li::before { position: absolute; top: .68em; left: 0; width: 9px; height: 9px; content: ""; background: var(--iris-cyan); border-radius: 50%; transform: translateY(-50%); }
.iris-product-detail__action { margin-top: clamp(30px, 3vw, 46px); display: flex; justify-content: flex-start; }
.iris-product-detail__cta {
  min-width: 220px;
  min-height: 58px;
  padding: 14px 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: #fff;
  background: var(--iris-navy);
  border: 1px solid var(--iris-navy);
  border-radius: 999px;
  font-size: 16px;
  font-weight: 900;
  box-shadow: 0 12px 30px rgba(0,47,108,.18);
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.iris-product-detail__cta:hover,
.iris-product-detail__cta:focus-visible { color: #fff; background: var(--iris-cyan); border-color: var(--iris-cyan); transform: translateY(-2px); }
.iris-product-detail__supplementary { margin-top: 34px; }
.iris-product-detail__supplementary:empty,
.iris-product-detail__supplementary:not(:has(> :not(:empty))),
.iris-product-detail__properties:empty,
.iris-product-detail #product-details:empty,
.iris-product-detail #product-variations:empty,
.iris-product-detail .square-purchase:empty { display: none !important; }
.iris-product-detail__properties { width: min(100%, 1440px); margin: 60px auto 0; }
.iris-product-detail__error { padding: 38px; color: var(--iris-navy); background: #fff; border: 1px solid var(--iris-line); border-radius: 24px; }
.iris-product-detail__error h1 { color: inherit; font-family: "Saira", sans-serif; font-weight: 900; }
.iris-product-detail__error a { color: var(--iris-cyan); font-weight: 900; }
.product-details__content, .pricing-one__content-box { border-radius: var(--iris-radius); }
.product-variations-table { display: block; overflow-x: auto; border-collapse: separate; border-spacing: 0; border: 1px solid var(--iris-line); border-radius: var(--iris-radius-sm); }
.product-variations-table th { background: var(--iris-navy); color: white; padding: 12px; }
.product-variations-table td { min-width: 135px; padding: 10px 14px; border-bottom: 1px solid var(--iris-line); }
.square-purchase { background: var(--iris-navy-deep) !important; border: 0 !important; border-radius: var(--iris-radius) !important; padding: 30px !important; box-shadow: var(--iris-shadow); }
.square-purchase__title, .square-purchase__description, .square-purchase__label, .square-purchase__help { color: white !important; }
.square-purchase__select { min-height: 52px; border-radius: 12px !important; }
.square-purchase__button { background: var(--iris-cyan) !important; color: var(--iris-navy-deep) !important; border-radius: 999px !important; font-weight: 900 !important; }

@media (max-width: 991px) {
  .iris-product-detail__shell { grid-template-columns: 1fr; gap: 46px; }
  .iris-product-detail__image-stage { min-height: min(72vw, 620px); }
  .iris-product-detail__information { width: 100%; }
}
@media (max-width: 575px) {
  .product-details.iris-product-detail { padding: 28px 16px 64px; }
  .iris-product-detail__image-stage { min-height: 390px; padding: 28px; border-radius: 24px; }
  .iris-product-detail .product-details__title { font-size: 36px; }
  .iris-product-detail .product-details__title--long { font-size: 28px; }
  .iris-product-detail__description { font-size: 16px; line-height: 1.6; }
  .iris-product-detail__cta { width: 100%; }
}

/* Contact and footer */
.contact-two { background: var(--iris-ice); }
.contact-two-bg { opacity: .2; }
.contact-two__inner { background: rgba(255,255,255,.9); border-radius: var(--iris-radius-lg); padding: 70px; box-shadow: var(--iris-shadow); }
.site-footer { background: var(--iris-navy-deep); }
.site-footer__top { padding-top: 75px; }
.site-footer a:hover { color: var(--iris-cyan); }
.site-footer-shape-1 { opacity: .06; }

/* Home footer: two-tone navigation and copyright bands. */
.iris-site-footer { color: #fff; background: #073675; }
.iris-site-footer__main { min-height: 190px; padding: 28px clamp(32px, 6vw, 120px) 24px; display: grid; align-content: center; gap: 40px; }
.iris-site-footer__contact { display: flex; align-items: center; justify-content: center; gap: clamp(64px, 7vw, 125px); }
.iris-site-footer__contact > a { display: flex; align-items: center; gap: 14px; color: #fff; font-size: clamp(17px, 1.2vw, 22px); font-weight: 800; line-height: 1; }
.iris-site-footer__contact > a > span { width: 42px; aspect-ratio: 1; display: grid; place-items: center; flex: 0 0 auto; color: #fff; background: #002d68; border-radius: 50%; font-size: 20px; }
.iris-site-footer__lower { display: grid; grid-template-columns: minmax(0, 4fr) minmax(270px, 1fr); align-items: center; gap: clamp(28px, 3vw, 58px); }
.iris-site-footer__nav { display: grid; grid-template-columns: repeat(6, minmax(75px, 1fr)); align-items: center; }
.iris-site-footer__nav a { position: relative; color: #fff; font-size: clamp(16px, 1.12vw, 21px); font-weight: 400; text-align: center; }
.iris-site-footer__nav a:hover,
.iris-site-footer__nav a:focus-visible,
.iris-site-footer__nav a[aria-current="page"] { color: #fff; font-weight: 800; }
.iris-site-footer__nav a:hover::after,
.iris-site-footer__nav a:focus-visible::after { position: absolute; right: 20%; bottom: -7px; left: 20%; height: 2px; content: ""; background: #fff; }
.iris-site-footer__nav a[aria-current="page"]::after { content: none; }
.iris-site-footer__social { display: flex; align-items: center; gap: 28px; white-space: nowrap; }
.iris-site-footer__social > span { margin-right: 2px; color: #fff; font-size: clamp(14px, .9vw, 17px); font-weight: 700; }
.iris-site-footer__social a { display: grid; place-items: center; color: #fff; font-size: 30px; }
.iris-site-footer__social a i { width: 32px; height: 32px; display: grid; place-items: center; line-height: 1; }
.iris-site-footer__social a .fa-facebook-f { font-size: 25px; }
.iris-site-footer__social a .fa-instagram { font-size: 28px; }
.iris-site-footer__copyright { min-height: 48px; padding: 12px 24px; display: grid; place-items: center; background: #002b60; }
.iris-site-footer__copyright p { margin: 0; color: #fff; font-size: 14px; font-weight: 400; text-align: center; }
.iris-site-footer__copyright a { color: #fff; font-weight: 900; }
.iris-site-footer a:hover { color: #08b8ce; }

@media (max-width: 1199px) {
  .iris-header { display: block; height: 72px; background: #f7f7f7; }
  .iris-header__primary, .iris-header__actions { display: none; }
  .iris-header__mobile { position: relative; height: 72px; display: grid; grid-template-columns: 72px 1fr 72px; align-items: center; }
  .iris-header__menu-button { grid-column: 3; justify-self: end; width: 48px; height: 48px; margin-right: 12px; padding: 0; border: 0; color: #073675; background: transparent; font-size: 22px; }
  .iris-header__mobile-logo { position: absolute; left: 50%; top: 50%; width: 148px; height: 64px; display: grid; place-items: center; overflow: hidden; background: #f7f7f7; transform: translate(-50%, -50%); }
  .iris-header__mobile-logo img { width: 132px; max-width: 100%; height: 60px; object-fit: contain; object-position: center; }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .main-header-two__top { display: none; }
  .main-menu-two__wrapper-inner { position: relative; display: block; min-height: 72px; }
  .main-menu-two__left { position: absolute; inset: 0; width: 100%; height: 72px; border: 0; pointer-events: none; z-index: 1; }
  .main-menu-two__logo { pointer-events: auto; }
  .main-menu-two__logo img { width: 94px; max-height: 58px; }
  .main-menu-two__right { display: block; height: 72px; }
  .main-menu-two__main-menu-box { position: relative; z-index: 2; display: flex; align-items: center; height: 72px; }
  .main-menu-two__search-cart-btn-box { display: none; }
  .main-menu-two .mobile-nav__toggler { width: 48px; height: 48px; margin-left: 18px; display: grid; place-items: center; color: #073675 !important; font-size: 23px; }
  .main-menu-two .main-menu__list { display: none !important; }
  .stricky-header .main-menu-two__wrapper-inner { display: block; }
}

@media (max-width: 991px) {
  .main-header-two__top { display: none; }
  .main-menu-two__wrapper-inner { position: relative; display: block; min-height: 72px; }
  .main-menu-two__left { position: absolute; inset: 0; width: 100%; height: 72px; border: 0; pointer-events: none; z-index: 1; }
  .main-menu-two__logo { pointer-events: auto; }
  .main-menu-two__logo img { width: 94px; max-height: 58px; }
  .main-menu-two__right { display: block; height: 72px; }
  .main-menu-two__main-menu-box { position: relative; z-index: 2; display: flex; align-items: center; height: 72px; }
  .main-menu-two__search-cart-btn-box { display: none; }
  .main-menu-two .mobile-nav__toggler { width: 48px; height: 48px; margin-left: 18px; display: grid; place-items: center; color: #073675 !important; font-size: 23px; }
  .main-menu-two .main-menu__list { display: none !important; }
  .stricky-header .main-menu-two__wrapper-inner { display: block; }
  .main-slider-two .swiper-slide { min-height: 680px; }
  .main-slider-two__content { padding: 90px 0 100px; }
  .experience-one { padding: 0; }
  .experience-one-shape-1 { position: relative; inset: auto; width: 100%; height: 46vw; min-height: 320px; }
  .experience-one .about-us-container { width: 100%; padding: 70px 28px; }
  .products-container .product-filters { grid-template-columns: 1fr; }
  .contact-two__inner { padding: 45px 28px; }
  .iris-new-products__grid { grid-template-columns: repeat(2, minmax(260px, 320px)); justify-content: center; gap: 44px; }
  #productContainer.iris-catalog-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .iris-home-about { min-height: 0; grid-template-columns: 1fr; }
  .iris-home-about__content { min-height: 620px; padding: 80px 0; }
  .iris-home-about__inner { width: min(86%, 600px); }
  .iris-home-about__image { min-height: 72vw; }
  .iris-home-contact { min-height: 760px; background-position: 68% center; }
  .iris-home-contact::before { background: linear-gradient(90deg, rgba(241, 247, 252, .98) 0%, rgba(241, 247, 252, .9) 43%, rgba(241, 247, 252, .42) 72%, rgba(241, 247, 252, .08) 100%); }
  .iris-home-contact__content { width: 76%; padding: 265px 3vw 65px 7vw; }
  .iris-home-contact__heading { top: 70px; }
  .iris-contact-form-section__inner { width: min(88vw, 760px); }
  .iris-contact-form { grid-template-columns: 1fr; gap: 40px; }
  .iris-contact-form-section__heading { margin-bottom: 56px; }
  .iris-contact-form__submit-wrap { justify-content: center; }
  .iris-site-footer__main { min-height: 240px; padding: 30px 5vw 26px; gap: 32px; }
  .iris-site-footer__lower { grid-template-columns: 1fr; }
  .iris-site-footer__social { justify-content: center; }
}

@media (max-width: 575px) {
  .container { padding-left: 20px; padding-right: 20px; }
  .iris-visual-carousel__image { min-height: 68svh; aspect-ratio: auto; object-position: 64% center; }
  .iris-visual-carousel__cta { left: 50%; bottom: 96px; min-width: min(82vw, 330px); min-height: 64px; gap: 24px; padding: 14px 24px; font-size: 21px; }
  .iris-visual-carousel__controls { bottom: 24px; gap: 16px; }
  .iris-visual-carousel__controls .swiper-button-prev,
  .iris-visual-carousel__controls .swiper-button-next { width: 46px; height: 46px; font-size: 16px; }
  .iris-new-products { padding: 76px 0 90px; }
  .iris-new-products__title { margin-bottom: 55px; }
  .iris-new-products__title span { font-size: 64px; }
  .iris-new-products__title strong { margin-top: 14px; font-size: 36px; }
  .iris-new-products__grid { grid-template-columns: 1fr; gap: 42px; max-width: 330px; margin: 0 auto; }
  #productContainer.iris-catalog-products { grid-template-columns: 1fr; padding: 28px 20px 38px; border-radius: 22px; }
  .iris-catalog-product-column { width: 100%; }
  .iris-catalog-product-card { max-width: 340px; }
  .iris-new-product-card__image { aspect-ratio: .92; }
  .iris-new-products__catalog-action { margin-top: 70px; }
  .iris-home-about__content { min-height: 560px; padding: 70px 0; }
  .iris-home-about__inner h2 { margin-bottom: 36px; font-size: 43px; }
  .iris-home-about__inner p { font-size: 23px; line-height: 1.45; }
  .iris-home-about__link { min-height: 68px; margin-top: 52px; }
  .iris-home-about__image { min-height: 100vw; }
  .iris-home-contact { min-height: 690px; background-position: 68% center; }
  .iris-home-contact::before { background: linear-gradient(180deg, rgba(241, 247, 252, .96) 0%, rgba(241, 247, 252, .9) 56%, rgba(241, 247, 252, .58) 100%); }
  .iris-home-contact__content { width: 100%; padding: 230px 20px 60px; }
  .iris-home-contact__heading { top: 55px; width: calc(100% - 40px); }
  .iris-home-contact__heading h2 { font-size: 43px; }
  .iris-home-contact__heading p { margin-top: 12px; font-size: 25px; }
  .iris-home-contact__details { gap: 26px; }
  .iris-home-contact__details li { grid-template-columns: 58px minmax(0, 1fr); gap: 18px; }
  .iris-home-contact__icon { width: 58px; font-size: 24px; }
  .iris-home-contact__details a { font-size: 20px; }
  .iris-home-contact__details p { font-size: 18px; }
  .iris-contact-form-section { padding: 64px 0 72px; }
  .iris-contact-form-section__inner { width: calc(100% - 40px); }
  .iris-contact-form-section__heading { margin-bottom: 48px; }
  .iris-contact-form-section__heading h2 { font-size: 35px; line-height: 1.08; }
  .iris-contact-form-section__heading p { margin-top: 24px; font-size: 21px; }
  .iris-contact-form-section__heading p br { display: none; }
  .iris-contact-form__fields { gap: 24px; }
  .iris-contact-form label { font-size: 18px; }
  .iris-contact-form input { height: 58px; }
  .iris-contact-form textarea { height: 224px; }
  .iris-contact-form__submit { width: 100%; min-height: 74px; padding: 18px 28px; font-size: 22px; }
  .iris-site-footer__main { min-height: 0; padding: 28px 18px 24px; gap: 24px; }
  .iris-site-footer__contact { width: 100%; align-items: stretch; flex-direction: column; gap: 10px; }
  .iris-site-footer__contact > a { min-height: 52px; padding: 8px 12px; gap: 11px; overflow-wrap: anywhere; background: rgba(0, 38, 88, .32); border: 1px solid rgba(255, 255, 255, .08); border-radius: 14px; font-size: 14px; line-height: 1.25; }
  .iris-site-footer__contact > a > span { width: 36px; font-size: 16px; }
  .iris-site-footer__lower { gap: 22px; }
  .iris-site-footer__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .iris-site-footer__nav a { min-height: 44px; padding: 10px 8px; display: grid; place-items: center; background: rgba(255, 255, 255, .06); border-radius: 10px; font-size: 15px; }
  .iris-site-footer__social { display: grid; grid-template-columns: repeat(2, 44px); justify-content: center; gap: 10px 14px; white-space: normal; }
  .iris-site-footer__social > span { grid-column: 1 / -1; width: auto; margin: 0 0 2px; text-align: center; font-size: 14px; }
  .iris-site-footer__social a { width: 44px; height: 44px; font-size: 24px; background: rgba(0, 38, 88, .32); border-radius: 50%; }
  .iris-site-footer__social a i { width: 26px; height: 26px; }
  .iris-site-footer__social a .fa-facebook-f { font-size: 20px; }
  .iris-site-footer__social a .fa-instagram { font-size: 22px; }
  .iris-site-footer__copyright { min-height: 48px; padding: 10px 60px 10px 14px; }
  .iris-site-footer__copyright p { font-size: 12px; line-height: 1.35; }
  .scroll-to-top { right: 14px; bottom: 12px; width: 46px; height: 46px; }
  .iris-about-footer { flex-direction: column; text-align: center; }
  .iris-about-footer nav { justify-content: center; gap: 18px; }
  .main-slider-two .swiper-slide { min-height: calc(100svh - 68px); }
  .main-slider-two .image-layer-two { background-position: 62% center; }
  .main-slider-two .image-layer-two::after { background: linear-gradient(180deg, rgba(0,29,70,.38), rgba(0,29,70,.97) 58%); }
  .main-slider-two__content { display: flex; min-height: calc(100svh - 68px); flex-direction: column; justify-content: flex-end; padding: 80px 0 56px; }
  .main-slider-two__title { font-size: 34px; }
  .main-slider-two__sub-title { font-size: 14px; line-height: 1.5; }
  .main-slider-two__image { max-width: 250px; }
  .section-title__title { font-size: 34px; }
  .services-one, .services-three, .blog-one, .contact-page, .product-details { padding: 72px 0; }
  .experience-one-shape-1 { min-height: 280px; }
  .experience-one .about-us-container { padding: 58px 20px 66px; }
  .services-three__single { border-radius: 20px; }
  .services-three__img img { padding: 20px; }
  .products-container .product-filters { padding: 22px 18px; border: 1px solid var(--iris-line); border-radius: 18px; background: #fff; }
  .iris-products-page .services-one > .products-container { width: 100%; }
  .iris-products-page .products-container > .row { margin-top: 34px; }
  .filter-list { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px; scrollbar-width: none; }
  .filter-list::-webkit-scrollbar { display: none; }
  .filter-checkbox-label, .filter-item { flex: 0 0 auto; min-height: 42px; display: flex !important; align-items: center; }
  #productContainer { margin-left: -7px; margin-right: -7px; }
  #productContainer > [class*="col-"] { padding-left: 7px; padding-right: 7px; }
  .product-details__img { border-radius: 24px; padding: 20px; }
  .square-purchase { margin-top: 24px; padding: 24px !important; }
  .square-purchase__button { width: 100%; text-align: center; min-height: 52px; display: grid !important; place-items: center; }
  .contact-two__inner { border-radius: 24px; padding: 36px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Internal page hero: preserve the source photograph without blue blending. */
.page-header {
  isolation: isolate;
  overflow: hidden;
  background-color: transparent;
}

.page-header-bg {
  z-index: 0;
  opacity: 1;
  mix-blend-mode: normal;
  filter: none;
}

.page-header > .container {
  position: relative;
  z-index: 1;
}

/* FAQ uses the approved index design language, isolated from legacy template colors. */
.iris-faq-page .page-header {
  padding: 84px 0 82px;
}

.iris-faq-page .page-header__inner h2 {
  color: var(--iris-white);
  font-family: "Saira", sans-serif;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.04em;
}

.iris-faq-page .page-header__inner p {
  max-width: 620px;
  margin-top: 18px;
  color: var(--iris-white);
  font-size: clamp(16px, 1.25vw, 20px);
  line-height: 1.55;
}

.iris-faq-page .faq-two {
  padding: 76px 0 24px !important;
  background: var(--iris-white);
}

.iris-faq-page .faq-two + .faq-two {
  padding-top: 38px !important;
}

.iris-faq-page .faq-two__bg {
  display: none;
}

.iris-faq-page .faq-two .section-title {
  max-width: 850px;
  margin: 0 auto 38px;
}

.iris-faq-page .faq-two .section-title__tagline {
  display: block;
  margin: 0;
  color: var(--iris-cyan);
  font-size: clamp(14px, 1.05vw, 17px);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: .08em;
}

.iris-faq-page .faq-two .section-title__tagline::before,
.iris-faq-page .faq-two .section-title__tagline::after {
  display: none;
}

.iris-faq-page .faq-two .section-title__title {
  margin-top: 10px;
  color: var(--iris-navy);
  font-size: clamp(38px, 4.25vw, 58px);
}

.iris-faq-page .faq-one__right {
  height: 100%;
}

.iris-faq-page .faq-one-accrodion .accrodion {
  overflow: hidden;
  background: var(--iris-white);
  border: 1px solid var(--iris-line);
  border-radius: var(--iris-radius-sm);
  box-shadow: 0 12px 36px rgba(0, 47, 108, .07);
}

.iris-faq-page .faq-one-accrodion .accrodion + .accrodion {
  margin-top: 18px;
}

.iris-faq-page .faq-one-accrodion .accrodion-title {
  min-height: 76px;
  display: flex;
  align-items: center;
  padding: 20px 62px 20px 24px;
  background: var(--iris-white);
  border-radius: 0;
}

.iris-faq-page .faq-one-accrodion .accrodion-title h4 {
  width: 100%;
  color: var(--iris-navy);
  font-family: "Nunito Sans", sans-serif;
  font-size: clamp(17px, 1.15vw, 20px);
  font-weight: 800;
  line-height: 1.35;
}

.iris-faq-page .faq-one-accrodion .accrodion-title h4::before {
  right: -38px;
  width: 32px;
  height: 32px;
  color: var(--iris-white);
  background: var(--iris-cyan);
  font-size: 13px;
  line-height: 32px;
}

.iris-faq-page .faq-one-accrodion .accrodion.active .accrodion-title {
  background: var(--iris-ice);
}

.iris-faq-page .faq-one-accrodion .accrodion.active .accrodion-title h4 {
  color: var(--iris-navy);
}

.iris-faq-page .faq-one-accrodion .accrodion.active .accrodion-title h4::before {
  width: 32px;
  height: 32px;
  color: var(--iris-white);
  background: var(--iris-navy);
}

.iris-faq-page .faq-one-accrodion .accrodion-content {
  padding: 22px 24px 26px;
  background: var(--iris-ice);
}

.iris-faq-page .faq-one-accrodion .accrodion-content::before {
  left: 24px;
  right: 24px;
  background: var(--iris-line);
}

.iris-faq-page .faq-one-accrodion .accrodion-content p {
  color: var(--iris-muted);
  font-size: 16px;
  line-height: 1.7;
}

.iris-faq-page .contact-four {
  margin-top: 70px;
  padding: 82px 0 92px;
  background: #f7fafc;
}

.iris-faq-page .contact-four .section-title {
  max-width: 880px;
  margin: 0 auto 48px;
}

.iris-faq-page .contact-four .section-title__tagline::before,
.iris-faq-page .contact-four .section-title__tagline::after {
  display: none;
}

.iris-faq-page .contact-four__form-box {
  max-width: 1000px;
  margin: 0 auto;
}

.iris-faq-page .contact-four__input-box {
  margin-bottom: 22px;
}

.iris-faq-page .contact-four__input-box input[type="text"],
.iris-faq-page .contact-four__input-box input[type="email"],
.iris-faq-page .contact-four__input-box textarea {
  color: var(--iris-ink);
  background: var(--iris-white);
  border: 1px solid rgba(0, 47, 108, .4);
  border-radius: 0;
  box-shadow: none;
  font-family: "Nunito Sans", sans-serif;
  font-size: 16px;
}

.iris-faq-page .contact-four__input-box input[type="text"],
.iris-faq-page .contact-four__input-box input[type="email"] {
  height: 58px;
  padding: 0 20px;
}

.iris-faq-page .contact-four__input-box textarea {
  height: 180px;
  padding: 18px 20px;
}

.iris-faq-page .contact-four__input-box.text-message-box {
  height: 180px;
}

.iris-faq-page .contact-four__btn {
  width: min(100%, 480px);
  min-height: clamp(80px, 5vw, 96px);
  padding: 20px 36px;
  color: var(--iris-white);
  background: var(--iris-navy);
  border-radius: 999px;
  font-family: "Nunito Sans", sans-serif;
  font-size: clamp(24px, 1.7vw, 29px);
  font-weight: 600;
  line-height: 1;
  text-align: center;
}

@media (max-width: 991px) {
  .iris-faq-page .faq-two {
    padding-top: 62px !important;
  }

  .iris-faq-page .faq-two + .faq-two {
    padding-top: 32px !important;
  }

  .iris-faq-page .faq-one__right + .faq-one__right,
  .iris-faq-page .faq-two .row > [class*="col-"] + [class*="col-"] {
    margin-top: 18px;
  }
}

@media (max-width: 575px) {
  .iris-faq-page .page-header {
    padding: 50px 0 47px;
  }

  .iris-faq-page .faq-two {
    padding: 52px 0 14px !important;
  }

  .iris-faq-page .faq-two + .faq-two {
    padding-top: 28px !important;
  }

  .iris-faq-page .faq-two .section-title {
    margin-bottom: 28px;
  }

  .iris-faq-page .faq-one-accrodion .accrodion-title {
    min-height: 70px;
    padding: 17px 54px 17px 18px;
  }

  .iris-faq-page .faq-one-accrodion .accrodion-title h4::before {
    right: -36px;
  }

  .iris-faq-page .faq-one-accrodion .accrodion-content {
    padding: 18px 18px 22px;
  }

  .iris-faq-page .contact-four {
    margin-top: 52px;
    padding: 64px 0 72px;
  }

  .iris-faq-page .contact-four__btn {
    width: 100%;
    min-width: 0;
  }
}

/* Contact page reuses the approved index form without legacy template geometry. */
.iris-contact-page .page-header {
  padding: 84px 0 82px;
}

.iris-contact-page .iris-contact-page__section {
  padding: clamp(72px, 5vw, 96px) 0 clamp(80px, 6vw, 112px);
  background: #fbfbfb;
}

.iris-contact-page__section > .container {
  max-width: 1440px;
}

.iris-contact-page__section .banner-section:empty,
.iris-contact-page__section .banner-section:has(#banner-section:empty) {
  display: none;
}

.iris-contact-page__section .iris-contact-form-section__heading {
  max-width: 1040px;
  margin-right: auto;
  margin-left: auto;
}

.iris-contact-page__section .iris-contact-form {
  width: min(100%, 1240px);
  margin: 0 auto;
}

.iris-contact-page__section .iris-contact-form input[type="tel"] {
  height: clamp(56px, 3.7vw, 64px);
}

.iris-contact-page__section .iris-contact-form__submit-wrap {
  margin-top: clamp(24px, 2vw, 32px);
  display: flex;
  justify-content: flex-end;
}

.iris-contact-page__section .iris-contact-form__submit {
  width: min(100%, 480px);
  min-height: clamp(80px, 5vw, 96px);
  padding: 20px 36px;
  color: var(--iris-white);
  background: #073675;
  border: 0;
  border-radius: 999px;
  font-family: "Nunito Sans", sans-serif;
  font-size: clamp(24px, 1.7vw, 29px);
  font-weight: 600;
  line-height: 1;
  text-align: center;
}

.iris-contact-page__details {
  width: min(100%, 1240px);
  margin: clamp(70px, 6vw, 96px) auto 0;
  padding-top: clamp(48px, 4vw, 64px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 64px);
  border-top: 1px solid var(--iris-line);
}

.iris-contact-page__details-card {
  padding: clamp(28px, 3vw, 42px);
  background: var(--iris-white);
  border: 1px solid var(--iris-line);
  border-radius: var(--iris-radius);
  box-shadow: 0 16px 44px rgba(0, 47, 108, .07);
}

.iris-contact-page__details-card h3 {
  margin: 0 0 26px;
  color: var(--iris-navy);
  font-family: "Saira", sans-serif;
  font-size: clamp(24px, 2vw, 32px);
  font-weight: 800;
  line-height: 1.1;
}

.iris-contact-page__details-card .contact-page__points-list li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
}

.iris-contact-page__details-card .contact-page__points-list li + li {
  margin-top: 18px;
}

.iris-contact-page__details-card .contact-page__points-list li > span {
  margin-top: 4px;
  color: var(--iris-cyan);
  font-size: 18px;
}

.iris-contact-page__details-card .contact-page__points-list p,
.iris-contact-page__details-card .contact-page__points-list a {
  margin: 0;
  color: var(--iris-ink);
  font-size: 17px;
  line-height: 1.5;
}

.iris-contact-page__details-card .contact-page__points-list a:hover {
  color: var(--iris-cyan);
}

@media (max-width: 991px) {
  .iris-contact-page__details {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .iris-contact-page .page-header {
    padding: 62px 0 60px;
  }

  .iris-contact-page__section .iris-contact-form {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .iris-contact-page__section .iris-contact-form__submit-wrap {
    justify-content: center;
  }

  .iris-contact-page__section .iris-contact-form__submit {
    width: 100%;
  }
}

/* Events listing and detail pages share the approved IRIS hierarchy. */
.iris-events-page .page-header,
.iris-event-detail-page .page-header {
  padding: 84px 0 82px;
}

.iris-events-page .page-header__inner h2,
.iris-event-detail-page .page-header__inner h2 {
  color: var(--iris-white);
  font-family: "Saira", sans-serif;
  font-size: clamp(38px, 4.4vw, 62px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.04em;
}

.iris-events-page .page-header__inner p,
.iris-event-detail-page .page-header__inner p {
  max-width: 720px;
  margin-top: 16px;
  color: var(--iris-white);
  font-size: clamp(16px, 1.2vw, 20px);
  line-height: 1.5;
}

.iris-events-page .blog-page-v-2 {
  padding: clamp(72px, 6vw, 96px) 0 clamp(82px, 7vw, 112px);
  background: var(--iris-white);
}

.iris-events-page .blog-page-v-2 .section-title {
  max-width: 840px;
  margin: 0 auto clamp(48px, 4vw, 66px);
}

.iris-events-page .blog-page-v-2 .section-title__tagline {
  display: block;
  margin: 0 0 14px;
  color: var(--iris-cyan);
  font-size: clamp(15px, 1.1vw, 18px);
  font-weight: 900;
  letter-spacing: .16em;
}

.iris-events-page .blog-page-v-2 .section-title__tagline::before,
.iris-events-page .blog-page-v-2 .section-title__tagline::after {
  display: none;
}

.iris-events-page .blog-page-v-2 .section-title__title {
  color: var(--iris-navy);
  font-size: clamp(44px, 5vw, 72px);
}

.iris-events-page .blog-page-v-2 .section-title__text {
  max-width: 680px;
  margin: 24px auto 0;
  color: var(--iris-muted);
  font-size: clamp(18px, 1.35vw, 22px);
  line-height: 1.55;
}

.iris-events-page .blog-two__single {
  height: calc(100% - 30px);
  overflow: hidden;
  border: 1px solid var(--iris-line);
  border-radius: var(--iris-radius);
  box-shadow: 0 16px 44px rgba(0, 47, 108, .08);
}

.iris-events-page .blog-two__img,
.iris-events-page .blog-two__img img {
  border-radius: 0;
}

.iris-events-page .blog-two__img img {
  height: auto;
  max-height: none;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.iris-events-page .blog-two__img::before,
.iris-events-page .blog-two__img::after {
  display: none;
}

.iris-events-page .blog-two__plus {
  transform: none;
  opacity: 0;
  transition: opacity .25s ease;
}

.iris-events-page .blog-two__single:hover .blog-two__plus {
  opacity: 1;
  transform: none;
  transition-delay: 0s;
}

.iris-events-page .blog-two__plus a {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  color: var(--iris-navy);
  background: var(--iris-white);
  border-radius: 50%;
  box-shadow: 0 12px 30px rgba(0, 29, 70, .2);
}

.iris-events-page .blog-two__content {
  padding: 52px 28px 32px;
}

.iris-events-page .blog-two__date {
  padding: 12px 20px;
  background: var(--iris-cyan);
  border-radius: 999px;
}

.iris-events-page .blog-two__date p {
  color: var(--iris-navy-deep);
  font-size: 13px;
  font-weight: 900;
}

.iris-events-page .blog-two__title {
  font-family: "Saira", sans-serif;
  font-size: clamp(22px, 1.65vw, 28px);
  font-weight: 800;
  line-height: 1.15;
}

.iris-events-page .blog-two__title a {
  color: var(--iris-navy);
}

.iris-events-page .blog-two__text {
  color: var(--iris-muted);
  font-size: 16px;
  line-height: 1.65;
}

.iris-events-page #customPagination {
  height: auto;
  margin-top: clamp(30px, 4vw, 54px);
}

.iris-events-page #customPageNumbers {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.iris-events-page #customPageNumbers a {
  width: auto;
  min-width: 56px;
  min-height: 56px;
  margin: 0;
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--iris-navy);
  background: var(--iris-white);
  border: 1px solid var(--iris-line);
  border-radius: 999px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 8px 24px rgba(0, 47, 108, .06);
}

.iris-events-page #customPageNumbers a:first-child,
.iris-events-page #customPageNumbers a:last-child {
  width: 220px;
}

.iris-events-page #customPageNumbers a.active {
  color: var(--iris-white);
  background: var(--iris-navy);
  border-color: var(--iris-navy);
}

.iris-events-page #customPageNumbers a.disabled {
  color: #8493a3;
  background: #eef1f4;
  box-shadow: none;
  opacity: .72;
}

.iris-events-page #customPageNumbers a:not(.disabled):hover {
  color: var(--iris-white);
  background: var(--iris-navy);
  border-color: var(--iris-navy);
  transform: translateY(-2px);
}

.iris-event-detail-page .iris-event-gallery {
  padding: clamp(64px, 6vw, 96px) 0 clamp(80px, 7vw, 112px);
  background: #f7fafc;
}

.iris-event-detail-page #event-images {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 30px);
  margin: 0;
}

.iris-event-gallery__item {
  min-width: 0;
}

.iris-event-gallery__item--featured {
  grid-column: 1 / -1;
}

.iris-event-detail-page .gallery-page__single {
  height: 100%;
  margin: 0;
}

.iris-event-detail-page .gallery-page__img {
  height: 100%;
  background: var(--iris-white);
  border: 1px solid var(--iris-line);
  border-radius: var(--iris-radius);
  box-shadow: 0 16px 44px rgba(0, 47, 108, .09);
}

.iris-event-detail-page .gallery-page__img::before {
  display: none;
}

.iris-event-detail-page .gallery-page__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
}

.iris-event-detail-page .iris-event-gallery__item--featured .gallery-page__img img {
  aspect-ratio: 16 / 7;
}

.iris-event-detail-page .gallery-page__icon {
  background: rgba(0, 47, 108, .16);
  opacity: 0;
  transition: opacity .25s ease;
}

.iris-event-detail-page .gallery-page__single:hover .gallery-page__icon {
  opacity: 1;
}

.iris-event-detail-page .gallery-page__icon a {
  color: var(--iris-navy);
  background: var(--iris-white);
  transform: none;
  opacity: 1;
  box-shadow: 0 12px 30px rgba(0, 29, 70, .2);
}

.iris-event-gallery__back-wrap {
  margin-top: clamp(38px, 5vw, 66px);
  text-align: center;
}

.iris-event-gallery__back {
  width: min(100%, 300px);
  min-height: 72px;
  padding: 18px 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  color: var(--iris-white);
  background: var(--iris-navy);
  border-radius: 999px;
  font-size: 18px;
  font-weight: 800;
}

@media (max-width: 767px) {
  .iris-visual-carousel__image { width: 100%; height: auto; min-height: 0; aspect-ratio: 12 / 5; background: #001d46; object-fit: contain; object-position: center; }
  .iris-visual-carousel__cta { left: 50%; bottom: 16px; width: min(calc(100% - 112px), 270px); min-width: 0; min-height: 52px; padding: 12px 20px; justify-content: center; gap: 12px; font-size: 18px; }
  .iris-visual-carousel__controls { top: 50%; bottom: auto; width: calc(100% - 24px); justify-content: space-between; gap: 0; transform: translate(-50%, -50%); pointer-events: none; }
  .iris-visual-carousel__controls .swiper-button-prev,
  .iris-visual-carousel__controls .swiper-button-next { width: 40px; height: 40px; font-size: 14px; pointer-events: auto; }
  .iris-square-catalog__results { padding: 28px 12px; }
  .iris-catalog-product-card { max-width: 390px; }
  .iris-square-catalog .iris-catalog-product-card .iris-new-product-card__media img,
  .iris-catalog-product-card .iris-new-product-card__media img { width: 142%; max-width: none; height: 142%; padding: 0; object-fit: contain; }
  .iris-events-page .page-header,
  .iris-event-detail-page .page-header {
    padding: 50px 0 47px;
  }

  .iris-event-detail-page #event-images {
    grid-template-columns: 1fr;
  }

  .iris-event-gallery__item--featured {
    grid-column: auto;
  }

  .iris-event-detail-page .gallery-page__img img,
  .iris-event-detail-page .iris-event-gallery__item--featured .gallery-page__img img {
    aspect-ratio: 4 / 3;
  }

  .iris-events-page #customPageNumbers a:first-child,
  .iris-events-page #customPageNumbers a:last-child {
    width: 160px;
  }
}

@media (max-width: 420px) {
  .iris-header__mobile-logo { width: 126px; }
  .iris-header__mobile-logo img { width: 116px; height: 58px; }
  .iris-activation .verification-code { gap: 4px; }
  .iris-activation .code-input { height: 42px !important; font-size: 15px !important; }
  .iris-activation__resend { padding: 16px; }
}

/* About mission and vision: compact, balanced editorial grid. */
.iris-about-values {
  position: relative;
  padding: clamp(76px, 7vw, 108px) 0 clamp(82px, 7.5vw, 116px);
  overflow: hidden;
  color: var(--iris-white);
  background: var(--iris-navy-deep);
}

.iris-about-values .container {
  position: relative;
  z-index: 1;
}

.iris-about-values__heading {
  margin-bottom: clamp(34px, 4vw, 54px);
  text-align: center;
}

.iris-about-values__heading .section-title__tagline {
  margin: 0;
  color: var(--iris-cyan);
  font-size: clamp(14px, 1vw, 17px);
  font-weight: 900;
  letter-spacing: .16em;
}

.iris-about-values__heading .section-title__tagline::before,
.iris-about-values__heading .section-title__tagline::after {
  display: none;
}

.iris-about-values__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(120px, 12vw, 180px) minmax(0, 1fr);
  align-items: center;
}

.iris-about-values__item {
  min-width: 0;
  padding: 0 clamp(44px, 5vw, 80px);
}

.iris-about-values__item .section-title__title {
  margin: 0;
  color: var(--iris-white);
  font-size: clamp(42px, 4.5vw, 64px);
  line-height: 1;
}

.iris-about-values__accent {
  width: 72px;
  height: 4px;
  margin: 24px 0 28px;
  display: block;
  background: var(--iris-cyan);
  border-radius: 999px;
}

.iris-about-values__item p {
  max-width: 500px;
  margin: 0;
  color: rgba(255, 255, 255, .88);
  font-size: clamp(17px, 1.25vw, 20px);
  font-weight: 400;
  line-height: 1.7;
}

.iris-about-values__video-action {
  display: grid;
  place-items: center;
  align-content: center;
  padding: 0 18px;
}

.iris-about-values__play {
  width: clamp(72px, 6vw, 92px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  color: var(--iris-navy);
  background: var(--iris-white);
  border-radius: 50%;
  font-size: clamp(22px, 2vw, 30px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .25);
}

.iris-about-values__play:hover,
.iris-about-values__play:focus-visible {
  color: var(--iris-navy);
  background: var(--iris-cyan);
  transform: scale(1.05);
}

.iris-about-values__video-caption {
  width: 100%;
  margin: 18px auto 0;
  text-align: center;
}

.iris-about-values__video-caption p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .iris-about-values {
    padding: 68px 0 76px;
  }

  .iris-about-values__heading {
    margin-bottom: 38px;
    text-align: left;
  }

  .iris-about-values__grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .iris-about-values__item {
    padding: 0;
  }

  .iris-about-values__video-action + .iris-about-values__item {
    padding-top: 44px;
    border-top: 1px solid rgba(255, 255, 255, .16);
  }

  .iris-about-values__video-action {
    padding: 6px 0;
  }
}

#terms-error {
  font-weight: 900;
  font-size: 12px;
  line-height: 1.4;
  font-family: "Nunito Sans", sans-serif;
}
