@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600&display=swap');
:root{--paper:#faf8f4;--ink:#302b26;--muted:#71685d;--gold:#8c7049;--line:#dfd8cd;--serif:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}button,a,video{-webkit-tap-highlight-color:transparent}a:focus-visible,video:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:fixed;top:-70px;left:10px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.announcement{text-align:center;background:#eae4d9;padding:9px 16px;font-size:12px;letter-spacing:.08em}.announcement span{margin:0 18px}header{height:116px;padding:14px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{width:175px;height:90px;overflow:hidden;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}nav{display:flex;align-items:center;gap:38px;font-size:14px}.nav-order{border-bottom:1px solid var(--gold);padding:8px 0}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1600px;margin:auto;min-height:650px}.hero-copy{padding:100px 9% 60px 12%;align-self:center}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:600;color:var(--gold);margin:0 0 26px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(64px,6.3vw,100px);margin-bottom:28px}em{font-weight:400;color:var(--gold)}.intro{font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:35px}.button{display:inline-flex;align-items:center;justify-content:center;gap:34px;padding:16px 28px;background:var(--ink);color:white;font-size:14px;transition:background .2s}.button:hover{background:var(--gold)}.hero-note{display:flex;align-items:center;gap:13px;font-size:12px;color:var(--muted);margin-top:65px}.line{width:30px;height:1px;background:var(--gold)}.hero-image{position:relative;min-height:650px;max-height:800px;overflow:hidden}.hero-image>img{width:100%;height:100%;position:absolute;object-position:50% 32%}.image-caption{position:absolute;bottom:0;left:0;right:0;color:white;padding:50px 30px 22px;background:linear-gradient(transparent,#30251d88);font-size:11px;letter-spacing:.13em;display:flex;justify-content:space-between}.collection-note{display:flex;justify-content:space-around;padding:22px 5%;border-bottom:1px solid var(--line);border-top:1px solid var(--line);font-size:13px;color:var(--muted);letter-spacing:.03em}.section{padding:95px 6%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:20px}h2{font-size:clamp(42px,4.5vw,68px);margin-bottom:0}.section-heading>p{color:var(--muted);font-size:14px;max-width:390px;margin-bottom:6px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 24px}.product-image{position:relative;overflow:hidden;background:#e9e1d7;aspect-ratio:2/3}.product-image img{width:100%;height:100%;transition:transform .6s}.product:hover img{transform:scale(1.025)}.stock{position:absolute;left:12px;top:12px;background:#faf8f4e8;padding:4px 10px;font-size:11px;color:#534b40}.product-title{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.product h3{font-family:var(--serif);font-size:28px;font-weight:500;line-height:1.2;margin:0}.swatch{width:15px;height:15px;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 3px var(--paper),0 0 0 4px var(--line);margin-right:4px}.product p{font-size:12px;color:var(--muted);margin:7px 0 15px}.product-order{font-size:13px;padding:9px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.product-order:hover{color:var(--gold);border-color:var(--gold)}.color-note{font-size:12px;color:var(--muted);margin:35px 0 0}.editorial{display:grid;grid-template-columns:1fr 1fr;background:#eee8df}.editorial-image{height:640px;overflow:hidden}.editorial-image img{height:100%;width:100%;object-position:50% 30%}.editorial-copy{padding:65px 14%;align-self:center}.editorial-copy p:not(.eyebrow){color:var(--muted);font-size:15px;margin:28px 0}.text-link{font-size:14px;border-bottom:1px solid var(--gold);padding-bottom:9px}.reels{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.reel video{width:100%;aspect-ratio:9/16;background:#eae5dd;display:block;object-fit:contain}.reel h3{font-size:14px;font-weight:500;margin:16px 0 0}.contact{text-align:center;background:#eee8df;padding:85px 20px}.contact p:not(.eyebrow){color:var(--muted);margin:25px auto;max-width:540px;font-size:15px}.phone{display:block;font-size:13px;margin-top:18px;color:var(--muted)}footer{display:flex;justify-content:space-between;align-items:center;padding:45px 6%;gap:25px;font-size:12px;color:var(--muted)}footer>span{font-family:var(--serif);font-size:24px;letter-spacing:.18em;color:var(--ink)}footer small{display:block;font:9px Manrope,Arial,sans-serif;letter-spacing:.4em;text-align:center}footer p{margin:0}.floating-wa{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:8px;background:#285f48;color:white;z-index:10;padding:12px 18px;border-radius:40px;font-size:13px;box-shadow:0 4px 18px #0002}.floating-wa svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}.floating-wa:hover{background:#174d38}@media(min-width:1200px){.products .product:nth-last-child(-n+2){transform:translateX(calc(50% + 12px))}}@media(max-width:1000px){header{padding-inline:5%}.hero-copy{padding:65px 9%}.hero{min-height:550px}.hero-image{min-height:550px}h1{font-size:65px}.hero-note{margin-top:35px}.products{grid-template-columns:repeat(3,1fr)}.editorial-copy{padding:50px 10%}.editorial-image{height:570px}.reels{gap:16px}.section{padding:70px 5%}}@media(max-width:680px){.announcement{font-size:10px;letter-spacing:.02em}.announcement span{margin:0 7px}header{height:92px}.brand{width:130px;height:75px}nav{gap:18px;font-size:12px}.nav-order{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 6% 38px}.eyebrow{font-size:10px;margin-bottom:20px}h1{font-size:62px}.intro{font-size:14px}.hero-note{margin-top:28px;font-size:11px}.hero-image{min-height:0;height:540px}.hero-image>img{object-position:50% 28%}.collection-note{padding:17px 12px;gap:15px;font-size:10px;text-align:center}.section{padding:55px 5%}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin:20px 0 0;font-size:13px}h2{font-size:45px}.products{grid-template-columns:repeat(2,1fr);gap:30px 14px}.product h3{font-size:23px}.product p{font-size:11px}.product-order{font-size:12px}.stock{top:8px;left:8px;padding:3px 7px;font-size:10px}.swatch{width:12px;height:12px}.color-note{font-size:11px}.editorial{grid-template-columns:1fr}.editorial-image{height:490px}.editorial-copy{padding:45px 7% 55px}.reels{grid-template-columns:repeat(2,1fr);gap:25px 14px}.reel h3{font-size:12px}.contact{padding:60px 6%}.contact p:not(.eyebrow){font-size:14px}footer{flex-wrap:wrap;padding:35px 6% 95px}footer>span{width:100%;font-size:24px}footer small{text-align:left}.floating-wa{bottom:16px;right:16px;padding:12px}.floating-wa span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Gold signature feature */
.gold-signature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px 6% 90px;
  gap: clamp(32px, 6vw, 90px);
}

.gold-signature-photo {
  overflow: hidden;
  background: #e9d5b6;
}

.gold-signature-photo img {
  display: block;
  width: 100%;
  height: auto;
}

.gold-signature-copy {
  padding: 24px 0;
}

.gold-signature-copy h2 {
  font-size: clamp(42px, 4.5vw, 64px);
}

.gold-signature-description {
  max-width: 360px;
  margin: 26px 0 32px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.9;
}

@media (max-width: 680px) {
  .gold-signature {
    grid-template-columns: 1fr;
    padding: 0 6% 55px;
    gap: 28px;
  }

  .gold-signature-copy {
    padding: 0;
  }

  .gold-signature-copy h2 {
    font-size: 44px;
  }
}


/* Testimonials */
.testimonials-section {
  padding: 80px 6%;
  background: #f1ece4;
}

.testimonials-heading {
  max-width: 1280px;
  margin: 0 auto 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}

.review-sample-note {
  color: var(--muted);
  font-size: 13px;
  margin: 18px 0 0;
}

.review-sample-note[hidden] {
  display: none;
}

.review-summary {
  text-align: center;
  min-width: 150px;
}

.review-average {
  font-family: var(--serif);
  font-size: 80px;
  font-weight: 500;
  line-height: 1;
}

.review-outof {
  color: var(--muted);
  font-size: 18px;
}

.review-count {
  color: var(--muted);
  font-size: 14px;
  margin: 10px 0 0;
}

.review-toolbar {
  max-width: 1280px;
  margin: 0 auto 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.review-toolbar p {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.review-motion {
  flex-shrink: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--gold);
  padding: 8px 0;
  font: inherit;
  font-size: 14px;
  color: var(--ink);
  cursor: pointer;
}

.review-track {
  display: flex;
  gap: 20px;
  max-width: 1280px;
  margin: auto;
  padding: 8px 3px 22px;
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: #b7a181 transparent;
}

.review-card {
  flex: 0 0 310px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 28px;
  border: 1px solid #e1d8cb;
  background: var(--paper);
  color: var(--ink);
  text-align: left;
  font: inherit;
  cursor: pointer;
  transition: transform 0.2s, border-color 0.2s;
}

.review-card:hover {
  transform: translateY(-4px);
  border-color: var(--gold);
}

.review-stars {
  color: #906b2d;
  font-size: 21px;
  letter-spacing: 3px;
}

.review-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.8;
  margin: 18px 0 24px;
  min-height: 5.4em;
}

.review-name {
  font-weight: 600;
  font-size: 14px;
  margin-top: auto;
}

.review-date {
  color: var(--muted);
  font-size: 12px;
  margin-top: 3px;
}

.review-read {
  color: var(--gold);
  font-size: 13px;
  margin-top: 20px;
}

.review-form-panel {
  max-width: 1280px;
  margin: 28px auto 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.review-form-panel summary {
  padding: 22px 0;
  font-size: 16px;
  cursor: pointer;
}

.review-form-panel summary span {
  float: right;
  color: var(--gold);
}

#review-form {
  padding: 0 0 28px;
}

.review-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

#review-form label {
  display: block;
  color: var(--ink);
  font-size: 14px;
  margin-bottom: 18px;
}

#review-form input,
#review-form select,
#review-form textarea {
  width: 100%;
  margin-top: 8px;
  border: 1px solid #c9beb0;
  border-radius: 0;
  background: var(--paper);
  color: var(--ink);
  padding: 13px 14px;
  font: inherit;
  font-size: 16px;
}

#review-form textarea {
  resize: vertical;
}

.review-submit {
  padding: 14px 26px;
  border: 0;
  background: #d9d1c5;
  color: #63594c;
  font: inherit;
  font-size: 14px;
  cursor: not-allowed;
}

#review-dialog {
  width: min(540px, calc(100% - 32px));
  max-height: 85vh;
  overflow-y: auto;
  padding: 42px;
  border: 1px solid var(--line);
  background: var(--paper);
  color: var(--ink);
}

#review-dialog::backdrop {
  background: rgba(35, 29, 22, 0.55);
}

.review-dialog-close {
  position: absolute;
  top: 8px;
  right: 10px;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  font-size: 30px;
  color: var(--ink);
  cursor: pointer;
}

.review-dialog-name {
  font-family: var(--serif);
  font-size: 36px;
  font-weight: 500;
  margin: 0 0 10px;
}

.review-dialog-text {
  font-size: 17px;
  line-height: 1.9;
  margin: 24px 0;
  overflow-wrap: anywhere;
}

.review-dialog-date {
  color: var(--muted);
  font-size: 13px;
  margin: 0;
}

.testimonials-section button:focus-visible,
.testimonials-section summary:focus-visible,
.testimonials-section input:focus-visible,
.testimonials-section select:focus-visible,
.testimonials-section textarea:focus-visible,
.review-track:focus-visible,
#review-dialog button:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 4px;
}

@media (max-width: 680px) {
  .testimonials-section {
    padding: 55px 6%;
  }

  .testimonials-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
  }

  .review-summary {
    text-align: left;
  }

  .review-average {
    font-size: 64px;
  }

  .review-toolbar {
    align-items: flex-start;
  }

  .review-toolbar p,
  .review-motion {
    font-size: 12px;
  }

  .review-card {
    flex-basis: 280px;
    padding: 24px;
  }

  .review-form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  #review-dialog {
    padding: 36px 25px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .review-card {
    transition: none;
  }
}

/* Shopee ordering option */
.shopee-order {
  margin: 30px auto 0;
  padding-top: 25px;
  border-top: 1px solid var(--line);
  max-width: 380px;
  text-align: center;
}

.contact .shopee-order p {
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 14px;
}

.shopee-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 14px 25px;
  background: #ee4d2d;
  color: #fff;
  border-radius: 4px;
  font-size: 16px;
  line-height: 1.4;
  transition: background 0.2s, transform 0.2s;
}

.shopee-button:hover {
  background: #d83e20;
  transform: translateY(-2px);
}

.shopee-button strong {
  font-weight: 600;
}

.shopee-icon {
  width: 28px;
  height: 32px;
  flex-shrink: 0;
}
