

:root {
  --clr-orange:       #FD8000;
  --clr-orange-dim:   rgba(253,128,0,.12);
  --clr-orange-glow:  rgba(253,128,0,.32);
  --clr-blue:         #173C66;
  --clr-blue-dark:    #0D2444;
  --clr-blue-dim:     rgba(23,60,102,.1);
  --clr-red:          #B60606;
  --clr-red-dark:     #8B0303;
  --clr-red-dim:      rgba(182,6,6,.08);
  --clr-red-mid:      rgba(182,6,6,.18);

    --clr-surface:      #FFFFFF;
  --clr-surface-2:    #F8F4F4;
  --clr-border:       #EDE0E0;
  --clr-border-2:     #D8C4C4;

    --clr-text:         #1A0505;
  --clr-text-muted:   #6B5555;
  --clr-text-faint:   #AFA0A0;

    --clr-on-dark:      #FFFFFF;
  --clr-on-dark-muted: rgba(255,255,255,.78);
  --clr-on-dark-faint: rgba(255,255,255,.42);

  --font-display: 'Syne', sans-serif;
  --font-body:    'Inter', sans-serif;
  --font-stat:    'Bebas Neue', cursive;

  --space-lg:  5rem;
  --space-xl:  7rem;

  --r-sm:   10px;
  --r-md:   18px;
  --r-lg:   28px;
  --r-xl:   40px;
  --r-pill: 999px;

  --ease:   cubic-bezier(.4,0,.2,1);
  --t:      .3s var(--ease);
  --t-slow: .7s var(--ease);

    --shadow-sm:    0 2px 12px rgba(0,0,0,.07);
  --shadow-md:    0 4px 24px rgba(0,0,0,.10);
  --shadow-lg:    0 8px 48px rgba(0,0,0,.14);
  --shadow-card:  0 2px 16px rgba(0,0,0,.08);
  --shadow-hover: 0 12px 40px rgba(0,0,0,.15);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; overscroll-behavior-y: contain; }
body {
  font-family: var(--font-body);
  background: #FFFFFF;
  color: var(--clr-text);
  overflow-x: hidden;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  will-change: transform;
  transform: translateZ(0);
  background:
    radial-gradient(ellipse 160% 120% at -20% -15%, rgba(182,6,6,.28)   0%, transparent 55%),
    radial-gradient(ellipse 130% 100% at 105%  105%, rgba(253,128,0,.28)  0%, transparent 52%),
    radial-gradient(ellipse  90%  75% at 102%    2%, rgba(253,128,0,.18)  0%, transparent 52%),
    radial-gradient(ellipse  90%  70% at  -5%  110%, rgba(182,6,6,.18)   0%, transparent 55%),
    radial-gradient(ellipse  70%  60% at  50%   50%, rgba(23,60,102,.08)  0%, transparent 60%),
    #FFFFFF;
}

img  { display: block; max-width: 100%; }
a    { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }
button, input, textarea, select { font: inherit; outline: none; border: none; background: none; }

.noise-layer::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .03;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 200px;
}

.container { width: 100%; max-width: 1200px; margin-inline: auto; padding-inline: 1.25rem; }
.section    { padding-block: var(--space-lg); }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

.tag {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .3rem .85rem;
  border-radius: var(--r-pill);
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.28);
  font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: #fff;
}
.tag--dark {
  background: var(--clr-red-dim);
  border-color: var(--clr-red-mid);
  color: var(--clr-red);
}
.tag--blue {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.2);
  color: rgba(255,255,255,.9);
}
.tag svg { width: 12px; height: 12px; }

.icon {
  display: inline-flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.icon svg { display: block; }

.reveal {
  opacity: 0; transform: translateY(28px);
  transition: opacity .75s var(--ease), transform .75s var(--ease);
}
.reveal.in { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .08s; }
.delay-2 { transition-delay: .16s; }
.delay-3 { transition-delay: .24s; }
.delay-4 { transition-delay: .32s; }
.delay-5 { transition-delay: .40s; }

.btn {
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .85rem 1.8rem;
  border-radius: var(--r-pill);
  font-size: .9rem; font-weight: 600;
  cursor: pointer; transition: var(--t);
  position: relative; overflow: hidden; white-space: nowrap;
}
.btn::after {
  content: ''; position: absolute; inset: 0;
  background: rgba(0,0,0,.08); opacity: 0; transition: opacity .2s;
}
.btn:hover::after { opacity: 1; }
.btn:hover { transform: translateY(-2px); }
.btn svg { width: 16px; height: 16px; flex-shrink: 0; }

.btn-primary {
  background: var(--clr-orange); color: #fff;
  box-shadow: 0 4px 20px var(--clr-orange-glow);
}
.btn-primary:hover { background: #e87500; box-shadow: 0 8px 32px var(--clr-orange-glow); }

.btn-outline {
  background: rgba(255,255,255,.12); color: #fff;
  border: 1.5px solid rgba(255,255,255,.38);
}
.btn-outline:hover { background: rgba(255,255,255,.22); border-color: rgba(255,255,255,.7); }
.btn-ghost {
  background: transparent; color: var(--clr-text);
  border: 1.5px solid rgba(10,20,42,.25);
}
.btn-ghost:hover { background: rgba(10,20,42,.06); border-color: rgba(10,20,42,.45); color: var(--clr-text); }

.btn-outline-dark {
  background: transparent; color: var(--clr-text);
  border: 1.5px solid var(--clr-border-2);
}
.btn-outline-dark:hover { border-color: var(--clr-red); color: var(--clr-red); }

.btn-white { background: #fff; color: var(--clr-orange); box-shadow: var(--shadow-md); }
.btn-white:hover { box-shadow: var(--shadow-lg); }

.btn-sm { padding: .6rem 1.2rem; font-size: .8rem; }

.nav {
  position: fixed; top: 0.5rem;
  left: 50%; transform: translateX(-50%) translateZ(0);
  z-index: 1000;
  width: calc(100% - 2rem); max-width: 1160px;
  will-change: transform;
  animation: navSlideDown .6s .1s cubic-bezier(.4,0,.2,1) both;
}
.nav__inner {
  display: flex; align-items: center; justify-content: space-between;
  padding: .65rem 1rem;
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1px solid rgba(255,255,255,.75);
  border-radius: var(--r-pill);
  box-shadow: 0 4px 24px rgba(0,0,0,.08);
  transition: var(--t);
}
.nav.scrolled .nav__inner {
  background: rgba(255,255,255,.80);
  border-color: rgba(255,255,255,.9);
  box-shadow: 0 8px 40px rgba(0,0,0,.12);
}

.nav__logo { display: flex; align-items: center; gap: .6rem; flex-shrink: 0; }
.nav__logo img { height: 34px; width: auto; object-fit: contain; }
.nav__logo-text {
  font-family: var(--font-display); font-size: .8rem; font-weight: 700;
  line-height: 1.2; color: var(--clr-text); display: none;
}

.nav__links { display: none; align-items: center; gap: .15rem; }
.nav__links a {
  padding: .4rem .85rem; border-radius: var(--r-pill);
  font-size: .83rem; font-weight: 600;
  color: rgba(10,20,42,.88); transition: var(--t);
}
.nav__links a:hover, .nav__links a.active {
  color: #fff; background: var(--clr-red);
}

.nav__cta { display: flex; align-items: center; gap: .5rem; }
.nav__burger {
  display: flex; flex-direction: column; gap: 5px;
  cursor: pointer; padding: .5rem; border-radius: var(--r-sm);
}
.nav__burger span {
  display: block; width: 22px; height: 2px;
  background: var(--clr-text); border-radius: 2px; transition: var(--t);
}
.nav__burger.open span:nth-child(1) { transform: rotate(45deg) translate(5px,5px); }
.nav__burger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav__burger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px,-5px); }

.nav__drawer {
  position: fixed; inset: 0;
  background: rgba(8,16,34,.98);
  backdrop-filter: blur(24px);
  z-index: 999;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .4rem;
  opacity: 0; pointer-events: none; transition: opacity .3s var(--ease);
}
.nav__drawer.open { opacity: 1; pointer-events: all; }
.nav__drawer a {
  font-family: var(--font-display); font-size: 2rem; font-weight: 700;
  color: rgba(255,255,255,.6); padding: .5rem 2rem; transition: var(--t);
}
.nav__drawer a:hover { color: #fff; }
.nav__drawer .btn { margin-top: .75rem; }

.hero {
  position: relative;
  min-height: 100svh;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  overflow: hidden; padding-top: 5rem;
  background: linear-gradient(150deg, #060D1C 0%, #0C1B38 45%, #122244 75%, #060D1C 100%);
}

.hero__bg {
  position: absolute; inset: 0;
  background-image: url('../images/female-collecting-package-hero.webp');
  background-size: cover; background-position: center center;
  opacity: .22;
}
@media (max-width: 768px) {
  .hero__bg {
    background-image: url('../images/female-collecting-package-hero-phone.webp');
  }
  .fill-title .fill-word { display: block; }
  .fill-title .fill-space,
  .fill-title br { display: none; }
  .fill-title .accent { display: block; }
}

.hero::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 70% at 50% 40%, rgba(253,128,0,.1) 0%, transparent 70%);
  pointer-events: none; z-index: 1;
}
.hero::after { display: none; }

.hero__content { position: relative; z-index: 3; text-align: center; padding-inline: 1.25rem; max-width: 900px; }

.hero__eyebrow { margin-bottom: 1.25rem; }

.hero__title {
  font-family: var(--font-display);
  font-size: clamp(3.3rem, 12vw, 7.5rem);
  font-weight: 800; line-height: .96; letter-spacing: -.025em;
  color: #fff; margin-bottom: 1.25rem;
  text-shadow: 0 4px 32px rgba(0,0,0,.25);
}
.hero__title .accent { color: var(--clr-orange); }

@keyframes dotPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(253,128,0,.6); }
  50%       { box-shadow: 0 0 0 5px rgba(253,128,0,0); }
}
@keyframes navSlideDown {
  from { opacity: 0; transform: translateX(-50%) translateY(-100%); }
  to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}
@keyframes rateItemIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes word-fill {
  to { background-position: 0% 0; }
}
@keyframes orange-clip-fill {
  to { clip-path: inset(0 0% 0 0); }
}
.fill-word {
  display: inline-block;
  background: linear-gradient(to right, #fff 50%, rgba(255,255,255,0.08) 50%);
  background-size: 200% 100%;
  background-position: 100% 0;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: word-fill 0.8s ease-in-out forwards;
}
.fill-word--red {
  background-image: linear-gradient(to right, #FF1744 50%, rgba(255,23,68,0.08) 50%);
}
.fill-title .accent .fill-word {
  background: none;
  -webkit-background-clip: unset;
  background-clip: unset;
  color: #FD8000;
  clip-path: inset(0 100% 0 0);
  animation: orange-clip-fill 0.8s ease-in-out forwards;
}
.fill-space { display: inline-block; width: .28em; }
.hero__title .ghost {
  -webkit-text-stroke: 2px rgba(255,255,255,.25);
  color: transparent;
}

.hero__sub {
  font-size: clamp(.95rem, 2.5vw, 1.18rem);
  color: rgba(255,255,255,.8);
  max-width: 520px; margin-inline: auto; margin-bottom: 2rem; line-height: 1.75;
}
.hero__sub-highlight { color: var(--clr-orange); font-weight: 800; }

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

.hero__stats { display: flex; gap: 1.5rem; justify-content: center; flex-wrap: wrap; }
.hero__stat  { display: flex; align-items: center; gap: .5rem; font-size: .8rem; color: rgba(255,255,255,.78); font-weight: 500; }
.hero__stat-dot {
  width: 6px; height: 6px; border-radius: 50%; background: var(--clr-orange);
  flex-shrink: 0; box-shadow: 0 0 8px var(--clr-orange);
}

.hero__scroll {
  position: absolute; bottom: 2.5rem; left: 50%; transform: translateX(-50%);
  z-index: 3; display: flex; flex-direction: column; align-items: center; gap: .4rem;
  color: rgba(255,255,255,.38); font-size: .7rem; letter-spacing: .12em; text-transform: uppercase;
  animation: scrollBounce 2s infinite;
}
.hero__scroll-line { width: 1px; height: 40px; background: linear-gradient(to bottom, rgba(255,255,255,.5), transparent); }
@keyframes scrollBounce {
  0%,100% { transform: translateX(-50%) translateY(0); }
  50%      { transform: translateX(-50%) translateY(6px); }
}

.store-strip {
  background: var(--clr-orange);
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
  padding: 1.1rem 1.5rem;
}
.store-strip__inner {
  max-width: 960px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.store-strip__logo-slot {
  flex-shrink: 0;
  width: 74px; height: 74px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: none;
}
.store-strip__logo {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 18px;
}
@keyframes store-logo-slide-in {
  from { transform: translateY(100%); opacity: 0; }
  to   { transform: translateY(0);    opacity: 1; }
}
@keyframes store-logo-slide-out {
  from { transform: translateY(0);     opacity: 1; }
  to   { transform: translateY(-100%); opacity: 0; }
}
.store-strip__logo.slide-out {
  animation: store-logo-slide-out .14s ease forwards;
}
.store-strip__logo.slide-in {
  animation: store-logo-slide-in .2s cubic-bezier(.2,0,.4,1) forwards;
}
.store-strip__text {
  flex: 1;
  font-size: clamp(1rem, 2.2vw, 1.18rem);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
.store-strip__text strong { color: #fff; }
.store-strip__cta {
  flex-shrink: 0;
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .6rem 1.35rem;
  border: 1.5px solid rgba(255,255,255,.6);
  border-radius: var(--r-pill);
  color: #fff;
  font-size: .88rem; font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: var(--t);
}
.store-strip__cta:hover { background: rgba(255,255,255,.15); border-color: #fff; }
@media (max-width: 640px) {
  .store-strip { padding: 1.5rem 1.25rem; }
  .store-strip__inner { flex-direction: column; text-align: center; gap: 1rem; }
  .store-strip__logo-slot { width: 68px; height: 68px; }
  .store-strip__text { font-size: .95rem; }
  .store-strip__cta { display: inline-flex; }
}

.section-header { text-align: center; margin-bottom: 3.5rem; }
.section-header .tag { margin-bottom: 1rem; }

.section-title {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 5vw, 3rem);
  font-weight: 800; line-height: 1.08; letter-spacing: -.02em;
  color: #fff;   margin-bottom: .75rem;
}
.section-title .accent { color: var(--clr-orange); }

.section-title--dark         { color: var(--clr-text); }
.section-title--dark .accent { color: var(--clr-red); }

.section-sub { font-size: .95rem; line-height: 1.75; max-width: 520px; margin-inline: auto; color: var(--clr-on-dark-muted); }
.section-sub--dark { color: var(--clr-text-muted); }

.gradient-divider { height: 1px; background: linear-gradient(90deg, transparent, rgba(0,0,0,.1), transparent); }
.gradient-divider--light { background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent); }

.hiw { position: relative; }

.hiw__panel-1-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.5rem;
  width: 100%;
}
.hiw__panel-1-header {
  text-align: center;
  margin-bottom: .25rem;
}
.hiw__panel-1-header .tag { margin-bottom: .5rem; }
.hiw__panel-1-header .section-title--dark { margin-bottom: 0; }

.hiw__panel {
  position: sticky; top: 0;
  height: min(100svh, 820px);
  display: flex; align-items: center;
  overflow: hidden;
  padding-bottom: 6rem;
}
.hiw__panel--1 { background: transparent; z-index: 10; align-items: flex-start; padding-top: var(--space-lg); }
.hiw__panel--2 { background: linear-gradient(150deg, #6B0000 0%, #A80000 40%, #B60606 70%, #8A0000 100%); z-index: 20; border-radius: 2rem 2rem 0 0; }
.hiw__panel--3 { background: linear-gradient(150deg, #071828 0%, #0F2E52 40%, #1A4878 70%, #0D2444 100%); z-index: 30; border-radius: 2rem 2rem 0 0; margin-top: -2rem; }

.hiw__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3.5rem;
  align-items: center;
  width: 100%;
}

.hiw__lottie-wrap {
  position: relative; z-index: 2;
  width: min(420px, 100%);
  aspect-ratio: 1 / 1;
  margin-inline: auto;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; transform: scale(.88);
  transition: opacity .7s .15s var(--ease), transform .7s .15s var(--ease);
}
.hiw__panel.content-visible .hiw__lottie-wrap { opacity: 1; transform: scale(1); }

.hiw__panel--1 .hiw__lottie-wrap { background: radial-gradient(circle, rgba(251,188,148,.38) 0%, rgba(251,188,148,.06) 68%); }
.hiw__panel--2 .hiw__lottie-wrap { background: radial-gradient(circle, rgba(0,0,0,.32) 0%, rgba(0,0,0,.04) 68%); }
.hiw__panel--3 .hiw__lottie-wrap { background: radial-gradient(circle, rgba(255,255,255,.18) 0%, rgba(255,255,255,.02) 68%); }

.hiw__lottie-wrap > [data-lottie] { width: 78%; height: 78%; }
.hiw__lottie-wrap svg { width: 100% !important; height: 100% !important; overflow: visible !important; }

.hiw__content {
  position: relative; z-index: 2;
  opacity: 0; transform: translateY(36px);
  transition: opacity .8s var(--ease), transform .8s var(--ease);
}
.hiw__panel.content-visible .hiw__content { opacity: 1; transform: translateY(0); }

.hiw__step-tag {
  display: inline-flex;
  font-size: .7rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase;
  padding: .3rem .9rem; border-radius: var(--r-pill);
  margin-bottom: 1rem;
}
.hiw__panel--1 .hiw__step-tag { background: transparent; border: 1.5px solid var(--clr-red); color: var(--clr-red); }
.hiw__panel--2 .hiw__step-tag { background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.28); color: rgba(255,255,255,.85); }
.hiw__panel--3 .hiw__step-tag { background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.28); color: rgba(255,255,255,.85); }

.hiw__heading {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 4.5vw, 3.8rem);
  font-weight: 900; line-height: 1.0;
  letter-spacing: -0.02em;
  margin: 0 0 1.1rem;
}
.hiw__panel--1 .hiw__heading { color: var(--clr-text); }
.hiw__panel--2 .hiw__heading,
.hiw__panel--3 .hiw__heading { color: #fff; }

.hiw__accent      { color: var(--clr-orange); }
.hiw__accent--red { color: var(--clr-red); }

.hiw__desc {
  font-size: 1rem; line-height: 1.8; max-width: 480px; margin: 0 0 1.25rem;
}
.hiw__panel--1 .hiw__desc { color: var(--clr-text-muted); }
.hiw__panel--2 .hiw__desc,
.hiw__panel--3 .hiw__desc { color: rgba(255,255,255,.7); }

.hiw__bullets {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-direction: column; gap: .65rem;
}
.hiw__bullets li {
  display: flex; align-items: center; gap: .6rem;
  font-size: .95rem;
}
.hiw__panel--1 .hiw__bullets li { color: var(--clr-text-muted); }
.hiw__panel--2 .hiw__bullets li,
.hiw__panel--3 .hiw__bullets li { color: rgba(255,255,255,.8); }
.hiw__bullets li svg { flex-shrink: 0; width: 17px; height: 17px; color: var(--clr-orange); }

.hiw__ghost {
  position: absolute;
  bottom: -0.3rem; right: -0.04em;
  font-family: var(--font-display);
  font-size: clamp(9rem, 20vw, 16rem);
  font-weight: 900; line-height: 1; letter-spacing: -0.03em;
  color: rgba(0,0,0,.05);
  pointer-events: none; user-select: none; z-index: 1;
}
.hiw__panel--2 .hiw__ghost { right: auto; left: -0.04em; color: rgba(255,255,255,.07); }
.hiw__panel--3 .hiw__ghost { color: rgba(255,255,255,.09); }

.hiw__progress {
  position: absolute; right: 2.5rem; top: 50%;
  transform: translateY(-50%);
  display: flex; flex-direction: column; align-items: center;
  z-index: 5;
}
.hiw__progress::before {
  content: '';
  position: absolute; top: 8px; bottom: 8px;
  left: 50%; transform: translateX(-50%);
  width: 1.5px; background: rgba(0,0,0,.13); z-index: -1;
}
.hiw__panel--2 .hiw__progress::before,
.hiw__panel--3 .hiw__progress::before { background: rgba(255,255,255,.25); }

.hiw__dot {
  width: 10px; height: 10px; border-radius: 50%;
  background: transparent;
  border: 2px solid rgba(0,0,0,.18);
  margin: 10px 0; flex-shrink: 0;
}
.hiw__panel--2 .hiw__dot,
.hiw__panel--3 .hiw__dot { border-color: rgba(255,255,255,.35); }
.hiw__dot--on {
  background: var(--clr-orange); border-color: var(--clr-orange);
  width: 13px; height: 13px; margin: 8.5px -1.5px;
  animation: dotPulse 2s ease-in-out infinite;
}

@media (max-width: 1024px) and (min-width: 768px) {
  .hiw__inner { gap: 2rem; }
  .hiw__lottie-wrap { width: min(320px, 100%); }
  .hiw__panel--2 { border-radius: 1.5rem 1.5rem 0 0; }
  .hiw__panel--3 { border-radius: 1.5rem 1.5rem 0 0; margin-top: -1.5rem; }
  .hiw__panel { padding-bottom: 4rem; }
  .hiw__progress { display: none; }
}

@media (max-width: 767px) {
  .hiw__panel {
    padding-block: 4.5rem 5rem;
    border-radius: 1.5rem 1.5rem 0 0;
  }
  .hiw__panel--1 { border-radius: 0; height: auto; }
  .hiw__panel--3 { margin-top: -1.5rem; }
  .hiw__inner { grid-template-columns: 1fr; gap: 1.5rem; }
  .hiw__inner .hiw__lottie-wrap,
  .hiw__inner .hiw__content,
  .hiw__inner--reverse .hiw__lottie-wrap,
  .hiw__inner--reverse .hiw__content { order: 0; }
  .hiw__panel--2 .hiw__lottie-wrap { order: -1; }
  .hiw__lottie-wrap { width: min(260px, 80%); }
  .hiw__ghost { display: none; }
  .hiw__progress { display: none; }
}

@media (max-height: 700px) {
  .hiw__panel {
    position: relative;
    height: auto;
    min-height: 0;
    padding-block: 4rem 5rem;
  }
  .hiw__panel--2, .hiw__panel--3 { border-radius: 0; }
  .hiw__lottie-wrap { width: min(440px, 48%); }
  .hiw__panel--2 .hiw__lottie-wrap { order: -1; }
  .hiw__ghost { display: none; }
  .hiw__progress { display: none; }
}
@media (max-height: 700px) and (max-width: 767px) {
  .hiw__lottie-wrap { width: min(300px, 72%); }
}

.schedule {
  background: transparent;
}
.schedule .section-title { color: var(--clr-text); }
.schedule .section-title .accent { color: var(--clr-red); }
.schedule .section-sub { color: var(--clr-text-muted); }
.schedule .tag {
  background: var(--clr-red-dim); color: var(--clr-red);
  border-color: var(--clr-red-mid);
}

.sched-board {
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.55);
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,.07);
}
.sched-board__header {
  display: flex; flex-direction: column; gap: .45rem;
  padding: 1rem 1.5rem;
  background: var(--clr-red-dim);
  border-bottom: 1px solid var(--clr-red-mid);
}
.sched-board__header-top {
  display: flex; align-items: center; gap: .55rem;
  font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: var(--clr-red);
}
.sched-board__header-top svg { flex-shrink: 0; stroke: var(--clr-red); }
.sched-board__header-meta {
  display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .65rem;
  padding-left: 1.6rem;
}
.sched-board__header-meta span {
  font-size: .68rem; font-weight: 600; color: var(--clr-text-muted);
}
.sched-board__header-meta strong { color: var(--clr-red); }
.sched-board__header-meta .sep { color: var(--clr-border-2); user-select: none; }

.sched-board__tip {
  display: flex; align-items: flex-start; gap: .5rem;
  padding: .65rem 1.1rem;
  background: rgba(182,6,6,.05); border-bottom: 1px solid rgba(182,6,6,.1);
  font-size: .76rem; color: var(--clr-text-muted); line-height: 1.5;
}
.sched-board__tip svg { flex-shrink: 0; margin-top: .1rem; stroke: var(--clr-red); opacity: .7; }
.sched-board__tip strong { color: var(--clr-text); font-weight: 700; }

.sched-strip {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: .4rem;
  padding: 1.25rem .75rem 1.5rem;
}

.sched-day {
  display: flex; flex-direction: column; align-items: center;
  gap: .55rem;
  padding: 1.1rem .35rem 1.25rem;
  border-radius: var(--r-md);
  opacity: 0; transform: translateY(16px) scale(.96);
  transition: background .15s, opacity .45s cubic-bezier(.4,0,.2,1), transform .45s cubic-bezier(.4,0,.2,1);
}
.sched-day.in { opacity: 1; transform: none; }
.sched-day:not(.sched-day--off):hover { background: rgba(0,0,0,.025); }
.sched-day--today {
  background: var(--clr-red-dim);
  box-shadow: 0 0 0 1.5px var(--clr-red-mid);
}
.sched-day--off { opacity: .35; }

.sched-day__label {
  font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: var(--clr-text-muted);
}
.sched-day--today .sched-day__label { color: var(--clr-red); }

.sched-day__today-tag {
  font-size: .55rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  color: var(--clr-red);
  background: var(--clr-red-dim);
  border: 1px solid var(--clr-red-mid);
  border-radius: var(--r-pill);
  padding: .12rem .45rem;
  line-height: 1.5;
}

.sched-day__svc {
  display: flex; flex-direction: column; align-items: center; gap: .3rem; width: 100%;
}

.sched-day__none {
  color: var(--clr-text-faint); font-size: 1rem; margin-top: .25rem;
}

.sched-chip {
  display: flex; flex-direction: column; align-items: center; gap: .2rem;
  width: 100%; padding: .5rem .2rem .45rem;
  border-radius: 6px;
  font-size: .58rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
}
.sched-chip--air {
  background: var(--clr-red-dim); color: var(--clr-red);
  border: 1px solid var(--clr-red-mid);
}
.sched-chip--air svg { stroke: var(--clr-red); }
.sched-chip--sea {
  background: rgba(23,60,102,.07); color: #1A3F6A;
  border: 1px solid rgba(23,60,102,.18);
}
.sched-chip--sea svg { stroke: #1A3F6A; }

@media (max-width: 560px) {
  .sched-strip { gap: .2rem; padding: .75rem .4rem 1rem; }
  .sched-day { padding: .8rem .15rem 1rem; gap: .4rem; }
  .sched-day__label { font-size: .58rem; letter-spacing: .06em; }
  .sched-day__today-tag { display: none; }
  .sched-chip { padding: .45rem .15rem; }
  .sched-chip span { display: none; }
}


.services {
  background: linear-gradient(150deg, #6B0000 0%, #A80000 40%, #B60606 70%, #8A0000 100%);
}

.services .tag--dark {
  background: rgba(255,255,255,.15); color: #fff;
  border-color: rgba(255,255,255,.3);
}
.services .section-title--dark               { color: #fff; }
.services .section-title--dark .accent       { color: #fff; }
.services .section-sub--dark                 { color: rgba(255,255,255,.78); }

.svc-rows {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  max-width: 900px;
  margin-inline: auto;
}

.svc-row {
  opacity: 0; transform: translateY(32px);
  transition: opacity .7s cubic-bezier(.4,0,.2,1), transform .7s cubic-bezier(.4,0,.2,1), box-shadow .3s, background .3s;
}
.svc-row.in { opacity: 1; transform: none; }

.svc-row {
  display: flex;
  flex-direction: column;
  background: #071828;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow:
    0 8px 0 2px rgba(253,128,0,.55),
    0 15px 0 3px rgba(239,68,68,.55),
    0 22px 40px rgba(0,0,0,.55);
  position: relative;
}
@media (min-width: 768px) {
  .svc-row { flex-direction: row; min-height: 400px; }
}

.svc-row--air::before, .svc-row--sea::before,
.svc-row--card::before, .svc-row--delivery::before { display: none; }


.svc-row__lottie-tile {
  width: 100%;
  display: flex; align-items: center; justify-content: center;
  position: relative;
  border-bottom: 1px solid rgba(255,255,255,.07);
  flex-shrink: 0;
}
.svc-row--air      .svc-row__lottie-tile,
.svc-row--sea      .svc-row__lottie-tile,
.svc-row--card     .svc-row__lottie-tile,
.svc-row--delivery .svc-row__lottie-tile {
  background: radial-gradient(circle at 50% 55%, #FED7AA, #FFF7ED 75%);
  border-bottom: 1px solid rgba(255,255,255,.07);
}
@media (min-width: 768px) {
  .svc-row__lottie-tile {
    width: 42%; flex-shrink: 0; border-bottom: none;
    border-right: 1px solid rgba(255,255,255,.07);
  }
  .svc-row__lottie { max-width: 300px; }
}

.svc-row__lottie {
  width: 70%;
  max-width: 260px;
  aspect-ratio: 1;
  height: auto;
}
.svc-row__lottie svg {
  width: 100% !important; height: 100% !important; overflow: visible !important;
}

.svc-row__body {
  flex: 1;
  padding: 1.75rem 1.75rem 2rem;
  display: flex; flex-direction: column; gap: .65rem;
  position: relative;
  background-size: cover;
  background-position: center;
}
.svc-row--air      .svc-row__body { background-image: linear-gradient(to bottom, rgba(7,24,40,.88) 0%, rgba(15,46,82,.75) 50%, rgba(7,24,40,.88) 100%), url('../images/services/air-shipping.webp'); }
.svc-row--delivery .svc-row__body { background-image: linear-gradient(to bottom, rgba(7,24,40,.88) 0%, rgba(15,46,82,.75) 50%, rgba(7,24,40,.88) 100%), url('../images/services/local-delivery.webp'); }

.svc-row__meta {
  display: flex; align-items: center; gap: .7rem; flex-wrap: wrap;
}
.svc-row__title {
  font-family: var(--font-display); font-size: 1.4rem; font-weight: 700; color: #fff;
  text-shadow: 0 1px 8px rgba(0,0,0,.8);
}
.svc-row__freq {
  font-size: .67rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: .25rem .75rem; border-radius: var(--r-pill);
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(12px) saturate(160%);
  -webkit-backdrop-filter: blur(12px) saturate(160%);
  border: 1px solid rgba(255,255,255,.45);
  color: #fff;
}

.svc-row__desc {
  font-size: .92rem; color: rgba(255,255,255,.88); line-height: 1.65; margin: 0;
  text-shadow: 0 1px 6px rgba(0,0,0,.7);
}
.svc-row__list {
  list-style: none; padding: 0; margin: .25rem 0 0;
  display: flex; flex-direction: column; gap: .5rem;
}
.svc-row__list li {
  display: flex; align-items: center; gap: .55rem;
  font-size: .9rem; color: rgba(255,255,255,.88); font-weight: 500;
  text-shadow: 0 1px 8px rgba(0,0,0,.9);
}
.svc-row__icon-wrap {
  flex-shrink: 0;
  width: 24px; height: 24px; border-radius: 50%;
  background: var(--clr-orange);
  display: flex; align-items: center; justify-content: center;
}
.svc-row__icon-wrap svg { width: 13px; height: 13px; stroke: #fff; flex-shrink: 0; }

.svc-row__steps {
  list-style: none; padding: 0; margin: .25rem 0 0;
  display: flex; flex-direction: column; gap: .5rem;
}
.svc-row__steps li {
  display: flex; align-items: center; gap: .65rem;
  font-size: .9rem; color: rgba(255,255,255,.88); font-weight: 500;
}
.svc-row__step-num { text-shadow: none; }
.svc-row__step-num {
  flex-shrink: 0;
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--clr-orange);
  color: #fff; font-size: .72rem; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  line-height: 1;
}

.barrel-promo {
  background: linear-gradient(150deg, #071828 0%, #0F2E52 45%, #1A4878 75%, #071828 100%);
  padding-block: var(--space-lg);
  position: relative; overflow: hidden;
}
.barrel-promo::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 60% 80% at 100% 50%, rgba(253,128,0,.08) 0%, transparent 60%),
    radial-gradient(ellipse 50% 60% at 0% 50%,   rgba(255,255,255,.04) 0%, transparent 55%);
}

.barrel-promo__inner {
  display: grid; grid-template-columns: 1fr;
  gap: 2.5rem; align-items: center;
  position: relative; z-index: 1;
}
@media (min-width: 768px) {
  .barrel-promo__inner { grid-template-columns: 1fr 1.4fr; gap: 4rem; }
}

.barrel-promo__img-wrap {
  display: flex; align-items: center; justify-content: center;
}
.barrel-promo__img-wrap img {
  width: min(320px, 100%);
  max-height: 280px;
  object-fit: contain;
  filter: drop-shadow(0 20px 48px rgba(0,0,0,.5));
  animation: barrelFloat 4s ease-in-out infinite;
}
@media (min-width: 768px) {
  .barrel-promo__img-wrap img { max-height: none; }
}
@keyframes barrelFloat {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-12px); }
}

.barrel-promo__content {
  display: flex; flex-direction: column; gap: 1.25rem; align-items: flex-start;
}
@media (max-width: 767px) {
  .barrel-promo__img-wrap { width: 100%; }
  .barrel-promo__content { align-items: center; text-align: center; }
  .barrel-promo__vs { margin-inline: auto; }
  .barrel-promo__actions { justify-content: center; }
}

.barrel-promo__heading {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3.4rem);
  font-weight: 900; line-height: 1.05;
  color: #fff; margin: .5rem 0 0;
}
.barrel-promo__days {
  color: var(--clr-orange);
  display: block;
}

.barrel-promo__price-row {
  display: flex; align-items: center; gap: .75rem;
}
.barrel-promo__price-amount {
  font-family: var(--font-stat);
  font-size: clamp(3rem, 8vw, 5rem);
  font-weight: 900; color: #fff; line-height: 1;
}
.barrel-promo__price-meta {
  display: flex; flex-direction: column; gap: .1rem; align-items: flex-start;
}
.barrel-promo__price-usd {
  font-size: .72rem; font-weight: 800; letter-spacing: .1em;
  color: var(--clr-orange); text-transform: uppercase;
  background: rgba(253,128,0,.15); border: 1px solid rgba(253,128,0,.3);
  border-radius: var(--r-pill); padding: .15rem .55rem; display: inline-block;
}
.barrel-promo__price-label {
  font-size: .75rem; color: rgba(255,255,255,.5); font-weight: 600;
  letter-spacing: .05em;
}
.barrel-promo__price-notes {
  display: flex; flex-direction: column; gap: .4rem;
}
.barrel-promo__price-note {
  display: inline-flex; align-items: center; gap: .35rem;
  font-size: .72rem; color: rgba(255,255,255,.45); font-weight: 500;
}
.barrel-promo__price-note--highlight {
  color: rgba(253,128,0,.85); font-weight: 700;
}

.barrel-promo__desc {
  font-size: .95rem; color: rgba(255,255,255,.7); line-height: 1.75; max-width: 480px;
}
.barrel-promo__desc strong { color: #fff; font-weight: 700; }

.barrel-promo__vs {
  display: flex; align-items: center; gap: 1rem;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--r-md); padding: 1rem 1.25rem;
  backdrop-filter: blur(8px);
  align-self: stretch;
  max-width: 480px;
}
.barrel-promo__vs-item {
  display: flex; flex-direction: column; gap: .2rem; flex: 1; text-align: center;
}
.barrel-promo__vs-label {
  font-size: .8rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: rgba(255,255,255,.45);
}
.barrel-promo__vs-time {
  font-family: var(--font-stat); font-size: 2rem; color: #fff;
  white-space: nowrap;
}
.barrel-promo__vs-time--slow { color: rgba(255,255,255,.35); font-size: 2rem; }
.barrel-promo__vs-item--win .barrel-promo__vs-time { color: var(--clr-orange); }
.barrel-promo__vs-item--win .barrel-promo__vs-label { color: var(--clr-orange); }
.barrel-promo__vs-divider {
  font-size: .72rem; font-weight: 800; color: rgba(255,255,255,.25);
  text-transform: uppercase; letter-spacing: .08em; flex-shrink: 0;
}

.barrel-promo__actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.barrel-share-btn {
  background: rgba(255,255,255,.1);
  border: 1.5px solid rgba(255,255,255,.25);
  color: #fff; font-weight: 600;
  backdrop-filter: blur(8px);
}
.barrel-share-btn:hover { background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.5); }
.barrel-share-btn svg { width: 16px; height: 16px; }

.barrel-share-btn--copied {
  border-color: #10b981 !important;
  color: #10b981 !important;
}

.rates { background: transparent; }

.rates__grid {
  display: grid; gap: 1.5rem; grid-template-columns: 1fr;
  max-width: 620px; margin-inline: auto;
}

.rate-card {
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.55);
  border-radius: var(--r-lg); overflow: hidden;
  box-shadow: var(--shadow-card); transition: var(--t);
  display: flex; flex-direction: column;
}
.rate-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-3px); }

.rate-card__header {
  padding: 1.25rem 1.5rem; display: flex; align-items: center; gap: 1rem;
  border-bottom: 1px solid rgba(237,224,224,.7); background: rgba(248,244,244,.6);
  flex-wrap: wrap;
}
.rate-card__header-text { flex: 1; }
.rate-card__icon {
  width: 42px; height: 42px; border-radius: var(--r-sm); flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: var(--clr-red-dim); border: 1px solid var(--clr-red-mid); color: var(--clr-red);
}
.rate-card__icon svg { width: 20px; height: 20px; }
.rate-card__title { font-family: var(--font-display); font-size: 1.2rem; font-weight: 700; color: var(--clr-text); }
.rate-card__sub   { font-size: .8rem; color: var(--clr-text-muted); margin-top: .1rem; }

.rate-card--sea {
  background: #071828; position: relative;
}
.rate-card__sea-bg {
  position: absolute; inset: 0;
  background-image: url('../images/rates-sea-bg-img.webp');
  background-size: cover; background-position: center 55%;
}
.rate-card__sea-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom,
    rgba(7,24,40,.88) 0%,
    rgba(15,46,82,.72) 40%,
    rgba(7,24,40,.92) 100%);
}
.rate-card--sea .rate-card__header {
  background: transparent; border-bottom: 1px solid rgba(255,255,255,.12);
  position: relative; z-index: 1;
}
.rate-card--sea .rate-card__icon {
  background: rgba(253,128,0,.15); border-color: rgba(253,128,0,.25); color: var(--clr-orange);
}
.rate-card--sea .rate-card__title { color: #fff; }
.rate-card--sea .rate-card__sub   { color: rgba(255,255,255,.5); }

.rate-card--sea .rate-calc {
  background: transparent; border-top: none; position: relative; z-index: 1;
}
.rate-card--sea .rate-calc .rate-calc__label  {
  color: rgba(255,255,255,.9);
  text-shadow: none;
}
.rate-card--sea .rate-calc .rate-calc__price  {
  color: var(--clr-orange);
  text-shadow: 0 1px 6px rgba(0,0,0,.3);
}
.rate-card--sea .rate-calc .rate-calc__currency { color: var(--clr-orange); }
.rate-card--sea .rate-calc .rate-calc__jmd-badge {
  background: rgba(15,46,82,.55); color: var(--clr-orange);
  border: 1px solid rgba(253,128,0,.35);
  backdrop-filter: blur(4px);
}
.rate-card--sea .rate-calc .rate-calc__unit   {
  color: rgba(255,255,255,.9);
  text-shadow: none;
}

.sea-rate__list {
  list-style: none; padding: 0;
  display: flex; flex-direction: column; gap: .55rem;
  margin: 1.5rem 0 1.25rem; text-align: left;
}
.sea-rate__list li {
  display: flex; align-items: center; gap: .55rem;
  font-size: .88rem; color: #fff;
  text-shadow: 0 1px 8px rgba(0,0,0,.9);
}
.sea-rate__list li svg { width: 14px; height: 14px; color: var(--clr-orange); flex-shrink: 0; stroke: var(--clr-orange); filter: drop-shadow(0 1px 3px rgba(0,0,0,.8)); }

.sea-rate__eta {
  display: flex; align-items: center; gap: .5rem;
  background: rgba(15,46,82,.45); border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--r-sm); padding: .75rem 1rem;
  font-size: .78rem; color: rgba(255,255,255,.85);
  backdrop-filter: blur(6px);
}
.sea-rate__eta strong { color: #fff; text-shadow: 0 1px 4px rgba(0,0,0,.6); }
.sea-rate__eta svg { flex-shrink: 0; stroke: var(--clr-orange); }

.rate-card--sea .rate-card__body { position: relative; z-index: 1; }

.rate-card--sea .rate-card__footer {
  background: rgba(7,24,40,.55); border-top-color: rgba(255,255,255,.1);
  color: rgba(255,255,255,.5); position: relative; z-index: 1;
}
.rate-card--sea .rate-card__footer svg { color: rgba(255,255,255,.3); }

.rate-card__body { padding: 1.5rem; flex: 1; }
.rate-calc-body  { padding: 0; }

.rate-calc {
  background: #fff;
  padding: 2rem 1.75rem 2.5rem; text-align: center; position: relative;
  border-top: 3px solid var(--clr-red);
}

.rate-calc__label {
  font-size: .7rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .1em; color: var(--clr-text-muted); margin-bottom: 1.25rem;
}

.rate-calc__display {
  display: flex; align-items: baseline; justify-content: center; gap: .5rem;
  margin-bottom: .35rem;
}
.rate-calc__price {
  font-family: var(--font-stat); font-size: clamp(2.8rem,8vw,4.8rem);
  font-weight: 900; color: var(--clr-red); line-height: 1;
  transition: color .15s;
}
.rate-calc__currency {
  font-size: .38em; font-weight: 700; vertical-align: super; margin-right: .04em; color: var(--clr-red);
}
.rate-calc__jmd-badge {
  display: inline-block; padding: .25rem .6rem; border-radius: 999px;
  background: rgba(182,6,6,.08); color: var(--clr-red);
  font-size: .72rem; font-weight: 800; letter-spacing: .06em;
  align-self: center; margin-bottom: .1rem;
}
.rate-calc__unit {
  font-size: .8rem; font-weight: 600; color: var(--clr-text-muted); margin-bottom: 1.75rem;
}

.rate-calc__slider-wrap { max-width: 380px; margin: 0 auto; }

.rate-calc__stepper-row {
  display: flex; align-items: center; justify-content: center; gap: 1.25rem;
  margin-bottom: 1.25rem;
}
.rate-calc__step {
  width: 36px; height: 36px; border-radius: 50%;
  background: var(--clr-red); color: #fff; border: none;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: var(--t); flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(182,6,6,.3);
  touch-action: manipulation;
}
.rate-calc__step:hover:not(:disabled) { background: #9a0505; transform: scale(1.08); }
.rate-calc__step:disabled { background: #ddd; box-shadow: none; cursor: default; }
.rate-calc__step svg { width: 16px; height: 16px; }

.rate-calc__weight-badge {
  display: flex; flex-direction: column; align-items: center; line-height: 1;
  min-width: 60px;
}
.rate-calc__weight-badge span {
  font-family: var(--font-stat); font-size: 2.4rem; font-weight: 900;
  color: var(--clr-text); line-height: 1;
}
.rate-calc__weight-badge small {
  font-size: .72rem; font-weight: 700; color: var(--clr-text-muted); letter-spacing: .06em;
}

#weight-slider {
  width: 100%; -webkit-appearance: none; appearance: none;
  height: 5px; border-radius: 3px; outline: none; cursor: pointer;
  background: #e8e8e8;
}
#weight-slider::-webkit-slider-thumb {
  -webkit-appearance: none; appearance: none;
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--clr-red); cursor: pointer;
  box-shadow: 0 2px 8px rgba(182,6,6,.4);
  border: 2px solid #fff;
  transition: transform .18s ease;
}
#weight-slider::-webkit-slider-thumb:hover { transform: scale(1.18); }
#weight-slider::-moz-range-thumb {
  width: 20px; height: 20px; border-radius: 50%; border: 2px solid #fff;
  background: var(--clr-red); box-shadow: 0 2px 8px rgba(182,6,6,.4);
}

.rate-calc__ticks {
  display: flex; justify-content: space-between; margin-top: .55rem; padding: 0 2px;
}
.rate-calc__tick {
  position: relative; width: 1px; height: 6px; background: #ddd;
}
.rate-calc__tick--label { height: 10px; background: #bbb; }
.rate-calc__tick--label::after {
  content: attr(data-lbl); position: absolute; top: 13px; left: 50%;
  transform: translateX(-50%); font-size: .62rem; color: var(--clr-text-muted);
  white-space: nowrap;
}

.rate-calc__range-labels {
  display: flex; justify-content: space-between;
  font-size: .68rem; color: var(--clr-text-muted); margin-top: 1.4rem;
  font-weight: 600;
}

.rate-list-toggle {
  display: flex; align-items: center; justify-content: center; gap: .35rem;
  margin: 1.25rem auto 0; padding: .45rem 1.1rem;
  background: none; border: 1px solid var(--clr-border); border-radius: 999px;
  font-size: .78rem; font-weight: 600; color: var(--clr-text-muted);
  cursor: pointer; transition: var(--t); touch-action: manipulation;
}
.rate-list-toggle:hover { border-color: var(--clr-red); color: var(--clr-red); }
.rate-list-toggle svg { transition: transform .25s; }
.rate-list-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }

.rate-list-wrap {
  display: none; padding: .5rem 1.5rem 1.75rem;
}
.rate-list-wrap.open { display: block; }
.rate-list-wrap.open .rate-list__item {
  animation: rateItemIn .3s cubic-bezier(.4,0,.2,1) both;
}
.rate-list-wrap.open .rate-list__item:nth-child(1)  { animation-delay: .02s; }
.rate-list-wrap.open .rate-list__item:nth-child(2)  { animation-delay: .04s; }
.rate-list-wrap.open .rate-list__item:nth-child(3)  { animation-delay: .06s; }
.rate-list-wrap.open .rate-list__item:nth-child(4)  { animation-delay: .08s; }
.rate-list-wrap.open .rate-list__item:nth-child(5)  { animation-delay: .10s; }
.rate-list-wrap.open .rate-list__item:nth-child(6)  { animation-delay: .12s; }
.rate-list-wrap.open .rate-list__item:nth-child(7)  { animation-delay: .14s; }
.rate-list-wrap.open .rate-list__item:nth-child(8)  { animation-delay: .16s; }
.rate-list-wrap.open .rate-list__item:nth-child(9)  { animation-delay: .18s; }
.rate-list-wrap.open .rate-list__item:nth-child(10) { animation-delay: .20s; }
.rate-list-wrap.open .rate-list__item:nth-child(11) { animation-delay: .22s; }
.rate-list-wrap.open .rate-list__item:nth-child(12) { animation-delay: .24s; }
.rate-list-wrap.open .rate-list__item:nth-child(13) { animation-delay: .26s; }
.rate-list-wrap.open .rate-list__item:nth-child(14) { animation-delay: .28s; }
.rate-list-wrap.open .rate-list__item:nth-child(15) { animation-delay: .30s; }
.rate-list-wrap.open .rate-list__item:nth-child(16) { animation-delay: .32s; }
.rate-list-wrap.open .rate-list__item:nth-child(17) { animation-delay: .34s; }
.rate-list-wrap.open .rate-list__item:nth-child(18) { animation-delay: .36s; }
.rate-list-wrap.open .rate-list__item:nth-child(19) { animation-delay: .38s; }
.rate-list-wrap.open .rate-list__item:nth-child(20) { animation-delay: .40s; }

.rate-list {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: .35rem .5rem;
}
@media (max-width: 480px) { .rate-list { grid-template-columns: repeat(2, 1fr); } }
.rate-list__item {
  display: flex; justify-content: space-between; align-items: baseline;
  font-size: .78rem; padding: .35rem .5rem;
  border-radius: var(--r-sm); background: rgba(182,6,6,.05);
}
.rate-list__item--active { background: rgba(182,6,6,.12); }
.rate-list__lbs { color: var(--clr-text-muted); font-weight: 500; }
.rate-list__price { font-weight: 700; color: var(--clr-text); font-size: .82rem; }

.rate-view-toggle {
  display: flex; gap: .3rem; margin-left: auto;
  background: var(--clr-surface-2); border: 1px solid var(--clr-border);
  border-radius: var(--r-pill); padding: .25rem;
}
@media (max-width: 600px) {
  .rate-card__header { flex-wrap: wrap; }
  .rate-view-toggle { margin-left: 0; width: 100%; justify-content: center; }
  .rate-view-btn { flex: 1; justify-content: center; }
  .rate-table__footer { flex-direction: column; align-items: center; gap: .6rem; }
}
.rate-view-btn {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .35rem .75rem; border-radius: var(--r-pill);
  font-size: .72rem; font-weight: 700; letter-spacing: .04em;
  border: none; background: transparent; color: var(--clr-text-muted);
  cursor: pointer; transition: var(--t); white-space: nowrap;
}
.rate-view-btn:hover { color: var(--clr-text); }
.rate-view-btn--active {
  background: #fff; color: var(--clr-red);
  box-shadow: 0 1px 4px rgba(0,0,0,.12);
}

.rate-table-body { padding: 1.25rem 1.5rem; }
.rate-table__search-wrap {
  display: flex; align-items: center; gap: .6rem;
  background: var(--clr-surface-2); border: 1px solid var(--clr-border);
  border-radius: var(--r-pill); padding: .55rem 1rem;
  margin-bottom: 1rem; transition: border-color .2s;
}
.rate-table__search-wrap:focus-within {
  border-color: var(--clr-red); box-shadow: 0 0 0 3px var(--clr-red-dim);
}
.rate-table__search-wrap svg { color: var(--clr-text-muted); flex-shrink: 0; }
.rate-table__search {
  flex: 1; border: none; background: transparent; outline: none;
  font-size: .88rem; color: var(--clr-text); font-family: var(--font-body);
}
.rate-table__search::placeholder { color: var(--clr-text-muted); }
.rate-table__search::-webkit-inner-spin-button,
.rate-table__search::-webkit-outer-spin-button { -webkit-appearance: none; }
.rate-table__clear {
  border: none; background: transparent; cursor: pointer; padding: 0;
  color: var(--clr-text-muted); display: flex; align-items: center;
}
.rate-table__clear:hover { color: var(--clr-red); }
.rate-table__wrap {
  border-radius: var(--r-sm); border: 1px solid var(--clr-border); overflow: hidden;
}
.rate-table {
  width: 100%; border-collapse: collapse; font-size: .85rem;
}
.rate-table thead th {
  position: sticky; top: 0; background: var(--clr-surface-2);
  padding: .6rem 1rem; text-align: left; font-size: .72rem;
  font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--clr-text-muted); border-bottom: 1px solid var(--clr-border);
  z-index: 1;
}
.rate-table tbody tr {
  border-bottom: 1px solid var(--clr-border);
  transition: background .15s;
}
.rate-table tbody tr:last-child { border-bottom: none; }
.rate-table tbody tr:hover { background: var(--clr-surface-2); }
.rate-table tbody td {
  padding: .55rem 1rem; color: var(--clr-text);
}
.rate-table tbody td:last-child { font-weight: 700; color: var(--clr-red); }
.rate-table__row--highlight {
  background: var(--clr-red-dim) !important;
  outline: 2px solid var(--clr-red-mid);
  outline-offset: -2px;
}
.rate-table__footer {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: .5rem; margin-top: 1rem;
}
.rate-table__info {
  font-size: .72rem; color: var(--clr-text-muted); font-weight: 500;
}
.rate-table__pager {
  display: flex; align-items: center; gap: .25rem;
}
.rt-page-btn {
  width: 32px; height: 32px; border-radius: var(--r-sm);
  border: 1px solid var(--clr-border); background: #fff;
  font-size: .78rem; font-weight: 600; color: var(--clr-text-muted);
  cursor: pointer; transition: var(--t); touch-action: manipulation;
  display: inline-flex; align-items: center; justify-content: center;
}
.rt-page-btn:hover:not(:disabled) { border-color: var(--clr-red); color: var(--clr-red); }
.rt-page-btn--active { background: var(--clr-red); border-color: var(--clr-red); color: #fff !important; }
.rt-page-btn:disabled { opacity: .35; cursor: default; }
.rt-page-ellipsis { font-size: .78rem; color: var(--clr-text-muted); padding: 0 .2rem; }

.rate-card__footer {
  padding: .9rem 1.5rem; background: var(--clr-surface-2);
  border-top: 1px solid var(--clr-border);
  font-size: .78rem; color: var(--clr-text-muted);
  display: flex; align-items: center; gap: .4rem; margin-top: auto;
}
.rate-card__footer span { color: var(--clr-red); font-weight: 700; }
.rate-card__footer svg { color: var(--clr-text-faint); flex-shrink: 0; }

.contact {
  background: linear-gradient(150deg, #6B0000 0%, #A80000 40%, #B60606 70%, #8A0000 100%);
}

.contact .tag--dark {
  background: rgba(255,255,255,.15); color: #fff;
  border-color: rgba(255,255,255,.3);
}
.contact .section-title--dark               { color: #fff; }
.contact .section-title--dark .accent       { color: #fff; }
.contact .section-sub--dark                 { color: rgba(255,255,255,.78); }

.contact__grid { display: grid; gap: 3rem; grid-template-columns: 1fr; }

.contact__map-wrap { margin-top: 2.5rem; }
.contact__map-title {
  display: inline-flex; align-items: center; gap: .5rem;
  font-family: var(--font-display); font-size: 1rem; font-weight: 700;
  color: #fff; margin-bottom: .75rem;
}
.contact__map-title svg { width: 16px; height: 16px; color: rgba(255,255,255,.7); flex-shrink: 0; }

.contact__map {
  margin-top: 0; border-radius: var(--r-lg); overflow: hidden;
  border: 1px solid rgba(255,255,255,.2); box-shadow: 0 8px 40px rgba(0,0,0,.35);
  line-height: 0;
}
.contact__map iframe { width: 100%; height: 340px; display: block; border: 0; }

.contact__info { display: flex; flex-direction: column; gap: 1rem; }
.contact__item {
  display: flex; gap: 1rem; align-items: flex-start;
  padding: 1.25rem;
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,.22); border-radius: var(--r-md);
  box-shadow: 0 4px 24px rgba(0,0,0,.18);
  opacity: 0; transform: translateX(-18px);
  transition: opacity .55s cubic-bezier(.4,0,.2,1), transform .55s cubic-bezier(.4,0,.2,1), background .3s, box-shadow .3s;
}
.contact__item.in { opacity: 1; transform: none; }
.contact__item:hover {
  background: rgba(255,255,255,.17);
  box-shadow: 0 8px 32px rgba(0,0,0,.25);
}
.contact__item-icon {
  width: 40px; height: 40px; border-radius: var(--r-sm);
  background: rgba(253,128,0,.18);
  border: 1px solid rgba(253,128,0,.5);
  box-shadow: 0 0 14px rgba(253,128,0,.35), inset 0 0 8px rgba(253,128,0,.12);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.contact__item-icon svg {
  width: 18px; height: 18px; color: #FD8000;
  filter: drop-shadow(0 0 5px rgba(253,128,0,.8));
}
.contact__item-label { font-size: .72rem; color: rgba(255,255,255,.78); letter-spacing: .08em; text-transform: uppercase; margin-bottom: .2rem; font-weight: 600; }
.contact__item-value { font-size: .9rem; font-weight: 500; color: #fff; }
.contact__item-value a:hover { color: rgba(255,255,255,.7); }

.contact__form-wrap {
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,.22);
  border-radius: var(--r-lg); padding: 2rem;
  box-shadow: 0 8px 40px rgba(0,0,0,.2);
}
.contact .form-title { color: #fff; }
.contact .form-sub   { color: rgba(255,255,255,.78); }

.form-title { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; color: var(--clr-text); margin-bottom: .4rem; }
.form-sub   { font-size: .85rem; color: var(--clr-text-muted); margin-bottom: 1.5rem; }

.form-group { margin-bottom: 1.1rem; }
.form-group label {
  display: block; font-size: .75rem; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  color: var(--clr-text-muted); margin-bottom: .45rem;
}
.contact .form-group label { color: rgba(255,255,255,.88); font-weight: 600; }
.form-group input,
.form-group textarea,
.form-group select {
  width: 100%; padding: .8rem 1rem;
  background: var(--clr-surface-2); border: 1.5px solid var(--clr-border);
  border-radius: var(--r-sm); color: var(--clr-text); font-size: .9rem; transition: var(--t);
}
.contact .form-group input,
.contact .form-group textarea,
.contact .form-group select {
  background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.22);
  color: #fff;
}
.form-group input::placeholder,
.form-group textarea::placeholder { color: var(--clr-text-faint); }
.contact .form-group input::placeholder,
.contact .form-group textarea::placeholder { color: rgba(255,255,255,.4); }
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus { border-color: var(--clr-orange); box-shadow: 0 0 0 3px var(--clr-orange-dim); }
.form-group textarea { resize: vertical; min-height: 120px; }

.form-row { display: grid; gap: 1rem; grid-template-columns: 1fr; }
.form-msg { padding: .85rem 1rem; border-radius: var(--r-sm); font-size: .85rem; margin-bottom: 1rem; display: none; }
.form-msg.success { background: #065f46; border: 1px solid #34d399; color: #d1fae5; display: block; font-weight: 600; }
.form-msg.error   { background: rgba(0,0,0,.5); border: 1px solid rgba(255,255,255,.3); color: #fff; display: block; font-weight: 600; }
.input--error {
  border-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,.25) !important;
  background: rgba(255,255,255,.18) !important;
}
.field-error {
  display: flex; align-items: center; gap: .3rem;
  font-size: .75rem; color: #fff; margin-top: .4rem;
  font-weight: 700; background: rgba(0,0,0,.3);
  padding: .3rem .6rem; border-radius: var(--r-sm);
  width: fit-content;
}
.field-error::before {
  content: '!';
  display: inline-flex; align-items: center; justify-content: center;
  width: 14px; height: 14px; border-radius: 50%;
  background: #fff; color: #b60606;
  font-size: .65rem; font-weight: 900; flex-shrink: 0;
}


.page-hero {
  position: relative; padding-top: 8rem; padding-bottom: 5rem;
  text-align: center;
  background: linear-gradient(150deg, #7A0202 0%, #B60606 55%, #CC1212 100%);
  overflow: hidden;
}
.page-hero__bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  opacity: .15;
}
.page-hero::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 120px;
  background: linear-gradient(to top, #fff, transparent); z-index: 1;
}
.page-hero__content { position: relative; z-index: 2; }
.page-hero__title {
  font-family: var(--font-display); font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 800; letter-spacing: -.025em; color: #fff; margin-bottom: .75rem;
  text-shadow: 0 4px 24px rgba(0,0,0,.2);
}
.page-hero__title .accent { color: var(--clr-orange); }
.page-hero__sub { font-size: .95rem; color: rgba(255,255,255,.78); }

.cta-banner {
  position: relative; overflow: hidden;
  padding: 5rem 0;
  background: url('https://images.unsplash.com/photo-1578575437130-527eed3abbec?auto=format&fit=crop&w=1200&q=50') center/cover;
}
.cta-banner::before {
  content: '';
  position: absolute; inset: 0;
  background: rgba(10,18,40,.55);
}
.cta-banner::after {
  content: '';
  position: absolute; inset: 0;
  background: rgba(255,255,255,.07);
  backdrop-filter: blur(18px) saturate(160%) brightness(.85);
  -webkit-backdrop-filter: blur(18px) saturate(160%) brightness(.85);
  border-top: 1px solid rgba(255,255,255,.18);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.cta-banner__bg { display: none; }
.cta-banner__container { position: relative; z-index: 2; text-align: center; }
.cta-banner__glass {
  display: contents;
}
.cta-banner__title {
  font-family: var(--font-display); font-size: clamp(1.6rem,5vw,2.6rem);
  font-weight: 800; color: #fff; margin-bottom: .75rem; line-height: 1.1;
}
.cta-banner__sub {
  color: rgba(255,255,255,.78); font-size: .95rem;
  max-width: 480px; margin-inline: auto; margin-bottom: 2rem; line-height: 1.7;
}
.cta-banner__actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }

.wa-fab {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 500;
  will-change: transform;
  transform: translateZ(0);
  height: 52px;
  padding: 0 1.25rem 0 1rem;
  border-radius: var(--r-pill);
  background: #25D366;
  color: #fff;
  display: flex; align-items: center; gap: .6rem;
  box-shadow: 0 4px 20px rgba(37,211,102,.45), 0 2px 8px rgba(0,0,0,.18);
  transition: transform .3s var(--ease), box-shadow .3s var(--ease), opacity .3s var(--ease), translate .3s var(--ease);
  white-space: nowrap;
  opacity: 0;
  translate: 0 1rem;
  pointer-events: none;
}
.wa-fab.wa-fab--visible {
  opacity: 1;
  translate: 0 0;
  pointer-events: auto;
}
@media (max-width: 1024px) {
  .wa-fab.wa-fab--rates-table {
    opacity: 0 !important;
    pointer-events: none !important;
    translate: 0 12px !important;
  }
}
.wa-fab:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(37,211,102,.55), 0 4px 12px rgba(0,0,0,.22);
}
.wa-fab:active { transform: scale(.97); }
.wa-fab__label {
  font-size: .85rem; font-weight: 700; letter-spacing: .02em;
}

@media (max-width: 640px) {
  .wa-fab {
    width: 54px; height: 54px;
    padding: 0;
    border-radius: 50%;
    justify-content: center;
  }
  .wa-fab__label { display: none; }
}

.footer {
  background: linear-gradient(160deg, #0A1828 0%, #111C2E 100%);
  padding-top: var(--space-lg); padding-bottom: 2rem;
}
.footer__grid {
  display: grid; gap: 2.5rem; grid-template-columns: 1fr;
  padding-bottom: 2.5rem;
  border-bottom: 1px solid rgba(255,255,255,.07); margin-bottom: 2rem;
}
.footer__brand img { height: 64px; margin-bottom: 1rem; }
.footer__brand-text { font-family: var(--font-display); font-size: .82rem; font-weight: 700; color: rgba(255,255,255,.45); margin-bottom: .75rem; }
.footer__desc { font-size: .83rem; color: rgba(255,255,255,.35); line-height: 1.7; max-width: 260px; }
.footer__col-title { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.3); margin-bottom: 1rem; }
.footer__links { display: flex; flex-direction: column; gap: .5rem; }
.footer__links a { font-size: .85rem; color: rgba(255,255,255,.5); transition: var(--t); }
.footer__links a:hover { color: var(--clr-orange); }
.footer__socials { display: flex; gap: .6rem; flex-wrap: wrap; margin-bottom: 1rem; }
.footer__social {
  width: 38px; height: 38px; border-radius: var(--r-sm);
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.09);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.5); transition: var(--t); cursor: pointer;
}
.footer__social:hover { background: var(--clr-orange); border-color: var(--clr-orange); color: #fff; }
.footer__contact-items { display: flex; flex-direction: column; gap: .6rem; }
.footer__contact-item { font-size: .83rem; color: rgba(255,255,255,.4); display: flex; align-items: center; gap: .5rem; }
.footer__contact-item a:hover { color: var(--clr-orange); }
.footer__bottom { display: flex; flex-direction: column; gap: .75rem; align-items: center; text-align: center; padding-bottom: 5rem; }
.footer__copy { font-size: .78rem; color: rgba(255,255,255,.28); }
.footer__credit { font-size: .78rem; color: rgba(255,255,255,.28); }
.footer__credit a { color: rgba(255,255,255,.45); text-decoration: none; transition: var(--t); }
.footer__credit a:hover { color: rgba(255,255,255,.75); }

.error-page {
  min-height: 100svh; display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 2rem; background: #fff;
}
.error-page__num   { font-family: var(--font-stat); font-size: clamp(6rem,20vw,14rem); color: var(--clr-red); opacity: .1; line-height: 1; margin-bottom: -1rem; }
.error-page__title { font-family: var(--font-display); font-size: 2rem; font-weight: 800; color: var(--clr-text); margin-bottom: .75rem; }
.error-page__sub   { color: var(--clr-text-muted); margin-bottom: 2rem; }

@media (min-width: 640px) {
  .form-row    { grid-template-columns: repeat(2,1fr); }
  .footer__grid { grid-template-columns: repeat(2,1fr); }
}

@media (min-width: 1024px) {
  .nav__links     { display: flex; }
  .nav__logo-text { display: block; }
  .nav__burger    { display: none; }

  .contact__grid  { grid-template-columns: 1fr 1.4fr; }
  .footer__grid   { grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: 3rem; }
  .footer__bottom { flex-direction: row; justify-content: space-between; text-align: left; padding-bottom: 4.5rem; }
}

.grecaptcha-badge { visibility: hidden !important; }
