:root{--ivory:#f5f0e8;--ink:#211b17;--gold:#b99b69;--dark:#241e19}*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Georgia,'Times New Roman',serif}a{color:inherit;text-decoration:none}header{background:#fbf7f0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:20px 5%;gap:20px}nav{display:flex;gap:24px;font:12px Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}header .right{justify-content:flex-end}.logo{text-align:center;line-height:1.08;letter-spacing:7px;font-size:28px}.logo small{display:block;font:10px Arial,sans-serif;letter-spacing:3px;margin-top:8px}.rule{font-size:13px;letter-spacing:0;display:block;margin:2px}.hero{min-height:560px;display:grid;grid-template-columns:48% 52%;background:linear-gradient(120deg,#1d1916,#393026);color:#f8f2e7}.hero-copy{padding:90px 8% 70px 12%;align-self:center}.hero h1{font-weight:400;font-size:clamp(44px,5vw,78px);line-height:1.03;margin:0 0 22px}.hero p{font-style:italic;font-size:clamp(17px,1.7vw,23px);line-height:1.55;max-width:480px}.button{display:inline-block;background:#f7f1e6;color:#211b17;padding:17px 30px;text-transform:uppercase;font:12px Arial,sans-serif;letter-spacing:2px;margin-top:20px}.hero-photo{border-left:1px solid #6d5841;display:flex;justify-content:center;align-items:center;padding:50px;background:radial-gradient(circle at 60% 50%,#594937,#211a15 70%)}.photo-note{text-align:center;border:1px solid #8a755e;padding:42px;max-width:340px;color:#ded0bb;font:12px Arial,sans-serif;letter-spacing:2px;line-height:2;text-transform:uppercase}.features{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:28px 4%;border-bottom:1px solid #d9d0c3;font:12px Arial,sans-serif;letter-spacing:1.5px;line-height:1.6;text-transform:uppercase}.features div+div{border-left:1px solid #c6b8a6}.section{padding:65px 5%;text-align:center}.section h2{font-weight:400;font-size:32px;letter-spacing:5px;text-transform:uppercase}.collections{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.collection{min-height:310px;background:linear-gradient(150deg,#594b3b,#2b251f);color:#fff;display:flex;align-items:end;justify-content:center;padding:22px}.collection span{background:#f8f0e5;color:#241e19;padding:15px 25px;font:12px Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}.about{background:#241e19;color:#f8f0e5;padding:70px 9%;display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:center}.about h2{font-size:32px;font-weight:400;letter-spacing:4px}.about p{font-size:20px;font-style:italic;line-height:1.6}footer{padding:35px 5%;display:flex;justify-content:space-between;gap:20px;font:12px Arial,sans-serif;letter-spacing:1px}.page{padding:75px 8%;min-height:55vh}.page h1{font-size:54px;font-weight:400}.page p{max-width:760px;font-size:20px;line-height:1.7}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.product{display:block;text-align:left}.product img{width:100%;aspect-ratio:1;object-fit:cover;background:#e5ded3}.product h3{font-size:19px;font-weight:400}.empty{padding:80px 20px;border:1px solid #d6c8b8;text-align:center;grid-column:1/-1}.cartlink{cursor:pointer;border:0;background:none;font:12px Arial,sans-serif;letter-spacing:2px}#cartdrawer{display:none;position:fixed;right:0;top:0;height:100%;width:min(440px,100%);background:#f8f2e9;z-index:20;box-shadow:0 0 0 100vmax #0008;padding:30px;overflow:auto}#cartdrawer.open{display:block}.cartline{padding:14px 0;border-bottom:1px solid #ddd}.muted{opacity:.7;font:13px Arial,sans-serif}button{cursor:pointer}@media(max-width:750px){header{grid-template-columns:1fr auto;padding:18px 5%}.logo{grid-column:1/-1;grid-row:1;font-size:22px}nav{grid-row:2;gap:13px;font-size:10px}header .right{grid-column:2}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero-photo{min-height:260px}.features{grid-template-columns:repeat(2,1fr);gap:18px}.features div:nth-child(3){border-left:0}.collections,.products{grid-template-columns:1fr}.collection{min-height:240px}.about{grid-template-columns:1fr;gap:10px}.page{padding:45px 6%}.page h1{font-size:40px}footer{flex-direction:column}}

/* Product detail uses the same mobile breakpoint as the rest of the shop. */
#detail .product-detail {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 750px) {
  #detail .product-detail {
    grid-template-columns: minmax(0, 1fr);
  }

  #detail .product-detail-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow-wrap: anywhere;
  }

  #detail h1 {
    font-size: clamp(30px, 7vw, 40px);
    margin: 0 0 8px;
  }

  #detail .product-detail-price {
    margin: 0 0 16px;
  }

  #detail [data-add] {
    align-self: stretch;
    margin-top: 0;
  }

  #detail .product-detail-status:empty {
    display: none;
  }

  #detail .product-detail-description {
    order: 1;
    max-width: 100%;
    margin-top: 20px;
  }

  #detail .product-detail-description img {
    max-width: 100%;
    height: auto;
  }
}
