/* Product section deck: shared header/footer and other routes keep their theme. */
.product-story {
    --product-bg: #fff;
    --product-surface: #fff;
    --product-hover: #fff4ee;
    --product-line: #ddd9e2;
    --product-ink: #0d0925;
    --product-muted: #706d83;
    --product-cta: #b52a30;
    background: linear-gradient(147deg, #ffe53b 0%, #fd3838 100%);
    color: var(--product-ink);
    color-scheme: light;
}
.product-story-stage { max-width:1120px; margin:0 auto; padding:64px 48px 64px 112px; }
.product-story-card { position:relative; display:grid; grid-template-columns:240px minmax(0,1fr); align-items:center; width:100%; max-width:800px; min-height:400px; margin:0 auto; padding:25px; border-radius:25px; background:#fff; box-shadow:0 14px 80px rgba(34,35,58,.2); }
.product-story-media { grid-column:1; grid-row:1; align-self:start; position:relative; display:flex; align-items:center; justify-content:center; width:300px; height:300px; margin:25px 0 0; padding:20px; border-radius:20px; background:#f2f3f5; box-shadow:4px 13px 30px rgba(252,56,56,.2); transform:translateX(-80px); }
.product-story-media picture { display:block; width:100%; height:100%; }
.product-story-media img { display:block; width:100%; height:100%; object-fit:contain; border-radius:12px; }
.product-story-no-image { color:#4e4a67; text-align:center; font-size:20px; font-weight:600; overflow-wrap:anywhere; }
.product-story-panels { grid-column:2; min-width:0; padding-right:28px; }
.product-story .product-slide { min-width:0; width:100%; padding:0; border:0; border-radius:0; background:transparent; scroll-margin-top:24px; overflow-wrap:anywhere; }
.product-story-card.is-enhanced { touch-action:pan-y pinch-zoom; }
.product-story [hidden] { display:none !important; }
.product-story-card:not(.is-enhanced) .product-slide + .product-slide { margin-top:32px; padding-top:24px; border-top:1px solid var(--product-line); }
.product-story .hero-product-name { margin-bottom:14px; font-size:24px; line-height:1.3; }
.product-story .hero-product-subtitle { margin-bottom:12px; color:#706d83; }
.product-story .hero-product-description { color:#4e4a67; font-size:15px; line-height:1.6; }
.product-story .hero-price, .product-story .hero-price-new { font-size:28px; }
.product-story .product-read-more, .product-story .product-about-text a { color:#93402c; text-decoration:underline; }
.product-story .btn-hero-whatsapp { min-height:48px; padding:14px 20px; border-radius:50px; background:linear-gradient(147deg,#b94716,#c32632); color:#fff; box-shadow:0 10px 26px rgba(198,38,50,.22); font-size:15px; font-weight:600; }
.product-story .btn-hero-whatsapp:hover, .product-story .btn-hero-whatsapp:focus { background:linear-gradient(147deg,#a23a10,#a8202b); color:#fff; }
.product-story .glass-item { border-color:#a39eae; }
.product-story .glass-item.active { background:#fff0e9; border-color:#b52a30; }
.product-story .pack-price { color:#9b341e; }
.product-story .product-option-text { background:#faf9fb; border-color:#908a9d; font-size:16px; }
.product-story .product-option-error { color:#ab2029; }
.product-story .product-option-text.is-invalid { border-color:#ab2029; }
#bt_container .product-story .product-about-shell > .container,
#bt_container .product-story .product-related-shell > .container { width:100%; max-width:none; margin:0; padding:0; }
.product-story .product-about-card { padding:0; border:0; background:transparent; border-radius:0; }
.product-story .product-about-card h2, .product-story .product-related-shell h2 { font-size:22px; margin-bottom:18px; }
.product-story .product-about-text { color:#4e4a67; font-size:15px; line-height:1.75; }
.product-story .product-about-text :is(strong,b) { color:var(--product-ink); }
.product-story .product-about-text :is(img,video,iframe) { max-width:100%; }
.product-story .product-about-text table { display:block; max-width:100%; overflow-x:auto; }
.product-story .product-related-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
.product-story .product-related-card { background:#faf9fb; }
.product-story .product-related-body h3 { font-size:14px; }
.product-story-nav { position:absolute; right:4px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; align-items:center; width:44px; }
.product-story-nav a { position:relative; display:flex; align-items:center; justify-content:center; flex:0 0 44px; min-width:44px; height:44px; color:var(--product-ink); text-decoration:none; border-radius:8px; }
.product-story-dot { display:block; width:11px; height:11px; border-radius:10px; background:#85818f; transition:height .2s,width .2s,background-color .2s; }
.product-story-nav [aria-selected=true] .product-story-dot { height:30px; background:#c32632; box-shadow:0 3px 10px rgba(252,56,56,.25); }
.product-story-tab-label { position:absolute; right:42px; padding:6px 10px; border-radius:6px; background:#211d31; color:#fff; font-size:12px; line-height:1.4; white-space:nowrap; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.product-story-nav a:hover .product-story-tab-label, .product-story-nav a:focus-visible .product-story-tab-label { width:auto; height:auto; overflow:visible; clip-path:none; z-index:2; }
.product-story-controls { grid-column:2; display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:18px; padding-right:28px; }
.product-story-controls button { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; flex:0 0 44px; padding:0; border:1px solid #dedbe3; border-radius:50%; background:#fff; color:#93402c; font:28px/1 Arial,sans-serif; cursor:pointer; }
.product-story-controls button:hover:not(:disabled) { background:#fff0e9; }
.product-story-controls button:disabled { color:#918b9b; cursor:default; }
.product-story-status { color:#706d83; font-size:12px; line-height:1.4; text-align:center; }
.product-story :is(a,button,input,textarea):focus-visible, .product-story .glass-item:focus-within { outline:2px solid #923027; outline-offset:3px; }
.product-story .product-slide:focus-visible { outline:2px solid #923027; outline-offset:8px; }
.product-story .product-slide.is-entering { animation:product-panel-in .18s ease-out; }
@keyframes product-panel-in { from { opacity:.4; transform:translateY(6px); } to { opacity:1; transform:none; } }
/* Existing real Google review component, including its native dialog. */
.product-story .rv-section { --rv-bg:#fff; --rv-text:#0d0925; --rv-muted:#4e4a67; --rv-faint:#706d83; --rv-line:#dedbe3; --rv-accent:#a62a30; --rv-star:#a65f00; --rv-star-empty:#817c8c; padding:0; background:transparent; color-scheme:light; }
.product-story .rv-container { width:100%; max-width:none; margin:0; }
.product-story .rv-row { grid-template-columns:minmax(0,1fr); gap:8px; }
.product-story .rv-author { align-items:center; }
.product-story .rv-author-copy { display:flex; align-items:center; flex-wrap:wrap; gap:4px 10px; }
.product-story .rv-author strong { margin:0; }
.product-story .rv-avatar { background:#f7e7df; color:#8c3822; }
.product-story .rv-add, .product-story .rv-submit { border-radius:999px; background:#b12b31; color:#fff; }
.product-story .rv-add:hover, .product-story .rv-submit:hover { background:#95222a; }
.product-story .rv-load, .product-story .rv-cancel, .product-story .rv-login { background:#faf9fb; }
.product-story .rv-load-icon { color:#fff; }
.product-story .rv-form input[readonly], .product-story .rv-form textarea { background:#faf9fb; color:#0d0925; }
.product-story .rv-rating-input label { color:#817c8c; }
.product-story .rv-rating-input input:checked~label, .product-story .rv-rating-input label:hover, .product-story .rv-rating-input label:hover~label { color:#a65f00; }
.product-story .rv-error, .product-story .rv-field-error, .product-story .rv-load-error { color:#ab2029; }
.product-story .rv-success { color:#236631; }
.product-story .rv-skeleton span { background:#e8e5ed; }
@media (min-width:769px) and (max-width:991px) {
    .product-story-stage { padding:48px 24px 48px 72px; }
    .product-story-card { grid-template-columns:250px minmax(0,1fr); }
    .product-story-media { width:280px; height:280px; transform:translateX(-48px); }
}
@media (max-width:768px) {
    .product-story-stage { padding:136px 20px 36px; }
    .product-story-card { display:block; max-width:520px; min-height:0; padding:24px; }
    .product-story-media { width:100%; max-width:300px; height:240px; margin:0 auto -64px; padding:16px; transform:translateY(-50%); }
    .product-story-panels { padding:0; }
    .product-story .hero-product-name { font-size:23px; }
    .product-story .hero-product-description { font-size:14px; }
    .product-story-nav { top:150px; right:auto; left:50%; transform:translateX(-50%); width:auto; max-width:100%; flex-direction:row; }
    .product-story-nav [aria-selected=true] .product-story-dot { height:11px; width:30px; }
    .product-story-tab-label { top:44px; right:auto; }
    .product-story-controls { margin-top:16px; padding:0; }
}
@media (max-width:375px) {
    .product-story-stage { padding-left:16px; padding-right:16px; }
    .product-story-card { padding-left:20px; padding-right:20px; }
    .product-story .hero-product-name { font-size:22px; }
}
@media (prefers-reduced-motion:reduce) {
    .product-story .product-slide.is-entering { animation:none; }
    .product-story-dot { transition:none; }
}
