@font-face{font-family:Ravagh;src:url('assets/Ravagh-ExtraLight.woff2') format('woff2');font-style:normal;font-weight:200;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-Light.woff2') format('woff2');font-style:normal;font-weight:300;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-SemiBold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-ExtraBold.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:Ravagh;src:url('assets/Ravagh-Black.woff2') format('woff2');font-style:normal;font-weight:900;font-display:swap}
:root{--ink:#162238;--muted:#526176;--blue:#1852d8;--pale:#e9effb;--line:#d9e1ed;--paper:#f6f8fb;--white:#fff;font-family:Ravagh,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}.fa{font-family:Ravagh,Tahoma,sans-serif}a{text-decoration:none;color:inherit}button{font:inherit}img{max-width:100%;display:block}.header{background:var(--white);border-bottom:1px solid var(--line);position:relative;z-index:5}.nav-wrap{max-width:1660px;margin:auto;min-height:96px;padding:0 clamp(24px,5vw,88px);display:flex;align-items:center;gap:40px}.wordmark{display:flex;flex-direction:column;gap:4px;white-space:nowrap}.wordmark strong{font-size:1.13rem;line-height:1.3;letter-spacing:-.045em;font-weight:800}.fa .wordmark strong{font-size:1.25rem;letter-spacing:0}.wordmark small{font-size:.67rem;letter-spacing:.14em;color:#66758a;font-weight:700}.fa .wordmark small{font-size:.73rem;letter-spacing:0}.header nav{display:flex;gap:clamp(14px,2vw,34px);align-items:center;margin-inline-start:auto}.header nav a{font-size:.85rem;color:#5d6b7f;font-weight:700;white-space:nowrap;padding:36px 0;position:relative}.header nav a:hover,.header nav a[aria-current]{color:var(--blue)}.header nav a[aria-current]:after{content:'';height:2px;background:var(--blue);position:absolute;inset-inline:0;bottom:25px}.nav-side{display:flex;gap:20px;align-items:center}.language{border:1px solid var(--line);border-radius:99px;padding:9px 14px;font-size:.78rem;font-weight:800;white-space:nowrap}.language:hover{border-color:var(--blue);color:var(--blue)}.menu-toggle{display:none;border:0;background:none;padding:9px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0}.hero{max-width:1660px;margin:auto;display:grid;grid-template-columns:54% 46%;min-height:690px;background:#fff}.hero-copy{padding:clamp(70px,7.5vw,130px) clamp(24px,5.5vw,95px) 85px clamp(24px,5vw,88px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.overline,.kicker,.section-label,.mini{font-size:.73rem;font-weight:800;color:var(--blue);letter-spacing:.14em;text-transform:uppercase}.fa .overline,.fa .kicker,.fa .section-label,.fa .mini{letter-spacing:0;font-size:.82rem}.overline{display:flex;align-items:center;gap:10px;line-height:1.7}.overline .line{width:28px;height:2px;background:var(--blue)}.dot{opacity:.35}.hero h1{font-size:clamp(3.1rem,5vw,6.3rem);line-height:1.09;letter-spacing:-.075em;margin:37px 0 30px;font-weight:750;max-width:800px}.fa .hero h1{font-size:clamp(2.65rem,4.3vw,5.35rem);line-height:1.42;letter-spacing:-.055em}.hero h1 span,.page-heading h1 em{color:var(--blue);font-style:normal}.hero-copy>p{font-size:1.09rem;line-height:1.85;color:var(--muted);max-width:610px;margin:0 0 38px}.fa .hero-copy>p{font-size:1.12rem;line-height:2}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 22px;min-height:57px;font-size:.9rem;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--blue);color:#fff}.button.primary:hover{background:#0f3fac}.button span,.text-action span{font-size:1.15rem}.text-action{font-size:.9rem;font-weight:800;color:var(--blue);display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid transparent;padding:9px 0}.text-action:hover{border-color:var(--blue)}.hero-media{margin:0;position:relative;min-height:690px;background:#0b1628;overflow:hidden}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:48% center;position:absolute;inset:0}.hero-media:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,12,28,.55))}.hero-media figcaption{position:absolute;z-index:1;bottom:32px;inset-inline-start:34px;color:#fff;font-size:.67rem;letter-spacing:.2em;font-weight:800}.fa .hero-media figcaption{letter-spacing:0;font-size:.83rem}.strip{max-width:1660px;margin:auto;background:#e9effb;display:flex;justify-content:space-around;gap:20px;padding:26px clamp(24px,5vw,88px);color:#29508a;font-size:.78rem;font-weight:800;letter-spacing:.04em}.fa .strip{letter-spacing:0;font-size:.9rem}.strip span+span{border-inline-start:1px solid #c5d2ea;padding-inline-start:clamp(16px,3vw,55px)}.section{max-width:1660px;margin:auto;padding:clamp(76px,8vw,132px) clamp(24px,5vw,88px);display:grid;grid-template-columns:23% 1fr;gap:40px}.section-label{padding-top:10px}.section h2{font-size:clamp(2.3rem,3.5vw,4.3rem);line-height:1.25;letter-spacing:-.06em;margin:0 0 26px;max-width:940px}.fa .section h2{letter-spacing:-.04em;line-height:1.55}.section p{font-size:1.08rem;color:var(--muted);line-height:1.95;max-width:840px}.overview{background:var(--paper)}.overview-main>p{margin:0 0 70px}.expertise{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;border-top:1px solid var(--line)}.expertise>div{padding-top:26px}.expertise span{font-size:.8rem;color:var(--blue);font-weight:800}.expertise h3{font-size:1.25rem;line-height:1.5;letter-spacing:-.03em;margin:27px 0 10px}.fa .expertise h3{letter-spacing:0;font-size:1.3rem}.expertise p{font-size:.94rem;line-height:1.85;margin:0}.featured{background:#fff;border-top:1px solid var(--line)}.section-title-row{display:flex;align-items:start;justify-content:space-between;gap:26px}.section-title-row h2{margin-bottom:48px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature{min-height:380px;padding:30px;background:#f0f3f8;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.feature:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(21,42,76,.08)}.feature-blue{background:var(--blue);color:#fff}.feature .type{font-size:.7rem;font-weight:800;letter-spacing:.1em;color:var(--blue)}.fa .feature .type{letter-spacing:0;font-size:.77rem}.feature-blue .type{color:#d7e3ff}.feature h3{font-size:clamp(1.5rem,2vw,2.2rem);line-height:1.35;letter-spacing:-.045em;margin:62px 0 14px}.fa .feature h3{line-height:1.55;letter-spacing:0}.feature p{font-size:.94rem;line-height:1.75;margin:0 0 28px;color:var(--muted)}.feature-blue p{color:#e4ebff}.feature strong{margin-top:auto;font-size:.85rem;color:var(--blue)}.feature-blue strong{color:#fff}.contact-band{max-width:1660px;margin:auto;background:#132646;color:#fff;padding:72px clamp(24px,5vw,88px);display:flex;justify-content:space-between;align-items:end;gap:45px}.contact-band .mini{color:#9fb8ff}.contact-band h2{font-size:clamp(2rem,3vw,3.6rem);line-height:1.35;letter-spacing:-.05em;max-width:720px;margin:18px 0 0}.fa .contact-band h2{line-height:1.6;letter-spacing:0}.contact-band a{font-weight:800;border-bottom:1px solid #8eadf2;padding-bottom:12px;white-space:nowrap}.contact-band a span{margin-inline-start:18px}.page-heading{background:#fff;padding:clamp(85px,9vw,150px) clamp(24px,9vw,150px);max-width:1660px;margin:auto;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(3.2rem,6vw,7.2rem);line-height:1.18;letter-spacing:-.07em;max-width:1050px;margin:30px 0 26px}.fa .page-heading h1{font-size:clamp(2.7rem,5vw,5.9rem);line-height:1.5;letter-spacing:-.05em}.page-heading>p{font-size:1.2rem;line-height:1.85;color:var(--muted);max-width:790px}.text-layout{background:#fff;min-height:480px}.text-layout p{margin:0 0 24px}.tag-list{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0}.tag-list span{border:1px solid var(--line);padding:10px 15px;font-size:.78rem;font-weight:700;color:#3c506b}.fa .tag-list span{font-size:.85rem}.work-entries{max-width:1660px;margin:auto;background:#fff;padding:20px clamp(24px,9vw,150px) 120px}.work-entries article{display:grid;grid-template-columns:33% 1fr;gap:45px;border-bottom:1px solid var(--line);padding:72px 0}.work-meta{display:flex;flex-direction:column;gap:10px;color:var(--blue);font-size:.78rem;font-weight:800}.work-meta span+span{font-size:.82rem;font-weight:500;color:var(--muted)}.work-entries h2{font-size:clamp(2.1rem,3.2vw,4rem);line-height:1.3;letter-spacing:-.05em;margin:0 0 18px}.fa .work-entries h2{line-height:1.5;letter-spacing:0}.work-entries p{font-size:1.09rem;line-height:1.9;color:var(--muted);max-width:800px;margin:0 0 24px}.work-entries a{font-weight:800;color:var(--blue);border-bottom:1px solid var(--blue);padding-bottom:7px}.consult-list{border-top:1px solid var(--line);margin:45px 0}.consult-list>div{display:grid;grid-template-columns:60px 1fr;gap:15px;border-bottom:1px solid var(--line);padding:28px 0}.consult-list b{color:var(--blue)}.consult-list h3{font-size:1.35rem;margin:0 0 7px}.consult-list p{font-size:.96rem;margin:0}.contact-page{min-height:75vh}.contact-page .button{margin-top:30px}.private-page{max-width:1660px;margin:auto;min-height:75vh;padding:130px clamp(24px,9vw,150px);background:#132646;color:#fff}.private-page h1{font-size:clamp(3rem,5vw,6rem);letter-spacing:-.06em;margin:40px 0 25px}.private-page p{font-size:1.1rem;line-height:1.85;color:#cfdaee;max-width:700px}.private-page p[lang=fa]{font-family:Ravagh,Tahoma,sans-serif}.private-page a{display:inline-block;color:#fff;border-bottom:1px solid #9bb4ef;padding:8px 0;margin-top:24px}.footer{max-width:1660px;margin:auto;background:#f0f3f8;padding:58px clamp(24px,5vw,88px) 30px;display:grid;grid-template-columns:1fr auto;gap:45px}.footer-name{font-size:1.24rem;font-weight:800;letter-spacing:-.04em}.fa .footer-name{letter-spacing:0}.footer p{color:var(--muted);font-size:.85rem}.footer-links{display:flex;align-items:start;gap:30px;color:var(--blue);font-weight:800;font-size:.84rem}.footer-links a:last-child{font-size:1.5rem;color:#9aa8bb;line-height:.7}.footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;color:#7c8aa0;font-size:.75rem}a:focus-visible,button:focus-visible{outline:3px solid #3d72f2;outline-offset:4px}@media(max-width:1080px){.header nav{gap:14px}.header nav a{font-size:.75rem}.nav-wrap{gap:22px}.hero{grid-template-columns:55% 45%}.hero-copy{padding-inline:32px}.section{grid-template-columns:20% 1fr}.feature{padding:24px}}@media(max-width:820px){.nav-wrap{min-height:76px}.header nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 25px rgba(15,35,70,.12);padding:18px 24px 26px;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:.95rem}.header nav a[aria-current]:after{bottom:5px}.nav-side{margin-inline-start:auto}.menu-toggle{display:block}.hero{display:flex;flex-direction:column}.hero-copy{padding:70px 30px}.hero-media{min-height:420px}.strip{flex-wrap:wrap;justify-content:flex-start}.strip span+span{border:0;padding:0}.strip span{margin-inline-end:20px}.section{grid-template-columns:1fr;gap:26px}.expertise,.feature-grid{grid-template-columns:1fr}.expertise>div{padding-bottom:25px;border-bottom:1px solid var(--line)}.feature{min-height:300px}.feature h3{margin-top:42px}.work-entries article{grid-template-columns:1fr;gap:22px}.contact-band{align-items:start;flex-direction:column}.page-heading{padding:90px 30px}.section-title-row{align-items:start}}@media(max-width:520px){.wordmark strong{font-size:.93rem}.fa .wordmark strong{font-size:1rem}.wordmark small{font-size:.55rem}.nav-wrap{padding:0 18px}.language{padding:7px 10px}.hero-copy{padding:60px 24px}.hero h1{margin:30px 0 22px}.hero-media{min-height:320px}.hero-media figcaption{bottom:18px}.strip{padding:20px 24px;gap:10px}.strip span{font-size:.75rem}.section{padding:75px 24px}.section-title-row{display:block}.section-title-row h2{margin-bottom:12px}.section-title-row .text-action{margin-bottom:30px}.page-heading{padding:75px 24px}.work-entries{padding:10px 24px 80px}.work-entries article{padding:52px 0}.contact-band{padding:60px 24px}.footer{padding:50px 24px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.brand-mark,.footer-mark{display:inline-flex;align-items:center;justify-content:center;flex:none}.brand-mark img{width:64px;height:64px;object-fit:contain}.footer-mark img{width:58px;height:58px;object-fit:contain}.footer p{margin:12px 0 0}.header .nav-wrap{gap:28px}@media(max-width:520px){.brand-mark img{width:54px;height:54px}.footer-mark img{width:52px;height:52px}}

.fa .identity-name{font-weight:900}

.brand-mark{gap:12px;min-width:0}.brand-name{font-size:1.1rem;line-height:1.3;font-weight:900;white-space:nowrap;letter-spacing:0;color:var(--ink)}.en .brand-name{font-size:1.02rem;letter-spacing:-.025em}.brand-mark:hover .brand-name{color:var(--blue)}@media(max-width:1080px){.brand-name{font-size:1rem}.en .brand-name{font-size:.94rem}.header .nav-wrap{gap:18px}}@media(max-width:820px){.brand-name{font-size:1.05rem}.en .brand-name{font-size:.96rem}}@media(max-width:520px){.header .nav-wrap{gap:9px}.brand-mark{gap:7px}.brand-mark img{width:46px;height:46px}.brand-name{font-size:.88rem;white-space:normal;max-width:160px}.en .brand-name{font-size:.79rem;max-width:147px;line-height:1.2}.nav-side{gap:7px}.menu-toggle{padding:6px}.language{font-size:.72rem}}

.hero{min-height:630px}.hero-copy{justify-content:flex-start;padding-block:clamp(36px,4vw,62px) 62px}.hero h1,.fa .hero h1{margin:0 0 24px;line-height:1.16;max-width:700px}.fa .hero h1[lang=en]{font-size:clamp(3.1rem,5vw,6.3rem);letter-spacing:-.065em;line-height:1.16;text-align:right;align-self:stretch}.hero-copy>.hero-role,.fa .hero-copy>.hero-role{color:var(--blue);font-size:1.15rem;line-height:1.5;font-weight:800;max-width:650px;margin:0 0 27px;letter-spacing:0}.fa .hero-copy>.hero-role{text-align:right;align-self:stretch}.hero-media{min-height:630px}.hero-media img{object-position:center 38%}@media(max-width:820px){.hero-copy{padding:38px 30px 55px}.hero-media{min-height:420px}}@media(max-width:520px){.hero-copy{padding:30px 24px 48px}.hero h1,.fa .hero h1[lang=en]{font-size:clamp(2.7rem,11vw,3.5rem);line-height:1.17;margin-bottom:19px}.hero-copy>.hero-role,.fa .hero-copy>.hero-role{font-size:1rem;margin-bottom:24px}.hero-media{min-height:360px}}

/* Keep Latin glyphs at their intended spacing. */
.en .hero h1,.en .page-heading h1,.en .section h2,.en .feature h3,.en .contact-band h2,.en .work-entries h2,.en .private-page h1,.en .brand-name,.en .expertise h3{letter-spacing:0}.fa .hero h1{font-size:clamp(2.55rem,4.3vw,5.2rem);line-height:1.42;letter-spacing:0;max-width:740px}.fa .hero-copy>.hero-role{line-height:1.8;text-align:right}.en .hero h1{line-height:1.22}@media(max-width:520px){.fa .hero h1{font-size:clamp(2.4rem,9.5vw,3.4rem);line-height:1.45}}

.about-heading h1{max-width:1050px}.skills-section{background:#fff;border-top:1px solid var(--line)}.skills-section h2{margin-bottom:35px}.strength-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.strength-grid>div{background:#edf2f9;padding:28px;min-height:235px;display:flex;flex-direction:column;justify-content:space-between}.strength-grid span{color:var(--blue);font-size:.85rem;font-weight:800}.strength-grid h3{font-size:clamp(1.35rem,1.75vw,1.9rem);line-height:1.4;margin:24px 0 0}.fa .strength-grid h3{line-height:1.65}.skills-subtitle{font-size:1.3rem;margin:55px 0 20px}.skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;list-style:none;padding:0;margin:0 0 42px;border-top:1px solid var(--line)}.skill-list li{border-bottom:1px solid var(--line);padding:18px 0;font-size:1rem;line-height:1.6;font-weight:600}.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:760px;margin:44px 0 34px}.contact-methods>div{border-top:1px solid var(--line);padding-top:18px;display:flex;flex-direction:column;gap:10px}.contact-methods span{color:var(--muted);font-size:.88rem}.contact-methods a{font-size:1.2rem;font-weight:800;overflow-wrap:anywhere;width:max-content;max-width:100%}.contact-methods a:hover{color:var(--blue)}.fa .contact-methods a[dir=ltr]{align-self:flex-start}@media(max-width:820px){.strength-grid{grid-template-columns:1fr}.strength-grid>div{min-height:150px}.skill-list{grid-template-columns:1fr}}@media(max-width:520px){.contact-methods{grid-template-columns:1fr}.strength-grid>div{padding:24px}}

/* The supplied signal image forms a restrained header backdrop. */
.header{background:linear-gradient(rgba(7,19,33,.73),rgba(7,19,33,.8)),url('/assets/signal-header.jpg') center bottom/cover no-repeat;border-bottom-color:#324456}
.header .brand-name,.header nav a,.header .language{color:#fff}
.header .brand-mark:hover .brand-name,.header nav a:hover,.header nav a[aria-current]{color:#f0c982}
.header nav a[aria-current]:after{background:#f0c982}
.header .language{border-color:rgba(255,255,255,.45)}
.header .language:hover{border-color:#f0c982;color:#f0c982}
.header .brand-mark img{background:#fff;border-radius:8px;padding:5px}
.header .menu-toggle span{background:#fff}
.overview-image{margin:0;min-height:435px;overflow:hidden;background:#132646;align-self:stretch}
.overview-image img{width:100%;height:100%;min-height:435px;object-fit:cover;object-position:43% center}
.section-links{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
.contact-page{padding-inline:clamp(24px,6vw,100px)}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.83fr);align-items:center;gap:clamp(35px,5vw,90px)}
.contact-copy h1{font-size:clamp(2.8rem,4.3vw,5.7rem);max-width:720px}
.fa .contact-copy h1{font-size:clamp(2.5rem,3.8vw,5rem)}
.contact-art{margin:0;align-self:start}
.contact-art img{width:100%;height:auto;display:block;border:1px solid var(--line)}
@media(max-width:1120px) and (min-width:821px){.header nav{display:none;position:absolute;top:96px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 25px rgba(15,35,70,.12);padding:18px 32px 26px;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:.95rem}.header .menu-toggle{display:block}.header nav a[aria-current]:after{bottom:5px}}
@media(max-width:1120px){.header nav.open a{color:var(--muted)}.header nav.open a:hover,.header nav.open a[aria-current]{color:var(--blue)}.header nav.open a[aria-current]:after{background:var(--blue)}}
@media(max-width:820px){.header{background-size:cover,auto 260px;background-position:center,center bottom}.overview-image,.overview-image img{min-height:260px;height:260px}.contact-layout{grid-template-columns:1fr}.contact-art{max-width:620px}.section-links{margin-bottom:25px}}
@media(max-width:520px){.contact-copy h1,.fa .contact-copy h1{font-size:clamp(2.5rem,10vw,3.8rem)}.contact-layout{gap:35px}.header{background-size:cover,auto 260px}}

/* White and gold signal header. The slogan stays live text in both languages. */
.header{background:#fff url('/assets/signal-wave.svg') center bottom/100% 92px no-repeat;border-bottom:1px solid #d7c7a8}
.header .nav-wrap{max-width:1920px;min-height:138px;padding-inline:clamp(22px,3vw,62px);gap:clamp(15px,1.7vw,32px)}
.header .brand-mark{flex:none}.header .brand-mark img{background:transparent;border-radius:0;padding:0}
.header .brand-name,.header nav a,.header .language{color:var(--ink)}
.header .brand-mark:hover .brand-name,.header nav a:hover,.header nav a[aria-current]{color:#9a743b}
.header nav a[aria-current]:after{background:#b18c4a}
.header nav{margin-inline-start:0;gap:clamp(12px,1.25vw,24px)}
.header nav a{font-size:.82rem}
.header .language{border-color:#d7c7a8}
.header .language:hover{border-color:#b18c4a;color:#8a672e}
.header .menu-toggle span{background:var(--ink)}
.header-slogan{flex:1;min-width:220px;text-align:center;white-space:nowrap;margin:0;color:var(--ink);font-size:clamp(1.08rem,1.3vw,1.42rem);font-weight:900;line-height:1.35;letter-spacing:0}
.fa .header-slogan{font-size:clamp(1.12rem,1.38vw,1.5rem)}
.contact-page{padding-top:clamp(38px,4.5vw,72px)}
.contact-copy h1{margin-top:0}
.contact-methods{grid-template-columns:1fr;gap:0;margin:34px 0 0;max-width:560px}
.contact-methods>div{padding:14px 0 16px;gap:6px}
.contact-methods a{font-size:1.04rem;line-height:1.5}
.contact-art-fa{border:1px solid var(--line);background:#fff}
.contact-art-frame{aspect-ratio:1254/828;overflow:hidden}
.contact-art-frame img{width:100%;height:auto;border:0}
.meme-caption{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);text-align:center}
.meme-caption>div{padding:16px 12px 20px}
.meme-caption>div+div{border-inline-start:1px solid var(--line)}
.meme-caption b{font-size:1.07rem;color:var(--ink)}
.meme-caption div:last-child b{color:#1263a3}
.meme-caption p{font-size:.88rem;line-height:1.65;margin:8px 0 0;color:#344357}
@media(max-width:1500px) and (min-width:821px){.header nav{display:none;position:absolute;top:138px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 25px rgba(15,35,70,.12);padding:18px 32px 26px;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:.95rem}.header .menu-toggle{display:block}.header nav a[aria-current]:after{bottom:5px}}
@media(max-width:820px){.header{background-size:100% 80px}.header .nav-wrap{min-height:115px}.header nav{top:115px}.header-slogan{font-size:1.18rem;min-width:0}.fa .header-slogan{font-size:1.22rem}}
@media(max-width:520px){.header{background-size:auto 66px}.header .nav-wrap{min-height:145px;flex-wrap:wrap;align-content:center;padding-block:12px;gap:5px 8px}.header .brand-mark{order:1}.header .nav-side{order:2;margin-inline-start:auto}.header-slogan{order:3;flex:none;width:100%;font-size:1.04rem;white-space:normal;margin-top:8px}.fa .header-slogan{font-size:1.12rem}.header nav{top:145px}.meme-caption{grid-template-columns:1fr}.meme-caption>div+div{border-inline-start:0;border-top:1px solid var(--line)}}

/* Longer, repeatedly fading gold signal and two readable slogan layers. */
.header{background-size:100% 128px}
.header .nav-wrap{min-height:170px}
.header-slogan{position:relative;flex:1;min-width:385px;height:105px;display:flex;align-items:flex-end;justify-content:center;overflow:visible;text-align:center;margin:0}
.header-slogan-main,.header-slogan-ghost{display:block;white-space:nowrap;direction:inherit;letter-spacing:0}
.header-slogan-main{position:relative;z-index:1;font-size:clamp(1.65rem,1.9vw,2.2rem);line-height:1.25;font-weight:900;color:rgba(129,91,30,.50);margin-bottom:8px;mask-image:linear-gradient(to right,#000 0%,#000 60%,rgba(0,0,0,.72) 100%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 60%,rgba(0,0,0,.72) 100%)}
.header-slogan-ghost{position:absolute;left:50%;top:0;transform:translateX(-50%);font-size:clamp(2.3rem,2.6vw,3.2rem);line-height:1.15;font-weight:900;color:transparent;-webkit-text-stroke:1px rgba(129,91,30,.20);mask-image:linear-gradient(to right,#000 0%,#000 60%,rgba(0,0,0,.56) 100%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 60%,rgba(0,0,0,.56) 100%)}
.fa .header-slogan-main,.fa .header-slogan-ghost{mask-image:linear-gradient(to left,#000 0%,#000 60%,rgba(0,0,0,.72) 100%);-webkit-mask-image:linear-gradient(to left,#000 0%,#000 60%,rgba(0,0,0,.72) 100%)}
.fa .header-slogan-main{font-size:clamp(1.72rem,2vw,2.3rem)}
.fa .header-slogan-ghost{font-size:clamp(2.35rem,2.7vw,3.3rem);mask-image:linear-gradient(to left,#000 0%,#000 60%,rgba(0,0,0,.56) 100%);-webkit-mask-image:linear-gradient(to left,#000 0%,#000 60%,rgba(0,0,0,.56) 100%)}
@media(max-width:1750px) and (min-width:821px){.header nav{display:none;position:absolute;top:170px;left:0;right:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 20px 25px rgba(15,35,70,.12);padding:18px 32px 26px;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:.95rem}.header .menu-toggle{display:block}.header nav a[aria-current]:after{bottom:5px}}
@media(max-width:1100px) and (min-width:761px){.header-slogan{min-width:300px}.header-slogan-main{font-size:1.52rem}.fa .header-slogan-main{font-size:1.62rem}.header-slogan-ghost{font-size:2.15rem}.fa .header-slogan-ghost{font-size:2.25rem}}
@media(max-width:820px){.header{background-size:100% 105px}.header .nav-wrap{min-height:145px}.header nav{top:145px}.header-slogan{height:92px;min-width:290px}}
@media(max-width:760px){.header .nav-wrap{min-height:163px;flex-wrap:wrap;align-content:center;gap:4px 10px;padding-block:11px}.header .brand-mark{order:1}.header .nav-side{order:2;margin-inline-start:auto}.header-slogan{order:3;flex:none;width:100%;height:70px;min-width:0}.header-slogan-main{font-size:1.48rem;margin-bottom:4px}.fa .header-slogan-main{font-size:1.58rem}.header-slogan-ghost{font-size:1.95rem;top:-7px}.fa .header-slogan-ghost{font-size:2.05rem}.header nav{top:163px}}
@media(max-width:520px){.header{background-size:auto 85px}.header .nav-wrap{min-height:164px}.header nav{top:164px}.header-slogan{height:67px;margin-top:0}.header-slogan-main{font-size:1.28rem}.fa .header-slogan-main{font-size:1.36rem}.header-slogan-ghost{font-size:1.65rem;top:0}.fa .header-slogan-ghost{font-size:1.75rem}}

/* Logo, section links, single slogan, and language, in that order. */
.header{background-size:100% 112px}
.header .nav-wrap{max-width:1660px;min-height:132px;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(245px,370px) auto;grid-template-areas:"brand nav slogan language";align-items:end;column-gap:clamp(12px,1.5vw,24px);padding:12px clamp(22px,3vw,52px) 16px}
.header .brand-mark{grid-area:brand;align-self:end;padding-bottom:5px}
.header .header-slogan{grid-area:slogan;min-width:0;height:58px;align-self:end;justify-content:center;text-align:center;overflow:hidden}
.header-slogan-main{font-size:clamp(1.25rem,1.45vw,1.75rem);margin-bottom:7px}
.fa .header-slogan-main{font-size:clamp(1.3rem,1.5vw,1.8rem)}
.header .nav-side{grid-area:language;align-self:end;margin:0;padding-bottom:6px}
.header nav,.header nav.open{grid-area:nav;display:flex;min-width:0;width:auto;position:static;top:auto;left:auto;right:auto;flex-direction:row;align-items:center;justify-content:flex-start;gap:clamp(12px,1.2vw,21px);margin:0;padding:0;border:0;background:transparent;box-shadow:none;overflow-x:auto;overscroll-behavior-inline:contain;white-space:nowrap;scrollbar-width:thin;scrollbar-color:rgba(177,140,74,.45) transparent}
.header nav a,.header nav.open a{flex:none;padding:9px 0 12px;font-size:.82rem;color:var(--ink)}
.header nav a:hover,.header nav a[aria-current],.header nav.open a:hover,.header nav.open a[aria-current]{color:#9a743b}
.header nav a[aria-current]:after,.header nav.open a[aria-current]:after{bottom:4px;background:#b18c4a}
.header .menu-toggle{display:none}
@media(max-width:900px){
 .header .nav-wrap{min-height:146px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand nav nav" "slogan slogan language";row-gap:2px;padding-block:10px 12px}
 .header .header-slogan{height:45px;justify-content:flex-start;text-align:start}
 .header nav,.header nav.open{gap:20px}
 .header .nav-side{padding-bottom:5px}
}
@media(max-width:620px){
 .header{background-size:auto 105px}
 .header .nav-wrap{min-height:132px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand nav nav" "slogan slogan language";row-gap:3px;padding:9px 18px 10px}
 .header .brand-mark{padding:0}
 .header .brand-mark img{width:48px;height:48px}
 .header .header-slogan{width:100%;height:43px}
 .header-slogan-main{font-size:clamp(1.08rem,4vw,1.32rem);margin-bottom:3px}
 .fa .header-slogan-main{font-size:clamp(1.1rem,4.1vw,1.38rem)}
 .header nav,.header nav.open{gap:18px;justify-content:flex-start}
 .header nav a,.header nav.open a{font-size:.79rem;padding:8px 0 11px}
}

/* Footer identity sits beside the mark, with the private door kept discreet. */
.footer-identity{display:flex;align-items:center;gap:18px;min-width:0}
.footer .footer-copy{display:flex;flex-direction:column;gap:3px;margin:0;line-height:1.55}
.footer-copy strong{color:var(--ink);font-size:1.02rem;font-weight:850}
.footer-copy span{color:var(--muted);font-size:.86rem}
.footer-links{align-self:center}
@media(max-width:520px){.footer-identity{gap:12px}.footer-copy strong{font-size:.92rem}.footer-copy span{font-size:.78rem;line-height:1.6}}
