:root {
  --ink: #0c0d0f;
  --paper: #fff;
  --gold: #d8bc81;
  --gold-dark: #805f27;
  --muted: #696b70;
  --line: #dedfe2;
  --font: "Tajawal", Arial, sans-serif;
  --latin: "Manrope", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body { margin: 0; background: var(--ink); color: var(--ink); font-family: var(--font); font-size: 1.125rem; line-height: 1.75; -webkit-font-smoothing: antialiased; }
html[lang="en"] { --font: "Manrope", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; border-radius: 0; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { font-weight: 700; }
h1, h2 { line-height: 1.22; letter-spacing: -.03em; overflow-wrap: break-word; }
h1 em, h2 em { color: var(--gold-dark); font-style: normal; }
html[lang="en"] h1, html[lang="en"] h2 { line-height: 1.12; letter-spacing: -.055em; }
::selection { background: var(--gold); color: var(--ink); }
:focus-visible { outline: 3px solid #ae8235; outline-offset: 5px; }
.wrap, .header-inner { width: min(1440px, calc(100% - 120px)); margin-inline: auto; }
.section { padding-block: 132px; }
.skip-link { position: fixed; z-index: 100; inset-block-start: 12px; inset-inline-start: 12px; padding: 12px 24px; color: var(--ink); background: var(--gold); transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
.header { position: fixed; top: 0; inset-inline: 0; z-index: 30; color: #fff; background: rgba(9,10,12,.74); border-bottom: 1px solid rgba(255,255,255,.14); backdrop-filter: blur(18px); transition: background .3s; }
.header.scrolled { background: rgba(9,10,12,.97); }
.header-inner { min-height: 99px; display: flex; align-items: center; justify-content: space-between; gap: 38px; }
.brand { display: block; flex-shrink: 0; }
.logo-window { display: block; position: relative; width: 152px; height: 66px; overflow: hidden; background: #fff; }
.logo-window img { position: absolute; width: 183px; max-width: none; height: 183px; top: -57px; left: -17px; }
.header nav { display: flex; align-items: center; gap: 37px; }
.header nav a { min-height: 44px; display: flex; align-items: center; font-size: .9375rem; font-weight: 500; white-space: nowrap; position: relative; }
.header nav a::after { content: ""; position: absolute; inset-inline: 0; bottom: 6px; height: 1px; background: var(--gold); transform: scaleX(0); transition: transform .2s; }
.header nav a:hover::after, .header nav a:focus-visible::after { transform: scaleX(1); }
.header-actions { display: flex; align-items: center; gap: 22px; }
.lang { min-width: 44px; min-height: 44px; padding: 7px 5px; border: 0; background: transparent; color: #fff; font-family: var(--latin); font-size: .875rem; font-weight: 600; }
.lang:hover { color: var(--gold); }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 58px; padding: 14px 30px; color: var(--ink); background: linear-gradient(110deg,#e6d0a1,#c9a362); border: 1px solid #d1b276; box-shadow: inset 0 1px rgba(255,255,255,.3); font-size: 1rem; font-weight: 700; line-height: 1.5; transition: background .2s, border-color .2s, box-shadow .2s; }
.button:hover { background: #efdbad; border-color: #efdbad; box-shadow: 0 5px 24px rgba(194,155,87,.12); }
.header-contact { min-height: 44px; padding: 10px 22px; font-size: .875rem; box-shadow: none; background: transparent; color: var(--gold); border-color: #7b6745; }
.header-contact:hover { color: var(--ink); }
.text-link { display: inline-flex; align-items: center; min-height: 44px; padding-block: 7px 5px; border-bottom: 1px solid currentColor; font-size: 1rem; font-weight: 500; }
.text-link:hover { color: var(--gold); }
.page-progress { height: 2px; position: absolute; inset-inline: 0; bottom: -1px; background: var(--gold); transform: scaleX(var(--progress,0)); transform-origin: right; }
html[dir="ltr"] .page-progress { transform-origin: left; }
.hero { position: relative; color: #fff; background: #141311; isolation: isolate; overflow: hidden; }
.hero-backdrop { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.hero-photo { width: 100%; height: 100%; background: url("event-hall.webp") center 50% / cover no-repeat; animation: scene-drift 24s ease-in-out infinite alternate; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(7,8,10,.22),rgba(7,8,10,.7) 53%,rgba(7,8,10,.94)),linear-gradient(0deg,#0c0d0f 0%,transparent 50%); }
html[dir="ltr"] .hero::before { background: linear-gradient(90deg,rgba(7,8,10,.94),rgba(7,8,10,.7) 53%,rgba(7,8,10,.22)),linear-gradient(0deg,#0c0d0f 0%,transparent 50%); }
.hero-content { position: relative; min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; padding-top: 155px; }
.hero-meta { display: flex; align-items: center; justify-content: space-between; gap: 28px; color: #c9c5bc; font-family: var(--latin); font-size: .75rem; letter-spacing: .13em; }
.hero-meta .eyebrow { font-family: var(--font); color: var(--gold); font-size: 1rem; font-weight: 500; letter-spacing: 0; }
.hero-intro { flex: 1; display: grid; grid-template-columns: 1.6fr .6fr; align-items: center; gap: 75px; padding-block: 70px 92px; }
.hero-main { min-width: 0; animation: enter-scene .9s ease both; }
.hero h1 { font-size: clamp(4rem,6.7vw,7.6rem); font-weight: 800; line-height: 1.25; letter-spacing: -.04em; }
.hero h1 em { color: var(--gold); }
html[lang="en"] .hero h1 { font-size: clamp(3.4rem,6.1vw,6.8rem); line-height: 1.11; font-weight: 600; letter-spacing: -.065em; }
.hero-main > p { max-width: 560px; margin-top: 25px; font-size: 1.25rem; line-height: 1.85; color: #d6d5d2; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 31px; margin-top: 35px; }
.hero-actions .text-link { color: #fff; border-color: #837c6f; }
.hero-actions .text-link:hover { color: var(--gold); }
.hero-detail { min-width: 0; width: 100%; max-width: 310px; justify-self: end; align-self: end; margin-bottom: 3px; border: 1px solid rgba(220,200,163,.35); padding: 18px; background: rgba(11,12,14,.7); backdrop-filter: blur(12px); }
.hero-detail-heading { display: flex; justify-content: space-between; gap: 15px; margin-bottom: 15px; color: #cfb989; font-family: var(--latin); font-size: .75rem; letter-spacing: .09em; }
.hero-detail-image { overflow: hidden; height: 150px; background: #171717; }
.hero-detail-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-detail-copy { padding-top: 17px; }
.hero-detail-copy strong { font-size: 1.125rem; font-weight: 500; }
.hero-detail-copy p { font-size: .875rem; color: #c1beb6; margin-top: 7px; line-height: 1.8; }
.hero-bottom { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 38px; padding-block: 25px 29px; border-top: 1px solid rgba(231,215,181,.24); }
.hero-bottom > div { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; font-size: .9375rem; color: #c2c2c3; }
.hero-location { color: var(--gold); font-family: var(--latin); font-size: .75rem; letter-spacing: .12em; }
.hero-bottom > a { font-size: .9375rem; min-height: 44px; display: inline-flex; align-items: center; border-bottom: 1px solid #807463; }
.hero-bottom > a:hover { color: var(--gold); }
.image-caption { font-size: .75rem; color: #c3c3c3; line-height: 1.5; }
.about, .approach { background: #fff; }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding-bottom: 28px; margin-bottom: 59px; border-bottom: 1px solid var(--line); }
.section-label { font-size: .9375rem; font-weight: 700; }
.small-brand { font-family: var(--latin); font-size: .75rem; color: var(--muted); letter-spacing: .11em; font-weight: 500; }
h2 { font-size: clamp(3rem,4.9vw,5.5rem); }
.about-layout { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 120px; }
.about-title { min-width: 0; }
.about h2 { font-size: clamp(3.3rem,5.1vw,5.7rem); }
.about-signature { display: inline-block; border-top: 1px solid #c5ac7b; color: var(--gold-dark); margin-top: 35px; padding-top: 18px; font-family: var(--latin); font-size: .75rem; letter-spacing: .12em; }
.about-copy { max-width: 540px; }
.about-copy .lead { font-size: 1.5rem; line-height: 1.7; font-weight: 500; margin-bottom: 28px; }
.about-copy > p:not(.lead) { color: var(--muted); font-size: 1.125rem; line-height: 1.95; }
.about-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 68px; border-top: 1px solid var(--line); }
.about-values > div { display: grid; grid-template-columns: 45px 1fr; align-content: start; column-gap: 20px; row-gap: 5px; padding-block: 30px 0; padding-inline-end: 32px; }
.about-values > div + div { border-inline-start: 1px solid var(--line); padding-inline-start: 32px; }
.value-index { font-family: var(--latin); font-size: 1.625rem; font-weight: 400; color: var(--gold-dark); grid-row: span 2; line-height: 1.7; }
.about-values strong { font-size: 1.125rem; font-weight: 700; }
.about-values span:not(.value-index) { font-size: .9375rem; color: var(--muted); line-height: 1.7; }
.services { color: #fff; background: #0c0d0f; }
.services .section-heading { border-color: #34363a; }
.services .small-brand { color: #a7a7a8; }
.services h2 em { color: var(--gold); }
.section-head { display: grid; grid-template-columns: 1.25fr 1fr; align-items: end; gap: 110px; margin-bottom: 63px; }
.section-head > p { color: var(--muted); max-width: 450px; line-height: 1.9; }
.services .section-head > p { color: #b5b6b9; }
.service-list { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); margin-bottom: 35px; border-block: 1px solid #3b3c3e; }
.service-tab { display: flex; flex-direction: column; align-items: start; gap: 13px; position: relative; min-height: 112px; text-align: start; color: #b6b6b8; background: transparent; padding: 22px 21px 24px; border: 0; }
.service-tab + .service-tab { border-inline-start: 1px solid #3b3c3e; }
.service-tab > span { font-family: var(--latin); font-size: .8125rem; color: #898b90; }
.service-tab b { font-size: 1.0625rem; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }
.service-tab::after { content: ""; position: absolute; inset-inline: 0; bottom: -1px; height: 3px; background: var(--gold); transform: scaleX(0); transition: transform .25s; }
.service-tab.active { background: linear-gradient(0deg,rgba(216,188,129,.09),transparent); color: #fff; }
.service-tab.active > span { color: var(--gold); }
.service-tab.active::after { transform: scaleX(1); }
.service-tab:hover { color: var(--gold); }
.service-panel { display: grid; grid-template-columns: 1.3fr 1fr; background: #17191c; border: 1px solid #35363a; min-width: 0; }
.service-image { position: relative; min-height: 560px; overflow: hidden; background: #171717; }
.service-image::after { content: ""; position: absolute; inset: 60% 0 0; background: linear-gradient(transparent,rgba(0,0,0,.63)); pointer-events: none; }
.service-image img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 55% center; }
.service-number { position: absolute; z-index: 1; bottom: 25px; left: 29px; font-family: var(--latin); font-size: 5.5rem; line-height: 1; font-weight: 400; letter-spacing: -.06em; color: #fff; }
.service-image .image-caption { position: absolute; z-index: 1; bottom: 28px; right: 28px; color: #fff; padding: 5px 10px; background: rgba(0,0,0,.62); }
.service-content { padding: 45px 43px; min-width: 0; align-self: center; }
.panel-kicker { color: var(--gold); font-size: .8125rem; font-weight: 500; }
.service-content h3 { font-size: 2.25rem; line-height: 1.4; font-weight: 500; margin-block: 16px 16px; }
.service-content > p { color: #b8b9bd; font-size: 1.0625rem; line-height: 1.9; }
.service-content ul { list-style: none; margin: 23px 0 18px; padding: 0; }
.service-content li { position: relative; padding-block: 12px; padding-inline-start: 20px; border-bottom: 1px solid #393b40; font-size: .9375rem; color: #dbdbdc; line-height: 1.75; }
.service-content li::before { content: ""; position: absolute; width: 7px; height: 1px; background: var(--gold); inset-inline-start: 0; top: 24px; }
.service-content .text-link { margin-top: 11px; color: var(--gold); }
.service-content .text-link:hover { color: #fff; }
.approach-body { display: grid; grid-template-columns: 1.05fr 1fr; gap: 125px; align-items: start; }
.approach .section-head { display: block; position: sticky; top: 140px; margin: 0; }
.approach .section-head > p { margin-top: 29px; }
.steps article { display: grid; grid-template-columns: 80px 1fr; gap: 31px; padding-block: 29px; border-top: 1px solid var(--line); }
.steps article:first-child { border-top-color: var(--ink); padding-top: 20px; }
.steps article:last-child { border-bottom: 1px solid var(--line); }
.step-top { display: flex; flex-direction: column; gap: 4px; font-family: var(--latin); }
.step-top > span { font-size: 2.5rem; font-weight: 400; color: var(--gold-dark); line-height: 1.3; letter-spacing: -.06em; }
.step-top > b { font-size: .75rem; color: var(--muted); font-weight: 500; letter-spacing: .03em; }
.steps h3 { font-size: 1.5rem; line-height: 1.5; font-weight: 700; margin-bottom: 12px; }
.steps p { color: var(--muted); font-size: 1rem; line-height: 1.9; }
.statement { position: relative; min-height: 680px; display: flex; align-items: center; color: #fff; background: #101113; isolation: isolate; }
.statement-image { position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,rgba(8,9,11,.94),rgba(8,9,11,.66) 55%,rgba(8,9,11,.73)),url("conference.webp") center 53% / cover no-repeat; }
.statement-inner { text-align: center; padding-block: 115px 35px; }
.statement .section-label { color: var(--gold); margin-bottom: 42px; }
.statement h2 { font-size: clamp(3.5rem,5.9vw,6.5rem); line-height: 1.25; max-width: 1160px; margin-inline: auto; }
.statement h2 em { color: var(--gold); }
.statement p { max-width: 610px; color: #d0d0d1; margin: 30px auto 0; font-size: 1.125rem; line-height: 1.9; }
.statement-bottom { text-align: start; display: flex; justify-content: space-between; gap: 25px; border-top: 1px solid #5b554b; margin-top: 79px; padding-top: 26px; color: #bdbdbf; font-size: .75rem; }
.statement-bottom > span[lang] { font-family: var(--latin); letter-spacing: .07em; }
.contact { background: #0c0d0f; color: #fff; border-top: 1px solid #333437; }
.contact-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: 115px; align-items: start; }
.contact-layout > div { min-width: 0; }
.contact .section-label { color: var(--gold); margin-bottom: 39px; }
.contact h2 { font-size: clamp(3rem,5.1vw,5.6rem); }
.contact h2 em { color: var(--gold); }
.contact-layout > div > p { margin-top: 27px; max-width: 470px; color: #b4b5b9; line-height: 1.9; }
.contact-details { margin-top: 40px; max-width: 470px; }
.contact-details a { display: flex; flex-direction: column; align-items: start; gap: 6px; padding-block: 20px; border-bottom: 1px solid #3b3b3d; }
.contact-details span { color: #a1a3a9; font-size: .875rem; }
.contact-details strong { font-family: var(--latin); font-size: 1.25rem; line-height: 1.6; font-weight: 500; overflow-wrap: anywhere; }
.contact-details a:hover strong { color: var(--gold); }
.whatsapp { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 11px 20px; border: 1px solid #6e5d3e; color: var(--gold); margin-top: 27px; font-size: .9375rem; font-weight: 500; }
.whatsapp:hover { background: var(--gold); color: var(--ink); }
form { padding: 39px 40px; background: #17191c; border: 1px solid #393b40; min-width: 0; color-scheme: dark; }
.form-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 13px; border-bottom: 1px solid #3a3c41; margin-bottom: 27px; padding-bottom: 23px; }
.form-heading h3 { font-size: 1.5rem; font-weight: 500; line-height: 1.4; }
.form-heading > span { color: #a8a9ac; font-family: var(--latin); font-size: .75rem; letter-spacing: .06em; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 23px; }
form label { display: block; min-width: 0; margin-bottom: 20px; }
form label > span { font-size: .9375rem; font-weight: 500; display: block; margin-bottom: 7px; color: #d4d4d6; }
input, select, textarea { display: block; width: 100%; min-width: 0; padding: 11px 8px; min-height: 49px; font-size: 1rem; line-height: 1.7; color: #fff; background: #17191c; border: 0; border-bottom: 1px solid #606269; transition: border-color .2s, background .2s; }
select { padding-inline: 8px; }
textarea { resize: vertical; min-height: 107px; }
input:hover, select:hover, textarea:hover { border-color: #b8a16f; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--gold); outline-offset: 2px; border-color: var(--gold); background: #1e2025; }
form .button { width: 100%; margin-top: 6px; }
.form-note { color: #aaacb1; font-size: .8125rem; line-height: 1.85; margin-top: 17px; }
.form-status { color: var(--gold); font-size: .875rem; line-height: 1.8; margin-top: 13px; }
.form-status:empty { display: none; }
footer { background: #fff; color: var(--ink); padding-block: 62px 27px; }
.footer-inner { display: grid; grid-template-columns: 1.1fr 1fr auto; align-items: center; gap: 50px; padding-bottom: 45px; border-bottom: 1px solid var(--line); }
.footer-brand strong { display: block; font-family: var(--latin); font-size: 6rem; line-height: .95; font-weight: 800; letter-spacing: -.08em; }
.footer-brand > span { display: block; font-family: var(--latin); font-size: .75rem; color: #686a70; letter-spacing: .06em; margin-top: 17px; }
.footer-inner p { color: var(--muted); font-size: 1rem; line-height: 1.9; }
.footer-inner > a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9375rem; border-bottom: 1px solid #93908b; }
.footer-inner > a:hover { color: var(--gold-dark); }
.footer-bottom { display: flex; justify-content: space-between; gap: 25px; padding-top: 25px; color: #696b70; font-family: var(--latin); font-size: .75rem; }
.footer-bottom > span:last-child { letter-spacing: .09em; }
.reveal-ready { transition: opacity .7s ease, transform .7s ease; }
.reveal-ready.waiting { opacity: 0; transform: translateY(24px); }
@keyframes scene-drift { from { transform: scale(1.035); } to { transform: scale(1.1); } }
@keyframes enter-scene { from { opacity: .2; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1150px) {
  .wrap, .header-inner { width: calc(100% - 70px); }
  .header-inner { gap: 28px; }
  .header nav { gap: 25px; }
  .header-contact { display: none; }
  .hero-intro { gap: 45px; grid-template-columns: 1.5fr .65fr; }
  .hero h1 { font-size: clamp(3.8rem,6.5vw,5.8rem); }
  html[lang="en"] .hero h1 { font-size: clamp(3.4rem,6vw,5.4rem); }
  .hero-main > p { font-size: 1.125rem; }
  .hero-detail { padding: 15px; }
  .hero-detail-image { height: 130px; }
  .about-layout, .section-head, .approach-body, .contact-layout { gap: 65px; }
  .about h2 { font-size: 4.2rem; }
  h2 { font-size: 3.6rem; }
  .about-copy .lead { font-size: 1.3125rem; }
  .about-values > div { gap: 5px 12px; padding-inline-end: 20px; grid-template-columns: 35px 1fr; }
  .about-values > div + div { padding-inline-start: 20px; }
  .service-tab { padding-inline: 16px; }
  .service-tab b { font-size: 1rem; }
  .service-content { padding: 35px; }
  .service-content h3 { font-size: 2rem; }
  .service-image { min-height: 560px; }
  .steps article { gap: 20px; }
  form { padding: 32px; }
  .contact h2 { font-size: 4rem; }
}
@media (max-width: 800px) {
  html { scroll-padding-top: 150px; }
  .wrap, .header-inner { width: calc(100% - 48px); }
  .section { padding-block: 85px; }
  .header-inner { flex-wrap: wrap; gap: 0; padding-block: 12px 8px; min-height: 125px; }
  .brand { order: 0; }
  .header-actions { order: 1; margin-inline-start: auto; }
  .logo-window { width: 137px; height: 57px; }
  .logo-window img { width: 166px; height: 166px; top: -52px; left: -15px; }
  .header nav { order: 2; flex-basis: 100%; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 9px; }
  .header nav a { justify-content: center; text-align: center; white-space: normal; overflow-wrap: anywhere; font-size: .875rem; padding-block: 5px; }
  .header nav a::after { bottom: 2px; }
  .hero-content { padding-top: 170px; }
  .hero-intro { grid-template-columns: 1fr; gap: 38px; padding-block: 45px 45px; }
  .hero h1 { font-size: clamp(3.8rem,9vw,5.6rem); }
  html[lang="en"] .hero h1 { font-size: clamp(3.5rem,8.7vw,5.1rem); }
  .hero-main > p { max-width: 550px; }
  .hero-detail { display: grid; grid-template-columns: 165px 1fr; gap: 0 22px; max-width: 450px; justify-self: start; padding: 14px; }
  .hero-detail-heading { grid-column: 2; align-self: start; margin: 0; }
  .hero-detail-image { height: 104px; grid-row: 1 / span 2; grid-column: 1; }
  .hero-detail-copy { grid-column: 2; padding-top: 7px; }
  .hero-detail-copy strong { font-size: 1rem; }
  .hero-detail-copy p { font-size: .875rem; margin-top: 3px; }
  .hero-bottom { gap: 23px; grid-template-columns: 1fr auto; padding-block: 23px; }
  .hero-bottom > div { gap: 10px 18px; }
  .hero-bottom .image-caption { grid-column: 1 / -1; margin-top: -9px; }
  .hero::before, html[dir="ltr"] .hero::before { background: linear-gradient(0deg,#0c0d0f,rgba(8,9,11,.82) 43%,rgba(8,9,11,.7)),linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.15)); }
  .hero-photo { background-position: 57% center; }
  .section-heading { padding-bottom: 23px; margin-bottom: 39px; }
  .about-layout { grid-template-columns: 1fr; gap: 32px; }
  .about h2 { font-size: 4.2rem; }
  .about-copy { max-width: 620px; }
  .about-signature { margin-top: 25px; padding-top: 15px; }
  .about-copy .lead { margin-bottom: 21px; }
  .about-values { margin-top: 42px; }
  .about-values > div { grid-template-columns: 1fr; padding-inline-end: 20px; padding-block: 25px 0; gap: 7px; }
  .about-values > div + div { padding-inline-start: 20px; }
  .value-index { grid-row: auto; margin-bottom: 3px; }
  .about-values strong { font-size: 1rem; }
  .about-values span:not(.value-index) { font-size: .875rem; }
  .section-head { grid-template-columns: 1fr; gap: 24px; margin-bottom: 37px; }
  .section-head > p { max-width: 550px; }
  .service-list { display: flex; overflow-x: auto; overscroll-behavior-x: contain; margin-bottom: 24px; scrollbar-width: thin; scrollbar-color: #79684b #24262a; }
  .service-tab { flex: 0 0 180px; min-height: 105px; padding-block: 18px; }
  .service-tab b { font-size: 1rem; }
  .service-panel { grid-template-columns: 1fr; }
  .service-image { height: 360px; min-height: 0; }
  .service-content { padding: 38px; }
  .approach-body { grid-template-columns: 1fr; gap: 37px; }
  .approach .section-head { position: static; }
  .approach .section-head > p { margin-top: 25px; }
  .steps article { grid-template-columns: 85px 1fr; gap: 30px; padding-block: 29px; }
  .statement { min-height: 620px; }
  .statement h2 { font-size: 4rem; }
  .statement-inner { padding-block: 85px 30px; }
  .statement-bottom { margin-top: 59px; }
  .contact-layout { grid-template-columns: 1fr; gap: 43px; }
  .contact h2 { font-size: 4.1rem; }
  .contact-layout > div > p { max-width: 540px; }
  .contact-details { max-width: none; display: grid; grid-template-columns: 1.2fr 1fr; gap: 24px; }
  .contact-details strong { font-size: 1.125rem; }
  .footer-inner { grid-template-columns: 1fr 1fr; gap: 34px; }
  .footer-inner > a { justify-self: start; }
}
@media (max-width: 520px) {
  html { scroll-padding-top: 145px; }
  .wrap, .header-inner { width: calc(100% - 40px); }
  body { font-size: 1rem; }
  .section { padding-block: 66px; }
  .header-inner { min-height: 125px; }
  .header nav { gap: 7px; }
  .header nav a { font-size: .875rem; }
  .hero-content { padding-top: 164px; }
  .hero-meta { align-items: start; gap: 16px; }
  .hero-meta .eyebrow { font-size: .875rem; max-width: 200px; }
  .hero-meta > span:last-child { max-width: 130px; text-align: end; font-size: .75rem; letter-spacing: .03em; }
  .hero-intro { padding-block: 34px 35px; gap: 30px; }
  .hero h1 { font-size: clamp(2.8rem,11.7vw,3.9rem); line-height: 1.27; letter-spacing: -.04em; }
  html[lang="en"] .hero h1 { font-size: clamp(2.5rem,10.7vw,3.5rem); line-height: 1.15; letter-spacing: -.06em; }
  .hero-main > p { margin-top: 20px; font-size: 1.0625rem; line-height: 1.9; }
  .hero-actions { margin-top: 25px; gap: 20px; }
  .hero-actions .button { font-size: .9375rem; padding: 13px 23px; min-height: 54px; }
  .hero-actions .text-link { font-size: .875rem; }
  .hero-detail { grid-template-columns: 106px 1fr; gap: 0 15px; padding: 12px; }
  .hero-detail-image { height: 98px; }
  .hero-detail-heading { font-size: .75rem; letter-spacing: 0; gap: 9px; flex-wrap: wrap; }
  .hero-detail-heading > span:last-child { display: none; }
  .hero-detail-copy strong { font-size: .9375rem; }
  .hero-detail-copy p { font-size: .875rem; }
  .hero-bottom { align-items: start; gap: 19px; padding-block: 21px; }
  .hero-bottom > div { display: flex; flex-direction: column; align-items: start; gap: 7px; font-size: .875rem; }
  .hero-bottom > a { font-size: .875rem; min-height: 35px; white-space: nowrap; }
  .hero-bottom .image-caption { margin-top: -5px; }
  .section-heading { align-items: start; gap: 15px; padding-bottom: 20px; margin-bottom: 30px; }
  .section-label { font-size: .875rem; }
  .small-brand { max-width: 160px; text-align: end; font-size: .75rem; letter-spacing: .04em; }
  h2 { font-size: clamp(2.65rem,10vw,3.45rem); line-height: 1.3; }
  .about h2 { font-size: clamp(2.8rem,10.3vw,3.6rem); line-height: 1.3; }
  .about-signature { margin-top: 23px; font-size: .75rem; letter-spacing: .07em; }
  .about-copy .lead { font-size: 1.25rem; line-height: 1.8; }
  .about-copy > p:not(.lead) { font-size: 1rem; line-height: 1.9; }
  .about-values { grid-template-columns: 1fr; margin-top: 29px; }
  .about-values > div { grid-template-columns: 40px 1fr; padding-block: 21px; padding-inline: 0; gap: 3px 16px; border-bottom: 1px solid var(--line); }
  .about-values > div + div { border-inline-start: 0; padding-inline: 0; }
  .value-index { grid-row: span 2; font-size: 1.375rem; }
  .about-values strong { font-size: 1.0625rem; }
  .service-tab { flex-basis: 163px; min-height: 99px; gap: 11px; }
  .service-tab b { font-size: .9375rem; }
  .service-image { height: 275px; }
  .service-number { font-size: 4rem; bottom: 20px; left: 21px; }
  .service-image .image-caption { bottom: 20px; right: 20px; }
  .service-content { padding: 29px 24px; }
  .service-content h3 { font-size: 1.875rem; }
  .service-content > p { font-size: 1rem; }
  .service-content li { font-size: .9375rem; }
  .steps article { grid-template-columns: 61px 1fr; gap: 20px; padding-block: 24px; }
  .step-top > span { font-size: 2.25rem; }
  .step-top > b { font-size: .75rem; letter-spacing: 0; }
  .steps h3 { font-size: 1.375rem; }
  .steps p { font-size: .9375rem; line-height: 1.85; }
  .statement { min-height: 550px; }
  .statement-inner { padding-block: 69px 26px; }
  .statement .section-label { margin-bottom: 29px; }
  .statement h2 { font-size: clamp(2.8rem,10.3vw,3.6rem); line-height: 1.3; }
  .statement p { font-size: 1rem; margin-top: 24px; }
  .statement-bottom { flex-direction: column; gap: 13px; margin-top: 45px; padding-top: 21px; }
  .statement-bottom > span[lang] { letter-spacing: 0; font-size: .75rem; }
  .contact .section-label { margin-bottom: 28px; }
  .contact h2 { font-size: clamp(2.8rem,10.3vw,3.6rem); line-height: 1.3; }
  .contact-layout > div > p { margin-top: 24px; }
  .contact-details { grid-template-columns: 1fr; gap: 0; margin-top: 26px; }
  .contact-details strong { font-size: 1.0625rem; }
  .contact-layout { gap: 35px; }
  form { padding: 27px 23px; }
  .form-heading { gap: 9px; padding-bottom: 20px; margin-bottom: 24px; }
  .form-heading h3 { font-size: 1.375rem; }
  .field-grid { grid-template-columns: 1fr; gap: 0; }
  .form-note { font-size: .8125rem; }
  footer { padding-block: 46px 24px; }
  .footer-inner { gap: 27px; padding-bottom: 34px; }
  .footer-brand strong { font-size: 4.5rem; }
  .footer-brand > span { font-size: .75rem; letter-spacing: 0; margin-top: 12px; }
  .footer-inner p { font-size: .875rem; }
  .footer-bottom { flex-direction: column; gap: 13px; font-size: .75rem; }
}

[hidden] { display:none!important; }
.menu-toggle { display:none; min-height:44px; padding:8px 12px; border:1px solid #675b45; color:#fff; background:transparent; font-size:.875rem; }
.header nav { gap:clamp(18px,2vw,32px); }
.header nav a[aria-current="page"] { color:var(--gold); }
.header nav a[aria-current="page"]::after { transform:scaleX(1); }
.hero-global .hero-intro { grid-template-columns:1fr; gap:0; padding-block:75px 95px; }
.hero-global .hero-main { width:min(100%,1100px); }
.hero-global h1 { font-size:clamp(4.8rem,8vw,9rem); line-height:1.22; }
html[lang="en"] .hero-global h1 { font-size:clamp(4rem,6.6vw,7.4rem); line-height:1.1; }
.hero-global .hero-main>p { max-width:650px; font-size:1.3125rem; line-height:1.9; margin-top:33px; }
.hero-global .hero-actions { margin-top:39px; }
.capability-ribbon { color:#b89b61; background:#101113; border-block:1px solid #3f3830; padding:35px 0; overflow:hidden; }
.capability-ribbon>div { display:flex; justify-content:space-around; gap:34px; width:min(1600px,calc(100% - 70px)); margin-inline:auto; direction:ltr; }
.capability-ribbon span { font-family:var(--latin); font-size:clamp(1rem,2.5vw,2.8rem); line-height:1.4; font-weight:500; letter-spacing:-.025em; white-space:nowrap; }
.story-link { color:var(--gold-dark); margin-top:30px; }
.story-link:hover { color:var(--ink); }
.experiences { background:#f3f1ec; }
.experience-grid { display:grid; grid-template-columns:1.35fr 1fr; grid-template-rows:repeat(2,350px); gap:24px; }
.experience-card { display:block; position:relative; overflow:hidden; background:#121314; color:#fff; isolation:isolate; }
.experience-main { grid-row:span 2; }
.experience-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .65s ease; z-index:-2; }
.experience-main img { object-position:53% center; }
.experience-card::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(6,7,9,.94),rgba(6,7,9,.4) 40%,rgba(6,7,9,.05) 85%); }
.experience-card::after { content:"↗"; position:absolute; top:22px; inset-inline-end:25px; font-family:var(--latin); font-size:2rem; line-height:1; }
html[dir="rtl"] .experience-card::after { content:"↖"; }
.experience-card:hover img,.experience-card:focus-visible img { transform:scale(1.035); }
.experience-card-copy { height:100%; display:flex; flex-direction:column; justify-content:end; align-items:start; padding:35px; }
.experience-index { color:#ddd0b4; font-family:var(--latin); font-size:.75rem; font-weight:500; letter-spacing:.07em; }
.experience-card h3 { font-size:clamp(1.65rem,2.5vw,2.6rem); line-height:1.4; margin-top:13px; font-weight:500; }
.experience-main h3 { font-size:clamp(2.5rem,3.5vw,3.9rem); }
.experience-card p { max-width:420px; color:#d4d4d4; font-size:1rem; line-height:1.85; margin-top:15px; }
.experience-card .image-caption { margin-top:23px; color:#cacaca; }
.clients { background:#fff; }
.clients-heading { display:grid; grid-template-columns:1.8fr 1fr; gap:70px; align-items:end; padding-block:17px 57px; }
.clients-heading h2 { font-size:clamp(6rem,12vw,13rem); line-height:1.12; letter-spacing:-.05em; font-weight:500; }
html[lang="en"] .clients-heading h2 { font-size:clamp(5rem,9.5vw,10rem); line-height:1.03; }
.clients-heading p { color:var(--muted); max-width:380px; font-size:1.25rem; line-height:1.9; padding-bottom:15px; }
.client-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-block-start:1px solid var(--line); border-inline-start:1px solid var(--line); margin-bottom:45px; }
.client-logo { display:flex; align-items:center; justify-content:center; min-height:190px; padding:32px; border-inline-end:1px solid var(--line); border-block-end:1px solid var(--line); }
.client-logo img { max-width:190px; max-height:90px; width:100%; height:auto; object-fit:contain; }
.clients-bottom { display:flex; justify-content:space-between; align-items:center; gap:35px; padding-top:33px; border-top:1px solid var(--line); }
.clients-bottom>span { color:var(--muted); font-size:1rem; }
.clients-bottom .text-link { color:var(--gold-dark); }
.clients-bottom .text-link:hover { color:var(--ink); }
.page-hero { padding-block:183px 93px; background:#fff; color:var(--ink); }
.page-hero .section-label { display:block; color:var(--gold-dark); margin-bottom:49px; }
.page-hero-layout { display:grid; grid-template-columns:1.6fr 1fr; align-items:end; gap:75px; }
.page-hero h1 { font-size:clamp(3.9rem,6vw,6.9rem); line-height:1.28; }
html[lang="en"] .page-hero h1 { font-size:clamp(3.6rem,5.4vw,6rem); line-height:1.12; }
.page-hero-layout>p { max-width:445px; color:var(--muted); font-size:1.25rem; line-height:1.9; padding-bottom:7px; }
.page-hero.dark { background:var(--ink); color:#fff; }
.page-hero.dark .section-label,.page-hero.dark h1 em { color:var(--gold); }
.page-hero.dark p { color:#bfc0c4; }
.editorial-visual { position:relative; height:min(70vw,680px); overflow:hidden; background:#191817; }
.editorial-visual img { width:100%; height:100%; object-fit:cover; }
.editorial-visual figcaption,.service-detail-visual figcaption,.collaboration-visual figcaption { position:absolute; inset-inline-end:27px; bottom:25px; color:#fff; background:rgba(7,8,10,.78); font-size:.75rem; padding:7px 13px; }
.philosophy { background:#f3f1ec; }
.editorial-split { display:grid; grid-template-columns:1.2fr 1fr; gap:115px; align-items:start; }
.editorial-split .section-label { display:block; color:var(--gold-dark); margin-bottom:29px; }
.editorial-split .lead { font-size:1.375rem; line-height:1.85; color:#36383d; }
.editorial-split>div>p+p { margin-top:24px; color:var(--muted); font-size:1.0625rem; line-height:1.9; }
.editorial-split .text-link { margin-top:25px; color:var(--gold-dark); }
.principles { background:#fff; }
.principle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px; margin-top:60px; }
.principle-grid article { padding-top:25px; border-top:1px solid var(--gold-dark); }
.principle-index { display:block; font-family:var(--latin); font-size:3rem; color:var(--gold-dark); font-weight:400; line-height:1; margin-bottom:39px; }
.principle-grid h3 { font-size:1.75rem; line-height:1.4; font-weight:500; }
.principle-grid p { margin-top:18px; color:var(--muted); font-size:1.0625rem; line-height:1.9; max-width:350px; }
.service-jump { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-block:1px solid #444347; color:#fff; margin-bottom:15px; }
.service-jump>a { display:flex; flex-direction:column; align-items:start; gap:13px; padding:23px 20px; }
.service-jump>a+a { border-inline-start:1px solid #444347; }
.service-jump span { color:var(--gold); font-family:var(--latin); font-size:.8125rem; }
.service-jump b { font-size:1rem; font-weight:500; line-height:1.6; }
.service-jump>a:hover { background:#25221c; color:var(--gold); }
.service-detail { background:var(--ink); color:#fff; }
.service-detail:nth-child(even) { background:#f3f1ec; color:var(--ink); }
.service-detail-layout { display:grid; grid-template-columns:1.05fr 1fr; gap:85px; align-items:stretch; }
.service-detail.reverse .service-detail-visual { order:1; }
.service-detail.reverse .service-detail-copy { order:0; }
.service-detail-visual { position:relative; min-height:560px; background:#18191b; overflow:hidden; }
.service-detail-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.service-detail-copy { min-width:0; align-self:center; }
.service-detail-index { display:block; font-family:var(--latin); font-size:1rem; color:var(--gold); margin-bottom:23px; }
.service-detail h2 { font-size:clamp(2.5rem,3.7vw,4.2rem); line-height:1.35; font-weight:500; }
.service-detail .lead { font-size:1.25rem; line-height:1.85; color:#e1e1e2; margin-top:28px; }
.service-detail-copy>p:not(.lead) { color:#b7b9be; font-size:1.0625rem; line-height:1.95; margin-top:19px; }
.service-detail .panel-kicker { display:block; margin-top:32px; }
.service-detail ul { list-style:none; padding:0; margin:14px 0 22px; }
.service-detail li { border-bottom:1px solid #45464b; font-size:1rem; line-height:1.8; padding-block:12px; color:#d6d6d9; }
.service-detail .text-link { color:var(--gold); }
.service-detail:nth-child(even) .service-detail-index,.service-detail:nth-child(even) .panel-kicker,.service-detail:nth-child(even) .text-link { color:var(--gold-dark); }
.service-detail:nth-child(even) .lead { color:#35373c; }
.service-detail:nth-child(even) .service-detail-copy>p:not(.lead),.service-detail:nth-child(even) li { color:var(--muted); }
.service-detail:nth-child(even) li { border-color:#d5d2cc; }
.service-detail .text-link:hover { color:#fff; }
.service-detail:nth-child(even) .text-link:hover { color:var(--ink); }
.outputs { background:#f3f1ec; }
.outputs-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:35px; margin-top:65px; }
.outputs-grid article { min-width:0; padding-top:24px; border-top:1px solid #9b895e; }
.outputs-grid article>span { font-family:var(--latin); font-size:3.6rem; line-height:1; color:var(--gold-dark); display:block; margin-bottom:37px; }
.outputs-grid h3 { font-size:1.375rem; font-weight:500; line-height:1.5; }
.outputs-grid p { color:var(--muted); margin-top:16px; font-size:1rem; line-height:1.9; }
.collaboration { background:#fff; }
.collaboration-visual { height:530px; position:relative; overflow:hidden; margin-top:65px; background:#121314; }
.collaboration-visual img { height:100%; width:100%; object-fit:cover; object-position:center 55%; }
.next-project { background:#e9dfcd; color:var(--ink); }
.next-layout { display:grid; grid-template-columns:1.35fr 1fr; gap:100px; align-items:end; }
.next-project .section-label { display:block; color:var(--gold-dark); margin-bottom:26px; }
.next-project p { max-width:420px; color:#555249; font-size:1.1875rem; line-height:1.85; }
.next-project .button { background:var(--ink); color:#fff; border-color:var(--ink); margin-top:28px; padding-inline:36px; }
.next-project .button:hover { background:#302a20; }
.contact-page { padding-block:188px 115px; }
.contact-page h1 { font-size:clamp(3.9rem,6vw,6.7rem); line-height:1.27; }
.contact-page h1 em { color:var(--gold); }
html[lang="en"] .contact-page h1 { line-height:1.13; font-size:clamp(3.5rem,5.5vw,6.2rem); }
.contact-page form { margin-top:19px; }
.contact-guide { background:#f3f1ec; }
.guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin-top:57px; }
.guide-grid>div { display:flex; align-items:start; gap:28px; border-top:1px solid #a99a7d; padding-top:25px; }
.guide-grid span { color:var(--gold-dark); font-family:var(--latin); font-size:1.5rem; line-height:1.5; }
.guide-grid h3 { font-size:1.25rem; line-height:1.7; font-weight:500; }
footer { padding-top:100px; }
.footer-top { display:flex; flex-direction:column; align-items:start; padding-bottom:62px; margin-bottom:54px; border-bottom:1px solid var(--line); }
.footer-top .section-label { color:var(--gold-dark); }
.footer-invitation { display:flex; justify-content:space-between; align-items:center; width:100%; font-size:clamp(4rem,8.2vw,9.5rem); line-height:1.25; letter-spacing:-.035em; margin-top:18px; font-weight:500; }
.footer-invitation::after { content:"↗"; font-family:var(--latin); font-size:.55em; color:var(--gold-dark); }
html[dir="rtl"] .footer-invitation::after { content:"↖"; }
.footer-invitation:hover { color:var(--gold-dark); }
.footer-inner { grid-template-columns:1.1fr .8fr 1.2fr; align-items:start; gap:75px; padding-bottom:52px; }
.footer-links { display:grid; gap:5px; font-size:1rem; }
.footer-links a { display:inline-flex; align-items:center; min-height:39px; }
.footer-links a:hover { color:var(--gold-dark); }
.footer-contact { display:flex; flex-direction:column; align-items:start; gap:13px; font-size:1rem; overflow-wrap:anywhere; }
.footer-contact>a { display:flex; align-items:center; min-height:36px; font-family:var(--latin); }
.footer-contact>a:hover { color:var(--gold-dark); }
.footer-contact>span { color:var(--muted); margin-top:6px; }

@media (max-width:1250px) {
  .header-inner { gap:22px; }
  .header-contact { display:none; }
  .hero-global .hero-main>p { font-size:1.1875rem; }
  .experience-grid { grid-template-rows:repeat(2,320px); }
  .page-hero-layout { gap:50px; grid-template-columns:1.5fr 1fr; }
  .editorial-split { gap:65px; }
  .service-detail-layout { gap:50px; }
  .footer-inner { gap:40px; }
}
@media (max-width:980px) {
  html { scroll-padding-top:112px; }
  .header-inner { min-height:86px; padding-block:10px; flex-wrap:wrap; gap:0; }
  .header-actions { order:1; margin-inline-start:auto; gap:15px; }
  .brand { order:0; }
  .logo-window { width:137px; height:57px; }
  .logo-window img { width:166px; height:166px; top:-52px; left:-15px; }
  .js .menu-toggle { display:inline-flex; align-items:center; justify-content:center; }
  .header nav { order:2; display:flex; flex-direction:column; align-items:stretch; flex-basis:100%; gap:0; margin-top:10px; padding-block:10px; }
  .header nav a { justify-content:start; white-space:nowrap; overflow-wrap:normal; text-align:start; min-height:54px; font-size:1.125rem; padding:8px 25px; }
  .header nav a::after { inset-inline:25px; }
  .js .header nav { display:none; position:absolute; top:100%; inset-inline:0; margin:0; background:#101113; border-bottom:1px solid #655536; box-shadow:0 24px 35px rgba(0,0,0,.3); max-height:calc(100svh - 88px); overflow-y:auto; }
  .js .header nav.menu-open { display:flex; }
  html:not(.js) .header { position:sticky; }
  html:not(.js) .hero-content,html:not(.js) .page-hero,html:not(.js) .contact-page { padding-top:65px; }
  .hero-global .hero-content { padding-top:135px; }
  .hero-global .hero-intro { padding-block:62px 75px; }
  .hero-global h1 { font-size:clamp(4rem,8.8vw,6.4rem); }
  html[lang="en"] .hero-global h1 { font-size:clamp(3.4rem,7.7vw,5.1rem); }
  .page-hero { padding-block:148px 75px; }
  .page-hero-layout { grid-template-columns:1fr; gap:29px; }
  .page-hero h1 { font-size:clamp(3.5rem,7.5vw,5.4rem); }
  html[lang="en"] .page-hero h1 { font-size:clamp(3.2rem,7.2vw,5rem); }
  .page-hero-layout>p { max-width:580px; font-size:1.125rem; }
  .clients-heading { grid-template-columns:1fr; gap:23px; }
  .clients-heading h2 { font-size:clamp(6rem,14vw,9rem); }
  html[lang="en"] .clients-heading h2 { font-size:clamp(5rem,11vw,7.2rem); }
  .clients-heading p { max-width:580px; padding-bottom:0; font-size:1.125rem; }
  .client-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .client-logo { min-height:170px; padding:25px; }
  .service-detail-layout { gap:45px; grid-template-columns:1fr; }
  .service-detail-visual { min-height:0; height:450px; }
  .service-detail.reverse .service-detail-visual,.service-detail.reverse .service-detail-copy { order:initial; }
  .service-detail h2 { font-size:clamp(2.8rem,5.5vw,4rem); }
  .service-detail-copy { max-width:680px; }
  .service-jump { display:flex; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#9c8557 #24262a; }
  .service-jump>a { flex:0 0 184px; }
  .outputs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px; }
  .next-layout { gap:60px; }
  .contact-page { padding-block:150px 85px; }
  .contact-page h1 { font-size:clamp(3.5rem,7.8vw,5rem); }
  .footer-inner { grid-template-columns:1fr 1fr; }
  .footer-contact { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1fr; gap:13px 35px; }
}
@media (max-width:800px) {
  .capability-ribbon { padding-block:24px; }
  .capability-ribbon>div { width:calc(100% - 48px); display:grid; grid-template-columns:1fr 1fr; gap:12px 25px; }
  .capability-ribbon span { font-size:1.5rem; }
  .experience-grid { grid-template-columns:1fr 1fr; grid-template-rows:510px 310px; gap:17px; }
  .experience-main { grid-column:1 / -1; grid-row:auto; }
  .experience-card-copy { padding:25px; }
  .experience-card h3 { font-size:1.5rem; }
  .experience-main h3 { font-size:2.8rem; }
  .experience-card::after { top:18px; inset-inline-end:19px; }
  .experience-index { letter-spacing:0; }
  .editorial-split,.next-layout { grid-template-columns:1fr; gap:35px; }
  .editorial-visual { height:490px; }
  .principle-grid { gap:25px; }
  .principle-grid h3 { font-size:1.5rem; }
  .principle-grid p { font-size:1rem; }
  .collaboration-visual { height:420px; margin-top:45px; }
  .guide-grid { grid-template-columns:1fr; gap:23px; }
  .guide-grid>div { padding-top:22px; }
  .contact-page h1 { font-size:4.1rem; }
  html[lang="en"] .contact-page h1 { font-size:3.8rem; }
  .contact-page form { margin-top:0; }
  footer { padding-top:75px; }
  .footer-top { padding-bottom:40px; margin-bottom:40px; }
  .footer-invitation { font-size:clamp(3.2rem,9vw,5.9rem); }
}
@media (max-width:520px) {
  .header-actions { gap:7px; }
  .menu-toggle { padding-inline:10px; }
  .hero-global .hero-content { padding-top:122px; min-height:100svh; }
  .hero-global .hero-intro { padding-block:43px 50px; }
  .hero-global h1 { font-size:clamp(2.9rem,12.4vw,4.1rem); line-height:1.27; }
  html[lang="en"] .hero-global h1 { font-size:clamp(2.65rem,10.8vw,3.7rem); line-height:1.12; }
  .hero-global .hero-main>p { font-size:1.0625rem; line-height:1.9; margin-top:24px; }
  .hero-global .hero-actions { gap:19px; margin-top:26px; }
  .capability-ribbon>div { width:calc(100% - 40px); gap:11px 20px; }
  .capability-ribbon span { font-size:1.125rem; }
  .experience-grid { grid-template-columns:1fr; grid-template-rows:430px 340px 340px; gap:18px; }
  .experience-main { grid-column:auto; }
  .experience-card-copy { padding:27px 23px; }
  .experience-card h3,.experience-main h3 { font-size:2rem; }
  .experience-card p { font-size:.9375rem; }
  .experience-card .image-caption { margin-top:20px; }
  .clients-heading { padding-block:9px 34px; gap:21px; }
  .clients-heading h2 { font-size:clamp(4.8rem,22vw,7rem); }
  html[lang="en"] .clients-heading h2 { font-size:clamp(3.7rem,16vw,5rem); }
  .clients-heading p { font-size:1.0625rem; }
  .clients-bottom { flex-direction:column; align-items:start; gap:19px; padding-top:25px; }
  .clients-bottom>span { font-size:.9375rem; }
  .client-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:30px; }
  .client-logo { min-height:130px; padding:24px; }
  .client-logo img { max-height:65px; }
  .page-hero { padding-block:132px 57px; }
  .page-hero .section-label { font-size:.8125rem; margin-bottom:29px; }
  .page-hero h1 { font-size:clamp(2.65rem,10.5vw,3.8rem); line-height:1.3; }
  html[lang="en"] .page-hero h1 { font-size:clamp(2.45rem,10vw,3.5rem); line-height:1.15; }
  .page-hero-layout { gap:23px; }
  .page-hero-layout>p { font-size:1.0625rem; padding:0; }
  .editorial-visual { height:360px; }
  .editorial-visual figcaption,.service-detail-visual figcaption,.collaboration-visual figcaption { inset-inline-end:18px; bottom:18px; padding:6px 10px; }
  .editorial-split .section-label { margin-bottom:24px; }
  .editorial-split .lead { font-size:1.1875rem; }
  .editorial-split>div>p+p { font-size:1rem; }
  .principle-grid { grid-template-columns:1fr; gap:29px; margin-top:37px; }
  .principle-grid article { padding-top:21px; }
  .principle-index { font-size:2.5rem; margin-bottom:23px; }
  .principle-grid h3 { font-size:1.625rem; }
  .principle-grid p { margin-top:12px; }
  .service-jump>a { flex-basis:170px; padding:21px 16px; }
  .service-jump b { font-size:.9375rem; }
  .service-detail-layout { gap:29px; }
  .service-detail-visual { height:325px; }
  .service-detail h2 { font-size:2.45rem; }
  .service-detail-index { margin-bottom:17px; }
  .service-detail .lead { font-size:1.125rem; margin-top:20px; }
  .service-detail-copy>p:not(.lead) { font-size:1rem; margin-top:16px; }
  .service-detail .panel-kicker { margin-top:25px; }
  .service-detail li { font-size:.9375rem; }
  .outputs-grid { grid-template-columns:1fr; gap:29px; margin-top:38px; }
  .outputs-grid article>span { font-size:3rem; margin-bottom:22px; }
  .collaboration-visual { height:320px; margin-top:35px; }
  .next-project p { font-size:1.0625rem; }
  .contact-page { padding-block:132px 66px; }
  .contact-page h1 { font-size:clamp(2.8rem,10.3vw,3.6rem); line-height:1.3; }
  html[lang="en"] .contact-page h1 { font-size:clamp(2.6rem,10.1vw,3.5rem); line-height:1.15; }
  .guide-grid { margin-top:37px; }
  .guide-grid h3 { font-size:1.1875rem; }
  footer { padding-top:59px; }
  .footer-top { padding-bottom:31px; margin-bottom:32px; }
  .footer-invitation { font-size:clamp(2.9rem,10.8vw,4rem); margin-top:16px; gap:20px; }
  .footer-top .section-label { font-size:.875rem; }
  .footer-inner { grid-template-columns:1fr; gap:32px; padding-bottom:31px; }
  .footer-links { grid-template-columns:1fr 1fr; font-size:.9375rem; }
  .footer-contact { display:flex; grid-column:auto; gap:9px; font-size:.9375rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
  .reveal-ready.waiting { opacity: 1; transform: none; }
}
