/* catalog page type — classes extracted from catalog.dc.html */
.c1{container-type:inline-size;background:#F6EFE6;color:#2A1B17;font-family:'Work Sans',sans-serif;position:relative;}
.c2{position:absolute;top:0;left:0;right:0;z-index:20;padding:0 var(--cgx);color:#F6EFE6;background:linear-gradient(180deg,rgba(42,27,23,.7),rgba(42,27,23,0));}
.c3{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:80px;gap:24px;}
.c4{display:flex;align-items:center;gap:12px;text-decoration:none;color:#F6EFE6;justify-self:start;}
.c5{display:flex;flex-direction:column;}
.c6{font:500 24px/1 Cormorant,serif;letter-spacing:-.01em;}
.c7{font:400 11px/1 'Work Sans';letter-spacing:.2em;text-transform:uppercase;color:#D9C6BC;margin-top:4px;}
.c8{display:flex;gap:32px;justify-self:center;font:500 13px/1 'Work Sans';letter-spacing:.02em;}
.c9{color:#F6EFE6;text-decoration:none;padding:8px 0;border-bottom:1px solid #D9A08F;}
.c10{color:#F6EFE6;text-decoration:none;padding:8px 0;}
.c10:hover,.c10:focus-visible{color:#D9A08F;}
.c11{display:flex;align-items:center;gap:16px;justify-self:end;}
.c12{background:#B5271F;color:#fff;text-decoration:none;font:600 13px/1 'Work Sans';padding:13px 20px;transition:background .2s,transform .2s;}
.c12:hover,.c12:focus-visible{background:#9C1F18;transform:translateY(-1px);}
.c13{background:#2A1B17;color:#F6EFE6;padding:176px var(--cgx) 0;position:relative;isolation:isolate;overflow:clip;}
.c14{position:absolute;inset:0;z-index:0;}
.c15{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;filter:saturate(1.02) sepia(.12) contrast(1.04) brightness(.9);}
.c16{position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,27,23,.55) 0%,rgba(42,27,23,.3) 30%,rgba(42,27,23,.6) 62%,#2A1B17 100%),linear-gradient(90deg,rgba(42,27,23,.6) 0%,rgba(42,27,23,.2) 55%,rgba(42,27,23,.1) 100%);}
.c17{position:relative;z-index:2;display:grid;grid-template-columns:1fr 360px;gap:64px;align-items:end;}
.c18{margin:0;font:400 12px/1 'Work Sans';letter-spacing:.16em;text-transform:uppercase;color:#D9C6BC;display:flex;gap:14px;align-items:center;}
.c19{font:400 20px/1 Cormorant,serif;letter-spacing:0;text-transform:none;color:#D9A08F;}
.c20{margin:24px 0 0;font:400 clamp(44px,6.6cqw,84px)/.95 Cormorant,serif;letter-spacing:-.02em;text-wrap:balance;text-shadow:0 2px 30px rgba(42,27,23,.5);}
.c21{font-weight:500;color:#D9A08F;}
.c22{margin:24px 0 0;max-width:600px;font:400 clamp(16px,1.4cqw,18px)/1.5 'Work Sans';color:#E8D9C8;text-wrap:pretty;}
.c23{display:flex;gap:12px;align-items:center;margin-top:32px;flex-wrap:wrap;}
.c24{background:#B5271F;color:#fff;text-decoration:none;font:600 15px/1 'Work Sans';padding:18px 26px;transition:background .2s,transform .2s;}
.c24:hover,.c24:focus-visible{background:#9C1F18;transform:translateY(-1px);}
.c25{border:1px solid rgba(246,239,230,.55);color:#F6EFE6;text-decoration:none;font:500 15px/1 'Work Sans';padding:17px 24px;background:rgba(42,27,23,.3);transition:background .2s,color .2s;}
.c25:hover,.c25:focus-visible{background:#F6EFE6;color:#2A1B17;}
.c26{display:inline-flex;align-items:center;gap:10px;color:#D9A08F;text-decoration:none;font:500 12px/1 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;padding:17px 4px;border-bottom:1px solid transparent;transition:border-color .2s,color .2s;}
.c26:hover,.c26:focus-visible{border-bottom-color:#D9A08F;color:#F6EFE6;}
.c27{margin:24px 0 0;font:400 14px/1.5 'Work Sans';color:#D9C6BC;}
.c28{font-weight:500;color:#F6EFE6;}
.c29{background:rgba(42,27,23,.72);backdrop-filter:blur(14px);border:1px solid rgba(246,239,230,.14);padding:22px 24px;}
.c30{margin:0;font:400 11px/1 'Work Sans';letter-spacing:.16em;text-transform:uppercase;color:#D9C6BC;}
.c31{margin:12px 0 0;font:500 22px/1.25 Cormorant,serif;}
.c32{color:#D9A08F;}
.c33{display:inline-block;margin-top:14px;text-decoration:none;font:500 11px/1 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;color:#D9A08F;border-bottom:1px solid transparent;}
.c33:hover,.c33:focus-visible{border-bottom-color:#D9A08F;}
.c34{position:relative;z-index:2;margin:56px 0 0;padding:24px 0 72px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px;border-top:1px solid rgba(246,239,230,.2);}
.c35{margin:0;font:400 44px/1 Cormorant,serif;letter-spacing:-.02em;white-space:nowrap;}
.c36{margin-top:6px;font:400 12px/1.4 'Work Sans';color:#D9C6BC;}
.c37{color:#C9962C;font-size:.6em;vertical-align:.25em;margin-right:4px;}
.c38{font:400 12px/1 'JetBrains Mono';letter-spacing:.06em;color:#D9C6BC;margin-left:5px;}
.c39{position:sticky;top:0;z-index:50;background:rgba(246,239,230,.94);border-bottom:1px solid #D9CFC3;backdrop-filter:saturate(1.3) blur(9px);}
.c40{display:flex;gap:6px;overflow-x:auto;padding:10px var(--cgx);scrollbar-width:none;}
.c41{flex:none;text-decoration:none;color:#6E5B54;font:500 12px/1 'Work Sans';padding:9px 12px;border:1px solid #D9CFC3;border-radius:999px;transition:color .2s,border-color .2s,background .2s;}
.c41:hover,.c41:focus-visible{color:#2A1B17;border-color:#2A1B17;}
.c42{padding:64px var(--cgx) 96px;background-image:radial-gradient(rgba(166,75,42,.07) 1.3px,transparent 1.5px);background-size:24px 24px;}
.c43{display:flex;align-items:center;gap:10px;margin:0 0 22px;font:500 11px/1 'JetBrains Mono';letter-spacing:.2em;text-transform:uppercase;color:#A64B2A;}
.c44{font:400 26px/1 Cormorant,serif;color:#A64B2A;letter-spacing:0;}
.c45{width:34px;height:1px;background:#C9B9A8;display:inline-block;}
.c46{display:grid;grid-template-columns:360px 1fr;gap:64px;align-items:start;}
.c47{margin:0;font:400 clamp(34px,4.4cqw,56px)/1 Cormorant,serif;letter-spacing:-.01em;text-wrap:balance;}
.c48{font-weight:500;}
.c49{margin:26px 0 0;font:400 17px/1.6 'Work Sans';max-width:520px;}
.c50{margin:0;padding:0;list-style:none;display:grid;gap:0;border-top:1px solid #2A1B17;}
.c51{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid #D9CFC3;font:400 16px/1.55 'Work Sans';}
.c52{font:400 40px/1 Cormorant,serif;color:#A64B2A;}
.c53{font-weight:600;}
.c54{height:3px;margin:0 var(--cgx);background:linear-gradient(90deg,transparent,#C9B9A8 15%,#C9B9A8 85%,transparent);position:relative;}
.c55{position:absolute;inset:2px 0 0;height:1px;background:linear-gradient(90deg,transparent,#D9CFC3 15%,#D9CFC3 85%,transparent);}
.c56{padding:64px var(--cgx) 112px;}
.c57{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px 40px;}
.c58{margin:0;font:400 14px/1.5 'Work Sans';color:#6E5B54;max-width:360px;text-align:right;}
.c59{margin-top:36px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:16px 0;border-top:2px solid #2A1B17;border-bottom:1px solid #D9CFC3;}
.c60{font:500 11px/1 'JetBrains Mono';letter-spacing:.16em;text-transform:uppercase;color:#6E5B54;margin-right:6px;}
.c61{position:relative;display:inline-flex;cursor:pointer;}
.c62{display:inline-flex;align-items:center;min-height:36px;background:#3B241F;border:1px solid #3B241F;color:#F6EFE6;padding:0 14px;border-radius:999px;font:500 12px/1 'Work Sans';transition:background .2s,color .2s,border-color .2s;}
.c63{display:inline-flex;align-items:center;min-height:36px;background:#E8D9C8;border:1px solid #D9CFC3;color:#2A1B17;padding:0 14px;border-radius:999px;font:500 12px/1 'Work Sans';transition:background .2s,color .2s,border-color .2s;}
.c64{width:1px;height:22px;background:#D9CFC3;margin:0 6px;}
.c65{margin-left:auto;font:500 13px/1 'JetBrains Mono';color:#2A1B17;white-space:nowrap;}
.c66{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font:400 12px/1.4 'Work Sans';color:#6E5B54;}
.c67{display:inline-flex;align-items:center;gap:8px;}
.c68{width:10px;height:10px;background:#A64B2A;display:inline-block;}
.c69{width:10px;height:10px;background:#B58E3A;display:inline-block;}
.c70{width:10px;height:10px;background:#705E9D;display:inline-block;}
.c71{width:10px;height:10px;background:#8B6355;display:inline-block;}
.c72{width:10px;height:10px;background:#756660;display:inline-block;}
.c73{display:grid;grid-template-columns:repeat(auto-fill,minmax(256px,1fr));gap:40px 24px;margin-top:48px;align-items:start;}
.c74{position:relative;display:flex;flex-direction:column;border-top:3px solid #2A1B17;padding-top:18px;opacity:1;height:100%;transition:opacity .3s;}
.c74:hover,.c74:focus-visible{opacity:1;}
.c75{display:flex;justify-content:space-between;align-items:baseline;gap:12px;min-height:80px;}
.c76{margin:0;font:500 24px/1.1 Cormorant,serif;letter-spacing:-.01em;}
.c77{color:#2A1B17;text-decoration:underline;text-decoration-color:#D9CFC3;text-underline-offset:4px;transition:text-decoration-color .2s;}
.c77:hover,.c77:focus-visible{text-decoration-color:#A64B2A;}
.c78{font:500 13px/1 'JetBrains Mono';white-space:nowrap;}
.c79{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;margin-top:16px;background:#E8D9C8;}
.c80{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) sepia(.14);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .6s;}
.c81{position:absolute;left:0;top:12px;display:inline-flex;align-items:baseline;gap:6px;background:#8B6355;color:#F6EFE6;padding:8px 12px 8px 14px;}
.c82{font:500 22px/1 Cormorant,serif;letter-spacing:-.01em;}
.c83{font:500 11px/1 'JetBrains Mono';letter-spacing:.06em;opacity:.9;}
.c84{font:500 11px/1 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;color:#F6EFE6;text-shadow:0 1px 3px rgba(42,27,23,.6);}
.c85{width:28px;height:1px;background:#F6EFE6;}
.c86{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px;align-content:start;min-height:54px;font:400 14px/1.5 'Work Sans';color:#2A1B17;}
.c87{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:baseline;}
.c88{width:6px;height:6px;background:#2A1B17;display:inline-block;transform:translateY(-1px);}
.c89{margin:12px 0 0;position:relative;padding:10px 12px 10px 16px;background:#E8D9C8;border-radius:2px;font:400 13px/1.5 'Work Sans';color:#2A1B17;}
.c90{position:absolute;left:0;top:0;bottom:0;width:3px;background:#A64B2A;border-radius:2px 0 0 2px;}
.c91{flex:1;}
.c92{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #D9CFC3;}
.c93{font:400 14px/1 'Work Sans';white-space:nowrap;}
.c94{position:relative;display:inline-block;font-size:12px;letter-spacing:1px;color:#8B7A72;vertical-align:1px;}
.c95{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#C9962C;width:96%;}
.c96{color:#6E5B54;}
.c97{display:inline-block;background:#B5271F;color:#fff;text-decoration:none;font:600 12px/1 'Work Sans';padding:11px 14px;white-space:nowrap;transition:background .2s,transform .2s;}
.c97:hover,.c97:focus-visible{background:#9C1F18;transform:translateY(-1px);}
.c98{display:inline-block;margin-top:12px;text-decoration:none;font:500 11px/1 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;color:#8E3E22;border-bottom:1px solid transparent;transition:border-color .2s,color .2s;}
.c98:hover,.c98:focus-visible{color:#B5271F;border-bottom-color:#B5271F;}
.c99{position:absolute;top:-11px;right:0;font:600 11px/1 'JetBrains Mono';letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#3B241F;color:#F6EFE6;}
.c100{position:absolute;left:0;top:12px;display:inline-flex;align-items:baseline;gap:6px;background:#A64B2A;color:#F6EFE6;padding:8px 12px 8px 14px;}
.c101{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#C9962C;width:98%;}
.c103{position:absolute;top:-11px;right:0;font:600 11px/1 'JetBrains Mono';letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#C9962C;color:#2A1B17;}
.c104{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#C9962C;width:100%;}
.c105{position:absolute;top:-11px;right:0;font:600 11px/1 'JetBrains Mono';letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#E8D9C8;color:#2A1B17;}
.c106{position:absolute;left:0;top:12px;display:inline-flex;align-items:baseline;gap:6px;background:#705E9D;color:#F6EFE6;padding:8px 12px 8px 14px;}
.c107{font:400 14px/1 'Work Sans';color:#6E5B54;}
.c108{position:relative;display:flex;flex-direction:column;border-top:3px solid #8B7A72;padding-top:18px;opacity:0.78;height:100%;transition:opacity .3s;}
.c108:hover,.c108:focus-visible{opacity:1;}
.c109{position:absolute;left:0;top:12px;display:inline-flex;align-items:baseline;gap:6px;background:#756660;color:#F6EFE6;padding:8px 12px 8px 14px;}
.c110{width:6px;height:6px;background:#8B7A72;display:inline-block;transform:translateY(-1px);}
.c111{margin:40px 0 0;font:400 12px/1.5 'JetBrains Mono';color:#6E5B54;letter-spacing:.02em;}
.c112{padding:64px var(--cgx) 112px;background-image:repeating-linear-gradient(0deg,rgba(166,75,42,.05) 0 1px,transparent 1px 26px);}
.c113{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 40px;}
.c114{margin:0;font:400 14px/1.5 'Work Sans';color:#6E5B54;max-width:400px;text-align:right;}
.c115{list-style:none;margin:40px 0 0;padding:0;display:grid;gap:0;border-top:2px solid #2A1B17;}
.c116{display:grid;grid-template-columns:380px 1fr 150px;gap:0 20px;align-items:center;padding:12px 0;border-bottom:1px solid #D9CFC3;opacity:1;}
.c117{font:500 17px/1.2 Cormorant,serif;color:#2A1B17;text-decoration:none;letter-spacing:-.01em;display:flex;align-items:center;gap:10px;min-width:0;}
.c117:hover,.c117:focus-visible{color:#A64B2A;}
.c118{width:8px;height:8px;flex:none;background:#8B6355;}
.c119{min-width:0;}
.c120{position:relative;height:14px;background:#E8D9C8;display:block;}
.c121{position:absolute;left:0;top:0;bottom:0;width:2%;background:#8B6355;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c122{font:500 15px/1 'JetBrains Mono';text-align:right;}
.c123{display:block;margin-top:4px;font:400 11px/1.3 'JetBrains Mono';color:#6E5B54;}
.c124{width:8px;height:8px;flex:none;background:#A64B2A;}
.c125{position:absolute;left:0;top:0;bottom:0;width:13%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c126{display:grid;grid-template-columns:380px 1fr 150px;gap:0 20px;align-items:center;padding:12px 0;border-bottom:1px solid #D9CFC3;opacity:0.6;}
.c127{width:8px;height:8px;flex:none;background:#756660;}
.c128{position:absolute;left:0;top:0;bottom:0;width:14%;background:#756660;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c129{position:absolute;left:0;top:0;bottom:0;width:14%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c130{position:absolute;left:0;top:0;bottom:0;width:15%;background:#8B6355;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c131{position:absolute;left:0;top:0;bottom:0;width:17%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c132{position:absolute;left:0;top:0;bottom:0;width:20%;background:#756660;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c133{position:absolute;left:0;top:0;bottom:0;width:20%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c134{position:absolute;left:0;top:0;bottom:0;width:28%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c135{width:8px;height:8px;flex:none;background:#B58E3A;}
.c136{position:absolute;left:0;top:0;bottom:0;width:31%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c137{position:absolute;left:0;top:0;bottom:0;width:37%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c138{position:absolute;left:0;top:0;bottom:0;width:38%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c139{position:absolute;left:0;top:0;bottom:0;width:47%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c140{position:absolute;left:0;top:0;bottom:0;width:72%;background:#756660;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c141{position:absolute;left:0;top:0;bottom:0;width:75%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c142{width:8px;height:8px;flex:none;background:#705E9D;}
.c143{position:absolute;left:0;top:0;bottom:0;width:100%;background:#705E9D;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c144{display:grid;grid-template-columns:380px 1fr 150px;gap:0 20px;align-items:center;padding:12px 0;border-bottom:1px solid #D9CFC3;}
.c145{font:500 17px/1.2 Cormorant,serif;color:#2A1B17;text-decoration:none;display:flex;align-items:center;gap:10px;min-width:0;}
.c145:hover,.c145:focus-visible{color:#A64B2A;}
.c146{width:8px;height:8px;flex:none;background:#8B7A72;}
.c147{position:absolute;left:15%;width:8%;top:0;bottom:0;background:repeating-linear-gradient(90deg,#8B7A72 0 6px,transparent 6px 10px);}
.c148{font:500 15px/1 'JetBrains Mono';text-align:right;white-space:nowrap;}
.c149{display:flex;flex-wrap:wrap;gap:8px 22px;margin:18px 0 0;font:400 12px/1.4 'Work Sans';color:#6E5B54;}
.c150{width:18px;height:6px;background:repeating-linear-gradient(90deg,#8B7A72 0 4px,transparent 4px 7px);display:inline-block;}
.c151{margin:24px 0 0;font:400 14px/1.5 'Work Sans';color:#6E5B54;max-width:720px;}
.c152{padding:64px var(--cgx) 112px;background-image:url(&quot;data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cg fill='none' stroke='%23A64B2A' stroke-opacity='0.055' stroke-width='1'%3E%3Cpath d='M-10 46 Q37 20 75 46 T160 46'/%3E%3Cpath d='M-10 90 Q37 64 75 90 T160 90'/%3E%3Cpath d='M-10 134 Q37 108 75 134 T160 134'/%3E%3C/g%3E%3C/svg%3E&quot;);}
.c153{margin:0;font:400 14px/1.5 'Work Sans';color:#6E5B54;max-width:380px;text-align:right;}
.c154{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:40px;align-items:stretch;}
.c155{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:420px;background:#3B241F;color:#F6EFE6;text-decoration:none;overflow:hidden;padding:28px;transition:transform .35s cubic-bezier(.2,.7,.2,1);}
.c155:hover,.c155:focus-visible{transform:translateY(-4px);}
.c156{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.85) sepia(.14) brightness(.85);transition:transform .8s cubic-bezier(.2,.7,.2,1);}
.c157{position:absolute;top:0;bottom:0;left:50%;width:14px;margin-left:-7px;background:linear-gradient(180deg,#D9A08F,#A64B2A);opacity:.85;transition:width .45s cubic-bezier(.2,.7,.2,1),margin-left .45s cubic-bezier(.2,.7,.2,1),opacity .45s;}
.c158{position:absolute;inset:0;background:linear-gradient(180deg,rgba(59,36,31,.1) 0%,rgba(59,36,31,.25) 40%,rgba(59,36,31,.96) 100%);}
.c159{position:absolute;left:28px;top:24px;font:500 11px/1 'JetBrains Mono';letter-spacing:.16em;text-transform:uppercase;color:#D9A08F;}
.c160{position:relative;font:400 clamp(30px,3.4cqw,44px)/1 Cormorant,serif;letter-spacing:-.015em;}
.c161{position:relative;margin-top:12px;max-width:440px;font:400 14px/1.5 'Work Sans';color:#E8D9C8;}
.c162{position:relative;margin-top:18px;display:inline-flex;align-items:center;gap:12px;}
.c163{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(246,239,230,.6);padding:12px 16px;font:500 12px/1 'Work Sans';letter-spacing:.02em;color:#F6EFE6;background:rgba(42,27,23,.35);}
.c164{font:400 12px/1 'Work Sans';color:#D9C6BC;}
.c165{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(5,1fr);border-top:1px solid #2A1B17;}
.c166{border-bottom:1px solid #D9CFC3;}
.c167{display:grid;grid-template-columns:44px 1fr auto 40px;gap:16px;align-items:center;padding:16px 8px 16px 0;text-decoration:none;color:#2A1B17;min-height:64px;transition:background .2s,padding-left .3s;}
.c167:hover,.c167:focus-visible{background:#E8D9C8;padding-left:12px;}
.c168{font:400 26px/1 Cormorant,serif;color:#A64B2A;}
.c169{display:block;font:500 21px/1.15 Cormorant,serif;letter-spacing:-.01em;text-decoration:underline;text-decoration-color:#D9CFC3;text-underline-offset:4px;}
.c170{display:block;margin-top:4px;font:400 13px/1.4 'Work Sans';color:#6E5B54;}
.c171{font:500 11px/1 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;color:#8E3E22;}
.c172{text-align:right;}
.c173{display:block;font:500 20px/1 Cormorant,serif;letter-spacing:-.01em;white-space:nowrap;}
.c174{display:block;margin-top:4px;font:500 11px/1 'JetBrains Mono';letter-spacing:.12em;text-transform:uppercase;color:#6E5B54;white-space:nowrap;}
.c175{width:36px;height:36px;border:1px solid #2A1B17;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:400 18px/1 'Work Sans';color:#2A1B17;transition:background .2s,color .2s,transform .3s;}
.c176{margin:0;font:400 clamp(34px,4.4cqw,56px)/1 Cormorant,serif;letter-spacing:-.01em;text-wrap:balance;max-width:820px;}
.c177{font-weight:600;color:#2A1B17;}
.c178{width:100%;border-collapse:collapse;margin-top:40px;font:400 15px/1.4 'Work Sans';}
.c179{border-bottom:2px solid #2A1B17;font:400 11px/1 'Work Sans';letter-spacing:.14em;text-transform:uppercase;color:#6E5B54;text-align:left;}
.c180{padding:0 0 12px;}
.c181{all:unset;cursor:pointer;font:inherit;color:inherit;}
.c181:hover,.c181:focus-visible{color:#A64B2A;}
.c182{display:inline-block;min-width:.7em;}
.c183{padding:0 12px 12px;}
.c184{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.c185{border-bottom:1px solid #D9CFC3;transition:background .2s;color:#2A1B17;}
.c186{padding:16px 0;}
.c187{display:flex;gap:14px;align-items:center;}
.c188{width:8px;height:44px;flex:none;background:#B58E3A;}
.c189{font:500 20px/1.15 Cormorant,serif;color:inherit;text-decoration:underline;text-decoration-color:#D9CFC3;text-underline-offset:4px;letter-spacing:-.01em;transition:text-decoration-color .2s;}
.c189:hover,.c189:focus-visible{text-decoration-color:#A64B2A;}
.c190{padding:16px 12px;font:400 13px/1 'JetBrains Mono';white-space:nowrap;}
.c191{padding:16px 12px;font:500 18px/1 'JetBrains Mono';white-space:nowrap;}
.c192{padding:16px 12px;color:#6E5B54;}
.c193{padding:16px 12px;white-space:nowrap;}
.c194{padding:16px 0;text-align:right;}
.c195{display:inline-block;background:#B5271F;color:#fff;text-decoration:none;font:600 12px/1 'Work Sans';padding:11px 14px;transition:background .2s,transform .2s;}
.c195:hover,.c195:focus-visible{background:#9C1F18;transform:translateY(-1px);}
.c196{margin-top:4px;font:400 12px/1.4 'Work Sans';color:#6E5B54;}
.c197{border-bottom:1px solid #D9CFC3;transition:background .2s;color:#6E5B54;}
.c198{width:8px;height:44px;flex:none;background:#756660;}
.c199{width:8px;height:44px;flex:none;background:#A64B2A;}
.c200{width:8px;height:44px;flex:none;background:#8B6355;}
.c201{width:8px;height:44px;flex:none;background:#705E9D;}
.c202{width:8px;height:44px;flex:none;background:#8B7A72;}
.c203{display:inline-block;border:1px solid #2A1B17;color:#2A1B17;text-decoration:none;font:500 12px/1 'Work Sans';padding:10px 14px;transition:background .2s,color .2s;}
.c203:hover,.c203:focus-visible{background:#2A1B17;color:#F6EFE6;}
.c204{margin:28px 0 0;font:400 14px/1.5 'Work Sans';color:#6E5B54;max-width:640px;}
.c205{padding:64px var(--cgx) 112px;background-image:repeating-linear-gradient(45deg,rgba(166,75,42,.05) 0 1px,transparent 1px 16px);}
.c206{display:grid;grid-template-columns:360px 1fr;gap:48px 64px;align-items:start;}
.c207{margin:26px 0 0;font:400 17px/1.6 'Work Sans';max-width:480px;}
.c208{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;}
.c209{position:relative;padding:18px 18px 20px 22px;border-radius:2px;background:#E8D9C8;}
.c210{font:400 11px/1 'Work Sans';letter-spacing:.14em;text-transform:uppercase;color:#6E5B54;}
.c211{margin:10px 0 0;font:500 24px/1.15 Cormorant,serif;}
.c212{margin:10px 0 0;font:400 14px/1.55 'Work Sans';}
.c213{display:grid;grid-template-columns:360px 1fr;gap:32px 64px;align-items:start;}
.c214{margin-top:24px;border:1px solid #2A1B17;background:none;color:#2A1B17;font:500 13px/1 'Work Sans';padding:12px 16px;cursor:pointer;min-height:44px;transition:background .2s,color .2s;}
.c214:hover,.c214:focus-visible{background:#2A1B17;color:#F6EFE6;}
.c215{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;border-top:1px solid #2A1B17;align-content:start;}
.c216{border-bottom:1px solid #D9CFC3;padding:12px 0;}
.c217{font:500 20px/1.2 Cormorant,serif;display:flex;justify-content:space-between;gap:12px;min-height:36px;align-items:center;transition:color .2s;}
.c217:hover,.c217:focus-visible{color:#A64B2A;}
.c218{font:400 22px/1 Cormorant,serif;color:#A64B2A;}
.c219{margin:6px 0 0;font:400 14px/1.55 'Work Sans';color:#6E5B54;}
.c220{padding:0 var(--cgx) 112px;background-image:url(&quot;data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cg fill='none' stroke='%23A64B2A' stroke-opacity='0.055' stroke-width='1'%3E%3Cpath d='M-10 46 Q37 20 75 46 T160 46'/%3E%3Cpath d='M-10 90 Q37 64 75 90 T160 90'/%3E%3Cpath d='M-10 134 Q37 108 75 134 T160 134'/%3E%3C/g%3E%3C/svg%3E&quot;);}
.c221{display:flex;align-items:center;gap:10px;margin:0 0 22px;padding-top:64px;font:500 11px/1 'JetBrains Mono';letter-spacing:.2em;text-transform:uppercase;color:#A64B2A;}
.c222{display:grid;grid-template-columns:1fr 160px 1fr;background:#E8D9C8;min-height:360px;}
.c223{padding:56px 48px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;}
.c224{margin:0;font:400 clamp(36px,5cqw,64px)/.95 Cormorant,serif;letter-spacing:-.015em;text-wrap:balance;}
.c225{margin:0;font:400 16px/1.5 'Work Sans';color:#6E5B54;max-width:380px;}
.c226{background:linear-gradient(180deg,#D9A08F 0%,#C8873F 55%,#A64B2A 100%);position:relative;min-height:120px;}
.c227{position:absolute;left:0;top:0;bottom:0;width:38%;background:#57352C;}
.c228{position:absolute;right:0;top:0;bottom:0;width:38%;background:#57352C;}
.c229{padding:56px 48px;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;align-items:flex-start;}
.c230{font:400 clamp(44px,5.6cqw,72px)/.9 Cormorant,serif;letter-spacing:-.02em;}
.c231{font:400 13px/1.4 'Work Sans';color:#6E5B54;}
.c232{padding:56px var(--cgx) 40px;border-top:1px solid #D9CFC3;}
.c233{display:grid;grid-template-columns:300px 1fr;gap:40px 64px;}
.c234{display:flex;align-items:center;gap:10px;font:500 22px/1 Cormorant,serif;}
.c235{font-weight:400;}
.c236{margin:16px 0 0;font:400 13px/1.55 'Work Sans';color:#6E5B54;}
.c237{margin-top:20px;font:400 12px/1 'JetBrains Mono';color:#6E5B54;}
.c238{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font:400 13px/1.5 'Work Sans';}
.c239{text-decoration:none;border-bottom:1px solid #D9CFC3;transition:border-color .2s,color .2s;}
.c239:hover,.c239:focus-visible{border-color:#A64B2A;color:#2A1B17;}
.c240{margin-top:40px;display:flex;justify-content:space-between;gap:16px;font:400 12px/1 'Work Sans';color:#6E5B54;}
.c241{font:italic 500 16px/1 Cormorant,serif;color:#A64B2A;}
.c242{position:absolute;left:0;top:0;bottom:0;width:45%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c243{position:absolute;left:0;top:0;bottom:0;width:51%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c244{position:absolute;left:0;top:0;bottom:0;width:63%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c245{position:absolute;left:0;top:0;bottom:0;width:70%;background:#756660;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c246{position:absolute;left:0;top:0;bottom:0;width:71%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c247{position:absolute;left:0;top:0;bottom:0;width:100%;background:#A64B2A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c248{position:absolute;left:53%;width:30%;top:0;bottom:0;background:repeating-linear-gradient(90deg,#8B7A72 0 6px,transparent 6px 10px);}
.c249{background:#A64B2A;}
.c250{width:98%;}
.c251{width:96%;}
.c252{background:#B58E3A;}
.c253{position:absolute;left:0;top:0;bottom:0;width:82%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c254{position:absolute;left:0;top:0;bottom:0;width:100%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c255{position:absolute;left:40%;width:22%;top:0;bottom:0;background:repeating-linear-gradient(90deg,#8B7A72 0 6px,transparent 6px 10px);}
.c256{width:100%;}
.c257{position:absolute;left:0;top:0;bottom:0;width:52%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c258{position:absolute;left:0;top:0;bottom:0;width:63%;background:#B58E3A;transition:width .5s cubic-bezier(.2,.7,.2,1);}
.c259{position:absolute;left:20%;width:11%;top:0;bottom:0;background:repeating-linear-gradient(90deg,#8B7A72 0 6px,transparent 6px 10px);}
.c102{position:absolute;left:0;top:12px;display:inline-flex;align-items:baseline;gap:6px;background:#B58E3A;color:#2A1B17;padding:8px 12px 8px 14px;}

/* ======================================================================
   CATALOG page type · extends THE SLIT (homepage manifesto applies verbatim).
   ADDED, and why — nothing else is new:
   · filter chips: checkbox/radio + :has()  — JS-off filtering; the one rule set
     that cannot be inline. Chips reuse .pt-tag (sand pill); chosen = wall.
   · "shown" CSS counter — the count survives with JS off.
   · log price axis — $15 and $669 on one honest scale, drawn on the
     route-map panel (wall ground, corner brackets, mono labels).
   · group header = the numbered kicker with a letter (A–E) instead of a number.
   · quiet group — same card anatomy at 78% opacity with the reason printed.
   ====================================================================== */
a{color:#7A4A22;}a:hover{color:#2A1B17;}
details>summary{list-style:none;cursor:pointer;}details>summary::-webkit-details-marker{display:none;}
.cat:has(.f-rum:checked) article.tour[data-rum="0"],
.cat:has(.f-sea:checked) article.tour[data-sea="0"],
.cat:has(.f-priv:checked) article.tour[data-priv="0"],
.cat:has(.f-cheap:checked) article.tour[data-cheap="0"],
.cat:has(.f-d1:checked) article.tour:not([data-days="1"]),
.cat:has(.f-d23:checked) article.tour:not([data-days="2"]):not([data-days="3"]),
.cat:has(.f-d4:checked) article.tour:not([data-days="4"]):not([data-days="5"]){display:none !important;}
.cat .chip input:checked + .pill{background:#3B241F !important;color:#F6EFE6 !important;border-color:#3B241F !important;}
.cat .chip:hover .pill{border-color:#2A1B17 !important;}
.cat .chip input:focus-visible + .pill{outline:2px solid #C9962C;outline-offset:2px;}
.cat label.chip input{position:absolute;opacity:0;width:1px;height:1px;}
@keyframes ptHour{0%{background-position:0% 0%}100%{background-position:0% 100%}}
.tour .slot{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s;}
.tour:hover .slot{transform:translateY(-6px);box-shadow:0 26px 50px -18px rgba(42,27,23,.45);}
.tour:hover .slot img{transform:scale(1.06) !important;filter:saturate(1) sepia(.04) !important;}
.tour .slot .hour{position:absolute;inset:0;opacity:0;mix-blend-mode:multiply;pointer-events:none;
  background:linear-gradient(180deg,#D9A08F 0%,#C8873F 40%,#A64B2A 75%,#3B241F 100%);background-size:100% 300%;transition:opacity .6s;}
.tour:hover .slot .hour{opacity:.45;animation:ptHour 2.4s linear infinite alternate;}
.tour .slot .dur{transition:transform .4s cubic-bezier(.2,.7,.2,1),opacity .4s;}
.tour:hover .slot .dur{transform:translateY(-4px);}
.tour .slot .cta{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:8px;
  transform:translateY(10px);opacity:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .45s;pointer-events:none;}
.tour:hover .slot .cta{transform:none;opacity:1;}
.tour .slot .mark{transition:filter .6s;}
.tour:hover .slot .mark{filter:brightness(1.08);}
.rev:hover .bar{width:100% !important;margin-left:-50% !important;opacity:.35 !important;}
.rev:hover img{transform:scale(1.04);}
.grow:hover .arr{background:#2A1B17 !important;color:#F6EFE6 !important;transform:translateX(4px);}
tbody tr:hover{background:rgba(232,217,200,.5);}
.cat details[open] .pl{display:none;}.cat details:not([open]) .mi{display:none;}
@media (prefers-reduced-motion:reduce){*{transition:none !important;}}

/* ---- the page column ----------------------------------------------------
   1152px centred, never less than a 64px gutter — the designer's own
   expression, held once so the phone can change it once. */
.cat{--cgx:max(64px, calc(50% - 576px));}

/* ---- contrast repairs found by scripts/check.js -------------------------
   the duration badge inherits the group colour; on the ochre group paper text
   read 2.67, so that one badge takes ink. The violet and the warm neutral were
   darkened at source instead (see GROUPS above).                          */
.badge-ink{color:#2A1B17 !important;}
/* the card's hover CTA sits on the photograph; give it its own scrim so its
   legibility never depends on which frame the operator uploaded */
.tour .slot .cta::before{content:"";position:absolute;inset:-10px -12px -12px -12px;
  background:linear-gradient(180deg,rgba(42,27,23,0),rgba(42,27,23,.72));z-index:-1;}
.tour .slot .cta{z-index:1;}

/* ---- the comparison table scrolls inside its own box --------------------
   position:relative is not decoration. The sortable header carries a
   visually-hidden <span position:absolute>; without a positioned ancestor its
   containing block was the page, so it sat at x=859 and dragged the document's
   scrollWidth to 860px on a phone even though the table itself was clipped.
   The wrapper is a scroll container at every width, so the table can never
   push the page sideways, and it is focusable so a keyboard can scroll it. */
.cat .tablewrap{position:relative;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.cat .tablewrap:focus-visible{outline:2px solid #B58E3A;outline-offset:4px;}

/* ---- the GetYourGuide widget row (hub only) -----------------------------
   Three containers across. What is written inside each one is the fallback the
   widget script replaces when it mounts: with JavaScript off, with the script
   blocked, or before it loads, the visitor still gets the three products with
   the prices this site read on 2 Sept 2026 and a link that books. The row is
   sized so the swap does not move the page much. */
.cat .gygrow{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;
  align-items:start;}
.cat .wcell{min-height:200px;border-top:3px solid #2A1B17;padding-top:18px;position:relative;}
.cat .wfall{display:flex;flex-direction:column;gap:10px;height:100%;}
.cat .wmark{position:absolute;top:-3px;left:0;width:64px;height:3px;}
.cat .wname{margin:0;font:500 24px/1.1 Cormorant,serif;letter-spacing:-.01em;}
.cat .wname a{color:#2A1B17;text-decoration:underline;text-decoration-color:#D9CFC3;
  text-underline-offset:4px;transition:text-decoration-color .2s;}
.cat .wname a:hover,.cat .wname a:focus-visible{text-decoration-color:#A64B2A;}
.cat .wprice{margin:0;font:400 14px/1.4 'Work Sans';color:#6E5B54;}
.cat .wprice strong{font:500 18px/1 'JetBrains Mono';color:#2A1B17;}
.cat .wrate{margin:0;font:400 14px/1 'Work Sans';color:#2A1B17;}
.cat .wstar{position:relative;display:inline-block;font-size:12px;letter-spacing:1px;
  color:#8B7A72;vertical-align:1px;}
.cat .wstarf{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#C9962C;}
.cat .wcount{color:#6E5B54;}
.cat .wbook{margin-top:auto;align-self:flex-start;background:#B5271F;color:#fff;
  text-decoration:none;font:600 13px/1 'Work Sans';padding:14px 18px;
  transition:background .2s,transform .2s;}
.cat .wbook:hover,.cat .wbook:focus-visible{background:#9C1F18;transform:translateY(-1px);}
.cat .gygnote{margin:24px 0 0;font:400 13px/1.5 'Work Sans';color:#6E5B54;max-width:640px;}

/* ---- the on-this-page rail is centred, like every page type -------------
   `safe` keeps the first pill reachable when the row is wider than the phone */
.cat nav.pt-nav-rail{justify-content:safe center;}
.cat nav.pt-nav-rail::-webkit-scrollbar{display:none;}

/* ---- header: the MENU disclosure works with JavaScript off --------------
   the panel is display:contents on a desktop, so the designer's three-column
   header grid is untouched; on a phone it becomes the dropdown. */
.cat .cmenu-cb{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);}
.cat .cmenu{display:none;}
.cat .hdr-panel{display:contents;}
.cat .cmenu-cb:focus-visible + .cmenu{outline:2px solid #D9A08F;outline-offset:3px;}

/* ---- the comparison table's cell labels ---------------------------------
   they ship at every width and only show when the row stacks */
.cat .cl{display:none;}
.cat .cmp-cap{text-align:left;}
.cat .cmp-capt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.cat .cmp-sort{display:none;}

/* ======================================================================
   The designer's mobile artboard, as media queries: one DOM, not two.
   The grids are reached through the hooks the porter adds, because by the
   time this runs every inline style has become a class.
   ====================================================================== */
@media (max-width:1023px){
  /* one line moves every gutter the designer wrote: the header, the sections,
     the footer, the rail's padding and the three rules between sections. The
     old blunt override reached only header/section/footer, so the dividers
     kept a 64px gutter while the sections had dropped to 20px. */
  .cat{--cgx:20px;}
  /* the designer's mobile artboard opens the hero at 96px, not the 176px the
     absolute header needs on a desktop */
  .cat section[data-screen-label="Catalog hero"]{padding-top:96px !important;}
  .cg-2, .cg-3{grid-template-columns:1fr !important;}
  .cg-ladder{grid-template-columns:1fr auto !important;gap:2px 12px !important;}
  .cg-ladder > :nth-child(2){grid-column:1 / -1;}
  .cat h1{font-size:44px !important;line-height:1.02 !important;}
  .cat h2{font-size:32px !important;}

  /* --- header: 57px bar, logo + MENU, the links in a dropdown ----------- */
  .cat header > div{grid-template-columns:1fr auto !important;height:57px !important;}
  .cat .cmenu{display:flex;align-items:center;gap:10px;justify-self:end;min-height:44px;
    cursor:pointer;font:500 12px/1 'Work Sans';letter-spacing:.16em;color:#F6EFE6;}
  .cat .cmenu-b{width:20px;height:12px;border-top:1.5px solid #F6EFE6;border-bottom:1.5px solid #F6EFE6;}
  .cat .hdr-panel{display:none;position:absolute;left:0;right:0;top:57px;
    flex-direction:column;align-items:flex-start;gap:16px;padding:20px;
    background:#2A1B17;border-top:1px solid rgba(246,239,230,.18);}
  .cat .cmenu-cb:checked ~ .hdr-panel{display:flex;}
  .cat .hdr-panel nav{flex-direction:column;gap:14px;justify-self:start !important;
    font-size:15px !important;}
  .cat .hdr-panel > div{justify-self:start !important;}

  /* --- the comparison table stacks, as the designer drew it -------------
     One DOM: the desktop table becomes labelled two-column rows. The roles
     on the markup keep it a table for assistive tech once display changes. */
  .cat .cmp{display:block;margin-top:20px !important;}
  .cat .cmp thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
  .cat .cmp tbody{display:grid;gap:12px;}
  .cat .cmp tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;
    border-top:1px solid #2A1B17;border-bottom:0 !important;padding:14px 0 16px;}
  .cat .cmp td{padding:0 !important;white-space:normal !important;}
  .cat .cmp td:nth-child(1),.cat .cmp td:nth-child(6){grid-column:1 / -1;}
  .cat .cmp td:nth-child(8){text-align:right !important;align-self:center;}
  .cat .cmp td:nth-child(7){align-self:center;}
  .cat .cmp .cl{display:block;font:400 11px/1 'Work Sans';letter-spacing:.12em;
    text-transform:uppercase;color:#6E5B54;margin-bottom:4px;}
  /* a table-caption shrinks to fit; as a block it gives the sort row the
     full width of the table instead of stacking three buttons in a column */
  .cat .cmp-cap{display:block;}
  .cat .cmp-sort{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap;}
  .cat .cmp-sort button{border:1px solid #2A1B17;background:none;padding:12px;cursor:pointer;
    color:#2A1B17;min-height:44px;font:500 12px/1 'Work Sans';}

  /* the widget row stacks; three booking panels side by side on a phone would
     be three unreadable columns */
  .cat .gygrow{grid-template-columns:1fr !important;gap:32px;}
  .cat .tablewrap{overflow-x:visible;}
}
