
:root{--ink:#101312;--ink-deep:#090b0b;--ink-soft:#202322;--gold:#e2bc68;--gold-bright:#f8d987;--gold-muted:#aa823c;--cream:#f7f5ef;--cream-2:#ece9e0;--white:#fff;--text:#2c2c2b;--muted:#66645d;--border:#ded9cf;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.65;color:var(--text);background:var(--cream);-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.18}:focus-visible{outline:3px solid #e6a72e;outline-offset:4px}.container{width:min(var(--max),calc(100% - 72px));margin:auto}.skip{position:absolute;left:-9999px;top:0;background:#fff;padding:10px;z-index:999}.skip:focus{left:10px;top:10px}.preview{background:#282827;color:#e9d7ac;text-align:center;padding:8px 16px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.top-strip{background:#101211;border-bottom:1px solid rgba(255,255,255,.075);color:#cbc7bd;font-size:11px;letter-spacing:.06em}.top-strip .container{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:36px}.top-strip a{text-decoration:none}.top-strip a:hover{color:var(--gold-bright)}
.header{position:sticky;top:0;z-index:40;background:#111413;color:#fff;border-bottom:1px solid rgba(226,188,104,.20)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:89px;gap:18px}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;min-width:0}.brand-emblem{width:43px;height:43px;flex:0 0 43px;display:block;background:url('header-globe.png') center / contain no-repeat}.brand-name{font-family:Georgia,'Times New Roman',serif;font-size:20px;letter-spacing:.01em;line-height:1.1;color:#f5f3ee}.brand-tagline{font-family:Georgia,serif;font-style:italic;font-size:12px;color:var(--gold);margin-top:5px;letter-spacing:.035em}.nav{display:flex;align-items:center;gap:24px}.nav>a,.nav summary{font-size:12px;text-decoration:none;color:#e4e0d7;letter-spacing:.02em;transition:color .18s;white-space:nowrap;cursor:pointer}.nav>a:hover,.nav summary:hover{color:var(--gold)}.nav .nav-contact{border:1px solid rgba(226,188,104,.55);padding:13px 14px;color:#f3d897}.nav .nav-contact:hover{background:var(--gold);color:var(--ink)}.nav details{position:relative}.nav details>summary{list-style:none;display:flex;align-items:center;gap:7px}.nav details>summary::-webkit-details-marker{display:none}.nav details>summary:after{content:'⌄';font-size:14px;color:var(--gold)}.drop{position:absolute;top:31px;left:-14px;width:240px;background:#191d1b;border:1px solid #5a4b31;box-shadow:0 16px 40px rgba(0,0,0,.35);padding:8px;display:grid;gap:2px}.drop a{color:#eee7db;text-decoration:none;display:block;font-size:12px;padding:9px 11px;line-height:1.4}.drop a:hover{background:#2b2c25;color:var(--gold-bright)}.menu-toggle{display:none;align-items:center;gap:8px;background:transparent;border:1px solid rgba(226,188,104,.55);color:var(--gold);padding:10px 13px;cursor:pointer;font-size:12px}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 68% 45%,#20201a 0%,#111312 48%,#090b0b 100%);color:#fff;isolation:isolate;min-height:560px}.hero:before,.page-hero:before{content:'';position:absolute;inset:0;opacity:.15;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='170' viewBox='0 0 150 170'%3E%3Cpath d='M75 3 145 44v82l-70 41L5 126V44Z' fill='none' stroke='%23bca468' stroke-width='.7'/%3E%3C/svg%3E");background-size:142px 161px;mask-image:linear-gradient(to right,transparent 22%,#000 92%)}.hero-image{position:absolute;z-index:-1;right:max(3vw,calc((100vw - 1300px)/2));top:15px;height:calc(100% - 15px);width:min(52vw,690px);background:url('golden-globe.webp') right center / contain no-repeat;filter:drop-shadow(0 8px 45px rgba(238,184,62,.12));mask-image:linear-gradient(to right,transparent 0%,#000 34%)}.hero:after,.page-hero:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent 0%,#b0822f 53%,#f9d27b 80%,transparent 100%)}.hero-inner{padding:98px 0 88px;position:relative}.eyebrow{font-size:11px;letter-spacing:.21em;font-weight:bold;text-transform:uppercase;color:#d6ac60;display:flex;align-items:center;gap:14px}.eyebrow:before{content:'';height:1px;width:34px;background:var(--gold)}.hero h1{font:400 clamp(45px,5.3vw,75px)/1.09 Georgia,serif;max-width:660px;margin:27px 0 22px;letter-spacing:-.045em;text-wrap:balance}.hero h1 em{color:var(--gold-bright);font-style:normal}.hero-lead{font-size:17px;line-height:1.75;color:#deded8;max-width:570px;margin-bottom:32px}.actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.button{min-height:48px;padding:15px 24px;text-decoration:none;font-weight:700;font-size:12px;letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:13px;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:linear-gradient(130deg,#f5d689,#d8a94f);color:#171511}.button-quiet{border:1px solid rgba(235,224,201,.45);color:#f9f4e5}.button-quiet:hover{border-color:var(--gold);color:var(--gold)}.hero-foot{display:flex;flex-wrap:wrap;gap:12px 27px;margin-top:50px;color:#b8b7b2;font-size:11px}.hero-foot span:before{content:'◆';font-size:7px;color:var(--gold);margin-right:10px}
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 85% 60%,#2c281e,#171a19 55%,#0b0d0c);color:#fff;padding:74px 0 77px}.page-hero:before{opacity:.12}.crumbs{font-size:12px;color:#c1b6a1;margin-bottom:30px}.crumbs a{text-decoration:none;color:#ead3a3}.crumbs a:hover{text-decoration:underline}.page-hero h1{font:400 clamp(39px,4.3vw,61px)/1.11 Georgia,serif;max-width:880px;letter-spacing:-.033em;margin:15px 0 18px}.page-hero p{max-width:735px;color:#d5d4cd;font-size:16px;line-height:1.8;margin:0}.page-hero .orb{position:absolute;right:7%;top:-64px;width:330px;height:330px;background:url('header-globe.png') center/contain no-repeat;opacity:.13;z-index:-1}
.section{padding:85px 0}.section-cream{background:var(--cream)}.section-white{background:#fff}.section-soft{background:#f0eee7}.section-dark{background:#181b19;color:#f1eee7}.section-heading{text-align:center;max-width:810px;margin:0 auto 45px}.section-kicker{font-size:11px;letter-spacing:.20em;text-transform:uppercase;font-weight:700;color:#947038;margin-bottom:15px}.section-dark .section-kicker{color:#d7b675}.section-heading h2{font:400 clamp(33px,3.6vw,49px)/1.15 Georgia,serif;letter-spacing:-.033em;color:#141818;margin-bottom:17px}.section-dark h2,.section-dark h3{color:#f6f2e9}.section-heading p{font-size:15px;line-height:1.8;color:#66635d;max-width:690px;margin:0 auto}.section-dark p{color:#c5c5c0}.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:start}.intro-layout h2,.split h2{font:400 clamp(32px,3vw,44px)/1.18 Georgia,serif;letter-spacing:-.028em;margin:0 0 21px}.prose p,.prose li{font-size:15px;line-height:1.86;color:#4f534f;margin:0 0 17px}.section-dark .prose p,.section-dark .prose li{color:#d1d0cb}.prose a{color:#89672e}.rule-list{list-style:none;padding:0;margin:0}.rule-list li{padding:15px 0 15px 22px;border-bottom:1px solid #ded7c8;position:relative}.rule-list li:before{content:'◆';position:absolute;left:0;color:#b38b47;font-size:8px;top:22px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid #e5e0d6;border-top:3px solid #d6ae63;padding:29px 27px 27px;display:flex;flex-direction:column;min-height:260px;box-shadow:0 9px 32px rgba(9,10,10,.035)}.card-number{color:#a38247;font-size:11px;font-weight:700;letter-spacing:.11em}.card h3{font:400 25px/1.3 Georgia,serif;margin:21px 0 13px;color:#181b19}.card p{color:#5d5d58;font-size:14px;line-height:1.76;flex:1}.card a,.text-link{font-size:12px;color:#80602b;font-weight:700;text-decoration:none;border-bottom:1px solid transparent;align-self:start}.card a:hover,.text-link:hover{border-bottom-color:#9d773b}.small-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.small-card{padding:25px 22px;background:#202422;color:#f4f0e6;text-decoration:none;border:1px solid #645338;transition:background .18s,border .18s}.small-card:hover{background:#30332b;border-color:#e8bb69}.small-card h3{font:400 24px/1.22 Georgia,serif;margin:0 0 8px}.small-card p{font-size:12px;color:#c0beb7;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}.seal{background:#161918;padding:36px;min-height:320px;border:1px solid #9e803f;color:#f5efdf;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.seal:after{content:'';position:absolute;border:1px solid rgba(227,184,95,.4);width:350px;height:350px;border-radius:50%;right:-160px;bottom:-160px;box-shadow:0 0 0 20px rgba(222,179,90,.03),0 0 0 75px rgba(222,179,90,.03)}.seal .since{color:#c8ad70;font-size:12px;letter-spacing:.22em;text-transform:uppercase}.seal .year{font:400 90px Georgia,serif;color:var(--gold-bright);line-height:1}.seal .seal-bottom{color:#c5c4bd;font-size:12px;line-height:1.6;max-width:210px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail-block{padding:28px;background:#fff;border-left:3px solid #bf9957;box-shadow:0 9px 35px rgba(0,0,0,.03)}.detail-block h3{font:400 24px Georgia,serif;margin:0 0 13px}.detail-block p,.detail-block li{font-size:14px;line-height:1.8;color:#555953}.detail-block ul{padding-left:20px;margin:0}.tag-grid{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;align-items:stretch}.tag{padding:9px 13px;border:1px solid #d3c6a9;background:#faf8f3;font-size:12px;line-height:1.45;color:#454943;text-align:center;display:inline-flex;align-items:center;justify-content:center}.content-max{max-width:920px}.callout{background:#f1ede3;border-left:3px solid #ae8645;padding:22px 25px;margin:25px 0;font-size:14px;line-height:1.8;color:#4e514b}.quote{font:italic 21px/1.6 Georgia,serif;color:#5d5340;padding:30px 0 12px}.quote cite{display:block;font:normal 12px Arial,sans-serif;color:#7a725f;margin-top:8px}.faq-list{display:grid;gap:11px}.faq-list details{background:#fff;border:1px solid #e1dbd0;padding:20px 25px}.faq-list summary{font-weight:700;color:#202522;cursor:pointer;list-style:none;padding-right:20px;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:0;font-size:20px;color:#aa823c}.faq-list details[open] summary:after{content:'−'}.faq-list .answer{margin-top:15px;color:#565a54;font-size:14px;line-height:1.85}.faq-list .answer p{margin-bottom:9px}.cta{background:linear-gradient(115deg,#111514,#0b0c0c);color:#fff;position:relative;overflow:hidden;padding:79px 0}.cta:after{content:'';position:absolute;width:400px;height:400px;border-radius:50%;border:1px solid rgba(230,194,108,.20);right:-160px;top:-155px;box-shadow:0 0 0 38px rgba(210,160,50,.04),0 0 0 85px rgba(210,160,50,.03)}.cta-layout{display:flex;justify-content:space-between;align-items:center;gap:30px;position:relative;z-index:1}.cta h2{font:400 clamp(34px,3.7vw,52px)/1.1 Georgia,serif;margin:14px 0 15px}.cta p{font-size:15px;color:#c9c9c3;max-width:670px;margin:0}.footer{background:#0b0e0d;color:#c9c9c3;border-top:1px solid #332d22;padding:41px 0 22px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:start}.footer-brand{font:400 24px Georgia,serif;color:#f2eee5}.footer-links{display:flex;gap:16px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.footer-links a{font-size:12px;color:#d8d7cf;text-decoration:none}.footer-links a:hover{color:var(--gold)}.footer-rule{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:11px;color:#99978d;border-top:1px solid #2e322d;margin-top:34px;padding-top:17px}.editor-note{background:#fff6e4;border:1px dashed #c8a66d;padding:16px 19px;font-size:13px;color:#6a542c;margin:18px 0}.editor-note strong{color:#594214}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{padding:14px 15px;text-align:left;border-bottom:1px solid #ddd3c2;font-size:13px;vertical-align:top}th{background:#eee7d8;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.legal-copy h2{font:400 29px Georgia,serif;color:#1b201d;margin:32px 0 12px}.legal-copy p{color:#505650;font-size:14px;line-height:1.88;margin:0 0 16px}
@media(max-width:1150px){.nav{gap:13px}.nav>a,.nav summary{font-size:11px}.brand-name{font-size:18px}.container{width:min(var(--max),calc(100% - 48px))}}
@media(max-width:950px){.header-inner{min-height:82px}.menu-toggle{display:flex}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#151816;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 18px;box-shadow:0 14px 29px rgba(0,0,0,.3);max-height:calc(100vh - 90px);overflow:auto}.nav.open{display:flex}.nav>a,.nav summary{display:block;padding:12px 8px;font-size:14px}.nav details>summary{display:flex}.nav .nav-contact{text-align:center;margin-top:8px}.drop{position:static;width:auto;margin:0 4px 8px;box-shadow:none;padding:6px}.card-grid{grid-template-columns:repeat(2,1fr)}.small-card-grid{grid-template-columns:repeat(2,1fr)}.hero-image{opacity:.6;right:-80px;width:62vw;mask-image:linear-gradient(to right,transparent 2%,#000 80%)}}
@media(max-width:690px){.container{width:calc(100% - 34px)}.top-strip .container{justify-content:center;text-align:center;min-height:33px}.top-strip .container span:first-child{display:none}.brand-name{font-size:16px}.brand-tagline{font-size:10px}.brand-emblem{width:35px;height:35px;flex-basis:35px}.preview{font-size:9px;letter-spacing:.08em}.hero{min-height:0}.hero-image{width:90vw;top:20px;right:-38vw;opacity:.26}.hero-inner{padding:72px 0 67px}.hero h1{font-size:clamp(39px,9vw,57px)}.hero-lead{font-size:15px}.hero-foot{margin-top:34px}.page-hero{padding:55px 0 58px}.page-hero .orb{right:-130px;opacity:.08}.page-hero h1{font-size:37px}.section{padding:64px 0}.intro-layout,.split,.details-grid{grid-template-columns:1fr;gap:25px}.card-grid,.small-card-grid{grid-template-columns:1fr}.card{min-height:auto}.seal{min-height:265px}.seal .year{font-size:77px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:34px}.cta{padding:65px 0}.cta-layout,.footer-top{flex-direction:column;align-items:start}.footer-links{justify-content:flex-start}.button{font-size:11px;padding:14px 17px}.detail-block{padding:22px}.quote{font-size:18px}.faq-list details{padding:18px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.nav a,.small-card{transition:none}}

/* Our Clients page and homepage teaser */
.client-teaser{display:grid;grid-template-columns:.88fr 1.12fr;gap:52px;align-items:center}
.client-teaser .prose h2{font:400 clamp(32px,3.3vw,46px)/1.16 Georgia,serif;letter-spacing:-.025em;color:var(--ink);margin:0 0 22px}
.client-teaser .prose .button{margin-top:10px}
.client-teaser-frame{display:block;background:#fff;border:1px solid #d6c6a7;padding:12px;box-shadow:0 18px 48px rgba(11,15,13,.08);text-decoration:none;position:relative}
.client-teaser-frame:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(to right,#9b7437,#f1d48f)}
.client-teaser-frame img{width:100%;height:345px;object-fit:cover;object-position:center top;background:#fff}
.client-portfolio{background:#fff;border:1px solid #d6c6a7;padding:clamp(10px,2vw,23px);margin:0 auto;max-width:1040px;box-shadow:0 14px 46px rgba(9,10,10,.075)}
.client-portfolio img{width:100%;height:auto;margin:0 auto;background:#fff}
.client-portfolio figcaption{text-align:center;font-size:12px;line-height:1.7;color:#777065;margin-top:18px}
.client-image-fallback{font-size:12px;text-align:center;color:#666;margin-top:16px}.client-image-fallback a{color:#825d25}
@media(max-width:1180px){.menu-toggle{display:flex}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#151816;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 18px;box-shadow:0 14px 29px rgba(0,0,0,.3);max-height:calc(100vh - 90px);overflow:auto}.nav.open{display:flex}.nav>a,.nav summary{display:block;padding:12px 8px;font-size:14px}.nav details>summary{display:flex}.nav .nav-contact{text-align:center;margin-top:8px}.drop{position:static;width:auto;margin:0 4px 8px;box-shadow:none;padding:6px}}
@media(max-width:780px){.client-teaser{grid-template-columns:1fr;gap:28px}.client-teaser-frame img{height:280px}}

/* ELS 2026 company statistics, matching approved black-and-gold styling */
.section-stats{background:#171a19;color:#f5f0e6}
.section-stats .section-heading h2{color:#f5f0e6}
.section-stats .section-heading p{color:#c7c5bd}
.section-stats .section-kicker{color:#e0ba70}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 15px;min-height:164px;border:1px solid rgba(226,188,104,.32);background:rgba(255,255,255,.035)}
.stat-item strong{display:block;color:#e9c77d;font:400 clamp(23px,2.5vw,33px)/1.2 Georgia,serif;letter-spacing:-.02em;overflow-wrap:anywhere}
.stat-item span{display:block;color:#d0cdc5;margin-top:15px;font-size:12px;line-height:1.6}
@media(max-width:850px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.stats-grid{grid-template-columns:1fr}.stat-item{min-height:115px;padding:20px 14px}}

/* V5: deliberate two-line, centred services heading */
.section-heading .heading-second-line{display:block;margin-top:.12em}
/* Justify long-form reading on wider screens, without stretching card text or headings. */
@media (min-width:781px){
  .prose p, .legal-copy p{
    text-align:justify;
    text-align-last:left;
    hyphens:auto;
    -webkit-hyphens:auto;
  }
}
/* More comfortable left-aligned reading on phones and smaller tablets. */
@media (max-width:780px){
  .prose p, .legal-copy p{
    text-align:left;
    hyphens:manual;
    -webkit-hyphens:manual;
  }
}

/* On narrower layouts, keep an immediate quotation link beside the Menu button.
   Wide layouts retain the full navigation and its existing quotation link. */
.header-quote{display:none;text-decoration:none;align-items:center;justify-content:center;color:#f3d897;border:1px solid rgba(226,188,104,.6);padding:10px 12px;font-size:12px;white-space:nowrap;line-height:1.2}
.header-quote:hover,.header-quote:focus-visible{background:var(--gold);color:var(--ink)}
@media(max-width:1180px){.header-inner{justify-content:flex-start}.brand{margin-right:auto}.header-quote{display:inline-flex}}
@media(max-width:530px){.brand{gap:7px}.brand-name{font-size:13px}.brand-tagline{font-size:10px}.brand-emblem{width:31px;height:31px;flex-basis:31px}.menu-toggle{padding:10px 8px;font-size:11px}.header-quote{padding:10px 8px;font-size:11px}.header-inner{gap:8px}}


/* V7: Dark-to-ivory closing treatment, preserving the approved black/gold identity. */
.cta{
  background:
    radial-gradient(ellipse at 86% 34%, rgba(177,131,65,.18), transparent 43%),
    linear-gradient(112deg, #242724 0%, #202420 47%, #2c281f 100%);
}
.cta:after{
  border-color:rgba(230,194,108,.33);
  box-shadow:0 0 0 38px rgba(210,160,50,.035),0 0 0 85px rgba(210,160,50,.025);
}
.footer{
  background:linear-gradient(180deg,#f4f0e8 0%,#eae5db 100%);
  color:#3f423e;
  border-top:2px solid #b79559;
  padding:49px 0 25px;
}
.footer-brand{color:#1d211f}
.footer .brand-tagline{color:#886a34}
.footer .footer-description{font-size:12px;line-height:1.72;color:#61645d;margin-top:12px;max-width:340px}
.footer-links a{color:#41433e}
.footer-links a:hover{color:#825e2d;text-decoration:underline}
.footer-rule{color:#696b64;border-top:1px solid #cec3b1;margin-top:34px;padding-top:17px}


/* V8: refined header actions, consistent quotations, and mobile-first controls. */
@media (max-width:1180px){
 .header-inner{gap:10px}
 .menu-toggle,.header-quote{height:42px;min-height:42px;width:128px;min-width:128px;padding:0 9px;justify-content:center;align-items:center;gap:7px;flex:0 0 128px;line-height:1.1;font-size:12px;text-align:center}
 .menu-toggle{border:1px solid rgba(226,188,104,.65);background:transparent;color:#f1d18a}
 .header-quote{background:linear-gradient(115deg,#f5d78d,#d8ad59);border:1px solid #e1bc71;color:#171711;text-transform:uppercase;font-weight:700;font-size:11px;letter-spacing:.015em}
 .header-quote:hover{background:#ffe3a0;color:#131513}
 .quote-short{display:none}
}
@media(min-width:1181px){.quote-short{display:none}}
@media (max-width:700px){
 .menu-toggle,.header-quote{width:90px;min-width:90px;flex-basis:90px;height:39px;min-height:39px;font-size:11px;padding:0 5px}
 .quote-long{display:none}.quote-short{display:inline}
 .header-inner{gap:7px}
 .brand{gap:7px}
 .brand-name{font-size:13px}
 .brand-tagline{font-size:9px}
 .brand-emblem{width:30px;height:30px;flex-basis:30px}
 .menu-icon{font-size:11px}
}
@media (max-width:400px){
 .menu-toggle,.header-quote{width:78px;min-width:78px;flex-basis:78px}
 .header-inner{gap:6px}
 .brand-name{font-size:12px}
 .brand-tagline{font-size:9px}
}
/* The full-width other-languages panel makes the four main language tiles a balanced group. */
.language-feature{display:flex;flex-direction:column;align-items:center;text-align:center;gap:11px;margin-top:18px;padding:35px 38px;background:radial-gradient(ellipse at 50% 0%,rgba(195,150,75,.16),transparent 70%),linear-gradient(112deg,#292923,#202320);border:1px solid #a4844b;text-decoration:none;color:#f8f2e7;transition:background .2s,border-color .2s}
.language-feature:hover{background:linear-gradient(115deg,#353124,#262923);border-color:#edce8a}
.language-feature-kicker{font-size:10px;letter-spacing:.22em;font-weight:700;color:#dfbf78}
.language-feature h3{font:400 clamp(24px,2.8vw,35px)/1.2 Georgia,serif;color:#fbf2db;margin:0}
.language-feature p{font-size:13px;line-height:1.75;color:#cfc7b7;max-width:700px;margin:0}
.language-feature-action{color:#eac989;font-weight:700;font-size:12px;padding-top:5px}
@media(max-width:690px){
 .small-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .small-card{padding:19px 16px}
 .small-card h3{font-size:21px}
 .small-card p{font-size:11px}
 .language-feature{padding:29px 19px;margin-top:13px}
}
/* Justify on comfortably wide text blocks, without automatic word splitting. */
.prose p,.legal-copy p{hyphens:none;-webkit-hyphens:none;word-break:normal}
@media(min-width:781px){.prose p,.legal-copy p{text-align:justify;text-align-last:left}}
@media(max-width:780px){.prose p,.legal-copy p{text-align:left}}
/* Echo the approved gold globe softly in the closing call-to-action without a framed screenshot. */
.cta{isolation:isolate;background:linear-gradient(112deg,#252824 0%,#252821 50%,#201d18 100%)}
.cta:before{content:'';pointer-events:none;position:absolute;top:0;right:-1%;width:min(47%,650px);height:100%;background:url('golden-globe.webp') center center / contain no-repeat;opacity:.24;mask-image:linear-gradient(to right,transparent 0%,black 30%);z-index:0}
.cta:after{display:none}
@media(max-width:690px){.cta:before{width:80%;right:-27%;opacity:.12}}
/* Link the complete year/copyright line to the existing legal notice. */
.footer .copyright-link{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.footer .copyright-link:hover,.footer .copyright-link:focus-visible{color:#755324;border-bottom-color:#aa823c}

/* V8: The translation services overview also has a balanced language layout. */
.translation-language-grid,.service-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.language-feature-light{display:flex;flex-direction:column;gap:11px;align-items:center;text-align:center;text-decoration:none;color:#302d25;margin-top:18px;padding:32px 26px;background:linear-gradient(115deg,#f5f0e5,#eae0c9);border:1px solid #c0a16a;transition:border-color .2s,background .2s}
.language-feature-light:hover{background:linear-gradient(115deg,#f9f2e5,#ead5ad);border-color:#987137}
.language-feature-light .language-feature-kicker{color:#825e2d}
.language-feature-light h3{font:400 clamp(25px,2.6vw,35px)/1.22 Georgia,serif;margin:0;color:#292821}
.language-feature-light p{font-size:14px;line-height:1.75;max-width:750px;margin:0;color:#57544e}
.language-feature-light .language-feature-action{color:#805d2a}
@media(max-width:690px){.translation-language-grid,.service-overview-grid{grid-template-columns:1fr}.language-feature-light{padding:28px 18px}}


/* V9 header and closing-section refinements.
   Compact view: only one quotation action beside Menu, equal width and complete label.
   Phones: logo on first row, two equally sized controls on the second row. */
@media (max-width:1180px){
  .nav .nav-contact{display:none}
  .menu-toggle,.header-quote{box-sizing:border-box;width:190px;min-width:190px;max-width:190px;flex:0 0 190px;height:46px;min-height:46px;padding:0 12px;font-size:12px;letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:clip;gap:9px;text-align:center;align-items:center;justify-content:center}
  .header-quote{font-weight:700;letter-spacing:0;background:linear-gradient(125deg,#f5d689,#d8a94f);border:1px solid #e1bc71;color:#171511}
  .quote-long{display:inline}
  .quote-short{display:none}
}
@media (min-width:701px) and (max-width:850px){
  .menu-toggle,.header-quote{width:155px;min-width:155px;max-width:155px;flex-basis:155px;height:43px;min-height:43px;padding:0 7px;font-size:11px}
  .brand-name{font-size:16px}
  .brand-tagline{font-size:10px}
}
@media (max-width:700px){
  .header-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:10px 12px;padding:13px 0 12px;min-height:0}
  .header-inner .brand{grid-column:1/-1;margin:0;min-width:0;gap:10px}
  .brand-name{font-size:16px}
  .brand-tagline{font-size:10px}
  .brand-emblem{width:35px;height:35px;flex-basis:35px}
  .menu-toggle,.header-quote{width:100%;min-width:0;max-width:none;flex-basis:auto;height:44px;min-height:44px;font-size:11px;white-space:normal;padding:0 9px;line-height:1.22;margin:0}
  .menu-toggle{grid-column:1}
  .header-quote{grid-column:2}
  .quote-long{display:inline}
  .quote-short{display:none}
}
@media(max-width:390px){
  .header-inner{gap:8px}
  .brand-name{font-size:14px}
  .brand-tagline{font-size:9px}
  .brand-emblem{width:32px;height:32px;flex-basis:32px}
  .menu-toggle,.header-quote{font-size:10.5px;letter-spacing:0}
}
/* Distinct but harmonising dark layers. Honeycomb replaces the framed globe in the CTA. */
.cta{isolation:isolate;background:linear-gradient(112deg,#161b18 0%,#171b18 51%,#202019 100%);border-bottom:1px solid rgba(225,184,105,.35)}
.cta:before{content:'';display:block;pointer-events:none;position:absolute;inset:0 0 0 auto;left:auto;right:0;width:73%;height:100%;z-index:0;opacity:.30;mask-image:linear-gradient(to right,transparent 3%,#000 51%);-webkit-mask-image:linear-gradient(to right,transparent 3%,#000 51%);background-image:url('honeycomb-cta.svg');background-size:300px 346px;background-repeat:repeat}
.cta:after{display:none}
.cta>.container{position:relative;z-index:1}
.footer{background:#0c100e;color:#e9e6dd;border-top:1px solid #8b6b36;padding:49px 0 25px}
.footer-brand{color:#f4f1e9}
.footer .brand-tagline{color:#dfb96f}
.footer .footer-description{color:#b8b9b2}
.footer-links a{color:#d7d6ce}
.footer-links a:hover,.footer-links a:focus-visible{color:#e9c77d;text-decoration:underline}
.footer-rule{color:#abb0a7;border-top:1px solid rgba(213,182,117,.22);margin-top:34px;padding-top:17px}
.footer .copyright-link:hover,.footer .copyright-link:focus-visible{color:#f0cc87;border-bottom-color:#caa257}
@media(max-width:700px){.cta:before{width:100%;opacity:.17;mask-image:linear-gradient(to right,transparent 0%,#000 80%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 80%)}}

/* V10: balance spacing around the European language tiles.
   Match the gap after the introduction with the gap before the closing paragraph. */
.prose p.language-list-intro { margin-bottom: 24px; }
.tag-grid.language-list-tags { margin-bottom: 24px; }

/* V11: make the Menu control as legible and prominent as the gold quotation control. */
@media(max-width:1180px){
  .menu-toggle{font-size:14px;font-weight:700;letter-spacing:.015em}
  .menu-toggle .menu-icon{font-size:14px;font-weight:400}
}
@media(max-width:700px){
  .menu-toggle{font-size:13px;font-weight:700}
  .menu-toggle .menu-icon{font-size:13px}
}

/* V12: clear free-quotation promise beneath the homepage CTA. */
.hero-quotation-note{font-size:13px;line-height:1.5;color:#e8c887;letter-spacing:.02em;margin:14px 0 0;max-width:570px;text-align:left}
.hero-quotation-note+.hero-foot{margin-top:30px}
@media(max-width:690px){.hero-quotation-note{font-size:12px;margin-top:12px}.hero-quotation-note+.hero-foot{margin-top:29px}}

/* V13: the promise belongs to the gold action, centred and no wider than its button. */
.hero .actions{align-items:flex-start}
.hero-quote-stack{display:inline-flex;flex-direction:column;align-items:stretch;gap:7px;max-width:100%}
.hero-quote-stack .button{white-space:nowrap}
.hero-quote-stack .hero-quotation-note{display:block;font-size:11px;line-height:1.25;font-weight:400;letter-spacing:0;margin:0;text-align:center;max-width:none;color:#e8c887;white-space:nowrap}
.hero .hero-foot{margin-top:40px}
@media(max-width:690px){
  .hero-quote-stack{gap:6px}
  .hero-quote-stack .hero-quotation-note{font-size:10px;line-height:1.3}
  .hero .hero-foot{margin-top:33px}
}

/* V23: balance the shorter reading columns within the shared page gutters.
   Two-column sections and the global content container retain their original grids. */
.prose.content-max{margin-left:auto;margin-right:auto}

/* The full quotation from Michael's original website, now clearly identified and centred. */
.quote.quote-centred{max-width:880px;margin:0 auto;text-align:center;padding:30px 18px 16px}
.quote.quote-centred cite{text-align:center;margin-top:17px}
@media(max-width:690px){.quote.quote-centred{font-size:18px;line-height:1.55;padding:22px 0 12px}}


/* V24: restrained fade-in of client portfolio, designed to extend to individual logo tiles
   once verified local brand files are supplied. Hidden state only applies with JS and
   no motion preference, so content is never inaccessible if scripts are unavailable. */
@media (prefers-reduced-motion: no-preference) {
  html.els-reveal-ready .client-reveal {
    opacity: 0;
    transform: translateY(14px);
    transition: opacity 750ms ease, transform 750ms cubic-bezier(.2,.7,.2,1);
  }
  html.els-reveal-ready .client-reveal.is-visible {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .client-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}
/* Ready for separate, verified official client logo files. Not populated with guesses. */
.client-logo-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch; }
.client-logo-tile { display:flex;align-items:center;justify-content:center;min-height:125px;padding:24px;background:#fff;border:1px solid #e4d7c1;border-radius:3px; }
.client-logo-tile img { display:block;width:100%;max-height:84px;object-fit:contain; }
@media(max-width:850px) { .client-logo-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; } }
@media(max-width:590px) { .client-logo-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; } .client-logo-tile { min-height:95px;padding:16px; } }

/* V25 | Private review: individual client logo gallery. */
.client-gallery-toolbar{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:16px 0 25px;padding-bottom:22px;border-bottom:1px solid #d6c6a8}
.client-gallery-heading{max-width:620px}
.client-gallery-heading .client-gallery-kicker{text-transform:uppercase;letter-spacing:.17em;color:#8b6b37;font-size:10px;font-weight:700;margin:0 0 8px}
.client-gallery-heading h3{font:400 clamp(26px,3vw,36px)/1.2 Georgia,serif;color:#272723;margin:0 0 9px}
.client-gallery-heading>p:last-child{font-size:13px;line-height:1.6;color:#59564d;margin:0}
.client-gallery-search{flex:0 0 275px;max-width:100%}
.client-gallery-search label{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:10px;color:#6f5935;font-weight:700;margin-bottom:8px}
.client-gallery-search input{box-sizing:border-box;width:100%;border:1px solid #c2b08f;border-radius:2px;background:#fff;color:#25231d;font:inherit;font-size:14px;padding:13px 15px;outline-offset:3px}
.client-gallery-search input:focus-visible{outline:2px solid #ab813b}
.client-logo-count{font-size:11px;min-height:18px;margin:7px 0 0;color:#766e5f}
.client-logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;align-items:stretch}
.client-logo-tile{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:14px;min-height:151px;background:#fff;padding:17px 12px 13px;border:1px solid #e3d7bf;border-radius:2px;box-shadow:0 3px 12px rgba(33,29,22,.035)}
.client-logo-tile[hidden]{display:none !important}
.client-logo-image{flex:1;width:100%;min-height:84px;display:flex;align-items:center;justify-content:center}
.client-logo-image img{display:block;max-width:100%;width:auto;height:auto;max-height:91px;object-fit:contain}
.client-logo-name{font-size:10px;line-height:1.3;color:#6c685f;text-align:center;max-width:100%;overflow-wrap:anywhere}
.client-gallery-caption{text-align:center;font-size:12px;line-height:1.5;color:#726b61;margin:23px 0 0}
.client-gallery-empty{color:#6f6251;font-size:14px;text-align:center;padding:24px}
@media(hover:hover){.client-logo-tile{transition:border-color .18s ease,box-shadow .18s ease}.client-logo-tile:hover{border-color:#bf9b5e;box-shadow:0 5px 18px rgba(33,29,22,.085)}}
@media(max-width:1020px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:780px){.client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-gallery-toolbar{flex-direction:column;align-items:stretch;gap:20px}.client-gallery-search{flex:0 1 auto;max-width:400px}}
@media(max-width:520px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-logo-tile{padding:13px 9px 11px;min-height:137px;gap:9px}.client-logo-image{min-height:76px}.client-logo-image img{max-height:78px}.client-logo-name{font-size:10px}}
@media(prefers-reduced-motion:reduce){.client-logo-tile{transition:none !important}}

/* V26: OmniSTAR remains centred but is deliberately scaled down for a balanced tile. */
.client-logo-tile--omnistar .client-logo-image img{max-width:76%;max-height:60px}
@media(max-width:520px){.client-logo-tile--omnistar .client-logo-image img{max-width:76%;max-height:51px}}

/* V28: legibility and tile balance following full client-gallery visual review. */
.client-logo-tile { min-height:158px; }
.client-logo-name { font-size:11px; line-height:1.35; }
@media(max-width:520px){
  .client-logo-tile { min-height:151px; }
  .client-logo-name { font-size:11px; line-height:1.35; }
}

/* V30: keep the closing quotation action on a single line at every viewport.
   Let the existing small-screen flex-column rule stack the CTA when needed. */
.cta-layout > a.button {
  flex: 0 0 auto;
  white-space: nowrap;
}


/* V31: Three-step homepage process and three-card cross-links.
   Do not manufacture a fourth card: three fit in one row from 760px upwards,
   then stack naturally on compact screens. Four-card expertise grids keep
   their established two-by-two layout. */
@media (min-width:760px) and (max-width:950px) {
  .card-grid.card-grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .card-grid.card-grid--three > .card { padding: 25px 20px; }
  .card-grid.card-grid--three .card h3 { font-size: 22px; }
}
@media (min-width:691px) and (max-width:759px) {
  .card-grid.card-grid--three { grid-template-columns:1fr; }
  .card-grid.card-grid--three > .card { min-height:0; }
}

/* Four expertise cards always form a balanced 2 x 2 arrangement on non-phone screens. */
@media (min-width:691px) {
  .card-grid.card-grid--four { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
