/* Premium product page overrides (Kasutam-like)
   Loaded after style.css so it can safely override base styles. */

.main{padding-bottom:110px}
.btn{border-radius:10px;font-weight:700;letter-spacing:.3px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease}
.btn:hover{box-shadow:0 10px 22px rgba(0,0,0,.08)}
.btn:active{transform:translateY(1px)}
.btn-outline{background:#fff;border-color:rgba(13,51,32,.18);color:var(--deep)}
.btn-lg{padding:14px 18px;border-radius:12px}

.product-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}
@media(max-width:900px){.product-grid{grid-template-columns:1fr;gap:16px}}

.product-media{display:grid;gap:14px;position:sticky;top:84px;align-self:start}
@media(max-width:900px){.product-media{position:static}}

.media-frame{background:linear-gradient(180deg,#fff,var(--cream));border:1px solid rgba(13,51,32,.12);border-radius:18px;padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.08)}
.product-main-image{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;display:block;border-radius:14px;background:#fff}

.product-thumbs{display:flex;gap:10px}
.thumb{width:68px;height:68px;border-radius:14px;border:1px solid rgba(13,51,32,.12);background:#fff;padding:6px;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.05)}
.thumb img{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}

.trust-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.trust-item{display:flex;gap:10px;align-items:center;padding:12px 12px;border-radius:14px;background:#fff;border:1px solid rgba(13,51,32,.10);box-shadow:0 12px 30px rgba(0,0,0,.05);font-weight:800;color:var(--deep);font-size:13px}
.trust-icon{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(74,154,101,.12);border:1px solid rgba(74,154,101,.25)}

.product-summary{display:grid;gap:14px}
.product-breadcrumb{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(13,51,32,.55)}
.product-title{font-family:'Cinzel',serif;margin:0;color:var(--deep);font-size:clamp(26px,3.2vw,40px);line-height:1.15}
.product-rating{display:flex;gap:10px;align-items:center}
.stars{color:var(--gold);letter-spacing:1px}
.product-price-row{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
.product-price{font-family:'Cinzel',serif;font-weight:900;font-size:32px;color:var(--forest)}

.variant-card{border:1px solid rgba(13,51,32,.12);border-radius:16px;padding:14px;background:linear-gradient(180deg,#fff,rgba(253,246,227,.35));box-shadow:0 18px 46px rgba(0,0,0,.06)}
.variant-title{font-weight:900;color:var(--deep);margin-bottom:12px}
.variant-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(max-width:420px){.variant-options{grid-template-columns:1fr}}
.variant-btn{width:100%;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 12px;border-radius:14px;border:1px solid rgba(13,51,32,.12);background:#fff;cursor:pointer;font-weight:900;color:var(--deep);box-shadow:0 10px 22px rgba(0,0,0,.05);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
.variant-btn:hover{transform:translateY(-1px)}
.variant-btn.active{border-color:rgba(201,162,39,.75);box-shadow:0 18px 42px rgba(201,162,39,.18)}
.variant-price{font-family:'Cinzel',serif;color:var(--forest)}

.buybox{display:grid;gap:12px}
.qty-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.qty-label{font-weight:900;color:var(--deep)}
.qty-control{display:flex;align-items:center;gap:8px;border:1px solid rgba(13,51,32,.12);border-radius:14px;padding:6px;background:#fff}
.qty-btn{width:34px;height:34px;border-radius:12px;border:1px solid rgba(13,51,32,.10);background:rgba(74,154,101,.10);cursor:pointer;font-weight:900;color:var(--deep)}
.qty-input{width:70px;border:0;outline:0;text-align:center;font-weight:900;background:transparent}

.cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:480px){.cta-row{grid-template-columns:1fr}}
.extra-row{display:flex;gap:10px;flex-wrap:wrap}

.desc-card{border:1px solid rgba(13,51,32,.10);border-radius:16px;padding:16px;background:#fff;box-shadow:0 18px 44px rgba(0,0,0,.05)}
.section-title{font-family:'Cinzel',serif;margin:0 0 10px;color:var(--deep);font-weight:900}
.richtext{color:rgba(26,26,15,.88);line-height:1.8}
.richtext p{margin:0 0 10px}

.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(max-width:640px){.benefits-grid{grid-template-columns:1fr}}
.benefit{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:14px;border:1px solid rgba(13,51,32,.10);background:linear-gradient(180deg,#fff,rgba(253,246,227,.35))}
.benefit-ico{width:38px;height:38px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(201,162,39,.12);border:1px solid rgba(201,162,39,.25)}
.benefit-title{font-weight:900;color:var(--deep);margin-bottom:2px}

.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:900px){.reviews{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.reviews{grid-template-columns:1fr}}
.review{border:1px solid rgba(13,51,32,.10);border-radius:16px;padding:14px;background:linear-gradient(180deg,#fff,rgba(253,246,227,.35));box-shadow:0 14px 36px rgba(0,0,0,.05)}
.review-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px;color:var(--deep)}

.qr-row{display:grid;grid-template-columns:220px 1fr;gap:14px;align-items:center}
@media(max-width:640px){.qr-row{grid-template-columns:1fr}}
.qr-image{width:100%;max-width:220px;border-radius:16px;border:1px solid rgba(13,51,32,.10);background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.05)}

.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:30;transform:translateY(110%);transition:transform .18s ease;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-top:1px solid rgba(13,51,32,.12)}
.sticky-cta.show{transform:translateY(0)}
.sticky-inner{width:min(1100px,92vw);margin:0 auto;display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:12px 0}
@media(max-width:640px){.sticky-inner{grid-template-columns:1fr auto auto;grid-auto-rows:auto}.sticky-title{grid-column:1/-1}}
.sticky-title{font-weight:900;color:var(--deep)}
.sticky-price{font-family:'Cinzel',serif;font-weight:900;color:var(--forest)}
