/* ==========================================================================
   Elements Design Studio — website design system
   One stylesheet for the whole site (English LTR and Arabic RTL).
   Same look as the WhatsApp pages under /design/.
   ========================================================================== */

/* ---------- 1. Tokens ---------- */
:root{
  --cream:#F5F2E9; --paper:#FBF9F4; --ink:#222421; --deep:#18251E; --green:#28382D;
  --bronze:#766647; --sand:#D2C3A1; --muted:#5E5B53; --line:rgba(34,36,33,.14);
  --line-light:rgba(245,242,233,.18); --star:#B08B3E;
  --radius-sm:12px; --radius:18px; --radius-lg:22px;
  --sans:"Manrope","Helvetica Neue",Arial,sans-serif;
  --display:Georgia,"Times New Roman",serif;
  --wrap:min(1180px,100% - 32px); --narrow:min(720px,100% - 32px);
  --header-h:68px;
  color-scheme:light;
}
html[lang="ar"] body main.charcoal-home{--sans:"IBM Plex Sans Arabic","Noto Sans Arabic",Tahoma,sans-serif;--display:"IBM Plex Sans Arabic","Noto Sans Arabic",Tahoma,sans-serif}

/* ---------- 2. Base ---------- */
html body main.charcoal-home *{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html body main.charcoal-home{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.65 var(--sans);overflow-x:hidden}
html body main.charcoal-home img,html body main.charcoal-home video{display:block;max-width:100%}
html body main.charcoal-home a{color:inherit}
html body main.charcoal-home :focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
html body main.charcoal-home .wrap{width:var(--wrap);margin-inline:auto}
html body main.charcoal-home .narrow{width:var(--narrow);margin-inline:auto}
html body main.charcoal-home section{padding:72px 0}
html body main.charcoal-home section.tight{padding-top:0}
html body main.charcoal-home .skip{position:absolute;inset-inline-start:-999px;top:8px;background:var(--deep);color:var(--cream);padding:10px 14px;border-radius:8px;z-index:100}
html body main.charcoal-home .skip:focus{inset-inline-start:8px}

/* ---------- 3. Type ---------- */
html body main.charcoal-home h1,html body main.charcoal-home h2,html body main.charcoal-home h3,html body main.charcoal-home h4{font-family:var(--display);font-weight:400;margin:0}
html body main.charcoal-home h2{font-size:clamp(30px,6.2vw,48px);line-height:1.1;letter-spacing:-.02em}
html body main.charcoal-home h3{font-size:22px;line-height:1.25}
html[lang="ar"] body main.charcoal-home h1,html[lang="ar"] body main.charcoal-home h2{font-weight:500;letter-spacing:0}
html[lang="ar"] body main.charcoal-home h2{line-height:1.3}
html[lang="ar"] body main.charcoal-home h3{font-weight:600;font-size:19px}
html body main.charcoal-home .eyebrow{font:600 12px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin:0 0 14px}
html[lang="ar"] body main.charcoal-home .eyebrow{letter-spacing:.02em;font-size:13px}
html body main.charcoal-home .note{color:var(--muted);margin:0;max-width:40em}
html body main.charcoal-home .small{font-size:13px;color:var(--muted)}
html body main.charcoal-home .pre{white-space:pre-line}

/* ---------- 4. Buttons & links ---------- */
html body main.charcoal-home .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;font:600 15px/1 var(--sans);text-decoration:none;cursor:pointer;border:0;transition:transform .15s,background .2s,color .2s}
html body main.charcoal-home .btn:active{transform:scale(.98)}
html body main.charcoal-home .btn svg{width:19px;height:19px;flex:none}
html body main.charcoal-home .btn-sm{min-height:42px;padding:0 16px;font-size:14px}
html body main.charcoal-home .btn-light{background:var(--cream);color:var(--deep)}html body main.charcoal-home .btn-light:hover{background:#fff}
html body main.charcoal-home .btn-ghost{color:var(--cream);border:1px solid rgba(245,242,233,.45);background:transparent}html body main.charcoal-home .btn-ghost:hover{background:rgba(245,242,233,.1)}
html body main.charcoal-home .btn-dark{background:var(--deep);color:var(--cream)}html body main.charcoal-home .btn-dark:hover{background:var(--green)}
html body main.charcoal-home .btn-line{color:var(--deep);border:1px solid var(--line);background:transparent}html body main.charcoal-home .btn-line:hover{background:var(--paper)}
html body main.charcoal-home .cta-row{display:flex;flex-wrap:wrap;gap:10px}
html body main.charcoal-home .more{display:inline-flex;align-items:center;gap:6px;margin-top:26px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--bronze);padding-bottom:3px}
html[dir="rtl"] body main.charcoal-home .arrow{display:inline-block;transform:scaleX(-1)}

/* ---------- 5. Header & menu ---------- */
html body main.charcoal-home .site-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header-h);transition:background .25s,box-shadow .25s,color .25s;color:var(--ink);background:rgba(245,242,233,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
html body main.charcoal-home .site-header.over{background:transparent;border-color:transparent;color:var(--cream);backdrop-filter:none}
html body main.charcoal-home .site-header .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:18px}
html body main.charcoal-home .brand{display:flex;align-items:center;gap:10px;text-decoration:none;direction:ltr;color:inherit}
html body main.charcoal-home .brand img{width:32px;height:32px}
html body main.charcoal-home .site-header.over .brand img,html body main.charcoal-home .final .brand img{filter:brightness(0) invert(1)}
html body main.charcoal-home .brand span{font:400 13px/1.15 "Helvetica Neue",Arial,sans-serif;letter-spacing:.3em}
html body main.charcoal-home .brand small{display:block;font-size:8.5px;letter-spacing:.28em;opacity:.7;margin-top:3px;white-space:nowrap}
html body main.charcoal-home .site-nav{display:none;gap:4px}
html body main.charcoal-home .site-nav a{text-decoration:none;font:500 14px/1 var(--sans);padding:10px 12px;border-radius:999px;opacity:.85}
html body main.charcoal-home .site-nav a:hover,html body main.charcoal-home .site-nav a[aria-current="page"]{opacity:1;background:rgba(127,127,127,.12)}
html body main.charcoal-home .header-actions{display:flex;align-items:center;gap:8px}
html body main.charcoal-home .lang-link{font:600 13px/1 var(--sans);text-decoration:none;padding:10px 12px;border-radius:999px;border:1px solid currentColor;opacity:.8}
html body main.charcoal-home .icon-btn{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;opacity:.9}
html body main.charcoal-home .icon-btn svg{width:19px;height:19px}
html body main.charcoal-home .header-cta{display:none}
html body main.charcoal-home .site-header.over .header-cta{background:var(--cream);color:var(--deep)}
html body main.charcoal-home .menu-sheet{position:fixed;inset:0;z-index:60;background:var(--deep);color:var(--cream);display:flex;flex-direction:column;padding:18px 16px 28px;transform:translateY(-100%);transition:transform .35s ease;visibility:hidden}
html body main.charcoal-home .menu-sheet.open{transform:none;visibility:visible}
html body main.charcoal-home .menu-sheet .top{display:flex;justify-content:space-between;align-items:center}
html body main.charcoal-home .menu-sheet nav{display:grid;gap:4px;margin-top:40px}
html body main.charcoal-home .menu-sheet nav a{font:400 32px/1.25 var(--display);text-decoration:none;padding:6px 0;border-bottom:1px solid var(--line-light)}
html[lang="ar"] body main.charcoal-home .menu-sheet nav a{font-weight:500;font-size:26px}
html body main.charcoal-home .menu-sheet .cta-row{margin-top:auto}
@media (max-width:979px){html body main.charcoal-home .lang-link{display:none}}
@media (min-width:980px){html body main.charcoal-home .site-nav{display:flex}html body main.charcoal-home .header-cta{display:inline-flex}html body main.charcoal-home .menu-btn{display:none}}

/* ---------- 6. Hero ---------- */
html body main.charcoal-home .hero{position:relative;min-height:92svh;display:flex;flex-direction:column;color:var(--cream);background:var(--deep);overflow:hidden}
html body main.charcoal-home .hero.short{min-height:64svh}
html body main.charcoal-home .hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);animation:settle 2.4s ease-out forwards}
@keyframes settle{to{transform:scale(1)}}
html body main.charcoal-home .hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,37,30,.55) 0%,rgba(24,37,30,.06) 30%,rgba(24,37,30,.42) 58%,rgba(24,37,30,.94) 100%)}
html body main.charcoal-home .hero-copy{position:relative;z-index:2;margin-top:auto;padding:calc(var(--header-h) + 24px) 0 40px}
html body main.charcoal-home .hero h1{font-size:clamp(42px,10.5vw,84px);line-height:1.02;letter-spacing:-.035em;max-width:13ch;white-space:pre-line}
html body main.charcoal-home .hero.short h1{font-size:clamp(36px,9vw,64px)}
html[lang="ar"] body main.charcoal-home .hero h1{line-height:1.22;letter-spacing:0;max-width:15ch}
html body main.charcoal-home .hero .eyebrow{color:var(--sand)}
html body main.charcoal-home .lead{font-size:17px;line-height:1.6;max-width:34em;margin:18px 0 26px;color:rgba(245,242,233,.88)}
html body main.charcoal-home .hero-foot{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 0 18px;font-size:12px;color:rgba(245,242,233,.6)}
html body main.charcoal-home .hero-foot button{all:unset;cursor:pointer;font:600 12px/1 var(--sans);color:var(--cream);border:1px solid rgba(245,242,233,.35);border-radius:999px;padding:8px 12px}

/* ---------- 7. Trust strip ---------- */
html body main.charcoal-home .trust{display:grid;grid-template-columns:1fr;border-bottom:1px solid var(--line)}
html body main.charcoal-home .trust div{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--line);font-size:15px}
html body main.charcoal-home .trust div:first-child{border-top:0}
html body main.charcoal-home .trust b{font:400 26px/1 var(--display);color:var(--deep);min-width:64px}
html[lang="ar"] body main.charcoal-home .trust b{font-weight:600;font-size:22px}
html body main.charcoal-home .trust a{text-decoration:none}
html body main.charcoal-home .stars{color:var(--star);letter-spacing:2px;font-size:13px}

/* ---------- 8. Section heads ---------- */
html body main.charcoal-home .sec-head{display:grid;gap:14px;margin-bottom:30px}
html body main.charcoal-home .sec-head .note{max-width:36em}

/* ---------- 9. Cards: work, cases, services, pieces ---------- */
html body main.charcoal-home .feature .main{border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;background:#e6e0d2}
html body main.charcoal-home .feature img{width:100%;height:100%;object-fit:cover}
html body main.charcoal-home .caption{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:14px 2px 0}
html body main.charcoal-home .caption p{margin:4px 0 0;color:var(--muted);font-size:15px}
html body main.charcoal-home .place{font:600 12px/1.3 var(--sans);color:var(--bronze);white-space:nowrap;letter-spacing:.06em;text-transform:uppercase}

html body main.charcoal-home .grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}
html body main.charcoal-home .card{text-decoration:none;color:inherit;display:block}
html body main.charcoal-home .card .img{border-radius:16px;overflow:hidden;aspect-ratio:4/5;background:#e6e0d2}
html body main.charcoal-home .card.wide .img{aspect-ratio:4/3}
html body main.charcoal-home .card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
html body main.charcoal-home .card:hover img{transform:scale(1.03)}
html body main.charcoal-home .card h3{font-size:18px;margin-top:10px;line-height:1.3}
html[lang="ar"] body main.charcoal-home .card h3{font-size:16px}
html body main.charcoal-home .card p{margin:3px 0 0;color:var(--muted);font-size:13.5px;line-height:1.5}
html body main.charcoal-home .tag{display:inline-block;font:600 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--bronze);margin-bottom:6px}

html body main.charcoal-home .cases{display:grid;gap:14px}
html body main.charcoal-home .case{display:grid;border-radius:var(--radius-lg);overflow:hidden;background:var(--deep);color:var(--cream);text-decoration:none}
html body main.charcoal-home .case .img{aspect-ratio:16/10;overflow:hidden}
html body main.charcoal-home .case img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
html body main.charcoal-home .case:hover img{transform:scale(1.03)}
html body main.charcoal-home .case .body{padding:20px 20px 24px}
html body main.charcoal-home .case .tag{color:var(--sand)}
html body main.charcoal-home .case h3{font-size:26px}
html body main.charcoal-home .case p{color:rgba(245,242,233,.75);margin:8px 0 14px}
html body main.charcoal-home .case .go{font-weight:600;border-bottom:1px solid var(--sand);padding-bottom:3px}

html body main.charcoal-home .svc{display:grid;gap:14px}
html body main.charcoal-home .svc-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;display:grid;text-decoration:none;color:inherit}
html body main.charcoal-home .svc-card .pic{aspect-ratio:16/10;overflow:hidden;background:#e8e2d5}
html body main.charcoal-home .svc-card .pic img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
html body main.charcoal-home .svc-card:hover .pic img{transform:scale(1.03)}
html body main.charcoal-home .svc-card .body{padding:20px 20px 22px}
html body main.charcoal-home .svc-card .num{font:400 15px/1 Georgia,serif;color:var(--bronze)}
html body main.charcoal-home .svc-card .kicker{font:600 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:10px}
html body main.charcoal-home .svc-card h3{margin:6px 0}
html body main.charcoal-home .svc-card p{margin:0;color:var(--muted)}

html body main.charcoal-home .pieces{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}
html body main.charcoal-home .piece .img{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#efe9dd}
html body main.charcoal-home .piece img{width:100%;height:100%;object-fit:cover}
html body main.charcoal-home .piece h3{font-size:18px;margin-top:10px}

html body main.charcoal-home .band{background:var(--deep);color:var(--cream);border-radius:var(--radius-lg);padding:24px;display:grid;gap:22px}
html body main.charcoal-home .band .eyebrow{color:var(--sand)}
html body main.charcoal-home .band .note{color:rgba(245,242,233,.75)}

/* ---------- 10. Film ---------- */
html body main.charcoal-home .film{display:grid;border-radius:var(--radius-lg);overflow:hidden;background:var(--deep);color:var(--cream);text-decoration:none}
html body main.charcoal-home .film .pic{position:relative;aspect-ratio:16/9}
html body main.charcoal-home .film .pic img{width:100%;height:100%;object-fit:cover}
html body main.charcoal-home .film .play{position:absolute;inset:0;display:grid;place-items:center}
html body main.charcoal-home .film .play span{width:74px;height:74px;border-radius:50%;background:rgba(245,242,233,.92);display:grid;place-items:center}
html body main.charcoal-home .film .play svg{width:26px;height:26px;fill:var(--deep);margin-inline-start:4px}
html body main.charcoal-home .film .body{padding:22px}
html body main.charcoal-home .film p{margin:8px 0 0;color:rgba(245,242,233,.72)}
html body main.charcoal-home .film .links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-weight:600;font-size:14px}
html body main.charcoal-home .film .links a{text-decoration:none;border-bottom:1px solid var(--sand);padding-bottom:2px}

/* ---------- 11. Steps, FAQ, reviews, places ---------- */
html body main.charcoal-home .steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:s}
html body main.charcoal-home .steps li{padding:20px;border-radius:var(--radius);background:var(--paper);border:1px solid var(--line);counter-increment:s}
html body main.charcoal-home .steps li::before{content:counter(s,decimal-leading-zero);display:block;font:400 24px/1 Georgia,serif;color:var(--bronze);margin-bottom:12px}
html body main.charcoal-home .steps h3{font-size:21px}
html body main.charcoal-home .steps p{margin:6px 0 0;color:var(--muted)}

html body main.charcoal-home .faq{border-top:1px solid var(--line)}
html body main.charcoal-home .faq details{border-bottom:1px solid var(--line)}
html body main.charcoal-home .faq summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:600;display:flex;justify-content:space-between;gap:14px}
html body main.charcoal-home .faq summary::-webkit-details-marker{display:none}
html body main.charcoal-home .faq summary::after{content:"+";color:var(--bronze);font-size:20px;line-height:1}
html body main.charcoal-home .faq details[open] summary::after{content:"–"}
html body main.charcoal-home .faq p{margin:0 0 18px;color:var(--muted)}

html body main.charcoal-home .reviews{display:grid;gap:12px}
html body main.charcoal-home .review{padding:22px;border-radius:var(--radius);background:var(--paper);border:1px solid var(--line)}
html body main.charcoal-home .review blockquote{margin:10px 0 14px;font:400 21px/1.35 var(--display)}
html[lang="ar"] body main.charcoal-home .review blockquote{font-weight:500;font-size:18px}
html body main.charcoal-home .review cite{font-style:normal;color:var(--muted);font-size:14px}

html body main.charcoal-home .places{display:grid;gap:12px}
html body main.charcoal-home .place-card{position:relative;display:block;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3;color:var(--cream);text-decoration:none;background:var(--deep)}
html body main.charcoal-home .place-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
html body main.charcoal-home .place-card:hover img{transform:scale(1.03)}
html body main.charcoal-home .place-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,37,30,0) 35%,rgba(24,37,30,.88))}
html body main.charcoal-home .place-card .body{position:absolute;inset:auto 0 0;z-index:1;padding:20px}
html body main.charcoal-home .place-card h3{font-size:30px}
html body main.charcoal-home .place-card p{margin:4px 0 10px;color:rgba(245,242,233,.8)}
html body main.charcoal-home .place-card .go{font-weight:600;font-size:14px;border-bottom:1px solid var(--sand);padding-bottom:2px}

/* ---------- 12. Final CTA & footer ---------- */
html body main.charcoal-home .final{position:relative;color:var(--cream);background:var(--deep);overflow:hidden;padding:0}
html body main.charcoal-home .final .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4}
html body main.charcoal-home .final::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(24,37,30,.15) 0%,rgba(24,37,30,.6) 45%,rgba(24,37,30,.95) 100%)}
html body main.charcoal-home .final .inner{position:relative;z-index:2;padding:96px 0 34px}
html body main.charcoal-home .final h2{font-size:clamp(40px,9vw,72px);line-height:1.04;max-width:11ch;white-space:pre-line}
html[lang="ar"] body main.charcoal-home .final h2{line-height:1.25}
html body main.charcoal-home .final p{color:rgba(245,242,233,.8);max-width:32em}
html body main.charcoal-home .foot-cols{display:grid;grid-template-columns:1fr 1fr;gap:26px 18px;margin-top:64px;padding-top:28px;border-top:1px solid var(--line-light)}
html body main.charcoal-home .foot-cols h4{font:600 12px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sand);margin-bottom:12px}
html[lang="ar"] body main.charcoal-home .foot-cols h4{letter-spacing:0;font-size:13px}
html body main.charcoal-home .foot-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
html body main.charcoal-home .foot-cols p,html body main.charcoal-home .foot-cols a{overflow-wrap:anywhere}
html body main.charcoal-home .foot-cols a{text-decoration:none;color:rgba(245,242,233,.82);font-size:14.5px}
html body main.charcoal-home .foot-cols a:hover{color:var(--cream)}
html body main.charcoal-home .foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 22px;margin-top:34px;padding-top:18px;border-top:1px solid var(--line-light);font-size:13px;color:rgba(245,242,233,.55)}
html body main.charcoal-home .foot-base a{text-decoration:none}

/* ---------- 13. Article / SEO pages ---------- */
html body main.charcoal-home .page-head{padding:calc(var(--header-h) + 40px) 0 34px;border-bottom:1px solid var(--line)}
html body main.charcoal-home .crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted);margin-bottom:22px}
html body main.charcoal-home .crumbs a{text-decoration:none}
html body main.charcoal-home .crumbs span[aria-hidden]{opacity:.5}
html body main.charcoal-home .page-head h1{font-size:clamp(36px,8vw,60px);line-height:1.08;letter-spacing:-.025em;max-width:18ch}
html[lang="ar"] body main.charcoal-home .page-head h1{line-height:1.3;letter-spacing:0}
html body main.charcoal-home .page-head .lead{color:var(--muted);margin-bottom:0}
html body main.charcoal-home .meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;font-size:13px;color:var(--muted)}
html body main.charcoal-home .article-figure{margin:30px 0 0}
html body main.charcoal-home .article-figure .ph{border-radius:var(--radius);overflow:hidden;background:#fff;border:1px solid var(--line);aspect-ratio:16/9}
html body main.charcoal-home .article-figure img{width:100%;height:100%;object-fit:cover}
html body main.charcoal-home .article-figure figcaption{font-size:13px;color:var(--muted);margin-top:8px}
html body main.charcoal-home .glance{margin:34px 0;padding:22px;border-radius:var(--radius);background:var(--deep);color:var(--cream)}
html body main.charcoal-home .glance .eyebrow{color:var(--sand)}
html body main.charcoal-home .glance p{margin:0;color:rgba(245,242,233,.85)}
html body main.charcoal-home .toc{margin:0 0 34px;padding:18px 20px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper)}
html body main.charcoal-home .toc ol{margin:8px 0 0;padding-inline-start:20px;display:grid;gap:6px;font-size:15px}
html body main.charcoal-home .toc a{text-decoration:none}
html body main.charcoal-home .prose{font-size:17px;line-height:1.75}
html body main.charcoal-home .prose h2{font-size:clamp(26px,5vw,34px);margin:46px 0 14px;line-height:1.2}
html body main.charcoal-home .prose h3{font-size:21px;margin:30px 0 10px}
html body main.charcoal-home .prose p{margin:0 0 16px}
html body main.charcoal-home .prose ul,html body main.charcoal-home .prose ol{margin:0 0 18px;padding-inline-start:22px;display:grid;gap:6px}
html body main.charcoal-home .prose li::marker{color:var(--bronze)}
html body main.charcoal-home .prose a{color:var(--deep);text-decoration-color:var(--bronze);text-underline-offset:3px}
html body main.charcoal-home .prose blockquote{margin:24px 0;padding:4px 0 4px 18px;border-inline-start:3px solid var(--bronze);font:400 21px/1.45 var(--display);color:var(--deep)}
html[dir="rtl"] body main.charcoal-home .prose blockquote{padding:4px 18px 4px 0}
html body main.charcoal-home .prose table{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}
html body main.charcoal-home .prose th,html body main.charcoal-home .prose td{text-align:start;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
html body main.charcoal-home .prose th{font-weight:600;color:var(--bronze);font-size:13px;letter-spacing:.06em;text-transform:uppercase}
html body main.charcoal-home .cta-box{margin:46px 0 0;padding:26px;border-radius:var(--radius-lg);background:var(--deep);color:var(--cream)}
html body main.charcoal-home .cta-box p{color:rgba(245,242,233,.78);margin:8px 0 18px}
html body main.charcoal-home .related{display:grid;gap:10px}
html body main.charcoal-home .related a{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px;border-radius:var(--radius);border:1px solid var(--line);background:var(--paper);text-decoration:none;font-weight:600}
html body main.charcoal-home .related a span:last-child{color:var(--bronze)}

/* ---------- 14. Project pages ---------- */
html body main.charcoal-home .facts-row{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:-1px}
html body main.charcoal-home .facts-row div{background:var(--paper);padding:16px 18px}
html body main.charcoal-home .facts-row small{display:block;font:600 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--bronze);margin-bottom:6px}
html[lang="ar"] body main.charcoal-home .facts-row small{letter-spacing:0;font-size:12px}
html body main.charcoal-home .facts-row b{font-weight:600}
html body main.charcoal-home .gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px}
html body main.charcoal-home .gallery figure{margin:0;border-radius:var(--radius-sm);overflow:hidden;background:#e6e0d2}
html body main.charcoal-home .gallery figure.wide{grid-column:1/-1}
html body main.charcoal-home .gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/5}
html body main.charcoal-home .gallery figure.wide img{aspect-ratio:16/9}
html body main.charcoal-home .chips{display:flex;flex-wrap:wrap;gap:8px}
html body main.charcoal-home .chips span{font:500 14px/1 var(--sans);padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:var(--paper)}
html body main.charcoal-home .disclaimer{font-size:13px;color:var(--muted);margin-top:12px}
html body main.charcoal-home .next-project{display:grid;border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:var(--cream);background:var(--deep);position:relative;aspect-ratio:16/9}
html body main.charcoal-home .next-project img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6}
html body main.charcoal-home .next-project .body{position:relative;align-self:end;padding:22px}

/* ---------- 15. Forms ---------- */
html body main.charcoal-home .form{display:grid;gap:14px}
html body main.charcoal-home .field{display:grid;gap:6px}
html body main.charcoal-home .field label{font:600 13px/1.3 var(--sans)}
html body main.charcoal-home .field input,html body main.charcoal-home .field select,html body main.charcoal-home .field textarea{font:400 16px/1.4 var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px;width:100%}
html body main.charcoal-home .field textarea{min-height:120px;resize:vertical}
html body main.charcoal-home .field input:focus,html body main.charcoal-home .field select:focus,html body main.charcoal-home .field textarea:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(118,102,71,.15)}
html body main.charcoal-home .hint{font-size:13px;color:var(--muted)}

/* ---------- 16. Motion ---------- */
html body main.charcoal-home .reveal{opacity:0;transform:translateY(18px);transition:opacity .8s,transform .8s}
html body main.charcoal-home .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}html body main.charcoal-home .reveal{opacity:1;transform:none;transition:none}html body main.charcoal-home .hero-media{animation:none;transform:none}}

/* ---------- 17. Wider screens ---------- */
@media (min-width:760px){
  html body main.charcoal-home section{padding:112px 0}
  html body main.charcoal-home section.tight{padding-top:0}
  html body main.charcoal-home .trust{grid-template-columns:repeat(3,1fr);gap:24px}html body main.charcoal-home .trust div{border-top:0}
  html body main.charcoal-home .sec-head{grid-template-columns:1.1fr 1fr;align-items:end;gap:40px}
  html body main.charcoal-home .feature{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  html body main.charcoal-home .grid{grid-template-columns:repeat(3,1fr);gap:28px 18px}
  html body main.charcoal-home .cases{grid-template-columns:1fr 1fr;gap:18px}
  html body main.charcoal-home .svc{grid-template-columns:repeat(3,1fr);gap:18px}
  html body main.charcoal-home .pieces{grid-template-columns:repeat(4,1fr)}
  html body main.charcoal-home .band{grid-template-columns:1fr 1.3fr;align-items:center;padding:40px;gap:40px}
  html body main.charcoal-home .band .pieces{grid-template-columns:1fr 1fr}
  html body main.charcoal-home .film{grid-template-columns:1.5fr 1fr;align-items:center}
  html body main.charcoal-home .steps{grid-template-columns:repeat(3,1fr);gap:18px}
  html body main.charcoal-home .reviews{grid-template-columns:repeat(3,1fr);gap:18px}
  html body main.charcoal-home .places{grid-template-columns:1fr 1fr;gap:18px}
  html body main.charcoal-home .foot-cols{grid-template-columns:2fr 1fr 1fr 1fr}
  html body main.charcoal-home .facts-row{grid-template-columns:repeat(4,1fr)}
  html body main.charcoal-home .gallery{grid-template-columns:repeat(3,1fr);gap:12px}
  html body main.charcoal-home .related{grid-template-columns:repeat(3,1fr)}
  html body main.charcoal-home .two{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start}
  html body main.charcoal-home .hero-copy{padding-bottom:64px}
}

/* Phase 1: map the supplied kit onto existing, content-locked components. */
html body .ed-header{position:fixed !important;inset:0 0 auto !important;height:68px !important;min-height:68px !important;padding:0 max(16px,calc((100% - 1180px)/2)) !important;z-index:80 !important;gap:14px !important;background:rgba(245,242,233,.94) !important;backdrop-filter:none !important;border-bottom:1px solid rgba(34,36,33,.14) !important;color:#222421 !important;transition:background .25s,color .25s !important;box-shadow:none !important}
html body main:not(.charcoal-home){padding-top:68px !important}
html body .ed-header .ed-brand{color:inherit !important;grid-template-columns:32px auto !important;gap:4px 10px !important}
html body .ed-header .ed-brand::before{width:32px !important;height:32px !important}
html body .ed-header .ed-brand strong{font:400 13px/1.15 'Helvetica Neue',Arial,sans-serif !important;letter-spacing:.3em !important}
html body .ed-header .ed-brand span{font:400 8.5px/1.2 'Helvetica Neue',Arial,sans-serif !important;letter-spacing:.28em !important;margin:0 !important;opacity:.7 !important}
html body .ed-header .ed-desktop-nav{gap:0 !important;margin-inline-start:auto !important}
html body .ed-header .ed-desktop-nav>a:not(.ed-button){font:500 14px/1 Manrope,EDSManrope,Arial,sans-serif !important;letter-spacing:0 !important;padding:10px 11px !important;opacity:.85 !important}
html body .ed-header .ed-desktop-nav>a:not(.ed-button):lang(ar){font-family:'IBM Plex Sans Arabic',EDSArabic,Tahoma,sans-serif !important}
html body .ed-header .ed-button{min-height:44px !important;padding:0 16px !important;font-size:14px !important;line-height:1.2 !important;margin-inline-start:8px !important}
html body .charcoal-home .ed-header:not(.kit-scrolled){color:#f5f2e9 !important;background:transparent !important;border-color:transparent !important;backdrop-filter:none !important}
html body .charcoal-home .ed-header:not(.kit-scrolled) .ed-brand::before{filter:brightness(0) invert(1) !important}
html body .charcoal-home .ed-header:not(.kit-scrolled) .ed-button{background:#f5f2e9 !important;color:#18251e !important;border-color:#f5f2e9 !important}
html body .ed-header :is(.ed-mobile-wa,.ed-mobile-menu summary){width:44px !important;height:44px !important;border:1px solid currentColor !important;color:inherit !important;border-radius:50% !important;padding:11px !important;background:transparent !important;opacity:.9 !important}
html body .ed-header .ed-mobile-actions{display:flex !important;align-items:center !important;gap:8px !important}
html body .ed-header .ed-mobile-wa{display:inline-flex !important}
html body .ed-header .ed-mobile-wa svg{width:19px !important;height:19px !important;stroke:currentColor !important;fill:none !important;stroke-width:1.5 !important}
html body .ed-floating-wa{background:#18251e !important;color:#f5f2e9 !important;border:1px solid #f5f2e94d !important;box-shadow:none !important}
html body .ed-header .ed-mobile-menu[open]{position:fixed !important;inset:0 !important;z-index:100 !important;height:100svh !important;overflow-y:auto !important;overscroll-behavior:contain !important;background:#18251e !important;color:#f5f2e9 !important;padding:18px 16px 28px !important}
html body .ed-header .ed-mobile-menu[open] summary{position:absolute !important;top:18px !important;inset-inline-end:16px !important;opacity:1 !important}
html body .ed-header .ed-mobile-menu[open] summary svg{display:none !important}
html body .ed-header .ed-mobile-menu[open] summary::after{content:'×' !important;font:300 28px/1 Arial,sans-serif !important}
html body .ed-header .ed-mobile-menu[open] .ed-mobile-panel{position:static !important;display:grid !important;margin:68px 0 0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;max-height:none !important;overflow:visible !important;gap:4px !important}
html body .ed-header .ed-mobile-panel>a{min-height:48px !important;font:400 30px/1.3 Georgia,serif !important;color:#f5f2e9 !important;padding:9px 0 !important;border-bottom:1px solid rgba(245,242,233,.18) !important;border-radius:0 !important}
html body .ed-header .ed-mobile-panel>a:lang(ar){font-family:'IBM Plex Sans Arabic',EDSArabic,Tahoma,sans-serif !important;font-weight:500 !important;font-size:26px !important}
html body .ed-header .ed-mobile-panel>.ed-button{font:600 15px/1.3 Manrope,EDSManrope,sans-serif !important;border-radius:999px !important;background:#f5f2e9 !important;color:#18251e !important;margin-top:24px !important;min-height:52px !important}
html body .ed-header:has(.ed-mobile-menu[open]) .ed-brand{position:fixed !important;top:24px !important;inset-inline-start:16px !important;z-index:101 !important;color:#f5f2e9 !important}
html body .ed-header:has(.ed-mobile-menu[open]) .ed-brand::before{filter:brightness(0) invert(1) !important}
html body .ed-header:has(.ed-mobile-menu[open]) .ed-mobile-wa{position:fixed !important;bottom:28px !important;inset-inline-start:16px !important;z-index:101 !important;color:#f5f2e9 !important}
/* The homepage keeps its existing text, section order, links, media and controls. */
html body .charcoal-home{background:#f5f2e9 !important;color:#222421 !important;font:400 16px/1.65 Manrope,EDSManrope,Arial,sans-serif !important}
html body .charcoal-home :is(h1,h2,h3){font-family:Georgia,'Times New Roman',serif !important;font-weight:400 !important}
html body .charcoal-home .landing-video-hero{position:relative !important;min-height:92svh !important;display:flex !important;flex-direction:column !important;justify-content:flex-end !important;padding:0 !important;margin:0 !important;isolation:isolate !important}
html body .charcoal-home .landing-video-frame{position:absolute !important;inset:0 !important}
html body .charcoal-home .landing-video-frame::after{background:linear-gradient(180deg,rgba(24,37,30,.55) 0%,rgba(24,37,30,.06) 30%,rgba(24,37,30,.42) 58%,rgba(24,37,30,.94) 100%) !important}
html body .charcoal-home .landing-video-copy{position:relative !important;width:min(1180px,calc(100% - 32px)) !important;max-width:1180px !important;margin:0 auto !important;padding:100px 0 88px !important;display:grid !important;gap:0 !important;align-content:end !important}
html body .charcoal-home .landing-video-copy h1{font-size:clamp(42px,10.5vw,84px) !important;line-height:1.02 !important;letter-spacing:-.035em !important;max-width:16ch !important;margin:0 !important;color:#f5f2e9 !important}
html body .charcoal-home .landing-video-copy>div>p{font:400 17px/1.6 Manrope,EDSManrope,sans-serif !important;max-width:34em !important;margin:18px 0 26px !important;color:rgba(245,242,233,.88) !important}
html body .charcoal-home .landing-brandline{font:600 12px/1.4 Manrope,EDSManrope,sans-serif !important;letter-spacing:.18em !important;color:#d2c3a1 !important;margin:0 0 14px !important}
html body .charcoal-home .landing-brandline span{font:inherit !important;letter-spacing:inherit !important}
html body .charcoal-home .landing-brandline small{font:inherit !important;letter-spacing:inherit !important;margin-top:6px !important}
html body .charcoal-home :is(.ed-hero-primary,.ed-hero-secondary,.ec-button){display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:52px !important;padding:0 22px !important;border-radius:999px !important;font:600 15px/1.3 Manrope,EDSManrope,sans-serif !important;max-width:100% !important;text-align:center !important;text-decoration:none !important}
html body .charcoal-home .ed-hero-primary{background:#f5f2e9 !important;color:#18251e !important;border:0 !important}
html body .charcoal-home .ed-hero-secondary{background:transparent !important;color:#f5f2e9 !important;border:1px solid rgba(245,242,233,.45) !important}
html body .charcoal-home .hero-video-controls{position:absolute !important;inset:auto max(16px,calc((100% - 1180px)/2)) 18px auto !important;display:flex !important;gap:8px !important;z-index:3 !important}
html body .charcoal-home .hero-video-controls button{min-height:44px !important;border-radius:999px !important;padding:8px 12px !important;background:transparent !important;border:1px solid rgba(245,242,233,.35) !important;color:#f5f2e9 !important;font:600 12px/1 Manrope,EDSManrope,sans-serif !important}
html body .charcoal-home .ed-hero-caption{position:absolute !important;inset:auto auto 23px max(16px,calc((100% - 1180px)/2)) !important;max-width:38% !important;margin:0 !important;font-size:12px !important;color:rgba(245,242,233,.7) !important;z-index:3 !important}
html body .charcoal-home :is(.landing-studies,.case-study-spotlight,.services-showcase,.client-reviews,.landing-markets,.landing-process,.elm-lili-film){width:min(1180px,calc(100% - 32px)) !important;max-width:1180px !important;margin-inline:auto !important;padding:112px 0 !important;background:transparent !important;border:0 !important}
html body .charcoal-home>div.landing-shell{width:100% !important;max-width:none !important;padding:0 !important;margin:0 !important}
html body .charcoal-home .ed-trust-strip{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:24px !important;width:min(1180px,calc(100% - 32px)) !important;margin:0 auto !important;padding:0 !important;border-bottom:1px solid rgba(34,36,33,.14) !important;background:transparent !important;color:#222421 !important}
html body .charcoal-home .ed-trust-strip>*{padding:24px 0 !important;font-size:15px !important;border:0 !important;color:#222421 !important}
html body .charcoal-home .ec-teaser{position:relative !important;width:min(1180px,calc(100% - 32px)) !important;max-width:1180px !important;margin:112px auto 0 !important;padding:40px !important;display:grid !important;grid-template-columns:1fr 1.3fr !important;gap:24px 40px !important;background:#18251e !important;border:0 !important;border-radius:22px !important;color:#f5f2e9 !important}
html body .charcoal-home .ec-teaser-copy{padding:0 !important;align-self:center !important}
html body .charcoal-home .ec-teaser h2{color:#f5f2e9 !important;font-size:clamp(30px,5.6vw,44px) !important;line-height:1.1 !important;letter-spacing:-.02em !important;margin-bottom:14px !important}
html body .charcoal-home .ec-teaser .ec-eyebrow{color:#d2c3a1 !important;font-size:12px !important;letter-spacing:.18em !important;margin:0 0 14px !important}
html body .charcoal-home .ec-teaser-copy>p:not(.ec-eyebrow){color:rgba(245,242,233,.75) !important;font-size:16px !important;margin:0 0 22px !important}
html body .charcoal-home .ec-teaser .ec-button{color:#18251e !important;background:#f5f2e9 !important}
html body .charcoal-home .ec-teaser-images{display:grid !important;grid-template-columns:1fr 1fr !important;gap:16px !important;padding:0 !important}
html body .charcoal-home .ec-teaser-images figure{margin:0 !important;min-width:0 !important}
html body .charcoal-home .ec-teaser-images img{width:100% !important;height:auto !important;aspect-ratio:4/3 !important;object-fit:cover !important;border-radius:16px !important}
html body .charcoal-home .ec-teaser-images figcaption{font:400 18px/1.25 Georgia,serif !important;color:#f5f2e9 !important;margin-top:10px !important}
html body .charcoal-home .ec-teaser-note{grid-column:1/-1 !important;color:rgba(245,242,233,.6) !important;font-size:13px !important;margin:0 !important}
html body .charcoal-home :is(.landing-section-title,.services-showcase-heading,.client-reviews-heading){display:grid !important;grid-template-columns:1.1fr 1fr !important;align-items:end !important;gap:14px 40px !important;margin:0 0 30px !important;padding:0 !important}
html body .charcoal-home :is(.landing-section-title h2,.services-showcase-heading h2,.client-reviews-heading h2){font-size:clamp(30px,6.2vw,48px) !important;line-height:1.1 !important;letter-spacing:-.02em !important;margin:0 !important}
html body .charcoal-home .services-showcase-heading>p:first-child{grid-column:1/-1 !important}
html body .charcoal-home :is(.landing-section-title>a,.client-reviews-heading>a){justify-self:end !important;font-weight:600 !important;border-bottom:1px solid #766647 !important;text-decoration:none !important;padding-bottom:3px !important;font-size:15px !important}
html body .charcoal-home .landing-study-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:28px 18px !important}
html body .charcoal-home .landing-study-grid>figure{background:transparent !important;border:0 !important;border-radius:0 !important;margin:0 !important;position:relative !important;overflow:visible !important}
html body .charcoal-home .landing-study-grid img{width:100% !important;height:auto !important;aspect-ratio:4/5 !important;object-fit:cover !important;border-radius:16px !important}
html body .charcoal-home .landing-study-grid figcaption{padding:14px 0 0 !important;display:block !important;background:transparent !important}
html body .charcoal-home .landing-study-grid h3{font-size:22px !important;line-height:1.25 !important;margin:0 0 8px !important}
html body .charcoal-home .landing-study-grid figcaption span{font-size:13.5px !important;line-height:1.5 !important;color:#5e5b53 !important}
html body .charcoal-home .landing-work-badge{border-radius:999px !important;background:#f5f2e9e6 !important;color:#18251e !important;padding:7px 12px !important;inset:12px auto auto 12px !important;font-size:11px !important}
html body .charcoal-home .elm-lili-film{display:grid !important;grid-template-columns:1fr 1.5fr !important;gap:0 !important;align-items:center !important;position:relative !important;padding:0 !important;margin-block:0 112px !important;border-radius:22px !important;background:#18251e !important;color:#f5f2e9 !important;overflow:hidden !important}
html body .charcoal-home .elm-lili-intro{padding:30px !important;grid-column:1 !important;grid-row:1 !important}
html body .charcoal-home .elm-lili-intro h2{color:#f5f2e9 !important;font-size:32px !important;line-height:1.15 !important}
html body .charcoal-home .elm-lili-intro p{color:rgba(245,242,233,.75) !important;font-size:15px !important}
html body .charcoal-home .elm-lili-intro .elm-lili-kicker{color:#d2c3a1 !important;font-size:12px !important;letter-spacing:.18em !important}
html body .charcoal-home .elm-lili-player{grid-column:2 !important;grid-row:1 !important;border-radius:0 !important;min-width:0 !important}
html body .charcoal-home .elm-lili-fallback{grid-column:1/-1 !important;padding:0 30px 20px !important;color:#d2c3a1 !important;font-size:13px !important;margin:0 !important}
html body .charcoal-home .elm-lili-links{gap:12px !important;display:flex !important;flex-wrap:wrap !important;font-size:14px !important}
html body .charcoal-home .elm-lili-links a{color:#f5f2e9 !important}
html body .charcoal-home .case-study-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:18px !important}
html body .charcoal-home .case-study-grid>a{display:grid !important;grid-template-columns:1fr !important;overflow:hidden !important;background:#18251e !important;color:#f5f2e9 !important;border:0 !important;border-radius:22px !important}
html body .charcoal-home .case-study-grid>a>img{width:100% !important;height:auto !important;aspect-ratio:16/10 !important;object-fit:cover !important;border-radius:0 !important}
html body .charcoal-home .case-study-grid>a>div{padding:24px !important}
html body .charcoal-home .case-study-grid h3{font-size:26px !important;line-height:1.25 !important;color:#f5f2e9 !important;margin:6px 0 12px !important}
html body .charcoal-home .case-study-grid p{color:rgba(245,242,233,.75) !important;font-size:16px !important;line-height:1.65 !important}
html body .charcoal-home .case-study-grid .eyebrow{color:#d2c3a1 !important;font-size:11px !important}
html body .charcoal-home .services-showcase-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important}
html body .charcoal-home .services-showcase-card{display:flex !important;flex-direction:column !important;overflow:hidden !important;background:#fbf9f4 !important;border:1px solid rgba(34,36,33,.14) !important;border-radius:22px !important}
html body .charcoal-home .services-showcase-card img{height:auto !important;width:100% !important;aspect-ratio:16/10 !important;object-fit:cover !important}
html body .charcoal-home .services-card-copy{padding:22px 20px !important}
html body .charcoal-home .services-card-copy h3{font-size:22px !important;margin:8px 0 !important;line-height:1.25 !important}
html body .charcoal-home .services-card-copy p{color:#5e5b53 !important;font-size:16px !important;line-height:1.65 !important}
html body .charcoal-home .landing-process>h2{font-size:48px !important;margin-bottom:30px !important}
html body .charcoal-home .landing-process ol{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;margin:0 !important;padding:0 !important;list-style:none !important}
html body .charcoal-home .landing-process li{display:block !important;padding:24px !important;background:#fbf9f4 !important;border:1px solid rgba(34,36,33,.14) !important;border-radius:18px !important}
html body .charcoal-home .landing-process li>span{display:block !important;font:400 24px/1 Georgia,serif !important;color:#766647 !important;margin:0 0 14px !important}
html body .charcoal-home .landing-process h3{font-size:21px !important;margin:0 0 8px !important}
html body .charcoal-home .landing-process p{color:#5e5b53 !important;margin:0 !important}
html body .charcoal-home .client-review-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;background:transparent !important}
html body .charcoal-home .client-review-grid article{background:#fbf9f4 !important;border:1px solid rgba(34,36,33,.14) !important;border-radius:18px !important;padding:24px !important}
html body .charcoal-home .client-review-grid article p{font:400 21px/1.4 Georgia,serif !important;margin:18px 0 !important}
html body .charcoal-home .client-review-grid :is(strong,small){font:400 13px/1.6 Manrope,EDSManrope,sans-serif !important;color:#5e5b53 !important}
html body .charcoal-home .landing-markets>div{display:grid !important;grid-template-columns:1fr 1fr !important;gap:18px !important}
html body .charcoal-home .landing-markets>div>a{background:#18251e !important;border-radius:22px !important;padding:40px !important;color:#f5f2e9 !important;border:0 !important}
html body .charcoal-home .landing-markets h2{font-size:38px !important;color:#f5f2e9 !important}
html body .charcoal-home .landing-markets>div>a p{color:rgba(245,242,233,.8) !important}
html body .charcoal-home .landing-markets>div>a span{color:#d2c3a1 !important}
/* Shared final CTA and footer, retaining every existing word and destination. */
html body .studio-signoff{position:relative !important;isolation:isolate !important;overflow:hidden !important;background:#18251e !important;color:#f5f2e9 !important;margin:0 !important;padding:0 !important}
html body .studio-signoff .signoff-layout{position:static !important;display:block !important;width:min(1180px,calc(100% - 32px)) !important;max-width:1180px !important;padding:96px 0 34px !important;margin:0 auto !important}
html body .studio-signoff .signoff-image{position:absolute !important;inset:0 !important;z-index:-2 !important;width:100% !important;height:100% !important;margin:0 !important;border-radius:0 !important;overflow:hidden !important}
html body .studio-signoff .signoff-image img{width:100% !important;height:100% !important;object-fit:cover !important;opacity:.4 !important}
html body .studio-signoff::before{content:'' !important;position:absolute !important;inset:0 !important;z-index:-1 !important;background:linear-gradient(180deg,rgba(24,37,30,.15) 0%,rgba(24,37,30,.6) 45%,rgba(24,37,30,.95) 100%) !important;pointer-events:none !important}
html body .studio-signoff .signoff-copy{max-width:720px !important}
html body .studio-signoff .signoff-wordmark{margin-bottom:28px !important}
html body .studio-signoff .signoff-copy h2{font:400 clamp(40px,9vw,72px)/1.04 Georgia,serif !important;max-width:11ch !important;color:#f5f2e9 !important;margin:0 0 26px !important}
html body .studio-signoff .signoff-copy h2:lang(ar){font-family:'IBM Plex Sans Arabic',EDSArabic,Tahoma,sans-serif !important;line-height:1.25 !important;font-weight:500 !important}
html body .studio-signoff .signoff-contact{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:18px !important}
html body .studio-signoff .signoff-action{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;font:600 15px/1.2 Manrope,EDSManrope,sans-serif !important;border-radius:999px !important;background:#f5f2e9 !important;color:#18251e !important;padding:0 22px !important;min-height:52px !important;text-decoration:none !important}
html body .studio-signoff .signoff-base{width:min(1180px,calc(100% - 32px)) !important;max-width:1180px !important;margin:34px auto 0 !important;padding:28px 0 !important;display:grid !important;grid-template-columns:1fr 1fr !important;gap:28px !important;border-top:1px solid rgba(245,242,233,.18) !important;font-size:14px !important}
html body .studio-signoff .signoff-base :is(nav,.signoff-social){display:flex !important;flex-wrap:wrap !important;gap:16px 22px !important;align-items:center !important}
html body .studio-signoff .ed-footer-links{width:min(1180px,calc(100% - 32px)) !important;margin:0 auto !important;padding:22px 0 34px !important;display:flex !important;flex-wrap:wrap !important;gap:14px 22px !important;border-top:1px solid rgba(245,242,233,.18) !important;background:transparent !important}
html body .studio-signoff :is(a,small){color:rgba(245,242,233,.82) !important}
html body .ed-footer{background:#18251e !important;color:#f5f2e9 !important;border-top:1px solid rgba(245,242,233,.18) !important;padding:48px max(16px,calc((100% - 1180px)/2)) !important}
@media(min-width:1100px){html body .ed-header .ed-desktop-nav{display:flex !important}html body .ed-header .ed-mobile-menu{display:none !important}html body .ed-header .ed-mobile-actions{display:flex !important}}
@media(max-width:1099px){html body .ed-header .ed-desktop-nav{display:none !important}html body .ed-header .ed-mobile-menu{display:block !important}html body .ed-header .ed-mobile-actions{display:flex !important}html body .ed-header{padding-inline:16px !important}}
@media(max-width:759px){
 html body .charcoal-home :is(.landing-studies,.case-study-spotlight,.services-showcase,.client-reviews,.landing-markets,.landing-process){padding:72px 0 !important}
 html body .charcoal-home .landing-video-copy{padding:100px 0 104px !important}
 html body .charcoal-home .landing-video-copy h1{font-size:clamp(42px,10.5vw,54px) !important;max-width:13ch !important}
 html body .charcoal-home .landing-video-copy>div[style]{gap:10px !important;margin-top:0 !important}
 html body .charcoal-home .landing-video-copy>div>p{font-size:16px !important;line-height:1.6 !important;margin:18px 0 26px !important}
 html body .charcoal-home .hero-video-controls{bottom:18px !important;inset-inline-end:16px !important}
 html body .charcoal-home .ed-hero-caption{font-size:10px !important;max-width:32% !important;bottom:23px !important}
 html body .charcoal-home .ed-trust-strip{grid-template-columns:1fr !important;gap:0 !important}
 html body .charcoal-home .ed-trust-strip>*{padding:15px 0 !important;border-top:1px solid rgba(34,36,33,.14) !important}
 html body .charcoal-home .ec-teaser{margin-top:72px !important;padding:24px !important;grid-template-columns:1fr !important;gap:24px !important}
 html body .charcoal-home :is(.landing-section-title,.services-showcase-heading,.client-reviews-heading){grid-template-columns:1fr !important;gap:14px !important}
 html body .charcoal-home :is(.landing-section-title>a,.client-reviews-heading>a){justify-self:start !important}
 html body .charcoal-home :is(.landing-study-grid,.case-study-grid,.landing-markets>div){grid-template-columns:1fr !important;gap:24px !important}
 html body .charcoal-home :is(.services-showcase-grid,.landing-process ol,.client-review-grid){grid-template-columns:1fr !important;gap:14px !important}
 html body .charcoal-home .elm-lili-film{grid-template-columns:1fr !important;margin-bottom:72px !important}
 html body .charcoal-home .elm-lili-intro{grid-column:1 !important;grid-row:2 !important;padding:24px !important}
 html body .charcoal-home .elm-lili-player{grid-column:1 !important;grid-row:1 !important}
 html body .charcoal-home .elm-lili-fallback{grid-column:1 !important;grid-row:3 !important;padding:0 24px 24px !important}
 html body .studio-signoff .signoff-base{grid-template-columns:1fr !important;gap:24px !important}
 html body .studio-signoff .signoff-contact{display:grid !important;gap:20px !important}
 html body .studio-signoff .signoff-email{overflow-wrap:anywhere !important;font-size:14px !important}
}
@media(prefers-reduced-motion:reduce){html body :is(.ed-header,.charcoal-home *, .studio-signoff *){scroll-behavior:auto !important;transition:none !important;animation:none !important}}

html body .studio-signoff .signoff-image{max-width:none!important}

/* Readability repair: explicit foregrounds for the theme's light cards and dark panels. */
html body :is(.sv-steps article,.ed-three article,.direct-answer){color:#222421!important}
html body :is(.sv-steps article,.ed-three article,.direct-answer) :is(h2,h3,p,li,strong){color:#222421!important}
html body :is(.sv-steps article>span,.direct-answer>span){color:#766647!important}
html body .sv-clarity{padding-inline:clamp(20px,3vw,40px)!important;box-sizing:border-box}
html body .ed-footer .ed-footer-links{background:transparent!important;border-color:#f5f2e933!important}
html body :is(.pw-close .pw-eyebrow,.bi-quote .bi-eyebrow,.om-quote .om-kicker){color:#d2c3a1!important}
html body .om-quote .om-note{color:#e2e6d9!important}
html body :is(.bi-hero,.si-hero,.om-hero) figcaption{color:#f5f2e9!important}
html body .charcoal-home .landing-process :is(h2,h3){color:#222421!important}
html body :is(.services-card-copy>span,.services-card-copy>b,.services-showcase-heading>.eyebrow,.client-review-grid [aria-label]){color:#766647!important}
html body .charcoal-home .landing-brandline small{color:#d2c3a1!important}
html body :is(.ev-sheet-note,.vj-intro .vj-eyebrow,.ec-indonesia>.ec-note,.pw-villa .pw-note,.hitomi-facts span,.hitomi-feature figcaption,.hitomi-render-grid figcaption,.hitomi-price-grid>article>span,.wc-deliver-card small){color:#5e5b53!important}
html body .hitomi-price-grid>article:last-child>span{color:#d2c3a1!important}
html body :is(.wc-principle>span,.wc-deliver-top .wc-eyebrow){color:#6c5c3e!important}
