:root{
  --brand:#0b7a3e;
  --brand-d:#08632f;
  --brand-l:#eef7f1;
  --ink:#1d2430;
  --muted:#5a6472;
  --line:#e3e6eb;
}
body{color:var(--ink);background:#f6f7f9}
:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px;border-radius:4px}

.btn-success{--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand-d);--bs-btn-hover-border-color:var(--brand-d);--bs-btn-active-bg:var(--brand-d);--bs-btn-active-border-color:var(--brand-d);--bs-btn-disabled-bg:var(--brand);--bs-btn-disabled-border-color:var(--brand)}
.btn-outline-success{--bs-btn-color:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand-l);--bs-btn-hover-color:var(--brand-d);--bs-btn-hover-border-color:var(--brand);--bs-btn-active-bg:var(--brand);--bs-btn-active-border-color:var(--brand);--bs-btn-active-color:#fff}
.text-success{color:var(--brand)!important}
.bg-success{background-color:var(--brand)!important}
.bg-danger{background-color:#c8351f!important}

.navbar-brand{font-weight:800;letter-spacing:.5px;font-size:1.3rem}
.navbar .nav-link{font-weight:600}

.breadcrumb{background:transparent;font-size:.875rem;padding:.75rem 0;margin:0}
.breadcrumb-item.active{font-weight:600;color:var(--ink)}

.price-box{background:#fff;border:1px solid var(--line);border-radius:.75rem}
.price-now{font-size:2rem;font-weight:800;line-height:1.1}
.price-economy{color:#c8351f;font-weight:700;font-size:.85rem}

.sizes .btn{min-width:112px;font-weight:600;border-radius:.5rem;margin:0 .5rem .5rem 0}
.sizes input{position:absolute;clip:rect(0,0,0,0);pointer-events:none}
.sizes input:checked + span{font-weight:800;text-decoration:underline;text-underline-offset:3px}

.mainshot{display:block;width:100%;position:relative;padding:0;border:none;background:transparent;border-radius:.75rem;overflow:hidden}
.gallery-main{width:auto;max-width:100%;height:auto;max-height:min(70vh,620px);aspect-ratio:3/4;object-fit:contain;object-position:top;border-radius:.75rem;display:block;margin-inline:auto}
.gallery-zoom{position:absolute;right:.75rem;bottom:.75rem;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:.4rem;padding:.25rem .6rem;font-size:.8rem;color:var(--ink)}
.thumb{border:none;background:transparent;padding:0;border-radius:.5rem;overflow:hidden;opacity:.6;transition:opacity .15s}
.thumb img{width:72px;aspect-ratio:3/4;object-fit:cover;display:block}
.thumb.active,.thumb:hover{opacity:1}
@media(max-width:767.98px){.thumb img{width:60px}}

.accordion-button{font-weight:700;color:var(--ink)}
.accordion-button:not(.collapsed){background:var(--brand-l);color:var(--brand-d)}
.accordion-button i{width:1.25rem;text-align:center}

.kv{display:flex;justify-content:space-between;gap:.5rem;border-bottom:1px dashed var(--line);padding-bottom:.35rem;margin-bottom:.5rem;font-size:.95rem}
.kv dt{color:var(--muted);font-weight:400}
.kv dd{margin:0;font-weight:600;text-align:right}

.trust-tile{border:1px solid var(--line);border-radius:.5rem;padding:.75rem .5rem;text-align:center;font-size:.8rem;color:var(--muted);height:100%}
.trust-tile i{font-size:1.4rem;color:var(--brand-d);display:block;margin-bottom:.25rem}
.trust-tile b{display:block;font-size:.9rem;color:var(--ink)}
@media(max-width:767.98px){
  .trust-tile{display:flex;align-items:center;text-align:left;gap:.6rem;padding:.55rem .65rem}
  .trust-tile i{font-size:1.2rem;margin-bottom:0;flex:0 0 auto}
  .trust-tile b{display:inline;font-size:.85rem;margin-right:.3rem}
  .trust-tile span{flex:1;min-width:0;overflow-wrap:anywhere}
}

.card-door{aspect-ratio:3/4;object-fit:contain;object-position:center;width:100%;background:#fff;height:240px;}
@media(max-width:767.98px){.card-door{aspect-ratio:1/1}}
.card .pc-old{color:#6c757d;text-decoration:line-through;font-size:.8rem;font-weight:400}
.clamp2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;height:calc(2 * 1.5em)}
.clamp1{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;height:calc(1 * 1.5em)}

.stickybar{position:fixed;left:0;right:0;bottom:0;z-index:1030;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 14px rgba(29,36,48,.12);padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom));display:none}
.stickybar.show{display:flex;align-items:center}
.stickybar .sticky-price{font-weight:800;font-size:1.2rem;white-space:nowrap;margin-right:.75rem}
.stickybar .btn{flex:1}
@media(min-width:992px){.stickybar{display:none!important}}

.seo-text p{color:var(--muted)}

@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
