/* Readability, input, keyboard and responsive refinements from the UI review. */
:root{--accent:#776346}
.brand-inline{white-space:nowrap;direction:ltr;unicode-bidi:isolate}
.desktop-nav a{font-size:12px;display:inline-flex;align-items:center;min-height:44px}
.desktop-nav a::after{bottom:4px}
.header-actions{gap:20px}.header-cta{font-size:12px;min-height:44px}
.header .language select{font-size:12px;min-width:96px;min-height:44px;padding-inline:8px 19px}
.eyebrow{font-size:11px;letter-spacing:.15em}
.intro-right p,.service-card p,.material-copy>p:not(.eyebrow),.process-step p,.cta-side p,.intro-heading-row p,.service-detail-copy>p:not(.eyebrow),.service-includes p:not(.eyebrow),.about-hero>div>p:not(.eyebrow),.values p,.contact-copy>p:not(.eyebrow),.material-detail p:not(.eyebrow),.faq details>p{font-size:15px;line-height:1.85}
.hero-copy>p:not(.eyebrow){font-size:15px;max-width:390px;line-height:1.8}
.hero .eyebrow{font-size:11px}.hero-link{font-size:13px;min-height:44px}
.text-link,.round-link{font-size:13px;min-height:44px}.back-link{font-size:12px;min-height:44px}
.image-number{font-size:11px}.image-arrow{width:44px;height:44px}
.project-caption small{font-size:11px}.project-caption>span{font-size:12px}
.concept-label{font-size:10px;line-height:1.5;padding:6px 10px}.concept-note,.material-disclaimer{font-size:12px;line-height:1.8}
.material-choice small{font-size:10px;letter-spacing:.1em}.material-caption>span:last-child{font-size:11px}
.filters{gap:24px}.filters button{font-size:13px;min-height:44px;padding:12px 2px}
.slide-dot{width:44px;height:44px;padding:16px 8px}.slide-controls{gap:0;height:44px}.slide-count{font-size:11px}
.hero-caption small{font-size:10px}.scroll-hint{font-size:10px}.process-step>span,.values span{font-size:12px}
.footer-brand p,.footer-brand small,.footer-main>div>a:not(.footer-cta),.footer-cta{font-size:12px}
.footer-main>div>a:not(.footer-cta){line-height:2.6}.footer-brand small{color:#bbc1b2}
.footer .eyebrow{font-size:10px}.footer-langs{gap:18px}.footer-langs button{font-size:12px;min-height:44px}
.footer-bottom{font-size:11px;align-items:center}.footer-bottom>a{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0}
.footer-bottom>a svg{transform:rotate(-45deg);width:19px;height:19px}
.contact-facts .eyebrow{font-size:11px}.contact-facts p:not(.eyebrow){font-size:14px}
.form-notice{font-size:12px;line-height:1.85}.form-grid label{font-size:13px;justify-content:space-between}
.form-grid input,.form-grid select,.form-grid textarea{font-size:16px;line-height:1.6;padding-block:13px}
.form-grid textarea::placeholder{font-size:14px;line-height:1.8;color:var(--muted)}.form-privacy{font-size:12px;line-height:1.8}.form-notice{color:#5f6057}
.solid-button,.outline-button,.text-button{font-size:13px;min-height:44px}
.clear-draft{display:inline-flex;margin-top:16px;color:var(--muted)}
.faq summary{font-size:15px;min-height:60px}.channel-button>span{font-size:12px}.channel-button small{font-size:10px;white-space:normal}
.floating-contact>span{font-size:12px}.floating-contact small{font-size:10px;line-height:1.6}
.dialog-close{width:44px;height:44px}.dialog-copy>p:not(.eyebrow){font-size:15px;line-height:1.85}
.dialog-copy .concept-note{font-size:11px!important}.dialog-pagination button{width:48px;height:44px;display:grid;place-items:center}
.dialog-pagination>span{direction:ltr;font-size:12px}.dialog-material .eyebrow{font-size:10px}
#brief-result>p{font-size:14px}#brief-text{font-size:14px;line-height:1.85}
.menu-open{overflow:hidden}.reveal{transition-duration:.55s}.hero-copy{animation-duration:.65s}
.material-section :focus-visible,.footer :focus-visible{outline-color:var(--paper)}
[dir=rtl] .service-includes li svg{transform:scaleX(-1)}
[dir=rtl] .text-link svg,[dir=rtl] .hero-link svg,[dir=rtl] .header-cta svg,[dir=rtl] .round-link svg,[dir=rtl] .footer-cta svg,[dir=rtl] .image-arrow svg,[dir=rtl] .more-services svg,[dir=rtl] .choice-arrow svg,[dir=rtl] .solid-button svg,[dir=rtl] .dialog-pagination svg{transform:scaleX(-1)}
[dir=rtl] .text-link:hover svg{transform:scaleX(-1) translate(3px,-3px)}
[dir=rtl] .back-link svg{transform:rotate(45deg)}
[lang=ar] .eyebrow,[lang=ar] .concept-label,[lang=ar] .project-caption small,[lang=ar] .material-choice small{letter-spacing:0}
[dir=rtl] input[name=name],[dir=rtl] input[name=city],[dir=rtl] textarea{unicode-bidi:plaintext}
@media(max-width:1150px){.desktop-nav{gap:22px}.header-actions{gap:12px}.header-cta{gap:12px}}
@media(max-width:900px){.menu-toggle{width:44px;min-height:44px}.mobile-nav>a{min-height:56px}.mobile-nav>a>span{font-size:12px}}
@media(max-width:600px){
 .header{gap:8px}.header-actions{gap:8px}.logo,.logo img{width:132px}.header .language select{min-width:94px;font-size:16px}
 .hero{height:auto;min-height:max(620px,calc(100svh - 74px));max-height:none;display:flex;flex-direction:column;justify-content:space-between;gap:70px;padding:clamp(110px,18svh,180px) 6% 24px}
 .hero .hero-copy,[dir=rtl] .hero .hero-copy{position:relative;inset:auto;top:auto;width:100%;margin:0}
 .hero .hero-bottom{position:relative;inset:auto;left:auto;right:auto;bottom:auto;width:100%}
 .eyebrow{font-size:10px}.hero .eyebrow{font-size:10px;letter-spacing:.1em}
 .hero-copy>p:not(.eyebrow){font-size:14px;max-width:290px}.hero-link{font-size:13px}
 .hero-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
 .hero-caption{min-width:0;max-width:100%;margin:0}.hero-caption>span{font-size:21px;line-height:1.15}.hero-caption small{font-size:9px;line-height:1.6;margin-bottom:5px}
 .slide-controls{gap:0}.slide-dot{width:44px;height:44px;padding-inline:8px}
 .intro-right p,.service-card p,.material-copy>p:not(.eyebrow),.process-step p,.cta-side p,.intro-heading-row p,.service-detail-copy>p:not(.eyebrow),.service-includes p:not(.eyebrow),.about-hero>div>p:not(.eyebrow),.values p,.contact-copy>p:not(.eyebrow),.material-detail p:not(.eyebrow),.faq details>p{font-size:14px;line-height:1.85}
 .text-link,.split-heading .text-link,.round-link{font-size:13px}.service-grid{gap:42px}
 .service-detail-copy h1{font-size:clamp(42px,12.8vw,58px)}.page-intro h1{font-size:clamp(48px,14.8vw,62px)}
 .concept-label{font-size:9px}.concept-note,.material-disclaimer{font-size:11px}.material-caption>span:last-child{font-size:10px}
 .process-grid{gap:32px 20px}.process-step h3{font-size:27px}.filters{gap:12px 20px}.filters button{font-size:12px}
 .form-grid label{font-size:12px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}
 .form-grid textarea::placeholder{font-size:14px}.form-notice{font-size:12px;padding:16px}.form-privacy{font-size:11px}
 .solid-button{font-size:13px}.faq summary{font-size:14px}.contact-facts p:not(.eyebrow){font-size:13px}
 .channel-button{min-width:100px;gap:8px}.channel-button>span{font-size:11px}.channel-button small{font-size:9px;line-height:1.6}
 .footer-brand p,.footer-brand small,.footer-main>div>a:not(.footer-cta),.footer-cta{font-size:12px}.footer-langs button{font-size:12px}
 .footer-bottom{font-size:10px}.footer-bottom>span:last-of-type{max-width:calc(100% - 60px)}
 .dialog-copy{padding:30px 22px 20px}.dialog-copy>p:not(.eyebrow){font-size:14px}.dialog-copy .concept-note{font-size:11px!important}
 [dir=rtl] .hero-caption>span{font-size:17px}[dir=rtl] .hero-caption small{font-size:9px}
}
@media(max-width:360px){.header{padding-inline:4%;gap:4px}.header-actions{gap:4px}.logo,.logo img{width:112px}.hero h1{font-size:45px}.hero-copy{top:22%}.hero h1 em{font-size:.94em}[dir=rtl] .hero h1{font-size:36px}.hero-caption>span{font-size:19px}[dir=rtl] .hero-caption>span{font-size:15px}.hero-caption small{font-size:8px}}
