:root{--cal-sans:'DM Sans',Arial,Helvetica,sans-serif;--cal-ink:#252321;--cal-subtle:#6b6762;--cal-rule:#e8e5e1}
body,button,input,select,textarea{font-family:var(--cal-sans)}
body{color:var(--cal-ink);font-size:14px;line-height:1.7}
html{scroll-padding-top:152px}
.cal-header{position:sticky;top:0;z-index:100;background:#fff;transition:box-shadow .2s ease}
.cal-header.is-scrolled{box-shadow:0 7px 22px #00000012}
body.admin-bar .cal-header{top:32px}
.cal-primary-nav a{font-size:11px;font-weight:700;letter-spacing:.105em}
.cal-primary-nav a:hover,.cal-primary-nav a:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
.cal-submenu-toggle{display:none}
.cal-locale-controls{display:flex;align-items:center;gap:8px}
.cal-locale-desktop{position:absolute;left:4%;top:50%;transform:translateY(-50%)}
.cal-locale-controls select{-webkit-appearance:none;appearance:none;border:0;background:#fff;color:var(--cal-ink);padding:8px 6px;min-height:44px;font-size:10px;font-weight:600;letter-spacing:.08em;cursor:pointer}
.cal-locale-controls label{position:relative}
.cal-locale-controls label:after{content:none}
.cal-locale-mobile{display:none}
.cal-banner{width:100%;max-width:none}
.cal-section-heading h2,.cal-newsletter h2{font:600 23px/1.25 var(--cal-sans);letter-spacing:.07em;text-transform:uppercase}
.cal-collection-caption h3{font:500 22px/1.3 var(--cal-sans);letter-spacing:.08em;text-transform:uppercase}
.cal-product-card h3{font-size:12px;font-weight:600;letter-spacing:.06em}
.cal-product-rail,.cal-journal-gallery,.cal-source-gallery{cursor:grab;overscroll-behavior-inline:contain}
.cal-product-rail.cal-is-dragging,.cal-journal-gallery.cal-is-dragging,.cal-source-gallery.cal-is-dragging{cursor:grabbing;user-select:none}
.cal-product-rail.cal-auto-rail{scroll-snap-type:none}
.cal-source-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);grid-template-columns:none;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.cal-source-gallery figure{min-width:0;scroll-snap-align:start}
.cal-page-hero h1,.cal-post h1{font:400 clamp(34px,4.5vw,54px)/1.16 var(--cal-sans);letter-spacing:-.025em}
.cal-page-content h2,.cal-page-content h3,.cal-content-section h2,.cal-collection-hero h1,.cal-collection-index h2{font-family:var(--cal-sans);letter-spacing:-.02em}
.cal-page-content h2,.cal-content-section h2{font-weight:600}
.cal-page-content h3{font-weight:500}
.cal-journal-grid h2{font:500 18px/1.4 var(--cal-sans);letter-spacing:.02em;text-transform:none;margin-top:15px}
.cal-journal-grid time{display:block;color:var(--cal-subtle);font-size:11px;letter-spacing:.04em;margin:10px 0}
.cal-journal-grid p{font-size:13px;line-height:1.7;color:var(--cal-subtle)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--cal-sans);font-weight:600}
.woocommerce ul.products li.product .price,.cal-product-card .price{font-family:var(--cal-sans);font-size:12px;color:var(--cal-ink)}

.single-product .cal-shell{padding-top:32px}
body.single-product div.product div.images{width:53%;margin-bottom:38px}
body.single-product div.product div.summary{width:40%;padding-top:10px}
body.single-product div.product div.images .woocommerce-product-gallery__image img{width:100%;height:auto}
body.single-product .woocommerce-product-gallery .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 0;padding:0;list-style:none}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li{float:none;width:auto!important;margin:0!important;overflow:hidden;background:#f7f6f3}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img{display:block;width:100%!important;height:auto!important;aspect-ratio:4/5;object-fit:cover;opacity:.72;transition:opacity .2s ease}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,body.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1}
body.single-product .woocommerce-product-gallery .flex-viewport{cursor:grab}
body.single-product .woocommerce-product-gallery.cal-is-dragging .flex-viewport{cursor:grabbing}
body.single-product div.product .product_title{font:600 clamp(24px,2.2vw,32px)/1.25 var(--cal-sans);letter-spacing:.025em;text-transform:uppercase;margin:8px 0 5px}
.cal-product-brand{margin:0;color:var(--cal-subtle);font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.cal-product-collection{font-size:12px;color:var(--cal-subtle);margin:5px 0 22px}
.cal-product-collection a{text-decoration:none;border-bottom:1px solid var(--cal-rule)}
body.single-product div.product p.price{font:600 22px/1.3 var(--cal-sans);color:var(--cal-ink);margin:18px 0 22px}
.woocommerce-product-details__short-description{font-size:13px;line-height:1.8;color:var(--cal-subtle);border-top:1px solid var(--cal-rule);padding-top:18px;margin-bottom:20px}
.woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.woocommerce-product-details__short-description table{width:100%;margin:20px 0 28px;border-collapse:collapse;font-size:11px;line-height:1.45}
.woocommerce-product-details__short-description th,.woocommerce-product-details__short-description td{padding:10px 6px;border-bottom:1px solid var(--cal-rule);text-align:left}
.woocommerce-product-details__short-description th{font-weight:600;color:var(--cal-ink)}
.cal-size-guide-link{text-align:right;font-size:11px;letter-spacing:.05em;margin:0 0 8px}
.cal-size-guide-link a{text-decoration:none;border-bottom:1px solid currentColor}
body.single-product div.product form.cart .variations{width:100%;margin:0 0 20px}
body.single-product div.product form.cart .variations tr,body.single-product div.product form.cart .variations th,body.single-product div.product form.cart .variations td{display:block;width:100%;text-align:left;padding:0}
body.single-product div.product form.cart .variations th{margin-bottom:8px}
body.single-product div.product form.cart .variations label{font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase}
body.single-product div.product form.cart .variations select:not(.cal-variant-source){width:100%;min-height:48px}
.cal-variant-source{position:absolute!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cal-size-options{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.cal-size-option{min-width:64px;height:46px;padding:0 16px;border:1px solid #d5d1cb;background:#fff;color:var(--cal-ink);font-size:12px;font-weight:500;transition:background .18s,border-color .18s,color .18s}
.cal-size-option:hover{border-color:var(--cal-ink)}
.cal-size-option[aria-pressed=true]{background:var(--cal-ink);border-color:var(--cal-ink);color:#fff}
.cal-size-option:disabled{opacity:.45;text-decoration:line-through;cursor:not-allowed}
.cal-collection-cover{width:100%;overflow:hidden;background:#eeeae4}
.cal-collection-cover img{display:block;width:100%;height:clamp(300px,35.2vw,620px);object-fit:cover;object-position:center}
.cal-collection-content{padding-top:46px}
.cal-collection-intro-header{max-width:980px;margin:0 auto 48px;text-align:center}
.cal-collection-intro-header h1{font:600 clamp(28px,3vw,46px)/1.2 var(--cal-sans);letter-spacing:.05em;text-transform:uppercase;margin:10px 0 22px}
.cal-collection-intro-header .cal-collection-intro{max-width:820px;margin:auto;text-align:left}
.cal-collection-intro-header .cal-collection-intro p{margin-bottom:16px}
body.single-product .woocommerce-product-gallery{position:relative!important}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger{position:absolute!important;z-index:8!important;top:16px!important;right:16px!important;left:auto!important;width:42px!important;height:42px!important;margin:0!important;background:#fff!important;border:1px solid #e5e0d9!important;border-radius:50%!important;display:grid!important;place-items:center!important;box-shadow:0 2px 12px #0002}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::before{content:""!important;display:block!important;position:absolute!important;left:11px!important;top:10px!important;width:15px!important;height:15px!important;border:2px solid #252321!important;border-radius:50%!important;box-sizing:border-box!important;background:none!important;transform:none!important}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::after{content:""!important;display:block!important;position:absolute!important;left:24px!important;top:25px!important;width:9px!important;height:2px!important;border:0!important;background:#252321!important;transform:rotate(45deg)!important}
.cal-gallery-arrow{position:absolute;top:40%;transform:translateY(-50%);z-index:7;width:44px;height:44px;border:0;border-radius:50%;background:#fffffff0;color:#252321;box-shadow:0 2px 12px #0002;font-size:25px;line-height:1;cursor:pointer;display:grid;place-items:center}
.cal-gallery-arrow:hover,.cal-gallery-arrow:focus-visible{background:#252321;color:#fff}
.cal-gallery-arrow.prev{left:16px}.cal-gallery-arrow.next{right:16px}
.cal-product-measurements{border-top:1px solid var(--cal-rule);border-bottom:1px solid var(--cal-rule);margin:20px 0 22px}
.cal-product-measurements summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:.06em;list-style:none}
.cal-product-measurements summary::-webkit-details-marker{display:none}
.cal-product-measurements summary>span:last-child{font-size:20px;font-weight:400;line-height:1;transition:transform .2s}
.cal-product-measurements[open] summary>span:last-child{transform:rotate(45deg)}
.cal-product-measurements-body{padding:0 0 20px}
.cal-product-measurements-body h3{font-size:12px;font-weight:600;margin:20px 0 8px}
.cal-product-measurements-body .cal-measurement-note{font-size:11px;color:var(--cal-subtle);margin:0 0 14px}
.cal-product-measurements-body table{width:100%;border-collapse:collapse;font-size:11px;line-height:1.5}
.cal-product-measurements-body th,.cal-product-measurements-body td{padding:8px 5px;text-align:left;border-bottom:1px solid var(--cal-rule)}
.cal-product-measurements-body .cal-size-guide-link{text-align:left;margin:18px 0 0}
body.single-product div.product form.cart .reset_variations{font-size:11px;margin-top:4px}
body.single-product div.product form.cart .woocommerce-variation-add-to-cart{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;align-items:stretch}
body.single-product div.product form.cart .quantity{float:none;margin:0}
body.single-product div.product form.cart .quantity .qty{width:100%;height:50px}
body.single-product div.product form.cart .button{float:none;width:100%;min-height:50px;margin:0;background:var(--cal-ink);font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
body.single-product div.product form.cart .button:disabled{background:#9b9996;color:#fff}
.cal-product-help{display:grid;border-top:1px solid var(--cal-rule);margin:22px 0 18px}
.cal-product-help a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--cal-rule);text-decoration:none;font-size:12px;font-weight:500}
.cal-product-help a:hover{text-decoration:underline}
body.single-product .product_meta{color:var(--cal-subtle);font-size:10px;margin:20px 0 0;line-height:1.8}
.single-product .product_meta .tagged_as{display:none}
body.single-product .woocommerce-tabs{clear:both;padding-top:24px}
body.single-product div.product .woocommerce-tabs ul.tabs{border-bottom:1px solid var(--cal-rule);margin-bottom:12px}
body.single-product div.product .woocommerce-tabs ul.tabs li a{font:500 11px/1.5 var(--cal-sans);letter-spacing:.08em;text-transform:uppercase}
body.single-product div.product .woocommerce-tabs .panel h2{font:500 16px/1.4 var(--cal-sans);letter-spacing:.06em;text-transform:uppercase}
body.single-product .related.products{margin-top:64px}
body.single-product .related.products>h2{font:500 22px/1.3 var(--cal-sans);letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px}
body.single-product .related.products ul.products li.product img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.cal-footer{background:#111;color:#f4f1ec;border-color:#333}
.cal-footer a{color:inherit}
.cal-footer-top,.cal-footer-bottom{border-color:#383838}
.cal-footer p,.cal-footer-bottom{color:#bfbab4}
.cal-footer .cal-text-link{color:#f4f1ec;border-color:#777}
.cal-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cal-footer-policies{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cal-footer-policies a,.cal-cookie-settings{font-size:11px;color:#f4f1ec;text-decoration:none}
.cal-cookie-settings{border:0;background:none;padding:0;cursor:pointer}
.cal-footer-policies a:hover,.cal-cookie-settings:hover{text-decoration:underline}
.cal-cookie-banner{position:fixed;z-index:200;left:24px;right:24px;bottom:24px;max-width:960px;margin:auto;padding:22px 25px;background:#fff;color:var(--cal-ink);border:1px solid var(--cal-rule);box-shadow:0 12px 40px #0003;display:flex;align-items:center;justify-content:space-between;gap:28px}
.cal-cookie-banner[hidden]{display:none}
.cal-cookie-banner strong{font-size:13px;font-weight:600}
.cal-cookie-banner p{font-size:12px;line-height:1.6;margin:6px 0}
.cal-cookie-banner a{font-size:11px;margin-right:12px;text-decoration:underline}
.cal-cookie-actions{display:flex;gap:9px;flex-shrink:0}
.cal-cookie-actions button{min-height:44px;padding:10px 15px;background:var(--cal-ink);color:#fff;border:1px solid var(--cal-ink);font-size:11px;font-weight:600;cursor:pointer}
.cal-cookie-actions button:hover{background:#444}

@media(min-width:761px){
  body.single-product.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);column-gap:clamp(36px,5vw,88px);align-items:start}
  body.single-product.woocommerce div.product div.images,body.single-product.woocommerce div.product div.summary{float:none;width:100%;min-width:0;margin:0;position:static}
  body.single-product.woocommerce div.product .woocommerce-tabs,body.single-product.woocommerce div.product .related.products{grid-column:1/-1}
  body.single-product.woocommerce div.product .woocommerce-tabs{margin-top:clamp(50px,6vw,90px);padding-top:0}
  body.single-product.woocommerce div.product .related.products{margin-top:56px}
}
@media(max-width:782px){body.admin-bar .cal-header{top:46px}}
@media(max-width:760px){
  html{scroll-padding-top:84px}
  .cal-header-top{height:70px}
  .cal-locale-desktop{display:none}
  .cal-locale-mobile{display:flex;padding:6px 22px 10px;border-bottom:1px solid var(--cal-rule)}
  .cal-js.cal-menu-open .cal-primary-nav{overflow-x:hidden;overflow-y:auto;max-height:calc(100dvh - 98px)}
  .cal-primary-nav>.menu,.cal-primary-nav>ul{display:block;width:100%;padding:8px 22px 16px;margin:0}
  .cal-primary-nav>.menu>li,.cal-primary-nav>ul>li{display:block;width:100%;border-bottom:1px solid var(--cal-rule)}
  .cal-primary-nav a{display:block;width:100%;padding:14px 48px 14px 0;white-space:normal;line-height:1.5}
  .cal-primary-nav .cal-submenu-toggle{float:none;position:absolute;right:0;top:2px}
  .cal-primary-nav .sub-menu{min-width:0;width:100%;padding:0 0 8px 14px}
  .cal-primary-nav .sub-menu a{padding:11px 12px}
  .cal-submenu-toggle{display:block;min-width:44px;min-height:44px;font-size:19px;font-weight:400;line-height:1}
  .cal-section-heading h2,.cal-newsletter h2{font-size:19px}
  .cal-source-gallery{grid-template-columns:none;grid-auto-columns:78%;gap:12px}
  .cal-collection-caption h3{font-size:18px}
  .cal-page-hero h1,.cal-post h1{font-size:36px}
  .single-product .cal-shell{padding:18px 15px 58px}
  body.single-product div.product div.images,body.single-product div.product div.summary{float:none;width:100%;position:static}
  body.single-product div.product div.images{margin-bottom:22px}
  body.single-product .woocommerce-product-gallery .flex-control-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
  body.single-product div.product .product_title{font-size:25px}
  body.single-product div.product p.price{font-size:20px}
  body.single-product div.product form.cart .button{min-width:0}
  body.single-product .related.products{margin-top:46px}
  .cal-cookie-banner{left:12px;right:12px;bottom:12px;padding:17px;display:block}
  .cal-cookie-actions{margin-top:14px}
  .cal-cookie-actions button{flex:1}
}
@media(max-width:600px){body.admin-bar .cal-header{top:0}}
@media(prefers-reduced-motion:reduce){.cal-header,.cal-size-option{transition:none}}
@media(max-width:760px){.cal-collection-cover img{height:clamp(250px,65vw,410px)}.cal-collection-content{padding-top:28px}.cal-collection-intro-header{margin-bottom:30px;padding:0 12px}.cal-gallery-arrow{width:38px;height:38px;font-size:22px}.cal-gallery-arrow.prev{left:10px}.cal-gallery-arrow.next{right:10px}}

/* Collection artwork keeps its original landscape composition. */
.cal-collection-index{grid-template-columns:minmax(0,1fr);gap:48px}
.cal-collection-index>a{display:block;min-width:0}
.cal-collection-index>a>img{display:block;width:100%;height:auto;aspect-ratio:auto 2.8;object-fit:contain}
.cal-collection-index-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--cal-rule)}
.cal-collection-index-caption h2{margin:0;font-size:26px;font-weight:600}
.cal-collection-index-caption p{margin:0;font-size:12px}
.cal-source-gallery.cal-styled-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;cursor:auto;scroll-snap-type:none;gap:32px 22px}
.cal-styled-grid figure{margin:0}
.cal-styled-grid img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.cal-gallery-pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin:40px 0 10px}
.cal-gallery-pagination .page-numbers{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--cal-rule);text-decoration:none;color:#111}
.cal-gallery-pagination .current{background:#111;color:#fff;border-color:#111}
.cal-related-journal{margin-top:64px;padding-top:36px;border-top:1px solid var(--cal-rule)}
.cal-related-journal .cal-section-heading{padding:0 0 24px}
.cal-related-journal .cal-journal-grid h3{font:600 18px/1.4 var(--cal-sans);letter-spacing:0;margin:16px 0 10px;text-transform:none}
.cal-related-journal .cal-journal-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.cal-post .cal-post-content{font-size:16px;line-height:1.85;overflow-wrap:anywhere}
.cal-post .cal-post-content h2{font-size:23px;line-height:1.35;font-weight:600;letter-spacing:0;margin:36px 0 16px}
.cal-post .cal-post-content h3{font-size:18px;line-height:1.4;font-weight:600;letter-spacing:0;margin:28px 0 12px}
.cal-post .cal-post-content p{margin:0 0 20px}
.cal-journal-slider{position:relative;margin:30px 0 36px}
.cal-journal-slider .cal-journal-gallery{margin:0;gap:18px;scrollbar-width:none;overscroll-behavior-inline:contain}
.cal-journal-slider .cal-journal-gallery::-webkit-scrollbar{display:none}
.cal-journal-slider .cal-journal-gallery>figure,.cal-journal-slider .cal-journal-gallery>a,.cal-journal-slider .cal-journal-gallery>img{flex:0 0 72%;min-width:0;scroll-snap-align:start;margin:0}
.cal-journal-slider .cal-journal-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;margin:0}
.cal-journal-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:44px;height:44px;background:#fffffff2;border:1px solid #ddd8d1;border-radius:50%;color:#111;-webkit-text-fill-color:#111;-webkit-appearance:none;appearance:none;box-shadow:0 2px 12px #0002;font-size:23px;line-height:1;cursor:pointer}
.cal-journal-arrow.prev{left:12px}.cal-journal-arrow.next{right:12px}
.cal-journal-arrow:disabled{opacity:.4;cursor:default}
.cal-journal-arrow[hidden]{display:none}
.cal-journal-arrow:focus-visible{outline:2px solid #111;outline-offset:3px}
@media(max-width:760px){.cal-post .cal-post-content{font-size:14px}.cal-post .cal-post-content h2{font-size:21px}.cal-journal-slider .cal-journal-gallery{gap:12px}.cal-journal-slider .cal-journal-gallery>figure,.cal-journal-slider .cal-journal-gallery>a,.cal-journal-slider .cal-journal-gallery>img{flex-basis:86%}.cal-journal-arrow.prev{left:8px}.cal-journal-arrow.next{right:8px}}
.cal-rail-controls button,.cal-menu-toggle,.cal-submenu-toggle,.cal-search-toggle,.cal-search-close,.cal-gallery-arrow{color:#111;-webkit-text-fill-color:#111;-webkit-appearance:none;appearance:none}
.cal-gallery-arrow:hover,.cal-gallery-arrow:focus-visible{-webkit-text-fill-color:#fff}
.cal-rail-controls button[hidden]{display:none}
.cal-rail-controls button:disabled{opacity:.35}
.cal-rail-controls button[data-rail-toggle]{font-size:14px}
.woocommerce .star-rating span::before,.woocommerce p.stars a{color:#d49a13}
.woocommerce .star-rating::before{color:#dbcda9}
/* Woo's small-screen percentage widths must not shrink items inside our grid. */
.woocommerce ul.products[class*="columns-"]>li.product,.woocommerce-page ul.products[class*="columns-"]>li.product{float:none;width:100%;max-width:none;margin:0;min-width:0}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;width:100%}
.woocommerce ul.products li.product a img{display:block;width:100%;height:auto}
.cal-partnership{display:grid;grid-template-columns:1fr 1fr;background:#10100f;color:#fff;margin-top:30px}
.cal-partnership-image{min-width:0;overflow:hidden;background:#d9d2c8}
.cal-partnership-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.cal-partnership-content{padding:clamp(32px,5vw,84px);align-self:center;min-width:0}
.cal-partnership .cal-eyebrow{color:#c7c0b5;font-weight:700;font-size:10px;margin-bottom:22px}
.cal-partnership h2{font:400 clamp(32px,3.4vw,54px)/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.02em;text-transform:none;margin:0 0 24px;color:#fff}
html[lang=vi] .cal-partnership h2{font-family:var(--cal-sans);font-weight:500;line-height:1.2}
.cal-partnership-intro{color:#ccc7bf;font-size:14px;line-height:1.8;margin:0 0 24px}
.cal-partnership-services{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;list-style:none;padding:0;margin:0 0 28px;border-top:1px solid #393732}
.cal-partnership-services li{padding:12px 0;border-bottom:1px solid #393732;font-size:10px;font-weight:600;letter-spacing:.035em}
.cal-partnership-form{display:grid;gap:9px}
.cal-partnership-form label{font-size:12px;font-weight:600}
.cal-partnership-form input[type=email],.cal-partnership-form textarea{width:100%;max-width:100%;min-width:0;border:1px solid #716c64;background:#1b1b19;border-radius:0;color:#fff;padding:12px 14px;font-size:16px;margin-bottom:8px}
.cal-partnership-form textarea{resize:vertical;min-height:105px}
.cal-partnership-form :is(input,textarea,button):focus-visible{outline:2px solid #e6c68b;outline-offset:3px}
.cal-partnership-form button{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:#f3efe7;color:#111;-webkit-text-fill-color:#111;border-radius:0;padding:15px 20px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.cal-partnership-form button:disabled{opacity:.65;cursor:wait}
.cal-partnership-form .cal-form-privacy{font-size:11px;line-height:1.7;color:#bfbab1;margin:0 0 10px}
.cal-partnership a{color:inherit;text-underline-offset:4px}
.cal-partnership-form .cal-form-status{font-size:13px;margin:0;line-height:1.7;color:#f1e4c8}
.cal-partnership-form .cal-form-status:empty{display:none}
.cal-partnership-email{display:inline-block;font-size:12px;margin-top:16px;color:#ccc7bf}
.cal-form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){
  .cal-collection-index{grid-template-columns:minmax(0,1fr);gap:30px}
  .cal-banner:not(.cal-banner-has-mobile) .cal-banner-image{aspect-ratio:1.8}
  .cal-collection-index-caption{display:block;padding:14px 0}
  .cal-collection-index-caption h2{font-size:22px;margin-bottom:6px}
  .cal-source-gallery.cal-styled-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
  .cal-related-journal{margin-top:40px}
  .cal-related-journal .cal-section-heading{display:block}
  .woocommerce ul.products,.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px;padding:0}
  .woocommerce ul.products::before,.woocommerce ul.products::after,.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{display:none}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11px;letter-spacing:.04em;line-height:1.5;padding:0;margin:12px 0 8px}
  .woocommerce ul.products li.product .price{font-size:12px;margin:0 0 8px}
  .woocommerce ul.products li.product .button{font-size:10px;letter-spacing:.035em;margin-top:4px;min-height:40px}
  .woocommerce .woocommerce-ordering{width:100%}
  .woocommerce .woocommerce-ordering select{border-radius:0;font-size:16px}
  body.single-product .related.products>h2{font-size:19px;letter-spacing:.055em}
  .cal-partnership{grid-template-columns:minmax(0,1fr)}
  .cal-partnership-image img{height:auto;aspect-ratio:4/5;object-fit:cover}
  .cal-partnership-content{padding:34px 22px 40px}
  .cal-partnership h2{font-size:36px}
}

/* Rail sizing follows its own container, including wide displays and zoomed pages. */
.cal-product-section{--cal-rail-gutter:clamp(20px,4vw,64px)}
.cal-product-section .cal-section-heading{padding-left:var(--cal-rail-gutter);padding-right:var(--cal-rail-gutter)}
.cal-product-rail{display:flex;gap:20px;padding:0 var(--cal-rail-gutter);scrollbar-width:none}
.cal-product-rail::-webkit-scrollbar{display:none}
.cal-product-rail>.cal-product-card{flex:0 0 calc((100% - 60px)/4);width:auto;min-width:0}
.cal-product-card img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.cal-product-section .cal-rail-controls{margin-right:var(--cal-rail-gutter);margin-left:var(--cal-rail-gutter)}
.cal-partnership-image{position:relative;min-height:0}
.cal-partnership-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%}
.cal-partnership-content{padding:24px clamp(28px,3vw,48px)}
.cal-partnership .cal-eyebrow{margin-bottom:10px}
.cal-partnership h2{font-size:clamp(30px,2.7vw,42px);margin-bottom:12px}
.cal-partnership-intro{font-size:13px;line-height:1.7;margin-bottom:12px}
.cal-partnership-services{margin-bottom:16px}
.cal-partnership-services li{padding:6px 0}
.cal-partnership-form{gap:4px}
.cal-partnership-form input[type=email],.cal-partnership-form textarea{padding:9px 12px;margin-bottom:4px}
.cal-partnership-form textarea{height:70px;min-height:70px}
.cal-partnership-form button{min-height:44px;padding:12px 16px}
.cal-partnership-email{margin-top:8px}
@media(min-width:761px) and (max-width:1100px){.cal-product-rail>.cal-product-card{flex-basis:calc((100% - 40px)/3)}}
@media(max-width:760px){
  .cal-product-rail{gap:12px}
  .cal-product-rail>.cal-product-card{flex-basis:78%}
  .cal-partnership-image{aspect-ratio:4/3}
  .cal-partnership-image img{height:100%;aspect-ratio:auto;object-position:center 28%}
  .cal-partnership-content{padding:30px 22px}
  .cal-partnership h2{font-size:32px}
}
