
/* =========================================================
   OASIS TRUST — MODERN UI REFRESH
   Visual-only redesign. Existing content, URLs and images
   are intentionally preserved.
   ========================================================= */
:root{
  --oasis-primary:#0b7285;
  --oasis-primary-2:#1098ad;
  --oasis-accent:#f59f00;
  --oasis-ink:#102a43;
  --oasis-muted:#627d98;
  --oasis-surface:#ffffff;
  --oasis-soft:#f4f8fa;
  --oasis-line:#e3edf1;
  --oasis-shadow:0 18px 55px rgba(16,42,67,.10);
  --oasis-radius:22px;
}
html{scroll-behavior:smooth}
body{
  background:var(--oasis-soft)!important;
  color:var(--oasis-ink)!important;
  font-family:"Open Sans",sans-serif;
  line-height:1.7;
}
body:before{
  content:"";
  display:block;
  height:0;
}
a{transition:all .25s ease}
section{padding:78px 0}
.container{max-width:1180px}

/* Header */
.header{
  padding:0!important;
  background:rgba(255,255,255,.90)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 5px 28px rgba(16,42,67,.08)!important;
  border-bottom:1px solid rgba(16,42,67,.06);
}
.header>.container-fluid:first-child{
  min-height:82px;
  padding:10px max(22px,3vw)!important;
}
.header>.container-fluid:nth-child(2){
  background:linear-gradient(90deg,#0b7285,#1098ad)!important;
  padding:0 max(22px,3vw)!important;
}
.header .logo{
  gap:10px;
  padding:7px 0!important;
}
.header .logo img{
  max-height:58px!important;
  width:auto;
  border-radius:12px;
  object-fit:contain;
}
.header .logo span{
  color:var(--oasis-ink)!important;
  font-size:26px!important;
  letter-spacing:.2px!important;
  font-weight:800!important;
}
.header .logo div div{
  color:var(--oasis-muted);
  font-size:12px;
  letter-spacing:.8px;
  text-transform:uppercase;
  margin-top:2px!important;
}
.navbar{width:100%}
.navbar ul{width:100%;justify-content:flex-end;gap:3px}
.navbar a,.navbar a:focus{
  color:#fff!important;
  padding:14px 15px!important;
  font-size:14px!important;
  font-weight:700!important;
  border-radius:10px;
}
.navbar a:hover,.navbar .active,.navbar li:hover>a{
  color:#fff!important;
  background:rgba(255,255,255,.13);
}
.navbar .getstarted,.navbar .getstarted:focus{
  margin-left:7px!important;
  padding:10px 17px!important;
  background:#102a43!important;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 8px 20px rgba(0,0,0,.12);
}
.navbar .getstarted:hover{transform:translateY(-2px);background:#071b2d!important}
.mobile-nav-toggle{color:var(--oasis-ink)!important}
.navbar-mobile{background:rgba(16,42,67,.82)!important}
.navbar-mobile ul{top:70px!important;border-radius:18px!important;padding:15px!important}
.navbar-mobile a,.navbar-mobile a:focus{color:var(--oasis-ink)!important}
.navbar-mobile .getstarted{margin:8px 15px!important}

/* Give the fixed header room without changing page content */
.hero{margin-top:120px!important}

/* Hero */
.hero{
  height:calc(100vh - 120px)!important;
  min-height:560px;
  background:none!important;
  overflow:hidden;
  padding:18px!important;
}
.hero>div{
  height:100%;
}
.hero .heroslide{
  height:calc(100vh - 156px)!important;
  min-height:520px;
  margin:0!important;
  border-radius:30px!important;
  overflow:hidden;
  box-shadow:var(--oasis-shadow);
  position:relative;
}
.hero .heroslide:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(7,29,44,.72),rgba(11,114,133,.20) 60%,rgba(0,0,0,.30));
  pointer-events:none;
}
.hero .white-overlay{
  position:relative;
  z-index:2;
  width:min(900px,90%);
  padding:44px!important;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.10)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 20px 60px rgba(0,0,0,.18);
}
.hero h1{
  font-size:clamp(32px,5vw,62px)!important;
  line-height:1.08;
  text-align:center;
  text-shadow:0 4px 22px rgba(0,0,0,.35);
}
.hero h2{
  font-size:clamp(17px,2vw,24px)!important;
  line-height:1.55;
  text-align:center;
  max-width:780px;
  text-shadow:0 2px 12px rgba(0,0,0,.35);
}

/* Page headings */
.breadcrumbs{
  margin-top:120px!important;
  padding:32px 0!important;
  min-height:auto!important;
  background:linear-gradient(135deg,#083344,#0b7285)!important;
  position:relative;
  overflow:hidden;
}
.breadcrumbs:after{
  content:"";
  position:absolute;
  width:320px;height:320px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;
  right:-120px;top:-180px;
}
.breadcrumbs h2{
  position:relative;
  z-index:1;
  font-size:clamp(28px,4vw,42px)!important;
  font-weight:800!important;
  margin:4px 0 0!important;
}
.breadcrumbs ol{position:relative;z-index:1;margin:0!important}
.breadcrumbs ol li+li:before{color:#9adbe5}

/* Generic cards */
.card,.box,.lc-block,.content{
  border:1px solid var(--oasis-line)!important;
  box-shadow:0 12px 40px rgba(16,42,67,.07)!important;
  border-radius:var(--oasis-radius)!important;
  background:#fff;
}
.card{overflow:hidden}
.card-header{background:linear-gradient(135deg,#effbfc,#fff)!important;border-bottom:1px solid var(--oasis-line)!important;padding:24px!important}
.card-body{padding:26px!important}
.content{padding:34px!important}
.box{
  padding:30px!important;
  height:100%;
  transition:transform .3s ease,box-shadow .3s ease;
}
.box:hover{transform:translateY(-7px);box-shadow:0 20px 45px rgba(16,42,67,.12)!important}
.section-header{padding-bottom:34px!important}
.section-header h2{
  color:var(--oasis-primary)!important;
  font-size:13px!important;
  letter-spacing:2px!important;
}
.section-header p{
  color:var(--oasis-ink)!important;
  font-size:clamp(28px,4vw,42px)!important;
  line-height:1.2!important;
}

/* Home sections */
.about .content h3{
  color:var(--oasis-primary)!important;
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-size:13px;
}
.about .content h2{font-size:34px;font-weight:800;color:var(--oasis-ink)}
.about img{
  border-radius:24px;
  box-shadow:var(--oasis-shadow);
}
.btn-read-more{
  margin-top:15px;
  padding:12px 22px!important;
  border-radius:12px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--oasis-primary),var(--oasis-primary-2))!important;
  box-shadow:0 10px 25px rgba(11,114,133,.22);
}
.btn-read-more:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(11,114,133,.28)}
.values .box img{border-radius:16px;margin-bottom:18px}
.values .box h3,.values .box h4{color:var(--oasis-ink);font-weight:800}

/* Portfolio/gallery */
.portfolio-container{margin-top:10px}
.portfolio-wrap{
  border-radius:20px!important;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 35px rgba(16,42,67,.09)!important;
  border:1px solid var(--oasis-line);
}
.portfolio-wrap>img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  transition:transform .5s ease;
}
.portfolio-wrap:hover>img{transform:scale(1.06)}
.portfolio-info{padding:18px!important}
.portfolio-info h4{font-weight:800!important;color:var(--oasis-ink)!important}
.portfolio-info p{color:var(--oasis-muted)!important}
.portfolio-links a{
  width:38px;height:38px;
  border-radius:50%;
  display:inline-flex!important;
  align-items:center;justify-content:center;
  background:var(--oasis-primary);
  color:#fff!important;
}

/* Notices */
.notice-container{padding:4px}
.notice-wrapper{
  padding:24px 10px;
  border-radius:18px;
  transition:background .25s ease;
}
.notice-wrapper:hover{background:#f4fbfc}
.notice-wrapper img{border-radius:14px!important}
.notice-wrapper h3{font-size:20px!important;font-weight:800!important;color:var(--oasis-ink)!important}
.notice-wrapper p{color:#526b80}
.notice-wrapper .btn{border-radius:10px;padding:7px 14px}

/* Tables */
.table{--bs-table-bg:transparent;margin-top:15px}
.table th{color:var(--oasis-ink);font-weight:700}
.table td,.table th{padding:14px 12px!important;border-color:var(--oasis-line)!important}

/* Contact */
.contact-page-placeholder{}
section .lead{font-size:15px!important;color:var(--oasis-muted)}
section svg{color:var(--oasis-primary)}
iframe{border:0;border-radius:22px;box-shadow:var(--oasis-shadow)}

/* Footer */
.footer{
  margin-top:30px;
  background:#071b2d!important;
  color:#c7d6df!important;
}
.footer-top{background:transparent!important;padding:65px 0 45px!important}
.footer-info p{color:#a9bdc9!important}
.footer .logo img{
  max-height:70px;
  border-radius:14px;
  background:#fff;
  padding:5px;
}
.footer h4{
  color:#fff!important;
  font-size:16px!important;
  letter-spacing:.5px;
  margin-bottom:18px!important;
}
.footer-links ul{padding:0}
.footer-links ul li{margin-bottom:9px}
.footer-links a{color:#a9bdc9!important}
.footer-links a:hover{color:#6fd3df!important;padding-left:4px}
.social-links a{
  width:40px;height:40px;
  display:inline-flex!important;
  align-items:center;justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff!important;
  margin-right:6px;
}
.social-links a:hover{background:var(--oasis-primary);transform:translateY(-3px)}
.footer-contact strong{color:#fff}
.footer .copyright,.footer .credits{
  border-top:1px solid rgba(255,255,255,.08);
  color:#8fa6b4;
  padding:16px 0;
}
.footer .credits{border-top:0;padding-top:0}
.footer .credits a{color:#fff}

/* Scroll reveal fallback */
[data-aos]{will-change:transform,opacity}

/* Responsive */
@media(max-width:1200px){
  .header>.container-fluid:first-child{min-height:72px}
  .hero{margin-top:105px!important}
  .breadcrumbs{margin-top:105px!important}
  .navbar ul{gap:0}
}
@media(max-width:768px){
  section{padding:58px 0}
  .header .logo img{max-height:50px!important}
  .header .logo span{font-size:21px!important}
  .header .logo div div{font-size:10px}
  .hero{
    margin-top:104px!important;
    padding:10px!important;
    min-height:470px;
  }
  .hero .heroslide{
    min-height:450px;
    height:calc(100vh - 124px)!important;
    border-radius:22px!important;
  }
  .hero .white-overlay{padding:28px 18px!important}
  .hero h1{font-size:31px!important}
  .hero h2{font-size:16px!important}
  .breadcrumbs{margin-top:104px!important}
  .breadcrumbs h2{font-size:30px!important}
  .content{padding:24px!important}
  .card-body{padding:20px!important}
  .notice-wrapper{padding:18px 4px}
}
@media(max-width:480px){
  .header .logo span{font-size:18px!important}
  .header .logo img{max-height:44px!important}
  .hero{min-height:420px}
  .hero .heroslide{min-height:400px}
  .hero h1{font-size:27px!important}
  .hero h2{font-size:14px!important}
}

/* Make the slick carousel feel intentional */
.slick-dots{bottom:22px!important;z-index:5}
.slick-dots li button:before{color:#fff!important;font-size:9px!important}
.slick-prev,.slick-next{z-index:6;width:45px!important;height:45px!important}
.slick-prev{left:18px!important}.slick-next{right:18px!important}
.slick-prev:before,.slick-next:before{font-size:30px!important}
