.wolth-widget{font-family:inherit;color:inherit;min-width:0}.wolth-product-heading{margin:0;font-family:inherit;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:800;line-height:1.06;letter-spacing:-.045em;color:inherit}.wolth-field{line-height:1.75}.wolth-field p:last-child{margin-bottom:0}.wolth-image-stage{display:block;background:white}.wolth-image-stage>img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;padding:1rem}.wolth-gallery-thumbs{display:flex;flex-wrap:wrap;gap:.65rem;padding:1rem;background:white}.wolth-gallery-thumbs button{width:4.75rem;padding:.25rem;background:white;border:1px solid #cbd5d7;cursor:pointer}.wolth-gallery-thumbs button[aria-pressed=true]{border:2px solid #08737a}.wolth-gallery-thumbs img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.wolth-no-image{display:grid;place-items:center;min-height:16rem;background:#edf1f1;color:#526572;font-size:.9rem}.wolth-highlights-list{margin:0;display:grid;gap:0}.wolth-highlights-list>div{padding:1rem 0;border-bottom:1px solid #d6dfdf}.wolth-highlights-list dt{font-size:.78em;opacity:.8}.wolth-highlights-list dd{font-size:1.35em;font-weight:800;margin:.3rem 0 0}.wolth-quote-button{display:inline-block;background:#09c6cc;color:#172941;text-decoration:none;padding:1.1rem 1.5rem;font-size:.9em;font-weight:800}.wolth-quote-button:hover{filter:brightness(.96)}.wolth-breadcrumbs{display:flex;flex-wrap:wrap;gap:.8rem;font-size:.78rem}.wolth-spec-languages{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}.wolth-spec-languages button{border:1px solid #b6c5c8;background:white;color:#172941;padding:.65rem 1rem;font-family:inherit;font-weight:700;font-size:.8rem;cursor:pointer}.wolth-spec-languages button[aria-pressed=true]{background:#172941;color:white}.wolth-spec-panel{overflow:auto}.wolth-spec-panel[hidden]{display:none!important}.wolth-spec-table{width:100%;border-collapse:collapse;text-align:start;font-size:.9em}.wolth-spec-table caption{text-align:start;font-weight:800;font-size:1.5em;margin-bottom:1.5rem}.wolth-spec-table th,.wolth-spec-table td{padding:1rem 1.25rem;border-bottom:1px solid #d6dfdf;vertical-align:top;text-align:start}.wolth-spec-table thead th{background:#172941;color:white;font-size:.8em;letter-spacing:.06em}.wolth-spec-table tbody th{font-weight:500;width:55%}.wolth-spec-table tbody td{font-weight:700}.wolth-spec-table tbody tr:nth-child(even){background:#f1f4f3}.wolth-spec-table[lang=ar]{font-family:'Noto Kufi Arabic','Noto Sans Arabic',sans-serif}.wolth-related{display:flex;flex-wrap:wrap;gap:1rem}.wolth-related>a{padding:.9rem 1.2rem;background:#e3ebeb;font-weight:700;font-size:.85em}.wolth-card{display:flex;flex-direction:column;gap:1rem}.wolth-card .wolth-image-stage img{aspect-ratio:1.35}.wolth-card h3{font-size:2rem;margin:0}.wolth-card-family{font-size:.72rem;text-transform:uppercase;font-weight:700;margin:0}.wolth-card .wolth-highlights-list{margin-bottom:1rem}.wolth-widget a:focus-visible,.wolth-widget button:focus-visible{outline:3px solid #08737a;outline-offset:4px}.wolth-editor-notice{padding:1rem;background:#fff4ca;color:#172941}.wolth-product-page{margin:0}.wolth-product-page .elementor-location-single{width:100%}@media(max-width:767px){.wolth-spec-table{font-size:.8em}.wolth-spec-table th,.wolth-spec-table td{padding:.8rem .6rem}.wolth-image-stage>img{padding:.75rem}}

/* Quote dialog and enquiry form. These ship with the plugin because the
   dialog is printed on wp_footer for every front-end page, while the
   Elementor page stylesheet only exists on the pages the builder writes. */
.w-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.w-form-grid>p{display:contents}
.w-form-grid br{display:none}
.w-form-grid .w-full{grid-column:1/-1}
.w-dialog{--navy:#172941;--aqua:#09c6cc;--aqua-deep:#07a3a8;--aqua-soft:#d9fbf9;--paper:#f1f4f3;--muted:#52626b;--ease:cubic-bezier(.22,.61,.36,1);--dur:.45s;--sh1:0 1px 2px #17294114,0 8px 24px #1729411a;--sh2:0 2px 6px #1729411f,0 18px 48px #17294126;font-family:Manrope,sans-serif;border:0;padding:0;width:min(94vw,46rem);max-height:90vh;background:var(--paper);color:var(--navy);box-shadow:0 40px 110px #0d1b2b73;border-radius:2px;overflow:hidden}
.w-dialog::backdrop{background:#0d1b2bd6;backdrop-filter:blur(7px)}
.w-dialog[open]{animation:w-pop .4s var(--ease) both}
@keyframes w-pop{from{opacity:0;transform:translateY(22px) scale(.97)}to{opacity:1;transform:none}}
.w-dialog-in{padding:2.4rem 2.2rem 2.6rem;overflow-y:auto;max-height:90vh}
.w-dialog-head{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem}
.w-dialog-head h2{margin:.2rem 0 .5rem;font-size:2rem;line-height:1.05;letter-spacing:-.035em}
.w-dialog-head p{margin:0;font-size:.87rem;line-height:1.6;color:var(--muted)}
.w-dialog-close{margin-inline-start:auto;flex:none;width:2.6rem;height:2.6rem;display:grid;place-items:center;border:1px solid #17294130;background:transparent;cursor:pointer;border-radius:50%;font-size:1.1rem;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease)}
.w-dialog-close:hover{background:var(--navy);color:#fff;transform:rotate(90deg)}
body.w-locked{overflow:hidden}

/* ==========================================================================
   Enquiry form. Scoped to both carriers: the inline #quote section inside
   .w-site, and the dialog, which the plugin prints in the footer outside it.
   ========================================================================== */
.w-dialog .wpcf7{width:100%;font-family:Manrope,sans-serif;color:var(--navy)}
:is(.w-site,.w-dialog) .w-form-grid{gap:1.15rem 1.3rem}
:is(.w-site,.w-dialog) .w-form-grid label{font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#3d5464}

/* Fields */
:is(.w-site,.w-dialog) .wpcf7 input:not([type=submit]),
:is(.w-site,.w-dialog) .wpcf7 select,
:is(.w-site,.w-dialog) .wpcf7 textarea,
.w-site .w-catalog-controls input,
.w-site .w-catalog-controls select{
 width:100%;display:block;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:500;
 background:#fff;color:var(--navy);border:1px solid #c6d3d6;border-radius:2px;
 margin-top:.5rem;padding:.9rem 1rem;min-height:3.1rem;box-shadow:none;appearance:none;
 transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}
:is(.w-site,.w-dialog) .wpcf7 textarea{resize:vertical;min-height:7.5rem;line-height:1.6}
:is(.w-site,.w-dialog) .wpcf7 input::placeholder,
:is(.w-site,.w-dialog) .wpcf7 textarea::placeholder,
.w-site .w-catalog-controls input::placeholder{color:#8fa1a9}
:is(.w-site,.w-dialog) .wpcf7 input:not([type=submit]):hover,
:is(.w-site,.w-dialog) .wpcf7 select:hover,
:is(.w-site,.w-dialog) .wpcf7 textarea:hover,
.w-site .w-catalog-controls input:hover,
.w-site .w-catalog-controls select:hover{border-color:#8fa5ab}
:is(.w-site,.w-dialog) .wpcf7 input:not([type=submit]):focus,
:is(.w-site,.w-dialog) .wpcf7 select:focus,
:is(.w-site,.w-dialog) .wpcf7 textarea:focus,
.w-site .w-catalog-controls input:focus,
.w-site .w-catalog-controls select:focus{
 outline:0;border-color:var(--aqua-deep);box-shadow:0 0 0 3px #09c6cc3d}

/* Select: a drawn chevron instead of the platform control */
/* One chevron, drawn once. It used to be two diagonal gradients placed side
   by side to form the V, which meant two background positions -- and a
   right-to-left rule that gave both layers the same position stacked them
   into an x. A single image also turns over when the list opens, and the
   padding is logical so the arrow keeps its own side in either direction. */
:is(.w-site,.w-dialog) .wpcf7 select,.w-site .w-catalog-controls select{
 /* The theme sets padding-right:20px!important on every select, which a
    logical property cannot outrank without saying important itself -- and in
    Arabic that 20px is the side the arrow now stands on. */
 padding-inline-end:2.6rem!important;padding-inline-start:1rem!important;cursor:pointer;
 background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%233d5464'%20stroke-width='2.25'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='m6%209%206%206%206-6'/%3E%3C/svg%3E");
 background-size:15px 15px;background-repeat:no-repeat;
 background-position:right 1.05rem center}
:is(.w-site,.w-dialog) .wpcf7 select[data-w-open],.w-site .w-catalog-controls select[data-w-open]{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%233d5464'%20stroke-width='2.25'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='m18%2015-6-6-6%206'/%3E%3C/svg%3E")}
/* The theme's `.elementor select{background-image:none}` loads after this
   file, so the chevron says so at a weight that outlives it. */
:is(.w-site,.w-dialog) .wpcf7 select,.w-site .w-catalog-controls select{background-size:15px 15px!important;background-repeat:no-repeat!important}
/* Browsers that know when a select is open say so themselves. Kept as its own
   rule: in a browser that does not know :open, one invalid selector would
   throw away every selector beside it. */
:is(.w-site,.w-dialog) .wpcf7 select:open{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%233d5464'%20stroke-width='2.25'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='m18%2015-6-6-6%206'/%3E%3C/svg%3E")}
.w-site .w-catalog-controls select:open{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%233d5464'%20stroke-width='2.25'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='m18%2015-6-6-6%206'/%3E%3C/svg%3E")}
:is(.w-site,.w-dialog) .wpcf7 .wpcf7-form-control-wrap{display:block;width:100%}

/* Invalid state */
:is(.w-site,.w-dialog) .wpcf7 .wpcf7-not-valid{border-color:#c0392b;box-shadow:0 0 0 3px #c0392b26}
:is(.w-site,.w-dialog) .wpcf7-not-valid-tip{display:flex;align-items:center;gap:.4rem;margin-top:.45rem;font-size:.73rem;font-weight:600;color:#b52020}
:is(.w-site,.w-dialog) .wpcf7-not-valid-tip::before{content:'!';flex:none;display:grid;place-items:center;width:.95rem;height:.95rem;border-radius:50%;background:#b52020;color:#fff;font-size:.62rem;font-weight:800}

/* Submit: the same vocabulary as every other primary button */
:is(.w-site,.w-dialog) .wpcf7 input[type=submit]{
 position:relative;width:auto;min-height:0;margin-top:.4rem;
 background:var(--aqua);color:#fff;border:0;border-radius:2px;
 padding:1.1rem 1.7rem;font-family:Manrope,sans-serif;font-size:.82rem;font-weight:800;
 letter-spacing:.02em;cursor:pointer;box-shadow:var(--sh1);
 transition:box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}
:is(.w-site,.w-dialog) .wpcf7 input[type=submit]:hover{background:var(--navy);color:#fff;box-shadow:var(--sh2)}
:is(.w-site,.w-dialog) .wpcf7 input[type=submit]:active{box-shadow:var(--sh1)}
:is(.w-site,.w-dialog) .wpcf7 input[type=submit]:disabled{opacity:.55;cursor:wait}
:is(.w-site,.w-dialog) .wpcf7-spinner{margin:0 0 0 .7rem;vertical-align:middle}

/* Response banner, coloured by what actually happened */
:is(.w-site,.w-dialog) .wpcf7-response-output{
 margin:1.3rem 0 0;padding:.95rem 1.1rem;border:0;border-left:3px solid #3d5464;
 border-radius:2px;background:#3d54640f;font-size:.85rem;font-weight:600;line-height:1.55;color:var(--navy)}
:is(.w-site,.w-dialog) .wpcf7 form.invalid .wpcf7-response-output,
:is(.w-site,.w-dialog) .wpcf7 form.unaccepted .wpcf7-response-output{border-left-color:#d68910;background:#d689101a}
:is(.w-site,.w-dialog) .wpcf7 form.failed .wpcf7-response-output,
:is(.w-site,.w-dialog) .wpcf7 form.aborted .wpcf7-response-output{border-left-color:#c0392b;background:#c0392b1a}
:is(.w-site,.w-dialog) .wpcf7 form.sent .wpcf7-response-output{border-left-color:var(--aqua-deep);background:#09c6cc1f}

/* The closing note above the button */
:is(.w-site,.w-dialog) .wpcf7 .w-form-note{margin:1.2rem 0 .2rem;font-size:.82rem;line-height:1.6;color:var(--muted)}

@media(max-width:767px){
:is(.w-site,.w-dialog) .w-form-grid{grid-template-columns:1fr}
:is(.w-site,.w-dialog) .w-form-grid label{font-size:.68rem}
:is(.w-site,.w-dialog) .wpcf7 input[type=submit]{width:100%}
}

@media(max-width:767px){.w-dialog-in{padding:1.7rem 1.25rem 2rem}.w-dialog-head h2{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.w-dialog[open]{animation:none}}

/* Text selection, site-wide. This file is enqueued on every front-end page,
   so it is the only stylesheet that can carry a document-level rule. */
::selection{background:#09c6cc;color:#fff}
::-moz-selection{background:#09c6cc;color:#fff}

[lang=ar],[lang=ar] *,:lang(ar){font-family:'Noto Kufi Arabic','Noto Sans Arabic',sans-serif}

.wolth-spec-languages button[lang=ar]{font-family:'Noto Kufi Arabic','Noto Sans Arabic',sans-serif;letter-spacing:0}

.wolth-widget a:focus:not(:focus-visible),.wolth-widget button:focus:not(:focus-visible),.wolth-product-page a:focus:not(:focus-visible){outline:0}

/* The enquiry form on the dark Get in touch panel. The fields stay white, as
   in the design, so the base treatment above carries them untouched -- only
   the labels and the messages need to read against navy. */
.w-quote .w-form-grid label{color:#c6d6dc}
.w-quote .wpcf7 .w-form-note,.w-quote .wpcf7 .w-form-note *{color:#9db3bd}
.w-quote .wpcf7-response-output{background-color:#ffffff12;color:#fff;border-left-color:#ffffff4d}
.w-quote .wpcf7 form.sent .wpcf7-response-output{border-left-color:var(--aqua);background-color:#09c6cc26}
.w-quote .wpcf7-not-valid-tip{color:#ff9a8f}
.w-quote .wpcf7-not-valid-tip::before{background:#ff9a8f;color:var(--navy)}
.wolth-widget dl dd,.w-dialog dl dd{margin-inline-start:0;margin-left:0;padding-left:0}

/* Arabic product content, scoped so the surrounding English site stays intact. */
.w-product-ar,.wolth-widget[lang=ar]{font-family:'Noto Kufi Arabic',sans-serif;letter-spacing:0;text-align:right}
.w-product-ar .elementor-heading-title,.w-product-ar button,.w-product-ar input,.w-product-ar select{font-family:'Noto Kufi Arabic',sans-serif;letter-spacing:0}
.w-product-ar.w-detail-title .elementor-heading-title{font-size:clamp(1.8rem,3.4vw,3.4rem);line-height:1.65;letter-spacing:0}
.w-product-ar.w-detail-intro p,.w-product-ar .w-spec-intro{line-height:2}
.w-product-ar .w-stat-text,.w-product-ar .w-spec-head-copy{text-align:right}
.w-product-ar dd{unicode-bidi:plaintext}
