/* Full-width FIRSTOFFSHORE shell based on the supplied index.html. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url("fonts/montserrat-cyrillic-400-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:400;font-display:swap;src:url("fonts/montserrat-latin-400-normal.woff2") format("woff2")}
:root{
  --navy:#002a4c;
  --blue:#1470bf;
  --red:#dc2626;
  --paper:#fff;
  --ink:#172333;
  --muted:#5e6d7c;
  --line:#dce3ea;
  --soft:#f1f4f7;
  --gold:#f0b429;
  --radius:6px;
}

html,body{width:100%;max-width:none;margin:0}
body.premium-home{background:#fff;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body.premium-home>header>div,
body.premium-home>#desktop-sticky-header>div,
body.premium-home>main,
body.premium-home>footer>div{width:100%;max-width:none}

/* Internal Hero: both halves have one controlled height. The image fills its
   50% column without a grey remainder; longer copy is contained in that height. */
.internal-static-hero{display:grid;grid-template-columns:minmax(0,50%) minmax(0,50%);height:clamp(320px,20.93vw,420px);min-height:0;overflow:hidden;border:1px solid #dce3ea;border-radius:6px;background:#fff;box-shadow:0 5px 16px rgba(0,42,76,.07)}
.internal-hero-media{min-width:0;height:100%;min-height:0;background:#fff;overflow:hidden}
.internal-hero-media img{display:block;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:center;filter:none!important;opacity:1!important;mix-blend-mode:normal}
.internal-hero-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;height:100%;min-height:0;box-sizing:border-box;overflow:hidden;padding:clamp(20px,2.2vw,42px);background:#fff;color:var(--navy);font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif;font-weight:400;font-style:normal}
.internal-hero-eyebrow{flex:0 0 auto;margin:0 0 8px;color:var(--blue);font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif;font-size:12px;font-weight:400;line-height:1.35;letter-spacing:.12em;text-transform:uppercase}
.internal-hero-title{flex:0 0 auto;max-width:950px;margin:0 0 12px;color:var(--navy);font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif!important;font-size:clamp(28px,2.5vw,48px);font-weight:400!important;font-style:normal;line-height:1.08;letter-spacing:-.025em;text-shadow:none}
.internal-hero-lead{display:-webkit-box;flex:0 1 auto;max-width:850px;margin:0 0 16px;overflow:hidden;color:#465969;font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif;font-size:clamp(15px,1.05vw,18px);font-weight:400;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}
.hero-title-long .internal-hero-title{font-size:clamp(24px,2vw,38px);line-height:1.12}
.hero-title-xlong .internal-hero-title{font-size:clamp(22px,1.7vw,32px);line-height:1.14}
.hero-title-xlong .internal-hero-lead{-webkit-line-clamp:2;line-clamp:2}
.internal-hero-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border-radius:6px;background:var(--red);color:#fff!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px;font-weight:700;text-decoration:none}
.internal-hero-action:hover{background:#b91c1c;color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 19px;border:1px solid transparent;border-radius:6px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;font-weight:800;line-height:1.35;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}
.btn.primary,.button-red{border-color:var(--red)!important;background:var(--red)!important;color:#fff!important}
.btn.primary:hover,.button-red:hover{border-color:#b91c1c!important;background:#b91c1c!important;color:#fff!important}
.btn.secondary,.button-light{border-color:#fff!important;background:#fff!important;color:var(--navy)!important}
.btn.secondary:hover,.button-light:hover{border-color:#dce8f1!important;background:#eef5fa!important;color:var(--navy)!important}
.button-blue{border-color:var(--blue)!important;background:var(--blue)!important;color:#fff!important}
.button-blue:hover{border-color:#0d5593!important;background:#0d5593!important;color:#fff!important}
.btn:focus-visible,.button:focus-visible,button:focus-visible{outline:3px solid rgba(240,180,41,.7);outline-offset:3px}

.internal-breadcrumbs{margin:0 0 24px;padding:10px 14px;border-left:3px solid var(--blue);border-radius:0 5px 5px 0;background:#f4f7f9;color:#657584;font-size:13px;line-height:1.45}
.internal-breadcrumbs a{color:#075ca8;text-decoration:none}
.internal-breadcrumbs a:hover{color:var(--red)}
.internal-breadcrumbs span,.internal-breadcrumbs a{margin-right:7px}

body.internal-page-fullwidth .content{min-width:0}
body.internal-page-fullwidth .content>section{margin:0 0 40px}
body.internal-page-fullwidth .content-page-title{margin:0 0 24px;color:var(--navy);font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif;font-size:clamp(31px,3vw,48px);font-weight:400;line-height:1.12;letter-spacing:-.02em}
body.internal-page-fullwidth .content h2{font-family:Montserrat,"Century Gothic","Avenir Next",sans-serif;font-weight:600}
body.internal-page-fullwidth .content h3{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body.internal-page-fullwidth .content p,body.internal-page-fullwidth .content li{font-size:16px;line-height:1.68}
body.internal-page-fullwidth .content img{max-width:100%;height:auto}
body.internal-page-fullwidth .content iframe{max-width:100%}
body.internal-page-fullwidth .legacy-copy{border-top:1px solid var(--line);padding-top:28px}

.quick-price{margin-bottom:18px!important}
.quick-price .price-table-wrap{margin:0}
.quick-price-table{font-size:15px}
.quick-price-table th{font-size:13px}
.quick-price-table td{padding:14px 12px}
.quick-price-table td a{color:var(--navy);text-decoration:none}
.quick-price-table td a:hover{color:var(--red)}
.jurisdiction-intro,.sales-lead{color:#304454;font-size:18px!important;line-height:1.65!important}
.purchase-steps{padding:26px;border:1px solid var(--line);border-radius:6px;background:#f6f8fa}
.purchase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.purchase-grid article{position:relative;min-width:0;padding:18px 16px 16px 54px;border:1px solid #d9e1e8;border-radius:6px;background:#fff}
.purchase-grid article>span{position:absolute;left:14px;top:16px;display:grid;width:28px;height:28px;place-items:center;border-radius:5px;background:var(--blue);color:#fff;font-weight:800}
.purchase-grid h3{margin:0 0 6px!important;color:var(--navy);font-size:17px!important}
.purchase-grid p{margin:0!important;color:#536675;font-size:14px!important;line-height:1.55!important}
.service-price{display:inline-flex;flex-direction:column;gap:3px;margin:0 18px 14px 0;padding:12px 16px;border:1px solid #cbd8e4;border-radius:6px;background:#f5f9fc;color:var(--navy)}
.service-price span{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.service-price strong{font-size:22px}
.linked-price-table td:first-child a{display:flex!important;align-items:center;gap:8px}
.linked-price-table td:first-child a span{display:block;color:var(--muted);font-size:12px;font-weight:500}
.price-flag{display:inline-block;width:22px!important;height:15px!important;min-width:22px;object-fit:cover;border:1px solid rgba(0,0,0,.1);border-radius:2px!important;margin:0!important}
.price-intro,.news-intro,.sales-intro,.bank-intro{padding:22px;border-left:4px solid var(--blue);border-radius:0 6px 6px 0;background:#f5f8fa}
.simple-process ol{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:process}
.simple-process li{counter-increment:process;position:relative;padding:15px 16px 15px 56px;border:1px solid var(--line);border-radius:6px;background:#fff}
.simple-process li::before{content:counter(process);position:absolute;left:14px;top:13px;display:grid;width:30px;height:30px;place-items:center;border-radius:5px;background:var(--navy);color:#fff;font-weight:800}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 40px}
.news-card{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 5px 16px rgba(0,42,76,.06)}
.news-card h2{margin:0 0 10px!important;font-size:22px!important;line-height:1.25!important}
.news-card p{font-size:15px!important}
.news-card a{margin-top:auto;color:#075ca8;font-weight:700;text-decoration:none}
.news-card a:hover{color:var(--red)}
.news-date{margin:0 0 8px!important;color:var(--blue)!important;font-size:12px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.costa-number-company{padding:26px;border:1px solid #d7e2eb;border-radius:6px;background:#f7fafc}
.catalog-lead{max-width:980px;color:#304454;font-size:18px!important;line-height:1.65!important}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.catalog-card{display:flex;min-width:0;flex-direction:column;gap:7px;padding:17px;border:1px solid var(--line);border-radius:6px;background:#fff;color:#465969;text-decoration:none;box-shadow:0 4px 14px rgba(0,42,76,.045)}
.catalog-card:hover{border-color:#8fb8db;color:#304454;box-shadow:0 7px 18px rgba(0,42,76,.09)}
.catalog-card-title{display:flex;align-items:center;gap:9px;color:var(--navy);font-weight:750}
.catalog-card img{width:24px!important;height:16px!important;min-width:24px;object-fit:cover;border:1px solid rgba(0,0,0,.1);border-radius:2px!important;margin:0!important}
.catalog-card small{color:#657584;font-size:13px;line-height:1.45}
.catalog-light-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin:26px 0 0;padding:18px;border-top:1px solid var(--line)}
.catalog-light-links a{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #cbd8e4;border-radius:6px;background:#fff;color:#075ca8;font-weight:650;text-decoration:none}
.catalog-light-links a:hover{border-color:#8fb8db;color:var(--red)}
.catalog-entry-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.catalog-entry-sections article{display:flex;min-width:0;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 5px 16px rgba(0,42,76,.055)}
.catalog-entry-sections h2{margin:0 0 10px!important;font-size:24px!important;line-height:1.25!important}
.catalog-entry-sections p{margin:0 0 16px!important;color:#536675;font-size:15px!important}
.catalog-entry-sections a{margin-top:auto;color:#075ca8;font-weight:750;text-decoration:none}
.catalog-entry-sections a:hover{color:var(--red)}
.legal-meta{margin:0 0 22px!important;color:#6a7986;font-size:13px!important;line-height:1.5!important}
.legal-note{margin:20px 0;padding:20px 22px;border-left:4px solid var(--blue);border-radius:0 6px 6px 0;background:#f5f8fa;color:#304454}
.legal-document-links{margin:30px 0 0;padding:22px 0 0;border-top:1px solid var(--line)}
.legal-document-links>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.legal-document-links a,.legal-document-links span{display:inline-flex;align-items:center;min-height:38px;padding:7px 11px;border:1px solid #cbd8e4;border-radius:6px;background:#fff;color:#075ca8;font-size:14px;line-height:1.35;text-decoration:none}
.legal-document-links a:hover{border-color:#8fb8db;color:var(--red)}
.legal-document-links span{border-color:#dfe5ea;color:#657584}
.about-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}
.about-highlight-grid article{min-width:0;padding:18px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 4px 14px rgba(0,42,76,.045)}
.about-highlight-grid strong,.about-highlight-grid span{display:block}
.about-highlight-grid strong{margin-bottom:5px;color:var(--navy);font-size:17px;line-height:1.35}
.about-highlight-grid span{color:#536675;font-size:14px;line-height:1.55}
.partner-program{margin-bottom:0!important;padding-top:28px;border-top:1px solid var(--line)}
.partner-program h2{letter-spacing:.025em}
.contact-feedback{margin-bottom:0!important;padding-top:4px}
.contact-feedback .order-form{box-shadow:none}
.product-faq details{margin:10px 0;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden}
.product-faq summary{position:relative;padding:16px 48px 16px 18px;color:var(--navy);font-weight:750;line-height:1.45;cursor:pointer;list-style:none}
.product-faq summary::-webkit-details-marker{display:none}
.product-faq summary::after{content:"+";position:absolute;right:17px;top:50%;width:22px;height:22px;margin-top:-11px;color:var(--blue);font-size:22px;font-weight:500;line-height:20px;text-align:center}
.product-faq details[open] summary::after{content:"−"}
.product-faq details>div{padding:0 18px 16px;color:#465969}
.product-faq details>div p{margin:0!important;font-size:15px!important;line-height:1.6!important}
.footer-jurisdiction-links{display:flex!important;flex-flow:row wrap!important;align-items:center;justify-content:center;width:100%;gap:4px 9px;margin:4px auto 0!important;color:#676767!important;font-family:var(--font-ui)!important;font-size:9pt!important;line-height:1.5;text-align:center}
.footer-jurisdiction-links a{display:inline!important;color:inherit!important;text-decoration:none}
.footer-jurisdiction-links a:hover{color:var(--red)!important;text-decoration:underline}
.footer-jurisdiction-links span{color:inherit!important}

:where(button,input,textarea,select,.btn,.button,.cpa-banner,.order-form,.news-card,.purchase-grid article,.service-price){border-radius:6px!important}

@media(max-width:1023px){
  .internal-static-hero{grid-template-columns:1fr;height:auto;min-height:0}
  .internal-hero-media{height:auto;min-height:0;aspect-ratio:638/267}
  .internal-hero-media img{height:100%;min-height:0;max-height:none}
  .internal-hero-copy{height:auto;min-height:0;overflow:visible;padding:28px 24px 32px}
  .internal-hero-title{font-size:clamp(29px,7vw,43px)}
  .hero-title-long .internal-hero-title,.hero-title-xlong .internal-hero-title{font-size:clamp(27px,6.2vw,39px)}
  .internal-hero-lead{display:block;overflow:visible;-webkit-line-clamp:unset;line-clamp:unset}
}

@media(max-width:640px){
  .internal-static-hero{border-left:0;border-right:0;border-radius:0}
  .internal-hero-media,.internal-hero-media img{min-height:0;max-height:none}
  .internal-hero-copy{padding:24px 18px 28px}
  .internal-hero-title{font-size:30px}
  .internal-hero-lead{font-size:16px}
  body.internal-page-fullwidth .content p,body.internal-page-fullwidth .content li{font-size:16px}
  body.internal-page-fullwidth .content-page-title{font-size:31px}
  .purchase-steps{padding:18px}
  .purchase-grid,.news-grid{grid-template-columns:1fr}
  .catalog-grid,.catalog-entry-sections{grid-template-columns:1fr}
  .about-highlight-grid{grid-template-columns:1fr}
  .linked-price-table td:first-child{display:flex!important;align-items:center;gap:8px}
  .linked-price-table td:first-child a{display:block!important}
  .jurisdiction-intro,.sales-lead{font-size:17px!important}
}
