:root{
 --primary:#1599dc;--primary2:#0b78b5;--sky:#eaf7ff;--sky2:#d7f0ff;--ink:#0c2438;
 --text:#456070;--muted:#718694;--white:#fff;--line:#dcecf5;
 --navy:#09263b;--shadow:0 16px 50px rgba(9,91,135,.10);--shadow2:0 25px 80px rgba(9,91,135,.15);
 --radius:20px;--max:1220px;--ease:.28s ease
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.7;overflow-x:hidden}
body.loading{overflow:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.section{padding:105px 0}
.section.soft{background:linear-gradient(180deg,#f7fcff,#edf8ff)}
.section.dark{background:var(--navy);color:#fff}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary2);font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:14px}
.eyebrow:before{content:"";width:28px;height:2px;background:var(--primary)}
.section-head{max-width:760px;margin:0 auto 55px;text-align:center}
.section-head h2{font-size:clamp(32px,4vw,50px);line-height:1.12;color:var(--ink);letter-spacing:-1.2px;margin-bottom:14px}
.section-head p{color:var(--muted);font-size:16px}
.dark .section-head h2,.dark .section-head p{color:#fff}
.dark .section-head p{opacity:.72}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 21px;border-radius:11px;border:1px solid transparent;font-size:14px;font-weight:800;cursor:pointer;transition:var(--ease)}
.btn.primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary2));box-shadow:0 12px 28px rgba(21,153,220,.22)}
.btn.primary:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(21,153,220,.28)}
.btn.light{color:var(--primary2);background:#fff;border-color:#cbe9f8}
.btn.light:hover{background:var(--sky);transform:translateY(-3px)}
.btn.ghost{color:#fff;border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.08)}
.btn.ghost:hover{background:#fff;color:var(--primary2)}
/* loader */
.loader{position:fixed;inset:0;background:linear-gradient(145deg,#f7fcff,#dff4ff);display:grid;place-items:center;z-index:99999;transition:.5s}
.loader.hidden{opacity:0;visibility:hidden}
.loader-inner{text-align:center}
.loader-inner img{width:150px;height:95px;object-fit:contain;margin:auto;filter:drop-shadow(0 10px 25px rgba(0,100,160,.18))}
.loader-line{height:3px;width:190px;background:#cfeaf8;border-radius:99px;overflow:hidden;margin:14px auto}
.loader-line span{display:block;height:100%;width:45%;background:var(--primary);animation:load 1.2s infinite}
.loader-inner p{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:800}
@keyframes load{0%{transform:translateX(-120%)}100%{transform:translateX(420%)}}
/* top */
.topbar{background:#071d2d;color:#cfe5f2;font-size:12px}
.topbar .container{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.topitems{display:flex;gap:22px;flex-wrap:wrap}
.topitems span{display:flex;gap:7px;align-items:center}.topitems i{color:#5cc9ff}
.top-social{display:flex;gap:13px}.top-social a:hover{color:#5cc9ff}
/* nav */
.navbar{position:sticky;top:0;z-index:5000;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);transition:.3s}
.navbar.scrolled{box-shadow:0 8px 30px rgba(8,67,100,.08)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.logo{display:flex;align-items:center}.logo img{width:126px;height:62px;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:4px;list-style:none}
.navlinks a{padding:9px 12px;border-radius:9px;color:#375365;font-size:13px;font-weight:700}
.navlinks a:hover,.navlinks a.active{color:var(--primary2);background:var(--sky)}
.navquote{white-space:nowrap}
.hamb{display:none;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:10px;color:var(--ink);font-size:18px}
/* hero */
.hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}
.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover}
.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,27,43,.86),rgba(4,27,43,.42) 55%,rgba(4,27,43,.12))}
.hero-content{position:relative;z-index:2;min-height:650px;display:flex;align-items:center}
.hero-copy{max-width:720px;color:#fff;padding:80px 0}
.hero-badge{display:inline-flex;padding:8px 12px;border-radius:99px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);font-size:12px;font-weight:800;letter-spacing:.8px;margin-bottom:18px}
.hero h1{font-size:clamp(42px,6vw,76px);line-height:1.03;letter-spacing:-2.5px;margin-bottom:22px}
.hero h1 span{color:#66d0ff}.hero p{max-width:650px;color:rgba(255,255,255,.82);font-size:17px;margin-bottom:30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-controls{position:absolute;z-index:3;bottom:30px;right:max(20px,calc((100% - var(--max))/2));display:flex;gap:8px}
.hero-controls button{width:44px;height:44px;border-radius:10px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.2);color:#fff;cursor:pointer}
.hero-dots{position:absolute;z-index:3;bottom:45px;left:max(20px,calc((100% - var(--max))/2));display:flex;gap:7px}
.hero-dots button{width:28px;height:4px;border:0;border-radius:99px;background:rgba(255,255,255,.35);cursor:pointer}.hero-dots button.active{background:#64cfff}
/* trust strip */
.trust{margin-top:-1px;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}
.trust-item{padding:22px;border-right:1px solid var(--line);display:flex;gap:13px;align-items:center}.trust-icon{width:43px;height:43px;border-radius:12px;background:var(--sky);color:var(--primary2);display:grid;place-items:center}.trust-item strong{display:block;color:var(--ink);font-size:18px}.trust-item span{display:block;color:var(--muted);font-size:11px}
/* cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 22px rgba(8,67,100,.05);overflow:hidden;transition:.3s}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.card-img{height:220px;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:.5s}.card:hover .card-img img{transform:scale(1.05)}
.card-body{padding:24px}.card-icon{width:48px;height:48px;border-radius:13px;background:var(--sky);color:var(--primary2);display:grid;place-items:center;margin-bottom:15px}.card h3{color:var(--ink);font-size:19px;margin-bottom:8px}.card p{font-size:13px;color:var(--muted)}
/* intro */
.intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.intro-media{position:relative}.intro-media img{width:100%;height:470px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow2)}.floating-stat{position:absolute;right:-20px;bottom:25px;background:#fff;padding:20px 23px;border-radius:16px;box-shadow:var(--shadow);border:1px solid var(--line)}.floating-stat strong{display:block;color:var(--primary2);font-size:28px}.floating-stat span{font-size:11px;color:var(--muted)}.intro-copy h2{font-size:clamp(32px,4vw,48px);line-height:1.12;color:var(--ink);margin-bottom:18px}.intro-copy>p{color:var(--muted);margin-bottom:24px}.checks{display:grid;gap:11px;list-style:none;margin-bottom:28px}.checks li{display:flex;gap:10px;align-items:flex-start;font-size:14px}.checks i{color:var(--primary);margin-top:5px}
/* split feature */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}.feature-media{min-height:520px}.feature-media img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:70px;background:var(--sky)}.feature-copy h2{font-size:44px;line-height:1.12;color:var(--ink);margin-bottom:16px}.feature-copy p{color:var(--muted);margin-bottom:25px}
/* why */
.whygrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.whycard{padding:25px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:17px}.whycard i{font-size:20px;color:#61cfff}.whycard h3{color:#fff;font-size:16px;margin:14px 0 5px}.whycard p{font-size:12px;color:#b7cbd7}
/* vessels */
.vessel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.vessel{display:grid;grid-template-columns:42% 58%;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 6px 25px rgba(8,67,100,.05)}.vessel-img{min-height:260px}.vessel-img img{width:100%;height:100%;object-fit:cover}.vessel-body{padding:25px}.vessel-body h3{color:var(--ink);font-size:21px}.vessel-type{color:var(--primary2);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.vessel-body ul{list-style:none;margin-top:14px;display:grid;gap:7px}.vessel-body li{font-size:12px;color:var(--muted);display:flex;gap:8px}.vessel-body li:before{content:"✓";color:var(--primary);font-weight:900}
/* page hero */
.page-hero{position:relative;min-height:330px;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,#0b78b5,#56c7f5);overflow:hidden;color:#fff}.page-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.18),transparent 35%)}.page-hero .container{position:relative;z-index:2}.page-hero h1{font-size:clamp(38px,5vw,60px);line-height:1.05;margin-bottom:12px}.page-hero p{opacity:.85;max-width:700px;margin:auto}.breadcrumbs{margin-top:16px;font-size:12px;opacity:.8}
/* certification */
.certgrid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:center}.certificate{padding:15px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.certificate img{width:100%;max-height:650px;object-fit:contain}.certcopy h2{font-size:43px;color:var(--ink);line-height:1.12;margin-bottom:16px}.certcopy>p{color:var(--muted);margin-bottom:25px}.certfacts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fact{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--sky)}.fact span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:.7px}.fact strong{color:var(--ink);font-size:14px}
/* gallery/videos */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{height:280px;border-radius:17px;overflow:hidden;cursor:zoom-in}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.07)}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.video{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;cursor:pointer;transition:.3s}.video:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.video-thumb{height:210px;position:relative;background:#09263b}.video-thumb img{width:100%;height:100%;object-fit:cover}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--primary2);box-shadow:0 10px 30px rgba(0,0,0,.2)}.video-body{padding:19px}.video-body small{color:var(--primary2);font-weight:800}.video-body h3{color:var(--ink);font-size:17px;margin-top:5px}
/* contact */
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.contact-copy h2{font-size:44px;line-height:1.1;color:var(--ink);margin-bottom:15px}.contact-copy>p{color:var(--muted);margin-bottom:25px}.contact-item{display:flex;gap:13px;margin:18px 0}.contact-item .ico{width:45px;height:45px;flex:0 0 45px;border-radius:12px;background:var(--sky);color:var(--primary2);display:grid;place-items:center}.contact-item strong{display:block;color:var(--ink);font-size:13px}.contact-item span{font-size:13px;color:var(--muted)}.formbox{padding:30px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.formgroup{display:grid;gap:6px}.formgroup.full{grid-column:1/-1}.formgroup label{font-size:12px;font-weight:800;color:var(--ink)}.formgroup input,.formgroup select,.formgroup textarea{width:100%;padding:13px 14px;border:1px solid var(--line);background:#f8fcff;border-radius:10px;outline:none;color:var(--ink)}.formgroup textarea{min-height:130px;resize:vertical}.formgroup input:focus,.formgroup select:focus,.formgroup textarea:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px rgba(21,153,220,.08)}
/* footer */
footer{background:#071d2d;color:#b4c9d5;padding:65px 0 0}.footergrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:45px;padding-bottom:45px}.footerlogo{width:140px;height:70px;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:15px}.footercol h3{color:#fff;font-size:15px;margin-bottom:16px}.footercol p,.footercol li,.footercol a{font-size:12px;color:#94adbb}.footercol ul{list-style:none;display:grid;gap:9px}.footercol a:hover{color:#65cfff}.social{display:flex;gap:8px;margin-top:18px}.social a{width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.07);display:grid;place-items:center}.social a:hover{background:var(--primary);color:#fff}.footerbottom{border-top:1px solid rgba(255,255,255,.08);padding:18px 0;text-align:center;font-size:11px;color:#6f8a99}
/* floating */
.whatsapp{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:25px;z-index:4000;box-shadow:0 10px 30px rgba(37,211,102,.3)}.topbtn{position:fixed;right:23px;bottom:85px;width:44px;height:44px;border:0;border-radius:11px;background:var(--primary);color:#fff;display:grid;place-items:center;opacity:0;visibility:hidden;cursor:pointer;transition:.3s;z-index:4000}.topbtn.show{opacity:1;visibility:visible}
/* lightbox/modal */
.lightbox,.modal{position:fixed;inset:0;background:rgba(2,18,30,.92);display:flex;align-items:center;justify-content:center;padding:25px;opacity:0;visibility:hidden;transition:.3s;z-index:10000}.lightbox.active,.modal.active{opacity:1;visibility:visible}.lightbox img{max-width:94vw;max-height:90vh;border-radius:12px}.close{position:absolute;top:18px;right:22px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:19px;cursor:pointer}.modalbox{position:relative;width:min(1000px,95vw);background:#fff;border-radius:18px;padding:18px;overflow:hidden}.modalmedia{aspect-ratio:16/9;background:#000;border-radius:11px;overflow:hidden}.modalmedia iframe,.modalmedia video{width:100%;height:100%;border:0}.modal-title{text-align:center;color:var(--ink);font-weight:800;margin-top:10px}.modalnav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--primary2);z-index:3;cursor:pointer}.prev{left:-18px}.next{right:-18px}
/* responsive */
@media(max-width:1050px){.navlinks{position:absolute;left:20px;right:20px;top:75px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:10px;display:none;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.navlinks a{display:block}.hamb{display:block}.navquote{display:none}.cards,.video-grid{grid-template-columns:repeat(2,1fr)}.whygrid{grid-template-columns:repeat(2,1fr)}.footergrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{display:none}.nav{min-height:70px}.logo img{width:112px;height:58px}.hero,.hero-content{min-height:590px}.hero-copy{padding:70px 0}.hero h1{font-size:43px}.hero p{font-size:15px}.hero-controls{right:20px}.hero-dots{left:20px}.trust-grid{grid-template-columns:1fr 1fr}.intro,.feature,.contact-grid,.certgrid{grid-template-columns:1fr;gap:35px}.intro-media img{height:340px}.floating-stat{right:12px}.feature-media{min-height:350px}.feature-copy{padding:50px 25px}.vessel-grid,.cards,.gallery,.video-grid{grid-template-columns:1fr}.vessel{grid-template-columns:1fr}.vessel-img{height:250px;min-height:0}.section{padding:75px 0}.formgrid{grid-template-columns:1fr}.formgroup.full{grid-column:auto}.footergrid{grid-template-columns:1fr}.certfacts{grid-template-columns:1fr 1fr}}
@media(max-width:450px){.container{width:min(calc(100% - 28px),var(--max))}.hero h1{font-size:37px}.hero-actions .btn{width:100%}.trust-item{padding:16px 10px}.trust-item strong{font-size:15px}.trust-item span{font-size:10px}.whygrid{grid-template-columns:1fr}.certfacts{grid-template-columns:1fr}.topbtn{right:18px}.whatsapp{right:18px}}

/* =========================================================
   PREMIUM MOTION LAYER
   ========================================================= */
:root{--motion:cubic-bezier(.22,1,.36,1);--glow:rgba(69,199,255,.18)}
html{scroll-behavior:smooth}
body{background:#fff}

/* page loading reveal */
body:not(.ready) main,body:not(.ready) footer{opacity:0}
body.ready main,body.ready footer{opacity:1;transition:opacity .7s ease}

/* subtle animated background grid for hero/page hero */
.hero:before,.page-hero:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:55px 55px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent)}
.hero:after{content:"";position:absolute;z-index:1;right:-120px;bottom:-180px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(78,205,255,.18),transparent 68%);filter:blur(8px);animation:heroGlow 8s ease-in-out infinite alternate}
@keyframes heroGlow{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-60px,-25px,0) scale(1.12)}}

.hero-slide img{transform:scale(1.06);transition:opacity 1s ease,transform 8s var(--motion)}
.hero-slide.active img{transform:scale(1)}
.hero-slide.active .hero-copy{animation:heroCopyIn .9s var(--motion) both}
@keyframes heroCopyIn{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.hero-badge{animation:badgeFloat 3.5s ease-in-out infinite}
@keyframes badgeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* animated ocean light streak */
.hero .hero-slide:before{content:"";position:absolute;z-index:1;left:-20%;bottom:0;width:140%;height:28%;background:linear-gradient(90deg,transparent,rgba(100,210,255,.11),transparent);transform:skewY(-3deg);animation:oceanSweep 9s linear infinite}
@keyframes oceanSweep{0%{transform:translateX(-15%) skewY(-3deg)}100%{transform:translateX(15%) skewY(-3deg)}}

/* scroll progress */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#55d2ff,#0b78b5);z-index:100000;box-shadow:0 0 14px rgba(85,210,255,.65);pointer-events:none}

/* reveal animation - JS adds .reveal */
.reveal{opacity:0;transform:translate3d(0,34px,0);transition:opacity .8s var(--motion),transform .8s var(--motion);will-change:opacity,transform}
.reveal.reveal-left{transform:translate3d(-38px,0,0)}
.reveal.reveal-right{transform:translate3d(38px,0,0)}
.reveal.reveal-scale{transform:scale(.94)}
.reveal.visible{opacity:1;transform:none}

/* stagger children */
.stagger > .reveal:nth-child(1){transition-delay:.03s}.stagger > .reveal:nth-child(2){transition-delay:.09s}.stagger > .reveal:nth-child(3){transition-delay:.15s}.stagger > .reveal:nth-child(4){transition-delay:.21s}.stagger > .reveal:nth-child(5){transition-delay:.27s}.stagger > .reveal:nth-child(6){transition-delay:.33s}

/* premium card interaction */
.card,.vessel,.video,.whycard,.fact,.trust-item{transform-style:preserve-3d;backface-visibility:hidden}
.card,.vessel,.video{transition:transform .45s var(--motion),box-shadow .45s var(--motion),border-color .35s ease}
.card:hover,.video:hover{transform:translateY(-9px) scale(1.008);box-shadow:0 22px 55px rgba(8,100,145,.13);border-color:#b9e6f9}
.vessel:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(8,100,145,.12);border-color:#b9e6f9}

/* image zoom with shine */
.card-img,.video-thumb,.vessel-img,.intro-media,.gallery-item,.certificate{position:relative;overflow:hidden}
.card-img:after,.video-thumb:after,.vessel-img:after,.intro-media:after,.gallery-item:after{content:"";position:absolute;inset:-40% -80%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.25) 48%,transparent 56%);transform:translateX(-45%) rotate(8deg);transition:transform .8s ease;pointer-events:none}
.card:hover .card-img:after,.video:hover .video-thumb:after,.vessel:hover .vessel-img:after,.gallery-item:hover:after{transform:translateX(45%) rotate(8deg)}

/* icon micro motion */
.card-icon,.trust-icon,.contact-item .ico{transition:transform .4s var(--motion),background .3s ease,box-shadow .3s ease}
.card:hover .card-icon,.trust-item:hover .trust-icon{transform:translateY(-3px) rotate(-4deg);box-shadow:0 10px 24px rgba(21,153,220,.15)}

/* trust strip */
.trust-item{transition:background .3s ease,transform .35s var(--motion)}
.trust-item:hover{background:#f7fcff;transform:translateY(-2px)}

/* floating stat pulse */
.floating-stat{animation:statFloat 4s ease-in-out infinite}
@keyframes statFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

/* buttons */
.btn{position:relative;overflow:hidden;isolation:isolate}
.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.28) 50%,transparent 75%);transform:translateX(-120%);transition:transform .65s ease;z-index:-1}
.btn:hover:after{transform:translateX(120%)}
.btn.primary{background-size:180% 180%;animation:buttonGradient 6s ease infinite}
@keyframes buttonGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* section decorative line */
.section-head h2,.intro-copy h2,.feature-copy h2,.certcopy h2,.contact-copy h2{position:relative}
.section-head h2:after{content:"";display:block;width:54px;height:3px;border-radius:20px;background:linear-gradient(90deg,#0ea5e9,#7dd3fc);margin:18px auto 0;transform:scaleX(0);transform-origin:center;transition:transform .8s var(--motion)}
.section-head.visible h2:after{transform:scaleX(1)}

/* page hero motion */
.page-hero{overflow:hidden}
.page-hero:after{animation:pageGlow 7s ease-in-out infinite alternate}
@keyframes pageGlow{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-80px,20px,0) scale(1.12)}}
.page-hero h1{animation:pageTitleIn .8s var(--motion) both}
.page-hero p{animation:pageTitleIn .8s .12s var(--motion) both}
.breadcrumbs{animation:pageTitleIn .8s .22s var(--motion) both}
@keyframes pageTitleIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* why cards glow */
.whycard{transition:transform .4s var(--motion),background .35s ease,border-color .35s ease}
.whycard:hover{transform:translateY(-7px);background:rgba(255,255,255,.095);border-color:rgba(101,207,255,.35)}
.whycard i{transition:transform .35s var(--motion)}
.whycard:hover i{transform:scale(1.12) rotate(-6deg)}

/* video play button */
.play{transition:transform .4s var(--motion),box-shadow .4s ease,background .3s ease}
.video:hover .play{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 14px 35px rgba(14,150,210,.3)}
.play:before{content:"";position:absolute;inset:-8px;border:1px solid rgba(255,255,255,.65);border-radius:50%;animation:playRing 2s ease-out infinite}
@keyframes playRing{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.35);opacity:0}}

/* nav link animated underline */
.navlinks a{position:relative;overflow:hidden}
.navlinks a:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--motion)}
.navlinks a:hover:after,.navlinks a.active:after{transform:scaleX(1)}

/* logo hover */
.logo img{transition:transform .45s var(--motion),filter .3s ease}
.logo:hover img{transform:translateY(-2px) scale(1.025)}

/* floating contact buttons */
.whatsapp{animation:waPulse 2.8s ease-in-out infinite}
@keyframes waPulse{0%,100%{box-shadow:0 10px 30px rgba(37,211,102,.3)}50%{box-shadow:0 10px 38px rgba(37,211,102,.52)}}
.topbtn{transition:opacity .3s,visibility .3s,transform .35s var(--motion),background .3s}
.topbtn:hover{transform:translateY(-4px);background:var(--primary2)}

/* subtle cursor spotlight on desktop */
.site-spotlight{position:fixed;width:320px;height:320px;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(circle,rgba(68,196,246,.07),transparent 67%);transform:translate(-50%,-50%);opacity:0;transition:opacity .35s ease;mix-blend-mode:multiply}
@media (hover:hover) and (pointer:fine){.site-spotlight{opacity:1}}

/* reduced motion accessibility */
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}.site-spotlight{display:none}}

/* =========================================================
   KANHAA MARINE SERVICE OMAN — PREMIUM 2026 VISUAL LAYER
   ========================================================= */
:root{
 --primary:#08a8e8;--primary2:#0877b8;--sky:#eafaff;--sky2:#d8f5ff;
 --ink:#071d2c;--text:#40596a;--muted:#718797;--line:#d8edf6;
 --navy:#041824;--shadow:0 22px 70px rgba(0,90,135,.12);--shadow2:0 35px 100px rgba(0,62,95,.20);
 --radius:24px;
}
body{background:#f8fcfe}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 10% 10%,rgba(5,180,235,.06),transparent 30%),radial-gradient(circle at 90% 60%,rgba(14,120,190,.05),transparent 32%)}
.container{width:min(calc(100% - 44px),1280px)}
.topbar{background:linear-gradient(90deg,#031621,#07304a);box-shadow:0 4px 20px rgba(0,0,0,.08)}
.topitems{gap:16px}
.topitems span{white-space:nowrap}
.navbar{background:rgba(255,255,255,.82);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.nav{min-height:84px}
.logo img{width:140px;height:68px;filter:drop-shadow(0 8px 18px rgba(0,100,150,.12))}
.navlinks{gap:2px}
.navlinks a{padding:10px 13px}
.btn{border-radius:14px;padding:14px 22px}
.btn.primary{box-shadow:0 14px 35px rgba(8,168,232,.24)}
.hero{min-height:720px}
.hero-content{min-height:720px}
.hero-slide:after{background:linear-gradient(90deg,rgba(2,18,29,.90),rgba(2,30,45,.55) 48%,rgba(2,25,40,.10) 100%)}
.hero-copy{max-width:790px}
.hero h1{font-weight:800;letter-spacing:-3px}
.hero p{font-size:18px;max-width:720px}
.hero-badge{background:rgba(8,168,232,.16);border-color:rgba(102,208,255,.35);backdrop-filter:blur(10px)}
.trust{box-shadow:0 12px 35px rgba(0,80,120,.05)}
.trust-item{min-height:92px}
.section{padding:115px 0}
.section.soft{background:linear-gradient(180deg,#f5fcff,#e8f8ff)}
.section-head{margin-bottom:62px}
.section-head h2{font-weight:800}
.cards{gap:26px}
.card{border-color:rgba(120,190,220,.25);box-shadow:0 12px 45px rgba(5,76,110,.07)}
.card:hover{transform:translateY(-10px);box-shadow:0 25px 65px rgba(5,91,135,.15)}
.card-img{height:245px}
.card-body{padding:27px}
.card-icon{box-shadow:0 8px 22px rgba(8,168,232,.10)}
.intro-media img,.feature-media img{border-radius:28px}
.floating-stat{right:-12px;bottom:24px;border-radius:20px}
.dark{background:radial-gradient(circle at 15% 10%,#0a3550,#031723 62%)}
.whycard{border-radius:20px!important}
.page-hero{min-height:360px;background:linear-gradient(135deg,#041a28,#087cb5)!important;position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(84,214,255,.25),transparent 35%)}
.page-hero .container{position:relative;z-index:1}
.page-hero h1{font-weight:800;letter-spacing:-2px}
.vessel,.video{border-radius:24px;box-shadow:0 12px 45px rgba(5,76,110,.08);border:1px solid var(--line)}
.vessel:hover,.video:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.vessel-placeholder{height:260px;background:linear-gradient(135deg,#06263a,#0a82b9);display:grid;place-items:center;color:#fff}
.vessel-placeholder div{text-align:center}
.vessel-placeholder i{display:block;font-size:58px;color:#71dcff;margin-bottom:10px}
.vessel-placeholder span{font-size:14px;font-weight:800;letter-spacing:1.5px}
.vessel-highlight{outline:2px solid rgba(8,168,232,.25);box-shadow:0 22px 70px rgba(8,168,232,.14)}
.contact-grid>div:last-child{box-shadow:0 25px 70px rgba(0,100,150,.18)}
.whatsapp{box-shadow:0 14px 35px rgba(0,130,100,.28)!important}
footer{background:#031620!important}
.footerbottom{border-color:rgba(255,255,255,.1)!important}
@media(max-width:900px){
 .topitems{gap:8px 14px}.top-phone:nth-of-type(n+3){display:none}
 .navquote{display:none}.hamb{display:block}
 .navlinks{position:absolute;left:22px;right:22px;top:78px;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);padding:12px;border-radius:18px;box-shadow:0 25px 70px rgba(0,40,65,.15);display:none;flex-direction:column;align-items:stretch}
 .navlinks.open{display:flex}.navlinks a{display:block}
 .hero,.hero-content{min-height:650px}.hero h1{letter-spacing:-2px}
 .section{padding:85px 0}
}
@media(max-width:600px){
 .container{width:min(calc(100% - 28px),1280px)}
 .topbar .container{padding:8px 0}.topitems{font-size:10px}.topitems span:nth-child(n+3){display:none}
 .logo img{width:120px}.nav{min-height:72px}
 .hero,.hero-content{min-height:610px}.hero-copy{padding:50px 0}.hero h1{font-size:43px}.hero p{font-size:15px}
 .hero-controls{bottom:20px}.hero-dots{bottom:32px}
 .section{padding:72px 0}.section-head h2{font-size:34px}
 .card-img{height:210px}
 .floating-stat{right:10px}
 .page-hero{min-height:300px}
}

/* KANHAA MARINE SERVICE — logo-led premium UI */
:root{
 --primary:#1d6fb8;--primary2:#0b2d59;--sky:#eef8ff;--sky2:#d9efff;
 --ink:#08264d;--text:#49647b;--muted:#7890a3;--line:#d9e9f5;--navy:#061b34;
 --shadow:0 22px 70px rgba(8,49,91,.12);--shadow2:0 35px 100px rgba(8,49,91,.20);
}
body{background:#f8fbfe;color:var(--text)}
.topbar{background:linear-gradient(90deg,#061b34,#0b3767)}
.topitems i{color:#6bd0ff}
.navbar{background:rgba(255,255,255,.9);border-bottom-color:rgba(29,111,184,.12)}
.navbar.scrolled{box-shadow:0 14px 40px rgba(6,39,75,.12)}
.logo{width:155px;height:76px;overflow:visible}
.logo img{width:155px;height:76px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(8,45,85,.16))}
.nav{min-height:88px}
.navlinks a:hover,.navlinks a.active{color:var(--primary2);background:#edf7ff}
.btn.primary{background:linear-gradient(135deg,#1d79c7,#0b2d59);box-shadow:0 16px 36px rgba(18,82,137,.24)}
.btn.primary:hover{box-shadow:0 22px 45px rgba(18,82,137,.30)}
.hero h1 span{color:#79d7ff}
.hero-badge{background:rgba(17,89,147,.24);border-color:rgba(133,220,255,.42)}
.page-hero{background:linear-gradient(135deg,#061d39,#145f9f 58%,#49b9e7)!important}
.section.soft{background:linear-gradient(180deg,#f6fbff,#e8f5ff)}
.card,.vessel,.video{border-color:rgba(18,91,145,.13)}
.card:hover,.vessel:hover,.video:hover{border-color:rgba(29,111,184,.30)}
.card-icon,.trust-icon{background:#edf7ff;color:#0b5d9f}
.feature-copy{background:linear-gradient(135deg,#edf8ff,#dff1ff)}
.dark{background:radial-gradient(circle at 15% 5%,#0d3763,#061b34 64%)}
.footerlogo{object-fit:contain;object-position:left center}
footer{background:#04172e!important}

/* Premium mobile navigation + touch layout */
@media(max-width:900px){
 .nav{min-height:82px}
 .logo{width:130px;height:70px}
 .logo img{width:130px;height:70px}
 .hamb{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;border-color:#cfe3f1;box-shadow:0 8px 22px rgba(8,48,88,.08)}
 .navlinks{left:14px;right:14px;top:76px;padding:10px;background:rgba(255,255,255,.97);border:1px solid rgba(29,111,184,.12);box-shadow:0 24px 70px rgba(5,35,68,.18);border-radius:20px}
 .navlinks a{padding:13px 15px;border-radius:12px;font-size:14px}
 .navlinks a:after{display:none}
 .hero,.hero-content{min-height:650px}
 .hero-copy{padding:65px 0 85px}
 .hero h1{font-size:clamp(40px,8vw,58px);line-height:1.02}
 .hero p{font-size:15px;line-height:1.7}
 .hero-actions{gap:10px}
 .hero-actions .btn{min-height:50px}
 .section{padding:82px 0}
 .cards,.whygrid,.vessel-grid,.video-grid{gap:18px}
}
@media(max-width:600px){
 .container{width:min(calc(100% - 28px),1280px)}
 .topbar{display:none}
 .nav{min-height:72px}
 .logo{width:116px;height:64px}
 .logo img{width:116px;height:64px}
 .navbar{box-shadow:0 6px 25px rgba(8,40,72,.06)}
 .navlinks{top:68px;max-height:calc(100vh - 82px);overflow:auto}
 .hero,.hero-content{min-height:610px}
 .hero-copy{padding:54px 0 88px}
 .hero h1{font-size:39px;letter-spacing:-1.8px}
 .hero p{font-size:14px;max-width:100%}
 .hero-actions .btn{width:100%;min-height:52px}
 .hero-badge{font-size:10px;letter-spacing:.55px;line-height:1.45}
 .hero-controls{right:14px;bottom:20px}
 .hero-dots{left:14px;bottom:37px}
 .trust-grid{grid-template-columns:1fr 1fr}
 .trust-item{min-height:78px;padding:13px 10px;gap:9px}
 .trust-icon{width:38px;height:38px;min-width:38px}
 .trust-item strong{font-size:14px}
 .trust-item span{font-size:9px;line-height:1.3}
 .section{padding:68px 0}
 .section-head{margin-bottom:40px}
 .section-head h2{font-size:31px}
 .section-head p{font-size:14px}
 .intro,.feature,.contact-grid,.certgrid{gap:28px}
 .intro-media img{height:320px}
 .floating-stat{right:8px;bottom:14px;padding:14px 16px}
 .floating-stat strong{font-size:24px}
 .floating-stat span{font-size:10px}
 .feature-media{min-height:290px}
 .feature-copy{padding:38px 22px}
 .feature-copy h2{font-size:34px}
 .card-img{height:205px}
 .card-body{padding:21px}
 .vessel-img{height:220px}
 .page-hero{min-height:285px;padding:25px 0}
 .page-hero h1{font-size:40px}
 .page-hero p{font-size:14px}
 .footergrid{gap:30px}
 .footerlogo{width:145px!important;height:auto!important}
 .whatsapp{right:16px;bottom:18px;width:54px;height:54px}
 .topbtn{right:16px;bottom:84px}
}
@media(max-width:390px){
 .logo,.logo img{width:106px}
 .hero h1{font-size:35px}
 .trust-item{padding:11px 8px}
 .section-head h2{font-size:28px}
}

/* =========================================================
   RECENT CLIENT OPERATION — FIXED PREMIUM LAYOUT
   ========================================================= */
.recent-operation {
  background: linear-gradient(180deg, #f7fcff, #eaf6ff);
}

.recent-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
  margin-bottom: 50px;
}

.recent-feature-copy {
  padding: 50px 45px;
  border: 1px solid rgba(29, 111, 184, 0.13);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 20px 70px rgba(8, 49, 91, 0.08);
  display: flex;
  flex-direction: column;
  justify-content: center;
  backdrop-filter: blur(10px);
}

.recent-feature-copy h3 {
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.15;
  color: var(--ink);
  margin: 15px 0 20px;
  letter-spacing: -0.5px;
}

.recent-feature-copy p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 30px;
  color: var(--muted);
}

.recent-feature-copy .btn {
  align-self: flex-start;
}

.recent-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0b5d9f;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}

.recent-pill i {
  font-size: 8px;
  color: var(--primary);
}

/* --- Visual Side --- */
.recent-feature-visual {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 25px 80px rgba(8, 49, 91, 0.16);
  background: #08264d;
}

.recent-feature-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.recent-feature:hover .recent-feature-visual img {
  transform: scale(1.04);
}

.recent-feature-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2, 20, 38, 0.02), rgba(2, 20, 38, 0.35));
  pointer-events: none;
}

.recent-date {
  position: absolute;
  right: 22px;
  bottom: 22px;
  z-index: 2;
  padding: 14px 20px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(12px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
  text-align: center;
  color: var(--ink);
  line-height: 1.1;
}

.recent-date strong {
  display: block;
  font-size: 22px;
  font-weight: 800;
}

.recent-date span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--muted);
}

/* Recent video grid */
.recent-video-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.recent-video-grid .video {
  overflow: hidden;
  background: #fff;
}

.recent-video-grid .video-thumb {
  position: relative;
  height: 235px;
  overflow: hidden;
}

.recent-video-grid .video-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}

.recent-video-grid .video:hover .video-thumb img {
  transform: scale(1.06);
}

.recent-video-grid .video-body p {
  font-size: 13px;
  line-height: 1.6;
  margin: 8px 0 0;
  color: var(--muted);
}

.recent-tag {
  position: absolute;
  top: 14px;
  left: 14px;
  padding: 7px 10px;
  border-radius: 999px;
  background: #0b2d59;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.2px;
  z-index: 2;
}

/* --- Responsive Fixes --- */
@media (max-width: 900px) {
  .recent-feature {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .recent-feature-copy {
    padding: 35px 28px;
  }
  .recent-feature-visual {
    aspect-ratio: 16 / 10;
  }
  .recent-video-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  .recent-feature-copy {
    padding: 28px 22px;
    border-radius: 22px;
  }
  .recent-feature-copy h3 {
    font-size: 28px;
  }
  .recent-feature-copy p {
    font-size: 14px;
    margin-bottom: 22px;
  }
  .recent-feature-visual {
    aspect-ratio: 4 / 3;
    border-radius: 22px;
  }
  .recent-date {
    right: 14px;
    bottom: 14px;
    padding: 11px 15px;
  }
  .recent-date strong {
    font-size: 18px;
  }
  .recent-video-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .recent-video-grid .video-thumb {
    height: 220px;
  }
}