@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;1,400&family=Raleway:wght@300;400;500;600&family=Josefin+Sans:wght@300;400;600&display=swap";:root{--color-primary:#00352a;--color-secondary:#00251d;--color-accent:#335d54;--color-text:#333;--color-light-bg:#ece6dd;--color-gray-bg:#eee;--color-white:#fff;--font-heading:"Playfair Display", "Raleway", serif;--font-body:"Montserrat", sans-serif;--font-hero:"Josefin Sans", sans-serif;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:6rem}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-white);-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);margin-bottom:var(--spacing-sm);font-weight:400}a{color:inherit;text-decoration:none;transition:color .3s}ul{list-style:none}button,.btn{font-family:var(--font-body);color:var(--color-white);cursor:pointer;text-transform:uppercase;letter-spacing:1px;background-color:#000;border:none;border-radius:50px;padding:12px 30px;font-size:.9rem;font-weight:400;transition:background-color .3s,transform .2s;display:inline-block}button:hover,.btn:hover{background-color:#333;transform:translateY(-2px)}.btn-outline{color:#000;background-color:#0000;border:2px solid #000}.btn-outline:hover{color:var(--color-white);background-color:#000}.container{max-width:1140px;padding:0 var(--spacing-sm);margin:0 auto}section{padding:var(--spacing-xl) 0}.section-bg-light{background-color:var(--color-light-bg)}.section-bg-gray{background-color:var(--color-gray-bg)}.text-center{text-align:center}.mb-2{margin-bottom:2rem}.mb-4{margin-bottom:4rem}main{padding-top:110px}@media (width<=768px){main{padding-top:90px}}.hero,.category-hero,.results-hero{margin-top:-110px}@media (width<=768px){.hero,.category-hero,.results-hero{margin-top:-90px}}.cart-overlay{z-index:999;background-color:#00000080;width:100vw;height:100vh;position:fixed;top:0;left:0}.cart-drawer{background-color:var(--bg-white);z-index:1000;flex-direction:column;width:100%;max-width:400px;height:100vh;animation:.3s forwards slideIn;display:flex;position:fixed;top:0;right:0;box-shadow:-5px 0 15px #0000001a}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.cart-header h2{color:var(--primary-color);margin:0;font-family:Playfair Display,serif}.close-btn{color:var(--text-light);cursor:pointer;background:0 0;border:none;padding:0;font-size:2rem;line-height:1}.close-btn:hover{color:var(--primary-color)}.cart-items{flex:1;padding:1.5rem;overflow-y:auto}.empty-cart{text-align:center;color:var(--text-light);margin-top:2rem}.cart-item{border-bottom:1px solid #eee;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.cart-item-image{object-fit:cover;background-color:#f9f9f9;border-radius:6px;width:80px;height:80px}.cart-item-details{flex-direction:column;flex:1;display:flex}.cart-item-name{color:var(--primary-color);margin-bottom:.25rem;font-weight:600}.cart-item-price{color:var(--text-dark);margin-bottom:.75rem;font-weight:500}.cart-item-actions{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.quantity-controls{background-color:#f5f5f5;border-radius:4px;align-items:center;gap:.5rem;padding:.25rem;display:flex}.quantity-controls button{cursor:pointer;width:24px;height:24px;color:var(--text-dark);background:0 0;border:none;justify-content:center;align-items:center;font-weight:700;display:flex}.quantity-controls button:hover{background-color:#e0e0e0;border-radius:4px}.remove-btn{color:#d32f2f;cursor:pointer;background:0 0;border:none;font-size:.85rem;text-decoration:underline}.cart-footer{background-color:var(--bg-light);border-top:1px solid #eee;padding:1.5rem}.cart-total{color:var(--primary-color);justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600;display:flex}.checkout-btn{background-color:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.checkout-btn:hover{background-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 4px 12px #12262033}:root{--primary-color:var(--color-primary,#000);--primary-light:var(--color-accent,#333);--accent-color:var(--color-accent,#333);--bg-light:var(--color-light-bg,#f5f5f5);--bg-white:var(--color-white,#fff);--text-light:#666}.login-container{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;display:flex}.login-card{background-color:var(--bg-white);border-radius:12px;width:100%;max-width:450px;padding:3rem;box-shadow:0 10px 30px #0000000d}.login-card h2{color:var(--primary-color);text-align:center;margin-bottom:.5rem;font-family:Playfair Display,serif}.login-subtitle{color:var(--text-light);text-align:center;margin-bottom:2rem;font-size:.95rem}.login-error{color:#d32f2f;background-color:#fdeaea;border-radius:6px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem}.login-success{color:#2e7d32;background-color:#edf7ed;border-radius:6px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem}.login-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--primary-color);font-size:.9rem;font-weight:500}.form-group input{color:#333;background-color:#fafafa;border:1px solid #e0e0e0;border-radius:6px;padding:.8rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.form-group input::placeholder{color:#a0a0a0}.form-group input:placeholder-shown{border-left:4px solid #ffb3c7}.form-group input:not(:placeholder-shown){color:#000;background-color:#fff;border-color:#888 #888 #888 #4caf50;border-left-style:solid;border-left-width:4px;font-weight:500}.form-group input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 2px #d4af3733}.login-actions{justify-content:flex-end;display:flex}.forgot-password{color:var(--color-primary,#00352a);cursor:pointer;opacity:.85;background:0 0;border:none;padding:.2rem 0;font-family:inherit;font-size:.88rem;font-weight:500;text-decoration:none;transition:all .2s ease-in-out}.forgot-password:hover{color:var(--color-primary,#00352a);opacity:1;text-underline-offset:4px;text-decoration:underline}.forgot-password:focus-visible{outline:2px solid var(--color-primary,#00352a);outline-offset:2px;border-radius:2px}.login-button{background-color:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:1rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.login-button:hover:not(:disabled){background-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 4px 12px #12262033}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{text-align:center;color:var(--text-light);margin-top:2rem;font-size:.9rem}.login-footer a{color:var(--accent-color);font-weight:500;text-decoration:none;transition:color .3s}.login-footer a:hover{color:var(--primary-color);text-decoration:underline}.admin-order-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.admin-order-grid{grid-template-columns:1fr}.login-container{padding:2rem 1rem}.login-card{padding:1.5rem}}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{text-align:center;background:#fff;border-radius:8px;width:90%;max-width:400px;padding:2rem;box-shadow:0 4px 12px #00000026}.modal-actions{justify-content:center;gap:1rem;margin-top:1.5rem;display:flex}.btn-cancel{cursor:pointer;background:#f1f1f1;border:none;border-radius:4px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:500}.btn-cancel:hover{background:#e1e1e1}.btn-confirm{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:4px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:500}.btn-confirm:hover{background:#0056b3}.admin-action-btn{color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s}@media (width>=601px){.admin-action-btn{width:auto}}.admin-action-btn.capture{background-color:#28a745}.admin-action-btn.capture:hover{background-color:#218838}.admin-action-btn.complete{background-color:#007bff}.admin-action-btn.complete:hover{background-color:#0056b3}.admin-action-btn.cancel{background-color:#6c757d}.admin-action-btn.cancel:hover{background-color:#5a6268}.admin-action-btn.refund{background-color:#dc3545}.admin-action-btn.refund:hover{background-color:#c82333}.admin-action-row{flex-wrap:wrap;gap:.75rem;display:flex}@media (width<=600px){.admin-action-row{flex-direction:column}.admin-action-row .admin-action-btn{width:100%}}.login-notice{background-color:var(--color-light-bg,#ece6dd);color:var(--color-primary,#00352a);white-space:pre-line;text-align:left;border-radius:8px;margin-bottom:1rem;padding:.9rem 1rem;font-size:.95rem;line-height:1.4}.admin-customer-row{border:1px solid #ccc;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.admin-deduct{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.admin-deduct-controls{gap:.5rem;display:flex}.admin-deduct-input{border:1px solid #ccc;border-radius:4px;width:100px;padding:.5rem}.admin-deduct-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#333;border:none;border-radius:4px;padding:.5rem 1rem}@media (width<=600px){.admin-customer-row{flex-direction:column;align-items:stretch}.admin-deduct{align-items:stretch;width:100%}.admin-deduct-controls{width:100%}.admin-deduct-input{flex:1;width:auto}}.store-loading,.store-unapproved{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;display:flex}.unapproved-card{background-color:var(--bg-white);text-align:center;border-radius:12px;max-width:600px;padding:3rem;box-shadow:0 10px 30px #0000000d}.unapproved-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.store-page{max-width:1200px;margin:0 auto;padding:4rem 2rem}.store-header{text-align:center;margin-bottom:4rem}.store-header h1{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:3rem}.store-header p{color:var(--text-light);font-size:1.1rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.5rem;display:grid}.product-card{background:var(--bg-white);border-radius:12px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 4px 20px #0000000d}.product-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a}.product-image-container{background-color:#f9f9f9;width:100%;padding-top:100%;position:relative}.product-image-container img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.product-category{color:var(--primary-color);text-transform:uppercase;letter-spacing:1px;background-color:#ffffffe6;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;position:absolute;top:1rem;left:1rem}.product-info{flex-direction:column;flex:1;padding:1.5rem;display:flex}.product-info h3{color:var(--primary-color);margin-bottom:.5rem;font-size:1.25rem;line-height:1.4}.product-description{color:var(--text-light);flex:1;margin-bottom:1.5rem;font-size:.9rem;line-height:1.6}.product-footer{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1.5rem;display:flex}.product-price{color:var(--primary-color);font-size:1.25rem;font-weight:600}.add-to-cart-btn{background-color:var(--accent-color);color:#fff;border:1px solid var(--accent-color);cursor:pointer;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;transition:all .3s}.add-to-cart-btn:hover{color:var(--accent-color);background-color:#fff;transform:translateY(-2px)}.access-notice{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;display:flex}.store-search{max-width:480px;margin:0 auto 3rem}.store-search-input{border:1px solid var(--color-gray-bg,#ddd);background-color:var(--color-white,#fff);width:100%;color:var(--color-text,#333);border-radius:999px;outline:none;padding:.85rem 1.1rem;font-size:1rem;transition:border-color .2s}.store-search-input:focus{border-color:var(--color-primary,#00352a)}.store-no-results{text-align:center;color:var(--text-light,#666);padding:3rem 1rem}.history-loading,.history-unapproved{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;display:flex}.history-unapproved .unapproved-card{background-color:var(--bg-white);text-align:center;border-radius:12px;max-width:600px;padding:3rem;box-shadow:0 10px 30px #0000000d}.history-unapproved .unapproved-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.history-page{max-width:900px;margin:0 auto;padding:4rem 2rem}.history-header{text-align:center;margin-bottom:3rem}.history-header h1{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:3rem}.history-header p{color:var(--text-light);font-size:1.1rem}.points-hero{background-color:var(--bg-white);text-align:center;border-radius:12px;margin-bottom:3rem;padding:2.5rem 2rem;box-shadow:0 10px 30px #0000000d}.points-value{color:var(--primary-color);font-family:Playfair Display,serif;font-size:3.5rem;line-height:1.1}.points-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-light);margin-top:.5rem;font-size:.85rem}.points-note{color:var(--text-light);margin-top:1rem;font-size:.9rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:3rem;display:grid}.stat-card{background-color:var(--bg-white);text-align:center;border-radius:10px;padding:1.5rem 1rem;box-shadow:0 4px 14px #0000000a}.stat-value{color:var(--primary-color);font-size:1.5rem;font-weight:600}.stat-label{color:var(--text-light);margin-top:.35rem;font-size:.85rem}.history-list h2{color:var(--primary-color);margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:1.8rem}.history-none{color:var(--text-light)}.visit-card{background-color:var(--bg-white);border-radius:10px;margin-bottom:1rem;padding:1.5rem;box-shadow:0 4px 14px #0000000a}.visit-top{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.visit-title{color:var(--primary-color);margin:0;font-size:1.1rem}.visit-price{white-space:nowrap;font-weight:600}.visit-date,.visit-employee{color:var(--text-light);margin-top:.35rem;font-size:.9rem}.visit-cancelled{box-shadow:none;background-color:#f7f7f7}.visit-cancelled .visit-title,.visit-cancelled .visit-price,.visit-cancelled .visit-date{color:var(--text-light);text-decoration:line-through}.visit-products{background-color:var(--bg-light);border-radius:8px;margin-top:1rem;padding:.85rem 1rem}.visit-products-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-light);margin-bottom:.5rem;font-size:.8rem}.visit-products ul{margin:0;padding:0;list-style:none}.visit-products li{justify-content:space-between;align-items:baseline;gap:1rem;padding:.2rem 0;font-size:.92rem;display:flex}.visit-product-price{white-space:nowrap;color:var(--text-light);font-size:inherit}.visit-badges{flex-wrap:wrap;gap:.4rem;margin-top:1rem;display:flex}.visit-badge{background-color:var(--bg-light);color:var(--text-light);border-radius:999px;padding:.25rem .7rem;font-size:.75rem}.history-empty{background-color:var(--bg-white);text-align:center;border-radius:12px;padding:2.5rem;box-shadow:0 4px 14px #0000000a}.history-empty h2{color:var(--primary-color);margin-bottom:.75rem;font-family:Playfair Display,serif}.history-empty p{color:var(--text-light);max-width:520px;margin:0 auto}.history-synced{text-align:center;color:var(--text-light);margin-top:2.5rem;font-size:.85rem}@media (width<=600px){.history-page{padding:2.5rem 1.25rem}.history-header h1{font-size:2.2rem}.points-value{font-size:2.8rem}.visit-top{flex-direction:column;gap:.25rem}}.points-loading{color:var(--text-light);font-family:Playfair Display,serif;font-size:1.6rem;line-height:1.2}.history-order-success-banner{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border:1px solid #66bb6a;border-radius:12px;justify-content:space-between;align-items:flex-start;margin-bottom:2.5rem;padding:1.5rem;display:flex;box-shadow:0 4px 14px #0000000d}.history-order-success-content{align-items:flex-start;gap:1.25rem;display:flex}.history-success-icon{font-size:2.2rem;line-height:1}.history-order-success-content h3{color:#2e7d32;margin:0 0 .4rem;font-family:Playfair Display,serif;font-size:1.3rem}.history-order-success-content p{color:#1b5e20;margin:0;font-size:.95rem;line-height:1.5}.rewards-loading,.rewards-unapproved{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:4rem 2rem;display:flex}.rewards-notice-card{background-color:var(--bg-white);text-align:center;border-radius:12px;max-width:600px;padding:3rem;box-shadow:0 10px 30px #0000000d}.rewards-notice-card h2{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif}.rewards-page{max-width:900px;margin:0 auto;padding:4rem 2rem}.rewards-header{text-align:center;margin-bottom:3rem}.rewards-header h1{color:var(--primary-color);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:3rem}.rewards-header p{color:var(--text-light);font-size:1.1rem}.rewards-balance{background-color:var(--primary-color);color:#fff;text-align:center;border-radius:12px;margin-bottom:3rem;padding:3rem 2rem}.rewards-balance-value{font-family:Playfair Display,serif;font-size:4rem;line-height:1}.rewards-balance-label{text-transform:uppercase;letter-spacing:.1em;opacity:.85;margin-top:.6rem;font-size:.8rem}.rewards-balance-worth{opacity:.9;margin-top:1rem;font-size:.95rem}.rewards-cta{color:var(--primary-color);letter-spacing:.04em;background-color:#fff;border-radius:999px;margin-top:1.75rem;padding:.8rem 2rem;font-size:.9rem;text-decoration:none;transition:opacity .2s;display:inline-block}.rewards-cta:hover{opacity:.85}.rewards-error{color:#b3261e;text-align:center;background-color:#fdecea;border-radius:8px;margin-bottom:2rem;padding:1rem}.rewards-how,.rewards-ledger{margin-bottom:3rem}.rewards-how h2,.rewards-ledger h2{color:var(--primary-color);margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:1.8rem}.rewards-rules{gap:1rem;display:grid}.rewards-rule{background-color:var(--bg-white);border-radius:10px;align-items:flex-start;gap:1.25rem;padding:1.5rem;display:flex;box-shadow:0 4px 14px #0000000a}.rule-badge{background-color:var(--bg-light);min-width:64px;height:64px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0 .5rem;font-size:1.05rem;font-weight:600;display:flex}.rewards-rule strong{color:var(--primary-color);margin-bottom:.35rem;display:block}.rewards-rule p{color:var(--text-light);margin:0;font-size:.95rem}.rewards-footnote{color:var(--text-light);margin-top:1rem;font-size:.85rem;font-style:italic}.rewards-empty{color:var(--text-light)}.rewards-ledger ul{background-color:var(--bg-white);border-radius:10px;margin:0;padding:0;list-style:none;overflow:hidden;box-shadow:0 4px 14px #0000000a}.ledger-row{border-bottom:1px solid var(--bg-light);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.5rem;display:flex}.ledger-row:last-child{border-bottom:none}.ledger-text{flex-direction:column;display:flex}.ledger-reason{color:var(--primary-color);font-size:.95rem}.ledger-date{color:var(--text-light);margin-top:.2rem;font-size:.82rem}.ledger-amount{white-space:nowrap;color:var(--primary-color);font-weight:600}.ledger-negative{color:#a06a2c}@media (width<=600px){.rewards-page{padding:2.5rem 1.25rem}.rewards-header h1{font-size:2.2rem}.rewards-balance-value{font-size:3rem}.rewards-rule{gap:1rem;padding:1.25rem}.rule-badge{min-width:52px;height:52px;font-size:.9rem}}.rewards-balance-loading{opacity:.9;font-family:Playfair Display,serif;font-size:2rem;line-height:1.2}.rewards-welcome-banner{border:1px solid var(--primary-color,#a06a2c);background:linear-gradient(135deg,#fdfbf7 0%,#f7f1e5 100%);border-radius:12px;justify-content:space-between;align-items:flex-start;margin-bottom:2.5rem;padding:1.5rem;display:flex;box-shadow:0 4px 14px #0000000d}.rewards-welcome-content{align-items:flex-start;gap:1.25rem;display:flex}.rewards-welcome-icon{font-size:2.2rem;line-height:1}.rewards-welcome-content h3{color:var(--primary-color);margin:0 0 .4rem;font-family:Playfair Display,serif;font-size:1.3rem}.rewards-welcome-content p{color:var(--text-color,#333);margin:0;font-size:.95rem;line-height:1.5}.rewards-welcome-close{color:#888;cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.8rem;line-height:1;transition:color .2s}.rewards-welcome-close:hover{color:#000}.header{box-shadow:none;z-index:1000;background-color:#0000;width:100%;padding:1rem 0;position:absolute;top:0}.header-container{justify-content:space-between;align-items:center;max-width:1400px;display:flex}.logo img{width:auto;height:40px}.nav-links{align-items:center;gap:2rem;display:flex}.nav-link{font-family:var(--font-body);color:var(--color-text);text-transform:uppercase;font-size:.95rem;font-weight:400}.nav-link:hover{color:var(--color-primary)}.mobile-menu-btn{background-color:var(--color-primary);color:var(--color-white);cursor:pointer;border:none;border-radius:6px;width:44px;height:44px;font-size:1.6rem;transition:all .2s;display:none;box-shadow:0 2px 5px #0000001a}.mobile-menu-btn:hover{background-color:var(--color-secondary);transform:translateY(-1px)}.dropdown{position:relative}.dropdown-toggle{cursor:pointer;align-items:center;gap:4px;display:flex}.dropdown-menu{background-color:var(--color-white);opacity:0;visibility:hidden;z-index:1001;border-radius:4px;min-width:200px;padding:.5rem 0;transition:all .3s;position:absolute;top:100%;left:0;transform:translateY(10px);box-shadow:0 4px 15px #0000000d}.dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-link{color:var(--color-text);font-family:var(--font-body);padding:.8rem 1.5rem;font-size:.9rem;text-decoration:none;transition:background-color .2s;display:block}.dropdown-link:hover{background-color:var(--color-gray-bg);color:var(--color-primary)}@media (width<=768px){.nav-links{background-color:var(--color-white);flex-direction:column;align-items:flex-start;gap:1.5rem;width:100%;padding:2rem;display:none;position:absolute;top:100%;left:0;box-shadow:0 10px 15px #0000000d}.nav-links.nav-active{display:flex}.dropdown-menu{box-shadow:none;padding:0 0 0 1rem;display:none;position:static;transform:none}.dropdown-menu.show{display:block}.mobile-menu-btn{justify-content:center;align-items:center;display:flex}}@media (width>=769px){.header{background-color:var(--color-white);box-shadow:0 2px 10px #0000000d}.header-container{justify-content:space-between}}.login-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.login-modal{background-color:var(--color-white,#fff);color:var(--color-text,#333);text-align:center;border-radius:12px;width:100%;max-width:460px;padding:2.5rem 2rem 2rem;position:relative;box-shadow:0 20px 50px #00000040}.login-modal h3{font-family:var(--font-heading,"Playfair Display", serif);color:var(--color-primary,#00352a);margin:0 0 1rem;font-size:1.4rem;line-height:1.3}.login-modal p{color:var(--color-text,#333);margin:0 0 1.5rem;line-height:1.5}.login-modal-link{color:var(--color-primary,#00352a);font-weight:600;text-decoration:underline}.login-modal-primary{margin-bottom:1.25rem;display:inline-block}.login-modal-secondary{color:var(--color-text,#666);font-size:.9rem;margin:0!important}.login-modal-secondary a{color:var(--color-primary,#00352a);text-decoration:underline}.login-modal-close{color:var(--color-text,#999);cursor:pointer;background:0 0;border:none;font-size:1.8rem;line-height:1;position:absolute;top:.75rem;right:1rem}.footer{background-color:var(--color-light-bg);color:var(--color-text);padding:var(--spacing-xl) 0 var(--spacing-md)}.footer-grid{margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:3rem;display:grid}.footer-col h4{color:var(--color-text);letter-spacing:1px;margin-bottom:1.5rem;font-size:1.2rem;font-weight:400}.footer-col p,.footer-col a{color:#000000b3;margin-bottom:.8rem;display:block}.footer-col a:hover{color:var(--color-primary);text-decoration:underline}.footer-bottom{text-align:center;padding-top:var(--spacing-md);color:#0009;border-top:1px solid #0000001a;font-size:.9rem}.social-links{gap:1rem;display:flex}.social-links a{width:40px;height:40px;color:var(--color-text);background-color:#0000000d;border-radius:50%;justify-content:center;align-items:center;transition:background-color .3s;display:flex}.social-links a:hover{background-color:var(--color-primary);color:var(--color-white);text-decoration:none}.hero{text-align:center;height:800px;max-height:90vh;color:var(--color-white);background-image:url(https://storage.googleapis.com/dmkhudklinikk/forside_nettside.jpeg);background-position:50%;background-size:cover;justify-content:center;align-items:center;display:flex;position:relative}.hero-overlay{z-index:1;background-color:#0000004d;width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:2;width:100%;max-width:1200px;padding:0 var(--spacing-sm);text-align:center;flex-direction:column;align-items:center;margin-top:5vh;display:flex;position:relative}.hero-title{font-family:var(--font-hero);color:var(--color-white);margin-bottom:1.5rem;font-size:4rem;font-weight:300;line-height:1.2}.hero-subtitle{font-family:var(--font-hero);margin-bottom:2.5rem;font-size:1.5rem;font-weight:400}.hero-btn{border:3px solid #000;border-radius:50px;padding:15px 40px;font-size:1.1rem}@media (width>=769px){.hero{background-position:50% 48%;height:100vh;max-height:none}.hero-content{margin-top:25vh}.hero-title{white-space:nowrap}}@media (width<=768px){.hero{height:600px}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.2rem}}.services-section{text-align:center}.services-header{margin-bottom:var(--spacing-lg)}.services-title{font-family:var(--font-heading);font-size:2.5rem}.services-grid{margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem;display:grid}.service-card{background-color:var(--color-white);border-radius:15px;flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 5px 15px #0000000d}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a}.service-image{object-fit:cover;border-bottom:3px solid var(--color-primary);width:100%;height:200px}.service-content{flex-direction:column;flex-grow:1;justify-content:space-between;padding:1.5rem;display:flex}.service-title{font-family:var(--font-heading);margin-bottom:1rem;font-size:1.5rem}.service-btn{align-self:center;padding:10px 25px;font-size:.85rem}@media (width<=768px){.services-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}}.about-section{padding:var(--spacing-xl) 0;background-color:var(--color-white)}.about-container{align-items:center;gap:4rem;display:flex}.about-image-wrapper{border-radius:15px;flex:1;overflow:hidden;box-shadow:0 10px 30px #0000001a}.about-image{width:100%;height:auto;display:block}.about-content{flex:1}.about-title{margin-bottom:1.5rem;font-size:2.5rem}.about-text{color:var(--color-text);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}@media (width<=900px){.about-container{flex-direction:column;gap:2rem}}.testimonials-section{padding:var(--spacing-xl) 0;background-color:var(--color-white);text-align:center}.testimonials-header{margin-bottom:var(--spacing-lg)}.testimonials-title{font-family:var(--font-heading);font-size:2.5rem}.testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.testimonial-card{background-color:var(--color-light-bg);text-align:left;border-radius:15px;flex-direction:column;justify-content:space-between;padding:2rem;display:flex;box-shadow:0 5px 15px #0000000d}.testimonial-text{color:var(--color-text);margin-bottom:1.5rem;font-style:italic;line-height:1.6}.testimonial-author{align-items:center;gap:1rem;display:flex}.testimonial-avatar{background-color:var(--color-white);color:#000;border:1px solid #0000001a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2rem;font-weight:600;display:flex}.testimonial-name{font-weight:600;font-family:var(--font-heading)}@media (width<=768px){.testimonials-grid{grid-template-columns:1fr}}.treatment-category-page{background-color:#f9f7f4;min-height:80vh;padding-bottom:6rem}.category-hero{color:#fff;text-align:center;background-position:50%;background-size:cover;margin-bottom:4rem;padding:8rem 0 6rem;position:relative}.category-hero .breadcrumb{position:absolute;top:2rem;left:5%}.category-hero .breadcrumb-link{color:#ffffffe6;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .3s}.category-hero .breadcrumb-link:hover{color:#fff;text-decoration:underline}.category-title{letter-spacing:1px;color:#fff;text-shadow:0 2px 10px #0006;margin-bottom:1rem;font-size:3.5rem;font-weight:400}.category-subtitle{color:#ffffffe6;text-shadow:0 2px 5px #0000004d;max-width:600px;margin:0 auto;font-size:1.2rem;line-height:1.6}.category-description{background-color:#fff;border-radius:12px;max-width:800px;margin:0 auto 4rem;padding:3rem;box-shadow:0 5px 20px #00000008}.description-content h2{color:var(--color-primary);text-align:center;margin-bottom:1.5rem;font-size:2rem}.description-content p{color:#555;margin-bottom:1.2rem;font-size:1.05rem;line-height:1.7}.category-content{margin-top:4rem}.category-faq{max-width:800px;margin:0 auto 4rem}.faq-list{flex-direction:column;gap:1rem;display:flex}.faq-item{background:#fff;border-radius:8px;transition:box-shadow .3s;overflow:hidden;box-shadow:0 2px 10px #0000000a}.faq-item:hover{box-shadow:0 4px 15px #00000014}.faq-question{font-family:var(--font-heading);cursor:pointer;color:var(--color-primary);justify-content:space-between;align-items:center;padding:1.5rem;font-size:1.2rem;font-weight:600;list-style:none;display:flex}.faq-question::-webkit-details-marker{display:none}.faq-question:after{content:"+";color:var(--color-primary);font-size:1.5rem;font-weight:300;transition:transform .3s}details[open] .faq-question:after{content:"−";transform:rotate(180deg)}.faq-answer{color:#555;padding:0 1.5rem 1.5rem;line-height:1.7}.treatments-list{flex-direction:column;gap:1.5rem;display:flex}.treatment-card{background:#fff;border:1px solid #00000008;border-radius:12px;justify-content:space-between;align-items:center;padding:2.5rem;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 4px 15px #00000008}.treatment-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #0000000f}.treatment-info{flex:1;padding-right:2rem}.treatment-info h3{color:var(--color-text);margin-bottom:.8rem;font-size:1.4rem;font-weight:500}.treatment-info p{color:#666;margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.treatment-meta{gap:2rem;font-size:.95rem;display:flex}.treatment-meta .duration{color:#888;align-items:center;gap:.4rem;display:flex}.treatment-meta .price{color:var(--color-primary);font-size:1.1rem;font-weight:600}.treatment-action{flex-shrink:0}.book-btn{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:1rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s}.book-btn:hover{background-color:var(--color-secondary);transform:scale(1.05);box-shadow:0 4px 12px #a289724d}@media (width<=768px){.treatment-card{flex-direction:column;align-items:flex-start;padding:1.5rem}.treatment-info{margin-bottom:1.5rem;padding-right:0}.treatment-action{width:100%}.book-btn{text-align:center;width:100%}.category-title{font-size:2.5rem}}.image-carousel-container{width:100%;overflow:hidden}.image-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:15px;padding-bottom:15px;display:flex;overflow-x:auto}.image-carousel::-webkit-scrollbar{height:8px}.image-carousel::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.image-carousel::-webkit-scrollbar-thumb{background:var(--color-primary,#333);border-radius:4px}.carousel-slide{scroll-snap-align:start;border-radius:10px;flex:none;width:280px;height:280px;overflow:hidden;box-shadow:0 4px 15px #0000001a}.carousel-slide img{object-fit:cover;width:100%;height:100%;display:block}@media (width>=768px){.carousel-slide{width:320px;height:320px}}.results-page{background-color:#f9f7f4;min-height:80vh;padding-bottom:6rem}.results-hero{background-color:var(--color-primary);color:#fff;text-align:center;padding:12rem 0 5rem}.results-title{letter-spacing:1px;color:#fff;margin-bottom:1.5rem;font-size:3rem;font-weight:400}.results-subtitle{opacity:.9;max-width:800px;margin:0 auto;font-size:1.2rem;line-height:1.6}.results-content{margin-top:-3rem}.result-category-block{background:#fff;border-radius:12px;margin-bottom:3rem;padding:4rem;box-shadow:0 5px 20px #0000000a}.result-text{text-align:center;max-width:700px;margin:0 auto 3rem}.result-text h2{color:var(--color-primary);margin-bottom:1rem;font-size:2.2rem}.result-text p{color:#555;font-size:1.1rem;line-height:1.6}.result-image-single{border-radius:8px;max-width:900px;margin:0 auto;overflow:hidden;box-shadow:0 4px 15px #0000001a}.result-image-single img{width:100%;height:auto;display:block}@media (width<=768px){.results-title{font-size:2.2rem}.result-category-block{padding:2rem}}.contact-page{width:100%}.contact-info-grid{max-width:800px;margin-bottom:5rem;margin-left:auto;margin-right:auto;display:block}.contact-text p{color:#444;margin-bottom:1rem;line-height:1.6}.contact-details p{margin-bottom:.5rem;font-size:1.1rem}.contact-details a{color:var(--color-primary);text-decoration:none}.contact-map{border-radius:8px;width:100%;height:100%;overflow:hidden;box-shadow:0 4px 15px #0000000d}.employees-section{margin-top:5rem}.employees-slider{scrollbar-width:none;gap:20px;padding-bottom:20px;display:flex;overflow-x:auto}.employees-slider::-webkit-scrollbar{display:none}.employee-card{background-color:#fff;border-radius:10px;flex-direction:column;flex:none;width:250px;display:flex;overflow:hidden;box-shadow:0 4px 15px #0000001a}.employee-card img{object-fit:cover;object-position:top;width:100%;height:300px}.employee-info{text-align:center;flex-direction:column;flex-grow:1;justify-content:center;padding:1.5rem;display:flex}.employee-info h4{color:var(--color-primary);margin:0 0 .5rem;font-size:1.2rem}.employee-info p{color:#666;margin:0;font-size:.9rem;line-height:1.4}.prices-page{width:100%}.prices-grid{grid-template-columns:1fr;gap:3rem;max-width:800px;margin:0 auto;display:grid}.price-category{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 15px #0000000d}.price-category-title{color:var(--color-primary);border-bottom:2px solid #f0f0f0;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.5rem}.price-list{flex-direction:column;gap:1rem;display:flex}.price-item{border-bottom:1px dashed #eaeaea;justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.price-item:last-child{border-bottom:none}.price-item-info{flex-direction:column;padding-right:1rem;display:flex}.price-item-name{color:#333;font-weight:500;line-height:1.4}.price-item-duration{color:#888;margin-top:.2rem;font-size:.85rem}.price-item-cost{color:var(--color-primary);white-space:nowrap;font-weight:600}.cookie-consent-banner{background-color:var(--color-white);z-index:9999;width:100%;font-family:var(--font-body);padding:1.5rem;position:fixed;bottom:0;left:0;box-shadow:0 -4px 15px #0000001a}.cookie-consent-content{flex-direction:column;align-items:center;gap:1.5rem;max-width:1140px;margin:0 auto;display:flex}.cookie-consent-content p{color:var(--color-text);text-align:center;margin:0;font-size:.95rem;line-height:1.6}.cookie-consent-buttons{justify-content:center;gap:1rem;width:100%;display:flex}.cookie-btn{padding:10px 24px;font-size:.85rem}@media (width>=769px){.cookie-consent-content{flex-direction:row;justify-content:space-between}.cookie-consent-content p{text-align:left;max-width:70%}.cookie-consent-buttons{justify-content:flex-end;width:auto}}
