:root{
  --paper:#faf7f0;
  --stone:#f1ebdd;
  --ink:#1e2724;
  --green:#3f5147;
  --muted:#646a60;
  --line:#d6d7cc;
  --serif:'Bodoni Moda',Georgia,serif;
  --sans:Manrope,Arial,sans-serif;
  --gutter:clamp(22px,4.5vw,76px)
}
*{
  box-sizing:border-box
}
html{
  scroll-behavior:smooth;
  scroll-padding-top:35px
}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:15px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased
}
h1,h2,h3,p{
  margin:0
}
a{
  color:inherit;
  text-decoration:none
}
button,input,select,textarea{
  font:inherit
}
button,a,input,select,summary{
  touch-action:manipulation
}
button{
  cursor:pointer
}
img{
  display:block;
  max-width:100%;
  height:auto
}
h1,h2,h3{
  font-family:var(--serif);
  font-weight:400;
  line-height:1.04;
  letter-spacing:-.045em
}
h1 em,h2 em,.footer-thought em{
  font-weight:400
}
a,button{
  -webkit-tap-highlight-color:transparent
}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{
  outline:2px solid #935442;
  outline-offset:5px
}
button:disabled{
  cursor:not-allowed;
  opacity:.5
}
.screen-reader-text,.skip-link:not(:focus){
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
.skip-link:focus{
  position:fixed;
  top:8px;
  left:8px;
  z-index:99;
  padding:12px 20px;
  background:var(--paper)
}
.eyebrow{
  font:500 10px/1.6 var(--sans);
  letter-spacing:.17em;
  text-transform:uppercase
}
.text-button{
  background:none;
  border:0;
  color:inherit
}
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  padding:16px 23px;
  background:var(--green);
  border:1px solid var(--green);
  border-radius:0;
  color:var(--paper);
  font:500 12px/1.5 var(--sans);
  text-decoration:none;
  transition:background .2s,transform .2s
}
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{
  background:#293e33;
  color:var(--paper)
}
.button span{
  font-size:19px
}
.underlink{
  display:inline-flex;
  align-items:center;
  gap:24px;
  padding:10px 0 8px;
  border-bottom:1px solid currentColor;
  font-size:12px
}
.underlink span{
  font-size:20px
}
.section-shell{
  padding:70px var(--gutter)
}
.announcement{
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--green);
  color:var(--paper);
  font-size:9px;
  letter-spacing:.1em
}
.announcement>span:first-child,.announcement>span:last-child{
  display:none
}
.site-header{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  align-items:center;
  height:92px;
  padding:0 22px;
  gap:10px;
  background:var(--paper);
  z-index:5;
  border-bottom:1px solid #e5e3d8
}
.wordmark{
  justify-self:center;
  text-align:center;
  font-family:var(--serif);
  font-size:27px;
  line-height:1;
  letter-spacing:.035em
}
.wordmark>span{
  display:block;
  margin-bottom:5px;
  font-family:var(--sans);
  font-size:8px;
  letter-spacing:.26em
}
.primary-nav{
  display:none
}
.primary-nav a{
  padding:13px 0;
  font-size:12px
}
.menu-toggle{
  justify-self:start;
  padding:12px 8px 12px 0;
  min-width:44px;
  min-height:44px
}
.menu-lines{
  display:block;
  width:20px;
  height:8px;
  border-top:1px solid;
  border-bottom:1px solid
}
.primary-nav.is-open{
  position:absolute;
  display:flex;
  flex-direction:column;
  left:0;
  right:0;
  top:92px;
  background:var(--paper);
  padding:20px var(--gutter);
  box-shadow:0 14px 20px #1e27240d;
  border-bottom:1px solid var(--line)
}
.utility-nav{
  display:flex;
  align-items:center;
  justify-self:end;
  gap:27px
}
.guide-link{
  display:none
}
.bag-link{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  min-height:44px
}
.bag-link svg{
  width:17px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.2
}
.bag-link>span{
  font-size:0
}
.bag-count{
  font-size:11px
}
.hero{
  display:grid;
  background:var(--stone)
}
.hero-copy{
  padding:44px var(--gutter) 40px
}
.hero h1{
  margin:23px 0;
  font-size:clamp(54px,8vw,95px);
  line-height:.98;
  letter-spacing:-.055em
}
.hero h1 em{
  color:var(--green)
}
.hero-intro{
  font-size:13px;
  max-width:275px;
  line-height:1.8;
  margin-bottom:25px
}
.hero .button{
  font-size:11px
}
.hero-footnote{
  display:none
}
.hero-visual{
  position:relative;
  min-width:0;
  aspect-ratio:1.2;
  overflow:hidden
}
.hero-visual>img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:65% center
}
.image-caption{
  position:absolute;
  inset:auto 20px 18px;
  display:flex;
  justify-content:space-between;
  gap:15px;
  font-size:8px;
  font-weight:600;
  letter-spacing:.12em;
  color:#272b21
}
.image-caption>span:last-child{
  display:none
}
.opening-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:60px;
  padding:12px var(--gutter);
  border-bottom:1px solid var(--line);
  font-size:8px;
  letter-spacing:.1em
}
.opening-line>span:nth-child(2){
  font-size:20px
}
.opening-line>span:last-child{
  display:none
}
.section-heading{
  display:flex;
  flex-direction:column;
  gap:22px;
  margin-bottom:35px
}
.section-heading h2{
  font-size:clamp(43px,5vw,64px);
  margin-top:15px
}
.section-heading>p{
  font-size:12px;
  line-height:1.9;
  color:var(--muted)
}
.desktop-break{
  display:none
}
.product-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:38px
}
.card-image{
  display:block;
  position:relative;
  aspect-ratio:4/5;
  background:#f0ede5;
  overflow:hidden
}
.card-image>img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.22,.68,.25,1)
}
.card-image:hover>img{
  transform:scale(1.035)
}
.card-study{
  position:absolute;
  top:20px;
  left:20px;
  z-index:1;
  font-size:8px;
  letter-spacing:.12em
}
.card-image-action{
  position:absolute;
  bottom:16px;
  right:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:35px;
  padding:3px 11px;
  background:#faf7f0d9;
  font-size:10px;
  letter-spacing:.03em
}
.card-detail{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:15px;
  margin-top:22px
}
.card-detail h3{
  font-size:32px;
  line-height:1.15;
  letter-spacing:-.04em
}
.card-price{
  font-size:12px;
  white-space:nowrap
}
.card-descriptor{
  margin-top:9px;
  font-size:12px
}
.card-meta{
  margin-top:4px;
  font-size:10px;
  color:var(--muted)
}
.card-meta>span{
  margin:0 5px
}
.collection-note{
  margin-top:36px;
  padding-top:17px;
  border-top:1px solid var(--line);
  font-size:10px;
  color:var(--muted)
}
.world-section{
  display:grid;
  background:var(--green);
  color:var(--paper)
}
.world-image{
  position:relative;
  aspect-ratio:1.1;
  overflow:hidden;
  margin:24px 24px 0
}
.world-image img{
  height:100%;
  width:100%;
  object-fit:cover;
  object-position:68% center
}
.world-image>span{
  position:absolute;
  bottom:18px;
  left:18px;
  font-size:8px;
  letter-spacing:.13em;
  color:#272b21
}
.world-copy{
  padding:40px var(--gutter) 58px
}
.world-copy h2{
  margin:22px 0 28px;
  font-size:clamp(44px,5.2vw,66px);
  line-height:1.08
}
.world-copy>p:not(.eyebrow){
  font-size:13px;
  max-width:345px;
  margin-bottom:16px;
  color:#eceee5
}
.world-copy .underlink{
  margin-top:15px;
  font-size:11px
}
.guide-grid{
  display:grid;
  gap:0;
  border-top:1px solid var(--line)
}
.guide-item{
  display:block;
  position:relative;
  padding:26px 25px 26px 0;
  border-bottom:1px solid var(--line)
}
.guide-item h3{
  font-size:30px;
  line-height:1.2;
  margin:20px 0 10px;
  transition:color .2s
}
.guide-item:hover h3{
  color:#935442
}
.guide-item>p{
  font-size:11px;
  color:var(--muted)
}
.guide-item>span:last-child{
  position:absolute;
  right:0;
  top:50%;
  font-size:22px
}
.site-footer{
  padding:45px var(--gutter) 22px;
  background:#eae7dc
}
.footer-top{
  display:flex;
  flex-direction:column;
  gap:23px;
  padding-bottom:40px
}
.footer-thought{
  font-family:var(--serif);
  font-size:45px;
  line-height:1.1;
  letter-spacing:-.04em
}
.footer-top .underlink{
  align-self:start
}
.footer-bottom{
  display:flex;
  flex-direction:column;
  gap:20px;
  padding-top:22px;
  border-top:1px solid #c8ccbf;
  font-size:9px
}
.demo-disclosure{
  max-width:460px;
  line-height:1.8;
  color:#586056
}
.footer-bottom>a{
  font-size:10px
}
.shop-content{
  padding:0
}
.woocommerce-breadcrumb{
  display:none
}
.product-stage{
  display:grid;
  padding:0
}
.product-gallery{
  min-width:0
}
.main-product-image{
  position:relative;
  aspect-ratio:4/4.5;
  overflow:hidden;
  background:#f0ede5
}
.main-product-image .gallery-main{
  width:100%;
  height:100%;
  object-fit:contain
}
.gallery-label{
  position:absolute;
  left:20px;
  bottom:18px;
  font-size:8px;
  letter-spacing:.1em
}
.gallery-thumbnails{
  display:flex;
  align-items:center;
  gap:10px;
  padding:15px var(--gutter)
}
.gallery-thumb{
  padding:0;
  width:54px;
  height:65px;
  border:1px solid transparent;
  background:#f0ede5
}
.gallery-thumb.is-selected{
  border-color:var(--ink)
}
.gallery-thumb img{
  width:100%;
  height:100%;
  object-fit:cover
}
.gallery-thumbnails>span{
  font-size:8px;
  letter-spacing:.1em;
  margin-left:10px
}
.woocommerce .calivista-product .product-summary{
  float:none;
  width:auto;
  margin:0;
  padding:34px var(--gutter) 46px
}
.back-link{
  display:inline-block;
  font-size:10px;
  margin-bottom:33px;
  color:var(--muted)
}
.product-summary>.eyebrow{
  margin-bottom:15px
}
.woocommerce .calivista-product .product_title{
  font-size:clamp(48px,5vw,70px);
  line-height:1.1;
  margin-bottom:13px;
  letter-spacing:-.05em
}
.product-descriptor{
  font-size:17px;
  font-family:var(--serif);
  font-style:italic;
  letter-spacing:-.015em
}
.product-scene{
  font-size:12px;
  line-height:1.9;
  margin-top:20px;
  max-width:390px
}
.scent-family{
  display:inline-block;
  margin-top:21px;
  padding:6px 0;
  border-bottom:1px solid var(--line);
  font-size:9px;
  letter-spacing:.06em
}
.purchase-area{
  margin-top:33px
}
.purchase-area>.eyebrow{
  display:block;
  margin-bottom:10px
}
.woocommerce .calivista-product form.cart{
  margin-bottom:0
}
.woocommerce .calivista-product form.cart .variations{
  margin:0
}
.woocommerce .calivista-product form.cart .variations th{
  display:none
}
.woocommerce .calivista-product form.cart .variations td{
  padding:0;
  text-align:left;
  display:block
}
.woocommerce .calivista-product form.cart .variations select{
  width:100%;
  min-height:46px;
  border:1px solid var(--line);
  background:transparent;
  padding:10px;
  color:var(--ink)
}
.woocommerce .calivista-product form.cart .variations.enhanced-sizes select{
  position:absolute;
  width:1px;
  min-height:1px;
  height:1px;
  opacity:0;
  pointer-events:none
}
.size-options{
  display:flex;
  gap:9px;
  flex-wrap:wrap
}
.size-option{
  min-width:98px;
  min-height:46px;
  padding:10px 15px;
  background:transparent;
  border:1px solid #bec3b5;
  color:var(--ink);
  font-size:11px
}
.size-option[aria-pressed=true]{
  border-color:var(--green);
  background:var(--green);
  color:var(--paper)
}
.woocommerce .reset_variations{
  font-size:9px!important;
  display:inline-block;
  margin-top:10px
}
.woocommerce-variation.single_variation{
  margin:10px 0 15px;
  min-height:40px
}
.woocommerce-variation-price{
  display:inline-block
}
.woocommerce .calivista-product p.price,.woocommerce .calivista-product span.price{
  font-size:23px;
  color:var(--ink);
  font-family:var(--sans)
}
.woocommerce-variation-availability p.stock{
  font-size:10px;
  margin-top:7px;
  color:var(--green)
}
.woocommerce-variation-availability p.out-of-stock{
  color:#943c2d
}
.woocommerce .calivista-product form.cart .quantity{
  margin-right:10px
}
.woocommerce .quantity .qty{
  width:58px;
  height:53px;
  border:1px solid #aab3a4;
  background:transparent;
  border-radius:0;
  color:var(--ink);
  font-size:12px
}
.woocommerce .calivista-product form.cart .button{
  float:none;
  width:calc(100% - 68px);
  min-height:53px;
  justify-content:center;
  background:var(--green);
  color:var(--paper);
  font-weight:500;
  font-size:12px;
  border-radius:0
}
.purchase-note{
  font-size:9px;
  line-height:1.8;
  color:var(--muted);
  margin-top:15px
}
.scent-notes-mini{
  margin-top:28px;
  border-top:1px solid var(--line);
  padding-top:20px
}
.scent-notes-mini>p{
  font-size:10px;
  line-height:1.8;
  margin-top:9px
}
.scent-notes-mini>p>span{
  margin:0 7px
}
.product-story{
  display:grid;
  gap:27px;
  background:var(--stone)
}
.story-heading h2{
  font-size:48px;
  margin-top:18px
}
.story-content>p{
  font-family:var(--serif);
  font-size:24px;
  line-height:1.5;
  letter-spacing:-.015em
}
.note-pyramid{
  display:grid;
  gap:18px;
  padding:30px 0
}
.note-pyramid>div>p:last-child{
  font-size:12px;
  margin-top:5px
}
.story-content details{
  border-top:1px solid #c6cbbf
}
.story-content details:last-child{
  border-bottom:1px solid #c6cbbf
}
.story-content summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:18px 0;
  font-size:11px
}
.story-content summary::-webkit-details-marker{
  display:none
}
.story-content summary>span{
  font-size:18px
}
.story-content details[open] summary>span{
  transform:rotate(45deg)
}
.story-content details>p{
  font-size:11px;
  color:var(--muted);
  padding-bottom:20px;
  line-height:1.9
}
.related-section .section-heading{
  margin-bottom:35px
}
.related-section .underlink{
  align-self:start
}
.page-shell{
  min-height:60vh
}
.page-shell>h1{
  font-size:clamp(45px,6vw,75px);
  margin:20px 0 40px
}
.page-content{
  max-width:1200px
}
.page-shell>.button{
  margin-top:25px
}
.woocommerce ul.products{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  gap:28px;
  padding:0 var(--gutter) 70px
}
.woocommerce ul.products::before,.woocommerce ul.products::after{
  display:none
}
.woocommerce .woocommerce-products-header{
  padding:50px var(--gutter) 30px
}
.woocommerce .woocommerce-products-header h1{
  font-size:55px
}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{
  margin:20px var(--gutter) 35px;
  font-size:11px
}
.woocommerce-notices-wrapper:not(:empty){
  padding:15px var(--gutter)
}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{
  background:#eeeee4;
  color:var(--ink);
  font-size:12px;
  border-top-color:var(--green)
}
.woocommerce .woocommerce-message:before,.woocommerce .woocommerce-info:before{
  color:var(--green)
}
.woocommerce table.shop_table{
  border:1px solid var(--line);
  border-radius:0;
  font-size:12px
}
.woocommerce table.shop_table th{
  font-weight:600
}
.woocommerce .cart-collaterals .cart_totals h2,.woocommerce .col2-set h3,#order_review_heading{
  font-size:32px;
  margin-bottom:25px
}
.woocommerce-cart .cart-collaterals{
  margin-top:25px
}
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{
  padding:12px;
  border:1px solid #bfc5b8;
  background:#fffdf7;
  border-radius:0;
  font-size:13px
}
.woocommerce label{
  font-size:12px
}
.woocommerce form .form-row{
  margin-bottom:15px
}
.woocommerce-checkout #payment{
  background:#eeeee4;
  border-radius:0
}
.woocommerce-checkout #payment div.payment_box{
  background:#e1e5da
}
.woocommerce-checkout #payment div.payment_box:before{
  border-bottom-color:#e1e5da
}
.woocommerce-privacy-policy-text{
  font-size:11px
}
.woocommerce ul.order_details{
  padding:0
}
.woocommerce .woocommerce-order{
  font-size:13px
}
.woocommerce-error a,.woocommerce-info a,.woocommerce-message a{
  text-decoration:underline
}
.woocommerce .product-thumbnail img{
  width:65px!important
}
.woocommerce nav.woocommerce-pagination{
  padding:20px
}
.woocommerce-variation-add-to-cart-disabled button{
  opacity:.45!important
}
#add_payment_method .wc-proceed-to-checkout a.checkout-button,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  font-size:13px
}
.woocommerce .select2-container .select2-selection--single{
  height:44px;
  border-radius:0;
  border-color:#bfc5b8
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:42px
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
  height:42px
}
@media(min-width:600px){
  .hero-copy{
    padding-top:55px;
    padding-bottom:50px
  }
  .hero h1{
    font-size:80px
  }
  .hero-visual{
    aspect-ratio:1.5
  }
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px
  }
  .fragrance-card:last-child{
    grid-column:auto
  }
  .collection .fragrance-card:last-child{
    max-width:100%
  }
  .card-detail h3{
    font-size:28px
  }
  .footer-bottom{
    flex-direction:row;
    justify-content:space-between;
    align-items:start;
    gap:25px
  }
  .demo-disclosure{
    max-width:340px
  }
  .main-product-image{
    aspect-ratio:1.2
  }
  .main-product-image img{
    object-fit:contain
  }
  .note-pyramid{
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    padding:35px 0
  }
  .guide-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-bottom:1px solid var(--line)
  }
  .guide-item{
    border-bottom:0;
    padding:28px 20px 35px
  }
  .guide-item:first-child{
    padding-left:0
  }
  .guide-item+ .guide-item{
    border-left:1px solid var(--line)
  }
  .guide-item h3{
    font-size:27px;
    max-width:120px
  }
  .guide-item>span:last-child{
    top:auto;
    bottom:22px;
    right:20px
  }
}
@media(min-width:768px){
  .announcement{
    justify-content:space-between;
    padding:0 var(--gutter);
    font-size:8px
  }
  .announcement>span:first-child,.announcement>span:last-child{
    display:inline
  }
  .site-header{
    height:108px;
    padding:0 var(--gutter)
  }
  .wordmark{
    font-size:34px
  }
  .wordmark>span{
    font-size:9px;
    margin-bottom:6px
  }
  .primary-nav{
    display:flex;
    gap:26px
  }
  .primary-nav a{
    font-size:11px
  }
  .menu-toggle{
    display:none
  }
  .utility-nav{
    gap:25px
  }
  .guide-link{
    display:inline;
    font-size:11px
  }
  .bag-link>span{
    font-size:11px
  }
  .hero{
    grid-template-columns:.95fr 1.05fr
  }
  .hero-copy{
    padding:60px 35px 45px var(--gutter)
  }
  .hero h1{
    font-size:clamp(63px,7.2vw,95px)
  }
  .hero-intro{
    font-size:12px
  }
  .hero-visual{
    aspect-ratio:auto;
    min-height:570px
  }
  .hero-visual>img{
    object-position:63% center
  }
  .hero-footnote{
    display:flex;
    align-items:center;
    gap:15px;
    margin-top:46px
  }
  .hero-footnote p{
    font-size:8px;
    line-height:1.8;
    letter-spacing:.04em
  }
  .tiny-rule{
    width:26px;
    border-top:1px solid
  }
  .opening-line{
    min-height:75px;
    font-size:9px
  }
  .opening-line>span:last-child{
    display:inline
  }
  .section-shell{
    padding-top:95px;
    padding-bottom:95px
  }
  .section-heading{
    flex-direction:row;
    align-items:end;
    justify-content:space-between;
    gap:40px;
    margin-bottom:42px
  }
  .section-heading>p{
    font-size:12px;
    max-width:300px;
    padding-bottom:4px
  }
  .desktop-break{
    display:inline
  }
  .product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px
  }
  .card-detail h3{
    font-size:30px
  }
  .card-descriptor{
    font-size:10px
  }
  .card-meta{
    font-size:9px
  }
  .world-section{
    grid-template-columns:1fr 1fr
  }
  .world-image{
    margin:35px 0 35px 35px;
    aspect-ratio:auto;
    min-height:450px
  }
  .world-copy{
    align-self:center;
    padding:55px 50px
  }
  .world-copy h2{
    font-size:52px
  }
  .world-copy>p:not(.eyebrow){
    font-size:12px
  }
  .guide-item{
    padding-top:35px;
    padding-bottom:35px
  }
  .guide-item h3{
    font-size:34px;
    max-width:none
  }
  .guide-item>span:last-child{
    top:35px;
    bottom:auto
  }
  .footer-top{
    display:grid;
    grid-template-columns:1fr 2fr 1fr;
    align-items:start;
    gap:25px;
    padding:18px 0 55px
  }
  .footer-thought{
    font-size:52px
  }
  .footer-top .underlink{
    justify-self:end;
    white-space:nowrap;
    font-size:10px
  }
  .demo-disclosure{
    max-width:460px
  }
  .footer-bottom{
    font-size:9px
  }
  .product-stage{
    grid-template-columns:1.1fr 1fr;
    align-items:start
  }
  .main-product-image{
    aspect-ratio:4/5.4
  }
  .woocommerce .calivista-product .product-summary{
    padding:40px 36px 40px
  }
  .product-summary>.eyebrow{
    font-size:9px
  }
  .back-link{
    margin-bottom:35px
  }
  .woocommerce .calivista-product .product_title{
    font-size:54px
  }
  .product-scene{
    font-size:11px
  }
  .product-descriptor{
    font-size:20px
  }
  .gallery-thumbnails{
    padding:16px 25px
  }
  .purchase-area{
    margin-top:29px
  }
  .product-story{
    grid-template-columns:1fr 1.4fr;
    gap:70px
  }
  .story-heading h2{
    font-size:56px
  }
  .story-content>p{
    font-size:27px
  }
  .related-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .related-grid .fragrance-card{
    max-width:none
  }
  .woocommerce .woocommerce-products-header{
    padding-top:75px
  }
  .page-shell{
    padding-top:65px
  }
}
@media(min-width:1024px){
  .site-header{
    height:114px
  }
  .wordmark{
    font-size:37px
  }
  .primary-nav a,.guide-link,.bag-link>span{
    font-size:12px
  }
  .primary-nav{
    gap:32px
  }
  .hero{
    grid-template-columns:44% 56%;
    margin:0 24px
  }
  .hero-copy{
    padding:65px 40px 42px calc(var(--gutter) - 24px)
  }
  .hero h1{
    font-size:clamp(78px,7.1vw,112px);
    margin:26px 0
  }
  .hero-intro{
    font-size:13px;
    max-width:285px;
    margin-bottom:29px
  }
  .hero-visual{
    min-height:650px
  }
  .hero .button{
    min-width:225px;
    font-size:11px
  }
  .hero-footnote{
    margin-top:55px
  }
  .hero-footnote p{
    font-size:8px
  }
  .hero-visual>img{
    object-position:61% center
  }
  .image-caption{
    inset:auto 26px 23px;
    font-size:8px
  }
  .image-caption>span:last-child{
    display:block
  }
  .section-heading h2{
    font-size:68px
  }
  .section-heading>p{
    font-size:13px
  }
  .product-grid{
    gap:30px
  }
  .card-detail h3{
    font-size:37px
  }
  .card-detail{
    margin-top:24px
  }
  .card-descriptor{
    font-size:12px
  }
  .card-meta{
    font-size:10px
  }
  .card-study{
    font-size:9px;
    top:23px;
    left:23px
  }
  .world-copy{
    padding:65px 12%
  }
  .world-copy h2{
    font-size:64px
  }
  .world-copy>p:not(.eyebrow){
    font-size:13px
  }
  .world-image{
    min-height:530px;
    margin:44px 0 44px 44px
  }
  .footer-thought{
    font-size:66px
  }
  .footer-top .underlink{
    font-size:11px
  }
  .footer-top{
    padding-bottom:70px
  }
  .product-stage{
    grid-template-columns:53% 47%;
    padding:0 24px
  }
  .main-product-image{
    aspect-ratio:4/4.7;
    max-height:790px
  }
  .woocommerce .calivista-product .product-summary{
    padding:44px 50px 35px
  }
  .woocommerce .calivista-product .product_title{
    font-size:68px
  }
  .product-scene{
    font-size:12px
  }
  .product-descriptor{
    font-size:22px
  }
  .back-link{
    margin-bottom:40px
  }
  .product-summary>.eyebrow{
    font-size:10px
  }
  .product-story{
    grid-template-columns:1fr 1.25fr;
    gap:120px
  }
  .story-heading h2{
    font-size:65px
  }
  .story-content>p{
    font-size:31px
  }
  .note-pyramid>div>p:last-child{
    font-size:12px
  }
  .gallery-thumbnails{
    padding:18px 0
  }
  .product-summary .purchase-area{
    max-width:420px
  }
  .scent-notes-mini{
    max-width:420px
  }
}
@media(min-width:1440px){
  .hero-copy{
    padding-top:78px
  }
  .hero-visual{
    min-height:735px
  }
  .hero-footnote{
    margin-top:69px
  }
  .hero h1{
    font-size:108px
  }
  .hero-intro{
    font-size:14px
  }
  .section-shell{
    padding-top:115px;
    padding-bottom:115px
  }
  .product-grid{
    gap:38px
  }
  .woocommerce .calivista-product .product-summary{
    padding:60px 11%
  }
  .world-copy h2{
    font-size:76px
  }
}
@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto
  }
  *,*::before,*::after{
    transition:none!important;
    animation:none!important
  }
}
/* Explicit flex layout for the semantic product article, independent of WooCommerce's div selectors. */
.woocommerce .calivista-product .woocommerce-variation-add-to-cart{
  display:flex;
  align-items:stretch;
  gap:10px
}
.woocommerce .calivista-product form.cart .quantity{
  float:none;
  margin:0;
  flex:0 0 58px
}
.woocommerce .calivista-product form.cart .single_add_to_cart_button{
  flex:1;
  width:auto;
  min-width:0
}
.card-price>span:first-child{
  font-size:9px;
  color:var(--muted)
}
.woocommerce ul.products .calivista-loop-item{
  list-style:none;
  min-width:0
}
