/* WEB PANEL PROXY public CSS */
:root{
    --deep:#0b2a3d;
    --water:#136b8e;
    --water-light:#2a9dc4;
    --sand:#e8d5a8;
    --cream:#f7f3e8;
    --green:#2f5d3a;
    --text:#1d2b33;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{
    font-family:'Georgia', 'Times New Roman', serif;
    color:var(--text);
    background:var(--cream);
    line-height:1.7;
  }
  img{max-width:100%;display:block}
  a{color:var(--water);text-decoration:none}
  a:hover{text-decoration:underline}

  /* HEADER */
  header{
    position:sticky;top:0;z-index:100;
    background:rgba(11,42,61,.95);
    backdrop-filter:blur(6px);
    border-bottom:3px solid var(--sand);
  }
  .nav-wrap{
    max-width:1200px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;
    padding:14px 22px;
    flex-wrap:wrap;gap:12px;
  }
  .logo{
    font-size:1.35rem;font-weight:bold;color:var(--sand);
    letter-spacing:1px;display:flex;align-items:center;gap:8px;
  }
  .logo span{color:#fff}
  nav ul{list-style:none;display:flex;gap:22px;flex-wrap:wrap}
  nav a{color:#cfe6ef;font-size:.95rem;font-family:Arial,sans-serif}
  nav a:hover{color:var(--sand);text-decoration:none}

  /* HERO */
  .hero{
    position:relative;
    min-height:70vh;
    display:flex;align-items:center;justify-content:center;
    text-align:center;
    padding:80px 20px;
    background:
      radial-gradient(circle at 70% 20%, rgba(42,157,196,.45), transparent 55%),
      radial-gradient(circle at 20% 80%, rgba(47,93,58,.5), transparent 55%),
      linear-gradient(160deg,#0b2a3d 0%, #136b8e 60%, #2a9dc4 100%);
    color:#fff;
    overflow:hidden;
  }
  .hero::after{
    content:"";
    position:absolute;bottom:0;left:0;right:0;height:80px;
    background:linear-gradient(to top, var(--cream), transparent);
  }
  .hero-inner{max-width:800px;position:relative;z-index:2}
  .hero h1{
    font-size:clamp(2rem,5vw,3.6rem);
    line-height:1.15;
    margin-bottom:20px;
    text-shadow:0 4px 22px rgba(0,0,0,.4);
  }
  .hero h1 em{color:var(--sand);font-style:normal}
  .hero p{
    font-family:Arial,sans-serif;
    font-size:clamp(1rem,2vw,1.2rem);
    color:#d8ecf4;
    max-width:620px;margin:0 auto 32px;
  }
  .btn{
    display:inline-block;
    background:var(--sand);
    color:#0b2a3d;
    font-family:Arial,sans-serif;
    font-weight:bold;
    padding:14px 34px;
    border-radius:40px;
    letter-spacing:.5px;
    transition:.25s;
    border:2px solid var(--sand);
  }
  .btn:hover{
    background:transparent;color:var(--sand);text-decoration:none;
    transform:translateY(-2px);
  }
  .btn.ghost{
    background:transparent;color:#fff;border-color:#fff;margin-left:10px;
  }
  .btn.ghost:hover{background:#fff;color:var(--deep)}

  /* SECTIONS */
  section{padding:80px 20px}
  .container{max-width:1150px;margin:0 auto}
  .section-title{
    font-size:clamp(1.6rem,3.5vw,2.3rem);
    color:var(--deep);
    margin-bottom:12px;
    text-align:center;
  }
  .section-sub{
    text-align:center;
    font-family:Arial,sans-serif;
    color:#5c6f79;
    max-width:640px;margin:0 auto 50px;
  }
  .divider{
    width:70px;height:3px;background:var(--water-light);
    margin:14px auto 22px;border-radius:3px;
  }

  /* ABOUT */
  .about{background:var(--cream)}
  .about-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:34px;margin-top:20px;
  }
  .about-card{
    background:#fff;
    padding:32px 28px;
    border-radius:14px;
    border-top:4px solid var(--water-light);
    box-shadow:0 10px 30px rgba(11,42,61,.07);
    transition:.25s;
  }
  .about-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(11,42,61,.13)}
  .about-card .icon{font-size:2.2rem;margin-bottom:12px}
  .about-card h3{color:var(--deep);margin-bottom:10px;font-size:1.15rem}
  .about-card p{font-family:Arial,sans-serif;font-size:.94rem;color:#4a5a63}

  /* FISH */
  .fish{background:linear-gradient(180deg,#eaf4f7,#f7f3e8)}
  .fish-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:24px;
  }
  .fish-card{
    background:#fff;border-radius:14px;overflow:hidden;
    box-shadow:0 6px 22px rgba(11,42,61,.08);
    display:flex;flex-direction:column;
    transition:.25s;
  }
  .fish-card:hover{transform:translateY(-5px)}
  .fish-head{
    height:110px;
    display:flex;align-items:center;justify-content:center;
    font-size:2.6rem;
    background:linear-gradient(135deg,#136b8e,#2a9dc4);
  }
  .fish-card:nth-child(2n) .fish-head{background:linear-gradient(135deg,#2f5d3a,#5a9e6c)}
  .fish-card:nth-child(3n) .fish-head{background:linear-gradient(135deg,#7a5c2e,#c2a05a)}
  .fish-body{padding:20px 22px 24px;flex:1;display:flex;flex-direction:column}
  .fish-body h3{color:var(--deep);font-size:1.1rem;margin-bottom:8px}
  .fish-body p{font-family:Arial,sans-serif;font-size:.9rem;color:#4a5a63;flex:1}
  .tag{
    display:inline-block;margin-top:14px;
    font-family:Arial,sans-serif;font-size:.75rem;
    background:#eaf4f7;color:var(--water);
    padding:4px 12px;border-radius:20px;letter-spacing:.5px;
    align-self:flex-start;
  }

  /* SEASONS */
  .seasons{background:var(--deep);color:#fff}
  .seasons .section-title{color:#fff}
  .seasons .section-sub{color:#a9c6d3}
  .season-list{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:24px;
  }
  .season{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    padding:26px 24px;
    transition:.25s;
  }
  .season:hover{background:rgba(255,255,255,.11)}
  .season h3{
    color:var(--sand);margin-bottom:10px;font-size:1.2rem;
    display:flex;align-items:center;gap:10px;
  }
  .season p{font-family:Arial,sans-serif;font-size:.9rem;color:#cfe0e8}

  /* TIPS */
  .tips{background:var(--cream)}
  .tips-list{max-width:820px;margin:0 auto;counter-reset:tip}
  .tip{
    display:flex;gap:20px;
    padding:22px 0;
    border-bottom:1px dashed #c8d5da;
  }
  .tip:last-child{border-bottom:none}
  .tip-num{
    flex:0 0 46px;height:46px;border-radius:50%;
    background:var(--water);color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-family:Arial,sans-serif;font-weight:bold;
  }
  .tip h4{color:var(--deep);margin-bottom:4px;font-size:1.05rem}
  .tip p{font-family:Arial,sans-serif;font-size:.92rem;color:#4a5a63}

  /* PLACES */
  .places{background:linear-gradient(180deg,#f7f3e8,#e3efe9)}
  .places-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:24px;
  }
  .place{
    position:relative;
    border-radius:14px;
    padding:28px 26px;
    background:#fff;
    border-left:5px solid var(--green);
    box-shadow:0 6px 22px rgba(11,42,61,.07);
  }
  .place h3{color:var(--deep);margin-bottom:6px}
  .place .region{
    font-family:Arial,sans-serif;font-size:.78rem;
    color:var(--water);letter-spacing:1px;text-transform:uppercase;
    margin-bottom:10px;display:block;
  }
  .place p{font-family:Arial,sans-serif;font-size:.9rem;color:#4a5a63}

  /* RULES */
  .rules{background:#fff}
  .rules-box{
    max-width:820px;margin:0 auto;
    background:#f4f9fb;
    border:1px solid #d5e6ee;
    border-radius:14px;
    padding:34px 32px;
    font-family:Arial,sans-serif;
    font-size:.95rem;color:#3d4f58;
  }
  .rules-box ul{list-style:none}
  .rules-box li{
    padding:10px 0 10px 30px;position:relative;
    border-bottom:1px solid #e2eef3;
  }
  .rules-box li:last-child{border-bottom:none}
  .rules-box li::before{
    content:"⚓";position:absolute;left:0;top:9px;color:var(--water);
  }

  /* CTA */
  .cta{
    background:linear-gradient(135deg,var(--water),var(--deep));
    color:#fff;text-align:center;
  }
  .cta h2{font-size:clamp(1.5rem,3.5vw,2.2rem);margin-bottom:14px}
  .cta p{font-family:Arial,sans-serif;color:#cfe6ef;max-width:560px;margin:0 auto 28px}

  /* FOOTER */
  footer{
    background:var(--deep);color:#9fbccb;
    padding:50px 20px 30px;
    font-family:Arial,sans-serif;font-size:.88rem;
  }
  .foot-grid{
    max-width:1150px;margin:0 auto;
    display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:34px;
  }
  .foot-grid h4{color:var(--sand);margin-bottom:14px;font-size:.95rem;letter-spacing:1px}
  .foot-grid ul{list-style:none}
  .foot-grid li{margin-bottom:8px}
  .foot-grid a{color:#9fbccb}
  .foot-grid a:hover{color:#fff}
  .foot-bottom{
    max-width:1150px;margin:36px auto 0;
    padding-top:22px;border-top:1px solid rgba(255,255,255,.1);
    text-align:center;color:#6f8e9e;font-size:.82rem;
  }

  @media (max-width:640px){
    .nav-wrap{justify-content:center;text-align:center}
    nav ul{gap:14px;justify-content:center}
    section{padding:60px 18px}
    .btn.ghost{margin-left:0;margin-top:10px}
  }