:root {
  --lx-navy: #0b2447;
  --lx-midnight: #06152b;
  --lx-ink: #12213a;
  --lx-cream: #f7f3ec;
  --lx-paper: #fffdf8;
  --lx-gold: #c9a15b;
  --lx-gold-light: #e4c98f;
  --lx-line: rgba(11, 36, 71, .14);
  --lx-serif: "GFS Didot", "Didot", "Bodoni MT", Georgia, serif;
  --lx-sans: "Montserrat", "Helvetica Neue", Arial, sans-serif;
}

body.larensy-experience .elementor-location-footer { display: none !important; }
body.page-id-82 .hero-section,
body.page-id-83 .hero-section,
body.page-id-1192 .hero-section,
body.page-id-3107 .hero-section,
body.page-id-3108 .hero-section { display: none !important; }
body.page-id-82 .ct-container-full,
body.page-id-83 .ct-container-full,
body.page-id-1192 .ct-container-full,
body.page-id-3107 .ct-container-full,
body.page-id-3108 .ct-container-full { padding-top: 0 !important; }

.larensy-footer { background: var(--lx-midnight); color: #fff; font-family: var(--lx-sans); position: relative; z-index: 1; }
.larensy-footer * { box-sizing: border-box; }
.larensy-footer a { color: inherit; text-decoration: none; }
.larensy-footer__assurance { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(201,161,91,.5); border-bottom: 1px solid rgba(255,255,255,.12); }
.larensy-footer__assurance > div { min-height: 96px; padding: 24px clamp(18px,3vw,48px); display: grid; grid-template-columns: 28px 1fr; column-gap: 14px; align-content: center; border-right: 1px solid rgba(255,255,255,.12); }
.larensy-footer__assurance > div:last-child { border-right: 0; }
.larensy-footer__assurance > div > span { color: var(--lx-gold-light); font-size: 20px; grid-row: 1 / span 2; }
.larensy-footer__assurance strong { font-size: 12px; line-height: 1.3; letter-spacing: .15em; text-transform: uppercase; }
.larensy-footer__assurance small { color: rgba(255,255,255,.63); font-size: 11px; line-height: 1.5; margin-top: 5px; }
.larensy-footer__main { width: min(1500px, 100%); margin: 0 auto; padding: clamp(54px,7vw,96px) clamp(24px,5vw,76px) 50px; display: grid; grid-template-columns: 1.35fr .62fr .72fr 1.25fr; gap: clamp(32px,4vw,78px); }
.larensy-footer__wordmark { display: inline-flex; flex-direction: column; font-size: clamp(32px,3.4vw,54px); font-weight: 300; letter-spacing: .12em; line-height: .9; }
.larensy-footer__wordmark span { color: var(--lx-gold-light); font-size: 10px; letter-spacing: .42em; margin: 14px 0 0 4px; }
.larensy-footer__brand > p { color: rgba(255,255,255,.69); font: 400 15px/1.75 var(--lx-sans); max-width: 390px; margin: 30px 0; }
.larensy-footer__contact { display: grid; gap: 9px; color: rgba(255,255,255,.74); font-size: 12px; line-height: 1.55; }
.larensy-footer__contact a:hover, .larensy-footer__nav a:hover, .larensy-footer__policy-links a:hover { color: var(--lx-gold-light); }
.larensy-footer__nav { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; }
.larensy-footer__nav h2 { color: var(--lx-gold-light) !important; font: 600 11px/1.2 var(--lx-sans) !important; letter-spacing: .2em; text-transform: uppercase; margin: 1px 0 12px; }
.larensy-footer__nav a { color: rgba(255,255,255,.74); font-size: 12px; line-height: 1.4; transition: color .2s ease; }
.larensy-footer__eyebrow, .larensy-optin__eyebrow { color: var(--lx-gold-light); display: block; font: 600 10px/1.2 var(--lx-sans); letter-spacing: .22em; text-transform: uppercase; }
.larensy-footer__newsletter h2 { color: #fff !important; font: 400 clamp(28px,2.4vw,39px)/1.06 var(--lx-serif) !important; margin: 16px 0; max-width: 430px; }
.larensy-footer__newsletter > p { color: rgba(255,255,255,.64); font-size: 12px; line-height: 1.65; margin: 0 0 24px; }
.larensy-subscribe-form__row { display: grid; grid-template-columns: 1fr auto; border-bottom: 1px solid rgba(255,255,255,.45); }
.larensy-subscribe-form__row input { min-width: 0; height: 52px; border: 0 !important; background: transparent !important; color: #fff !important; padding: 0 12px 0 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.larensy-subscribe-form__row input::placeholder { color: rgba(255,255,255,.58); }
.larensy-subscribe-form__row button { border: 0; background: transparent; color: var(--lx-gold-light); font: 700 10px/1 var(--lx-sans); letter-spacing: .18em; text-transform: uppercase; padding: 0 4px 0 20px; cursor: pointer; }
.larensy-subscribe-form > small { display: block; color: rgba(255,255,255,.48); font-size: 9px; line-height: 1.6; margin-top: 12px; }
.larensy-subscribe-form > small a { text-decoration: underline; text-underline-offset: 3px; }
.larensy-form-message { min-height: 20px; color: var(--lx-gold-light); font-size: 11px; margin-top: 10px; }
.larensy-form-message.is-error { color: #ffb6ae; }
.larensy-form-message__code { display: inline-flex; align-items: center; gap: 8px; border: 1px solid currentColor; padding: 7px 11px; margin-top: 6px; font-weight: 700; letter-spacing: .14em; }
.larensy-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.larensy-footer__legal { width: min(1500px, calc(100% - 48px)); margin: 0 auto; padding: 24px 0 30px; border-top: 1px solid rgba(255,255,255,.12); display: grid; grid-template-columns: 1fr auto auto; gap: 30px; align-items: center; color: rgba(255,255,255,.51); }
.larensy-footer__legal p { font-size: 9px; margin: 0; white-space: nowrap; }
.larensy-footer__policy-links { display: flex; flex-wrap: wrap; gap: 20px; font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.larensy-footer__payments { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.larensy-footer__payments span { border: 1px solid rgba(255,255,255,.2); border-radius: 3px; padding: 6px 8px; color: rgba(255,255,255,.78); background: rgba(255,255,255,.04); font-size: 8px; font-weight: 700; }

/* Elementor side cart, redesigned in place so WooCommerce fragments stay authoritative. */
body.larensy-experience .elementor-menu-cart__container { backdrop-filter: blur(7px); background: rgba(3,13,28,.48) !important; }
body.larensy-experience .elementor-menu-cart__main { width: min(460px, 100vw) !important; max-width: 100% !important; background: var(--lx-paper) !important; color: var(--lx-ink) !important; box-shadow: -24px 0 70px rgba(4,17,37,.26) !important; padding: 0 !important; display: flex !important; flex-direction: column !important; }
body.larensy-experience .elementor-menu-cart__close-button-custom { order: 0; position: absolute !important; top: 18px !important; right: 18px !important; width: 38px !important; height: 38px !important; z-index: 4; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; display: grid !important; place-items: center; cursor: pointer; }
body.larensy-experience .elementor-menu-cart__close-button-custom:before,
body.larensy-experience .elementor-menu-cart__close-button-custom:after { content: ""; position: absolute; width: 15px; height: 1px; background: #fff; transform: rotate(45deg); }
body.larensy-experience .elementor-menu-cart__close-button-custom:after { transform: rotate(-45deg); }
body.larensy-experience .elementor-menu-cart__close-button-custom svg { display: none !important; }
.larensy-cart-intro { order: 1; background: var(--lx-navy); color: #fff; padding: 29px 66px 23px 28px; position: relative; overflow: hidden; }
.larensy-cart-intro:after { content: "L"; position: absolute; right: 13px; bottom: -31px; color: rgba(255,255,255,.045); font: 400 116px/1 var(--lx-serif); }
.larensy-cart-intro__eyebrow { display: block; color: var(--lx-gold-light); font: 600 9px/1.2 var(--lx-sans); letter-spacing: .2em; text-transform: uppercase; margin-bottom: 8px; }
.larensy-cart-intro h2 { color: #fff !important; font: 400 34px/1.05 var(--lx-serif) !important; margin: 0 !important; }
.larensy-cart-intro p { color: rgba(255,255,255,.7) !important; font: 400 11px/1.55 var(--lx-sans) !important; margin: 8px 0 0 !important; }
body.larensy-experience .elementor-menu-cart__main > .widget_shopping_cart_content { order: 2; padding: 0 27px 28px; display: flex !important; flex: 1; min-height: 0; }
.larensy-cart-fragment { display: grid; grid-template-columns: 30px 1fr; gap: 10px; padding: 17px 0; border-bottom: 1px solid var(--lx-line); color: var(--lx-ink); }
.larensy-cart-geo__icon { color: var(--lx-gold); font-size: 22px; padding-top: 4px; }
.larensy-cart-geo__eyebrow { display: block; color: #8c6a2e; font: 600 8px/1.2 var(--lx-sans); letter-spacing: .16em; text-transform: uppercase; margin-bottom: 4px; }
.larensy-cart-fragment strong { display: block; color: var(--lx-navy); font: 600 12px/1.4 var(--lx-sans); }
.larensy-cart-fragment small { display: block; color: #687181; font-size: 10px; line-height: 1.5; margin-top: 2px; }
body.larensy-experience .elementor-menu-cart__products { margin: 0 !important; padding: 18px 0 8px !important; }
body.larensy-experience .elementor-menu-cart__product { grid-template-columns: 88px 1fr 26px !important; grid-template-rows: auto auto !important; column-gap: 15px !important; padding: 0 0 18px !important; margin: 0 0 18px !important; border-bottom: 1px solid var(--lx-line) !important; }
body.larensy-experience .elementor-menu-cart__product-image { grid-row: 1 / span 2 !important; }
body.larensy-experience .elementor-menu-cart__product-image img { width: 88px !important; height: 100px !important; object-fit: cover !important; border-radius: 0 !important; background: #f0f0f0; }
body.larensy-experience .elementor-menu-cart__product-name { padding: 4px 0 0 !important; }
body.larensy-experience .elementor-menu-cart__product-name a { color: var(--lx-navy) !important; font: 500 13px/1.42 var(--lx-sans) !important; text-transform: none !important; }
body.larensy-experience .elementor-menu-cart__product-price { color: #667085 !important; font-size: 11px !important; padding-top: 7px !important; }
body.larensy-experience .elementor-menu-cart__product-remove { align-self: start; padding-top: 2px; }
body.larensy-experience .elementor-menu-cart__product-remove a { color: transparent !important; width: 25px !important; height: 25px !important; border: 1px solid var(--lx-line); border-radius: 50%; position: relative; }
body.larensy-experience .elementor-menu-cart__product-remove a:before,
body.larensy-experience .elementor-menu-cart__product-remove a:after { content: "" !important; position: absolute; left: 7px; top: 11px; width: 9px; height: 1px; background: var(--lx-navy); transform: rotate(45deg); }
body.larensy-experience .elementor-menu-cart__product-remove a:after { transform: rotate(-45deg); }
body.larensy-experience .elementor-menu-cart__subtotal { border: 0 !important; border-top: 1px solid var(--lx-line) !important; padding: 18px 0 14px !important; margin-top: auto; display: flex; justify-content: space-between; color: var(--lx-navy) !important; font-size: 13px !important; }
body.larensy-experience .elementor-menu-cart__subtotal strong { font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
body.larensy-experience .elementor-menu-cart__footer-buttons { display: grid !important; grid-template-columns: .72fr 1.28fr !important; gap: 8px !important; margin: 0 !important; }
body.larensy-experience .elementor-menu-cart__footer-buttons .elementor-button { min-height: 51px; border-radius: 0 !important; display: grid !important; place-items: center; font: 700 9px/1 var(--lx-sans) !important; letter-spacing: .14em; text-transform: uppercase; }
body.larensy-experience .elementor-menu-cart__footer-buttons .elementor-button--view-cart { color: var(--lx-navy) !important; border: 1px solid var(--lx-navy) !important; background: transparent !important; }
body.larensy-experience .elementor-menu-cart__footer-buttons .elementor-button--checkout { color: #fff !important; border: 1px solid var(--lx-navy) !important; background: var(--lx-navy) !important; }
.larensy-cart-notes { margin: 13px 0 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 9px 16px; color: #6e7682; font-size: 9px; }
.larensy-cart-notes span:before { content: "✓"; color: #9a742f; margin-right: 5px; }

/*
 * WooPayments builds its secure Stripe frame from the computed checkout styles.
 * Larensy's locally hosted brand font is unavailable inside that cross-origin
 * frame, so provide a polished system stack that Stripe can render reliably.
 */
body.larensy-experience.woocommerce-checkout form.checkout .form-row,
body.larensy-experience.woocommerce-checkout form.checkout .form-row label,
body.larensy-experience.woocommerce-checkout form.checkout .form-row input,
body.larensy-experience.woocommerce-checkout form.checkout .form-row select,
body.larensy-experience.woocommerce-checkout form.checkout .form-row textarea,
body.larensy-experience.woocommerce-checkout #payment .payment_methods li .payment_box fieldset {
  font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-variant-numeric: lining-nums tabular-nums;
}
body.larensy-experience.woocommerce-checkout form.checkout .form-row label,
body.larensy-experience.woocommerce-checkout #payment .payment_methods li .payment_box fieldset label {
  color: #26364e !important;
  font-size: 13px !important;
  font-weight: 550 !important;
  letter-spacing: .005em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}
body.larensy-experience.woocommerce-checkout form.checkout .form-row input.input-text,
body.larensy-experience.woocommerce-checkout form.checkout .form-row textarea,
body.larensy-experience.woocommerce-checkout form.checkout .form-row select {
  color: var(--lx-ink) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}
body.larensy-experience.woocommerce-checkout #payment .payment_methods li .payment_box fieldset {
  color: #26364e !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
}

/* Signup modal */
.larensy-optin { position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; padding: 22px; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .28s ease, visibility .28s ease; }
.larensy-optin.is-open { visibility: visible; opacity: 1; pointer-events: auto; }
.larensy-optin__backdrop { position: absolute; inset: 0; background: rgba(3,13,28,.68); backdrop-filter: blur(8px); }
.larensy-optin__dialog { width: min(900px, 100%); max-height: min(720px, calc(100vh - 44px)); display: grid; grid-template-columns: .95fr 1.05fr; background: var(--lx-paper); color: var(--lx-navy); position: relative; overflow: hidden; box-shadow: 0 30px 100px rgba(0,0,0,.32); transform: translateY(18px) scale(.985); transition: transform .35s cubic-bezier(.2,.75,.2,1); }
.larensy-optin.is-open .larensy-optin__dialog { transform: translateY(0) scale(1); }
.larensy-optin__close { position: absolute; z-index: 2; top: 14px; right: 14px; width: 38px; height: 38px; border: 1px solid var(--lx-line); border-radius: 50%; background: rgba(255,253,248,.9); color: var(--lx-navy); font: 300 26px/1 var(--lx-sans); cursor: pointer; }
.larensy-optin__image { min-height: 600px; background-size: cover; background-position: center; position: relative; }
.larensy-optin__image:after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 58%,rgba(3,13,28,.7)); }
.larensy-optin__image span { position: absolute; z-index: 1; left: 28px; bottom: 25px; color: #fff; font: 600 9px/1.3 var(--lx-sans); letter-spacing: .2em; text-transform: uppercase; }
.larensy-optin__content { padding: clamp(40px,5vw,74px) clamp(30px,5vw,68px) 42px; display: flex; flex-direction: column; justify-content: center; }
.larensy-optin__eyebrow { color: #8c6a2e; }
.larensy-optin__mark { color: var(--lx-gold); font: 400 52px/1 var(--lx-serif); margin: 20px 0 3px; }
.larensy-optin__content h2 { color: var(--lx-navy) !important; font: 400 clamp(37px,4vw,57px)/.98 var(--lx-serif) !important; letter-spacing: -.02em; margin: 0 0 19px !important; }
.larensy-optin__content > p:not(.larensy-optin__mark) { color: #5f6877; font: 400 13px/1.7 var(--lx-sans); margin: 0 0 25px; }
.larensy-optin__form label { color: var(--lx-navy); display: block; font: 700 9px/1.3 var(--lx-sans); letter-spacing: .13em; text-transform: uppercase; margin-bottom: 8px; }
.larensy-optin__form input[type=email] { width: 100%; height: 51px; border: 1px solid rgba(11,36,71,.28) !important; background: #fff !important; color: var(--lx-navy) !important; border-radius: 0 !important; padding: 0 14px !important; box-shadow: none !important; }
.larensy-optin__form button[type=submit] { width: 100%; min-height: 52px; margin-top: 9px; border: 1px solid var(--lx-navy); background: var(--lx-navy); color: #fff; font: 700 9px/1.3 var(--lx-sans); letter-spacing: .15em; text-transform: uppercase; cursor: pointer; }
.larensy-optin__form button[type=submit] span { color: var(--lx-gold-light); padding-left: 8px; }
.larensy-optin__form > small { color: #7a818c; font-size: 8.5px; line-height: 1.55; }
.larensy-optin__form > small a { color: var(--lx-navy); }
.larensy-optin__decline { align-self: center; margin-top: 2px; border: 0; border-bottom: 1px solid rgba(11,36,71,.25); background: transparent; color: #757b85; font-size: 9px; line-height: 1.6; cursor: pointer; }
body.larensy-modal-open { overflow: hidden; }

/* Clear, editorial policy presentation. */
.larensy-policy { width: min(1120px, calc(100% - 40px)); margin: 0 auto; padding: clamp(52px,6vw,76px) 0 90px; color: var(--lx-ink); font-family: var(--lx-sans); }
.larensy-policy__hero { display: grid; grid-template-columns: 1fr .75fr; gap: 70px; align-items: end; border-bottom: 1px solid var(--lx-line); padding-bottom: 42px; margin-bottom: 42px; }
.larensy-policy__eyebrow { color: #8b682c; font: 700 10px/1.3 var(--lx-sans); letter-spacing: .2em; text-transform: uppercase; }
.larensy-policy h1 { color: var(--lx-navy) !important; font: 400 clamp(49px,7vw,86px)/.92 var(--lx-serif) !important; letter-spacing: -.02em; margin: 18px 0 0 !important; }
.larensy-policy__intro { color: #5c6574; font-size: 15px; line-height: 1.8; margin: 0; }
.larensy-policy__quick { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 0 0 50px; }
.larensy-policy__quick > div { background: var(--lx-cream); padding: 20px; min-height: 105px; }
.larensy-policy__quick strong { display: block; color: var(--lx-navy); font: 400 23px/1.05 var(--lx-serif); margin-bottom: 8px; }
.larensy-policy__quick span { color: #667080; font-size: 10px; line-height: 1.5; }
.larensy-policy__section { display: grid; grid-template-columns: 250px 1fr; gap: 55px; padding: 32px 0; border-top: 1px solid var(--lx-line); }
.larensy-policy__section h2 { color: var(--lx-navy) !important; font: 400 31px/1.1 var(--lx-serif) !important; margin: 0 !important; }
.larensy-policy__section h3 { color: var(--lx-navy) !important; font: 600 13px/1.4 var(--lx-sans) !important; margin: 24px 0 7px !important; }
.larensy-policy__section p, .larensy-policy__section li { color: #4e596a; font-size: 13px; line-height: 1.78; }
.larensy-policy__section p:first-child { margin-top: 0; }
.larensy-policy__section ul { margin: 0; padding-left: 18px; }
.larensy-policy__section a { color: var(--lx-navy); text-decoration: underline; text-underline-offset: 3px; }
.larensy-policy__table { width: 100%; border-collapse: collapse; margin: 12px 0; }
.larensy-policy__table th, .larensy-policy__table td { border-bottom: 1px solid var(--lx-line); padding: 15px 10px; text-align: left; vertical-align: top; color: #4e596a; font-size: 12px; line-height: 1.55; }
.larensy-policy__table th { color: var(--lx-navy); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.larensy-policy__notice { background: var(--lx-navy); color: #fff; padding: 25px 28px; margin-top: 25px; }
.larensy-policy__notice p { color: rgba(255,255,255,.78); margin: 0; }

/* Contact and About — one editorial system, independent of legacy Elementor page styling. */
body.larensy-editorial-contact .ct-container-full,
body.larensy-editorial-about .ct-container-full,
body.larensy-editorial-contact #main,
body.larensy-editorial-about #main,
body.larensy-editorial-contact article,
body.larensy-editorial-about article,
body.larensy-editorial-contact .entry-content,
body.larensy-editorial-about .entry-content { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.larensy-editorial-contact .entry-content.is-layout-constrained > .larensy-editorial-page,
body.larensy-editorial-about .entry-content.is-layout-constrained > .larensy-editorial-page { width: 100% !important; max-width: none !important; margin: 0 !important; }
body.larensy-editorial-contact .hero-section,
body.larensy-editorial-about .hero-section { display: none !important; }
body.larensy-editorial-about .elementor-location-header [data-id="553f732"] { background: #fff !important; }
body.larensy-editorial-about .elementor-location-header [data-id="553f732"] a.elementor-item,
body.larensy-editorial-about .elementor-location-header [data-id="553f732"] .elementor-menu-cart__toggle_button { color: #0e2c55 !important; }
body.larensy-editorial-about .elementor-location-header [data-id="553f732"] .elementor-menu-cart__toggle_button svg { fill: #0e2c55 !important; }
body.larensy-editorial-about .elementor-location-header [data-id="553f732"] img.wp-image-1759 { content: url("https://larensy.com/wp-content/uploads/2024/12/lASENSY-4-copy-e1734891911857.png") !important; }
.larensy-editorial-page,
.larensy-editorial-page * { box-sizing: border-box; }
.larensy-editorial-page { overflow: hidden; background: var(--lx-paper); color: var(--lx-ink); font-family: var(--lx-sans); }
.larensy-page-hero { min-height: min(820px, calc(100svh - 108px)); position: relative; display: flex; align-items: flex-end; isolation: isolate; overflow: hidden; }
.larensy-page-hero__media,
.larensy-page-hero__shade { position: absolute; inset: 0; }
.larensy-page-hero__media { z-index: -2; background-size: cover; background-position: center; transform: scale(1.01); }
.larensy-page-hero--about .larensy-page-hero__media { background-position: center 46%; }
.larensy-page-hero--contact .larensy-page-hero__media { background-position: center 48%; }
.larensy-page-hero__shade { z-index: -1; background: linear-gradient(90deg,rgba(3,14,31,.91) 0%,rgba(4,17,37,.68) 42%,rgba(4,17,37,.08) 76%),linear-gradient(0deg,rgba(4,17,37,.62) 0%,transparent 45%); }
.larensy-page-hero__content { width: min(1510px,100%); margin: 0 auto; padding: clamp(80px,10vw,150px) clamp(28px,7vw,112px) clamp(70px,8vw,118px); color: #fff; }
.larensy-page-eyebrow { display: block; color: var(--lx-gold-light); font: 700 10px/1.3 var(--lx-sans); letter-spacing: .22em; text-transform: uppercase; }
.larensy-page-hero h1 { max-width: 800px; color: #fff !important; font: 400 clamp(58px,7.5vw,112px)/.89 var(--lx-serif) !important; letter-spacing: -.035em !important; margin: 20px 0 25px !important; text-wrap: balance; }
.larensy-page-hero p { max-width: 660px; color: rgba(255,255,255,.8) !important; font: 400 clamp(14px,1.15vw,18px)/1.72 var(--lx-sans) !important; margin: 0 !important; }
.larensy-page-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 28px; margin-top: 35px; }
.larensy-page-button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; padding: 0 28px; border: 1px solid currentColor; font: 700 10px/1.2 var(--lx-sans); letter-spacing: .16em; text-transform: uppercase; text-decoration: none !important; transition: background .22s ease,color .22s ease,border-color .22s ease; }
.larensy-page-button--light { background: #fff; border-color: #fff; color: var(--lx-navy) !important; }
.larensy-page-button--light:hover { background: var(--lx-gold-light); border-color: var(--lx-gold-light); }
.larensy-page-button--dark { background: var(--lx-navy); border-color: var(--lx-navy); color: #fff !important; }
.larensy-page-button--dark:hover { background: var(--lx-midnight); border-color: var(--lx-midnight); }
.larensy-page-link { color: #fff !important; display: inline-flex; align-items: center; gap: 11px; border-bottom: 1px solid rgba(255,255,255,.55); padding: 7px 0; font: 600 10px/1.4 var(--lx-sans); letter-spacing: .12em; text-transform: uppercase; text-decoration: none !important; }
.larensy-page-link--dark { color: var(--lx-navy) !important; border-bottom-color: rgba(11,36,71,.32); }
.larensy-page-link span { color: var(--lx-gold); font-size: 14px; }

.larensy-contact-layout { width: min(1360px,calc(100% - 56px)); margin: 0 auto; padding: clamp(76px,9vw,135px) 0; display: grid; grid-template-columns: minmax(0,.82fr) minmax(460px,1fr); gap: clamp(65px,9vw,150px); align-items: start; }
.larensy-contact-intro h2,
.larensy-contact-card h2,
.larensy-story h2,
.larensy-principles h2,
.larensy-about-cta h2 { color: var(--lx-navy) !important; font: 400 clamp(42px,5.4vw,76px)/.97 var(--lx-serif) !important; letter-spacing: -.025em !important; margin: 18px 0 23px !important; text-wrap: balance; }
.larensy-contact-intro > p,
.larensy-story__copy > p,
.larensy-about-cta p { color: #5b6575; font-size: 14px; line-height: 1.8; margin: 0; }
.larensy-contact-methods { margin-top: 47px; border-top: 1px solid var(--lx-line); }
.larensy-contact-methods > * { min-height: 112px; display: grid; grid-template-columns: 116px 1fr; align-content: center; column-gap: 22px; padding: 22px 8px 22px 0; border-bottom: 1px solid var(--lx-line); color: inherit !important; text-decoration: none !important; }
.larensy-contact-methods small { grid-row: 1 / span 2; color: #8c6a2e; font-size: 9px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.larensy-contact-methods strong { color: var(--lx-navy); font: 400 23px/1.2 var(--lx-serif); }
.larensy-contact-methods span { color: #747c89; font-size: 10px; line-height: 1.55; margin-top: 6px; }
.larensy-contact-card { background: var(--lx-cream); padding: clamp(34px,5vw,68px); box-shadow: 0 20px 70px rgba(5,21,43,.07); scroll-margin-top: 110px; }
.larensy-contact-card h2 { font-size: clamp(39px,4.3vw,62px) !important; }
.larensy-contact-alert { margin: 0 0 24px; padding: 14px 16px; font-size: 11px; line-height: 1.5; border: 1px solid currentColor; }
.larensy-contact-alert.is-success { color: #285c46; background: #edf7f1; }
.larensy-contact-alert.is-error { color: #8b3535; background: #fff2f0; }
.larensy-contact-form { display: grid; gap: 19px; }
.larensy-contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.larensy-contact-form label { display: grid; gap: 8px; color: var(--lx-navy); font: 700 9px/1.3 var(--lx-sans); letter-spacing: .13em; text-transform: uppercase; }
.larensy-contact-form label > span { color: #8a9099; font-weight: 500; letter-spacing: .04em; text-transform: none; }
.larensy-contact-form input,
.larensy-contact-form textarea { width: 100%; border: 1px solid rgba(11,36,71,.2) !important; border-radius: 0 !important; background: #fff !important; color: var(--lx-ink) !important; font: 400 14px/1.55 var(--lx-sans) !important; letter-spacing: 0 !important; box-shadow: none !important; outline: 0; }
.larensy-contact-form input { height: 52px; padding: 0 14px !important; }
.larensy-contact-form textarea { resize: vertical; min-height: 145px; padding: 13px 14px !important; }
.larensy-contact-form input:focus,
.larensy-contact-form textarea:focus { border-color: var(--lx-gold) !important; box-shadow: 0 0 0 2px rgba(201,161,91,.18) !important; }
.larensy-contact-form button { min-height: 56px; border: 1px solid var(--lx-navy); background: var(--lx-navy); color: #fff; font: 700 10px/1.2 var(--lx-sans); letter-spacing: .15em; text-transform: uppercase; cursor: pointer; }
.larensy-contact-form button span { color: var(--lx-gold-light); margin-left: 9px; }
.larensy-contact-form > p { color: #777f8c; font-size: 9px; line-height: 1.6; margin: -2px 0 0; }
.larensy-contact-form > p a { color: var(--lx-navy); text-underline-offset: 2px; }
.larensy-contact-form__hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.larensy-care-links { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--lx-line); border-bottom: 1px solid var(--lx-line); }
.larensy-care-links a { min-height: 185px; padding: 42px clamp(24px,4vw,64px); display: grid; grid-template-columns: 1fr auto; align-content: center; border-right: 1px solid var(--lx-line); color: var(--lx-navy) !important; text-decoration: none !important; transition: background .2s ease; }
.larensy-care-links a:last-child { border-right: 0; }
.larensy-care-links a:hover { background: var(--lx-cream); }
.larensy-care-links small { grid-column: 1/-1; color: #8c6a2e; font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 13px; }
.larensy-care-links strong { font: 400 clamp(22px,2.4vw,34px)/1.15 var(--lx-serif); }
.larensy-care-links > a > span { color: var(--lx-gold); align-self: center; }

.larensy-story { width: min(1360px,calc(100% - 56px)); margin: 0 auto; padding: clamp(88px,11vw,160px) 0; display: grid; grid-template-columns: minmax(0,.85fr) minmax(460px,1fr); gap: clamp(70px,10vw,160px); align-items: center; }
.larensy-story__copy > p + p { margin-top: 18px; }
.larensy-story__copy .larensy-page-link { margin-top: 31px; }
.larensy-story__image { margin: 0; position: relative; }
.larensy-story__image:before { content: ""; position: absolute; left: -22px; bottom: 28px; width: 64%; height: 66%; border: 1px solid var(--lx-gold); z-index: 0; }
.larensy-story__image img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: center; position: relative; z-index: 1; }
.larensy-story__image figcaption { position: relative; z-index: 2; color: #727b89; font-size: 9px; line-height: 1.5; letter-spacing: .08em; text-transform: uppercase; margin-top: 13px; }
.larensy-principles { background: var(--lx-navy); color: #fff; padding: clamp(78px,9vw,130px) max(28px,calc((100vw - 1360px)/2)); }
.larensy-principles__heading { max-width: 850px; margin-bottom: 60px; }
.larensy-principles h2 { color: #fff !important; margin-bottom: 0 !important; }
.larensy-principles__grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.17); }
.larensy-principles article { padding: 43px clamp(24px,3.5vw,54px) 18px 0 !important; border-right: 1px solid rgba(255,255,255,.14); }
.larensy-principles article + article { padding-left: clamp(24px,3.5vw,54px) !important; }
.larensy-principles article:last-child { border-right: 0; }
.larensy-principles article > span { color: var(--lx-gold-light); font: 400 26px/1 var(--lx-serif); }
.larensy-principles h3 { color: #fff !important; font: 400 clamp(24px,2.4vw,35px)/1.1 var(--lx-serif) !important; margin: 24px 0 14px !important; }
.larensy-principles p { color: rgba(255,255,255,.65); font-size: 12px; line-height: 1.75; margin: 0; }
.larensy-about-quote { background: var(--lx-cream); text-align: center; padding: clamp(85px,11vw,155px) 25px; }
.larensy-about-quote p { max-width: 1060px; margin: 0 auto 28px; color: var(--lx-navy); font: 400 clamp(45px,6.8vw,94px)/.98 var(--lx-serif); letter-spacing: -.03em; }
.larensy-about-quote span { color: #8c6a2e; font-size: 9px; font-weight: 700; letter-spacing: .22em; }
.larensy-about-cta { width: min(1360px,calc(100% - 56px)); margin: 0 auto; padding: clamp(78px,10vw,145px) 0; display: grid; grid-template-columns: 1fr .72fr; gap: clamp(60px,9vw,140px); align-items: end; }
.larensy-about-cta h2 { margin-bottom: 0 !important; }
.larensy-about-cta .larensy-page-button { margin-top: 29px; }

/* Mobile navigation: opaque, full-height, brand-led and always above the announcement/header. */
body.larensy-nav-open { overflow: hidden !important; overscroll-behavior: none; }
body.larensy-nav-open .larensy-global-announcement { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
body.larensy-nav-open .larensy-mobile-nav__header-sibling { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.e-off-canvas.larensy-mobile-nav { position: fixed !important; inset: 0 !important; width: 100vw !important; max-width: none !important; height: 100dvh !important; z-index: 2147483200 !important; }
.larensy-mobile-nav .e-off-canvas__overlay { display: none !important; }
.larensy-mobile-nav .e-off-canvas__main,
.larensy-mobile-nav .e-off-canvas__content { position: absolute !important; inset: 0 !important; width: 100% !important; max-width: none !important; height: 100dvh !important; max-height: none !important; margin: 0 !important; transform: none !important; }
.larensy-mobile-nav .e-off-canvas__content { overflow-x: hidden !important; overflow-y: auto !important; background: var(--lx-paper) !important; color: var(--lx-navy); overscroll-behavior: contain; }
.larensy-mobile-nav .e-off-canvas__content > .e-con { width: 100% !important; min-height: 100dvh !important; background: var(--lx-paper) !important; }
.larensy-mobile-nav__topbar { min-height: 82px !important; padding: max(14px,env(safe-area-inset-top)) 18px 12px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; background: var(--lx-midnight) !important; border: 0 !important; position: relative !important; z-index: 2; }
.larensy-mobile-nav__topbar > .elementor-element { position: relative !important; inset: auto !important; width: 42px !important; height: 42px !important; margin: 0 !important; display: grid !important; place-items: center !important; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; order: 1; }
.larensy-mobile-nav__topbar > .elementor-element:first-child { order: 3; }
.larensy-mobile-nav__topbar .elementor-widget-container,
.larensy-mobile-nav__topbar .elementor-icon-wrapper { width: 100%; height: 100%; display: grid; place-items: center; }
.larensy-mobile-nav__topbar a.elementor-icon { width: 100% !important; height: 100% !important; display: grid !important; place-items: center !important; color: #fff !important; }
.larensy-mobile-nav__topbar svg { width: 19px !important; height: 19px !important; stroke: #fff !important; }
.larensy-mobile-nav__brand { order: 2; color: #fff !important; display: inline-flex; flex-direction: column; align-items: center; font: 300 25px/.9 var(--lx-sans); letter-spacing: .13em; text-decoration: none !important; }
.larensy-mobile-nav__brand span { color: var(--lx-gold-light); font: 600 6px/1 var(--lx-sans); letter-spacing: .42em; margin: 8px 0 0 3px; }
.larensy-mobile-nav .elementor-widget-search { width: calc(100% - 36px) !important; margin: 0 auto !important; }
.larensy-mobile-nav .e-search-form { min-height: 56px; border: 0 !important; border-bottom: 1px solid rgba(11,36,71,.18) !important; background: transparent !important; }
.larensy-mobile-nav .e-search-input { height: 56px !important; padding: 0 46px 0 3px !important; border: 0 !important; background: transparent !important; color: var(--lx-navy) !important; font: 400 15px/1.2 var(--lx-sans) !important; }
.larensy-mobile-nav .e-search-input::placeholder { color: #707887 !important; }
.larensy-mobile-nav .e-search-submit { width: 42px !important; background: transparent !important; color: var(--lx-navy) !important; }
.larensy-mobile-nav__item { min-height: 78px !important; padding: 0 18px !important; border: 0 !important; background: var(--lx-paper) !important; }
.larensy-mobile-nav__item + .larensy-mobile-nav__item { border-top: 1px solid var(--lx-line) !important; }
.larensy-mobile-nav__item .elementor-widget-container,
.larensy-mobile-nav__item .elementor-heading-title { width: 100%; height: 100%; margin: 0 !important; }
.larensy-mobile-nav__item .elementor-heading-title > a { width: 100%; min-height: 78px; display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto; align-content: center; column-gap: 16px; color: var(--lx-navy) !important; text-decoration: none !important; }
.larensy-mobile-nav__item .larensy-mobile-nav__label { font: 400 25px/1.05 var(--lx-serif); text-transform: none; letter-spacing: 0; }
.larensy-mobile-nav__item .larensy-mobile-nav__desc { color: #7b8390; font: 500 8px/1.3 var(--lx-sans); letter-spacing: .13em; text-transform: uppercase; margin-top: 5px; }
.larensy-mobile-nav__item .larensy-mobile-nav__arrow { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--lx-gold); font: 400 17px/1 var(--lx-sans); }
.larensy-mobile-nav__legacy { display: none !important; }
.larensy-mobile-nav__footer { margin-top: auto; padding: 28px 20px max(30px,env(safe-area-inset-bottom)); background: var(--lx-navy); color: #fff; }
.larensy-mobile-nav__footer small { display: block; color: var(--lx-gold-light); font: 700 8px/1.3 var(--lx-sans); letter-spacing: .18em; text-transform: uppercase; }
.larensy-mobile-nav__footer strong { display: block; color: #fff; font: 400 27px/1.1 var(--lx-serif); margin: 8px 0 16px; }
.larensy-mobile-nav__footer a { display: inline-flex; align-items: center; gap: 9px; color: #fff !important; border-bottom: 1px solid rgba(255,255,255,.42); padding-bottom: 5px; font: 600 9px/1.3 var(--lx-sans); letter-spacing: .13em; text-transform: uppercase; text-decoration: none !important; }
.larensy-mobile-nav__footer p { color: rgba(255,255,255,.57); font-size: 8px; line-height: 1.5; letter-spacing: .09em; text-transform: uppercase; margin: 20px 0 0; }

@media (max-width: 980px) {
  .larensy-footer__main { grid-template-columns: 1.15fr 1fr 1fr; }
  .larensy-footer__newsletter { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,.12); padding-top: 34px; }
  .larensy-footer__legal { grid-template-columns: 1fr auto; }
  .larensy-footer__legal p { grid-column: 1 / -1; }
  .larensy-optin__dialog { grid-template-columns: .85fr 1.15fr; }
  .larensy-policy__hero { gap: 35px; }
  .larensy-policy__section { grid-template-columns: 190px 1fr; gap: 35px; }
  .larensy-contact-layout,
  .larensy-story { grid-template-columns: 1fr; gap: 60px; }
  .larensy-contact-card { max-width: 760px; width: 100%; }
  .larensy-story__image { width: min(720px,100%); justify-self: end; }
  .larensy-about-cta { grid-template-columns: 1fr; gap: 34px; }
}

@media (max-width: 700px) {
  .larensy-footer__assurance { grid-template-columns: 1fr; }
  .larensy-footer__assurance > div { min-height: 76px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .larensy-footer__main { grid-template-columns: 1fr 1fr; padding-left: 22px; padding-right: 22px; }
  .larensy-footer__brand, .larensy-footer__newsletter { grid-column: 1 / -1; }
  .larensy-footer__legal { width: calc(100% - 44px); grid-template-columns: 1fr; gap: 20px; }
  .larensy-footer__legal p { grid-column: auto; }
  .larensy-footer__payments { justify-content: flex-start; }
  body.larensy-experience .elementor-menu-cart__main { width: 100vw !important; }
  .larensy-optin { padding: 12px; }
  .larensy-optin__dialog { grid-template-columns: 1fr; max-height: calc(100vh - 24px); overflow-y: auto; }
  .larensy-optin__image { min-height: 220px; background-position: center 38%; }
  .larensy-optin__content { padding: 30px 24px 28px; }
  .larensy-optin__mark { display: none; }
  .larensy-optin__content h2 { font-size: 39px !important; margin-top: 13px !important; }
  .larensy-optin__content > p:not(.larensy-optin__mark) { margin-bottom: 18px; }
  .larensy-optin__image span { left: 20px; bottom: 16px; }
  .larensy-policy { width: min(100% - 30px, 1120px); }
  .larensy-policy__hero, .larensy-policy__section { grid-template-columns: 1fr; gap: 19px; }
  .larensy-policy__quick { grid-template-columns: 1fr; }
  .larensy-policy__quick > div { min-height: 0; }
  .larensy-policy__table { display: block; overflow-x: auto; }
  .larensy-page-hero { min-height: 690px; }
  .larensy-page-hero__shade { background: linear-gradient(0deg,rgba(3,14,31,.92) 0%,rgba(4,17,37,.42) 72%,rgba(4,17,37,.22)); }
  .larensy-page-hero__content { padding: 115px 22px 58px; }
  .larensy-page-hero h1 { font-size: clamp(49px,15vw,69px) !important; max-width: 540px; }
  .larensy-page-hero p { font-size: 13px !important; line-height: 1.65 !important; }
  .larensy-page-actions { align-items: flex-start; flex-direction: column; gap: 15px; margin-top: 28px; }
  .larensy-page-button { width: 100%; }
  .larensy-contact-layout,
  .larensy-story,
  .larensy-about-cta { width: min(100% - 36px,1360px); padding-top: 72px; padding-bottom: 72px; }
  .larensy-contact-layout { gap: 52px; }
  .larensy-contact-intro h2,
  .larensy-contact-card h2,
  .larensy-story h2,
  .larensy-principles h2,
  .larensy-about-cta h2 { font-size: clamp(39px,12vw,54px) !important; }
  .larensy-contact-methods > * { grid-template-columns: 1fr; gap: 6px; padding: 21px 0; }
  .larensy-contact-methods small { grid-row: auto; margin-bottom: 5px; }
  .larensy-contact-methods strong { font-size: 21px; }
  .larensy-contact-card { padding: 32px 20px; }
  .larensy-contact-form__row { grid-template-columns: 1fr; }
  .larensy-care-links { grid-template-columns: 1fr; }
  .larensy-care-links a { min-height: 132px; border-right: 0; border-bottom: 1px solid var(--lx-line); padding: 30px 22px; }
  .larensy-care-links a:last-child { border-bottom: 0; }
  .larensy-story { gap: 48px; }
  .larensy-story__image:before { left: -10px; bottom: 23px; }
  .larensy-principles { padding-left: 20px; padding-right: 20px; }
  .larensy-principles__heading { margin-bottom: 40px; }
  .larensy-principles__grid { grid-template-columns: 1fr; }
  .larensy-principles article,
  .larensy-principles article + article { padding: 29px 0 !important; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .larensy-principles article:last-child { border-bottom: 0; }
  .larensy-about-quote { padding-left: 20px; padding-right: 20px; }
  .larensy-about-quote p { font-size: clamp(39px,12vw,56px); }
}

@media (max-width: 390px) {
  .larensy-footer__main { grid-template-columns: 1fr; }
  .larensy-footer__brand, .larensy-footer__newsletter { grid-column: auto; }
  .larensy-optin__image { min-height: 175px; }
  .larensy-optin__content h2 { font-size: 34px !important; }
  body.larensy-experience .elementor-menu-cart__main > .widget_shopping_cart_content { padding-left: 19px; padding-right: 19px; }
}

@media (prefers-reduced-motion: reduce) {
  .larensy-optin, .larensy-optin__dialog { transition: none !important; }
}
