@charset "UTF-8";

/* Theme fonts */

/* Manrope (variable, self-hosted): latin + vietnamese subsets */

/* vietnamese */

@font-face {
  font-family: "Manrope";

  font-style: normal;

  font-weight: 200 800;

  font-display: swap;

  src: url("../fonts/manrope/manrope-vietnamese.woff2") format("woff2");

  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin */

@font-face {
  font-family: "Manrope";

  font-style: normal;

  font-weight: 200 800;

  font-display: swap;

  src: url("../fonts/manrope/manrope-latin.woff2") format("woff2");

  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Metric-matched Arial fallback to reduce CLS */

@font-face {
  font-family: "Manrope Fallback";

  src: local("Arial"), local("ArialMT"), local("Liberation Sans");

  size-adjust: 104.01%;

  ascent-override: 102.49%;

  descent-override: 28.83%;

  line-gap-override: 0%;
}

*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: Manrope, Manrope Fallback, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

/* Anchor offset for sticky header + admin bar */

[id] {
  scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 5.5rem);
}

@media (min-width: 64rem) {
  [id] {
    scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 7rem);
  }
}

html {
  -webkit-text-size-adjust: 100%;
}

/* Bold text = 600 like headings (preflight's 'bolder' on the 500 body would give 700) */

:where(.Ad) :is(b, strong) {
  font-weight: 600;
}

/* Headings 700 (9/11/2026, user's choice; body text stays 500, bold inline text 600) */

:where(.Ad) :is(h1, h2, h3, h4, h5, h6) {
  font-weight: 700;
}

/* Fluid root font size (same rule as webcore); all rem sizes scale with it. < 64rem: browser default (16px). */

@media (min-width: 64rem) {
  html {
    font-size: clamp(87.5%, 0.8334vw, 100%);
  }
}

@media (min-width: 80rem) and (max-width: 89.9375rem) {
  html {
    font-size: 81.25%;
  }
}

/* Thin themed scrollbar; Firefox uses standard props */

::-webkit-scrollbar {
  width: 0.375rem;
  height: 0.375rem;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb{
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  border-radius: 0.5rem;
}

::-webkit-scrollbar-thumb:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(234 88 12 / var(--tw-bg-opacity, 1));
}

@supports not selector(::-webkit-scrollbar) {
  html {
    scrollbar-width: thin;
    scrollbar-color: #F97316 transparent;
  }
}

body.Ad{
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  font-family: Manrope, Manrope Fallback, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* :where() keeps specificity low so button hover colors win */

:where(.Ad) a{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-pl *, .Ad-pl *::before, .Ad-pl *::after {
  transition: none !important;
}

/* Chrome may run colour transitions on first paint (links flashed on F5) */

/* Checkbox (CF7 acceptance, comment form…): own box like the fields — 1px border, primary when ticked (same look as the ANDVN Woo plugin) */

:where(.Ad) input[type=checkbox] {
  flex: none;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  padding: 0;
  border: 1px solid #E2E8F0;
  border-radius: 0.375rem;
  background: #fff center/0.875rem no-repeat;
  vertical-align: -0.25rem;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  transition: border-color 0.15s, background-color 0.15s, box-shadow 0.15s;
}

:where(.Ad) input[type=checkbox]:hover, :where(.Ad) label:hover > input[type=checkbox], :where(.Ad) input[type=checkbox]:focus-visible {
  border-color: #F97316;
}

:where(.Ad) input[type=checkbox]:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 3px rgba(35, 120, 184, 0.18);
}

:where(.Ad) input[type=checkbox]:checked {
  border-color: #F97316;
  background-color: #F97316;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

:where(.Ad) input[type=checkbox]:disabled {
  background-color: #F8FAFC;
  cursor: not-allowed;
}

/* Theme buttons */

/* Solid button: red gradient (--Ad-btn-grad, default the header gradient); hover colour sweeps in from the left and
     leaves to the right (--Ad-btn-bg-hover) */

.Ad-btn-solid {
  --Ad-btn-bg: #F97316;
  --Ad-btn-bg-hover: #EA580C;
  display: inline-flex;
  height: 2.875rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  border-radius: 0.75rem;
  border-width: 0px;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-color: var(--Ad-btn-bg);
  background-image: linear-gradient(var(--Ad-btn-bg-hover), var(--Ad-btn-bg-hover)), var(--Ad-btn-grad, var(--Ad-grad, none));
  background-size: 0 100%, 100% 100%;
  background-position: 100% 0, 0 0;
  background-repeat: no-repeat;
  transition: background-size 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.2s ease;
}

.Ad-btn-solid .Ad-ic{
  font-size: 0.875rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-btn-solid:hover, .Ad-btn-solid:focus-visible{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-size: 100% 100%, 100% 100%;
  background-position: 0 0, 0 0;
  transition: background-size 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.2s ease;
}

.Ad-btn-solid--primary {
  --Ad-btn-bg: #F97316;
  --Ad-btn-bg-hover: #EA580C;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-btn-solid {
    transition: color 0.2s ease;
  }
}

.Ad-btn-solid:hover .Ad-ic{
  --tw-translate-y: -2px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* Leading icon nudges up */

.Ad-btn-solid:hover .Ad-ic--arrow-right{
  --tw-translate-x: 4px;
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* Trailing arrow slides right */

:where(.Ad) a:where(:hover){
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

/* (0,0,1) specificity so button text colors win */

.Ad input, .Ad select, .Ad textarea, .Ad button {
  font-family: inherit;
}

.Ad img {
  max-width: 100%;
}

/* Browser surfaces in the brand palette: selection, caret, keyboard focus, aligned price digits */

::-moz-selection {
  background: #FFF7ED;
  color: #EA580C;
}

::selection {
  background: #FFF7ED;
  color: #EA580C;
}

:where(.Ad) input, :where(.Ad) textarea {
  caret-color: #F97316;
}

:where(.Ad) :is(a, button, [role=tab], input, [tabindex]):focus-visible {
  outline: 2px solid #0A1128;
  outline-offset: 2px;
  border-radius: 0.375rem;
}

:where(.Ad) .Ad-hd :is(a, button, input):focus-visible {
  outline-color: #fff;
}

:where(.Ad) :is(.Adw-price, .Ad-pc-member, .Ad-vwa) {
  font-variant-numeric: tabular-nums;
}

.container{
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 40rem){
  .container{
    max-width: 40rem;
  }
}

@media (min-width: 48rem){
  .container{
    max-width: 48rem;
  }
}

@media (min-width: 64rem){
  .container{
    max-width: 64rem;
  }
}

@media (min-width: 80rem){
  .container{
    max-width: 80rem;
  }
}

/* Content container: max 80rem (1360px at the 17px root) + 0.5rem gutter */

:root {
  --Ad-gutter: 0.5rem;
  --Ad-cnt: 87.5rem;
}

.Ad-wr{
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: calc(var(--Ad-cnt) + 2 * var(--Ad-gutter));
  padding-inline: var(--Ad-gutter);
}

.Ad-ic {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.125em;
  flex-shrink: 0;
}

/* Below-the-fold block: render lazily */

.Ad-cv {
  content-visibility: auto;
  contain-intrinsic-size: auto 37.5rem;
}

.scrollbar-none {
  scrollbar-width: none;
}

.scrollbar-none::-webkit-scrollbar {
  display: none;
}

/* Header: navy band. Top bar (hotline, email | socials) from 48rem; main bar logo | menu (from 80rem) | search, CTA,
     menu button. Hides on scroll down, shows on scroll up (andvnInitHeader). */

:root {
  --Ad-hd-h: 4.25rem;
}

@media (min-width: 64rem) {
  :root {
    --Ad-hd-h: 5rem;
  }
}

.Ad-hd{
  position: sticky;
  top: 0px;
  z-index: 50;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition: transform var(--Ad-hd-dur) var(--Ad-hd-ease), box-shadow var(--Ad-hd-dur) var(--Ad-hd-ease);
}

.Ad-hd.is-scrolled {
  box-shadow: 0 0.75rem 2rem -1rem rgba(0, 0, 0, 0.6);
}

.Ad-hd.is-hidden {
  transform: translateY(-100%);
  box-shadow: none;
}

.admin-bar .Ad-hd {
  top: var(--wp-admin--admin-bar--height, 32px);
}

@media (max-width: 37.5rem) {
  .admin-bar .Ad-hd {
    top: 0;
  }
}

.Ad-tb{
  display: none;
  --tw-bg-opacity: 1;
  background-color: rgb(6 11 26 / var(--tw-bg-opacity, 1));
  font-size: 1rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-tb{
    display: block;
  }
}

.Ad-tb {
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.07);
}

.Ad-tb-inner{
  display: flex;
  height: 2.25rem;
  align-items: center;
  gap: 1.5rem;
}

.Ad-tb-info{
  margin: 0px;
  margin-right: auto;
  display: flex;
  list-style-type: none;
  align-items: center;
  gap: 1.75rem;
  padding: 0px;
}

.Ad-tb-info a{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-tb-info a:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-tb-info .Ad-ic{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-tb-info b{
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-tb-soc{
  margin: 0px;
  margin-right: -0.5rem;
  display: flex;
  list-style-type: none;
  align-items: center;
  gap: 0.25rem;
  padding: 0px;
}

.Ad-tb-soc a{
  display: flex;
  height: 2rem;
  width: 2rem;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.Ad-tb-soc a:hover{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-hd-inner{
  display: flex;
  align-items: center;
  gap: 1rem;
}

@media (min-width: 64rem){
  .Ad-hd-inner{
    gap: 2rem;
  }
}

.Ad-hd-inner {
  height: var(--Ad-hd-h);
}

.Ad-br-wrap{
  margin-right: auto;
  flex-shrink: 0;
}

@media (min-width: 80rem){
  .Ad-br-wrap{
    margin-right: 0px;
  }
}

.Ad-br{
  display: flex;
  align-items: center;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-br:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-br-img{
  display: block;
  height: 2.75rem;
  width: auto;
}

@media (min-width: 64rem){
  .Ad-br-img{
    height: 3.25rem;
  }
}

.Ad-br-text{
  font-size: 1.375rem;
  font-weight: 600;
}

/* Desktop menu: one shared orange bar slides under the hovered item (andvnInitNavBar) */

.Ad-nv{
  margin-left: auto;
  display: none;
  align-self: stretch;
}

@media (min-width: 80rem){
  .Ad-nv{
    display: block;
  }
}

.Ad-nv > ul{
  position: relative;
  margin: 0px;
  display: flex;
  height: 100%;
  list-style-type: none;
  align-items: stretch;
  gap: 1.75rem;
  padding: 0px;
}

@media (min-width: 96rem){
  .Ad-nv > ul{
    gap: 2.25rem;
  }
}

.Ad-nv > ul > li{
  position: relative;
  display: flex;
  align-items: center;
}

.Ad-nv > ul > li > a{
  display: flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}

.Ad-nv > ul > li > a:hover, .Ad-nv > ul > li:focus-within > a{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-nv > ul > li:is(.current-menu-item, .current-menu-ancestor) > a{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-nv > ul > li.Ad-nv-home > a{
  font-size: 1.25rem;
}

/* house icon instead of "Trang chủ" */

.Ad-nv-caret{
  font-size: 1rem;
  opacity: 0.7;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-nv > ul > li:is(:hover, :focus-within) > a .Ad-nv-caret{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-nv-bar{
  pointer-events: none;
  position: absolute;
  left: 0px;
  top: 50%;
  height: 2px;
  width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  opacity: 0;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), width 0.6s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}

.Ad-nv-bar.is-on{
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-nv-bar {
    transition: opacity 0.2s ease;
  }
}

.Ad-nv .sub-menu{
  visibility: hidden;
  position: absolute;
  left: -1rem;
  top: 100%;
  z-index: 10;
  margin: 0px;
  width: -moz-max-content;
  width: max-content;
  min-width: 15rem;
  max-width: 22rem;
  --tw-translate-y: 16px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  list-style-type: none;
  border-radius: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  opacity: 0;
  box-shadow: 0 1.25rem 2.5rem -1rem rgba(10, 17, 40, 0.35);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0.3s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu{
  visibility: visible;
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  opacity: 1;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s;
}

.Ad-nv .sub-menu li{
  position: relative;
}

.Ad-nv .sub-menu a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-nv .sub-menu li:hover > a, .Ad-nv .sub-menu a:focus-visible{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-nv .sub-menu li.current-menu-item > a{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-hd .Ad-nv .sub-menu a:focus-visible {
  outline-color: #0A1128;
  outline-offset: -2px;
}

/* white menu: the header's white focus ring would vanish */

.Ad-nv .sub-menu .sub-menu{
  left: 100%;
  top: -0.5rem;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li {
  animation: Ad-mnv-in 0.4s ease both;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(1) {
  animation-delay: 0.04s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(2) {
  animation-delay: 0.08s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(3) {
  animation-delay: 0.12s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(4) {
  animation-delay: 0.16s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(5) {
  animation-delay: 0.2s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(6) {
  animation-delay: 0.24s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(7) {
  animation-delay: 0.28s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(8) {
  animation-delay: 0.32s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(9) {
  animation-delay: 0.36s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(10) {
  animation-delay: 0.4s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(11) {
  animation-delay: 0.44s;
}

.Ad-nv li:is(:hover, :focus-within) > .sub-menu > li:nth-child(12) {
  animation-delay: 0.48s;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-nv li:is(:hover, :focus-within) > .sub-menu > li {
    animation: none;
  }
}

/* Actions: round icon buttons, CTA pill (from 48rem) */

.Ad-hd-actions{
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.5rem;
}

@media (min-width: 40rem){
  .Ad-hd-actions{
    gap: 0.75rem;
  }
}

.Ad-hb{
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  background-color: rgb(255 255 255 / .08);
  padding: 0px;
  font-size: 1.125rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-hb:hover, .Ad-hb[aria-expanded=true]{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-hb--menu{
  font-size: 1.25rem;
}

@media (min-width: 80rem){
  .Ad-hb--menu{
    display: none;
  }
}

.Ad-hb .Ad-hb-close, .Ad-hb[aria-expanded=true] .Ad-hb-open{
  display: none;
}

.Ad-hb[aria-expanded=true] .Ad-hb-close{
  display: inline-block;
}

.Ad-hd-cta{
  display: none;
  height: 2.5rem;
  font-size: 1rem;
}

@media (min-width: 48rem){
  .Ad-hd-cta{
    display: inline-flex;
  }
}

:is(#Ad-mp-close, #Ad-sch-toggle .Ad-hb-close) svg {
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

:is(#Ad-mp-close, #Ad-sch-toggle[aria-expanded=true]):is(:hover, :focus-visible) svg {
  transform: rotate(180deg);
}

.Ad-hb--menu svg line {
  transform-box: fill-box;
  transform-origin: right center;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.Ad-hb--menu:is(:hover, :focus-visible) svg line:nth-child(1) {
  transform: scaleX(0.55);
}

.Ad-hb--menu:is(:hover, :focus-visible) svg line:nth-child(3) {
  transform: scaleX(0.75);
  transition-delay: 0.05s;
}

@media (prefers-reduced-motion: reduce) {
  :is(#Ad-mp-close, #Ad-sch-toggle .Ad-hb-close) svg, .Ad-hb--menu svg line {
    transition: none;
  }
}

/* Search panel under the bar */

.Ad-sch-panel{
  position: absolute;
  left: 0px;
  right: 0px;
  top: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(13 23 54 / var(--tw-bg-opacity, 1));
  padding-top: 1rem;
  padding-bottom: 1rem;
  box-shadow: 0 1rem 2rem -1rem rgba(0, 0, 0, 0.6);
  animation: Ad-sch-in var(--Ad-hd-dur) var(--Ad-hd-ease) both;
}

.Ad-sch-panel[hidden] {
  display: none;
}

.Ad-sch-panel.is-closing {
  animation: Ad-sch-out var(--Ad-hd-dur) var(--Ad-hd-ease) both;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-sch-panel, .Ad-sch-panel.is-closing {
    animation: none;
  }
}

.Ad-sch{
  margin-left: auto;
  margin-right: auto;
  display: flex;
  max-width: 50rem;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0.25rem;
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-sch:focus-within {
  box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.45);
}

/* one ring around the whole pill */

.Ad-sch .Ad-sch-input{
  margin: 0px;
  height: 2.75rem;
  min-width: 0px;
  flex: 1 1 0%;
  border-radius: 0px;
  border-width: 0px;
  background-color: transparent;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.Ad-sch .Ad-sch-input::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-sch .Ad-sch-input::placeholder{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-sch .Ad-sch-input:is(:focus, :focus-visible) {
  outline: 0;
  box-shadow: none;
}

.Ad-sch-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.Ad-sch-btn{
  display: flex;
  height: 2.75rem;
  flex-shrink: 0;
  cursor: pointer;
  align-items: center;
  gap: 0.5rem;
  border-radius: 9999px;
  border-width: 0px;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 40rem){
  .Ad-sch-btn{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.Ad-sch-btn {
  background: var(--Ad-grad);
}

.Ad-sch-btn .Ad-ic{
  font-size: 1.125rem;
}

.Ad-sch-label{
  display: none;
}

@media (min-width: 40rem){
  .Ad-sch-label{
    display: inline;
  }
}

@keyframes Ad-sch-in {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
}

@keyframes Ad-sch-out {
  to {
    opacity: 0;
    transform: translateY(-8px);
  }
}

/* Mobile menu: navy panel from the left */

.Ad-mov{
  pointer-events: none;
  position: fixed;
  inset: 0px;
  z-index: 100;
  background-color: rgb(0 0 0 / 0.6);
  opacity: 0;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-mov.is-open{
  pointer-events: auto;
  opacity: 1;
}

.Ad-mp{
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 101;
  display: flex;
  height: 100%;
  width: 18rem;
  max-width: 85%;
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  flex-direction: column;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  background: linear-gradient(180deg, #0D1736, #060B1A);
}

.Ad-mp.is-open{
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.admin-bar .Ad-mp {
  top: var(--wp-admin--admin-bar--height, 32px);
  height: calc(100% - var(--wp-admin--admin-bar--height, 32px));
}

.Ad-mp-head{
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding-left: 1rem;
  height: var(--Ad-hd-h);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.08);
}

.Ad-mp-close{
  display: flex;
  height: 100%;
  width: 3.25rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-width: 0px;
  background-color: transparent;
  padding: 0px;
  font-size: 1.375rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-mp-call{
  display: flex;
  height: 3rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background: var(--Ad-grad);
}

.Ad-mp-call:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-ms-wrap{
  position: relative;
  min-height: 0px;
  flex: 1 1 0%;
}

.Ad-ms{
  height: 100%;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.Ad-ms-wrap.has-more .Ad-ms {
  -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 3rem), transparent);
  mask-image: linear-gradient(to bottom, #000 calc(100% - 3rem), transparent);
}

.Ad-mnv ul{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
}

.Ad-mnv li{
  position: relative;
}

.Ad-mnv li a{
  display: flex;
  min-height: 3rem;
  align-items: center;
  gap: 0.75rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 1rem;
  padding-right: 3rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.06);
}

.Ad-mnv li a:hover{
  background-color: rgb(255 255 255 / .04);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-mnv li.current-menu-item > a{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

/* Submenu slides open via height (JS animates to scrollHeight) */

.Ad-mnv .sub-menu{
  visibility: hidden;
  display: block;
  height: 0px;
  overflow: hidden;
  transition: height 0.3s ease, visibility 0s 0.3s;
}

.Ad-mnv li.is-open > .sub-menu{
  visibility: visible;
  height: auto;
  transition: height 0.3s ease, visibility 0s;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-mnv .sub-menu, .Ad-mnv li.is-open > .sub-menu {
    transition: none;
  }
}

.Ad-mnv .sub-menu a{
  padding-left: 2.25rem;
}

.Ad-mnv .sub-menu .sub-menu a{
  padding-left: 3.25rem;
}

.Ad-mnv li a .Ad-ic{
  display: none;
}

/* Category icons (red SVGs of the desktop menu) on a white disc so their inner white stays visible. */

.Ad-mnv-img{
  height: 1.875rem;
  width: 1.875rem;
  flex-shrink: 0;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  -o-object-fit: contain;
     object-fit: contain;
  padding: 0.3125rem;
}

/* Opening the mobile menu: top-level items slide in from the left and fade in, one after another (like thebachsuites.com) */

.Ad-mp.is-open .Ad-mnv > ul > li {
  animation: Ad-mnv-in 0.4s ease both;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(1) {
  animation-delay: 0.14s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(2) {
  animation-delay: 0.18s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(3) {
  animation-delay: 0.22s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(4) {
  animation-delay: 0.26s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(5) {
  animation-delay: 0.3s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(6) {
  animation-delay: 0.34s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(7) {
  animation-delay: 0.38s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(8) {
  animation-delay: 0.42s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(9) {
  animation-delay: 0.46s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(10) {
  animation-delay: 0.5s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(11) {
  animation-delay: 0.54s;
}

.Ad-mp.is-open .Ad-mnv > ul > li:nth-child(12) {
  animation-delay: 0.58s;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-mp.is-open .Ad-mnv > ul > li {
    animation: none;
  }
}

.Ad-mnv li a .Ad-mnv-icon{
  display: block;
  flex-shrink: 0;
  font-size: 1rem;
}

.Ad-mnv-toggle{
  position: absolute;
  right: 0px;
  top: 0px;
  display: flex;
  height: 3rem;
  width: 3rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-width: 0px;
  background-color: transparent;
  padding: 0px;
  font-size: 1.125rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* CSS +/- icon, morphs to minus via parent aria-expanded */

.Ad-pm{
  position: relative;
  display: block;
  height: 0.75rem;
  width: 0.75rem;
  transition: transform 0.3s ease;
}

.Ad-pm::before, .Ad-pm::after {
  content: "";
  position: absolute;
  left: 0px;
  top: 50%;
  margin-top: -0.046875rem;
  height: 0.09375rem;
  width: 100%;
  border-radius: 9999px;
  background-color: currentColor;
  transition: transform 0.3s ease;
}

.Ad-pm::after {
  transform: rotate(90deg);
}

[aria-expanded=true] > .Ad-pm {
  transform: rotate(180deg);
}

[aria-expanded=true] > .Ad-pm::after {
  transform: rotate(0deg);
}

@media (prefers-reduced-motion: reduce) {
  .Ad-pm, .Ad-pm::before, .Ad-pm::after {
    transition: none;
  }
}

:root {
  --Ad-hd-dur: .3s;
  --Ad-hd-ease: cubic-bezier(.2, .8, .2, 1);
  --Ad-sha: 0 0.25rem 1.25rem -0.5rem rgba(0, 0, 0, .11), 0 0 0.625rem rgba(0, 0, 0, .06);
}

.Adw-minicart-wrap {
  position: relative;
}

@media (min-width: 48rem) {
  .Adw-minicart-wrap:is(:hover, :focus-within, .is-open) .Adw-minicart {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }
}

/* Section heading row (single post), "Xem tất cả" link, empty state */

.Ad-vwa .Ad-ic{
  font-size: 0.875rem;
}

.Ad-emp{
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Text tabs (product page): left-aligned, the active one carries a short red bar */

.Ad-cbk-tabs{
  display: flex;
  align-items: center;
  gap: 1.25rem;
  overflow-x: auto;
}

@media (min-width: 48rem){
  .Ad-cbk-tabs{
    gap: 1.75rem;
  }
}

.Ad-cbk-tabs {
  scrollbar-width: none;
  background: linear-gradient(#E2E8F0, #E2E8F0) left bottom 1px/100% 1px no-repeat;
}

/* hairline drawn 1px up so the 3px red bar sits centred on it (a border would be clipped by the scroller) */

/* tabs read as the block title: left-aligned, the active one carries a short red bar */

.Ad-cbk-tab{
  position: relative;
  flex-shrink: 0;
  cursor: pointer;
  border-width: 0px;
  background-color: transparent;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0px;
  padding-right: 0px;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (min-width: 48rem){
  .Ad-cbk-tab{
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
}

.Ad-cbk-tab:hover{
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-cbk-tab > span{
  display: block;
  white-space: nowrap;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
}

@media (min-width: 48rem){
  .Ad-cbk-tab > span{
    font-size: 1.375rem;
  }
}

.Ad-cbk-tab::after{
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 3px;
  width: 100%;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.Ad-cbk-tab[aria-selected=true]{
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-cbk-tab[aria-selected=true]::after {
  transform: scaleX(1);
}

@media (prefers-reduced-motion: reduce) {
  .Ad-cbk-tab::after {
    transition: none;
  }
}

.Ad-cbk-sep{
  height: 1.125rem;
  flex-shrink: 0;
  border-left-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-cbk-sep{
    height: 1.375rem;
  }
}

/* Product list (andvn-woo/archive-product.php) */

/* Product list (cellphones.com.vn layout): banners, brand logos, "Chọn theo nhu cầu", filter bar, sort chips, grid */

.Ad-pls{
  padding-top: 0.75rem;
  padding-bottom: 2rem;
}

.Ad-pls .Ad-bc{
  margin-bottom: 0.75rem;
  font-size: 1rem;
}

.Ad-pls-banners{
  position: relative;
  margin-bottom: 1.25rem;
}

.Ad-pls-banners a{
  display: block;
  overflow: hidden;
  border-radius: 0.75rem;
}

.Ad-pls-banners img{
  display: block;
  aspect-ratio: 119/20;
  height: auto;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-pls-banners:not(.is-active) .splide__list{
  display: flex;
  gap: 0.625rem;
}

/* before Splide: 2 banners side by side (1 on phones) */

.Ad-pls-banners:not(.is-active) .splide__slide{
  width: 100%;
  flex-shrink: 0;
}

@media (min-width: 40rem){
  .Ad-pls-banners:not(.is-active) .splide__slide{
    width: calc(50% - 0.3125rem);
  }
}

.Ad-pls-title{
  margin: 0px;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}

@media (min-width: 48rem){
  .Ad-pls-title{
    font-size: 1.25rem;
  }
}

.Ad-pls-sub{
  margin: 0px;
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}

@media (min-width: 48rem){
  .Ad-pls-sub{
    font-size: 1.25rem;
  }
}

.Ad-pls-brands{
  margin: 0px;
  display: grid;
  list-style-type: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-pls-brands{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-pls-brands{
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
}

@media (min-width: 80rem){
  .Ad-pls-brands{
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
}

.Ad-pls-brands a{
  display: flex;
  height: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-pls-brands a:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}

.Ad-pls-brands img{
  max-height: 1.375rem;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-neds{
  margin: 0px;
  display: flex;
  list-style-type: none;
  gap: 0.625rem;
  overflow-x: auto;
  padding: 0px;
  scrollbar-width: none;
}

.Ad-neds > li{
  width: 6.5rem;
  flex-shrink: 0;
}

.Ad-need{
  display: flex;
  height: 100%;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  padding-top: 0.5rem;
  padding-bottom: 0.625rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-need:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-need-media{
  display: flex;
  height: 4rem;
  width: 4rem;
  align-items: center;
  justify-content: center;
}

.Ad-need-media img{
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-need-name{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* "Chọn theo tiêu chí": pill buttons; <details> panels drop under their button */

.Ad-fbar{
  position: relative;
  z-index: 15;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.Ad-fdr{
  position: relative;
}

.Ad-fdr > summary {
  list-style: none;
}

.Ad-fdr > summary::-webkit-details-marker {
  display: none;
}

.Ad-fbt{
  display: inline-flex;
  height: 2.5rem;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  align-items: center;
  gap: 0.375rem;
  white-space: nowrap;
  border-radius: 0.625rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-fbt:hover, .Ad-fdr[open] > .Ad-fbt{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fbt[aria-current], .Ad-fbt.is-on{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fbt > .Ad-ic, .Ad-fbt > svg{
  height: 1.125rem;
  width: 1.125rem;
  flex-shrink: 0;
}

.Ad-fbt > .Ad-fbt-caret{
  margin-right: -0.125rem;
  height: 1rem;
  width: 1rem;
  opacity: 0.7;
  transition: transform 0.2s;
}

.Ad-fdr[open] .Ad-fbt-caret {
  transform: rotate(180deg);
}

.Ad-fbt--main{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fbt-count{
  display: flex;
  height: 1.25rem;
  min-width: 1.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
  font-size: 0.6875rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-fpn{
  position: absolute;
  left: 0px;
  top: calc(100% + 0.5rem);
  z-index: 30;
  width: -moz-max-content;
  width: max-content;
  min-width: 15rem;
  max-width: min(36rem, calc(100vw - 1rem));
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
  box-shadow: 0 0.75rem 2rem -0.75rem rgba(0, 0, 0, 0.25);
  animation: Ad-drop-in 0.2s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.Ad-fdr--all .Ad-fpn{
  max-height: min(32rem, 70vh);
  width: min(42rem, calc(100vw - 1rem));
  max-width: none;
  overflow-y: auto;
}

.Ad-fgr + .Ad-fgr{
  margin-top: 1rem;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  padding-top: 1rem;
}

.Ad-fgr-title{
  margin: 0px;
  margin-bottom: 0.625rem;
  font-size: 1rem;
  font-weight: 700;
}

.Ad-fops{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.Ad-fopt{
  display: inline-flex;
  height: 2.25rem;
  align-items: center;
  gap: 0.375rem;
  white-space: nowrap;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-fopt:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fopt[aria-current]{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fopt--swatch i{
  display: block;
  height: 1rem;
  width: 1rem;
  border-radius: 9999px;
  border-width: 1px;
  border-color: rgb(0 0 0 / 0.1);
  background: var(--Ad-swt);
}

.Ad-fcl{
  display: inline-flex;
  height: 2.25rem;
  align-items: center;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fpn .Ad-fcl{
  margin-top: 1rem;
}

.Ad-fchs{
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-fch{
  display: inline-flex;
  height: 2rem;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.5rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-fch svg{
  height: 0.875rem;
  width: 0.875rem;
}

@media (max-width: 39.9375rem) {
  .Ad-fbar{
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.25rem;
    scrollbar-width: none;
  }

  /* phone: one scrolling row; panels become a bottom sheet */

  .Ad-fdr{
    position: static;
  }

  .Ad-fbar:has(.Ad-fdr[open]){
    z-index: 95;
  }

  /* sheet above the floating call / back-to-top buttons (z 40) */

  .Ad-fpn {
    box-shadow: 0 -0.5rem 2rem rgba(0, 0, 0, 0.2), 0 0 0 100vmax rgba(0, 0, 0, 0.4);
  }

  /* dim the page behind the sheet */

  .Ad-fpn, .Ad-fdr--all .Ad-fpn{
    position: fixed;
    left: 0px;
    right: 0px;
    bottom: 0px;
    top: auto;
    max-height: 70vh;
    width: auto;
    min-width: 0px;
    max-width: none;
    overflow-y: auto;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
    animation-name: Ad-sht-in;
  }
}

@keyframes Ad-sht-in {
  from {
    transform: translateY(100%);
  }
}

/* "Sắp xếp theo": title left, pill chips */

.Ad-sbr{
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 0.5rem;
}

.Ad-sbr .Ad-pls-sub{
  margin: 0px;
}

.Ad-srts{
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  scrollbar-width: none;
}

.Ad-sort{
  display: inline-flex;
  height: 2.5rem;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-sort:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-sort[aria-current]{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-mr-wrap{
  margin-top: 1.5rem;
  display: flex;
  justify-content: center;
}

.Ad-lm{
  display: inline-flex;
  height: 2.75rem;
  align-items: center;
  gap: 0.375rem;
  border-radius: 0.625rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 2rem;
  padding-right: 2rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-lm:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-lm svg{
  height: 1.125rem;
  width: 1.125rem;
}

.Ad-lm.is-loading{
  pointer-events: none;
  opacity: 0.6;
}

.Ad-pls-empty{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
  text-align: center;
}

.Ad-pls-empty-title{
  margin: 0px;
  font-size: 1rem;
  font-weight: 700;
}

/* Product page (andvn-woo/parts/product-detail.php) */

/* Product page (cellphones.com.vn layout) */

.Ad-pd-head{
  margin-bottom: 1rem;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  padding-bottom: 0.75rem;
}

.Ad-pd-title.Ad-pd-title{
  margin: 0px;
  margin-bottom: 0.375rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}

@media (min-width: 48rem){
  .Ad-pd-title.Ad-pd-title{
    font-size: 1.25rem;
  }
}

.Ad-pd-left > * + *{
  margin-top: 1rem;
}

.Ad-pd-box{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0.75rem;
}

@media (min-width: 48rem){
  .Ad-pd-box{
    padding: 1rem;
  }
}

.Ad-pd-box {
  box-shadow: var(--Ad-sha);
}

.Ad-pd-boxtitle{
  margin: 0px;
  margin-bottom: 0.75rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
}

.Ad-prm{
  margin-top: 1rem;
  overflow: hidden;
  border-radius: 0.75rem;
  border-width: 1px;
  border-color: rgb(249 115 22 / 0.3);
}

.Ad-prm-title{
  margin: 0px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-size: 1rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-prm-list{
  margin: 0px;
  list-style-type: none;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  counter-reset: Ad-prm;
}

.Ad-prm-list li{
  position: relative;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  padding-left: 1.75rem;
  font-size: 1rem;
  line-height: 1.5;
  counter-increment: Ad-prm;
}

.Ad-prm-list li::before {
  content: counter(Ad-prm);
  position: absolute;
  left: 0px;
  top: 0.5rem;
  display: flex;
  height: 1.25rem;
  width: 1.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 0.6875rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Buy box: price box, versions, promotions, MUA NGAY | cart icon */

.Ad-buy > * + *{
  margin-top: 0.75rem;
}

.Ad-buy-pricebox{
  border-radius: 0.75rem;
  border-width: 1px;
  border-color: rgb(249 115 22 / 0.25);
  background-color: rgb(255 247 237 / 0.5);
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  text-align: center;
}

.Ad-buy-label{
  margin: 0px;
  margin-bottom: 0.375rem;
  font-size: 1rem;
  font-weight: 700;
}

.Ad-vers{
  margin: 0px;
  display: grid;
  list-style-type: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.375rem;
  padding: 0px;
}

@media (min-width: 64rem){
  .Ad-vers{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.Ad-ver{
  position: relative;
  display: flex;
  min-height: 2.75rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0px;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-ver b{
  font-size: 1rem;
  font-weight: 600;
}

.Ad-ver span{
  font-size: 1rem;
  font-weight: 500;
  color: rgb(30 41 59 / 0.8);
}

.Ad-ver:hover, .Ad-ver[aria-current]{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}

.Ad-ver[aria-current]::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  height: 1.25rem;
  width: 1.25rem;
  border-top-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  background-size: 0.75rem;
}

/* ticked corner */

.Ad-buy-stock{
  margin: 0px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 0.375rem;
       column-gap: 0.375rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-buy-stock span{
  margin-left: auto;
}

.Ad-buy-picked{
  margin-left: 0.25rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-opts{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}

@media (min-width: 40rem){
  .Ad-opts{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* 3 per row in the buy box */

.Ad-opt{
  position: relative;
  display: flex;
  min-height: 3.25rem;
  cursor: pointer;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  padding-left: 0.375rem;
  padding-right: 0.625rem;
  text-align: left;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-opt:hover, .Ad-opt[aria-pressed=true]{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}

.Ad-opt[aria-pressed=true]::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  height: 1.25rem;
  width: 1.25rem;
  border-top-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  background-size: 0.75rem;
}

.Ad-opt.is-unavailable{
  opacity: 0.5;
}

.Ad-opt.is-unavailable b{
  text-decoration-line: line-through;
}

.Ad-opt-img{
  height: 2.375rem;
  width: 2.375rem;
  flex-shrink: 0;
  border-radius: 0.375rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-opt-text{
  display: flex;
  min-width: 0px;
  flex-direction: column;
}

.Ad-opt-text b{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
}

.Ad-opt-text span{
  margin-top: 0.125rem;
  font-size: 1rem;
  font-weight: 500;
  color: rgb(30 41 59 / 0.8);
}

.Ad-buy .Adw-option-hint{
  margin: 0px;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-cns{
  display: flex;
  align-items: center;
  gap: 0.75rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  padding: 0.75rem;
}

@media (min-width: 48rem){
  .Ad-cns{
    padding: 0.875rem;
  }
}

.Ad-cns-icon{
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cns-icon svg{
  height: 1.375rem;
  width: 1.375rem;
}

.Ad-cns-body{
  min-width: 0px;
  flex: 1 1 0%;
}

.Ad-cns-title{
  margin: 0px;
  font-size: 1rem;
  font-weight: 700;
}

.Ad-cns-text{
  margin: 0px;
  margin-top: 0.125rem;
  font-size: 1rem;
  line-height: 1.45;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-cns-text a{
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-cns-btn{
  height: 2.5rem;
  flex-shrink: 0;
  cursor: pointer;
  border-radius: 0.625rem;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-cns-btn:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(234 88 12 / var(--tw-bg-opacity, 1));
}

@media (max-width: 29.9375rem) {
  .Ad-cns{
    flex-wrap: wrap;
  }

  .Ad-cns-btn{
    width: 100%;
  }
}

/* Dialog (Đăng ký tư vấn) */

.Ad-mdl{
  margin: auto;
  max-height: calc(100dvh - 2rem);
  width: min(28rem, calc(100vw - 1rem));
  overflow-y: auto;
  border-radius: 0.875rem;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0px;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  box-shadow: 0 1.5rem 3rem -1rem rgba(0, 0, 0, 0.35);
}

.Ad-mdl::backdrop {
  background: rgba(0, 0, 0, 0.5);
}

.Ad-mdl[open] {
  animation: Ad-drop-in 0.25s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.Ad-mdl-box{
  position: relative;
  padding: 1.25rem;
}

@media (min-width: 48rem){
  .Ad-mdl-box{
    padding: 1.5rem;
  }
}

.Ad-mdl-close{
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: flex;
  height: 2.25rem;
  width: 2.25rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-mdl-close svg{
  height: 1.125rem;
  width: 1.125rem;
}

.Ad-mdl-title{
  margin: 0px;
  padding-right: 2.5rem;
  font-size: 1.25rem;
  font-weight: 700;
}

.Ad-mdl-sub{
  margin: 0px;
  margin-top: 0.25rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-mdl .Ad-fm{
  border-radius: 0px;
  padding: 0px;
}

.Ad-mdl .Ad-fm .wpcf7-submit{
  text-transform: none;
  --Ad-btn-bg: #F97316;
  --Ad-btn-bg-hover: #EA580C;
}

.Ad-feat{
  display: flex;
  height: 100%;
  align-items: center;
  gap: 0.875rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-feat{
    gap: 1.25rem;
    padding-left: 3.5rem;
    padding-right: 3.5rem;
  }
}

.Ad-feat {
  background: linear-gradient(110deg, #F97316, #F0727F 55%, #F8B195);
}

.Ad-feat-media{
  display: flex;
  aspect-ratio: 1 / 1;
  width: 32%;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0.375rem;
}

.Ad-feat-media img{
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-feat-body{
  max-height: 100%;
  min-width: 0px;
  overflow-y: auto;
  scrollbar-width: none;
}

/* every highlight shows; scrolls if a list is very long */

.Ad-feat-title{
  margin: 0px;
  margin-bottom: 0.375rem;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
}

@media (min-width: 48rem){
  .Ad-feat-title{
    font-size: 1.125rem;
  }
}

.Ad-feat-body ul{
  margin: 0px;
  list-style-type: disc;
  padding-left: 1rem;
  font-size: 1rem;
  line-height: 1.4;
}

.Ad-feat-body li + li{
  margin-top: 0.1875rem;
}

.Ad-feat-thumb{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.125rem;
  padding: 0.25rem;
  text-align: center;
  font-size: 0.625rem;
  line-height: 1.2;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-feat-thumb svg{
  height: 1.25rem;
  width: 1.25rem;
}

/* ANDVN Woo (inc/shop.php, andvn-woo/): plugin colours from the theme palette */

body.Ad {
  --Adw-primary: #F97316;
  --Adw-primary-dark: #EA580C;
  --Adw-text: #1E293B;
  --Adw-muted: #64748B;
  --Adw-surface: #F8FAFC;
  --Adw-border: #E2E8F0;
  --Adw-danger: #EF4444;
  --Adw-success: #12805C;
  --Adw-radius: 0.75rem;
  --Adw-radius-lg: 1rem;
}

.Ad-pdw{
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-pdw{
    padding-top: 2rem;
    padding-bottom: 1.5rem;
  }
}

/* bottom gap like the home page */

.Ad-pdw .Ad-bc{
  margin-bottom: 1.5rem;
}

/* Inner page head */

.Ad-bc{
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-bc a{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-bc a:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-bc .breadcrumb_last{
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-bc-sep{
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  display: inline-block;
  opacity: 0.6;
}

@media (min-width: 64rem){
  .Ad-bc-sep{
    margin-left: 0.625rem;
    margin-right: 0.625rem;
  }
}

@media (max-width: 47.9375rem) {
  .Ad-bc{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.Ad-pg-title{
  margin: 0px;
  margin-top: 0.625rem;
  max-width: 64rem;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-pg-title{
    font-size: 1.75rem;
  }
}

@media (min-width: 64rem){
  .Ad-pg-title{
    font-size: 2.25rem;
  }
}

.Adw-flow-title.Ad-pg-title{
  margin-left: auto;
  margin-right: auto;
  margin-top: 0px;
}

/* phone title of the cart / checkout head */

.Ad-pg-desc{
  margin: 0px;
  margin-top: 0.5rem;
  max-width: 48rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Page banner: cover image, dark overlay, white text at bottom */

.Ad-pg-banner{
  position: relative;
  display: flex;
  min-height: 30rem;
  align-items: flex-end;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(234 88 12 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-pg-banner{
    min-height: 35rem;
  }
}

.Ad-pg-banner {
  clip-path: inset(0);
}

/* clip-path clips the fixed image to the banner */

.Ad-pg-banner-img{
  position: fixed;
  left: 0px;
  height: 30rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 64rem){
  .Ad-pg-banner-img{
    height: 35rem;
  }
}

.Ad-pg-banner-img {
  top: var(--wp-admin--admin-bar--height, 0px);
}

/* stays put while the page scrolls over it */

.Ad-pg-banner::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0px;
  background: linear-gradient(0deg, rgba(10, 25, 40, 0.7) 0%, rgba(10, 25, 40, 0.35) 60%, rgba(10, 25, 40, 0.2) 100%);
}

.Ad-pg-banner-content{
  position: relative;
  z-index: 1;
  width: 100%;
  padding-top: 7rem;
  padding-bottom: 1.75rem;
}

@media (min-width: 64rem){
  .Ad-pg-banner-content{
    padding-top: 9rem;
    padding-bottom: 2.75rem;
  }
}

/* Top padding clears overlay header */

/* Text on image banners */

.Ad-pg-banner .Ad-bc, .Ad-pg-banner .Ad-bc a{
  color: rgb(255 255 255 / 0.8);
}

.Ad-pg-banner .Ad-bc a:hover, .Ad-pg-banner .Ad-bc .breadcrumb_last{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-pg-banner .Ad-pg-title{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  text-shadow: 0 0.125rem 1rem rgba(10, 25, 40, 0.25);
}

.Ad-pg-banner .Ad-pg-desc{
  color: rgb(255 255 255 / 0.85);
}

/* Single post (cellphones Sforum): "Xu hướng" chips, white article card, category badge, author + date */

.Ad-trd-label .Ad-ic{
  height: 1.125rem;
  width: 1.125rem;
}

/* same padding as the sidebar box */

.Ad-nw--single .Ad-cms{
  margin: 0px;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
}

@media (min-width: 64rem){
  .Ad-nw--single .Ad-cms{
    padding: 1.5rem;
  }
}

.Ad-nw--single .Ad-cms {
  border-top: 0;
}

/* comments: own box under the article */

/* Archive / search list: category chips + card grid */

.Ad-pg-body{
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

@media (min-width: 64rem){
  .Ad-pg-body{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

/* Switch (tabs / one-of-several: news categories): white track, the primary background
     slides to the current item (aria-current / :checked) — JS andvnInitSwitch sets --Ad-pill-x / --Ad-pill-w. */

.Ad-sw{
  position: relative;
  isolation: isolate;
  margin: 0px;
  display: inline-flex;
  max-width: 100%;
  list-style-type: none;
  gap: 0.125rem;
  overflow-x: auto;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0.25rem;
  scrollbar-width: none;
}

.Ad-sw::-webkit-scrollbar {
  display: none;
}

.Ad-sw > li{
  margin: 0px;
  flex-shrink: 0;
  padding: 0px;
}

.Ad-sw::before {
  content: "";
  position: absolute;
  top: 0.25rem;
  bottom: 0.25rem;
  left: 0px;
  z-index: -10;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  width: var(--Ad-pill-w, 0);
  transform: translateX(var(--Ad-pill-x, 0));
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.Ad-sw:not(.is-ready)::before {
  transition: none;
}

.Ad-sw-item{
  position: relative;
  display: inline-flex;
  height: 2.5rem;
  flex-shrink: 0;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 64rem){
  .Ad-sw-item{
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.Ad-sw-item:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-sw-item[aria-current]{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-sw:not(.is-ready) .Ad-sw-item[aria-current]{
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

/* before JS measures / without JS */

@media (prefers-reduced-motion: reduce) {
  .Ad-sw::before {
    transition: none;
  }
}

.Ad-chip{
  display: inline-flex;
  height: 2.5rem;
  flex-shrink: 0;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-chip:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-chip[aria-current]{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-chip--sm{
  height: 2rem;
  --tw-border-opacity: 1;
  border-color: rgb(248 250 252 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  font-size: 1rem;
}

.Ad-emp{
  margin: 0px;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Consultation form (CF7) */

.Ad-fm{
  border-radius: 1rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-fm{
    padding: 2rem;
  }
}

.Ad-fm label{
  margin-bottom: 1rem;
  display: block;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-fm .wpcf7-form-control-wrap{
  margin-top: 0.5rem;
  display: block;
}

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit){
  display: block;
  height: 3rem;
  width: 100%;
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-fm .wpcf7-form-control.wpcf7-textarea{
  height: 7.5rem;
  resize: none;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  line-height: 1.5;
}

/* Two classes to beat the rule above */

.Ad-fm .wpcf7-form-control:focus{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}

/* CF7 validation + response box colored by form state */

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit)[aria-invalid=true]{
  border-color: rgb(239 68 68 / 0.4);
}

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit)[aria-invalid=true]:focus{
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}

.Ad-fm .wpcf7-not-valid-tip{
  margin-top: 0.375rem;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.Ad-fm .wpcf7-not-valid-tip::before {
  content: "";
  height: 1rem;
  width: 1rem;
  flex-shrink: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23D92D20'/%3E%3Cpath d='M12 7v6' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16.8' r='1.4' fill='%23fff'/%3E%3C/svg%3E");
}

.Ad-fm .wpcf7-submit {
  --Ad-btn-bg: #F97316;
  --Ad-btn-bg-hover: #EA580C;
  display: inline-flex;
  height: 2.875rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  border-radius: 0.75rem;
  border-width: 0px;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-color: var(--Ad-btn-bg);
  background-image: linear-gradient(var(--Ad-btn-bg-hover), var(--Ad-btn-bg-hover)), var(--Ad-btn-grad, var(--Ad-grad, none));
  background-size: 0 100%, 100% 100%;
  background-position: 100% 0, 0 0;
  background-repeat: no-repeat;
  transition: background-size 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.2s ease;
}

.Ad-fm .wpcf7-submit .Ad-ic{
  font-size: 0.875rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-fm .wpcf7-submit:hover,.Ad-fm .wpcf7-submit:focus-visible{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-size: 100% 100%, 100% 100%;
  background-position: 0 0, 0 0;
  transition: background-size 0.45s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.2s ease;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-fm .wpcf7-submit {
    transition: color 0.2s ease;
  }
}

.Ad-fm .wpcf7-submit:hover .Ad-ic{
  --tw-translate-y: -2px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-fm .wpcf7-submit:hover .Ad-ic--arrow-right{
  --tw-translate-x: 4px;
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-cf-submit .Ad-fm .wpcf7-submit {
  height: 2.5rem;
  padding: 0 1.25rem;
  font-size: 1rem;
}

.Ad-fm .wpcf7-submit{
  height: 2.5rem;
  border-radius: 9999px;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-fm .wpcf7-submit{
    height: 2.875rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
  }
}

:is(.Ad-fm .wpcf7-submit, .Ad-btn-line, .Ad-btn-white, .Ad-mr) .Ad-ic{
  font-size: 0.875rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

:is(.Ad-fm .wpcf7-submit, .Ad-btn-line, .Ad-btn-white, .Ad-mr):hover .Ad-ic{
  --tw-translate-x: 4px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-hr .Ad-fm .wpcf7-submit{
  height: 2.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-hr .Ad-fm .wpcf7-submit{
    height: 3.25rem;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
    font-size: 1rem;
  }
}

.Ad-pdp-acts :is(.Ad-fm .wpcf7-submit, .Ad-btn-line){
  height: 2.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-pdp-acts :is(.Ad-fm .wpcf7-submit, .Ad-btn-line){
    height: 3rem;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
    font-size: 1rem;
  }
}

.Ad-fm .wpcf7-submit{
  height: 3rem;
  width: 100%;
  cursor: pointer;
  border-width: 0px;
  font-weight: 600;
  text-transform: uppercase;
}

.Ad-fm .wpcf7-spinner{
  display: none;
}

.Ad-fm .wpcf7 form .wpcf7-response-output{
  margin: 0px;
  margin-top: 1rem;
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  border-radius: 0.75rem;
  border-width: 1px;
  border-color: rgb(239 68 68 / 0.3);
  background-color: rgb(239 68 68 / 0.05);
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.Ad-fm .wpcf7 form .wpcf7-response-output::before {
  content: "";
  margin-top: 0.0625rem;
  height: 1.25rem;
  width: 1.25rem;
  flex-shrink: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23D92D20'/%3E%3Cpath d='M12 7v6' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16.8' r='1.4' fill='%23fff'/%3E%3C/svg%3E");
}

.Ad-fm .wpcf7 form:is(.invalid, .unaccepted, .spam, .payment-required) .wpcf7-response-output{
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}

.Ad-fm .wpcf7 form:is(.invalid, .unaccepted, .spam, .payment-required) .wpcf7-response-output::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23F59E0B'/%3E%3Cpath d='M12 7v6' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16.8' r='1.4' fill='%23fff'/%3E%3C/svg%3E");
}

.Ad-fm .wpcf7 form.sent .wpcf7-response-output{
  border-color: rgb(10 17 40 / 0.3);
  background-color: rgb(10 17 40 / 0.1);
  --tw-text-opacity: 1;
  color: rgb(7 14 32 / var(--tw-text-opacity, 1));
}

.Ad-fm .wpcf7 form.sent .wpcf7-response-output::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%230AA34F'/%3E%3Cpath d='m8 12.4 2.8 2.8L16.2 9.8' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.Ad-fm .wpcf7 form .wpcf7-response-output:empty{
  display: none;
}

/* Submitting: hide label, show spinner, block clicks */

.Ad-fm form.submitting .wpcf7-submit{
  pointer-events: none;
  background-position: center;
  background-repeat: no-repeat;
  color: transparent !important;
  transition: none;
  background-size: 1.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 3a9 9 0 1 0 9 9' opacity='.95'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='.8s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E");
}

.Ad-fm form.submitting :is(input, textarea):not(.wpcf7-submit){
  pointer-events: none;
  opacity: 0.6;
}

/* Shared block variants */

/* Contact page */

/* 404 page */

/* Search page */

/* Search form (searchform.php) */

.Ad-sf{
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 32rem;
}

.Ad-sf-field{
  position: relative;
  display: flex;
  align-items: center;
}

.Ad-sf-input{
  width: 100%;
  border-width: 0px;
  border-bottom-width: 2px;
  border-style: solid;
  --tw-border-opacity: 1;
  border-color: rgb(30 41 59 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.25rem;
  padding-right: 3rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-sf-input::-moz-placeholder{
  color: rgb(100 116 139 / 0.65);
}

.Ad-sf-input::placeholder{
  color: rgb(100 116 139 / 0.65);
}

.Ad-sf-input{
  outline: 2px solid transparent;
  outline-offset: 2px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.Ad-sf-input:focus{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}

.Ad-sf-btn{
  position: absolute;
  right: 0.5rem;
  cursor: pointer;
  border-width: 0px;
  background-color: transparent;
  padding: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.Ad-sf-btn:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-sf-btn:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.Ad-sf-icon{
  height: 1.25rem;
  width: 1.25rem;
}

.Ad-mk{
  margin-left: -0.125rem;
  margin-right: -0.125rem;
  border-radius: 0.125rem;
  background-color: rgb(252 211 77 / 0.6);
  padding-left: 0.125rem;
  padding-right: 0.125rem;
  color: inherit;
}

/* Search term highlight */

/* Single post: content + sidebar */

.Ad-art-foot{
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  padding-top: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-art-foot{
    margin-top: 3rem;
  }
}

.Ad-art-tags{
  margin: 0px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.Ad-art-tags > .Ad-ic{
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-shr{
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.Ad-shr-label{
  margin-right: 0.25rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-shr-btn{
  display: inline-flex;
  height: 2.5rem;
  width: 2.5rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding: 0px;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-shr-btn:hover, .Ad-shr-btn.is-done{
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Copy link: check icon + "copied" tooltip for 2s */

.Ad-shr-btn[data-ad-copy]{
  position: relative;
}

.Ad-shr-btn .Ad-shr-ok, .Ad-shr-btn.is-done .Ad-shr-ico{
  display: none;
}

.Ad-shr-btn.is-done .Ad-shr-ok{
  display: block;
}

.Ad-shr-btn.is-done::after {
  content: attr(data-label-done);
  pointer-events: none;
  position: absolute;
  bottom: calc(100% + 0.5rem);
  right: 0px;
  white-space: nowrap;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  animation: Ad-fade-up 0.2s ease;
}

/* right-aligned: the copy button is last in the row, a centred tooltip overflowed the page */

@keyframes Ad-fade-up {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

/* Sidebar */

/* Previous / next post (template-parts/post/post-nav.php) */

/* Comments (news): threaded list 3 levels + form, letter avatars (no Gravatar) */

.Ad-cms {
  font-size: 1rem;
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid #E2E8F0;
}

.Ad-cms-count {
  color: #64748B;
  font-weight: 500;
}

.Ad-cms-empty {
  margin: 0 0 1.5rem;
  color: #64748B;
}

.Ad-cm-list, .Ad-cm-list .children {
  margin: 0;
  padding: 0;
  list-style: none;
}

.Ad-cm-list {
  margin-bottom: 2rem;
}

.Ad-cm-list .children {
  margin: 1rem 0 0 3.375rem;
}

.Ad-cm + .Ad-cm {
  margin-top: 1.25rem;
}

.Ad-cm-box {
  display: flex;
  gap: 0.875rem;
}

.Ad-cm-avatar {
  display: grid;
  flex: none;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: #FB923C;
  color: #EA580C;
  font-size: 1rem;
  font-weight: 600;
}

.Ad-cm.is-staff > .Ad-cm-box .Ad-cm-avatar {
  background: #F97316;
  color: #fff;
}

.Ad-cm-main {
  flex: 1;
  min-width: 0;
  padding: 0.875rem 1.125rem;
  border-radius: 1rem;
  background: #F8FAFC;
}

.Ad-cm-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0.625rem;
}

.Ad-cm-author {
  color: #1E293B;
  font-weight: 600;
}

.Ad-cm-badge {
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
  background: #F97316;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
}

.Ad-cm-date {
  color: #64748B;
}

.Ad-cm-pending {
  margin: 0.375rem 0 0;
  color: #92400E;
  font-weight: 600;
}

.Ad-cm-text {
  margin-top: 0.375rem;
  color: #1E293B;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.Ad-cm-text p {
  margin: 0 0 0.5rem;
}

.Ad-cm-text p:last-child {
  margin-bottom: 0;
}

.Ad-cm-text a, .Ad-cm-text a:hover {
  color: #F97316;
  text-decoration: none;
}

.Ad-cm-actions {
  margin-top: 0.5rem;
}

.Ad-cm-actions a {
  color: #F97316;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s;
}

.Ad-cm-actions a:hover {
  color: #EA580C;
  text-decoration: none;
}

.Ad-cm-list .comment-respond {
  margin: 1rem 0 0;
  padding: 1.25rem;
  border: 1px solid #E2E8F0;
  border-radius: 1rem;
  background: #fff;
}

.Ad-cm-form-title {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
  margin: 0 0 0.75rem;
  color: #1E293B;
  font-size: 1.125rem;
  font-weight: 600;
}

.Ad-cm-form-title small a, .Ad-cm-form-title small a:hover {
  color: #EF4444;
  font-weight: 600;
  text-decoration: none;
}

.Ad-cm-form-title small {
  font-size: 1rem;
}

.Ad-cm-note {
  margin: 0 0 1rem;
  color: #64748B;
}

.Ad-cm-note a, .Ad-cm-note a:hover {
  color: #F97316;
  font-weight: 600;
  text-decoration: none;
}

.Ad-cm-note a:hover {
  color: #EA580C;
}

.Ad-cm-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.Ad-cm-form > * {
  grid-column: 1/-1;
  margin: 0;
}

.Ad-cm-form > .Ad-cf-half {
  grid-column: auto;
}

.Ad-cf-field label {
  display: block;
  margin-bottom: 0.375rem;
  color: #1E293B;
  font-weight: 500;
}

.Ad-cf-req {
  color: #EF4444;
}

.Ad-cf-field :is(input, textarea) {
  display: block;
  width: 100%;
  height: 3rem;
  padding: 0 1rem;
  border: 1px solid #E2E8F0;
  border-radius: 0.75rem;
  background: #fff;
  color: #1E293B;
  font: inherit;
  outline: none;
  transition: border-color 0.2s;
}

.Ad-cf-field textarea {
  height: 8rem;
  padding: 0.75rem 1rem;
  line-height: 1.5;
  resize: vertical;
  transition: border-color 0.2s, height 0.3s ease;
}

/* Collapsed (JS): one-line box; focus or "Trả lời" opens the rest */

.Ad-cm-form.is-collapsed > :is(.Ad-cm-note, .Ad-cf-half, .Ad-cf-submit) {
  display: none;
}

.Ad-cm-form.is-collapsed .Ad-cf-field label {
  display: none;
}

.Ad-cm-form.is-collapsed textarea {
  height: 3.5rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  overflow: hidden;
  resize: none;
  cursor: text;
}

.Ad-cm-form:not(.is-collapsed) > :is(.Ad-cm-note, .Ad-cf-half, .Ad-cf-submit) {
  animation: Ad-cf-in 0.3s ease both;
}

@keyframes Ad-cf-in {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .Ad-cf-field textarea, .Ad-cm-form > * {
    transition: none;
    animation: none !important;
  }
}

.Ad-cf-field :is(input, textarea):focus {
  border-color: #F97316;
}

.Ad-cf-field :is(input, textarea)[aria-invalid=true] {
  border-color: rgba(217, 45, 32, 0.45);
}

.Ad-cf-error {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.375rem;
  color: #EF4444;
  font-size: 1rem;
  line-height: 1.4;
}

/* like the contact form (CF7) tip */

.Ad-cf-error::before {
  content: "";
  flex: none;
  width: 1rem;
  height: 1rem;
  background: no-repeat center/contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23D92D20'/%3E%3Cpath d='M12 7v6' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='16.8' r='1.4' fill='%23fff'/%3E%3C/svg%3E");
}

.Ad-cf-submit {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.Ad-cf-submit .Ad-btn-solid {
  height: 2.5rem;
  padding: 0 1.25rem;
  font-size: 1rem;
}

/* same size as the review / Q&A buttons */

.Ad-cms .Ad-cms-title {
  margin-bottom: 1rem;
}

.Ad-cm-form.is-sending .Ad-cf-submit button {
  opacity: 0.7;
  cursor: progress;
}

.Ad-cf-msg {
  padding: 0.75rem 1rem;
  border: 1px solid;
  border-radius: 0.75rem;
  font-weight: 500;
  line-height: 1.5;
}

.Ad-cf-msg.is-ok {
  border-color: rgba(10, 163, 79, 0.3);
  background: rgba(10, 163, 79, 0.1);
  color: #070E20;
}

.Ad-cf-msg.is-error {
  border-color: rgba(217, 45, 32, 0.3);
  background: rgba(217, 45, 32, 0.05);
  color: #EF4444;
}

.Ad-hp {
  position: absolute !important;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* honeypot, bots fill it */

@media (max-width: 39.9375rem) {
  .Ad-cm-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .Ad-cm-list .children {
    margin-left: 1rem;
  }

  .Ad-cm-avatar {
    width: 2rem;
    height: 2rem;
  }

  .Ad-cm-main {
    padding: 0.75rem 0.875rem;
  }
}

@media (min-width: 64rem) {
  .Ad-cms {
    font-size: 1rem;
  }
}

/* one text size in the whole block: 14px / 16px */

.Ad-ps-nav{
  margin-top: 1.5rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.25rem;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  padding-top: 1.5rem;
}

@media (min-width: 40rem){
  .Ad-ps-nav{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-ps-nav{
    gap: 2rem;
  }
}

.Ad-ps-nav-item{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (min-width: 40rem){
  .Ad-ps-nav-item--next{
    align-items: flex-end;
    text-align: right;
  }
}

.Ad-ps-nav-item--empty{
  display: none;
}

@media (min-width: 40rem){
  .Ad-ps-nav-item--empty{
    display: block;
  }
}

.Ad-ps-nav-label{
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-ps-nav-label .Ad-ic{
  font-size: 0.875rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-ps-nav-item--next .Ad-ps-nav-label{
  flex-direction: row-reverse;
}

.Ad-ps-nav-title{
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

a.Ad-ps-nav-item:hover .Ad-ps-nav-label, a.Ad-ps-nav-item:hover .Ad-ps-nav-title{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-ps-nav-item--prev:hover .Ad-ic{
  --tw-translate-x: -4px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-ps-nav-item--next:hover .Ad-ic{
  --tw-translate-x: 4px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* News sidebar: white box of best-selling products */

.Ad-sdb{
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.Ad-sd-box{
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
}

@media (min-width: 64rem){
  .Ad-sd-box{
    padding: 1.5rem;
  }
}

.Ad-sd-title{
  position: relative;
  margin: 0px;
  padding-bottom: 0.5rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-sd-title::after {
  content: "";
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 0.1875rem;
  width: 2.5rem;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

.Ad-sd-head .Ad-sd-title{
  min-width: 0px;
  white-space: nowrap;
}

@media (min-width: 64rem){
  .Ad-sd-head .Ad-sd-title{
    font-size: 1.125rem;
  }
}

/* one line: "Sản phẩm bán chạy" | Xem tất cả */

/* Best-selling products: photo | name (2 lines), red price + struck old price */

/* Desktop: sticky sidebar, top set by JS (andvnInitStickySidebar) */

@media (min-width: 64rem) {
  .Ad-sdb {
    position: sticky;
    top: var(--Ad-sty-top, 1.25rem);
  }
}

/* Image skeleton until loaded (.is-loaded) */

.Ad-sk {
  background-color: #f0f0f0;
  background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0));
  background-size: 50% 100%;
  background-repeat: no-repeat;
  background-position: -100% 0;
  animation: Ad-sk 1.2s ease-in-out infinite;
}

.Ad-sk.is-loaded {
  background: none;
  animation: none;
}

.Ad-sk img {
  transition: opacity 0.3s ease;
}

.Ad-js .Ad-sk:not(.is-loaded) img[loading=lazy] {
  opacity: 0;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-sk {
    animation: none;
  }
}

/* Section heading */

.Ad-sct-title{
  margin: 0px;
  margin-top: 0.375rem;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-sct-title{
    font-size: 1.75rem;
  }
}

@media (min-width: 64rem){
  .Ad-sct-title{
    font-size: 2.25rem;
  }
}

.Ad-sct-title:first-child{
  margin-top: 0px;
}

/* News: grey page of white cards (like the cart / account), no text over photos.
     Post card = photo 16:9 + category (red text) + title + optional excerpt + date.
     --lead: photo left / text right, large; --row: list row, photo left */

body.Ad:has(.Ad-nw) {
  background: #F8FAFC;
}

.Ad-nw .Ad-bc{
  padding-bottom: 1rem;
}

.Ad-ps{
  position: relative;
  display: flex;
  min-width: 0px;
  flex-direction: column;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-ps:hover {
  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.07);
}

.Ad-ps-media{
  position: relative;
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.Ad-ps-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-ps-body{
  display: flex;
  min-width: 0px;
  flex: 1 1 0%;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1.5rem;
}

.Ad-ps-cat{
  margin: 0px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-ps-title{
  margin: 0px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Ad-ps-title a{
  color: inherit;
}

.Ad-ps-title a::after {
  content: "";
  position: absolute;
  inset: 0px;
}

/* whole card is the link */

.Ad-ps:hover .Ad-ps-title{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-ps-excerpt{
  margin: 0px;
  font-size: 1.125rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Ad-ps-meta{
  margin: 0px;
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-ps--lead{
    display: grid;
    grid-template-columns: minmax(0,1.3fr) minmax(0,1fr);
  }

  .Ad-ps--lead .Ad-ps-media{
    align-self: stretch;
  }
}

.Ad-ps--lead .Ad-ps-body{
  justify-content: center;
  gap: 0.625rem;
  padding: 1rem;
}

@media (min-width: 48rem){
  .Ad-ps--lead .Ad-ps-body{
    padding: 1.5rem;
  }
}

@media (min-width: 64rem){
  .Ad-ps--lead .Ad-ps-body{
    padding: 2rem;
  }
}

.Ad-ps--lead .Ad-ps-title{
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
}

@media (min-width: 48rem){
  .Ad-ps--lead .Ad-ps-title{
    font-size: 1.5rem;
  }
}

@media (min-width: 64rem){
  .Ad-ps--lead .Ad-ps-title{
    font-size: 1.75rem;
  }
}

.Ad-ps--lead .Ad-ps-title {
  -webkit-line-clamp: 3;
}

.Ad-ps--lead .Ad-ps-excerpt{
  font-size: 1.125rem;
  -webkit-line-clamp: 3;
}

.Ad-ps--lead .Ad-ps-meta{
  margin-top: 0.25rem;
}

.Ad-ps--row{
  display: grid;
  grid-template-columns: 8.5rem minmax(0,1fr);
  align-items: center;
  gap: 0.875rem;
  padding: 0.625rem;
}

@media (min-width: 40rem){
  .Ad-ps--row{
    grid-template-columns: 14rem minmax(0,1fr);
    gap: 1.25rem;
    padding: 0.75rem;
  }
}

.Ad-ps--row .Ad-ps-media{
  border-radius: 0.5rem;
}

.Ad-ps--row .Ad-ps-body{
  padding: 0px;
  padding-right: 0.25rem;
}

@media (min-width: 64rem){
  .Ad-ps--row .Ad-ps-title{
    font-size: 1.125rem;
  }
}

.Ad-ps--row .Ad-ps-excerpt{
  display: none;
}

@media (min-width: 40rem) {
  .Ad-ps--row .Ad-ps-excerpt {
    display: -webkit-box;
  }
}

/* News archive: title + category chips, lead + 4 cards, rows | products */

.Ad-nw-cats{
  margin-top: 0.875rem;
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  scrollbar-width: none;
}

.Ad-nw-cats::-webkit-scrollbar {
  display: none;
}

.Ad-nw-cat{
  display: inline-flex;
  height: 2.25rem;
  flex-shrink: 0;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  box-shadow: inset 0 0 0 1px #E2E8F0;
}

.Ad-nw-cat:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-nw-cat[aria-current]{
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  box-shadow: inset 0 0 0 1px #F97316;
}

.Ad-nw-main .Ad-pgn{
  margin-top: 1.5rem;
}

/* Image hover shine */

/* Triggered by image or whole item (.Ad-shn-trigger) */

/* Eyebrow: two slanted orange strokes + short line in sentence case */

.Ad-eb{
  margin: 0px;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-eb::before {
  content: "";
  height: 0.75rem;
  width: 1.375rem;
  flex-shrink: 0;
  transform: skewX(-24deg);
  background: linear-gradient(90deg, #F97316 0 35%, transparent 35% 65%, #F97316 65%);
}

.Ad-eb--light{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

/* Home headings: larger, tighter, balanced */

.Ad-home .Ad-sct-title{
  font-size: 1.5rem;
  line-height: 1.3;
}

@media (min-width: 48rem){
  .Ad-home .Ad-sct-title{
    font-size: 1.875rem;
  }
}

@media (min-width: 64rem){
  .Ad-home .Ad-sct-title{
    font-size: 2.125rem;
  }
}

.Ad-home * + .Ad-sct-title{
  margin-top: 0.75rem;
}

/* Heading row: eyebrow, title, short text on the left | link on the right (bottom-aligned); stacked on phones */

.Ad-sct-row{
  margin-bottom: 2rem;
  display: grid;
  gap: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-sct-row{
    margin-bottom: 3rem;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: flex-end;
    gap: 3rem;
  }
}

.Ad-sct-row-side{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-sct-row-side{
    flex-direction: row;
    align-items: flex-end;
    gap: 2.5rem;
  }

  .Ad-sct-row-side--end{
    justify-content: flex-end;
  }
}

.Ad-sct-row-desc{
  margin: 0px;
  margin-top: 0.75rem;
  max-width: 40rem;
  font-size: 1.125rem;
  line-height: 1.65;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-sct-row-side > a{
  flex-shrink: 0;
}

/* Pill buttons with a trailing arrow */

.Ad-btn-solid{
  height: 2.5rem;
  border-radius: 9999px;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-btn-solid{
    height: 2.875rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
  }
}

.Ad-btn-line, .Ad-btn-white{
  display: inline-flex;
  height: 2.5rem;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  border-radius: 9999px;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
}

@media (min-width: 64rem){
  .Ad-btn-line, .Ad-btn-white{
    height: 2.75rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

/* Outline button: on hover the fill sweeps in from the left; on leave it carries on out to the right.
     Only background-size animates (the anchor side jumps while the fill is full or empty). */

.Ad-btn-line {
  --Ad-bl: #0A1128;
  color: var(--Ad-bl);
  box-shadow: inset 0 0 0 1.5px var(--Ad-bl);
  background: linear-gradient(var(--Ad-bl), var(--Ad-bl)) no-repeat right center/0 100%;
  transition: background-size 0.45s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease;
}

.Ad-btn-line:hover, .Ad-btn-line:focus-visible{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-position: left center;
  background-size: 100% 100%;
}

/* White button (on orange): same sweep, navy fill */

@media (prefers-reduced-motion: reduce) {
  .Ad-btn-line, .Ad-btn-white {
    transition: color 0.2s ease;
  }
}

:is(.Ad-btn-solid, .Ad-btn-line, .Ad-btn-white, .Ad-mr) .Ad-ic{
  font-size: 0.875rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

:is(.Ad-btn-solid, .Ad-btn-line, .Ad-btn-white, .Ad-mr):hover .Ad-ic{
  --tw-translate-x: 4px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* Text link with an arrow ("Xem tất cả …") */

.Ad-mr{
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  white-space: nowrap;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-mr:hover{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

/* Hero: navy band, photo on the right 64% fading into it (phones: behind the text under a veil) */

.Ad-hr{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-hr-media{
  position: absolute;
  inset: 0px;
  z-index: -1;
}

.Ad-hr-media::after {
  content: "";
  position: absolute;
  inset: 0px;
  background: linear-gradient(180deg, rgba(10, 17, 40, 0.74), rgba(10, 17, 40, 0.92));
}

.Ad-hr-img{
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 48rem) {
  .Ad-hr-media {
    left: auto;
    width: 64%;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 40%);
    mask-image: linear-gradient(90deg, transparent, #000 40%);
  }

  .Ad-hr-media::after {
    background: linear-gradient(90deg, rgba(10, 17, 40, 0.6), transparent 50%), linear-gradient(0deg, rgba(10, 17, 40, 0.55), transparent 35%);
  }
}

.Ad-hr-inner{
  display: flex;
  align-items: center;
  padding-top: 3rem;
  padding-bottom: 3.5rem;
}

@media (min-width: 64rem){
  .Ad-hr-inner{
    padding-top: 4.5rem;
    padding-bottom: 5rem;
  }
}

.Ad-hr-inner {
  min-height: clamp(34rem, 46vw, 46rem);
}

.Ad-hr-body{
  max-width: 52rem;
}

.Ad-hr .Ad-eb{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-hr-title{
  margin: 0px;
  margin-top: 1.25rem;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-hr-title{
    font-size: 2.5rem;
  }
}

@media (min-width: 64rem){
  .Ad-hr-title{
    font-size: 3rem;
  }
}

/* Bold words: orange */

.Ad-hr-title :is(b, strong){
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-hr-desc{
  margin: 0px;
  margin-top: 1.25rem;
  max-width: 32rem;
  font-size: 1.125rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-hr-acts{
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1.75rem;
       column-gap: 1.75rem;
  row-gap: 1rem;
}

.Ad-hr .Ad-btn-solid{
  height: 2.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-hr .Ad-btn-solid{
    height: 3.25rem;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
    font-size: 1rem;
  }
}

.Ad-hr-play{
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  gap: 0.75rem;
  border-width: 0px;
  background-color: transparent;
  padding: 0px;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-hr-play-ic{
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  font-size: 1rem;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (min-width: 64rem){
  .Ad-hr-play-ic{
    height: 3.25rem;
    width: 3.25rem;
  }
}

.Ad-hr-play-ic {
  box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, 0.7);
}

.Ad-hr-play-ic .Ad-ic{
  margin-left: 0.125rem;
  fill: currentColor;
}

.Ad-hr-play:hover .Ad-hr-play-ic, .Ad-hr-play:focus-visible .Ad-hr-play-ic{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

/* Strong points: three cells on a hairline, icon on an orange-tinted tile */

.Ad-hr-pts{
  margin: 0px;
  margin-top: 2.5rem;
  display: grid;
  max-width: 40rem;
  list-style-type: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0px;
}

@media (min-width: 64rem){
  .Ad-hr-pts{
    margin-top: 3.5rem;
  }
}

.Ad-hr-pts {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.Ad-hr-pts li{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-top: 1.25rem;
  padding-right: 0.75rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 40rem){
  .Ad-hr-pts li{
    flex-direction: row;
    align-items: center;
  }
}

.Ad-hr-pts li + li{
  padding-left: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-hr-pts li + li{
    padding-left: 1.25rem;
  }
}

.Ad-hr-pts li + li {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.12);
}

@media (min-width: 64rem) {
  .Ad-hr-pts{
    width: -moz-max-content;
    width: max-content;
    max-width: none;
    grid-template-columns: repeat(3, auto);
  }

  .Ad-hr-pts li{
    white-space: nowrap;
    padding-right: 2rem;
  }

  .Ad-hr-pts li + li{
    padding-left: 2rem;
  }
}

.Ad-hr-pts .Ad-ic{
  height: 2.75rem;
  width: 2.75rem;
  border-radius: 0.5rem;
  padding: 0.6875rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.14);
}

/* Video dialog (shared .Ad-mdl): 16:9 frame, black, close button over the corner */

.Ad-mdl--video{
  width: min(60rem, calc(100vw - 1rem));
  overflow: visible;
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.Ad-mdl--video .Ad-mdl-close{
  top: -1rem;
  right: -0.5rem;
  z-index: 1;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.Ad-vd-frame{
  aspect-ratio: 16 / 9;
}

.Ad-vd-frame iframe{
  display: block;
  height: 100%;
  width: 100%;
  border-width: 0px;
}

/* About: photo to the left page edge with a slanted right edge | text lined up with the content column */

.Ad-ab{
  display: grid;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-ab{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.Ad-ab-media{
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-ab-media{
    aspect-ratio: auto;
    min-height: 34rem;
    clip-path: polygon(0 0, 100% 0, calc(100% - 6rem) 100%, 0 100%);
  }
}

.Ad-ab-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-ab-body{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

@media (min-width: 64rem){
  .Ad-ab-body{
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
  }
}

.Ad-ab-body {
  padding-inline: var(--Ad-gutter);
}

@media (min-width: 64rem) {
  .Ad-ab-body {
    padding-left: 2rem;
    padding-right: max(var(--Ad-gutter), (100vw - var(--Ad-cnt)) / 2);
  }
}

.Ad-ab--text .Ad-ab-body{
  margin-left: auto;
  margin-right: auto;
  max-width: 48rem;
  align-items: center;
  text-align: center;
}

@media (min-width: 64rem){
  .Ad-ab--text .Ad-ab-body{
    grid-column: span 2 / span 2;
  }
}

.Ad-ab-desc{
  margin: 0px;
  margin-top: 1rem;
  font-size: 1.125rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Figures: big numbers, small orange icon + label */

.Ad-ab-stats{
  margin: 0px;
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: grid;
  width: 100%;
  list-style-type: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 0px;
}

.Ad-ab-stats li{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.Ad-ab-stats li:first-child{
  padding-left: 0px;
}

@media (min-width: 40rem){
  .Ad-ab-stats li{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.Ad-ab-stats li + li {
  box-shadow: inset 1px 0 0 #E2E8F0;
}

.Ad-ab-stats .Ad-ic{
  font-size: 1.375rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-ab-stats span{
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-ab-stats b{
  margin-bottom: 0.375rem;
  display: block;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 40rem){
  .Ad-ab-stats b{
    font-size: 1.75rem;
  }
}

@media (min-width: 64rem){
  .Ad-ab-stats b{
    font-size: 2.5rem;
  }
}

/* Product categories: tinted band, white cards (photo with a slanted lower edge, name, text, slanted arrow tab) */

.Ad-hpc{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 64rem){
  .Ad-hpc{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.Ad-hpc-grid{
  margin: 0px;
  display: grid;
  list-style-type: none;
  gap: 1rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-hpc-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-hpc-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-hpc-card{
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  box-shadow: var(--Ad-ring);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Ad-hpc-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 1.5rem 3rem -1.5rem rgba(10, 17, 40, 0.35), var(--Ad-ring);
}

.Ad-hpc-media{
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: linear-gradient(180deg, #F8FAFC, #DCE4EE);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), 0 100%);
}

.Ad-hpc-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 700ms;
}

.Ad-hpc-card:hover .Ad-hpc-img{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-hpc-body{
  min-width: 0px;
  flex: 1 1 0%;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  padding-bottom: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-hpc-body{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.Ad-hpc-title{
  margin: 0px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Ad-hpc-title a{
  color: inherit;
}

.Ad-hpc-title a::after {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: 1;
}

.Ad-hpc-card:hover .Ad-hpc-title{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-hpc-desc{
  margin: 0px;
  margin-top: 0.5rem;
  padding-right: 3.5rem;
  font-size: 1.125rem;
  line-height: 1.55;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-hpc-go{
  position: absolute;
  right: 1.25rem;
  bottom: 1.5rem;
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transform: skewX(-12deg);
}

.Ad-hpc-go .Ad-ic {
  transform: skewX(12deg);
  transition: transform 0.3s ease;
}

.Ad-hpc-card:hover .Ad-hpc-go{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

.Ad-hpc-card:hover .Ad-hpc-go .Ad-ic {
  transform: skewX(12deg) translateX(3px);
}

/* Solutions: white band; heading row (eyebrow + title | text + button), then a slider of tall photo cards */

.Ad-sol{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 64rem){
  .Ad-sol{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

/* Card: photo, dark fade, slanted orange stroke + name + sub line, arrow tab on links */

.Ad-sol-card{
  position: relative;
  display: block;
  aspect-ratio: 4/5;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(13 23 54 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-sol-card::after {
  content: "";
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  height: 9.5rem;
  background: linear-gradient(180deg, rgba(7, 13, 30, 0), rgba(7, 13, 30, 0.7) 45%, rgba(7, 13, 30, 0.9));
}

.Ad-sol-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 700ms;
}

.Ad-sol-card:hover .Ad-sol-img {
  transform: scale(1.06);
}

.Ad-sol-label{
  position: absolute;
  left: 1.25rem;
  right: 3.75rem;
  bottom: 1.5rem;
  z-index: 1;
  font-size: 1rem;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}

.Ad-sol-label::before {
  content: "";
  margin-bottom: 0.875rem;
  display: block;
  height: 0.25rem;
  width: 1.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  transform: skewX(-24deg);
  transform-origin: left;
  transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Ad-sol-card:hover .Ad-sol-label::before{
  width: 3.5rem;
}

.Ad-sol-label b{
  margin-bottom: 0.25rem;
  display: block;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-sol-label b{
    font-size: 1.25rem;
  }
}

.Ad-sol-label b {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Ad-sol-go{
  position: absolute;
  right: 1.25rem;
  bottom: 1.5rem;
  z-index: 1;
  display: flex;
  height: 2.25rem;
  width: 2.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transform: skewX(-12deg);
}

.Ad-sol-go .Ad-ic {
  transform: skewX(12deg);
}

.Ad-sol-card:hover .Ad-sol-go{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

/* Before Splide mounts: one row of cards, no jump */

.Ad-sol-slider:not(.is-initialized) .splide__list{
  display: flex;
  gap: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-sol-slider:not(.is-initialized) .splide__list{
    gap: 1rem;
  }
}

@media (min-width: 64rem){
  .Ad-sol-slider:not(.is-initialized) .splide__list{
    gap: 1.25rem;
  }
}

.Ad-sol-slider:not(.is-initialized) .splide__slide{
  width: 82%;
  flex-shrink: 0;
}

@media (min-width: 40rem){
  .Ad-sol-slider:not(.is-initialized) .splide__slide{
    width: calc((100% - 1rem) / 2);
  }
}

@media (min-width: 64rem){
  .Ad-sol-slider:not(.is-initialized) .splide__slide{
    width: calc((100% - 2.5rem) / 3);
  }
}

.Ad-sol-slider .splide__arrow:disabled{
  pointer-events: none;
  opacity: 0;
}

/* Projects: tinted band, heading row, 5 photo cards (lead card 2 × 2 on the left from 64rem) */

.Ad-pjs{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 64rem){
  .Ad-pjs{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.Ad-pjs-grid{
  display: grid;
  gap: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-pjs-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-pjs-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2,minmax(15rem,1fr));
    gap: 1.25rem;
  }
}

.Ad-pjc{
  position: relative;
  isolation: isolate;
  min-height: 16rem;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(13 23 54 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-pjc--lead{
  min-height: 20rem;
}

@media (min-width: 40rem){
  .Ad-pjc--lead{
    grid-column: span 2 / span 2;
  }
}

@media (min-width: 64rem){
  .Ad-pjc--lead{
    grid-row: span 2 / span 2;
  }
}

.Ad-pjc-img{
  position: absolute;
  inset: 0px;
  z-index: -2;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 700ms;
}

.Ad-pjc:hover .Ad-pjc-img {
  transform: scale(1.06);
}

.Ad-pjc-body{
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  padding: 1.25rem;
  padding-top: 3.5rem;
}

@media (min-width: 64rem){
  .Ad-pjc-body{
    padding: 1.5rem;
    padding-top: 4rem;
  }
}

.Ad-pjc-body {
  background: linear-gradient(180deg, rgba(7, 13, 30, 0), rgba(7, 13, 30, 0.72) 45%, rgba(7, 13, 30, 0.92));
}

@media (min-width: 64rem){
  .Ad-pjc--lead .Ad-pjc-body{
    padding: 2rem;
    padding-top: 5rem;
    padding-right: 5rem;
  }
}

.Ad-pjc-client{
  margin: 0px;
  margin-bottom: 0.375rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-pjc-title{
  margin: 0px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-pjc--lead .Ad-pjc-title{
  line-height: 1.2;
}

@media (min-width: 64rem){
  .Ad-pjc--lead .Ad-pjc-title{
    font-size: 1.625rem;
  }
}

.Ad-pjc-title a{
  color: inherit;
}

.Ad-pjc-title a::after {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: 2;
}

.Ad-pjc-facts{
  margin: 0px;
  margin-top: 0.625rem;
  display: flex;
  list-style-type: none;
  flex-wrap: wrap;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 0.25rem;
  padding: 0px;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}

.Ad-pjc-facts li{
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

.Ad-pjc-facts .Ad-ic{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-pjs-grid .Ad-pjc:not(.Ad-pjc--lead) :is(.Ad-pjc-client, .Ad-pjc-facts){
  display: none;
}

.Ad-pjc-go{
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  opacity: 0;
  transition-property: opacity,transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transform: skewX(-12deg) translateY(-6px);
}

.Ad-pjc-go .Ad-ic {
  transform: skewX(12deg);
}

.Ad-pjc:is(:hover, :focus-within) .Ad-pjc-go{
  opacity: 1;
  transform: skewX(-12deg);
}

.Ad-pjc-go:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

@media (hover: none) {
  .Ad-pjc-go{
    opacity: 1;
    transform: skewX(-12deg);
  }
}

/* Reviews: white band, heading row, slider of white quote cards */

.Ad-rev{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 64rem){
  .Ad-rev{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.Ad-rev-slider .splide__track{
  margin: -0.5rem;
  padding: 0.5rem;
}

/* room for the card shadow */

.Ad-rev-slider:not(.is-initialized) .splide__list{
  display: flex;
  gap: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-rev-slider:not(.is-initialized) .splide__list{
    gap: 1rem;
  }
}

@media (min-width: 64rem){
  .Ad-rev-slider:not(.is-initialized) .splide__list{
    gap: 1.25rem;
  }
}

.Ad-rev-slider:not(.is-initialized) .splide__slide{
  width: 100%;
  flex-shrink: 0;
}

@media (min-width: 40rem){
  .Ad-rev-slider:not(.is-initialized) .splide__slide{
    width: calc((100% - 1rem) / 2);
  }
}

@media (min-width: 64rem){
  .Ad-rev-slider:not(.is-initialized) .splide__slide{
    width: calc((100% - 2.5rem) / 3);
  }
}

.Ad-rev-slider .splide__slide{
  height: auto;
}

.Ad-rev-item{
  margin: 0px;
  display: flex;
  height: 100%;
  flex-direction: column;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-rev-item{
    padding: 2rem;
  }
}

.Ad-rev-item {
  box-shadow: var(--Ad-ring);
}

.Ad-rev-mark{
  display: block;
  font-size: 2.5rem;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-rev-mark .Ad-ic {
  fill: currentColor;
  stroke-width: 0;
}

.Ad-rev-quote{
  margin: 0px;
  margin-top: 1rem;
  flex: 1 1 0%;
}

.Ad-rev-quote p{
  margin: 0px;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-rev-quote p{
    font-size: 1.125rem;
  }
}

.Ad-rev-who{
  margin-top: 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding-top: 1.25rem;
  box-shadow: inset 0 1px 0 #E2E8F0;
}

.Ad-rev-av{
  display: flex;
  height: 3rem;
  width: 3rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  -o-object-fit: cover;
     object-fit: cover;
  font-size: 1.125rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-rev-who span:not(.Ad-rev-av){
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-rev-who b{
  display: block;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-rev-slider .splide__pagination{
  margin-top: 1.5rem;
  justify-content: center;
}

/* News: tinted band, heading row, post cards (3 or 4 a row) */

.Ad-hnw{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 64rem){
  .Ad-hnw{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.Ad-hnw-grid{
  display: grid;
  gap: 1rem;
}

@media (min-width: 40rem){
  .Ad-hnw-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-hnw-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }

  .Ad-hnw-grid--4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.Ad-ps--home .Ad-ps-media{
  aspect-ratio: 16/10;
}

.Ad-ps--home .Ad-ps-body{
  gap: 0.5rem;
}

.Ad-ps--home .Ad-ps-meta{
  order: -9999;
  margin-top: 0px;
  -moz-column-gap: 0.375rem;
       column-gap: 0.375rem;
  font-size: 1rem;
}

.Ad-ps--home .Ad-ps-meta .Ad-ic{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-ps--home .Ad-ps-title{
  font-size: 1rem;
  line-height: 1.45;
}

@media (min-width: 64rem){
  .Ad-ps--home .Ad-ps-title{
    font-size: 1.125rem;
  }
}

/* Contact banner: orange band with slanted stripes; [text, commitments, hotline + email | white CF7 form card] */

.Ad-cta{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-top: var(--Ad-sec-y);
  padding-bottom: var(--Ad-sec-y);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background: var(--Ad-grad);
}

.Ad-cta::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  z-index: -1;
  width: 60%;
  background: repeating-linear-gradient(-66deg, rgba(255, 255, 255, 0.07) 0 0.1875rem, transparent 0.1875rem 1.25rem);
  -webkit-mask-image: linear-gradient(90deg, #000 30%, transparent);
  mask-image: linear-gradient(90deg, #000 30%, transparent);
}

.Ad-cta-inner{
  display: grid;
  align-items: center;
  gap: 2rem;
}

@media (min-width: 64rem){
  .Ad-cta-inner{
    grid-template-columns: minmax(0,1fr) minmax(0,30rem);
    gap: 4rem;
  }
}

.Ad-cta-inner.is-solo{
  max-width: calc(44rem + 2 * var(--Ad-gutter));
}

@media (min-width: 64rem){
  .Ad-cta-inner.is-solo{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

.Ad-cta-body{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.Ad-cta-title{
  margin: 0px;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-cta-title{
    font-size: 2.125rem;
  }
}

@media (min-width: 64rem){
  .Ad-cta-title{
    font-size: 2.5rem;
  }
}

.Ad-cta-desc{
  margin: 0px;
  margin-top: 1rem;
  max-width: 34rem;
  font-size: 1.125rem;
  line-height: 1.65;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cta-points{
  margin: 0px;
  margin-top: 1.75rem;
  display: grid;
  list-style-type: none;
  gap: 0.75rem;
  padding: 0px;
}

.Ad-cta-points li{
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cta-points .Ad-ic{
  margin-top: 0.125rem;
  height: 1.25rem;
  width: 1.25rem;
  flex-shrink: 0;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0.1875rem;
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
  stroke-width: 3;
}

.Ad-cta-contact{
  margin: 0px;
  margin-top: 2rem;
  display: flex;
  list-style-type: none;
  flex-wrap: wrap;
  -moz-column-gap: 2.5rem;
       column-gap: 2.5rem;
  row-gap: 1.25rem;
  padding: 0px;
  padding-top: 1.75rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.Ad-cta-contact li{
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.Ad-cta-ic{
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: rgb(255 255 255 / .16);
  font-size: 1.125rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cta-contact small{
  display: block;
  font-size: 1rem;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cta-contact a{
  display: block;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 64rem){
  .Ad-cta-contact a{
    font-size: 1.25rem;
  }
}

.Ad-cta-contact a:hover{
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

/* Form card: white, own text colours (the band is white text) */

.Ad-cta-form{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-cta-form{
    padding: 2rem;
  }
}

.Ad-cta-form {
  box-shadow: 0 1.5rem 3rem -1.5rem rgba(10, 17, 40, 0.45);
}

.Ad-cta-form-title{
  margin: 0px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-cta-form-title{
    font-size: 1.375rem;
  }
}

.Ad-cta-form-note{
  margin: 0px;
  margin-top: 0.25rem;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-cta-form label{
  margin-bottom: 0.875rem;
}

.Ad-cta-form .wpcf7-form-control.wpcf7-textarea{
  height: 5.5rem;
}

.Ad-cta-form .wpcf7-submit{
  text-transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-hpc-card, .Ad-hpc-img, .Ad-pjc-img, .Ad-pjc-go, .Ad-sol-img, .Ad-sol-label::before, .Ad-hpc-go .Ad-ic {
    transition: none;
  }
}

/* Navy page head: breadcrumb, eyebrow, h1, short text, category chips; faint slanted panel on the right */

.Ad-lh{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  padding-top: 2rem;
  padding-bottom: 2.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-lh{
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
}

.Ad-lh::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: -6rem;
  z-index: -1;
  width: 40%;
  background: rgba(255, 255, 255, 0.03);
  transform: skewX(-12deg);
}

.Ad-lh .Ad-bc{
  margin-bottom: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-lh .Ad-bc{
    margin-bottom: 2rem;
  }
}

.Ad-lh .Ad-bc a{
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-lh .Ad-bc a:hover, .Ad-lh .Ad-bc .breadcrumb_last{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-lh-title{
  margin: 0px;
  margin-top: 0.75rem;
  max-width: 56rem;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-lh-title{
    font-size: 2.5rem;
  }
}

@media (min-width: 64rem){
  .Ad-lh-title{
    font-size: 3rem;
  }
}

.Ad-lh-desc{
  margin: 0px;
  margin-top: 1rem;
  max-width: 44rem;
  font-size: 1.125rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

/* Category key specs: tiles on the navy head (icon tile | label over value) */

.Ad-lh-specs{
  margin: 0px;
  margin-top: 1.75rem;
  display: grid;
  list-style-type: none;
  gap: 0.75rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-lh-specs{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-lh-specs{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.Ad-lh-specs li{
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  -moz-column-gap: 0.875rem;
       column-gap: 0.875rem;
  border-radius: 0.75rem;
  background-color: rgb(255 255 255 / .06);
  padding: 1rem;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.Ad-lh-spec-ic{
  grid-row: span 2 / span 2;
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.14);
}

.Ad-lh-spec-lb{
  align-self: flex-end;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.Ad-lh-specs b{
  margin-top: 0.125rem;
  align-self: flex-start;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-lh-chips{
  margin-top: 1.75rem;
}

.Ad-lh .Ad-nw-cat{
  background-color: rgb(255 255 255 / .08);
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  box-shadow: none;
}

.Ad-lh .Ad-nw-cat:hover{
  background-color: rgb(255 255 255 / .14);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-lh .Ad-nw-cat[aria-current]{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  box-shadow: none;
}

/* List body: tinted band, count line, cards, pagination */

.Ad-ctl-body{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-ctl-count{
  margin: 0px;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Filters: white card, one row per group (label | chips); active chip = orange-ink pill */

.Ad-flt{
  margin-bottom: 1.25rem;
  display: grid;
  gap: 0.75rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
}

@media (min-width: 64rem){
  .Ad-flt{
    padding: 1.25rem;
  }
}

.Ad-flt {
  box-shadow: var(--Ad-ring);
}

.Ad-flt-row{
  display: grid;
  gap: 0.5rem;
}

@media (min-width: 48rem){
  .Ad-flt-row{
    grid-template-columns: 7rem minmax(0,1fr);
    align-items: center;
  }
}

.Ad-flt-row + .Ad-flt-row{
  padding-top: 0.75rem;
  box-shadow: inset 0 1px 0 #E2E8F0;
}

.Ad-flt-label{
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-flt-chips{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.Ad-flt-chip{
  display: inline-flex;
  height: 2.25rem;
  align-items: center;
  white-space: nowrap;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  font-size: 1rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-flt-chip:hover{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-flt-chip[aria-current]{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-flt-meta{
  margin-bottom: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.Ad-flt-meta .Ad-ctl-count{
  margin-bottom: 0px;
}

.Ad-flt-reset{
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-flt-reset:hover{
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

/* Product card: white, photo on a light gradient, category, name (2 lines), 3 spec rows, "Xem chi tiết" + arrow tab */

.Ad-prc-grid{
  display: grid;
  gap: 1rem;
}

@media (min-width: 40rem){
  .Ad-prc-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-prc-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-prc{
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  box-shadow: var(--Ad-ring);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Ad-prc:hover {
  transform: translateY(-6px);
  box-shadow: 0 1.5rem 3rem -1.5rem rgba(10, 17, 40, 0.35), var(--Ad-ring);
}

.Ad-prc-media{
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: linear-gradient(180deg, #F8FAFC, #DCE4EE);
}

.Ad-prc-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 700ms;
}

.Ad-prc:hover .Ad-prc-img{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-sk .Ad-prc-img {
  transition: opacity 0.3s ease, transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

/* .Ad-sk img only fades opacity: keep the zoom */

.Ad-prc-body{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  padding: 1.25rem;
}

.Ad-prc-cat{
  margin: 0px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-prc-title{
  margin: 0px;
  margin-top: 0.375rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Ad-prc-title a{
  color: inherit;
}

.Ad-prc-title a::after {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: 1;
}

.Ad-prc:hover .Ad-prc-title{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-prc-specs{
  margin: 0px;
  margin-top: 0.875rem;
}

.Ad-prc-specs > div{
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
  font-size: 1rem;
  line-height: 1.4;
  box-shadow: inset 0 1px 0 #E2E8F0;
}

.Ad-prc-specs dt{
  max-width: 48%;
  flex-shrink: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* one line per spec: long text ends in … */

.Ad-prc-specs dd{
  margin: 0px;
  min-width: 0px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: right;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-prc-more{
  margin: 0px;
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-prc-go{
  display: flex;
  height: 2.25rem;
  width: 2.25rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 0.875rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transform: skewX(-12deg);
}

.Ad-prc-go .Ad-ic {
  transform: skewX(12deg);
}

.Ad-prc:hover .Ad-prc-go{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

/* Project grid: 3 a row, all cards the same size */

.Ad-pjl-grid{
  display: grid;
  gap: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-pjl-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-pjl-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-pjl-grid .Ad-pjc{
  min-height: 18rem;
}

@media (min-width: 64rem){
  .Ad-pjl-grid .Ad-pjc{
    min-height: 20rem;
  }
}

/* Product detail: tinted top [gallery | info], white [description | sticky specs], tinted related row */

.Ad-pdp-top{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-pdp .Ad-bc, .Ad-pjd .Ad-pdp-top .Ad-bc{
  margin-bottom: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-pdp .Ad-bc, .Ad-pjd .Ad-pdp-top .Ad-bc{
    margin-bottom: 2rem;
  }
}

.Ad-pdp-grid{
  display: grid;
  align-items: flex-start;
  gap: 2rem;
}

@media (min-width: 64rem){
  .Ad-pdp-grid{
    grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);
    gap: 4rem;
  }
}

.Ad-pdp-main{
  position: relative;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  box-shadow: var(--Ad-ring);
}

.Ad-pdp-main .splide__slide, div.Ad-pdp-main{
  aspect-ratio: 4/3;
}

.Ad-pdp-img{
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-pdp-main:not(.is-initialized) .splide__slide:not(:first-child) {
  display: none;
}

.Ad-pdp-thumbs{
  margin-top: 0.75rem;
}

.Ad-pdp-thumbs .splide__slide{
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.5rem;
}

.Ad-pdp-thumbs img{
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-pdp-thumbs:not(.is-initialized) .splide__list{
  display: flex;
  gap: 0.5rem;
}

.Ad-pdp-thumbs:not(.is-initialized) .splide__slide{
  width: calc((100% - 2rem) / 5);
  flex-shrink: 0;
}

.Ad-pdp-title{
  margin: 0px;
  margin-top: 0.875rem;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-pdp-title{
    font-size: 2rem;
  }
}

@media (min-width: 64rem){
  .Ad-pdp-title{
    font-size: 2.25rem;
  }
}

.Ad-pdp-lead{
  margin: 0px;
  margin-top: 1rem;
  font-size: 1.125rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-pdp-keys{
  margin: 0px;
  margin-top: 1.75rem;
  display: grid;
  list-style-type: none;
  gap: 0.75rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-pdp-keys{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Key spec tile: orange icon on a tinted slanted tile | label over value */

.Ad-pdp-keys > li{
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  -moz-column-gap: 0.875rem;
       column-gap: 0.875rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
  box-shadow: var(--Ad-ring);
}

.Ad-pdp-key-ic{
  grid-row: span 2 / span 2;
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.12);
}

.Ad-pdp-key-lb{
  align-self: flex-end;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-pdp-keys b{
  margin-top: 0.125rem;
  align-self: flex-start;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-pdp-acts{
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.Ad-pdp-acts :is(.Ad-btn-solid, .Ad-btn-line){
  height: 2.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 1rem;
}

@media (min-width: 64rem){
  .Ad-pdp-acts :is(.Ad-btn-solid, .Ad-btn-line){
    height: 3rem;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
    font-size: 1rem;
  }
}

.Ad-pdp-detail, .Ad-pjd-body{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-pdp-cols{
  display: grid;
  align-items: flex-start;
  gap: 2rem;
}

@media (min-width: 64rem){
  .Ad-pdp-cols{
    grid-template-columns: minmax(0,1fr) minmax(0,24rem);
    gap: 4rem;
  }
}

.Ad-pdp-cols.is-solo{
  max-width: calc(56rem + 2 * var(--Ad-gutter));
}

@media (min-width: 64rem){
  .Ad-pdp-cols.is-solo{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

.Ad-pdp-h2{
  margin: 0px;
  margin-bottom: 1.25rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-pdp-h2{
    font-size: 1.5rem;
  }
}

.Ad-pdp-specs{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-pdp-specs{
    padding: 1.5rem;
  }
}

.Ad-pdp-side{
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-pdp-side{
    position: sticky;
  }
}

.Ad-pdp-side {
  top: calc(var(--Ad-hd-h) + 1.5rem);
}

/* specs + advice card stick together */

.Ad-pdp-rel{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

/* Project detail: navy head with a facts bar, the photo overlaps the head's lower edge */

.Ad-pjd{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

/* the photo overlaps the head on the page background: keep it the body's white */

.Ad-lh--detail{
  padding-bottom: 5rem;
}

@media (min-width: 64rem){
  .Ad-lh--detail{
    padding-bottom: 8rem;
  }
}

.Ad-pjd-facts{
  margin: 0px;
  margin-top: 2rem;
  display: grid;
  max-width: 56rem;
  gap: 0.75rem;
}

@media (min-width: 40rem){
  .Ad-pjd-facts{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.Ad-pjd-facts > div{
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
  border-radius: 0.75rem;
  background-color: rgb(255 255 255 / .06);
  padding: 1rem;
}

.Ad-pjd-facts .Ad-ic{
  grid-row: span 2 / span 2;
  font-size: 1.375rem;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-pjd-facts dt{
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.Ad-pjd-facts dd{
  margin: 0px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-pjd-media{
  position: relative;
  margin: 0px;
  margin-top: -3rem;
  aspect-ratio: 16/10;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(13 23 54 / var(--tw-bg-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-pjd-media{
    aspect-ratio: 21/9;
  }
}

@media (min-width: 64rem){
  .Ad-pjd-media{
    margin-top: -5rem;
  }
}

.Ad-pjd-media {
  box-shadow: 0 1.5rem 3rem -1.5rem rgba(10, 17, 40, 0.45);
}

.Ad-pjd-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-pjd-ask{
  margin: 0px;
  margin-top: 1.25rem;
  margin-bottom: 1rem;
  font-size: 1rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* News list: lead post, then 3-column cards (also "Bài viết liên quan") */

.Ad-nwl .Ad-ps--lead{
  margin-bottom: 1rem;
}

@media (min-width: 64rem){
  .Ad-nwl .Ad-ps--lead{
    margin-bottom: 1.25rem;
  }
}

.Ad-nwl-grid{
  display: grid;
  gap: 1rem;
}

@media (min-width: 40rem){
  .Ad-nwl-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-nwl-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-nwl-grid .Ad-ps-body{
  gap: 0.5rem;
  padding: 1.5rem;
}

.Ad-nwl-grid .Ad-ps-title{
  font-size: 1.125rem;
  line-height: 1.4;
}

/* News detail: navy head (category, h1, date · reading time), white body [article | sticky sidebar] */

.Ad-nwd-cat{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-nwd-cat:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-nwd-meta{
  margin: 0px;
  margin-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  row-gap: 0.5rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-nwd-meta span{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.Ad-nwd-meta .Ad-ic{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-nwd-body{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-nwd-cols{
  display: grid;
  align-items: flex-start;
  gap: 2.5rem;
}

@media (min-width: 64rem){
  .Ad-nwd-cols{
    grid-template-columns: minmax(0,1fr) minmax(0,22rem);
    gap: 4rem;
  }
}

.Ad-nwd-main{
  min-width: 0px;
}

.Ad-nwd-media{
  position: relative;
  margin: 0px;
  margin-bottom: 1.75rem;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 0.75rem;
}

.Ad-nwd-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* Plain page: head + content in one centred reading column, no sidebar */

.Ad-pgd-wrap {
  max-width: calc(48rem + 2 * var(--Ad-gutter));
}

/* Sidebar: newest posts (thumb | title + date), navy advice card */

.Ad-sd-list{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
}

.Ad-sd-list li + li{
  margin-top: 0.875rem;
  padding-top: 0.875rem;
  box-shadow: inset 0 1px 0 #E2E8F0;
}

.Ad-sd-item{
  display: grid;
  grid-template-columns: 5rem minmax(0,1fr);
  align-items: center;
  gap: 0.875rem;
}

.Ad-sd-img{
  display: block;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.5rem;
}

.Ad-sd-img img{
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-sd-body b{
  display: block;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Ad-sd-item:hover b{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-sd-body time{
  margin-top: 0.25rem;
  display: block;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: -3rem;
  z-index: -1;
  width: 55%;
  background: rgba(255, 255, 255, 0.04);
  transform: skewX(-12deg);
}

.Ad-sd-ask-title{
  margin: 0px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask p{
  margin: 0px;
  margin-top: 0.5rem;
  font-size: 1rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask-tel{
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.375rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask-tel .Ad-ic{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-sd-ask-tel:hover{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

/* Contact: [navy info card | white form card], map card below */

.Ad-ctp-grid{
  display: grid;
  align-items: flex-start;
  gap: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-ctp-grid{
    grid-template-columns: minmax(0,5fr) minmax(0,7fr);
  }
}

.Ad-ctp-grid.is-solo{
  max-width: 40rem;
}

@media (min-width: 64rem){
  .Ad-ctp-grid.is-solo{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

.Ad-ctp-info{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-ctp-info{
    padding: 2rem;
  }
}

.Ad-ctp-info::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: -4rem;
  z-index: -1;
  width: 50%;
  background: rgba(255, 255, 255, 0.03);
  transform: skewX(-12deg);
}

.Ad-ctp-company{
  margin: 0px;
  margin-bottom: 1.5rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-ctp-company{
    font-size: 1.25rem;
  }
}

.Ad-ctp-list{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
}

.Ad-ctp-list li{
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  -moz-column-gap: 0.875rem;
       column-gap: 0.875rem;
}

.Ad-ctp-list li + li{
  margin-top: 1.25rem;
}

.Ad-ctp-ic{
  grid-row: span 2 / span 2;
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.14);
}

.Ad-ctp-lb{
  align-self: flex-end;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.Ad-ctp-val{
  align-self: flex-start;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

a.Ad-ctp-val{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

a.Ad-ctp-val:hover{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-ctp-soc{
  margin-top: 1.75rem;
}

.Ad-ctp-note{
  margin-top: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-ctp-form{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-ctp-form{
    padding: 2rem;
  }
}

.Ad-ctp-form {
  box-shadow: var(--Ad-ring);
}

.Ad-ctp-form .Ad-pdp-h2{
  margin-bottom: 0.5rem;
}

.Ad-ctp-hint{
  margin: 0px;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-ctp-map{
  margin-top: 1.25rem;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-ctp-map{
    aspect-ratio: 21/8;
  }
}

.Ad-ctp-map {
  box-shadow: var(--Ad-ring);
}

.Ad-ctp-map iframe{
  display: block;
  height: 100%;
  width: 100%;
  border-width: 0px;
}

/* About page: story (tinted), values cards (white), milestones (navy timeline); reviews tinted to keep bands alternating */

.Ad-abp-story{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-abp-values{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-sec-y);
  padding-bottom: var(--Ad-sec-y);
}

.Ad-abp-vgrid{
  margin: 0px;
  display: grid;
  list-style-type: none;
  gap: 1rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-abp-vgrid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-abp-vgrid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-abp-vcard{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
}

@media (min-width: 64rem){
  .Ad-abp-vcard{
    padding: 2rem;
  }
}

.Ad-abp-vic{
  display: flex;
  height: 3rem;
  width: 3rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  font-size: 1.375rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.12);
}

.Ad-abp-vtitle{
  margin: 0px;
  margin-top: 1.25rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-abp-vtitle{
    font-size: 1.25rem;
  }
}

.Ad-abp-vtext{
  margin: 0px;
  margin-top: 0.625rem;
  font-size: 1rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-abp-time{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-sec-y);
  padding-bottom: var(--Ad-sec-y);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-abp-time::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: -6rem;
  z-index: -1;
  width: 40%;
  background: rgba(255, 255, 255, 0.03);
  transform: skewX(-12deg);
}

.Ad-abp-time .Ad-sct-title{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-abp-steps{
  margin: 0px;
  display: grid;
  list-style-type: none;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  row-gap: 2rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-abp-steps{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-abp-steps{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.Ad-abp-step{
  position: relative;
  padding-top: 1.75rem;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.14);
}

.Ad-abp-step::before {
  content: "";
  position: absolute;
  top: -0.3125rem;
  left: 0px;
  height: 0.75rem;
  width: 1.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  transform: skewX(-24deg);
}

.Ad-abp-year{
  display: block;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-abp-year{
    font-size: 2.25rem;
  }
}

.Ad-abp-stitle{
  margin: 0px;
  margin-top: 0.875rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-abp-stext{
  margin: 0px;
  margin-top: 0.5rem;
  font-size: 1rem;
  line-height: 1.65;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-abp .Ad-rev{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
}

/* Solutions: list grid (4 a row), detail benefits (white cards on tint) and suitable products (white band) */

.Ad-solg-grid{
  margin: 0px;
  display: grid;
  list-style-type: none;
  gap: 0.75rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-solg-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-solg-grid{
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.Ad-sod-points{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

.Ad-sod-points .Ad-abp-vcard{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  box-shadow: var(--Ad-ring);
}

.Ad-sod-prods{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

/* Search: big field + type chips (with counts) on the navy head, result cards on the tinted body */

.Ad-srp-form{
  margin-top: 1.75rem;
  margin-left: 0px;
  margin-right: 0px;
  max-width: 44rem;
}

.Ad-srp-n{
  margin-left: 0.5rem;
  display: inline-flex;
  height: 1.5rem;
  min-width: 1.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: rgb(255 255 255 / .12);
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  font-size: 1rem;
  line-height: 1;
}

.Ad-nw-cat[aria-current] .Ad-srp-n{
  background-color: rgb(255 255 255 / .24);
}

.Ad-srp-list{
  display: grid;
  gap: 1rem;
}

.Ad-sr-item{
  position: relative;
  display: grid;
  gap: 1rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1rem;
}

@media (min-width: 40rem){
  .Ad-sr-item{
    grid-template-columns: 16rem minmax(0,1fr);
    gap: 1.5rem;
  }
}

.Ad-sr-item {
  box-shadow: var(--Ad-ring);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Ad-sr-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 1.25rem 2.5rem -1.5rem rgba(10, 17, 40, 0.3), var(--Ad-ring);
}

.Ad-sr-media{
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.5rem;
}

.Ad-sr-img{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-sr-body{
  display: flex;
  min-width: 0px;
  flex-direction: column;
}

@media (min-width: 40rem){
  .Ad-sr-body{
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }
}

.Ad-sr-meta{
  margin: 0px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-sr-title{
  margin: 0px;
  margin-top: 0.375rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 64rem){
  .Ad-sr-title{
    font-size: 1.25rem;
  }
}

.Ad-sr-title a{
  color: inherit;
}

.Ad-sr-title a::after {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: 1;
}

.Ad-sr-item:hover .Ad-sr-title{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-sr-excerpt{
  margin: 0px;
  margin-top: 0.5rem;
  font-size: 1.125rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.Ad-sr-item:hover .Ad-prc-go{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

.Ad-srp-empty{
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  max-width: 36rem;
  text-align: center;
}

.Ad-srp-empty p{
  margin: 0px;
  font-size: 1rem;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-srp-empty-ic{
  margin-bottom: 1rem;
  display: inline-flex;
  height: 3.5rem;
  width: 3.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  font-size: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.12);
}

/* 404: navy screen with a large code, search field, actions; quick links on tint */

.Ad-404-hero{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(10 17 40 / var(--tw-bg-opacity, 1));
  padding-top: 4rem;
  padding-bottom: 4rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-404-hero{
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}

.Ad-404-hero::before {
  content: "";
  position: absolute;
  top: 0px;
  bottom: 0px;
  right: -6rem;
  z-index: -1;
  width: 40%;
  background: rgba(255, 255, 255, 0.03);
  transform: skewX(-12deg);
}

.Ad-404-inner{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.Ad-404-code{
  margin: 0px;
  font-size: 6rem;
  font-weight: 700;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-404-code{
    font-size: 8rem;
  }
}

@media (min-width: 64rem){
  .Ad-404-code{
    font-size: 10rem;
  }
}

.Ad-404-code span{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-404-title{
  margin: 0px;
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem){
  .Ad-404-title{
    font-size: 1.875rem;
  }
}

@media (min-width: 64rem){
  .Ad-404-title{
    font-size: 2.25rem;
  }
}

.Ad-404-desc{
  margin: 0px;
  margin-top: 0.75rem;
  max-width: 36rem;
  font-size: 1.125rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.Ad-404-form{
  margin-top: 2rem;
  width: 100%;
  max-width: 40rem;
}

.Ad-404-acts{
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
}

.Ad-btn-line--light {
  --Ad-bl: #fff;
}

.Ad-btn-line--light:hover, .Ad-btn-line--light:focus-visible{
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Ad-404-links{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 250 / var(--tw-bg-opacity, 1));
  padding-top: var(--Ad-pg-y);
  padding-bottom: var(--Ad-pg-y);
}

/* Quick links (404, empty search): white tiles icon | name + line | arrow tab */

.Ad-qlk{
  margin: 0px;
  display: grid;
  list-style-type: none;
  gap: 1rem;
  padding: 0px;
}

@media (min-width: 40rem){
  .Ad-qlk{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-qlk{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.Ad-qlk-item{
  display: flex;
  height: 100%;
  align-items: center;
  gap: 0.875rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.25rem;
  box-shadow: var(--Ad-ring);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.Ad-qlk-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 1.25rem 2.5rem -1.5rem rgba(10, 17, 40, 0.3), var(--Ad-ring);
}

.Ad-qlk-ic{
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  background: rgba(249, 115, 22, 0.12);
}

.Ad-qlk-tx{
  min-width: 0px;
  flex: 1 1 0%;
  font-size: 1rem;
  line-height: 1.45;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-qlk-tx b{
  display: block;
  font-size: 1rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-qlk-item:hover .Ad-qlk-tx b{
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.Ad-qlk-go{
  display: flex;
  height: 2.25rem;
  width: 2.25rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 0.875rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transform: skewX(-12deg);
}

.Ad-qlk-go .Ad-ic {
  transform: skewX(12deg);
}

.Ad-qlk-item:hover .Ad-qlk-go{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

/* Text that changes colour on hover fades instead of jumping */

:is(.Ad-prc-title, .Ad-hpc-title, .Ad-pjc-title, .Ad-ps-title, .Ad-mr, .Ad-nv a, .Ad-tb a, .Ad-ft-links a, .Ad-ft-info a, .Ad-bc a, .Ad-sol-label b, .Ad-pdp-cat) {
  transition: color 0.3s ease;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-prc, .Ad-prc-img, .Ad-prc-title, .Ad-hpc-title, .Ad-pjc-title, .Ad-ps-title, .Ad-mr {
    transition: none;
  }
}

/* Footer: deep navy, slanted orange bar on the top edge; brand | quick links | policies | contact; copyright row */

.Ad-ft{
  position: relative;
  --tw-bg-opacity: 1;
  background-color: rgb(6 11 26 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.Ad-ft::before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  height: 12px;
  width: min(24rem, 45%);
  background: var(--Ad-grad);
  clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) 100%, 0 100%);
}

.Ad-ft a{
  color: inherit;
}

.Ad-ft a:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-ft-main{
  display: grid;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 2.5rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

@media (min-width: 40rem){
  .Ad-ft-main{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem){
  .Ad-ft-main{
    grid-template-columns: minmax(0,1.4fr) minmax(0,0.8fr) minmax(0,0.9fr) minmax(0,1.3fr);
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }
}

.Ad-ft .Ad-br-img{
  height: 3.25rem;
}

@media (min-width: 64rem){
  .Ad-ft .Ad-br-img{
    height: 3.75rem;
  }
}

.Ad-ft-desc{
  margin: 0px;
  margin-top: 1.25rem;
  max-width: 22rem;
  font-size: 1.125rem;
  line-height: 1.7;
}

.Ad-ft-soc{
  margin: 0px;
  margin-top: 1.5rem;
  display: flex;
  list-style-type: none;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0px;
}

.Ad-ft-soc a{
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: rgb(255 255 255 / .06);
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-ft-soc a:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-ft-heading{
  margin: 0px;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-ft-links{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
  font-size: 1rem;
  line-height: 1.5;
}

.Ad-ft-links li + li{
  margin-top: 0.625rem;
}

.Ad-ft-links a{
  display: inline-flex;
  min-height: 1.5rem;
  align-items: center;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.Ad-ft-info{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
  font-size: 1rem;
  line-height: 1.6;
}

.Ad-ft-info li{
  display: flex;
  gap: 0.75rem;
}

.Ad-ft-info li + li{
  margin-top: 0.875rem;
}

.Ad-ft-info .Ad-ic{
  margin-top: 0.25rem;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-ft-info span a{
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-ft-info span a:hover{
  --tw-text-opacity: 1;
  color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.Ad-ft-info small{
  font-size: 1rem;
}

.Ad-ft-bottom{
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  font-size: 1rem;
  line-height: 1.5;
}

@media (min-width: 40rem){
  .Ad-ft-bottom{
    flex-direction: row;
    justify-content: space-between;
  }
}

.Ad-ft-bottom {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.Ad-ft-bottom p{
  margin: 0px;
}

/* Floating buttons (bottom-up): back to top, call */

.Ad-call-float{
  position: fixed;
  right: 0.9375rem;
  bottom: 4.5rem;
  z-index: 40;
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
  font-size: 1.125rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  animation: Ad-ring 1.5s ease infinite;
}

.Ad-call-float:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 48rem) {
  .Ad-call-float{
    display: none;
  }
}

/* phones only */

@media (prefers-reduced-motion: reduce) {
  .Ad-call-float {
    animation: none;
  }
}

#Ad-bt{
  pointer-events: none;
  position: fixed;
  right: 0.9375rem;
  bottom: 1.25rem;
  z-index: 40;
  display: flex;
  height: 2.5rem;
  width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  opacity: 0;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

#Ad-bt.is-visible{
  pointer-events: auto;
  opacity: 1;
}

#Ad-bt:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(234 88 12 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Icon loops on its own while the button shows: slides up out of the top, comes back up from the bottom, rests */

.Ad-bt-icon{
  position: relative;
  display: block;
  height: 1.25rem;
  width: 1.25rem;
  overflow: hidden;
}

.Ad-bt-icon .Ad-ic{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
}

#Ad-bt.is-visible .Ad-bt-icon .Ad-ic {
  animation: Ad-bt-up 2.4s infinite;
}

@keyframes Ad-bt-up {
  /* out fast (ease-in), back at once from below (ease-out): hidden only ~0.15s */

  0%, 55% {
    transform: none;
    animation-timing-function: cubic-bezier(0.55, 0, 1, 0.45);
  }

  66% {
    transform: translateY(-24px);
  }

  66.01% {
    transform: translateY(24px);
    animation-timing-function: cubic-bezier(0, 0.55, 0.45, 1);
  }

  85%, 100% {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  #Ad-bt.is-visible .Ad-bt-icon .Ad-ic {
    animation: none;
  }
}

/* Scroll-progress ring around the back-to-top button: --Ad-prg (0–1) set by andvnInitProgress */

.Ad-bt-ring{
  pointer-events: none;
  position: absolute;
  inset: -5px;
  height: calc(100% + 10px);
  width: calc(100% + 10px);
  transform: rotate(-90deg);
  fill: none;
  stroke-width: 2;
}

.Ad-bt-ring circle {
  stroke: #F97316;
  opacity: 0.15;
}

.Ad-bt-ring .Ad-bt-bar {
  stroke: #F97316;
  opacity: 1;
  stroke-linecap: round;
  stroke-dasharray: 145;
  stroke-dashoffset: calc(145 * (1 - var(--Ad-prg, 0)));
}

/* Scroll reveal (custom.js andvnInitReveal); hidden only with JS */

@media (prefers-reduced-motion: no-preference) {
  .Ad-js [data-ad-rv]:not([data-ad-rv=self], [data-ad-rv-items]) > *, .Ad-js [data-ad-rv=self], .Ad-js .Ad-rv-item {
    opacity: 0;
  }

  .Ad-js [data-ad-rv].is-revealed:not([data-ad-rv=self], [data-ad-rv-items]) > *, .Ad-js [data-ad-rv=self].is-revealed, .Ad-js .is-revealed .Ad-rv-item, .Ad-js [data-ad-rv=each] > .is-revealed {
    animation: Ad-rv 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275) calc(var(--Ad-i, 0) * 80ms) both;
  }

  [data-ad-rv-from=left] {
    --Ad-rx: -30px;
    --Ad-ry: 0;
  }

  /* slide in from the left instead of from below */
}

@keyframes Ad-rv {
  from {
    opacity: 0;
    transform: translate(var(--Ad-rx, 0), var(--Ad-ry, 30px));
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes Ad-spin {
  to {
    transform: rotate(360deg);
  }
}

/* Pagination */

.Ad-pgn{
  margin-top: 2.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}

@media (min-width: 64rem){
  .Ad-pgn{
    margin-top: 3rem;
  }
}

.Ad-pgn .page-numbers{
  display: flex;
  height: 2.5rem;
  min-width: 2.5rem;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 64rem){
  .Ad-pgn .page-numbers{
    height: 2.75rem;
    min-width: 2.75rem;
  }
}

.Ad-pgn a.page-numbers:hover{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-pgn .page-numbers.current{
  border-color: transparent;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  background-image: var(--Ad-grad);
}

.Ad-pgn .page-numbers.dots{
  border-color: transparent;
  background-color: transparent;
}

.Ad-pgn .page-numbers .Ad-ic{
  font-size: 1.25rem;
}

.static{
  position: static;
}

.fixed{
  position: fixed;
}

.relative{
  position: relative;
}

.sticky{
  position: sticky;
}

.block{
  display: block;
}

.inline{
  display: inline;
}

.flex{
  display: flex;
}

.table{
  display: table;
}

.\!grid{
  display: grid !important;
}

.grid{
  display: grid;
}

.hidden{
  display: none;
}

.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.resize{
  resize: both;
}

.rounded{
  border-radius: 0.25rem;
}

.border{
  border-width: 1px;
}

.italic{
  font-style: italic;
}

.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline{
  outline-style: solid;
}

.ring{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

/* Base */

/* Product card (andvn-woo/parts/product-card.php). Outside @layer + .Adw-card.Ad-pc: the plugin's unlayered .Adw-card rules
   (border, padding, price colours, wishlist position) would otherwise win. */

.Adw-card.Ad-pc{
  position: relative;
  margin: 0px;
  display: flex;
  height: 100%;
  list-style-type: none;
  flex-direction: column;
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0px;
  box-shadow: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.Adw-card.Ad-pc:hover {
  border-color: rgba(0, 0, 0, 0.22);
  box-shadow: 0 0.75rem 1.5rem -1rem rgba(0, 0, 0, 0.45);
}

.Ad-pst .Adw-card.Ad-pc{
  height: 100%;
}

.Adw-card.Ad-pc .Ad-pc-link{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  padding: 0.625rem;
  padding-bottom: 0px;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-media{
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.6875rem;
  margin-bottom: 1.0625rem;
  display: block;
  aspect-ratio: 1 / 1;
  width: 90%;
  padding: 0.625rem;
}

.Adw-card.Ad-pc .Ad-pc-img{
  display: block;
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Adw-card.Ad-pc:hover .Ad-pc-img {
  transform: translateY(-0.25rem);
}

.Adw-card.Ad-pc .Ad-pc-title{
  margin: 0px;
  margin-bottom: 0.5rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 2.71875rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc:hover .Ad-pc-title{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-chips{
  margin-bottom: 0.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.Adw-card.Ad-pc .Ad-pc-chips span{
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.6875rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-price{
  margin-bottom: 0.25rem;
  display: block;
}

.Adw-card.Ad-pc .Ad-pc-price .Adw-price{
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  -moz-column-gap: 0.375rem;
       column-gap: 0.375rem;
}

.Adw-card.Ad-pc .Ad-pc-price ins{
  font-size: 1rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  text-decoration-line: none;
}

@media (min-width: 40rem){
  .Adw-card.Ad-pc .Ad-pc-price ins{
    font-size: 1.125rem;
  }
}

.Adw-card.Ad-pc .Ad-pc-price del{
  font-size: 0.6875rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

@media (min-width: 40rem){
  .Adw-card.Ad-pc .Ad-pc-price del{
    font-size: 1rem;
  }
}

.Adw-card.Ad-pc .Ad-pc-price .Adw-price-from{
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-member{
  margin-bottom: 0.25rem;
  display: block;
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(10 17 40 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-member b{
  font-weight: 600;
}

.Adw-card.Ad-pc .Ad-pc-off{
  position: absolute;
  left: -0.375rem;
  top: 0.625rem;
  z-index: 4;
  display: inline-flex;
  height: 1.625rem;
  align-items: center;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  padding-left: 0.5625rem;
  padding-right: 0.5625rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  border-radius: 0.25rem 0.5rem 0.5rem 0;
  box-shadow: 0 0.25rem 0.5rem rgba(215, 0, 24, 0.35);
}

.Adw-card.Ad-pc {
  /* discount ribbon like shopkey: -x%, sticks out left */
}

.Adw-card.Ad-pc .Ad-pc-off::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 100%;
  height: 0px;
  width: 0px;
  border-top: 0.375rem solid #EA580C;
  border-left: 0.375rem solid transparent;
}

.Adw-card.Ad-pc {
  /* fold under the overhang */
}

.Adw-card.Ad-pc .Ad-pc-zero{
  position: absolute;
  top: 0.375rem;
  right: 0.5rem;
  display: flex;
  height: 1.375rem;
  align-items: center;
  gap: 0.1875rem;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 247 237 / var(--tw-bg-opacity, 1));
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 0.625rem;
  font-weight: 500;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(234 88 12 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc {
  /* navy pill, orange 0% (5.4:1 on navy) */
}

.Adw-card.Ad-pc .Ad-pc-zero b{
  font-size: 1rem;
  font-weight: 800;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-foot{
  margin-top: auto;
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: space-between;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  padding-bottom: 0.625rem;
}

.Adw-card.Ad-pc .Ad-pc-foot .Adw-rating--badge{
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Adw-card.Ad-pc .Ad-pc-foot .Adw-rating--badge svg{
  height: 1.125rem;
  width: 1.125rem;
  fill: #F97316;
}

.Adw-card.Ad-pc .Adw-wish{
  position: static;
  margin-left: auto;
  display: flex;
  height: 2rem;
  width: 2rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.Adw-card.Ad-pc .Adw-wish:hover, .Adw-card.Ad-pc .Adw-wish[aria-pressed=true]{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

/* Product list grid: 5 columns on PC like cellphones (plugin grid is outside @layer) */

.Adw-products.Ad-pgr {
  gap: 0.625rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 40rem) {
  .Adw-products.Ad-pgr {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 64rem) {
  .Adw-products.Ad-pgr {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 80rem) {
  .Adw-products.Ad-pgr {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

/* Product page: plugin parts restyled (plugin CSS is outside @layer) */

.Ad-pd .Adw-gal-main .splide__track > .splide__list > .splide__slide {
  aspect-ratio: 4/3;
  background: #fff;
  border: 1px solid #E2E8F0;
}

.Ad-pd .Adw-gal-main .splide__track > .splide__list > .Ad-feat-slide {
  border: 0;
  cursor: default;
}

.Ad-pd .Adw-gal-main .Adw-gal-img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-buy-pricebox .Adw-buy-price {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.3;
}

.Ad-buy-pricebox .Adw-price {
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.Ad-buy-pricebox :is(.Adw-price, .Adw-buy-price) ins {
  font-size: 1.5rem;
  font-weight: 700;
  color: #F97316 !important;
  text-decoration: none !important;
}

.Ad-buy-pricebox :is(.Adw-price, .Adw-buy-price) del {
  font-size: 1rem;
  color: #64748B !important;
  font-weight: 400;
  text-decoration: line-through !important;
}

:is(.Adw-price, .Adw-buy-price) ins {
  color: #F97316 !important;
  font-weight: 700;
  text-decoration: none !important;
}

:is(.Adw-price, .Adw-buy-price) del {
  color: #64748B !important;
  font-size: 0.875em;
  text-decoration: line-through !important;
}

.Adw-buy-actions.Ad-buy-actions {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.5rem;
}

/* MUA NGAY | cart icon */

.Ad-buy-actions > .Adw-buy-now.Ad-buy-now {
  grid-column: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.125rem;
  min-height: 3.75rem;
  border-radius: 0.625rem;
}

.Ad-buy-now b {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
}

.Ad-buy-now span {
  font-size: 1rem;
  font-weight: 500;
}

.Ad-buy-actions > .Adw-buy-add.Ad-buy-add {
  grid-column: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.125rem;
  width: 3.75rem;
  min-height: 3.75rem;
  border: 2px solid #F97316;
  border-radius: 0.625rem;
  background: #fff;
  color: #F97316;
  font-size: 0.625rem;
  font-weight: 600;
  cursor: pointer;
}

.Ad-buy-add svg {
  width: 1.625rem;
  height: 1.625rem;
}

.Ad-buy-add:hover {
  background: #FFF7ED;
}

.Ad-pd .Adw-wish-detail {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 1rem;
  color: #1E293B;
  cursor: pointer;
  transition: color 0.2s;
}

.Ad-pd .Adw-wish-detail svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: none;
  stroke: currentColor;
  transition: transform 0.2s, fill 0.2s;
}

.Ad-pd .Adw-wish-detail:hover {
  color: #F97316;
}

.Ad-pd .Adw-wish-detail .Adw-wish-added, .Ad-pd .Adw-wish-detail[aria-pressed=true] .Adw-wish-add {
  display: none;
}

.Ad-pd .Adw-wish-detail[aria-pressed=true] {
  color: #F97316;
}

.Ad-pd .Adw-wish-detail[aria-pressed=true] svg {
  fill: currentColor;
}

.Ad-pd .Adw-wish-detail[aria-pressed=true] .Adw-wish-added {
  display: inline;
}

.Ad-pd .Adw-wish-detail.is-pop svg {
  animation: Adw-wish-pop 0.35s ease;
}

.Ad-pd #Adw-panel-description .Adw-content {
  position: relative;
}

.Ad-pd #Adw-panel-description.is-folded .Adw-content {
  max-height: 36rem;
  overflow: hidden;
}

.Ad-pd #Adw-panel-description.is-folded .Adw-content::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 6rem;
  background: linear-gradient(transparent, #fff);
}

.Ad-pd-fold {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin: 1rem auto 0;
  height: 2.5rem;
  padding: 0 1.5rem;
  border: 1px solid #E2E8F0;
  border-radius: 0.625rem;
  background: #fff;
  font-size: 1rem;
  font-weight: 600;
  color: #1E293B;
  cursor: pointer;
}

.Ad-pd-fold:hover {
  border-color: #F97316;
  color: #F97316;
}

.Ad-pd-fold svg {
  width: 1rem;
  height: 1rem;
  transition: transform 0.2s;
}

.Ad-pd #Adw-panel-description:not(.is-folded) .Ad-pd-fold svg {
  transform: rotate(180deg);
}

.Ad-pd .Adw-content img {
  max-width: 100%;
  height: auto;
  border-radius: 0.75rem;
}

@media (max-width: 39.9375rem) {
  .Ad-pd .Adw-gal-main .splide__track > .splide__list > .splide__slide {
    aspect-ratio: 1;
  }

  /* phone: square, room for the highlight list */

  .Ad-feat-thumb span {
    display: none;
  }

  .Ad-feat-media {
    display: none;
  }

  /* phone: the highlight list gets the whole card */

  .Ad-feat {
    padding: 3rem 1.25rem 1rem;
  }

  /* clear of the discount ribbon */

  .Ad-pd .Adw-gal-main .splide__arrow {
    display: none;
  }

  /* phone: swipe; arrows covered the highlights */
}

.Ad-buy > * + * {
  margin-top: 0.75rem;
}

/* plugin resets <p> margins outside @layer */

.Ad-buy > .Ad-buy-stock {
  margin-top: 1rem;
  padding-top: 0.625rem;
  border-top: 1px solid #E2E8F0;
}

.Adw-slider .splide__track {
  padding-top: 0.5rem;
  margin-top: -0.5rem;
}

/* room for the "Giảm x%" ribbon that rises above the card */

.Adw-slider .Adw-card.Ad-pc {
  height: auto;
}

/* height: 100% blocks the flex stretch: every card in a row as tall as the tallest */

.Ad-buy-actions > button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Product gallery hover zoom (PC with a mouse): lens over the photo + magnified pane beside the gallery */

.Ad-zoom-lens {
  position: absolute;
  z-index: 3;
  pointer-events: none;
  border: 1px solid rgba(0, 0, 0, 0.35);
  background: rgba(255, 255, 255, 0.35);
  opacity: 0;
  transition: opacity 0.15s;
}

.Ad-zoom-pane {
  position: fixed;
  z-index: 60;
  pointer-events: none;
  border: 1px solid #E2E8F0;
  border-radius: 0.75rem;
  background-color: #fff;
  background-repeat: no-repeat;
  box-shadow: 0 1rem 2.5rem -1rem rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s, visibility 0s 0.15s;
}

.is-zooming .Ad-zoom-lens {
  opacity: 1;
}

.Ad-zoom-pane.is-on {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.15s;
}

@media (hover: hover) and (min-width: 64rem) {
  .Ad-pd .Adw-gal-main .splide__slide {
    cursor: crosshair;
  }

  .Ad-pd .Adw-gal-main .splide__slide.is-zoom .Adw-gal-img {
    transform: none;
  }

  /* plugin's in-place zoom off: the pane shows it */

  .Ad-pd .Adw-gal-main .Ad-feat-slide {
    cursor: default;
  }
}

.Ad-buy-actions > .Adw-buy-now.Ad-buy-now {
  min-width: 0;
  overflow: hidden;
}

.Ad-buy-now span {
  max-width: 100%;
  text-align: center;
}

/* Red buttons: header gradient (primary-light → primary); the plugin draws its buttons with --Adw-grad */

:root {
  --Ad-grad: linear-gradient(#FB923C, #F97316);
}

body.Ad {
  --Adw-grad: var(--Ad-grad);
  --Adw-primary-soft: #FFF7ED;
}

#Ad-bt, .Ad-cns-btn, .Ad-cns-icon {
  background-image: var(--Ad-grad);
}

#Ad-bt:hover, .Ad-cns-btn:hover {
  background-image: none;
}

::-webkit-scrollbar-thumb {
  background-image: var(--Ad-grad);
}

/* Review / Q&A buttons: smaller than the buy buttons */

.Ad-pd :is(.Adw-reviews-cta, .Adw-review-form, .Adw-product-qa) .Adw-btn, .Ad-pd .Adw-reviews-write.Adw-btn {
  min-height: 2.5rem;
  padding: 0 1.25rem;
  font-size: 1rem;
}

.Ad-pd-tabs .Ad-cbk-tabs {
  margin-bottom: 1.25rem;
}

.Ad-pd-tabs .Adw-product-sec.Ad-pd-panel {
  margin-top: 0;
  padding-top: 0;
}

.Ad-pd-panel[hidden] {
  display: none;
}

.splide__track:has(.Ad-pc-off) {
  padding-left: 0.375rem !important;
  margin-left: -0.375rem;
}

/* room for the ribbon overhang of the first card (card sliders: see the shadow rule below) */

.Ad-pd .Adw-gallery {
  position: relative;
}

/* Shop pages (layout from the theme; the cards, bars and side cart come from the plugin) */

.Ad-pg-body:has(> .Ad-shop) {
  padding-top: 1.5rem;
}

@media (min-width: 64rem) {
  .Ad-pg-body:has(> .Ad-shop) {
    padding-top: 2rem;
  }
}

body.Ad:has(.Adw-fhead) {
  background: #F8FAFC;
}

.Ad-pg-body:has(> .Ad-shop) {
  max-width: 40rem;
  padding: 1rem 0.5rem 0;
}

.Ad-pg-body:has(> .Ad-shop > :is(.Adw-account, .Adw-auth, .Adw-wishlist)) {
  max-width: 64rem;
  padding-bottom: 2rem;
}

/* account / sign-in / wishlist: two columns */

.Ad-pg-body:has(> .Ad-shop > :is(.Adw-ck, .Adw-ck-form, .woocommerce-checkout, [data-adw-checkout])),
body.woocommerce-checkout .Ad-pg-body {
  max-width: calc(var(--Ad-cnt) + 2 * var(--Ad-gutter)) !important;
  padding-bottom: 2rem;
}

/* checkout: full site container width */

@media (min-width: 64rem) {
  .Ad-pg-body:has(> .Ad-shop) {
    padding-top: 1.25rem;
  }
}

.Adw-cart--flow .Adw-cross, .Adw-cart--flow .Adw-viewed {
  position: relative;
  left: 50%;
  width: min(var(--Ad-cnt, 87.5rem), 100vw - 2rem);
  margin-top: 1.5rem;
  transform: translateX(-50%);
}

/* out of the 40rem column: as wide as the site frame */

.Ad-feat-body::-webkit-scrollbar {
  display: none;
}

/* Product list: grid fades while the next filter / sort page loads */

.Ad-pls-body:has(.Ad-busy) .Ad-pgr {
  opacity: 0.5;
  transition: opacity 0.2s;
}

/* Contact Form 7 (consult dialog, contact page): spinner on the submit button while sending */

.Ad-fm .wpcf7-form p:has(> .wpcf7-submit) {
  position: relative;
}

.Ad-fm .wpcf7-form.submitting .wpcf7-submit {
  color: transparent;
  pointer-events: none;
}

.Ad-fm .wpcf7-form.submitting .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  margin: -0.625rem 0 0 -0.625rem;
  padding: 0;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 9999px;
  background: none;
  opacity: 1;
  visibility: visible;
  animation: Ad-spin 0.7s linear infinite;
}

.Ad-fm .wpcf7-form.submitting .wpcf7-spinner::before {
  display: none;
}

body:has(.Ad-shop > :is(.Adw-account, .Adw-auth, .Adw-wishlist)) .Adw-fhead-wrap {
  max-width: 64rem;
}

body:has(.Ad-shop > :is(.Adw-ck, .Adw-ck-form, .woocommerce-checkout, [data-adw-checkout])) .Adw-fhead-wrap,
body.woocommerce-checkout .Adw-fhead-wrap {
  max-width: calc(var(--Ad-cnt) + 2 * var(--Ad-gutter)) !important;
}

@media (min-width: 64rem) {
  .Ad-pd .Adw-product-top.Ad-pd-top {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: 1.5rem;
  }
}

/* photos 7 | buy box 5 */

/* Loading state for actions: label hidden, a spinner in the middle (white on red buttons, red on light ones).
   Theme buttons: .is-adding (plugin add-to-cart), search button while suggestions load (.is-suggest-loading) or .Ad-busy (andvnInitBusy, links that open another page);
   cart / checkout / coupon spinners are in the plugin. */

:is(.Ad-buy-now, .Ad-buy-add, .Ad-cns-btn, .Ad-lm, .Ad-fopt, .Ad-sort, .Ad-fbt, .Ad-ver, .Adw-sticky-now, .Adw-sticky-add) {
  --Ad-spin: #F97316;
}

:is(.Ad-buy-now, .Ad-cns-btn, .Adw-sticky-now) {
  --Ad-spin: #fff;
}

:is(.Ad-buy-now, .Ad-buy-add, .Adw-sticky-now).is-adding,
.Ad-lm.is-loading,
.Ad-busy {
  position: relative;
  color: transparent !important;
  pointer-events: none;
}

:is(.Ad-buy-now, .Ad-buy-add, .Adw-sticky-now).is-adding > *,
.Ad-lm.is-loading > *,
.Ad-busy > * {
  visibility: hidden;
}

:is(.Ad-buy-now, .Ad-buy-add, .Adw-sticky-now).is-adding::after,
.Ad-lm.is-loading::after,
.Ad-busy::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.25rem;
  height: 1.25rem;
  margin: -0.625rem 0 0 -0.625rem;
  border: 2px solid var(--Ad-spin, currentColor);
  border-right-color: transparent;
  border-radius: 9999px;
  animation: Ad-spin 0.7s linear infinite;
  visibility: visible;
}

.Adw-btn.is-adding::after {
  flex: none;
}

/* plugin's own spinner on other buttons stays */

@media (prefers-reduced-motion: reduce) {
  .Ad-busy::after, .is-adding::after {
    animation-duration: 1.6s;
  }
}

@keyframes Ad-spin {
  to {
    transform: rotate(360deg);
  }
}

/* own copy: the plugin's Adw-spin is only on shop pages */

body.Ad .Ad-pd--stage .Ad-pd-head {
  padding: 0;
  margin: 0 0 0.875rem;
  border: 0;
}

body.Ad .Ad-pd--stage .Ad-pd-title.Ad-pd-title {
  margin: 0 0 0.5rem;
  font-size: 1.25rem;
  line-height: 1.35;
}

body.Ad .Ad-pd--stage .Ad-pd-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 1.25rem;
}

body.Ad .Ad-pd--stage .Ad-pd-meta .Adw-rating-line, body.Ad .Ad-pd--stage .Ad-pd-meta .Adw-rating {
  margin: 0;
}

body.Ad .Ad-pd--stage :is(#Ad-pd-overview, #Ad-spc, #Adw-panel-reviews, #Adw-panel-qa, #Adw-related) {
  scroll-margin-top: calc(var(--Ad-pd-top, calc(var(--wp-admin--admin-bar--height, 0px) + 3.75rem)) + 4.25rem);
}

@media (min-width: 64rem) {
  body.Ad .Ad-pd--stage .Adw-product-top.Ad-pd-top {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
  }

  body.Ad .Ad-pd--stage .Ad-pd-left {
    position: static;
  }

  body.Ad .Ad-pd--stage .Ad-pd-right {
    position: sticky;
    top: calc(calc(var(--wp-admin--admin-bar--height, 0px) + 3.75rem) + 1rem);
  }

  body.Ad .Ad-pd--stage .Ad-pd-title.Ad-pd-title {
    font-size: 1.5rem;
  }
}

.Ad-pd-nav {
  position: sticky;
  top: var(--Ad-pd-top, calc(var(--wp-admin--admin-bar--height, 0px) + 3.75rem));
  z-index: 30;
  margin: 1.5rem 0 1.25rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: var(--Ad-sha);
}

.Ad-pd-nav-in {
  display: flex;
  align-items: center;
  overflow-x: auto;
  scrollbar-width: none;
  padding: 0 0.5rem;
}

.Ad-pd-nav-in::-webkit-scrollbar {
  display: none;
}

.Ad-pd-nav-link {
  flex: none;
  display: flex;
  align-items: center;
  height: 3rem;
  padding: 0 1rem;
  font-size: 1rem;
  font-weight: 600;
  color: #64748B;
  white-space: nowrap;
  box-shadow: inset 0 -2px 0 transparent;
  transition: color 0.2s, box-shadow 0.2s;
}

.Ad-pd-nav-link:hover {
  color: #1E293B;
}

.Ad-pd-nav-link[aria-current] {
  color: #F97316;
  box-shadow: inset 0 -2px 0 #F97316;
}

.Ad-pd-nav-title {
  display: none;
}

@media (min-width: 64rem) {
  .Ad-pd-nav.is-stuck {
    border-radius: 0 0 0.75rem 0.75rem;
  }

  .Ad-pd-nav.is-stuck .Ad-pd-nav-title {
    display: block;
    order: -1;
    max-width: 22rem;
    margin-right: 0.75rem;
    padding: 0 0.75rem 0 0.5rem;
    border-right: 1px solid #E2E8F0;
    overflow: hidden;
    font-size: 1rem;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.Ad-pd-body {
  display: grid;
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}

.Ad-pd-main {
  min-width: 0;
  padding: 1rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: var(--Ad-sha);
}

.Ad-pd-aside {
  display: grid;
  gap: 1rem;
  align-content: start;
  min-width: 0;
}

.Ad-pd-aside .Adw-product-posts {
  position: static;
  margin: 0;
}

.Ad-spc-box {
  padding: 1.25rem;
}

.Ad-spc-list {
  margin: 0;
}

.Ad-spc-row {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: 0.25rem 1rem;
  padding: 0.625rem 0;
  border-top: 1px solid #E2E8F0;
}

.Ad-spc-row:first-child {
  border-top: 0;
  padding-top: 0;
}

.Ad-spc-row dt {
  font-size: 1rem;
  line-height: 1.5;
  color: #64748B;
}

.Ad-spc-row dd {
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 600;
  color: #1E293B;
}

.Ad-spc-box.is-folded .Ad-spc-row.is-more {
  display: none;
}

.Ad-spc-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  width: 100%;
  height: 2.5rem;
  margin-top: 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 0.625rem;
  background: #fff;
  font-size: 1rem;
  font-weight: 600;
  color: #1E293B;
  cursor: pointer;
  transition: border-color 0.2s, color 0.2s;
}

.Ad-spc-more:hover {
  border-color: #F97316;
  color: #F97316;
}

.Ad-spc-more svg {
  width: 1rem;
  height: 1rem;
  transition: transform 0.2s;
}

.Ad-spc-more[aria-expanded=true] svg {
  transform: rotate(180deg);
}

@media (min-width: 64rem) {
  .Ad-pd-body.has-aside {
    grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
    gap: 1.5rem;
    align-items: start;
  }

  .Ad-pd-main {
    padding: 1.5rem;
  }

  .Ad-pd-body.has-aside .Ad-pd-aside {
    position: sticky;
    top: calc(var(--Ad-pd-top, calc(var(--wp-admin--admin-bar--height, 0px) + 3.75rem)) + 4.25rem);
  }
}

.Ad-pd-tabs .Ad-cbk-tab {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.Ad-pd-tabs .Ad-cbk-tab > span {
  font-size: 1rem;
}

@media (min-width: 48rem) {
  .Ad-pd-tabs .Ad-cbk-tab > span {
    font-size: 1.125rem;
  }
}

.Ad-cmt-box {
  margin-top: 1rem;
  padding: 1.25rem;
}

.Ad-cmt-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 40rem) {
  .Ad-cmt-list {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.875rem 1.25rem;
  }
}

.Ad-cmt-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 1rem;
  line-height: 1.55;
  color: #1E293B;
}

.Ad-cmt-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: #FFF7ED;
  color: #F97316;
}

.Ad-cmt-icon svg {
  width: 1rem;
  height: 1rem;
  stroke-width: 2.5;
}

.Ad-cmt-icon img {
  width: 1.25rem;
  height: 1.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.Ad-cmt-list a {
  color: #F97316;
}

@media (max-width: 63.9375rem) {
  body.Ad .Ad-pd--stage .Adw-product-top.Ad-pd-top {
    display: flex;
    flex-direction: column;
  }

  body.Ad .Ad-pd--stage .Ad-pd-left {
    display: contents;
  }

  body.Ad .Ad-pd--stage .Ad-pd-right {
    order: 2;
  }

  body.Ad .Ad-pd--stage .Ad-cmt-box {
    order: 3;
    margin-top: 0;
  }
}

body.Ad :is(.Ad-pd--stage .Ad-pd-boxtitle, .Ad-pd--stage .Adw-section-title, .Ad-pd-tabs .Ad-cbk-tab > span, .Adw-upsells .Adw-section-title, .Adw-viewed .Adw-section-title) {
  font-size: 1.125rem;
  line-height: 1.35;
  font-weight: 600;
}

@media (min-width: 48rem) {
  body.Ad :is(.Ad-pd--stage .Ad-pd-boxtitle, .Ad-pd--stage .Adw-section-title, .Ad-pd-tabs .Ad-cbk-tab > span, .Adw-upsells .Adw-section-title, .Adw-viewed .Adw-section-title) {
    font-size: 1.25rem;
  }
}

body.Ad :is(.Ad-pd--stage .Ad-pd-boxtitle, .Ad-pd--stage .Adw-section-title, .Adw-upsells .Adw-section-title, .Adw-viewed .Adw-section-title) {
  margin: 0 0 1rem;
}

:root {
  --Ad-ring: 0 1px 2px rgba(16, 24, 40, .05), 0 2px 8px rgba(16, 24, 40, .07);
  --Ad-ring-on: 0 0 0 1.5px #F97316;
  --Ad-ring-ink: 0 0 0 1.5px #0A1128;
}

.Ad-hsl, .Ad-dls, .Ad-tls-grid, .Ad-tls-pair > .Ad-tls, .Ad-chip-btn, .Ad-sbc, .Ad-sca,
.Ad-brc a, .Ad-pls-brands a, .Ad-fbt, .Ad-fopt, .Ad-sort, .Ad-lm, .Ad-prm, .Ad-buy-pricebox,
.Ad-ver, .Ad-opt, .Ad-pd-fold, .Ad-spc-more, .Ad-trd-chip, .Ad-chip, .Ad-ct-item, .Ad-cm-list .comment-respond,
.Ad-pgn .page-numbers, .Ad-sw {
  border-color: transparent;
  box-shadow: var(--Ad-ring);
}

.Ad-cmn, .Ad-fpn, .Ad-zoom-pane {
  border-color: transparent;
}

.Ad-pd .Adw-gal-main .splide__track > .splide__list > .splide__slide {
  border-color: transparent;
}

.Ad-pd .Adw-gal-main {
  border-radius: 0.75rem;
  box-shadow: var(--Ad-ring);
}

.Ad-pd .Adw-gal-main .splide__track {
  border-radius: inherit;
}

.Ad-fch {
  border-color: transparent;
  box-shadow: var(--Ad-ring-on);
}

.Ad-pgn .page-numbers.current {
  box-shadow: none;
}

.Ad-pgn .page-numbers.dots {
  box-shadow: none;
}

:is(.Ad-sbc, .Ad-sca, .Ad-brc a, .Ad-pls-brands a, .Ad-fbt, .Ad-fopt, .Ad-sort, .Ad-lm, .Ad-ver, .Ad-opt, .Ad-pd-fold, .Ad-spc-more, .Ad-trd-chip, .Ad-chip, .Ad-pgn a.page-numbers):hover,
:is(.Ad-fbt[aria-current], .Ad-fbt.is-on, .Ad-fbt--main, .Ad-fdr[open] > .Ad-fbt, .Ad-fopt[aria-current], .Ad-sort[aria-current], .Ad-ver[aria-current], .Ad-opt[aria-pressed=true], .Ad-chip[aria-current]) {
  border-color: transparent;
  box-shadow: var(--Ad-ring-on);
}

.Ad-pc.Adw-card {
  border-color: transparent;
  box-shadow: var(--Ad-ring);
}

.Ad-pc.Adw-card:hover {
  border-color: transparent;
  box-shadow: 0 0.75rem 1.5rem -0.75rem rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.04);
}

.Ad-chps, .Ad-sbcs, .Ad-scas, .Ad-brc, .Ad-srts, .Ad-nw-cats {
  padding: 0.375rem;
  margin-inline: -0.375rem;
}

.Ad-scas, .Ad-brc, .Ad-srts {
  margin-block: -0.375rem;
}

.Ad-nw-cats {
  margin-top: 0.5rem;
  margin-bottom: -0.375rem;
}

.splide__track:has(.Adw-card) {
  padding: 0.5rem 0.375rem 0.75rem 0.75rem !important;
  margin: -0.5rem -0.375rem -0.75rem -0.75rem;
}

.Ad-box, .Ad-cbk, body.Ad .Ad-pd--stage .Adw-product-top.Ad-pd-top, body.Ad .Ad-pd--stage .Adw-product-reviews, body.Ad .Ad-pd--stage .Adw-product-qa {
  padding: 1rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: var(--Ad-ring);
}

@media (min-width: 64rem) {
  .Ad-box, .Ad-cbk, body.Ad .Ad-pd--stage .Adw-product-top.Ad-pd-top, body.Ad .Ad-pd--stage .Adw-product-reviews, body.Ad .Ad-pd--stage .Adw-product-qa {
    padding: 1.25rem;
  }
}

.Ad-pls-head, .Ad-pls-tools {
  margin-bottom: 1rem;
}

.Ad-pls-head > :first-child, .Ad-pls-tools > :first-child {
  margin-top: 0;
}

.Ad-pls-head > :last-child, .Ad-pls-tools > :last-child {
  margin-bottom: 0;
}

body.Ad .Ad-pd--stage :is(.Adw-product-reviews, .Adw-product-qa) {
  margin-top: 1.5rem;
}

.Ad-ct-map {
  padding-block: 0.75rem;
  background: none;
  padding-bottom: 1.5rem;
}

.Ad-wr.Ad-pg-body:has(> .Ad-cnt) {
  margin-block: 1.5rem;
  padding-block: 0;
}

.Ad-ct-map > .Ad-wr, .Ad-wr.Ad-pg-body:has(> .Ad-cnt) {
  position: relative;
  isolation: isolate;
  padding: 1.5rem calc(var(--Ad-gutter) + 1rem);
}

.Ad-ct-map > .Ad-wr::before, .Ad-wr.Ad-pg-body:has(> .Ad-cnt)::before {
  content: "";
  position: absolute;
  inset: 0 var(--Ad-gutter);
  z-index: -1;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: var(--Ad-ring);
}

@media (min-width: 64rem) {
  .Ad-ct-map > .Ad-wr, .Ad-wr.Ad-pg-body:has(> .Ad-cnt) {
    padding: 2.5rem calc(var(--Ad-gutter) + 2.5rem);
  }
}

.Ad-mnv li a, .Ad-hs-tabs, .Ad-shd .Ad-vwa, .Ad-fgr + .Ad-fgr, .Ad-pd-head, .Ad-buy > .Ad-buy-stock,
.Ad-pd-nav.is-stuck .Ad-pd-nav-title, .Ad-art-head,
.Ad-art-foot, .Ad-cms, .Ad-ps-nav, .Ad-sd-products li + li, .Ad-spc-row {
  border-width: 0;
}

.Ad-cbk-sep {
  display: none;
}

.Ad-spc-row {
  padding: 0.625rem 0.75rem;
  border-radius: 0.5rem;
}

.Ad-spc-row:first-child {
  padding-top: 0.625rem;
}

.Ad-spc-row:nth-child(odd) {
  background: #F8FAFC;
}

.Ad-cnt :is(td, th) {
  border-width: 0;
}

.Ad-cnt tbody tr:nth-child(even) td {
  background: #F8FAFC;
}

.Ad-cbk-tabs {
  background: none;
}

.Ad-ps, .Ad-sd-box, .Ad-nw--single .Ad-art, .Ad-nw--single .Ad-cms {
  box-shadow: var(--Ad-ring);
}

.Ad-ps:hover {
  box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.09), var(--Ad-ring);
}

.Adw-card.Ad-pc .Ad-pc-member {
  display: flex;
  align-items: center;
  gap: 0.3125rem;
  padding: 0.25rem 0.5rem;
  border-radius: 0.5rem;
  background: linear-gradient(90deg, #FFF7ED, color-mix(in srgb, #FFF7ED 30%, #fff));
  color: #1E293B;
  font-size: 1rem;
  line-height: 1.125rem;
}

.Adw-card.Ad-pc .Ad-pc-member::before {
  content: "";
  flex: none;
  width: 0.875rem;
  height: 0.875rem;
  background: var(--Ad-grad);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.6 2.6A2 2 0 0 0 11.2 2H4a2 2 0 0 0-2 2v7.2a2 2 0 0 0 .6 1.4l8.7 8.7a2.4 2.4 0 0 0 3.4 0l6.6-6.6a2.4 2.4 0 0 0 0-3.4z'/%3E%3Ccircle cx='7.5' cy='7.5' r='.5' fill='black'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.6 2.6A2 2 0 0 0 11.2 2H4a2 2 0 0 0-2 2v7.2a2 2 0 0 0 .6 1.4l8.7 8.7a2.4 2.4 0 0 0 3.4 0l6.6-6.6a2.4 2.4 0 0 0 0-3.4z'/%3E%3Ccircle cx='7.5' cy='7.5' r='.5' fill='black'/%3E%3C/svg%3E") center/contain no-repeat;
}

.Adw-card.Ad-pc .Ad-pc-member b {
  color: #F97316;
  font-weight: 700;
}

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit), .Ad-cf-field :is(input, textarea) {
  border-color: transparent;
  box-shadow: var(--Ad-ring);
}

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit):focus, .Ad-cf-field :is(input, textarea):focus {
  border-color: transparent;
  box-shadow: var(--Ad-ring-on);
}

.Ad-fm .wpcf7-form-control:not(.wpcf7-submit)[aria-invalid=true], .Ad-cf-field :is(input, textarea)[aria-invalid=true] {
  border-color: transparent;
  box-shadow: 0 0 0 1.5px #EF4444;
}

body.Ad .Ad-pd--stage .Adw-product-top.Ad-pd-top {
  margin-bottom: 1.25rem;
}

.Ad-pd--stage .Ad-pd-nav {
  margin-top: 0;
}

.Adw-card.Ad-pc .Ad-pc-member {
  display: block;
}

.Adw-card.Ad-pc .Ad-pc-member::before {
  display: inline-block;
  margin-right: 0.3125rem;
  vertical-align: -0.125rem;
}

body.Ad .Ad-pd-top :is(.Adw-gal-main, .Ad-cmt-box, .Ad-buy-pricebox, .Ad-prm) {
  box-shadow: none;
}

body.Ad .Ad-pd-top :is(.Ad-cmt-box, .Ad-prm) {
  background-color: #F8FAFC;
}

body.Ad .Adw-product-reviews .Adw-review-form {
  border-color: transparent;
  background: #F8FAFC;
  box-shadow: none;
}

body.Ad .Ad-pd-top .Ad-cmt-box {
  padding: 0.25rem 0 0;
  border-radius: 0;
  background: none;
}

.Ad-pd .Adw-gal-main .splide__track, .Ad-pd .Adw-gal-main .splide__track > .splide__list > .splide__slide {
  border-radius: 0.75rem;
}

.Ad-buy-pricebox .Adw-price {
  flex-wrap: wrap;
  align-items: center;
}

.Ad-prc-off {
  display: inline-flex;
  align-items: center;
  height: 1.5rem;
  padding: 0 0.5rem;
  border-radius: 0.375rem;
  background: var(--Ad-grad);
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

.Ad-buy-member.Ad-mbg {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.25rem 0.5rem;
  margin-top: 0.375rem;
  color: #1E293B;
}

.Ad-mbg .Ad-mbg-tier {
  gap: 0.25rem;
  height: 1.5rem;
  margin: 0;
  padding: 0 0.5rem;
  border-radius: 0.375rem;
  font-size: 1rem;
  font-weight: 700;
}

.Ad-mbg .Ad-mbg-tier svg {
  width: 0.875rem;
  height: 0.875rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linejoin: round;
}

.Ad-mbg .Ad-mbg-tier small {
  font-size: inherit;
  font-weight: 600;
  opacity: 0.85;
}

.Ad-mbg b {
  color: #F97316;
  font-size: 1rem;
  font-weight: 700;
}

.Ad-mbg a {
  color: #F97316;
  font-weight: 600;
}

.Ad-mbg a, .Ad-mbg a:hover {
  text-decoration: none;
}

.Ad-mbg a:hover {
  color: #EA580C;
}

body.Ad .Adw-select-btn {
  gap: 0.5rem;
  min-width: 0;
  height: 2.5rem;
  padding: 0 0.625rem 0 0.875rem;
  font-size: 1rem;
}

body.Ad .Adw-select-btn svg {
  width: 1rem;
  height: 1rem;
}

body.Ad .Adw-select-list [role=option] {
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
}

.Adw-card.Ad-pc .Ad-pc-chips {
  min-height: 1.25rem;
}

.Ad-ct {
  display: grid;
  gap: 1rem;
  padding-bottom: 2rem;
}

@media (min-width: 64rem) {
  .Ad-ct {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: 1.25rem;
    align-items: start;
    padding-bottom: 3rem;
  }

  .Ad-ct--full, .Ad-ct-map-box {
    grid-column: 1/-1;
  }

  .Ad-ct--full {
    grid-template-columns: 1fr;
  }
}

.Ad-ct .Ad-box {
  padding: 1.25rem;
}

@media (min-width: 64rem) {
  .Ad-ct .Ad-box:not(.Ad-ct-map-box) {
    padding: 1.75rem;
  }
}

.Ad-ct-title {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.35;
  font-weight: 600;
  color: #1E293B;
}

@media (min-width: 64rem) {
  .Ad-ct-title {
    font-size: 1.25rem;
  }
}

.Ad-ct-company, .Ad-ct-note {
  margin: 0.375rem 0 0;
  font-size: 1rem;
  line-height: 1.55;
  font-weight: 400;
  text-transform: none;
  color: #64748B;
}

.Ad-ct .Ad-ct-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.25rem;
  margin: 1rem 0 0;
}

.Ad-ct .Ad-ct-item {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 0.75rem;
  border: 0;
  border-radius: 0.5rem;
  box-shadow: none;
}

.Ad-ct .Ad-ct-item:nth-child(odd) {
  background: #F8FAFC;
}

.Ad-ct .Ad-ct-item:first-child {
  grid-column: auto;
}

.Ad-ct-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: var(--Ad-grad);
  color: #fff;
  font-size: 1.125rem;
}

.Ad-ct .Ad-ct-label {
  font-size: 1rem;
}

.Ad-ct .Ad-ct-value {
  margin-top: 0.125rem;
  font-size: 1rem;
}

.Ad-ct .Ad-ct-content {
  margin-top: 1rem;
}

.Ad-ct-form .wpcf7 {
  margin-top: 1.25rem;
}

.Ad-ct-map-box {
  padding: 0.5rem;
}

.Ad-ct-map-box .Ad-map {
  border-radius: 0.5rem;
  aspect-ratio: 21/8;
}

@media (max-width: 47.9375rem) {
  .Ad-ct-map-box .Ad-map {
    aspect-ratio: 4/3;
  }
}

.Ad-ck-link {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.Ad-ck-link:hover {
  color: #F97316;
}

.Ad-pg.Ad-pls {
  padding-bottom: 0;
}

.Ad-ct .Ad-pls-title {
  margin-bottom: 0;
}

.Ad-ct-sub {
  margin: 1rem 0 0;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  color: #1E293B;
}

main#Ad-mn > .Ad-pg + .Ad-ct {
  padding-top: 0;
}

.Ad-pg-wrap {
  max-width: calc(56rem + 2 * var(--Ad-gutter));
}

.Ad-pg-wrap > .Ad-art {
  margin-bottom: 2rem;
}

@media (min-width: 64rem) {
  .Ad-pg-wrap > .Ad-art {
    padding: 2rem 2.5rem;
    margin-bottom: 3rem;
  }
}

.Ad-pg-updated {
  margin: 0.5rem 0 0;
  font-size: 1rem;
  color: #64748B;
}

.Adw-card.Ad-pc .Ad-pc-member {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media (max-width: 47.9375rem) {
  .Ad-buy-now span {
    white-space: normal;
    font-size: 1rem;
    line-height: 1.3;
    padding-inline: 0.5rem;
  }

  .Ad-buy-actions > .Adw-buy-now.Ad-buy-now {
    padding-block: 0.375rem;
  }

  .Ad-buy-pricebox .Adw-buy-price {
    font-size: 1.375rem;
  }

  .Ad-buy-pricebox .Adw-price {
    gap: 0.375rem;
  }

  .Ad-buy-pricebox .Adw-price del {
    font-size: 1rem;
  }

  .Ad-prc-off {
    height: 1.375rem;
    padding: 0 0.375rem;
    font-size: 1rem;
  }
}

:is(.Ad-fbt--main):not([aria-expanded=true]) {
  box-shadow: var(--Ad-ring);
  color: #1E293B;
}

.Ad-fbt--main .Ad-ic {
  color: #F97316;
}

body.Ad :is(.Ad-feat-title, .Ad-hs-tab b, .Ad-fm .wpcf7-submit, .Ad-ps-nav-label, .Ad-sr-meta, .Ad-btn, .Adw-ck-title, .Adw-ck-side-title, .Adw-ck-tab, .Adw-card-stock) {
  text-transform: none;
  letter-spacing: 0;
}

body.Ad :is(.Adw-ck-title, .Adw-ck-side-title) {
  color: #1E293B;
  font-weight: 600;
  font-size: 1.125rem;
}

html:not(.Ad-in) .Adw-card.Ad-pc .Ad-pc-member--in, html.Ad-in .Adw-card.Ad-pc .Ad-pc-member--out {
  display: none;
}

body.Ad :is(.Adw-wish, .Adw-wish-icon, .Adw-wish-detail, .Adw-cart-wish):hover {
  color: #F97316;
}

body.Ad :is(.Adw-wish, .Adw-wish-icon, .Adw-wish-detail, .Adw-cart-wish)[aria-pressed=true] {
  color: #F97316;
}

body.Ad :is(.Adw-wish, .Adw-wish-icon, .Adw-wish-detail, .Adw-cart-wish)[aria-pressed=true] svg {
  fill: currentColor;
}

:root {
  --Ad-grad: linear-gradient(100deg, #C2410C 0%, #EA580C 100%);
  --Ad-grad-band: linear-gradient(100deg, #0A1128 0%, #0D183A 100%);
}

body.Ad .Ad-ct-icon {
  background: var(--Ad-grad);
}

body.Ad .Ad-feat {
  background: linear-gradient(110deg, #C2410C 0%, #EA580C 55%, #FB923C 100%);
}

.Adw-empty-art.Ad-emp-box {
  width: 10.5rem;
  height: 10.5rem;
  animation: Ad-emp-float 3.2s ease-in-out infinite;
}

@keyframes Ad-emp-float {
  50% {
    transform: translateY(-6px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .Adw-empty-art.Ad-emp-box {
    animation: none;
  }
}

:is(.Adw-minicart, .Adw-sc-panel) .Adw-mc-empty > svg {
  display: none;
}

:is(.Adw-minicart, .Adw-sc-panel) .Adw-mc-empty::before {
  content: "";
  display: block;
  width: 5rem;
  height: 5rem;
  margin: 0 auto 0.75rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23FF5A36'/%3E%3Cstop offset='.45' stop-color='%23E3002A'/%3E%3Cstop offset='1' stop-color='%23C4001B'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M460 504H52c-24 0-44-20-44-44V138.4h496v320.8c0 24.8-20 44.8-44 44.8z' fill='url(%23g)'/%3E%3Cpath d='M52 472c-6.4 0-12-5.6-12-12V170.4h432v288.8c0 6.4-5.6 12-12 12H52v.8z' fill='%23fff'/%3E%3Cpath fill='%23FEEDEF' d='M18.4 8h462.4v130.4H18.4z'/%3E%3Cg fill='%23fff'%3E%3Cpath d='M504 138.4h-62.4v-64zM480.8 114.4V8l-39.2 66.4zM8 138.4h62.4v-64z'/%3E%3Cpath d='M18.4 8v120l52-53.6z'/%3E%3C/g%3E%3Cg fill='%231D1D20'%3E%3Cpath d='M512 138.4c0-1.6-.8-4-2.4-5.6l-20.8-21.6V8c0-4.8-4-8-8-8H18.4c-4 0-8 4-8 8v116.8l-8 8.8c-1.6.8-2.4 3.2-2.4 4.8v320.8C0 488.8 23.2 512 52 512h407.2c28.8 0 52-23.2 52-52V138.4h.8zm-60-65.6l20.8-36v57.6L452 72.8zm20.8 44.8v12.8h-23.2V93.6l23.2 24zM467.2 16l-32 53.6c-.8.8-.8 3.2-.8 4v56.8h-356v-56c0-1.6-.8-3.2-1.6-4.8L35.2 16h432zM26.4 31.2l32.8 42.4L26.4 108V31.2zm36 62.4v36.8h-36l36-36.8zM496 460c0 20-16 36-36 36H52c-20 0-36-16-36-36V146.4h480V460z'/%3E%3Cpath d='M372.8 429.6h16v16h-16zM428.8 429.6h16v16h-16zM67.2 429.6h16v16h-16zM123.2 429.6h16v16h-16zM140.8 264.8c5.6 89.6 55.2 160 115.2 160s108.8-70.4 115.2-160c5.6-2.4 9.6-8.8 9.6-15.2 0-9.6-8-17.6-17.6-17.6s-17.6 8-17.6 17.6c0 6.4 3.2 12 8.8 15.2-5.6 81.6-48 144.8-99.2 144.8s-93.6-63.2-99.2-144.8c4.8-3.2 8.8-8.8 8.8-15.2 0-9.6-8-17.6-17.6-17.6s-17.6 8-17.6 17.6c1.6 6.4 5.6 12 11.2 15.2z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

.Adw-sc-panel .Adw-mc-empty::before {
  width: 6.5rem;
  height: 6.5rem;
}

.Adw-card.Ad-pc .Ad-pc-acts {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-left: auto;
}

.Adw-card.Ad-pc :is(.Ad-pc-cart, .Adw-wish) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 2rem;
  height: 2rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #64748B;
  box-shadow: none;
  cursor: pointer;
  transition: color 0.2s;
}

.Adw-card.Ad-pc :is(.Ad-pc-cart, .Adw-wish) svg {
  width: 1.125rem;
  height: 1.125rem;
}

.Adw-card.Ad-pc :is(.Ad-pc-cart, .Adw-wish):is(:hover, :focus-visible) {
  color: #F97316;
}

.Adw-card.Ad-pc .Ad-pc-cart.is-adding {
  position: relative;
  pointer-events: none;
  color: transparent;
}

.Adw-card.Ad-pc .Ad-pc-cart.is-adding::after {
  content: "";
  position: absolute;
  inset: 0.5rem;
  border: 2px solid #FFF7ED;
  border-top-color: #F97316;
  border-radius: 50%;
  animation: Ad-spin 0.7s linear infinite;
}

.Ad-tip {
  position: relative;
  display: inline-flex;
}

.Ad-tip::after {
  content: attr(data-tip);
  position: absolute;
  bottom: calc(100% + 0.375rem);
  left: 50%;
  z-index: 6;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  background: #0A1128;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 4px);
  transition: opacity 0.15s, transform 0.15s, visibility 0s 0.15s;
  pointer-events: none;
}

.Ad-tip--wish:has(.Adw-wish[aria-pressed=true])::after {
  content: attr(data-tip-on);
}

@media (hover: hover) {
  .Ad-tip:hover::after {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
    transition: opacity 0.15s, transform 0.15s, visibility 0s;
  }
}

.Ad-tip:focus-within::after {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.Adw-card.Ad-pc .Ad-pc-acts .Ad-tip:last-child::after {
  left: auto;
  right: 0;
  transform: translateY(4px);
}

@media (hover: hover) {
  .Adw-card.Ad-pc .Ad-pc-acts .Ad-tip:last-child:hover::after {
    transform: none;
  }
}

.Adw-card.Ad-pc .Ad-pc-acts .Ad-tip:last-child:focus-within::after {
  transform: none;
}

.Adw-card.Ad-pc .Adw-wish[aria-pressed=true] {
  color: #F97316;
}

.Adw-card.Ad-pc .Adw-wish[aria-pressed=true] svg {
  fill: currentColor;
}

.Adw-card.Ad-pc:not(:is(.Ad-cbk, .Ad-dls) *) :is(.Ad-pc-cart, .Adw-wish) {
  background: #F8FAFC;
}

body.Ad .Adw-sticky-price {
  text-align: right;
  line-height: 1.2;
}

body.Ad .Adw-sticky-price .Adw-price--sale {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: end;
  align-items: center;
  gap: 0.125rem 0.375rem;
}

body.Ad .Adw-sticky-price .Adw-price--sale ins {
  grid-column: 1/-1;
  justify-self: end;
  text-decoration: none;
}

body.Ad .Adw-sticky-price .Adw-price--sale del {
  grid-column: 1;
}

body.Ad .Adw-sticky-price .Ad-prc-off {
  grid-column: 2;
  height: 1.25rem;
  padding: 0 0.375rem;
  font-size: 1rem;
}

body.Ad {
  --Adw-gap: 0.5rem;
}

body.Ad :is(.Adw-products.Ad-pgr, .Adw-wishlist .Adw-products, .Adw-account-main .Adw-products) {
  gap: 0.5rem;
}

body.Ad .Adw-account-main .Adw-card.Ad-pc {
  background: #F8FAFC;
  box-shadow: none;
}

body.Ad .Adw-account-main .Adw-card.Ad-pc:hover {
  box-shadow: var(--Ad-ring-on);
}

body.Ad .Adw-account-main .Adw-card.Ad-pc .Ad-pc-chips span {
  background: #fff;
}

body.Ad .Adw-account-main .Adw-card.Ad-pc :is(.Ad-pc-cart, .Adw-wish) {
  background: #fff;
}

.Adw-card.Ad-pc, .Ad-pst, .Ad-pst > *, .Adw-card.Ad-pc .Ad-pc-link {
  min-width: 0;
  max-width: 100%;
}

.Adw-card.Ad-pc .Ad-pc-member {
  max-width: 100%;
  box-sizing: border-box;
}

.Adw-toasts {
  position: fixed;
  z-index: 9999;
  left: 50%;
  bottom: 1.5rem;
  width: min(32rem, 100vw - 2rem);
  height: var(--front-h, 0);
  transform: translateX(-50%);
  transition: height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}

.Adw-toasts.is-expanded {
  height: var(--total-h, 0);
}

.Adw-toast {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: calc(10 - var(--i, 0));
  display: flex;
  align-items: center;
  gap: 0.75rem;
  box-sizing: border-box;
  height: var(--h, auto);
  padding: 0.625rem 0.625rem 0.625rem 1rem;
  overflow: hidden;
  border: 1px solid #E2E8F0;
  border-radius: 0.75rem;
  background: #fff;
  color: #1E293B;
  font-size: 1rem;
  line-height: 1.45;
  box-shadow: 0 0.75rem 2rem -0.5rem rgba(17, 24, 39, 0.22);
  opacity: 0;
  transform: translateY(100%);
  transform-origin: 50% 0;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s, height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: auto;
}

.Adw-toast.is-open {
  opacity: 1;
  transform: translateY(calc(var(--i, 0) * -0.625rem)) scale(calc(1 - var(--i, 0) * 0.05));
}

.Adw-toast.is-open:not(.is-front) {
  height: var(--front-h, auto);
}

.Adw-toast > * {
  transition: opacity 0.25s;
}

.Adw-toast:not(.is-front) > * {
  opacity: 0;
}

.Adw-toasts.is-expanded .Adw-toast.is-open {
  height: var(--h, auto);
  transform: translateY(calc(var(--y, 0px) * -1));
}

.Adw-toasts.is-expanded .Adw-toast.is-open > * {
  opacity: 1;
}

.Adw-toast .Adw-toast-icon {
  display: inline-flex;
  flex: none;
  color: #16a34a;
}

.Adw-toast--warning .Adw-toast-icon {
  color: #F59E0B;
}

.Adw-toast--error .Adw-toast-icon {
  color: #F97316;
}

.Adw-toast .Adw-toast-text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  font-weight: 500;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.Adw-toast .Adw-toast-action {
  flex: none;
  padding: 0.25rem 0.625rem;
  border: 0;
  border-radius: 999px;
  background: #F8FAFC;
  color: #F97316;
  font: inherit;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}

.Adw-toast .Adw-toast-action:hover {
  background: #F97316;
  color: #fff;
}

.Adw-toast .Adw-toast-close {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #64748B;
  cursor: pointer;
}

.Adw-toast .Adw-toast-close:hover {
  background: #F8FAFC;
  color: #1E293B;
}

html {
  overflow-x: clip;
}

:root {
  --Ad-sec-y: 3rem;
  --Ad-pg-y: 1.5rem;
}

/* home sections | inner pages (half) */

@media (min-width: 64rem) {
  :root {
    --Ad-sec-y: 6rem;
    --Ad-pg-y: 3rem;
  }
}

.Ad-nw {
  padding-block: var(--Ad-pg-y);
}

.Ad-nw .Ad-bc {
  padding-top: 0;
}

.Ad-pg-wrap > .Ad-art {
  margin-bottom: 0;
}

main#Ad-mn > .Ad-pg.Ad-pls:first-child {
  padding-top: var(--Ad-pg-y);
}

main#Ad-mn > .Ad-ct:last-child, .Ad-ct-map {
  padding-bottom: var(--Ad-pg-y);
}

.Ad-nwd .Ad-sd-box {
  background: #F1F5FA;
  box-shadow: none;
}

@media (min-width: 64rem) {
  .Ad-nwd .Ad-sdb {
    position: sticky;
    top: calc(var(--Ad-hd-h) + 1.5rem);
  }
}

/* Editor content (.Ad-cnt) */

.Ad-cnt{
  display: flow-root;
  overflow-wrap: break-word;
  font-size: 1.125rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-cnt > :first-child {
  margin-top: 0;
}

.Ad-cnt p{
  margin: 0px;
  margin-bottom: 0.75rem;
}

.Ad-cnt p:last-child {
  margin-bottom: 0;
}

.Ad-cnt :is(h1, h2, h3, h4, h5, h6){
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-cnt :is(h1, h2, h3, h4, h5, h6){
    margin-top: 1.5rem;
  }
}

.Ad-cnt h2{
  font-size: 1.25rem;
}

@media (min-width: 64rem){
  .Ad-cnt h2{
    font-size: 1.5rem;
  }
}

.Ad-cnt h2 {
  clear: both;
}

/* Clear floats */

.Ad-cnt h3{
  font-size: 1.25rem;
}

.Ad-cnt h4{
  font-size: 1.125rem;
}

.Ad-cnt :is(h5, h6){
  font-size: 1rem;
}

.Ad-cnt a{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  text-decoration-line: none;
}

.Ad-cnt a:hover{
  --tw-text-opacity: 1;
  color: rgb(234 88 12 / var(--tw-text-opacity, 1));
}

.Ad-cnt :is(b, strong){
  font-weight: 600;
}

.Ad-cnt mark{
  border-radius: 0.25rem;
  background-color: rgb(251 146 60 / 0.6);
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.Ad-cnt del{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-cnt hr{
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  border-width: 0px;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-cnt hr{
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
}

.Ad-cnt hr {
  clear: both;
}

/* Lists */

.Ad-cnt :is(ul, ol){
  margin: 0px;
  margin-bottom: 0.75rem;
  padding-left: 1.375rem;
  display: flow-root;
}

/* flow-root: keep list beside floated images */

.Ad-cnt ul{
  list-style-type: disc;
}

.Ad-cnt ol{
  list-style-type: decimal;
}

.Ad-cnt li{
  margin-bottom: 0.125rem;
  padding-left: 0.125rem;
}

.Ad-cnt ul > li::marker{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-cnt ol > li::marker{
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-cnt li > :is(ul, ol){
  margin-top: 0.25rem;
  margin-bottom: 0px;
}

/* Images, captions, alignment */

.Ad-cnt img{
  display: inline-block;
  height: auto;
  max-width: 100%;
  border-radius: 0.75rem;
}

.Ad-cnt img[class*=wp-image-]:not(.alignleft):not(.alignright), .Ad-cnt img.aligncenter, .Ad-cnt p[style*=center] img{
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.Ad-cnt :is(.alignleft, .alignright, .aligncenter, .wp-caption, .Ad-tbl-wrap, blockquote, pre, .gallery, iframe){
  margin-top: 1rem;
  margin-bottom: 1rem;
}

@media (min-width: 64rem){
  .Ad-cnt :is(.alignleft, .alignright, .aligncenter, .wp-caption, .Ad-tbl-wrap, blockquote, pre, .gallery, iframe){
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
  }
}

.Ad-cnt .alignleft{
  float: left;
  margin-right: 1.25rem;
  margin-top: 0.375rem;
  margin-bottom: 0.75rem;
  max-width: 50%;
}

@media (min-width: 64rem){
  .Ad-cnt .alignleft{
    margin-right: 1.5rem;
  }
}

.Ad-cnt .alignright{
  float: right;
  margin-left: 1.25rem;
  margin-top: 0.375rem;
  margin-bottom: 0.75rem;
  max-width: 50%;
}

@media (min-width: 64rem){
  .Ad-cnt .alignright{
    margin-left: 1.5rem;
  }
}

@media (max-width: 39.9375rem) {
  .Ad-cnt :is(.alignleft, .alignright){
    float: none;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    display: block;
    max-width: 100%;
  }
}

.Ad-cnt .wp-caption{
  max-width: 100%;
}

.Ad-cnt .wp-caption.aligncenter{
  margin-left: auto;
  margin-right: auto;
}

.Ad-cnt .wp-caption img{
  margin: 0px;
}

.Ad-cnt .wp-caption-text{
  margin-top: 0.5rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Gallery */

.Ad-cnt .gallery{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.625rem;
}

@media (min-width: 64rem){
  .Ad-cnt .gallery{
    gap: 1rem;
  }
}

.Ad-cnt .gallery {
  clear: both;
}

.Ad-cnt .gallery-columns-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 40rem) {
  .Ad-cnt .gallery-columns-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .Ad-cnt .gallery-columns-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .Ad-cnt .gallery-columns-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .Ad-cnt .gallery-columns-6{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

.Ad-cnt .gallery br {
  display: none;
}

.Ad-cnt .gallery-item{
  margin: 0px;
  min-width: 0px;
}

.Ad-cnt .gallery-icon a{
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.Ad-cnt .gallery-icon img{
  display: block;
  aspect-ratio: 4/3;
  height: auto;
  width: 100%;
  border-radius: 0px;
  -o-object-fit: cover;
     object-fit: cover;
}

.Ad-cnt .gallery-caption{
  margin-top: 0.375rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.4;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.Ad-cnt a:is([href$=".jpg"], [href$=".jpeg"], [href$=".png"], [href$=".webp"], [href$=".gif"], [href$=".avif"]) {
  cursor: zoom-in;
}

/* Lightbox (custom.js andvnInitLightbox) */

.Ad-lb{
  position: fixed;
  inset: 0px;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 4rem;
  padding-bottom: 4rem;
  opacity: 0;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

@media (min-width: 64rem){
  .Ad-lb{
    padding-left: 5.5rem;
    padding-right: 5.5rem;
  }
}

.Ad-lb {
  background: rgba(0, 0, 0, 0.8);
}

.Ad-lb[hidden] {
  display: none;
}

.Ad-lb.is-open{
  opacity: 1;
}

html.Ad-lb-lock {
  overflow: hidden;
}

.Ad-lb-figure{
  position: relative;
  margin: 0px;
  display: flex;
  max-height: 100%;
  flex-direction: column;
  align-items: center;
  max-width: min(100%, 75rem);
  transform: scale(0.85);
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* image at most 1200px at 1920 (img itself is capped to 100% by .Ad img); zoom in on open */

.Ad-lb.is-open .Ad-lb-figure {
  transform: none;
}

.Ad-lb-img{
  display: block;
  height: auto;
  width: auto;
  max-width: 100%;
  border-radius: 0.75rem;
  -o-object-fit: contain;
     object-fit: contain;
  transition-property: opacity,transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  max-height: calc(100svh - 8rem);
}

.Ad-lb.is-loading .Ad-lb-img{
  --tw-scale-x: .9;
  --tw-scale-y: .9;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  opacity: 0;
}

/* next image zooms in */

.Ad-lb.is-loading .Ad-lb-figure::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -1.25rem;
  margin-top: -1.25rem;
  height: 2.5rem;
  width: 2.5rem;
  border-radius: 9999px;
  border-width: 0.1875rem;
  border-color: rgb(255 255 255 / 0.25);
  --tw-border-opacity: 1;
  border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  animation: Ad-spin 0.8s linear infinite;
}

.Ad-lb-count{
  position: absolute;
  left: 1rem;
  top: 1.25rem;
  margin: 0px;
  font-size: 1rem;
  font-weight: 500;
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  color: rgb(255 255 255 / 0.8);
}

@media (min-width: 64rem){
  .Ad-lb-count{
    left: 1.5rem;
  }
}

.Ad-lb-btn{
  position: absolute;
  display: flex;
  height: 2.75rem;
  width: 2.75rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  background-color: rgb(255 255 255 / 0.1);
  padding: 0px;
  font-size: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.Ad-lb-btn:hover, .Ad-lb-btn:focus-visible{
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

.Ad-lb-btn[hidden] {
  display: none;
}

.Ad-lb-close{
  right: 0.75rem;
  top: 0.75rem;
}

@media (min-width: 64rem){
  .Ad-lb-close{
    right: 1.5rem;
  }
}

.Ad-lb-prev, .Ad-lb-next{
  top: 50%;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.Ad-lb-prev{
  left: 0.5rem;
}

@media (min-width: 64rem){
  .Ad-lb-prev{
    left: 1.5rem;
  }
}

.Ad-lb-next{
  right: 0.5rem;
}

@media (min-width: 64rem){
  .Ad-lb-next{
    right: 1.5rem;
  }
}

@media (max-width: 47.9375rem) {
  .Ad-lb-prev, .Ad-lb-next{
    top: auto;
    bottom: 1rem;
    --tw-translate-y: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
}

@media (prefers-reduced-motion: reduce) {
  .Ad-lb, .Ad-lb-img, .Ad-lb-figure {
    transition: none;
  }

  .Ad-lb-figure {
    transform: none;
  }
}

/* Tables: scroll wrapper (added by inc/optimize.php) */

.Ad-cnt .Ad-tbl-wrap, .Ad-cnt .table-wrapper{
  overflow-x: auto;
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  clear: both;
}

.Ad-cnt table{
  margin: 0px;
  width: 100%;
  min-width: 36rem;
  border-collapse: collapse;
  line-height: 1.5;
}

.Ad-cnt :is(td, th){
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: left;
  vertical-align: top;
}

.Ad-cnt :is(th, thead td){
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.Ad-cnt tbody tr:nth-child(even){
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.Ad-cnt tbody tr:last-child td{
  border-bottom-width: 0px;
}

/* Blockquote: inset box-shadow accent follows rounded corners */

.Ad-cnt blockquote{
  position: relative;
  margin: 0px;
  border-radius: 0.625rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  font-size: 1rem;
  line-height: 1.7;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

@media (min-width: 64rem){
  .Ad-cnt blockquote{
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

.Ad-cnt blockquote {
  box-shadow: inset 3px 0 0 #F97316;
}

/* compact: thin bar, no quote mark */

.Ad-cnt blockquote p{
  margin-bottom: 0.375rem;
}

.Ad-cnt blockquote > :last-child{
  margin-bottom: 0px;
}

.Ad-cnt blockquote cite{
  display: block;
  font-size: 1rem;
  font-weight: 600;
  font-style: normal;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

/* Inline code and pre blocks */

.Ad-cnt code{
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-family: inherit;
  font-size: 0.9375em;
  --tw-text-opacity: 1;
  color: rgb(234 88 12 / var(--tw-text-opacity, 1));
}

.Ad-cnt pre{
  overflow-x: auto;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
  padding: 1rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1rem;
  line-height: 1.7;
  color: rgb(255 255 255 / 0.9);
}

@media (min-width: 64rem){
  .Ad-cnt pre{
    padding: 1.25rem;
  }
}

.Ad-cnt pre {
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2;
}

.Ad-cnt pre code{
  background-color: transparent;
  padding: 0px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
  color: inherit;
}

/* YouTube embeds 16:9 */

.Ad-cnt iframe{
  margin-left: auto;
  margin-right: auto;
  display: block;
  max-width: 100%;
}

.Ad-cnt iframe[src*=youtube]{
  aspect-ratio: 16 / 9;
  height: auto;
  width: 100%;
  border-radius: 0.75rem;
  border-width: 0px;
}

/* Table of contents (inc/toc.php) */

.Ad-cnt .Ad-toc{
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 17.5rem;
  max-width: 100%;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

@media (min-width: 64rem){
  .Ad-cnt .Ad-toc{
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
}

.Ad-toc-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.Ad-toc-title{
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(234 88 12 / var(--tw-text-opacity, 1));
}

/* on surface: primary is 4.36:1 */

.Ad-toc-toggle{
  display: inline-flex;
  height: 1.75rem;
  width: 1.75rem;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 0px;
  font-size: 1rem;
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

html:not(.Ad-js) .Ad-toc-toggle {
  display: none;
}

.Ad-toc-toggle .Ad-toc-plus, .Ad-toc.is-collapsed .Ad-toc-minus {
  display: none;
}

.Ad-toc.is-collapsed .Ad-toc-plus {
  display: block;
}

.Ad-cnt .Ad-toc ol{
  margin: 0px;
  list-style-type: none;
  padding: 0px;
  counter-reset: Ad-toc;
}

.Ad-cnt .Ad-toc .Ad-toc-list{
  margin-top: 0.375rem;
}

.Ad-toc.is-collapsed .Ad-toc-list {
  display: none;
}

.Ad-cnt .Ad-toc li{
  margin: 0px;
  padding: 0px;
  counter-increment: Ad-toc;
}

.Ad-cnt .Ad-toc li ol{
  padding-left: 1.25rem;
}

.Ad-cnt .Ad-toc a{
  display: block;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
  text-decoration-line: none;
}

.Ad-cnt .Ad-toc a::before {
  content: counters(Ad-toc, ".") ". ";
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.Ad-cnt .Ad-toc a:hover{
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

/* Hide native search input buttons */

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  display: none;
}

.screen-reader-text{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

@keyframes Ad-sk {
  to {
    background-position: 200% 0;
  }
}

@keyframes Ad-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes Ad-drop-in {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes Ad-drop-out {
  from {
    opacity: 1;
    transform: none;
  }

  to {
    opacity: 0;
    transform: translateY(16px);
  }
}

@keyframes Ad-mnv-in {
  from {
    opacity: 0;
    transform: translateX(-15px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes Ad-ring {
  0% {
    transform: scale(1);
  }

  15% {
    box-shadow: 0 0 0 0.1875rem rgba(35, 120, 184, 0.1);
  }

  25% {
    box-shadow: 0 0 0 0.1875rem rgba(35, 120, 184, 0.1), 0 0 0 0.3125rem rgba(35, 120, 184, 0.1);
  }

  30% {
    transform: scale(1.2);
  }

  50% {
    box-shadow: 0 0 0 0.4375rem rgba(35, 120, 184, 0.1), 0 0 0 0.4375rem rgba(35, 120, 184, 0.1), 0 0 0 0.625rem rgba(35, 120, 184, 0.2);
  }

  80% {
    transform: scale(1);
  }
}

/* Comment letter avatars: one of 8 colours fixed per name (andvn_avatar_tone); outside layers (class built in PHP) */

.Ad-cm-avatar.is-tone-1 {
  background: #8a7650;
  color: #fff;
}

.Ad-cm-avatar.is-tone-2 {
  background: #8e1157;
  color: #fff;
}

.Ad-cm-avatar.is-tone-3 {
  background: #4b5066;
  color: #fff;
}

.Ad-cm-avatar.is-tone-4 {
  background: #7a3b6e;
  color: #fff;
}

.Ad-cm-avatar.is-tone-5 {
  background: #2f7a80;
  color: #fff;
}

.Ad-cm-avatar.is-tone-6 {
  background: #a0522d;
  color: #fff;
}

.Ad-cm-avatar.is-tone-7 {
  background: #3d6b4f;
  color: #fff;
}

.Ad-cm-avatar.is-tone-8 {
  background: #5b4b9a;
  color: #fff;
}

/* Shop sticky buy bar on (ANDVN Woo / Woo skin): floating buttons (back to top, call) move above it */

:is(#Ad-bt, .Ad-call-float) {
  transition: translate 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 72.9375rem) {
  html.Adw-sticky-buy-on :is(#Ad-bt, .Ad-call-float) {
    translate: 0 -5.5rem;
  }
}

/* lift only when the 64rem sticky buy bar would reach the corner */

@media (max-width: 47.9375rem) {
  html.Adw-sticky-buy-on :is(#Ad-bt, .Ad-call-float) {
    translate: 0 calc(-7.5rem - env(safe-area-inset-bottom));
  }
}

/* the phone bar has two rows */

.Ad-cnt .Ad-tbl-wrap, .Ad-cnt .table-wrapper {
  border-color: transparent;
  box-shadow: var(--Ad-ring);
}

.Ad-cnt :is(td, th) {
  border-width: 0;
}

.Ad-cnt tbody tr:nth-child(even) td {
  background: #F8FAFC;
}

@media (max-width: 47.9375rem) {
  html.Adw-sticky-buy-on .Ad-call-float {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s, translate 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  }

  :is(#Ad-bt, .Ad-call-float) {
    right: 0.5rem;
    width: 2.25rem;
    height: 2.25rem;
    font-size: 1rem;
  }

  .Ad-call-float {
    bottom: 3.5rem;
  }

  #Ad-bt {
    bottom: 0.75rem;
  }
}

/* Splide core + shared UI: outside @layer so Tailwind keeps JS-generated classes */

.splide{
  position: relative;
}

.splide__track{
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.splide__list{
  margin: 0px !important;
  display: flex;
  height: 100%;
  padding: 0px !important;
  backface-visibility: hidden;
}

.splide.is-initialized:not(.is-active) .splide__list{
  display: block;
}

.splide__slide{
  position: relative;
  margin: 0px;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none;
  backface-visibility: hidden;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__track--draggable{
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

.splide__track--fade > .splide__list > .splide__slide{
  z-index: 0;
  margin: 0px !important;
  opacity: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active{
  z-index: 1;
  opacity: 1;
}

.splide__track--ttb > .splide__list{
  display: block;
}

.splide__pagination{
  pointer-events: none;
  margin: 0px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0px;
}

.splide__pagination li{
  pointer-events: auto;
  margin: 0px;
  display: inline-block;
  list-style-type: none;
  line-height: 1;
}

.splide:not(.is-overflow) .splide__pagination{
  display: none;
}

.splide.is-static :is(.splide__arrows, .splide__arrow, .splide__pagination) {
  display: none !important;
}

/* .is-static: all slides fit */

.splide__sr{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* Shared arrow button (.Ad-sc-arrow, every slider; JS adds .Ad-sc-ring to Splide's own arrows): hover / focus = primary disc grows + ring draws around */

.Ad-sc-arrow{
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  border-width: 0px;
  padding: 0px;
  isolation: isolate;
}

.Ad-sc-arrow::before {
  content: "";
  position: absolute;
  inset: 10%;
  z-index: -1;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  transform: scale(0);
  transition: transform 0.35s ease;
}

.Ad-sc-arrow > :not(.Ad-sc-ring){
  position: relative;
  transition: color 0.3s ease;
}

.Ad-sc-arrow .Ad-sc-ring{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  transform: rotate(-90deg);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-dasharray: 145;
  stroke-dashoffset: 145;
  transition: stroke-dashoffset 0.6s ease;
}

.Ad-sc-arrow:focus-visible::before {
  transform: scale(1);
}

.Ad-sc-arrow:focus-visible .Ad-sc-ring {
  stroke-dashoffset: 0;
}

.Ad-sc-arrow:focus-visible > :not(.Ad-sc-ring){
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (hover: hover) and (pointer: fine) {
  .Ad-sc-arrow:hover::before {
    transform: scale(1);
  }

  .Ad-sc-arrow:hover .Ad-sc-ring {
    stroke-dashoffset: 0;
  }

  .Ad-sc-arrow:hover > :not(.Ad-sc-ring){
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }
}

.Ad-sc-arrow:disabled{
  cursor: default;
  opacity: 0.4;
}

@media (prefers-reduced-motion: reduce) {
  .Ad-sc-arrow::before, .Ad-sc-arrow .Ad-sc-ring {
    transition: none;
  }
}

/* Splide's own arrows: white disc, primary arrow, on the slider's edges */

.splide__arrow{
  position: absolute;
  top: 50%;
  z-index: 2;
  height: 3.125rem;
  width: 3.125rem;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 0.25rem 1rem rgba(27,48,66,0.1);
  --tw-shadow-colored: 0 0.25rem 1rem var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.splide__arrow svg:not(.Ad-sc-ring){
  height: 1.75rem;
  width: 1.75rem;
  fill: currentColor;
}

/* arrow ≈ 60% of the 40x40 viewBox → ~18px */

.splide__arrow--prev{
  left: 0.75rem;
}

.splide__arrow--prev svg:not(.Ad-sc-ring) {
  transform: scaleX(-1);
}

.splide__arrow--next{
  right: 0.75rem;
}

/* Shared dots */

.splide__pagination__page{
  box-sizing: content-box;
  display: block;
  height: 0.5rem;
  width: 0.5rem;
  cursor: pointer;
  border-radius: 9999px;
  border-width: 0px;
  background-color: rgb(249 115 22 / 0.25);
  background-clip: content-box;
  padding: 0.5rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

/* 8px dot, 24px tap target */

.splide__pagination__page.is-active{
  width: 1.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

/* Thumbnail nav */

.splide__track--nav > .splide__list > .splide__slide{
  cursor: pointer;
  overflow: hidden;
  border-radius: 0.75rem;
  border-width: 2px;
  border-color: transparent;
  opacity: 0.5;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.splide__track--nav > .splide__list > .splide__slide.is-active{
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
  opacity: 1;
}

/* Product list banners (cellphones style): small half-pill white arrows on the edges, dark arrow, no disc / ring animation */

.Ad-pls-banners .splide__arrow {
  width: 1.75rem;
  height: 3rem;
  border-radius: 0;
  background: rgba(255, 255, 255, 0.8);
  color: #1E293B;
  opacity: 1;
  box-shadow: 0 0.25rem 1.25rem -0.5rem rgba(0, 0, 0, 0.25);
  transition: background-color 0.2s;
}

.Ad-pls-banners .splide__arrow--prev {
  left: 0;
  border-radius: 0 9999px 9999px 0;
}

.Ad-pls-banners .splide__arrow--next {
  right: 0;
  border-radius: 9999px 0 0 9999px;
}

.Ad-pls-banners .splide__arrow:hover {
  background: #fff;
}

.Ad-pls-banners .splide__arrow::before, .Ad-pls-banners .splide__arrow .Ad-sc-ring {
  display: none;
}

.Ad-pls-banners .splide__arrow > svg:not(.Ad-sc-ring) {
  width: 1.25rem;
  height: 1.25rem;
  color: #1E293B;
}

.Ad-pls-banners .splide__arrow:disabled {
  opacity: 0;
  pointer-events: none;
}

/* Slide effects pull / push (andvnSlideFx, data-ad-slider-effect): the fade track hides every slide; only the active
slide and the two being animated show, without Splide's opacity transition (same as webcore). */

.Ad-fx.splide .splide__track--fade > .splide__list > .splide__slide {
  opacity: 0 !important;
  transition: none !important;
}

.Ad-fx.splide .splide__track--fade > .splide__list > .splide__slide:is(.is-active, .is-fx-in, .is-fx-out) {
  opacity: 1 !important;
}
