.biklin-dywany-landing,
.biklin-dywany-landing button,
.biklin-dywany-landing input,
.biklin-dywany-landing select,
.biklin-dywany-landing textarea {
  font-family: "Instrument Sans", "Segoe UI", sans-serif;
}

.biklin-dywany-landing .site-header {
  background: rgba(3, 16, 31, .96);
}

.dywany-lp {
  --dy-navy: #03101f;
  --dy-blue: #082a52;
  --dy-cyan: #4bb3ff;
  --dy-yellow: #ffc21a;
  --dy-soft: #f4f8fc;
}

.dywany-lp .button--primary {
  background: linear-gradient(135deg, var(--dy-yellow), #ffd95f);
}

.dy-hero {
  background:
    radial-gradient(circle at 18% 18%, rgba(75, 179, 255, .17), transparent 28rem),
    radial-gradient(circle at 82% 62%, rgba(255, 194, 26, .14), transparent 20rem),
    linear-gradient(135deg, #03101f 0%, #061b37 58%, #092d57 100%);
}

.dy-eyebrow {
  color: var(--dy-yellow);
  display: block;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: 0;
  margin-bottom: 13px;
  text-transform: uppercase;
}

.dy-hero .bl-proof {
  gap: 14px;
  max-width: 760px;
}

.dy-hero .bl-proof li {
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 8px;
  min-height: 76px;
  padding: 16px;
}

.dy-hero__media {
  background: rgba(255, 255, 255, .04);
}

.dy-hero__media img {
  object-position: 52% center;
}

.dy-surfaces {
  background:
    linear-gradient(180deg, #fff 0%, #f8fbfe 100%);
}

.dy-surfaces ul {
  gap: 16px;
}

.dy-surfaces li {
  align-items: flex-start;
  background: #fff;
  border: 1px solid rgba(16, 35, 63, .1);
  border-radius: 8px;
  box-shadow: 0 16px 42px rgba(16, 35, 63, .06);
  min-height: 178px;
  padding: 22px;
  text-align: left;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dy-surfaces li:hover {
  border-color: rgba(255, 194, 26, .42);
  box-shadow: 0 24px 56px rgba(16, 35, 63, .1);
  transform: translateY(-2px);
}

.dy-surfaces li span {
  color: var(--bl-muted);
  display: block;
  font-size: .9rem;
  line-height: 1.48;
}

.dy-intro {
  background: #fff;
}

.dy-intro__grid {
  align-items: center;
  display: grid;
  gap: clamp(32px, 5vw, 70px);
}

.dy-intro__grid p {
  max-width: 68ch;
}

.dy-intro__media {
  margin: 0;
  min-height: 360px;
  overflow: hidden;
  position: relative;
}

.dy-intro__media::before {
  background: linear-gradient(180deg, transparent 45%, rgba(3, 16, 31, .82));
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}

.dy-intro__media img {
  border-radius: 10px;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.dy-intro__media figcaption {
  bottom: 18px;
  color: #fff;
  font-weight: 800;
  left: 20px;
  position: absolute;
  right: 20px;
  z-index: 2;
}

.dy-process {
  background:
    radial-gradient(circle at 12% 16%, rgba(75, 179, 255, .08), transparent 22rem),
    var(--dy-soft);
}

.dy-pricing {
  background: #fff;
}

.dy-pricing__grid {
  align-items: stretch;
  display: grid;
  gap: 32px;
}

.dy-price-cards {
  display: grid;
  gap: 14px;
  margin-top: 28px;
}

.dy-price-cards article {
  background: linear-gradient(180deg, #fff, #f9fbfd);
  border: 1px solid rgba(16, 35, 63, .1);
  border-radius: 8px;
  box-shadow: 0 14px 36px rgba(16, 35, 63, .05);
  padding: 20px;
  position: relative;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dy-price-cards article:hover {
  border-color: rgba(255, 194, 26, .42);
  box-shadow: 0 22px 52px rgba(16, 35, 63, .09);
  transform: translateY(-2px);
}

.dy-price-cards article.is-selected {
  border-color: rgba(255, 194, 26, .86);
  box-shadow: 0 24px 60px rgba(255, 194, 26, .18), 0 18px 42px rgba(16, 35, 63, .08);
}

.dy-price-cards .dy-price-card--featured {
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 194, 26, .22), transparent 7rem),
    linear-gradient(180deg, #071f3f, #03101f);
  border-color: rgba(255, 194, 26, .38);
  color: #fff;
}

.dy-price-cards span {
  color: #956d00;
  display: block;
  font-size: .76rem;
  font-weight: 800;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.dy-price-cards h3 {
  color: var(--bl-text);
  font-size: 1rem;
  margin-bottom: 12px;
}

.dy-price-cards strong {
  color: var(--bl-text);
  display: block;
  font-size: clamp(1.35rem, 2.5vw, 1.85rem);
  line-height: 1;
  margin-bottom: 8px;
}

.dy-price-cards p {
  font-size: .9rem;
  line-height: 1.5;
  margin-bottom: 0;
}

.dy-price-card--featured span,
.dy-price-card--featured h3,
.dy-price-card--featured strong {
  color: #fff;
}

.dy-price-card--featured p {
  color: rgba(255, 255, 255, .74);
}

.dy-price-cards button {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(16, 35, 63, .1);
  color: #8f6800;
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: .82rem;
  font-weight: 800;
  justify-content: space-between;
  margin-top: 16px;
  padding: 13px 0 0;
  text-align: left;
  width: 100%;
}

.dy-price-cards button::after {
  content: "→";
}

.dy-price-card--featured button {
  border-top-color: rgba(255, 255, 255, .16);
  color: var(--dy-yellow);
}

.dy-transport {
  background: #fff;
  border: 1px solid rgba(16, 35, 63, .1);
  border-radius: 8px;
  box-shadow: 0 14px 36px rgba(16, 35, 63, .05);
  margin-top: 18px;
  padding: 22px;
}

.dy-transport h3 {
  font-size: 1.05rem;
  margin-bottom: 12px;
}

.dy-transport ul {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.dy-transport li {
  color: var(--bl-muted);
  font-size: .92rem;
  line-height: 1.5;
  padding-left: 22px;
  position: relative;
}

.dy-transport li::before {
  color: #d99e00;
  content: "✓";
  font-weight: 800;
  left: 0;
  position: absolute;
}

.dy-quote,
.dy-calculator {
  background:
    radial-gradient(circle at 85% 10%, rgba(255, 255, 255, .28), transparent 9rem),
    linear-gradient(135deg, #ffc21a, #ffda68);
  min-height: 100%;
}

.dy-calculator {
  border-radius: 8px;
  box-shadow: 0 24px 60px rgba(16, 35, 63, .14);
  color: var(--bl-navy);
  padding: clamp(24px, 4vw, 36px);
}

.dy-calculator__eyebrow {
  color: rgba(3, 16, 31, .72);
  display: block;
  font-size: .76rem;
  font-weight: 850;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.dy-calculator h3 {
  color: var(--bl-navy);
  font-size: clamp(1.45rem, 2.8vw, 2rem);
  margin-bottom: 10px;
}

.dy-calculator > p {
  color: rgba(3, 16, 31, .72);
  font-size: .94rem;
  line-height: 1.55;
  margin-bottom: 20px;
}

.dy-calculator__field {
  display: grid;
  gap: 7px;
}

.dy-calculator label,
.dy-calculator legend {
  color: rgba(3, 16, 31, .82);
  font-size: .84rem;
  font-weight: 760;
}

.dy-calculator select,
.dy-calculator input[type="number"] {
  appearance: none;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(3, 16, 31, .16);
  border-radius: 6px;
  color: var(--bl-navy);
  font: inherit;
  font-weight: 700;
  min-height: 48px;
  outline: 0;
  padding: 0 14px;
  width: 100%;
}

.dy-calculator input[type="number"]::-webkit-outer-spin-button,
.dy-calculator input[type="number"]::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}

.dy-calculator input[type="number"] {
  -moz-appearance: textfield;
}

.dy-calculator select:focus,
.dy-calculator input[type="number"]:focus {
  border-color: rgba(3, 16, 31, .48);
  box-shadow: 0 0 0 3px rgba(3, 16, 31, .12);
}

.dy-calculator__dimensions {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 14px;
}

.dy-calculator__input {
  display: grid;
  gap: 6px;
  grid-template-columns: 38px minmax(0, 1fr) 30px 38px;
  position: relative;
}

.dy-calculator__input input {
  grid-column: 2 / 4;
  grid-row: 1;
  padding-inline: 12px 34px;
  text-align: center;
}

.dy-calculator__input span {
  align-self: center;
  color: rgba(3, 16, 31, .58);
  font-size: .88rem;
  font-weight: 800;
  grid-column: 3;
  grid-row: 1;
  justify-self: center;
  pointer-events: none;
  position: relative;
  z-index: 2;
}

.dy-calculator__input button {
  align-items: center;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(3, 16, 31, .16);
  border-radius: 6px;
  color: var(--bl-navy);
  cursor: pointer;
  display: flex;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 850;
  grid-row: 1;
  height: 48px;
  justify-content: center;
  min-width: 38px;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.dy-calculator__input button:first-child {
  grid-column: 1;
}

.dy-calculator__input button:last-child {
  grid-column: 4;
}

.dy-calculator__input button:hover,
.dy-calculator__input button:focus-visible {
  background: #fff;
  border-color: rgba(3, 16, 31, .42);
}

.dy-calculator__input button:active {
  transform: translateY(1px);
}

.dy-calculator__transport {
  border: 0;
  display: grid;
  gap: 9px;
  margin: 18px 0 0;
  padding: 0;
}

.dy-calculator__transport label,
.dy-calculator__extras label {
  align-items: center;
  background: rgba(255, 255, 255, .52);
  border: 1px solid rgba(3, 16, 31, .1);
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  gap: 9px;
  min-height: 42px;
  padding: 9px 11px;
}

.dy-calculator input[type="radio"],
.dy-calculator input[type="checkbox"] {
  accent-color: var(--bl-navy);
  flex: 0 0 auto;
}

.dy-calculator__extras {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 14px;
}

.dy-calculator__result {
  background: var(--bl-navy);
  border-radius: 8px;
  color: #fff;
  display: grid;
  gap: 4px;
  margin-top: 18px;
  padding: 18px;
}

.dy-calculator__result span {
  color: rgba(255, 255, 255, .66);
  font-size: .78rem;
  font-weight: 780;
  text-transform: uppercase;
}

.dy-calculator__result strong {
  color: #fff;
  font-size: clamp(2rem, 4vw, 2.75rem);
  line-height: 1;
}

.dy-calculator__result small {
  color: rgba(255, 255, 255, .72);
  line-height: 1.45;
}

.dy-calculator__note {
  color: rgba(3, 16, 31, .72) !important;
  font-size: .83rem !important;
  line-height: 1.5 !important;
  margin: 14px 0 18px !important;
}

.dy-calculator .button {
  justify-content: center;
  width: 100%;
}

.dy-extras {
  background: var(--dy-soft);
}

.dy-extras__grid {
  display: grid;
  gap: 20px;
}

.dy-extra {
  background: #fff;
  border: 1px solid rgba(16, 35, 63, .09);
  border-radius: 9px;
  box-shadow: 0 18px 42px rgba(16, 35, 63, .06);
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dy-extra:hover {
  border-color: rgba(255, 194, 26, .42);
  box-shadow: 0 26px 60px rgba(16, 35, 63, .1);
  transform: translateY(-2px);
}

.dy-extra img {
  aspect-ratio: 1.7;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.dy-extra div {
  padding: 22px;
}

.dy-extra h3 {
  font-size: 1.12rem;
  margin-bottom: 8px;
}

.dy-extra p {
  font-size: .92rem;
  line-height: 1.56;
  margin-bottom: 0;
}

.dy-clean-zone {
  background:
    radial-gradient(circle at 14% 7%, rgba(75, 179, 255, .23), transparent 26rem),
    radial-gradient(circle at 86% 28%, rgba(255, 194, 26, .14), transparent 24rem),
    linear-gradient(160deg, #03101f 0%, #061f40 44%, #0a315e 74%, #041427 100%);
}

.dy-local {
  color: #fff;
}

.dy-local__grid {
  align-items: stretch;
  display: grid;
  gap: 28px;
}

.dy-local__content {
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  padding: clamp(28px, 4.6vw, 54px);
}

.dy-local .bl-related-services {
  grid-column: 1 / -1;
  margin-top: 0;
}

.dy-local .bl-heading {
  margin-bottom: 24px;
}

.dy-local .bl-heading > span {
  color: var(--dy-yellow);
}

.dy-local h2,
.dy-local h3 {
  color: #fff;
}

.dy-local p {
  color: rgba(255, 255, 255, .78);
}

.dy-local__cards {
  display: grid;
  gap: 16px;
}

.dy-local__cards article {
  background: rgba(255, 255, 255, .96);
  border-radius: 9px;
  box-shadow: 0 22px 58px rgba(3, 16, 31, .2);
  padding: 24px;
}

.dy-local__cards span {
  align-items: center;
  background: #fff5d0;
  border-radius: 999px;
  color: #956d00;
  display: inline-flex;
  font-size: .8rem;
  font-weight: 800;
  height: 34px;
  justify-content: center;
  margin-bottom: 16px;
  width: 42px;
}

.dy-local__cards h3 {
  color: var(--bl-text);
  font-size: 1.08rem;
  margin-bottom: 8px;
}

.dy-local__cards p {
  color: var(--bl-muted);
  font-size: .92rem;
  line-height: 1.55;
  margin-bottom: 0;
}

.dy-area {
  padding-top: clamp(20px, 4vw, 48px);
}

.dy-area .bl-area__content {
  background: rgba(255, 255, 255, .08);
}

.dy-seo {
  padding-top: clamp(30px, 5vw, 64px);
}

.dy-seo .bl-seo__content {
  max-width: none;
}

.dy-tip-card {
  background: rgba(7, 31, 63, .9);
}

.dy-faq {
  padding-top: clamp(32px, 5vw, 70px);
}

.dy-final {
  background:
    radial-gradient(circle at 86% 22%, rgba(75, 179, 255, .16), transparent 18rem),
    var(--dy-navy);
}

.biklin-dywany-landing .site-footer {
  padding-bottom: 76px;
}

@media (min-width: 640px) {
  .dy-price-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 760px) {
  .dy-extras__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 900px) {
  .dy-hero .bl-hero__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  }

  .dy-hero .bl-hero__content {
    padding-right: 24px;
  }

  .dy-hero .bl-hero__media {
    min-height: 560px;
  }

  .dy-intro__grid,
  .dy-pricing__grid,
  .dy-local__grid {
    grid-template-columns: minmax(0, 1.03fr) minmax(360px, .97fr);
  }

  .dy-local__grid {
    align-items: start;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  }

  .dy-extras__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dy-local__cards {
    align-content: start;
  }
}

@media (min-width: 1180px) {
  .dy-price-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1160px) {
  .dy-hero h1 {
    max-width: 650px;
  }
}

@media (max-width: 759px) {
  .dy-surfaces li {
    min-height: 0;
  }

  .dy-extras__grid,
  .dy-local__cards {
    gap: 14px;
  }

  .dy-price-cards article,
  .dy-extra div,
  .dy-local__cards article {
    padding: 18px;
  }

  .dy-calculator__extras {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .dy-calculator__dimensions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 639px) {
  .dy-eyebrow {
    font-size: .76rem;
  }

  .dy-hero .bl-proof li {
    padding: 12px;
  }

  .dy-intro__media {
    min-height: 280px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dy-surfaces li,
  .dy-extra {
    transform: none !important;
  }
}
