/* Mozambique visual identity: ocean, ivory and brass. */
:root{--brand-color:#d5a554;--primary:#d5a554;--accent:#d5a554;--body-color:#f6f4ee;--title-color:#112b3a;--text-color:#516271}
body{background:#f6f4ee;color:#526474} h1,h2,h3,h4{letter-spacing:-.025em}
.header{background:#102734;box-shadow:0 6px 24px #061d2a22;transition:background .35s,box-shadow .35s}.header .btn{background:#d5a554;color:#112b3a;border-color:#d5a554}.header .btn:hover{background:#fff;border-color:#fff;color:#112b3a}
.hero.morocco-hero{min-height:780px;display:flex;align-items:center;background:#102734;overflow:hidden}.hero-scene{opacity:1}.hero-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,37,.95) 0%,rgba(7,25,37,.79) 41%,rgba(7,25,37,.2) 100%)}
.hero-scene img{animation:scene-in 2.2s ease both;filter:saturate(.72)}.hero-content{max-width:760px;padding:160px 0 110px;position:relative;z-index:2}.hero h1{font-size:clamp(3.7rem,7.3vw,7rem);line-height:.98;letter-spacing:-.055em;text-transform:none}.hero h1 span{color:#dfb66f;display:block}.hero-kicker{letter-spacing:.25em!important;color:#dfb66f!important}.hero-content p{font-size:1.12rem;max-width:550px;color:#e7eef0}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.hero-content>*{animation:rise-in .8s both}.hero-content h1{animation-delay:.12s}.hero-content p{animation-delay:.25s}.hero-actions{animation-delay:.4s}.hero-orbit{opacity:.35;border-color:#e8c481}.hero-identity{border-color:#d5a554;color:#fff}.hero-identity strong{color:#d5a554}.hero-scene-caption{display:none}
.features{background:#d5a554}.features .feature,.features .feature strong,.features .feature small{color:#102734}.feature-num{opacity:.55}.section{padding:110px 0}.eyebrow{color:#aa772d!important;letter-spacing:.18em}.rule{background:#d5a554!important}.section h2{color:#102d3c}.btn{background:#173c4a;border:1px solid #173c4a;color:#fff;transition:transform .25s,background .25s,border-color .25s}.btn:hover{background:#d5a554;border-color:#d5a554;color:#112b3a;transform:translateY(-2px)}
.about-img img{border-radius:2px;box-shadow:24px 24px 0 #e6d7bb}.image-caption{background:#173c4a;color:#fff}.section-gray{background:#ecf0ed}.service-card{background:#fff;border:0;box-shadow:0 14px 40px #10273412;transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 46px #10273428}.service-card img{transition:transform .6s}.service-card:hover img{transform:scale(1.045)}.service-card h3 a,.text-link{color:#173c4a!important}.text-link:hover{color:#aa772d!important}
.why-section{background:#173c4a;color:#e5ece9}.why-section h2,.why-section p,.why-section strong{color:#fff}.why-section .eyebrow{color:#e4be79!important}.why-callout{background:#d5a554;color:#112b3a}.why-list li{border-color:#ffffff33}.why-number{color:#e4be79}
.vessels-section{background:#f7f5f0}.vessels-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;align-items:center}.vessels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.vessels-grid span{background:white;border-left:3px solid #d5a554;padding:18px;font-size:.9rem;font-weight:700;color:#173c4a;transition:transform .25s,box-shadow .25s}.vessels-grid span:hover{transform:translateY(-4px);box-shadow:0 12px 25px #1027341a}
.cta-band{background:#d5a554;color:#102734}.cta-band h2,.cta-band p{color:#102734}.cta-band .eyebrow{color:#704917!important}.footer{background:#102734}.footer a:hover{color:#e1bb78}.footer-contact .ico{color:#d5a554}.page-hero{background-color:#173c4a}.detail-copy h2,.detail-copy h3{color:#112b3a}.detail-image-tag{background:#173c4a}.sidebar-link:hover{color:#aa772d}
.js-reveal{opacity:0;transform:translateY(32px);transition:opacity .75s ease,transform .75s ease}.js-reveal.is-visible{opacity:1;transform:none}@keyframes rise-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes scene-in{from{transform:scale(1.08);opacity:.4}to{transform:scale(1);opacity:1}}
@media(max-width:800px){.hero.morocco-hero{min-height:680px}.hero-content{padding:130px 0 80px}.hero h1{font-size:clamp(3.3rem,12vw,5rem)}.vessels-layout{grid-template-columns:1fr;gap:35px}.vessels-grid{grid-template-columns:repeat(2,1fr)}.section{padding:75px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.js-reveal{opacity:1;transform:none}}
