/* Product page v5.3: short and calm — plain picture, price, colour circles, one facts strip, three fold-out rows, two buy buttons */
.pv5 .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pv5-top{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:10px}
.pv5-info{min-width:0}
.pv5-gallery{min-width:0}
.pv5-stage{position:relative;background:#f4f5f8;border-radius:26px;aspect-ratio:1/1;max-height:560px;margin:0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pv5-stage img{max-width:78%;max-height:78%;width:auto;height:auto;object-fit:contain;mix-blend-mode:multiply}
.pv5-badge{position:absolute;top:14px;inset-inline-start:14px;background:var(--navy,#0b1630);color:var(--lime,#dfff00);font-weight:700;font-size:13px;border-radius:9px;padding:2px 12px}
.pv5-thumbs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.pv5-thumbs button{width:62px;height:62px;padding:5px;border-radius:14px;background:#f4f5f8;border:2px solid transparent;overflow:hidden;cursor:pointer}
.pv5-thumbs button[aria-current=true]{border-color:var(--navy,#0b1630);background:#fff}
.pv5-thumbs img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pv5-meta{display:flex;align-items:center;gap:12px;font-size:13.500px;font-weight:700;color:var(--muted,#58677c)}
.pv5-rating{color:var(--navy,#0b1630)}
.pv5-rating i{font-style:normal;color:#f5b400}
.pv5-rating small{color:#9aa5ba;font-weight:600}
.pv5-info h1{font-size:clamp(22px,2.600vw,30px);line-height:1.45;margin:6px 0 0;color:var(--navy,#0b1630)}
.pv5-price{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:12px}
.pv5-price strong{font-size:clamp(28px,3.200vw,36px);font-weight:700;color:var(--navy,#0b1630);line-height:1.2}
.pv5-price del{font-size:16px;color:#9aa5ba}
.pv5-off{background:#fde8e9;color:#d93a3a;font-weight:700;font-size:13px;border-radius:8px;padding:2px 9px}
.pv5-instalments{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:14px;color:#4c5b7a;text-decoration:none}
.pv5-instalments b{color:var(--navy,#0b1630);background:linear-gradient(transparent 60%,var(--lime,#dfff00) 60%);padding:0 2px}
.pv5-instalments svg{width:15px;height:15px}
.pv5-stock{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:14px;font-weight:700;color:#c4621a}
.pv5-stock i{width:9px;height:9px;border-radius:50%;background:currentColor;flex:none}
.pv5-stock.out{color:#d93a3a}
.pv5-options{border-top:1px solid #eef1f5;margin-top:18px;padding-top:18px}
.pv5-options .gp-picker,.pv5-options .variant-picker{margin:0!important}
.pv5-options .gp-picker h3{display:flex;justify-content:space-between;align-items:center;font-size:14.500px;margin:16px 0 10px}
.pv5-options .gp-picker h3:first-of-type{margin-top:0}
.pv5-options .gp-current{font-weight:600;color:var(--muted,#58677c);font-size:14px}
.pv5-options .gp-choice{border:1.500px solid #dfe4ec;border-radius:12px;font-weight:600}
.pv5-options .gp-choice[aria-current=page]{border:1.500px solid var(--navy,#0b1630);background:var(--navy,#0b1630);color:#fff;padding:10px 16px}
.pv5-options .gp-choice[aria-current=page] small{color:#c9d6f2}
.pv5-options .gp-choice-row{gap:10px;align-items:center}
/* Colours as circles (names stay for screen readers and as a tooltip). */
.pv5-options .gp-swatch,.pv5-options .gp-swatch[aria-current=page]{position:relative;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--gp-sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);font-size:0;flex:none;margin:3px}
.pv5-options .gp-swatch[aria-current=page]{box-shadow:inset 0 0 0 1px rgba(0,0,0,.14),0 0 0 3px #fff,0 0 0 5px var(--navy,#0b1630)}
.pv5-options .gp-swatch .gp-name,.pv5-options .gp-swatch small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pv5-options .gp-swatch.gp-out{opacity:.45}
.pv5-options .gp-swatch.gp-out:after{content:"";position:absolute;inset:50% -3px auto;height:2px;background:#58677c;transform:rotate(-45deg)}
.pv5-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);background:#f6f7fa;border-radius:18px;padding:14px 4px;margin-top:18px}
.pv5-fact{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:0 6px;margin:0;border-inline-start:1px solid #e3e8ef;min-width:0;color:var(--navy,#0b1630)}
.pv5-fact:first-child{border-inline-start:0}
.pv5-fact svg{width:24px;height:24px}
.pv5-fact b{font-size:13px;font-weight:700;line-height:1.35}
.pv5-fact small{font-size:12px;color:var(--muted,#58677c);line-height:1.35}
.pv5-fact-ship{cursor:pointer}
.pv5-fact-ship small{text-decoration:underline;text-underline-offset:3px}
.pv5-fact select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;padding:0;border:0;font-size:16px}
.pv5-fact-ship:focus-within{outline:3px solid #7c9400;outline-offset:4px;border-radius:10px}
.pv5 form.pv5-buy{display:grid!important;grid-template-columns:112px minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch;gap:10px;margin:18px 0 0;padding:0;background:none}
.pv5 form.pv5-buy input[type=hidden]{display:none!important}
.pv5 form.pv5-buy .button{width:100%!important;min-width:0;margin:0;justify-content:center;white-space:nowrap;grid-column:auto;border-radius:16px;min-height:52px;gap:8px}
.pv5 form.pv5-buy .button svg{width:20px;height:20px}
.pv5 form.pv5-buy .button.lime{background:var(--lime,#dfff00)!important;color:var(--navy,#0b1630)!important;border-color:var(--lime,#dfff00)!important}
.pv5 form.pv5-buy .pv5-qty{display:grid!important;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:0;width:112px!important;max-width:112px;border:1.500px solid #dfe4ec;border-radius:16px;margin:0;padding:0;overflow:hidden;background:#fff;grid-column:auto}
.pv5 form.pv5-buy .pv5-qty button{width:34px!important;min-width:0!important;max-width:34px;height:100%;min-height:48px;line-height:1;display:block;border:0;border-radius:0;background:none;font-size:20px;font-weight:700;cursor:pointer;color:var(--navy,#0b1630);padding:0;margin:0}
.pv5 form.pv5-buy .pv5-qty button:disabled{opacity:.4;cursor:default}
.pv5 form.pv5-buy .pv5-qty input{width:100%!important;min-width:0;height:auto;min-height:0;border:0!important;border-radius:0;background:none;text-align:center;font-family:inherit;font-weight:700;font-size:16px;line-height:1.4;color:var(--navy,#0b1630);padding:0!important;margin:0;-moz-appearance:textfield;appearance:textfield;box-shadow:none}
.pv5-qty input::-webkit-outer-spin-button,.pv5-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pv5-acc{margin-top:10px}
.pv5 .pv5-acc>details{border:0;border-bottom:1px solid #eef1f5;margin:0;padding:0;background:none;border-radius:0;box-shadow:none}
.pv5 .pv5-acc>details:last-child{border-bottom:0}
.pv5 .pv5-acc>details>summary{margin:0;border:0;background:none;display:flex;align-items:center;gap:8px;padding:16px 0;font-size:15.500px;font-weight:600;color:var(--navy,#0b1630);cursor:pointer;list-style:none}
.pv5-acc>details>summary::-webkit-details-marker{display:none}
.pv5-acc>details>summary:after{content:"+";margin-inline-start:auto;font-size:22px;font-weight:400;color:#9aa5ba;line-height:1}
.pv5-acc>details[open]>summary:after{content:"−"}
.pv5-acc>details>summary small{font-size:13px;color:var(--muted,#58677c);font-weight:600;margin-inline-start:auto}
.pv5-acc>details>summary small+*{margin:0}
.pv5-acc>details>summary small i{font-style:normal;color:#f5b400}
.pv5-acc>details>summary:has(small):after{margin-inline-start:8px}
.pv5-acc>details>div{padding:0 0 16px}
.pv5-acc .product-short-description{margin:0 0 8px;line-height:1.8}
.pv5-specs{margin:0}
.pv5-specs div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #f1f3f7;font-size:14px}
.pv5-specs div:last-child{border-bottom:0}
.pv5-specs dt{color:var(--muted,#58677c);flex:none;max-width:45%}
.pv5-specs dd{margin:0;font-weight:600;text-align:end;overflow-wrap:anywhere}
.pv5-note{font-size:12.500px;color:var(--muted,#58677c);line-height:1.8;margin:10px 0 0}
.pv5-review-form{margin-top:10px}
.pv5-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:14px;font-size:13px}
.pv5-links form{margin:0}
.pv5-links a,.pv5-links button{all:unset;cursor:pointer;color:var(--muted,#58677c);text-decoration:underline;text-underline-offset:3px;font-size:13px}
.pv5-links a:hover,.pv5-links button:hover{color:var(--navy,#0b1630)}
.pv5-links a:focus-visible,.pv5-links button:focus-visible{outline:3px solid #7c9400;outline-offset:3px;border-radius:4px}
@media (min-width:900px){
 .pv5-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
 .pv5-gallery{position:sticky;top:16px}
}
@media (max-width:899px){
 /* Phones: the two buy buttons stay in reach above the store's bottom bar; the quantity is set in the cart. */
 .pv5 form.pv5-buy{position:fixed;inset-inline:0;bottom:calc(68px + env(safe-area-inset-bottom,0px));z-index:80;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;margin:0;padding:10px 14px;background:#fff;border-top:1px solid #eef1f5}
 .pv5 form.pv5-buy .pv5-qty{display:none!important}
 body.mobile-keyboard-open .pv5 form.pv5-buy{position:static;padding:0;border:0;margin-top:18px}
 .pv5{padding-bottom:86px}
 .pv5-stage{border-radius:22px}
 .pv5-thumbs{gap:6px;margin-top:-26px;position:relative;z-index:2;padding-bottom:14px}
 .pv5-thumbs button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#cfd6e2}
 .pv5-thumbs button[aria-current=true]{width:22px;border-radius:6px;background:var(--navy,#0b1630)}
 .pv5-thumbs img{display:none}
 .pv5-fact b{font-size:12.500px}
 .pv5-fact small{font-size:11.500px}
}

/* v5.4 — tidy: calmer title and price, availability pill, three equal facts, branches folded, equal link buttons */
.pv5-info h1{font-size:clamp(18px,2vw,24px);line-height:1.6}
.pv5-price strong{font-size:clamp(25px,2.6vw,31px)}
.pv5-price .pv5-stock{margin:0;margin-inline-start:auto;font-size:13px;color:#1e9e5a;background:#eaf7f0;border-radius:20px;padding:3px 12px;gap:6px;white-space:nowrap}
.pv5-price .pv5-stock i{width:7px;height:7px}
.pv5-price .pv5-stock.low{color:#c4621a;background:#fbf0e6}
.pv5-price .pv5-stock.out{color:#d93a3a;background:#fde8e9}
.pv5-fact-link{text-decoration:none}
.pv5-fact-link b u{text-decoration:none;background:linear-gradient(transparent 62%,var(--lime,#dfff00) 62%)}
.pv5-fact-link small{text-decoration:underline;text-underline-offset:3px}
.pv5-fact-link:focus-visible{outline:3px solid #7c9400;outline-offset:4px;border-radius:10px}
.pv5-branches{list-style:none;margin:0;padding:2px 14px;background:#f6f7fa;border-radius:14px}
.pv5-branches li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:14px;border-bottom:1px solid #e9edf3}
.pv5-branches li:last-child{border-bottom:0}
.pv5-branches em{font-style:normal;font-weight:700;font-size:13px;color:#9aa5ba;display:flex;align-items:center;gap:6px}
.pv5-branches em:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pv5-branches em.in{color:#1e9e5a}
.pv5-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:16px}
.pv5-links form{display:flex}
.pv5-links a,.pv5-links button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:8px 12px;border:1.5px solid #dfe4ec;border-radius:14px;color:var(--navy,#0b1630);font-size:13.5px;font-weight:600;text-align:center;text-decoration:none}
.pv5-links a:hover,.pv5-links button:hover{border-color:var(--navy,#0b1630)}
.pv5-policy{display:inline-block;margin-top:12px;font-size:12.5px;color:var(--muted,#58677c);text-decoration:underline;text-underline-offset:3px}
