:root{--ft-primary:#1E3A5F;--ft-primary-light:#2D5A8A;--ft-primary-dark:#142840;--ft-bg-page:#F5F6F8;--ft-bg-card:#FFFFFF;--ft-bg-muted:#E6EEF6;--ft-text-primary:#2B2B2B;--ft-text-secondary:#6B7280;--ft-text-muted:#9CA3AF;--ft-border:#E5E7EB;--ft-border-focus:#1E3A5F;--ft-status-success-bg:#D1FAE5;--ft-status-success-text:#065F46;--ft-status-warning-bg:#FEF3C7;--ft-status-warning-text:#92400E;--ft-status-error-bg:#FEE2E2;--ft-status-error-text:#DC2626;--ft-status-info-bg:#DBEAFE;--ft-status-info-text:#1E40AF;--ft-font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--ft-text-xs:12px;--ft-text-sm:14px;--ft-text-base:16px;--ft-text-lg:18px;--ft-text-xl:20px;--ft-text-2xl:24px;--ft-text-3xl:28px;--ft-space-1:4px;--ft-space-2:8px;--ft-space-3:12px;--ft-space-4:16px;--ft-space-5:20px;--ft-space-6:24px;--ft-space-8:32px;--ft-space-10:40px;--ft-radius-sm:4px;--ft-radius-md:8px;--ft-radius-lg:12px;--ft-shadow-sm:0 1px 2px rgba(0,0,0,0.05);--ft-shadow-md:0 4px 6px rgba(0,0,0,0.07);--ft-shadow-lg:0 10px 15px rgba(0,0,0,0.1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--ft-font-family);background-color:var(--ft-bg-page);line-height:1.5}body,h1,h2,h3,h4,h5,h6{color:var(--ft-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}h1{font-size:var(--ft-text-3xl)}h2{font-size:var(--ft-text-2xl)}h3{font-size:var(--ft-text-xl)}h4{font-size:var(--ft-text-lg)}p{color:var(--ft-text-secondary);font-size:var(--ft-text-base)}a{color:var(--ft-primary);text-decoration:none}a:hover{color:var(--ft-primary-light);text-decoration:underline}input,select,textarea{font-family:inherit;font-size:var(--ft-text-base);padding:var(--ft-space-3);border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);background-color:var(--ft-bg-card);color:var(--ft-text-primary);transition:border-color .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ft-border-focus);box-shadow:0 0 0 3px rgba(30,58,95,.1)}input::placeholder,textarea::placeholder{color:var(--ft-text-muted)}label{display:block;font-size:var(--ft-text-sm);color:var(--ft-text-primary);margin-bottom:var(--ft-space-1)}button,label{font-weight:500}button{font-family:inherit;font-size:var(--ft-text-base);padding:var(--ft-space-3) var(--ft-space-5);border:none;border-radius:var(--ft-radius-md);cursor:pointer;transition:background-color .2s ease,transform .1s ease}button:disabled{opacity:.6;cursor:not-allowed}button:active:not(:disabled){transform:scale(.98)}table{width:100%;border-collapse:collapse;background-color:var(--ft-bg-card);border-radius:var(--ft-radius-md);overflow:hidden;box-shadow:var(--ft-shadow-sm)}th{background-color:var(--ft-bg-muted);font-weight:600;text-align:left;color:var(--ft-text-primary);border-bottom:2px solid var(--ft-border)}td,th{font-size:var(--ft-text-sm);padding:var(--ft-space-3) var(--ft-space-4)}td{border-bottom:1px solid var(--ft-border);color:var(--ft-text-secondary)}tr:last-child td{border-bottom:none}tr:hover td{background-color:var(--ft-bg-muted)}.container{max-width:1200px;margin:0 auto;padding:0 var(--ft-space-5)}.card{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);padding:var(--ft-space-6);box-shadow:var(--ft-shadow-md)}.badge{display:inline-flex;align-items:center;padding:var(--ft-space-1) var(--ft-space-2);font-size:var(--ft-text-xs);font-weight:600;border-radius:var(--ft-radius-sm);text-transform:uppercase;letter-spacing:.025em}.badge-success{background-color:var(--ft-status-success-bg);color:var(--ft-status-success-text)}.badge-warning{background-color:var(--ft-status-warning-bg);color:var(--ft-status-warning-text)}.badge-error{background-color:var(--ft-status-error-bg);color:var(--ft-status-error-text)}.badge-info{background-color:var(--ft-status-info-bg);color:var(--ft-status-info-text)}.badge-muted{background-color:var(--ft-bg-muted);color:var(--ft-text-secondary)}.btn-primary{background-color:var(--ft-primary);color:white}.btn-primary:hover:not(:disabled){background-color:var(--ft-primary-light)}.btn-secondary{background-color:var(--ft-bg-muted);color:var(--ft-text-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--ft-border)}.btn-success{background-color:var(--ft-status-success-text);color:white}.btn-success:hover:not(:disabled){background-color:#047857}.btn-danger{background-color:var(--ft-status-error-text);color:white}.btn-danger:hover:not(:disabled){background-color:#B91C1C}.btn-outline{background-color:transparent;border:2px solid var(--ft-primary);color:var(--ft-primary)}.btn-outline:hover:not(:disabled){background-color:var(--ft-primary);color:white}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--ft-space-2)}.gap-3{gap:var(--ft-space-3)}.gap-4{gap:var(--ft-space-4)}.gap-5{gap:var(--ft-space-5)}.text-center{text-align:center}.text-right{text-align:right}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--ft-primary)}.text-muted{color:var(--ft-text-muted)}.text-success{color:var(--ft-status-success-text)}.text-error{color:var(--ft-status-error-text)}.mt-2{margin-top:var(--ft-space-2)}.mt-4{margin-top:var(--ft-space-4)}.mt-6{margin-top:var(--ft-space-6)}.mb-2{margin-bottom:var(--ft-space-2)}.mb-4{margin-bottom:var(--ft-space-4)}.mb-6{margin-bottom:var(--ft-space-6)}.p-4{padding:var(--ft-space-4)}.p-6{padding:var(--ft-space-6)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.grid-cols-3{grid-template-columns:repeat(2,1fr)}.container{padding:0 var(--ft-space-4)}}@media (max-width:480px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}.header{position:-webkit-sticky;position:sticky;top:0;z-index:100;background-color:var(--ft-bg-card);border-bottom:1px solid var(--ft-border);box-shadow:var(--ft-shadow-sm)}.header-container{justify-content:space-between;height:72px}.header-container,.header-logo{display:flex;align-items:center}.header-logo{text-decoration:none}.header-nav{display:flex;gap:var(--ft-space-6)}.header-link{color:var(--ft-text-secondary);text-decoration:none;font-weight:500;font-size:var(--ft-text-sm);padding:var(--ft-space-2) var(--ft-space-3);border-radius:var(--ft-radius-md);transition:color .2s,background-color .2s}.header-link:hover{color:var(--ft-primary);background-color:var(--ft-bg-muted);text-decoration:none}.header-link-active{color:var(--ft-primary);font-weight:600}.header-cta{display:flex;align-items:center;gap:var(--ft-space-2);background-color:var(--ft-primary);padding:var(--ft-space-2) var(--ft-space-5);border-radius:var(--ft-radius-md);font-weight:600;font-size:var(--ft-text-sm);transition:background-color .2s,transform .1s}.header-cta,.header-cta:hover{color:white;text-decoration:none}.header-cta:hover{background-color:var(--ft-primary-light);transform:translateY(-1px)}.header-tenant-badge{display:flex;align-items:center;gap:var(--ft-space-2);background-color:var(--ft-bg-alt);border:1px solid var(--ft-gray-300);padding:var(--ft-space-2) var(--ft-space-3);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.header-tenant-name{font-weight:600;color:var(--ft-text-primary)}.header-tenant-change{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;cursor:pointer;color:var(--ft-text-secondary);transition:color .2s,transform .2s;border-radius:var(--ft-radius-sm)}.header-tenant-change:hover{color:var(--ft-primary);transform:rotate(180deg)}.header-mobile-toggle{display:none;background:none;border:none;padding:var(--ft-space-2);color:var(--ft-text-primary);cursor:pointer}.header-mobile-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--ft-bg-card);border-bottom:1px solid var(--ft-border);box-shadow:var(--ft-shadow-lg);padding:var(--ft-space-4)}.header-mobile-nav{display:flex;flex-direction:column;gap:var(--ft-space-2)}.header-mobile-link{display:block;padding:var(--ft-space-3) var(--ft-space-4);color:var(--ft-text-secondary);text-decoration:none;font-weight:500;border-radius:var(--ft-radius-md);transition:background-color .2s}.header-mobile-link-active,.header-mobile-link:hover{background-color:var(--ft-bg-muted);color:var(--ft-primary);text-decoration:none}.header-mobile-cta{display:block;text-align:center;background-color:var(--ft-primary);color:white;padding:var(--ft-space-3) var(--ft-space-4);border-radius:var(--ft-radius-md);font-weight:600;margin-top:var(--ft-space-2);text-decoration:none}.header-mobile-cta:hover{background-color:var(--ft-primary-light);color:white;text-decoration:none}@media (max-width:768px){.header-cta,.header-nav,.header-tenant-badge{display:none}.header-mobile-toggle{display:flex}}.footer{background-color:var(--ft-primary);color:white;padding:var(--ft-space-10) 0 var(--ft-space-6);margin-top:auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.5fr;grid-gap:var(--ft-space-8);gap:var(--ft-space-8);margin-bottom:var(--ft-space-8)}.footer-brand{display:flex;flex-direction:column;gap:var(--ft-space-4)}.footer-logo{display:inline-block}.footer-tagline{color:rgba(255,255,255,.8);font-size:var(--ft-text-sm);line-height:1.6;margin:0}.footer-social{display:flex;gap:var(--ft-space-3)}.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:rgba(255,255,255,.1);border-radius:50%;color:white;transition:background-color .2s}.footer-social a:hover{background-color:rgba(255,255,255,.2)}.footer-column{display:flex;flex-direction:column;gap:var(--ft-space-3)}.footer-column-title{font-size:var(--ft-text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:white;margin-bottom:var(--ft-space-2)}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--ft-space-2)}.footer-links a{color:rgba(255,255,255,.8);font-size:var(--ft-text-sm);text-decoration:none;transition:color .2s}.footer-links a:hover{color:white;text-decoration:none}.footer-contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--ft-space-3)}.footer-contact li{display:flex;align-items:center;gap:var(--ft-space-2);color:rgba(255,255,255,.8);font-size:var(--ft-text-sm)}.footer-contact a{color:rgba(255,255,255,.8);text-decoration:none;transition:color .2s}.footer-contact a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--ft-space-6);border-top:1px solid rgba(255,255,255,.1)}.footer-bottom p{color:rgba(255,255,255,.6);font-size:var(--ft-text-sm);margin:0}.footer-credit strong{color:white}@media (max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:var(--ft-space-6)}.footer-brand{grid-column:1/-1;text-align:center;align-items:center}.footer-social{justify-content:center}}@media (max-width:640px){.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:var(--ft-space-2);text-align:center}}@media (max-width:480px){.footer{padding:var(--ft-space-6) 0 var(--ft-space-4)}.footer-grid{grid-template-columns:1fr 1fr;gap:var(--ft-space-4);text-align:center}.footer-brand{grid-column:1/-1;gap:var(--ft-space-2)}.footer-tagline{font-size:var(--ft-text-xs);display:none}.footer-column{align-items:center;gap:var(--ft-space-2)}.footer-column-title{font-size:var(--ft-text-xs);margin-bottom:0}.footer-links{gap:var(--ft-space-1)}.footer-links a{font-size:var(--ft-text-xs)}.footer-contact{gap:var(--ft-space-1)}.footer-contact li{justify-content:center;font-size:var(--ft-text-xs)}.footer-bottom{padding-top:var(--ft-space-4)}.footer-bottom p{font-size:var(--ft-text-xs)}}.page-header{text-align:center;padding:25px 0;background:linear-gradient(135deg,var(--ft-primary) 0,var(--ft-primary-dark) 100%);color:white}.page-header--compact{padding:18px 0}.page-header-content{max-width:800px;margin:0 auto}.page-header h1{color:white;font-size:var(--ft-text-3xl);margin-bottom:var(--ft-space-3)}.page-header--compact h1{font-size:var(--ft-text-2xl);margin-bottom:var(--ft-space-2)}.page-header p{color:rgba(255,255,255,.85);font-size:var(--ft-text-lg);margin:0}.page-header--compact p{font-size:var(--ft-text-base)}.breadcrumb{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-sm);margin-bottom:var(--ft-space-4);justify-content:center}.page-header--compact .breadcrumb{margin-bottom:var(--ft-space-3)}.breadcrumb a{color:rgba(255,255,255,.7);text-decoration:none}.breadcrumb a:hover{color:white;text-decoration:none}.breadcrumb-separator{color:rgba(255,255,255,.5)}.breadcrumb-current{color:white;font-weight:500}.section{padding:var(--ft-space-10) 0}.section-alt{background-color:var(--ft-bg-muted)}.section-primary{background-color:var(--ft-primary);color:white}.section-primary h2,.section-primary h3,.section-primary p{color:white}.section-primary p{opacity:.9}.section-header{text-align:center;margin-bottom:var(--ft-space-8)}.section-header h2{margin-bottom:var(--ft-space-3)}.section-header p{max-width:600px;margin:0 auto}.cta-section{text-align:center;padding:var(--ft-space-10) var(--ft-space-5);background:linear-gradient(135deg,var(--ft-primary) 0,var(--ft-primary-dark) 100%);border-radius:var(--ft-radius-lg);color:white}.cta-section h2{color:white;font-size:var(--ft-text-2xl);margin-bottom:var(--ft-space-3)}.cta-section p{color:rgba(255,255,255,.9);margin-bottom:var(--ft-space-6);max-width:500px;margin-left:auto;margin-right:auto}.cta-button{display:inline-flex;align-items:center;gap:var(--ft-space-2);background-color:white;padding:var(--ft-space-3) var(--ft-space-6);border-radius:var(--ft-radius-md);font-weight:600;transition:transform .2s,box-shadow .2s}.cta-button,.cta-button:hover{color:var(--ft-primary);text-decoration:none}.cta-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.cta-button-outline{background-color:transparent;border:2px solid white;color:white}.cta-button-outline:hover{background-color:white;color:var(--ft-primary)}.reassurance-banner{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-6);gap:var(--ft-space-6);padding:var(--ft-space-6) 0;border-bottom:1px solid var(--ft-border)}.reassurance-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--ft-space-2)}.reassurance-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-bg-muted);border-radius:50%;color:var(--ft-primary)}.reassurance-item h4{font-size:var(--ft-text-sm);font-weight:600;margin:0}.reassurance-item p{font-size:var(--ft-text-xs);color:var(--ft-text-muted);margin:0}@media (max-width:768px){.reassurance-banner{grid-template-columns:repeat(2,1fr);gap:var(--ft-space-3);padding:var(--ft-space-3) 0}.reassurance-icon{width:40px;height:40px}.reassurance-item{gap:var(--ft-space-1)}}.value-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--ft-space-6);gap:var(--ft-space-6)}.value-card{background-color:var(--ft-bg-card);padding:var(--ft-space-6);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);text-align:center;transition:transform .2s,box-shadow .2s}.value-card:hover{transform:translateY(-4px);box-shadow:var(--ft-shadow-lg)}.value-card-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);color:var(--ft-primary);margin:0 auto var(--ft-space-4)}.value-card h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-2)}.value-card p{font-size:var(--ft-text-sm);margin:0}@media (max-width:768px){.value-cards{grid-template-columns:1fr}}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--ft-space-8);gap:var(--ft-space-8);position:relative}.process-step{text-align:center;position:relative}.process-step-number{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-primary);color:white;font-size:var(--ft-text-xl);font-weight:700;border-radius:50%;margin:0 auto var(--ft-space-4)}.process-step h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-2)}.process-step p{font-size:var(--ft-text-sm);margin:0}@media (max-width:768px){.process-steps{grid-template-columns:1fr;gap:var(--ft-space-6)}}.testimonials-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--ft-space-6);gap:var(--ft-space-6)}.testimonial-card{background-color:var(--ft-bg-card);padding:var(--ft-space-6);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md)}.testimonial-stars{display:flex;gap:2px;margin-bottom:var(--ft-space-3);color:#F59E0B}.testimonial-quote{font-size:var(--ft-text-base);font-style:italic;color:var(--ft-text-primary);margin-bottom:var(--ft-space-4);line-height:1.6}.testimonial-author{display:flex;align-items:center;gap:var(--ft-space-3)}.testimonial-avatar{width:40px;height:40px;background-color:var(--ft-bg-muted);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ft-text-muted);font-weight:600}.testimonial-info h4{font-size:var(--ft-text-sm);font-weight:600;margin:0}.testimonial-info p{font-size:var(--ft-text-xs);color:var(--ft-text-muted);margin:0}@media (max-width:768px){.testimonials-grid{grid-template-columns:1fr}}.products-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-5);gap:var(--ft-space-5)}.product-card{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);overflow:hidden;box-shadow:var(--ft-shadow-md);transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--ft-shadow-lg)}.product-card-image{position:relative;height:180px;background-color:#ffffff;display:flex;align-items:center;justify-content:center;overflow:hidden}.product-card-img{width:100%;height:100%;object-fit:contain;transition:transform .3s ease}.product-card:hover .product-card-img{transform:scale(1.05)}.product-card-badge{position:absolute;top:var(--ft-space-3);left:var(--ft-space-3)}.product-card-content{padding:var(--ft-space-4)}.product-card h3{font-size:var(--ft-text-base);margin-bottom:var(--ft-space-2)}.product-card-price{font-size:var(--ft-text-lg);font-weight:700;color:var(--ft-primary);margin-bottom:var(--ft-space-3)}.product-card-price .price-from{font-size:var(--ft-text-sm);font-weight:500;color:var(--ft-primary)}.product-card-price .price-amount{font-size:var(--ft-text-lg);font-weight:700;color:var(--ft-primary)}.product-card-price .price-unit{font-size:var(--ft-text-sm);font-weight:400;color:var(--ft-text-muted)}@media (max-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.products-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.products-grid{grid-template-columns:1fr}}.products-grid-featured{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.products-grid-featured{grid-template-columns:repeat(2,1fr)}}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-6);gap:var(--ft-space-6)}.stat-item{text-align:center}.stat-value{font-size:var(--ft-text-3xl);font-weight:700;color:var(--ft-primary);margin-bottom:var(--ft-space-1)}.stat-label{font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.section-primary .stat-value{color:white}.section-primary .stat-label{color:rgba(255,255,255,.8)}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.faq-list{display:flex;flex-direction:column;gap:var(--ft-space-3)}.faq-item{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-md);border:1px solid var(--ft-border);overflow:hidden}.faq-question{display:flex;justify-content:space-between;align-items:center;padding:var(--ft-space-4) var(--ft-space-5);cursor:pointer;font-weight:500;color:var(--ft-text-primary);background:none;border:none;width:100%;text-align:left;font-size:var(--ft-text-base)}.faq-question:hover{background-color:var(--ft-bg-muted)}.faq-icon{transition:transform .2s;color:var(--ft-text-muted)}.faq-item.open .faq-icon{transform:rotate(180deg)}.faq-answer{padding:0 var(--ft-space-5) var(--ft-space-4);color:var(--ft-text-secondary);font-size:var(--ft-text-sm);line-height:1.6}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--ft-space-8);gap:var(--ft-space-8)}.contact-form{gap:var(--ft-space-4)}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:var(--ft-space-1)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--ft-space-4);gap:var(--ft-space-4)}.contact-info-card{background-color:var(--ft-bg-muted);padding:var(--ft-space-6);border-radius:var(--ft-radius-lg)}.contact-info-item{display:flex;gap:var(--ft-space-4);margin-bottom:var(--ft-space-5)}.contact-info-item:last-child{margin-bottom:0}.contact-info-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-primary);color:white;border-radius:var(--ft-radius-md);flex-shrink:0}.contact-info-content h4{font-size:var(--ft-text-sm);font-weight:600;margin-bottom:var(--ft-space-1)}.contact-info-content p{font-size:var(--ft-text-sm);margin:0}@media (max-width:768px){.contact-grid,.form-row{grid-template-columns:1fr}}.hero{position:relative;min-height:500px;display:flex;align-items:center;background:linear-gradient(135deg,var(--ft-primary) 0,var(--ft-primary-dark) 100%);color:white;overflow:hidden}.hero-background{position:absolute;top:0;left:0;right:0;bottom:0;opacity:.25;background-image:url(https://images.unsplash.com/photo-1519167758481-83f550bb49b3?w=1920&q=80);background-size:cover;background-position:50%}.hero-content{position:relative;z-index:1;max-width:600px}.hero h1{color:white;font-size:40px;line-height:1.2;margin-bottom:var(--ft-space-4)}.hero p{color:rgba(255,255,255,.9);font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-6)}.hero-buttons{display:flex;gap:var(--ft-space-4);flex-wrap:wrap}@media (max-width:768px){.hero{min-height:400px;text-align:center}.hero h1{font-size:28px}.hero-content{margin:0 auto}.hero-buttons{justify-content:center}}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4)}.gallery-item{position:relative;aspect-ratio:1;background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-md);overflow:hidden;cursor:pointer;transition:transform .2s}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-overlay{position:absolute;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}.gallery-item:hover .gallery-overlay{opacity:1}@media (max-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.booking-progress{display:flex;justify-content:center;margin-bottom:var(--ft-space-8)}.booking-progress-step{display:flex;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-2) var(--ft-space-4);color:var(--ft-text-muted)}.booking-progress-step.active{color:var(--ft-primary);font-weight:600}.booking-progress-step.completed{color:var(--ft-status-success-text)}.booking-progress-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-bg-muted);border-radius:50%;font-size:var(--ft-text-sm);font-weight:600}.booking-progress-step.active .booking-progress-number{background-color:var(--ft-primary);color:white}.booking-progress-step.completed .booking-progress-number{background-color:var(--ft-status-success-text);color:white}.booking-progress-connector{width:40px;height:2px;background-color:var(--ft-border)}.booking-progress-connector.completed{background-color:var(--ft-status-success-text)}@media (max-width:768px){.booking-progress-step span:not(.booking-progress-number){display:none}}.spinner{width:40px;height:40px;border:3px solid var(--ft-border);border-top-color:var(--ft-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ft-space-4);padding:var(--ft-space-10)}.empty-state{text-align:center;padding:var(--ft-space-10);color:var(--ft-text-muted)}.empty-state-icon{width:64px;height:64px;margin:0 auto var(--ft-space-4);color:var(--ft-border)}.empty-state h3{font-size:var(--ft-text-lg);color:var(--ft-text-secondary);margin-bottom:var(--ft-space-2)}.empty-state p{font-size:var(--ft-text-sm)}.catalog-filters{display:flex;justify-content:space-between;align-items:center;gap:var(--ft-space-4);margin-bottom:var(--ft-space-6);padding-bottom:var(--ft-space-4);border-bottom:1px solid var(--ft-border);flex-wrap:wrap}.catalog-categories{display:flex;gap:var(--ft-space-2);flex-wrap:wrap}.catalog-category-btn{padding:var(--ft-space-2) var(--ft-space-4);background-color:transparent;border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);cursor:pointer;transition:all .2s}.catalog-category-btn:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.catalog-category-btn.active{background-color:var(--ft-primary);border-color:var(--ft-primary);color:white}.catalog-sort{display:flex;align-items:center;gap:var(--ft-space-2)}.catalog-sort label{font-size:var(--ft-text-sm);color:var(--ft-text-muted);margin-bottom:0}.select-wrapper{position:relative;display:inline-block}.select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--ft-space-8);min-width:160px;cursor:pointer}.select-wrapper .select-icon{position:absolute;right:var(--ft-space-3);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--ft-text-muted)}@media (max-width:768px){.catalog-filters{flex-direction:column;align-items:stretch}.catalog-categories,.catalog-sort{justify-content:center}}.mobile-filters-accordion{background:var(--ft-gray-50);border-bottom:1px solid var(--ft-border)}.mobile-filters-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--ft-space-3) var(--ft-space-4);background:none;border:none;cursor:pointer;font-size:var(--ft-text-sm);font-weight:500;color:var(--ft-text-primary)}.mobile-filters-summary{flex:1 1;text-align:left}.mobile-filters-chevron{transition:transform .2s ease;color:var(--ft-text-muted)}.mobile-filters-chevron.open{transform:rotate(180deg)}.mobile-filters-content{padding:0 var(--ft-space-4) var(--ft-space-4);border-top:1px solid var(--ft-border);background:white}.mobile-filter-section{padding:var(--ft-space-3) 0;border-bottom:1px solid var(--ft-border-light,var(--ft-border))}.mobile-filter-section:last-child{border-bottom:none}.mobile-filter-section .catalog-categories{flex-wrap:wrap;gap:var(--ft-space-2)}.mobile-filter-section .catalog-category-btn{font-size:var(--ft-text-xs);padding:var(--ft-space-1) var(--ft-space-2)}.mobile-permanent-filters{background:white;border-bottom:1px solid var(--ft-border);padding:var(--ft-space-2) var(--ft-space-3)}.mobile-categories-row{display:flex;flex-wrap:wrap;gap:var(--ft-space-1);margin-bottom:var(--ft-space-2)}.mobile-categories-row .catalog-category-btn.compact{font-size:11px;padding:4px 8px;border-radius:var(--ft-radius-sm)}.mobile-sort-row{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-xs)}.mobile-sort-row label{color:var(--ft-text-muted);white-space:nowrap}.mobile-sort-row .select-wrapper.compact{flex:0 1 auto}.mobile-sort-row .select-wrapper.compact select{font-size:11px;padding:4px 24px 4px 8px;min-width:100px}.mobile-sort-row .select-wrapper.compact .select-icon{right:6px}.tenant-selection-bar{background:var(--ft-gray-50);border-bottom:1px solid var(--ft-border);padding:var(--ft-space-3) var(--ft-space-4)}.tenant-selection-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:var(--ft-space-3);flex-wrap:wrap;font-size:var(--ft-text-sm)}.tenant-selection-label{color:var(--ft-text-secondary);font-weight:500}.tenant-selection-badge{padding:4px 12px;background:var(--ft-primary);color:white;border-radius:var(--ft-radius-sm);font-weight:600;text-transform:uppercase;font-size:12px}.tenant-selection-empty{color:var(--ft-text-muted);font-size:.85rem}.tenant-selection-btn{margin-left:auto;padding:6px 16px;background:white;border:1px solid var(--ft-border);border-radius:var(--ft-radius-sm);cursor:pointer;font-size:var(--ft-text-sm);font-weight:500;transition:all .2s}.tenant-selection-btn:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.tenant-selection-btn.primary{background:var(--ft-primary);color:white;border-color:var(--ft-primary)}.tenant-selection-btn.primary:hover{color:white;filter:brightness(.95)}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--ft-space-8);gap:var(--ft-space-8);align-items:start}.product-detail-image{position:relative;background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);overflow:hidden}.product-detail-image-main{aspect-ratio:1;display:flex;align-items:center;justify-content:center;color:var(--ft-text-muted)}.product-detail-info{display:flex;flex-direction:column;gap:var(--ft-space-5)}.product-detail-info.has-variants{gap:var(--ft-space-4)}.product-detail-header h1{font-size:var(--ft-text-2xl);margin-bottom:var(--ft-space-2)}.product-detail-price{display:flex;align-items:baseline;gap:var(--ft-space-1)}.product-detail-price .price-value{font-size:var(--ft-text-3xl);font-weight:700;color:var(--ft-primary)}.product-detail-price .price-unit{font-size:var(--ft-text-base);color:var(--ft-text-muted)}.product-detail-price .price-from{font-size:var(--ft-text-base);font-weight:500;color:var(--ft-primary)}.product-pricing-breakdown{padding:var(--ft-space-4);background:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);margin-top:var(--ft-space-3)}.pricing-dates{display:flex;align-items:center;gap:var(--ft-space-2);margin-bottom:var(--ft-space-3);font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.product-detail-description{font-size:var(--ft-text-base);color:var(--ft-text-secondary);line-height:1.6}.product-detail-stock{display:flex;align-items:center}.stock-badge{display:inline-flex;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-2) var(--ft-space-3);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);font-weight:500}.stock-badge .stock-dot{width:8px;height:8px;border-radius:50%}.stock-in{background-color:var(--ft-status-success-bg);color:var(--ft-status-success-text)}.stock-in .stock-dot{background-color:var(--ft-status-success-text)}.stock-out{background-color:var(--ft-status-error-bg);color:var(--ft-status-error-text)}.stock-out .stock-dot{background-color:var(--ft-status-error-text)}.stock-warn{background-color:#fef3c7;color:#92400e}.stock-warn .stock-dot{background-color:#92400e}.product-detail-deposit{margin-top:var(--ft-space-4);padding:var(--ft-space-4);background:linear-gradient(135deg,rgba(30,58,95,.08),rgba(30,58,95,.04));border-radius:var(--ft-radius-lg);border:1px solid rgba(30,58,95,.15)}.product-detail-deposit .deposit-badge{display:flex;align-items:center;gap:var(--ft-space-2);color:var(--ft-primary);font-size:var(--ft-text-base);margin-bottom:var(--ft-space-2)}.product-detail-deposit .deposit-badge strong{font-weight:700}.product-detail-deposit .deposit-note{font-size:var(--ft-text-xs);color:var(--ft-text-secondary);margin:0;line-height:1.5}.product-detail-features{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--ft-space-4);padding:var(--ft-space-4) 0;border-top:1px solid var(--ft-border);border-bottom:1px solid var(--ft-border)}.feature-item{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.feature-item svg{color:var(--ft-primary)}.product-detail-actions{display:flex;gap:var(--ft-space-3);flex-wrap:wrap}.product-detail-cta{display:inline-flex;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-3) var(--ft-space-6);font-size:var(--ft-text-base)}.product-detail-cta.disabled{opacity:.5;cursor:not-allowed}.pack-items-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4)}.pack-item-card{gap:var(--ft-space-4);padding:var(--ft-space-4);background-color:var(--ft-bg-card);box-shadow:var(--ft-shadow-sm)}.pack-item-card,.pack-item-icon{display:flex;align-items:center;border-radius:var(--ft-radius-md)}.pack-item-icon{width:48px;height:48px;justify-content:center;background-color:var(--ft-bg-muted);color:var(--ft-primary)}.pack-item-info h4{font-size:var(--ft-text-sm);margin-bottom:var(--ft-space-1)}.pack-item-info p{font-size:var(--ft-text-xs);color:var(--ft-text-muted);margin:0}.pack-discount-badge{display:inline-flex;align-items:center;gap:var(--ft-space-3);padding:var(--ft-space-3) var(--ft-space-4);margin-bottom:var(--ft-space-4);background:linear-gradient(135deg,var(--ft-status-success-bg) 0,#A7F3D0 100%);border-radius:var(--ft-radius-md);border:1px solid var(--ft-status-success-text)}.pack-discount-badge .discount-label{font-size:var(--ft-text-sm);font-weight:700;color:var(--ft-status-success-text);text-transform:uppercase;letter-spacing:.03em}.pack-discount-badge .discount-amount{font-size:var(--ft-text-sm);color:var(--ft-status-success-text);opacity:.85}.product-tabs{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);overflow:hidden}.product-tabs-header{display:flex;border-bottom:1px solid var(--ft-border)}.product-tab{flex:1 1;padding:var(--ft-space-4);background:none;font-size:var(--ft-text-sm);font-weight:500;color:var(--ft-text-muted);cursor:pointer;transition:all .2s;border:none;border-bottom:2px solid transparent}.product-tab:hover{color:var(--ft-text-primary);background-color:var(--ft-bg-muted)}.product-tab.active{color:var(--ft-primary);border-bottom-color:var(--ft-primary);background-color:transparent}.product-tabs-content{padding:var(--ft-space-6)}.tab-content h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4)}.specs-list{list-style:none;padding:0;margin:0}.specs-list li{padding:var(--ft-space-3) 0;border-bottom:1px solid var(--ft-border);font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.specs-list li:last-child{border-bottom:none}.specs-list li strong{color:var(--ft-text-primary)}.documents-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4);margin-bottom:var(--ft-space-4)}.document-card{display:flex;align-items:center;gap:var(--ft-space-3);padding:var(--ft-space-4);background-color:var(--ft-surface-secondary);border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);cursor:pointer;transition:all .2s}.document-card:hover{border-color:var(--ft-primary);transform:translateY(-2px)}.document-card svg{flex-shrink:0;color:var(--ft-primary)}.document-card.video svg{color:#dc2626}.document-card-content h4{font-size:var(--ft-text-sm);font-weight:600;color:var(--ft-text-primary);margin:0 0 4px}.document-card-content p{font-size:var(--ft-text-xs);color:var(--ft-text-muted);margin:0}.documents-note{font-size:var(--ft-text-sm);color:var(--ft-text-muted);font-style:italic;padding:var(--ft-space-4);background-color:var(--ft-status-info-bg);border-radius:var(--ft-radius-md);margin-top:var(--ft-space-4)}@media (max-width:768px){.documents-grid,.pack-items-grid,.product-detail-grid{grid-template-columns:1fr}.product-tabs-header{flex-direction:column}.product-tab{border-bottom:1px solid var(--ft-border);border-left:2px solid transparent}.product-tab.active{border-bottom-color:var(--ft-border);border-left-color:var(--ft-primary)}}.pricing-tabs{display:flex;justify-content:center;gap:var(--ft-space-2);margin-bottom:var(--ft-space-6);flex-wrap:wrap}.pricing-tab{padding:var(--ft-space-3) var(--ft-space-6);background-color:transparent;border:2px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);font-weight:500;color:var(--ft-text-secondary);cursor:pointer;transition:all .2s}.pricing-tab:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.pricing-tab.active{background-color:var(--ft-primary);border-color:var(--ft-primary);color:white}.pricing-table-wrapper{overflow-x:auto;margin-bottom:var(--ft-space-4)}.pricing-table{width:100%;min-width:500px}.pricing-table th{background-color:var(--ft-primary);color:white;padding:var(--ft-space-4);font-weight:600}.pricing-table td{padding:var(--ft-space-4);text-align:center}.pricing-table .pricing-name{text-align:left;font-weight:500;color:var(--ft-text-primary)}.pricing-table .pricing-price{font-weight:600;color:var(--ft-primary)}.pricing-table .pricing-best{background-color:var(--ft-bg-muted)}.pricing-note{font-size:var(--ft-text-sm);color:var(--ft-text-muted);text-align:center;font-style:italic}@media (max-width:480px){.pricing-table{min-width:auto;font-size:var(--ft-text-sm)}.pricing-table td,.pricing-table th{padding:var(--ft-space-2)}.pricing-table .pricing-name{max-width:120px;word-wrap:break-word}}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-5);gap:var(--ft-space-5)}.service-card{text-align:center;padding:var(--ft-space-5);background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-sm)}.service-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-bg-muted);border-radius:50%;color:var(--ft-primary);margin:0 auto var(--ft-space-4)}.service-card h3{font-size:var(--ft-text-base);margin-bottom:var(--ft-space-2)}.service-card p{font-size:var(--ft-text-sm);margin:0}.supplements-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4)}.supplement-card{padding:var(--ft-space-4);background-color:var(--ft-bg-card);border:1px solid var(--ft-border);border-radius:var(--ft-radius-md)}.supplement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ft-space-2)}.supplement-header h4{font-size:var(--ft-text-sm);margin:0}.supplement-price{font-weight:600;color:var(--ft-primary);font-size:var(--ft-text-sm)}.supplement-card p{font-size:var(--ft-text-xs);color:var(--ft-text-muted);margin:0}@media (max-width:1024px){.services-grid,.supplements-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.services-grid,.supplements-grid{grid-template-columns:1fr}}.faq-categories{display:flex;justify-content:center;gap:var(--ft-space-2);margin-bottom:var(--ft-space-6);flex-wrap:wrap}.faq-category-btn{padding:var(--ft-space-2) var(--ft-space-4);background-color:transparent;border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);cursor:pointer;transition:all .2s}.faq-category-btn:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.faq-category-btn.active{background-color:var(--ft-primary);border-color:var(--ft-primary);color:white}.about-story{display:grid;grid-template-columns:1.5fr 1fr;grid-gap:var(--ft-space-8);gap:var(--ft-space-8);align-items:center}.about-story-content h2,.about-story-content p{margin-bottom:var(--ft-space-4)}.about-story-content p{line-height:1.7}.about-image-placeholder,.about-story-image{display:flex;justify-content:center}.about-image-placeholder{width:100%;max-width:300px;aspect-ratio:1;background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);align-items:center;color:var(--ft-text-muted)}.about-commitment{text-align:center;max-width:700px;margin:0 auto}.about-commitment-icon{color:var(--ft-primary)}.about-commitment h2,.about-commitment-icon{margin-bottom:var(--ft-space-4)}.about-commitment>p{margin-bottom:var(--ft-space-6)}.commitment-list{list-style:none;padding:0;margin:0;text-align:left}.commitment-list li{display:flex;align-items:flex-start;gap:var(--ft-space-3);padding:var(--ft-space-3) 0;border-bottom:1px solid var(--ft-border)}.commitment-list li:last-child{border-bottom:none}.commitment-list li svg{color:var(--ft-status-success-text);flex-shrink:0;margin-top:2px}.commitment-list li span{color:var(--ft-text-secondary);font-size:var(--ft-text-sm)}.service-area{text-align:center;max-width:600px;margin:0 auto}.service-area-icon{color:var(--ft-primary);margin-bottom:var(--ft-space-4)}.service-area p{margin-bottom:var(--ft-space-3)}@media (max-width:768px){.about-story{grid-template-columns:1fr}.about-story-image{order:-1}}.contact-form-section h2{margin-bottom:var(--ft-space-2)}.form-success{text-align:center;padding:var(--ft-space-8);background-color:var(--ft-status-success-bg);border-radius:var(--ft-radius-lg)}.success-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-status-success-text);color:white;border-radius:50%;font-size:32px;margin:0 auto var(--ft-space-4)}.form-success h3{color:var(--ft-status-success-text);margin-bottom:var(--ft-space-2)}.form-success p{margin-bottom:var(--ft-space-4)}.contact-info-section{display:flex;flex-direction:column;gap:var(--ft-space-6)}.contact-info-card h3{margin-bottom:var(--ft-space-5);font-size:var(--ft-text-lg)}.contact-quick-links{background-color:var(--ft-bg-muted);padding:var(--ft-space-5);border-radius:var(--ft-radius-lg)}.contact-quick-links h3{font-size:var(--ft-text-base);margin-bottom:var(--ft-space-4)}.contact-quick-links ul{list-style:none;padding:0;margin:0}.contact-quick-links li{margin-bottom:var(--ft-space-2)}.contact-quick-links a{display:flex;align-items:center;justify-content:space-between;padding:var(--ft-space-2) var(--ft-space-3);background-color:var(--ft-bg-card);border-radius:var(--ft-radius-sm);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);text-decoration:none;transition:all .2s}.contact-quick-links a:hover{background-color:var(--ft-primary);color:white}.contact-quick-links a svg{opacity:.5}.contact-quick-links a:hover svg{opacity:1}.testimonials-stats{text-align:center;margin-bottom:var(--ft-space-6)}.testimonials-rating{display:inline-flex;flex-direction:column;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-6);background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md)}.rating-value{font-size:48px;font-weight:700;color:var(--ft-primary)}.rating-stars{display:flex;gap:4px;color:#F59E0B}.rating-count{font-size:var(--ft-text-sm);color:var(--ft-text-muted)}.testimonials-filters{display:flex;justify-content:center;gap:var(--ft-space-2);margin-bottom:var(--ft-space-6);flex-wrap:wrap}.testimonial-filter-btn{padding:var(--ft-space-2) var(--ft-space-4);background-color:var(--ft-bg-card);border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);cursor:pointer;transition:all .2s}.testimonial-filter-btn:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.testimonial-filter-btn.active{background-color:var(--ft-primary);border-color:var(--ft-primary);color:white}.testimonials-full-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--ft-space-5);gap:var(--ft-space-5)}.testimonial-card-full{background-color:var(--ft-bg-card);padding:var(--ft-space-6);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md)}.testimonial-footer{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:var(--ft-space-3)}.testimonial-meta{text-align:right;font-size:var(--ft-text-xs);color:var(--ft-text-muted)}.testimonial-meta span{display:block}@media (max-width:768px){.testimonials-full-grid{grid-template-columns:1fr}}.gallery-filters{display:flex;justify-content:center;gap:var(--ft-space-2);margin-bottom:var(--ft-space-6);flex-wrap:wrap}.gallery-filter-btn{padding:var(--ft-space-2) var(--ft-space-4);background-color:transparent;border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);cursor:pointer;transition:all .2s}.gallery-filter-btn:hover{border-color:var(--ft-primary);color:var(--ft-primary)}.gallery-filter-btn.active{background-color:var(--ft-primary);border-color:var(--ft-primary);color:white}.gallery-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--ft-text-muted);background-color:var(--ft-bg-muted)}.gallery-note{text-align:center;font-size:var(--ft-text-sm);color:var(--ft-text-muted);margin-top:var(--ft-space-6);font-style:italic}.lightbox{position:fixed;inset:0;background-color:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.lightbox-content{position:relative;max-width:90%;max-height:90%}.lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:white;font-size:32px;cursor:pointer;padding:var(--ft-space-2)}.lightbox-image{background-color:var(--ft-bg-muted);padding:var(--ft-space-10);border-radius:var(--ft-radius-lg);text-align:center;color:var(--ft-text-muted)}.booking-error{background-color:var(--ft-status-error-bg);color:var(--ft-status-error-text);padding:var(--ft-space-4);border-radius:var(--ft-radius-md);margin-bottom:var(--ft-space-6);text-align:center;font-weight:500}.booking-content{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);padding:var(--ft-space-8)}.booking-step{animation:fadeIn .3s ease}.booking-step h2{font-size:var(--ft-text-xl);margin-bottom:var(--ft-space-2)}.booking-step-desc{color:var(--ft-text-secondary);margin-bottom:var(--ft-space-6)}.booking-form{display:flex;flex-direction:column;gap:var(--ft-space-4);max-width:500px}.booking-form .form-group input,.booking-form .form-group select,.booking-form .form-group textarea{width:100%}.booking-actions{display:flex;justify-content:flex-end;gap:var(--ft-space-3);margin-top:var(--ft-space-8);padding-top:var(--ft-space-6);border-top:1px solid var(--ft-border)}.booking-actions button{min-width:140px}.booking-products-layout{display:grid;grid-template-columns:1fr 320px;grid-gap:var(--ft-space-6);gap:var(--ft-space-6);align-items:start}.booking-products-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4)}.booking-product-card{display:flex;flex-direction:column;gap:var(--ft-space-3);padding:var(--ft-space-4);background-color:var(--ft-bg-page);border:2px solid var(--ft-border);border-radius:var(--ft-radius-md);transition:all .2s}.booking-product-card:hover{border-color:var(--ft-primary-light)}.booking-product-card.selected{border-color:var(--ft-primary);background-color:var(--ft-bg-muted)}.booking-product-info h4{font-size:var(--ft-text-base);margin:0 0 var(--ft-space-1)}.booking-product-price{font-size:var(--ft-text-lg);font-weight:700;color:var(--ft-primary)}.booking-product-quantity{display:flex;align-items:center;gap:var(--ft-space-2);justify-content:center}.booking-product-quantity button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-bg-card);border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:var(--ft-text-lg);font-weight:600;color:var(--ft-text-primary);padding:0}.booking-product-quantity button:hover{background-color:var(--ft-bg-muted);border-color:var(--ft-primary)}.booking-product-quantity span{font-size:var(--ft-text-lg);font-weight:600;min-width:32px;text-align:center}.booking-product-add{width:100%;padding:var(--ft-space-2) var(--ft-space-4)}.booking-summary-sidebar{position:-webkit-sticky;position:sticky;top:var(--ft-space-6);background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);padding:var(--ft-space-5)}.booking-summary-sidebar h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4);padding-bottom:var(--ft-space-3);border-bottom:1px solid var(--ft-border)}.booking-summary-empty{color:var(--ft-text-muted);font-size:var(--ft-text-sm);font-style:italic;text-align:center;padding:var(--ft-space-6) 0}.booking-summary-list{list-style:none;padding:0;margin:0 0 var(--ft-space-4)}.booking-summary-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--ft-space-3);padding:var(--ft-space-2) 0;border-bottom:1px solid var(--ft-border);font-size:var(--ft-text-sm)}.booking-summary-list li:last-child{border-bottom:none}.btn-remove-item{background:transparent;border:none;color:#dc2626;font-size:24px;font-weight:700;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s;flex-shrink:0}.btn-remove-item:hover{color:#991b1b}.booking-summary-total{display:flex;justify-content:space-between;padding-top:var(--ft-space-3);border-top:2px solid var(--ft-border);font-weight:600;font-size:var(--ft-text-base)}.booking-summary-total span:last-child{color:var(--ft-primary);font-size:var(--ft-text-lg)}.booking-availability-summary{display:flex;gap:var(--ft-space-6);padding:var(--ft-space-5);background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-md);margin-bottom:var(--ft-space-6)}.availability-dates,.availability-items{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.availability-dates svg,.availability-items svg{color:var(--ft-primary)}.booking-check-availability{text-align:center;padding:var(--ft-space-8);background-color:var(--ft-bg-page);border:2px dashed var(--ft-border);border-radius:var(--ft-radius-md)}.booking-availability-results{display:flex;flex-direction:column;gap:var(--ft-space-3)}.availability-result{display:flex;align-items:center;gap:var(--ft-space-4);padding:var(--ft-space-4);border-radius:var(--ft-radius-md)}.availability-result.available{background-color:var(--ft-status-success-bg)}.availability-result.unavailable{background-color:var(--ft-status-error-bg)}.availability-result-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.availability-result.available .availability-result-icon{background-color:var(--ft-status-success-text);color:white}.availability-result.unavailable .availability-result-icon{background-color:var(--ft-status-error-text);color:white;font-size:var(--ft-text-lg);font-weight:700}.availability-result-info h4{font-size:var(--ft-text-base);margin:0 0 var(--ft-space-1)}.availability-result-info p{margin:0;font-size:var(--ft-text-sm)}.availability-result.available .availability-result-info h4{color:var(--ft-status-success-text)}.availability-result.unavailable .availability-result-info h4{color:var(--ft-status-error-text)}.availability-warning{background-color:var(--ft-status-warning-bg);padding:var(--ft-space-5);border-radius:var(--ft-radius-md);text-align:center;margin-top:var(--ft-space-4)}.availability-warning p{color:var(--ft-status-warning-text);margin-bottom:var(--ft-space-4)}.availability-warning button{margin:0 var(--ft-space-2)}.booking-final-layout{display:grid;grid-template-columns:1fr 380px;grid-gap:var(--ft-space-6);gap:var(--ft-space-6);align-items:start}.booking-customer-form h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4)}.booking-customer-form .booking-form{max-width:none}.form-checkbox{flex-direction:row;align-items:flex-start;gap:var(--ft-space-3)}.form-checkbox input[type=checkbox]{width:18px;height:18px;margin-top:2px;flex-shrink:0;cursor:pointer}.form-checkbox label{font-size:var(--ft-text-sm);color:var(--ft-text-secondary);margin-bottom:0;cursor:pointer}.form-checkbox label a{color:var(--ft-primary);text-decoration:underline}.booking-order-summary{position:-webkit-sticky;position:sticky;top:var(--ft-space-6);background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);padding:var(--ft-space-5)}.booking-order-summary h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4);padding-bottom:var(--ft-space-3);border-bottom:1px solid var(--ft-border)}.order-summary-dates{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-sm);color:var(--ft-text-secondary);margin-bottom:var(--ft-space-4)}.order-summary-dates svg{color:var(--ft-primary)}.order-summary-items{list-style:none;padding:0;margin:0 0 var(--ft-space-4)}.order-summary-items li{display:flex;justify-content:space-between;padding:var(--ft-space-2) 0;font-size:var(--ft-text-sm);color:var(--ft-text-secondary);border-bottom:1px solid var(--ft-border)}.order-summary-items li:last-child{border-bottom:none}.order-summary-subtotal{display:flex;justify-content:space-between;font-size:var(--ft-text-sm)}.order-summary-services,.order-summary-subtotal{padding:var(--ft-space-3) 0;border-top:1px solid var(--ft-border)}.order-summary-services div{display:flex;align-items:center;gap:var(--ft-space-2);font-size:var(--ft-text-xs);margin-bottom:var(--ft-space-2)}.order-summary-services div,.order-summary-services svg{color:var(--ft-status-success-text)}.order-summary-total{display:flex;justify-content:space-between;padding-top:var(--ft-space-4);border-top:2px solid var(--ft-border);font-weight:700;font-size:var(--ft-text-lg)}.order-summary-total span:last-child{color:var(--ft-primary)}.order-summary-caution{margin-top:var(--ft-space-4);font-size:var(--ft-text-xs);color:var(--ft-text-muted);font-style:italic;text-align:center}.booking-product-deposit{display:flex;align-items:center;gap:var(--ft-space-1);font-size:var(--ft-text-xs);color:var(--ft-primary);margin-top:var(--ft-space-1)}.booking-product-deposit svg{flex-shrink:0}.order-summary-deposit{margin-top:var(--ft-space-4);padding:var(--ft-space-4);background:linear-gradient(135deg,rgba(30,58,95,.08),rgba(30,58,95,.04));border-radius:var(--ft-radius-lg);border:1px solid rgba(30,58,95,.15)}.order-summary-deposit .deposit-header{display:flex;align-items:center;gap:var(--ft-space-2);color:var(--ft-primary);font-weight:600;margin-bottom:var(--ft-space-2)}.order-summary-deposit .deposit-amount{font-size:var(--ft-text-xl);font-weight:700;color:var(--ft-primary);margin-bottom:var(--ft-space-2)}.order-summary-deposit .deposit-info{font-size:var(--ft-text-xs);color:var(--ft-text-secondary);line-height:1.5;margin:0}.order-summary-no-caution{margin-top:var(--ft-space-4);font-size:var(--ft-text-sm);color:var(--ft-text-muted);text-align:center}.booking-confirm-btn{min-width:200px}@media (max-width:1024px){.booking-final-layout,.booking-products-layout{grid-template-columns:1fr}.booking-order-summary,.booking-summary-sidebar{position:static;order:-1}}@media (max-width:768px){.booking-content{padding:var(--ft-space-5)}.booking-products-grid{grid-template-columns:1fr}.booking-availability-summary{flex-direction:column;gap:var(--ft-space-3)}.booking-actions{flex-direction:column}.booking-actions button{width:100%}}.legal-content{max-width:800px;margin:0 auto}.legal-content h2{font-size:var(--ft-text-lg);margin-top:var(--ft-space-8);margin-bottom:var(--ft-space-4);color:var(--ft-primary)}.legal-content h2:first-child{margin-top:0}.legal-content p{margin-bottom:var(--ft-space-4);line-height:1.7}.legal-date{margin-top:var(--ft-space-8);padding-top:var(--ft-space-4);border-top:1px solid var(--ft-border);color:var(--ft-text-muted)}.confirmation-container{max-width:900px;margin:0 auto}.confirmation-header{text-align:center;background-color:var(--ft-bg-card);padding:var(--ft-space-8);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);margin-bottom:var(--ft-space-6)}.confirmation-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto var(--ft-space-4)}.confirmation-icon.success{background-color:var(--ft-status-success-bg);color:var(--ft-status-success-text)}.confirmation-header h1{font-size:var(--ft-text-2xl);color:var(--ft-status-success-text);margin-bottom:var(--ft-space-2)}.confirmation-header .booking-ref{font-size:var(--ft-text-lg);color:var(--ft-text-secondary)}.confirmation-header .booking-ref strong{font-family:monospace;background-color:var(--ft-bg-muted);padding:var(--ft-space-1) var(--ft-space-3);border-radius:var(--ft-radius-sm);color:var(--ft-text-primary)}.confirmation-alert{padding:var(--ft-space-4);border-radius:var(--ft-radius-md);margin-bottom:var(--ft-space-4);display:flex;align-items:center;gap:var(--ft-space-3)}.confirmation-alert.success{background-color:var(--ft-status-success-bg);color:var(--ft-status-success-text)}.confirmation-alert.warning{background-color:var(--ft-status-warning-bg);color:var(--ft-status-warning-text)}.confirmation-alert.info{background-color:var(--ft-status-info-bg);color:var(--ft-status-info-text)}.confirmation-alert svg{flex-shrink:0}.request-info-icon{width:20px;height:20px;min-width:20px;min-height:20px}.confirmation-info-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--ft-space-4);gap:var(--ft-space-4);margin-bottom:var(--ft-space-6)}.confirmation-info-card{background-color:var(--ft-bg-card);padding:var(--ft-space-5);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-sm)}.confirmation-info-card h3{font-size:var(--ft-text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ft-text-muted);margin-bottom:var(--ft-space-3)}.confirmation-info-card .info-value{font-size:var(--ft-text-base);font-weight:600;color:var(--ft-text-primary);margin-bottom:var(--ft-space-1)}.confirmation-info-card .info-detail{font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.confirmation-products{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);padding:var(--ft-space-5);margin-bottom:var(--ft-space-6)}.confirmation-products h3{font-size:var(--ft-text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ft-text-muted);margin-bottom:var(--ft-space-4)}.confirmation-products table{margin-bottom:0}.confirmation-products tfoot td{background-color:var(--ft-bg-muted);font-weight:600}.confirmation-products .total-value{font-size:var(--ft-text-lg);font-weight:700;color:var(--ft-primary)}.confirmation-payment{background-color:var(--ft-status-warning-bg);border-radius:var(--ft-radius-lg);padding:var(--ft-space-6);margin-bottom:var(--ft-space-6);text-align:center}.confirmation-payment h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-2);display:flex;align-items:center;justify-content:center;gap:var(--ft-space-2)}.confirmation-payment p{color:var(--ft-text-secondary);margin-bottom:var(--ft-space-4)}.confirmation-payment button{font-size:var(--ft-text-lg);padding:var(--ft-space-4) var(--ft-space-8)}.confirmation-deposit{background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);padding:var(--ft-space-6);margin-bottom:var(--ft-space-6);border:1px solid var(--ft-border)}.confirmation-deposit h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4);display:flex;align-items:center;gap:var(--ft-space-2)}.deposit-info{padding:var(--ft-space-4);border-radius:var(--ft-radius-md);background-color:var(--ft-bg-card)}.deposit-info.pending{background-color:var(--ft-status-warning-bg)}.deposit-info.action{background-color:var(--ft-status-info-bg);border:2px solid var(--ft-status-info-text)}.deposit-info.success{background-color:var(--ft-status-success-bg)}.deposit-amount{font-size:var(--ft-text-2xl);font-weight:700;color:var(--ft-primary);margin-bottom:var(--ft-space-2)}.deposit-notice{color:var(--ft-text-secondary);font-size:var(--ft-text-sm)}.deposit-notice p{margin:0}.confirmation-alert.error{background-color:var(--ft-status-error-bg);color:var(--ft-status-error-text)}.confirmation-invoices{background-color:var(--ft-bg-muted);border-radius:var(--ft-radius-lg);padding:var(--ft-space-6);margin-bottom:var(--ft-space-6);border:1px solid var(--ft-border)}.confirmation-invoices h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-4);display:flex;align-items:center;gap:var(--ft-space-2)}.invoice-list{flex-direction:column}.invoice-item,.invoice-list{display:flex;gap:var(--ft-space-3)}.invoice-item{justify-content:space-between;align-items:center;padding:var(--ft-space-4);background-color:var(--ft-bg-card);border-radius:var(--ft-radius-md);border:1px solid var(--ft-border);flex-wrap:wrap}.invoice-info{display:flex;flex-direction:column;gap:var(--ft-space-2)}.invoice-number{font-family:monospace;font-weight:600;color:var(--ft-primary);font-size:var(--ft-text-base)}.invoice-badges{display:flex;gap:var(--ft-space-2)}.invoice-details{display:flex;align-items:center;gap:var(--ft-space-4)}.invoice-date{font-size:var(--ft-text-sm);color:var(--ft-text-secondary)}.invoice-amount{font-weight:700;font-family:monospace;color:var(--ft-primary)}.invoice-amount.negative{color:var(--ft-danger)}.btn-sm{font-size:var(--ft-text-sm);padding:var(--ft-space-1) var(--ft-space-3)}.confirmation-steps{background-color:var(--ft-bg-card);border-radius:var(--ft-radius-lg);box-shadow:var(--ft-shadow-md);padding:var(--ft-space-6);margin-bottom:var(--ft-space-6)}.confirmation-steps h3{font-size:var(--ft-text-lg);margin-bottom:var(--ft-space-5)}.step-list{list-style:none;padding:0;margin:0;counter-reset:steps}.step-list li{display:flex;gap:var(--ft-space-4);padding:var(--ft-space-4) 0;border-bottom:1px solid var(--ft-border);counter-increment:steps}.step-list li:last-child{border-bottom:none}.step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--ft-primary);color:white;font-weight:600;font-size:var(--ft-text-sm);border-radius:50%;flex-shrink:0}.step-content h4{font-size:var(--ft-text-base);margin-bottom:var(--ft-space-1)}.step-content p{font-size:var(--ft-text-sm);margin:0}.confirmation-actions{display:flex;justify-content:center;gap:var(--ft-space-3);flex-wrap:wrap}.confirmation-actions a,.confirmation-actions button{min-width:180px;text-align:center}@media (max-width:768px){.confirmation-info-grid{grid-template-columns:1fr}.confirmation-header{padding:var(--ft-space-6)}.confirmation-actions{flex-direction:column}.confirmation-actions a,.confirmation-actions button{width:100%}}.product-main-image{width:100%;height:100%;object-fit:contain;border-radius:var(--ft-radius-lg);background:var(--ft-bg-muted)}.product-thumbnails{display:flex;gap:var(--ft-space-2);margin-top:var(--ft-space-4);flex-wrap:wrap}.product-thumbnail{width:80px;height:60px;border:2px solid var(--ft-border-light);border-radius:var(--ft-radius-md);overflow:hidden;cursor:pointer;padding:0;background:var(--ft-bg-light);transition:border-color .2s ease,transform .2s ease}.product-thumbnail:hover{border-color:var(--ft-primary);transform:scale(1.05)}.product-thumbnail.active{border-color:var(--ft-primary);box-shadow:0 0 0 2px rgba(30,58,95,.2)}.product-thumbnail img{width:100%;height:100%;object-fit:cover}.specs-table{width:100%;border-collapse:collapse;margin-top:var(--ft-space-4)}.specs-table tr{border-bottom:1px solid var(--ft-border-light)}.specs-table tr:last-child{border-bottom:none}.specs-table td{padding:var(--ft-space-3) var(--ft-space-4)}.specs-table .spec-key{width:40%;font-weight:600;color:var(--ft-text-primary);background-color:var(--ft-bg-light)}.specs-table .spec-value{color:var(--ft-text-secondary)}.product-tab-badge{background-color:var(--ft-primary);color:white;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;margin-left:var(--ft-space-2)}a.document-card{text-decoration:none;color:inherit}a.document-card:hover{transform:translateY(-2px);box-shadow:var(--ft-shadow-md)}a.document-card svg:last-child{margin-left:auto;opacity:.5;transition:opacity .2s ease}a.document-card:hover svg:last-child{opacity:1}@media (max-width:768px){.product-thumbnails{justify-content:center}.product-thumbnail{width:60px;height:45px}.specs-table .spec-key{width:50%}}.product-description-full{max-width:800px}.product-description-full h2{font-size:var(--ft-text-2xl);font-weight:700;color:var(--ft-text-primary);margin-bottom:var(--ft-space-4)}.markdown-content{font-size:var(--ft-text-base);line-height:1.7;color:var(--ft-text-secondary)}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:var(--ft-text-primary);margin-top:var(--ft-space-6);margin-bottom:var(--ft-space-3)}.markdown-content h1{font-size:var(--ft-text-2xl)}.markdown-content h2{font-size:var(--ft-text-xl)}.markdown-content h3{font-size:var(--ft-text-lg)}.markdown-content p{margin-bottom:var(--ft-space-4)}.markdown-content strong{font-weight:600;color:var(--ft-text-primary)}.markdown-content em{font-style:italic}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:9998;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.modal-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;border-radius:var(--ft-radius-lg);box-shadow:0 20px 60px rgba(0,0,0,.3);z-index:9999;max-width:90vw;max-height:90vh;overflow:hidden;animation:slideUp .3s ease}.tenant-modal{width:1000px;max-width:95vw}.modal-header{position:relative;padding:var(--ft-space-6);border-bottom:2px solid var(--ft-border);background:linear-gradient(135deg,#1E3A5F,#2D5A8A);color:white}.modal-header h2{color:white;margin-bottom:var(--ft-space-2);font-size:var(--ft-text-2xl)}.modal-header p{color:rgba(255,255,255,.9);margin:0}.modal-close-btn{position:absolute;top:var(--ft-space-4);right:var(--ft-space-4);width:32px;height:32px;border:none;background:rgba(255,255,255,.2);border-radius:50%;color:white;font-size:20px;cursor:pointer;transition:background .2s ease}.modal-close-btn:hover{background:rgba(255,255,255,.3)}.modal-body{padding:var(--ft-space-6);overflow-y:auto;max-height:calc(90vh - 120px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translate(-50%,-40%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}@media (max-width:768px){.tenant-modal{width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0;top:0;left:0;transform:none}.modal-body{max-height:calc(100vh - 120px)}.modal-header h2{font-size:var(--ft-text-xl)}}.tenant-modal .modal-body{padding:var(--ft-space-4)}@media (max-width:768px){.tenant-modal{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;top:0;left:0;transform:none}.tenant-modal .modal-header h2{font-size:var(--ft-text-xl)}.tenant-modal .modal-body{max-height:calc(100dvh - 140px - env(safe-area-inset-bottom));padding-bottom:calc(var(--ft-space-6) + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.tenant-modal .tenant-selection-grid{grid-template-columns:1fr!important}.tenant-modal .tenant-map-section{max-height:350px}.tenant-modal .tenant-list{max-height:250px}.tenant-modal .btn-block{position:-webkit-sticky;position:sticky;bottom:0;background:white;padding-top:var(--ft-space-3);padding-bottom:calc(var(--ft-space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--ft-border);margin-top:var(--ft-space-4);z-index:10;box-shadow:0 -4px 12px rgba(0,0,0,.05)}}.variant-selector{margin:var(--ft-space-4) 0;padding:var(--ft-space-4);background:var(--ft-bg-secondary);border-radius:var(--ft-radius-md);border:1px solid var(--ft-border)}.product-detail-info.has-variants .variant-selector{margin:var(--ft-space-3) 0;padding:var(--ft-space-3)}.variant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:var(--ft-space-3);gap:var(--ft-space-3)}.variant-card{position:relative;padding:var(--ft-space-3);background:white;border:2px solid var(--ft-border);border-radius:var(--ft-radius-md);cursor:pointer;transition:all .2s ease;text-align:center;display:flex;flex-direction:column;gap:var(--ft-space-2)}.variant-card:hover:not(.disabled){border-color:var(--ft-primary);box-shadow:0 2px 8px rgba(30,58,95,.1)}.variant-card.selected{border-color:var(--ft-primary);background:rgba(30,58,95,.05)}.variant-card.selected:after{content:"✓";position:absolute;top:4px;right:4px;width:20px;height:20px;background:var(--ft-primary);color:white;border-radius:50%;font-size:12px;line-height:20px;font-weight:700}.variant-card.disabled{opacity:.5;cursor:not-allowed;background:var(--ft-bg-tertiary)}.variant-name{font-weight:600;font-size:.95rem;color:var(--ft-text)}.variant-price{font-size:1.1rem;font-weight:700;color:var(--ft-primary)}.variant-stock{font-size:.85rem}@media (max-width:768px){.variant-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--ft-space-2)}.variant-card{padding:var(--ft-space-2)}}.cart-badge{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:white;border:1px solid #e5e7eb;border-radius:50%;cursor:pointer;transition:all .2s}.cart-badge svg{stroke:#6b7280;transition:stroke .2s}.cart-badge:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1)}.cart-badge:hover svg{stroke:#374151}.cart-badge-count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 6px;background:#ef4444;color:white;font-size:.75rem;font-weight:600;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,.2)}.cart-badge-pulse{animation:cart-badge-pulse .3s ease-out}@keyframes cart-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width:768px){.cart-badge{width:40px;height:40px}}.product-add-to-cart-section{margin-top:var(--ft-space-6);padding:var(--ft-space-5);background:var(--ft-bg-card);border-radius:var(--ft-radius-lg);border:1px solid var(--ft-border);box-shadow:var(--ft-shadow-sm)}.product-add-to-cart-section h3{font-size:var(--ft-text-lg);font-weight:600;color:var(--ft-text-secondary);margin-bottom:var(--ft-space-4)}.quantity-selector{display:flex;align-items:center;gap:var(--ft-space-3);margin-bottom:var(--ft-space-4)}.quantity-label{font-weight:500;color:var(--ft-text-primary)}.quantity-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:white;border:1px solid var(--ft-border);border-radius:var(--ft-radius-md);font-size:1.2rem;cursor:pointer;transition:all .2s}.quantity-btn:hover:not(:disabled){border-color:var(--ft-primary);color:var(--ft-primary)}.quantity-btn:disabled{opacity:.4;cursor:not-allowed}.quantity-value{min-width:40px;text-align:center;font-weight:600;font-size:1.1rem;color:var(--ft-text-primary)}.quantity-stock{font-size:var(--ft-text-sm);color:var(--ft-text-muted)}.product-add-to-cart-btn{width:100%;margin-bottom:var(--ft-space-3)}.product-add-to-cart-section .btn-outline{display:block;width:100%;text-align:center;padding:var(--ft-space-3) var(--ft-space-4);font-weight:600;border-radius:var(--ft-radius-md)}.add-to-cart-error{display:flex;align-items:center;gap:var(--ft-space-2);padding:var(--ft-space-3);margin-bottom:var(--ft-space-3);background:var(--ft-status-error-bg);color:var(--ft-status-error-text);border-radius:var(--ft-radius-md);font-size:var(--ft-text-sm);font-weight:500}