:root{--primary-green: #1a472a;--royal-blue: #2d5aa0;--tartan-red: #8b1538;--highland-gold: #ffd700;--cream: #fff8dc;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;min-width:320px;min-height:100vh}#root{width:100%;display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}a{font-weight:500;color:var(--primary-green);text-decoration:inherit}a:hover{color:var(--highland-gold)}*:focus{outline:2px solid var(--highland-gold);outline-offset:2px}img{max-width:100%;height:auto}ul,ol{list-style:none}button{border:none;background:none;cursor:pointer;font-family:inherit;font-size:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header{background:#fff;color:#333;padding:1rem 0;border-bottom:1px solid #e0e0e0;position:relative}.header-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.logo-section{display:flex;flex-direction:column}.logo-with-image{display:flex;align-items:center;gap:1rem}.header-logo-image{height:60px;width:auto}.logo{font-size:2.5rem;font-weight:700;margin:0;color:#8b0000;font-family:Segoe UI,Trebuchet MS,Helvetica Neue,Arial,sans-serif;text-decoration:none;letter-spacing:.15rem;text-shadow:1px 1px 2px rgba(0,0,0,.1);text-transform:uppercase;background:linear-gradient(135deg,#8b0000,brown,#8b0000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative;transition:all .3s ease}@supports not (-webkit-background-clip: text){.logo{background:none;color:#8b0000;-webkit-text-fill-color:initial}}.logo:hover{transform:scale(1.02);text-shadow:2px 2px 4px rgba(0,0,0,.2)}.logo-subtitle{font-size:1rem;margin:0;color:#666;font-style:normal}.nav{display:flex;gap:2rem}.nav-link{color:#8b0000;text-decoration:none;font-size:1rem;font-weight:400;padding:.5rem 1rem;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}.nav-link:hover{text-decoration:underline}.nav-link.active{color:#333;font-weight:700}@media(max-width:768px){.header-container{flex-direction:column;gap:1rem;text-align:center}.logo{font-size:2rem}.nav{gap:1rem}}.footer{background:#bbb4b4;color:#333;margin-top:auto;border-top:1px solid #e0e0e0}.footer-container{max-width:1200px;margin:0 auto;padding:0 2rem}.footer-container:first-child{padding:3rem 2rem 2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer-section h3{color:#8b0000;font-size:1.3rem;margin-bottom:1rem;font-family:Arial,sans-serif}.footer-section h4{color:gold;font-size:1.2rem;margin-bottom:1rem}.footer-section p{margin-bottom:.5rem;opacity:.9}.footer-section ul{list-style:none;padding:0}.footer-section li{margin-bottom:.5rem}.footer-section a{color:#fff;text-decoration:none;transition:color .3s ease}.footer-section a:hover{color:gold}.social-links{display:flex;gap:1rem;margin-top:1rem}.social-links a{font-size:1.5rem;transition:transform .3s ease}.social-links a:hover{transform:scale(1.2)}.footer-bottom{border-top:1px solid rgba(255,215,0,.3);padding:1.5rem 0;text-align:center;background-color:#0003}.footer-bottom p{margin:.5rem 0;opacity:.8}.cookies-notice{font-size:.9rem;margin-top:1rem}.cookie-link{color:gold;text-decoration:underline}.cookie-link:hover{color:#fff}@media(max-width:768px){.footer-container:first-child{grid-template-columns:1fr;text-align:center}.social-links{justify-content:center}}.home{min-height:100vh;background-color:#f0f8ff}.hero{background:url(/mactartan.jpg) repeat;background-size:200px 200px;color:#333;padding:4rem 2rem;text-align:center;min-height:60vh;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e0e0e0;position:relative}.hero:before{content:"";position:absolute;inset:0;background:#ffffff80;z-index:0}.hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.hero h1{font-size:3rem;font-weight:700;margin-bottom:.5rem;color:#8b0000;font-family:Segoe UI,Trebuchet MS,Helvetica Neue,Arial,sans-serif;letter-spacing:.1rem;text-shadow:1px 1px 2px rgba(0,0,0,.1);text-transform:uppercase;background:linear-gradient(135deg,#8b0000,brown,#8b0000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@supports not (-webkit-background-clip: text){.hero h1{background:none;color:#8b0000;-webkit-text-fill-color:initial}}.hero h2{font-size:1.5rem;margin-bottom:1rem;color:#666;font-weight:400}.hero-motto{font-size:1.2rem;margin-bottom:2rem;color:#333;font-weight:400;font-style:italic}.hero-description{font-size:1rem;margin-bottom:3rem;line-height:1.6;max-width:700px;margin-left:auto;margin-right:auto;color:#555}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-button{padding:.75rem 1.5rem;border:1px solid #8B0000;border-radius:4px;font-size:1rem;font-weight:400;cursor:pointer;text-decoration:none;display:inline-block;background:#8b0000;color:#fff}.cta-button.primary{background:#8b0000;color:#fff}.cta-button.primary:hover{background:brown}.competitions{padding:5rem 0;background:linear-gradient(45deg,#1a472a08,#2d5aa008),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23ffd700' stroke-width='1' opacity='0.05'%3E%3Cpath d='M60 15C55 15 55 25 60 30C65 25 65 15 60 15ZM60 30C55 35 45 35 45 45C50 50 60 45 60 45C60 45 70 50 75 45C75 35 65 35 60 30ZM45 45C45 50 55 50 60 55C55 60 45 60 45 65C50 70 60 65 60 65C60 65 70 70 75 65C75 60 65 60 60 55C65 50 75 50 75 45'/%3E%3C/g%3E%3C/svg%3E") repeat,#f8f9fa;background-size:auto,240px 240px,auto}.competitions h2{text-align:center;font-size:2.5rem;margin-bottom:1rem;color:#1a472a;font-family:Georgia,serif}.competitions-intro{text-align:center;font-size:1.1rem;max-width:600px;margin:0 auto 3rem;color:#666;line-height:1.6}.competitions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.competition-card{background:#fff;padding:2.5rem 2rem;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease;border-top:4px solid #ffd700;position:relative;overflow:hidden}.competition-card:before{display:none}.competition-card>*{position:static}.competition-card:hover{transform:none;box-shadow:0 2px 4px #0000001a}.competition-icon{font-size:3rem;margin-bottom:1.5rem}.competition-card h3{font-size:1.5rem;margin-bottom:1.5rem;color:#333;font-family:Arial,sans-serif}.competition-card ul{list-style:none;padding:0;text-align:left}.competition-card li{border-bottom:1px solid #eee;color:#666;position:relative;padding:.5rem 0 .5rem 1.5rem}.competition-card li:before{content:"•";position:absolute;left:0;font-size:1rem;color:#8b0000}.competition-card li:last-child{border-bottom:none}.heritage-quote{padding:4rem 0;background:#f5f5f5;color:#333;text-align:center}.heritage-quote blockquote{font-size:1.5rem;font-style:italic;margin-bottom:2rem;color:#555;font-family:Arial,sans-serif;max-width:800px;margin-left:auto;margin-right:auto}.heritage-quote blockquote:before,.heritage-quote blockquote:after{content:'"';font-size:2rem;color:#8b0000}.quote-context{font-size:1rem;line-height:1.6;max-width:700px;margin:0 auto;color:#666}.cta-section{padding:4rem 0;background:#f0f0f0;color:#333;text-align:center}.cta-section h2{font-size:2rem;margin-bottom:1rem;color:#8b0000}.cta-section p{font-size:1rem;margin-bottom:3rem;color:#666}@media(max-width:768px){.hero h1{font-size:2.5rem}.hero h2{font-size:1.4rem}.hero-buttons{flex-direction:column;align-items:center}.about-content{grid-template-columns:1fr;gap:2rem}.hero-decoration{display:none}.features h2,.about-text h2,.cta-section h2{font-size:2rem}}.about{min-height:100vh;background-color:#f0f8ff}.about-hero{background:url(/mactartan.jpg) repeat;background-size:200px 200px;color:#333;padding:3rem 2rem;text-align:center;border-bottom:1px solid #e0e0e0;position:relative}.about-hero:before{content:"";position:absolute;inset:0;background:#ffffff80;z-index:0}.about-hero>*{position:relative;z-index:1}.about-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#8b0000;font-family:Segoe UI,Trebuchet MS,Helvetica Neue,Arial,sans-serif;letter-spacing:.1rem;text-shadow:1px 1px 2px rgba(0,0,0,.1);text-transform:uppercase;background:linear-gradient(135deg,#8b0000,brown,#8b0000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@supports not (-webkit-background-clip: text){.about-hero h1{background:none;color:#8b0000;-webkit-text-fill-color:initial}}.hero-subtitle{font-size:1.1rem;color:#666;font-style:italic;position:relative;z-index:1}.mission{padding:5rem 0;background:linear-gradient(45deg,rgba(255,215,0,.05) 0%,transparent 50%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%231a472a' opacity='0.03'%3E%3Cpath d='M40 10C35 10 35 20 40 25C45 20 45 10 40 10ZM40 25C35 30 25 30 25 35C30 40 40 35 40 35C40 35 50 40 55 35C55 30 45 30 40 25ZM25 35C25 40 35 40 40 45C35 50 25 50 25 55C30 60 40 55 40 55C40 55 50 60 55 55C55 50 45 50 40 45C45 40 55 40 55 35'/%3E%3C/g%3E%3C/svg%3E") repeat,#f8f9fa;background-size:auto,160px 160px,auto}.mission-content{text-align:center}.mission h2{font-size:2.5rem;margin-bottom:2rem;color:#1a472a;font-family:Georgia,serif}.mission-statement{font-size:1.3rem;line-height:1.6;margin-bottom:4rem;max-width:800px;margin-left:auto;margin-right:auto;color:#333}.mission-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-top:3rem}.mission-point{text-align:left;padding:2rem;background:#fff;border-radius:10px;box-shadow:0 5px 15px #0000001a;border-top:4px solid #ffd700}.mission-point h3{font-size:1.3rem;margin-bottom:1rem;color:#1a472a}.mission-point p{color:#666;line-height:1.6}.board-members{padding:5rem 0;background:radial-gradient(circle at 30% 20%,rgba(26,71,42,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(45,90,160,.05) 0%,transparent 50%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23ffd700' stroke-width='0.5' opacity='0.1'%3E%3Ccircle cx='50' cy='50' r='40'/%3E%3Ccircle cx='50' cy='50' r='25'/%3E%3Ccircle cx='50' cy='50' r='10'/%3E%3C/g%3E%3C/svg%3E") repeat,#fff;background-size:800px 800px,600px 600px,200px 200px,auto}.board-members h2{text-align:center;font-size:2.5rem;margin-bottom:1rem;color:#1a472a;font-family:Georgia,serif}.board-intro{text-align:center;font-size:1.1rem;max-width:600px;margin:0 auto 4rem;color:#666;line-height:1.6}.members-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.member-card{background:#e8f4fd;border-radius:15px;padding:2rem;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease;border-left:5px solid #ffd700}.member-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #00000026}.member-photo{text-align:center;margin-bottom:1.5rem}.member-image{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid #ffd700;box-shadow:0 4px 8px #0000001a;transition:transform .3s ease}.member-image:hover{transform:scale(1.05)}.photo-placeholder{font-size:4rem;color:#1a472a;background:#ffd7001a;border-radius:50%;width:150px;height:150px;display:inline-flex;align-items:center;justify-content:center;border:4px solid #ffd700}.member-info h3{font-size:1.4rem;margin-bottom:.5rem;color:#1a472a;text-align:center}.member-info h4{font-size:1rem;margin-bottom:1.5rem;color:gold;font-weight:600;text-align:center;text-transform:uppercase;letter-spacing:1px}.member-bio{margin-bottom:1.5rem;line-height:1.6;color:#333}.member-qualifications{font-size:.95rem;color:#666;line-height:1.5}.history{padding:5rem 0;background:linear-gradient(45deg,#1a472a,#8b0000);color:#fff}.history h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:gold;font-family:Georgia,serif}.history-timeline{max-width:800px;margin:0 auto;position:relative}.history-timeline:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:3px;height:100%;background:gold}.timeline-item{display:flex;margin-bottom:3rem;position:relative}.timeline-item:nth-child(odd){justify-content:flex-end}.timeline-item:nth-child(2n){justify-content:flex-start}.timeline-item:nth-child(odd) .timeline-content{text-align:right;margin-right:3rem}.timeline-item:nth-child(2n) .timeline-content{text-align:left;margin-left:3rem}.timeline-year{position:absolute;left:50%;transform:translate(-50%);background:gold;color:#1a472a;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:1.1rem;z-index:2}.timeline-content{flex:1;max-width:300px;background:#ffffff1a;padding:2rem;border-radius:10px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.timeline-content h3{color:gold;margin-bottom:1rem;font-size:1.2rem}.timeline-content p{line-height:1.6;opacity:.95}.values{padding:5rem 0;background:#f8f9fa}.values h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#1a472a;font-family:Georgia,serif}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.value-card{background:#fff;padding:2.5rem 2rem;border-radius:15px;text-align:center;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease;border-top:4px solid #ffd700}.value-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #00000026}.value-icon{font-size:3rem;margin-bottom:1.5rem}.value-card h3{font-size:1.5rem;margin-bottom:1rem;color:#1a472a}.value-card p{color:#666;line-height:1.6}.about-cta{padding:5rem 0;background:#1a472a;color:#fff;text-align:center}.about-cta h2{font-size:2.5rem;margin-bottom:1rem;color:gold}.about-cta p{font-size:1.2rem;margin-bottom:3rem;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto}@media(max-width:768px){.about-hero h1{font-size:2.5rem}.mission-points,.members-grid{grid-template-columns:1fr}.member-image{width:120px;height:120px}.photo-placeholder{width:120px;height:120px;font-size:3rem}.timeline-item{justify-content:center!important}.timeline-item .timeline-content{text-align:center!important;margin:0!important;margin-top:4rem!important}.history-timeline:before{display:none}.timeline-year{position:relative;left:auto;transform:none;display:inline-block;margin-bottom:1rem}.values h2,.board-members h2,.mission h2,.history h2,.teachers h2,.membership h2,.sponsorship h2,.about-cta h2{font-size:2rem}}.teachers{padding:5rem 0;background:#f8f9fa}.teachers h2{text-align:center;color:#1a472a;margin-bottom:3rem;font-size:2.5rem}.teachers-intro{text-align:center;margin-bottom:3rem}.teachers-intro p{font-size:1.2rem;color:#666;max-width:800px;margin:0 auto;line-height:1.6}.teachers-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.teacher-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;text-align:center;border:2px solid transparent;transition:all .3s ease}.teacher-card:hover{border-color:gold;transform:translateY(-5px)}.teacher-card h3{color:#1a472a;margin-bottom:1rem;font-size:1.3rem}.teacher-card p{color:#666;line-height:1.6}.find-teacher{background:linear-gradient(135deg,#1a472a,#8b0000);color:#fff;padding:2.5rem;border-radius:12px;text-align:center}.find-teacher h3{margin-bottom:1rem;font-size:1.5rem}.find-teacher a{color:gold;text-decoration:none;font-weight:700}.find-teacher a:hover{text-decoration:underline}.teacher-links{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}.teacher-links .cta-button{display:inline-block;padding:.8rem 1.5rem;border-radius:6px;text-decoration:none;font-weight:700;transition:all .3s ease;min-width:160px;text-align:center}.teacher-links .cta-button.primary{background:#16422f;color:#f5f1e6}.teacher-links .cta-button.secondary{background:transparent;color:#16422f;border:1px solid #16422f}.teacher-links .cta-button:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0003}.teacher-links .cta-button.primary:hover{background:#ffb347}.teacher-links .cta-button.secondary:hover{background:gold;color:#1a472a}.membership{padding:5rem 0;background:linear-gradient(45deg,rgba(255,215,0,.03) 0%,transparent 50%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%231a472a' opacity='0.02'%3E%3Cpath d='M40 10C35 10 35 20 40 25C45 20 45 10 40 10ZM40 25C35 30 25 30 25 35C30 40 40 35 40 35C40 35 50 40 55 35C55 30 45 30 40 25ZM25 35C25 40 35 40 40 45C35 50 25 50 25 55C30 60 40 55 40 55C40 55 50 60 55 55C55 50 45 50 40 45C45 40 55 40 55 35'/%3E%3C/g%3E%3C/svg%3E") repeat;background-size:auto,160px 160px}.membership h2{text-align:center;color:#1a472a;margin-bottom:3rem;font-size:2.5rem}.membership-intro{text-align:center;margin-bottom:3rem}.membership-intro p{font-size:1.2rem;color:#666;max-width:800px;margin:0 auto;line-height:1.6}.membership-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:4rem}.membership-card{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 6px 20px #0000001a;border:3px solid #ffd700;text-align:center;position:relative;overflow:hidden}.membership-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#1a472a,#2d5aa0)}.membership-card h3{color:#1a472a;margin-bottom:1rem;font-size:1.4rem}.price{font-size:2rem;font-weight:700;color:#8b0000;margin-bottom:1.5rem}.membership-card ul{list-style:none;padding:0;text-align:left}.membership-card li{border-bottom:1px solid #eee;position:relative;padding:.5rem 0 .5rem 1.5rem}.membership-card li:before{content:"✓";color:#1a472a;font-weight:700;position:absolute;left:0}.membership-card li:last-child{border-bottom:none}.membership-benefits{margin-bottom:4rem}.membership-benefits h3{text-align:center;color:#1a472a;margin-bottom:2rem;font-size:1.8rem}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.benefit{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 3px 10px #0000001a;border-left:4px solid #ffd700}.benefit strong{color:#1a472a;display:block;margin-bottom:.5rem;font-size:1.1rem}.benefit p{color:#666;margin:0;line-height:1.5}.geographic-coverage{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:3rem}.geographic-coverage h3{text-align:center;color:#1a472a;margin-bottom:2rem;font-size:1.8rem}.districts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.district h4{color:#8b0000;margin-bottom:1rem;font-size:1.2rem;border-bottom:2px solid #ffd700;padding-bottom:.5rem}.district ul{list-style:none;padding:0}.district li{color:#666;position:relative;padding:.3rem 0 .3rem 1rem}.district li:before{content:"•";color:#1a472a;position:absolute;left:0}.membership-cta{background:linear-gradient(135deg,#1a472a,#2d5aa0);color:#fff;padding:3rem;border-radius:12px;text-align:center}.membership-cta h3{margin-bottom:1rem;font-size:1.8rem}.membership-cta a{color:gold;text-decoration:none;font-weight:700}.membership-cta a:hover{text-decoration:underline}.sponsorship{padding:5rem 0;background:#f8f9fa}.sponsorship h2{text-align:center;color:#1a472a;margin-bottom:3rem;font-size:2.5rem}.sponsorship-intro{text-align:center;margin-bottom:3rem}.sponsorship-intro p{font-size:1.2rem;color:#666;max-width:800px;margin:0 auto;line-height:1.6}.support-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:4rem}.support-card{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;text-align:center;border:2px solid transparent;transition:all .3s ease}.support-card:hover{border-color:gold;transform:translateY(-5px)}.support-card h3{color:#1a472a;margin-bottom:1rem;font-size:1.3rem}.support-card p{color:#666;line-height:1.6}.recognition{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:3rem}.recognition h3{text-align:center;color:#1a472a;margin-bottom:2rem;font-size:1.8rem}.sponsors{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.sponsor{text-align:center;padding:1.5rem;border:2px solid #ffd700;border-radius:8px;background:linear-gradient(45deg,#1a472a08,#2d5aa008)}.sponsor strong{color:#1a472a;display:block;margin-bottom:.5rem;font-size:1.2rem}.sponsor p{color:#666;margin:0;font-style:italic}.contact-support{background:linear-gradient(135deg,#1a472a,#2d5aa0);color:#fff;padding:3rem;border-radius:12px;text-align:center}.contact-support h3{margin-bottom:1rem;font-size:1.8rem}.contact-support a{color:gold;text-decoration:none;font-weight:700}.contact-support a:hover{text-decoration:underline}@media(max-width:768px){.teachers-info,.membership-types,.support-ways,.benefits-grid{grid-template-columns:1fr}.districts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.teachers h2,.membership h2,.sponsorship h2{font-size:2rem}.teacher-card,.membership-card,.support-card{padding:1.5rem}.geographic-coverage,.recognition,.find-teacher,.membership-cta,.contact-support{padding:2rem}}.teachers{min-height:100vh;background-color:#f0f8ff}.teachers-hero{padding:4rem 0 3rem;background:url(/mactartan.jpg) repeat;background-size:200px 200px;color:#333;text-align:center;border-bottom:1px solid #e0e0e0;position:relative}.teachers-hero:before{content:"";position:absolute;inset:0;background:#ffffff80;z-index:0}.teachers-hero>*{position:relative;z-index:1}.teachers-hero h1{font-size:2.5rem;margin-bottom:1rem;font-weight:700;color:#8b0000;font-family:Segoe UI,Trebuchet MS,Helvetica Neue,Arial,sans-serif;letter-spacing:.1rem;text-shadow:1px 1px 2px rgba(0,0,0,.1);text-transform:uppercase;background:linear-gradient(135deg,#8b0000,brown,#8b0000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@supports not (-webkit-background-clip: text){.teachers-hero h1{background:none;color:#8b0000;-webkit-text-fill-color:initial}}.hero-subtitle{font-size:1.1rem;margin-bottom:2rem;color:#666;font-weight:400}.hero-description{font-size:1rem;max-width:800px;margin:0 auto;line-height:1.6;color:#555}.district-overview{padding:5rem 0;background:#e8f4fd}.district-overview .container{max-width:1200px;margin:0 auto;padding:0 2rem}.district-overview h2{text-align:center;color:#1a472a;margin-bottom:3rem;font-size:2.5rem}.districts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.district-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;text-align:center;border:2px solid transparent;transition:all .3s ease;position:relative;overflow:hidden}.district-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#1a472a,#2d5aa0)}.district-card:hover{border-color:gold;transform:translateY(-5px)}.district-card h3{color:#1a472a;margin-bottom:.5rem;font-size:1.3rem}.competition-month{color:#2d5aa0;font-weight:700;font-size:1.1rem;margin-bottom:1.5rem}.map-link{display:inline-block;color:gold;text-decoration:none;font-weight:700;padding:.5rem 1rem;background:linear-gradient(135deg,#1a472a,#2d5aa0);border-radius:6px;transition:all .3s ease}.map-link:hover{background:linear-gradient(135deg,#2d5aa0,#1a472a);transform:translateY(-2px)}.honorary-members,.current-teachers{padding:5rem 0}.honorary-members{background:linear-gradient(45deg,rgba(255,215,0,.03) 0%,transparent 50%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='%231a472a' opacity='0.02'%3E%3Cpath d='M40 10C35 10 35 20 40 25C45 20 45 10 40 10ZM40 25C35 30 25 30 25 35C30 40 40 35 40 35C40 35 50 40 55 35C55 30 45 30 40 25ZM25 35C25 40 35 40 40 45C35 50 25 50 25 55C30 60 40 55 40 55C40 55 50 60 55 55C55 50 45 50 40 45C45 40 55 40 55 35'/%3E%3C/g%3E%3C/svg%3E") repeat;background-size:auto,160px 160px}.current-teachers{background:#e8f4fd}.honorary-members h2,.current-teachers h2{text-align:center;color:#1a472a;margin-bottom:1rem;font-size:2.5rem}.section-description{text-align:center;color:#666;font-size:1.1rem;max-width:800px;margin:0 auto 3rem;line-height:1.6}.teachers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.teacher-card{background:#fff;border-radius:12px;box-shadow:0 6px 20px #0000001a;overflow:hidden;transition:all .3s ease;border:2px solid transparent}.teacher-card:hover{border-color:gold;transform:translateY(-5px);box-shadow:0 10px 30px #00000026}.teacher-card.honorary{border:3px solid #ffd700;position:relative}.teacher-card.honorary:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(135deg,#1a472a,gold,#2d5aa0)}.teacher-header{padding:2rem 2rem 1rem;background:linear-gradient(135deg,#1a472a0d,#2d5aa00d)}.teacher-header h3{color:#1a472a;margin-bottom:.5rem;font-size:1.4rem;font-weight:700}.honorary-badge{display:inline-block;background:linear-gradient(135deg,gold,#ffb347);color:#1a472a;padding:.3rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.title-badge{display:inline-block;background:linear-gradient(135deg,#2d5aa0,#1a472a);color:#fff;padding:.3rem 1rem;border-radius:20px;font-size:.85rem;font-weight:700}.teacher-info{padding:0 2rem 2rem}.studio-name{color:#2d5aa0;margin-bottom:1rem;font-size:1.2rem;font-weight:600}.assistant{color:#666;font-style:italic;margin-bottom:1rem;font-size:.95rem}.contact-info{margin-bottom:1.5rem}.contact-info p{margin-bottom:.5rem;color:#555;font-size:.95rem;line-height:1.4}.contact-info a{color:#2d5aa0;text-decoration:none;font-weight:500}.contact-info a:hover{color:#1a472a;text-decoration:underline}.teacher-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.district-badge{display:inline-block;background:linear-gradient(135deg,#1a472a,#2d5aa0);color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;flex-shrink:0}.map-button{display:inline-block;background:#16422f;color:#f5f1e6;padding:.45rem .9rem;border-radius:6px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .18s ease;border:1px solid rgba(0,0,0,.06)}.map-button:hover{background:#193f33;transform:translateY(-1px)}.teacher-cta{padding:5rem 0;background:linear-gradient(135deg,#1a472ae6,#2d5aa0e6),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23ffd700' stroke-width='1' opacity='0.1'%3E%3Cpath d='M60 15C55 15 55 25 60 30C65 25 65 15 60 15ZM60 30C55 35 45 35 45 45C50 50 60 45 60 45C60 45 70 50 75 45C75 35 65 35 60 30ZM45 45C45 50 55 50 60 55C55 60 45 60 45 65C50 70 60 65 60 65C60 65 70 70 75 65C75 60 65 60 60 55C65 50 75 50 75 45'/%3E%3C/g%3E%3C/svg%3E") repeat;background-size:auto,240px 240px;color:#fff;text-align:center}.teacher-cta h2{font-size:2.5rem;margin-bottom:1rem;color:#fff}.teacher-cta p{font-size:1.2rem;margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;opacity:.9}.cta-actions{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.cta-button{display:inline-block;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:700;font-size:1.1rem;transition:all .3s ease;min-width:180px;text-align:center}.cta-button.primary{background:#16422f;color:#f5f1e6;border:1px solid rgba(0,0,0,.06)}.cta-button.secondary{background:transparent;color:#16422f;border:1px solid #16422f}.cta-button:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0003}.cta-button.primary:hover{background:linear-gradient(135deg,#ffb347,gold)}.cta-button.secondary:hover{background:gold;color:#1a472a}@media(max-width:1024px){.districts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}}@media(max-width:768px){.teachers-hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.teachers-grid{grid-template-columns:1fr}.districts-grid{grid-template-columns:1fr;gap:1.5rem;max-width:500px;margin:0 auto}.teacher-header{padding:1.5rem 1.5rem 1rem}.teacher-info{padding:0 1.5rem 1.5rem}.teacher-actions{flex-direction:column;align-items:stretch}.district-badge,.map-button{text-align:center}.cta-actions{flex-direction:column;align-items:center}.cta-button{min-width:250px}.section-description{padding:0 1rem}}@media(max-width:480px){.teachers-hero{padding:4rem 0 3rem}.teachers-hero h1{font-size:2rem}.honorary-members,.current-teachers,.district-overview{padding:3rem 0}.honorary-members h2,.current-teachers h2,.district-overview h2{font-size:2rem}.district-card{padding:1.5rem}}.registration{min-height:100vh;background:#f0f8ff}.registration-header{background:url(/mactartan.jpg) repeat;background-size:200px 200px;padding:4rem 2rem 3rem;text-align:center;border-bottom:1px solid #e0e0e0;position:relative}.registration-header:before{content:"";position:absolute;inset:0;background:#ffffff80;z-index:0}.registration-header>*{position:relative;z-index:1}.registration-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:#8b0000;font-family:Segoe UI,Trebuchet MS,Helvetica Neue,Arial,sans-serif;letter-spacing:.1rem;text-shadow:1px 1px 2px rgba(0,0,0,.1);text-transform:uppercase;background:linear-gradient(135deg,#8b0000,brown,#8b0000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@supports not (-webkit-background-clip: text){.registration-header h1{background:none;color:#8b0000;-webkit-text-fill-color:initial}}.registration-subtitle{font-size:1.1rem;color:#666;max-width:600px;margin:0 auto;line-height:1.6}.registration-content{padding:4rem 2rem;display:grid;grid-template-columns:1fr 2fr;gap:4rem;max-width:1200px;margin:0 auto}.registration-info h2{font-size:1.5rem;color:#333;margin-bottom:1.5rem;font-family:Arial,sans-serif}.registration-info ul{list-style:none;padding:0;margin-bottom:2rem}.registration-info li{color:#555;position:relative;padding:.5rem 0 .5rem 1.5rem}.registration-info li:before{content:"✓";position:absolute;left:0;color:#1976d2;font-weight:700}.contact-info{background:#f9f9f9;padding:1.5rem;border-radius:8px;border:1px solid #e0e0e0}.kwika-registration{margin:2rem 0;padding:1.5rem;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.kwika-registration h3{margin-top:0;color:#1976d2;font-size:1.2rem;margin-bottom:.5rem}.kwika-registration p{color:#666;margin-bottom:1rem}.iframe-container{border:1px solid #ddd;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.iframe-container iframe{display:block;width:100%;min-height:600px}.contact-info h3{margin-top:0;color:#1976d2;font-size:1.2rem}.contact-info p{color:#666;margin-bottom:0}.registration-form-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:2rem}.registration-form h2,.registration-form h3{color:#333;font-family:Arial,sans-serif;margin-bottom:1.5rem}.registration-form h2{font-size:1.5rem;margin-top:0;border-bottom:2px solid #1976d2;padding-bottom:.5rem}.registration-form h3{font-size:1.2rem;margin-top:2rem;color:#1976d2}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:Arial,sans-serif;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 2px #1976d21a}.form-group textarea{resize:vertical;min-height:80px}.submit-button{background:#1976d2;color:#fff;border:none;padding:1rem 2rem;border-radius:4px;font-size:1.1rem;font-weight:500;cursor:pointer;width:100%;margin-top:1rem}.submit-button:hover{background:#1565c0}.submit-button:disabled{background:#ccc;cursor:not-allowed}.success-message{background:#d4edda;color:#155724;padding:1rem;border-radius:4px;border:1px solid #c3e6cb;margin:1rem 0}.error-message{background:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;border:1px solid #f5c6cb;margin:1rem 0}@media(max-width:768px){.registration-content{grid-template-columns:1fr;gap:2rem;padding:2rem 1rem}.form-row{grid-template-columns:1fr}.registration-header h1{font-size:2rem}.registration-form-container{padding:1.5rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;background-color:#f0f8ff}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.cta-button{padding:1rem 2rem;border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;font-family:inherit}.cta-button.primary{background:linear-gradient(45deg,gold,#ffed4a);color:#1a472a;box-shadow:0 4px 15px #ffd7004d}.cta-button.primary:hover{transform:translateY(-3px);box-shadow:0 6px 20px #ffd70066}.cta-button.secondary{background:transparent;color:#fff;border:2px solid #ffd700}.cta-button.secondary:hover{background:gold;color:#1a472a;transform:translateY(-3px)}.cta-button.large{padding:1.5rem 3rem;font-size:1.3rem}a:focus,button:focus{outline:2px solid #ffd700;outline-offset:2px}html{scroll-behavior:smooth}
