*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.flex-shrink{flex-shrink:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.break-all{word-break:break-all}.border{border-width:1px}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--bg:#0a0f2e;--bg2:#0e1538;--card:#121a42;--card2:#1a2350;--border:#2a3568;--gold:#d4a017;--gold2:#f0c040;--gold3:#f5d76e;--purple:#7b5ea7;--purple2:#9b7ec8;--text:#fff;--text2:#c0c8e8;--text3:#7a84a8}*{margin:0;padding:0;box-sizing:border-box}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}body{background:var(--bg);color:var(--text);font-family:var(--font-lora),"Lora",serif;min-height:100vh;overflow-x:hidden}body:before{inset:0;background-image:radial-gradient(1px 1px at 10% 20%,hsla(0,0%,100%,.6) 0,transparent 100%),radial-gradient(1px 1px at 25% 60%,hsla(0,0%,100%,.4) 0,transparent 100%),radial-gradient(1px 1px at 40% 10%,hsla(0,0%,100%,.5) 0,transparent 100%),radial-gradient(1px 1px at 55% 80%,hsla(0,0%,100%,.3) 0,transparent 100%),radial-gradient(1px 1px at 70% 35%,hsla(0,0%,100%,.6) 0,transparent 100%),radial-gradient(1px 1px at 85% 55%,hsla(0,0%,100%,.4) 0,transparent 100%),radial-gradient(1px 1px at 15% 85%,hsla(0,0%,100%,.5) 0,transparent 100%),radial-gradient(1px 1px at 92% 15%,hsla(0,0%,100%,.3) 0,transparent 100%),radial-gradient(2px 2px at 48% 28%,rgba(201,168,76,.4) 0,transparent 100%),radial-gradient(2px 2px at 22% 48%,rgba(201,168,76,.3) 0,transparent 100%),radial-gradient(2px 2px at 88% 38%,rgba(201,168,76,.4) 0,transparent 100%);transform:translateZ(0)}body:after,body:before{content:"";position:fixed;pointer-events:none;z-index:0;will-change:transform}body:after{top:-20%;left:50%;transform:translateX(-50%) translateZ(0);width:80%;height:60%;background:radial-gradient(ellipse,rgba(212,160,23,.08) 0,transparent 70%)}nav{position:sticky;top:0;z-index:100;background:rgba(10,15,46,.93);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:env(safe-area-inset-top,0) 2rem 0;display:flex;align-items:center;justify-content:space-between;height:calc(64px + env(safe-area-inset-top, 0px))}.nav-logo{font-family:var(--font-cinzel),"Cinzel",serif;font-size:1rem;color:var(--text);letter-spacing:.05em;text-decoration:none}.logo-tarot{background:linear-gradient(135deg,var(--gold) 0,var(--gold3) 50%,var(--gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-right{display:flex;align-items:center;gap:1.2rem}.nav-testimonials{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.7rem;letter-spacing:.15em;color:var(--text);text-decoration:none;text-transform:uppercase;transition:color .3s}.nav-testimonials:hover{color:var(--gold)}.nav-cart{position:relative;background:none;border:1px solid var(--border);color:var(--text);padding:.5rem 1.2rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.75rem;letter-spacing:.1em;display:flex;align-items:center;gap:.5rem;transition:all .3s;min-height:44px}.nav-cart:hover{border-color:var(--gold);color:var(--gold)}.cart-count{background:var(--gold);color:var(--bg);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.cart-count.bump{transform:scale(1.5)}.search-bar-wrap{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:0 2rem 1.5rem}.search-bar{display:flex;align-items:center;gap:.75rem;width:100%;background:var(--card);border:1px solid var(--border);border-radius:2px;padding:.9rem 1.25rem;color:var(--text3);font-family:var(--font-lora),"Lora",serif;font-size:.95rem;cursor:pointer;transition:all .25s;text-align:left}.search-bar:hover{border-color:var(--gold);background:var(--card2);color:var(--text2)}.search-bar:hover svg{color:var(--gold)}.search-bar svg{flex-shrink:0;color:var(--text3);transition:color .25s}.search-overlay{position:fixed;inset:0;z-index:9999;background:rgba(5,8,24,.82);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;animation:searchFadeIn .2s ease}@keyframes searchFadeIn{0%{opacity:0}to{opacity:1}}.search-modal{width:100%;max-width:560px;background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.5),0 0 0 1px rgba(212,160,23,.06);animation:searchSlideIn .2s ease}@keyframes searchSlideIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.search-input-wrap{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.search-input-wrap svg{flex-shrink:0;color:var(--gold)}.search-input{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--font-lora),"Lora",serif;font-size:1rem}.search-input::placeholder{color:var(--text3)}.search-close{display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.06);border:1px solid var(--border);border-radius:50%;width:30px;height:30px;padding:0;color:var(--text3);cursor:pointer;transition:all .15s;flex-shrink:0}.search-close:hover{border-color:var(--text3);color:var(--text2);background:hsla(0,0%,100%,.1)}.search-body{padding:.5rem 0}.search-empty{text-align:center;padding:2rem 1.25rem 1rem;color:var(--text3)}.search-empty svg{margin-bottom:.75rem;opacity:.4}.search-empty p{font-size:.9rem}.search-subtext{font-size:.75rem;margin-top:.25rem;opacity:.6}.search-quick-cats{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:0 1.25rem 1.25rem}.search-quick-cat{display:flex;align-items:center;gap:.4rem;padding:.5rem .8rem;background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:8px;color:var(--text2);font-family:var(--font-lora),"Lora",serif;font-size:.8rem;cursor:pointer;transition:all .15s}.search-quick-cat:hover{border-color:rgba(212,160,23,.3);background:rgba(212,160,23,.05);color:var(--gold2)}.search-quick-icon{font-size:1rem}.search-results{max-height:380px;overflow-y:auto;padding:.5rem 0}.search-results::-webkit-scrollbar{width:4px}.search-results::-webkit-scrollbar-track{background:transparent}.search-results::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.search-group-label{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text3);padding:.75rem 1.25rem .35rem}.search-result-item{display:flex;align-items:center;gap:.85rem;padding:.7rem 1.25rem;cursor:pointer;transition:background .12s;border:none;background:none;width:100%;text-align:left;color:inherit;font-family:inherit}.search-result-item.active,.search-result-item:hover{background:rgba(212,160,23,.05)}.search-result-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:8px;font-size:1.1rem;flex-shrink:0}.search-result-item.active .search-result-icon,.search-result-item:hover .search-result-icon{border-color:rgba(212,160,23,.25);background:rgba(212,160,23,.05)}.search-result-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.search-result-name{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.8rem;font-weight:600;letter-spacing:.03em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-name mark{background:none;color:var(--gold2);font-weight:700}.search-result-desc{font-size:.72rem;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.search-result-badge{font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;background:rgba(212,160,23,.1);border:1px solid rgba(212,160,23,.18);border-radius:3px;padding:.1rem .45rem}.search-result-badge,.search-result-price{font-family:var(--font-cinzel),"Cinzel",serif;color:var(--gold);white-space:nowrap}.search-result-price{font-size:.8rem;font-weight:600}.search-result-arrow{color:var(--text3);opacity:0;transition:opacity .12s;flex-shrink:0}.search-result-item.active .search-result-arrow,.search-result-item:hover .search-result-arrow{opacity:1;color:var(--gold)}.search-no-results{text-align:center;padding:2.5rem 1.25rem;color:var(--text3)}.search-no-results p{font-size:.9rem}.search-footer{display:flex;align-items:center;justify-content:center;padding:.6rem 1.25rem;border-top:1px solid var(--border);background:rgba(0,0,0,.12)}.search-footer span{font-size:.7rem;color:var(--text3)}.hero{position:relative;z-index:1;text-align:center;padding:6rem 2rem 4rem}.hero-eyebrow{font-size:.7rem;letter-spacing:.4em;color:var(--gold);text-transform:uppercase;margin-bottom:1.5rem;animation:fadeUp 1s ease .2s forwards}.hero h1,.hero-eyebrow{font-family:var(--font-cinzel),"Cinzel",serif;opacity:0}.hero h1{font-size:clamp(2rem,6vw,4.5rem);font-weight:900;color:var(--text);line-height:1.1;margin-bottom:1rem;animation:fadeUp 1s ease .4s forwards}.hero h1 span{background:linear-gradient(135deg,var(--gold) 0,var(--gold3) 50%,var(--gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-sub{font-size:1.2rem;font-style:italic;color:var(--text2);margin-bottom:2rem;opacity:0;animation:fadeUp 1s ease .6s forwards}.divider{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:2rem auto;opacity:0;animation:fadeUp 1s ease .8s forwards}section{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:2rem 2rem 4rem}.section-title{font-size:.65rem;letter-spacing:.5em;text-transform:uppercase;margin-bottom:.75rem}.section-heading,.section-title{font-family:var(--font-cinzel),"Cinzel",serif;color:var(--gold)}.section-heading{font-size:clamp(1.3rem,3vw,2rem);margin-bottom:.5rem}.section-desc{font-size:1.1rem;font-style:italic;color:var(--text2);margin-bottom:3rem}.section-info{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.15em;color:var(--text3);text-transform:uppercase;margin-bottom:.5rem;line-height:1.8}.section-info span{color:var(--gold)}.section-note{font-size:.85rem;color:var(--text3);font-style:italic;line-height:1.7;background:rgba(123,94,167,.08);border:1px solid rgba(123,94,167,.2);border-radius:4px;padding:.75rem 1rem;margin-bottom:3rem}.card-includes{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.15em;color:var(--text);text-transform:uppercase;margin-bottom:1.5rem}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1.5rem}.card{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2rem;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.23,1,.32,1);display:flex;flex-direction:column}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .4s}.card:hover{border-color:rgba(201,168,76,.3);transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,.4),0 0 40px rgba(123,94,167,.1)}.card:hover:before{opacity:1}.card-badge{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.3em;color:var(--gold2);text-transform:uppercase;margin-bottom:1rem;display:block}.card-image-link{display:block;margin:-2rem -2rem 1.5rem;overflow:hidden;background:var(--bg)}.card-image{width:100%;height:240px;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.23,1,.32,1)}.card-image-link:hover .card-image{transform:scale(1.04)}.product-detail-image{width:100%;max-width:480px;border-radius:4px;border:1px solid var(--border);margin-bottom:1.5rem;display:block}.card-title{font-family:var(--font-cinzel),"Cinzel",serif;font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.75rem;line-height:1.4}.card-desc{font-size:.95rem;font-style:italic;color:var(--text2);line-height:1.7;margin-bottom:1.5rem;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.7em * 3)}.card-duration{gap:.4rem;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.15em;color:var(--text);margin-bottom:1.5rem}.card-duration,.card-footer{display:flex;align-items:center}.card-footer{justify-content:space-between;margin-top:auto;gap:1rem}.card-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.card-price{font-size:1.3rem;color:var(--gold)}.card-price,.card-price span{font-family:var(--font-cinzel),"Cinzel",serif}.card-price span{font-size:.75rem;color:var(--text3);letter-spacing:.1em}.card-price .price-original{font-size:.95rem;color:var(--text3);text-decoration:line-through;margin-right:.4rem;opacity:.7}.btn-add{background:linear-gradient(135deg,var(--gold) 0,var(--gold2) 100%);border:none;color:var(--bg);padding:.5rem 1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;transition:all .3s;white-space:nowrap}.btn-add:hover{background:linear-gradient(135deg,var(--gold2) 0,var(--gold3) 100%);transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,168,76,.3)}.btn-add.added{background:#22c55e;cursor:default}.btn-add:disabled{cursor:default;opacity:.85}.btn-add:disabled:hover{transform:none;box-shadow:none}.card-urgency{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(212,160,23,.4);padding:.35rem .85rem;border-radius:2px;margin-bottom:1.5rem;animation:urgencyPulse 2.5s ease-in-out infinite}.card-urgency:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);animation:urgencyDot 2.5s ease-in-out infinite}@keyframes urgencyPulse{0%,to{border-color:rgba(212,160,23,.25);box-shadow:0 0 0 rgba(212,160,23,0)}50%{border-color:rgba(212,160,23,.6);box-shadow:0 0 12px rgba(212,160,23,.15)}}@keyframes urgencyDot{0%,to{opacity:.4}50%{opacity:1}}.live-booking-banner{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2.5rem;text-align:center;position:relative;overflow:hidden;margin-top:3rem}.live-booking-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.live-booking-banner h2{font-family:var(--font-cinzel),"Cinzel",serif;font-size:1.5rem;color:var(--text);margin-bottom:.75rem}.live-booking-banner p{font-style:italic;color:var(--text2);margin-bottom:2rem;font-size:1.05rem;line-height:1.8}.btn-book{display:inline-block;background:none;border:1px solid var(--gold);color:var(--gold);padding:.9rem 2.5rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;text-decoration:none;transition:all .3s;position:relative;overflow:hidden;z-index:0}.btn-book:after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateX(-100%);transition:transform .3s;z-index:-1}.btn-book:hover{color:var(--bg)}.btn-book:hover:after{transform:translateX(0)}.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:200;opacity:0;pointer-events:none;transition:opacity .3s}.cart-overlay.open{opacity:1;pointer-events:all}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);background:var(--bg2);border-left:1px solid var(--border);z-index:201;transform:translateX(100%);transition:transform .4s cubic-bezier(.23,1,.32,1);display:flex;flex-direction:column}.cart-drawer.open{transform:translateX(0)}.cart-header{padding:1.5rem 2rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.cart-header h2{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.8rem;letter-spacing:.3em;color:var(--gold);text-transform:uppercase}.cart-close{background:none;border:none;color:var(--text2);cursor:pointer;font-size:1.5rem;line-height:1;transition:color .2s}.cart-close:hover{color:var(--text)}.cart-items{flex:1;overflow-y:auto;padding:1.5rem 2rem}.cart-item{padding:1.25rem 0;border-bottom:1px solid var(--border)}.cart-item-name{font-size:.8rem;color:var(--text);margin-bottom:.4rem;letter-spacing:.05em}.cart-item-name,.cart-item-price{font-family:var(--font-cinzel),"Cinzel",serif}.cart-item-price{font-size:1rem;color:var(--gold)}.cart-item-remove{background:none;border:none;color:var(--text3);cursor:pointer;font-size:.75rem;font-family:var(--font-cinzel),"Cinzel",serif;letter-spacing:.1em;margin-top:.5rem;display:block;transition:color .2s}.cart-item-remove:hover{color:#e88}.cart-empty{text-align:center;padding:3rem 0;font-style:italic;color:var(--text3);font-size:1rem}.cart-footer{padding:1.5rem 2rem calc(1.5rem + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--border)}.cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.75rem;letter-spacing:.1em;color:var(--text2)}.cart-total,.cart-total-price{font-family:var(--font-cinzel),"Cinzel",serif}.cart-total-price{font-size:1.3rem;color:var(--gold)}.btn-checkout{width:100%;background:linear-gradient(135deg,var(--gold) 0,var(--gold2) 100%);color:var(--bg);border:none;padding:1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;transition:all .3s}.btn-checkout:hover{background:linear-gradient(135deg,var(--gold2) 0,var(--gold3) 100%);transform:translateY(-1px);box-shadow:0 8px 24px rgba(201,168,76,.3)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:300;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;pointer-events:none;transition:opacity .3s}.modal-overlay.open{opacity:1;pointer-events:all}.modal{background:var(--card);border:1px solid var(--border);border-radius:4px;width:min(600px,100%);max-height:90vh;overflow-y:auto;padding:2.5rem 2.5rem calc(2.5rem + env(safe-area-inset-bottom, 0px));position:relative}.modal-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:var(--text2);cursor:pointer;font-size:1.5rem;transition:color .2s}.modal-close:hover{color:var(--text)}.modal h2{font-family:var(--font-cinzel),"Cinzel",serif;font-size:1.3rem;color:var(--gold);margin-bottom:.5rem}.modal-sub{font-style:italic;color:var(--text2);margin-bottom:2rem;font-size:1rem}.order-summary{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1.25rem;margin-bottom:2rem}.order-summary-title{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.3em;color:var(--text3);text-transform:uppercase;margin-bottom:1rem}.order-item{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--text2);margin-bottom:.5rem;font-style:italic;gap:.75rem}.order-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-item-right{gap:.6rem}.order-item-remove,.order-item-right{display:flex;align-items:center;flex-shrink:0}.order-item-remove{justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--text2);background:none;color:var(--text);font-size:1rem;cursor:pointer;transition:all .2s;line-height:1}.order-item-remove:hover{background:#dc2626;border-color:#dc2626;color:#fff}.order-continue-shopping{display:block;width:100%;text-align:center;background:none;border:none;color:var(--text2);font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;padding-top:1rem;margin-top:.5rem;border-top:1px solid var(--border);transition:color .2s}.order-continue-shopping:hover{color:var(--gold)}.order-total-row{display:flex;justify-content:space-between;padding-top:.75rem;margin-top:.75rem;border-top:1px solid var(--border);font-size:.75rem;letter-spacing:.1em;color:var(--text)}.order-total-amt,.order-total-row{font-family:var(--font-cinzel),"Cinzel",serif}.order-total-amt{color:var(--gold);font-size:1.1rem}.order-subtotal-row{padding-top:.75rem;margin-top:.75rem;border-top:1px solid var(--border);color:var(--text3)}.order-discount-row,.order-subtotal-row{display:flex;justify-content:space-between;font-size:.85rem}.order-discount-row{color:#4ade80;margin-top:.35rem}.promo-section{margin-bottom:2rem}.promo-input-row{display:flex;gap:.5rem}.promo-input{flex:1}.promo-btn{background:transparent;border:1px solid var(--border);color:var(--text2);padding:0 1.25rem;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border-radius:2px;transition:all .2s;white-space:nowrap}.promo-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.promo-btn:disabled{opacity:.5;cursor:not-allowed}.promo-error{color:#ef4444;font-size:.8rem;margin-top:.5rem;font-style:italic}.promo-applied{display:flex;align-items:center;justify-content:space-between;background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.2);border-radius:2px;padding:.75rem 1rem}.promo-applied-text{color:#4ade80;font-size:.7rem;letter-spacing:.15em}.promo-applied-text,.promo-remove{font-family:var(--font-cinzel),"Cinzel",serif}.promo-remove{background:transparent;border:none;color:var(--text3);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.promo-remove:hover{color:#ef4444}.qr-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.qr-tab{flex:1;padding:.6rem;background:var(--bg);border:1px solid var(--border);border-radius:2px;color:var(--text2);font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.1em;cursor:pointer;transition:all .2s;text-align:center}.qr-tab.active{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.05)}.qr-panel{display:none;text-align:center;margin-bottom:2rem}.qr-panel img,.qr-panel.active{display:block}.qr-info{font-style:italic;color:var(--text2);font-size:.9rem}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.2em;color:var(--text2);text-transform:uppercase;margin-bottom:.5rem}.form-input{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:2px;padding:.75rem 1rem;color:var(--text);font-family:var(--font-lora),"Lora",serif;font-size:1rem;transition:border-color .2s;outline:none}.form-input:focus{border-color:var(--gold)}.file-upload{border:1px dashed var(--border);border-radius:2px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s;position:relative}.file-upload.dragover,.file-upload:hover{border-color:var(--gold);background:rgba(201,168,76,.03)}.file-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.file-upload-text{font-style:italic;color:var(--text3);font-size:.95rem}.file-upload-text strong{color:var(--gold);font-style:normal;font-size:.75rem}.file-preview,.file-upload-text strong{font-family:var(--font-cinzel),"Cinzel",serif;letter-spacing:.1em}.file-preview{margin-top:1rem;font-size:.7rem;color:var(--purple2)}.formspree-note{background:rgba(123,94,167,.1);border:1px solid rgba(123,94,167,.3);border-radius:4px;padding:1rem 1.25rem;margin-bottom:1.5rem;font-size:.85rem;color:var(--purple2);font-style:italic;line-height:1.6}.formspree-note a{color:var(--gold)}.formspree-note code{font-style:normal;background:hsla(0,0%,100%,.08);padding:.1em .4em;border-radius:2px;font-size:.8em}.btn-submit{width:100%;background:linear-gradient(135deg,var(--gold) 0,var(--gold2) 100%);color:var(--bg);border:none;padding:1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;transition:all .3s;margin-top:.5rem}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg,var(--gold2) 0,var(--gold3) 100%);transform:translateY(-1px);box-shadow:0 8px 24px rgba(201,168,76,.3)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.submit-error{color:#ef4444;font-size:.875rem;text-align:center;margin:0 0 1rem}.success-state{text-align:center;padding:3rem 1.5rem;display:none}.success-state.show{display:block}.checkout-form.hide{display:none}.success-icon{font-size:3rem;margin-bottom:1.5rem}.success-message{line-height:1.9;text-align:center;margin-bottom:2rem}.success-message,.success-signoff{font-style:italic;color:var(--text2);font-size:1rem}.success-signoff{line-height:1.8;margin-top:1.5rem}.success-name{font-family:var(--font-cinzel),"Cinzel",serif;color:var(--gold);font-style:normal;font-size:1.1rem;letter-spacing:.05em}.birth-chart-checkout-note{background:rgba(123,94,167,.1);border:1px solid rgba(123,94,167,.3);border-radius:4px;padding:1rem 1.25rem;margin-bottom:1.25rem;font-size:.85rem;color:var(--text);font-style:italic;line-height:1.6}.birth-chart-info{margin-bottom:1.5rem}.birth-chart-note{font-size:.85rem;color:var(--text3);line-height:1.7;font-style:italic;background:rgba(123,94,167,.08);border:1px solid rgba(123,94,167,.2);border-radius:4px;padding:.75rem 1rem}.birth-chart-note strong{color:var(--gold);font-style:normal;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:.4rem}.event-banner{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:3rem 2.5rem;text-align:center;position:relative;overflow:hidden}.event-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.event-badge{display:inline-block;font-size:.6rem;letter-spacing:.3em;color:var(--gold);text-transform:uppercase;border:1px solid var(--gold);padding:.3rem 1rem;border-radius:2px;margin-bottom:1.5rem}.event-badge,.event-title{font-family:var(--font-cinzel),"Cinzel",serif}.event-title{font-size:clamp(1.2rem,3vw,1.8rem);color:var(--text);margin-bottom:1rem;font-weight:600}.event-desc{font-style:italic;color:var(--text2);font-size:1.05rem;line-height:1.8;margin-bottom:2rem;max-width:520px;margin-left:auto;margin-right:auto}.btn-coming-soon{display:inline-block;background:var(--card2);border:1px solid var(--border);color:var(--text3);padding:.9rem 2.5rem;border-radius:2px;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;cursor:not-allowed;opacity:.7}footer{position:relative;z-index:1;text-align:center;padding:3rem 2rem;border-top:1px solid var(--border);font-style:italic;color:var(--text3);font-size:.9rem}footer strong{font-family:var(--font-cinzel),"Cinzel",serif;color:var(--text);font-style:normal;font-size:.85rem;letter-spacing:.05em}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--gold)}.nav-cart-link{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.7rem;letter-spacing:.15em;color:var(--text);text-decoration:none;text-transform:uppercase;transition:color .3s}.nav-cart-link:hover,.nav-testimonials.active{color:var(--gold)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:1.5rem}.testimonial-card{background:var(--card);border:1px solid var(--border);border-radius:4px;overflow:hidden;cursor:pointer;transition:all .4s cubic-bezier(.23,1,.32,1)}.testimonial-card:hover{border-color:rgba(201,168,76,.3);transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,.4),0 0 40px rgba(123,94,167,.1)}.testimonial-card img{width:100%;height:auto;display:block}.lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:500;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:pointer}.lightbox-close{position:fixed;top:calc(1.5rem + env(safe-area-inset-top, 0px));right:calc(1.5rem + env(safe-area-inset-right, 0px));background:none;border:none;color:var(--text);font-size:2rem;cursor:pointer;z-index:501;transition:color .2s}.lightbox-close:hover{color:var(--gold)}.lightbox-img{max-width:90vw;max-height:85vh;border-radius:4px;border:1px solid var(--border);cursor:default}.nav-back{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.1em;color:var(--text);text-decoration:none;transition:color .2s}.nav-back:hover{color:var(--gold)}.category-section{text-align:center;padding:0 2rem 1.5rem;max-width:1100px;margin:0 auto}.category-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:1.25rem;max-width:1100px;margin:0 auto;padding:0 2rem 3rem}.category-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:2rem;text-decoration:none;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.23,1,.32,1)}.category-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .4s}.category-card:hover{border-color:rgba(201,168,76,.3);transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,.4),0 0 40px rgba(123,94,167,.1)}.category-card:hover:before{opacity:1}.category-badge{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.25em;color:var(--gold2);text-transform:uppercase;display:block;margin-bottom:1rem}.category-icon{font-size:2rem;margin-bottom:.75rem}.category-name{font-family:var(--font-cinzel),"Cinzel",serif;font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.category-desc{font-size:.9rem;font-style:italic;color:var(--text2);line-height:1.6;margin-bottom:1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.6em * 3)}.category-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.category-count{font-size:.65rem;letter-spacing:.12em;color:var(--text2);text-transform:uppercase}.category-count,.category-price{font-family:var(--font-cinzel),"Cinzel",serif}.category-price{font-size:.85rem;color:var(--gold);font-weight:600;letter-spacing:.05em}.category-cta{display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2);border-top:1px solid var(--border);padding-top:1.25rem;margin-top:auto;transition:gap .3s,color .3s}.category-cta-arrow{transition:transform .3s;font-size:.8rem}.category-card:hover .category-cta{color:var(--gold3)}.category-card:hover .category-cta-arrow{transform:translateX(4px)}.category-hero{position:relative;z-index:1;text-align:center;padding:4rem 2rem 2rem;max-width:700px;margin:0 auto}.category-hero-icon{font-size:3rem;margin-bottom:1rem}.category-info-block{margin-bottom:1rem}.card-title-link{text-decoration:none;color:inherit}.card-title-link:hover .card-title{color:var(--gold)}.product-detail{position:relative;z-index:1;max-width:700px;margin:0 auto;padding:2rem 2rem 4rem}.product-breadcrumb{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.1em;color:var(--text3);margin-bottom:2rem;text-transform:uppercase}.product-breadcrumb a{color:var(--text3);text-decoration:none;transition:color .2s}.product-breadcrumb a:hover{color:var(--gold)}.breadcrumb-sep{margin:0 .5rem;opacity:.4}.breadcrumb-current{color:var(--text2)}.product-title{font-family:var(--font-cinzel),"Cinzel",serif;font-size:clamp(1.4rem,4vw,2.2rem);font-weight:700;color:var(--text);margin-bottom:1rem;line-height:1.3}.product-price-row{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1.5rem}.product-price{font-family:var(--font-cinzel),"Cinzel",serif;font-size:2rem;color:var(--gold)}.product-price-original{font-size:1.2rem;text-decoration:line-through;opacity:.7}.product-currency,.product-price-original{font-family:var(--font-cinzel),"Cinzel",serif;color:var(--text3)}.product-currency{font-size:.85rem;letter-spacing:.1em}.product-duration{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.7rem;letter-spacing:.15em;color:var(--text3);margin-bottom:1.5rem}.product-desc{font-size:1.05rem;font-style:italic;color:var(--text2);line-height:1.8;margin-bottom:2rem}.product-details-list{background:var(--card);border:1px solid var(--border);border-radius:4px;padding:1.5rem 2rem;margin-bottom:2rem}.product-details-title{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.3em;color:var(--gold);text-transform:uppercase;margin-bottom:1rem}.product-details-list ul{list-style:none;padding:0}.product-details-list li{font-size:.95rem;color:var(--text2);padding:.4rem 0;border-bottom:1px solid rgba(42,53,104,.5);line-height:1.6}.product-details-list li:last-child{border-bottom:none}.product-details-list li:before{content:"\2726 ";color:var(--purple2);margin-right:.5rem}.btn-view{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid var(--gold);color:var(--gold);padding:.5rem 1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;text-decoration:none;transition:all .3s;position:relative;overflow:hidden;z-index:0}.btn-view:after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateX(-100%);transition:transform .3s;z-index:-1}.btn-view:hover{color:var(--bg)}.btn-view:hover:after{transform:translateX(0)}.btn-details{display:inline-flex;align-items:center;justify-content:center;color:var(--text);font-family:var(--font-cinzel),"Cinzel",serif;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:.5rem .6rem;border:1px solid var(--text2);border-radius:2px;transition:color .3s,border-color .3s}.btn-details:hover{color:var(--text);border-color:var(--text)}.cart-toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%) translateY(120%);background:var(--card2);border:1px solid var(--border);border-radius:4px;padding:.85rem 1.25rem;display:flex;align-items:center;gap:1rem;z-index:1000;box-shadow:0 12px 40px rgba(0,0,0,.5);opacity:0;transition:transform .35s cubic-bezier(.23,1,.32,1),opacity .35s;max-width:min(560px,calc(100vw - 2rem))}.cart-toast.visible{transform:translateX(-50%) translateY(0);opacity:1}.cart-toast-text{font-size:.85rem;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cart-toast-text strong{color:var(--text)}.cart-toast-actions{display:flex;gap:.5rem;flex-shrink:0}.cart-toast-btn{background:none;border:1px solid var(--border);color:var(--text2);padding:.4rem .75rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;transition:all .2s;white-space:nowrap}.cart-toast-btn:hover{border-color:var(--text3);color:var(--text)}.cart-toast-btn-primary{background:linear-gradient(135deg,var(--gold) 0,var(--gold2) 100%);color:var(--bg);border-color:var(--gold);font-weight:600}.cart-toast-btn-primary:hover{background:linear-gradient(135deg,var(--gold2) 0,var(--gold3) 100%);color:var(--bg)}.product-actions{display:flex;gap:.75rem}.btn-add-large{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold) 0,var(--gold2) 100%);color:var(--bg);border:none;padding:1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;transition:all .3s}.btn-add-large:hover{background:linear-gradient(135deg,var(--gold2) 0,var(--gold3) 100%);transform:translateY(-1px);box-shadow:0 8px 24px rgba(201,168,76,.3)}.btn-add-large.added{background:#22c55e;box-shadow:none;transform:none}.btn-buy-now{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;border:none;padding:1rem;border-radius:2px;cursor:pointer;font-family:var(--font-cinzel),"Cinzel",serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;transition:all .3s}.btn-buy-now:hover{background:linear-gradient(135deg,#ef4444,#f87171);transform:translateY(-1px);box-shadow:0 8px 24px rgba(220,38,38,.3)}.qty-selector{display:flex;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--border);border-radius:4px;padding:1rem 1.5rem;margin-bottom:1.5rem}.qty-label{font-family:var(--font-cinzel),"Cinzel",serif;font-size:.7rem;letter-spacing:.2em;color:var(--text2);text-transform:uppercase}.qty-controls{gap:0}.qty-btn,.qty-controls{display:flex;align-items:center}.qty-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);width:40px;height:40px;justify-content:center;cursor:pointer;font-size:1.1rem;font-weight:600;transition:all .2s}.qty-btn:first-child{border-radius:2px 0 0 2px}.qty-btn:last-child{border-radius:0 2px 2px 0}.qty-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.qty-btn:disabled{opacity:.3;cursor:not-allowed}.qty-value{background:var(--bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--gold);font-family:var(--font-cinzel),"Cinzel",serif;font-size:1rem;font-weight:600;width:48px;height:40px;display:flex;align-items:center;justify-content:center}@media (max-width:900px){.cards-grid,.category-grid,.testimonials-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:clamp(1.8rem,5vw,3.5rem)}.section-heading{font-size:clamp(1.1rem,2.5vw,1.8rem)}.modal{width:min(520px,95%);padding:2rem}.event-banner{padding:2rem 1.5rem}}@media (max-width:600px){nav{padding:0 .75rem;height:56px}.nav-logo{font-size:.8rem}.nav-cart-link,.nav-testimonials{font-size:.55rem;letter-spacing:.05em}.nav-right{gap:.6rem}.nav-cart{padding:.4rem .8rem;font-size:.65rem}.search-bar-wrap{padding:0 1rem 1.25rem}.search-bar{padding:.75rem 1rem;font-size:.85rem;gap:.6rem}.search-bar svg{width:16px;height:16px}.search-overlay{padding-top:0}.search-modal{max-width:100%;border-radius:0;min-height:100dvh}.search-results{max-height:calc(100dvh - 130px)}.search-result-meta{flex-direction:column;align-items:flex-end;gap:.2rem}.search-result-badge{font-size:.5rem}.search-result-price{font-size:.7rem}.search-result-arrow{display:none}.search-footer span{font-size:.6rem}.hero{padding:3rem 1.25rem 1.5rem}.hero-eyebrow{font-size:.6rem;letter-spacing:.3em;margin-bottom:1rem}.hero h1{font-size:1.8rem;margin-bottom:.75rem}.hero-sub{font-size:.95rem;margin-bottom:1.5rem}.divider{margin:1.25rem auto}section{padding:1.25rem 1rem 2.5rem}.section-title{font-size:.6rem;letter-spacing:.35em}.section-heading{font-size:1.2rem}.section-desc{font-size:.95rem;margin-bottom:2rem}.cards-grid{grid-template-columns:1fr;gap:1rem}.card{padding:1.5rem}.card-title{font-size:.95rem}.card-desc{font-size:.9rem;line-height:1.6;margin-bottom:1rem;min-height:calc(1.6em * 3)}.card-price{font-size:1.1rem}.card-footer{flex-direction:column;align-items:stretch;gap:.75rem}.card-actions{display:flex}.btn-add{flex:1}.btn-add,.btn-details{padding:.6rem 1.1rem;font-size:.6rem;min-height:44px;display:flex;align-items:center;justify-content:center}.btn-details{flex-shrink:0}.btn-view{padding:.6rem 1.1rem;font-size:.6rem;min-height:44px}.cart-toast{flex-direction:column;gap:.6rem;text-align:center;bottom:1rem;padding:1rem}.cart-toast-actions{width:100%}.cart-toast-btn{flex:1;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:.6rem}.testimonials-grid{grid-template-columns:1fr;gap:1rem}.event-banner{padding:2rem 1.25rem}.event-title{font-size:1.1rem}.event-desc{font-size:.95rem}.modal{width:100%;max-height:100vh;max-height:100dvh;border-radius:0;padding:1.5rem 1.5rem calc(1.5rem + env(safe-area-inset-bottom, 0px))}.modal-overlay{padding:0;align-items:stretch}.modal h2{font-size:1.1rem}.modal-sub{font-size:.9rem;margin-bottom:1.5rem}.order-summary{padding:1rem}.order-item-remove{width:32px;height:32px;font-size:1.1rem}.order-continue-shopping{font-size:.65rem;padding-top:.85rem;min-height:44px;display:flex;align-items:center;justify-content:center}.qr-tab{padding:.7rem;font-size:.6rem;min-height:44px}.form-input{padding:.85rem 1rem;font-size:16px}.form-label{font-size:.6rem}.btn-submit{padding:1rem;font-size:.7rem;min-height:48px}.file-upload{padding:1.5rem}.cart-drawer{width:100vw}.cart-header{padding:calc(1.25rem + env(safe-area-inset-top, 0px)) 1rem 1.25rem}.cart-header h2{font-size:.7rem}.cart-items{padding:1rem}.cart-footer{padding:1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom, 0px))}.btn-checkout{min-height:48px;font-size:.7rem}.promo-input{min-width:0}.promo-btn{padding:.6rem .8rem;min-height:44px}.birth-chart-checkout-note{font-size:.8rem;padding:.85rem 1rem}.lightbox-overlay{padding:1rem}.lightbox-close{top:.75rem;right:.75rem;font-size:2.5rem;padding:.5rem}.category-grid{grid-template-columns:1fr;padding:0 1rem 2rem;gap:1rem}.category-card{padding:1.5rem}.category-hero{padding:2.5rem 1.25rem 1.5rem}.category-hero-icon{font-size:2rem}.product-detail{padding:1.5rem 1.25rem 3rem}.product-breadcrumb{font-size:.5rem;margin-bottom:1.5rem}.product-title{font-size:1.3rem}.product-price{font-size:1.6rem}.product-desc{font-size:.95rem}.product-details-list{padding:1.25rem 1.5rem}.product-actions{flex-direction:column}.btn-add-large,.btn-buy-now{min-height:48px}.qty-selector{padding:.85rem 1.25rem}.qty-btn{width:44px;height:44px}.card-image-link{margin:-1.5rem -1.5rem 1.25rem}.card-image{height:200px}.product-detail-image{max-width:100%;margin-bottom:1.25rem}footer{padding:2rem 1.25rem calc(2rem + env(safe-area-inset-bottom, 0px));font-size:.85rem}body:after,body:before{display:none}.cart-toast{bottom:calc(1rem + env(safe-area-inset-bottom, 0px))}}@media (max-width:900px) and (orientation:landscape){.modal{max-height:100vh;max-height:100dvh}.modal-overlay{align-items:flex-start;overflow-y:auto}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}body:after,body:before{display:none}}