:root { --ink:#25231f; --muted:#706c64; --cream:#f6f3ed; --line:#d8d1c6; --sand:#d6c4ac; --olive:#596052; } * { box-sizing:border-box; } body { margin:0; background:var(--cream); color:var(--ink); font-family:Arial,Helvetica,sans-serif; } a { color:inherit; text-decoration:none; } button { font:inherit; } .announcement { background:var(--olive); color:#fbfaf5; text-align:center; padding:.65rem 1rem; font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; }.announcement span { opacity:.5; margin:0 .7rem; } header { max-width:1280px; height:80px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; margin:auto; padding:0 2rem; border-bottom:1px solid var(--line); }.wordmark { font-size:1.05rem; letter-spacing:.18em; font-weight:700; }.wordmark em { font:400 1.05rem Georgia,serif; letter-spacing:.06em; } header nav { display:flex; gap:1.5rem; font-size:.84rem; } header nav a:hover { color:#a36f54; }.bag { justify-self:end; background:transparent; padding:.48rem .75rem; border:1px solid var(--ink); border-radius:30px; font-size:.78rem; cursor:pointer; }.bag span { background:var(--ink); color:var(--cream); border-radius:100%; padding:.11rem .32rem; margin-left:.25rem; }.crumb { max-width:1280px; margin:0 auto; padding:1.5rem 2rem; display:flex; flex-wrap:wrap; gap:.55rem; color:var(--muted); font-size:.78rem; }.crumb a:hover { text-decoration:underline; }.crumb strong { color:var(--ink); font-weight:400; }.product { max-width:1280px; margin:0 auto; padding:1rem 2rem 7rem; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr); gap:clamp(2rem,6vw,7rem); }.gallery { min-width:0; }.main-image { background:#e3d8c8; aspect-ratio:4/5; overflow:hidden; }.main-image img { width:100%; height:100%; object-fit:cover; display:block; }.thumbs { display:flex; gap:.7rem; padding-top:.7rem; }.thumb { width:78px; height:96px; padding:0; border:1px solid var(--line); background:#e3d8c8; cursor:pointer; overflow:hidden; }.thumb.active { outline:2px solid var(--ink); outline-offset:2px; }.thumb img { width:100%; height:100%; object-fit:cover; }.thumb.texture { position:relative; background:#d2c8b8; }.thumb.texture span { position:absolute; width:130%; height:130%; left:-15%; top:-15%; background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.55) 0 2px,transparent 3px),radial-gradient(circle at 73% 75%,rgba(76,66,50,.16) 0 1.5px,transparent 2.5px); background-size:15px 17px,18px 19px; }.details { max-width:450px; padding-top:1rem; }.eyebrow { margin:0 0 .9rem; text-transform:uppercase; letter-spacing:.14em; color:var(--muted); font-size:.7rem; }.headline { display:flex; justify-content:space-between; align-items:start; gap:1rem; }.headline h1 { font:400 clamp(2.65rem,4.2vw,4rem)/.98 Georgia,serif; letter-spacing:-.045em; margin:0; }.heart { box-sizing:border-box; flex:none; display:grid; place-items:center; width:36px; min-width:36px; height:36px; min-height:36px; margin:.2rem 0 0; padding:0; border:0; background:transparent; color:var(--ink); cursor:pointer; line-height:0; }.price { font-size:1.15rem; margin:1rem 0 1.7rem; }.description { max-width:410px; line-height:1.65; color:#514e48; }.choice { border-top:1px solid var(--line); margin-top:2rem; padding-top:1.2rem; }.choice > div:first-child { display:flex; justify-content:space-between; font-size:.84rem; }.choice span { color:var(--muted); }.swatches { display:flex; gap:.75rem; padding-top:.8rem; }.swatch { width:30px; height:30px; border:0; border-radius:50%; cursor:pointer; position:relative; }.swatch.selected:after { content:""; position:absolute; inset:-4px; border:1px solid var(--ink); border-radius:50%; }.ivory { background:#e6dfd3; }.sand { background:#c4aa87; }.clay { background:#a76e56; }.quantity { margin:1.8rem 0 .7rem; display:flex; align-items:center; gap:1rem; font-size:.84rem; }.quantity span { margin-right:auto; }.quantity button { width:27px; height:27px; border:0; background:transparent; cursor:pointer; font-size:1.15rem; }.add { width:100%; display:flex; justify-content:space-between; padding:1rem 1.2rem; border:1px solid var(--ink); background:var(--ink); color:var(--cream); cursor:pointer; font-size:.85rem; transition:.2s; }.add:hover { background:#a36f54; border-color:#a36f54; }.notice { height:1rem; margin:.65rem 0 0; color:var(--olive); font-size:.78rem; }.benefits { border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:1.8rem; padding:.7rem 0; }.benefits > div { display:flex; align-items:center; gap:.75rem; padding:.55rem 0; }.benefits span { font-size:1.2rem; }.benefits p { margin:0; display:grid; gap:.16rem; font-size:.78rem; }.benefits strong { font-weight:500; }.benefits small { color:var(--muted); }.accordions { margin-top:.7rem; }.accordions details { border-bottom:1px solid var(--line); padding:.1rem 0; }.accordions summary { list-style:none; display:flex; justify-content:space-between; padding:1rem 0; cursor:pointer; font-size:.85rem; }.accordions summary::-webkit-details-marker { display:none; }.accordions details p { margin:0 0 1rem; color:var(--muted); font-size:.82rem; line-height:1.6; }.story { background:#c4b195; display:grid; grid-template-columns:1fr 1fr; gap:2rem; padding:clamp(3rem,7vw,7rem) max(2rem,calc((100vw - 1100px)/2)); }.story h2,.section-head h2 { font:400 clamp(2.2rem,4vw,3.7rem)/1 Georgia,serif; letter-spacing:-.045em; margin:.2rem 0; }.story > p { max-width:360px; align-self:end; line-height:1.7; color:#4a4136; }.related { max-width:1280px; margin:auto; padding:6.5rem 2rem; }.section-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:2rem; }.section-head > a { font-size:.8rem; border-bottom:1px solid var(--ink); padding-bottom:.2rem; }.related-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem; max-width:770px; }.related-card { display:grid; gap:.7rem; }.related-card h3 { font:400 1.25rem Georgia,serif; margin:0; }.related-card p { margin:0; font-size:.82rem; }.shape { height:280px; position:relative; background:#d9d1c4; overflow:hidden; display:grid; place-items:center; }.shape:after { content:""; position:absolute; width:54%; height:7%; bottom:16%; border-radius:50%; background:rgba(72,61,48,.14); filter:blur(7px); }.shape.candle:before { content:""; width:150px; height:60px; border-radius:50%; background:linear-gradient(110deg,#e9e4dc,#c4bbad); box-shadow:inset 8px 0 13px rgba(255,255,255,.5),inset -8px 0 11px rgba(60,48,35,.1); }.shape.candle { background:#c9b9a5; }.shape.candle { --candle:1; }.shape.candle span { display:none; }.shape.candle::before { box-shadow:inset 8px 0 13px rgba(255,255,255,.5),inset -8px 0 11px rgba(60,48,35,.1),0 0 0 0 transparent; }.shape.tray:before { content:""; width:210px; height:98px; border-radius:50%; background:linear-gradient(110deg,#e9e4dc,#c4bbad); box-shadow:inset 0 0 0 8px rgba(104,88,68,.13),inset 8px 0 13px rgba(255,255,255,.35); }.mini-cart { position:fixed; z-index:3; right:1.3rem; bottom:1.3rem; width:min(345px,calc(100% - 2.6rem)); background:#fffdf8; padding:1.2rem; box-shadow:0 12px 36px rgba(45,38,28,.18); transform:translateY(140%); transition:transform .3s ease; }.mini-cart.show { transform:none; }.mini-cart > div { display:flex; justify-content:space-between; }.mini-cart button { border:0; background:transparent; cursor:pointer; }.mini-cart p { color:var(--muted); font-size:.83rem; }.mini-cart a { display:inline-block; font-size:.78rem; border-bottom:1px solid var(--ink); padding-bottom:.2rem; }.checkout { float:right; background:var(--ink)!important; color:var(--cream); padding:.65rem .85rem; font-size:.75rem; } footer { max-width:1280px; margin:auto; border-top:1px solid var(--line); padding:2rem; display:flex; justify-content:space-between; font-size:.75rem; color:var(--muted); } footer .wordmark { color:var(--ink); }
@media(max-width:760px) { header { height:68px; padding:0 1rem; grid-template-columns:1fr auto; } header nav { display:none; }.crumb { padding:1.2rem 1rem; }.product { padding:0 1rem 4rem; grid-template-columns:1fr; gap:2.3rem; }.details { padding:0; max-width:none; }.main-image { max-height:620px; }.story { grid-template-columns:1fr; padding:4rem 1.5rem; }.story > p { margin:0; }.related { padding:4rem 1rem; }.shape { height:220px; } footer { padding:1.5rem 1rem; } }

.reviews { max-width:1280px; margin:auto; padding:6rem 2rem; }.reviews-head { display:flex; justify-content:space-between; align-items:end; padding-bottom:1.8rem; border-bottom:1px solid var(--line); }.reviews-head h2,.review-form-wrap h3 { margin:0; font:400 2.2rem Georgia,serif; letter-spacing:-.04em; }.rating-summary { display:flex; gap:.7rem; align-items:center; }.rating-summary > strong { font:400 2.6rem Georgia,serif; }.rating-summary div { display:grid; gap:.15rem; }.rating-summary span { letter-spacing:.1em; }.rating-summary small { color:var(--muted); font-size:.72rem; }.review-list { display:grid; }.review { display:grid; grid-template-columns:155px 1fr; gap:1.5rem; padding:1.45rem 0; border-bottom:1px solid var(--line); }.review-meta { display:grid; align-content:start; gap:.32rem; }.review-meta strong { font-size:.85rem; }.review-meta span,.review-meta small { color:var(--muted); font-size:.7rem; }.review-content { display:grid; gap:.55rem; }.review-content p { margin:0; color:#514e48; line-height:1.65; }.empty-review { padding:2rem 0; border-bottom:1px solid var(--line); color:var(--muted); font-size:.85rem; }.review-form-wrap { display:grid; grid-template-columns:.75fr 1.25fr; gap:3rem; padding-top:3rem; }.review-form-wrap > div > p:not(.eyebrow) { color:var(--muted); font-size:.8rem; line-height:1.6; }.review-form-wrap form { display:grid; gap:1rem; }.review-form-wrap label { display:grid; gap:.45rem; font-size:.78rem; }.review-form-wrap input,.review-form-wrap textarea { border:1px solid var(--line); background:#fffdfa; padding:.78rem; resize:vertical; }.rating-picker { display:grid; gap:.5rem; font-size:.78rem; }.rating-picker > div { display:flex; gap:.1rem; }.rating-picker button { border:0; background:transparent; color:#c3b9aa; cursor:pointer; padding:0; font-size:1.45rem; }.rating-picker button.active { color:var(--ink); }.review-submit { justify-self:start; border:1px solid var(--ink); background:var(--ink); color:var(--cream); padding:.85rem 1.1rem; cursor:pointer; font-size:.8rem; }.review-form-wrap form > p { min-height:1em; margin:0; color:var(--olive); font-size:.72rem; }
@media(max-width:760px) { .reviews { padding:4rem 1rem; }.reviews-head { align-items:start; gap:1rem; flex-direction:column; }.reviews-head h2 { font-size:2rem; }.review { grid-template-columns:1fr; gap:.7rem; }.review-form-wrap { grid-template-columns:1fr; gap:1.5rem; }.review-form-wrap h3 { font-size:1.8rem; } }
.description#productDescription { white-space:pre-line; }
.main-image { position:relative; display:grid; place-items:center; }
.main-image img[hidden],.thumb[hidden] { display:none!important; }
.product-visual-shape { position:relative; z-index:1; display:block; }
.product-visual-shape:after { content:""; position:absolute; left:50%; bottom:-8%; width:135%; height:10%; transform:translateX(-50%); border-radius:50%; background:rgba(72,61,48,.15); filter:blur(8px); }
.product-visual-shape.vase { width:38%; height:62%; border-radius:39% 39% 16% 16% / 16% 16% 11% 11%; background:linear-gradient(108deg,#f6f1ea 0%,#ded4c6 52%,#b7aa99 100%); box-shadow:inset 14px 0 19px rgba(255,255,255,.48), inset -12px 0 16px rgba(77,64,48,.14); }
.product-visual-shape.vase.arc { width:43%; height:55%; border-radius:48% 48% 19% 19% / 30% 30% 12% 12%; }
.product-visual-shape.candle { width:48%; height:18%; border-radius:50%; background:linear-gradient(108deg,#eee7dd,#b9ab99); box-shadow:inset 11px 0 14px rgba(255,255,255,.55), inset -9px 0 12px rgba(75,61,45,.13); }
.product-visual-shape.candle.pebble { width:40%; height:16%; border-radius:48% 52% 47% 53%; }
.product-visual-shape.tray { width:62%; height:23%; border-radius:50%; background:linear-gradient(108deg,#eee7dd,#c1b4a1); box-shadow:inset 0 0 0 8px rgba(104,88,68,.13), inset 9px 0 14px rgba(255,255,255,.38); }
.product-visual-shape.tray.square { width:58%; height:28%; border-radius:16px; }
.heart.active { color:#a36f54; }
.availability { display:flex; justify-content:space-between; gap:1rem; align-items:center; margin:1.8rem 0 .7rem; padding-top:1.15rem; border-top:1px solid var(--line); font-size:.82rem; }
.availability > span { color:var(--olive); font-weight:600; }
.availability small { color:var(--muted); text-align:right; }
.restock-form { display:block; margin-top:.7rem; }
.availability[hidden],.restock-form[hidden],.restock-email-fields[hidden] { display:none!important; }
.restock-trigger { width:100%; border:1px solid var(--ink); background:transparent; padding:1rem 1.2rem; cursor:pointer; font-size:.85rem; }
.restock-trigger:disabled { color:var(--muted); cursor:default; }
.restock-email-fields { display:grid; grid-template-columns:1fr auto; gap:.55rem; }
.restock-form label { display:grid; gap:.35rem; color:var(--muted); font-size:.72rem; }
.restock-form input { border:1px solid var(--line); background:#fffdf8; padding:.7rem; }
.restock-form button { align-self:end; border:1px solid var(--ink); background:transparent; padding:.7rem .8rem; cursor:pointer; font-size:.74rem; }
.shape.vase:before { content:""; width:112px; height:190px; display:block; border-radius:42% 42% 22% 22% / 25% 25% 12% 12%; background:linear-gradient(108deg,#f5efe7,#c8bbaa); box-shadow:inset 10px 0 15px rgba(255,255,255,.5),inset -8px 0 12px rgba(70,55,40,.12); }
.shape.vase.arc:before { width:125px; height:168px; border-radius:48% 48% 20% 20%; }
.related-photo { position:relative; z-index:1; width:100%; height:100%; object-fit:cover; }
footer > div { display:flex; gap:1rem; font-size:.74rem; } footer > div a { border-bottom:1px solid transparent; } footer > div a:hover { border-color:var(--ink); }
@media(max-width:540px) { .restock-email-fields { grid-template-columns:1fr; }.restock-email-fields button { width:100%; }.availability { align-items:start; flex-direction:column; gap:.4rem; }.availability small { text-align:left; } }
.menu-button { display:none; border:0; background:transparent; color:var(--ink); font-size:1.2rem; cursor:pointer; }.mobile-nav { position:fixed; z-index:10; inset:0 auto 0 0; width:min(330px,88vw); padding:1.35rem; background:var(--cream); box-shadow:16px 0 45px rgba(0,0,0,.18); transform:translateX(-105%); transition:transform .28s ease; }.mobile-nav.open { transform:translateX(0); }.mobile-nav > div { display:flex; align-items:center; justify-content:space-between; padding-bottom:1.5rem; border-bottom:1px solid var(--line); }.mobile-nav button { border:0; background:transparent; font-size:1.45rem; cursor:pointer; }.mobile-nav nav { display:grid; gap:1.15rem; padding:2rem 0; }.mobile-nav nav a { font:400 1.65rem Georgia,serif; }.mobile-nav > a { font-size:.78rem; border-bottom:1px solid var(--ink); padding-bottom:.2rem; }
@media(max-width:760px) { header { grid-template-columns:auto 1fr auto; gap:.75rem; }.menu-button { display:block; } }
.review-content .review-photo { width:min(260px,100%); max-height:320px; object-fit:cover; border:1px solid var(--line); margin-top:.35rem; }.review-form-wrap label small { color:var(--muted); font-size:.68rem; }
.custom-order-link { display:inline-block; margin-top:1rem; padding-bottom:.2rem; border-bottom:1px solid var(--ink); font-size:.78rem; }
.purchase-secondary-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.65rem 1rem; margin-top:1rem; }
.purchase-secondary-actions .custom-order-link { margin-top:0; }
.whatsapp-product-link { display:inline-flex; align-items:center; min-height:31px; padding:.4rem .65rem; border:1px solid var(--olive); border-radius:99px; color:var(--olive); font-size:.72rem; font-weight:600; }
.whatsapp-product-link:hover { background:var(--olive); color:var(--cream); }
.member-actions { display:flex; align-items:center; gap:0; white-space:nowrap; }.member-actions a { display:inline-flex; align-items:center; min-height:30px; padding:.4rem .56rem; border:1px solid var(--ink); font-size:.66rem; text-decoration:none; }.member-actions a:first-child { border-radius:99px 0 0 99px; }.member-actions a + a { margin-left:-1px; background:var(--ink); color:var(--cream); }.member-actions a:last-child { border-radius:0 99px 99px 0; }.member-actions.is-signed-in a { border-radius:99px; background:transparent; color:var(--ink); }.mobile-nav .member-actions { display:grid; gap:1.15rem; }.mobile-nav .member-actions a { min-height:0; padding:0; border:0; border-radius:0; background:transparent; color:inherit; font:400 1.65rem Georgia,serif; }
.size-guide { display:block; margin:.75rem 0 1rem; color:var(--muted); font-size:.72rem; line-height:1.45; }.product-media-tools { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.8rem; }.product-media-tools a,.product-media-tools button { border:1px solid var(--ink); background:transparent; color:var(--ink); padding:.6rem .72rem; font-size:.7rem; cursor:pointer; text-decoration:none; }.spin-viewer { width:min(650px,calc(100% - 2rem)); border:0; background:var(--cream); padding:1.6rem; box-shadow:0 24px 60px rgba(25,25,22,.28); }.spin-viewer::backdrop { background:rgba(25,25,22,.48); }.spin-viewer h2 { margin:.15rem 0 1rem; font:400 2rem Georgia,serif; }.spin-viewer img { display:block; width:100%; max-height:62vh; object-fit:contain; background:#e6ddd1; }.spin-viewer label { display:grid; gap:.5rem; margin-top:1rem; font-size:.75rem; }.spin-viewer input { width:100%; accent-color:var(--olive); }.spin-viewer small { display:block; margin-top:.6rem; color:var(--muted); font-size:.7rem; }.spin-close { position:absolute; top:.7rem; right:.7rem; border:0; background:transparent; font-size:1.35rem; cursor:pointer; }

/* Conversion details stay visible without competing with the object itself. */
@media(min-width:961px) { .details { position:sticky; top:1.4rem; align-self:start; } }
.purchase-confidence { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; margin-top:1rem; }
.purchase-confidence > div { min-height:68px; display:grid; align-content:center; gap:.28rem; padding:.8rem .9rem; border:1px solid var(--line); background:#fbf9f4; }
.purchase-confidence strong { font-size:.76rem; font-weight:600; }
.purchase-confidence small { color:var(--muted); font-size:.68rem; line-height:1.4; }
.decision-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin-top:.7rem; border-top:1px solid var(--line); border-left:1px solid var(--line); background:#fbf9f4; }
.decision-summary > div { display:grid; align-content:start; gap:.28rem; min-height:78px; padding:.75rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.decision-summary strong { color:var(--ink); font-size:.72rem; font-weight:700; line-height:1.35; }
.decision-summary small { color:var(--muted); font-size:.64rem; line-height:1.45; }
.decision-summary > a { grid-column:1 / -1; min-height:44px; display:flex; align-items:center; padding:.7rem .75rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--ink); font-size:.7rem; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; }
.benefits > div { align-items:flex-start; }
.benefits span { font-size:1rem; }
.benefits p { gap:.2rem; }
@media(max-width:760px) {
  .product { padding-bottom:3rem; }
  .details .add { position:static; box-shadow:none; }
  .purchase-confidence { grid-template-columns:1fr; }
  .decision-summary > div { min-height:70px; padding:.68rem; }
  .benefits { grid-template-columns:1fr; gap:0; }
}

/* The purchase action stays reachable on a phone without obscuring product information. */
.mobile-purchase-bar { display:none; }
@media(max-width:760px) {
  body { padding-bottom:5.8rem; }
  .mobile-purchase-bar:not([hidden]) {
    position:fixed;
    z-index:30;
    right:0;
    bottom:0;
    left:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:.8rem;
    padding:.65rem max(1rem, env(safe-area-inset-right)) calc(.65rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
    border-top:1px solid var(--line);
    background:rgba(251,249,244,.98);
    box-shadow:0 -10px 30px rgba(38,35,29,.12);
  }
  .mobile-purchase-bar > div { display:grid; gap:.18rem; min-width:0; }
  .mobile-purchase-bar span { color:var(--muted); font-size:.68rem; line-height:1.2; }
  .mobile-purchase-bar strong { color:var(--ink); font:600 .86rem/1.2 Arial,Helvetica,sans-serif; }
  .mobile-purchase-bar button { min-height:48px; border:1px solid var(--ink); background:var(--ink); color:var(--cream); padding:.7rem .9rem; font-size:.78rem; font-weight:700; white-space:nowrap; }
  .mobile-purchase-bar button:disabled { background:#74786f; border-color:#74786f; color:#fff; opacity:.8; }
}

.mini-cart { display:grid; gap:.75rem; }
.mini-cart-head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.mini-cart-head button { min-width:44px; min-height:44px; font-size:1.35rem; line-height:1; }
.mini-cart p { margin:0; }
.mini-cart-actions { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.mini-cart-actions a { float:none; }
.mini-cart-actions .checkout { text-decoration:none; }
@media(max-width:760px) {
  .mini-cart {
    z-index:40;
    right:0;
    left:0;
    bottom:0;
    width:100%;
    max-width:none;
    padding:1.15rem 1.15rem calc(1.15rem + env(safe-area-inset-bottom));
    border-radius:18px 18px 0 0;
    box-shadow:0 -16px 40px rgba(45,38,28,.22);
    transform:translateY(110%);
  }
  .mini-cart.show { transform:none; }
  .mini-cart-actions {
    display:grid;
    grid-template-columns:1fr;
    gap:.55rem;
  }
  .mini-cart-actions a {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:.75rem 1rem;
    border:1px solid var(--ink);
    border-bottom:1px solid var(--ink);
    text-align:center;
    text-decoration:none;
    font-size:.8rem;
  }
  .mini-cart-actions .checkout {
    background:var(--ink);
    color:var(--cream);
  }
}

/* Product decision layer */
.main-image { aspect-ratio:4 / 5; background:#e8dfd3; }
.main-image img { object-position:center; }
.gallery-meta { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-top:.72rem; color:var(--muted); font-size:.68rem; letter-spacing:.03em; }
.gallery-index { color:var(--ink); font-size:.68rem; font-variant-numeric:tabular-nums; letter-spacing:.08em; }
.product { align-items:start; }
@media(min-width:761px) { .gallery { position:sticky; top:1.25rem; align-self:start; } }
.gallery-note { margin:.85rem 0 0; max-width:430px; color:var(--muted); font-size:.72rem; line-height:1.55; }
.details { max-width:490px; }
@media(min-width:761px) {
  .gallery { display:grid; grid-template-columns:82px minmax(0,1fr); column-gap:.85rem; align-items:start; }
  .gallery .main-image { grid-column:2; grid-row:1; }
  .gallery .thumbs { grid-column:1; grid-row:1; display:flex; flex-direction:column; gap:.65rem; padding:0; }
  .gallery .thumb { width:82px; height:102px; }
  .gallery .gallery-meta,.gallery .gallery-note { grid-column:2; }
  .gallery .gallery-meta { grid-row:2; }
  .gallery .gallery-note { grid-row:3; }
}
.product-tags { display:flex; flex-wrap:wrap; gap:.42rem; margin:1.1rem 0 0; }
.product-tags span { padding:.36rem .55rem; border:1px solid var(--line); border-radius:99px; color:#5a564e; font-size:.68rem; }
.price-row { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin:1rem 0 1.25rem; padding-bottom:1rem; border-bottom:1px solid var(--line); }
.price-row .price { margin:0; font:400 1.32rem Georgia,serif; }
.price-row span { color:var(--olive); font-size:.7rem; }
.product-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:1.45rem 0 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.product-facts > div { min-width:0; padding:1rem .75rem 1rem 0; display:grid; gap:.3rem; }
.product-facts > div + div { padding-left:.75rem; border-left:1px solid var(--line); }
.product-facts dt { color:var(--muted); font-size:.64rem; letter-spacing:.08em; text-transform:uppercase; }
.product-facts dd { margin:0; color:#49453e; font-size:.72rem; line-height:1.45; }
.product-use { max-width:1280px; margin:0 auto; padding:0 2rem 6.5rem; display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr); gap:clamp(2rem,7vw,7rem); align-items:end; }
.product-use h2 { margin:.15rem 0 .9rem; font:400 clamp(2.35rem,4vw,4.1rem)/.98 Georgia,serif; letter-spacing:-.045em; }
.product-use > div > p:not(.eyebrow) { max-width:360px; margin:0; color:var(--muted); line-height:1.7; }
.use-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); }
.use-points article { min-height:180px; padding:1.2rem 1rem 0 0; }
.use-points article + article { padding-left:1rem; border-left:1px solid var(--line); }
.use-points span { color:var(--muted); font-size:.68rem; letter-spacing:.1em; }
.use-points h3 { margin:2.7rem 0 .55rem; font:400 1.28rem Georgia,serif; }
.use-points p { margin:0; color:#5b574f; font-size:.76rem; line-height:1.58; }
.story h2 { white-space:pre-line; }
.related-grid { grid-template-columns:repeat(3,minmax(0,1fr)); max-width:none; }
.related-card { border-bottom:1px solid var(--line); padding-bottom:1.1rem; }
.related-media { aspect-ratio:1; overflow:hidden; background:#d9d1c4; }
.related-media img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; transition:transform .35s ease; }
.related-card:hover .related-media img { transform:scale(1.03); }
@media(max-width:900px) { .product-use { grid-template-columns:1fr; gap:2.2rem; }.related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .main-image { aspect-ratio:1 / 1.12; }.product-tags { margin-top:.9rem; }.product-facts { grid-template-columns:1fr; }.product-facts > div,.product-facts > div + div { padding:.82rem 0; border-left:0; }.product-facts > div + div { border-top:1px solid var(--line); }.product-use { padding:0 1rem 4rem; }.use-points { grid-template-columns:1fr; }.use-points article,.use-points article + article { min-height:0; padding:1.2rem 0; border-left:0; }.use-points article + article { border-top:1px solid var(--line); }.use-points h3 { margin:1.3rem 0 .45rem; }.related-grid { grid-template-columns:1fr; } }

@media(max-width:760px) {
  .related { padding:2.5rem 1rem 3.25rem; overflow:hidden; }
  .related .section-head { align-items:flex-end; margin-bottom:1.25rem; }
  .related .section-head h2 { font-size:1.85rem; }
  .related .section-head > a { flex-shrink:0; white-space:nowrap; }
  .related-grid { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(76vw,1fr); gap:1rem; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; padding:0 .9rem .65rem 0; -webkit-overflow-scrolling:touch; }
  .related-card { scroll-snap-align:start; }
  .related-media { aspect-ratio:4 / 5; }
}

.product-editorial { max-width:1280px; margin:0 auto; padding:4.75rem 2rem; display:grid; grid-template-columns:minmax(0,1.16fr) minmax(280px,.64fr); gap:clamp(2rem,7vw,8rem); border-bottom:1px solid var(--line); }
.product-editorial h2 { max-width:700px; margin:.15rem 0 1.35rem; font:400 clamp(2rem,3.5vw,3.5rem)/1 Georgia,serif; letter-spacing:-.045em; }
.product-editorial #productEditorialCopy { max-width:690px; color:#514e48; font-size:.95rem; line-height:1.78; }
.product-editorial #productEditorialCopy p { margin:0 0 1.15rem; }
.product-editorial-more { margin:1.55rem 0 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.product-editorial-more summary { display:flex; align-items:center; justify-content:space-between; gap:1.2rem; padding:1.05rem 0; color:var(--ink); cursor:pointer; font-size:.82rem; font-weight:600; list-style:none; }
.product-editorial-more summary::-webkit-details-marker { display:none; }
.product-editorial-more .editorial-more-state { color:var(--muted); font-size:.74rem; font-weight:400; white-space:nowrap; }
.product-editorial-more[open] .editorial-more-state { font-size:0; }
.product-editorial-more[open] .editorial-more-state::after { content:'Daha az göster −'; font-size:.74rem; }
.product-editorial-more-copy { padding:1.15rem 0 .25rem; }
.product-faq { align-self:start; padding:1.25rem 0 0; border-top:1px solid var(--ink); }
.product-faq details { border-bottom:1px solid var(--line); }
.product-faq summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 0; cursor:pointer; font-size:.84rem; }
.product-faq summary::after { content:'+'; color:var(--muted); font-size:1rem; }
.product-faq details[open] summary::after { content:'−'; }
.product-faq p { margin:0 0 1rem; color:var(--muted); font-size:.78rem; line-height:1.65; }
@media(max-width:760px) { .product-editorial { padding:3.5rem 1rem; grid-template-columns:1fr; gap:2rem; }.product-editorial h2 { font-size:2rem; }.product-editorial #productEditorialCopy { font-size:.88rem; }.product-editorial-more summary { align-items:flex-start; }.product-faq { padding-top:1rem; } }

.product-guide-links { display:grid; gap:.75rem; margin-top:1.4rem; padding-top:1.2rem; border-top:1px solid var(--line); }
.product-guide-links .eyebrow { margin:0; }
.product-guide-links > strong { font:400 1.05rem Georgia,serif; }
.product-guide-links > div { display:grid; gap:.55rem; }
.product-guide-links a { display:flex; align-items:center; justify-content:space-between; gap:.8rem; color:#49453e; font-size:.76rem; line-height:1.45; }
.product-guide-links a span { flex:0 0 auto; }
.product-guide-links a:hover { text-decoration:underline; }

/* Keep the product journey compact once the purchasing panel ends. */
.product { padding-bottom:clamp(3rem,4vw,4rem); }
.product-use { padding-bottom:clamp(2.5rem,3vw,3.5rem); }
.related { padding-top:clamp(2.75rem,3.5vw,3.5rem); }
@media(max-width:760px) {
  .product { padding-bottom:2.5rem; }
  .product-use { padding-bottom:2.25rem; }
  .related { padding-top:2rem; }
}

/* Mobile visitors should see complementary products while purchase intent is
   still high. The source order remains semantic for assistive technology and
   search, while the visual order puts the related carousel directly after the
   purchasing panel. */
@media(max-width:760px) {
  #main-content { display:flex; flex-direction:column; min-width:0; overflow-x:clip; }
  #main-content > .crumb { order:0; }
  #main-content > .product { order:1; }
  #main-content > .related { order:2; width:auto; min-width:0; max-width:none; margin-inline:0; padding-top:1.75rem; }
  #main-content > .product-use { order:3; padding-top:1rem; }
  #main-content > .story { order:4; }
  #main-content > .product-editorial { order:5; }
  #main-content > .reviews { order:6; }
  .related .section-head { align-items:flex-start; gap:.85rem; }
  .related .section-head h2 { max-width:12ch; }
  .related-grid { min-width:0; max-width:100%; }
}

/* AA-safe support text and generous target sizes on touch screens. */
:root { --muted:#4f4d47; }
.story .eyebrow { color:#29332c; }
@media(max-width:760px) {
  .crumb {
    flex-wrap:nowrap;
    overflow:hidden;
    align-items:center;
    gap:.4rem;
    max-width:100%;
    min-width:0;
    white-space:nowrap;
  }
  .crumb a,
  .crumb span {
    flex:none;
    white-space:nowrap;
  }
  .crumb a {
    min-height:0;
    display:inline;
  }
  .crumb strong,
  #crumbProduct {
    min-width:0;
    flex:1 1 auto;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-weight:400;
  }
  .section-head > a,
  .product-guide-links a,
  .accordions summary {
    min-height:44px;
    display:flex;
    align-items:center;
  }
  .quantity button,
  .rating-picker button,
  .heart,
  .spin-close {
    min-width:44px;
    min-height:44px;
  }
  .heart {
    width:44px;
    height:44px;
  }
}
