:root{
--blue:#03adfc;
--blue-deep:#038bd0;
--red:#e5252a;
--red-deep:#b91722;
--dark:#17212b;
--ink:#26313b;
--muted:#5e6b76;
--surface:#f5f7fa;
--shadow:0 18px 40px rgba(5,25,40,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Arial,sans-serif;color:var(--ink);line-height:1.6;background:#fff}
html{scroll-behavior:smooth}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(16px,4vw,44px);background:rgba(12,28,40,.88);backdrop-filter:blur(14px);box-shadow:0 12px 34px rgba(0,0,0,.22)}
.brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:900;text-decoration:none;letter-spacing:.01em;white-space:nowrap}
.brand img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 2px 0 rgba(255,255,255,.7)) drop-shadow(0 8px 14px rgba(0,0,0,.32))}
.brand span{font-size:1.05rem;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.nav-buttons{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.social-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:.92rem;font-weight:800;text-decoration:none;background:rgba(255,255,255,.08);transition:background-color .2s ease,transform .2s ease,border-color .2s ease}
.social-link:hover,.social-link:focus-visible{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5);transform:translateY(-2px)}
.facebook-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#1877f2;color:#fff;font-family:Arial,sans-serif;font-size:18px;font-weight:900;line-height:1}
.hero{position:relative;min-height:calc(100vh - 82px);background:url('../images/20231213_174551.jpg') center 48%/cover fixed no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden}
.overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,18,28,.58),rgba(4,18,28,.42) 42%,rgba(4,18,28,.72))}
.hero-content{position:relative;max-width:960px;padding:24px}
h1{font-size:clamp(3rem,8vw,5.5rem);line-height:.95;text-wrap:balance;text-shadow:0 4px 22px rgba(0,0,0,.5)}
h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin-bottom:10px}
.hero p{font-size:clamp(1.05rem,2.4vw,1.4rem);margin:22px auto 38px;max-width:760px;color:rgba(255,255,255,.94);text-shadow:0 2px 14px rgba(0,0,0,.45)}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:58px;min-width:205px;padding:16px 28px;border-radius:999px;font-weight:800;text-decoration:none;color:#fff;letter-spacing:.01em;box-shadow:0 12px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.28);transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease}
.site-header .btn{min-height:42px;min-width:0;padding:10px 16px;font-size:.92rem;box-shadow:0 8px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.25)}
.btn:focus-visible{outline:3px solid rgba(255,255,255,.88);outline-offset:4px}
.blue{background:var(--blue)}
.blue:hover,.blue:focus-visible{background:var(--blue-deep)}
.btn:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 20px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.34)}
.btn:active{transform:translateY(-1px) scale(.99)}
.container{max-width:1100px;margin:auto;padding:80px 20px}
.about{text-align:center}
.about p{max-width:800px;margin:20px auto;color:var(--muted);font-size:1.05rem}
.cards{background:var(--surface)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}
.card{display:flex;flex-direction:column;background:#fff;border-radius:8px;padding:30px;box-shadow:0 10px 25px rgba(13,31,44,.1);border-top:5px solid var(--blue);transition:transform .2s ease,box-shadow .2s ease}
.card:nth-child(2){border-top-color:var(--red)}
.card:nth-child(3){border-top-color:var(--blue-deep)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.card h3{margin-bottom:12px;font-size:1.35rem;line-height:1.2}
.card p{color:var(--muted)}
.textlink{display:inline-block;margin-top:auto;padding-top:20px;color:var(--blue-deep);font-weight:800;text-decoration:none;transition:color .2s ease,transform .2s ease}
.textlink:hover{color:var(--red);transform:translateX(3px)}
.image-panel{position:relative;min-height:72vh;background-position:center;background-size:cover;background-attachment:fixed;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.image-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,18,28,.08),rgba(4,18,28,.72))}
.image-panel-race{background-image:url('../images/699127176_1446663664168294_6651719290281735819_n.jpg');background-position:center 26%}
.image-panel-content{position:relative;width:min(760px,100%);padding:clamp(32px,7vw,86px) clamp(20px,6vw,72px)}
.image-panel h2{font-size:clamp(2.4rem,6vw,4.8rem);text-shadow:0 4px 22px rgba(0,0,0,.45)}
.image-panel p{max-width:620px;margin-top:14px;font-size:clamp(1.05rem,2.2vw,1.35rem);text-shadow:0 2px 14px rgba(0,0,0,.45)}
.why{background:linear-gradient(135deg,var(--blue-deep),#116b91);color:#fff;text-align:center}
.why ul{list-style:none;max-width:660px;margin:30px auto 0;text-align:left;font-size:1.1rem}
.why li{position:relative;margin:15px 0;padding-left:34px}
.why li::before{content:"";position:absolute;left:0;top:.35em;width:18px;height:18px;border-radius:50%;background:#fff}
.why li::after{content:"";position:absolute;left:6px;top:.63em;width:6px;height:10px;border:solid var(--blue-deep);border-width:0 3px 3px 0;transform:rotate(45deg)}
.contact{background:#fff}
.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}
.contact p{max-width:680px;margin-top:14px;color:var(--muted);font-size:1.08rem}
.contact-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.contact-btn{gap:10px;white-space:nowrap}
.contact-social{color:var(--ink);border-color:rgba(23,33,43,.18);background:var(--surface)}
.contact-social:hover,.contact-social:focus-visible{background:#e9eef3;border-color:rgba(23,33,43,.28)}
footer{background:var(--dark);color:#fff;text-align:center;padding:35px 20px}
footer p+p{margin-top:6px;color:rgba(255,255,255,.78)}
footer a{color:#fff;font-weight:800;text-decoration:none}
footer a:hover{text-decoration:underline}
.faq-chat{position:fixed;right:22px;bottom:22px;z-index:20;font-family:Arial,sans-serif}
.faq-chat-toggle{min-height:52px;padding:14px 20px;border:0;border-radius:999px;background:var(--blue);color:#fff;font-weight:900;box-shadow:0 14px 32px rgba(0,0,0,.24);cursor:pointer;transition:background-color .2s ease,transform .2s ease}
.faq-chat-toggle:hover,.faq-chat-toggle:focus-visible{background:var(--blue-deep);transform:translateY(-2px)}
.faq-chat-panel{position:absolute;right:0;bottom:68px;width:min(380px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 120px));display:flex;flex-direction:column;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 22px 60px rgba(0,0,0,.28);border:1px solid rgba(23,33,43,.12)}
.faq-chat-panel[hidden]{display:none}
.faq-chat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px;background:var(--dark);color:#fff}
.faq-chat-header strong{display:block;font-size:1rem}
.faq-chat-header span{display:block;margin-top:2px;color:rgba(255,255,255,.78);font-size:.88rem}
.faq-chat-close{border:0;background:transparent;color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.faq-chat-messages{display:flex;flex-direction:column;gap:10px;padding:16px;overflow:auto;background:var(--surface)}
.chat-message{max-width:88%;padding:11px 13px;border-radius:12px;font-size:.95rem;line-height:1.45}
.chat-message.bot{align-self:flex-start;background:#fff;color:var(--ink);box-shadow:0 6px 16px rgba(13,31,44,.08)}
.chat-message.user{align-self:flex-end;background:var(--blue);color:#fff}
.faq-suggestions{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 14px;background:var(--surface)}
.faq-suggestions button{border:1px solid rgba(3,139,208,.22);border-radius:999px;background:#fff;color:var(--blue-deep);font-weight:800;padding:8px 10px;cursor:pointer}
.faq-suggestions button:hover,.faq-suggestions button:focus-visible{border-color:var(--blue);background:#eef9ff}
.faq-chat-form{display:flex;gap:8px;padding:14px;background:#fff;border-top:1px solid rgba(23,33,43,.1)}
.faq-chat-form input{min-width:0;flex:1;border:1px solid rgba(23,33,43,.18);border-radius:999px;padding:11px 13px;font:inherit}
.faq-chat-form button{border:0;border-radius:999px;background:var(--blue);color:#fff;font-weight:900;padding:0 16px;cursor:pointer}
.faq-chat-form button:hover,.faq-chat-form button:focus-visible{background:var(--blue-deep)}
@media(max-width:700px){
.site-header{align-items:stretch;gap:10px;flex-direction:column;padding:10px 14px}
.brand{justify-content:center}
.brand img{width:48px;height:48px}
.nav-buttons{display:grid;grid-template-columns:1fr;gap:8px}
.site-header .btn{width:100%;min-height:40px;font-size:.88rem;padding:9px 12px}
.site-header .social-link{display:none}
.social-link{width:100%;min-height:40px;font-size:.88rem;padding:9px 12px}
.hero{min-height:calc(100vh - 166px);background-attachment:scroll;background-position:center 54%}
.image-panel{min-height:62vh;background-attachment:scroll}
.image-panel-race{background-position:center top}
.btn{width:100%;min-width:0}
.container{padding:64px 20px}
.contact-inner{align-items:stretch;flex-direction:column;text-align:center}
.contact-actions{align-items:stretch;flex-direction:column}
.contact-btn{white-space:normal}
.faq-chat{right:14px;bottom:14px}
.faq-chat-panel{position:fixed;inset:auto 12px 78px 12px;width:auto;max-height:calc(100vh - 110px)}
.faq-chat-toggle{min-height:48px;padding:12px 16px}
}
@media(prefers-reduced-motion:reduce){
.hero,.image-panel{background-attachment:scroll}
}
