:root{
  --red:#E2231A; --orange:#F2622E; --blue:#2F86C8; --teal:#3C9FB8;
  --night:#1C2B36; --slate:#6B7686; --slate-dark:#4A5560;
  --mist:#F4F6F7; --mist-blue:#F0F7FA; --border:#EBEDEF; --white:#FFFFFF;
  --wa:#25D366; --ta-green:#00AF87; --fb-blue:#1877F2;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Dosis',sans-serif;color:var(--night);background:var(--white);-webkit-font-smoothing:antialiased;}
a{color:var(--blue);text-decoration:none;}
::selection{background:var(--orange);color:#fff;}
img{display:block;max-width:100%;}
button{font-family:inherit;}
.wrap{max-width:1240px;margin:0 auto;padding-left:40px;padding-right:40px;}
.eyebrow{color:var(--orange);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:10px;}
.section-title{font-family:'Dosis',sans-serif;font-weight:700;font-size:clamp(22px,3vw,28px);text-transform:uppercase;color:var(--night);}
.section-head{text-align:center;margin-bottom:36px;}
.section-sub{font-size:13.5px;color:var(--slate);max-width:480px;margin:10px auto 0;line-height:1.6;}

.ph{position:relative;overflow:hidden;background:linear-gradient(135deg,#0C4C6B 0%,#1C5A78 35%,#2F86C8 70%,#3C9FB8 100%);display:flex;align-items:center;justify-content:center;color:#fff;}
.ph::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 12px,transparent 12px 24px);}
.ph svg{width:24px;height:24px;opacity:.85;position:relative;z-index:1;}

.wa-ic{width:15px;height:15px;flex-shrink:0;}
.btn-wa{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#FDEDEC;font-weight:700;font-size:13px;padding:11px 20px;border-radius:999px;border:none;cursor:pointer;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;}
.btn-wa:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 20px rgba(226,35,26,.32);color:#FDEDEC;}
.btn-teal{display:inline-flex;align-items:center;gap:8px;background:var(--teal);color:#fff;font-weight:700;font-size:13px;padding:11px 22px;border-radius:999px;border:none;cursor:pointer;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;}
.btn-teal:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 20px rgba(60,159,184,.32);color:#fff;}
.btn-teal svg{width:15px;height:15px;flex-shrink:0;}
.btn-outline-teal{display:inline-flex;align-items:center;gap:8px;background:none;color:var(--teal);font-weight:700;font-size:13px;padding:10px 21px;border-radius:999px;border:1.5px solid var(--teal);cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease;}
.btn-outline-teal:hover{background:var(--teal);color:#fff;}
.btn-outline-teal svg{width:15px;height:15px;flex-shrink:0;}

/* NAV */
nav{position:sticky;top:0;z-index:80;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.nav-brand{display:flex;align-items:center;gap:10px;}
.nav-logo{width:38px;height:38px;border-radius:50%;background:var(--red);flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.nav-logo img{width:100%;height:100%;object-fit:cover;}
.nav-brand span{font-weight:700;font-size:18px;color:var(--night);}
.nav-links{display:flex;align-items:center;gap:24px;}
.nav-links a.navlink{color:var(--slate-dark);font-size:15px;font-weight:500;}
.nav-links a.navlink.active{color:var(--orange);font-weight:700;}
.nav-links a.navlink:hover{color:var(--red);}
.nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none;}
.nav-burger span{width:24px;height:2px;background:var(--night);display:block;}

/* BANNER */
.banner{position:relative;height:calc(100vh - 66px);min-height:460px;display:flex;align-items:flex-end;overflow:hidden;}
.banner-ph{position:absolute;inset:0;}
.banner-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,30,.25) 0%,rgba(6,20,30,.45) 55%,rgba(6,16,24,.85) 100%);}
.banner-inner{position:relative;z-index:2;padding:0 40px 56px;max-width:1240px;margin:0 auto;width:100%;}
.breadcrumb{font-size:13px;color:#B9CBD6;margin-bottom:14px;display:flex;align-items:center;gap:6px;}
.breadcrumb a{color:#B9CBD6;}
.breadcrumb a:hover{color:#fff;}
.banner h1{font-family:'Dosis',sans-serif;font-weight:700;font-size:clamp(34px,5.4vw,54px);text-transform:uppercase;color:#fff;line-height:1.03;margin:0 0 14px;text-shadow:0 6px 24px rgba(0,0,0,.4);}
.banner p{font-size:16px;color:#E7F0F6;max-width:560px;line-height:1.6;font-weight:300;text-shadow:0 2px 8px rgba(0,0,0,.3);}
.social-icons-row{display:flex;gap:14px;margin-top:24px;}
.social-icons-row a{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .2s ease,transform .2s ease;backdrop-filter:blur(4px);}
.social-icons-row a:hover{background:var(--teal);transform:translateY(-3px);}
.social-icons-row svg{width:19px;height:19px;}

/* TRIPADVISOR TRUST */
.trust-section{padding:64px 0;background:var(--mist);}
.testi-dots{display:flex;justify-content:center;gap:8px;margin-top:28px;}
.testi-dot{width:8px;height:8px;border-radius:50%;background:var(--border);}
.testi-dot.active{background:var(--orange);width:22px;border-radius:4px;}

.ta-widget{max-width:820px;margin:0 auto 40px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(28,43,54,.08);border-top:4px solid var(--ta-green);}
.ta-widget-top{display:flex;align-items:center;gap:24px;padding:28px 32px;flex-wrap:wrap;}
.ta-logo-badge{width:56px;height:56px;border-radius:50%;background:var(--ta-green);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;}
.ta-logo-badge svg{width:28px;height:16px;}
.ta-widget-info{flex:1;min-width:180px;}
.ta-widget-label{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ta-green);margin-bottom:4px;}
.ta-widget-rating-row{display:flex;align-items:baseline;gap:10px;}
.ta-num{font-family:'Dosis',sans-serif;font-weight:700;font-size:32px;color:var(--night);line-height:1;}
.ta-stars{color:var(--ta-green);display:flex;gap:2px;}
.ta-stars svg{width:15px;height:15px;}
.ta-widget-sub{font-size:12.5px;color:var(--slate);margin-top:4px;}
.btn-ta{display:inline-flex;align-items:center;gap:8px;background:var(--ta-green);color:#fff;font-weight:700;font-size:13px;padding:11px 20px;border-radius:999px;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;}
.btn-ta:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 20px rgba(0,175,135,.32);color:#fff;}
.btn-ta svg{width:15px;height:15px;flex-shrink:0;}
.ta-widget-foot{display:flex;align-items:center;gap:8px;padding:12px 32px;background:var(--mist);font-size:11.5px;color:var(--slate);}

.testi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;max-width:1000px;margin:0 auto;}
.testi-card{background:#fff;border-radius:14px;padding:24px;}
.testi-stars{color:var(--ta-green);display:flex;gap:2px;margin-bottom:12px;}
.testi-stars svg{width:13px;height:13px;}
.testi-text{font-size:13.5px;color:var(--slate-dark);line-height:1.65;margin-bottom:16px;}
.testi-author{font-size:13px;font-weight:700;color:var(--night);}
.testi-context{font-size:11.5px;color:var(--slate);}

/* INSTAGRAM */
.instagram-section{padding:64px 0;}
.ig-layout{display:grid;grid-template-columns:300px 1fr;gap:56px;align-items:center;}
.ig-info h2{display:flex;align-items:center;gap:10px;margin-top:8px;}
.ig-info h2 svg{width:22px;height:22px;color:var(--red);flex-shrink:0;}
.ig-info p{font-size:14px;color:var(--slate);line-height:1.65;margin:16px 0 26px;max-width:300px;}
.btn-ig{display:inline-flex;align-items:center;gap:9px;background:linear-gradient(135deg,#F2622E,#E2231A 45%,#8B2FC9 100%);color:#fff;font-weight:700;font-size:13.5px;padding:13px 26px;border-radius:999px;border:none;cursor:pointer;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;}
.btn-ig:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 22px rgba(139,47,201,.32);color:#fff;}
.btn-ig svg{width:16px;height:16px;flex-shrink:0;}
.ig-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:10px;}
.ig-photo-tile{position:relative;aspect-ratio:1;border-radius:16px;overflow:hidden;display:block;}
.ig-photo-tile .ph{position:absolute;inset:0;}
.ig-cta-tile{border-radius:16px;background:linear-gradient(135deg,#F2622E,#E2231A 45%,#8B2FC9 100%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:14px;font-family:'Dosis',sans-serif;font-weight:700;font-size:13.5px;line-height:1.4;}
.ig-cta-tile svg{width:26px;height:26px;}
@media(max-width:760px){.ig-layout{grid-template-columns:1fr;}}

/* FACEBOOK */
.facebook-section{padding:64px 0;}
.fb-widget{max-width:640px;margin:0 auto;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(28,43,54,.08);}
.fb-widget-head{display:flex;align-items:center;gap:14px;padding:24px 28px;flex-wrap:wrap;}
.fb-avatar-sm{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;}
.fb-widget-head-info{flex:1;min-width:150px;}
.fb-name{font-family:'Dosis',sans-serif;font-weight:700;font-size:16px;color:var(--night);}
.fb-category{font-size:12px;color:var(--slate);margin-top:2px;}
.btn-fb{display:inline-flex;align-items:center;gap:8px;background:var(--fb-blue);color:#fff;font-weight:700;font-size:13px;padding:10px 18px;border-radius:8px;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;}
.btn-fb:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(24,119,242,.32);color:#fff;}
.btn-fb svg{width:15px;height:15px;flex-shrink:0;}
.fb-card-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;}
.fb-card-photos .ph{position:relative;aspect-ratio:4/3;}
.fb-stats-row{display:flex;align-items:center;gap:28px;padding:18px 28px;font-size:13px;color:var(--slate-dark);flex-wrap:wrap;}
.fb-stat-item{display:flex;align-items:center;gap:8px;}
.fb-like-icons{display:flex;align-items:center;}
.fb-like-icons span{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;border:2px solid #fff;margin-left:-6px;}
.fb-like-icons span:first-child{margin-left:0;background:var(--fb-blue);z-index:2;}
.fb-like-icons span:last-child{background:var(--red);z-index:1;}
.fb-like-icons svg{width:10px;height:10px;}

/* FOOTER */
footer{padding:60px 40px 0;background:var(--night);}
.foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.08);}
.foot-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.foot-brand span{font-weight:700;font-size:15px;color:#fff;}
footer p, footer a{font-size:13px;color:#9FB4C4;line-height:1.7;}
footer h4{font-size:13px;font-weight:700;color:#fff;margin-bottom:14px;}
footer a{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
footer a svg{width:14px;height:14px;flex-shrink:0;}
.foot-loc svg{width:14px;height:14px;flex-shrink:0;}
.foot-certs{display:flex;gap:12px;margin-bottom:14px;}
.foot-cert-box{background:#fff;border-radius:10px;padding:12px 16px;font-weight:800;font-size:13px;color:var(--night);}
.foot-social{display:flex;gap:16px;}
.foot-social a{margin:0;}
.foot-social svg{width:20px;height:20px;}
.foot-bottom{max-width:1180px;margin:0 auto;padding:22px 0;text-align:center;font-size:12px;color:#5E7182;}

.wa-float{position:fixed;right:20px;bottom:20px;z-index:70;background:var(--wa);color:#fff;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.3);}
.wa-float svg{width:28px;height:28px;}

@media(max-width:860px){
  .nav-links{display:none;}
  .nav-burger{display:flex;}
}
@media(max-width:760px){
  .ta-widget-top{flex-direction:column;align-items:flex-start;text-align:left;}
  .ig-head{flex-direction:column;align-items:flex-start;}
  .ig-grid{grid-template-columns:repeat(3,1fr);}
  .fb-profile-row{flex-direction:column;align-items:flex-start;margin-top:-20px;}
  .fb-stats-row{justify-content:center;}
}
@media(max-width:600px){
  .wrap{padding-left:20px;padding-right:20px;}
  .ta-widget-top{padding:24px 20px;}
  .ta-widget-foot{padding:12px 20px;}
  .fb-widget-body{padding:0 20px 24px;}
}
