Refine mobile header spacing
هذا الالتزام موجود في:
@@ -249,14 +249,18 @@
|
|||||||
line-height: 1.08;
|
line-height: 1.08;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand-mobile,
|
.navbar-brand-mobile {
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
.hero-title-mobile-lines {
|
.hero-title-mobile-lines {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
gap: 0.08em;
|
gap: 0.08em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand-mobile span,
|
|
||||||
.hero-title-mobile-lines span {
|
.hero-title-mobile-lines span {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
@@ -663,16 +667,18 @@
|
|||||||
.navbar-layout {
|
.navbar-layout {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: stretch;
|
align-items: stretch;
|
||||||
gap: 0.875rem;
|
gap: 0.7rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand-link {
|
.navbar-brand-link {
|
||||||
max-width: none;
|
max-width: none;
|
||||||
|
order: 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand-lockup {
|
.navbar-brand-lockup {
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
gap: 0.875rem;
|
align-items: center;
|
||||||
|
gap: 0.75rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand-copy {
|
.navbar-brand-copy {
|
||||||
@@ -685,12 +691,15 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-logo-image {
|
.navbar-logo-image {
|
||||||
height: 52px;
|
height: 48px;
|
||||||
width: 52px;
|
width: 48px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-mobile-controls {
|
.navbar-mobile-controls {
|
||||||
align-self: flex-start;
|
order: 1;
|
||||||
|
width: 100%;
|
||||||
|
justify-content: flex-start;
|
||||||
|
align-self: stretch;
|
||||||
}
|
}
|
||||||
|
|
||||||
.site-container {
|
.site-container {
|
||||||
@@ -718,15 +727,18 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-shell .type-brand {
|
.navbar-shell .type-brand {
|
||||||
font-size: clamp(25px, 8.2vw, 32px);
|
font-size: clamp(20px, 6.1vw, 24px);
|
||||||
line-height: 1.03;
|
line-height: 1.08;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-shell .type-label {
|
.navbar-specialty {
|
||||||
display: block;
|
display: block;
|
||||||
max-width: 17rem;
|
white-space: nowrap;
|
||||||
font-size: 13px;
|
overflow: hidden;
|
||||||
letter-spacing: 0.1em;
|
text-overflow: ellipsis;
|
||||||
|
font-size: 11px;
|
||||||
|
letter-spacing: 0.06em;
|
||||||
|
line-height: 1.35;
|
||||||
}
|
}
|
||||||
|
|
||||||
.type-page-title {
|
.type-page-title {
|
||||||
@@ -805,7 +817,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-shell .type-brand {
|
.navbar-shell .type-brand {
|
||||||
font-size: clamp(22px, 7.4vw, 28px);
|
font-size: clamp(18px, 5.8vw, 22px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.contact-card {
|
.contact-card {
|
||||||
|
|||||||
@@ -11,9 +11,6 @@ export function Navbar({ language }: { language: Language }) {
|
|||||||
const t = portfolioContent[language].ui;
|
const t = portfolioContent[language].ui;
|
||||||
const brandName = language === "ar" ? sharedProfile.brandNameAr : sharedProfile.brandNameEn;
|
const brandName = language === "ar" ? sharedProfile.brandNameAr : sharedProfile.brandNameEn;
|
||||||
const basePath = getBasePath(language);
|
const basePath = getBasePath(language);
|
||||||
const brandParts = brandName.trim().split(/\s+/);
|
|
||||||
const mobileBrandLines =
|
|
||||||
brandParts.length > 2 ? [`${brandParts[0]} ${brandParts[1]}`, brandParts.slice(2).join(" ")] : [brandName];
|
|
||||||
|
|
||||||
const navItems = [
|
const navItems = [
|
||||||
{ label: t.navAbout, href: `${basePath}#about` },
|
{ label: t.navAbout, href: `${basePath}#about` },
|
||||||
@@ -46,11 +43,9 @@ export function Navbar({ language }: { language: Language }) {
|
|||||||
{brandName}
|
{brandName}
|
||||||
</p>
|
</p>
|
||||||
<p className="type-brand display-face navbar-brand-mobile text-[var(--color-ink)] sm:hidden">
|
<p className="type-brand display-face navbar-brand-mobile text-[var(--color-ink)] sm:hidden">
|
||||||
{mobileBrandLines.map((line) => (
|
{brandName}
|
||||||
<span key={line}>{line}</span>
|
|
||||||
))}
|
|
||||||
</p>
|
</p>
|
||||||
<p className="type-label mt-1 hidden tracking-[0.18em] text-[var(--color-muted)] sm:block">
|
<p className="type-label navbar-specialty mt-1 tracking-[0.18em] text-[var(--color-muted)]">
|
||||||
{t.architectureEngineer}
|
{t.architectureEngineer}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
المرجع في مشكلة جديدة
حظر مستخدم