.elementor-4421 .elementor-element.elementor-element-ed2009d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4421 .elementor-element.elementor-element-5fe780f7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4421 .elementor-element.elementor-element-14df1fc{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4421 .elementor-element.elementor-element-46a37dea{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4421 .elementor-element.elementor-element-6176784f{--display:flex;}.elementor-4421 .elementor-element.elementor-element-6e672bbb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;}.elementor-4421 .elementor-element.elementor-element-9a7e35{--display:flex;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-4421 .elementor-element.elementor-element-16f571fb{--grid-columns:3;}.elementor-4421 .elementor-element.elementor-element-16f571fb .elementor-loop-container{grid-auto-rows:1fr;}.elementor-4421 .elementor-element.elementor-element-16f571fb .e-loop-item > .elementor-section, .elementor-4421 .elementor-element.elementor-element-16f571fb .e-loop-item > .elementor-section > .elementor-container, .elementor-4421 .elementor-element.elementor-element-16f571fb .e-loop-item > .e-con, .elementor-4421 .elementor-element.elementor-element-16f571fb .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-4421 .elementor-element.elementor-element-47246646 .jet-filters-pagination__link{padding:10px 10px 10px 10px;}.elementor-4421 .elementor-element.elementor-element-47246646 .jet-filters-pagination__dots{padding:10px 10px 10px 10px;}.elementor-4421 .elementor-element.elementor-element-47246646 .jet-filters-pagination{column-gap:6px;row-gap:6px;justify-content:center;}.elementor-4421 .elementor-element.elementor-element-47246646 .jet-filters-pagination__load-more{order:initial;}@media(max-width:1024px){.elementor-4421 .elementor-element.elementor-element-5fe780f7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4421 .elementor-element.elementor-element-14df1fc{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-4421 .elementor-element.elementor-element-16f571fb{--grid-columns:2;}}@media(max-width:767px){.elementor-4421 .elementor-element.elementor-element-16f571fb{--grid-columns:2;--grid-row-gap:10px;--grid-column-gap:10px;}}@media(min-width:768px){.elementor-4421 .elementor-element.elementor-element-14df1fc{--content-width:1120px;}.elementor-4421 .elementor-element.elementor-element-6e672bbb{--content-width:1120px;}}/* Start custom CSS for container, class: .elementor-element-ed2009d *//* ============================================================
   TIER 1 TACTICAL — OPTICS CATEGORY ARCHIVE
   FULL CSS — replaces everything currently in the top-level
   container's Custom CSS. Paste the whole file.

   Covers: tokens+base · dynamic hero · breadcrumbs ·
   subcategory strip · toolbar+layout · Jet filter first pass ·
   HD Product Cards overrides · responsive

   Container requirements (Advanced tab):
     CSS Classes    t1a
     Content width  Full
     Padding        0
   ============================================================ */


/* ════════ 01 · TOKENS + BASE ════════ */

.t1a{
  --ink:#131211;--gunmetal:#1E1C1A;--panel:#262320;
  --bone:#EBE7DF;--bone-dim:#B5B0A6;
  --fde:#8C7A5B;--fde-bright:#A8946F;--crimson:#B3282D;
  --green:#3E7A4E;--amber:#C08A2D;
  --hairline:rgba(235,231,223,.14);
  --hairline-soft:rgba(235,231,223,.08);
  --font-display:"Thunder Squad","Archivo Black",sans-serif;
  --font-mono:'IBM Plex Mono',monospace;

  background:var(--ink);
  color:var(--bone);
  font-family:'Archivo',sans-serif;
  -webkit-font-smoothing:antialiased;
}

.t1a h1,.t1a h2,.t1a h3{
  font-family:var(--font-display);font-weight:400;line-height:1.1;
  letter-spacing:-.017em;text-transform:uppercase;color:var(--bone);margin:0;
}
.t1a a{color:inherit;text-decoration:none}
.t1a img{max-width:100%;display:block}
.t1a :focus-visible{outline:2px solid var(--fde-bright);outline-offset:3px}

.t1a .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.t1a .section-label{
  display:block;font-family:var(--font-mono);font-size:12px;
  letter-spacing:.18em;text-transform:uppercase;color:var(--fde-bright);
  margin-bottom:14px;
}


/* ════════ 01 · HERO (dynamic widgets) ════════ */

.t1a .arch-hero{
  position:relative;overflow:hidden;
  min-height:min(46vh,420px);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:150px 0 56px;
  margin-top:-80px;
  border-bottom:1px solid var(--hairline);
}
.t1a .arch-hero::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    linear-gradient(135deg, rgba(140,122,91,.16) 0%, transparent 46%),
    linear-gradient(180deg, #24211E 0%, #1A1817 55%, #131211 100%);
}
.t1a .arch-hero > *{position:relative;z-index:2}

/* Heading widget · dynamic Archive Title */
.t1a .arch-hero .elementor-heading-title{
  font-family:var(--font-display)!important;
  font-size:clamp(44px,7vw,92px)!important;
  line-height:.96!important;
  letter-spacing:-.02em!important;
  text-transform:uppercase!important;
  color:var(--bone)!important;
  max-width:12ch;
  margin:14px 0 16px!important;
}

/* Text Editor widget · dynamic Archive Description */
.t1a .arch-hero .elementor-widget-text-editor p{
  color:var(--bone-dim);
  font-size:17px;line-height:1.55;
  max-width:52ch;margin:0;
}


/* ════════ 02 · BREADCRUMB STRIP ════════ */

.t1a .arch-crumbs{
  background:rgba(19,18,17,.94);
  border-bottom:1px solid var(--hairline);
}
.t1a .arch-crumbs .cwrap{
  max-width:1120px;margin:0 auto;padding:16px 24px;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
}
.t1a .arch-crumbs,
.t1a .arch-crumbs a,
.t1a .arch-crumbs .aioseo-breadcrumbs,
.t1a .arch-crumbs .aioseo-breadcrumbs a{
  font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--bone-dim);text-decoration:none;
}
.t1a .arch-crumbs a:hover,
.t1a .arch-crumbs .aioseo-breadcrumbs a:hover{color:var(--fde-bright)}
.t1a .arch-crumbs .current,
.t1a .arch-crumbs .aioseo-breadcrumb-last{color:var(--bone)}
.t1a .arch-crumbs .sep,
.t1a .arch-crumbs .aioseo-breadcrumb-separator{color:var(--fde);opacity:.7;padding:0 2px}
.t1a .arch-crumbs .aioseo-breadcrumbs{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;padding:0;
}


/* ════════ 03 · SUBCATEGORY STRIP ════════ */

.t1a .subnav{padding:48px 0 0}
.t1a .subnav__head{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:16px;margin-bottom:16px;
}
.t1a .subnav__head .section-label{margin-bottom:0}

.t1a .strip{
  display:flex;gap:16px;overflow-x:auto;
  scroll-snap-type:x mandatory;padding-bottom:4px;
  scrollbar-width:none;-ms-overflow-style:none;
}
.t1a .strip::-webkit-scrollbar{display:none}

.t1a .stile{
  flex:0 0 auto;width:clamp(170px,19vw,212px);
  scroll-snap-align:start;
  background:var(--gunmetal);
  border:1px solid var(--hairline);
  transition:border-color .18s;
}
.t1a .stile:hover{border-color:var(--fde-bright)}
.t1a .stile__plate{
  height:124px;background:#fff;
  border-bottom:1px solid var(--hairline-soft);
  overflow:hidden;
}
.t1a .stile__plate img{
  width:100%;height:100%;object-fit:contain;padding:12px;
  transition:transform .5s cubic-bezier(.2,.7,.3,1);
}
.t1a .stile:hover .stile__plate img{transform:scale(1.03)}
.t1a .stile__body{padding:12px 14px 14px}
.t1a .stile__name{
  font-family:'Archivo',sans-serif;font-weight:600;font-size:14px;
  line-height:1.3;letter-spacing:.01em;color:var(--bone);
  margin:0 0 5px;text-transform:none;
}
.t1a .stile__count{
  display:block;font-family:var(--font-mono);font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);
}
.t1a .stile.is-active{border-color:var(--fde-bright)}
.t1a .stile.is-active .stile__count{color:var(--fde-bright)}

.t1a .stile--all .stile__plate{
  background:linear-gradient(180deg,#242220,#171614);
  display:grid;place-items:center;
}
.t1a .stile--all .stile__plate span{
  font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--fde-bright);
}

.t1a .stile--dark .stile__plate{background:var(--panel)}
.t1a .stile--dark .stile__plate img{
  object-fit:cover;padding:0;
  filter:saturate(.85) brightness(.92);
}


/* ════════ 04 · TOOLBAR + LAYOUT ════════ */

.t1a .arch-body{
  align-items:flex-start;
  gap:36px;
  padding:32px 0 80px;
}
.t1a .arch-side{
  width:230px;flex:0 0 230px;
  position:sticky;top:24px;
}
.t1a .arch-results{flex:1 1 auto;min-width:0}

.t1a .arch-toolbar{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  margin-top:44px;padding-bottom:16px;
  border-bottom:1px solid var(--hairline);
}
.t1a .arch-toolbar__spacer{flex:1}

.t1a .ctrl,
.t1a .arch-toolbar select,
.t1a .arch-toolbar .jet-select__control{
  height:40px;padding:0 14px;
  background:var(--gunmetal);border:1px solid var(--hairline);
  border-radius:0;color:var(--bone);
  font-family:var(--font-mono);font-size:12px;
  letter-spacing:.1em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:9px;
  transition:border-color .15s,color .15s;cursor:pointer;
}
.t1a .ctrl:hover,
.t1a .arch-toolbar select:hover,
.t1a .arch-toolbar .jet-select__control:hover{
  border-color:var(--fde-bright);color:var(--fde-bright);
}
.t1a .arch-toolbar select,
.t1a .arch-toolbar .jet-select__control{
  appearance:none;-webkit-appearance:none;padding-right:34px;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--bone-dim) 50%),
    linear-gradient(135deg,var(--bone-dim) 50%,transparent 50%);
  background-position:calc(100% - 18px) 18px,calc(100% - 13px) 18px;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;
}
.t1a .arch-toolbar select option{background:var(--gunmetal);color:var(--bone)}

.t1a .ctrl--filters{display:none}
.t1a .ctrl--filters .badge{
  display:inline-grid;place-items:center;
  min-width:18px;height:18px;padding:0 5px;
  background:var(--fde);color:var(--ink);
  font-size:10.5px;letter-spacing:.04em;
}

/* active filter chips — kept for when filters return */
.t1a .jet-active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.t1a .jet-active-filters:empty{display:none}
.t1a .jet-active-filters__item,
.t1a .jet-active-filter{
  display:inline-flex;align-items:center;gap:9px;
  height:30px;padding:0 5px 0 11px;
  background:var(--panel);border:1px solid var(--hairline);border-radius:0;
  font-family:var(--font-mono);font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--bone);
}
.t1a .jet-active-filters__item-label,
.t1a .jet-active-filter__label{color:var(--bone-dim);opacity:.7}
.t1a .jet-active-filters__item-remove,
.t1a .jet-remove-filter{
  width:18px;height:18px;display:grid;place-items:center;
  color:var(--bone-dim);font-size:14px;line-height:1;
  cursor:pointer;transition:background .15s,color .15s;
}
.t1a .jet-active-filters__item-remove:hover,
.t1a .jet-remove-filter:hover{background:var(--crimson);color:#fff}
.t1a .jet-active-filters__clear,
.t1a .jet-active-filters__clear-button{
  display:inline-flex;align-items:center;height:30px;padding:0 11px;
  background:none;border:1px solid rgba(179,40,45,.45);border-radius:0;
  font-family:var(--font-mono);font-size:11px;
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--crimson);cursor:pointer;transition:background .15s;
}
.t1a .jet-active-filters__clear:hover,
.t1a .jet-active-filters__clear-button:hover{background:rgba(179,40,45,.12)}

/* Jet sidebar filters — first pass, kept for when filters return */
.t1a .arch-side .jet-filter-label{
  display:block;font-family:var(--font-mono);font-size:12px;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--fde-bright);margin-bottom:14px;
}
.t1a .arch-side .jet-filter{
  padding-bottom:18px;margin-bottom:18px;
  border-bottom:1px solid var(--hairline);
}
.t1a .arch-side .jet-filter:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.t1a .jet-checkboxes-list__row{margin-bottom:10px}
.t1a .jet-checkboxes-list__row:last-child{margin-bottom:0}
.t1a .jet-checkboxes-list__label{
  display:flex;align-items:center;gap:10px;
  font-family:'Archivo',sans-serif;font-size:13.5px;
  color:var(--bone-dim);cursor:pointer;transition:color .15s;margin:0;
}
.t1a .jet-checkboxes-list__label:hover{color:var(--bone)}
.t1a .jet-checkboxes-list__input{
  appearance:none;-webkit-appearance:none;
  width:15px;height:15px;flex:0 0 auto;margin:0;border-radius:0;
  border:1px solid var(--hairline);background:transparent;
  transition:background .15s,border-color .15s;cursor:pointer;
}
.t1a .jet-checkboxes-list__input:checked{background:var(--fde-bright);border-color:var(--fde-bright)}
.t1a .jet-checkboxes-list__input:checked::after{
  content:"";display:block;width:4px;height:8px;margin:1px auto 0;
  border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg);
}
.t1a .jet-checkboxes-list__counter{
  margin-left:auto;font-family:var(--font-mono);font-size:11px;
  color:var(--bone-dim);opacity:.65;
}
.t1a .jet-checkboxes-list__row.jet-filter-row-disabled{opacity:.35}


/* ════════ 05a · HD PRODUCT CARDS OVERRIDES ════════ */

/* title bleed fix — beats Elementor kit h3 AND .t1a h3 base */
.t1a .hd-card h3[class$="__title"]{
  font-family:'Archivo',sans-serif;
  font-size:17px;font-weight:600;
  line-height:1.3;letter-spacing:.03em;
  text-transform:uppercase;color:var(--bone);
  margin:0 0 14px;min-height:2.6em;
}
.t1a .hd-card h3[class$="__title"] a{color:inherit}

/* white plate + contain (T1T shoots on white) */
.t1a .hd-ms__img{
  background:#fff;
  border-bottom:1px solid var(--hairline);
}
.t1a .hd-card [class$="__img"] img{
  object-fit:contain;
  padding:14px;
}

/* no card lift — border + brackets carry the hover */
.t1a .hd-ms:hover{transform:none}


/* ════════ RESPONSIVE ════════ */

@media (max-width:1024px){
  .t1a .arch-body{flex-direction:column;gap:0}
  .t1a .arch-side{width:100%;flex:1 1 auto;position:static;margin-bottom:24px}
  .t1a .arch-results{width:100%}
  .t1a .ctrl--filters{display:inline-flex}
}

@media (max-width:640px){
  .t1a .hd-card h3[class$="__title"]{font-size:15px;min-height:0;margin-bottom:10px}
}

@media (max-width:600px){
  .t1a .arch-hero{padding:120px 0 40px;margin-top:-64px;min-height:min(52vh,360px)}
  .t1a .arch-hero .elementor-widget-text-editor p{font-size:15.5px}

  .t1a .arch-crumbs .cwrap{padding:13px 24px;gap:6px}
  .t1a .arch-crumbs,
  .t1a .arch-crumbs a,
  .t1a .arch-crumbs .aioseo-breadcrumbs,
  .t1a .arch-crumbs .aioseo-breadcrumbs a{font-size:11px;letter-spacing:.1em}

  .t1a .subnav{padding:36px 0 0}
  .t1a .stile{width:152px}
  .t1a .stile__plate{height:104px}
  .t1a .strip{padding-right:24px;margin-right:-24px}

  .t1a .arch-toolbar{margin-top:32px;gap:10px}
  .t1a .arch-body{padding:24px 0 64px}
}

/* ============================================================
   TIER 1 TACTICAL — OPTICS ARCHIVE
   ADDITIONS — append to the bottom of the container Custom CSS
   (below everything in optics-archive-full.css)

   1. Mobile hero fixes
   2. Breadcrumbs rebuilt as Elementor container + AIOSEO shortcode
   ============================================================ */


/* ---- 1a. Inner hero container can't overflow the phone ------
   Pins the boxed behaviour in CSS so it holds regardless of how
   the Elementor Width field is set. Fixes the clipped title and
   eyebrow on mobile.
   ------------------------------------------------------------ */
.t1a .wrap-in{
  width:100%;
  max-width:1120px;
  margin-inline:auto;
  padding-inline:24px;
}

/* ---- 1b. Hero height on mobile -------------------------------
   The title has no lede under it on phones yet (term description
   renders once it's filled in), so the band was mostly empty
   space. Tighter minimum + tighter padding.
   ------------------------------------------------------------ */
@media (max-width:600px){
  .t1a .arch-hero{
    min-height:0;
    padding:110px 0 32px;
  }
  .t1a .arch-hero .elementor-heading-title{
    font-size:clamp(38px,11vw,56px)!important;
    margin:10px 0 10px!important;
  }
}


/* ---- 2. Breadcrumbs: Elementor container + AIOSEO ------------
   BUILD:
   - Delete the section 02 HTML widget.
   - Add a Container in its place:
       Layout  > Content Width: Full
       Advanced > CSS Classes:  arch-crumbs
       Advanced > Padding:      0
   - Inside it, add a SHORTCODE widget (not HTML):
       [aioseo_breadcrumbs]

   The trail now follows the term (Home / Shop / Optics / Thermal
   on child archives) and emits BreadcrumbList schema.

   The type styling for .aioseo-breadcrumbs already exists in the
   main stylesheet; the rules below replace what the old .cwrap
   div was doing, since the shortcode has no wrapper of its own.
   ------------------------------------------------------------ */
.t1a .arch-crumbs{
  background:rgba(19,18,17,.94);
  border-bottom:1px solid var(--hairline);
}
.t1a .arch-crumbs .elementor-widget-shortcode{
  max-width:1120px;
  width:100%;
  margin-inline:auto;
  padding:16px 24px;
}

@media (max-width:600px){
  .t1a .arch-crumbs .elementor-widget-shortcode{padding:13px 24px}
}


/* ---- AIOSEO breadcrumb separator -----------------------------
   AIOSEO's default separator is » — change it to match the
   middot style in: All in One SEO > General Settings >
   Breadcrumbs > Separator. Set it to  ·
   (CSS can't rewrite the character; it's markup.)
   ------------------------------------------------------------ *//* End custom CSS */