/* FIRSTOFFSHORE premium interface refresh, August 2026 */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("fonts/inter-cyrillic-400-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url("fonts/inter-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url("fonts/inter-cyrillic-500-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url("fonts/inter-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("fonts/inter-cyrillic-600-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url("fonts/inter-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url("fonts/inter-cyrillic-700-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url("fonts/inter-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url("fonts/montserrat-cyrillic-600-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url("fonts/montserrat-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url("fonts/montserrat-cyrillic-700-normal.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url("fonts/montserrat-latin-700-normal.woff2") format("woff2")}

:root{--font-ui:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--font-display:Montserrat,"Century Gothic","Avenir Next",sans-serif}
html,body,button,input,select,textarea{font-family:var(--font-ui)}
body{font-size:16px;line-height:1.62;font-feature-settings:"kern" 1,"liga" 1}
body.premium-home,body.premium-home .pathway,body.premium-home .pageContent,body.premium-home .company,body.premium-home .slogan,body.premium-home .copyright{font-family:var(--font-ui)!important}
body.premium-home h1,body.premium-home .kwick-title{font-family:var(--font-display)!important;letter-spacing:-.025em}
.hero h1,.content h2,.legacy-copy h2,.legacy-copy h3,.kwick-title{font-family:var(--font-display);letter-spacing:-.025em}
.content h2{font-size:clamp(27px,2.2vw,34px)}
.button,.side-card,.decision,.decision dl>div,.steps li,.update,.cta,.order-form,.order-form input,.order-form textarea,.order-form select,.hamburger-toggle,.drawer-action{border-radius:6px}

/* Four service cards retain the visual grammar of the original homepage. */
.desktop-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:8px 36px 14px;background:#fff}
.service-menu-card{min-height:128px;padding:17px 18px;border:1px solid #dce3ea;border-top:4px solid var(--blue);border-radius:5px;background:#fff;box-shadow:0 5px 16px rgba(0,42,76,.06)}
.service-menu-card:nth-child(2){border-top-color:#0a8cbf}.service-menu-card:nth-child(3){border-top-color:#f0b429}.service-menu-card:nth-child(4){border-top-color:#dc2626}
.service-menu-card h2{margin:0 0 8px;color:var(--navy);font-size:15px;line-height:1.25;text-transform:uppercase;letter-spacing:.035em}
.service-menu-card nav{display:flex;flex-wrap:wrap;gap:5px 9px}
.service-menu-card a{color:#31536f;font-size:13px;line-height:1.35;text-decoration:none;border-bottom:1px solid #cbd7e0}
.service-menu-card a:hover{color:var(--red);border-color:var(--red)}

/* Second-level hero: image is untouched; white fade overlaps only 18.75% of it. */
.secondary-layout .hero{grid-template-columns:minmax(0,52%) minmax(0,48%);min-height:390px;background:#fff}
.secondary-layout .hero-content{position:relative;z-index:2;margin-right:-9%;padding:48px 15% 48px clamp(30px,5vw,72px);background:linear-gradient(90deg,#fff 0%,#fff 82%,rgba(255,255,255,0) 100%)}
.secondary-layout .hero-media{min-height:390px;background:#eef2f5}
.secondary-layout .hero-media img{filter:none;opacity:1;mix-blend-mode:normal}
.secondary-layout .hero h1{font-size:clamp(35px,3.6vw,56px);font-weight:700}
.source-nav{display:flex;align-items:stretch;gap:1px;padding:7px 28px 0;background:#fff;border-top:2px solid var(--red);border-bottom:1px solid var(--line)}
.source-nav a{padding:11px 12px;color:var(--navy);font-size:13px;font-weight:700;text-decoration:none;border-bottom:3px solid transparent}
.source-nav a:hover,.source-nav a:focus,.source-nav a[aria-current="page"]{color:var(--red);border-bottom-color:var(--red)}
.source-nav .nav-order{margin-left:auto;color:#fff;background:var(--red);border-radius:5px 5px 0 0}
.secondary-layout .breadcrumbs{background:#f4f6f8}

/* Three columns: companies left, main copy centre, banks/EMI right. */
.secondary-layout .page-grid{grid-template-columns:240px minmax(0,1fr) 250px;gap:24px;padding:42px 30px 72px}
.secondary-layout .sidebar{gap:14px}
.secondary-layout .side-card{padding:17px}
.secondary-layout .side-card h2{font-size:17px}
.secondary-layout .side-accent h2{font-size:22px}
.secondary-layout .sidebar-right .side-card>a:not(.button){font-size:14px}

/* Price tables are compact on desktop and turn each service into a card on mobile. */
.price-section{margin-bottom:42px}
.price-note{padding:18px 20px;border-left:4px solid var(--gold);border-radius:5px;background:#fff8e8;color:#624511}
.price-table-wrap{margin:18px 0 26px;overflow-x:auto;border:1px solid #cfd8e0;border-radius:6px;background:#fff;box-shadow:0 5px 18px rgba(0,42,76,.06)}
.responsive-price-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:13px;line-height:1.35}
.responsive-price-table th{padding:10px 9px;background:var(--navy);color:#fff;text-align:left;vertical-align:bottom;font-size:12px;font-weight:700}
.responsive-price-table td{padding:9px;border-top:1px solid #e3e8ed;border-right:1px solid #edf0f3;vertical-align:top}
.responsive-price-table td:last-child,.responsive-price-table th:last-child{border-right:0}
.responsive-price-table tbody tr:nth-child(even):not(.price-group){background:#f7f9fb}
.responsive-price-table tbody tr:hover:not(.price-group){background:#edf6fd}
.responsive-price-table td:first-child{min-width:150px;font-weight:700}
.responsive-price-table td:first-child a{display:block;color:#075ca8;text-decoration:none}
.responsive-price-table td:first-child a:hover{text-decoration:underline;color:var(--red)}
.responsive-price-table .price-group th{padding:8px 10px;background:#dfe8ef;color:var(--navy);font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.archive-price{white-space:nowrap}
.price-status{display:block;margin-top:3px;color:#6b7782;font-size:11px;font-weight:500}

@media(max-width:1100px){
  .desktop-service-grid{display:none}
  .secondary-layout .page-grid{grid-template-columns:1fr;padding:34px 22px}
  .secondary-layout .content{grid-row:1}
  .secondary-layout .sidebar-left{grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .secondary-layout .sidebar-right{grid-row:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .source-nav{display:none}
}
@media(max-width:900px){
  .secondary-layout .hero{grid-template-columns:1fr;min-height:0}
  .secondary-layout .hero-media{grid-row:1;min-height:300px}
  .secondary-layout .hero-content{grid-row:2;margin:0;padding:32px 24px;background:#fff}
  .secondary-layout .hero h1{font-size:clamp(32px,7vw,44px)}
}
@media(max-width:720px){
  .responsive-price-table,.responsive-price-table thead,.responsive-price-table tbody,.responsive-price-table tr,.responsive-price-table th,.responsive-price-table td{display:block}
  .price-table-wrap{overflow:visible;border:0;background:transparent;box-shadow:none}
  .responsive-price-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .responsive-price-table tbody{display:grid;gap:12px}
  .responsive-price-table tbody tr:not(.price-group){padding:14px;border:1px solid #d5dde5;border-left:4px solid var(--blue);border-radius:6px;background:#fff!important;box-shadow:0 5px 15px rgba(0,42,76,.06)}
  .responsive-price-table td{display:grid;grid-template-columns:minmax(112px,41%) minmax(0,1fr);gap:10px;padding:8px 0;border:0;border-top:1px solid #edf0f3}
  .responsive-price-table td:first-child{display:block;min-width:0;padding:0 0 10px;border-top:0;font-size:17px}
  .responsive-price-table td:not(:first-child)::before{content:attr(data-label);color:#667785;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}
  .responsive-price-table .price-group th{position:static;width:auto;height:auto;margin:9px 0 0;padding:9px 12px;overflow:visible;clip:auto;white-space:normal;border-radius:5px}
  .archive-price{white-space:normal}
}
@media(max-width:640px){
  .secondary-layout .hero-media{min-height:230px}
  .secondary-layout .page-grid{padding-left:14px;padding-right:14px}
  .secondary-layout .sidebar-left,.secondary-layout .sidebar-right{grid-template-columns:1fr}
}
