/* AAU / 2026: editorial freight journal. This sheet intentionally replaces the prior card system. */
:root{--rf-ink:#09243b;--rf-blue:#083a5e;--rf-deep:#061b30;--rf-accent:#be8917;--rf-cream:#f7f5ef;--rf-line:#cbd7db}
html{scroll-behavior:smooth}
body{background:var(--rf-cream);color:var(--rf-ink)}
header{background:var(--rf-deep);color:#fff;border:0;backdrop-filter:none}
header .wrap{height:78px;max-width:1500px}
header .logo{border-left:3px solid var(--rf-accent)}
header .logo b{color:white}
header .logo span{color:#a9c9d8}
header nav a{color:#e4eef3}
header nav a:hover,header nav a.active{color:#e5ac30}
header .language{border-color:#42627a;color:white}
header .btn-dark{background:var(--rf-accent);color:var(--rf-deep)}
header .menu-btn{color:white}
.rf-home{overflow:hidden}
.rf-wrap{max-width:1392px;margin:auto;padding:0 42px}
.rf-pad{padding:116px 0}
.rf-kicker{display:block;font:700 11px/1.4 var(--mono);letter-spacing:.19em;color:var(--rf-accent);text-transform:uppercase;margin-bottom:30px}
.rf-home h1,.rf-home h2,.rf-home h3{letter-spacing:-.055em}
.rf-home h2{font:800 clamp(42px,5.25vw,78px)/1.01 var(--display);max-width:940px}
.rf-home p{line-height:1.6}
.rf-two{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.rf-button{display:inline-flex;align-items:center;justify-content:center;padding:18px 25px;background:var(--rf-accent);color:#071f34;font:800 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;min-height:58px}
.rf-button:hover{background:#d89c1b}
.rf-underline{font:700 13px var(--mono);border-bottom:2px solid var(--rf-accent);padding-bottom:9px;display:inline-block}
.rf-home section[id]{scroll-margin-top:78px}

/* The port film is a frame in a split opening, rather than a tinted full-screen template. */
.rf-hero{display:grid;grid-template-columns:48% 52%;min-height:min(790px,calc(100svh - 78px));padding:0;background:#f2eee4}
.rf-hero-copy{padding:clamp(55px,8vw,135px) clamp(30px,5vw,90px) 42px max(42px,calc((100vw - 1392px)/2 + 42px));display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.rf-hero .rf-kicker{color:#866111;margin-bottom:31px}
.rf-hero h1{font:800 clamp(56px,6.3vw,104px)/.96 var(--display);max-width:720px;color:#0b2b43}
.rf-hero h1 em{font-style:normal;color:var(--rf-accent)}
.rf-hero-copy>p{font-size:clamp(17px,1.4vw,20px);max-width:620px;margin:30px 0 34px;color:#415969}
.rf-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap}
.rf-text-link{font:800 12px var(--mono);text-transform:uppercase;border-bottom:1px solid #0b2b43;padding:10px 0}
.rf-hero-serial{font:10px var(--mono);letter-spacing:.15em;color:#71818d;margin-top:auto;padding-top:42px}
.rf-hero-film{position:relative;overflow:hidden;min-height:570px;background:#11344c}
.rf-hero-film .rf-film-poster,.rf-hero-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rf-hero-film video{z-index:1;opacity:0;transition:opacity .7s ease;filter:saturate(1.08)}
.rf-hero-film.video-ready video{opacity:1}
.rf-hero-film::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,rgba(3,20,36,.55),transparent 42%);pointer-events:none}
.rf-film-label{position:absolute;z-index:3;bottom:29px;left:30px;color:#fff;font:700 11px var(--mono);letter-spacing:.14em}
.rf-quick{display:grid;grid-template-columns:repeat(6,1fr);background:var(--rf-accent);border-top:1px solid #a4791a}
.rf-quick span{padding:17px 10px;text-align:center;border-right:1px solid #9d7215;font:800 11px var(--mono);text-transform:uppercase;letter-spacing:.07em}

.rf-about{background:var(--rf-cream)}
.rf-about h2{max-width:630px}
.rf-about-copy .rf-lead{font:600 clamp(22px,2vw,29px)/1.43 var(--display);color:#18394e}
.rf-about-copy p+p{margin:24px 0 30px;color:#4d6471;font-size:17px}
.rf-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:90px;border-top:1px solid #bcccd2;border-bottom:1px solid #bcccd2}
.rf-facts>div{padding:25px 25px 30px;border-right:1px solid #bcccd2}
.rf-facts>div:first-child{padding-left:0}.rf-facts>div:last-child{border:0}
.rf-facts b{display:block;font:800 clamp(30px,3.5vw,56px)/1.1 var(--display);letter-spacing:-.05em}
.rf-facts span{display:block;margin-top:7px;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.11em;color:#6a7d88}

.rf-services{background:#072b46;color:#f6fbfc}
.rf-section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:30px 80px;align-items:end;margin-bottom:54px}
.rf-section-head .rf-kicker{grid-column:1/-1;margin-bottom:0}
.rf-section-head p{max-width:410px;color:#547080;font-size:18px}
.rf-services .rf-section-head p{color:#b6cfdb}
.rf-service-list{border-top:1px solid #557084}
.rf-service{display:grid;grid-template-columns:70px minmax(230px,1fr) minmax(200px,.55fr);gap:22px;align-items:center;border-bottom:1px solid #557084;padding:31px 15px 31px 0;transition:background .2s}
.rf-service:hover{background:#ffffff0d}
.rf-index{font:700 12px var(--mono);color:var(--rf-accent);letter-spacing:.12em}
.rf-service h3{font:800 clamp(24px,2.3vw,34px)/1.12 var(--display);margin:0 0 8px}
.rf-service p{font-size:15px;color:#d0e1e9;max-width:680px}
.rf-tags{font:600 10px/1.8 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#8fb4c6}

.rf-cold{background:#006e89;color:#fff;position:relative}
.rf-cold::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,#45b1bc77,transparent 45%);pointer-events:none}
.rf-cold-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
.rf-cold .rf-kicker{color:#a7f5f0}
.rf-cold h2{max-width:670px}
.rf-cold p{max-width:610px;font-size:18px;color:#d5f3f1;margin:28px 0 34px}
.rf-button-light{background:#e1fbf5;color:#073a4c}
.rf-cold-panel{border:1px solid #b7f3ec88;background:#073d57cc;box-shadow:24px 24px 0 #0b466988}
.rf-cold-header{display:flex;justify-content:space-between;padding:22px 28px;border-bottom:1px solid #75b9c488;font:700 11px var(--mono);letter-spacing:.12em}
.rf-cold-header span{color:#a3f5ef;font-size:18px}
.rf-cold-data>div{display:grid;grid-template-columns:145px 1fr;gap:18px;padding:24px 28px;border-bottom:1px solid #75b9c488;align-items:center}
.rf-cold-data b{font:800 clamp(20px,2.6vw,36px) var(--display);letter-spacing:-.04em}
.rf-cold-data span{font:500 13px/1.5 var(--body);color:#d4ecee}
.rf-cold-line{height:68px;display:flex;align-items:center;justify-content:space-around;position:relative}
.rf-cold-line::before{content:"";position:absolute;left:10%;right:10%;height:1px;background:#b7f3ec88}
.rf-cold-line span{width:10px;height:10px;background:#ce9519;border-radius:50%;z-index:1;box-shadow:0 0 0 5px #083f58}

.rf-industries{background:#f7f5ef}
.rf-industry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--rf-ink);border-left:1px solid var(--rf-line)}
.rf-industry{padding:28px 25px 35px;border-right:1px solid var(--rf-line);border-bottom:1px solid var(--rf-line);min-height:565px;display:flex;flex-direction:column}
.rf-industry h3{font:800 clamp(25px,2.4vw,35px)/1.1 var(--display);margin:31px 0 16px}
.rf-industry p{font-size:15px;color:#455e6e;margin-bottom:27px}
.rf-industry ul{list-style:none;margin-top:auto;padding-top:20px;border-top:1px solid var(--rf-line)}
.rf-industry li{font:600 12px/1.5 var(--body);padding:7px 0 7px 13px;position:relative}
.rf-industry li::before{content:"";width:4px;height:4px;background:var(--rf-accent);position:absolute;left:0;top:15px}

.rf-sea{min-height:610px;display:flex;align-items:center;position:relative;isolation:isolate;background:#06243b;color:#fff}
.rf-sea .sea-poster,.rf-sea video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rf-sea video{opacity:0;transition:opacity .6s;filter:saturate(1.1)}.rf-sea.video-ready video{opacity:1}
.rf-sea::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061b30f2,#061b30a6 52%,#061b3020);z-index:0}
.rf-sea .rf-wrap{position:relative;z-index:1;width:100%}
.rf-sea h2{max-width:790px}.rf-sea p{font-size:18px;max-width:550px;color:#d6e5eb;margin-top:26px}

.rf-cases{background:#e8ece9}
.rf-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rf-case{background:#fff;min-height:570px;padding:35px;display:flex;flex-direction:column;border-top:5px solid #0a3b5a}
.rf-case:first-child{background:#fcf5e7;border-color:var(--rf-accent)}
.rf-case-head{display:flex;justify-content:space-between;gap:20px;color:#916b1b;font:700 11px var(--mono);letter-spacing:.1em}
.rf-case h3{font:800 clamp(27px,2.5vw,37px)/1.12 var(--display);margin:42px 0 25px}
.rf-case-stat{display:flex;align-items:baseline;gap:12px;margin-bottom:25px;border-bottom:1px solid var(--rf-line);padding-bottom:25px}
.rf-case-stat b{font:800 clamp(48px,5vw,76px)/1 var(--display);letter-spacing:-.06em;color:var(--rf-accent)}
.rf-case-stat span{font:700 11px/1.5 var(--mono);letter-spacing:.1em;color:#536d7d}
.rf-case p{font-size:16px;color:#3e5665;line-height:1.68}

.rf-coverage{background:#0a385a;color:#fff}
.rf-coverage p{font-size:19px;color:#d0e4ec;max-width:550px;margin-top:27px}
.rf-region-board{border:1px solid #81a9b9;padding:28px;background:#ffffff08}
.rf-board-title,.rf-board-foot{font:700 10px var(--mono);letter-spacing:.13em;color:#9cc7d8}
.rf-region-board>div{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:22px 0;border-top:1px solid #5d879b}
.rf-region-board>div span{font:800 17px var(--display);padding:16px 0;border-bottom:1px solid #5d879b}
.rf-region-board>div span:nth-child(odd){border-right:1px solid #5d879b}
.rf-region-board>div span:nth-child(even){padding-left:17px}
.rf-relationships{background:#f0e9dc}
.rf-relationships p{font-size:clamp(20px,2vw,28px);font-weight:600;color:#2c4b5d;line-height:1.48}
.rf-proof{background:#062b45;color:#fff}
.rf-proof h2{max-width:650px}
.rf-proof-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #7194a4;border-bottom:1px solid #7194a4;margin-top:57px}
.rf-proof-grid>div{padding:34px 22px;border-right:1px solid #7194a4}
.rf-proof-grid>div:first-child{padding-left:0}.rf-proof-grid>div:last-child{border:0}
.rf-proof-grid b{display:block;font:800 clamp(42px,5vw,74px)/1 var(--display);letter-spacing:-.07em;color:#fff}
.rf-proof-grid span{display:block;margin-top:18px;font:700 11px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#a9c7d3}
.rf-quotes{background:#f4f1e9}
.rf-quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:52px}
.rf-quote-grid blockquote{margin:0;background:white;padding:34px 30px;display:flex;flex-direction:column;min-height:365px;border-top:3px solid var(--rf-accent)}
.rf-quote-grid p{font:600 17px/1.55 var(--display);color:#15374e}
.rf-quote-grid footer{margin-top:auto;padding-top:32px;background:none;color:#344e5e;border:0}
.rf-quote-grid footer b,.rf-quote-grid footer span{display:block}
.rf-quote-grid footer b{font:800 13px var(--display)}.rf-quote-grid footer span{font:600 10px/1.5 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#6e818c;margin-top:4px}
.rf-why{background:#fff}
.rf-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rf-line);margin-top:55px}
.rf-why-grid article{padding:25px;border-right:1px solid var(--rf-line)}
.rf-why-grid article:first-child{padding-left:0}.rf-why-grid article:last-child{border:0}
.rf-why-grid span{font:700 12px var(--mono);color:var(--rf-accent)}
.rf-why-grid h3{font:800 24px/1.15 var(--display);margin:40px 0 14px}
.rf-why-grid p{font-size:15px;color:#506878}
.rf-final{background:var(--rf-accent);color:#06283e}
.rf-final .rf-kicker{color:#47340d}.rf-final p{font-size:19px;max-width:600px;margin-top:20px}
.rf-final-actions{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:27px}
.rf-final .rf-button{background:#092f49;color:white}
footer{background:#051d30}
.page-hero{background:#073b5a}
/* Carry the same visual language into the inner pages. */
.page-hero{padding:105px 0 90px}
.page-hero .wrap{max-width:1392px;padding:0 42px}
.page-hero h1{font-size:clamp(54px,6.5vw,94px);letter-spacing:-.06em;max-width:950px}
.page-hero p{font-size:20px;max-width:700px}
.page-hero .eyebrow{color:#e5ab2e}
.contact-grid{gap:8vw;grid-template-columns:.85fr 1.15fr}
.info{border-top:2px solid #102f41}
.info div{padding:22px 0}
.hours{background:#e5f0ef;border:0;border-left:4px solid var(--rf-accent)}
.form{gap:18px}
.form input,.form select,.form textarea{background:#fff;border:1px solid #a8bac2;border-radius:2px}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--rf-accent)}
.form .btn-orange{background:var(--rf-accent);color:#09283a}
.directory{gap:28px}
.directory div{border-top:2px solid #143c54}
.directory dt{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#8d691b}
.directory dd{font-size:18px}
.letter-page{background:#ebece7}
.letter{border-top:7px solid var(--rf-accent)}
.letter-actions .btn-orange{background:var(--rf-accent);color:#09283a}
body:has(.page-hero) .card{border-top:2px solid var(--rf-accent);background:#fff;min-height:275px}
body:has(.page-hero) .card h3{font-size:26px}
/* Compact careers layout, scoped to both careers translations. */
.careers-page .page-hero{padding:42px 0 38px}
.careers-page .page-hero h1{font-size:clamp(36px,4vw,54px);margin:12px 0 16px;line-height:1.08}
.careers-page .page-hero h1 br{display:none}
.careers-page .page-hero h1 em::before{content:' '}
.careers-page .page-hero p{font-size:17px;max-width:760px}
.careers-layout{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:36px;padding-top:36px;padding-bottom:44px;align-items:start}
.careers-layout section{padding:0}
.careers-layout section>.wrap{width:100%;max-width:none;margin:0;padding:0}
.careers-layout .h2{font-size:clamp(25px,2.4vw,32px);line-height:1.15;margin-bottom:20px}
.careers-layout .eyebrow{margin-bottom:12px}
.career-benefits .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.career-benefits .card{padding:18px;min-height:0;background:#fff;border:1px solid var(--line)}
.career-benefits .card .num{font-size:12px;margin-bottom:10px;color:var(--orange)}
.career-benefits .card h3{font-size:18px;margin:10px 0 8px}
.career-benefits .card p{font-size:14px;line-height:1.6}
.careers-layout #vacancies{margin-top:28px}
.careers-layout .job-list{gap:12px}
.careers-layout .job-card{padding:20px}
.careers-layout .job-card h3{font-size:21px}
.careers-layout .job-desc{font-size:14px;margin-bottom:16px}
.careers-layout #apply{padding:26px;background:#f4f6f5;border:1px solid #dbe2e4;border-top:3px solid var(--orange)}
.careers-layout #no-vacancies{font-size:14px;line-height:1.6;margin-bottom:22px}
.careers-layout .form{gap:14px 16px}
.careers-layout .form>div{min-width:0}
.careers-layout .form label{font-size:10px;letter-spacing:.08em;margin-bottom:6px}
.careers-layout .form input,.careers-layout .form select,.careers-layout .form textarea{padding:10px 12px}
.careers-layout .form textarea{min-height:86px}
.careers-layout .form .consent{font-size:12px;line-height:1.6;letter-spacing:0;text-transform:none}
.careers-layout .form .btn{padding:13px 16px;font-size:11px}
.careers-layout .form .note{font-size:12px;line-height:1.5}
.careers-layout .form .status:empty{display:none}
@media(max-width:900px){.careers-layout{grid-template-columns:1fr;gap:26px}.careers-page .page-hero{padding:32px 0}.careers-layout #apply{padding:22px}}
@media(max-width:480px){.careers-layout{padding-top:24px;padding-bottom:28px}.career-benefits .card{padding:14px}.career-benefits .card h3{font-size:16px}.careers-layout #apply{padding:18px}.careers-layout .form-actions{align-items:stretch;flex-direction:column}}
.careers-page .career-header{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.careers-page .career-header-points{display:block;list-style:disc outside;margin:0;padding:0 0 0 22px;color:#fff}
.career-header-points li{display:list-item;padding:0;margin:0 0 14px;background:transparent;border:0;box-shadow:none;line-height:1.5}
.career-header-points li:last-child{margin-bottom:0}
.career-header-points li::marker{color:#f2c45d;font-size:20px}
.career-header-points strong{display:block;color:#fff;font-size:16px;font-weight:700}
.career-header-points span{display:block;color:#e5edf3;font-size:14px;font-weight:400;line-height:1.6}
.careers-layout:has(#vacancies[hidden]){display:block;max-width:960px}
.careers-layout:has(#vacancies[hidden]) .careers-overview{display:none}
.careers-layout #vacancies{margin-top:0}
@media(max-width:900px){.careers-page .career-header{grid-template-columns:1fr;gap:26px}.career-header-points{gap:18px 22px}}
@media(max-width:480px){.career-header-points li{margin-bottom:12px}}
.gallery-view .page-hero{padding:30px 0}
.gallery-view .gallery-header{display:grid;grid-template-columns:0.9fr 1.1fr;gap:40px;align-items:center}
.gallery-view .page-hero h1{font-size:clamp(38px,4.5vw,62px);margin:12px 0 18px}
.gallery-view .page-hero p{font-size:17px}
.gallery-slide-stage{position:relative;aspect-ratio:16/9;max-height:320px;overflow:hidden;background:#051d30}
.gallery-slide{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;opacity:0;transition:opacity .8s;pointer-events:none}
.gallery-slide.active{opacity:1;pointer-events:auto;z-index:1}
.gallery-slide img{width:100%;height:100%;object-fit:contain;display:block}
.gallery-slide-controls{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding-top:10px;color:#fff;font-size:13px}
.gallery-slide-controls button{min-width:40px;min-height:36px;padding:4px 10px;border:1px solid #8ca3b2;background:transparent;color:#fff}
.gallery-view #gallery-section{padding:32px 0 44px}
.gallery-header:has(#gallery-slideshow[hidden]){grid-template-columns:1fr}
@media(max-width:760px){.gallery-view .gallery-header{grid-template-columns:1fr;gap:22px}.gallery-view .page-hero{padding:26px 0}.gallery-view #gallery-section{padding:24px 0 32px}}
@media(prefers-reduced-motion:reduce){.gallery-slide{transition:none}}
.contact-view .page-hero{padding:34px 0}
.contact-view .contact-header{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center}
.contact-view .page-hero h1{font-size:clamp(38px,4.5vw,62px);margin:12px 0 18px}
.contact-view .contact-intro p{font-size:17px;color:#e5edf3}
.contact-header-details .info{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;border:0}
.contact-header-details .info>div{padding:0;border:0;min-width:0}
.contact-view .contact-header-details p{font-size:14px;line-height:1.6;color:#edf3f7;font-weight:400;margin:0}
.contact-header-details .info b{color:#f2c45d;font-size:11px;margin-bottom:5px}
.contact-header-details a{color:#fff;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.contact-header-details .hours{margin-top:18px;padding:14px 0 0;border-top:1px solid #678395;background:none}
.contact-header-details .hours h4{font-size:13px;color:#f2c45d;margin-bottom:4px}
.contact-view main>section:not(.page-hero){padding:32px 0}
.contact-view .contact-grid{display:block}
.contact-view #quote-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 22px}
.contact-view #quote-form>div{min-width:0}
.contact-view #quote-form input,.contact-view #quote-form select,.contact-view #quote-form textarea{padding:11px 13px}
.contact-view #quote-form textarea{min-height:100px}
.contact-view #quote-form .status:empty{display:none}
.contact-view .directory{gap:18px 28px}
.contact-view .h2{font-size:32px;margin-bottom:22px}
@media(max-width:900px){.contact-view .contact-header{grid-template-columns:1fr;gap:26px}.contact-view #quote-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.contact-view #quote-form{grid-template-columns:1fr}.contact-header-details .info{grid-template-columns:1fr;gap:14px}.contact-view .page-hero{padding:28px 0}}
footer .foot{max-width:1392px}
footer .foot .footer-explore-links{columns:2;column-gap:24px}
footer .foot .footer-explore-links li{break-inside:avoid;margin:0 0 12px}
@media(min-width:981px){footer .foot:has(.footer-explore-links){grid-template-columns:4fr 4fr 3fr}}
footer .foot h4{font-size:33px}

@media(max-width:1100px){.rf-hero{grid-template-columns:52% 48%}.rf-hero-copy{padding-left:30px}.rf-hero h1{font-size:clamp(55px,6vw,78px)}.rf-industry-grid{grid-template-columns:repeat(2,1fr)}.rf-industry{min-height:440px}.rf-case-grid{grid-template-columns:1fr 1fr}.rf-case:first-child{grid-column:1/-1;min-height:0}.rf-case{min-height:510px}}
@media(max-width:820px){header.open nav{background:#061b30;border-color:#496678}header.open nav a{color:#fff}.rf-wrap{padding:0 23px}.rf-pad{padding:82px 0}.rf-hero{grid-template-columns:1fr}.rf-hero-copy{padding:74px 23px 50px;min-height:560px}.rf-hero-serial{margin-top:35px}.rf-hero-film{min-height:390px}.rf-two,.rf-cold-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.rf-quick{grid-template-columns:repeat(3,1fr)}.rf-section-head{grid-template-columns:1fr;gap:15px}.rf-section-head p{max-width:700px}.rf-service{grid-template-columns:50px 1fr}.rf-tags{grid-column:2}.rf-proof-grid,.rf-quote-grid{grid-template-columns:repeat(2,1fr)}.rf-quote-grid blockquote:last-child{grid-column:1/-1;min-height:0}.rf-why-grid{grid-template-columns:repeat(2,1fr)}.rf-why-grid article:nth-child(2){border-right:0}.page-hero .wrap{padding:0 23px}}
@media(max-width:600px){.rf-home h2{font-size:clamp(42px,11vw,57px)}.rf-hero-copy{min-height:550px}.rf-hero h1{font-size:clamp(57px,14vw,78px)}.rf-actions{align-items:flex-start;flex-direction:column;gap:18px}.rf-hero-film{min-height:300px}.rf-quick{grid-template-columns:repeat(2,1fr)}.rf-facts{grid-template-columns:1fr;margin-top:54px}.rf-facts>div{padding:17px 0;border-right:0;border-bottom:1px solid var(--rf-line)}.rf-facts>div:last-child{border-bottom:0}.rf-service{grid-template-columns:35px 1fr;gap:14px;padding:26px 0}.rf-service h3{font-size:24px}.rf-cold-data>div{grid-template-columns:1fr;gap:4px;padding:18px}.rf-cold-header{padding:20px}.rf-cold-panel{box-shadow:8px 8px 0 #0b466988}.rf-industry-grid,.rf-case-grid,.rf-quote-grid{grid-template-columns:1fr}.rf-industry{min-height:0;padding:25px}.rf-case:first-child{grid-column:auto}.rf-case{min-height:0;padding:28px}.rf-case h3{margin:30px 0 22px}.rf-sea{min-height:520px}.rf-region-board>div span{font-size:13px}.rf-proof-grid{grid-template-columns:repeat(2,1fr)}.rf-proof-grid>div{border-bottom:1px solid #7194a4}.rf-proof-grid>div:nth-child(2){border-right:0}.rf-proof-grid b{font-size:47px}.rf-quote-grid blockquote,.rf-quote-grid blockquote:last-child{grid-column:auto;min-height:0}.rf-why-grid{grid-template-columns:1fr}.rf-why-grid article{border-right:0;border-bottom:1px solid var(--rf-line);padding:25px 0}.rf-final-actions{gap:23px}}
@media(prefers-reduced-motion:reduce){.rf-hero-film video,.rf-sea video{display:none}}

/* Full-bleed, readable video opening and a tighter editorial rhythm. */
.rf-pad{padding:76px 0}
.rf-home h2{font-size:clamp(39px,4.4vw,64px)}
.rf-kicker{margin-bottom:21px;color:#7c5a10}
.rf-hero{display:block;position:relative;isolation:isolate;min-height:650px;height:min(780px,calc(100svh - 78px));padding:0;background:#34546c;color:#fff}
.rf-hero>.rf-film-poster,.rf-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%}
.rf-hero>.rf-film-poster{z-index:0}
.rf-hero>video{z-index:1;opacity:0;filter:contrast(1.05) saturate(1.13);transition:opacity .8s ease}
.video-hero.rf-hero>video{transition:opacity 1.6s ease-in-out}.rf-hero.video-ready>video.is-current{opacity:1;z-index:2}.video-hero.rf-hero>video.is-leaving{opacity:1;transition:none}
.rf-hero::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#031b2eea 0%,#06283ed9 27%,#0b324e83 58%,#0a2c4238 100%),linear-gradient(0deg,#031b2e83,transparent 34%)}
.rf-hero-copy{position:relative;z-index:3;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;height:100%;max-width:1392px;min-height:0;padding:64px 42px 48px;margin:auto}
.rf-hero .rf-kicker{color:#f2d392;margin-bottom:27px}
.rf-hero h1{font:800 clamp(57px,6.5vw,106px)/.98 var(--display);max-width:820px;color:#fff;text-wrap:balance;text-shadow:0 3px 24px #06203382}
.rf-hero h1 em{color:#efcb7d}
.rf-hero-copy>p{max-width:640px;margin:27px 0 30px;font-size:clamp(17px,1.4vw,20px);font-weight:550;color:#f2f8fa;text-shadow:0 2px 14px #031b2e}
.rf-hero .rf-button{background:#d79b1b;color:#09283b}
.rf-hero .rf-text-link{color:#fff;border-color:#ecc062}
.rf-hero-serial{margin-top:35px;padding-top:0;color:#e5f3f8}
.rf-film-label{z-index:3;left:auto;right:max(42px,calc((100vw - 1392px)/2 + 42px));bottom:40px;color:#e6f2f7}
.rf-quick{background:#c68f18;color:#09283b;border-color:#8f6b1b}
.rf-quick span{border-color:#9a7524}
.rf-about-photo{margin:33px 0 0;height:230px;overflow:hidden;background:#cbd9d9}
.rf-about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block}
.rf-about-copy .rf-lead{font-size:clamp(21px,2vw,27px)}
.rf-about-copy p+p{color:#29495a;margin:19px 0 26px}
.rf-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:38px 0 0;padding:0;border-color:#9fb5be}
.rf-facts>div{padding:19px 15px;border-color:#9fb5be}
.rf-facts b{font-size:clamp(24px,2.4vw,37px)}
.rf-facts span{color:#425e6c;font-size:10px;line-height:1.45}
.rf-section-head{margin-bottom:34px}
.rf-section-head p{color:#294c5e}
.rf-service{padding:18px 8px 18px 0}
.rf-service h3{font-size:clamp(23px,2.2vw,30px);margin-bottom:5px}
.rf-service p{color:#e0eef4}
.rf-service .rf-tags{color:#bbd5e2}
.rf-cold{background:#075f76}
.rf-cold::before{background:radial-gradient(circle at 92% 4%,#72c3cb5c,transparent 48%)}
.rf-cold .rf-kicker{color:#bff6ed}
.rf-cold-panel{background:#074359;border-color:#b7e7e8}
.rf-cold-data>div{padding:17px 24px}
.rf-cold-data span{color:#ebf9f9}
.rf-cold p{color:#f0fcfb}
.rf-industry{min-height:480px;padding:20px 20px 23px}
.rf-industry>img{display:block;width:100%;height:145px;object-fit:cover;margin:18px 0 0;background:#d8e2de}
.rf-industry h3{margin:21px 0 12px}
.rf-industry p{color:#2e4a59;line-height:1.5;margin-bottom:17px}
.rf-industry li{font-size:12px}
.rf-sea{min-height:430px}
.rf-sea::after{background:linear-gradient(90deg,#041d30e8,#061f34a5 51%,#092c3d2e)}
.rf-sea .rf-kicker{color:#ecc164}
.rf-cases{background:#edf0ed}
.rf-case{min-height:0;padding:23px 23px 26px}
.rf-case:first-child{background:#fdfaf2}
.rf-case-head{color:#795914}
.rf-case-visual{height:155px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;margin-top:20px;background:#0a3853;color:#fff;position:relative}
.rf-case-visual img{width:100%;height:100%;object-fit:cover;display:block}
.rf-case-visual .rf-photo-note{position:absolute;left:0;right:0;bottom:0;margin:0;padding:12px 14px 8px;background:linear-gradient(transparent,#041e30d9);color:#fff;font:700 9px/1.4 var(--mono);letter-spacing:.04em;text-transform:none}
.rf-case-visual span{font:800 58px/.9 var(--display);margin-left:25px;color:#fff}
.rf-case-visual small{font:700 10px var(--mono);letter-spacing:.16em;margin:14px 0 0 27px;color:#b7f4ec}
.rf-case h3{font-size:clamp(24px,2.2vw,32px);line-height:1.15;margin:19px 0 19px}
.rf-case-stat{margin-bottom:16px;padding-bottom:16px}
.rf-case-stat b{font-size:clamp(43px,4vw,57px);color:#7f5e15}
.rf-case p{font-size:14px;color:#2f4c5b;line-height:1.55}
.rf-coverage p{color:#e6f1f5}
.rf-region-board{border-color:#afcbd4}
.rf-board-title,.rf-board-foot{color:#c9e2ea}
.rf-coverage-more{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;border-top:1px solid #92b1c0;padding-top:42px;margin-top:47px}
.rf-coverage-more .rf-kicker{color:#ecc268}
.rf-coverage-more h3{font:800 clamp(27px,2.8vw,40px)/1.12 var(--display);letter-spacing:-.045em}
.rf-coverage-more p{font-size:15px;margin-top:15px;max-width:440px}
.rf-coverage-more .rf-why-grid{display:grid;grid-template-columns:repeat(2,1fr);margin:22px 0 0;border-color:#527a90}
.rf-coverage-more .rf-why-grid article{padding:13px 17px 16px;border-color:#527a90}
.rf-coverage-more .rf-why-grid h3{font-size:17px;margin:8px 0}
.rf-coverage-more .rf-why-grid p{font-size:13px;color:#cfE3ea;margin:0;line-height:1.45}
.rf-proof[hidden]{display:none}
.rf-proof{padding:48px 0;background:#062b45}
.rf-proof h2{font-size:45px}
.rf-proof-grid{margin-top:25px}
.rf-proof-grid>div{padding:21px 17px}
.rf-quotes{padding:56px 0}
.rf-quote-grid{margin-top:25px}
.rf-quote-grid blockquote{min-height:245px;padding:22px 23px}
.rf-quote-grid p{font-size:15px}
.rf-quote-grid footer{padding-top:18px}
.rf-final{padding:67px 0}
.rf-final .rf-kicker{color:#3f2f0d}
.rf-final p{color:#173d51}
.rf-home a:focus-visible,.rf-home summary:focus-visible,header a:focus-visible{outline:3px solid #ecc163;outline-offset:4px}
.rf-industry .rf-index{color:#7a5912}
.rf-quote-grid footer span{color:#4f6470}
.admin-page .metric-editor{border:1px solid #b8cbd3;background:#f5f8f8;padding:24px;margin:28px 0}
.admin-page .metric-editor h3{margin:0 0 8px}
.admin-page #metric-editors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.admin-page .metric-item{background:white;border:1px solid #c4d3d8;padding:19px;margin:0}
.admin-page .metric-item h4{margin:0 0 16px}
@media(max-width:1100px){.rf-hero{grid-template-columns:none}.rf-hero-copy{padding-left:35px}.rf-industry{min-height:485px}.rf-case:first-child{grid-column:auto}.rf-case-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.rf-pad{padding:62px 0}.rf-hero{min-height:640px;height:calc(100svh - 78px)}.rf-hero-copy{min-height:0;padding:55px 23px}.rf-hero h1{font-size:clamp(56px,10vw,82px)}.rf-film-label{right:23px}.rf-facts{grid-template-columns:repeat(3,1fr)}.rf-industry-grid{grid-template-columns:repeat(2,1fr)}.rf-industry{min-height:0}.rf-case-grid{grid-template-columns:1fr}.rf-case{display:grid;grid-template-columns:34% 1fr;column-gap:25px}.rf-case-head{grid-column:1/-1}.rf-case-visual{grid-row:2/5;height:190px;margin-top:15px}.rf-case h3{margin:16px 0 8px}.rf-case-stat{margin-bottom:8px}.rf-case p{grid-column:2}.rf-coverage-more{grid-template-columns:1fr;gap:30px}.rf-proof-grid{grid-template-columns:repeat(2,1fr)}.rf-quote-grid blockquote:last-child{grid-column:auto;min-height:245px}}
@media(max-width:600px){.rf-hero{height:650px;min-height:0}.rf-hero::after{background:linear-gradient(90deg,#031b2ef0,#06283eb8 73%,#0a2c4270),linear-gradient(0deg,#031b2e83,transparent 45%)}.rf-hero-copy{padding:45px 23px 54px}.rf-hero h1{font-size:clamp(49px,12vw,70px)}.rf-hero-copy>p{font-size:16px;margin:22px 0 24px}.rf-hero-serial{font-size:9px}.rf-film-label{bottom:20px;font-size:9px}.rf-quick span{font-size:10px;padding:13px 6px}.rf-about-photo{height:190px}.rf-facts{grid-template-columns:1fr 1fr;margin-top:30px}.rf-facts>div{padding:15px 10px;border-right:1px solid #9fb5be}.rf-facts>div:nth-child(2){border-right:0}.rf-facts>div:last-child{grid-column:1/-1;border-bottom:0}.rf-industry-grid{grid-template-columns:1fr}.rf-industry>img{height:175px}.rf-case{display:block}.rf-case-visual{height:170px}.rf-case h3{font-size:27px}.rf-case p{font-size:15px}.rf-coverage-more .rf-why-grid{grid-template-columns:1fr 1fr}.rf-proof-grid{grid-template-columns:1fr 1fr}.rf-proof-grid b{font-size:42px}.rf-quote-grid{grid-template-columns:1fr}.rf-quote-grid blockquote,.rf-quote-grid blockquote:last-child{min-height:0}.admin-page #metric-editors{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rf-sea video{display:none}}

/* A quiet freight-route animation and fine material texture. */
.rf-about,.rf-industries,.rf-cases,.rf-quotes{
 background-image:radial-gradient(circle at 12% 8%,#fff9 0,transparent 38%),
  repeating-linear-gradient(0deg,transparent 0 31px,#21455908 32px),
  repeating-linear-gradient(90deg,transparent 0 31px,#21455908 32px)
}
.rf-services,.rf-coverage{position:relative;isolation:isolate;overflow:hidden}
.rf-services>.rf-wrap,.rf-coverage>.rf-wrap{position:relative;z-index:1}
.rf-route-texture{position:absolute;inset:0 -5% 0 auto;width:min(85vw,1200px);height:100%;z-index:0;pointer-events:none;opacity:.42}
.rf-route-texture svg{display:block;width:100%;height:100%}
.rf-route-path{fill:none;stroke:#8fb9c8;stroke-width:1.4;stroke-dasharray:5 13;stroke-dashoffset:0;animation:rf-route-drift 32s linear infinite}
.rf-route-path:nth-child(2){stroke:#68a9bc;animation-duration:39s}
.rf-route-path:nth-child(3){stroke:#b9d4da;animation-duration:46s}
.rf-route-marker{fill:#e5aa2b;stroke:#f2d698;stroke-width:2;filter:drop-shadow(0 0 7px #e4a723)}
.rf-route-marker-secondary{fill:#d4f2f0;stroke:#8bc8d3;filter:drop-shadow(0 0 5px #bde8ea)}
.rf-route-marker-tertiary{fill:#f0cf86;stroke:#f7e6c0}
.rf-coverage .rf-route-texture{opacity:.3;transform:scaleX(-1)}
@keyframes rf-route-drift{to{stroke-dashoffset:-180}}
@media(max-width:820px){.rf-route-texture{right:-30%;width:130%;opacity:.2}.rf-coverage .rf-route-texture{opacity:.16}}
@media(prefers-reduced-motion:reduce){.rf-route-texture{display:none}}

/* The legacy stylesheet uses ID selectors for these anchors. Keep the intended
   dark surfaces and text colors together at stronger specificity. */
.rf-home #services.rf-services{background:#082d48;color:#f8fbfc;padding:76px 0}
.rf-home #presence.rf-coverage{background:#0a385a;color:#fff;padding:76px 0}
.rf-home #services .rf-section-head p{color:#d7e8ef}
.rf-home #services .rf-service p{color:#e9f2f6}
.rf-home #services .rf-tags{color:#d4e8f0}
.rf-home #presence h2,.rf-home #presence h3{color:#fff}
.rf-home #presence p{color:#e8f3f6}
.rf-home #presence .rf-why-grid p{color:#dceaf0}
.rf-home #presence .rf-kicker{color:#f0ce85}
.rf-cold-photo{position:relative;height:205px;margin:0;overflow:hidden;background:#0b3c50}
.rf-cold-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 49%}
.rf-cold-photo figcaption{position:absolute;right:0;bottom:0;left:0;padding:22px 16px 9px;background:linear-gradient(transparent,#031e2add);color:#fff;font:700 9px/1.4 var(--mono);letter-spacing:.04em}
.rf-cold-header{padding:15px 24px}
.rf-cold-data>div{padding:12px 24px;grid-template-columns:145px 1fr}
.rf-cold-data b{font-size:clamp(19px,2vw,27px)}
.rf-industry>img{height:170px;object-position:center center}
.rf-industry:nth-child(3)>img{object-position:center 75%}
.rf-case-visual{height:195px}
.rf-case-visual img{object-position:center 54%}
.rf-case-visual .rf-photo-note{font-size:10px}
@media(max-width:820px){.rf-home #services.rf-services,.rf-home #presence.rf-coverage{padding:62px 0}}
@media(max-width:600px){.rf-cold-photo{height:205px}.rf-cold-data>div{grid-template-columns:100px 1fr;gap:12px}.rf-industry>img{height:190px}.rf-case-visual{height:200px}}

/* ===== Gold brand palette, matched to the logo (deep amber → pale gold) ===== */
:root{--gold-deep:#a8741f;--gold:#d4a446;--gold-light:#f6dd94;--gold-grad:linear-gradient(115deg,#b07a27 0%,#d9a947 38%,#f3d47e 72%,#fbeab0 100%);--rf-accent:#d4a446;--orange:#8f661a;--orange-2:#c08f2c;--on-gold:#0b1d33}
/* Gold surfaces carry the gradient and dark navy text; hover slides the sheen. */
.btn-orange,.rf-button,header .btn-dark,.form .btn-orange,.letter-actions .btn-orange,.btn-dark:hover{background:var(--gold-grad);background-size:160% 100%;background-position:0 0;color:var(--on-gold);border-color:transparent;transition:background-position .45s ease,box-shadow .25s ease}
.btn-orange:hover,.rf-button:hover,header .btn-dark:hover,.form .btn-orange:hover,.letter-actions .btn-orange:hover{background:var(--gold-grad);background-size:160% 100%;background-position:100% 0;color:var(--on-gold);box-shadow:0 6px 18px rgba(176,122,39,.28)}
.rf-final .rf-button{background:#092f49;color:#fff}.rf-final .rf-button:hover{background:#0b3a5a;color:#fff;box-shadow:none}
.rf-quick{background:var(--gold-grad);color:var(--on-gold);border-color:#a8741f}
.rf-quick span{border-color:rgba(11,29,51,.18)}
.rf-final{background:var(--gold-grad);color:var(--on-gold)}
/* Call-to-action band: navy with a gold edge, rather than a solid colour block. */
.cta{background:var(--navy-2);color:#fff;border-top:3px solid transparent;border-image:var(--gold-grad) 1;border-bottom:0;border-left:0;border-right:0}
.cta h2 em,.cta .eyebrow{color:var(--gold-light)}
/* Thin accent lines and markers use the gradient. */
#services .card::before,.ind .card::before,.route-line::before{background:var(--gold-grad)}
.ind li::before,.detail-list li::before,.rf-industry li::before{background:var(--gold)}
header .logo{border-left:3px solid var(--gold);border-image:linear-gradient(180deg,#fbeab0,#d9a947 55%,#b07a27) 1}
header .logo.has-logo{border-image:none;border-left:0}
header .logo.has-logo b,header .logo.has-logo span{border-left-color:var(--gold)}
/* Small gold badges and controls keep readable dark text. */
.admin-page .tab-count{background:var(--gold-grad);color:var(--on-gold)}
.lightbox button:hover,.lightbox button:focus-visible{background:var(--gold);color:var(--on-gold)}
.enq-row.unread strong::before{background:var(--gold)}
.admin-page .admin-tabs button[aria-selected=true]{border-left-color:var(--gold)}
::selection{background:#f3d47e;color:var(--on-gold)}

/* ===== World-map route animation: ships on real sea lanes and planes on air routes from Lisbon ===== */
/* Kept faint and faded towards the left, where the section text sits, so copy stays readable. */
.rf-route-texture{inset:0;width:100%;height:100%;opacity:.42;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.6) 35%,#000 70%);mask-image:linear-gradient(90deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.6) 35%,#000 70%)}
.rf-coverage .rf-route-texture{opacity:.45;transform:none}
.rf-lights{fill:none;stroke:#ffe9b0;stroke-width:1.9;stroke-linecap:round;opacity:.8;filter:drop-shadow(0 0 2px rgba(255,214,128,.6))}
.rf-lights-dim{fill:none;stroke:#d9c08a;stroke-width:1.4;stroke-linecap:round;opacity:.3}
.rf-sea-lane{fill:none;stroke:#9fd4e0;stroke-opacity:.65;stroke-width:1.3;stroke-dasharray:1.5 6;stroke-linecap:round;animation:rf-sea-drift 40s linear infinite}
.rf-air-route{fill:none;stroke:#e6bd5c;stroke-opacity:.7;stroke-width:1.1;stroke-dasharray:6 7;animation:rf-air-drift 20s linear infinite}
.rf-ship-hull{fill:#e3f0f4}
.rf-ship-box{fill:#d4a446}
.rf-ship-box.rf-alt{fill:#7fb6c6}
.rf-ship-bridge{fill:#f6fbfc}
.rf-plane-body{fill:#f3d47e;filter:drop-shadow(0 0 3px rgba(243,212,126,.5))}
.rf-plane-trail{fill:none;stroke:#f3d47e;stroke-opacity:.35;stroke-width:1.4;stroke-linecap:round}
.rf-node{fill:#f3d47e}
.rf-node.rf-port{fill:#9fd4e0}
.rf-hub{fill:#f3d47e;filter:drop-shadow(0 0 5px rgba(243,212,126,.7))}
.rf-node-pulse,.rf-hub-pulse{fill:none;stroke:#9fd4e0;stroke-width:1;transform-box:fill-box;transform-origin:center;animation:rf-node-pulse 3.6s ease-out infinite}
.rf-hub-pulse{stroke:#f3d47e;stroke-width:1.3;animation-duration:2.8s}
.rf-node-pulse:nth-of-type(2n){animation-delay:1.2s}
.rf-node-pulse:nth-of-type(3n){animation-delay:2.4s}
/* Offsets are whole multiples of each dash pattern, so the loop is seamless. */
@keyframes rf-sea-drift{to{stroke-dashoffset:-150}}
@keyframes rf-air-drift{to{stroke-dashoffset:-156}}
@keyframes rf-node-pulse{0%{transform:scale(1);opacity:.75}100%{transform:scale(4.5);opacity:0}}
@media(max-width:820px){.rf-route-texture{opacity:.2}.rf-coverage .rf-route-texture{opacity:.16}}
/* Coverage: pulsing lights on key cities (no routes or vehicles). */
.rf-city{fill:#e9b949;filter:drop-shadow(0 0 4px rgba(212,164,70,.95)) drop-shadow(0 0 9px rgba(212,164,70,.55));transform-box:fill-box;transform-origin:center;animation:rf-city-glow 6.6s ease-in-out infinite}
.rf-city-pulse{fill:none;stroke:#d4a446;stroke-width:1.3;transform-box:fill-box;transform-origin:center;animation:rf-city-pulse 6.6s ease-out infinite}
.rf-hub-city.rf-city{fill:#f3d47e;filter:drop-shadow(0 0 5px rgba(217,169,71,1)) drop-shadow(0 0 12px rgba(217,169,71,.6))}
.rf-hub-city.rf-city-pulse{stroke:#e2b14f;stroke-width:1.6}
@keyframes rf-city-pulse{0%{transform:scale(1);opacity:.9}45%{transform:scale(5.5);opacity:0}100%{transform:scale(5.5);opacity:0}}
@keyframes rf-city-glow{0%,100%{transform:scale(1);opacity:.75}12%{transform:scale(1.35);opacity:1}40%{transform:scale(1);opacity:.85}}
@media(max-width:820px){.rf-coverage .rf-route-texture{opacity:.24}}
/* Ships: gentle rocking on the swell (each with its own delay). */
.rf-ship-bob{transform-box:fill-box;transform-origin:center;animation:rf-ship-bob 3.6s ease-in-out infinite}
@keyframes rf-ship-bob{0%,100%{transform:rotate(0)}25%{transform:rotate(-2.5deg)}75%{transform:rotate(2deg)}}
/* Sea lanes drawn as tiny waves flowing in the direction of travel; ships follow a hidden smooth guide. */
.rf-lane-guide{fill:none;stroke:none}
.rf-sea-lane.rf-waves{stroke:#9fd4e0;stroke-opacity:.55;stroke-width:.9;stroke-dasharray:16 5;stroke-linecap:round;animation:rf-wave-flow 9s linear infinite}
.rf-ship-bow{fill:#f6fbfc}
@keyframes rf-wave-flow{to{stroke-dashoffset:-210}}
/* Shared inner-page rhythm and contrast. */
body:has(.page-hero) .page-hero{padding:36px 0;background:#073b5a}
body:has(.page-hero) .page-hero h1{font-size:clamp(38px,4.5vw,62px);line-height:1.06;letter-spacing:-.04em;margin:12px 0 18px;color:#fff}
body:has(.page-hero) .page-hero h1 em{color:#f2c45d}
body:has(.page-hero) .page-hero p{font-size:16px;line-height:1.65;color:#e5edf3}
.contact-view .contact-header-details .info span{font-size:14px;color:#edf3f7}
.contact-view .contact-header-details .hours{border:0;border-top:1px solid #678395;padding:14px 0 0;margin-top:18px;background:none}
.contact-view .contact-header-details .hours p{font-size:14px;color:#edf3f7}
.careers-page .career-header,.gallery-view .gallery-header,.contact-view .contact-header{gap:40px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
footer .foot{padding:44px 24px;gap:32px;grid-template-columns:minmax(0,4fr) minmax(0,4fr) minmax(0,3fr)}
footer .foot h4{font-size:clamp(23px,2.3vw,30px);line-height:1.2}
footer .foot p{font-size:14px;margin-top:14px;color:#b7c7d2}
footer .foot h5{color:#f2c45d;margin-bottom:18px}
footer .foot li{font-size:14px;line-height:1.6;color:#e1eaf0}
footer .foot .footer-explore-links{column-gap:22px}
footer .bottom{color:#aebfca}
.gallery-view #gallery-empty{font-size:14px;line-height:1.6;margin-top:20px;color:#526574}
.careers-layout .form label,.contact-view .form label{color:#374f5d;letter-spacing:.07em;line-height:1.5}
.careers-layout .form .consent,.contact-view .form .consent{font-size:12px;letter-spacing:0;text-transform:none}
.careers-layout .form input:focus-visible,.contact-view .form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid #a77416;outline-offset:2px}
@media(max-width:900px){.careers-page .career-header,.gallery-view .gallery-header,.contact-view .contact-header{grid-template-columns:1fr;gap:26px}}
@media(max-width:820px){footer .foot{grid-template-columns:1fr 1fr}footer .foot>div:first-child{grid-column:1/-1}}
@media(max-width:560px){body:has(.page-hero) .page-hero{padding:28px 0}footer .foot{grid-template-columns:1fr;gap:26px;padding:32px 23px}.contact-view .directory{grid-template-columns:1fr}}
/* Phones: these sections stack into tall single columns, where the full-bleed route map shrank to a faint strip
   hidden mid-section behind the text. Show it as its own band above the section copy instead. */
@media(max-width:820px){
.rf-route-texture,.rf-coverage .rf-route-texture{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1000/573;margin:-34px 0 6px;opacity:.8;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 82%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 82%,transparent 100%)}
}
@media(max-width:480px){.careers-layout .form-actions .btn{justify-content:center;text-align:center;text-wrap:balance}}
/* Email addresses read as links: underlined, turning gold on hover (buttons keep their own style). */
a[href^="mailto:"]:not(.btn){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a[href^="mailto:"]:not(.btn):hover,a[href^="mailto:"]:not(.btn):focus-visible{color:#c8901c;text-decoration-thickness:2px}
footer a[href^="mailto:"]:hover,.contact-header-details a[href^="mailto:"]:hover{color:#f2c45d}
