/* Static pages retain the original Tilda-generated layout. These rules replace only
   the visual/runtime parts that were previously initialized by Tilda JavaScript. */
.t-records,
.t-animate,
.t-animate_started,
.t-cover__wrapper,
.t-rec,
.t396__elem,
.t-popup {
  opacity: 1 !important;
  visibility: visible !important;
}

.t-animate { transform: none !important; }
[hidden] { display: none !important; }
#rec2366372531 { display: none !important; }

/* Minimal local equivalent of the positioning layer used by Tilda Zero Blocks.
   Every coordinate and responsive breakpoint remains the one exported with the original page. */
#allrecords { overflow-x: clip; }
.t396__artboard { overflow: hidden; position: relative; }
.t396__carrier, .t396__filter { inset: 0; position: absolute; }
.t396__elem, .tn-group { box-sizing: border-box; position: absolute; }
.t396__elem .tn-atom, .tn-group .tn-atom { box-sizing: border-box; display: block; height: 100%; position: relative; width: 100%; }
.t396__elem .tn-atom__img { display: block; height: 100%; object-fit: cover; width: 100%; }

.pa-modal {
  align-items: center;
  background: rgba(37, 36, 36, .76);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 10010;
}
.pa-modal[hidden] { display: none; }
.pa-modal-card {
  background: #f7f7f4;
  box-shadow: 0 20px 70px rgba(0, 0, 0, .25);
  color: #252424;
  max-height: min(92vh, 920px);
  max-width: 560px;
  overflow: auto;
  padding: 38px;
  position: relative;
  width: 100%;
}
.pa-modal-card h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 52px; font-weight: 300; line-height: .95; margin: 0 0 22px; }
.pa-modal-card p { font-size: 13px; line-height: 1.55; }
.pa-close { background: none; border: 0; color: #252424; cursor: pointer; font-size: 30px; line-height: 1; padding: 8px; position: absolute; right: 16px; top: 12px; }
.pa-eyebrow { font-size: 10px; letter-spacing: .17em; margin: 0 0 18px; text-transform: uppercase; }
.pa-form { display: grid; gap: 16px; }
.pa-form label { display: grid; font-size: 10px; gap: 8px; letter-spacing: .1em; text-transform: uppercase; }
.pa-form input { background: transparent; border: 0; border-bottom: 1px solid rgba(37,36,36,.35); color: #252424; outline: 0; padding: 10px 0; }
.pa-button { border: 1px solid #39190f; cursor: pointer; font-size: 10px; letter-spacing: .13em; min-height: 48px; padding: 0 18px; text-transform: uppercase; }
.pa-button-primary { background: #39190f; color: #f7f7f4; }
.pa-button-secondary { background: transparent; color: #39190f; }
.pa-button:disabled { cursor: not-allowed; opacity: .45; }
.pa-full { width: 100%; }
.pa-account-summary { align-items: center; display: grid; gap: 16px; grid-template-columns: 50px 1fr; }
.pa-avatar { align-items: center; background: #39190f; color: #f7f7f4; display: flex; height: 50px; justify-content: center; width: 50px; }
.pa-account-summary strong, .pa-account-summary span { display: block; }
.pa-account-summary span { color: #68605c; font-size: 12px; margin-top: 5px; }
.pa-account-note { border-top: 1px solid rgba(37,36,36,.2); color: #68605c; font-size: 12px !important; margin: 26px 0 0; padding-top: 18px; }
.pa-account-note strong { color: #39190f; font-weight: 400; }
.pa-cart-note { color: #68605c; margin: 0 0 25px; }

.pa-catalog-root { box-sizing: border-box; margin: 0 !important; max-width: none !important; width: 100% !important; }
.pa-catalog-shell { box-sizing: border-box; margin: 0; padding: 42px 10px 92px; width: 100%; }
.pa-catalog-filters { align-items: center; display: flex; flex-wrap: wrap; gap: clamp(24px, 4vw, 82px); justify-content: center; margin: 0 auto 44px; }
.pa-catalog-filters button { align-items: center; background: transparent; border: 0; color: #252424; cursor: pointer; display: inline-flex; font-family: Inter, Arial, sans-serif; font-size: clamp(15px, 1.25vw, 25px); font-weight: 300; gap: 14px; letter-spacing: .08em; padding: 0; }
.pa-catalog-filters button.is-active { color: #39190f; }
.pa-filter-icon { align-items: center; background: #ecece8; box-sizing: border-box; display: inline-flex; height: 68px; justify-content: center; position: relative; width: 90px; }
.pa-filter-icon-grid::before, .pa-filter-icon-grid::after { background: #c7c7c5; border-radius: 2px; box-shadow: 17px 0 #c7c7c5; content: ''; height: 13px; left: 28px; position: absolute; top: 21px; width: 13px; }
.pa-filter-icon-grid::after { top: 39px; }
.pa-filter-icon-optics { background: #fff url('/assets/images/stor6136-6265-4266-b134-383334343335__d43f548aa0c73302fecfa5eca1daaef9.png') center / 92px auto no-repeat; }
.pa-filter-icon-sun::before { background: #ded2b5; border-radius: 50%; content: ''; height: 30px; width: 30px; }
.pa-filter-icon-sun::after { border: 1px solid #c5b68e; border-radius: 50%; content: ''; height: 46px; position: absolute; width: 46px; }
.pa-catalog-grid { align-items: start; box-sizing: border-box; display: grid !important; gap: 10px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 !important; max-width: none; padding: 0; width: 100% !important; }
.pa-catalog-card { display: flex; flex-direction: column; min-width: 0; }
.pa-catalog-image { align-items: center; aspect-ratio: 3 / 4; background: #ecece8; display: flex; justify-content: center; overflow: hidden; }
.pa-catalog-image img { height: 100%; object-fit: contain; transition: transform .35s ease; width: 100%; }
.pa-catalog-image:hover img { transform: scale(1.035); }
.pa-catalog-meta { padding: 18px 0 8px; }
.pa-catalog-meta span { color: #68605c; display: block; font-size: 9px; letter-spacing: .13em; margin-bottom: 9px; }
.pa-catalog-meta h3 { color: #252424; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 28px; font-weight: 300; line-height: 1; margin: 0 0 10px; }
.pa-catalog-meta strong { color: #39190f; font-size: 12px; font-weight: 400; }
.pa-axis-product { background: #fff; color: #252525; font-family: Inter, Arial, sans-serif; }
.pa-axis-desktop { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); min-height: 100vh; }
.pa-axis-gallery { display: grid; grid-column: 1 / 9; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pa-axis-gallery-cell { aspect-ratio: 3 / 4; background: #f7f7f4; overflow: hidden; }
.pa-axis-gallery-cell img { display: block; height: 100%; object-fit: cover; transition: transform .35s ease; width: 100%; }
.pa-axis-gallery-cell:hover img { transform: scale(1.025); }
.pa-axis-info { align-self: start; box-sizing: border-box; display: flex; flex-direction: column; grid-column: 9 / 13; min-height: 100vh; padding: 56px 52px 80px; position: sticky; top: 0; }
.pa-axis-breadcrumb { align-items: center; display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 32px; }
.pa-axis-breadcrumb a, .pa-axis-breadcrumb span { color: #7a7a7a; font-size: 11px; letter-spacing: .11em; text-decoration: none; text-transform: uppercase; }
.pa-axis-info h1, .pa-axis-mobile h1 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 56px; font-weight: 300; letter-spacing: .08em; line-height: 1; margin: 0 0 20px; }
.pa-axis-price { font-size: 17px; font-weight: 300; letter-spacing: .04em; margin: 0 0 28px; }
.pa-axis-swatches { display: flex; gap: 10px; margin-bottom: 36px; }
.pa-axis-swatches span { background: #ccae18; display: block; height: 44px; width: 44px; }
.pa-axis-swatches .is-light { opacity: .55; }.pa-axis-swatches .is-dark { opacity: .78; }.pa-axis-swatches .is-active { box-shadow: 0 0 0 3px #fff, 0 0 0 4px #ccae18; }
.pa-axis-add, .pa-axis-tryon { align-items: center; border: 1px solid transparent; border-radius: 3px; box-sizing: border-box; cursor: pointer; display: flex; font-family: Inter, Arial, sans-serif; font-size: 12px; font-weight: 300; justify-content: center; letter-spacing: .2em; min-height: 64px; padding: 16px; text-align: center; text-decoration: none; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, color .2s ease; width: 100%; }
.pa-axis-add { background: #39190f; border-color: #39190f; color: #fff; margin: 0 0 12px; }.pa-axis-tryon { background: #fff; border-color: #d8d8d4; color: #252525; margin: 0 0 40px; }
@media (hover: hover) {
  .pa-axis-add:hover { background: #3b3a40; border-color: #3b3a40; }
  .pa-axis-tryon:hover { background: #f7f7f4; border-color: #252525; }
}
.pa-axis-add:focus-visible, .pa-axis-tryon:focus-visible { outline: 2px solid #252525; outline-offset: 3px; }
.pa-axis-description { color: #3a3a40; font-size: 14px; font-weight: 300; letter-spacing: .1em; line-height: 1.8; }.pa-axis-description p { margin: 0 0 12px; }.pa-axis-tagline { color: #7a7a7a; font-size: 12px; font-weight: 400; letter-spacing: .24em; margin-bottom: 16px !important; }
.pa-axis-accordion { border-top: 1px solid #d8d8d4; margin-top: 28px; }.pa-axis-accordion-item { border-bottom: 1px solid #d8d8d4; }.pa-axis-accordion-trigger { align-items: center; background: none; border: 0; color: #252525; cursor: pointer; display: flex; font-family: Inter, Arial, sans-serif; font-size: 11px; font-weight: 400; justify-content: space-between; letter-spacing: .14em; padding: 18px 0; text-align: left; text-transform: uppercase; width: 100%; }.pa-axis-accordion-arrow { color: #7a7a7a; font-size: 16px; line-height: 1; transition: transform .3s ease; }.pa-axis-accordion-item.is-open .pa-axis-accordion-arrow { transform: rotate(90deg); }.pa-axis-accordion-body { max-height: 0; overflow: hidden; transition: max-height .35s ease, padding .35s ease; }.pa-axis-accordion-item.is-open .pa-axis-accordion-body { max-height: 220px; }.pa-axis-accordion-body > div { color: #3a3a40; font-size: 13px; font-weight: 300; line-height: 1.8; padding: 0 0 20px; }
.pa-axis-mobile { display: none; }

/* Individual tailoring flow, reproduced locally from the supplied Tilda prototype. */
.pa-tailored-experience { background: #fff; color: #252525; font-family: Inter, Arial, sans-serif; min-height: 100vh; }
.pa-tailored-step { display: none; }.pa-tailored-step.is-active { animation: pa-tailored-in .35s ease; display: block; }@keyframes pa-tailored-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.pa-tailored-intro { box-sizing: border-box; margin: 0 auto; max-width: 760px; padding: 90px 24px 0; text-align: center; }.pa-tailored-eyebrow { color: #7a7a7a; font-size: 11px; font-weight: 300; letter-spacing: .2em; margin: 0 0 18px; text-transform: uppercase; }.pa-tailored-intro h1 { color: #252525; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 40px; font-weight: 400; letter-spacing: .03em; line-height: 1.1; margin: 0 0 24px; }.pa-tailored-intro > p:not(.pa-tailored-eyebrow):not(.pa-tailored-sub) { color: #3a3a40; font-size: 14px; font-weight: 200; line-height: 1.8; margin: 0 auto 32px; max-width: 560px; }.pa-tailored-divider { background: #d8d8d4; display: block; height: 1px; margin: 0 auto 48px; width: 40px; }.pa-tailored-cta { background: #39190f; border: 0; color: #fff; cursor: pointer; font-family: Inter, Arial, sans-serif; font-size: 11px; font-weight: 300; letter-spacing: .2em; padding: 19px 52px; text-transform: uppercase; }.pa-tailored-how { box-sizing: border-box; margin: 90px auto 100px; max-width: 1200px; padding: 0 24px; }.pa-tailored-how h2 { color: #252525; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 26px; font-weight: 400; margin: 0 0 28px; }.pa-tailored-how img { display: block; width: 100%; }
.pa-tailored-intro h2 { color: #252525; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 30px; font-weight: 400; line-height: 1.3; margin: 60px 0 18px; }.pa-tailored-sub { color: #7a7a7a; font-size: 13px; font-weight: 200; line-height: 1.8; margin: 0 0 44px; }.pa-tailored-pd { margin: 0 auto 110px; max-width: 380px; }.pa-tailored-pd > input { background: transparent; border: 0; border-bottom: 1px solid #252525; color: #252525; font: 300 14px Inter, Arial, sans-serif; outline: 0; padding: 10px 4px; text-align: center; width: 100%; }.pa-tailored-pd > p { color: #b3261e; font-size: 11px; min-height: 16px; text-align: left; }.pa-tailored-pd label { align-items: center; color: #3a3a40; cursor: pointer; display: flex; font-size: 12px; font-weight: 200; gap: 10px; margin-top: 26px; text-align: left; }.pa-tailored-pd label input { display: none; }.pa-tailored-pd label span { background: #f7f7f4; border: 1px solid #d8d8d4; display: block; height: 14px; width: 14px; }.pa-tailored-pd label input:checked + span { background: #252525; border-color: #252525; }.pa-tailored-pd > div { display: flex; gap: 14px; margin-top: 34px; }.pa-tailored-pd button { background: transparent; border: 1px solid #d8d8d4; color: #252525; cursor: pointer; flex: 1; font: 300 11px Inter, Arial, sans-serif; letter-spacing: .15em; padding: 17px; text-transform: uppercase; }
.pa-tailored-scan { align-items: center; display: flex; flex-direction: column; margin: 20px auto 100px; }.pa-tailored-scan > div { align-items: center; background: #f7f7f4; border: 1px solid #d8d8d4; border-radius: 50%; display: flex; height: 250px; justify-content: center; overflow: hidden; position: relative; width: 250px; }.pa-tailored-scan > div i { animation: pa-tailored-scan 2.2s ease-in-out infinite; background: #39190f; height: 1px; left: 18%; position: absolute; top: 20%; width: 64%; }.pa-tailored-scan > div span { animation: pa-tailored-dot 1.4s ease-in-out infinite alternate; background: #39190f; border-radius: 50%; height: 5px; margin: 7px; opacity: .35; width: 5px; }.pa-tailored-scan > div span:nth-of-type(2) { animation-delay: .15s; }.pa-tailored-scan > div span:nth-of-type(3) { animation-delay: .3s; }.pa-tailored-scan > div span:nth-of-type(4) { animation-delay: .45s; }.pa-tailored-scan > div span:nth-of-type(5) { animation-delay: .6s; }.pa-tailored-scan > div span:nth-of-type(6) { animation-delay: .75s; }.pa-tailored-scan > p { color: #7a7a7a; font-size: 12px; letter-spacing: .12em; margin-top: 22px; text-transform: uppercase; }@keyframes pa-tailored-scan { 0%,100% { top: 20%; } 50% { top: 78%; } }@keyframes pa-tailored-dot { to { opacity: 1; transform: scale(1.7); } }
.pa-tailored-config { background: #f7f7f4; box-sizing: border-box; display: grid; gap: 0; grid-template-columns: minmax(0, 1.6fr) minmax(320px, 1fr); margin: 60px auto; max-width: 1300px; padding: 48px; }.pa-tailored-camera { position: relative; }.pa-tailored-camera-frame { aspect-ratio: 129 / 100; background: #252525; overflow: hidden; position: relative; }.pa-tailored-camera-frame.is-flashing::after { animation: pa-tailored-flash .25s ease; background: #fff; content: ''; inset: 0; position: absolute; z-index: 4; }@keyframes pa-tailored-flash { from { opacity: .85; } to { opacity: 0; } }.pa-tailored-camera [data-tailored-tryon], .pa-tailored-camera [data-tailored-tryon] > div, .pa-tailored-camera .pa-tryon-stage { height: 100%; width: 100%; }.pa-tailored-loader { align-items: center; color: #fff; display: flex; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 28px; height: 100%; justify-content: center; }.pa-tailored-snapshot { background: rgba(255,255,255,.92); border: 0; bottom: 16px; color: #252525; cursor: pointer; font: 300 10px/1.4 Inter, Arial, sans-serif; letter-spacing: .08em; padding: 12px 16px; position: absolute; right: 16px; text-transform: uppercase; z-index: 10; }.pa-tailored-options { box-sizing: border-box; padding: 8px 0 8px 56px; }.pa-tailored-options section { border-top: 1px solid #d8d8d4; margin-top: 28px; padding-top: 28px; }.pa-tailored-options section:first-child { border-top: 0; margin-top: 0; padding-top: 0; }.pa-tailored-options h2 { color: #252525; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 20px; font-weight: 400; margin: 0 0 20px; }.pa-tailored-shapes { display: flex; flex-wrap: wrap; gap: 10px; }.pa-tailored-shape { align-items: center; background: transparent; border: 1px solid #d8d8d4; color: #252525; cursor: pointer; display: flex; flex-direction: column; font: 300 10px Inter, Arial, sans-serif; gap: 9px; letter-spacing: .12em; min-width: 94px; padding: 10px 8px; text-transform: uppercase; transition: border-color .15s, background-color .15s; }.pa-tailored-shape:hover, .pa-tailored-shape.is-active { border-color: #252525; }.pa-tailored-shape.is-active { background: #fff; }.pa-tailored-shape img { height: 56px; object-fit: contain; width: 84px; }.pa-tailored-swatches { display: flex; gap: 14px; }.pa-tailored-swatch { background-color: #ddd; background-position: center; background-size: cover; border: 0; cursor: pointer; height: 46px; padding: 0; transition: transform .15s; width: 46px; }.pa-tailored-swatch:hover { transform: scale(1.06); }.pa-tailored-swatch.is-active { box-shadow: 0 0 0 3px #f7f7f4, 0 0 0 4px #252525; }.pa-tailored-options section > p { color: #7a7a7a; font-size: 10px; letter-spacing: .15em; margin: 16px 0 0; text-transform: uppercase; }.pa-tailored-options .pa-tailored-lenses p { font-size: 12px; letter-spacing: .03em; line-height: 1.5; text-transform: none; }.pa-tailored-model-status { color: #7a7a7a; font-size: 10px; letter-spacing: .12em; margin: 30px 0 0; text-transform: uppercase; }.pa-tailored-order { margin-top: 22px; width: 100%; }
.pa-tailored-config { background: #f7f7f4; box-sizing: border-box; display: grid; gap: 0; grid-template-columns: minmax(0, 1.6fr) minmax(320px, 1fr); margin: 60px auto; max-width: 1300px; padding: 48px; }.pa-tailored-camera { position: relative; }.pa-tailored-camera-frame { aspect-ratio: 129 / 100; background: #252525; overflow: hidden; position: relative; }.pa-tailored-camera-frame.is-flashing::after { animation: pa-tailored-flash .25s ease; background: #fff; content: ''; inset: 0; position: absolute; z-index: 4; }@keyframes pa-tailored-flash { from { opacity: .85; } to { opacity: 0; } }.pa-tailored-camera [data-tailored-tryon], .pa-tailored-camera [data-tailored-tryon] > div, .pa-tailored-camera .pa-tryon-stage { height: 100%; width: 100%; }.pa-tailored-loader { align-items: center; color: #fff; display: flex; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 28px; height: 100%; justify-content: center; text-align: center; }.pa-tailored-snapshot { background: rgba(255,255,255,.92); border: 0; bottom: 16px; color: #252525; cursor: pointer; font: 300 10px/1.4 Inter, Arial, sans-serif; letter-spacing: .08em; padding: 12px 16px; position: absolute; right: 16px; text-transform: uppercase; z-index: 10; }.pa-tailored-snapshot:disabled, .pa-tailored-order:disabled { cursor: not-allowed; opacity: .45; }.pa-tailored-options { box-sizing: border-box; padding: 8px 0 8px 56px; }.pa-tailored-options section { border-top: 1px solid #d8d8d4; margin-top: 28px; padding-top: 28px; }.pa-tailored-options section:first-child { border-top: 0; margin-top: 0; padding-top: 0; }.pa-tailored-options h2 { color: #252525; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 20px; font-weight: 400; margin: 0 0 20px; }.pa-tailored-shapes { display: flex; flex-wrap: wrap; gap: 10px; }.pa-tailored-empty { color: #7a7a7a; font-size: 12px; line-height: 1.5; margin: 0; text-transform: none; }.pa-tailored-shape { align-items: center; background: transparent; border: 1px solid #d8d8d4; color: #252525; cursor: pointer; display: flex; flex-direction: column; font: 300 10px Inter, Arial, sans-serif; gap: 9px; letter-spacing: .12em; min-width: 94px; padding: 10px 8px; text-transform: uppercase; transition: border-color .15s, background-color .15s; }.pa-tailored-shape:hover, .pa-tailored-shape.is-active { border-color: #252525; }.pa-tailored-shape.is-active { background: #fff; }.pa-tailored-shape img { height: 56px; object-fit: contain; width: 84px; }.pa-tailored-swatches { display: flex; gap: 14px; }.pa-tailored-swatch { background-color: #ddd; background-position: center; background-size: cover; border: 0; cursor: pointer; height: 46px; padding: 0; transition: transform .15s; width: 46px; }.pa-tailored-swatch:hover { transform: scale(1.06); }.pa-tailored-swatch.is-active { box-shadow: 0 0 0 3px #f7f7f4, 0 0 0 4px #252525; }.pa-tailored-options section > p { color: #7a7a7a; font-size: 10px; letter-spacing: .15em; margin: 16px 0 0; text-transform: uppercase; }.pa-tailored-options .pa-tailored-lenses p { font-size: 12px; letter-spacing: .03em; line-height: 1.5; text-transform: none; }.pa-tailored-model-status { color: #7a7a7a; font-size: 10px; letter-spacing: .12em; margin: 30px 0 0; text-transform: uppercase; }.pa-tailored-order { margin-top: 22px; width: 100%; }

.pa-tryon-modal { background: #252424; color: #f7f7f4; max-width: 1040px; padding: 0; }
.pa-tryon-modal .pa-close { color: #f7f7f4; z-index: 3; }
.pa-tryon-loading { align-items: center; color: #f7f7f4; display: flex; flex-direction: column; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 27px; gap: 16px; justify-content: center; min-height: 650px; padding: 24px; text-align: center; }
.pa-tryon-loading small { color: #c6c0b7; font-family: Inter, Arial, sans-serif; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.pa-tryon { display: grid; grid-template-columns: minmax(0, 1fr) 250px; min-height: 650px; }
.pa-tryon-embedded { display: block; min-height: 0; }
.pa-tryon-embedded .pa-tryon-stage { min-height: 0; }
.pa-tryon-embedded-start { background: rgba(247,247,244,.92); border: 0; bottom: 18px; color: #252424; cursor: pointer; font-family: Inter, Arial, sans-serif; font-size: 10px; left: 18px; letter-spacing: .12em; padding: 12px 16px; position: absolute; text-transform: uppercase; z-index: 3; }
.pa-tryon-view-toggle { background: rgba(255,255,255,.94); border: 1px solid rgba(37,37,37,.24); color: #252525; cursor: pointer; font: 300 10px/1.2 Inter, Arial, sans-serif; letter-spacing: .1em; padding: 12px 15px; position: absolute; right: 18px; text-transform: uppercase; top: 18px; z-index: 5; }
.pa-tryon-view-toggle:hover { background: #252525; color: #fff; }
.pa-tryon-stage { background: #111; min-height: 650px; overflow: hidden; position: relative; }
.pa-tryon-stage video, .pa-tryon-three { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }
.pa-tryon-stage video { transform: scaleX(-1); }
.pa-tryon-three canvas { height: 100%; width: 100%; }
.pa-tryon-placeholder { align-items: center; color: #f7f7f4; display: flex; flex-direction: column; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 27px; height: 100%; justify-content: center; line-height: 1; position: relative; text-align: center; z-index: 1; }
.pa-tryon-placeholder small { color: #c6c0b7; font-family: Inter, Arial, sans-serif; font-size: 10px; letter-spacing: .12em; margin-top: 20px; text-transform: uppercase; }
.pa-tryon-chip { background: rgba(0,0,0,.65); bottom: 20px; color: #f7f7f4; font-size: 10px; left: 20px; letter-spacing: .08em; padding: 10px 12px; position: absolute; text-transform: uppercase; z-index: 2; }
.pa-tryon-chip.live { color: #e4efc5; }
.pa-tryon-panel { background: #f7f7f4; color: #252424; padding: 30px 24px; }
.pa-tryon-panel h3 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 42px; font-weight: 300; line-height: .95; margin: 0 0 20px; }
.pa-tryon-panel p { color: #68605c; font-size: 12px; line-height: 1.55; margin: 0 0 24px; }
.pa-tryon-controls { display: grid; gap: 9px; }
.pa-file { position: relative; }
.pa-file input { height: 100%; inset: 0; opacity: 0; position: absolute; width: 100%; }
.pa-tryon-status { border-top: 1px solid rgba(37,36,36,.2); color: #68605c; font-size: 10px !important; margin-top: 28px !important; padding-top: 18px; }
.pa-internal-note { color: #68605c; font-size: 10px !important; line-height: 1.5 !important; margin-top: 14px !important; }

/* Separate account and checkout routes. */
.pa-app-body { background: #f7f7f4; color: #252424; font-family: Inter, Arial, sans-serif; margin: 0; }
.pa-site-header { align-items: center; background: #f7f7f4; box-sizing: border-box; display: grid; grid-template-columns: 245px minmax(0, 1fr) auto; min-height: 101px; padding: 16px 20px; position: sticky; top: 0; z-index: 20; }
.pa-site-logo img { display: block; height: auto; max-width: 235px; width: 100%; }
.pa-site-nav { align-items: center; display: flex; gap: clamp(24px, 3.1vw, 64px); justify-content: center; padding: 0 24px; }
.pa-site-nav a, .pa-site-actions a { color: #171717; font-size: clamp(11px, .76vw, 16px); letter-spacing: .095em; line-height: 1; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.pa-site-actions { align-items: center; display: flex; gap: clamp(20px, 1.25vw, 31px); height: 42px; white-space: nowrap; }
.pa-site-phone { font-size: clamp(13px, .9vw, 18px) !important; letter-spacing: .11em !important; }
.pa-site-icon { align-items: center; display: inline-flex; height: 36px; justify-content: center; position: relative; width: 28px; }
.pa-site-icon svg { display: block; height: 27px; width: 27px; }
.pa-site-telegram svg { height: 29px; width: 29px; }
.pa-site-cart [data-cart-count], .pa-header-cart-badge { align-items: center; background: #39190f; border-radius: 50%; bottom: -1px; color: #fff; display: inline-flex; font-family: Arial, sans-serif; font-size: 9px; height: 18px; justify-content: center; line-height: 1; margin: 0; min-width: 18px; position: absolute; right: -7px; }
.t-menuwidgeticons__cart a[href="#opencart"] { display: inline-flex !important; position: relative !important; }
.pa-page-shell, .pa-order-shell { box-sizing: border-box; margin: 0 auto; max-width: 1530px; padding: 44px 42px 90px; }
.pa-breadcrumb { color: #6e6964; font-size: 16px; margin: 0 0 60px; }
.pa-breadcrumb a { color: #252424; text-decoration: none; }
.pa-breadcrumb span { margin: 0 10px; }
.pa-account-grid { display: grid; gap: 28px; grid-template-columns: repeat(3, minmax(0,1fr)); }
.pa-dashboard-card { background: #fff; border-radius: 18px; box-sizing: border-box; display: flex; flex-direction: column; min-height: 360px; padding: 46px; }
.pa-dashboard-card h2, .pa-order-card h1, .pa-empty-cart h1, .pa-account-welcome h1, .pa-checkout-form h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 34px; font-weight: 400; line-height: 1; margin: 0 0 28px; }
.pa-dashboard-card p { font-size: 17px; line-height: 1.45; margin: 0 0 10px; }
.pa-dashboard-card > a, .pa-text-button { color: #39190f; font-size: 17px; margin-top: auto; text-decoration: none; }
.pa-text-button { background: none; border: 0; cursor: pointer; padding: 0; text-align: left; }
.pa-card-actions { display: flex; gap: 18px; margin-top: auto; }
.pa-muted { color: #96918e !important; }
.pa-purchase-card img { border: 1px solid #e5e2df; border-radius: 8px; height: 88px; margin: 6px 0; object-fit: cover; width: 88px; }
.pa-account-welcome, .pa-empty-cart { background: #fff; border-radius: 20px; margin: 0 auto; max-width: 680px; padding: 68px; text-align: center; }
.pa-account-welcome p, .pa-empty-cart p { color: #6e6964; font-size: 16px; line-height: 1.6; margin: 0 auto 30px; max-width: 440px; }
.pa-account-welcome .pa-button, .pa-empty-cart .pa-button { align-items: center; display: inline-flex; justify-content: center; text-decoration: none; }

.pa-order-body { background: #252424; }
.pa-order-shell { max-width: 1100px; }
.pa-order-body .pa-breadcrumb { color: #f7f7f4; }
.pa-order-body .pa-breadcrumb a { color: #f7f7f4; }
.pa-order-card { background: #fff; padding: 58px 68px 68px; }
.pa-order-card h1 { font-size: 40px; margin-bottom: 50px; }
.pa-order-items { border-bottom: 1px solid #d8d5d1; border-top: 1px solid #d8d5d1; }
.pa-order-item { align-items: center; display: grid; gap: 24px; grid-template-columns: 105px 1fr 150px 130px 34px; min-height: 150px; }
.pa-order-item img { border-radius: 8px; height: 104px; object-fit: cover; width: 104px; }
.pa-order-item strong { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 28px; font-weight: 500; }
.pa-order-item > span { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 22px; text-align: right; }
.pa-quantity { align-items: center; display: flex; gap: 15px; justify-content: center; }
.pa-quantity button, .pa-remove { align-items: center; background: transparent; border: 1px solid #aaa6a2; border-radius: 50%; color: #252424; cursor: pointer; display: inline-flex; font-size: 20px; height: 28px; justify-content: center; line-height: 1; padding: 0; width: 28px; }
.pa-quantity span { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 20px; min-width: 10px; text-align: center; }
.pa-remove { border-color: #77716c; font-size: 28px; font-weight: 200; }
.pa-order-subtotal { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 25px; padding: 42px 0 58px; text-align: right; }
.pa-identity, .pa-auth-notice { align-items: center; background: #eee; box-sizing: border-box; display: flex; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 22px; justify-content: space-between; line-height: 1.35; margin: 0 0 30px; padding: 28px 34px; }
.pa-identity button, .pa-inline-link { color: #252424; }
.pa-inline-link { background: transparent; border: 0; border-bottom: 1px dotted #252424; cursor: pointer; font: inherit; padding: 0; }
.pa-small-button { background: transparent; border: 1px solid #aaa6a2; cursor: pointer; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 17px; padding: 12px 34px; }
.pa-auth-notice { display: block; }
.pa-auth-notice a { color: #252424; text-decoration: underline; }
.pa-checkout-form { display: grid; gap: 20px; }
.pa-checkout-form label { color: #6e6964; display: grid; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 21px; gap: 9px; }
.pa-checkout-form input, .pa-checkout-form select { background: #fff; border: 1px solid #252424; box-sizing: border-box; color: #252424; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 23px; min-height: 76px; padding: 0 25px; width: 100%; }
.pa-checkout-form h2 { margin: 50px 0 0; }
.pa-select-label select { cursor: pointer; font-size: 20px; }
.pa-delivery-info { display: grid; font-size: 18px; gap: 7px; line-height: 1.35; padding: 12px 0 20px; }
.pa-delivery-info strong { font-size: 22px; }
.pa-order-total { display: flex; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 25px; gap: 12px; justify-content: flex-end; padding: 16px 0 24px; }
.pa-checkout-button { align-items: center; background: #000; border: 0; box-sizing: border-box; color: #fff; cursor: pointer; display: flex; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 24px; justify-content: center; min-height: 88px; text-decoration: none; width: 100%; }


@media (max-width: 960px) {
  .t1272 .t-menu-base.pa-menu-open { background: #f7f7f4 !important; display: block !important; inset: 0 !important; min-height: 100vh; position: fixed !important; z-index: 1000 !important; }
  .t1272 .t-menu-base.pa-menu-open .t-menu-base__maincontainer { align-items: flex-start; display: flex !important; flex-direction: column; min-height: 100vh; padding: 100px 30px 36px; }
  .t1272 .t-menu-base.pa-menu-open .t-menu-base__logowrapper, .t1272 .t-menu-base.pa-menu-open .t-menu-base__rightwrapper, .t1272 .t-menu-base.pa-menu-open .t-menu-base__additionalwrapper { display: none !important; }
  .t1272 .t-menu-base.pa-menu-open .t-menu-base__leftwrapper { display: block !important; margin: 0 !important; width: 100% !important; }
  .t1272 .t-menu-base.pa-menu-open .t-menu-base__list { align-items: flex-start !important; display: flex !important; flex-direction: column; gap: 22px; }
  .t1272 .t-menu-base.pa-menu-open .t-menu__link-item { color: #252424 !important; font-size: 17px !important; line-height: 1.3 !important; }
  .pa-site-header { grid-template-columns: minmax(0, 1fr) auto; min-height: 70px; padding: 10px 16px; }
  .pa-site-logo img { max-width: 160px; }
  .pa-site-nav, .pa-site-phone, .pa-site-telegram { display: none; }
  .pa-site-actions { gap: 18px; }
  .pa-page-shell, .pa-order-shell { padding: 30px 16px 52px; }
  .pa-breadcrumb { margin-bottom: 28px; }
  .pa-account-grid { grid-template-columns: 1fr; }
  .pa-dashboard-card { min-height: 260px; padding: 30px; }
  .pa-account-welcome, .pa-empty-cart { padding: 44px 25px; }
  .pa-order-card { padding: 38px 25px; }
  .pa-order-card h1 { margin-bottom: 32px; }
  .pa-order-item { gap: 14px; grid-template-columns: 70px 1fr 30px; padding: 18px 0; }
  .pa-order-item img { height: 66px; width: 66px; }
  .pa-order-item strong { font-size: 23px; }
  .pa-order-item > span { font-size: 18px; grid-column: 2 / 3; text-align: left; }
  .pa-quantity { grid-column: 2 / 3; justify-content: flex-start; }
  .pa-remove { grid-column: 3; grid-row: 1; }
  .pa-order-subtotal { font-size: 22px; padding: 28px 0 34px; }
  .pa-identity { align-items: flex-start; flex-direction: column; font-size: 19px; gap: 20px; padding: 22px; }
  .pa-checkout-form input, .pa-checkout-form select { font-size: 20px; min-height: 66px; padding: 0 16px; }
  .pa-catalog-shell { padding: 28px 10px 58px; }
  .pa-catalog-filters { gap: 18px; justify-content: flex-start; margin-bottom: 28px; overflow-x: auto; padding: 0 6px 5px; }
  .pa-catalog-filters button { font-size: 12px; gap: 8px; }
  .pa-filter-icon { height: 44px; width: 52px; }
  .pa-filter-icon-grid::before, .pa-filter-icon-grid::after { box-shadow: 11px 0 #c7c7c5; height: 8px; left: 16px; top: 13px; width: 8px; }
  .pa-filter-icon-grid::after { top: 24px; }
  .pa-filter-icon-optics { background-size: 55px auto; }
  .pa-filter-icon-sun::before { height: 20px; width: 20px; }
  .pa-filter-icon-sun::after { height: 31px; width: 31px; }
  .pa-catalog-grid { gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pa-catalog-meta { padding-top: 12px; }
  .pa-catalog-meta h3 { font-size: 25px; }
  .pa-axis-desktop { display: none; }
  .pa-axis-mobile { display: block; padding-top: 18px; }
  .pa-axis-mobile > .pa-axis-breadcrumb { margin: 0; padding: 14px 20px 0; }
  .pa-axis-mobile-gallery { margin-top: 14px; position: relative; }
  .pa-axis-mobile-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .pa-axis-mobile-track::-webkit-scrollbar { display: none; }
  .pa-axis-mobile-slide { aspect-ratio: 3 / 4; flex: 0 0 100%; scroll-snap-align: center; }
  .pa-axis-mobile-slide img { display: block; height: 100%; object-fit: cover; width: 100%; }
  .pa-axis-dots { align-items: center; background: rgba(255,255,255,.62); border-radius: 20px; bottom: 14px; display: flex; gap: 6px; left: 50%; padding: 6px 10px; position: absolute; transform: translateX(-50%); }
  .pa-axis-dot { background: rgba(37,37,37,.3); border-radius: 50%; height: 5px; transition: background .2s, width .2s; width: 5px; }.pa-axis-dot.is-active { background: #252525; border-radius: 3px; width: 14px; }
  .pa-axis-mobile-content { padding: 28px 20px 125px; }
  .pa-axis-mobile h1 { font-size: 42px; }
  .pa-axis-mobile .pa-axis-description { font-size: 13px; }
  .pa-axis-mobile-actions { background: rgba(247,247,244,.9); bottom: 0; box-shadow: 0 -5px 20px rgba(37,37,37,.08); display: flex; gap: 10px; left: 0; padding: 14px 16px calc(14px + env(safe-area-inset-bottom)); position: fixed; right: 0; z-index: 200; }
  .pa-axis-mobile-actions .pa-axis-add, .pa-axis-mobile-actions .pa-axis-tryon { flex: 1; font-size: 10px; margin: 0; min-height: 54px; padding: 10px; }
  .pa-tailored-intro { padding-top: 54px; }.pa-tailored-intro h1 { font-size: 34px; }.pa-tailored-how { margin: 64px auto; padding: 0 16px; }.pa-tailored-how h2 { font-size: 24px; }.pa-tailored-config { grid-template-columns: 1fr; margin: 32px auto; padding: 20px 16px; }.pa-tailored-options { padding: 36px 0 0; }.pa-tailored-camera-frame { aspect-ratio: 4 / 5; }.pa-tailored-camera .pa-tryon-stage { min-height: 0; }.pa-tailored-snapshot { bottom: 12px; right: 12px; }.pa-tailored-scan > div { height: 210px; width: 210px; }.pa-tailored-pd { margin-bottom: 70px; }.pa-tailored-cta { padding: 18px 30px; }
  .pa-tryon { display: block; }
  .pa-tryon-stage { min-height: 58vh; }
  .pa-tryon-panel { padding: 22px; }
  .pa-modal-card { padding: 28px 20px; }
}

@media (max-width: 420px) {
  .pa-catalog-grid { gap: 10px; }
  .pa-catalog-meta h3 { font-size: 23px; }
}

/* Fluid replacement for the exported home Zero Block, which depended on
   Tilda's positioning runtime and therefore shifted in the local version. */
.pa-home-showcase { background: #f7f7f4; box-sizing: border-box; color: #252424; overflow: hidden; padding: clamp(58px, 7vw, 118px) 0 0; }
.pa-home-showcase-copy { box-sizing: border-box; margin: 0 auto; max-width: 980px; padding: 0 24px; text-align: center; }
.pa-home-showcase-copy h1 { font-family: 'Cormorant Garamond', Georgia, serif; font-size: clamp(37px, 3.3vw, 66px); font-weight: 300; letter-spacing: .02em; line-height: 1.05; margin: 0; }
.pa-home-showcase-copy > span { background: rgba(37,36,36,.52); display: block; height: 1px; margin: clamp(34px, 4.2vw, 74px) auto; width: 240px; }
.pa-home-showcase-copy p { font-size: clamp(15px, 1.4vw, 24px); font-weight: 300; letter-spacing: .055em; line-height: 2.15; margin: 0 auto; max-width: 900px; }
.pa-home-showcase-cards { align-items: start; display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: clamp(70px, 8vw, 145px); width: 100%; }
.pa-home-showcase-card { display: block; min-width: 0; overflow: hidden; position: relative; text-decoration: none; }
.pa-home-showcase-card img { aspect-ratio: 2 / 1; display: block; height: auto; object-fit: cover; object-position: center; transition: transform .45s ease; width: 100%; }
.pa-home-showcase-card:first-child img { object-position: left center; }
.pa-home-showcase-card:nth-child(2) { margin-top: 12vw; }
.pa-home-showcase-card:hover img { transform: scale(1.025); }
.pa-home-showcase-card b { background: #fff; border: 1px solid #fff; color: #252424; font: 300 clamp(10px, 1.05vw, 17px)/1.3 Inter, Arial, sans-serif; letter-spacing: .11em; padding: 14px 18px; position: absolute; text-transform: uppercase; transition: background-color .2s, color .2s; }
.pa-home-showcase-card:first-child b { background: #3a3940; border-color: #252424; color: #fff; right: 4%; top: 70%; }
.pa-home-showcase-card:nth-child(2) b { left: 5%; top: 18%; }
.pa-home-showcase-card:first-child:hover b { background: #fff; color: #3a3940; }
.pa-home-showcase-card:nth-child(2):hover b { background: #3a3940; border-color: #252424; color: #fff; }

/* Shared responsive footer in the same palette and structure as the Tilda footer. */
.pa-site-footer { background: #f7f7f4; box-sizing: border-box; color: #252424; min-height: 600px; overflow: hidden; position: relative; }
.pa-site-footer-art { background: url('/assets/images/tild6665-3235-4764-b966-323834383739__footer_background_sm.png') right top / cover no-repeat; bottom: 0; pointer-events: none; position: absolute; right: 0; top: 0; width: min(29vw, 540px); }
.pa-site-footer-inner { align-items: start; box-sizing: border-box; display: grid; gap: 18px; grid-template-columns: 220px 400px 240px 190px; min-height: 600px; padding: 45px 0 40px 30px; position: relative; z-index: 1; }
.pa-site-footer nav { display: grid; gap: 13px; }
.pa-site-footer nav a, .pa-site-footer-contacts a, .pa-site-footer-contacts span, .pa-site-footer-social { color: #252424; font: 300 clamp(12px, .72vw, 18px)/1.55 Inter, Arial, sans-serif; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.pa-site-footer nav a:hover, .pa-site-footer-contacts a:hover, .pa-site-footer-social:hover { color: #39190f; }
.pa-site-footer-primary { max-width: 210px; }.pa-site-footer-secondary { max-width: 390px; }
.pa-site-footer-contacts { display: grid; gap: 13px; }
.pa-site-footer-social { align-items: start; display: grid; gap: 28px; justify-items: start; }
.pa-site-footer-social img { border-radius: 50%; display: block; height: 75px; object-fit: cover; width: 75px; }
.pa-site-footer-newsletter { align-self: end; grid-column: 1 / 3; margin: 0 0 61px; width: 460px; }
.pa-site-footer-newsletter p { font: 400 clamp(12px, .72vw, 18px)/1.6 Inter, Arial, sans-serif; letter-spacing: .1em; margin: 0 0 24px; text-align: right; text-transform: uppercase; }
.pa-site-footer-newsletter form { border-bottom: 1px solid #252424; display: flex; max-width: 460px; }
.pa-site-footer-newsletter input { background: transparent; border: 0; color: #252424; flex: 1; font: 300 24px 'Cormorant Garamond', Georgia, serif; min-width: 0; outline: none; padding: 7px 2px 14px; }
.pa-site-footer-newsletter button { background: #252424; border: 0; color: #fff; cursor: pointer; font-size: 26px; height: 48px; padding: 0; width: 52px; }
.pa-site-footer-newsletter small { display: block; font: 300 10px/1.5 Inter, Arial, sans-serif; min-height: 15px; padding-top: 6px; }
.pa-visually-hidden { height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); }

@media (max-width: 960px) {
  .pa-site-footer { min-height: 560px; }
  .pa-site-footer-art { width: 33vw; }
  .pa-site-footer-inner { grid-template-columns: minmax(0, .8fr) minmax(0, 1.25fr); min-height: 560px; padding: 42px 40px 36px; }
  .pa-site-footer-social { gap: 18px; }.pa-site-footer-social img { height: 60px; width: 60px; }
  .pa-site-footer-newsletter { grid-column: 1 / -1; margin: 25px 0 0; max-width: 560px; width: 100%; }.pa-site-footer-newsletter p { margin: 0 0 18px; }
}

@media (max-width: 760px) {
  .pa-home-showcase { padding-top: 56px; }
  .pa-home-showcase-copy { padding: 0 20px; }
  .pa-home-showcase-copy > span { margin: 32px auto; width: 150px; }
  .pa-home-showcase-copy p { line-height: 1.8; }
  .pa-home-showcase-cards { grid-template-columns: 1fr; margin-top: 58px; }
  .pa-home-showcase-card:nth-child(2) { margin-top: 0; }
  .pa-home-showcase-card b { font-size: 10px; padding: 12px; }
  .pa-home-showcase-card:first-child b { right: 18px; top: 68%; }.pa-home-showcase-card:nth-child(2) b { left: 18px; top: 18px; }
  .pa-site-footer { min-height: 650px; }
  .pa-site-footer-art { background-position: center bottom; bottom: 0; height: 46%; top: auto; width: 100%; }
  .pa-site-footer-inner { gap: 25px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 650px; padding: 40px 43px 54px; }
  .pa-site-footer-primary, .pa-site-footer-secondary, .pa-site-footer-contacts, .pa-site-footer-social { max-width: none; }.pa-site-footer-social { gap: 16px; }
  .pa-site-footer-social img { height: 50px; width: 50px; }
  .pa-site-footer-newsletter { align-self: start; grid-column: 1 / -1; margin: 28px 0 0; max-width: 100%; width: 100%; }.pa-site-footer-newsletter p { margin: 0 0 18px; }.pa-site-footer-newsletter form { max-width: 100%; }
}
