/* Art of Calligraphy: red, black and white. */
:root{--red:#c90016;--red-dark:#a80012;--red-on-dark:#ff2020;--ink:#151515;--paper:#fff;--muted:#636363;--line:#dedede}
body{color:var(--ink);background:var(--paper)}
em{color:var(--red)}
.header{background:#fffffff5;border-color:var(--line)}
.brand{width:235px}
.nav-cta{border-color:var(--ink);background:var(--ink);color:#fff}
.nav-cta:hover{background:var(--red);border-color:var(--red)}
.hero{position:relative;grid-template-columns:1.1fr 1fr;min-height:690px;overflow:hidden;background:#fff}
.hero-copy{padding:70px 4% 60px 10.2%;position:relative;z-index:1}
.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.18em;color:#555;margin-bottom:35px}
.red-rule{background:var(--red);height:2px;width:30px;flex-shrink:0}
.hero h1{font-size:clamp(4rem,6.7vw,7.2rem);line-height:.99;letter-spacing:-.055em;margin-bottom:28px}
.hero h1 em{display:inline-block;position:relative}
.intro{color:var(--muted);max-width:410px;font-size:18px;line-height:1.65}
.dark{background:var(--red);color:#fff}.dark:hover{background:var(--red-dark)}
.text-link{border-color:#b9b9b9}.hero-note{color:#696969;letter-spacing:.13em;font-size:10px;margin-top:46px}.small-rule{background:var(--red)}
.hero-art{margin:40px 12% 28px 0;position:relative;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;padding-top:8px}
.hero-arch{position:relative;isolation:isolate;width:100%;height:530px;overflow:hidden;border-radius:48% 48% 0 0;background:#181818;box-shadow:12px 12px 0 #f0f0f0}
.hero-arch:before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/Background-1-scaled.jpg') center/cover;filter:grayscale(1) contrast(1.2);opacity:.75}
.hero-arch:after{content:'';position:absolute;inset:14px;border:1px solid #ffffff25;border-radius:48% 48% 0 0;pointer-events:none}
.arabic-title{position:absolute;top:30px;left:0;right:0;color:#fff;text-align:center;font-family:'Traditional Arabic','Noto Naskh Arabic','Times New Roman',serif;font-size:68px;font-weight:400;line-height:1.6;z-index:1}
.arabic-translation{position:absolute;left:0;right:0;top:130px;text-align:center;letter-spacing:.2em;font-size:9px;color:#eee}
.hero-arch .artist-image{position:absolute;left:-4%;bottom:0;width:108%;max-width:none;height:auto;object-fit:contain;z-index:2}
.artist-caption{margin:28px 0 0;padding:0 0 0 18px;border-left:2px solid var(--red);display:flex;flex-direction:column;gap:5px}
.artist-caption>span{font-size:9px;letter-spacing:.16em;color:var(--red);font-weight:700}.artist-caption a{font-family:Georgia,serif;font-size:18px;line-height:1.4}.vertical-label{color:#6f6f6f;right:-30px;top:75px;font-size:9px;letter-spacing:.2em}
.specialties{background:var(--red);color:#fff;padding:25px 5.6%;font-size:23px}.specialties i{color:#fff;font-size:10px}
.section-heading .eyebrow,.about-copy .eyebrow,.faq .eyebrow{color:var(--red)}
.section-heading>p,.about-copy>p,.faq-list p{color:var(--muted)}
.work-section{position:relative;padding-top:105px}
.work-section .section-heading h2{font-size:clamp(2.6rem,4.5vw,4.8rem)}
.filter-row{border-color:var(--line)}.filters button{color:var(--muted);font-size:14px}.filters button.active{color:var(--red);border-color:var(--red)}.project-count{color:var(--muted)}
.gallery{gap:44px 26px}.project-image{border:1px solid #ececec;background:#f4f4f4;padding:12px}.project-image img{background:#f4f4f4}.project-meta small{color:#777;letter-spacing:.12em}.project-meta>span:last-child{color:var(--red)}.project-meta strong{font-size:24px}.project:hover .project-meta strong{color:var(--red)}.view-project{background:var(--ink);color:white}
.services{background:#161616;color:white;position:relative}.services .section-heading .eyebrow{color:var(--red-on-dark)}.services .section-heading>p{color:#bcbcbc}.services em{color:var(--red-on-dark)}.service-list,.service{border-color:#3b3b3b}.service-no{color:var(--red-on-dark)}.service p{color:#bdbdbd}.circle-arrow{border-color:#555}.service:hover .circle-arrow{background:var(--red);border-color:var(--red)}
.about{gap:10%;position:relative}.portrait{aspect-ratio:1;min-height:0;background:#eee;overflow:visible;position:relative}.portrait:before{content:'';position:absolute;left:-14px;top:14px;right:14px;bottom:-14px;border:1px solid var(--red);z-index:-1}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center}.portrait-label{top:auto;bottom:0;left:0;right:0;background:#141414ed;padding:18px 22px;font-size:10px;letter-spacing:.15em}.about-copy .lead{color:#242424}
.testimonials{background:#f4f4f4;color:var(--ink);border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.testimonial-top .eyebrow{color:var(--red)}.quote-mark{color:var(--red)}.quote-controls button{color:#111;border-color:#bcbcbc}.quote-controls button:hover{background:var(--red);border-color:var(--red);color:white}.quote-footer p span,.quote-footer>span{color:#606060}
.faq-list details{border-color:var(--line)}.faq-list details:last-child{border-color:var(--line)}.faq-list summary:after{color:var(--red)}
.contact{background:#f5f5f5;color:var(--ink);border-top:1px solid var(--line)}.contact .eyebrow{color:var(--red)}.contact em{color:var(--red)}.contact-copy>p:not(.eyebrow){color:var(--muted)}.contact-email{color:var(--red)}.contact-phone{color:#111}.contact .location{color:#666}.contact input,.contact select,.contact textarea{background:white;color:#151515;border-color:#c8c8c8}.contact input::placeholder,.contact textarea::placeholder{color:#747474}.contact input[type=date]{color-scheme:light}form label>span,.form-note{color:#666}.light{background:var(--red);color:#fff}.light:hover{background:var(--red-dark)}#enquiry-result{border-color:#bbb}.copy-button{color:var(--ink)}
.site-footer{padding:0 5.6%;background:#111;color:#fff;display:block;position:relative;isolation:isolate;overflow:hidden}
.site-footer:before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/Background-1-scaled.jpg') center/cover;filter:grayscale(1);opacity:.17}
.footer-invitation{padding:70px 0 64px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid #ffffff30}.footer-invitation .eyebrow{font-size:10px;color:#c7c7c7;margin-bottom:22px;letter-spacing:.18em}.footer-invitation h2{font-size:clamp(2.6rem,4.8vw,5rem);letter-spacing:-.045em}.footer-invitation em{color:var(--red-on-dark)}
.footer-cta{width:140px;height:140px;flex-shrink:0;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;gap:14px;font-size:14px;line-height:1.6;transition:transform .25s,background .25s}.footer-cta>span:last-child{font-size:30px}.footer-cta:hover{transform:rotate(-7deg);background:#e01220}
.footer-main{padding:56px 0;display:grid;grid-template-columns:1.3fr .65fr 1fr;gap:55px}.footer-identity{display:flex;align-items:center;gap:20px;align-self:start}.footer-identity img{width:94px;height:110px;object-fit:contain}.footer-identity>span{font-family:Georgia,serif;font-size:35px;line-height:.99;letter-spacing:-.03em}.footer-identity em{color:white}.footer-identity small{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:.18em;margin-top:20px;color:#aaa;line-height:1.5}.footer-column{display:flex;align-items:flex-start;flex-direction:column;gap:9px}.footer-column h3{font-family:Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#aaa;margin:0 0 12px}.footer-column a{font-size:14px;line-height:1.65}.footer-column a:hover{color:var(--red-on-dark)}.footer-connect>a:first-of-type{overflow-wrap:anywhere;word-break:break-word}.footer-column .footer-phone{font-family:Georgia,serif;font-size:24px;margin-top:2px}.footer-column p{font-size:12px;color:#aaa;margin:10px 0 0;line-height:1.8}
.footer-bottom{border-top:1px solid #ffffff30;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:#b4b4b4}.footer-bottom>a{color:white;font-size:12px}.footer-arabic{font-size:29px;font-family:'Traditional Arabic','Times New Roman',serif;color:#fff;line-height:1.5}
dialog{background:#fff;color:var(--ink)}.dialog-info>p:not(.eyebrow){color:var(--muted)}.dialog-info .eyebrow{color:var(--red)}.dialog-close{background:#fff}.dialog-picture{background:#eee}dialog::backdrop{background:#000c}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--red)}
@media(min-width:1600px){.hero{min-height:800px}.hero-arch{height:610px}.hero-arch .artist-image{width:110%;left:-5%}.hero-art{margin-top:55px;margin-bottom:50px}.arabic-title{top:40px;font-size:80px}.arabic-translation{top:160px}}
@media(max-width:1100px){.brand{width:205px}.hero{min-height:650px}.hero-copy{padding-top:55px;padding-bottom:40px}.hero h1{font-size:clamp(3.6rem,6.6vw,5rem)}.hero-arch{height:490px}.hero-arch .artist-image{width:124%;left:-12%}.arabic-title{font-size:60px;top:38px}.arabic-translation{top:133px;font-size:8px}.hero-art{margin-right:10%}.artist-caption a{font-size:16px}.artist-caption>span{font-size:8px}.footer-main{gap:30px;grid-template-columns:1.1fr .65fr 1fr}.footer-identity{gap:12px}.footer-identity img{width:75px}.footer-identity>span{font-size:29px}.footer-connect>a:first-of-type{font-size:12px}.footer-invitation h2{font-size:3.4rem}.project-meta strong{font-size:21px}}
@media(max-width:760px){.brand{width:190px}.header{height:80px}nav{background:#fff;border-color:#ddd}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:42px 6% 28px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:22px;gap:9px}.red-rule{width:20px}.hero h1{font-size:clamp(3.5rem,12vw,5rem);line-height:.99;margin-bottom:20px}.intro{font-size:16px;max-width:360px;margin-bottom:16px}.hero-actions{gap:18px;margin-top:6px}.hero-actions .button{padding:14px 18px;gap:20px}.hero-actions .text-link{font-size:13px}.hero-note{display:none}.hero-art{margin:0 8% 30px;padding:0}.hero-arch{height:425px;max-width:480px;margin:0 auto;box-shadow:8px 8px 0 #f0f0f0}.hero-arch .artist-image{width:115%;left:-7.5%}.arabic-title{top:25px;font-size:58px}.arabic-translation{top:118px;font-size:8px}.artist-caption{margin-top:24px;margin-left:2px}.artist-caption>span{font-size:9px}.artist-caption a{font-size:17px}.specialties{font-size:18px;padding:22px 6%}.specialties i{font-size:8px}.work-section{padding-top:64px}.work-section .section-heading h2{font-size:2.7rem}.gallery{gap:28px 16px}.project-image{padding:5px}.project-meta strong{font-size:19px}.project-meta small{font-size:8px}.about{gap:40px}.portrait{aspect-ratio:1;max-height:none}.portrait img{height:100%;object-fit:cover}.portrait:before{left:-8px;top:8px;right:8px;bottom:-8px}.portrait-label{padding:16px 18px;font-size:9px}.site-footer{padding:0 6%}.footer-invitation{padding:48px 0 36px;align-items:flex-start;gap:24px;flex-direction:column}.footer-invitation h2{font-size:2.8rem}.footer-invitation .eyebrow{font-size:9px}.footer-cta{width:auto;height:auto;border-radius:0;padding:15px 23px;gap:25px;font-size:14px}.footer-cta br{display:none}.footer-cta>span:last-child{font-size:25px}.footer-cta:hover{transform:translateY(-2px)}.footer-main{padding:38px 0;grid-template-columns:.75fr 1.25fr;gap:36px 20px}.footer-identity{grid-column:1/-1;gap:20px}.footer-identity img{width:85px;height:100px}.footer-identity>span{font-size:35px}.footer-identity small{font-size:9px;margin-top:13px}.footer-column h3{font-size:10px}.footer-column a{font-size:13px}.footer-connect>a:first-of-type{font-size:12px}.footer-column .footer-phone{font-size:22px}.footer-bottom{flex-wrap:wrap;gap:14px;padding:22px 0}.footer-bottom>span:first-child{width:100%;font-size:10px}.footer-arabic{font-size:26px}.footer-bottom>a{font-size:11px}}
@media(max-width:380px){.hero h1{font-size:3.5rem}.hero-arch{height:365px}.hero-arch .artist-image{width:115%;left:-7.5%}.arabic-title{top:20px;font-size:50px}.arabic-translation{top:103px}.hero-actions{flex-wrap:wrap}.hero-actions .button{width:auto}.hero-actions .text-link{margin:0}.footer-main{grid-template-columns:1fr 1.2fr;gap:30px 16px}.footer-column .footer-phone{font-size:20px}}
@media(prefers-reduced-motion:reduce){.footer-cta:hover{transform:none}}
.hero-arch .artist-image{width:100%;left:0;height:70%;max-height:70%;object-fit:contain;object-position:center bottom}.services .section-heading .eyebrow,.services em,.service-no,.footer-invitation em{color:var(--red-on-dark)}

/* The portrait sits within the hero, with its original transparent silhouette. */
.hero-art{margin:28px 5% 24px -3%;justify-content:center;padding:0;isolation:isolate}
.artist-composition{position:relative;width:100%;height:510px;isolation:isolate}
.artist-composition:before{content:'';position:absolute;inset:4% -4% 0 -6%;z-index:-1;background:url('assets/Background-1-scaled.jpg') center/cover;filter:grayscale(1) invert(1);opacity:.12;mask-image:radial-gradient(ellipse at 52% 50%,#000 10%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 52% 50%,#000 10%,transparent 70%)}
.artist-composition .arabic-title{top:6px;left:auto;right:10%;color:var(--red);font-size:64px;line-height:1.4;text-align:right;z-index:3}
.artist-composition .arabic-translation{top:93px;left:auto;right:10%;color:#666;font-size:8px;letter-spacing:.18em;z-index:3}
.artist-composition .artist-image{position:absolute;bottom:0;left:-4%;width:108%;max-width:none;height:auto;max-height:410px;object-fit:contain;object-position:center bottom;z-index:2;mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 67%,transparent 100%),linear-gradient(to right,transparent 0%,#000 11%,#000 89%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 67%,transparent 100%),linear-gradient(to right,transparent 0%,#000 11%,#000 89%,transparent 100%);-webkit-mask-composite:source-in}
.artist-caption{position:relative;z-index:4;margin:-19px 9% 0;padding:0;border:0;text-align:center;gap:7px}
.artist-caption>span{font-size:10px;letter-spacing:.16em}.artist-caption a{font-size:18px}
.hero-art .vertical-label{display:none}
@media(min-width:1600px){.artist-composition{height:610px}.artist-composition .artist-image{max-height:495px}.artist-composition .arabic-title{font-size:78px}.artist-composition .arabic-translation{top:112px}}
@media(max-width:1100px){.hero-art{margin-left:-5%;margin-right:1%}.artist-composition{height:460px}.artist-composition .artist-image{max-height:360px;left:-8%;width:116%}.artist-composition .arabic-title{font-size:58px;right:13%;top:15px}.artist-composition .arabic-translation{right:13%;top:98px}.artist-caption a{font-size:16px}}
@media(max-width:760px){.hero-art{margin:0 0 28px;align-self:stretch}.artist-composition{height:355px;max-width:490px;margin:0 auto}.artist-composition .artist-image{width:110%;left:-5%;max-height:285px}.artist-composition .arabic-title{top:0;right:14%;font-size:49px}.artist-composition .arabic-translation{top:72px;right:14%;font-size:8px}.artist-composition:before{inset:0 0 0 -5%}.artist-caption{margin:-10px 6% 0;gap:7px}.artist-caption>span{font-size:9px}.artist-caption a{font-size:16px}}
@media(max-width:380px){.artist-composition{height:325px}.artist-composition .artist-image{max-height:260px}.artist-composition .arabic-title{font-size:45px}.artist-composition .arabic-translation{top:66px}}

/* Completed portrait: preserve the whole head and silhouette, blend only the base. */
.hero-art{margin:25px 4% 22px -2%;justify-content:center}
.artist-composition{height:560px}
.artist-composition:before{inset:0 -3% 8% -6%;opacity:.16}
.artist-composition .artist-image{left:0;bottom:0;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center bottom;mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);mask-composite:add;-webkit-mask-composite:source-over;transform-origin:50% 85%;animation:portrait-float 6s ease-in-out infinite;will-change:transform}
.artist-composition .arabic-title{z-index:1;top:8%;right:0;font-size:56px;opacity:.12}
.artist-composition .arabic-translation{display:none}
.artist-caption{margin:-5px 7% 0;gap:7px}
.portrait-motion-toggle{display:inline-block;align-self:center;padding:5px 10px;background:none;color:#6b6b6b;font-size:12px;border-bottom:1px solid #ccc;line-height:1.5;margin-top:3px}
.portrait-motion-toggle:hover{color:var(--red);border-color:var(--red)}
.hero-art.motion-paused .artist-image{animation-play-state:paused}
@keyframes portrait-float{0%,100%{transform:translateY(0) rotate(-.25deg)}50%{transform:translateY(-8px) rotate(.25deg)}}
@media(min-width:1600px){.artist-composition{height:635px}}
@media(max-width:1100px){.artist-composition{height:505px}.hero-art{margin-left:-4%;margin-right:1%}.artist-composition .artist-image{left:0;width:100%;max-height:none}.artist-composition .arabic-title{right:2%;font-size:48px}}
@media(max-width:760px){.hero-art{margin:0 3% 28px}.artist-composition{height:425px;max-width:480px}.artist-composition .artist-image{left:0;width:100%;max-height:none}.artist-composition .arabic-title{top:14%;right:1%;font-size:45px}.artist-caption{margin:-4px 4% 0}.portrait-motion-toggle{font-size:12px}}
@media(max-width:380px){.artist-composition{height:390px}.artist-composition .artist-image{max-height:none}}
@media(prefers-reduced-motion:reduce){.artist-composition .artist-image{animation:none!important;will-change:auto}.portrait-motion-toggle{display:none}}
.artist-composition{height:510px}.artist-composition .artist-image{mask-image:linear-gradient(to bottom,#000 0%,#000 87%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 87%,transparent 100%)}@media(min-width:1600px){.artist-composition{height:600px}}@media(max-width:1100px){.artist-composition{height:480px}}@media(max-width:760px){.artist-composition{height:360px}}@media(max-width:380px){.artist-composition{height:335px}}

/* Animate the existing Arabic signature without changing its letterforms. */
.hero-art.calligraphy-hero{margin:28px 8% 26px 0;justify-content:center}
.calligraphy-composition{position:relative;isolation:isolate;width:100%;height:480px;display:grid;place-items:center}
.calligraphy-composition:before{content:'';position:absolute;inset:-5% -12%;z-index:-1;background:url('assets/Background-1-scaled.jpg') center/cover;filter:grayscale(1) invert(1);opacity:.09;mask-image:radial-gradient(ellipse,#000 0%,transparent 65%);-webkit-mask-image:radial-gradient(ellipse,#000 0%,transparent 65%)}
.calligraphy-canvas{position:relative;width:88%;height:90%;max-width:450px;animation:calligraphy-breathe 10s ease-in-out infinite;transform-origin:center}
.calligraphy-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.calligraphy-guide{filter:brightness(0);opacity:.045}
.calligraphy-ink{filter:brightness(0);animation:calligraphy-ink-reveal 10s cubic-bezier(.4,0,.2,1) infinite}
.calligraphy-red{opacity:0;animation:calligraphy-red-reveal 10s cubic-bezier(.4,0,.2,1) infinite}
.calligraphy-caption{display:flex;align-items:center;flex-direction:column;gap:9px;text-align:center;margin:7px 5% 0}
.calligraphy-caption>span{font-size:10px;font-weight:600;letter-spacing:.17em;color:var(--red)}
.calligraphy-caption>a{font-family:Georgia,serif;font-size:19px;line-height:1.5}
.artwork-motion-toggle{background:none;font-size:12px;color:#666;padding:5px 10px;border-bottom:1px solid #ccc;line-height:1.5}
.artwork-motion-toggle:hover{color:var(--red);border-color:var(--red)}
.calligraphy-hero.motion-paused .calligraphy-canvas,.calligraphy-hero.motion-paused .calligraphy-ink,.calligraphy-hero.motion-paused .calligraphy-red{animation-play-state:paused}
@keyframes calligraphy-ink-reveal{0%{clip-path:inset(0 0 100% 0);opacity:0}4%{opacity:1;clip-path:inset(0 0 100% 0)}42%,86%{opacity:1;clip-path:inset(0 0 0 0)}98%,100%{opacity:0;clip-path:inset(0 0 0 0)}}
@keyframes calligraphy-red-reveal{0%,44%{opacity:0;clip-path:inset(0 100% 0 0)}46%{opacity:1;clip-path:inset(0 100% 0 0)}72%,86%{opacity:1;clip-path:inset(0 0 0 0)}98%,100%{opacity:0;clip-path:inset(0 0 0 0)}}
@keyframes calligraphy-breathe{0%,100%{transform:translateY(3px) scale(.985)}50%{transform:translateY(-3px) scale(1)}}
@media(min-width:1600px){.calligraphy-composition{height:590px}.calligraphy-canvas{max-width:550px}}
@media(max-width:1100px){.calligraphy-composition{height:455px}.hero-art.calligraphy-hero{margin-right:5%;margin-left:-3%}}
@media(max-width:760px){.hero-art.calligraphy-hero{margin:0 5% 30px}.calligraphy-composition{height:345px}.calligraphy-canvas{width:86%;height:90%}.calligraphy-caption{margin:0 4%;gap:8px}.calligraphy-caption>span{font-size:9px}.calligraphy-caption>a{font-size:18px}}
@media(max-width:380px){.calligraphy-composition{height:310px}}
@media(prefers-reduced-motion:reduce){.calligraphy-canvas,.calligraphy-ink,.calligraphy-red{animation:none!important}.calligraphy-ink{clip-path:none;opacity:1}.calligraphy-red{opacity:0}.artwork-motion-toggle{display:none}}
