@import "https://fonts.googleapis.com/css2?family=Marcellus&display=swap";
*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#2d2d2d;--accent:#d4af37;--background:#fff;--text:#2d2d2d;--gray:#666;--light-gray:#f5f5f5;--border:#e0e0e0;--header-bg:#f8f8f8}body{color:var(--text);background:var(--background);font-family:Marcellus,serif;line-height:1.6}header{color:var(--primary);background:#fff;border-bottom:1px solid #e8e8e8;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;box-shadow:0 2px 8px #00000014}header.bg-white,header[class*=bg-white]{background:#fff!important}.logo-container,.logo-container a{align-items:center;display:flex}.logo{object-fit:contain;width:auto;height:60px}nav{align-items:center;gap:2.5rem;display:flex}nav a{color:var(--primary);text-transform:uppercase;letter-spacing:.5px;font-family:Marcellus,serif;font-size:1rem;font-weight:500;text-decoration:none;transition:color .3s;position:relative}nav a:after{content:"";background:var(--accent);width:0;height:2px;transition:width .3s;position:absolute;bottom:-5px;left:0}nav a:hover{color:var(--accent)}nav a:hover:after{width:100%}.hero-section{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 50%,#1a1a1a 100%);justify-content:center;align-items:center;min-height:600px;padding:80px 20px;display:flex;position:relative;overflow:hidden}.hero-section:before{content:"";z-index:1;background:radial-gradient(circle,#d4af371f 0%,#0000 70%);border-radius:50%;width:650px;height:650px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-background-logo{opacity:.35;filter:brightness(1.5)contrast(1.3)drop-shadow(0 0 30px #d4af3733);z-index:2;pointer-events:none;background-image:url(/logo-transparent.png);background-position:50%;background-repeat:no-repeat;background-size:contain;width:550px;height:550px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-content{z-index:3;text-align:center;max-width:900px;position:relative}.hero-title{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.title-line-1{color:#d4af37;letter-spacing:4px;text-transform:uppercase;text-shadow:0 2px 10px #d4af3766;font-family:Marcellus,serif;font-size:2rem;font-weight:400;animation:.8s fadeInDown}.title-line-2{color:#fff;letter-spacing:2px;text-shadow:0 4px 20px #0009,0 2px 4px #0006;font-family:Marcellus,serif;font-size:4rem;font-weight:700;animation:.8s fadeInUp}.hero-subtitle{color:#d4af37;letter-spacing:1px;text-shadow:0 2px 8px #d4af374d;margin:0 0 16px;font-family:Marcellus,serif;font-size:1.5rem;font-weight:300;animation:1s fadeIn}.hero-description{color:#e0e0e0;text-shadow:0 1px 3px #00000080;margin:0 0 40px;font-size:1.1rem;line-height:1.6;animation:1.2s fadeIn}.cta-button{color:#1a1a1a;letter-spacing:2px;background:linear-gradient(135deg,#d4af37 0%,#c09d2f 100%);border:2px solid #0000;border-radius:8px;padding:18px 48px;font-size:1.2rem;font-weight:700;text-decoration:none;transition:all .3s;animation:1.4s fadeInUp;display:inline-block;box-shadow:0 6px 25px #d4af3766}.cta-button:hover{color:#000;background:linear-gradient(135deg,#e5c047 0%,#d4af37 100%);border:2px solid #d4af37;transform:translateY(-3px);box-shadow:0 8px 30px #d4af3799}.hero-promise{color:#b0b0b0;text-shadow:0 1px 3px #00000080;margin-top:24px;font-size:.95rem;font-style:italic;animation:1.6s fadeIn}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.hero-section{min-height:500px;padding:60px 20px}.hero-section:before{width:400px;height:400px}.hero-background-logo{opacity:.3;width:350px;height:350px}.title-line-1{letter-spacing:3px;font-size:1.3rem}.title-line-2{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-description{font-size:1rem}.cta-button{letter-spacing:1px;padding:14px 32px;font-size:1rem}}@media (max-width:480px){.title-line-2{font-size:2rem}.hero-background-logo{width:280px;height:280px}}.btn{background:var(--accent);color:var(--primary);text-transform:uppercase;letter-spacing:1px;cursor:pointer;text-align:center;border:none;border-radius:8px;padding:1rem 2.5rem;font-family:Marcellus,serif;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn:hover{background:#c49d2f;transform:translateY(-2px);box-shadow:0 4px 12px #d4af374d}.btn-primary{color:#2d2d2d;text-transform:uppercase;letter-spacing:1px;background:#d4af37;border:none;border-radius:8px;padding:1.25rem 3rem;font-family:Marcellus,serif;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{background:#c49d2f;transform:translateY(-3px);box-shadow:0 8px 20px #d4af3766}.btn-large{padding:1.25rem 3rem;font-size:1.1rem}.features{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto;padding:4rem 2rem;display:grid}.feature-card{border:1px solid var(--border);text-align:center;background:#fff;border-radius:12px;padding:2.5rem 2rem;transition:all .3s}.feature-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #0000001f}.feature-icon{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;font-size:2rem;display:flex}.feature-card h3{color:var(--primary);letter-spacing:.5px;margin-bottom:1rem;font-family:Marcellus,serif;font-size:1.4rem;font-weight:400}.feature-card p{color:var(--gray);font-family:Marcellus,serif;font-weight:300;line-height:1.8}.container{max-width:800px;margin:3rem auto;padding:0 2rem}.form-container{border:1px solid var(--border);background:#fff;border-radius:8px;padding:3rem;box-shadow:0 4px 20px #00000014}.form-container h2{letter-spacing:.5px;font-family:Marcellus,serif;font-weight:400}.form-container h3{font-family:Marcellus,serif;font-weight:400}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--primary);letter-spacing:.3px;margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:2px solid var(--border);border-radius:4px;width:100%;padding:.875rem;font-family:Marcellus,serif;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-group small{font-family:Marcellus,serif;font-size:.85rem}.status-badge{letter-spacing:.3px;border-radius:20px;padding:.5rem 1rem;font-family:Marcellus,serif;font-size:.875rem;font-weight:500;display:inline-block}.status-pending{color:#856404;background:#fff3cd}.status-completed{color:#155724;background:#d4edda}.status-payment{color:#0c5460;background:#d1ecf1}.dashboard{padding:2rem}.dashboard h1,.dashboard h2,.dashboard h3{letter-spacing:.5px;font-family:Marcellus,serif;font-weight:400}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.dashboard-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem;display:grid}.dashboard-card{border:1px solid var(--border);background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000000d}.dashboard-card h3{color:var(--gray);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.875rem;font-weight:500}.dashboard-card .number{color:var(--primary);font-family:Marcellus,serif;font-size:2.5rem;font-weight:400}.dashboard-card p{font-family:Marcellus,serif}.client-list{border:1px solid var(--border);background:#fff;border-radius:8px;padding:2rem;overflow-x:auto}.client-list table{border-collapse:collapse;width:100%;font-family:Marcellus,serif}.client-list th{text-align:left;border-bottom:2px solid var(--border);text-transform:uppercase;letter-spacing:.5px;color:var(--gray);padding:1rem;font-family:Marcellus,serif;font-size:.875rem;font-weight:500}.client-list td{border-bottom:1px solid var(--border);padding:1rem;font-family:Marcellus,serif}.client-list tr:hover{background:var(--light-gray)}footer{background:var(--primary);color:#fff;text-align:center;margin-top:4rem;padding:2rem;font-family:Marcellus,serif}footer p{letter-spacing:.3px;font-family:Marcellus,serif;font-weight:300}@media (max-width:768px){header{flex-direction:column;gap:1rem;padding:1rem}nav{flex-direction:column;gap:1rem;width:100%}.hero{padding:3rem 1.5rem}.hero h1{font-size:2rem}.hero-subtitle{font-size:1.25rem}.hero-description{font-size:1rem}.btn-primary,.btn.btn-primary,.btn-large{width:100%;padding:1rem 2rem;font-size:1rem}.features,.dashboard-cards{grid-template-columns:1fr}.client-list{overflow-x:scroll}}h1,h2,h3,h4,h5,h6{letter-spacing:.5px;font-family:Marcellus,serif;font-weight:400}p,span,div,input,select,textarea,button{font-family:Marcellus,serif}@media (max-width:1024px){.container{max-width:90%;padding:0 1.5rem}.features{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:3rem 1.5rem}.dashboard-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){header{flex-direction:column;gap:1rem;padding:1rem}.logo-container{justify-content:center;width:100%}.logo{height:50px}nav{flex-direction:column;align-items:center;gap:.75rem;width:100%}nav a{text-align:center;width:100%;padding:.5rem 0;font-size:.9rem}.hero{padding:3rem 1.5rem}.hero h1{margin-bottom:.75rem;font-size:2rem}.hero p{margin-bottom:1.5rem;font-size:1rem}.features{grid-template-columns:1fr;padding:2rem 1rem}.form-container{padding:2rem 1.5rem}.form-container h2{font-size:1.75rem}.dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.dashboard-header h1{font-size:1.75rem}.dashboard-cards{grid-template-columns:1fr;gap:1rem}.dashboard-card{padding:1.5rem}.dashboard-card .number{font-size:2rem}.client-list{-webkit-overflow-scrolling:touch;padding:1rem;overflow-x:auto}.client-list table{min-width:600px}.client-list th,.client-list td{padding:.75rem .5rem;font-size:.85rem}.btn{padding:.875rem 2rem;font-size:.9rem}.status-badge{padding:.4rem .8rem;font-size:.8rem}}@media (max-width:480px){header{padding:.75rem}.logo{height:45px}nav{gap:.5rem}nav a{letter-spacing:.3px;font-size:.85rem}.hero{padding:2rem 1rem}.hero h1{font-size:1.75rem}.hero p{margin-bottom:1.25rem;font-size:.95rem}.features{gap:1.25rem;padding:2rem .75rem}.feature-card{padding:1.5rem 1rem}.feature-card h3{font-size:1.2rem}.feature-card p{font-size:.9rem}.feature-icon{width:56px;height:56px;font-size:1.75rem}.container{margin:2rem auto;padding:0 1rem}.form-container{border-radius:6px;padding:1.5rem 1rem}.form-container h2{margin-bottom:.75rem;font-size:1.5rem}.form-container p{font-size:.9rem}.form-group{margin-bottom:1.25rem}.form-group label{margin-bottom:.4rem;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;font-size:.95rem}.form-group small{font-size:.8rem}.dashboard{padding:.75rem}.dashboard-header h1{font-size:1.5rem}.dashboard-header p{font-size:.85rem}.dashboard-cards{gap:.75rem}.dashboard-card{padding:1.25rem 1rem}.dashboard-card h3{font-size:.8rem}.dashboard-card .number{font-size:1.75rem}.dashboard-card p{font-size:.85rem}.client-list{padding:.75rem}.client-list table{min-width:500px}.client-list th,.client-list td{padding:.5rem .4rem;font-size:.8rem}.btn{letter-spacing:.5px;padding:.75rem 1.5rem;font-size:.85rem}.status-badge{padding:.35rem .7rem;font-size:.75rem}footer{padding:1.5rem 1rem}footer p{font-size:.85rem}}@media (max-width:375px){.hero h1{font-size:1.5rem}.hero p{font-size:.9rem}.form-container h2{font-size:1.35rem}nav a{font-size:.8rem}.dashboard-card .number{font-size:1.5rem}.btn{padding:.7rem 1.25rem;font-size:.8rem}}@media (max-width:768px) and (orientation:landscape){.hero{padding:2rem 1.5rem}.hero h1{font-size:1.75rem}.hero p{font-size:.95rem}.features,.dashboard-cards{grid-template-columns:repeat(2,1fr)}}@media (hover:none) and (pointer:coarse){nav a{justify-content:center;align-items:center;min-height:44px;padding:.75rem .5rem;display:flex}.btn{justify-content:center;align-items:center;min-height:48px;display:inline-flex}.form-group input,.form-group select,.form-group textarea{min-height:44px}.feature-card:hover,.btn:hover{transform:none}nav a:hover:after{width:0}nav a:active{color:var(--accent);background:#d4af371a}.btn:active,.feature-card:active{transform:scale(.98)}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.logo{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media print{header nav,footer,.btn{display:none}header{background:#fff;border-bottom:2px solid #000}body{font-size:12pt;line-height:1.5}.dashboard-cards,.features{grid-template-columns:repeat(2,1fr)}}.date-picker-wrapper,.time-picker-wrapper{margin-bottom:1.5rem;position:relative}.date-picker-wrapper label,.time-picker-wrapper label{color:var(--primary);margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.date-input,.time-input{border:2px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:1rem;transition:all .3s;display:flex}.date-input:hover,.time-input:hover{border-color:var(--accent)}.date-input svg,.time-input svg{color:var(--gray);flex-shrink:0}.calendar-overlay,.time-overlay{z-index:998;position:fixed;inset:0}.calendar-dropdown,.time-dropdown{border:1px solid var(--border);z-index:999;background:#fff;border-radius:12px;min-width:320px;animation:.2s slideDown;position:absolute;top:calc(100% + .5rem);left:0;box-shadow:0 10px 40px #00000026}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calendar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.calendar-title{color:var(--primary);font-family:Marcellus,serif;font-size:1rem;font-weight:500}.calendar-nav{cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:background .2s;display:flex}.calendar-nav:hover{background:var(--light-gray)}.calendar-nav svg{color:var(--primary)}.calendar-weekdays{border-bottom:1px solid var(--border);color:var(--gray);text-align:center;grid-template-columns:repeat(7,1fr);padding:.75rem 1rem;font-family:Marcellus,serif;font-size:.85rem;font-weight:500;display:grid}.calendar-day:not(.empty):hover{background:var(--light-gray)}.calendar-footer{border-top:1px solid var(--border);gap:.5rem;padding:.75rem 1rem;display:flex}.calendar-clear,.calendar-today{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:6px;flex:1;padding:.5rem;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s}.calendar-clear:hover{background:var(--light-gray)}.calendar-today{background:var(--accent);border-color:var(--accent);color:var(--primary);font-weight:600}.calendar-today:hover{background:#c49d2f}.time-header{border-bottom:1px solid var(--border);color:var(--primary);text-align:center;padding:1rem;font-family:Marcellus,serif;font-size:1rem;font-weight:500}.time-slots{max-height:300px;padding:.5rem;overflow-y:auto}.time-slots::-webkit-scrollbar{width:8px}.time-slots::-webkit-scrollbar-track{background:var(--light-gray);border-radius:4px}.time-slots::-webkit-scrollbar-thumb{background:var(--gray);border-radius:4px}.time-slots::-webkit-scrollbar-thumb:hover{background:var(--primary)}.time-slot{cursor:pointer;color:var(--primary);text-align:left;background:0 0;border:none;border-radius:6px;width:100%;margin-bottom:.25rem;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:.95rem;transition:all .2s}.time-slot:hover{background:var(--light-gray)}.time-slot.selected{background:var(--accent);color:var(--primary);font-weight:600}.form-group label{color:var(--primary);margin-bottom:.75rem;font-family:Marcellus,serif;font-size:1rem;font-weight:500;line-height:1.5;display:block}.checkbox-group,.radio-group{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.checkbox-item,.radio-item{cursor:pointer;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;transition:background .2s;display:flex}.checkbox-item:hover,.radio-item:hover{background:var(--light-gray)}.checkbox-item input[type=checkbox],.radio-item input[type=radio]{cursor:pointer;width:20px;min-width:20px;height:20px;accent-color:var(--accent);margin:0}.checkbox-item label,.radio-item label{cursor:pointer;flex:1;margin:0;font-size:1rem;font-weight:400;line-height:1.4}.section-divider{border-bottom:2px solid var(--accent);color:var(--primary);text-align:center;margin:2rem 0 1.5rem;padding:.75rem 0;font-family:Marcellus,serif;font-size:1.1rem;font-weight:500}.helper-text{color:var(--gray);margin-top:.5rem;font-size:.875rem;font-style:italic;line-height:1.4;display:block}.subsection-label{border-left:3px solid var(--accent);color:var(--primary);margin:1.5rem 0 .75rem;padding-left:1rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group textarea{border:2px solid var(--border);border-radius:8px;width:100%;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:1rem;line-height:1.5;transition:border-color .3s}.form-group input::placeholder,.form-group textarea::placeholder{color:#999;font-style:italic}.error-message{color:#d32f2f;margin-top:.5rem;font-size:.875rem;font-weight:500;display:block}label .required{color:#d32f2f;margin-left:.25rem}.modal-overlay{z-index:999;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container{z-index:1000;background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 20px 60px #0000004d}.modal-header h2{color:var(--primary);margin:0;font-family:Marcellus,serif;font-size:1.5rem;font-weight:500}.modal-close{cursor:pointer;color:var(--gray);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;line-height:1;transition:background .2s;display:flex}.modal-close:hover{background:var(--light-gray)}.info-section{margin-bottom:1.5rem}.info-section h3{color:var(--primary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;font-family:Marcellus,serif;font-size:1.1rem;font-weight:500}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.info-grid>div{flex-direction:column;gap:.25rem;display:flex}.info-grid label{text-transform:uppercase;letter-spacing:.05em;color:var(--gray);font-size:.85rem;font-weight:500}.info-grid p{color:var(--primary);margin:0;font-weight:600}.payment-section{background:#f9f9f9;border:2px solid #d4af37;border-radius:8px;margin:24px 0;padding:24px}.payment-section h3{color:#2d2d2d;margin:0 0 12px;font-family:Marcellus,serif;font-size:1.5rem}.payment-section p{color:#666;margin:0 0 20px;line-height:1.6}.payment-details{background:#fff;border-radius:6px;margin:20px 0;padding:16px}.payment-item{border-bottom:1px solid #eee;justify-content:space-between;padding:8px 0;display:flex}.payment-item:last-child{border-bottom:none}.payment-label{color:#2d2d2d;font-weight:600}.payment-value{color:#666}.payment-button{color:#fff;cursor:pointer;text-align:center;background:#d4af37;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px 24px;font-size:1.1rem;font-weight:600;text-decoration:none;transition:background .3s;display:flex}.payment-button:hover{background:#c09d2f}.payment-icon{font-size:1.3rem;transition:transform .3s}.payment-button:hover .payment-icon{transform:translate(4px)}.payment-note{text-align:center;color:#888;margin:12px 0 0;font-size:.9rem}.payment-page{background:linear-gradient(135deg,#2d2d2d 0%,#1a1a1a 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.payment-container{background:#fff;border-radius:12px;width:100%;max-width:500px;padding:40px;box-shadow:0 10px 40px #0000004d}.payment-header{text-align:center;margin-bottom:30px}.payment-header h1{color:#2d2d2d;margin:0 0 8px;font-family:Marcellus,serif;font-size:2rem}.payment-header p{color:#666;margin:0 0 16px;font-size:1rem}.payment-badge{color:#fff;background:#28a745;border-radius:20px;padding:6px 16px;font-size:.85rem;font-weight:600;display:inline-block}.payment-summary{background:#f8f9fa;border-radius:8px;margin-bottom:30px;padding:20px}.summary-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.summary-row:last-child{margin-bottom:0}.summary-row .amount{color:#d4af37;font-size:1.5rem;font-weight:700}.payment-form .form-group{margin-bottom:20px}.payment-form label{color:#2d2d2d;margin-bottom:8px;font-family:Marcellus,serif;font-weight:600;display:block}.payment-form input{border:2px solid #ddd;border-radius:6px;width:100%;padding:12px;font-family:Marcellus,serif;font-size:1rem;transition:border-color .3s}.payment-form input:focus{border-color:#d4af37;outline:none}.payment-form .form-row{grid-template-columns:2fr 1fr;gap:16px;display:grid}.demo-notice{text-align:center;color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin:20px 0;padding:12px;font-size:.9rem}.pay-button{color:#fff;cursor:pointer;background:#d4af37;border:none;border-radius:8px;width:100%;padding:16px;font-family:Marcellus,serif;font-size:1.1rem;font-weight:700;transition:background .3s}.pay-button:hover:not(:disabled){background:#c09d2f}.pay-button:disabled{cursor:not-allowed;background:#ccc}.payment-footer{text-align:center;border-top:1px solid #eee;margin-top:24px;padding-top:24px}.payment-footer p{color:#999;margin:4px 0;font-size:.85rem}.dashboard-section{background:#fff;border-radius:8px;margin-bottom:24px;padding:24px;box-shadow:0 2px 8px #0000001a}.section-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-header h3{color:#2d2d2d;margin:0;font-family:Marcellus,serif;font-size:1.5rem}.upload-button{color:#fff;cursor:pointer;background:#d4af37;border:none;border-radius:6px;padding:10px 20px;font-family:Marcellus,serif;font-weight:600;transition:background .3s}.upload-button:hover{background:#c09d2f}.documents-list{flex-direction:column;gap:12px;display:flex}.document-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;align-items:center;gap:16px;padding:16px;transition:box-shadow .3s;display:flex}.document-item:hover{box-shadow:0 2px 8px #0000001a}.document-icon{text-align:center;width:50px;font-size:2rem}.document-info{flex:1}.document-name{color:#2d2d2d;margin-bottom:4px;font-family:Marcellus,serif;font-weight:600}.document-meta{color:#666;font-size:.85rem}.document-actions{gap:8px;display:flex}.view-doc-button,.delete-doc-button{cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-family:Marcellus,serif;font-size:.9rem;font-weight:600;transition:all .3s}.view-doc-button{color:#fff;background:#007bff}.view-doc-button:hover{background:#0056b3}.delete-doc-button{color:#fff;background:#dc3545}.delete-doc-button:hover{background:#c82333}.no-documents{text-align:center;color:#666;padding:40px 20px}.no-documents p{margin:8px 0}.no-documents .hint{color:#999;font-size:.9rem}.upload-modal{width:90%;max-width:600px}.upload-area{text-align:center;padding:40px 20px}.upload-icon{margin-bottom:20px;font-size:4rem}.upload-area h3{color:#2d2d2d;margin:0 0 12px;font-family:Marcellus,serif}.upload-area p{color:#666;margin:8px 0}.file-size-limit{color:#999;font-size:.85rem}.file-upload-label{margin:24px 0;display:block}.select-files-button{color:#fff;cursor:pointer;background:#d4af37;border:none;border-radius:8px;padding:16px 40px;font-family:Marcellus,serif;font-size:1.1rem;font-weight:700;transition:background .3s}.select-files-button:hover:not(:disabled){background:#c09d2f}.select-files-button:disabled{cursor:not-allowed;background:#ccc}.document-types-hint{text-align:left;background:#f8f9fa;border-radius:8px;margin-top:32px;padding:20px}.document-types-hint h4{color:#2d2d2d;margin:0 0 12px;font-family:Marcellus,serif}.document-types-hint ul{color:#666;margin:0;padding-left:20px}.document-types-hint li{margin:6px 0}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;position:relative;overflow-y:auto}.modal-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:24px;display:flex}.modal-header h2{color:#2d2d2d;margin:0;font-family:Marcellus,serif}.close-button{color:#666;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;transition:background .3s;display:flex}.close-button:hover{background:#f0f0f0}.modal-body{padding:24px}@media (max-width:768px){.document-item{flex-direction:column;align-items:flex-start;gap:12px}.document-actions{justify-content:flex-end;width:100%}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.upload-button{width:100%}}.loading-container{background:#f5f5f5;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-spinner{border:4px solid #f3f3f3;border-top-color:#d4af37;border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.time-picker-container{width:100%;position:relative}.time-picker-container label{color:var(--primary);margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.time-picker-input{border:2px solid var(--border);cursor:pointer;width:100%;color:var(--primary);background:#fff;border-radius:8px;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:1rem;transition:all .3s}.time-picker-input:hover{border-color:var(--accent)}.time-picker-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #d4af371a}.time-picker-dropdown{border:1px solid var(--border);z-index:1000;background:#fff;border-radius:12px;min-width:350px;max-width:500px;animation:.2s slideDown;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow:hidden;box-shadow:0 10px 40px #00000026}.quick-times{border-bottom:1px solid var(--border);padding:1.5rem}.quick-times h4{color:var(--primary);margin:0 0 1rem;font-family:Marcellus,serif;font-size:1rem;font-weight:600}.quick-times-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.quick-time-button{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:#fff;border-radius:6px;padding:.75rem 1rem;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s}.quick-time-button:hover{background:var(--light-gray);border-color:var(--accent)}.quick-time-button.selected{background:var(--accent);color:var(--primary);border-color:var(--accent);font-weight:600}.custom-time{padding:1.5rem}.custom-time h4{color:var(--primary);margin:0 0 1rem;font-family:Marcellus,serif;font-size:1rem;font-weight:600}.time-selectors{justify-content:space-between;gap:1rem;display:flex}.time-column{text-align:center;flex:1}.time-column>label{color:var(--gray);margin-bottom:.5rem;font-size:.85rem;font-weight:500;display:block}.time-options{flex-direction:column;gap:.25rem;max-height:200px;padding:.25rem;display:flex;overflow-y:auto}.time-option{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:#fff;border-radius:6px;padding:.5rem;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s}.time-option:hover{background:var(--light-gray);border-color:var(--accent)}.time-option.selected{background:var(--accent);color:var(--primary);border-color:var(--accent);font-weight:600}.time-picker-done{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:0;width:100%;padding:1rem;font-family:Marcellus,serif;font-size:1rem;font-weight:600;transition:background .3s}.time-picker-done:hover{background:#1a1a1a}.date-picker-container{width:100%;position:relative}.date-picker-container label{color:var(--primary);margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.date-picker-input{border:2px solid var(--border);cursor:pointer;width:100%;color:var(--primary);background:#fff;border-radius:8px;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:1rem;transition:all .3s}.date-picker-input:hover{border-color:var(--accent)}.date-picker-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #d4af371a}.date-picker-dropdown{border:1px solid var(--border);z-index:1000;background:#fff;border-radius:12px;min-width:320px;animation:.2s slideDown;position:absolute;top:calc(100% + .5rem);left:0;overflow:hidden;box-shadow:0 10px 40px #00000026}.date-picker-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;display:flex}.date-nav-button{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1rem;font-family:Marcellus,serif;font-size:1rem;font-weight:500;transition:background .2s}.date-nav-button:hover{background:var(--light-gray)}.date-nav-arrows{gap:.25rem;margin-left:auto;display:flex}.date-nav-arrow{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:.25rem .5rem;font-size:1.5rem;transition:background .2s;display:flex}.date-nav-arrow:hover{background:var(--light-gray)}.calendar-weekdays{border-bottom:1px solid var(--border);background:var(--light-gray);grid-template-columns:repeat(7,1fr);padding:.75rem 1rem;display:grid}.weekday{color:var(--gray);text-align:center;font-family:Marcellus,serif;font-size:.85rem;font-weight:500}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.25rem;padding:.5rem;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s;display:flex}.calendar-day:not(.empty):not(.disabled):hover{background:var(--light-gray)}.calendar-day.empty{cursor:default}.calendar-day.disabled{opacity:.3;cursor:not-allowed}.calendar-day.today{color:var(--accent);border:2px solid var(--accent);font-weight:600}.calendar-day.selected{background:var(--accent);color:var(--primary);font-weight:600}.date-picker-footer{border-top:1px solid var(--border);gap:.5rem;padding:.75rem 1rem;display:flex}.date-clear-button,.date-today-button{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:#fff;border-radius:6px;flex:1;padding:.75rem;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s}.date-clear-button:hover{background:var(--light-gray)}.date-today-button{background:var(--accent);border-color:var(--accent);color:var(--primary);font-weight:600}.date-today-button:hover{background:#c09d2f}.date-picker-view{padding:1.5rem}.view-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.view-header h4{color:var(--primary);margin:0;font-family:Marcellus,serif;font-size:1.1rem;font-weight:600}.back-button{color:var(--primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1rem;font-family:Marcellus,serif;font-size:.9rem;transition:background .2s}.back-button:hover{background:var(--light-gray)}.month-grid,.year-grid{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.month-option,.year-option{border:1px solid var(--border);cursor:pointer;color:var(--primary);background:#fff;border-radius:6px;padding:1rem;font-family:Marcellus,serif;font-size:.9rem;transition:all .2s}.month-option:hover,.year-option:hover{background:var(--light-gray);border-color:var(--accent)}.month-option.selected,.year-option.selected{background:var(--accent);color:var(--primary);border-color:var(--accent);font-weight:600}.address-autocomplete-container{width:100%;position:relative}.address-autocomplete-container label{color:var(--primary);margin-bottom:.5rem;font-family:Marcellus,serif;font-size:.95rem;font-weight:500;display:block}.address-input{border:2px solid var(--border);width:100%;color:var(--primary);background:#fff;border-radius:8px;padding:.875rem 1rem;font-family:Marcellus,serif;font-size:1rem;transition:all .3s}.address-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #d4af371a}.address-input::placeholder{color:#999;font-style:italic}.address-suggestions{border:1px solid var(--border);z-index:1000;background:#fff;border-radius:8px;max-height:300px;animation:.2s slideDown;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow-y:auto;box-shadow:0 10px 40px #00000026}.suggestion-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding:12px 16px;transition:background .2s;display:flex}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:var(--light-gray)}.suggestion-icon{flex-shrink:0;margin-top:2px;font-size:1.2rem}.suggestion-text{flex:1;min-width:0}.suggestion-main{color:var(--primary);margin-bottom:2px;font-family:Marcellus,serif;font-size:.95rem;font-weight:600}.suggestion-secondary{color:var(--gray);font-size:.85rem;line-height:1.4}.suggestion-loading,.suggestion-empty{text-align:center;color:var(--gray);padding:16px;font-size:.9rem;font-style:italic}.address-suggestions::-webkit-scrollbar{width:8px}.address-suggestions::-webkit-scrollbar-track{background:var(--light-gray);border-radius:4px}.address-suggestions::-webkit-scrollbar-thumb{background:var(--gray);border-radius:4px}.address-suggestions::-webkit-scrollbar-thumb:hover{background:var(--primary)}
