.exnnr-section,
.exnnr-modal,
.exnnr-inline-form,
.exnnr-woo-loop-summary {
    box-sizing: border-box;
    color: var(--exnnr-text, #333);
    font-family: var(--exnnr-font, inherit);
    font-size: var(--exnnr-font-size, 16px);
	font-style: var(--exnnr-font-style, normal);
	font-weight: var(--exnnr-font-weight, 400);
	letter-spacing: var(--exnnr-letter-spacing, 0);
    line-height: var(--exnnr-line-height, 1.6);
}
.exnnr-section *, .exnnr-modal *, .exnnr-inline-form * { box-sizing: border-box; }
.exnnr-section { margin: var(--exnnr-section-margin-y, 40px) 0; padding: var(--exnnr-section-padding-y, 0) var(--exnnr-section-padding-x, 0); background: var(--exnnr-section-bg, transparent); border: 0 !important; outline: 0 !important; position: relative; }
html body .elementor-widget-exnnr_reviews > .elementor-widget-container,
html body .elementor-widget-exnnr_form > .elementor-widget-container,
html body .elementor-widget-exnnr_all_reviews > .elementor-widget-container { border: 0 !important; box-shadow: none !important; outline: 0 !important; }
.exnnr-reviews-component { border: var(--exnnr-review-section-border-width, 0) solid var(--exnnr-review-section-border-color, var(--exnnr-border)) !important; border-radius: var(--exnnr-review-section-radius, 0); box-shadow: var(--exnnr-review-section-shadow, none); }
.exnnr-section-head { display: flex; align-items: var(--exnnr-review-header-align, center); flex-direction: var(--exnnr-review-header-direction, row); justify-content: var(--exnnr-review-header-justify, space-between); gap: var(--exnnr-section-head-gap, 18px); flex-wrap: var(--exnnr-review-header-wrap, wrap); margin-bottom: var(--exnnr-section-head-bottom, 20px); }
.exnnr-section-head.exnnr-section-head-without-title { justify-content: var(--exnnr-review-header-single-justify, flex-end); }
.exnnr-section-foot { display:flex; justify-content:var(--exnnr-review-header-single-justify,flex-end); margin-top:var(--exnnr-section-head-bottom,20px); width:100%; }
.exnnr-product-form-area { display:flex; justify-content:flex-start; margin:0 0 var(--exnnr-section-head-bottom,20px); width:100%; }
.exnnr-product-form-area > .exnnr-inline-form { flex:0 1 auto; max-width:100%; width:var(--exnnr-product-form-width,1080px); }
.exnnr-section-head-without-title > .exnnr-button,.exnnr-section-foot > .exnnr-button { width:var(--exnnr-review-button-single-width,auto); }
.exnnr-section-title { margin: 0; color: var(--exnnr-review-title-color, var(--exnnr-text, #111)); font-family: var(--exnnr-review-title-font, var(--exnnr-title-font-family, var(--exnnr-font, inherit))); font-size: var(--exnnr-review-title-size, var(--exnnr-title-font-size, var(--exnnr-title-size, 32px))); font-style: var(--exnnr-title-font-style, var(--exnnr-font-style, normal)); font-weight: var(--exnnr-review-title-weight, var(--exnnr-title-font-weight, var(--exnnr-font-weight, 400))); letter-spacing: var(--exnnr-review-title-letter-spacing, 0); line-height: var(--exnnr-review-title-line-height, var(--exnnr-title-line-height, 1.2)); text-align: var(--exnnr-section-title-align, left); }
.exnnr-button { all: unset; appearance: none; box-sizing: border-box; border: var(--exnnr-button-border-width, 0) solid var(--exnnr-button-border, var(--exnnr-accent, #da0a14)); border-radius: var(--exnnr-button-radius, 15px); background: var(--exnnr-button-background, var(--exnnr-accent, #da0a14)) !important; color: var(--exnnr-button-text, #fff) !important; cursor: pointer; display: inline-flex; justify-content: center; align-items: center; gap: 8px; font-family: var(--exnnr-button-font-family, var(--exnnr-font, inherit)); font-size: var(--exnnr-button-font-size, var(--exnnr-button-size, 16px)); font-style: var(--exnnr-button-font-style, var(--exnnr-font-style, normal)); font-weight: var(--exnnr-button-font-weight, var(--exnnr-font-weight, 400)); line-height: var(--exnnr-button-line-height, 1.2); min-height: 48px; padding: max(8px, var(--exnnr-button-padding-y, 14px)) max(16px, var(--exnnr-button-padding-x, 28px)); text-align: center; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease, background .25s ease, color .25s ease, border-color .25s ease; }
.exnnr-button:hover, .exnnr-button:focus { background: var(--exnnr-button-background-hover, var(--exnnr-accent-hover, #b0070f)) !important; border-color: var(--exnnr-button-hover-border, var(--exnnr-accent-hover, #b0070f)); color: var(--exnnr-button-hover-text, #fff) !important; transform: translateY(-1px); }
html body [data-exnnr-button].exnnr-button { background: var(--exnnr-button-background, var(--exnnr-accent, #da0a14)) !important; border-color: var(--exnnr-button-border, var(--exnnr-accent, #da0a14)) !important; border-radius: var(--exnnr-button-radius, 15px) !important; border-style: solid !important; border-width: var(--exnnr-button-border-width,0) !important; color: var(--exnnr-button-text, #fff) !important; padding: max(8px, var(--exnnr-button-padding-y,14px)) max(16px, var(--exnnr-button-padding-x,28px)) !important; }
html body [data-exnnr-button].exnnr-button:hover, html body [data-exnnr-button].exnnr-button:focus { background: var(--exnnr-button-background-hover, var(--exnnr-accent-hover, #b0070f)) !important; border-color: var(--exnnr-button-hover-border, var(--exnnr-accent-hover, #b0070f)) !important; color: var(--exnnr-button-hover-text, #fff) !important; }
html body [data-exnnr-button].exnnr-button.exnnr-suppress-hover:hover,
html body [data-exnnr-button].exnnr-button.exnnr-suppress-hover:focus { background: var(--exnnr-button-background, var(--exnnr-accent, #da0a14)) !important; border-color: var(--exnnr-button-border, var(--exnnr-accent, #da0a14)) !important; color: var(--exnnr-button-text, #fff) !important; transform: none !important; }
.exnnr-reviews-component .exnnr-section-head > .exnnr-button,
.exnnr-reviews-component .exnnr-section-head > .exnnr-form-component.exnnr-button,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-button,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-form-component.exnnr-button { background: var(--exnnr-review-button-bg, var(--exnnr-button-background)) !important; border: var(--exnnr-review-button-border-width, var(--exnnr-button-border-width, 0)) solid var(--exnnr-review-button-border, var(--exnnr-button-border,var(--exnnr-accent))) !important; color: var(--exnnr-review-button-color, var(--exnnr-button-text)) !important; font-weight: var(--exnnr-review-button-weight, var(--exnnr-font-weight, 400)); letter-spacing: var(--exnnr-review-button-letter-spacing, 0); padding: max(8px, var(--exnnr-review-button-padding-y, var(--exnnr-button-padding-y,14px))) max(16px, var(--exnnr-review-button-padding-x, var(--exnnr-button-padding-x,28px))) !important; }
.exnnr-reviews-component .exnnr-section-head > .exnnr-button:hover,
.exnnr-reviews-component .exnnr-section-head > .exnnr-button:focus,
.exnnr-reviews-component .exnnr-section-head > .exnnr-form-component.exnnr-button:hover,
.exnnr-reviews-component .exnnr-section-head > .exnnr-form-component.exnnr-button:focus,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-button:hover,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-button:focus,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-form-component.exnnr-button:hover,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-form-component.exnnr-button:focus { background: var(--exnnr-review-button-hover-bg, var(--exnnr-button-background-hover)) !important; border-color: var(--exnnr-review-button-hover-border, var(--exnnr-button-hover-border,var(--exnnr-accent-hover))) !important; color: var(--exnnr-review-button-hover-color, var(--exnnr-button-hover-text)) !important; }
.exnnr-reviews-component .exnnr-section-head > .exnnr-form-component.exnnr-button.exnnr-suppress-hover:hover,
.exnnr-reviews-component .exnnr-section-head > .exnnr-form-component.exnnr-button.exnnr-suppress-hover:focus,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-form-component.exnnr-button.exnnr-suppress-hover:hover,
.exnnr-reviews-component .exnnr-section-foot > .exnnr-form-component.exnnr-button.exnnr-suppress-hover:focus { background: var(--exnnr-review-button-bg, var(--exnnr-button-background)) !important; border-color: var(--exnnr-review-button-border, var(--exnnr-button-border,var(--exnnr-accent))) !important; color: var(--exnnr-review-button-color, var(--exnnr-button-text)) !important; transform: none !important; }
.exnnr-button:focus-visible, .exnnr-carousel-button:focus-visible, .exnnr-modal-close:focus-visible { outline: 3px solid rgba(218,10,20,.4); outline: 3px solid color-mix(in srgb, var(--exnnr-accent, #da0a14), transparent 60%); outline-offset: 3px; }
.exnnr-button:disabled { cursor: wait; opacity: .65; transform: none; }
.exnnr-elementor-style-global .exnnr-section-title { color: var(--exnnr-review-title-color, var(--exnnr-text, #111)) !important; font-family: var(--exnnr-review-title-font, var(--exnnr-font, inherit)) !important; font-size: var(--exnnr-review-title-size, var(--exnnr-title-size, 32px)) !important; font-style: var(--exnnr-font-style, normal) !important; font-weight: var(--exnnr-review-title-weight, var(--exnnr-font-weight, 400)) !important; line-height: var(--exnnr-review-title-line-height, 1.2) !important; }
.exnnr-elementor-style-global .exnnr-review-card { font-family: var(--exnnr-font, inherit) !important; font-size: var(--exnnr-font-size, 16px) !important; font-style: var(--exnnr-font-style,normal) !important; font-weight: var(--exnnr-font-weight,400) !important; line-height: var(--exnnr-line-height, 1.6) !important; }
.exnnr-elementor-style-global [data-exnnr-button].exnnr-button { font-family: var(--exnnr-font, inherit) !important; font-size: var(--exnnr-button-size, 16px) !important; font-style: var(--exnnr-font-style,normal) !important; font-weight: var(--exnnr-review-button-weight, var(--exnnr-font-weight,600)) !important; line-height: 1.2 !important; }
.exnnr-review-card { background: var(--exnnr-card-bg, #fff); border: var(--exnnr-review-card-border-width, 1px) solid var(--exnnr-review-card-border-color, var(--exnnr-border, #e0e0e0)); border-radius: var(--exnnr-card-radius, 12px); box-shadow: var(--exnnr-card-shadow, 0 4px 18px rgba(0,0,0,.06)); display: flex; flex-direction: column; flex: 0 0 100%; font-family: var(--exnnr-card-font-family, inherit); font-size: var(--exnnr-card-font-size, inherit); font-style: var(--exnnr-card-font-style, normal); font-weight: var(--exnnr-card-font-weight, inherit); line-height: var(--exnnr-card-line-height, inherit); min-height: var(--exnnr-card-min-height, 0); min-width: 0; overflow-wrap:break-word; padding: var(--exnnr-card-padding, 24px); transition: background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.exnnr-review-card:hover { background: var(--exnnr-review-card-hover-bg, var(--exnnr-card-bg)); border-color: var(--exnnr-review-card-hover-border-color, var(--exnnr-border)); box-shadow: var(--exnnr-review-card-hover-shadow, var(--exnnr-card-shadow)); transform: translateY(calc(-1 * var(--exnnr-review-card-hover-lift, 0px))); }
.exnnr-review-author { color: var(--exnnr-review-author-color, var(--exnnr-text, #111)); font-weight: var(--exnnr-review-author-weight, var(--exnnr-font-weight, 400)); font-size: var(--exnnr-review-author-size, 17px); margin: 0 0 var(--exnnr-review-author-margin-bottom, 5px); text-align: var(--exnnr-review-author-align, left); }
.exnnr-stars { display: inline-flex; gap: var(--exnnr-review-star-gap, 1px); line-height: 1; margin: 0 0 var(--exnnr-review-star-margin-bottom, 8px); width: fit-content; }
.exnnr-star { color: var(--exnnr-review-star-empty, transparent); -webkit-text-stroke: 1px var(--exnnr-review-star-outline, var(--exnnr-accent, #da0a14)); font-size: var(--exnnr-review-star-size, 18px); }
.exnnr-star.is-active { color: var(--exnnr-review-star-active, var(--exnnr-accent, #da0a14)); -webkit-text-stroke: 1px var(--exnnr-review-star-outline, var(--exnnr-accent, #da0a14)); }
.exnnr-review-meta { color: var(--exnnr-review-meta-color, var(--exnnr-muted, #858585)); display: flex; gap: 6px var(--exnnr-review-meta-gap, 14px); flex-wrap: wrap; font-size: var(--exnnr-review-meta-size, 15px); font-weight: var(--exnnr-review-meta-weight, var(--exnnr-font-weight, 400)); margin-bottom: var(--exnnr-review-meta-margin-bottom, 16px); padding-bottom: var(--exnnr-review-meta-padding-bottom, 14px); }
.exnnr-review-divider { border:0; border-top:var(--exnnr-review-divider-width,1px) var(--exnnr-review-divider-style,solid) var(--exnnr-review-divider-color,var(--exnnr-border,#e0e0e0)); height:0; margin:var(--exnnr-review-divider-margin-top,0) 0 var(--exnnr-review-divider-margin-bottom,16px); width:100%; }
.exnnr-review-city + .exnnr-review-date::before { color:var(--exnnr-border,#ccc); content:"•"; margin-right:var(--exnnr-review-meta-gap,14px); }
.exnnr-review-text { color: var(--exnnr-review-text-color, var(--exnnr-text)); flex: 1 1 auto; font-size: var(--exnnr-review-text-size, 16px); font-weight: var(--exnnr-review-text-weight, var(--exnnr-font-weight, 400)); line-height: var(--exnnr-review-text-line-height, 1.6); text-align: var(--exnnr-review-text-align, left); }
.exnnr-review-text p { margin: 0 0 .8em; }
.exnnr-review-text p:last-child { margin-bottom: 0; }
.exnnr-review-extras { border-top: 1px solid var(--exnnr-border, #e0e0e0); display: grid; gap: 5px; font-size: .92em; margin-top: 16px; padding-top: 14px; }
.exnnr-review-extra-label { color: var(--exnnr-muted, #777); font-weight: var(--exnnr-font-weight, 400); }
.exnnr-review-source { flex:0 0 100%; font-size:.88em; margin:0 0 0 calc(-1 * var(--exnnr-source-padding-x, 8px)); min-width:0; }
.exnnr-review-source a { background: var(--exnnr-source-background, transparent) !important; border-radius: var(--exnnr-source-radius, 5px); color: var(--exnnr-source-color, var(--exnnr-accent, #da0a14)) !important; display: inline-block; font-family: inherit !important; font-size: var(--exnnr-source-font-size, 14px) !important; font-style: inherit !important; font-weight: var(--exnnr-source-font-weight, var(--exnnr-font-weight, 400)) !important; line-height: inherit !important; padding: var(--exnnr-source-padding-y, 4px) var(--exnnr-source-padding-x, 8px); text-decoration: var(--exnnr-source-decoration, none) !important; transition: background-color .2s ease, color .2s ease, text-decoration-color .2s ease; }
.exnnr-review-source a:hover, .exnnr-review-source a:focus { background: var(--exnnr-source-hover-background, var(--exnnr-accent, #da0a14)) !important; color: var(--exnnr-source-hover-color, #fff) !important; font-family: inherit !important; font-size: var(--exnnr-source-font-size, 14px) !important; font-style: inherit !important; font-weight: var(--exnnr-source-font-weight, var(--exnnr-font-weight, 400)) !important; line-height: inherit !important; text-decoration: var(--exnnr-source-hover-decoration, none) !important; }
.exnnr-reviews-grid, .exnnr-reviews-list { display: grid; gap: var(--exnnr-gap, 20px); }
.exnnr-reviews-grid { grid-template-columns: repeat(var(--exnnr-local-columns, var(--exnnr-columns-desktop, 2)), minmax(0, 1fr)); }
.exnnr-reviews-grid .exnnr-review-card, .exnnr-reviews-list .exnnr-review-card { flex-basis: auto; }
.exnnr-reviews-list { grid-template-columns: 1fr; }
.exnnr-carousel { display: grid; grid-template-columns: var(--exnnr-nav-size, 48px) minmax(0, 1fr) var(--exnnr-nav-size, 48px); align-items: center; gap: var(--exnnr-nav-gap, 18px); position: relative; }
.exnnr-carousel-viewport { box-sizing: border-box; overflow: hidden; min-width: 0; width: 100%; padding: 4px; margin: 0; }
.exnnr-carousel-track { display: flex; gap: var(--exnnr-gap, 20px); transition: transform .42s cubic-bezier(.2,.7,.2,1); will-change: transform; }
.exnnr-carousel-button, .exnnr-section button.exnnr-carousel-button { all: unset; appearance: none; align-items: center !important; background: var(--exnnr-nav-background, #fff) !important; border-color: var(--exnnr-nav-border, #e0e0e0) !important; border-radius: var(--exnnr-nav-radius, 999px) !important; border-style: solid !important; border-width: var(--exnnr-nav-border-width, 1px) !important; box-shadow: var(--exnnr-nav-shadow, 0 3px 12px rgba(16,24,40,.10)) !important; box-sizing: border-box !important; color: var(--exnnr-nav-color, #344054) !important; cursor: pointer; display: flex !important; height: var(--exnnr-nav-size, 48px) !important; justify-content: center !important; min-height: var(--exnnr-nav-size, 48px) !important; min-width: var(--exnnr-nav-size, 48px) !important; padding: 0 !important; transform: translateY(var(--exnnr-nav-offset-y, 0)); transition: opacity .2s ease, transform .2s ease, box-shadow .2s ease; width: var(--exnnr-nav-size, 48px) !important; }
.exnnr-carousel-button svg, .exnnr-section button.exnnr-carousel-button svg { display: block !important; fill: none !important; height: var(--exnnr-nav-icon-size, 22px) !important; max-height: none !important; max-width: none !important; opacity: 1 !important; overflow: visible !important; pointer-events: none; stroke: currentColor !important; visibility: visible !important; width: var(--exnnr-nav-icon-size, 22px) !important; }
.exnnr-carousel-button svg path, .exnnr-section button.exnnr-carousel-button svg path { display: block !important; fill: none !important; opacity: 1 !important; stroke: currentColor !important; stroke-linecap: round !important; stroke-linejoin: round !important; stroke-width: 2.25 !important; vector-effect: non-scaling-stroke; visibility: visible !important; }
html body [data-exnnr-carousel] > button.exnnr-carousel-button { align-items: center !important; background: var(--exnnr-nav-background, #fff) !important; border: var(--exnnr-nav-border-width, 1px) solid var(--exnnr-nav-border, #e0e0e0) !important; border-radius: var(--exnnr-nav-radius, 999px) !important; color: var(--exnnr-nav-color, #344054) !important; display: flex !important; height: var(--exnnr-nav-size, 48px) !important; justify-content: center !important; min-height: var(--exnnr-nav-size, 48px) !important; min-width: var(--exnnr-nav-size, 48px) !important; padding: 0 !important; width: var(--exnnr-nav-size, 48px) !important; }
html body [data-exnnr-carousel] > button.exnnr-carousel-button > svg, html body [data-exnnr-carousel] > button.exnnr-carousel-button > svg > path { display: block !important; fill: none !important; opacity: 1 !important; stroke: currentColor !important; visibility: visible !important; }
.exnnr-carousel-button:hover, .exnnr-section button.exnnr-carousel-button:hover { background: var(--exnnr-nav-hover-background, var(--exnnr-nav-background, #fff)) !important; border-color: var(--exnnr-nav-hover-border, var(--exnnr-nav-border, #e0e0e0)) !important; box-shadow: var(--exnnr-nav-shadow, 0 5px 16px rgba(16,24,40,.16)) !important; color: var(--exnnr-nav-hover-color, var(--exnnr-nav-color, #344054)) !important; transform: translateY(var(--exnnr-nav-offset-y, 0)) scale(1.04); }
html body [data-exnnr-carousel] > button.exnnr-carousel-button:hover, html body [data-exnnr-carousel] > button.exnnr-carousel-button:focus { background: var(--exnnr-nav-hover-background, var(--exnnr-nav-background, #fff)) !important; border-color: var(--exnnr-nav-hover-border, var(--exnnr-nav-border, #e0e0e0)) !important; color: var(--exnnr-nav-hover-color, var(--exnnr-nav-color, #344054)) !important; }
.exnnr-carousel-button:disabled, .exnnr-carousel-button.is-disabled { cursor: default; opacity: .58 !important; transform: translateY(var(--exnnr-nav-offset-y, 0)); visibility: visible !important; }
.exnnr-nav-outside .exnnr-carousel { grid-template-columns: var(--exnnr-nav-size, 48px) minmax(0,1fr) var(--exnnr-nav-size, 48px); column-gap: var(--exnnr-nav-gap, 18px); }
.exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-prev { grid-column: 1; grid-row: 1; }
.exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-viewport { grid-column: 2; grid-row: 1; }
.exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-next { grid-column: 3; grid-row: 1; }
.exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-button { position: static !important; inset: auto !important; align-self: center; justify-self: center; margin: 0 !important; }
.exnnr-nav-inside .exnnr-carousel { grid-template-columns: minmax(0,1fr); gap: 0; isolation: isolate; overflow: visible !important; }
.exnnr-nav-inside .exnnr-carousel-viewport { grid-column: 1; grid-row: 1; position: relative; z-index: 0; }
.exnnr-nav-inside .exnnr-carousel-track, .exnnr-nav-inside .exnnr-review-card { position: relative; z-index: 1; }
.exnnr-nav-inside .exnnr-carousel-button, .exnnr-nav-inside .exnnr-carousel > button.exnnr-carousel-button { grid-column: 1; grid-row: 1; position: absolute !important; top: 50% !important; transform: translateY(calc(-50% + var(--exnnr-nav-offset-y, 0px))); visibility: visible !important; z-index: 999 !important; }
.exnnr-nav-inside .exnnr-carousel-button:hover { transform: translateY(calc(-50% + var(--exnnr-nav-offset-y, 0px))) scale(1.04); }
.exnnr-nav-inside .exnnr-carousel-button:disabled, .exnnr-nav-inside .exnnr-carousel-button.is-disabled { transform: translateY(calc(-50% + var(--exnnr-nav-offset-y, 0px))); z-index: 999 !important; }
.exnnr-nav-inside .exnnr-carousel-prev { left: var(--exnnr-nav-inside-inset, 18px) !important; right: auto !important; }
.exnnr-nav-inside .exnnr-carousel-next { right: var(--exnnr-nav-inside-inset, 18px) !important; left: auto !important; }
.exnnr-empty, .exnnr-login-required { background: var(--exnnr-card-bg, #fff); background: color-mix(in srgb, var(--exnnr-card-bg, #fff), var(--exnnr-border, #eee) 20%); border: 1px dashed var(--exnnr-border, #ddd); border-radius: var(--exnnr-card-radius, 12px); margin: 18px 0 0; padding: 18px; }
.exnnr-modal { inset: 0; opacity: 0; pointer-events: none; position: fixed; transition: opacity .25s ease; z-index: 999999; }
.exnnr-modal.is-open { opacity: 1; pointer-events: auto; }
.exnnr-modal-backdrop { background: var(--exnnr-overlay, rgba(0,0,0,.48)); inset: 0; position: absolute; }
.exnnr-modal-dialog { background: var(--exnnr-form-bg, var(--exnnr-card-bg, #fff)); border: var(--exnnr-form-border-width, 1px) solid var(--exnnr-form-border, var(--exnnr-border, #ddd)); border-radius: var(--exnnr-form-radius, var(--exnnr-card-radius, 12px)); box-shadow: 0 18px 60px rgba(0,0,0,.28); left: 50%; max-height: calc(100vh - 36px); max-width: calc(100vw - 28px); overflow: auto; padding: var(--exnnr-form-padding, 24px); position: absolute; top: 50%; transform: translate(-50%, calc(-50% - 18px)); transition: transform .25s ease; width: var(--exnnr-modal-width, 540px); }
.exnnr-modal.is-open .exnnr-modal-dialog { transform: translate(-50%, -50%); }
.exnnr-modal-close { all: unset; appearance: none; background: transparent; border: 0; box-sizing: border-box; color: var(--exnnr-muted, #777); cursor: pointer; font-size: 30px; line-height: 1; padding: 5px; position: absolute; right: 12px; top: 10px; }
.exnnr-form-title { color: var(--exnnr-form-title-color, var(--exnnr-text, #111)); font: inherit; font-size: var(--exnnr-form-title-size, 24px); font-weight: var(--exnnr-form-title-weight, var(--exnnr-font-weight, 400)); line-height: var(--exnnr-form-title-line-height, 1.2); margin: 0 38px var(--exnnr-form-title-margin-bottom,18px) 0; text-align: var(--exnnr-form-title-align, left); }
.exnnr-review-form { margin-top:var(--exnnr-form-margin-top,0); margin-bottom:var(--exnnr-form-margin-bottom,0); }
.exnnr-inline-form { background: var(--exnnr-form-bg, var(--exnnr-card-bg, #fff)); border: var(--exnnr-form-border-width, 1px) solid var(--exnnr-form-border, var(--exnnr-border, #ddd)); border-radius: var(--exnnr-form-radius, var(--exnnr-card-radius, 12px)); padding: var(--exnnr-form-padding, 24px); }
.exnnr-form-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--exnnr-form-gap, 15px); }
.exnnr-form-field { grid-column: 1 / -1; min-width: 0; }
.exnnr-form-field.exnnr-width-half { grid-column: span 3; }
.exnnr-form-field.exnnr-width-third { grid-column: span 2; }
.exnnr-form-field > label, .exnnr-form-field legend { color: var(--exnnr-form-label-color, var(--exnnr-text, #222)); display: block; font-size: var(--exnnr-form-label-size, 16px); font-weight: var(--exnnr-form-label-weight, var(--exnnr-font-weight, 400)); line-height: var(--exnnr-form-label-line-height, 1.4); margin: 0 0 6px; }
.exnnr-form-field fieldset { border: 0; margin: 0; padding: 0; }
.exnnr-form-field input:not([type="radio"]):not([type="checkbox"]), .exnnr-form-field textarea, .exnnr-form-field select { appearance: none; background: var(--exnnr-input-bg, #fff); border: var(--exnnr-field-border-width, 1px) solid var(--exnnr-field-border-color, var(--exnnr-border, #ddd)); border-radius: var(--exnnr-input-radius, 7px); color: var(--exnnr-field-text-color, var(--exnnr-text, #333)); font: inherit; font-size: var(--exnnr-field-font-size, 16px); min-height: var(--exnnr-field-min-height, 46px); padding: var(--exnnr-field-padding-y, 11px) var(--exnnr-field-padding-x, 12px); transition: border-color .2s ease, box-shadow .2s ease; width: 100%; }
.exnnr-form-field input::placeholder, .exnnr-form-field textarea::placeholder { color: var(--exnnr-field-placeholder-color, var(--exnnr-muted)); opacity: 1; }
.exnnr-form-field textarea { min-height: var(--exnnr-textarea-min-height, 120px); resize: vertical; }
.exnnr-form-field select { background-image: linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%); background-position: calc(100% - 17px) 50%,calc(100% - 12px) 50%; background-repeat: no-repeat; background-size: 5px 5px,5px 5px; padding-right: 34px; }
.exnnr-form-field input:focus, .exnnr-form-field textarea:focus, .exnnr-form-field select:focus { border-color: var(--exnnr-field-focus-border, var(--exnnr-accent, #da0a14)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--exnnr-field-focus-ring, var(--exnnr-accent, #da0a14)), transparent 82%); outline: none; }
.exnnr-field-help { color: var(--exnnr-muted, #777); display: block; font-size: .84em; margin-top: 5px; }
.exnnr-rating-input { display: inline-flex; flex-direction: row; gap: var(--exnnr-form-star-gap, var(--exnnr-review-star-gap, 1px)); justify-content: flex-start; margin-top:var(--exnnr-form-star-margin-top,6px); margin-bottom: var(--exnnr-form-star-margin-bottom, var(--exnnr-review-star-margin-bottom, 8px)); }
.exnnr-rating-input input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.exnnr-rating-input label { color: var(--exnnr-form-star-empty, var(--exnnr-review-star-empty, transparent)); cursor: pointer; font-size: var(--exnnr-form-star-size, var(--exnnr-review-star-size, 18px)); line-height: 1; padding: 0; -webkit-text-stroke: 1px var(--exnnr-form-star-outline, var(--exnnr-review-star-outline, var(--exnnr-accent, #da0a14))); }
.exnnr-rating-input label.is-selected { color: var(--exnnr-form-star-active, var(--exnnr-review-star-active, var(--exnnr-accent, #da0a14))); }
.exnnr-rating-input.is-previewing label.is-selected:not(.is-hovered) { color:var(--exnnr-form-star-empty,var(--exnnr-review-star-empty,transparent)); }
.exnnr-rating-input label.is-hovered { color: var(--exnnr-form-star-hover, var(--exnnr-review-star-active, var(--exnnr-accent, #da0a14))); }
.exnnr-rating-input input:focus-visible + label { outline: 2px solid var(--exnnr-accent, #da0a14); outline-offset: 2px; }
.exnnr-checkbox-label { align-items: flex-start; color: var(--exnnr-consent-color, var(--exnnr-text)); cursor: pointer; display: flex !important; font-size: var(--exnnr-consent-size, 14px) !important; gap: var(--exnnr-checkbox-gap, 9px); font-weight: var(--exnnr-font-weight, 400) !important; }
.exnnr-checkbox-label input[type="checkbox"] { appearance: none !important; -webkit-appearance: none !important; align-items: center; background: var(--exnnr-checkbox-bg, var(--exnnr-input-bg, #fff)) !important; border: var(--exnnr-checkbox-border-width, 1px) solid var(--exnnr-checkbox-border, var(--exnnr-border, #ddd)) !important; border-radius: var(--exnnr-checkbox-radius, 4px) !important; box-shadow: none; box-sizing: border-box; cursor: pointer; display: inline-flex; flex: 0 0 var(--exnnr-checkbox-size, 18px); height: var(--exnnr-checkbox-size, 18px) !important; justify-content: center; margin: 3px 0 0 !important; min-height: 0 !important; padding: 0 !important; transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease; width: var(--exnnr-checkbox-size, 18px) !important; }
.exnnr-checkbox-label input[type="checkbox"]::before { border-bottom: max(2px, calc(var(--exnnr-checkbox-size, 18px) * .12)) solid var(--exnnr-checkbox-check-color, #fff); border-left: max(2px, calc(var(--exnnr-checkbox-size, 18px) * .12)) solid var(--exnnr-checkbox-check-color, #fff); content: ""; display: block; height: 27%; margin-top: -8%; transform: rotate(-45deg) scale(0); transition: transform .12s ease; width: 52%; }
.exnnr-checkbox-label input[type="checkbox"]:hover { background: var(--exnnr-checkbox-hover-bg, var(--exnnr-checkbox-bg, var(--exnnr-input-bg, #fff))) !important; border-color: var(--exnnr-checkbox-hover-border, var(--exnnr-accent, #da0a14)) !important; }
.exnnr-checkbox-label input[type="checkbox"]:checked { background: var(--exnnr-checkbox-checked-bg, var(--exnnr-accent, #da0a14)) !important; border-color: var(--exnnr-checkbox-checked-border, var(--exnnr-accent, #da0a14)) !important; }
.exnnr-checkbox-label input[type="checkbox"]:checked::before { transform: rotate(-45deg) scale(1); }
.exnnr-checkbox-label input[type="checkbox"]:focus-visible { box-shadow: 0 0 0 3px color-mix(in srgb, var(--exnnr-checkbox-focus-ring, var(--exnnr-accent, #da0a14)), transparent 76%) !important; outline: 2px solid var(--exnnr-checkbox-focus-ring, var(--exnnr-accent, #da0a14)); outline-offset: 2px; }
.exnnr-checkbox-label a { color: var(--exnnr-consent-link-color, var(--exnnr-accent, #da0a14)); }
.exnnr-checkbox-label a:hover { color: var(--exnnr-consent-link-hover, var(--exnnr-accent-hover)); }
.exnnr-submit-button { background: var(--exnnr-submit-bg, var(--exnnr-button-background)) !important; border: var(--exnnr-submit-border-width, var(--exnnr-button-border-width,0)) solid var(--exnnr-submit-border, var(--exnnr-button-border,var(--exnnr-accent))) !important; color: var(--exnnr-submit-color, var(--exnnr-button-text)) !important; font-weight: var(--exnnr-submit-weight, var(--exnnr-font-weight, 400)); margin: 18px var(--exnnr-submit-margin-right, 0) 0 var(--exnnr-submit-margin-left, 0); padding: max(8px, var(--exnnr-submit-padding-y, var(--exnnr-button-padding-y,14px))) max(16px, var(--exnnr-submit-padding-x, var(--exnnr-button-padding-x,28px))) !important; width: var(--exnnr-submit-width, 100%); }
.exnnr-submit-button:hover, .exnnr-submit-button:focus { background: var(--exnnr-submit-hover-bg, var(--exnnr-button-background-hover)) !important; border-color: var(--exnnr-submit-hover-border, var(--exnnr-accent-hover)) !important; color: var(--exnnr-submit-hover-color, var(--exnnr-button-hover-text)) !important; }
.exnnr-form-message { font-weight: 600; margin-top: 12px; min-height: 1.4em; text-align: center; }
.exnnr-form-message.is-success { color: var(--exnnr-success, #248a3d); }
.exnnr-form-message.is-error { color: var(--exnnr-accent, #da0a14); }
.exnnr-hp { height: 0 !important; left: -10000px !important; opacity: 0 !important; overflow: hidden !important; position: absolute !important; width: 0 !important; }
body.exnnr-modal-open { overflow: hidden; }
.exnnr-all-reviews { background: var(--exnnr-all-bg, var(--exnnr-section-bg)) !important; border: var(--exnnr-all-border-width, 0) solid var(--exnnr-all-border, var(--exnnr-border)) !important; border-radius: var(--exnnr-all-radius, 0); padding: var(--exnnr-all-padding, 0); }
.exnnr-all-reviews.is-loading { cursor: progress; opacity: .58; pointer-events: none; transition: opacity .18s ease; }
.exnnr-all-reviews .exnnr-ajax-error { color: #b42318; font-weight: 600; margin: 12px 0; }
.exnnr-filter { align-items: var(--exnnr-filter-align, center); display: flex; flex-direction: var(--exnnr-filter-direction, row); flex-wrap: wrap; gap: var(--exnnr-filter-gap-y, 10px) var(--exnnr-filter-gap-x, 14px); justify-content: var(--exnnr-filter-justify, flex-start); margin-bottom: var(--exnnr-filter-margin-bottom, 24px); }
.exnnr-filter label { color: var(--exnnr-filter-label-color, var(--exnnr-accent, #da0a14)); font-size: var(--exnnr-filter-label-size, 16px); font-weight: var(--exnnr-filter-label-weight, var(--exnnr-font-weight, 400)); }
.exnnr-filter select { background-color: var(--exnnr-filter-bg, var(--exnnr-input-bg, #fff)) !important; border: var(--exnnr-filter-border-width, 1px) solid var(--exnnr-filter-border, var(--exnnr-border, #ddd)) !important; border-radius: var(--exnnr-filter-radius, var(--exnnr-input-radius, 7px)) !important; box-sizing: border-box; color: var(--exnnr-filter-color, var(--exnnr-text, #333)) !important; flex: 0 1 var(--exnnr-filter-width, 340px); font: inherit; max-width: 100%; min-height: var(--exnnr-filter-min-height, 42px); min-width: 0; padding: var(--exnnr-filter-padding-y, 8px) calc(var(--exnnr-filter-padding-x, 12px) + 24px) var(--exnnr-filter-padding-y, 8px) var(--exnnr-filter-padding-x, 12px) !important; transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease; width: min(var(--exnnr-filter-width, 340px), 100%) !important; }
.exnnr-filter select:hover { background-color: var(--exnnr-filter-hover-bg, var(--exnnr-filter-bg, var(--exnnr-input-bg, #fff))) !important; border-color: var(--exnnr-filter-hover-border, var(--exnnr-accent)) !important; color: var(--exnnr-filter-hover-color, var(--exnnr-filter-color, var(--exnnr-text, #333))) !important; }
.exnnr-filter select:focus { background-color: var(--exnnr-filter-focus-bg, var(--exnnr-filter-bg, var(--exnnr-input-bg, #fff))) !important; border-color: var(--exnnr-filter-focus-border, var(--exnnr-accent)) !important; color: var(--exnnr-filter-focus-color, var(--exnnr-filter-color, var(--exnnr-text, #333))) !important; outline: 2px solid color-mix(in srgb,var(--exnnr-filter-focus-border, var(--exnnr-accent)),transparent 75%); outline-offset: 1px; }
.exnnr-pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 28px; }
.exnnr-pagination .page-numbers { align-items: center; background: var(--exnnr-page-bg, var(--exnnr-card-bg, #fff)); border: 1px solid var(--exnnr-page-border, var(--exnnr-border, #ddd)); border-radius: var(--exnnr-page-radius, 6px); color: var(--exnnr-page-color, var(--exnnr-text, #333)); display: inline-flex; font-weight: var(--exnnr-font-weight, 400); justify-content: center; min-height: var(--exnnr-page-size, 40px); min-width: var(--exnnr-page-size, 40px); padding: 6px 12px; text-decoration: none; }
.exnnr-pagination .page-numbers:hover { background: var(--exnnr-page-hover-bg, var(--exnnr-card-bg)); border-color: var(--exnnr-page-hover-border, var(--exnnr-accent, #da0a14)); color: var(--exnnr-page-hover-color, var(--exnnr-accent, #da0a14)); }
.exnnr-pagination .current { background: var(--exnnr-page-active-bg, var(--exnnr-accent, #da0a14)); border-color: var(--exnnr-page-active-bg, var(--exnnr-accent, #da0a14)); color: var(--exnnr-page-active-color, #fff); }
.exnnr-woo-loop-summary { display: block; font-size: .86em; margin: 4px 0; }
.exnnr-woo-loop-summary a { color: var(--exnnr-accent, #da0a14); text-decoration: none; }
@media (max-width: 900px) {
    .exnnr-reviews-grid { grid-template-columns: repeat(var(--exnnr-local-columns-tablet, var(--exnnr-columns-tablet, 2)), minmax(0,1fr)); }
}
@media (max-width: 600px) {
    .exnnr-section { margin: var(--exnnr-section-margin-y, 28px) 0; }
    .exnnr-section-head { align-items: stretch; }
    .exnnr-section-head .exnnr-button,.exnnr-section-foot .exnnr-button { width: 100%; }
    .exnnr-reviews-grid { grid-template-columns: repeat(var(--exnnr-local-columns-mobile, var(--exnnr-columns-mobile, 1)), minmax(0,1fr)); }
    .exnnr-carousel { grid-template-columns: minmax(0,1fr); gap: 0; }
    .exnnr-carousel-viewport { grid-column: 1; grid-row: 1; }
    .exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-viewport { grid-column: 1; grid-row: 1; }
    .exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-button,
    .exnnr-carousel-button { grid-column: 1; grid-row: 1; position: absolute !important; top: 50% !important; transform: translateY(calc(-50% + var(--exnnr-nav-offset-y, 0px))); z-index: 30!important; }
    .exnnr-carousel-button:hover { transform: translateY(calc(-50% + var(--exnnr-nav-offset-y, 0px))) scale(1.04); }
    .exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-prev,
    .exnnr-carousel-prev { left: var(--exnnr-nav-gap, 8px) !important; right: auto !important; }
    .exnnr-nav-outside .exnnr-carousel > .exnnr-carousel-next,
    .exnnr-carousel-next { right: var(--exnnr-nav-gap, 8px) !important; left: auto !important; }
    .exnnr-form-field.exnnr-width-half, .exnnr-form-field.exnnr-width-third { grid-column: 1 / -1; }
    .exnnr-modal-dialog { padding: var(--exnnr-form-padding, 24px); }
    .exnnr-filter { align-items: stretch; flex-direction: column; }
    .exnnr-filter select { min-width: 0; width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
    .exnnr-carousel-track, .exnnr-modal, .exnnr-modal-dialog, .exnnr-button { transition: none !important; }
}
