/* Architectural depth: native pages, lightweight perspective, no WebGL dependency. */
:root { --black:#080d14; --black-2:#101925; --stone:#f5f7fa; --stone-2:#e7edf4; --white:#f8fbff; --yellow:#d8b76b; --line:rgba(16,25,37,.16); --line-light:rgba(223,234,246,.19); --section-space:clamp(5rem,8vw,9rem); }
body { background:var(--stone); }
.site-header { top:16px; left:2vw; right:2vw; min-height:80px; padding:0 26px; border:1px solid var(--line-light); border-radius:5px; background:rgba(8,13,20,.83); -webkit-backdrop-filter:blur(22px); backdrop-filter:blur(22px); box-shadow:0 12px 45px #0002; }
.site-header.is-scrolled,body.menu-open .site-header { background:rgba(8,13,20,.97); }
.brand { width:140px; }
.desktop-nav { gap:clamp(1rem,2vw,2.2rem); }
.desktop-nav a,.header-cta { font-size:.875rem; letter-spacing:.055em; }
.header-cta { color:var(--yellow); }
.eyebrow { font-size:.875rem; line-height:1.6; letter-spacing:.14em; }
.display,.display--small { line-height:1; letter-spacing:-.035em; }
.display em,.clients-hero em { color:#987234; font-weight:300; }
.button { min-height:52px; font-size:.875rem; border-radius:3px; box-shadow:0 6px 0 #98763d,0 15px 32px #0002; }
.button:hover,.button:focus-visible { transform:translateY(-3px); box-shadow:0 9px 0 #98763d,0 20px 36px #0003; }
.text-link { font-size:.9375rem; }
.body-copy { font-size:1.0625rem; line-height:1.8; }
.sculpted-hero { min-height:850px; min-height:max(850px,100svh); display:grid; align-items:center; overflow:hidden; background:radial-gradient(ellipse at 80% 10%,#28384b 0,transparent 55%),#080d14; }
.hero-light { position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg,transparent 55%,#dab66d12 55.1%,transparent 82%); }
.hero-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:6%; align-items:center; padding-block:165px 100px; }
.hero-editorial { position:relative; z-index:2; }
.sculpted-hero h1 { font-size:clamp(4.4rem,7.8vw,8.8rem); line-height:.98; letter-spacing:-.05em; margin:30px 0; font-weight:300; }
.sculpted-hero h1 em { display:block; color:var(--yellow); font-weight:300; }
.hero-description { color:#c2cbd7; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.85; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:28px; margin-top:36px; }
.hero-caption { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--line-light); padding-top:22px; margin-top:60px; color:#a0afbf; font-size:.75rem; letter-spacing:.12em; }
.hero-depth { position:relative; min-width:0; aspect-ratio:5/4; transform-style:preserve-3d; transform:perspective(1400px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,-5deg)); transition:transform .25s ease-out; margin:0 3% 0 0; }
.hero-depth__frame { position:absolute; inset:0; overflow:hidden; border:1px solid #bfcde859; box-shadow:14px 14px 0 #17212f,15px 15px 0 #c4b68c55,0 45px 100px #0009; }
.hero-depth__frame img { height:100%; width:100%; object-fit:cover; object-position:center; filter:saturate(.76) contrast(1.06); }
.hero-depth__frame::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#080d14de,transparent 60%); pointer-events:none; }
.hero-depth__label { position:absolute; bottom:10%; left:8%; right:8%; transform:translateZ(45px); color:white; pointer-events:none; }
.hero-depth__label span { display:block; font-size:.75rem; letter-spacing:.1em; color:#d6e1ed; }
.hero-depth__label strong { display:block; font-family:var(--serif); font-weight:300; font-size:clamp(2.3rem,4vw,4rem); line-height:1.05; margin-top:20px; }
.hero-depth__index { position:absolute; right:0; bottom:-44px; font-size:.75rem; letter-spacing:.2em; color:#a0afbf; }
.sector-strip { background:#d8b76b; }
.home-intro__aside .media-frame { box-shadow:18px 18px 0 #dce3ed; }
.capabilities { background:radial-gradient(ellipse at 0 0,#25344a,transparent 65%),var(--black); }
.capability-row { transition:background .3s,transform .3s; }
.capability-row h3 { line-height:1.08; }
.numbers { background:var(--black); color:var(--white); }
.number { border-color:var(--line-light); }
.number strong { color:var(--yellow); }
.number p { color:#b8c5d5; }
.work-cards,.portfolio-grid { perspective:1500px; }
.work-card,.portfolio-card { transition:transform .3s,box-shadow .3s; }
.work-card .media-frame,.portfolio-card .media-frame { border:1px solid #8e9ba52b; box-shadow:0 20px 50px #10253c22; }
.clientele-preview { background:#eef2f7; }
.clientele-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:8%; align-items:end; margin-bottom:65px; }
.clientele-heading .body-copy { max-width:480px; }
.client-wordmarks { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.client-wordmarks span { display:flex; justify-content:center; align-items:center; padding:35px 20px; min-height:135px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-size:clamp(1rem,1.9vw,1.7rem); font-weight:700; letter-spacing:.03em; text-align:center; }
.client-note { color:#526175; font-size:.875rem; line-height:1.7; margin-top:30px; }
.client-note a { text-decoration:underline; text-underline-offset:4px; }
.leadership-preview { background:linear-gradient(115deg,#111e2e,#080d14); color:var(--white); }
.leadership-layout { display:grid; grid-template-columns:1fr 2fr; gap:10%; }
.leadership-preview .body-copy { color:#e0e8f3; margin-top:32px; }
.leadership-preview .text-link { margin-top:24px; }
.director-quote cite { display:block; margin-top:36px; line-height:1.8; font-style:normal; font-size:1rem; }
.director-quote cite strong { font-size:1.25rem; }
.clients-hero { padding-top:190px; background:radial-gradient(ellipse at 80% 0,#28384b,transparent 70%),#080d14; color:var(--white); }
.clients-hero h1 { font-family:var(--serif); font-weight:300; font-size:clamp(3.7rem,8vw,8rem); line-height:1; letter-spacing:-.045em; margin:30px 0; }
.clients-hero em { color:var(--yellow); }
.clients-hero .body-copy { max-width:610px; color:#b8c5d5; }
.client-filters { display:flex; flex-wrap:wrap; gap:10px; margin:32px 0 20px; }
.client-filters button { cursor:pointer; padding:13px 20px; border:1px solid #b9c3d0; border-radius:3px; background:transparent; min-height:48px; font-size:.9375rem; transition:background .2s,color .2s; }
.client-filters button[aria-pressed="true"] { background:var(--black); border-color:var(--black); color:var(--yellow); }
.client-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.client-card { min-height:165px; padding:27px; border:1px solid #d5dce5; background:linear-gradient(145deg,#fff,#edf1f7); box-shadow:0 5px 0 #dce3ed; transition:transform .25s,box-shadow .25s; }
.client-card__visual { display:flex; align-items:center; justify-content:center; height:200px; margin:-8px -8px 25px; padding:6px; background:#fff; border:1px solid #e2e7ed; overflow:hidden; }
.client-card__visual img { display:block; width:auto; height:auto; max-width:94%; max-height:92%; object-fit:contain; }
.client-logo-crop { position:relative; overflow:hidden; flex-shrink:0; }
.client-card__visual .client-logo-crop img { position:absolute; display:block; max-width:none; max-height:none; object-fit:fill; margin:0; }
.client-card__visual--name { padding:20px; text-align:center; font-size:1.1rem; font-weight:600; color:#263746; }
.client-card__visual--sharp img { width:auto; height:auto; max-width:98%; max-height:96%; object-fit:contain; image-rendering:auto; }
.client-card__visual--fallback::after { content:attr(data-fallback); display:grid; place-items:center; width:100%; min-height:100%; padding:18px; color:#10263d; font-size:clamp(1rem,2vw,1.45rem); font-weight:750; line-height:1.15; text-align:center; letter-spacing:-.02em; }

/* Products catalogue */
.products-hero { position:relative; min-height:72vh; display:flex; align-items:flex-end; overflow:hidden; padding:clamp(9rem,16vw,13rem) 0 clamp(5rem,9vw,8rem); color:#fff; background:radial-gradient(circle at 78% 30%,#29425c 0,#122233 28%,#080d14 68%); }
.products-hero::after { content:""; position:absolute; right:-8vw; bottom:-18vw; width:52vw; aspect-ratio:1; border:1px solid #e6c76755; transform:rotate(22deg); box-shadow:0 0 0 7vw #e6c7670a,0 0 0 14vw #e6c76708; }
.products-hero__inner { position:relative; z-index:1; }
.products-hero h1 { max-width:920px; margin:.45em 0 .35em; font-family:var(--font-display); font-size:clamp(4.2rem,10vw,9rem); line-height:.82; letter-spacing:-.055em; font-weight:400; }
.products-hero h1 em { color:#e6c767; font-weight:400; }
.products-hero__inner>p:not(.eyebrow) { max-width:710px; margin:0 0 2rem; font-size:clamp(1.05rem,1.8vw,1.35rem); line-height:1.65; color:#d8e0e8; }
.product-catalogue { background:#f4f6f9; }
.madico-spotlight { overflow:hidden; background:#fff; }
.madico-spotlight__grid { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); gap:clamp(3rem,8vw,8rem); align-items:center; }
.madico-spotlight__brand { min-height:360px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:28px; padding:clamp(2rem,5vw,4.5rem); background:linear-gradient(145deg,#f8fbfd,#e8f0f6); border:1px solid #d8e1e9; }
.madico-spotlight__brand img { display:block; width:min(100%,440px); height:auto; mix-blend-mode:multiply; }
.madico-spotlight__brand span { color:#40617d; font-size:.76rem; font-weight:750; letter-spacing:.13em; text-align:center; text-transform:uppercase; }
.madico-spotlight__copy h2 { margin:.35em 0 .42em; font-family:var(--font-display); font-size:clamp(3.1rem,6vw,6.6rem); font-weight:400; line-height:.88; letter-spacing:-.05em; }
.madico-spotlight__copy h2 em { color:#1975a3; font-weight:400; }
.madico-spotlight__copy>p:not(.eyebrow) { max-width:720px; color:#526175; font-size:clamp(1rem,1.4vw,1.18rem); line-height:1.75; }
.madico-capabilities { display:flex; flex-wrap:wrap; gap:9px; margin:28px 0 30px; }
.madico-capabilities span { padding:10px 13px; border:1px solid #cbd8e3; color:#24435d; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.madico-proof { max-width:880px; margin:42px auto 0; color:#74808a; font-size:.78rem; line-height:1.6; text-align:center; }
.catalogue-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:clamp(2rem,5vw,5rem); background:#cfd5dc; border:1px solid #cfd5dc; }
.catalogue-card { min-width:0; background:#fff; transition:transform .25s ease,box-shadow .25s ease; }
.catalogue-card__media { height:235px; overflow:hidden; background:#dfe4e9; }
.catalogue-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.catalogue-card__copy { padding:clamp(1.35rem,2.7vw,2rem); }
.catalogue-card__copy>span { color:#9b791c; font-size:.75rem; letter-spacing:.16em; }
.catalogue-card h2 { min-height:2.4em; margin:.65rem 0 .7rem; font-family:var(--font-display); font-size:clamp(1.5rem,2vw,2rem); line-height:1.05; font-weight:500; }
.catalogue-card p { min-height:6.4em; margin:0 0 1rem; color:#56616c; line-height:1.6; }
.catalogue-card a { display:inline-block; color:#101a24; font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid #caa63f; }
.product-source-note { max-width:850px; margin:2rem auto 0; color:#6a727a; font-size:.84rem; line-height:1.6; text-align:center; }
@media (hover:hover) { .catalogue-card:hover { position:relative; z-index:1; transform:translateY(-5px); box-shadow:0 20px 45px #10253c1c; } .catalogue-card:hover img { transform:scale(1.045); } }
@media(max-width:1000px) { .catalogue-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:620px) { .products-hero { min-height:68vh; } .catalogue-grid { grid-template-columns:1fr; } .catalogue-card { display:grid; grid-template-columns:42% 58%; } .catalogue-card__media { height:auto; min-height:230px; } .catalogue-card__copy { padding:1.25rem; } .catalogue-card h2,.catalogue-card p { min-height:0; } }
@media(max-width:820px) { .madico-spotlight__grid { grid-template-columns:1fr; gap:40px; } .madico-spotlight__brand { min-height:270px; } }
@media(max-width:420px) { .catalogue-card { grid-template-columns:1fr; } .catalogue-card__media { height:210px; min-height:0; } }
.client-card__visual--photo { position:relative; }
.client-card__visual--photo img { width:100%; height:100%; max-width:none; max-height:none; object-fit:cover; }
.client-card__visual--photo small { position:absolute; bottom:0; left:0; right:0; padding:6px 9px; background:#080d14d9; color:#fff; font-size:.75rem; }
.client-card__visual--portfolio { position:relative; background-repeat:no-repeat; background-color:#fff; }
.client-card__visual--portfolio img { position:absolute; width:1px; height:1px; opacity:.001; pointer-events:none; }
.portfolio--s1-foreign { background-image:url('/assets/company-portfolio/sheet-01.jpg'); background-size:390% auto; background-position:0 49%; }
.portfolio--s1-international { background-image:url('/assets/company-portfolio/sheet-01.jpg'); background-size:300% auto; background-position:52% 50%; }
.portfolio--s1-banks { background-image:url('/assets/company-portfolio/sheet-01.jpg'); background-size:390% auto; background-position:100% 58%; }
.portfolio--s17-government { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:350% auto; background-position:0 49%; }
.portfolio--s17-misc { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:350% auto; background-position:50% 49%; }
.portfolio--s17-ngos { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:350% auto; background-position:100% 49%; }
.portfolio--s17-un { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:350% auto; background-position:0 60%; }
.portfolio--s17-telecom { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:410% auto; background-position:43% 60%; }
.portfolio--s17-foreign { background-image:url('/assets/company-portfolio/sheet-17.jpg'); background-size:290% auto; background-position:100% 60%; }

.home-project-proof { background:#f7f9fc; }
.home-project-proof__heading { display:grid; grid-template-columns:1.1fr .9fr; gap:8%; align-items:end; margin:48px 0; }
.home-project-proof__heading .body-copy { max-width:540px; }
.home-project-proof__grid { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,minmax(240px,1fr)); gap:16px; }
.proof-photo { position:relative; min-height:240px; overflow:hidden; background:#101925; color:#fff; }
.proof-photo--large { grid-row:1 / span 2; }
.proof-photo img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.proof-photo::after { content:''; position:absolute; inset:35% 0 0; background:linear-gradient(transparent,#080d14de); }
.proof-photo span { position:absolute; z-index:1; left:24px; right:24px; bottom:22px; display:flex; justify-content:space-between; gap:18px; align-items:end; font-size:.875rem; }
.proof-photo b { font-family:var(--serif); font-size:1.45rem; font-weight:400; }
.proof-photo:hover img,.proof-photo:focus-visible img { transform:scale(1.035); }

.project-film { background:radial-gradient(ellipse at 95% 0,#24364e,transparent 58%),#080d14; color:#fff; }
.project-film__heading { display:grid; grid-template-columns:1.05fr .95fr; gap:8%; align-items:end; margin:48px 0; }
.project-film__heading .body-copy { max-width:560px; }
.project-film__player { position:relative; overflow:hidden; border:1px solid #d8b76b55; background:#020406; box-shadow:0 30px 80px #0008; }
.project-film__player::before { content:"BANK AL HABIB / COMPLETED PROJECT"; position:absolute; z-index:1; top:18px; left:20px; padding:8px 11px; background:#080d14cc; color:#e6c767; font-size:.7rem; font-weight:700; letter-spacing:.12em; pointer-events:none; }
.project-film__player video { display:block; width:100%; aspect-ratio:640 / 352; background:#020406; object-fit:contain; }

.hero-commercial-note { display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:24px; color:rgba(255,255,255,.68); font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.hero-commercial-note span { display:inline-flex; align-items:center; gap:8px; }
.hero-commercial-note span::before { content:''; width:7px; height:7px; border-radius:50%; background:var(--yellow); }

.client-detail { color:#526175; font-size:.875rem; line-height:1.6; margin-bottom:0; }
.client-wordmarks.has-images { grid-template-columns:repeat(4,minmax(0,1fr)); }
.client-wordmarks .client-feature { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; min-height:190px; padding:24px 16px; background:#fff; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.client-feature img { width:140px; height:80px; object-fit:contain; }
.client-feature--portfolio img { object-fit:cover; object-position:8% 58%; }
.client-wordmarks .client-feature span { display:block; padding:0; min-height:0; border:0; font-size:.875rem; letter-spacing:0; }
.client-feature:hover,.client-feature:focus-visible { background:#f0f4f9; }
.client-feature small { display:block; font-size:.75rem; font-weight:400; color:#526175; margin-top:6px; }
.image-credits { color:#526175; font-size:.875rem; line-height:1.7; margin-top:24px; }
.image-credits summary { cursor:pointer; min-height:44px; display:list-item; padding:10px 0; }
.image-credits a { text-decoration:underline; text-underline-offset:3px; }
.portfolio-evidence { background:#e9eef5; }
.company-sheet-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; margin-top:45px; }
.company-sheet { margin:0; min-width:0; }
.company-sheet__crop { position:relative; overflow:hidden; aspect-ratio:1320 / 744; background:#fff; border:1px solid #c8d1df; box-shadow:0 14px 30px #10253c18; }
.company-sheet__crop img { position:absolute; top:0; left:0; width:100%; height:auto; max-width:none; transform:translateY(-36.25%); }
.company-sheet figcaption { padding-top:16px; font-size:.9375rem; color:#344256; line-height:1.6; }
#company-clientele .company-sheet-grid { grid-template-columns:minmax(0,960px); justify-content:center; }
.director-portrait { position:relative; overflow:hidden; width:180px; aspect-ratio:164 / 183; margin-top:25px; background:#e7edf4; border:1px solid var(--yellow); box-shadow:10px 10px 0 #d8b76b22; }
.director-portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
@media(max-width:900px) { .company-sheet-grid { grid-template-columns:1fr; gap:32px; } }
.contact-picture { margin:0 0 38px; }
.contact-picture img { width:100%; max-height:260px; object-fit:cover; border:1px solid #d8b76b4d; }
.contact-picture figcaption { margin-top:10px; color:#b8c5d5; font-size:.875rem; }
.product-group__image { width:100%; height:180px; object-fit:cover; margin-bottom:28px; background:#fff; }
@media(max-width:720px) { .client-wordmarks.has-images { grid-template-columns:repeat(2,minmax(0,1fr)); } .client-card__visual { height:170px; padding:4px; } .client-card__visual img { max-width:96%; max-height:150px; } .client-card__visual--sharp img { max-width:99%; max-height:97%; } .client-card__visual--photo img { max-height:none; } .client-feature img { width:110px; } }
.client-card span { font-size:.75rem; color:#59697b; text-transform:uppercase; letter-spacing:.08em; }
.client-card h3 { margin:20px 0 0; font-size:1.3rem; line-height:1.35; font-weight:600; }
.client-card[hidden] { display:none; }
.contact-page { background:radial-gradient(ellipse at 100% 0,#26384f,transparent 65%),var(--black); }
.contact-form input,.contact-form textarea,.contact-form select { font-size:1rem; }
.mobile-menu { padding-top:125px; padding-bottom:max(30px,env(safe-area-inset-bottom)); gap:35px; }
.mobile-menu nav a { padding:12px 0; font-size:clamp(2rem,8vw,3.2rem); }
main[id],main [id] { scroll-margin-top:115px; }
/* Content stays readable even if animation scripts cannot load. */
.reveal,.image-reveal { opacity:1; transform:none; clip-path:none; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .portfolio-card:hover,.work-card:hover { transform:translateY(-7px) rotateX(2deg); }
  .client-card:hover { transform:translateY(-4px); box-shadow:0 9px 0 #dce3ed; }
}
@media (max-width:1100px) { .desktop-nav { gap:1rem; } .brand { width:115px; } .site-header { padding-inline:20px; } .header-cta { font-size:.75rem; } }
@media (max-width:1000px) { .site-header { top:10px; min-height:72px; } .brand { width:135px; } .hero-layout { grid-template-columns:1fr 1fr; gap:4%; } .sculpted-hero h1 { font-size:clamp(3.8rem,7.8vw,6rem); } .hero-caption { flex-direction:column; gap:8px; } .client-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:720px) {
  .sculpted-hero { min-height:auto; }
  .hero-layout { grid-template-columns:1fr; gap:60px; padding-top:140px; padding-bottom:85px; }
  .sculpted-hero h1 { font-size:clamp(3.65rem,13.5vw,6rem); line-height:1; }
  .hero-editorial .eyebrow { font-size:.75rem; }
  .hero-caption { margin-top:38px; flex-direction:row; font-size:.7rem; }
  .hero-depth { width:92%; margin:0 auto; aspect-ratio:4/3; transform:perspective(1200px) rotateY(-3deg); }
  .hero-depth__label strong { font-size:2.3rem; }
  .hero-depth__label span { font-size:.65rem; }
  .clientele-heading,.leadership-layout { grid-template-columns:1fr; gap:35px; }
  .client-wordmarks { grid-template-columns:repeat(2,1fr); }
  .client-wordmarks span { font-size:1rem; min-height:100px; padding:20px 10px; }
  .client-card { min-height:150px; padding:18px; }
  .client-card h3 { font-size:1.0625rem; }
  .clients-hero { padding-top:145px; }
  .client-filters button { flex:1 1 auto; padding:12px 15px; }
  .clientele-heading { margin-bottom:38px; }
  .display,.display--small { font-size:clamp(2.8rem,11.5vw,4.8rem); line-height:1.04; }
  .page-hero h1 { line-height:1.03; }
  .home-project-proof__heading { grid-template-columns:1fr; gap:28px; margin:36px 0; }
  .project-film__heading { grid-template-columns:1fr; gap:28px; margin:36px 0; }
  .project-film__player::before { top:10px; left:10px; font-size:.62rem; }
  .home-project-proof__grid { grid-template-columns:1fr; grid-template-rows:none; }
  .proof-photo,.proof-photo--large { grid-row:auto; min-height:280px; }
  .proof-photo span { left:18px; right:18px; bottom:18px; }
}
@media (max-width:380px) { .client-grid { grid-template-columns:1fr; } .hero-caption { flex-direction:column; } .hero-actions { gap:24px; } }
@media (prefers-reduced-motion:reduce) { .hero-depth { transform:none!important; } .hero-depth * { transition:none!important; } }
