/* Olaz Al Sharq - main stylesheet (RTL, mobile-first, no framework). */
:root {
	--olaz-navy-950: #04101f;
	--olaz-navy-900: #071a2e;
	--olaz-navy-800: #0a2440;
	--olaz-navy-700: #0f3157;
	--olaz-navy-100: #dfe8f2;
	--olaz-brand-600: #e2650b;
	--olaz-brand-500: #f58220;
	--olaz-brand-400: #ff9a3d;
	--olaz-brand-100: #ffedd8;
	--olaz-sand-50: #f7f9fc;
	--olaz-sand-100: #eef2f8;
	--olaz-text: #334a66;
	--olaz-muted: #64748b;
	--olaz-radius: 18px;
	--olaz-shadow: 0 1px 2px rgba(7, 26, 46, .04), 0 20px 45px -30px rgba(7, 26, 46, .35);
}

/* ---------- base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: "Tajawal", "Cairo", system-ui, -apple-system, sans-serif; color: var(--olaz-navy-900); line-height: 1.8; background: #fff; }
h1, h2, h3, h4 { font-family: "Cairo", "Tajawal", sans-serif; font-weight: 800; line-height: 1.3; margin: 0 0 .6rem; letter-spacing: -.01em; }
h1 { font-size: clamp(1.75rem, 5vw, 2.9rem); }
h2 { font-size: clamp(1.4rem, 3.4vw, 2.1rem); }
h3 { font-size: 1.0625rem; }
p { margin: 0 0 1rem; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color .18s, background-color .18s; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font-family: inherit; }
:focus-visible { outline: 2px solid var(--olaz-brand-500); outline-offset: 2px; }
::selection { background: var(--olaz-brand-500); color: #fff; }

.olaz-wrap { width: 100%; max-width: 1280px; margin-inline: auto; padding-inline: 1rem; }
@media (min-width: 640px) { .olaz-wrap { padding-inline: 1.5rem; } }
@media (min-width: 1024px) { .olaz-wrap { padding-inline: 2rem; } }

.olaz-skip { position: absolute; right: -9999px; }
.olaz-skip:focus { right: 1rem; top: 1rem; z-index: 999; background: var(--olaz-brand-500); color: #fff; padding: .6rem 1rem; border-radius: .6rem; }
.olaz-hide-sm { display: none; }
@media (min-width: 1024px) { .olaz-hide-sm { display: inline-flex; } }
.olaz-icon { flex: none; }

/* ---------- buttons ---------- */
.olaz-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; border-radius: .85rem; font-weight: 700; font-size: .9375rem; padding: .8rem 1.35rem; border: 1px solid transparent; cursor: pointer; transition: transform .18s, background-color .18s, color .18s, box-shadow .18s; white-space: nowrap; }
.olaz-btn:active { transform: translateY(1px); }
.olaz-btn-primary { background: var(--olaz-brand-500); color: #fff; box-shadow: 0 12px 26px -16px rgba(245, 130, 32, .9); }
.olaz-btn-primary:hover { background: var(--olaz-brand-600); }
.olaz-btn-ghost { background: rgba(255, 255, 255, .1); color: #fff; border-color: rgba(255, 255, 255, .28); }
.olaz-btn-ghost:hover { background: rgba(255, 255, 255, .18); }
.olaz-btn-outline { background: #fff; border-color: var(--olaz-navy-100); color: var(--olaz-navy-800); }
.olaz-btn-outline:hover { border-color: var(--olaz-brand-500); color: var(--olaz-brand-600); }
.olaz-btn-dark { background: var(--olaz-navy-900); color: #fff; }
.olaz-btn-dark:hover { background: var(--olaz-navy-700); }
.olaz-btn-white { background: #fff; color: var(--olaz-brand-600); }
.olaz-btn-white:hover { background: var(--olaz-sand-50); }
.olaz-btn-ghost-dark { background: var(--olaz-navy-900); color: #fff; }
.olaz-btn-lg { padding: .95rem 1.6rem; font-size: 1rem; }
.olaz-btn-block { width: 100%; }

/* ---------- topbar + header ---------- */
.olaz-topbar { background: var(--olaz-navy-950); color: rgba(255, 255, 255, .75); font-size: 13px; display: none; }
@media (min-width: 768px) { .olaz-topbar { display: block; } }
.olaz-topbar-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: .5rem; }
.olaz-topbar-meta { display: flex; align-items: center; gap: 1.25rem; }
.olaz-topbar-meta span, .olaz-topbar-meta a { display: inline-flex; align-items: center; gap: .4rem; }
.olaz-topbar-meta a:hover { color: #fff; }
.olaz-topbar-phone { font-weight: 700; color: #fff; }
.olaz-topbar .olaz-icon { color: var(--olaz-brand-400); }

.olaz-header { position: sticky; top: 0; z-index: 60; background: rgba(7, 26, 46, .96); color: #fff; border-bottom: 1px solid rgba(255, 255, 255, .1); backdrop-filter: blur(8px); }
.olaz-header-inner { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 64px; }
.olaz-brand { display: flex; align-items: center; gap: .6rem; }
.olaz-brand-mark { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--olaz-brand-500); color: #fff; box-shadow: 0 10px 24px -14px rgba(245, 130, 32, .9); }
.olaz-brand-text { display: flex; flex-direction: column; line-height: 1.25; }
.olaz-brand-text strong { font-family: "Cairo", sans-serif; font-size: 1.0625rem; }
.olaz-brand-text em { font-style: normal; font-size: 11px; color: rgba(255, 255, 255, .6); }
.olaz-brand img, .olaz-brand .custom-logo { max-height: 46px; width: auto; }

.olaz-nav { display: none; }
@media (min-width: 1024px) { .olaz-nav { display: block; } }
.olaz-nav-list { display: flex; align-items: center; gap: .15rem; }
.olaz-nav-list a { display: block; padding: .5rem .65rem; border-radius: 8px; font-size: 13.5px; font-weight: 600; color: rgba(255, 255, 255, .8); }
.olaz-nav-list a:hover, .olaz-nav-list .current-menu-item > a, .olaz-nav-list .current_page_item > a { background: rgba(255, 255, 255, .1); color: #fff; }
.olaz-nav-list .sub-menu { position: absolute; background: var(--olaz-navy-900); border: 1px solid rgba(255, 255, 255, .12); border-radius: 12px; padding: .35rem; min-width: 200px; display: none; }
.olaz-nav-list li { position: relative; }
.olaz-nav-list li:hover > .sub-menu { display: block; }

.olaz-header-actions { display: flex; align-items: center; gap: .5rem; }
.olaz-burger { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; border: 1px solid rgba(255, 255, 255, .15); background: rgba(255, 255, 255, .1); color: #fff; cursor: pointer; }
@media (min-width: 1024px) { .olaz-burger { display: none; } }
.olaz-mobile-nav { background: var(--olaz-navy-900); border-top: 1px solid rgba(255, 255, 255, .1); padding: 1rem; }
.olaz-mobile-nav[hidden] { display: none; }
.olaz-mobile-list a { display: flex; justify-content: space-between; padding: .75rem .5rem; font-weight: 700; font-size: 15px; color: rgba(255, 255, 255, .85); border-bottom: 1px solid rgba(255, 255, 255, .06); }
.olaz-mobile-list a:hover { color: #fff; }
.olaz-mobile-cta { display: flex; flex-direction: column; gap: .5rem; margin-top: 1rem; }
@media (min-width: 640px) { .olaz-mobile-cta { flex-direction: row; } }

/* ---------- hero ---------- */
.olaz-hero { position: relative; overflow: hidden; background: var(--olaz-navy-900); color: #fff; padding: 3rem 0; }
.olaz-hero::after { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px); background-size: 22px 22px; pointer-events: none; }
.olaz-hero > .olaz-wrap { position: relative; z-index: 1; }
.olaz-hero-grid { display: grid; gap: 2rem; align-items: center; }
@media (min-width: 1024px) { .olaz-hero-grid { grid-template-columns: 1.05fr .95fr; padding-block: 2rem; } .olaz-hero { padding: 3.5rem 0; } }
.olaz-pill { display: inline-flex; align-items: center; gap: .5rem; border: 1px solid rgba(245, 130, 32, .35); background: rgba(245, 130, 32, .12); color: var(--olaz-brand-400); border-radius: 999px; padding: .35rem .75rem; font-size: 12px; font-weight: 700; }
.olaz-dot { position: relative; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--olaz-brand-500); }
.olaz-lead { color: rgba(255, 255, 255, .7); font-size: 15px; max-width: 42rem; }
.olaz-hero-copy h1 { margin-block: 1rem; }
.olaz-hero-actions { display: flex; flex-direction: column; gap: .75rem; margin-top: 1.5rem; }
@media (min-width: 640px) { .olaz-hero-actions { flex-direction: row; } }
.olaz-hero-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid rgba(255, 255, 255, .12); max-width: 32rem; }
.olaz-hero-stats strong { display: block; font-family: "Cairo", sans-serif; font-size: 1.5rem; }
.olaz-hero-stats span { font-size: 12px; color: rgba(255, 255, 255, .6); }
.olaz-hero-media { position: relative; }
.olaz-hero-media img { border-radius: 26px; width: 100%; height: 320px; object-fit: cover; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6); }
@media (min-width: 640px) { .olaz-hero-media img { height: 420px; } }
@media (min-width: 1024px) { .olaz-hero-media img { height: 480px; } }
.olaz-hero-placeholder { display: grid; place-items: center; height: 300px; border-radius: 26px; background: rgba(255, 255, 255, .06); border: 1px dashed rgba(255, 255, 255, .2); color: rgba(255, 255, 255, .5); }
.olaz-hero-card { position: absolute; inset-inline: 1rem; bottom: 1rem; display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .75rem; border-radius: 16px; background: rgba(4, 16, 31, .72); border: 1px solid rgba(255, 255, 255, .15); backdrop-filter: blur(8px); }
.olaz-hero-card div { display: flex; flex-direction: column; gap: .25rem; }
.olaz-hero-card strong { font-size: 13px; }
.olaz-hero-card span { font-size: 11px; color: rgba(255, 255, 255, .6); }
.olaz-hero-card-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--olaz-brand-500); color: #fff; }
.olaz-hero-inner { padding: 2.5rem 0; }
.olaz-hero-inner h1 { font-size: clamp(1.5rem, 4vw, 2.4rem); }
.olaz-hero-inner p { color: rgba(255, 255, 255, .7); max-width: 46rem; font-size: 15px; }
.olaz-hero-badges { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.olaz-hero-badges span { display: inline-flex; align-items: center; gap: .4rem; border: 1px solid rgba(255, 255, 255, .15); background: rgba(255, 255, 255, .05); border-radius: 999px; padding: .35rem .75rem; font-size: 12px; font-weight: 700; }

.olaz-check-list li { display: flex; align-items: flex-start; gap: .5rem; font-size: 13px; color: rgba(255, 255, 255, .8); }
.olaz-check-list .olaz-icon { color: var(--olaz-brand-400); margin-top: 3px; }
.olaz-check-2 { display: grid; gap: .6rem; margin-top: 1.25rem; }
@media (min-width: 640px) { .olaz-check-2 { grid-template-columns: repeat(2, 1fr); } }

/* ---------- trust bar ---------- */
.olaz-trust { border-bottom: 1px solid var(--olaz-sand-100); background: #fff; }
.olaz-trust-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .75rem; padding-block: 1.25rem; }
@media (min-width: 768px) { .olaz-trust-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .olaz-trust-grid { grid-template-columns: repeat(6, 1fr); } }
.olaz-trust-item { display: flex; align-items: center; gap: .6rem; }
.olaz-trust-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--olaz-brand-100); color: var(--olaz-brand-600); }
.olaz-trust-item strong { display: block; font-size: 12.5px; line-height: 1.3; }
.olaz-trust-item span { font-size: 11px; color: var(--olaz-muted); }

/* ---------- sections ---------- */
.olaz-section { padding: 3.5rem 0; }
@media (min-width: 768px) { .olaz-section { padding: 5.5rem 0; } }
.olaz-section-light { background: var(--olaz-sand-50); }
.olaz-section-dark { background: var(--olaz-navy-900); color: #fff; }
.olaz-section-darker { background: var(--olaz-navy-950); color: #fff; }
.olaz-dark-text, .olaz-section-dark p, .olaz-section-darker p { color: rgba(255, 255, 255, .68); }

.olaz-head { margin-bottom: 2rem; max-width: 46rem; }
.olaz-head-center { margin-inline: auto; text-align: center; max-width: 44rem; }
.olaz-head-row { display: flex; flex-direction: column; gap: 1rem; max-width: none; }
@media (min-width: 768px) { .olaz-head-row { flex-direction: row; align-items: flex-end; justify-content: space-between; } }
.olaz-head p { color: var(--olaz-text); font-size: 15px; margin-top: .5rem; }
.olaz-head-dark p, .olaz-head-dark h2 { color: #fff; }
.olaz-head-dark p { color: rgba(255, 255, 255, .65); }

.olaz-eyebrow { display: inline-flex; align-items: center; gap: .4rem; border-radius: 999px; background: var(--olaz-brand-100); color: var(--olaz-brand-600); font-weight: 700; font-size: 13px; padding: .35rem .85rem; margin-bottom: .75rem; }
.olaz-eyebrow-dark { background: rgba(245, 130, 32, .14); color: var(--olaz-brand-400); }
.olaz-muted { color: var(--olaz-muted); font-size: 12.5px; }

.olaz-grid { display: grid; gap: 1.25rem; }
.olaz-grid-2, .olaz-grid-3 { grid-template-columns: 1fr; }
@media (min-width: 640px) { .olaz-grid-2, .olaz-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .olaz-grid-3 { grid-template-columns: repeat(3, 1fr); } }

/* ---------- cards ---------- */
.olaz-card { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: var(--olaz-radius); box-shadow: var(--olaz-shadow); padding: 1.25rem; }
.olaz-card-service { display: flex; flex-direction: column; transition: transform .2s, box-shadow .2s, border-color .2s; }
.olaz-card-service:hover { transform: translateY(-4px); border-color: rgba(245, 130, 32, .5); }
.olaz-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: .5rem; }
.olaz-icon-box { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--olaz-navy-900); color: var(--olaz-brand-400); transition: background-color .2s, color .2s; }
.olaz-card-service:hover .olaz-icon-box { background: var(--olaz-brand-500); color: #fff; }
.olaz-icon-box-dark { background: rgba(245, 130, 32, .15); color: var(--olaz-brand-400); }
.olaz-icon-box-sm { width: 36px; height: 36px; border-radius: 10px; }
.olaz-price-tag { border-radius: 999px; background: var(--olaz-sand-50); color: var(--olaz-muted); font-size: 11px; font-weight: 700; padding: .25rem .6rem; }
.olaz-card-service p { color: var(--olaz-text); font-size: 13.5px; flex: 1; }
.olaz-card-service .olaz-check-list li { color: var(--olaz-text); font-size: 12px; }
.olaz-card-service .olaz-check-list .olaz-icon { color: var(--olaz-brand-500); }
.olaz-card-link { display: inline-flex; align-items: center; gap: .35rem; margin-top: 1rem; padding-top: .75rem; border-top: 1px solid var(--olaz-sand-100); font-size: 13px; font-weight: 800; color: var(--olaz-navy-800); }
.olaz-card-link:hover { color: var(--olaz-brand-600); }

.olaz-card-dark { background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); border-radius: var(--olaz-radius); padding: 1.25rem; transition: border-color .2s, background-color .2s; }
.olaz-card-dark:hover { border-color: rgba(245, 130, 32, .4); background: rgba(255, 255, 255, .08); }
.olaz-card-dark h3 { color: #fff; }
.olaz-card-dark p { font-size: 13px; color: rgba(255, 255, 255, .6); }
.olaz-num { font-family: "Cairo", sans-serif; font-size: 1.5rem; font-weight: 800; color: rgba(255, 255, 255, .12); }

.olaz-card-flat { display: block; }
.olaz-card-flat:hover { border-color: rgba(245, 130, 32, .5); }
.olaz-card-flat h3 { margin-top: .75rem; }
.olaz-card-flat p { color: var(--olaz-text); font-size: 13px; }

.olaz-card-form h2, .olaz-card-form h3 { font-size: 1.1rem; }
.olaz-card-dark-small { background: var(--olaz-navy-900); color: #fff; border-radius: var(--olaz-radius); padding: 1.25rem; margin-top: 1.25rem; }
.olaz-card-dark-small strong { display: block; font-family: "Cairo", sans-serif; font-size: 1rem; }
.olaz-card-dark-small p { font-size: 12.5px; color: rgba(255, 255, 255, .65); }
.olaz-steps-list li { display: flex; flex-direction: column; gap: .2rem; padding: .5rem 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.olaz-steps-list li:last-child { border-bottom: 0; }
.olaz-steps-list span { font-size: 11.5px; color: rgba(255, 255, 255, .6); }

/* ---------- about ---------- */
.olaz-about-grid { display: grid; gap: 2.5rem; align-items: center; }
@media (min-width: 1024px) { .olaz-about-grid { grid-template-columns: 1fr 1fr; } }
.olaz-about-media { position: relative; }
.olaz-about-media img { border-radius: 24px; height: 300px; width: 100%; object-fit: cover; box-shadow: var(--olaz-shadow); }
@media (min-width: 640px) { .olaz-about-media img { height: 400px; } }
.olaz-float-badge { position: absolute; bottom: -1.25rem; inset-inline-start: 1rem; display: flex; align-items: center; gap: .75rem; background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 16px; padding: .75rem 1rem; box-shadow: 0 18px 40px -24px rgba(7, 26, 46, .45); }
.olaz-float-badge span:first-child { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--olaz-navy-900); color: var(--olaz-brand-400); }
.olaz-float-badge strong { display: block; font-family: "Cairo", sans-serif; font-size: 1.4rem; line-height: 1.1; }
.olaz-float-badge span:last-child { font-size: 11px; color: var(--olaz-muted); font-weight: 600; }
.olaz-text { color: var(--olaz-text); font-size: 15px; }
.olaz-mini-grid { display: grid; gap: .75rem; margin-top: 1.5rem; }
@media (min-width: 640px) { .olaz-mini-grid { grid-template-columns: repeat(2, 1fr); } }
.olaz-mini { display: flex; align-items: flex-start; gap: .75rem; background: var(--olaz-sand-50); border: 1px solid var(--olaz-sand-100); border-radius: 14px; padding: .85rem; }
.olaz-mini > span:first-child { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #fff; color: var(--olaz-brand-600); box-shadow: 0 1px 2px rgba(7, 26, 46, .08); }
.olaz-mini strong { display: block; font-size: 13px; }
.olaz-mini span:last-child { font-size: 11.5px; color: var(--olaz-muted); line-height: 1.6; }
.olaz-about-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1.75rem; }
.olaz-phone-inline { display: inline-flex; align-items: center; gap: .5rem; font-weight: 800; font-size: 14px; }
.olaz-phone-inline span:first-child { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--olaz-brand-100); color: var(--olaz-brand-600); }

/* ---------- carousel ---------- */
.olaz-carousel-controls { display: flex; gap: .5rem; }
.olaz-carousel-controls button { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .15); background: rgba(255, 255, 255, .05); color: #fff; cursor: pointer; }
.olaz-carousel-controls button:hover { background: var(--olaz-brand-500); }
.olaz-carousel { display: flex; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .5rem; scrollbar-width: none; }
.olaz-carousel::-webkit-scrollbar { display: none; }
.olaz-type-card { flex: 0 0 275px; scroll-snap-align: start; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); border-radius: var(--olaz-radius); overflow: hidden; transition: border-color .2s, background-color .2s; }
@media (min-width: 640px) { .olaz-type-card { flex-basis: 320px; } }
.olaz-type-card:hover { border-color: rgba(245, 130, 32, .5); background: rgba(255, 255, 255, .1); }
.olaz-type-media { position: relative; height: 160px; }
.olaz-type-media img { width: 100%; height: 100%; object-fit: cover; }
.olaz-type-warranty { position: absolute; bottom: .5rem; inset-inline-start: .5rem; background: rgba(4, 16, 31, .8); color: var(--olaz-brand-400); border-radius: 999px; padding: .2rem .6rem; font-size: 11px; font-weight: 700; }
.olaz-type-card h3 { padding: 1rem 1rem 0; color: #fff; font-size: 1rem; }
.olaz-type-card p { padding: .5rem 1rem 0; font-size: 13px; color: rgba(255, 255, 255, .65); min-height: 62px; }
.olaz-type-best { display: flex; align-items: center; gap: .35rem; padding: .75rem 1rem; border-top: 1px solid rgba(255, 255, 255, .1); margin-top: .5rem; font-size: 12px; color: rgba(255, 255, 255, .55); }
.olaz-type-best .olaz-icon { color: var(--olaz-brand-400); }

/* ---------- projects ---------- */
.olaz-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.olaz-filter { border: 1px solid var(--olaz-sand-100); background: #fff; color: var(--olaz-text); border-radius: 999px; padding: .45rem .9rem; font-size: 13px; font-weight: 700; cursor: pointer; transition: background-color .18s, color .18s, border-color .18s; }
.olaz-filter:hover { border-color: var(--olaz-brand-400); color: var(--olaz-brand-600); }
.olaz-filter.is-active { background: var(--olaz-navy-900); color: #fff; border-color: var(--olaz-navy-900); }
.olaz-project { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: var(--olaz-radius); overflow: hidden; box-shadow: var(--olaz-shadow); transition: transform .2s; }
.olaz-project:hover { transform: translateY(-3px); }
.olaz-project.is-hidden { display: none; }
.olaz-project-media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--olaz-sand-100); }
.olaz-project-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.olaz-project:hover .olaz-project-media img { transform: scale(1.05); }
.olaz-project-tag { position: absolute; top: .75rem; inset-inline-start: .75rem; background: rgba(7, 26, 46, .85); color: #fff; border-radius: 999px; padding: .2rem .6rem; font-size: 11px; font-weight: 700; }
.olaz-project-meta { position: absolute; inset-inline: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; padding: .75rem; background: linear-gradient(to top, rgba(4, 16, 31, .9), transparent); color: rgba(255, 255, 255, .9); font-size: 12px; }
.olaz-project-meta span { display: inline-flex; align-items: center; gap: .25rem; }
.olaz-project-meta .olaz-icon { color: var(--olaz-brand-400); }
.olaz-project-body { padding: 1rem; }
.olaz-project-body p { font-size: 13px; color: var(--olaz-text); margin: .35rem 0 0; }
.olaz-project-body h3 { font-size: 15px; color: var(--olaz-navy-900); }
.olaz-project:hover .olaz-project-body h3 { color: var(--olaz-brand-600); }

/* ---------- areas ---------- */
.olaz-areas-layout { display: grid; gap: 1.25rem; }
@media (min-width: 1024px) { .olaz-areas-layout { grid-template-columns: 2fr 1fr; } }
.olaz-area-card { display: flex; align-items: flex-start; gap: .75rem; background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 16px; padding: 1rem; box-shadow: var(--olaz-shadow); transition: transform .2s, border-color .2s; }
.olaz-area-card:hover { transform: translateY(-2px); border-color: rgba(245, 130, 32, .5); }
.olaz-area-card strong { display: block; font-size: 14px; color: var(--olaz-navy-900); }
.olaz-area-card strong em { font-style: normal; font-size: 10px; color: #94a3b8; margin-inline-start: .35rem; }
.olaz-area-card .olaz-icon-box { background: var(--olaz-brand-100); color: var(--olaz-brand-600); width: 40px; height: 40px; border-radius: 12px; }
.olaz-map-card { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: var(--olaz-radius); overflow: hidden; box-shadow: var(--olaz-shadow); }
.olaz-map-card iframe { display: block; width: 100%; height: 240px; border: 0; }
.olaz-map-body { padding: 1rem; font-size: 12.5px; color: var(--olaz-text); }
.olaz-map-body strong { display: block; color: var(--olaz-navy-900); margin-bottom: .35rem; }
.olaz-map-body p { display: flex; gap: .35rem; align-items: flex-start; }
.olaz-map-body a { display: inline-flex; align-items: center; gap: .25rem; color: var(--olaz-brand-600); font-weight: 800; margin-top: .5rem; }
.olaz-area-service { display: flex; align-items: center; gap: .75rem; background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 14px; padding: .85rem; transition: border-color .2s; }
.olaz-area-service:hover { border-color: var(--olaz-brand-400); }
.olaz-area-service strong { display: block; font-size: 13px; color: var(--olaz-navy-900); }
.olaz-area-service em { font-style: normal; font-size: 11px; color: var(--olaz-muted); }
.olaz-area-service span:nth-child(2) { flex: 1; }
.olaz-area-service > .olaz-icon:last-child { color: var(--olaz-brand-500); }
.olaz-mini-project { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 14px; overflow: hidden; box-shadow: var(--olaz-shadow); }
.olaz-mini-media img { width: 100%; height: 130px; object-fit: cover; }
.olaz-mini-project figcaption { padding: .75rem; }
.olaz-mini-project strong { display: block; font-size: 12.5px; color: var(--olaz-navy-900); }
.olaz-mini-project span { font-size: 11px; color: var(--olaz-muted); }
.olaz-card-areas strong { display: block; font-size: 13px; margin-bottom: .75rem; }
.olaz-card-areas ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; }
.olaz-card-areas a { display: inline-flex; align-items: center; gap: .35rem; font-size: 12.5px; font-weight: 600; color: var(--olaz-text); }
.olaz-card-areas a:hover { color: var(--olaz-brand-600); }
.olaz-card-areas .olaz-icon { color: var(--olaz-brand-500); }

/* ---------- testimonials ---------- */
.olaz-rating-box { display: flex; align-items: center; gap: .75rem; background: var(--olaz-sand-50); border: 1px solid var(--olaz-sand-100); border-radius: 14px; padding: .75rem 1rem; }
.olaz-rating-box strong { font-family: "Cairo", sans-serif; font-size: 1.75rem; }
.olaz-rating-box span { font-size: 11px; color: var(--olaz-muted); font-weight: 600; }
.olaz-stars { display: inline-flex; gap: 2px; color: var(--olaz-brand-500); }
.olaz-stars span { display: inline-flex; }
.olaz-stars span:not(.is-on) { color: #e2e8f0; }
.olaz-testimonial { display: flex; flex-direction: column; gap: .75rem; }
.olaz-testimonial blockquote { margin: 0; font-size: 13.5px; color: var(--olaz-text); flex: 1; }
.olaz-testimonial figcaption { display: flex; align-items: center; gap: .6rem; padding-top: .75rem; border-top: 1px solid var(--olaz-sand-100); }
.olaz-avatar { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--olaz-navy-900); color: #fff; font-size: 12px; font-weight: 800; }
.olaz-testimonial figcaption strong { display: block; font-size: 12.5px; }
.olaz-testimonial figcaption span { font-size: 11px; color: var(--olaz-muted); }
.olaz-testimonial-dark blockquote { color: rgba(255, 255, 255, .7); font-size: 13.5px; margin: .75rem 0; }
.olaz-testimonial-dark figcaption { font-size: 12px; font-weight: 700; padding-top: .75rem; border-top: 1px solid rgba(255, 255, 255, .1); }

/* ---------- calculator ---------- */
.olaz-calculator { display: grid; gap: 0; background: #fff; border-radius: var(--olaz-radius); overflow: hidden; box-shadow: var(--olaz-shadow); border: 1px solid var(--olaz-sand-100); }
@media (min-width: 1024px) { .olaz-calculator { grid-template-columns: 3fr 2fr; } }
.olaz-calc-form { padding: 1.5rem; display: grid; gap: 1rem; }
.olaz-calc-title { display: flex; align-items: center; gap: .5rem; font-weight: 800; font-size: 14px; color: var(--olaz-brand-600); }
.olaz-calc-form label { display: block; }
.olaz-calc-form label > span, .olaz-range-label > span, .olaz-form label > span, .olaz-form label span:first-child { display: block; font-size: 13px; font-weight: 700; color: var(--olaz-navy-700); margin-bottom: .35rem; }
.olaz-calc-row { display: grid; gap: 1rem; }
@media (min-width: 640px) { .olaz-calc-row { grid-template-columns: 1fr 1fr; } }
.olaz-calc-form select, .olaz-calc-form input, .olaz-form input, .olaz-form select, .olaz-form textarea { width: 100%; border: 1px solid #dbe3ee; border-radius: 12px; background: #fff; padding: .7rem .9rem; font-size: 14px; font-family: inherit; color: var(--olaz-navy-900); }
.olaz-calc-form select:focus, .olaz-calc-form input:focus, .olaz-form input:focus, .olaz-form select:focus, .olaz-form textarea:focus { border-color: var(--olaz-brand-500); box-shadow: 0 0 0 3px rgba(245, 130, 32, .16); outline: none; }
.olaz-calc-form input[type="range"] { padding: 0; border: 0; accent-color: var(--olaz-brand-500); height: 8px; border-radius: 999px; background: var(--olaz-sand-100); }
.olaz-calc-form fieldset { border: 0; padding: 0; margin: 0; }
.olaz-calc-form legend { font-size: 13px; font-weight: 700; color: var(--olaz-navy-700); margin-bottom: .5rem; }
.olaz-extras { display: grid; gap: .5rem; }
@media (min-width: 640px) { .olaz-extras { grid-template-columns: repeat(2, 1fr); } }
.olaz-extra { display: flex !important; align-items: center; gap: .5rem; border: 1px solid var(--olaz-sand-100); border-radius: 12px; padding: .6rem .75rem; font-size: 12.5px; font-weight: 700; color: var(--olaz-text); cursor: pointer; }
.olaz-extra input { width: auto !important; accent-color: var(--olaz-brand-500); }
.olaz-extra:has(input:checked) { border-color: var(--olaz-brand-500); background: rgba(255, 237, 216, .5); color: var(--olaz-navy-900); }
.olaz-calc-result { position: relative; background: var(--olaz-navy-900); color: #fff; padding: 1.5rem; display: flex; flex-direction: column; justify-content: space-between; gap: 1rem; }
.olaz-calc-label { font-size: 12px; font-weight: 800; color: var(--olaz-brand-400); }
.olaz-calc-result strong { display: block; font-family: "Cairo", sans-serif; font-size: 1.75rem; line-height: 1.3; margin-top: .35rem; }
.olaz-calc-result p { font-size: 12px; color: rgba(255, 255, 255, .6); }
.olaz-calc-result ul { border-top: 1px solid rgba(255, 255, 255, .1); padding-top: .75rem; display: grid; gap: .4rem; }
.olaz-calc-result li { display: flex; justify-content: space-between; gap: .5rem; font-size: 12.5px; color: rgba(255, 255, 255, .75); }
.olaz-calc-result li b { color: #fff; }
.olaz-calc-unit { display: block; font-size: 12px; color: var(--olaz-brand-400); font-weight: 700; }
.olaz-calc-result em { font-style: normal; font-size: 11px; color: rgba(255, 255, 255, .5); text-align: center; }

/* ---------- forms ---------- */
.olaz-form { display: grid; gap: 1rem; }
.olaz-form-grid { display: grid; gap: 1rem; }
@media (min-width: 640px) { .olaz-form-grid { grid-template-columns: repeat(2, 1fr); } }
.olaz-form label span:first-child { display: block; font-size: 13px; font-weight: 700; color: var(--olaz-navy-700); margin-bottom: .35rem; }
.olaz-form textarea { resize: vertical; }
.olaz-form-msg { font-size: 13px; font-weight: 700; margin: 0; }
.olaz-form-msg.is-error { color: #dc2626; background: #fef2f2; border-radius: 10px; padding: .6rem .8rem; }
.olaz-form-msg.is-success { color: #15803d; background: #f0fdf4; border-radius: 10px; padding: .6rem .8rem; }
.olaz-form-note { font-size: 11px; color: var(--olaz-muted); text-align: center; margin: 0; }
.olaz-hp { position: absolute !important; inset-inline-start: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.olaz-benefit-list { display: grid; gap: .75rem; margin-top: 1.5rem; }
.olaz-benefit-list li { display: flex; align-items: flex-start; gap: .75rem; border: 1px solid rgba(255, 255, 255, .1); background: rgba(255, 255, 255, .05); border-radius: 14px; padding: .85rem; }
.olaz-benefit-list .olaz-icon { color: var(--olaz-brand-400); }
.olaz-benefit-list strong { display: block; font-size: 13px; color: #fff; }
.olaz-benefit-list span { font-size: 11.5px; color: rgba(255, 255, 255, .6); }
.olaz-quote-layout, .olaz-faq-layout { display: grid; gap: 2rem; }
@media (min-width: 1024px) { .olaz-quote-layout, .olaz-faq-layout { grid-template-columns: 5fr 7fr; } }
.olaz-contact-cols { margin-top: 2rem; }
.olaz-contact-grid { display: grid; gap: 1rem; grid-template-columns: repeat(2, 1fr); margin-bottom: 2rem; }
@media (min-width: 1024px) { .olaz-contact-grid { grid-template-columns: repeat(4, 1fr); } }
.olaz-contact-card { display: flex; flex-direction: column; gap: .35rem; font-size: 12.5px; color: var(--olaz-text); }
.olaz-contact-card:hover { border-color: var(--olaz-brand-400); }
.olaz-contact-card strong { font-size: 13px; color: var(--olaz-navy-900); margin-top: .5rem; }

/* ---------- accordion ---------- */
.olaz-accordion { display: grid; gap: .75rem; }
.olaz-faq-item { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 14px; overflow: hidden; }
.olaz-faq-item[open] { border-color: rgba(245, 130, 32, .55); box-shadow: var(--olaz-shadow); }
.olaz-faq-item summary { display: flex; align-items: center; gap: .6rem; padding: .95rem 1rem; cursor: pointer; font-weight: 800; font-size: 14.5px; color: var(--olaz-navy-900); list-style: none; }
.olaz-faq-item summary::-webkit-details-marker { display: none; }
.olaz-faq-num { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--olaz-brand-100); color: var(--olaz-brand-600); font-size: 11px; font-weight: 800; flex: none; }
.olaz-faq-item summary .olaz-icon { margin-inline-start: auto; color: var(--olaz-navy-700); transition: transform .2s; }
.olaz-faq-item[open] summary .olaz-icon { transform: rotate(180deg); color: var(--olaz-brand-500); }
.olaz-faq-answer { padding: 0 1rem 1rem 1rem; font-size: 13.5px; color: var(--olaz-text); }

/* ---------- blog cards ---------- */
.olaz-card-post { background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: var(--olaz-radius); overflow: hidden; box-shadow: var(--olaz-shadow); transition: transform .2s; }
.olaz-card-post:hover { transform: translateY(-3px); }
.olaz-card-media { position: relative; height: 176px; overflow: hidden; background: var(--olaz-sand-100); }
.olaz-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.olaz-card-post:hover .olaz-card-media img { transform: scale(1.05); }
.olaz-card-tag { position: absolute; top: .75rem; inset-inline-start: .75rem; background: rgba(255, 255, 255, .95); border-radius: 999px; padding: .2rem .6rem; font-size: 11px; font-weight: 800; color: var(--olaz-navy-900); }
.olaz-card-body { padding: 1.25rem; }
.olaz-card-meta { display: flex; gap: .75rem; font-size: 11px; font-weight: 600; color: #94a3b8; }
.olaz-card-meta span { display: inline-flex; align-items: center; gap: .25rem; }
.olaz-card-body h2 { font-size: 1rem; margin: .5rem 0; }
.olaz-card-body p { font-size: 13px; color: var(--olaz-text); }
.olaz-card-post:hover h2 { color: var(--olaz-brand-600); }

/* ---------- article / inner pages ---------- */
.olaz-two-col { display: grid; gap: 2rem; }
@media (min-width: 1024px) { .olaz-two-col { grid-template-columns: 2fr 1fr; align-items: start; } }
.olaz-side-sticky { position: sticky; top: 96px; display: grid; gap: 1.25rem; }
.olaz-article-media img { border-radius: 20px; width: 100%; height: 260px; object-fit: cover; box-shadow: var(--olaz-shadow); }
@media (min-width: 640px) { .olaz-article-media img { height: 340px; } }
.olaz-article-media { margin-bottom: 1.5rem; }
.olaz-page-head { margin-bottom: 1.5rem; }
.olaz-meta { display: flex; flex-wrap: wrap; gap: 1rem; font-size: 12px; color: var(--olaz-muted); margin-top: .5rem; }
.olaz-meta span { display: inline-flex; align-items: center; gap: .35rem; }
.olaz-meta .olaz-icon { color: var(--olaz-brand-500); }
.olaz-content { font-size: 15px; color: var(--olaz-text); }
.olaz-content p { line-height: 1.95; }
.olaz-content h2, .olaz-content h3 { color: var(--olaz-navy-900); margin-top: 1.75rem; }
.olaz-content ul { list-style: disc; padding-inline-start: 1.25rem; margin-bottom: 1rem; }
.olaz-content li { margin-bottom: .35rem; }
.olaz-panel { background: var(--olaz-sand-50); border: 1px solid var(--olaz-sand-100); border-radius: 16px; padding: 1.25rem; margin-top: 1.5rem; }
.olaz-panel-brand { background: rgba(255, 237, 216, .45); border-color: rgba(245, 130, 32, .25); }
.olaz-panel h2 { display: flex; align-items: center; gap: .5rem; font-size: 1.05rem; margin: 0 0 .75rem; }
.olaz-panel .olaz-check-list li { color: var(--olaz-text); font-size: 13px; }
.olaz-panel .olaz-check-list .olaz-icon { color: var(--olaz-brand-600); }
.olaz-block { margin-top: 2rem; }
.olaz-block h2 { font-size: 1.2rem; margin-bottom: 1rem; }
.olaz-steps { display: grid; gap: .75rem; }
@media (min-width: 640px) { .olaz-steps { grid-template-columns: repeat(2, 1fr); } }
.olaz-step { display: flex; gap: .75rem; background: #fff; border: 1px solid var(--olaz-sand-100); border-radius: 14px; padding: 1rem; }
.olaz-step-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; background: var(--olaz-navy-900); color: var(--olaz-brand-400); flex: none; }
.olaz-step strong { font-size: 13px; }
.olaz-step p { font-size: 12px; color: var(--olaz-text); margin: .25rem 0 0; }
.olaz-inline-cta { margin-top: 2rem; background: var(--olaz-sand-50); border: 1px solid var(--olaz-sand-100); border-radius: var(--olaz-radius); padding: 1.5rem; text-align: center; }
.olaz-inline-cta p { color: var(--olaz-text); font-size: 13.5px; }
.olaz-inline-cta-actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; margin-top: 1rem; }
.olaz-share { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--olaz-sand-100); }
.olaz-share > span { font-size: 12.5px; font-weight: 700; color: var(--olaz-muted); }
.olaz-share div { display: flex; gap: .5rem; }
.olaz-share a { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--olaz-sand-50); color: var(--olaz-navy-800); }
.olaz-share a:hover { background: var(--olaz-brand-100); color: var(--olaz-brand-600); }
.olaz-breadcrumbs { margin-bottom: 1.25rem; }
.olaz-breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; font-size: 12.5px; color: rgba(255, 255, 255, .6); }
.olaz-section-light .olaz-breadcrumbs ol, .olaz-article .olaz-breadcrumbs ol, .olaz-wrap > .olaz-breadcrumbs ol { color: var(--olaz-muted); }
.olaz-breadcrumbs a:hover { color: var(--olaz-brand-400); }
.olaz-breadcrumbs li + li::before { content: "‹"; margin-inline-end: .4rem; opacity: .5; }
.olaz-pagination { margin-top: 2rem; }
.olaz-pages { display: flex; flex-wrap: wrap; gap: .35rem; justify-content: center; }
.olaz-pages li a, .olaz-pages li span { display: grid; place-items: center; min-width: 38px; height: 38px; padding: 0 .6rem; border-radius: 10px; border: 1px solid var(--olaz-sand-100); background: #fff; font-size: 13px; font-weight: 700; }
.olaz-pages li span.current { background: var(--olaz-navy-900); color: #fff; border-color: var(--olaz-navy-900); }
.olaz-empty { background: var(--olaz-sand-50); border: 1px dashed var(--olaz-navy-100); border-radius: 14px; padding: 1.5rem; text-align: center; color: var(--olaz-muted); font-size: 13.5px; }

/* ---------- CTA ---------- */
.olaz-cta { background: var(--olaz-brand-500); color: #fff; }
.olaz-cta-inner { display: flex; flex-direction: column; gap: 1.25rem; align-items: center; text-align: center; padding-block: 2.5rem; }
@media (min-width: 768px) { .olaz-cta-inner { flex-direction: row; justify-content: space-between; text-align: start; } }
.olaz-cta h2 { color: #fff; margin: 0; }
.olaz-cta p { color: rgba(255, 255, 255, .88); font-size: 13.5px; margin: .35rem 0 0; }
.olaz-cta-actions { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: center; }

/* ---------- footer ---------- */
.olaz-footer { background: var(--olaz-navy-950); color: rgba(255, 255, 255, .72); }
.olaz-footer-grid { display: grid; gap: 2rem; padding-block: 3rem; }
@media (min-width: 768px) { .olaz-footer-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .olaz-footer-grid { grid-template-columns: repeat(4, 1fr); } }
.olaz-brand-footer { margin-bottom: 1rem; }
.olaz-footer p { font-size: 13px; }
.olaz-footer h3 { color: #fff; font-size: 1rem; margin-bottom: 1rem; }
.olaz-footer-list { display: grid; gap: .6rem; font-size: 13px; }
.olaz-footer-list-2 { grid-template-columns: repeat(2, 1fr); }
.olaz-footer-list a { display: inline-flex; align-items: center; gap: .4rem; }
.olaz-footer-list a:hover { color: var(--olaz-brand-400); }
.olaz-footer-list .olaz-icon { color: var(--olaz-brand-500); }
.olaz-nap { display: grid; gap: .85rem; font-size: 13px; }
.olaz-nap li { display: flex; gap: .6rem; align-items: flex-start; }
.olaz-nap .olaz-icon { color: var(--olaz-brand-400); margin-top: 3px; }
.olaz-nap a:hover { color: var(--olaz-brand-400); }
.olaz-social { display: flex; gap: .5rem; margin-top: 1.25rem; }
.olaz-social a { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: rgba(255, 255, 255, .08); color: rgba(255, 255, 255, .8); }
.olaz-social a:hover { background: var(--olaz-brand-500); color: #fff; }
.olaz-footer-bottom { border-top: 1px solid rgba(255, 255, 255, .1); }
.olaz-footer-bottom-inner { display: flex; flex-direction: column; gap: .75rem; align-items: center; justify-content: space-between; padding-block: 1.25rem; font-size: 12px; color: rgba(255, 255, 255, .55); text-align: center; }
@media (min-width: 640px) { .olaz-footer-bottom-inner { flex-direction: row; text-align: start; } }
.olaz-footer-links { display: flex; gap: 1rem; flex-wrap: wrap; }
.olaz-footer-links a:hover { color: #fff; }

/* ---------- floating buttons ---------- */
.olaz-float { position: fixed; bottom: 1rem; inset-inline-start: 1rem; z-index: 70; display: flex; flex-direction: column; align-items: center; gap: .6rem; }
.olaz-float-wa { position: relative; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: #22c55e; color: #fff; box-shadow: 0 16px 34px -14px rgba(34, 197, 94, .8); transition: transform .18s; }
.olaz-float-wa:hover { transform: scale(1.05); }
.olaz-float-ping { position: absolute; inset: 0; border-radius: 50%; background: rgba(34, 197, 94, .4); animation: olaz-ping 2s cubic-bezier(0, 0, .2, 1) infinite; }
.olaz-float-wa .olaz-icon { position: relative; }
.olaz-float-tip { position: absolute; inset-inline-end: calc(100% + .75rem); white-space: nowrap; background: var(--olaz-navy-900); color: #fff; font-size: 12px; font-weight: 700; padding: .4rem .75rem; border-radius: 10px; opacity: 0; pointer-events: none; transition: opacity .18s; }
.olaz-float-wa:hover .olaz-float-tip { opacity: 1; }
.olaz-float-call { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--olaz-brand-500); color: #fff; box-shadow: 0 12px 26px -14px rgba(245, 130, 32, .9); }
@media (min-width: 640px) { .olaz-float-call { display: none; } }
@keyframes olaz-ping { 75%, 100% { transform: scale(1.9); opacity: 0; } }

/* ---------- 404 ---------- */
.olaz-404 { background: var(--olaz-navy-900); color: #fff; padding: 5rem 0; text-align: center; }
.olaz-404-icon { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 1rem; border-radius: 18px; background: rgba(245, 130, 32, .2); color: var(--olaz-brand-400); }
.olaz-404-code { font-family: "Cairo", sans-serif; font-size: 3rem; font-weight: 800; color: var(--olaz-brand-400); margin: 0; }
.olaz-404 p { color: rgba(255, 255, 255, .65); max-width: 34rem; margin: .75rem auto 0; }
.olaz-404-actions { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: center; margin-top: 1.5rem; }

/* ---------- WooCommerce ---------- */
.olaz-woo .products { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.olaz-cart { display: inline-flex; align-items: center; gap: .35rem; color: #fff; }
.olaz-cart span { background: var(--olaz-brand-500); border-radius: 999px; padding: 0 .4rem; font-size: 11px; font-weight: 800; }

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* ---------- print ---------- */
@media print {
	.olaz-header, .olaz-footer, .olaz-float, .olaz-topbar, .olaz-cta { display: none; }
	body { color: #000; }
}
