/* OLIVE PEOPLE — Beauty Demand Survey 1.1.3 | Scoped compact hero modal */
.op-bds-overlay[hidden], .op-bds-back[hidden] { display:none !important; }
.op-bds-modal-open { overflow:hidden !important; }
.op-bds-overlay { position:fixed;inset:0;z-index:2147483000;background:rgba(20,30,17,.53);
 display:flex;align-items:center;justify-content:center;padding:10px;box-sizing:border-box;
 opacity:0;transition:opacity .13s ease; }
.op-bds-overlay.is-open { opacity:1; }
.op-bds-dialog { position:relative;box-sizing:border-box;width:min(100%,490px);
 max-height:min(calc(100dvh - 20px),var(--op-bds-hero-limit,780px));
 overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
 background:#fcfbf6;color:#263516;border:1px solid #d7ddce;
 box-shadow:0 12px 44px rgba(16,25,13,.20);border-radius:15px;
 padding:15px 20px 12px;font-family:Arial,Helvetica,sans-serif;
 transform:translateY(var(--op-bds-hero-shift,0px)); }
.op-bds-dialog[dir="rtl"] {text-align:right;}
.op-bds-x {position:absolute;top:7px;right:9px;z-index:2;width:29px;height:29px;
 border:1px solid #bcc9b2;border-radius:50%;background:#fcfbf6;color:#425439;
 font-size:24px;line-height:1;padding:0;cursor:pointer;display:grid;place-items:center;}
.op-bds-dialog[dir="rtl"] .op-bds-x {right:auto;left:9px;}
.op-bds-x:hover,.op-bds-x:focus-visible {background:#eef1e8;outline-offset:2px;}
.op-bds-head {padding-inline-end:26px;}
.op-bds-eyebrow {color:#4e6137!important;font-size:9px!important;font-weight:700!important;
 letter-spacing:.13em;text-transform:uppercase;margin:0 0 4px!important;line-height:1.25!important;}
.op-bds-dialog[dir="rtl"] .op-bds-eyebrow {letter-spacing:0;}
.op-bds-head h2 {color:#263516!important;font-family:Georgia,'Times New Roman',serif!important;
 font-size:23px!important;font-weight:400!important;line-height:1.12!important;margin:0 0 5px!important;}
.op-bds-subtitle {color:#636b60!important;font-size:11.5px!important;line-height:1.34!important;
 margin:0!important;}
.op-bds-progress {width:100%;height:3px;border-radius:3px;background:#e5eadf;overflow:hidden;margin:10px 0 12px;}
.op-bds-progress span {height:100%;display:block;width:25%;background:#4e6137;transition:width .15s ease;}
.op-bds-step-line {font-size:9.5px;letter-spacing:.1em;color:#5e6f4e;
 font-weight:700;margin:0 0 3px;text-transform:uppercase;}
.op-bds-dialog .op-bds-question {font-family:Arial,Helvetica,sans-serif!important;
 font-size:14.5px!important;font-weight:650!important;line-height:1.3!important;
 color:#27371f!important;margin:0 0 4px!important;}
.op-bds-multi {color:#72786c!important;font-size:10.5px!important;margin:0 0 7px!important;line-height:1.3!important;}
.op-bds-choices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
.op-bds-option {position:relative;display:flex;align-items:center;gap:8px;
 min-height:37px;padding:7px 10px;box-sizing:border-box;background:#fff;
 border:1px solid #d9dfd1;border-radius:8px;cursor:pointer;color:#27371f;
 font-size:12px!important;font-weight:500!important;line-height:1.22!important;
 text-align:start;transition:border-color .14s ease,background .14s ease;}
.op-bds-option:hover,.op-bds-option:focus-within {border-color:#859a70;background:#f6f9f2;}
.op-bds-option:has(input:checked) {background:#eef3e8;border-color:#566f42;}
.op-bds-option input[type="checkbox"] {position:absolute;opacity:0;width:1px;height:1px;cursor:pointer;}
.op-bds-checkmark {flex:0 0 17px;width:17px;height:17px;box-sizing:border-box;
 border:1.4px solid #94a38a;border-radius:50%;display:grid;place-items:center;background:#fff;}
.op-bds-option input:checked+.op-bds-checkmark {background:#4e6137;border-color:#4e6137;}
.op-bds-option input:checked+.op-bds-checkmark::after {content:'✓';font:700 12px/1 Arial,sans-serif;color:#fff;}
.op-bds-option input:focus-visible+.op-bds-checkmark {outline:2px solid #4e6137;outline-offset:3px;}
.op-bds-option-text {flex:1;min-width:0;overflow-wrap:break-word;}
.op-bds-option-other {background:#f5f7f0;}
.op-bds-other-wrap {display:block;margin-top:7px;}
.op-bds-other-input {box-sizing:border-box;width:100%;height:33px;border:1px solid #bcc9b2;
 border-radius:8px!important;padding:6px 10px!important;font-size:11.5px!important;
 background:#fff!important;color:#263516!important;}
.op-bds-other-input:focus {outline:2px solid #7b976b;outline-offset:1px;}
.op-bds-error {min-height:0;margin:0!important;font-size:11px!important;
 color:#a33d2e!important;line-height:1.4!important;}
.op-bds-error:not(:empty) {margin-top:6px!important;}
.op-bds-actions {display:flex;gap:8px;justify-content:flex-end;margin-top:9px;padding:0;}
.op-bds-button {font-family:Arial,Helvetica,sans-serif!important;box-sizing:border-box;
 border-radius:19px!important;min-height:33px;padding:7px 16px!important;
 border:1px solid #4e6137!important;font-size:11.5px!important;font-weight:600!important;
 line-height:1.2!important;cursor:pointer;}
.op-bds-primary {background:#4e6137!important;color:#fff!important;min-width:110px;}
.op-bds-primary:hover {background:#35472b!important;}
.op-bds-back {background:#fbfaf6!important;color:#263516!important;}
.op-bds-button:disabled {opacity:.65;cursor:progress;}
.op-bds-bottom {border-top:1px solid #e0e4da;margin-top:10px;padding-top:8px;}
.op-bds-hide {display:flex;align-items:center;gap:7px;cursor:pointer;font-size:11px!important;
 font-weight:500;color:#384934;}
.op-bds-hide input {accent-color:#4e6137;width:14px;height:14px;margin:0;}
.op-bds-bottom p {font-size:9px!important;line-height:1.25!important;color:#80857b!important;margin:5px 0 0!important;}
.op-bds-honey {position:absolute!important;left:-10000px!important;top:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
/* Later steps use a compact header, preserving room for full product labels. */
.op-bds-followup-step .op-bds-head h2 {font-size:20px!important;line-height:1.2!important;}
.op-bds-followup-step .op-bds-subtitle,.op-bds-followup-step .op-bds-multi {display:none;}
.op-bds-followup-step .op-bds-progress {margin:8px 0 10px;}
.op-bds-followup-step .op-bds-step-line {margin-bottom:4px;}
.op-bds-choices--long .op-bds-option {min-height:49px;padding:5px 7px;gap:6px;align-items:center;}
.op-bds-choices--long .op-bds-checkmark {flex-basis:15px;width:15px;height:15px;}
.op-bds-choices--long .op-bds-option-text {font-size:11px!important;display:flex;flex-direction:column;gap:2px;}
.op-bds-product-name {font-size:11px;line-height:1.23;overflow-wrap:anywhere;}
.op-bds-product-brand {font-size:9.5px;line-height:1.2;color:#647058;}
.op-bds-dialog[dir="rtl"] .op-bds-choices--long .op-bds-option-text {direction:ltr;text-align:right;unicode-bidi:plaintext;}
.op-bds-thanks-wrap {max-width:1300px;margin:0 auto;padding:46px 32px 100px;box-sizing:border-box;}
.op-bds-thanks {max-width:680px;margin:35px auto;padding:52px 34px;text-align:center;background:#fcfbf6;border:1px solid #e0e4d9;border-radius:16px;color:#263516;}
.op-bds-check {display:grid;place-items:center;margin:0 auto 18px;width:56px;height:56px;background:#4e6137;color:#fff;border-radius:50%;font-size:30px;line-height:1;}
.op-bds-thanks h1 {font-family:Georgia,'Times New Roman',serif!important;font-size:34px!important;font-weight:400!important;line-height:1.18!important;margin:0 0 13px!important;color:#263516!important;}
.op-bds-thanks-copy {color:#697265;font-size:15px;line-height:1.7;max-width:490px;margin:0 auto 27px;}
.op-bds-thanks-nav {display:flex;justify-content:center;gap:12px;flex-wrap:wrap;}
.op-bds-thanks-nav a {display:inline-flex;align-items:center;gap:7px;font:600 12px Arial,Helvetica,sans-serif;color:#263516!important;text-decoration:none!important;background:#f8f8f2;border:1px solid #d7ddce;border-radius:6px;padding:8px 11px;min-height:34px;box-sizing:border-box;}
.op-bds-thanks-nav a:hover {background:#e8eedf;}
@media(max-width:739px) {
 .op-bds-overlay {padding:9px;align-items:center;}
 .op-bds-dialog {width:min(100%,480px);max-height:calc(100dvh - 18px);
   border-radius:13px;padding:13px 13px 11px;transform:none;}
 .op-bds-head h2 {font-size:21px!important;}
 .op-bds-option {font-size:11px!important;gap:6px;min-height:38px;padding:6px 7px;}
 .op-bds-checkmark {flex-basis:15px;width:15px;height:15px;}
 .op-bds-choices--long .op-bds-option {min-height:48px;padding:5px 6px;}
 .op-bds-choices--long .op-bds-option-text,.op-bds-product-name {font-size:10px!important;}
 .op-bds-product-brand {font-size:9px;}
 .op-bds-thanks-wrap {padding:20px 16px 60px;}
 .op-bds-thanks {padding:34px 18px;margin:20px auto;}
 .op-bds-thanks h1 {font-size:27px!important;}
}
@media (max-width:370px) {
 .op-bds-dialog {padding:12px 11px 10px;}
 .op-bds-choices {gap:5px;}
 .op-bds-option {font-size:10.5px!important;}
}
@media(prefers-reduced-motion:reduce) {.op-bds-overlay,.op-bds-progress span {transition:none;}}
/* Keep long product-name choices readable without scrolling in the desktop hero. */
@media (min-width:740px) {
 .op-bds-followup-step .op-bds-head h2 {font-size:18px!important;margin-bottom:2px!important;}
 .op-bds-followup-step .op-bds-progress {margin:6px 0 7px;}
 .op-bds-choices--long {gap:4px;}
 .op-bds-choices--long .op-bds-option {min-height:44px;padding:4px 7px;}
}

/* 1.1.4: Brand names and official product names must remain English even in RTL.
   Only survey questions, tips, and generic category labels are translated. */
.op-bds-dialog .op-bds-official-name {
 direction:ltr!important;unicode-bidi:isolate!important;text-align:left!important;
 display:block;max-width:100%;overflow-wrap:anywhere;
}
.op-bds-dialog .op-bds-official-option .op-bds-option-text {min-width:0;}
.op-bds-dialog .op-bds-product-name,
.op-bds-dialog .op-bds-product-brand {direction:ltr!important;unicode-bidi:isolate!important;}
/* Remove the double black square outline generated by theme/browser auto-focus.
   Preserve an intentional rounded focus indicator for keyboard users. */
.op-bds-dialog:focus {outline:none!important;}
.op-bds-dialog .op-bds-x,
.op-bds-dialog .op-bds-x:focus {
 appearance:none!important;-webkit-appearance:none!important;
 box-shadow:none!important;outline:none!important;border-radius:50%!important;
}
.op-bds-dialog .op-bds-x::before,.op-bds-dialog .op-bds-x::after {
 content:none!important;display:none!important;
}
.op-bds-dialog .op-bds-x:focus-visible {
 outline:2px solid #728963!important;outline-offset:2px!important;
}

/* 1.1.5: Product title / English brand must never visually concatenate in RTL.
   Keep both lines isolated in their natural left-to-right order. */
.op-bds-dialog .op-bds-choices--long .op-bds-official-name {
 display:flex!important;flex-direction:column!important;align-items:flex-start!important;
 gap:3px!important;direction:ltr!important;unicode-bidi:isolate!important;
 text-align:left!important;width:100%;min-width:0;
}
.op-bds-dialog .op-bds-choices--long .op-bds-product-name,
.op-bds-dialog .op-bds-choices--long .op-bds-product-brand {
 display:block!important;direction:ltr!important;unicode-bidi:isolate!important;
 text-align:left!important;width:100%;margin:0!important;
}
.op-bds-dialog .op-bds-choices--long .op-bds-product-brand {
 white-space:normal;letter-spacing:.01em;
}
