:root{--celtic-primary:#2a6e3f;--celtic-secondary:#4a8c5a;--celtic-accent:#d4af37;--celtic-dark:#1a3b23;--celtic-light:rgba(233,245,235,0.9);--celtic-text:#333333;--celtic-text-light:#444444;--celtic-white:#ffffff;--card-bg:rgba(42,110,63,0.85)}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0;color:var(--celtic-text);line-height:1.6;background:linear-gradient(rgba(42,110,63,.7),rgba(26,59,35,.7)),url(/background-1.png);background-size:cover;background-attachment:fixed;background-position:50%;min-height:100vh}.main-container{max-width:1200px;margin:0 auto;padding:20px}.card{background-color:var(--card-bg);border-radius:20px;padding:30px;margin:20px 0;color:var(--celtic-white);box-shadow:0 5px 15px rgba(0,0,0,.2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}nav{background-color:var(--celtic-primary);padding:15px 0;box-shadow:0 2px 10px rgba(0,0,0,.1);position:-webkit-sticky;position:sticky;top:0;z-index:100}nav ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;align-items:center}nav li{margin:0 20px}nav a{color:var(--celtic-white);text-decoration:none;font-weight:600;font-size:1.1rem;padding:8px 16px;border-radius:4px;transition:all .3s ease}nav a:hover{background-color:rgba(255,255,255,.1);transform:translateY(-2px)}.hero{padding:100px 20px;text-align:center;color:var(--celtic-white);position:relative}.hero-content{background-color:rgba(42,110,63,.9);padding:40px;border-radius:15px;max-width:800px;margin:0 auto;box-shadow:0 10px 30px rgba(0,0,0,.2)}.hero h1{font-size:3.5rem;margin-bottom:20px;text-shadow:2px 2px 4px rgba(0,0,0,.3);font-family:Georgia,serif}.hero p{font-size:1.3rem;margin-bottom:30px;max-width:600px;margin-left:auto;margin-right:auto}.cta-button{display:inline-block;background:var(--celtic-accent);color:var(--celtic-dark);padding:15px 30px;border-radius:50px;text-decoration:none;font-weight:700;font-size:1.2rem;transition:all .3s ease;box-shadow:0 4px 15px rgba(212,175,55,.3);border:2px solid var(--celtic-accent);margin:10px}.cta-button:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(212,175,55,.4)}.cta-button.transparent{background:transparent;border:2px solid var(--celtic-accent);color:var(--celtic-white)}.cta-button.transparent:hover{background:var(--celtic-accent);color:var(--celtic-dark)}.listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:30px;gap:30px;margin:30px 0}.listing-card{background-color:var(--card-bg);border-radius:15px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.1);transition:all .3s ease;text-align:center;padding:20px;position:relative;color:var(--celtic-white)}.listing-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.15)}.logo-circle{width:120px;height:120px;border-radius:50%;overflow:hidden;margin:0 auto 20px;border:3px solid var(--celtic-accent);display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--celtic-light) 0,#f8fff9 100%)}.logo-circle img{width:100%;height:100%;object-fit:cover}.listing-content{padding:10px}.listing-card h2{color:var(--celtic-white);margin:0 0 10px;font-size:1.4rem;font-weight:700;font-family:Georgia,serif}.listing-card p{color:rgba(255,255,255,.9);margin-bottom:15px;line-height:1.5}.listing-card .address{color:var(--celtic-white);font-weight:500;margin-bottom:15px;display:flex;align-items:center;justify-content:center;gap:5px}.social-icons{gap:10px;margin:15px 0}.social-icon,.social-icons{display:flex;justify-content:center}.social-icon{width:35px;height:35px;border-radius:50%;background:rgba(255,255,255,.2);align-items:center;transition:all .3s ease;color:var(--celtic-white);text-decoration:none;font-size:1.2rem}.social-icon:hover{background:var(--celtic-accent);color:var(--celtic-dark);transform:translateY(-3px)}.form-container{max-width:800px;margin:40px auto;padding:30px;border-radius:15px;background-color:var(--card-bg);color:var(--celtic-white);box-shadow:0 10px 30px rgba(0,0,0,.1)}.form-header{text-align:center;margin-bottom:30px}.form-header h1{color:var(--celtic-white);margin-bottom:10px}.form-header p{color:rgba(255,255,255,.9);font-size:1.1rem}.business-form{margin-top:20px}.form-grid{display:grid;grid-template-columns:1fr;grid-gap:20px;gap:20px;max-width:600px;margin:0 auto}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--celtic-white)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 15px;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:1rem;transition:all .3s ease;background-color:rgba(255,255,255,.9);box-sizing:border-box;color:var(--celtic-text)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--celtic-accent);background-color:var(--celtic-white);box-shadow:0 0 0 3px rgba(212,175,55,.2)}.form-group textarea{resize:vertical;min-height:100px}.submit-button{display:block;width:100%;padding:15px;background:var(--celtic-accent);color:var(--celtic-dark);border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:20px;max-width:600px;margin-left:auto;margin-right:auto}.submit-button:hover{background:#e0b83a;transform:translateY(-2px);box-shadow:0 5px 15px rgba(212,175,55,.3)}.submit-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.form-message{padding:15px;border-radius:8px;margin-bottom:20px;text-align:center;font-weight:500}.form-message.success{background:rgba(212,237,218,.9);color:#155724;border:1px solid #c3e6cb}.form-message.error{background:rgba(248,215,218,.9);color:#721c24;border:1px solid #f5c6cb}.form-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.3);font-size:.9rem;color:rgba(255,255,255,.8)}.about-container{max-width:900px;margin:40px auto;padding:30px;border-radius:15px;background-color:var(--card-bg);color:var(--celtic-white)}.about-header{text-align:center}.about-header,.about-section{margin-bottom:40px}.about-section h2{color:var(--celtic-accent);margin-bottom:15px}.celtic-quote{background:rgba(255,255,255,.1);padding:25px;border-left:4px solid var(--celtic-accent);margin:30px 0;font-style:italic;border-radius:8px;font-family:Georgia,serif;font-size:1.1rem;line-height:1.6}.team-section{margin-top:60px}.commitment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:25px;gap:25px;margin-top:30px}.commitment-card{padding:25px 20px;border-radius:10px;text-align:center;transition:transform .3s ease;background:rgba(255,255,255,.1)}.commitment-card:hover{transform:translateY(-5px)}.commitment-card h3{color:var(--celtic-accent);margin-bottom:15px;font-size:1.3rem}.commitment-card p{color:rgba(255,255,255,.9)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:25px;gap:25px;margin-top:30px}.value-card{padding:25px 20px;border-radius:10px;transition:transform .3s ease;background:rgba(255,255,255,.1)}.value-card:hover{transform:translateY(-5px)}.value-card h3{color:var(--celtic-accent);margin-bottom:15px;font-size:1.5rem}.value-card p{color:rgba(255,255,255,.9);line-height:1.5}.story-text{line-height:1.8}.story-text p{margin-bottom:20px}.filters-container{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;align-items:end;margin-bottom:20px;padding:20px;background:rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-filter{flex:1 1;min-width:250px;position:relative}.search-input{width:90%;padding:12px 15px 12px 40px;border:2px solid rgba(255,255,255,.3);border-radius:25px;font-size:1rem;background:rgba(255,255,255,.9);color:var(--celtic-text);transition:all .3s ease}.search-input:focus{outline:none;border-color:var(--celtic-accent);box-shadow:0 0 0 3px rgba(212,175,55,.2);background:var(--celtic-white)}.search-filter:before{content:"🔍";position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--celtic-text-light)}.filter-group{display:flex;flex-direction:column;min-width:150px}.filter-group label{margin-bottom:8px;font-weight:600;color:var(--celtic-white);font-size:.9rem}.filter-select{padding:12px 15px;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:1rem;background:rgba(255,255,255,.9);color:var(--celtic-text);cursor:pointer;transition:all .3s ease}.filter-select:focus{outline:none;border-color:var(--celtic-accent);box-shadow:0 0 0 3px rgba(212,175,55,.2);background:var(--celtic-white)}.results-count{text-align:center;margin-top:15px;color:rgba(255,255,255,.9);font-style:italic;font-size:.9rem}.business-category{margin:10px 0}.category-tag{display:inline-block;padding:5px 12px;background:var(--celtic-accent);color:var(--celtic-dark);border-radius:20px;font-size:.8rem;font-weight:700;text-transform:capitalize}footer{background-color:var(--celtic-dark);color:var(--celtic-white);text-align:center;padding:30px 20px;margin-top:50px}.footer-content{max-width:800px;margin:0 auto}@media (max-width:1024px){.commitment-grid,.listings-grid,.values-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.hero h1{font-size:2.5rem}.hero p{font-size:1.1rem}.hero-content{padding:30px 20px}.commitment-grid,.listings-grid,.values-grid{grid-template-columns:1fr}nav ul{flex-direction:column}nav li{margin:10px 0}.filters-container{flex-direction:column;align-items:stretch}.filter-group,.search-filter{min-width:100%}.form-grid{grid-template-columns:1fr}}.card,.card h2,.card h3,.card p{text-align:center}.story-text{text-align:left;max-width:800px;margin:0 auto}.celtic-quote{margin:30px auto;max-width:600px}.celtic-quote,.celtic-quote h3,.celtic-quote p{text-align:center}.values-grid{justify-items:center}.value-card{text-align:center;max-width:300px}@media (max-width:768px){.story-text{text-align:left;padding:0 10px}}.celtic-map{border-radius:10px;border:2px solid var(--celtic-accent);overflow:hidden}.celtic-marker{background-image:url(/images/celtic-pin.png);background-size:cover;width:40px;height:50px;cursor:pointer}.leaflet-container{height:400px;width:100%;z-index:1}.mapboxgl-canvas{border-radius:12px;box-shadow:0 8px 20px rgba(0,0,0,.25);border:3px solid var(--celtic-accent);filter:saturate(1.2) contrast(1.1)}.custom-marker{filter:drop-shadow(0 4px 8px rgba(0,0,0,.5));transition:all .3s ease;z-index:100}.custom-marker:hover{transform:scale(1.15) translateY(-5px);filter:drop-shadow(0 6px 12px rgba(0,0,0,.6))}.mapboxgl-popup{max-width:260px!important;z-index:100;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.mapboxgl-popup-content{border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.3);border:3px solid var(--celtic-accent);background:linear-gradient(135deg,#fff9e6,#ffffff);padding:15px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.mapboxgl-popup-content h3{color:var(--celtic-dark);margin:0 0 8px;font-size:1.1rem;border-bottom:2px solid var(--celtic-accent);padding-bottom:5px}.mapboxgl-popup-content p{color:var(--celtic-text);margin:0;font-size:.9rem}.mapboxgl-popup-close-button{font-size:18px;padding:5px 8px;color:var(--celtic-dark);background:rgba(255,255,255,.8);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.mapboxgl-ctrl-attrib,.mapboxgl-ctrl-logo{display:none!important}.custom-attribution{position:absolute;bottom:10px;right:10px;background:rgba(255,255,255,.9);padding:4px 8px;border-radius:4px;font-size:10px;z-index:10}.custom-attribution a{color:#3b5998;text-decoration:none;font-weight:700}.custom-attribution a:hover{text-decoration:underline}.nft-carousel-wrapper{background:linear-gradient(135deg,var(--celtic-primary) 0,var(--celtic-dark) 100%);padding:20px 0;border-top:3px solid var(--celtic-accent);border-bottom:3px solid var(--celtic-accent)}.nft-carousel-container{max-width:1200px;margin:0 auto;padding:0 20px}.carousel-header{text-align:center;color:var(--celtic-white);margin-bottom:20px}.carousel-header h2{margin:0 0 10px;font-size:1.8rem}.carousel-header p{margin:0;opacity:.9}.nft-carousel{position:relative;display:flex;align-items:center;justify-content:center;max-width:900px;margin:0 auto}.carousel-viewport{overflow:hidden;width:100%;border-radius:12px;box-shadow:0 5px 15px rgba(0,0,0,.2)}.carousel-track{display:flex;transition:transform .5s ease-in-out}.carousel-slide{flex:0 0 100%;min-width:100%}.nft-ad-card{background:rgba(255,255,255,.95);display:flex;height:250px;border-radius:12px;overflow:hidden}.nft-ad-content{flex:1 1;padding:25px;position:relative;display:flex;flex-direction:column;justify-content:center}.nft-badge{position:absolute;top:15px;right:15px;background:var(--celtic-accent);padding:5px 12px;border-radius:20px;font-size:.8rem}.nft-ad-content h3,.nft-badge{color:var(--celtic-dark);font-weight:700}.nft-ad-content h3{margin:0 0 12px;font-size:1.5rem}.nft-ad-content p{color:var(--celtic-text);margin:0 0 20px;line-height:1.5}.available-tag{background:var(--celtic-primary);color:white;padding:6px 14px;border-radius:15px;font-weight:700;font-size:.8rem;display:inline-block;align-self:flex-start}.nft-ad-cta{flex:0 0 30%;display:flex;align-items:center;justify-content:center;background:rgba(42,110,63,.1);padding:20px}.nft-cta{background:var(--celtic-accent);color:var(--celtic-dark);border:none;font-weight:700;padding:12px 25px}.nft-cta:hover{background:#e0b83a;transform:translateY(-2px)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.9);border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;font-weight:700;color:var(--celtic-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 10px rgba(0,0,0,.1);transition:all .3s ease}.carousel-arrow:hover{background:var(--celtic-accent);transform:translateY(-50%) scale(1.1)}.carousel-arrow-left{left:-20px}.carousel-arrow-right{right:-20px}.carousel-controls{display:flex;justify-content:center;margin-top:20px;gap:10px}.carousel-dot{width:12px;height:12px;border-radius:50%;border:none;background:rgba(255,255,255,.3);cursor:pointer;transition:all .3s ease}.carousel-dot.active{background:var(--celtic-accent);transform:scale(1.2)}@media (max-width:968px){.nft-ad-card{flex-direction:column;height:auto}.nft-ad-cta{padding:15px}.carousel-arrow{width:35px;height:35px}.carousel-arrow-left{left:-15px}.carousel-arrow-right{right:-15px}}@media (max-width:768px){.nft-carousel-container{padding:0 15px}.nft-ad-content{padding:20px}.nft-ad-content h3{font-size:1.3rem}.carousel-arrow{display:none}}@media (max-width:480px){.carousel-header h2{font-size:1.5rem}.nft-ad-content{padding:15px}.nft-ad-content h3{font-size:1.2rem}}.carousel-footer{text-align:center;margin-top:15px;color:var(--celtic-white);opacity:.8;font-size:.9rem}.feature-card a{color:var(--celtic-accent);text-decoration:none}.feature-card a:hover{text-decoration:underline}.steps-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:25px;gap:25px}.step-card{background:rgba(255,255,255,.1);padding:25px 20px;border-radius:10px;text-align:center;border:1px solid rgba(255,255,255,.2);flex-direction:column}.step-card,.step-number-circle{display:flex;align-items:center}.step-number-circle{width:50px;height:50px;background:var(--celtic-accent);color:var(--celtic-dark);border-radius:50%;justify-content:center;font-weight:700;font-size:1.5rem;margin-bottom:15px}.step-content h4{color:var(--celtic-accent);margin-bottom:10px}.step-content p{color:rgba(255,255,255,.9);line-height:1.5}