/* Gift-product detail, built to the designer's mockup (26/10/2026). Print editor remains independent. */
.product-blue { --primary:#087fcf; --primary-hover:#0769ad; --primary-strong:#087fcf; --primary-ink:#0a69ab; --primary-tint:#e6f5fe; --primary-tint-2:#ccecfc; --on-primary:#fff; --ink:#0e1a35; --ink-soft:#575e6e; --line:#e4e8ec; --page:#fff; }
.product-blue .announce { background:#cdebfc; color:var(--ink); }
.product-blue .crumbs { padding-block:9px 6px; font-size:15px; }
.pdp--gift { gap:24px; padding-block-start:5px; }

/* the photo: pale blue panel, heart in the corner, "הדמיה להמחשה" written at its foot */
.pdp--gift .gallery { position:static; align-self:start; gap:10px; }
.pdp--gift .gallery__main { aspect-ratio:1.03; max-height:none; margin:0; border-radius:16px; background:#e2f2fe; box-shadow:none; }
.pdp--gift .gallery__main img { padding:28px; object-fit:contain; mix-blend-mode:multiply; }
.pdp--gift .gallery__main.is-scene img { padding:0; mix-blend-mode:normal; }
.pdp--gift .gallery__main .wishbtn { position:absolute; inset-block-start:20px; inset-inline-start:20px; z-index:2; width:50px; height:50px; border-color:transparent; background:#fff; }
.pdp--gift .gallery__note { bottom:20px; inset-inline-start:22px; inset-inline-end:auto; padding:0; border-radius:0; background:none; box-shadow:none; color:#596a77; font-size:15px; font-weight:400; }
.pdp--gift .gallery__main.is-scene .gallery__note { padding:4px 11px; border-radius:999px; background:rgba(255, 255, 255, .92); color:var(--ink-soft); }

/* name, one sentence per line, the two main specs split by a short rule */
.pdp--gift .info { gap:18px; align-content:start; }
.pdp--gift .info__head { gap:7px; }
.pdp--gift .info__title { font-size:clamp(32px, 3.6vw, 52px); font-weight:800; line-height:1.1; letter-spacing:-.01em; color:var(--ink); }
.pdp--gift .info__desc { max-width:none; font-size:19px; line-height:1.45; color:var(--ink); }
.gift-specs { display:flex; width:fit-content; min-width:min(476px, 100%); max-width:100%; margin:14px 0 10px; padding:12px 0 0; border-top:1px solid #e6e9ed; list-style:none; font-size:18px; font-weight:600; line-height:24px; color:var(--ink); }
.gift-specs li { flex:none; padding-inline-end:46px; }
.gift-specs li + li { flex:0 1 auto; min-width:0; }
.gift-specs li + li { padding-inline-start:46px; border-inline-start:1px solid #e1e5ea; }

/* colours: a big dot, the name under it; the chosen one ringed, ticked and named in blue */
.pdp--gift .gift-swatches { display:flex; flex-wrap:wrap; gap:8px 16px; }
.pdp--gift .choices.gift-swatches .choice { display:flex; flex-direction:column; align-items:center; gap:2px; min-width:64px; padding:0; border:0; border-radius:8px; background:none; box-shadow:none; font-size:15px; font-weight:400; color:var(--ink); transform:none; }
.pdp--gift .gift-swatches .choice__dot { position:relative; display:grid; place-items:center; width:44px; height:44px; margin:5px; border:0; border-radius:50%; background:var(--c); box-shadow:inset 0 0 0 1px rgba(14, 26, 53, .12); transition:transform .2s; }
.pdp--gift .gift-swatches .choice:hover .choice__dot { transform:scale(1.06); }
.pdp--gift .gift-swatches [aria-pressed=true] { font-weight:700; color:#0b4a8f; }
.pdp--gift .gift-swatches [aria-pressed=true] .choice__dot { outline:2px solid var(--primary); outline-offset:4px; transform:none; }
.gift-color-check { display:none; }
.pdp--gift .gift-swatches [aria-pressed=true] .gift-color-check { display:block; width:22px; height:22px; color:#fff; stroke-width:2.5; }
.pdp--gift .gift-swatches .is-light .gift-color-check { color:var(--ink); }
.pdp--gift .gift-swatches .is-mixed .gift-color-check { filter:drop-shadow(0 0 1.5px rgba(0, 0, 0, .55)); }

/* quantity: square stepper split in three, the plus in blue */
.gift-quantity { display:flex; align-items:end; justify-content:space-between; gap:14px; }
.pdp--gift .gift-quantity .opt__label { margin-block-end:4px; font-size:17px; line-height:22px; }
.pdp--gift .gift-quantity .qty { height:40px; border:1px solid #e2e6ea; border-radius:10px; overflow:hidden; background:#fff; }
.pdp--gift .gift-quantity .qty button { width:58px; border-radius:0; background:#f8fafc; color:var(--ink); transition:background-color .15s; }
.pdp--gift .gift-quantity .qty button:hover:not(:disabled) { background:#eef4f9; }
.pdp--gift .gift-quantity .qty [data-step="+"] { color:var(--primary); border-inline-end:1px solid #e2e6ea; }
.pdp--gift .gift-quantity .qty [data-step="+"] .i { width:22px; height:22px; stroke-width:2.25; }
.pdp--gift .gift-quantity .qty [data-step="-"] { border-inline-start:1px solid #e2e6ea; }
.pdp--gift .gift-quantity .qty .i { width:20px; height:20px; stroke-width:2; }
.pdp--gift .gift-quantity .qty input { width:102px; height:100%; font-size:17px; font-weight:600; color:var(--ink); -moz-appearance:textfield; }
.gift-quantity .qty input::-webkit-inner-spin-button, .gift-quantity .qty input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.gift-tier-link { display:flex; align-items:center; gap:6px; min-height:40px; font-size:17px; color:var(--primary-ink); text-decoration:underline; text-underline-offset:4px; }
.gift-tier-link .i { width:16px; height:16px; transition:transform .2s; }
.gift-tier-link[aria-expanded=true] .i { transform:rotate(180deg); }

/* the price for this quantity, then the subtotal under a rule as wide as the block */
.gift-price { display:grid; gap:0; justify-self:start; width:fit-content; max-width:100%; font-variant-numeric:tabular-nums; }
.gift-price > strong { font-size:40px; font-weight:800; line-height:1.15; color:var(--ink); }
.gift-price > span { font-size:17px; color:var(--ink-soft); }
.gift-price #buy-total { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px; margin:8px 0 0; padding-block-start:8px; line-height:1.3; border-top:1px solid #e6e9ed; font-size:17px; color:var(--ink); }
.gift-price #buy-total b { font-size:20px; font-weight:800; }

.pdp--gift .design-cta { gap:9px; margin-block-start:-2px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.pdp--gift .design-cta__go { width:100%; min-height:58px; gap:12px; border-radius:10px; font-size:20px; font-weight:700; box-shadow:none; }
.pdp--gift .design-cta__go .i { width:24px; height:24px; stroke-width:1.75; }
.pdp--gift .design-cta__note { font-size:16px; color:var(--ink-soft); }
.pdp--gift .buy .btn { border-radius:10px; }

/* pickup and product details: framed rows with an icon, the pickup address at a glance */
.pdp--gift .gift-details { margin-block-start:2px; border-top:0; }
.pdp--gift .gift-details details { margin-block-end:10px; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; }
.pdp--gift .gift-details details:last-child { margin-block-end:0; }
.pdp--gift .gift-details summary { justify-content:flex-start; gap:14px; min-height:53px; padding:8px 18px; font-size:17px; font-weight:700; }
.pdp--gift .gift-details summary b { font-weight:inherit; }
.pdp--gift .gift-details summary .gift-details__icon, .pdp--gift .gift-details details[open] summary .gift-details__icon { flex:none; width:26px; height:26px; color:var(--primary-ink); stroke-width:1.6; transform:none; }
.gift-details__sum { margin-inline:auto; font-size:15px; font-weight:400; color:var(--ink-soft); transition:opacity .2s; }
.pdp--gift .gift-details details[open] .gift-details__sum { opacity:0; }
.pdp--gift .gift-details summary .gift-details__chev { flex:none; width:20px; height:20px; margin-inline-start:auto; color:var(--ink); }
.pdp--gift .gift-details summary .gift-details__sum + .gift-details__chev { margin-inline-start:0; }
.pdp--gift .gift-details .acc__body { padding:0 18px 16px; }

/* prices by quantity: a table, the range over the price, the current one framed */
.gift-tiers { margin-block-start:10px; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; }
.gift-tiers summary { display:flex; align-items:center; gap:10px; padding:9px 16px; line-height:22px; cursor:pointer; list-style:none; font-size:17px; font-weight:700; }
.gift-tiers summary::-webkit-details-marker { display:none; }
.gift-tiers summary .i { width:18px; height:18px; transform:rotate(90deg); transition:transform .2s; }
.gift-tiers[open] summary { border-bottom:1px solid var(--line); }
.gift-tiers[open] summary .i { transform:none; }
.gift-tiers .tiers__list { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(0, 1fr); gap:0; margin:0; padding:0; }
.gift-tiers .tier { display:grid; grid-template-rows:auto auto; gap:0; padding:0; border:0; border-inline-start:1px solid var(--line); border-radius:0; background:#fff; text-align:center; box-shadow:none; transform:none; }
.gift-tiers .tier:first-child { border-inline-start:0; }
.gift-tiers .tier span { padding:10px 4px 9px; border-bottom:1px solid var(--line); font-size:14px; line-height:20px; color:#666977; }
.gift-tiers .tier b { padding:8px 4px 9px; font-size:19px; font-weight:700; line-height:24px; color:var(--ink); }
.gift-tiers .tier:hover { background:#f5fafe; }
.gift-tiers .tier[aria-pressed=true] { position:relative; z-index:1; border-inline-start-color:transparent; border-radius:8px; background:#e6f5fe; outline:1.5px solid #4398d5; outline-offset:-1.5px; transform:none; }
.gift-tiers .tier[aria-pressed=true] span { border-bottom-color:transparent; }
.gift-tiers .tier[aria-pressed=true] + .tier { border-inline-start-color:transparent; }
.gift-tiers .tier:focus-visible { outline:2px solid var(--primary-ink); outline-offset:-3px; }
.gift-tiers .tier-glide { display:none; }

/* how it's made: number, icon, step, joined by a thin line */
.gift-steps { grid-column:1/-1; padding:12px 24px 15px; border-radius:16px; background:#eff9fd; }
.gift-steps h2 { margin:0 0 10px; font-size:22px; font-weight:800; line-height:1.3; text-align:center; color:var(--ink); }
.gift-steps ol { display:flex; align-items:center; justify-content:center; margin:0; padding:0; list-style:none; }
.gift-steps li { display:flex; align-items:center; gap:10px; font-size:17px; color:var(--ink); }
.gift-steps li:not(:last-child)::after { content:""; width:90px; height:1px; margin-inline:40px; background:#d5e0e5; }
.gift-steps__n { display:grid; place-items:center; flex:none; width:36px; height:36px; border-radius:50%; background:#ccecfc; color:#1478bf; font-size:19px; font-weight:700; }
.gift-steps li .i { flex:none; width:24px; height:24px; stroke-width:1.6; }

.product-blue .sticky-buy { transform:translateY(110%); visibility:hidden; }
.product-blue .sticky-buy.is-product-visible { transform:none; visibility:visible; }
.product-blue :focus-visible { outline:3px solid var(--primary-ink); outline-offset:3px; }
.product-blue input { caret-color:var(--primary-ink); }
.product-blue ::selection { background:#ccecfc; color:var(--ink); }

@media (min-width:1000px) {
  .pdp--gift { grid-template-columns:minmax(0, 1.09fr) minmax(0, 1fr); gap:22px 49px; }
  .gift-tier-link { display:none; }
}
@media (min-width:1400px) { .gift-steps { margin-inline:-33px; } }
@media (max-width:999px) {
  .pdp--gift .gallery__main { width:100%; aspect-ratio:1.3; max-height:390px; }
  .pdp--gift .gallery__main img { padding:20px; }
  .gift-tiers { margin-block-start:-6px; }
  .gift-tiers summary, .gift-tiers:not([open]) { display:none; }
  .gift-tiers .tiers__list { grid-auto-flow:row; grid-template-columns:repeat(4, minmax(0, 1fr)); }
  .gift-tiers .tier, .gift-tiers .tier:first-child { border-inline-start:1px solid var(--line); }
  .gift-tiers .tier:nth-child(4n+1) { border-inline-start:0; }
  .gift-tiers .tier:nth-child(n+5) { border-top:1px solid var(--line); }
  .gift-tiers .tier[aria-pressed=true] { border-color:transparent; }
  .gift-tiers .tier:last-child:nth-child(4n+3) { grid-column:span 2; }
  .gift-tiers .tier:last-child:nth-child(4n+2) { grid-column:span 3; }
  .gift-tiers .tier:last-child:nth-child(4n+1) { grid-column:span 4; }
  .gift-steps { padding:18px 20px 20px; }
  .gift-steps ol { flex-direction:column; align-items:flex-start; gap:14px; width:max-content; max-width:100%; margin-inline:auto; }
  .gift-steps li:not(:last-child)::after { content:none; }
}
@media (max-width:560px) {
  .pdp--gift .gift-details summary { display:grid; grid-template-columns:auto minmax(0, 1fr) auto; align-items:center; column-gap:12px; row-gap:2px; padding-block:10px; }
  .pdp--gift .gift-details summary .gift-details__icon { grid-row:span 2; }
  .pdp--gift .gift-details summary b { grid-column:2; }
  .gift-details__sum { grid-column:2; grid-row:2; margin:0; font-size:14px; }
  .pdp--gift .gift-details summary .gift-details__chev { grid-column:3; grid-row:1 / span 2; margin:0; }
  .pdp--gift .gift-details details[open] .gift-details__sum { display:none; }
}
@media (max-width:430px) {
  .pdp--gift .info__title { font-size:30px; }
  .pdp--gift .info__desc { font-size:17px; }
  .gift-specs { font-size:15px; }
  .gift-specs li { padding-inline-end:14px; }
  .gift-specs li + li { padding-inline-start:14px; }
  .gift-price > strong { font-size:38px; }
  .gift-tier-link { font-size:15px; }
  .pdp--gift .gift-quantity .qty button { width:46px; }
  .pdp--gift .gift-quantity .qty input { width:70px; }
  .gift-steps h2 { font-size:20px; }
  .gift-steps li { font-size:16px; }
}
@media (prefers-reduced-motion: reduce) {
  .gift-tiers summary .i, .gift-tier-link .i, .gift-details__sum, .pdp--gift .gift-swatches .choice__dot { transition:none; }
}
