/* Russian Interpreters Network — static rebuild
   Palette and type carried over from the previous Joomla theme (theme3081). */
:root{
  --orange:#dd5f13;
  --orange-dark:#bb4d12;
  --orange-deep:#a94610;
  --navy:#07253c;
  --navy-deep:#03111c;
  --band:#ededed;
  --line:#dddddd;
  --text:#5b5b5b;
  --heading:#333333;
  --muted:#8a8a8a;
  --white:#ffffff;
  --font:"Trebuchet MS","Lucida Grande","Lucida Sans Unicode",Tahoma,Arial,sans-serif;
  --wrap:1100px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font);font-size:15px;line-height:1.65;color:var(--text);background:var(--white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--orange);text-decoration:none}
a:hover{color:var(--orange-dark);text-decoration:underline}
h1,h2,h3,h4{font-family:var(--font);color:var(--heading);line-height:1.2;margin:0 0 .6em;text-transform:uppercase;font-weight:700;letter-spacing:.01em}
h1{font-size:26px}
h2{font-size:22px}
h3{font-size:17px}
h4{font-size:15px}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.3em}
blockquote{margin:0 0 1.2em;padding:0 0 0 1em;border-left:4px solid var(--orange);color:#444}
strong{color:var(--heading)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:8px 12px;z-index:100}
.skip:focus{left:8px;top:8px}

/* ---------- top utility bar ---------- */
.topbar{background:#fff;border-bottom:1px solid #e9e9e9;font-size:12px}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;min-height:34px;gap:16px;flex-wrap:wrap}
.topbar ul{list-style:none;margin:0;padding:0;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.topbar a{color:#555}
.topbar a:hover{color:var(--orange)}
.topbar .phone::before{content:"";display:inline-block;width:12px;height:12px;margin-right:6px;background:url(../images/phone.png) no-repeat center/contain;vertical-align:-1px}
.topbar .social a{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border-radius:3px;color:#555}
.topbar .social a:hover{color:var(--orange)}
.topbar .social svg{width:14px;height:14px;fill:currentColor}

/* ---------- orange navigation ---------- */
.nav{background:var(--orange);color:#fff;position:relative}
.nav .wrap{display:flex;align-items:stretch;justify-content:space-between;gap:16px}
.nav ul{list-style:none;margin:0;padding:0;display:flex}
.nav li{position:relative}
.nav > .wrap > ul > li > a{display:block;padding:0 13px;line-height:52px;white-space:nowrap;color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.nav > .wrap > ul > li > a:hover,.nav > .wrap > ul > li.current > a{background:var(--orange-dark);text-decoration:none}
.nav .sub{display:none;position:absolute;left:0;top:100%;min-width:250px;background:#fff;border-top:3px solid var(--orange-dark);box-shadow:0 8px 20px rgba(0,0,0,.15);z-index:50;flex-direction:column;padding:6px 0}
.nav li:hover > .sub,.nav li:focus-within > .sub{display:flex}
.nav .sub a{display:block;padding:9px 18px;color:#444;font-size:13px;text-transform:none}
.nav .sub a:hover{background:#f5f5f5;color:var(--orange);text-decoration:none}
.nav .tagline{display:flex;align-items:center;color:#fff;font-size:15px;line-height:1.25;text-align:right;max-width:220px;padding:6px 0}
.nav .tagline:hover{text-decoration:none;color:#fff3ea}
.nav .toggle{display:none;background:none;border:0;color:#fff;font:inherit;font-weight:700;text-transform:uppercase;padding:0 12px;line-height:52px;cursor:pointer}
.nav .toggle span{display:inline-block;width:20px;height:2px;background:#fff;position:relative;vertical-align:middle;margin-right:8px}
.nav .toggle span::before,.nav .toggle span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:#fff}
.nav .toggle span::before{top:-6px}.nav .toggle span::after{top:6px}

/* ---------- logo row ---------- */
.brand{background:#fff}
.brand .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px;gap:16px}
.brand img{width:340px;max-width:70vw}
.brand .cta{font-size:13px;color:#555;text-align:right;line-height:1.4}
.brand .cta strong{display:block;font-size:18px;color:var(--heading)}
.brand .cta a{color:var(--orange)}

/* ---------- hero slider ---------- */
.hero{position:relative;background:var(--navy);overflow:hidden;min-height:260px}
.hero .slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;background:#1b2a3a center/cover no-repeat}
.hero .slide.on{opacity:1;position:relative}
.hero .slide .cap{position:absolute;left:0;right:0;bottom:0;background:rgba(7,37,60,.78);padding:14px 0}
.hero .slide .cap h2,.hero .slide .cap p{margin:0;color:#fff;font-size:24px;text-transform:uppercase}
.hero .slide img{width:100%;height:100%;object-fit:cover;min-height:260px;max-height:420px}
.hero .dots{position:absolute;right:16px;top:14px;display:flex;gap:6px;z-index:5}
.hero .dots button{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0}
.hero .dots button[aria-current="true"]{background:var(--orange)}
.hero.static .slide{position:relative;opacity:1}
.hero.static .slide:not(:first-child){display:none}
.page-hero{background:var(--navy) url(../images/slider/slide-3.jpg) center/cover no-repeat;position:relative}
.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,37,60,.9),rgba(7,37,60,.55))}
.page-hero .wrap{position:relative;z-index:1;padding-top:44px;padding-bottom:44px}
.page-hero h1{color:#fff;margin:0}
.page-hero .crumbs{color:#cfdbe6;font-size:13px;margin-top:8px}
.page-hero .crumbs a{color:#fff}

/* ---------- grey service grid ---------- */
.band{background:var(--band)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:36px 0 26px}
.grid4 h3{font-size:15px;margin-bottom:12px}
.grid4 ul{list-style:none;padding:0;margin:0}
.grid4 li{padding:4px 0 4px 16px;position:relative;font-size:14px}
.grid4 li::before{content:"";position:absolute;left:0;top:13px;width:7px;height:7px;border-radius:50%;background:var(--orange)}
.grid4 li a{color:var(--text)}
.grid4 li a:hover{color:var(--orange)}

/* ---------- sections ---------- */
.section{padding:48px 0}
.section h2,.section h1{margin-bottom:20px}
.section h1{font-size:22px}
.split{display:grid;grid-template-columns:1fr 1.4fr;gap:34px;align-items:start}
.split img{border:1px solid var(--line)}
.btn{display:inline-block;background:var(--orange);color:#fff;padding:9px 20px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border:0;cursor:pointer;font-family:var(--font)}
.btn:hover{background:var(--orange-dark);color:#fff;text-decoration:none}
.btn.ghost{background:transparent;border:2px solid #fff;color:#fff}
.btn.ghost:hover{background:#fff;color:var(--orange)}

/* ---------- client logos strip ---------- */
.logos{padding:26px 0;border-top:1px solid #eee;border-bottom:1px solid #eee;overflow:hidden}
.logos .track{display:flex;gap:40px;align-items:center;width:max-content;animation:scroll 70s linear infinite}
.logos:hover .track{animation-play-state:paused}
.logos img{height:44px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .3s,opacity .3s}
.logos img:hover{filter:none;opacity:1}
@keyframes scroll{to{transform:translateX(-50%)}}
.logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:24px;align-items:center;padding:16px 0}
.logo-grid img{height:46px;width:auto;margin:0 auto}

/* ---------- orange CTA band ---------- */
.cta-band{background:var(--orange) url(../images/bg/bottomBg.jpg) center/cover no-repeat;color:#fff}
.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:34px;padding-bottom:34px;flex-wrap:wrap}
.cta-band h2{color:#fff;margin:0 0 6px;font-size:24px}
.cta-band p{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.02em}
.cta-band p.until{margin-top:6px;text-transform:none;font-size:13px;opacity:.9}

/* ---------- footer ---------- */
footer{background:var(--navy) url(../images/bg/footerBg.jpg) center bottom/cover no-repeat;color:#c9d6e2;font-size:13px}
footer .wrap{padding-top:40px;padding-bottom:30px}
.fcols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
footer h4{color:#fff;font-size:13px;margin-bottom:12px}
footer ul{list-style:none;padding:0;margin:0}
footer li{padding:3px 0 3px 14px;position:relative}
footer li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--orange)}
footer li.plain{padding-left:0}footer li.plain::before{display:none}
footer a{color:#e7eef5}
footer a:hover{color:#fff}
footer .social a{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;margin-right:6px;color:#fff;background:rgba(255,255,255,.12);border-radius:3px}
footer .social svg{width:14px;height:14px;fill:currentColor}
footer .copy{margin-top:28px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* ---------- inner page content ---------- */
.content{padding:44px 0 56px}
.content .wrap{max-width:900px}
.content h2{margin-top:1.6em}
.content h2:first-child{margin-top:0}
.content img.left{float:left;margin:4px 22px 12px 0;max-width:45%;border:1px solid var(--line)}
.content img.right{float:right;margin:4px 0 12px 22px;max-width:45%;border:1px solid var(--line)}
.content::after{content:"";display:block;clear:both}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.card img{width:100%;border:1px solid var(--line)}
.card h3{margin:14px 0 8px}
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.team img{width:100%;border:1px solid var(--line)}
.team h3{font-size:14px;margin:12px 0 4px}
.team p{font-size:13px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.steps .n{font-size:34px;font-weight:700;color:var(--orange);line-height:1;margin-bottom:8px}
.steps h3{font-size:14px;min-height:2.6em}
.faq h3{margin-top:1.8em;color:var(--orange)}
.faq-toc{background:#f7f7f7;border-left:4px solid var(--orange);padding:16px 20px 16px 36px;margin-bottom:30px}
.faq-toc li{padding:3px 0}
.faq-toc a{color:#444}
.testimonial{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:start;padding:22px 0;border-bottom:1px solid #eee}
.testimonial img{border:1px solid var(--line)}
.testimonial h3{margin-bottom:8px}
.testimonial blockquote{border:0;padding:0;margin:0 0 8px;font-style:italic}
.testimonial .who{font-size:13px;color:var(--muted)}
.testimonial .who::before{content:"— "}
table{border-collapse:collapse;width:100%;margin:0 0 1.4em;font-size:14px}
th,td{border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top}
th{background:#f5f5f5;color:var(--heading)}
.note{background:#fff7f1;border:1px solid #f1cdb3;padding:14px 18px;margin:0 0 1.4em}
.posts article{padding:22px 0;border-bottom:1px solid #eee}
.posts h2{font-size:18px;text-transform:none;margin:0 0 6px}
.posts time{font-size:12px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
form label{display:block;font-weight:700;color:var(--heading);font-size:13px;margin:14px 0 4px}
form input,form textarea,form select{width:100%;font:inherit;font-size:14px;padding:9px 10px;border:1px solid #ccc;background:#fff;color:#333}
form textarea{min-height:140px;resize:vertical}
form input:focus,form textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 2px rgba(221,95,19,.2)}
.hp{position:absolute;left:-9999px}
.lang{font-weight:700}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .grid4,.team,.fcols{grid-template-columns:repeat(2,1fr)}
  .cards,.steps{grid-template-columns:1fr}
  .split,.contact-grid{grid-template-columns:1fr}
  .nav .tagline{display:none}
}
@media (max-width:720px){
  .nav .toggle{display:block}
  .nav > .wrap{flex-wrap:wrap}
  .nav > .wrap > ul{display:none;flex-direction:column;width:100%;padding-bottom:8px}
  .nav.open > .wrap > ul{display:flex}
  .nav > .wrap > ul > li > a{line-height:44px;border-top:1px solid rgba(255,255,255,.15)}
  .nav .sub{position:static;display:flex;box-shadow:none;border:0;background:rgba(0,0,0,.12);padding:0}
  .nav .sub a{color:#fff;padding-left:32px}
  .nav .sub a:hover{background:rgba(0,0,0,.15);color:#fff}
  .brand .wrap{flex-direction:column;align-items:flex-start}
  .brand .cta{text-align:left}
  .grid4,.fcols{grid-template-columns:1fr}
  .hero .slide .cap h2,.hero .slide .cap p{font-size:18px}
  .content img.left,.content img.right{float:none;max-width:100%;margin:0 0 16px}
  .testimonial{grid-template-columns:1fr}
  .topbar ul{gap:12px}
}
@media (prefers-reduced-motion:reduce){
  .logos .track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}
  .hero .slide{transition:none}
}
.hero .slide-link{display:block;color:inherit;text-decoration:none}
.hero .slide .cap .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hero .slide .cap .more{color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border:2px solid #fff;padding:6px 14px;white-space:nowrap}
.hero .slide-link:hover .more{background:#fff;color:var(--orange)}
