.material-paper,
.material-paint,
.material-ink,
.material-wash {
  isolation: isolate;
}

:where(.material-paper, .material-paint, .material-ink, .material-wash):not(.material-positioned) {
  position: relative;
}

.material-paper::before,
.material-paint::before,
.material-ink::before,
.material-wash::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  pointer-events: none;
  content: "";
}

.material-paper::before {
  background: url("/vi/services/website-development/styles/item/resort-hospitality-coastal-order/preview/assets/paper-grain.webp") center / var(--material-size, 512px) repeat;
  mix-blend-mode: multiply;
  opacity: var(--material-opacity, .018);
}

.material-paint::before {
  background-image:
    linear-gradient(102deg, transparent 8%, rgb(255 255 255 / 13%) 31%, transparent 52%, rgb(4 43 47 / 12%) 79%, transparent 94%),
    url("/vi/services/website-development/styles/item/resort-hospitality-coastal-order/preview/assets/paint-dropout.webp");
  background-size: 180% 100%, var(--material-size, 220px);
  mix-blend-mode: var(--material-blend, soft-light);
  opacity: var(--material-opacity, .1);
}

.material-ink::before {
  background: url("/vi/services/website-development/styles/item/resort-hospitality-coastal-order/preview/assets/paint-dropout.webp") center / var(--material-size, 170px) repeat;
  mix-blend-mode: screen;
  opacity: var(--material-opacity, .028);
}

.material-wash::before {
  background-image:
    radial-gradient(ellipse at 18% 24%, rgb(255 255 255 / 28%), transparent 38%),
    radial-gradient(ellipse at 78% 72%, rgb(25 50 52 / 9%), transparent 43%),
    url("/vi/services/website-development/styles/item/resort-hospitality-coastal-order/preview/assets/paper-grain.webp");
  background-size: auto, auto, var(--material-size, 300px);
  mix-blend-mode: soft-light;
  opacity: var(--material-opacity, .08);
}

:where(.material-paper, .material-paint, .material-ink, .material-wash) > :not(.material-positioned):not(.absolute):not(.fixed) {
  position: relative;
  z-index: 2;
}

.material-shape {
  overflow: hidden;
  isolation: isolate;
}

.material-shape::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  background: var(--material-texture, url("/vi/services/website-development/styles/item/resort-hospitality-coastal-order/preview/assets/paper-grain.webp")) center / var(--material-size, 256px) repeat;
  mix-blend-mode: var(--material-blend, multiply);
  opacity: var(--material-opacity, .08);
  pointer-events: none;
  content: "";
}
