/* FERNROAM 0.2 — editorial outdoor living. Local fonts, native commerce. */
body.fernroam-site.fernroam-redesign,
.fr-home, .fr-editorial, .fr-policy, .fr-footer-brandbar {
  --fr-paper: #f4f1e8;
  --fr-forest: #193b2b;
  --fr-ink: #18271f;
  --fr-muted: #536157;
  --fr-stone: #e8e5d9;
  --fr-line: #c5c9ba;
  --fr-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --fr-serif: Georgia, "Times New Roman", serif;
  --fr-gutter: clamp(1.25rem, 4.5vw, 5rem);
  --fr-width: 1360px;
  --fr-ease: cubic-bezier(.2,.65,.3,1);
}
body.fernroam-site.fernroam-redesign {
  --fernroam-base: var(--fr-paper);
  --fernroam-forest: var(--fr-forest);
  --fernroam-forest-deep: #10291d;
  --fernroam-ink: var(--fr-ink);
  --fernroam-muted: var(--fr-muted);
  --theme-palette-color-1: var(--fr-forest);
  --theme-palette-color-2: #10291d;
  --theme-palette-color-3: var(--fr-muted);
  --theme-palette-color-4: var(--fr-ink);
  --theme-palette-color-5: var(--fr-line);
  --theme-palette-color-6: var(--fr-stone);
  --theme-palette-color-7: var(--fr-paper);
  --theme-button-border-radius: 0px;
  --theme-form-field-border-radius: 0px;
  --theme-font-family: var(--fr-sans);
  font-family: var(--fr-sans);
  background: var(--fr-paper);
  color: var(--fr-ink);
}
/* Home's full-width block supplies its own gutters; other pages keep Blocksy widths. */
body.home.fernroam-site.fernroam-redesign #main > :where(.ct-container,.ct-container-full) {
  width: 100%; max-width: none; padding-inline: 0; padding-block: 0;
}
/* Non-home full-width pages need one outer gutter; native ct-container is untouched. */
body.page:not(.home).fernroam-site.fernroam-redesign #main > .ct-container-full {
  box-sizing: border-box;
  padding-inline: clamp(20px, 4.5vw, 64px);
}
body.home.fernroam-site.fernroam-redesign .content-area { width: 100%; max-width: none; }
body.home.fernroam-site.fernroam-redesign .entry-content > .fr-home.alignfull {
  width: 100% !important; max-width: none !important; margin-inline: 0 !important;
  animation: none;
}
.fernroam-site.fernroam-redesign .site-title {
  font-family: var(--fr-serif);
  font-weight: 400;
  font-size: clamp(1.25rem, 1.8vw, 1.75rem);
  letter-spacing: .1em;
}
.fernroam-site.fernroam-redesign .site-title a {
  display: inline-flex;
  align-items: center;
  gap: .6em;
  min-height: 48px;
  color: inherit;
}
.fernroam-site.fernroam-redesign .site-title a::before {
  content: "";
  display: block;
  flex: 0 0 1.2em;
  width: 1.2em;
  height: 1.65em;
  background: currentColor;
  -webkit-mask: url("../brand/fernroam-symbol.svg") center / contain no-repeat;
  mask: url("../brand/fernroam-symbol.svg") center / contain no-repeat;
}
.fernroam-site.fernroam-redesign .site-header .menu > li > a {
  font-size: .8125rem;
  letter-spacing: .06em;
}
.fernroam-site.fernroam-redesign :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
  box-shadow: 0 0 0 2px var(--fr-paper);
}
.fr-home {
  width: 100%;
  max-width: none !important;
  margin-block: 0 !important;
  background: var(--fr-paper);
  color: var(--fr-ink);
  font-family: var(--fr-sans);
  line-height: 1.65;
}
.fr-home *, .fr-home *::before, .fr-home *::after { box-sizing: border-box; }
.fr-home :where(h1,h2,h3,p,figure) { margin: 0; }
.fr-home :where(h1,h2,h3) { text-wrap: balance; }
.fr-home :where(p) { text-wrap: pretty; }
.fr-home img { max-width: 100%; height: auto; }
.fr-home > * { margin-block: 0 !important; }
.fr-home .fr-section,
.fr-home .fr-hero-copy,
.fr-home .fr-section-heading,
.fr-home .fr-category-grid,
.fr-home .fr-story,
.fr-home .fr-guide-grid { min-width: 0; }
.fr-home .fr-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: end;
  min-height: 600px;
  min-height: clamp(600px, 74svh, 820px);
  width: 100%;
  max-width: none !important;
  overflow: hidden;
  padding: clamp(4.5rem, 6vw, 6rem) var(--fr-gutter);
  background: var(--fr-forest);
  color: var(--fr-paper);
}
.fr-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg,rgba(10,27,17,.84) 0%,rgba(10,27,17,.62) 48%,rgba(10,27,17,.12) 100%);
}
.fr-hero > :where(img,video,figure,.fr-hero-media) {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  max-width: none !important;
  z-index: 0;
  object-fit: cover;
}
.fr-hero :where(figure,.fr-hero-media) > :where(img,video) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fr-hero.wp-block-cover .wp-block-cover__inner-container { z-index: 2; width: 100%; }
.fr-home .fr-hero-copy {
  position: relative;
  z-index: 2;
  width: min(100%, 1360px);
  max-width: var(--fr-width) !important;
  margin-inline: auto !important;
  text-align: left;
}
.fr-home .fr-hero-copy > * { margin-inline: 0 !important; }
.fr-home .fr-kicker {
  display: block;
  font-family: var(--fr-sans);
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.fr-home .fr-title {
  max-width: 11.5ch;
  margin-block: 1.15rem 1.5rem;
  font-family: var(--fr-serif);
  font-size: clamp(3.6rem, 6.1vw, 6.5rem);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.052em;
  color: inherit;
}
.fr-hero-copy > p:not(.fr-kicker) { max-width: 38ch; font-size: clamp(1rem, 1.5vw, 1.2rem); }
.fr-home .fr-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .85rem;
  margin-block-start: 2rem;
}
.fr-home .fr-button,
.fr-home .fr-button .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .8rem 1.65rem;
  border: 1px solid var(--fr-forest);
  border-radius: 0;
  font: 600 .8125rem/1.5 var(--fr-sans);
  letter-spacing: .045em;
  text-decoration: none;
  background: var(--fr-forest);
  color: var(--fr-paper);
  cursor: pointer;
}
.fr-home .wp-block-button.fr-button { padding: 0; border: 0; background: none; }
.fr-home .fr-hero .fr-button,
.fr-home .fr-hero .fr-button .wp-block-button__link { color: var(--fr-forest); background: var(--fr-paper); border-color: var(--fr-paper); }
.fr-home .fr-button--outline,
.fr-home .fr-button--outline .wp-block-button__link { color: var(--fr-forest); background: transparent; }
.fr-home .fr-hero .fr-button--outline,
.fr-home .fr-hero .fr-button--outline .wp-block-button__link { color: var(--fr-paper); background: transparent; }
.fr-home .fr-button:hover { filter: brightness(.94); }
.fr-home .fr-button { gap: .8rem; }
.fr-home .fr-support {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: .4rem 2rem; width: 100%; max-width: none !important;
  padding: .7rem var(--fr-gutter); background: var(--fr-stone); color: var(--fr-forest);
  font-size: .8125rem; line-height: 1.6; border-bottom: 1px solid var(--fr-line);
}
.fr-support p { flex: 1 1 29rem; }
.fr-support a { display: inline-flex; align-items: center; min-height: 44px; color: inherit; text-decoration: underline; text-underline-offset: .25em; }
.fr-home .fr-text-link {
  display: inline-flex; align-items: center; gap: .8rem; min-height: 44px;
  width: fit-content; max-width: 100%; color: var(--fr-forest); font-size: .875rem;
  font-weight: 600; text-decoration: underline; text-underline-offset: .3em;
}
.fr-home .fr-section {
  width: 100%;
  max-width: calc(var(--fr-width) + var(--fr-gutter) * 2) !important;
  margin-inline: auto !important;
  padding: clamp(4rem, 7vw, 7.5rem) var(--fr-gutter);
}
.fr-home .fr-section + .fr-section { padding-block-start: 0; }
.fr-home .fr-section-heading {
  display: grid;
  gap: 1rem;
  max-width: 48rem;
  margin: 0 0 clamp(2rem, 4vw, 3.5rem) !important;
  text-align: left;
}
.fr-home .fr-section-heading > * { margin-inline: 0 !important; }
.fr-home :where(.fr-section-heading h2,.fr-story h2,.fr-editorial h2) {
  font: 400 clamp(2.6rem, 4.4vw, 4.75rem)/1.07 var(--fr-serif);
  letter-spacing: -.045em;
  color: var(--fr-forest);
}
.fr-home .fr-section-heading > p:not(.fr-kicker) { max-width: 50ch; color: var(--fr-muted); font-size: 1.0625rem; }
.fr-home .fr-category-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1rem,2vw,2rem); max-width: none !important; }
.fr-home .fr-category { min-width: 0; display: block; color: var(--fr-forest); text-decoration: none; }
.fr-category :where(figure,.fr-category-media) { overflow: hidden; margin: 0 0 1.25rem; background: var(--fr-stone); }
.fr-category > img, .fr-category :where(figure,.fr-category-media) > img {
  display: block; width: 100%; aspect-ratio: 4/5; height: auto; object-fit: contain; background: var(--fr-stone);
}
.fr-category.fr-media-contain img { object-fit: contain; padding: 1rem; background: var(--fr-stone); }
.fr-home .fr-category :where(h2,h3) { font: 400 clamp(1.6rem,2.5vw,2.25rem)/1.2 var(--fr-serif); letter-spacing: -.025em; margin-block: 1.1rem .45rem; }
.fr-category p { font-size: .9375rem; color: var(--fr-muted); max-width: 32ch; }
.fr-category > div { padding-block-start: 1.2rem; }
.fr-home .fr-category > div h3 { display: flex; justify-content: space-between; gap: .5rem; margin-block: .5rem 0; }
.fr-home .fr-featured .products { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 2.5rem clamp(1rem,2vw,2rem); }
.fr-home .fr-featured .products::before,.fr-home .fr-featured .products::after { display: none; }
.fr-home .fr-featured .products > li { min-width: 0; width: auto !important; float: none; margin: 0 !important; background: transparent; box-shadow: none; }
.fr-home .fr-featured .products :where(figure,.ct-media-container) { background: var(--fr-stone); }
.fr-home .fr-featured .products .ct-media-container { aspect-ratio: 4/5; }
.fr-home .fr-featured .products img { object-fit: contain !important; padding: clamp(.65rem,1.5vw,1.2rem); }
.fr-home .fr-featured .products :where(.woocommerce-loop-product__title,h2,h3) { font: 500 1rem/1.5 var(--fr-sans); letter-spacing: 0; color: var(--fr-ink); }
.fr-home .fr-featured .products .price { font: 500 .9375rem/1.5 var(--fr-sans); color: var(--fr-forest); font-variant-numeric: tabular-nums; }
.fr-home .fr-featured .products :where(.button,.added_to_cart) { min-height: 44px; border-radius: 0; font-size: .8125rem; }
.fr-home .fr-story { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem,6vw,6rem); align-items: center; max-width: none !important; }
.fr-story > * { min-width: 0; margin: 0 !important; }
.fr-story > :where(img,figure,.fr-story-media) { width: 100%; }
.fr-story > img,.fr-story :where(figure,.fr-story-media) > img { display: block; width: 100%; aspect-ratio: 5/6; object-fit: contain; background: var(--fr-stone); }
.fr-story.fr-media-contain img { object-fit: contain; }
.fr-story .fr-story-copy { padding-block: 1rem; }
.fr-story .fr-story-copy > * + * { margin-block-start: 1.5rem; }
.fr-story .fr-story-copy > p:not(.fr-kicker) { max-width: 43ch; color: var(--fr-muted); font-size: 1.0625rem; }
.fr-home .fr-section.fr-story { max-width: calc(var(--fr-width) + var(--fr-gutter) * 2) !important; }
.fr-story > div { padding-block: 1rem; }
.fr-story > div > * + * { margin-block-start: 1.5rem; }
.fr-story > div > p:not(.fr-kicker) { max-width: 43ch; color: var(--fr-muted); font-size: 1.0625rem; }
.fr-home .fr-guide-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1.5rem,3vw,3rem); max-width: none !important; }
.fr-guide-grid > * { min-width: 0; border-block-start: 1px solid var(--fr-line); padding-block-start: 1.4rem; }
.fr-home .fr-guide-grid :where(h2,h3) { font: 400 1.6rem/1.2 var(--fr-serif); letter-spacing: -.025em; margin-block: 1rem; }
.fr-guide-grid p { color: var(--fr-muted); font-size: 1rem; }
.fr-guide-grid a { display: inline-flex; align-items: center; min-height: 44px; color: var(--fr-forest); text-underline-offset: .3em; }
.fr-video-section { position: relative; }
.fr-video-section video { display: block; width: 100%; height: auto; aspect-ratio: 16/9; background: var(--fr-forest); }
.fr-home .fr-video-control {
  position: relative; z-index: 3; min-width: 100px; min-height: 44px;
  padding: .7rem 1.1rem; border: 1px solid currentColor; border-radius: 0;
  background: var(--fr-forest); color: var(--fr-paper); font: 500 .8125rem/1.4 var(--fr-sans); cursor: pointer;
}
.fr-home .fr-video-control[hidden] { display: none !important; }
.fr-hero > .fr-video-control { position: absolute; inset-inline-end: var(--fr-gutter); inset-block-end: 1.5rem; background: rgba(10,27,17,.8); }
.fr-home .fr-hero :focus-visible { outline-color: var(--fr-paper); box-shadow: 0 0 0 2px var(--fr-forest); }
.fr-editorial,.fr-policy { max-width: 760px; margin-inline: auto; color: var(--fr-ink); line-height: 1.75; }
.fr-editorial > * + *,.fr-policy > * + * { margin-block-start: 1.5rem; }
.fr-editorial :where(h1,h2),.fr-policy :where(h1,h2) { font-family: var(--fr-serif); font-weight: 400; line-height: 1.15; letter-spacing: -.03em; }
.fr-editorial h1,.fr-policy h1 { font-size: clamp(2.6rem,5vw,4.5rem); }
.fr-editorial h2,.fr-policy h2 { font-size: clamp(1.8rem,3vw,2.5rem); }
.fr-policy :where(table,.wp-block-table) { max-width: 100%; overflow-x: auto; }
.fr-home .fr-preferences {
  display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2.5rem;
  padding-block: 2.5rem !important; border-top: 1px solid var(--fr-line);
}
.fr-home .fr-preferences .fr-section-heading { flex: 1 1 32rem; margin: 0 !important; gap: .5rem; }
.fr-home .fr-preferences .fr-section-heading h2 { font-size: 1.6rem; }
.fr-home .fr-preferences .fr-section-heading p { font-size: .875rem; max-width: 64ch; }
.fr-preferences .wcml-horizontal-list { flex: 0 1 auto; }
.fernroam-site.fernroam-redesign .single-product .product_title,
.fernroam-site.fernroam-redesign.single-product .product_title { font-family: var(--fr-serif); font-weight: 400; letter-spacing: -.03em; line-height: 1.15; }
.fernroam-site.fernroam-redesign .woocommerce-product-gallery { background: var(--fr-stone); }
.fernroam-site.fernroam-redesign .woocommerce-product-gallery img { object-fit: contain; }
/* This compact brand row precedes, and visually joins, Blocksy's native footer. */
.fr-footer-brandbar { background: var(--fr-forest); color: var(--fr-paper); padding: 2.25rem var(--fr-gutter) 0; }
.fr-footer-brandbar__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem 2rem; max-width: var(--fr-width); margin-inline: auto; padding-block-end: 2rem; border-bottom: 1px solid rgba(244,241,232,.25); }
.fr-footer-brand { display: inline-flex; align-items: center; min-height: 48px; width: clamp(210px,25vw,300px); max-width: 100%; }
.fr-footer-brand img { display: block; width: 100%; height: auto; }
.fr-footer-brandbar p { margin: 0; font: 400 clamp(1.15rem,2vw,1.55rem)/1.35 var(--fr-serif); }
.fernroam-site.fernroam-redesign #footer,
.fernroam-site.fernroam-redesign #footer > [data-row] { background-color: var(--fr-forest); color: var(--fr-paper); }
.fernroam-site.fernroam-redesign #footer { --theme-text-color: var(--fr-paper); --theme-headings-color: var(--fr-paper); --theme-link-initial-color: var(--fr-paper); --theme-link-hover-color: #fff; }
.fernroam-site.fernroam-redesign #footer > [data-row] > .ct-container {
  width: calc(100% - var(--fr-gutter) * 2); max-width: var(--fr-width);
}
.fernroam-site.fernroam-redesign #footer [data-column="copyright"] { width: 100%; }
.fernroam-site.fernroam-redesign #footer .ct-footer-copyright > p:last-child {
  color: #d2d9cd; text-align: left; padding-block-start: 1rem; border-top: 1px solid rgba(244,241,232,.25); font-size: .75rem;
}
.fernroam-site.fernroam-redesign .fernroam-footer-grid {
  display: grid; grid-template-columns: .8fr 1fr 1fr 1.3fr;
  gap: clamp(1.5rem,3vw,3rem); max-width: var(--fr-width); margin-inline: auto;
  padding-block: 1.5rem 2.5rem; border: 0; background: var(--fr-forest); color: var(--fr-paper);
}
.fernroam-site.fernroam-redesign .fernroam-footer-group { min-width: 0; color: var(--fr-paper); text-align: left; font: 400 .9375rem/1.65 var(--fr-sans); }
.fernroam-site.fernroam-redesign .fernroam-footer-group h2 { margin: 0 0 .8rem; color: var(--fr-paper); font: 600 .75rem/1.5 var(--fr-sans); letter-spacing: .12em; text-transform: uppercase; }
.fernroam-site.fernroam-redesign .fernroam-footer-group ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0; }
.fernroam-site.fernroam-redesign .fernroam-footer-group li { margin: 0; padding: 0; }
.fernroam-site.fernroam-redesign .fernroam-footer-group a { display: inline-flex; align-items: center; min-height: 44px; min-width: 44px; padding-block: .35rem; color: var(--fr-paper); text-decoration: none; overflow-wrap: anywhere; }
.fernroam-site.fernroam-redesign .fernroam-footer-group a:hover { color: #fff; text-decoration: underline; text-underline-offset: .25em; }
.fernroam-site.fernroam-redesign .fernroam-footer-group address { font-style: normal; margin: 0; }
.fernroam-site.fernroam-redesign .fernroam-footer-group .fernroam-footer-note { max-width: 33ch; margin-block: .75rem; color: #d2d9cd; font-size: .8125rem; line-height: 1.6; }
.fernroam-site.fernroam-redesign :where(#footer,.fr-footer-brandbar) :focus-visible { outline-color: var(--fr-paper); box-shadow: 0 0 0 2px var(--fr-forest); }
/* Content pages share the brand typography without homepage section spacing. */
.fernroam-site.fernroam-redesign .fr-editorial {
  width: 100%; max-width: 760px !important; margin-inline: auto !important;
  min-width: 0; font: 400 1rem/1.75 var(--fr-sans); overflow-wrap: anywhere;
}
.fr-editorial *, .fr-editorial *::before, .fr-editorial *::after { box-sizing: border-box; }
.fr-editorial .fr-page-intro {
  max-width: 760px; margin: 0 0 clamp(2rem,4vw,3rem); padding-block-end: clamp(2rem,4vw,3rem);
  border-bottom: 1px solid var(--fr-line);
}
.fr-editorial .fr-page-intro > * { margin: 0; }
.fr-editorial .fr-page-intro > * + * { margin-block-start: 1.25rem; }
.fr-editorial .fr-page-intro h1 { max-width: 16ch; color: var(--fr-forest); text-wrap: balance; }
.fr-editorial .fr-kicker {
  font: 600 .75rem/1.5 var(--fr-sans); letter-spacing: .15em;
  text-transform: uppercase; color: var(--fr-forest);
}
.fr-editorial .fr-lead { font-size: clamp(1.125rem,1.5vw,1.25rem); line-height: 1.65; color: var(--fr-muted); }
.fr-editorial .fr-status {
  padding: 1rem 1.2rem; border: 1px solid var(--fr-line); border-inline-start: 3px solid var(--fr-forest);
  background: var(--fr-stone); color: var(--fr-ink); font-size: .9375rem; line-height: 1.65;
}
.fr-editorial .fr-revision { font-size: .8125rem; color: var(--fr-muted); }
.fr-editorial .fr-section {
  width: 100%; max-width: 760px; margin-block: clamp(2.25rem,4vw,3.5rem); padding: 0;
}
.fr-editorial .fr-section > * { margin: 0; }
.fr-editorial .fr-section > * + * { margin-block-start: 1.25rem; }
.fr-editorial .fr-section h2 { color: var(--fr-forest); font-size: clamp(1.8rem,3vw,2.35rem); text-wrap: balance; }
.fr-editorial .fr-section p { max-width: 100%; }
.fr-editorial :where(address,.fr-contact-details) { font-style: normal; }
.fr-editorial .fr-contact-details address,
.fr-editorial address.fr-contact-details { line-height: 1.8; color: var(--fr-forest); }
.fr-editorial .fr-policy-nav, .fr-editorial .fr-help-links {
  padding: clamp(1rem,3vw,1.75rem); border: 1px solid var(--fr-line); background: #eeede4;
}
.fr-editorial :where(.fr-policy-nav,.fr-help-links) ul {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .3rem 1.75rem;
  list-style: none; padding: 0; margin: 0;
}
.fr-editorial .fr-help-links > h2 + ul { margin-block-start: 1rem; }
.fr-editorial :where(.fr-policy-nav,.fr-help-links) li { margin: 0; padding: 0; min-width: 0; }
.fr-editorial :where(.fr-policy-nav,.fr-help-links) a {
  display: flex; align-items: center; min-height: 44px; padding-block: .45rem; color: var(--fr-forest);
  font-size: .9375rem; line-height: 1.55; text-decoration: underline; text-underline-offset: .25em;
}
.fr-editorial .fr-contact-email { max-width: 100%; font-size: clamp(1.1rem,4vw,1.8rem); line-height: 1.5; }
.fr-editorial .fr-contact-email a {
  display: inline-block; max-width: 100%; min-height: 44px; padding-block: .2rem;
  overflow-wrap: anywhere; word-break: normal; color: var(--fr-forest); text-underline-offset: .2em;
}
.fr-editorial .fr-text-link {
  display: inline-flex; align-items: center; min-height: 44px; max-width: 100%;
  color: var(--fr-forest); font-weight: 600; text-decoration: underline; text-underline-offset: .25em;
}
@media (max-width: 599px) {
  .fr-editorial :where(.fr-policy-nav,.fr-help-links) ul { grid-template-columns: minmax(0,1fr); }
  .fr-editorial .fr-page-intro h1 { font-size: clamp(2.4rem,9.6vw,3.5rem); }
}
@media (max-width: 999px) {
  .fr-home .fr-featured .products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .fernroam-site.fernroam-redesign .fernroam-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .fr-home .fr-hero { min-height: 680px; min-height: min(780px,88svh); padding-block: 4.5rem 6.5rem; }
  .fr-hero::after { background: linear-gradient(90deg,rgba(10,27,17,.84),rgba(10,27,17,.68)); }
  .fr-home .fr-title { font-size: clamp(3.25rem,12.2vw,5.25rem); max-width: 10.8ch; }
  .fr-home .fr-category-grid { grid-template-columns: minmax(0,1fr); gap: 2.5rem; }
  .fr-category > img,.fr-category :where(figure,.fr-category-media) > img { aspect-ratio: 6/5; }
  .fr-home .fr-story { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .fr-story > img,.fr-story :where(figure,.fr-story-media) > img { aspect-ratio: 6/5; }
  .fr-home .fr-guide-grid { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
  .fr-guide-grid p { max-width: 48ch; }
  .fr-footer-brandbar__inner { justify-content: flex-start; }
}
@media (max-width: 479px) {
  .fr-home .fr-hero { min-height: 650px; }
  .fr-home .fr-actions { align-items: stretch; gap: .75rem; }
  .fr-home .fr-actions > * { flex: 1 1 auto; }
  .fr-home .fr-button { max-width: 100%; padding-inline: 1.2rem; }
  .fernroam-site.fernroam-redesign .fernroam-footer-grid { grid-template-columns: minmax(0,1fr); gap: 1.75rem; }
}
@media (max-width: 359px) {
  .fr-home .fr-featured .products { grid-template-columns: minmax(0,1fr) !important; }
  .fernroam-site.fernroam-redesign .site-title { font-size: 1.05rem; letter-spacing: .06em; }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .fr-home .fr-category img { transition: transform 550ms var(--fr-ease); }
  .fr-home .fr-category:hover img { transform: scale(1.025); }
  .fr-home :where(.fr-button,.fr-video-control) { transition: background-color 180ms ease,color 180ms ease,filter 180ms ease; }
}
@media (prefers-reduced-motion:no-preference) {
  .fr-home .fr-reveal { animation: fr-enter 520ms var(--fr-ease) both; }
  @keyframes fr-enter { from { opacity: .2; transform: translateY(12px); } to { opacity: 1; transform: none; } }
}
@media (prefers-reduced-motion:reduce) {
  .fr-home *, .fr-home *::before, .fr-home *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
