/* FORM Complete Elementor Site 3.0.0 */
:root{
  --form-ink:#11100e;
  --form-paper:#e9e4da;
  --form-paper-2:#d8d0c4;
  --form-card:#f4f0e9;
  --form-muted:#6b665f;
  --form-line:rgba(17,16,14,.18);
  --form-accent:#9d8064;
  --form-white:#f7f4ee;
}

body.form-elementor-page{
  margin:0!important;
  background:var(--form-paper)!important;
  color:var(--form-ink)!important;
  font-family:Manrope,Arial,sans-serif!important;
  overflow-x:hidden!important;
}
body.form-elementor-page *{box-sizing:border-box}
body.form-elementor-page a{color:inherit}
body.form-elementor-page .elementor,
body.form-elementor-page .elementor-section-wrap,
body.form-elementor-page .elementor-location-single,
body.form-elementor-page main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.form-elementor-page .e-con{box-sizing:border-box}
body.form-elementor-page .e-con>.e-con-inner{width:100%!important;max-width:none!important}
body.form-elementor-page .elementor-element{--widgets-spacing:0px}

/* Header */
.form-header,
.form-header>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:100%!important;
  max-width:none!important;
}
.form-header{
  min-height:86px!important;
  padding:0 4vw!important;
  border-bottom:1px solid var(--form-line)!important;
  background:var(--form-paper)!important;
  position:relative!important;
  z-index:20!important;
}
.form-logo{width:auto!important;max-width:none!important;flex:0 0 auto!important}
.form-logo .elementor-heading-title{
  margin:0!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:34px!important;
  line-height:1!important;
  font-weight:500!important;
  letter-spacing:-.04em!important;
}
.form-logo .elementor-heading-title span{color:var(--form-accent)!important}
.form-nav,
.form-nav>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  width:auto!important;
  max-width:none!important;
}
.form-nav-link{width:auto!important;max-width:none!important;flex:0 0 auto!important}
.form-nav-link .elementor-button{
  padding:12px 14px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--form-ink)!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.form-nav-link .elementor-button:hover{color:var(--form-accent)!important}

/* Shared type and buttons */
.form-eyebrow,
.form-eyebrow p,
.form-eyebrow .elementor-widget-container{
  margin:0!important;
  color:#85796b!important;
  font-size:10px!important;
  line-height:1.5!important;
  font-weight:700!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.form-btn{width:auto!important;max-width:max-content!important}
.form-btn .elementor-button{
  min-height:50px!important;
  padding:16px 24px!important;
  border-radius:0!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.form-btn-dark .elementor-button{
  border:1px solid var(--form-ink)!important;
  background:var(--form-ink)!important;
  color:#fff!important;
}
.form-btn-dark .elementor-button:hover{
  border-color:var(--form-accent)!important;
  background:var(--form-accent)!important;
}

/* Home hero: light copy panel, photographic panel */
.form-hero{
  display:grid!important;
  grid-template-columns:minmax(0,46%) minmax(0,54%)!important;
  align-items:stretch!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  min-height:680px!important;
  overflow:hidden!important;
  background:var(--form-paper)!important;
  color:var(--form-ink)!important;
}
.form-hero>.e-con-inner{
  display:grid!important;
  grid-template-columns:minmax(0,46%) minmax(0,54%)!important;
  align-items:stretch!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  min-height:680px!important;
}
.form-hero-copybox{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:680px!important;
  padding:clamp(90px,8vw,145px) clamp(35px,5vw,88px) clamp(70px,7vw,120px) clamp(35px,8vw,130px)!important;
  background:var(--form-paper)!important;
  color:var(--form-ink)!important;
}
.form-hero-title,
.form-hero-title .elementor-widget-container,
.form-hero-title .elementor-heading-title{
  width:100%!important;
  color:var(--form-ink)!important;
}
.form-hero-title .elementor-heading-title{
  margin:22px 0 0!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(58px,6.5vw,108px)!important;
  line-height:.94!important;
  font-weight:500!important;
  letter-spacing:-.045em!important;
}
.form-hero-copy,
.form-hero-copy p,
.form-hero-copy .elementor-widget-container{
  max-width:410px!important;
  margin:20px 0 28px!important;
  color:var(--form-muted)!important;
  opacity:1!important;
  font-size:15px!important;
  line-height:1.8!important;
}
.form-hero .form-btn-light .elementor-button{
  border:1px solid var(--form-ink)!important;
  background:var(--form-ink)!important;
  color:#fff!important;
}
.form-hero .form-btn-light .elementor-button:hover{
  background:transparent!important;
  color:var(--form-ink)!important;
}
.form-hero-media{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:680px!important;
  overflow:hidden!important;
  background:#111!important;
}
.form-hero-media>.e-con-inner,
.form-hero-image,
.form-hero-image>.elementor-widget-container,
.form-hero-image a,
.form-hero-image picture{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:680px!important;
  overflow:hidden!important;
  line-height:0!important;
}
.form-hero-image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:680px!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Home intro and category cards */
.form-intro{
  display:grid!important;
  grid-template-columns:minmax(245px,290px) minmax(0,1fr)!important;
  align-items:start!important;
  gap:44px!important;
  width:100%!important;
  max-width:none!important;
  padding:64px 4vw 82px!important;
  background:var(--form-paper)!important;
}
.form-intro>.e-con-inner{
  display:grid!important;
  grid-template-columns:minmax(245px,290px) minmax(0,1fr)!important;
  align-items:start!important;
  gap:44px!important;
  width:100%!important;
  max-width:none!important;
}
.form-intro-text,
.form-intro-text>.e-con-inner{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  width:100%!important;
  min-width:0!important;
}
.form-intro-title .elementor-heading-title{
  margin:20px 0 24px!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(34px,3.2vw,52px)!important;
  line-height:1.06!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
}
.form-intro-copy,
.form-intro-copy p{
  color:#59544d!important;
  font-size:13px!important;
  line-height:1.75!important;
}
.form-category-grid,
.form-category-grid>.e-con-inner{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  align-items:stretch!important;
  align-content:start!important;
  gap:14px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
.form-category-card,
.form-category-grid>.e-con-inner>.form-category-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  overflow:hidden!important;
  background:var(--form-card)!important;
  border:1px solid rgba(17,16,14,.1)!important;
  box-shadow:0 10px 28px rgba(17,16,14,.05)!important;
}
.form-category-card>.e-con-inner{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  height:100%!important;
  gap:0!important;
}
.form-category-image,
.form-category-image>.elementor-widget-container,
.form-category-image a,
.form-category-image picture{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:#171614!important;
  line-height:0!important;
}
.form-category-image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .35s ease!important;
}
.form-category-card:hover .form-category-image img{transform:scale(1.025)!important}
.form-category-title{
  width:100%!important;
  margin:0!important;
  padding:17px 16px 0!important;
}
.form-category-title .elementor-heading-title{
  margin:0!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(16px,1.2vw,20px)!important;
  line-height:1.18!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
}
.form-category-link{
  width:100%!important;
  margin-top:auto!important;
  padding:3px 16px 12px!important;
}
.form-category-link .elementor-button{
  display:inline-flex!important;
  width:auto!important;
  padding:8px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--form-ink)!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}

/* Home CTA */
.form-cta{
  width:100%!important;
  max-width:none!important;
  padding:8vw 4vw!important;
  background:var(--form-paper-2)!important;
}
.form-cta-title .elementor-heading-title{
  max-width:950px!important;
  margin:26px 0 38px!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(44px,5vw,76px)!important;
  line-height:1.04!important;
  font-weight:500!important;
  letter-spacing:-.04em!important;
}

/* Page intro */
.form-page-intro{
  width:100%!important;
  max-width:none!important;
  padding:8vw 4vw 3vw!important;
  background:var(--form-paper)!important;
}
.form-page-title .elementor-heading-title{
  margin:20px 0!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:clamp(62px,7vw,118px)!important;
  line-height:.9!important;
  font-weight:500!important;
  letter-spacing:-.06em!important;
}
.form-page-copy,
.form-page-copy p{
  max-width:650px!important;
  color:#6f6961!important;
  font-size:14px!important;
  line-height:1.7!important;
}

/* Collection */
.form-catalog-wrap{
  width:min(1440px,92vw)!important;
  max-width:1440px!important;
  margin:0 auto 90px!important;
  padding:0!important;
}
.form-filter-widget{width:100%!important;margin:0 0 34px!important;padding:0!important}
.form-collection-filters{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
}
.form-collection-filters .form-filter-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 16px!important;
  border:1px solid #9d968c!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--form-ink)!important;
  text-decoration:none!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  user-select:none!important;
}
.form-collection-filters .form-filter-link:hover,
.form-collection-filters .form-filter-link.is-active{
  border-color:var(--form-ink)!important;
  background:var(--form-ink)!important;
  color:#fff!important;
}
.form-products-grid,
.form-products-grid>.e-con-inner{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:start!important;
  gap:42px 16px!important;
  width:100%!important;
  max-width:none!important;
  padding:0!important;
}
.form-product-card,
.form-products-grid>.e-con-inner>.form-product-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  background:#eee9e0!important;
  border:1px solid rgba(17,16,14,.08)!important;
}
.form-product-card>.e-con-inner{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  gap:0!important;
}
.form-product-image,
.form-product-image>.elementor-widget-container,
.form-product-image a,
.form-product-image picture{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:#171614!important;
  line-height:0!important;
}
.form-product-image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .35s ease!important;
}
.form-product-card:hover .form-product-image img{transform:scale(1.025)!important}
.form-product-lot,
.form-product-title,
.form-product-origin,
.form-product-category{
  width:100%!important;
  padding-left:16px!important;
  padding-right:16px!important;
}
.form-product-lot,
.form-product-lot p{
  margin:0!important;
  padding-top:14px!important;
  color:#5f5a53!important;
  font-size:9px!important;
  line-height:1.4!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.form-product-title .elementor-heading-title{
  margin:7px 0 5px!important;
  color:var(--form-ink)!important;
  font-family:"Playfair Display",Georgia,serif!important;
  font-size:22px!important;
  line-height:1.08!important;
  font-weight:500!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
}
.form-product-origin,
.form-product-origin p{
  margin:0!important;
  color:#746e65!important;
  font-size:11px!important;
  line-height:1.5!important;
}
.form-product-category,
.form-product-category p{
  margin:0!important;
  padding-top:10px!important;
  padding-bottom:16px!important;
  color:#5f5a53!important;
  font-size:9px!important;
  line-height:1.4!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.form-filter-hidden,
.form-product-card[hidden],
[data-form-filter-hidden="1"]{display:none!important}
body.form-filter-minerals .form-product-card:not(.cat-minerals),
body.form-filter-fossils .form-product-card:not(.cat-fossils),
body.form-filter-meteorites .form-product-card:not(.cat-meteorites),
body.form-filter-artifacts .form-product-card:not(.cat-artifacts){display:none!important}

/* Contact */
.form-contact-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:start!important;
  gap:8vw!important;
  width:100%!important;
  max-width:none!important;
  padding:2vw 4vw 9vw!important;
}
.form-contact-layout>.e-con-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:start!important;
  gap:8vw!important;
  width:100%!important;
  max-width:none!important;
}
.form-contact-info,
.form-contact-form{width:100%!important;max-width:none!important;min-width:0!important}
.form-contact-line .elementor-heading-title{
  margin:0!important;
  padding:18px 0!important;
  border-bottom:1px solid #aaa196!important;
  color:var(--form-ink)!important;
  font-size:clamp(28px,3vw,46px)!important;
  line-height:1.1!important;
  font-weight:500!important;
  letter-spacing:-.04em!important;
  overflow-wrap:anywhere!important;
}
.form-contact-small,
.form-contact-small p{
  margin-top:28px!important;
  color:#6a645d!important;
  font-size:13px!important;
  line-height:1.7!important;
}
.form-contact-form{
  padding:44px!important;
  background:#d5cdc0!important;
}
.form-enquiry-form label{
  display:block!important;
  margin:22px 0 0!important;
  color:var(--form-ink)!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.form-enquiry-form input,
.form-enquiry-form textarea{
  display:block!important;
  width:100%!important;
  margin:5px 0 0!important;
  padding:12px 0!important;
  border:0!important;
  border-bottom:1px solid #81796f!important;
  border-radius:0!important;
  outline:none!important;
  background:transparent!important;
  color:var(--form-ink)!important;
  font-size:14px!important;
  line-height:1.5!important;
  text-transform:none!important;
  letter-spacing:0!important;
  resize:vertical!important;
}
.form-enquiry-form button{
  margin-top:28px!important;
  padding:16px 22px!important;
  border:1px solid var(--form-ink)!important;
  border-radius:0!important;
  background:var(--form-ink)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.form-enquiry-form button:hover{background:var(--form-accent)!important;border-color:var(--form-accent)!important}
.form-enquiry-success,
.form-enquiry-error{margin-bottom:18px!important;padding:15px!important;font-size:13px!important;line-height:1.5!important}
.form-enquiry-success{border:1px solid #7d8b6f!important}.form-enquiry-error{border:1px solid #a66d62!important}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Footer */
.form-footer,
.form-footer>.e-con-inner{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  align-items:center!important;
  gap:20px!important;
  width:100%!important;
  max-width:none!important;
}
.form-footer{
  padding:30px 4vw!important;
  border-top:1px solid var(--form-line)!important;
  background:var(--form-paper)!important;
  color:var(--form-ink)!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.form-footer p{margin:0!important}.form-footer-center{text-align:center!important}.form-footer-right{text-align:right!important}

/* Elementor editor: keep grids visible and every widget selectable */
.elementor-editor-active .form-category-grid,
.elementor-edit-mode .form-category-grid,
.elementor-editor-active .form-category-grid>.e-con-inner,
.elementor-edit-mode .form-category-grid>.e-con-inner{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}
.elementor-editor-active .form-products-grid,
.elementor-edit-mode .form-products-grid,
.elementor-editor-active .form-products-grid>.e-con-inner,
.elementor-edit-mode .form-products-grid>.e-con-inner{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.elementor-editor-active .form-product-card,
.elementor-edit-mode .form-product-card{display:flex!important}

@media(max-width:1200px){
  .form-category-grid,
  .form-category-grid>.e-con-inner,
  .elementor-editor-active .form-category-grid,
  .elementor-edit-mode .form-category-grid,
  .elementor-editor-active .form-category-grid>.e-con-inner,
  .elementor-edit-mode .form-category-grid>.e-con-inner{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:1100px){
  .form-products-grid,
  .form-products-grid>.e-con-inner,
  .elementor-editor-active .form-products-grid,
  .elementor-edit-mode .form-products-grid,
  .elementor-editor-active .form-products-grid>.e-con-inner,
  .elementor-edit-mode .form-products-grid>.e-con-inner{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:850px){
  .form-header{min-height:74px!important;padding:0 20px!important}
  .form-logo .elementor-heading-title{font-size:29px!important}
  .form-nav,.form-nav>.e-con-inner{gap:0!important}
  .form-nav-link .elementor-button{padding:10px 8px!important;font-size:9px!important}

  .form-hero,
  .form-hero>.e-con-inner{grid-template-columns:1fr!important;min-height:0!important}
  .form-hero-copybox{min-height:0!important;padding:110px 6vw 65px!important}
  .form-hero-media{min-height:440px!important}
  .form-hero-media>.e-con-inner,
  .form-hero-image,
  .form-hero-image>.elementor-widget-container,
  .form-hero-image a,
  .form-hero-image picture,
  .form-hero-image img{min-height:440px!important;height:440px!important}

  .form-intro,
  .form-intro>.e-con-inner{grid-template-columns:1fr!important}
  .form-intro-text{max-width:680px!important}

  .form-category-grid,
  .form-category-grid>.e-con-inner,
  .elementor-editor-active .form-category-grid,
  .elementor-edit-mode .form-category-grid,
  .elementor-editor-active .form-category-grid>.e-con-inner,
  .elementor-edit-mode .form-category-grid>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .form-products-grid,
  .form-products-grid>.e-con-inner,
  .elementor-editor-active .form-products-grid,
  .elementor-edit-mode .form-products-grid,
  .elementor-editor-active .form-products-grid>.e-con-inner,
  .elementor-edit-mode .form-products-grid>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .form-contact-layout,
  .form-contact-layout>.e-con-inner{grid-template-columns:1fr!important;gap:50px!important}

  .form-footer,
  .form-footer>.e-con-inner{grid-template-columns:1fr!important;gap:10px!important}
  .form-footer-center,.form-footer-right{text-align:left!important}
}

@media(max-width:520px){
  .form-header{padding:0 14px!important;gap:8px!important}
  .form-logo .elementor-heading-title{font-size:26px!important}
  .form-nav-link .elementor-button{padding:8px 5px!important;font-size:8px!important}
  .form-hero-title .elementor-heading-title{font-size:54px!important}
  .form-hero-copybox{padding:100px 22px 55px!important}
  .form-hero-media,
  .form-hero-media>.e-con-inner,
  .form-hero-image,
  .form-hero-image>.elementor-widget-container,
  .form-hero-image a,
  .form-hero-image picture,
  .form-hero-image img{min-height:360px!important;height:360px!important}

  .form-intro{padding:52px 18px 64px!important}
  .form-category-grid,
  .form-category-grid>.e-con-inner,
  .elementor-editor-active .form-category-grid,
  .elementor-edit-mode .form-category-grid,
  .elementor-editor-active .form-category-grid>.e-con-inner,
  .elementor-edit-mode .form-category-grid>.e-con-inner{grid-template-columns:1fr!important}

  .form-page-intro{padding:70px 18px 36px!important}
  .form-catalog-wrap{width:calc(100% - 36px)!important;margin-bottom:70px!important}
  .form-products-grid,
  .form-products-grid>.e-con-inner,
  .elementor-editor-active .form-products-grid,
  .elementor-edit-mode .form-products-grid,
  .elementor-editor-active .form-products-grid>.e-con-inner,
  .elementor-edit-mode .form-products-grid>.e-con-inner{grid-template-columns:1fr!important}
  .form-collection-filters .form-filter-link{min-height:40px!important;padding:0 12px!important;font-size:9px!important}
  .form-product-title .elementor-heading-title{font-size:20px!important}

  .form-contact-layout{padding:20px 18px 70px!important}
  .form-contact-form{padding:26px!important}
}
