/* One font file and one scale for the institutional site and mobility. */
@font-face{font-family:Roboto;src:url("/mobilidade-eletrica/assets/Roboto-variable-latin.woff2") format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--font-family:Roboto,"Segoe UI",system-ui,Arial,sans-serif;--type-display:clamp(2.6rem,5vw,4.9rem);--type-section:clamp(2.2rem,3.8vw,3.5rem);--type-card:1.4rem;--type-card-text:.95rem;--type-nav:.92rem;--type-weight-heading:700}
body,button,input,select,textarea{font-family:var(--font-family)}
@media(max-width:600px){:root{--type-display:clamp(2.2rem,9.6vw,3.2rem);--type-section:clamp(2.2rem,8vw,2.5rem)}}

:root{
  --navy:#063764;--navy-deep:#052a4c;--ink:#0a2a45;--blue:#008fdb;--cyan:#00acf0;--ice:#eaf5fb;
  --pale:#f5fafd;--text:#1d3a50;--muted:#5a7385;--line:#dbe8ef;
  --radius:18px;--shadow:0 24px 60px -24px rgba(6,55,100,.28);
  --header-h:80px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}
body{margin:0;font-family:var(--font-family);color:var(--text);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{color:var(--ink);text-wrap:balance}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;z-index:1000;top:-70px;left:20px;background:#fff;color:var(--navy);padding:12px 18px;border-radius:8px}
.skip-link:focus{top:12px}

/* Cabeçalho */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);border-bottom:1px solid rgba(6,55,100,.08);backdrop-filter:saturate(1.4) blur(18px);-webkit-backdrop-filter:saturate(1.4) blur(18px)}
.header-inner{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:block;width:176px;flex:none}
.brand img{width:100%;height:auto}
.desktop-nav{display:flex;align-items:center;gap:6px;font-size:.92rem;font-weight:600;color:#274a63}
.desktop-nav>a:not(.nav-contact){position:relative;padding:10px 16px;border-radius:8px;transition:color .2s,background .2s}
.desktop-nav>a:not(.nav-contact):hover{color:var(--navy);background:var(--ice)}
.nav-contact{display:inline-flex;align-items:center;gap:12px;margin-left:10px;padding:11px 20px;border-radius:100px;background:var(--navy);color:#fff;transition:background .2s,transform .2s,box-shadow .2s}
.nav-contact:hover{background:var(--blue);transform:translateY(-1px);box-shadow:0 10px 22px -8px rgba(0,143,219,.6)}
.nav-contact span{color:#8fdcff;font-size:1.05rem}
.mobile-menu{display:none}

/* Carrossel de abertura */
.hero-carousel{position:relative;height:calc(100dvh - var(--header-h));min-height:600px;max-height:900px;overflow:hidden;background:var(--navy-deep);color:#fff}
.carousel-slides,.carousel-slide{position:absolute;inset:0}
.carousel-slide{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .8s ease,visibility .8s ease}
.carousel-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.carousel-image,.carousel-shade{position:absolute;inset:0;width:100%;height:100%}
.carousel-image{object-fit:cover;object-position:center;transform:scale(1.06);transition:transform 7s ease-out}
.carousel-slide.is-active .carousel-image{transform:scale(1)}
.carousel-shade{background:
  linear-gradient(90deg,rgba(4,30,56,.92) 0%,rgba(5,38,70,.74) 38%,rgba(5,38,70,.22) 72%,rgba(5,38,70,.08) 100%),
  linear-gradient(0deg,rgba(4,30,56,.72) 0%,transparent 34%),
  rgba(5,38,70,var(--img-tone,.16))}
.carousel-slide--pumping .carousel-shade{background:
  linear-gradient(90deg,rgba(4,30,56,.78) 0%,rgba(5,38,70,.55) 38%,rgba(5,38,70,.12) 72%,transparent 100%),
  linear-gradient(0deg,rgba(4,30,56,.58) 0%,transparent 34%)}
.carousel-slide-inner{position:relative;z-index:1;display:flex;align-items:center;height:100%;padding-block:56px 130px}
.carousel-copy{max-width:660px}
.carousel-kicker{display:inline-flex;align-items:center;gap:12px;margin:0 0 26px;padding:7px 16px 7px 8px;border:1px solid rgba(255,255,255,.22);border-radius:100px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#d5f1fd}
.carousel-kicker span{padding:3px 10px;border-radius:100px;background:var(--cyan);color:#032a47;letter-spacing:.06em}
.carousel-copy h1{margin:0 0 22px;color:#fff;font-size:var(--type-display);font-weight:700;line-height:1.04;letter-spacing:-.045em;text-shadow:0 2px 30px rgba(2,20,38,.35)}
.carousel-copy h1 em{display:block;font-style:normal;color:#7fd8ff}
.carousel-copy>p:not(.carousel-kicker){max-width:550px;margin:0 0 34px;color:#dbeaf3;font-size:1.1rem;line-height:1.7}
.carousel-cta{display:inline-flex;align-items:center;gap:18px;min-height:52px;padding:12px 14px 12px 24px;border-radius:100px;background:#fff;color:var(--navy);font-size:.92rem;font-weight:700;box-shadow:0 14px 30px -12px rgba(0,0,0,.5);transition:transform .2s,background .2s}
.carousel-cta span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;font-size:.95rem;transition:transform .2s}
.carousel-cta:hover{background:var(--ice);transform:translateY(-2px)}
.carousel-cta:hover span{transform:translate(2px,-2px)}

/* Controles discretos */
.carousel-controls{position:absolute;z-index:3;left:50%;bottom:32px;transform:translateX(-50%);display:flex;align-items:center;gap:20px}
.carousel-dots{order:1;display:flex;align-items:center;gap:6px}
.carousel-play{order:2}
.carousel-arrows{order:3;display:flex;gap:8px;margin-left:auto}
.carousel-arrow,.carousel-play{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(5,38,70,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;transition:background .2s,border-color .2s}
.carousel-arrow{font-size:1.1rem}
.carousel-arrow:hover,.carousel-play:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.55)}
.carousel-play{gap:8px;padding:0 14px;border-radius:100px;font-size:.78rem;font-weight:600;letter-spacing:.04em}
.carousel-play:disabled{opacity:.6;cursor:default}
.carousel-dot{width:52px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}
.carousel-dot:after{content:"";display:block;width:100%;height:3px;border-radius:3px;background:rgba(255,255,255,.3) linear-gradient(#fff,#fff) left/0% 100% no-repeat;transition:background-color .2s}
.carousel-dot:hover:after{background-color:rgba(255,255,255,.55)}
.carousel-dot.is-active:after{background-size:100% 100%;animation:dot-fill 6s linear}
.hero-carousel[data-paused="true"] .carousel-dot.is-active:after{animation-play-state:paused}
@keyframes dot-fill{from{background-size:0% 100%}to{background-size:100% 100%}}

/* Seções */
.section{padding-block:112px}
.kicker{display:inline-flex;align-items:center;gap:12px;margin:0 0 18px;font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--blue)}
.kicker:before{content:"";width:28px;height:2px;background:currentColor}
.section h2{font-size:var(--type-section);font-weight:700;line-height:1.08;letter-spacing:-.04em;margin-bottom:0}
.section h2 em{font-style:normal;color:var(--blue)}

.areas{background:var(--pale)}
.section-intro{display:grid;grid-template-columns:1.15fr .7fr;align-items:end;gap:80px;margin-bottom:52px}
.section-intro>p{max-width:400px;margin:0 0 6px;color:var(--muted);font-size:1.04rem;line-height:1.75}
.area-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.area-card{grid-column:span 2;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:transform .3s,box-shadow .3s,border-color .3s}
.area-card:nth-child(4),.area-card:nth-child(5){grid-column:span 3}
.area-card:hover{transform:translateY(-6px);border-color:#b5dcf0;box-shadow:var(--shadow)}
.card-image{height:204px;position:relative;overflow:hidden;background:#cfe4f0}
.area-card:nth-child(4) .card-image,.area-card:nth-child(5) .card-image{height:240px}
/* Degradê leve nos cards, exceto na imagem de Bombeamento e controle. */
.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,38,70,.28))}
#area-bombeamento .card-image:after{display:none}
#area-bombeamento .card-image img{object-position:60% center}
.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.area-card:hover .card-image img{transform:scale(1.05)}
.card-index{position:absolute;z-index:1;top:16px;left:16px;display:grid;place-items:center;min-width:42px;height:30px;padding:0 12px;border-radius:100px;background:rgba(255,255,255,.94);color:var(--navy);font-size:.74rem;font-weight:800;letter-spacing:.06em}
.card-content{display:flex;flex-direction:column;flex:1;padding:26px 28px 28px}
.card-type{display:block;margin-bottom:10px;font-size:.68rem;letter-spacing:.16em;font-weight:800;color:var(--blue)}
.card-content h3{font-size:var(--type-card);line-height:1.2;letter-spacing:-.025em;margin-bottom:12px}
.card-content p{flex:1;margin-bottom:22px;color:var(--muted);font-size:.95rem;line-height:1.65}
.card-content a,.text-link{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;padding-bottom:3px;border-bottom:2px solid rgba(0,143,219,.25);color:var(--navy);font-size:.88rem;font-weight:700;transition:border-color .2s,color .2s}
.card-content a:hover,.text-link:hover{border-color:var(--blue);color:var(--blue)}
.card-content a span,.text-link span{color:var(--blue);font-size:1.05rem;transition:transform .2s}
.card-content a:hover span,.text-link:hover span{transform:translate(3px,-3px)}

.about{background:#fff}
.about-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(40px,6vw,88px)}
.about-mark{position:relative;min-height:420px;padding:14px;border-radius:24px;background:linear-gradient(145deg,#0a5a96,var(--navy) 60%,var(--navy-deep));box-shadow:0 36px 70px -30px rgba(6,55,100,.55);overflow:hidden}
.about-mark:before{content:"";position:absolute;right:-90px;top:-90px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(0,172,240,.5),transparent 68%)}
.about-mark-inner{position:relative;display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:392px;padding:36px;border:1px solid rgba(255,255,255,.18);border-radius:14px;color:#fff;background:
  repeating-linear-gradient(0deg,transparent 0 39px,rgba(255,255,255,.04) 39px 40px),
  repeating-linear-gradient(90deg,transparent 0 39px,rgba(255,255,255,.04) 39px 40px)}
.about-mark-inner>span{font-size:.76rem;letter-spacing:.24em;font-weight:800;color:#8fdcff}
.about-mark-inner strong{max-width:340px;font-size:clamp(2.2rem,3.4vw,3.4rem);line-height:1.08;letter-spacing:-.045em;font-weight:650}
.about-line{width:64px;height:4px;border-radius:4px;background:var(--cyan)}
.about-copy h2{margin-bottom:25px}
.about-points{border-bottom:1px solid var(--line)}
.about-point{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid var(--line)}
.about-point h3{margin:3px 0 0;color:var(--navy);font-size:.76rem;font-weight:800;letter-spacing:.1em;line-height:1.4;text-transform:uppercase}
.about-point p{margin:0;color:var(--muted);font-size:.98rem;line-height:1.65}
.about-copy .text-link{margin-top:25px}

.contact{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy),var(--navy-deep));color:#fff}
.contact:before{content:"";position:absolute;right:-180px;top:-220px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(0,172,240,.32),transparent 66%)}
.contact-inner{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:center;gap:clamp(36px,6vw,100px)}
.contact-intro{max-width:640px}
.contact .kicker{color:#7fd8ff}
.contact h2{color:#fff;margin-bottom:20px}
.contact h2 em{color:#7fd8ff}
.contact-intro>p:not(.kicker){max-width:560px;margin:0;color:#c9deec;font-size:1.06rem;line-height:1.75}
.contact-methods{border-top:1px solid rgba(255,255,255,.25)}
.contact-method{padding:24px 0 26px;border-bottom:1px solid rgba(255,255,255,.25)}
.contact-method-label{margin:0 0 8px;color:#8fd6f6;font-size:.74rem;font-weight:800;letter-spacing:.14em}
.contact-method-link{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;font-size:clamp(1.18rem,2vw,1.55rem);font-weight:700;line-height:1.35;overflow-wrap:anywhere;transition:color .2s}
.contact-method-link:hover{color:#8fd6f6}
.contact-method-link span:last-child{flex:none;color:#8fd6f6;font-size:1.2rem}
@media(max-width:850px){.contact-inner{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.contact-inner{gap:30px}.contact-method{padding:20px 0}.contact-method-link{font-size:1.14rem}}

.site-footer{background:#f7fafc;border-top:1px solid var(--line);color:var(--text)}
.footer-main{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(145px,.85fr) minmax(175px,1fr) minmax(200px,1.1fr);align-items:start;gap:clamp(24px,3vw,48px);padding-block:54px 46px}
.footer-brand{display:block;width:168px;margin-bottom:18px}
.footer-brand img{width:100%;height:auto}
.footer-intro p{max-width:250px;margin:0 0 8px;color:var(--muted);font-size:.9rem;line-height:1.6}
.footer-intro .footer-tagline{color:#7a94a6;font-size:.78rem}
.footer-group h2{margin:3px 0 17px;color:var(--navy);font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.footer-group a{display:block;width:fit-content;padding:5px 0;color:#34536a;font-size:.9rem;line-height:1.5;transition:color .2s}
.footer-group a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.footer-contact a{overflow-wrap:anywhere}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:21px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}
.footer-bottom a{color:var(--navy);font-weight:700;white-space:nowrap}
.footer-bottom a:hover{color:var(--blue)}
@media(max-width:850px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}.footer-bottom{flex-wrap:wrap}}

@media(max-width:1050px){
  .about-grid{gap:56px}
  .section-intro{gap:48px}
}
@media(max-width:850px){
  :root{--header-h:68px}
  .container{width:min(100% - 40px,1200px)}
  .brand{width:150px}
  .desktop-nav{display:none}
  .mobile-menu{display:block;position:relative}
  .mobile-menu summary{display:flex;flex-direction:column;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px;cursor:pointer;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .menu-lines{display:flex;flex-direction:column;gap:5px}
  .menu-lines span{display:block;height:2px;width:100%;border-radius:2px;background:var(--navy)}
  .mobile-nav{display:none;position:absolute;right:0;top:calc(100% + 14px);width:min(300px,calc(100vw - 40px));padding:8px 20px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 24px 50px -16px rgba(6,55,100,.35)}
  .mobile-menu[open] .mobile-nav{display:grid}
  .mobile-nav a{padding:14px 4px;border-bottom:1px solid var(--line);font-weight:600}
  .mobile-nav a:last-child{border-bottom:0;color:var(--blue)}
  .hero-carousel{min-height:620px}
  .carousel-slide-inner{padding-block:48px 126px}
  .carousel-shade{background:
    linear-gradient(90deg,rgba(4,30,56,.88),rgba(5,38,70,.4)),
    linear-gradient(0deg,rgba(4,30,56,.8) 0%,transparent 55%)}
  .section{padding-block:84px}
  .section-intro{grid-template-columns:1fr;gap:20px}
  .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .area-card,.area-card:nth-child(4),.area-card:nth-child(5){grid-column:auto}
  .area-card:last-child{grid-column:span 2}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .about-mark{min-height:260px}
  .about-mark-inner{min-height:232px}
}
@media(max-width:600px){
  .container{width:calc(100% - 36px)}
  .hero-carousel{min-height:600px}
  .carousel-slide-inner{align-items:flex-end;padding-block:32px 112px}
  .carousel-image{object-position:60% center}
  .carousel-slide:nth-child(3) .carousel-image{object-position:40% center}
  .carousel-slide--pumping .carousel-image{object-position:30% center}
  .carousel-shade{background:linear-gradient(0deg,rgba(4,30,56,.95) 0%,rgba(4,30,56,.78) 42%,rgba(4,30,56,.25) 100%)}
  .carousel-slide--pumping .carousel-shade{background:linear-gradient(0deg,rgba(4,30,56,.90) 0%,rgba(4,30,56,.70) 44%,rgba(4,30,56,.18) 100%)}
  .carousel-kicker{margin-bottom:18px;font-size:.68rem}
  .carousel-copy h1{font-size:var(--type-display);margin-bottom:16px}
  .carousel-copy>p:not(.carousel-kicker){font-size:.98rem;line-height:1.6;margin-bottom:24px}
  .carousel-controls{bottom:20px;gap:6px}
  .carousel-dots{gap:2px}
  .carousel-dot{width:26px}
  .carousel-play{min-width:44px;padding:0}
  .carousel-play-label{display:none}
  .carousel-arrow{min-width:40px;min-height:40px}
  .section{padding-block:68px}
  .section-intro{margin-bottom:32px}
  .area-grid{grid-template-columns:1fr;gap:18px}
  .area-card:last-child{grid-column:auto}
  .card-image,.area-card:nth-child(4) .card-image,.area-card:nth-child(5) .card-image{height:196px}
  .card-content{padding:24px}
  .about-mark{min-height:220px;border-radius:20px}
  .about-mark-inner{min-height:192px;padding:24px}
  .about-point{grid-template-columns:1fr;gap:5px;padding:14px 0}
  .footer-main{grid-template-columns:1fr;gap:30px;padding-block:44px}
  .footer-bottom{display:grid;gap:10px}
}
@media(max-height:680px) and (max-width:600px){
  .carousel-slide-inner{align-items:flex-start;padding-top:36px}
  .carousel-copy h1{font-size:2.2rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
  .carousel-image,.carousel-slide.is-active .carousel-image{transform:none}
  .carousel-dot.is-active:after{background-size:100% 100%}
}

/* Enquadramento responsivo da seção de contato. */
@media(min-width:1100px) and (min-height:650px){
  .contact{display:flex;align-items:center;min-height:clamp(620px,78svh,820px)}
}
@media(min-width:700px) and (max-height:600px) and (orientation:landscape){
  .contact{min-height:calc(100svh - var(--header-h));padding-block:36px}
  .contact-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
  .contact h2{font-size:clamp(2rem,4vw,2.6rem)}
  .contact-intro>p:not(.kicker){font-size:.95rem;line-height:1.55}
  .contact-method{padding:12px 0 14px}
  .contact-method-link{font-size:1.14rem}
}

.footer-contact .footer-address{margin-top:17px}
.footer-contact .footer-address h3{margin:0 0 8px;color:var(--navy);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.footer-contact .footer-address address{font-style:normal}
.footer-contact .footer-address address a{display:block;width:auto;padding:0;color:#34536a;font-size:.84rem;line-height:1.5}
.footer-contact .footer-directions{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:3px 0;color:var(--navy);font-size:.84rem;font-weight:800}

/* Prioriza o texto de Sobre em telas estreitas e evita a faixa da seção seguinte no desktop. */
@media(min-width:1100px){.about{padding-bottom:120px}}
@media(max-width:850px){
  .about{padding-block:64px}
  .about-grid{gap:32px}
  .about-copy{order:1}
  .about-mark{order:2}
}
@media(max-width:600px){
  .about{padding-top:8px;padding-bottom:32px}
  .about-grid{gap:28px}
  .about-copy h2{margin-bottom:14px}
  .about-point{padding-block:8px}
  .about-copy .text-link{margin-top:16px}
}

/* A quinta área ocupa a última linha no retrato intermediário. */
@media(min-width:601px) and (max-width:850px){
  .area-card:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .area-card:last-child .card-image{height:100%;min-height:240px}
  .area-card:last-child .card-image img{object-position:65% center}
}
@media(max-width:600px) and (orientation:portrait){
  .areas{padding-top:16px;scroll-margin-top:-12px}
}

@media(min-width:1100px){
  .areas .section-intro{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
  .areas .section-intro>div{grid-column:span 2}
  .areas .section-intro>p{grid-column:3;max-width:none}
}

/* Six approved business areas. */
.area-grid-six .area-card{grid-column:span 2;display:flex}
.area-grid-six .area-card .card-image{height:220px;min-height:0}
.offshore-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy-deep);color:white;padding:clamp(64px,8vw,120px) 0;min-height:520px;display:flex;align-items:center}
.offshore-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.offshore-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,30,56,.94),rgba(4,30,56,.68) 52%,rgba(4,30,56,.12))}
.offshore-hero .kicker{color:#7fd8ff}.offshore-hero h1{max-width:700px;font-size:var(--type-display);line-height:1.06;margin:18px 0 22px;color:white;letter-spacing:-.04em}.offshore-hero h1 em{display:block;color:#7fd8ff;font-style:normal}.offshore-hero p:not(.kicker){max-width:570px;font-size:1.1rem;color:#e1edf6;margin-bottom:30px}
.offshore-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.offshore-services article{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.offshore-services h3{font-size:1.35rem;line-height:1.2}.offshore-services p{color:var(--muted)}.offshore-contact{margin-top:36px;padding:28px;border-radius:var(--radius);background:var(--ice);display:flex;gap:24px;align-items:center;justify-content:space-between}.offshore-contact p{margin:0}.carousel-slide--offshore .carousel-image{object-position:65% center}
@media(max-width:950px){.area-grid-six .area-card{grid-column:auto}.offshore-services{grid-template-columns:1fr}.offshore-services article{padding:24px}.offshore-hero{min-height:470px}}
@media(max-width:680px){.area-grid-six .area-card .card-image{height:196px}.offshore-hero{min-height:480px;padding:48px 0}.offshore-photo{object-position:70% center}.offshore-hero::before{background:linear-gradient(90deg,rgba(4,30,56,.92),rgba(4,30,56,.58))}.offshore-hero h1{font-size:var(--type-display)}.offshore-contact{display:block;padding:22px}.offshore-contact .nav-contact{margin-top:18px;display:inline-flex}.offshore-details{padding-top:40px}}

/* Match the introduction to the three service columns. */
@media(min-width:951px){.offshore-details .section-intro{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:end}.offshore-details .section-intro>div{grid-column:span 2;min-width:0}.offshore-details .section-intro>p{grid-column:3;max-width:none}}
