/* Category-first browsing. The approved product cards remain unchanged. */
html.routing{scroll-behavior:auto!important}
[hidden]{display:none!important}
.category-section{padding-top:45px;padding-bottom:64px;scroll-margin-top:110px}
.category-section .gallery-heading{margin-bottom:37px}
.category-section .gallery-heading>p{font-size:16px;line-height:1.8}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.category-tile{display:block;position:relative;isolation:isolate;min-width:0;height:255px;border:1px solid #ffffff20;border-radius:9px;overflow:hidden;background:linear-gradient(135deg,#21191b,#131112 70%);transition:border-color .45s,box-shadow .55s,translate .55s,opacity .7s,transform .7s}
.category-tile:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#110d0eb8 0%,#110d0e50 44%,transparent 75%);z-index:2;pointer-events:none}
.category-tile:after{content:'';position:absolute;inset:9px;border:1px solid #ffffff05;border-radius:4px;z-index:3;pointer-events:none;transition:border-color .45s}
.category-tile:hover{border-color:#a84b587d;box-shadow:0 23px 45px -26px #ac1d4159;translate:0 -3px}
.category-tile:hover:after{border-color:#ca7d7e24}
.category-index{position:absolute;left:25px;top:22px;font-size:10px;letter-spacing:2px;color:#9a7471;z-index:4}
.category-tile-copy{position:absolute;left:26px;bottom:32px;right:28%;z-index:4;pointer-events:none}
.category-caption{display:block;font-size:11px;letter-spacing:.25px;color:#b9a39a;margin-bottom:12px;line-height:1.6;max-width:180px}
.category-tile h3{font-size:36px;letter-spacing:-1px;line-height:1.06;margin:0 0 16px;text-wrap:balance;max-width:255px;color:#f0e7de}
.category-count{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#d8b6ae}
.category-count:before{content:'';width:15px;height:1px;background:#b45862}
.category-art{position:absolute;inset:0 0 0 38%;z-index:1;pointer-events:none;perspective:700px}
.category-aura{position:absolute;inset:12px -15% 0 -25%;background:radial-gradient(ellipse at 62% 50%,var(--category-light,#9c253c60),transparent 65%);transition:opacity .7s;opacity:.8}
.category-object{position:absolute;bottom:21px;right:23%;height:214px;max-width:80%;width:auto;object-fit:contain;filter:drop-shadow(9px 18px 12px #0009);z-index:2;transform:rotate(-7deg);transform-origin:50% 90%;transition:transform .85s cubic-bezier(.2,.7,.2,1),filter .85s}
.category-object.supporting{right:1%;bottom:17px;height:175px;opacity:.57;transform:rotate(11deg);z-index:1;filter:drop-shadow(5px 14px 10px #000a) saturate(.7)}
.category-object.glass{height:187px;max-width:99%;right:10%;bottom:22px;transform:rotate(-6deg)}
.category-object.supporting.glass{height:142px;max-width:70%;right:-9%;bottom:20px;transform:rotate(12deg);opacity:.45}
.category-tile:hover .category-object.leading{transform:translateY(-7px) rotate(-2deg) scale(1.035);filter:drop-shadow(12px 21px 15px #0009)}
.category-tile:hover .category-object.supporting{transform:translateY(-3px) rotate(7deg)}
.category-plinth{position:absolute;right:1%;left:2%;bottom:10px;height:16px;border-radius:50%;background:radial-gradient(ellipse,#050405 30%,transparent 70%);filter:blur(4px)}
.category-arrow{position:absolute;right:23px;bottom:25px;z-index:5;display:grid;place-items:center;width:42px;height:42px;border:1px solid #d3a4a838;border-radius:50%;color:#ddb9b2;font-size:22px;background:#17121377;transition:background .4s,transform .4s}
.category-tile:hover .category-arrow{background:#732334b5;transform:rotate(4deg)}
.tone-amber{--category-light:#9e5c234a}
.tone-crimson{--category-light:#b72c4359}
.tone-silver{--category-light:#9d9c9a38}
.tone-olive{--category-light:#69714742}
.tone-copper{--category-light:#a9552b4a}
.tone-blue{--category-light:#21617a57}
.category-art>svg{position:absolute;width:190px;height:210px;right:10px;bottom:12px;stroke:#d6bcb2;color:#cfb1a5;opacity:.75;filter:drop-shadow(0 10px 15px #0007);transform:rotate(8deg);transition:transform .7s,opacity .7s}
.category-monogram{position:absolute;right:12px;bottom:20px;font:400 120px/1.5 var(--serif);color:#b77c7c77;letter-spacing:-13px;transform:rotate(6deg);transition:transform .7s,color .7s}
.category-tile.illustrated .category-art{left:47%}
.category-tile:hover .category-art>svg{transform:translateY(-5px) rotate(1deg);opacity:.95}
.category-tile:hover .category-monogram{transform:translateY(-4px) rotate(1deg);color:#d2a8a78c}
.reveal-ready .category-tile.reveal:not(.revealed){opacity:0;transform:translateY(22px)}
.category-products{padding-bottom:50px;min-height:65svh}
.category-return{position:sticky;top:88px;background:#090909ef;backdrop-filter:blur(16px);padding:13px 0;border-bottom:1px solid #ffffff1c;z-index:23}
.back-categories{display:inline-flex;align-items:center;gap:12px;font-size:14px;min-height:40px;color:#dac0b6;padding-right:12px}
.back-categories>span[aria-hidden]{font-size:22px;color:#c39892}
.back-categories:hover{color:white}
.category-product-heading{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;padding:36px 0 17px;animation:category-enter .5s ease}
.category-product-heading .eyebrow{margin-bottom:16px}
.category-product-heading h1{font-size:clamp(43px,5.3vw,72px);line-height:1.12;letter-spacing:-1.7px;margin:0 0 17px;outline:none}
.category-product-heading p:last-child{font-size:16px;color:#bda9a0;line-height:1.8;margin:0}
.category-product-heading .search-field{width:290px;max-width:40%;margin-bottom:8px;flex-shrink:0}
.category-results{font-size:14px;color:#bea49b;margin:4px 0 34px}
.category-product-group{margin-bottom:54px}
.category-product-group:last-child{margin-bottom:15px}
.product-group-title{font-size:31px;letter-spacing:-.65px;line-height:1.3;margin:0 0 25px;padding-top:10px;display:flex;gap:13px;align-items:center;color:#e0bdb3}
.product-group-title>span{font-family:var(--sans);font-size:12px;border:1px solid #ffffff23;border-radius:50%;min-width:27px;height:27px;display:grid;place-items:center;letter-spacing:0;color:#bda39a}
.category-gallery{margin-bottom:28px}
.category-gallery.one-product{grid-template-columns:minmax(0,1fr);max-width:440px}
.category-text-list{margin-top:10px}
.category-products .empty-results{padding:55px 5px}
.category-products .empty-results h3{font-size:35px;line-height:1.2}
.category-products .empty-results p{font-size:16px}
.category-products .empty-results button{font-size:14px;line-height:1.7}
.menu-note{border-top:1px solid #ffffff14;padding-top:25px;padding-bottom:25px;line-height:1.8}
/* Contain the supplied photographs without introducing extra product cropping. */
.card-photo img,.dialog-image img{object-fit:contain;object-position:center;max-width:100%;width:auto}
.detail-shot img{mask-image:none}
.card-photo{overflow:visible}
.category-gallery .card-visual{overflow:visible}
.category-gallery .card-photo img{max-width:84%;height:270px;max-height:285px}
.category-gallery .cocktail img{height:222px;max-width:90%;margin-top:35px}
.category-gallery .wide-bottle img{height:245px;max-width:84%;margin-top:25px}
.category-gallery .sour img{height:235px;max-width:91%;margin-top:30px}
.category-gallery .detail-shot img{max-width:88%;object-fit:contain}
.category-gallery .card-copy h3{min-height:62px}
.category-gallery .card-description{min-height:23px}
@keyframes category-enter{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media(min-width:1400px){.category-tile{height:280px}.category-object{height:238px}.category-object.supporting{height:197px}.category-object.glass{height:218px}.category-object.supporting.glass{height:172px}.category-tile h3{font-size:43px}.category-caption{font-size:12px}}
@media(max-width:1100px){
 .category-tile{height:242px}.category-tile h3{font-size:32px;max-width:215px}
 .category-tile-copy{left:23px;bottom:31px;right:26%}.category-caption{font-size:11px;max-width:160px}
 .category-art{left:41%}.category-object{height:202px;right:15%}.category-object.supporting{height:161px;right:-8%}
 .category-object.glass{height:172px;right:6%}.category-object.supporting.glass{height:131px;right:-13%}
 .category-art>svg{right:-17px;width:165px;height:192px}.category-monogram{font-size:105px;right:0}
 .category-gallery .card-photo img{height:250px;max-height:265px}
 .category-gallery .cocktail img{height:194px;margin-top:45px}.category-gallery .wide-bottle img{height:225px}.category-gallery .sour img{height:210px}
}
@media(max-width:760px){
 .header nav .nav-carta{font-size:14px;min-height:44px;display:flex;align-items:center}
 .welcome-actions{display:flex;flex-direction:row}.welcome-actions .primary-button{min-width:200px;min-height:53px;flex:0 1 100%;max-width:320px}
 .category-section{padding-top:43px;padding-bottom:40px;scroll-margin-top:94px}
 .category-section .gallery-heading{margin-bottom:28px}.category-section .gallery-heading>p{font-size:16px;margin:15px 0 0}
 .category-grid{grid-template-columns:1fr;gap:18px}
 .category-tile{height:205px;border-radius:7px}
 .category-index{top:17px;left:20px;font-size:10px;letter-spacing:1.6px}
 .category-tile-copy{left:21px;bottom:25px;right:29%}
 .category-caption{font-size:11px;max-width:160px;margin-bottom:10px}
 .category-tile h3{font-size:32px;max-width:225px;margin-bottom:13px;letter-spacing:-.7px}
 .category-count{font-size:14px}.category-count:before{width:11px}
 .category-art{left:42%}.category-object{height:175px;right:15%;bottom:12px;max-width:90%}
 .category-object.supporting{height:140px;right:-3%;bottom:9px}
 .category-object.glass{height:151px;right:6%;bottom:12px;max-width:100%}
 .category-object.supporting.glass{height:122px;right:-15%;bottom:9px}
 .category-arrow{width:37px;height:37px;right:18px;bottom:18px;font-size:22px}
 .category-aura{inset:7px -20% 0 -27%}.category-plinth{bottom:4px}
 .category-art>svg{height:177px;width:151px;right:-8px;bottom:3px}.category-monogram{font-size:91px;right:-1px;bottom:12px;letter-spacing:-11px}
 .category-tile.illustrated .category-art{left:49%}
 .category-return{top:74px;padding-block:8px}
 .back-categories{font-size:14px;min-height:44px;gap:10px}
 .category-products{padding-bottom:35px}
 .category-product-heading{display:block;padding-top:29px;padding-bottom:10px}
 .category-product-heading .eyebrow{font-size:11px;margin-bottom:13px}
 .category-product-heading h1{font-size:43px;line-height:1.15;letter-spacing:-1px;margin-bottom:14px}
 .category-product-heading p:last-child{font-size:16px;line-height:1.7}
 .category-product-heading .search-field{width:100%;max-width:100%;margin:23px 0 0}
 .category-results{font-size:14px;line-height:1.6;margin:12px 0 30px}
 .category-product-group{margin-bottom:38px}
 .product-group-title{font-size:27px;margin-bottom:23px;line-height:1.25;padding-top:7px}
 .category-gallery{grid-template-columns:1fr;gap:29px;scroll-margin-top:155px}
 .category-gallery.one-product{max-width:440px;grid-template-columns:1fr}
 .category-gallery .card-photo img{height:265px;max-height:280px;max-width:82%}
 .category-gallery .cocktail img{height:217px;max-width:90%;margin-top:43px}
 .category-gallery .wide-bottle img{height:236px;max-width:85%;margin-top:25px}
 .category-gallery .sour img{height:229px;max-width:91%;margin-top:33px}
 .category-gallery .card-copy h3{font-size:28px;min-height:0}
 .category-gallery .card-description{font-size:16px;min-height:0}
 .category-text-list{margin-top:5px}
 .category-products .search-field input{font-size:16px}
 .menu-note{font-size:13px;line-height:1.8;padding-top:22px;padding-bottom:19px}
 .menu-note a{font-size:13px}
}
@media(min-width:500px) and (max-width:760px){
 .category-grid{grid-template-columns:1fr 1fr;gap:17px}.category-tile{height:215px}
 .category-tile-copy{left:16px;bottom:22px;right:22%}.category-tile h3{font-size:28px;max-width:180px}
 .category-caption{font-size:10px;max-width:130px}.category-index{left:16px}
 .category-art{left:39%}.category-object{height:163px;right:3%;bottom:16px}.category-object.supporting{height:126px;right:-25%}
 .category-object.glass{height:130px;right:-2%;max-width:112%}.category-object.supporting.glass{right:-27%;height:108px}
 .category-art>svg{width:125px;height:160px;right:-17px}.category-monogram{font-size:79px;right:-9px}
 .category-arrow{width:33px;height:33px;right:12px;bottom:14px}
 .category-gallery{grid-template-columns:1fr 1fr;gap:25px 18px}
 .category-gallery .card-photo img{height:235px;max-height:250px}.category-gallery .cocktail img{height:185px}.category-gallery .wide-bottle img{height:210px}.category-gallery .sour img{height:200px}
 .category-gallery .card-copy h3{font-size:25px;min-height:60px}.category-gallery .card-description{font-size:15px;min-height:48px}
}
@media(max-width:360px){
 .category-tile{height:198px}.category-tile h3{font-size:29px;max-width:190px}
 .category-caption{font-size:10px;max-width:140px}.category-tile-copy{left:18px}
 .category-art{left:45%}.category-object{height:164px;right:5%}.category-object.supporting{height:130px;right:-17%}
 .category-object.glass{height:139px;right:0}.category-object.supporting.glass{height:112px;right:-25%}
 .category-arrow{right:13px}.category-product-heading h1{font-size:39px}
}
@media(prefers-reduced-motion:reduce){
 .category-tile,.category-object,.category-art>svg,.category-monogram{transition:none;animation:none}
 .reveal-ready .category-tile.reveal:not(.revealed){opacity:1;transform:none}
 .category-tile:hover,.category-tile:hover .category-object.leading,.category-tile:hover .category-object.supporting{translate:none}
}
.category-section{scroll-margin-top:0}
/* The beer PNGs contain wide transparent margins. Enlarge only their artwork. */
.card-photo.beer-bottle img,.dialog-image.beer-bottle img{scale:1.65;transform-origin:center}
.category-object.beer{scale:1.65;transform-origin:center}

/* Wide plates and bowls need a different arrangement than upright bottles. */
.category-tile:is([data-category="cafe"], [data-category="cigar-point"]) .category-art {
  left: 44%;
  right: 15px;
}
.category-tile:is([data-category="cafe"], [data-category="cigar-point"]) .category-object {
  width: 60%;
  max-width: 235px;
  height: auto;
  right: 40%;
  bottom: 18%;
}
.category-tile:is([data-category="cafe"], [data-category="cigar-point"]) .category-object.supporting {
  width: 49%;
  max-width: 190px;
  right: 0;
  bottom: 42%;
  opacity: .88;
}

.category-gallery .card-photo.cup img {
  width: 92%;
  max-width: 340px;
  height: auto;
  max-height: 230px;
  align-self: end;
  margin-bottom: 5px;
}
.dialog-image.cup img {
  width: 100%;
  max-width: 365px;
  height: auto;
  max-height: 260px;
  align-self: end;
  margin-bottom: 14px;
}
@media (max-width:760px) {
  .category-tile[data-category="cigar-point"] .category-art {
    left: 54%;
  }
  .dialog-image.cup img {
    max-height: 205px;
    margin-bottom: 16px;
  }
}
