 /* ---------- CSS Variables ---------- */
 :root{
    --brand:#00468f;
    --accent:#f2c01b;
    --header-bg:#000000;
    --text:#1a1a1a;
    --muted:#6b7280;
    --border:#e6e6e6;
    --bg:#ffffff;
    --surface:#f7f9fc;
    --footer-bg:#0f172a;
    --footer-text:#cbd5e1;
    --radius:12px;
    --shadow:0 6px 18px rgba(0,0,0,.06);
  }

  /* ---------- Base ---------- */
  html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;}
  img{max-width:100%;height:auto;display:block}
  a{color:var(--brand);text-decoration:none}
  a:hover{text-decoration:underline}
  .wrap{max-width:1200px;margin:0 auto;padding:0 16px}
  .row::after,.f-row::after,.wrap::after{content:"";display:block;clear:both}
  .one-half{width:50%;float:left;box-sizing:border-box;padding:12px}
  .one-third{width:33.333%;float:left;box-sizing:border-box;padding:8px}
  @media (max-width: 900px){.one-half,.one-third{width:100%;float:none;padding:8px 0}}

  /* ---------- Buttons / Inputs ---------- */
  .btn{display:inline-block;padding:12px 14px;border-radius:8px;border:0;cursor:pointer;font-weight:600;box-shadow:var(--shadow)}
  .btn-dark{background:#111;color:#fff}
  .form-control{font-size:16px;padding:12px;border:1px solid #b58f12;border-radius:8px;width:100%;box-sizing:border-box;background:#fff}
  label{font-weight:700;font-size:14px;margin-bottom:6px;display:block}
  #submit-btn {display:block;width:100%;}
  @media (max-width: 900px){
    #submit-btn {width:100%;display:block;}
  }

  

  /* ---------- Hero (no picture) ---------- */
  #mainFrameOne{
    min-height:10rem;
    color:#fff;
    text-align:left;
    border-bottom:4px solid var(--brand);
    padding:24px 0 18px;
    background:linear-gradient(135deg,#0b172a,#163764);
  }
  #mainFrameOne h1{margin:10px 0 8px;font-size:28px;line-height:1.2}
  #mainFrameOne p.sub{margin:0;font-size:16px;opacity:.95;max-width:640px}
  @media (max-width:900px){#mainFrameOne h1{font-size:24px}}

  /* ---------- Map: visible by default ---------- */
  #map{
    width:100%;
    height:22rem;
    border-bottom:4px solid var(--brand);
    display:block;
  }

  /* ---------- Booking ---------- */
  #booking{background:var(--accent);border-bottom:4px solid var(--brand);padding:24px 0}

  /* ---------- Sections / Services ---------- */
  section{padding:32px 0}
  .service{display:flex;gap:14px;margin:16px 0}
  .service-title{font-weight:800;margin-bottom:4px}
  .service img{width:56px;height:56px;object-fit:contain}

  /* ---------- Destination Cards ---------- */
  .destinations{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:16px}
  .destination-card{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow)}
  .destination-card img{width:100%;height:160px;object-fit:cover}
  .destination-card .info{padding:12px;display:flex;justify-content:space-between;align-items:center;gap:8px}
  .destination-card .price{font-weight:800;font-size:18px}

  /* ---------- FAQ ---------- */
  details{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin:10px 0;background:#fff}
  summary{cursor:pointer;font-weight:700}

  

  .hide{display:none}

  /* iOS form polish */
  html {-webkit-text-size-adjust:100%;}
  input,select,textarea,button{
    -webkit-appearance:none;
    appearance:none;
    font-size:16px;
  }
  .form-control,
  input.form-control,
  select.form-control,
  textarea.form-control{
    height:48px;
    line-height:24px;
    padding:12px 14px;
    border-radius:10px;
    background-clip:padding-box;
    transition:border-color .2s ease,box-shadow .2s ease;
  }
  .form-control:focus{
    outline:none;
    border-color:#0a58ca;
    box-shadow:0 0 0 3px rgba(0,88,202,.18);
  }
  .form-control::placeholder{color:#7a7a7a;opacity:1;}
  input[type="search"]::-webkit-search-cancel-button{
    -webkit-appearance:none;
    height:16px;width:16px;margin-right:4px;background:none;
  }
  input[type="date"].form-control{position:relative;height:48px;}
  select.form-control{
    padding-right:44px;
    background-image:
      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23111111' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 14px center;
    background-size:14px 14px;
  }
  input.form-control,select.form-control{box-shadow:none;}
  a,button,.form-control,select{-webkit-tap-highlight-color:rgba(0,0,0,.08);}
  input.form-control:-webkit-autofill,
  select.form-control:-webkit-autofill{
    -webkit-box-shadow:0 0 0 999px #fff inset !important;
    box-shadow:0 0 0 999px #fff inset !important;
    -webkit-text-fill-color:#1a1a1a !important;
    caret-color:#1a1a1a;
  }
  @media (hover:none) and (pointer:coarse){
    .form-control:focus{
      box-shadow:0 0 0 4px rgba(242,192,27,.3);
    }
  }
  #booking .card{backdrop-filter:saturate(140%) blur(2px);}

  /* Booking grid */
  .f-row{display:grid;gap:12px;}
  .f-row .form-group{float:none;width:auto;padding:0;}
  @media (min-width:900px){
    .f-row{
      grid-template-columns:repeat(4,1fr);
      grid-template-areas:
        "from from to to"
        "date time passengers submit";
    }
    .fg-from{grid-area:from;}
    .fg-to{grid-area:to;}
    .fg-date{grid-area:date;}
    .fg-time{grid-area:time;}
    .fg-passengers{grid-area:passengers;}
    .fg-submit{grid-area:submit;align-self:end;}
  }
  @media (max-width:899px){
    .f-row{
      grid-template-columns:1fr 1fr;
      grid-template-areas:
        "from from"
        "to to"
        "date time"
        "passengers passengers"
        "submit submit";
    }
    .fg-from{grid-area:from;}
    .fg-to{grid-area:to;}
    .fg-date{grid-area:date;}
    .fg-time{grid-area:time;}
    .fg-passengers{grid-area:passengers;}
    .fg-submit{grid-area:submit;}
  }
  #submit-btn{width:100%;height:48px;display:block;}

  /* Autocomplete styles */
  .pac-container{
    border:1px solid #e5e7eb !important;
    border-radius:16px !important;
    overflow:hidden !important;
    box-shadow:0 10px 30px rgba(2,8,23,0.08) !important;
    margin-top:8px !important;
    font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;
  }
  .pac-item{
    position:relative !important;
    display:flex !important;
    align-items:flex-start !important;
    gap:12px !important;
    padding:14px 16px 14px 48px !important;
    border-top:1px solid #f1f5f9 !important;
    white-space:normal !important;
    line-height:1.25 !important;
    cursor:pointer !important;
  }
  .pac-item:first-child{border-top:0 !important;}
  .pac-item:hover,
  .pac-item.pac-item-selected{background:#f8fafc !important;}
  .pac-icon{display:none !important;}
  .pac-item.has-otp .otp-icon{
    position:absolute !important;
    left:16px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:22px !important;
    height:22px !important;
    color:#64748b !important;
  }
  .pac-item.has-otp .otp-icon::before{
    content:"";
    display:block;
    width:22px;
    height:22px;
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9L2 14v2l8-2.5V20l-2 1.5V23l3.5-1 3.5 1v-1.5L13 20v-6.5z'/></svg>") no-repeat center / contain;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9L2 14v2l8-2.5V20l-2 1.5V23l3.5-1 3.5 1v-1.5L13 20v-6.5z'/></svg>") no-repeat center / contain;
    background:currentColor;
  }
  .pac-item .pac-item-query{
    font-size:18px !important;
    font-weight:700 !important;
    color:#0f172a !important;
    margin-bottom:4px !important;
  }
  .pac-item .pac-matched{font-weight:700 !important;}
  .pac-item .pac-item-query + span{
    font-size:15px !important;
    color:#475569 !important;
  }