:root{--color-primary:#1a1f2e;--color-secondary:#2d3748;--color-gold:#c9a962;--color-gold-light:#d4b978;--color-gold-dark:#b8944f;--color-white:#ffffff;--color-cream:#faf8f5;--color-cream-dark:#f5f1eb;--color-text:#4a5568;--color-text-light:#718096;--color-border:#e2e8f0;--font-heading:'Playfair Display', serif;--font-body:'Inter', sans-serif;--shadow-sm:0 1px 3px rgba(0,0,0,0.1);--shadow-md:0 4px 6px rgba(0,0,0,0.1);--shadow-lg:0 10px 25px rgba(0,0,0,0.1);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--transition:all 0.3s ease}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);line-height:1.6;background-color:var(--color-white);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:var(--transition)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.3;color:var(--color-primary)}h1{font-size:clamp(2rem, 5vw, 3.5rem)}h2{font-size:clamp(1.75rem, 4vw, 2.5rem)}h3{font-size:clamp(1.25rem, 3vw, 1.5rem)}.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:var(--color-gold);font-weight:600;margin-bottom:.5rem;display:block}h3.wp-block-heading{position:relative;margin-bottom:15px;padding-bottom:15px;margin-top:20px}h3.wp-block-heading:after{content:'';background-color:var(--color-gold);height:2px;width:64px;position:absolute;bottom:0;left:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;border-radius:50px;font-weight:500;font-size:.875rem;cursor:pointer;transition:var(--transition);border:none;text-transform:none}.btn-primary{background:var(--color-gold);color:var(--color-white)}.btn-primary:hover{background:var(--color-gold-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:#fff0;color:var(--color-white);border:1px solid rgb(255 255 255 / .3)}.btn-secondary:hover{background:var(--color-white);color:var(--color-primary)}.btn-outline{background:var(--color-white);color:var(--color-primary);border:1px solid var(--color-border)}.btn-outline:hover{background:var(--color-primary);color:var(--color-white)}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:linear-gradient(to bottom,rgb(0 0 0 / .35),#fff0);backdrop-filter:blur(2px);transition:var(--transition)}.header.scrolled{background:rgb(250 248 245 / .97);backdrop-filter:blur(10px);box-shadow:var(--shadow-md)}.header.scrolled .main-nav a{color:var(--color-text)}.header.scrolled .main-nav a:hover,.header.scrolled .main-nav a.active{color:var(--color-primary)}.header.scrolled .phone-link{color:var(--color-text)}.header.scrolled .phone-link:hover{color:var(--color-gold-dark)}.header.scrolled .mobile-menu-toggle span{background:var(--color-primary)}.header-inner{max-width:1280px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:80px}header .header-inner{max-width:1480px}.logo img{height:50px;width:auto}.main-nav ul{display:flex;list-style:none;gap:2rem}.main-nav ul{align-items:center}.main-nav li{display:flex;align-items:center}.main-nav a{color:rgb(255 255 255 / .85);font-size:.875rem;font-weight:500;position:relative;padding:.55rem 1.1rem;border-radius:50px;transition:var(--transition)}.main-nav a:hover{color:var(--color-white)}.main-nav a.active{color:var(--color-primary);background:var(--color-cream)}.header.scrolled .main-nav a.active{background:var(--color-cream-dark);color:var(--color-primary)}.header-actions{display:flex;align-items:center;gap:1.5rem}.phone-link{color:rgb(255 255 255 / .8);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.phone-link:hover{color:var(--color-gold)}.mobile-menu-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:5px}.mobile-menu-toggle span{width:25px;height:2px;background:var(--color-white);transition:var(--transition)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;background:var(--color-primary);overflow:hidden}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.4}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgb(26 31 46 / .75) 0%,rgb(26 31 46 / .4) 100%)}body.home .hero-overlay{background:linear-gradient(135deg,rgb(26 31 46 / .45) 0%,rgb(26 31 46 / .2) 100%)}.hero-content{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:8rem 1.5rem 4rem;width:100%}.hero-label{font-size:.75rem;text-transform:uppercase;letter-spacing:3px;color:var(--color-gold);margin-bottom:1.5rem;display:block}.hero-title{font-size:clamp(2.5rem, 6vw, 4.5rem);color:var(--color-white);margin-bottom:1.5rem;max-width:700px;line-height:1.1}.hero-title em{color:var(--color-gold);font-style:italic}.hero-text{font-size:1.125rem;color:rgb(255 255 255 / .7);max-width:500px;margin-bottom:2rem;line-height:1.7}.hero-buttons,.btn-group{display:flex;gap:1rem;flex-wrap:wrap}.btn-group{margin-top:20px}.hero-scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);color:rgb(255 255 255 / .6);font-size:1.5rem;z-index:2;animation:okw-bounce 2s infinite}@keyframes okw-bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}.hero-stats{position:absolute;bottom:0;left:0;right:0;background:rgb(255 255 255 / .03);backdrop-filter:blur(10px);border-top:1px solid rgb(255 255 255 / .1)}.hero-stats-inner{max-width:1280px;margin:0 auto;padding:2rem 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat-item{text-align:center}.stat-number{font-family:var(--font-heading);font-size:2.5rem;color:var(--color-gold);font-weight:600}.stat-label{font-size:.75rem;color:rgb(255 255 255 / .6);text-transform:uppercase;letter-spacing:1px;margin-top:.25rem}.section{padding:5rem 0}.section-cream{background:var(--color-cream)}.section-dark{background:var(--color-primary);color:var(--color-white)}.section-dark h2,.section-dark h3{color:var(--color-white)}.container{max-width:1280px;margin:0 auto;padding:0 1.5rem}.section-header{text-align:center;max-width:700px;margin:0 auto 3rem}.section-title{margin-bottom:1rem}.section-subtitle{color:var(--color-text-light);font-size:1rem}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.about-images{position:relative}.about-img-main{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.about-img-main img{width:100%;height:400px;object-fit:cover}.about-img-badge{position:absolute;bottom:-20px;right:-20px;background:var(--color-gold);color:var(--color-white);padding:1.5rem;border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-lg)}.about-img-badge .number{font-family:var(--font-heading);font-size:2.5rem;font-weight:600;display:block;line-height:1}.about-img-badge .text{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;opacity:.9}.about-content h2{margin-bottom:1.5rem}.about-text{color:var(--color-text);margin-bottom:2rem;line-height:1.8}.about-text p{margin-bottom:1rem}.about-text p:last-child{margin-bottom:0}.about-features{display:grid;gap:1rem;margin-bottom:2rem}.about-feature{display:flex;align-items:flex-start;gap:1rem}.about-feature i{width:40px;height:40px;background:var(--color-cream-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-gold);flex-shrink:0}.about-feature h4{font-size:1rem;margin-bottom:.25rem}.about-feature p{font-size:.875rem;color:var(--color-text-light)}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.service-card{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/10;cursor:pointer}.service-card-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:var(--transition)}.service-card:hover .service-card-bg{transform:scale(1.05)}.service-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgb(26 31 46 / .95) 0%,rgb(26 31 46 / .4) 50%,rgb(26 31 46 / .2) 100%);transition:var(--transition)}.service-card:hover .service-card-overlay{background:linear-gradient(to top,rgb(26 31 46 / .98) 0%,rgb(26 31 46 / .6) 100%)}.service-card-content{position:absolute;bottom:0;left:0;right:0;padding:2rem;color:var(--color-white)}.service-card h3{color:var(--color-white);font-size:1.25rem;margin-bottom:.5rem}.service-card p{font-size:.875rem;opacity:.8;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-card-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-gold);font-size:.875rem;font-weight:500}.service-card-link:hover{gap:.75rem}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.value-card{background:var(--color-white);padding:2.5rem;border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm);transition:var(--transition)}.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.value-icon{width:60px;height:60px;background:var(--color-cream);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:var(--color-gold);font-size:1.5rem}.value-card h3{font-size:1.125rem;margin-bottom:.75rem}.value-card p{font-size:.875rem;color:var(--color-text-light);line-height:1.6}.value-card-highlight{border-bottom:3px solid var(--color-gold)}.cta-section{background:linear-gradient(135deg,var(--color-gold-dark) 0%,var(--color-gold) 100%);padding:5rem 0;text-align:center}.cta-section-dark{background:linear-gradient(135deg,#363d4a 0%,#2d3341 100%)}.cta-section h2{color:var(--color-white);margin-bottom:1rem;max-width:700px;margin-left:auto;margin-right:auto}.cta-section p{color:rgb(255 255 255 / .75);margin-bottom:2rem;max-width:650px;margin-left:auto;margin-right:auto}.cta-section .section-label{display:block;margin-bottom:1rem}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-section .btn-secondary{border-color:var(--color-white)}.cta-section .btn-secondary:hover{background:var(--color-white);color:var(--color-gold-dark)}.brands-section{padding:3.5rem 0;background:var(--color-white);text-align:center}.brands-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:var(--color-text-light);margin-bottom:2rem}.brands-grid{display:flex;justify-content:center;align-items:center;gap:2.5rem;flex-wrap:wrap}.brand-name{font-family:var(--font-heading);font-size:1.25rem;color:var(--color-text-light);opacity:.4;transition:var(--transition);white-space:nowrap}.brand-name:hover{opacity:.8;color:var(--color-primary)}.brands-grid img{height:30px;width:auto;filter:grayscale(100%);transition:var(--transition)}.brands-grid img:hover{filter:grayscale(0%);opacity:1}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3rem}.contact-card{background:var(--color-white);padding:2rem;border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-sm)}.contact-card-icon{width:50px;height:50px;background:var(--color-cream);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--color-gold)}.contact-card h3{font-size:1.125rem;margin-bottom:.75rem}.contact-card p{font-size:.875rem;color:var(--color-text-light);line-height:1.6}.contact-card a{color:var(--color-gold);font-weight:500}.contact-card a:hover{text-decoration:underline}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-form-wrapper{background:var(--color-white);padding:2.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.contact-form-wrapper h3{margin-bottom:.5rem}.contact-form-wrapper>p{color:var(--color-text-light);font-size:.875rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--color-primary)}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;font-size:.875rem;transition:var(--transition)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px rgb(201 169 98 / .1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-submit{width:100%;background:var(--color-gold);color:var(--color-white);border:none;padding:1rem;border-radius:50px;font-weight:500;cursor:pointer;transition:var(--transition)}.form-submit:hover{background:var(--color-gold-dark)}.contact-map{border-radius:var(--radius-md);overflow:hidden;height:100%;min-height:400px}.contact-map iframe{width:100%;height:100%;border:none}.visit-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:stretch}.visit-info h2{margin:.5rem 0 1.5rem}.visit-info-list{display:flex;flex-direction:column;gap:1.75rem}.visit-info-item{display:flex;align-items:flex-start;gap:1.25rem}.visit-info-icon{width:48px;height:48px;background:var(--color-cream);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-gold);font-size:1.125rem;flex-shrink:0}.visit-info-item h4{font-family:var(--font-heading);font-size:1.125rem;margin-bottom:.35rem}.visit-info-item p{font-size:.9375rem;color:var(--color-text);line-height:1.6}.visit-info-item p a{color:var(--color-primary);font-weight:500}.visit-info-item p a:hover{color:var(--color-gold-dark)}.visit-map{border-radius:var(--radius-md);overflow:hidden;min-height:380px}.visit-map iframe{width:100%;height:100%;min-height:380px;border:none}.schedule-filters{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.schedule-filter{padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:50px;font-size:.875rem;background:var(--color-white);cursor:pointer;transition:var(--transition)}.schedule-filter.active,.schedule-filter:hover{background:var(--color-gold);color:var(--color-white);border-color:var(--color-gold)}.schedule-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.schedule-card{background:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.schedule-card-header{padding:1.25rem 1.5rem;color:var(--color-white);display:flex;align-items:center;gap:1rem}.schedule-card-header.optometrist{background:linear-gradient(135deg,#d4a853 0%,#c9a962 100%)}.schedule-card-header.ophthalmologist{background:linear-gradient(135deg,#4a6fa5 0%,#6b8cbc 100%)}.schedule-card-header.orthoptist{background:linear-gradient(135deg,#5a9a8f 0%,#7ab5ab 100%)}.schedule-card-avatar{width:40px;height:40px;background:rgb(255 255 255 / .2);border-radius:50%;display:flex;align-items:center;justify-content:center}.schedule-card-header h4{color:var(--color-white);font-size:1rem;margin-bottom:.25rem}.schedule-card-header p{font-size:.75rem;opacity:.9}.schedule-card-body{padding:1.5rem}.schedule-table{width:100%;font-size:.75rem}.schedule-table th,.schedule-table td{padding:.5rem;text-align:center}.schedule-table th{color:var(--color-text-light);font-weight:500;text-transform:uppercase;font-size:.625rem;letter-spacing:.5px}.schedule-time{background:var(--color-cream);border-radius:4px;padding:.25rem .5rem;display:inline-block}.schedule-time.empty{background:#fff0;color:var(--color-text-light)}.collection-tabs{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.collection-card{background:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:var(--transition)}.collection-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.collection-card-image{aspect-ratio:4/3;background:var(--color-cream);display:flex;align-items:center;justify-content:center;padding:2rem}.collection-card-image img{max-height:100%;object-fit:contain}.collection-card-content{padding:1.25rem}.collection-card-brand{font-size:.625rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-light);margin-bottom:.25rem}.collection-card h4{font-size:1rem;margin-bottom:.25rem}.collection-card-tags{display:flex;gap:.5rem;font-size:.75rem;color:var(--color-text-light)}.faq-list{max-width:800px;margin:0 auto}.faq-item{background:var(--color-white);border-radius:var(--radius-sm);margin-bottom:.75rem;overflow:hidden}.faq-question{width:100%;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;background:none;border:none;font-family:inherit;font-size:.9375rem;font-weight:500;text-align:left;cursor:pointer;color:var(--color-primary)}.faq-question:hover{color:var(--color-gold)}.faq-icon{transition:var(--transition)}.faq-item.active .faq-icon{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s ease}.faq-item.active .faq-answer{max-height:500px}.faq-answer-inner{padding:0 1.25rem 1.25rem;font-size:.875rem;color:var(--color-text);line-height:1.7}.process-steps{display:flex;justify-content:center;gap:2rem;position:relative}.process-step{text-align:center;max-width:200px}.process-step-number{width:50px;height:50px;background:var(--color-gold);color:var(--color-white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:600;margin:0 auto 1rem}.process-step h4{font-size:1rem;margin-bottom:.5rem}.process-step p{font-size:.75rem;color:var(--color-text-light)}.symptoms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:700px;margin:0 auto}.symptom-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--color-white);border-radius:var(--radius-sm);font-size:.875rem}.symptom-item i{color:var(--color-gold)}.footer{background:var(--color-primary);color:rgb(255 255 255 / .7);padding:4rem 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr 1.5fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgb(255 255 255 / .1)}.footer-brand p{font-size:.875rem;line-height:1.7;margin:1.5rem 0}.footer-brand img{object-fit:contain}.footer-social{display:flex;gap:.75rem}.footer-social a{width:36px;height:36px;background:rgb(255 255 255 / .1);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.footer-social a:hover{background:var(--color-gold);color:var(--color-white)}.footer h4{color:var(--color-white);font-size:1rem;margin-bottom:1.5rem}.footer-links{list-style:none}.footer-links li{margin-bottom:.75rem}.footer-links a{font-size:.875rem;transition:var(--transition)}.footer-links a:hover{color:var(--color-gold);padding-left:5px}.footer-contact p{font-size:.875rem;margin-bottom:.75rem;display:flex;align-items:flex-start;gap:.75rem}.footer-contact i{color:var(--color-gold);margin-top:3px}.footer-hours{font-size:.875rem}.footer-hours-row{display:flex;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgb(255 255 255 / .1)}.footer-hours-row:last-child{border-bottom:none}.footer-bottom{padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.footer-bottom-links{display:flex;gap:1.5rem}.footer-bottom a:hover{color:var(--color-gold)}@media (max-width:1024px){.about-grid,.contact-grid,.visit-grid{grid-template-columns:1fr}.services-grid,.schedule-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:repeat(2,1fr)}.collection-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.hero-stats-inner{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.main-nav{position:fixed;top:80px;left:0;right:0;background:var(--color-primary);padding:1.5rem;transform:translateX(-100%);transition:transform 0.3s ease}.main-nav.active{transform:translateX(0)}.main-nav ul{flex-direction:column;gap:1rem}.mobile-menu-toggle{display:flex}.phone-link span{display:none}.values-grid,.contact-cards{grid-template-columns:1fr}.collection-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;gap:1rem;text-align:center}.hero-stats-inner{grid-template-columns:repeat(2,1fr);gap:1rem}.process-steps{flex-direction:column;align-items:center}.symptoms-grid{grid-template-columns:1fr}}.wp-block-image img{border-radius:var(--radius-md)}.alignwide{max-width:1400px;margin-left:auto;margin-right:auto}.alignfull{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.acf-form input,.acf-form textarea,.acf-form select{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit}.acf-form .acf-label label{font-weight:500;margin-bottom:.5rem;display:block}