:root{--blue:#24399a;--sky:#23b6e6;--dark:#061322;--white:#fff;--muted:#64748b}*{box-sizing:border-box}body{margin:0;font-family:Cairo,Poppins,sans-serif;background:#f4fbff;color:#0f172a;overflow-x:hidden}a{text-decoration:none;color:inherit}.site-header{min-height:100vh;background:radial-gradient(circle at 15% 15%,#31d5ff55,transparent 25%),linear-gradient(135deg,#ecfbff,#fff 45%,#dff8ff);position:relative}.site-header:after{content:"";position:absolute;inset:auto -5% -90px -5%;height:170px;background:#f4fbff;border-radius:50% 50% 0 0}.navbar{position:fixed;z-index:99;top:18px;left:50%;transform:translateX(-50%);width:min(1160px,92%);display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-radius:24px;background:rgba(255,255,255,.76);backdrop-filter:blur(16px);box-shadow:0 12px 40px #0b4a6f1a}.brand{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--blue);font-size:20px;white-space:nowrap}.brand img{width:180px;height:auto;max-height:92px;object-fit:contain;filter:drop-shadow(0 10px 18px #23b6e633);animation:logoFloat 4s ease-in-out infinite;transition:transform .35s ease,filter .35s ease}.brand:hover img{transform:scale(1.06);filter:drop-shadow(0 14px 24px #23b6e655)}@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}.nav-links{display:flex;align-items:center;gap:18px;font-weight:700}.nav-links a{transition:.3s}.nav-links a:hover{color:var(--sky)}.lang,.menu-btn{border:0;border-radius:14px;padding:10px 14px;background:var(--blue);color:#fff;font-weight:900;cursor:pointer}.menu-btn{display:none}.hero{position:relative;z-index:1;width:min(1160px,92%);margin:auto;display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:36px;padding:150px 0 80px}.eyebrow{color:var(--sky);font-weight:900;letter-spacing:2px}.hero h1{font-size:clamp(34px,5vw,72px);line-height:1.12;margin:10px 0;color:#14287e}.hero p{font-size:19px;color:#334155}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;border-radius:999px;padding:14px 24px;font-weight:900;transition:.3s}.primary{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;box-shadow:0 15px 30px #23b6e644}.ghost{border:2px solid var(--blue);color:var(--blue);background:#fff}.btn:hover{transform:translateY(-4px)}.slider{height:520px;border-radius:34px;position:relative;overflow:hidden;box-shadow:0 30px 70px #084b7430;border:10px solid #fff}.slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:1s}.slide.active{opacity:1;transform:scale(1)}.dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.dot{width:11px;height:11px;border-radius:50%;background:#ffffff99}.dot.active{background:var(--sky);width:28px;border-radius:20px}.section{width:min(1160px,92%);margin:80px auto}.section-title{text-align:center;margin-bottom:34px}.section-title span{color:var(--sky);font-weight:900}.section-title h2{font-size:clamp(28px,4vw,46px);margin:8px 0;color:#13277c}.about-grid,.cards,.location-grid,.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.glass-card,.card,.loc,.info-panel,.contact-form{background:rgba(255,255,255,.85);border:1px solid #dff3ff;border-radius:28px;padding:28px;box-shadow:0 18px 55px #0d62881a}.glass-card h3,.card h3,.loc h3{color:var(--blue);font-size:24px}.card{position:relative;overflow:hidden}.card b{font-size:54px;color:#d7f3ff}.product-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;background:linear-gradient(135deg,#fff,#e6faff);border-radius:34px;padding:26px;box-shadow:0 25px 60px #0c70961a}.product-wrap img{width:100%;border-radius:28px}.product-wrap h3{font-size:38px;color:var(--blue)}.badges{display:flex;gap:10px;flex-wrap:wrap}.badges span{background:#fff;border:1px solid #cdefff;border-radius:999px;padding:10px 14px;font-weight:900;color:var(--blue)}.location-grid{grid-template-columns:1fr 1fr}.map iframe{width:100%;height:360px;border:0;border-radius:30px;margin-top:22px;box-shadow:0 20px 50px #0d62881a}.contact-grid{grid-template-columns:1.2fr .8fr}.contact-form{display:grid;gap:14px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #caeafa;border-radius:18px;padding:14px 16px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sky);box-shadow:0 0 0 4px #23b6e622}.info-panel{background:linear-gradient(135deg,#11227e,#18b9e8);color:#fff}.info-panel h3{font-size:34px}.info-panel p{font-size:18px}footer{text-align:center;padding:30px;background:#061322;color:#dbeafe}.reveal{opacity:0;transform:translateY(35px);transition:.8s}.reveal.show{opacity:1;transform:none}html[dir="ltr"] body{font-family:Poppins,Cairo,sans-serif}.bubble{position:fixed;bottom:-30px;width:18px;height:18px;border:2px solid #72e7ff;border-radius:50%;animation:rise 9s linear infinite;z-index:0;opacity:.55}@keyframes rise{to{transform:translateY(-110vh) scale(1.7);opacity:0}}@media(max-width:900px){.brand img{width:130px;max-height:70px}.brand{font-size:17px}.menu-btn{display:block}.nav-links{position:absolute;top:78px;left:0;right:0;background:#fffffff2;border-radius:24px;padding:18px;flex-direction:column;display:none}.nav-links.open{display:flex}.hero,.product-wrap,.contact-grid{grid-template-columns:1fr}.slider{height:360px}.about-grid,.cards,.location-grid{grid-template-columns:1fr}.hero{text-align:center}.hero-actions{justify-content:center}}

/* Contact form validation */
.form-group{width:100%;display:flex;flex-direction:column;gap:6px}
.contact-form input.is-invalid,.contact-form textarea.is-invalid{border-color:#ef4444!important;background:#fff5f5!important;box-shadow:0 0 0 4px rgba(239,68,68,.10)!important}
.contact-form input.is-valid,.contact-form textarea.is-valid{border-color:#22c55e!important;background:#f0fdf4!important;box-shadow:0 0 0 4px rgba(34,197,94,.10)!important}
.error-msg{min-height:18px;color:#dc2626;font-size:13px;font-weight:700;text-align:start;line-height:1.5}
.form-alert{padding:12px 14px;border-radius:16px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-weight:700;line-height:1.7}

/* Same-page input errors */
.form-group{position:relative;width:100%;display:flex;flex-direction:column;gap:7px}
.contact-form input,.contact-form textarea{transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}
.contact-form input.is-invalid,.contact-form textarea.is-invalid{border-color:#ef4444!important;background:#fff5f5!important;box-shadow:0 0 0 4px rgba(239,68,68,.12)!important}
.contact-form input.is-valid,.contact-form textarea.is-valid{border-color:#22c55e!important;background:#f0fdf4!important;box-shadow:0 0 0 4px rgba(34,197,94,.10)!important}
.error-msg{display:block;min-height:20px;color:#dc2626;font-size:13px;font-weight:800;text-align:start;line-height:1.5;padding-inline-start:4px}
.form-group:has(input.is-invalid)::after,.form-group:has(textarea.is-invalid)::after{content:"✖";position:absolute;top:14px;inset-inline-end:14px;color:#ef4444;font-weight:900}
.form-group:has(input.is-valid)::after,.form-group:has(textarea.is-valid)::after{content:"✓";position:absolute;top:14px;inset-inline-end:14px;color:#22c55e;font-weight:900}
.contact-form input.is-invalid,.contact-form input.is-valid{padding-inline-end:42px}
.form-alert{padding:13px 15px;border-radius:16px;font-weight:800;line-height:1.7;text-align:start}
.form-alert.error{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
.form-alert.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}
.contact-form button:disabled{opacity:.65;cursor:not-allowed;transform:none!important}
