/* اسکرول روان */
html{scroll-behavior:smooth}
:root{
  --bg:#eaf4fc;--blue:#1877f2;
}
*{box-sizing:border-box;margin:0;padding:0;font-family:'Vazirmatn',Tahoma,sans-serif}
body{background:linear-gradient(180deg,#f0f8ff,#e1f0fb);color:var(--text);overflow-x:hidden;line-height:1.7}
a{text-decoration:none;color:inherit}
button{border:0;cursor:pointer;font-family:inherit}
img{max-width:100%;height:auto;display:block}

/* هدر */
.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:14px 0;background:linear-gradient(135deg,#1877f2,#0d6efd);box-shadow:0 4px 25px rgba(24,119,242,.25)}
.nav{max-width:1440px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}
.logo,.logo a{display:flex;align-items:center;gap:12px}
.logo-icon,.logo-text{color:#fff}
.logo-icon{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:24px}
.logo-text b{font-size:19px;font-weight:900;display:block;color:#fff}
.logo-text span{font-size:10px;color:rgba(255,255,255,.85)}
.custom-logo{max-height:46px;width:auto}
.menu{display:flex;gap:2px}
.menu-item{padding:8px 13px;border-radius:12px;font-size:13px;font-weight:700;color:rgba(255,255,255,.9);transition:var(--t);cursor:pointer}
.menu-item:hover,.menu-item.active{background:rgba(255,255,255,.2);color:#fff}
.nav-actions{display:flex;align-items:center;gap:10px}
.nav-btn{padding:10px 20px;border-radius:12px;background:var(--gold);color:#1a2b45;font-weight:900;font-size:13px}
.mobile-toggle{display:none;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;font-size:18px}

/* هیرو */
.hero{position:relative;min-height:640px;padding:100px 0 60px;overflow:hidden;background:linear-gradient(180deg,#8ecde8 0%,#a8d8f0 35%,#5ab0e5 100%)}
.hero-bg-slider{position:absolute;inset:0}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease}
.hero-slide.active{opacity:.35}
.hero-sky-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 12%,rgba(255,255,255,.7),transparent 30%)}
.bird{position:absolute;font-size:20px;opacity:.55;animation:fly 18s linear infinite;z-index:2}
.bird.b1{top:18%}.bird.b2{top:25%;font-size:15px;animation-delay:6s}.bird.b3{top:14%;font-size:17px;animation-delay:11s}
@keyframes fly{0%{left:40%;transform:translateY(0)}50%{transform:translateY(-25px)}100%{left:95%;transform:translateY(0)}}
.hero-arrow{position:absolute;top:45%;z-index:10;width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.9);color:#1877f2;font-size:26px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.15)}
.arrow-right{right:20px}.arrow-left{left:20px}
.hero-inner{position:relative;z-index:5;max-width:1440px;margin:auto;padding:0 24px;display:grid;grid-template-columns:400px 1fr;gap:40px;align-items:center}

/* کتاب */
.book-glass{background:rgba(255,255,255,.25);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.5);border-radius:28px;padding:22px;box-shadow:0 25px 60px rgba(0,0,0,.15)}
.book-3d{perspective:1200px;cursor:pointer}
.book-cover{position:relative;background:linear-gradient(135deg,#1877f2,#0d6efd);border-radius:10px 16px 16px 10px;padding:30px 24px;color:#fff;text-align:center;box-shadow:0 20px 45px rgba(13,110,253,.4);transform:rotateY(-8deg);transition:var(--t);animation:bookFloat 4s ease-in-out infinite}
@keyframes bookFloat{0%,100%{transform:rotateY(-8deg) translateY(0)}50%{transform:rotateY(-8deg) translateY(-12px)}}
.book-3d:hover .book-cover{transform:rotateY(0)}
.book-cover::after{content:'';position:absolute;right:6px;top:16px;bottom:16px;width:5px;background:repeating-linear-gradient(180deg,rgba(255,255,255,.5) 0 3px,transparent 3px 14px)}
.book-badge{background:rgba(255,255,255,.2);padding:4px 14px;border-radius:20px;font-size:11px;font-weight:700;display:inline-block;margin-bottom:12px}
.book-cover h3{font-size:22px;font-weight:900;line-height:1.4;margin-bottom:8px;color:#fff}
.book-date{font-size:12px;opacity:.9;margin-bottom:16px}
.book-ferry-img{height:110px;border-radius:12px;background:linear-gradient(135deg,#7fc7f0,#4da8e0);background-size:cover !important;background-position:center !important;display:flex;align-items:center;justify-content:center;font-size:56px}
.book-title-txt{text-align:center;font-weight:800;font-size:14px;color:#0d3b66;margin:16px 0 14px;line-height:1.7}
.book-buttons{display:flex;gap:10px}
.book-btn{flex:1;padding:12px;border-radius:14px;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:6px;transition:var(--t)}
.book-btn.online{background:linear-gradient(135deg,#1877f2,#0d6efd);color:#fff}
.book-btn.pdf{background:#fff;color:#1877f2}
.book-btn:hover{transform:translateY(-2px)}

/* متن هیرو */
.hero-text-side{text-align:right}
.hero-text-side h1{font-size:56px;font-weight:900;line-height:1.2;margin-bottom:14px}
.hero-text-side h1 .c-blue{color:#0d6efd}
.hero-text-side h1 .c-dark{color:#0d3b66}
.hero-desc{font-size:16px;color:#1a4568;font-weight:600;margin-bottom:30px}
.hero-cta{display:flex;gap:14px;justify-content:flex-end}
.btn-prim{background:linear-gradient(135deg,#1877f2,#0d6efd);color:#fff;padding:15px 28px;border-radius:16px;font-size:14px;font-weight:800;box-shadow:0 12px 30px rgba(24,119,242,.4);transition:var(--t)}
.btn-sec{background:rgba(255,255,255,.95);color:#1877f2;padding:15px 28px;border-radius:16px;font-size:14px;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.1);transition:var(--t)}
.btn-prim:hover,.btn-sec:hover{transform:translateY(-3px)}
.hero-dots{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:6}
.hdot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer}
.hdot.active{background:#fff;width:26px;border-radius:10px}

/* نوار آمار */
.statbar{max-width:1360px;margin:-40px auto 0;position:relative;z-index:20;background:linear-gradient(135deg,#1877f2,#0d6efd);border-radius:26px;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 20px 50px rgba(24,119,242,.3);overflow:hidden}
.stat-item{padding:22px 16px;text-align:center;border-left:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;align-items:center;gap:3px}
.stat-item:last-child{border-left:none}
.stat-ic{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:6px}
.stat-label{font-size:11px;color:rgba(255,255,255,.85);font-weight:700}
.stat-value{font-size:22px;font-weight:900;color:#fff}
.stat-sub{font-size:10px;color:rgba(255,255,255,.7)}

/* محتوا */
.main{max-width:1360px;margin:40px auto;padding:0 24px}
.top-cards{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1.4fr;gap:18px;margin-bottom:50px}
.pcard{background:#fff;border-radius:24px;padding:22px;box-shadow:var(--shadow);transition:var(--t)}
.weather-pcard h4,.pcard h4{text-align:center;font-size:15px;font-weight:800;margin-bottom:14px}
.weather-main{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}
.weather-sun{font-size:48px;animation:spin 20s linear infinite}
@keyframes spin{100%{transform:rotate(360deg)}}
.weather-temp{font-size:40px;font-weight:900;color:#1877f2}
.weather-temp span{display:block;font-size:12px;color:var(--muted);text-align:center;font-weight:600}
.weather-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #eef3f8;padding-top:14px}
.wstat{text-align:center}
.wstat b{display:block;font-size:15px;font-weight:900}
.wstat span{font-size:9px;color:var(--muted)}
.weather-link{text-align:center;margin-top:14px;color:#1877f2;font-size:11px;font-weight:800;cursor:pointer}

.service-pcard{cursor:pointer;position:relative;overflow:hidden;text-align:right}
.service-pcard:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(24,119,242,.18)}
.service-pcard h4{text-align:right}
.sp-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;margin-bottom:14px}
.ic-blue{background:linear-gradient(135deg,#1877f2,#0d6efd)}
.ic-green{background:linear-gradient(135deg,#10b981,#059669)}
.ic-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}
.service-pcard p{font-size:12px;color:var(--muted);margin-bottom:16px;line-height:1.7}
.sp-btn{display:inline-flex;align-items:center;gap:5px;background:#f0f6ff;color:#1877f2;padding:9px 16px;border-radius:12px;font-size:12px;font-weight:800}

.news-pcard .news-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.news-pcard h4{font-size:15px;font-weight:900;text-align:right;margin:0}
.news-more{font-size:11px;color:#1877f2;font-weight:800}
.news-item{display:flex;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #f1f5f9;cursor:pointer}
.news-item:last-child{border-bottom:none}
.news-thumb{width:52px;height:42px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:20px;background:linear-gradient(135deg,#7fc7f0,#4da8e0)}
.news-text{flex:1;text-align:right}
.news-title{font-size:12px;font-weight:700;transition:var(--t);line-height:1.5}
.news-item:hover .news-title{color:#1877f2}
.news-date{font-size:9px;color:var(--muted);margin-top:2px}

/* بخش‌ها */
.section-header{margin-bottom:24px}
.section-title{font-size:24px;font-weight:900;display:flex;align-items:center;gap:10px}
.section-sub{color:var(--muted);font-size:14px;margin-top:4px}

/* نقشه زنده */
.maps-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:40px}
.map-container{position:relative;height:420px;background:linear-gradient(135deg,#7fc7f0,#4da8e0);border:2px solid #fff;border-radius:24px;overflow:hidden;box-shadow:0 15px 40px rgba(24,119,242,.2)}
.map-sea{position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 30px,rgba(255,255,255,.06) 31px,transparent 32px);animation:seaMove 25s linear infinite}
@keyframes seaMove{to{background-position:60px 60px}}
.land-charak{position:absolute;top:-30px;right:-30px;width:55%;height:150px;background:radial-gradient(ellipse at 60% 40%,rgba(255,235,180,.5),transparent 55%),rgba(230,200,140,.3);border-bottom-left-radius:130px}
.land-kish{position:absolute;left:8%;bottom:40px;width:180px;height:100px;background:radial-gradient(ellipse at 45% 45%,rgba(255,235,180,.55),transparent 55%),rgba(230,200,140,.35);border-radius:48% 52% 55% 45%}
.land-kish::before{content:'🌴';position:absolute;top:28%;left:42%;font-size:18px}
.map-header{position:absolute;top:0;left:0;right:0;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;z-index:20;background:linear-gradient(180deg,rgba(255,255,255,.9),transparent)}
.route-name{font-size:15px;font-weight:900;color:#0d3b66;display:flex;align-items:center;gap:8px}
.live-pulse{width:9px;height:9px;border-radius:50%;background:#10b981;box-shadow:0 0 12px #10b981;animation:blink 1.5s infinite}
.live-pulse.off{background:#ef4444;box-shadow:0 0 10px #ef4444;animation:none}
@keyframes blink{50%{opacity:.3}}
.status-badge{font-size:11px;font-weight:900;padding:5px 12px;border-radius:20px;background:rgba(16,185,129,.15);color:#059669}
.status-badge.off{background:rgba(239,68,68,.12);color:#dc2626}
.route-svg{position:absolute;inset:0;width:100%;height:100%;z-index:5}
.route-line{fill:none;stroke:rgba(255,255,255,.4);stroke-width:2;stroke-dasharray:5,5}
.route-line-active{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-dasharray:8,10;animation:flow 8s linear infinite}
@keyframes flow{to{stroke-dashoffset:-200}}
.port{position:absolute;z-index:15;display:flex;flex-direction:column;align-items:center;gap:5px}
.port-icon{width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 15px rgba(0,0,0,.15)}
.port-label{font-size:11px;font-weight:900;color:#0d3b66;padding:3px 10px;border-radius:8px;background:rgba(255,255,255,.9)}
.p-charak{right:12%;top:75px}.p-kish{left:16%;bottom:58px}
.ships-container{position:absolute;inset:0;z-index:25;pointer-events:none}
.ship-3d{position:absolute;width:60px;height:60px;display:none;align-items:center;justify-content:center;transition:left 1s linear,top 1s linear}
.ship-body{font-size:34px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.4))}
.ship-3d.flip .ship-body{transform:scaleX(-1)}
.ship-info{position:absolute;top:-58px;left:50%;transform:translateX(-50%);background:rgba(255,255,255,.95);border:1px solid #1877f2;padding:7px 12px;border-radius:12px;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.2);text-align:center}
.ship-info::after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1877f2}
.ship-name{display:block;color:#1877f2;font-size:10px;font-weight:900}
.ship-eta{display:block;color:#1a2b45;font-size:12px;font-weight:900}
.no-ship{position:absolute;inset:0;display:none;align-items:center;justify-content:center;z-index:20;background:rgba(127,199,240,.85);color:#0d3b66;font-weight:800;font-size:15px;text-align:center;padding:20px}
.map-footer{position:absolute;bottom:0;left:0;right:0;padding:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:linear-gradient(0deg,rgba(255,255,255,.95),transparent);z-index:20}
.map-stat{text-align:center}
.map-stat-label{font-size:10px;color:var(--muted);font-weight:800}
.map-stat-value{font-size:14px;font-weight:900;color:#0d6efd;margin-top:2px}

/* جداول */
.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:40px}
.sch-head{display:flex;align-items:center;margin-bottom:16px}
.sch-head h4{font-size:17px;font-weight:900;margin:0}
.sch-table{width:100%;border-collapse:collapse;font-size:13px}
.sch-table th{text-align:right;padding:10px 8px;color:var(--muted);font-size:11px;font-weight:800;border-bottom:1px solid #eef3f8}
.sch-table td{padding:12px 8px;border-bottom:1px solid #f1f5f9;font-weight:700}
.sch-table tr:last-child td{border-bottom:0}
.time-col{color:#0d6efd;font-weight:900;font-size:14px}
.badge{display:inline-flex;padding:4px 11px;border-radius:20px;font-size:10px;font-weight:900}
.b-scheduled{background:rgba(24,119,242,.12);color:#1877f2}
.b-boarding{background:rgba(139,92,246,.13);color:#8b5cf6}
.b-departed{background:rgba(16,185,129,.15);color:#059669}

/* بنر راهنما */
.guide-banner{background:linear-gradient(135deg,#1877f2,#00b8d4);border-radius:28px;padding:45px;text-align:center;color:#fff;position:relative;overflow:hidden;margin-bottom:40px}
.guide-banner::after{content:'🏝️';position:absolute;left:-20px;bottom:-30px;font-size:150px;opacity:.15}
.guide-banner h3{font-size:28px;font-weight:900;margin-bottom:10px;color:#fff}
.guide-banner p{font-size:15px;opacity:.9;margin-bottom:24px}
.guide-btn{background:#fff;color:#1877f2;padding:14px 32px;border-radius:16px;font-weight:900;font-size:15px;display:inline-block}

/* اخبار کامل */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:40px}
.content-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:var(--t)}
.content-card:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(24,119,242,.18)}
.content-img{height:170px;position:relative;background:linear-gradient(135deg,#7fc7f0,#4da8e0)}
.content-tag{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.95);color:#1877f2;padding:4px 12px;border-radius:20px;font-size:10px;font-weight:900}
.content-body{padding:20px}
.content-body h4{font-size:15px;font-weight:900;margin-bottom:8px;line-height:1.6}
.content-body p{font-size:12.5px;color:var(--muted);line-height:1.8;margin-bottom:14px}
.content-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:800}

/* تبلیغات */
.charak-ad-box{position:relative;margin:30px 0;border:1px dashed #cce;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,rgba(24,119,242,.05),rgba(0,184,212,.03));min-height:90px;display:flex;align-items:center;justify-content:center}
.charak-ad-box .ad-tag{position:absolute;top:8px;left:10px;font-size:9px;color:var(--muted);padding:2px 8px;border-radius:6px;border:1px solid #cce}

/* مودال */
.modal{position:fixed;inset:0;z-index:5000;background:rgba(13,43,82,.95);backdrop-filter:blur(15px);display:none;align-items:center;justify-content:center;padding:20px}
.modal-close{position:absolute;top:30px;left:30px;width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;font-size:24px;cursor:pointer;z-index:10}
.modal-img{max-width:92vw;max-height:90vh;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.5)}

/* فوتر */
.footer{background:linear-gradient(135deg,#0d2b52,#123a6b);color:#fff;margin-top:40px}
.footer-top{max-width:1360px;margin:auto;padding:50px 24px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
.footer-col h4{font-size:15px;font-weight:900;margin-bottom:18px;color:#fff}
.footer-col p,.footer-col a{color:rgba(255,255,255,.7);font-size:13px;line-height:2;display:block}
.footer-col a:hover{color:#00b8d4}
.footer-bottom{max-width:1360px;margin:auto;padding:18px 24px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;color:rgba(255,255,255,.6);font-size:12px}

/* Single & Comments */
.single-content{max-width:800px;margin:120px auto 40px;padding:0 24px}
.single-content h1{font-size:34px;font-weight:900;margin-bottom:20px}
.single-content .entry{background:#fff;border-radius:24px;padding:30px;line-height:2;color:#334155;box-shadow:var(--shadow)}
.comments-area{margin-top:30px;background:#fff;border-radius:24px;padding:30px;box-shadow:var(--shadow)}
.comment-form input,.comment-form textarea{width:100%;padding:12px;margin-bottom:12px;border-radius:12px;background:#f0f6ff;border:1px solid #dce8f2;color:#1a2b45;font-family:inherit}
.comment-form .submit{background:linear-gradient(135deg,#1877f2,#0d6efd);color:#fff;padding:12px 30px;border-radius:12px;font-weight:900;cursor:pointer;width:auto}

/* Responsive */
@media(max-width:1100px){
  .hero-inner{grid-template-columns:1fr;gap:40px}
  .book-glass{max-width:400px;margin:auto}
  .hero-text-side{text-align:center}.hero-cta{justify-content:center}
  .top-cards{grid-template-columns:1fr 1fr}
  .maps-grid,.schedule-grid,.news-grid{grid-template-columns:1fr}
  .menu{display:none}
  .statbar{grid-template-columns:repeat(3,1fr)}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .hero-text-side h1{font-size:36px}
  .top-cards{grid-template-columns:1fr}
  .statbar{grid-template-columns:repeat(2,1fr)}
  .nav-btn{display:none}
  .footer-top{grid-template-columns:1fr}
}