/* Polozhenie Atelier. One visual system for the entire native storefront. */
:root {
  --pt-paper:#f8f5ef;
  --pt-surface:#fffdfa;
  --pt-ink:#242b25;
  --pt-muted:#686c63;
  --pt-gold:#a27b36;
  --pt-line:#deddd3;
  --pt-wash:#eeece4;
  --pt-serif:Georgia,'Times New Roman',serif;
  --pt-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  --bs-body-font-family:var(--pt-sans);
  --bs-body-color:var(--pt-ink);
  --bs-body-bg:var(--pt-paper);
  --bs-primary:#242b25;
  --bs-border-color:var(--pt-line);
  --bs-border-radius:3px;
  --bs-link-color:#242b25;
  --bs-link-hover-color:#765b2d;
  --bs-focus-ring-color:#a27b3640;
  --bs-danger:#a13636}

* {
  box-sizing:border-box}
html {
  scroll-behavior:smooth;
  scroll-padding-top:180px}
body.pt-store {
  margin:0;
  font:15px/1.65 var(--pt-sans);
  color:var(--pt-ink);
  background:var(--pt-paper)}
img {
  max-width:100%;
  height:auto}
a {
  color:inherit;
  text-decoration:none}
a:hover {
  color:var(--pt-gold)}
button,input,select,textarea {
  font:inherit}
button,a,input,select,textarea,summary {
  -webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible {
  outline:2px solid var(--pt-gold);
  outline-offset:4px}
h1,h2,h3,h4,h5 {
  font-family:var(--pt-serif);
  font-weight:400;
  color:var(--pt-ink);
  line-height:1.16;
  letter-spacing:-.025em}
h1 {
  font-size:clamp(32px,3.5vw,52px);
  margin:0 0 20px}
h2 {
  font-size:clamp(27px,2.8vw,40px);
  margin:0 0 18px}
h3 {
  font-size:25px}
p {
  margin:0 0 18px}
.container {
  width:calc(100% - 96px);
  max-width:1400px;
  padding-left:0;
  padding-right:0}
.row {
  --bs-gutter-x:24px;
  --bs-gutter-y:24px}
.pt-store #content {
  min-width:0;
  scroll-margin-top:190px}
.pt-store main {
  min-height:45vh}
.pt-muted,.text-muted {
  color:var(--pt-muted)!important}
.pt-eyebrow {
  font-family:var(--pt-sans);
  font-size:11px;
  font-weight:600;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:var(--pt-muted);
  margin-bottom:20px}
.btn {
  min-height:48px;
  padding:12px 22px;
  font:500 13px/1.5 var(--pt-sans);
  border-radius:3px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  box-shadow:none;
  transition:background .15s,color .15s,border-color .15s}
.btn-primary {
  --bs-btn-bg:var(--pt-ink);
  --bs-btn-border-color:var(--pt-ink);
  --bs-btn-color:#fffdfa;
  --bs-btn-hover-bg:#414b3f;
  --bs-btn-hover-border-color:#414b3f;
  --bs-btn-active-bg:#414b3f;
  --bs-btn-active-border-color:#414b3f;
  --bs-btn-disabled-bg:#596154;
  --bs-btn-disabled-border-color:#596154}
.btn-outline-primary {
  --bs-btn-color:var(--pt-ink);
  --bs-btn-border-color:var(--pt-ink);
  --bs-btn-hover-bg:var(--pt-ink);
  --bs-btn-hover-border-color:var(--pt-ink);
  --bs-btn-active-bg:var(--pt-ink);
  --bs-btn-active-border-color:var(--pt-ink)}
.btn-light {
  background:var(--pt-wash);
  border-color:var(--pt-line);
  color:var(--pt-ink)}
.btn-danger {
  --bs-btn-bg:#a13636;
  --bs-btn-border-color:#a13636}
.pt-text-link {
  display:inline-flex;
  align-items:center;
  gap:20px;
  border-bottom:1px solid var(--pt-gold);
  padding:4px 0;
  font-size:13px}
.pt-text-button {
  background:none;
  border:0;
  padding:10px 0;
  color:var(--pt-ink);
  font-size:13px;
  text-decoration:underline;
  text-underline-offset:4px}
.pt-icon-button {
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:1px solid transparent;
  color:var(--pt-ink);
  border-radius:3px}
.pt-icon-button:hover {
  background:var(--pt-wash)}
.pt-skip {
  position:fixed;
  top:-100px;
  left:16px;
  padding:14px 20px;
  background:var(--pt-ink);
  color:white;
  z-index:1100}
.pt-skip:focus {
  top:8px}
.pt-announcement {
  text-align:center;
  background:var(--pt-ink);
  color:var(--pt-paper);
  font-size:12px;
  padding:8px 16px}
.pt-utility {
  font-size:11px;
  background:var(--pt-wash);
  border-bottom:1px solid var(--pt-line)}
.pt-utility .container {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:7px 0}
.pt-utility span span {
  padding:0 8px;
  color:var(--pt-gold)}
.pt-header {
  position:sticky;
  top:0;
  background:var(--pt-paper);
  z-index:100;
  border-bottom:1px solid var(--pt-line)}
.pt-header-main {
  min-height:106px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px}
.pt-wordmark {
  display:inline-flex;
  flex-direction:column;
  white-space:nowrap;
  line-height:1.15}
.pt-wordmark>span {
  font:400 42px/1 var(--pt-serif);
  letter-spacing:-.055em}
.pt-wordmark-dot {
  color:var(--pt-gold)}
.pt-wordmark small {
  font-size:9px;
  letter-spacing:.17em;
  margin:9px 0 0 2px}
.pt-search {
  display:flex;
  align-items:center;
  border-bottom:1px solid #aaa99d;
  width:min(400px,38vw);
  height:44px}
.pt-search input {
  width:100%;
  border:0;
  background:none;
  min-width:0;
  color:var(--pt-ink);
  font-size:13px;
  outline-offset:1px}
.pt-search input::placeholder {
  color:var(--pt-muted)}
.pt-search button {
  border:0;
  background:none;
  width:44px;
  min-width:44px;
  height:44px}
.pt-header-actions {
  display:flex;
  gap:22px;
  align-items:center}
.pt-header-action {
  position:relative;
  min-height:44px;
  min-width:44px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  white-space:nowrap}
.pt-header-action i {
  font-size:20px}
.pt-header-action>span {
  font-size:10px}
.pt-cart-count {
  position:absolute;
  right:0;
  top:-2px;
  min-width:18px;
  height:18px;
  border-radius:50%;
  background:var(--pt-ink);
  color:var(--pt-paper);
  font-size:10px;
  text-align:center;
  line-height:18px}
.pt-menu-toggle {
  display:none}
.pt-navigation {
  border-top:1px solid var(--pt-line)}
.pt-nav-inner {
  display:flex;
  gap:30px;
  align-items:center;
  min-height:53px;
  font-size:12px}
.pt-nav-inner>a {
  white-space:nowrap}
.pt-catalog-link {
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:600}
.pt-catalog-link i {
  font-size:12px}
.pt-category-nav {
  display:flex;
  gap:24px;
  align-items:center;
  min-width:0}
.pt-nav-category {
  display:flex;
  align-items:center;
  gap:5px;
  position:relative;
  white-space:nowrap}
.pt-category-details summary {
  list-style:none;
  width:28px;
  height:44px;
  display:grid;
  place-items:center;
  font-size:9px;
  cursor:pointer}
.pt-category-details summary::-webkit-details-marker {
  display:none}
.pt-category-dropdown {
  position:absolute;
  top:48px;
  left:0;
  width:240px;
  padding:18px;
  background:var(--pt-surface);
  border:1px solid var(--pt-line);
  box-shadow:0 10px 25px #242b2514;
  z-index:101;
  display:flex;
  flex-direction:column;
  gap:8px;
  white-space:normal}
.pt-category-dropdown>a {
  padding:5px 0}
.pt-nav-special {
  color:#785c2d}
.pt-locale {
  margin-left:auto;
  display:flex;
  gap:12px}
.pt-locale .btn {
  padding:0 3px;
  min-height:44px;
  font-size:11px}
.pt-locale .dropdown-menu {
  font-size:12px}
.pt-locale .fa-solid {
  font-size:10px}
.pt-locale .dropdown-toggle:after {
  display:none}
.pt-hero {
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:590px;
  margin-top:30px;
  margin-bottom:0;
  gap:40px;
  align-items:center}
.pt-hero-copy {
  padding:45px 20px 40px 0;
  max-width:600px}
.pt-hero-copy .pt-eyebrow {
  color:#806335;
  margin-bottom:28px}
.pt-hero h1 {
  font-size:clamp(46px,5.4vw,78px);
  line-height:1.07;
  letter-spacing:-.045em;
  max-width:570px;
  margin-bottom:26px}
.pt-hero-body {
  color:var(--pt-muted);
  font-size:15px;
  max-width:420px;
  line-height:1.8;
  margin-bottom:32px}
.pt-hero .btn {
  min-height:54px;
  padding:15px 26px}
.pt-hero-caption {
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:56px;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-size:9px;
  color:var(--pt-muted)}
.pt-rule {
  height:1px;
  background:var(--pt-gold);
  width:40px}
.pt-hero-art {
  height:590px;
  position:relative;
  overflow:hidden;
  background:#dbd5bf}
.pt-hero-art>img {
  width:100%;
  height:100%;
  object-fit:cover}
.pt-art-caption {
  position:absolute;
  left:28px;
  bottom:24px;
  font:italic 23px var(--pt-serif);
  color:#f8f5ef;
  text-shadow:0 1px 5px #242b2540}
.pt-promises {
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:28px 32px;
  border-bottom:1px solid var(--pt-line);
  font-size:12px}
.pt-promises>span {
  display:flex;
  align-items:center;
  gap:13px}
.pt-promises i {
  color:var(--pt-gold);
  font-size:16px}
.pt-section {
  margin-top:80px;
  margin-bottom:80px}
.pt-section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px}
.pt-section-heading h2 {
  margin-bottom:12px}
.pt-section-heading p:last-child {
  margin-bottom:0;
  color:var(--pt-muted);
  font-size:13px}
.pt-section-heading .pt-eyebrow {
  margin-bottom:13px}
.pt-section-heading>.pt-text-link {
  margin-bottom:8px}
.pt-home-modules:empty {
  display:none}
.pt-home-modules:not(:empty) {
  padding-top:50px}
.pt-product-grid {
  --bs-gutter-x:24px;
  --bs-gutter-y:38px}
.pt-product-card {
  height:100%;
  background:transparent;
  border:0;
  display:flex;
  flex-direction:column;
  overflow:visible}
.pt-product-image {
  position:relative;
  background:var(--pt-wash);
  aspect-ratio:1/.99;
  overflow:hidden}
.pt-product-image>a {
  display:block;
  height:100%}
.pt-product-image img {
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:multiply;
  transition:transform .25s;
  padding:20px}
.pt-product-image>a:hover img {
  transform:scale(1.035)}
.pt-product-wish {
  position:absolute;
  right:8px;
  top:8px;
  font-size:17px;
  background:#fffdfaab}
.pt-badge {
  position:absolute;
  left:12px;
  top:14px;
  background:var(--pt-surface);
  padding:5px 8px;
  font-size:9px;
  letter-spacing:.03em;
  max-width:70%;
  color:#785c2d}
.pt-product-copy {
  padding:20px 0 0;
  display:flex;
  flex-direction:column;
  flex:1}
.pt-product-copy h3 {
  font:500 14px/1.45 var(--pt-sans);
  letter-spacing:0;
  margin-bottom:8px;
  min-height:40px}
.pt-product-description {
  color:var(--pt-muted);
  font-size:12px;
  line-height:1.6;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  margin-bottom:18px}
.pt-product-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto}
.price {
  font-variant-numeric:tabular-nums}
.price-new {
  font-size:15px;
  font-weight:600}
.price-old {
  display:block;
  color:var(--pt-muted);
  font-size:11px;
  font-weight:400}
.price-tax {
  display:block;
  color:var(--pt-muted);
  font-size:10px}
.pt-product-view {
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border:1px solid var(--pt-line);
  font-size:12px}
.pt-product-view span {
  display:none}
.pt-story {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
  padding:0 0 90px}
.pt-story-art {
  height:310px;
  background:var(--pt-ink);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  color:#c9a962;
  position:relative;
  overflow:hidden}
.pt-story-art:before {
  content:'';
  position:absolute;
  width:210px;
  height:300px;
  border:1px solid #c9a96255;
  border-radius:105px 105px 0 0;
  top:48px;
  transform:rotate(-10deg)}
.pt-story-number {
  font:italic 140px/1 var(--pt-serif);
  z-index:1}
.pt-story-unit {
  font-size:9px;
  letter-spacing:.17em;
  z-index:1;
  margin-top:20px}
.pt-story h2 {
  max-width:420px;
  font-size:40px}
.pt-story p:not(.pt-eyebrow) {
  max-width:430px;
  color:var(--pt-muted);
  font-size:14px}
.pt-page {
  padding-top:26px;
  padding-bottom:90px}
.pt-breadcrumb ol {
  display:flex;
  flex-wrap:wrap;
  gap:7px 12px;
  list-style:none;
  padding:0;
  margin:0 0 32px;
  font-size:11px;
  color:var(--pt-muted)}
.pt-breadcrumb li+li:before {
  content:'/';
  margin-right:12px;
  color:#b9b7a8}
.pt-page-heading {
  margin-bottom:32px}
.pt-page-heading .pt-eyebrow {
  margin-bottom:12px}
.pt-page-heading>p:last-child {
  color:var(--pt-muted);
  max-width:680px}
.pt-category-description {
  font-size:14px;
  max-width:780px;
  color:var(--pt-muted)}
.pt-category-pills {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px}
.pt-category-pills a {
  border:1px solid var(--pt-line);
  padding:10px 16px;
  font-size:12px;
  background:var(--pt-surface)}
.pt-category-pills a:hover {
  border-color:var(--pt-ink)}
.pt-listing-toolbar {
  display:flex;
  gap:20px;
  align-items:center;
  justify-content:space-between;
  border-top:1px solid var(--pt-line);
  padding:18px 0;
  margin-bottom:12px;
  font-size:11px}
.pt-sort {
  display:flex;
  align-items:center;
  gap:10px}
.pt-sort .form-select {
  width:auto;
  min-width:68px;
  max-width:220px;
  min-height:42px;
  font-size:11px}
.pt-pagination {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-top:36px;
  font-size:12px;
  color:var(--pt-muted)}
.pagination {
  --bs-pagination-color:var(--pt-ink);
  --bs-pagination-bg:transparent;
  --bs-pagination-border-color:var(--pt-line);
  --bs-pagination-active-bg:var(--pt-ink);
  --bs-pagination-active-border-color:var(--pt-ink);
  --bs-pagination-hover-color:var(--pt-ink)}
.pt-empty {
  text-align:center;
  padding:65px 20px;
  max-width:700px;
  margin:auto}
.pt-empty-symbol {
  font:400 70px/1 var(--pt-serif);
  color:var(--pt-gold);
  display:block;
  margin-bottom:25px}
.pt-empty h2 {
  font-size:32px}
.pt-empty p {
  color:var(--pt-muted)}
.pt-empty .btn {
  margin-top:10px}
.pt-catalog-search {
  max-width:900px;
  margin-bottom:35px}
.pt-search-row {
  display:flex;
  gap:12px}
.pt-search-options {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
  margin-top:16px;
  font-size:12px}
.pt-search-options .form-select {
  max-width:220px}
.pt-search-options input {
  accent-color:var(--pt-ink)}
.form-control,.form-select {
  min-height:48px;
  border-radius:3px;
  background-color:var(--pt-surface);
  border-color:var(--pt-line);
  font-size:14px;
  color:var(--pt-ink);
  padding:11px 14px}
.form-control:focus,.form-select:focus {
  border-color:var(--pt-gold);
  box-shadow:0 0 0 3px #a27b3615}
.form-label,.col-form-label {
  font-size:12px;
  color:var(--pt-ink);
  font-weight:500}
.form-check-input:checked {
  background-color:var(--pt-ink);
  border-color:var(--pt-ink)}
.invalid-feedback {
  font-size:12px}
.pt-brand-section {
  padding:28px 0;
  border-bottom:1px solid var(--pt-line)}
.pt-brand-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px}
.pt-brand-grid>a {
  font-size:14px;
  display:flex;
  justify-content:space-between;
  gap:10px}
.pt-brand-grid>a span {
  color:var(--pt-gold)}
.pt-product-detail {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:70px}
.pt-gallery {
  position:relative;
  align-self:start;
  min-width:0}
.pt-gallery-main {
  display:block;
  aspect-ratio:1;
  background:var(--pt-wash);
  cursor:zoom-in}
.pt-gallery-main>img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:32px;
  mix-blend-mode:multiply}
.pt-carousel-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin:12px 0;
  font-size:12px;
  color:var(--pt-muted)}
.pt-carousel-controls .pt-icon-button {
  border-color:var(--pt-line)}
.pt-gallery-thumbs {
  display:flex;
  gap:10px;
  padding:4px 0;
  overflow-x:auto}
.pt-gallery-thumbs>a {
  min-width:72px;
  width:72px;
  height:80px;
  display:block;
  border:1px solid var(--pt-line);
  background:var(--pt-wash)}
.pt-gallery-thumbs>a[aria-current=true] {
  border:2px solid var(--pt-gold)}
.pt-gallery-thumbs img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:5px}
.pt-product-purchase {
  padding-top:12px}
.pt-product-purchase h1 {
  font-size:clamp(30px,3.2vw,44px);
  margin:14px 0 16px}
.pt-product-purchase .pt-muted {
  font-size:12px}
.pt-stock {
  font-size:12px;
  margin-bottom:18px}
.pt-stock:before {
  content:'';
  display:inline-block;
  width:6px;
  height:6px;
  background:var(--pt-gold);
  border-radius:50%;
  margin-right:8px}
.pt-detail-price {
  display:flex;
  align-items:baseline;
  gap:16px;
  margin-bottom:26px}
.pt-detail-price strong {
  font-size:25px;
  font-weight:500}
.pt-detail-price del {
  color:var(--pt-muted);
  font-size:13px}
.pt-options {
  border-top:1px solid var(--pt-line);
  padding-top:18px;
  margin:25px 0}
.pt-options legend {
  font-size:14px;
  font-weight:500}
.pt-option-group {
  margin-bottom:16px}
.pt-option-values {
  display:flex;
  flex-wrap:wrap;
  gap:8px}
.pt-option-choice {
  position:relative;
  cursor:pointer;
  display:flex}
.pt-option-choice input {
  position:absolute;
  opacity:0;
  width:100%;
  height:100%;
  margin:0}
.pt-option-choice>span {
  border:1px solid var(--pt-line);
  padding:10px 15px;
  min-height:48px;
  min-width:62px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  font-size:13px;
  background:var(--pt-surface)}
.pt-option-choice small {
  font-size:10px;
  color:var(--pt-muted)}
.pt-option-choice input:checked+span {
  border-color:var(--pt-ink);
  background:var(--pt-ink);
  color:white}
.pt-option-choice input:checked+span small {
  color:#ece5d5}
.pt-option-choice input:focus-visible+span {
  outline:2px solid var(--pt-gold);
  outline-offset:3px}
.pt-purchase-row {
  display:flex;
  gap:12px}
.pt-purchase-row>.btn {
  flex:1}
.pt-quantity {
  display:flex;
  border:1px solid var(--pt-line);
  background:var(--pt-surface);
  height:52px}
.pt-quantity button {
  width:35px;
  border:0;
  background:none}
.pt-quantity input {
  width:42px;
  border:0;
  background:none;
  text-align:center;
  appearance:textfield;
  -moz-appearance:textfield}
.pt-quantity input::-webkit-inner-spin-button {
  appearance:none}
.pt-product-actions {
  display:flex;
  gap:24px;
  margin:18px 0}
.pt-delivery-note {
  display:flex;
  gap:14px;
  font-size:12px;
  color:var(--pt-muted);
  border-top:1px solid var(--pt-line);
  padding-top:20px;
  margin-top:24px}
.pt-delivery-note i {
  margin-top:4px;
  color:var(--pt-gold)}
.pt-product-information {
  margin-top:60px;
  border-top:1px solid var(--pt-line)}
.pt-product-information>details {
  border-bottom:1px solid var(--pt-line);
  padding:20px 0}
.pt-product-information summary {
  font:400 24px var(--pt-serif);
  cursor:pointer;
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center}
.pt-product-information summary:after {
  content:'+';
  font:400 24px var(--pt-sans);
  color:var(--pt-muted)}
.pt-product-information details[open]>summary:after {
  content:'−'}
.pt-product-information details>div,.pt-product-information details>dl {
  margin-top:22px;
  max-width:850px}
.pt-rich-text {
  font-size:14px;
  line-height:1.85;
  overflow-wrap:anywhere}
.pt-rich-text img {
  height:auto;
  max-width:100%}
.pt-rich-text a {
  border-bottom:1px solid var(--pt-gold)}
.pt-rich-text h2,.pt-rich-text h3 {
  margin:30px 0 15px}
.pt-specifications>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  border-bottom:1px solid var(--pt-line);
  padding:12px 0;
  font-size:13px}
.pt-specifications dt {
  font-weight:400;
  color:var(--pt-muted)}
.pt-specifications dd {
  margin:0}
.pt-lightbox {
  border:1px solid var(--pt-line);
  background:var(--pt-surface);
  padding:16px;
  width:min(900px,94vw);
  max-width:94vw;
  max-height:92vh;
  color:var(--pt-ink)}
.pt-lightbox::backdrop {
  background:#17211be0}
.pt-lightbox>img {
  width:100%;
  height:70vh;
  object-fit:contain}
.pt-lightbox-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:12px}
.pt-lightbox .pt-icon-button {
  border:1px solid var(--pt-line)}
.pt-basket-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:50px}
.pt-basket-item {
  display:flex;
  align-items:flex-start;
  gap:22px;
  border-bottom:1px solid var(--pt-line);
  padding:24px 0}
.pt-basket-item:first-child {
  border-top:1px solid var(--pt-line)}
.pt-basket-image {
  width:115px;
  min-width:115px;
  background:var(--pt-wash)}
.pt-basket-image>img {
  width:100%;
  height:140px;
  object-fit:contain;
  padding:8px;
  mix-blend-mode:multiply}
.pt-basket-info {
  flex:1;
  min-width:0}
.pt-basket-info h2 {
  font:500 15px/1.5 var(--pt-sans);
  letter-spacing:0;
  margin:0 0 8px}
.pt-basket-info p {
  font-size:12px;
  margin:0 0 7px}
.pt-basket-price {
  font-size:14px;
  font-weight:500;
  white-space:nowrap}
.pt-basket-controls {
  display:flex;
  align-items:center;
  gap:15px;
  flex-wrap:wrap}
.pt-basket-controls input {
  width:64px;
  min-height:40px;
  padding:7px 10px}
.pt-basket-controls button,.pt-basket-controls a {
  font-size:11px}
.pt-basket-items>.pt-text-link {
  margin-top:28px}
.pt-order-summary {
  padding:28px;
  background:var(--pt-wash);
  align-self:start;
  position:sticky;
  top:180px}
.pt-order-summary h2 {
  font-size:28px}
.pt-order-summary dl>div {
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:13px;
  padding:10px 0}
.pt-order-summary dt {
  font-weight:400}
.pt-order-summary dd {
  margin:0;
  white-space:nowrap}
.pt-order-summary dl>div:last-child {
  border-top:1px solid var(--pt-line);
  margin-top:10px;
  padding-top:20px;
  font-size:16px}
.pt-order-summary p {
  font-size:11px}
.pt-order-summary .btn {
  width:100%;
  font-size:12px}
.pt-basket-modules {
  margin-top:35px}
.pt-checkout-layout {
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
  gap:30px}
.pt-panel {
  padding:30px;
  background:var(--pt-surface);
  border:1px solid var(--pt-line);
  margin-bottom:24px}
.pt-panel h2 {
  font-size:30px}
.pt-panel legend {
  font:400 26px var(--pt-serif);
  margin-bottom:22px}
.pt-panel .col-form-label {
  font-size:12px}
.pt-panel .table {
  font-size:12px}
.pt-account-split {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:30px;
  max-width:1000px}
.pt-account-split>.pt-panel {
  margin:0}
.pt-account-invitation {
  padding:48px;
  background:var(--pt-wash);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center}
.pt-account-invitation h2 {
  font-size:36px}
.pt-account-invitation p {
  font-size:13px;
  color:var(--pt-muted)}
.pt-account-invitation>.pt-eyebrow {
  font-size:11px}
.pt-account-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px}
.pt-account-tile {
  position:relative;
  border:1px solid var(--pt-line);
  background:var(--pt-surface);
  padding:32px 24px;
  min-height:170px}
.pt-account-tile>i {
  font-size:23px;
  color:var(--pt-gold);
  margin-bottom:28px}
.pt-account-tile h2 {
  font:500 14px/1.5 var(--pt-sans);
  letter-spacing:0;
  margin:0}
.pt-account-tile>span {
  position:absolute;
  top:25px;
  right:24px}
.pt-account-tile:hover {
  border-color:var(--pt-gold)}
.pt-account-links {
  display:flex;
  flex-wrap:wrap;
  gap:18px 30px;
  margin-top:32px;
  font-size:13px}
.pt-account-links a {
  border-bottom:1px solid var(--pt-line)}
.pt-editorial {
  max-width:820px;
  margin:0 auto}
.pt-editorial h1 {
  margin-bottom:35px}
.pt-footer {
  background:#ecebe2;
  border-top:1px solid var(--pt-line);
  padding:52px 0 0}
.pt-footer-grid {
  display:grid;
  grid-template-columns:1.5fr 1fr 1.3fr 1fr;
  gap:50px}
.pt-footer h2 {
  font:500 12px/1.5 var(--pt-sans);
  letter-spacing:0;
  margin:6px 0 20px}
.pt-footer ul {
  list-style:none;
  padding:0;
  margin:0;
  font-size:12px;
  color:var(--pt-muted)}
.pt-footer li {
  margin-bottom:12px}
.pt-footer-brand p {
  font-size:12px;
  color:var(--pt-muted);
  max-width:230px;
  margin-top:24px}
.pt-footer .pt-wordmark>span {
  font-size:36px}
.pt-footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid #d2d3c8;
  margin-top:40px;
  padding:20px 0;
  color:var(--pt-muted);
  font-size:10px}
.pt-alerts {
  position:fixed;
  top:16px;
  right:16px;
  z-index:1060;
  width:min(430px,calc(100vw - 32px));
  font-size:13px}
.pt-alerts .alert {
  box-shadow:0 5px 20px #242b2515}
.alert {
  border-radius:3px;
  font-size:13px}
.pt-store .card,.pt-store .border.rounded {
  background:var(--pt-surface);
  border-color:var(--pt-line)!important;
  border-radius:3px!important}
.pt-store .card-header {
  background:var(--pt-wash);
  font-family:var(--pt-serif);
  font-size:20px}
.pt-store .accordion {
  --bs-accordion-bg:var(--pt-surface);
  --bs-accordion-border-color:var(--pt-line);
  --bs-accordion-active-bg:var(--pt-wash);
  --bs-accordion-active-color:var(--pt-ink);
  --bs-accordion-btn-focus-box-shadow:none}
.pt-store .accordion-button {
  font-size:13px}
.pt-store .table {
  --bs-table-bg:transparent;
  --bs-table-striped-bg:#242b2505;
  font-size:13px}
.pt-store .table th {
  font-weight:500}
.pt-store .table-responsive {
  border:1px solid var(--pt-line)}
.pt-store .table td {
  vertical-align:middle;
  padding:14px 12px}
.pt-store .table .img-thumbnail {
  max-width:90px;
  background:var(--pt-wash);
  border:0}
.pt-store .list-group {
  --bs-list-group-bg:var(--pt-surface);
  --bs-list-group-border-color:var(--pt-line);
  font-size:12px}
.pt-store .list-group-item {
  padding:13px 16px}
.pt-store .breadcrumb {
  background:none;
  font-size:11px;
  margin-bottom:32px}
.pt-store #column-left,.pt-store #column-right {
  font-size:12px}
.pt-store #column-left .list-group,.pt-store #column-right .list-group {
  margin-bottom:24px}
.pt-store #content>h1 {
  margin-bottom:30px}
.pt-store .rating {
  color:var(--pt-gold)}
.pt-store .nav-tabs {
  --bs-nav-tabs-border-color:var(--pt-line);
  --bs-nav-tabs-link-active-bg:var(--pt-surface);
  --bs-nav-tabs-link-active-color:var(--pt-ink);
  --bs-nav-tabs-link-active-border-color:var(--pt-line);
  font-size:13px}

@media(min-width:1600px) {
  .pt-hero-art {
  height:640px}
.pt-hero {
  min-height:640px}
}

@media(max-width:1199px) {
  .container {
  width:calc(100% - 64px)}
.pt-header-main {
  gap:24px}
.pt-header-action>span {
  display:none}
.pt-header-actions {
  gap:12px}
.pt-category-nav {
  gap:14px}
.pt-nav-inner {
  gap:20px}
.pt-locale {
  display:none}
.pt-hero {
  gap:30px;
  min-height:510px}
.pt-hero-art {
  height:510px}
.pt-hero h1 {
  font-size:60px}
.pt-product-detail {
  gap:40px}
.pt-story {
  gap:45px}
.pt-basket-layout {
  grid-template-columns:minmax(0,1fr) 300px;
  gap:30px}
.pt-footer-grid {
  gap:30px}
}

@media(max-width:991px) {
  .container {
  width:calc(100% - 40px)}
.pt-header-main {
  min-height:95px;
  gap:20px}
.pt-wordmark>span {
  font-size:35px}
.pt-wordmark small {
  font-size:8px}
.pt-search {
  max-width:290px}
.pt-category-nav {
  gap:15px;
  flex-wrap:wrap}
.pt-category-nav .pt-nav-category:nth-child(n+4) {
  display:none}
.pt-hero {
  gap:30px;
  min-height:460px}
.pt-hero-art {
  height:460px}
.pt-hero h1 {
  font-size:48px}
.pt-hero-copy {
  padding:25px 0}
.pt-hero-body {
  font-size:13px}
.pt-hero-caption {
  margin-top:35px;
  font-size:8px}
.pt-promises {
  padding:24px 0;
  gap:15px;
  font-size:10px}
.pt-section {
  margin-top:60px;
  margin-bottom:60px}
.pt-product-detail {
  gap:28px}
.pt-product-purchase h1 {
  font-size:33px}
.pt-checkout-layout {
  grid-template-columns:1fr 1fr;
  gap:20px}
.pt-panel {
  padding:22px}
.pt-footer-grid {
  grid-template-columns:1.4fr 1fr;
  gap:35px}
.pt-account-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))}
.pt-brand-grid {
  grid-template-columns:repeat(3,1fr)}
}

@media(max-width:767px) {
  html {
  scroll-padding-top:140px}
.container {
  width:calc(100% - 32px)}
.row {
  --bs-gutter-x:16px}
.pt-utility .container {
  font-size:10px;
  padding:6px 0}
.pt-utility a {
  display:none}
.pt-header-main {
  min-height:116px;
  display:grid;
  grid-template-columns:36px 1fr auto;
  gap:6px 12px;
  padding:12px 0 10px}
.pt-menu-toggle {
  display:flex;
  width:36px}
.pt-wordmark>span {
  font-size:31px}
.pt-wordmark small {
  font-size:7px;
  letter-spacing:.14em;
  margin-top:6px}
.pt-header-main .pt-search {
  grid-column:1/-1;
  grid-row:2;
  width:100%;
  max-width:none;
  height:38px;
  margin-top:7px}
.pt-search input {
  font-size:12px}
.pt-header-actions {
  gap:6px}
.pt-header-action {
  min-width:36px;
  min-height:36px}
.pt-header-action i {
  font-size:17px}
.pt-header-action>span {
  display:none}
.pt-cart-count {
  right:-2px}
.pt-navigation {
  display:none}
.pt-navigation.pt-is-open {
  display:block;
  max-height:65vh;
  overflow-y:auto}
.pt-nav-inner {
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:12px 0;
  font-size:13px}
.pt-nav-inner>a {
  padding:14px 0;
  border-bottom:1px solid var(--pt-line)}
.pt-category-nav {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0}
.pt-category-nav .pt-nav-category:nth-child(n) {
  display:flex}
.pt-nav-category {
  border-bottom:1px solid var(--pt-line);
  justify-content:space-between;
  flex-wrap:wrap}
.pt-nav-category>a {
  padding:14px 0}
.pt-category-details {
  position:static}
.pt-category-dropdown {
  position:static;
  width:100%;
  box-shadow:none;
  flex-basis:100%;
  border:0}
.pt-nav-category:has(details[open]) {
  display:block}
.pt-nav-category:has(details[open])>a {
  display:block}
.pt-category-details[open] summary {
  position:absolute;
  right:0;
  margin-top:-48px}
.pt-locale {
  display:flex;
  padding-top:14px;
  margin-left:0}
.pt-hero {
  grid-template-columns:1fr;
  margin-top:25px;
  gap:24px;
  min-height:0}
.pt-hero-copy {
  padding:4px 0 0;
  max-width:100%}
.pt-hero-copy .pt-eyebrow {
  margin-bottom:18px;
  font-size:10px}
.pt-hero h1 {
  font-size:48px;
  max-width:500px;
  line-height:1.04;
  margin-bottom:20px}
.pt-hero-body {
  font-size:13px;
  max-width:480px;
  margin-bottom:24px}
.pt-hero .btn {
  min-height:49px;
  font-size:12px}
.pt-hero-caption {
  display:none}
.pt-hero-art {
  height:360px}
.pt-art-caption {
  left:20px;
  bottom:18px;
  font-size:21px}
.pt-promises {
  display:grid;
  grid-template-columns:1fr;
  gap:13px;
  padding:24px 0;
  font-size:11px}
.pt-promises i {
  width:18px}
.pt-section {
  margin-top:44px;
  margin-bottom:44px}
.pt-section-heading {
  align-items:flex-start;
  gap:12px;
  margin-bottom:24px}
.pt-section-heading h2 {
  font-size:30px}
.pt-section-heading>.pt-text-link {
  font-size:10px;
  white-space:nowrap;
  gap:8px;
  margin-top:40px}
.pt-section-heading p:last-child {
  font-size:11px}
.pt-section-heading .pt-eyebrow {
  font-size:9px}
.pt-product-grid {
  --bs-gutter-x:14px;
  --bs-gutter-y:28px}
.pt-product-image img {
  padding:12px}
.pt-product-copy {
  padding-top:14px}
.pt-product-copy h3 {
  font-size:12px;
  min-height:36px}
.pt-product-description {
  font-size:10px;
  margin-bottom:12px}
.price-new {
  font-size:13px}
.price-old {
  font-size:10px}
.pt-product-view {
  width:36px;
  height:36px;
  font-size:10px;
  min-width:36px}
.pt-product-wish {
  width:36px;
  height:36px;
  font-size:14px;
  top:4px;
  right:4px}
.pt-badge {
  font-size:8px;
  padding:4px 6px;
  left:8px;
  top:8px;
  max-width:65%}
.pt-story {
  grid-template-columns:1fr;
  gap:28px;
  padding-bottom:50px}
.pt-story-art {
  height:220px}
.pt-story-number {
  font-size:110px}
.pt-story h2 {
  font-size:34px}
.pt-story p:not(.pt-eyebrow) {
  font-size:13px}
.pt-page {
  padding-top:20px;
  padding-bottom:50px}
.pt-breadcrumb ol {
  font-size:10px;
  gap:5px 7px;
  margin-bottom:25px}
.pt-breadcrumb li+li:before {
  margin-right:7px}
.pt-page-heading {
  margin-bottom:24px}
.pt-page-heading h1 {
  font-size:34px}
.pt-listing-toolbar {
  align-items:flex-start;
  flex-direction:column;
  gap:12px;
  padding:15px 0}
.pt-sort {
  width:100%;
  gap:6px;
  flex-wrap:wrap}
.pt-sort .form-select {
  max-width:185px;
  flex:1;
  font-size:10px;
  padding:8px 24px 8px 10px}
.pt-pagination {
  align-items:flex-start;
  flex-direction:column;
  font-size:11px}
.pt-search-row {
  gap:8px}
.pt-search-row>.btn {
  padding:10px 13px;
  font-size:11px}
.pt-search-options {
  font-size:11px;
  gap:10px}
.pt-product-detail {
  grid-template-columns:1fr;
  gap:28px}
.pt-gallery-main {
  aspect-ratio:1.12}
.pt-gallery-main>img {
  padding:24px}
.pt-gallery-thumbs>a {
  width:62px;
  min-width:62px;
  height:68px}
.pt-product-purchase {
  padding-top:0}
.pt-product-purchase h1 {
  font-size:36px}
.pt-product-information {
  margin-top:36px}
.pt-product-information summary {
  font-size:23px}
.pt-lightbox>img {
  height:62vh}
.pt-basket-layout {
  grid-template-columns:1fr;
  gap:28px}
.pt-basket-item {
  gap:14px;
  padding:20px 0;
  flex-wrap:wrap}
.pt-basket-image {
  width:80px;
  min-width:80px}
.pt-basket-image>img {
  height:100px}
.pt-basket-info h2 {
  font-size:13px}
.pt-basket-price {
  font-size:12px;
  margin-left:auto}
.pt-basket-controls {
  gap:12px}
.pt-order-summary {
  position:static;
  padding:24px}
.pt-checkout-layout {
  grid-template-columns:1fr;
  gap:0}
.pt-panel {
  padding:22px}
.pt-panel .row {
  --bs-gutter-y:8px}
.pt-panel legend {
  font-size:24px}
.pt-account-split {
  grid-template-columns:1fr;
  gap:20px}
.pt-account-invitation {
  padding:30px}
.pt-account-invitation h2 {
  font-size:30px}
.pt-account-grid {
  gap:14px}
.pt-account-tile {
  padding:22px 18px;
  min-height:150px}
.pt-account-tile h2 {
  font-size:12px}
.pt-account-tile>span {
  top:19px;
  right:17px}
.pt-editorial h1 {
  font-size:35px}
.pt-brand-grid {
  grid-template-columns:repeat(2,1fr)}
.pt-brand-grid>a {
  font-size:12px}
.pt-footer {
  padding-top:35px}
.pt-footer-grid {
  grid-template-columns:1fr 1fr;
  gap:30px 22px}
.pt-footer-brand {
  grid-column:1/-1}
.pt-footer-brand p {
  max-width:280px;
  margin-top:18px}
.pt-footer-grid>div:last-child {
  grid-column:1/-1}
.pt-footer-grid>div:last-child ul {
  display:flex;
  gap:18px;
  flex-wrap:wrap}
.pt-footer h2 {
  font-size:11px;
  margin-bottom:15px}
.pt-footer ul {
  font-size:11px}
.pt-footer .pt-wordmark>span {
  font-size:33px}
.pt-footer-bottom {
  margin-top:25px}
.pt-store .table {
  font-size:11px}
.pt-store .table td {
  padding:10px 8px}
.pt-store .table .btn {
  padding:8px 10px;
  min-height:40px}
.pt-store #column-left,.pt-store #column-right {
  margin-bottom:20px}
.pt-empty {
  padding:45px 8px}
.pt-empty h2 {
  font-size:28px}
.pt-empty p {
  font-size:13px}
}

@media(max-width:359px) {
  .container {
  width:calc(100% - 24px)}
.pt-header-main {
  gap:6px}
.pt-header-actions {
  gap:0}
.pt-wordmark>span {
  font-size:28px}
.pt-hero h1 {
  font-size:42px}
.pt-hero-art {
  height:300px}
.pt-product-bottom {
  gap:4px}
.price-new {
  font-size:12px}
.pt-sort label {
  font-size:10px}
.pt-sort .form-select {
  max-width:145px}
.pt-purchase-row {
  gap:8px}
.pt-purchase-row .btn {
  padding:10px;
  font-size:12px}
}

@media(prefers-reduced-motion:reduce) {
  html {
  scroll-behavior:auto}
*,*:before,*:after {
  animation-duration:.01ms!important;
  transition-duration:.01ms!important;
  scroll-behavior:auto!important}
}

@media print {
  .pt-header,.pt-utility,.pt-footer,.pt-alerts,.pt-product-actions,.pt-menu-toggle {
  display:none}
.container {
  width:100%}
.pt-order-summary {
  position:static}
.pt-page {
  padding:0}
.pt-store {
  background:white}
}


/* Original brand photography: authored layout, reference imagery. */
.pt-hero {
  grid-template-columns:.85fr 1.35fr;
  min-height:550px}
.pt-hero-art {
  height:auto;
  aspect-ratio:16/10;
  background:#111810}
.pt-hero-art picture {
  display:block;
  width:100%;
  height:100%}
.pt-hero-art picture>img {
  width:100%;
  height:100%;
  object-fit:cover}
.pt-story-art {
  height:340px;
  background:#131411}
.pt-story-art:before {
  display:none}
.pt-story-art>img {
  width:100%;
  height:100%;
  object-fit:cover}
.pt-story-number,.pt-story-unit {
  display:none}
@media(min-width:1600px) {
  .pt-hero {
  min-height:600px}
.pt-hero-art {
  height:auto}
}
@media(max-width:1199px) {
  .pt-hero {
  min-height:480px}
.pt-hero-art {
  height:auto;
  aspect-ratio:16/10}
.pt-hero h1 {
  font-size:54px}
.pt-hero-copy {
  padding-right:0}
}
@media(max-width:991px) {
  .pt-hero {
  grid-template-columns:1fr 1.2fr;
  min-height:420px}
.pt-hero h1 {
  font-size:46px}
.pt-hero-art {
  aspect-ratio:16/11}
.pt-story-art {
  height:310px}
}
@media(max-width:767px) {
  .pt-hero {
  grid-template-columns:1fr;
  min-height:0}
.pt-hero h1 {
  font-size:48px}
.pt-hero-art {
  height:420px;
  aspect-ratio:auto}
.pt-hero-art picture>img {
  object-position:center 64%}
.pt-story-art {
  height:320px}
}
@media(max-width:359px) {
  .pt-hero h1 {
  font-size:42px}
.pt-hero-art {
  height:360px}
}

/* Native checkout extensions: preserve provider controls and responsive embed surfaces. */
.pt-checkout-details,.pt-checkout-order,#checkout-confirm,#checkout-shipping-method,#checkout-payment-method {
  min-width:0}
.pt-panel iframe,.pt-panel canvas,.modal-body iframe {
  max-width:100%}
.pt-panel .table-responsive {
  overflow-x:auto}
.modal {
  --bs-modal-bg:var(--pt-surface);
  --bs-modal-border-color:var(--pt-line);
  --bs-modal-border-radius:3px}
.modal-title {
  font-family:var(--pt-serif);
  font-size:26px}
.modal-body {
  font-size:14px}
.pt-store #account-order,.pt-store #account-order-info {
  padding-top:26px;
  padding-bottom:70px}

/* Motion is an enhancement;
   text and native forms remain usable immediately. */
.pt-header:after {
  content:'';
  position:absolute;
  left:0;
  bottom:-1px;
  height:2px;
  width:100%;
  background:linear-gradient(90deg,transparent 0%,var(--pt-gold) 45%,#c9a962 60%,transparent 100%);
  transform:scaleX(0);
  transform-origin:left;
  opacity:0;
  pointer-events:none}
.pt-request-pending .pt-header:after {
  opacity:1;
  animation:pt-progress 1.35s ease-in-out infinite}
.pt-is-loading {
  position:relative;
  overflow:hidden}
.pt-is-loading:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:3;
  background:linear-gradient(105deg,transparent 20%,#fffdfaa6 45%,#d8c59a55 55%,transparent 80%);
  background-size:220% 100%;
  animation:pt-shimmer 1.8s ease-in-out infinite;
  pointer-events:none}
.pt-product-image.pt-is-loading {
  background:#e8e5dc}
.pt-is-loading img {
  opacity:0}
.pt-product-image img,.pt-hero-art img,.pt-gallery-main img {
  transition:opacity .3s ease,transform .25s ease}
.pt-fragment-loading {
  position:relative;
  pointer-events:none;
  min-height:120px}
.pt-fragment-loading:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:4;
  background:linear-gradient(105deg,#f8f5efc9 25%,#f1e8d3df 45%,#f8f5efc9 65%);
  background-size:220% 100%;
  animation:pt-shimmer 1.6s ease-in-out infinite;
  pointer-events:all}
.pt-store button[aria-busy=true]:before {
  content:'';
  width:13px;
  height:13px;
  border:1px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  animation:pt-spin .75s linear infinite}
.pt-hero-copy {
  animation:pt-arrive .45s ease-out both}
.pt-image-error img {
  opacity:1}
.pt-gallery-main {
  touch-action:pan-y}
.pt-lightbox>img {
  touch-action:pan-y}

@keyframes pt-shimmer {
  0% {
  background-position:180% 0}
100% {
  background-position:-80% 0}
}
@keyframes pt-progress {
  0% {
  transform:translateX(-100%) scaleX(.4)}
100% {
  transform:translateX(100%) scaleX(.6)}
}
@keyframes pt-spin {
  to {
  transform:rotate(360deg)}
}
@keyframes pt-arrive {
  from {
  opacity:0;
  transform:translateY(8px)}
to {
  opacity:1;
  transform:translateY(0)}
}

@view-transition {
  navigation:auto}
::view-transition-old(root),::view-transition-new(root) {
  animation-duration:180ms}

@media(prefers-reduced-motion:reduce) {
  .pt-request-pending .pt-header:after {
  animation:none;
  transform:none}
.pt-is-loading:after,.pt-fragment-loading:after {
  animation:none;
  background:#f0ede4aa}
.pt-hero-copy {
  animation:none}
::view-transition-old(root),::view-transition-new(root) {
  animation:none}
}

/* Softer photography edges across the shared design system. */
.pt-hero-art {
  border-radius:14px;
  box-shadow:0 14px 34px #242b2514}
.pt-story-art {
  border-radius:12px;
  box-shadow:0 12px 30px #242b2512}
.pt-product-image {
  border-radius:8px}
.pt-product-image img {
  border-radius:10px}
.pt-gallery-main {
  border-radius:10px;
  overflow:hidden}
.pt-gallery-main>img {
  border-radius:12px}
.pt-gallery-thumbs>a,.pt-basket-image {
  border-radius:6px;
  overflow:hidden}
@media(max-width:767px) {
  .pt-hero-art {
  border-radius:12px;
  box-shadow:0 9px 22px #242b2512}
.pt-story-art {
  border-radius:10px}
.pt-product-image {
  border-radius:7px}
}

.pt-store main>.container:not(.pt-page) {
  padding-top:26px;
  padding-bottom:70px}
.pt-store #content>form {
  max-width:900px;
  padding:28px;
  background:var(--pt-surface);
  border:1px solid var(--pt-line);
  border-radius:4px}
.pt-store .btn-info {
  --bs-btn-bg:var(--pt-wash);
  --bs-btn-border-color:var(--pt-line);
  --bs-btn-color:var(--pt-ink);
  --bs-btn-hover-bg:#e2decf;
  --bs-btn-hover-border-color:var(--pt-line);
  --bs-btn-active-bg:#e2decf;
  --bs-btn-active-border-color:var(--pt-line)}
@media(max-width:767px) {
  .pt-store #content>form {
  padding:20px}
.pt-store #content>form .row {
  --bs-gutter-y:8px}
}


.pt-order-row {
  display:flex;
  align-items:center;
  gap:28px;
  padding:26px 0;
  border-bottom:1px solid var(--pt-line)}
.pt-order-row>div {
  flex:1}
.pt-order-row h2 {
  font-size:27px;
  margin-bottom:10px}
.pt-order-row .pt-eyebrow {
  margin-bottom:8px}
.pt-order-row p:last-child {
  font-size:12px;
  margin-bottom:0}
.pt-order-row>strong {
  font-size:15px;
  font-weight:500;
  white-space:nowrap}
.pt-order-status {
  display:inline-block;
  background:var(--pt-wash);
  border:1px solid var(--pt-line);
  padding:7px 12px;
  font-size:12px}
.pt-order-product {
  display:flex;
  align-items:flex-start;
  gap:24px;
  border-bottom:1px solid var(--pt-line);
  padding:24px 0}
.pt-order-product>div:first-child {
  flex:1;
  min-width:0}
.pt-order-product h2 {
  font:500 15px/1.5 var(--pt-sans);
  letter-spacing:0;
  margin-bottom:10px}
.pt-order-product p {
  font-size:12px;
  margin-bottom:6px}
.pt-order-product>strong {
  font-size:14px;
  white-space:nowrap}
.pt-order-product-actions {
  display:flex;
  flex-direction:column;
  gap:12px;
  align-items:flex-end}
.pt-order-product-actions .btn {
  font-size:11px;
  padding:10px 14px}
.pt-order-totals {
  max-width:440px;
  margin:28px 0 40px auto}
.pt-order-totals>div {
  grid-template-columns:1fr auto}
.pt-order-totals>div:last-child {
  font-size:17px}
@media(max-width:767px) {
  .pt-order-row {
  gap:12px;
  flex-wrap:wrap}
.pt-order-row>div {
  flex-basis:100%}
.pt-order-row h2 {
  font-size:25px}
.pt-order-row .pt-text-link {
  margin-left:auto;
  font-size:11px}
.pt-order-product {
  gap:14px;
  flex-wrap:wrap}
.pt-order-product-actions {
  flex-direction:row;
  align-items:center;
  flex-basis:100%;
  justify-content:space-between}
}

/* Home editorial content shares the catalog's spacing and typographic system. */
.pt-brand-strip {
  padding:35px 0 28px;
  border-bottom:1px solid var(--pt-line)}
.pt-brand-strip-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:15px}
.pt-brand-strip-heading .pt-eyebrow {
  margin:0;
  font-size:9px}
.pt-brand-strip-heading button {
  font-size:10px;
  color:var(--pt-muted);
  padding:7px 0}
.pt-brand-window {
  overflow:hidden;
  position:relative;
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.pt-brand-track {
  display:flex;
  width:max-content;
  animation:pt-brand-travel 46s linear infinite}
.pt-brand-strip-group {
  display:flex;
  align-items:center;
  gap:52px;
  padding-right:52px;
  white-space:nowrap;
  min-height:66px}
.pt-brand-strip-group>a,.pt-brand-strip-group>span {
  font:400 29px/1.2 var(--pt-serif);
  letter-spacing:.04em;
  color:var(--pt-muted)}
.pt-brand-strip-group>a:hover {
  color:var(--pt-ink)}
.pt-brand-strip:hover .pt-brand-track,.pt-brand-strip:focus-within .pt-brand-track,.pt-brand-paused .pt-brand-track {
  animation-play-state:paused}
.pt-mood-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px}
.pt-mood-card {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:355px;
  padding:30px;
  border-radius:10px;
  border:1px solid #d9d6c966;
  transition:transform .2s ease,border-color .2s ease}
.pt-mood-card:hover {
  transform:translateY(-3px);
  border-color:#a27b3677;
  color:var(--pt-ink)}
.pt-mood-fresh {
  background:#eee8d7}
.pt-mood-wood {
  background:#e8e1d6}
.pt-mood-musk {
  background:#e8eae0}
.pt-mood-card>svg {
  width:160px;
  height:135px;
  margin:0 auto 24px}
.pt-mood-card h3 {
  font-size:28px;
  margin-bottom:12px}
.pt-mood-card p {
  font-size:13px;
  color:var(--pt-muted);
  max-width:270px}
.pt-mood-card .pt-text-link {
  margin-top:auto;
  font-size:11px}
.pt-guide-steps {
  position:relative;
  list-style:none;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:50px}
.pt-guide-steps:before {
  content:'';
  position:absolute;
  top:45px;
  left:10px;
  right:10px;
  height:1px;
  background:var(--pt-line);
  z-index:-1;
  transform-origin:left;
  transition:transform .85s ease-out}
.pt-guide-number {
  display:inline-block;
  font:italic 68px/1 var(--pt-serif);
  letter-spacing:-.03em;
  color:#a27b36;
  background:var(--pt-paper);
  padding-right:24px;
  margin-bottom:24px}
.pt-guide-steps h3 {
  font-size:25px;
  max-width:330px}
.pt-guide-steps p {
  color:var(--pt-muted);
  font-size:13px;
  max-width:340px}
.pt-decant-guide {
  border-top:1px solid var(--pt-line);
  padding-top:55px}
.pt-faq {
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:70px;
  border-top:1px solid var(--pt-line);
  padding-top:55px}
.pt-faq h2 {
  max-width:340px}
.pt-faq details {
  border-bottom:1px solid var(--pt-line);
  padding:18px 0}
.pt-faq details:first-child {
  border-top:1px solid var(--pt-line)}
.pt-faq summary {
  display:flex;
  justify-content:space-between;
  gap:20px;
  list-style:none;
  font-size:14px;
  cursor:pointer}
.pt-faq summary::-webkit-details-marker {
  display:none}
.pt-faq summary:after {
  content:'+';
  font-size:20px;
  color:var(--pt-gold)}
.pt-faq details[open]>summary:after {
  content:'−'}
.pt-faq details>p {
  font-size:13px;
  color:var(--pt-muted);
  margin:16px 0 2px;
  max-width:580px}
.pt-support {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:35px 0 70px}
.pt-support h2 {
  font-size:33px;
  max-width:560px}
.pt-support p {
  color:var(--pt-muted);
  font-size:13px;
  max-width:520px;
  margin-bottom:0}
.pt-support>.btn {
  flex-shrink:0}
.pt-scroll-ready {
  transition:opacity .5s ease,transform .5s ease}
.pt-scroll-ready:not(.pt-is-revealed) {
  opacity:0;
  transform:translateY(14px)}
.pt-decant-guide.pt-scroll-ready:not(.pt-is-revealed) .pt-guide-steps:before {
  transform:scaleX(0)}

@keyframes pt-brand-travel {
  to {
  transform:translateX(-50%)}
}

@media(max-width:991px) {
  .pt-mood-grid {
  gap:16px}
.pt-mood-card {
  padding:24px;
  min-height:335px}
.pt-mood-card h3 {
  font-size:25px}
.pt-mood-card p {
  font-size:12px}
.pt-guide-steps {
  gap:25px}
.pt-guide-steps h3 {
  font-size:23px}
.pt-faq {
  gap:40px}
}

@media(max-width:767px) {
  .pt-brand-strip {
  padding-top:24px;
  padding-bottom:20px}
.pt-brand-strip-heading {
  gap:12px}
.pt-brand-strip-heading .pt-eyebrow {
  font-size:8px;
  letter-spacing:.08em}
.pt-brand-strip-heading button {
  font-size:9px;
  white-space:nowrap}
.pt-brand-strip-group {
  gap:34px;
  padding-right:34px;
  min-height:52px}
.pt-brand-strip-group>a,.pt-brand-strip-group>span {
  font-size:23px}
.pt-mood-grid {
  grid-template-columns:1fr;
  gap:14px}
.pt-mood-card {
  padding:24px;
  min-height:0;
  display:grid;
  grid-template-columns:1fr 105px;
  column-gap:14px}
.pt-mood-card>svg {
  grid-column:2;
  grid-row:1/4;
  width:105px;
  height:120px;
  margin:0;
  align-self:center}
.pt-mood-card h3 {
  grid-column:1;
  font-size:25px;
  margin-bottom:10px}
.pt-mood-card p {
  grid-column:1;
  font-size:12px;
  margin-bottom:15px}
.pt-mood-card .pt-text-link {
  grid-column:1;
  justify-self:start;
  font-size:10px}
.pt-guide-steps {
  grid-template-columns:1fr;
  gap:22px}
.pt-guide-steps:before {
  display:none}
.pt-guide-steps>li {
  display:grid;
  grid-template-columns:52px 1fr;
  gap:0 20px}
.pt-guide-number {
  grid-column:1;
  grid-row:1/3;
  font-size:42px;
  padding:0;
  margin:0}
.pt-guide-steps h3 {
  grid-column:2;
  font-size:23px;
  margin:0 0 12px}
.pt-guide-steps p {
  grid-column:2;
  font-size:12px;
  margin:0}
.pt-decant-guide {
  padding-top:35px}
.pt-faq {
  grid-template-columns:1fr;
  gap:22px;
  padding-top:35px}
.pt-faq h2 {
  font-size:31px;
  max-width:100%;
  margin:0}
.pt-faq summary {
  font-size:13px}
.pt-faq details>p {
  font-size:12px}
.pt-support {
  align-items:flex-start;
  flex-direction:column;
  gap:22px;
  padding:0 0 50px}
.pt-support h2 {
  font-size:31px}
.pt-support p {
  font-size:12px}
.pt-support .btn {
  font-size:12px}
}

@media(prefers-reduced-motion:reduce) {
  .pt-brand-track {
  animation:none;
  width:auto;
  display:block;
  transform:none}
.pt-brand-strip-group {
  white-space:normal;
  flex-wrap:wrap;
  gap:20px;
  padding:0}
.pt-brand-strip-group[aria-hidden=true] {
  display:none}
.pt-brand-window {
  mask-image:none}
.pt-brand-strip-heading button {
  display:none}
.pt-scroll-ready:not(.pt-is-revealed) {
  opacity:1;
  transform:none}
.pt-mood-card:hover {
  transform:none}
.pt-guide-steps:before {
  transition:none}
}

/* Progressive fallback: links and content remain available before enhancement starts. */
.pt-carousel-controls {
  display:none}
.pt-enhanced .pt-carousel-controls {
  display:flex}
.pt-brand-track {
  animation:none}
.pt-enhanced .pt-brand-track {
  animation:pt-brand-travel 46s linear infinite}
.pt-enhanced .pt-brand-strip:hover .pt-brand-track,.pt-enhanced .pt-brand-strip:focus-within .pt-brand-track,.pt-enhanced .pt-brand-paused .pt-brand-track {
  animation-play-state:paused}
.pt-brand-strip-heading button {
  display:none}
.pt-enhanced .pt-brand-strip-heading button {
  display:inline-block}
.pt-store:not(.pt-enhanced) .pt-brand-track {
  width:auto;
  display:block}
.pt-store:not(.pt-enhanced) .pt-brand-strip-group {
  flex-wrap:wrap;
  white-space:normal;
  padding:0;
  gap:20px}
.pt-store:not(.pt-enhanced) .pt-brand-strip-group[aria-hidden=true] {
  display:none}
@media(prefers-reduced-motion:reduce) {
  .pt-enhanced .pt-brand-track {
  animation:none;
  width:auto;
  display:block;
  transform:none}
.pt-enhanced .pt-brand-strip-heading button {
  display:none}
}

