:root {
  --navy: #092c4c;
  --navy-2: #0f466d;
  --teal: #00a8a8;
  --aqua: #56d6cf;
  --gold: #f2b84b;
  --cream: #f7f9f7;
  --white: #ffffff;
  --ink: #102330;
  --muted: #63727d;
  --line: #dfe8e9;
  --shadow: 0 20px 50px rgba(9,44,76,.10);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family:"DM Sans",sans-serif; color:var(--ink); background:#fff; line-height:1.65; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
.container { width:min(1180px, calc(100% - 40px)); margin:auto; }
.top-strip { background:var(--navy); color:#cfe8e9; font-size:12px; letter-spacing:.04em; }
.top-strip-inner { display:flex; justify-content:space-between; padding:8px 0; }
.site-header { background:#fff; position:relative; z-index:20; box-shadow:0 5px 25px rgba(9,44,76,.05); }
.header-main { min-height:105px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.brand { display:flex; align-items:center; gap:12px; }
.brand-mark { width:58px; height:58px; border-radius:50%; background:linear-gradient(135deg,var(--teal),var(--navy)); color:#fff; display:grid; place-items:center; position:relative; box-shadow:0 10px 25px rgba(0,168,168,.22); overflow:hidden; }
.brand-mark span:first-child { font-family:"Manrope"; font-size:28px; font-weight:800; position:relative; z-index:2; }
.brand-orbit { position:absolute; width:45px; height:16px; border:2px solid rgba(255,255,255,.8); border-radius:50%; transform:rotate(-28deg); }
.brand-text { display:flex; flex-direction:column; line-height:1.1; }
.brand-text strong { font-family:"Manrope"; font-size:19px; letter-spacing:.12em; color:var(--navy); }
.brand-text small { color:var(--teal); letter-spacing:.16em; font-size:8px; font-weight:700; margin-top:5px; }
.contact-block { text-align:right; }
.contact-row { display:flex; gap:18px; font-size:13px; font-weight:700; color:var(--navy); flex-wrap:wrap; justify-content:flex-end; }
.contact-row a:hover,.email-link:hover { color:var(--teal); }
.email-link { display:inline-block; margin-top:6px; font-size:12px; color:var(--muted); }
.navbar { border-top:1px solid #eef2f2; }
.nav-inner { min-height:57px; display:flex; justify-content:flex-end; align-items:center; }
.nav-links { display:flex; align-items:center; gap:3px; }
.nav-links a { padding:17px 15px; font-size:13px; font-weight:700; color:#41525e; position:relative; }
.nav-links a:not(.nav-cta):hover,.nav-links a.active:not(.nav-cta) { color:var(--teal); }
.nav-links a.active:not(.nav-cta)::after { content:""; position:absolute; height:2px; background:var(--teal); left:15px; right:15px; bottom:7px; }
.nav-cta { background:var(--teal); color:#fff !important; border-radius:6px; margin-left:9px; }
.nav-cta:hover { background:var(--navy); }
.menu-toggle { display:none; border:0; background:none; font-size:25px; color:var(--navy); }
.hero { background:linear-gradient(115deg,#eefafa 0%,#f8fbfa 54%,#e9f5f4 100%); min-height:570px; position:relative; overflow:hidden; }
.hero-pattern { position:absolute; inset:0; opacity:.45; background-image:radial-gradient(circle at 85% 20%,rgba(0,168,168,.12) 0 2px,transparent 3px); background-size:32px 32px; }
.hero-grid { min-height:570px; display:grid; grid-template-columns:1.04fr .96fr; gap:60px; align-items:center; position:relative; z-index:1; }
.eyebrow { color:var(--teal); font-weight:800; font-size:11px; letter-spacing:.18em; margin-bottom:14px; }
.eyebrow.light { color:#8ee9e3; }
h1,h2,h3,h4 { font-family:"Manrope",sans-serif; line-height:1.15; margin-top:0; color:var(--navy); }
h1 { font-size:clamp(44px,5vw,70px); letter-spacing:-.045em; margin-bottom:22px; }
h1 em { color:var(--teal); font-style:normal; }
h2 { font-size:clamp(30px,3.3vw,46px); letter-spacing:-.035em; }
h3 { font-size:20px; }
p { color:var(--muted); }
.hero-copy > p { font-size:17px; max-width:620px; }
.hero-actions { display:flex; gap:12px; margin:30px 0; flex-wrap:wrap; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 20px; border-radius:6px; font-size:13px; font-weight:800; border:1px solid transparent; transition:.2s ease; }
.button.primary { background:var(--teal); color:#fff; box-shadow:0 10px 25px rgba(0,168,168,.2); }
.button.primary:hover { transform:translateY(-2px); background:var(--navy); }
.button.ghost { border-color:#bddbd9; color:var(--navy); background:#fff8; }
.button.ghost:hover { border-color:var(--teal); color:var(--teal); }
.button.dark { background:var(--navy); color:#fff; margin-top:18px; }
.hero-trust { display:flex; gap:14px; flex-wrap:wrap; font-size:11px; font-weight:700; color:#52707a; }
.hero-visual { position:relative; min-height:440px; display:grid; place-items:center; }
.main-visual { width:min(470px,100%); aspect-ratio:1/1; border-radius:35% 20% 35% 20%; background:linear-gradient(145deg,var(--navy),#0d6074); box-shadow:var(--shadow); position:relative; overflow:hidden; transform:rotate(2deg); }
.visual-glow { position:absolute; width:300px;height:300px;border-radius:50%; background:rgba(86,214,207,.22); filter:blur(4px); top:40px;right:30px; }
.visual-label { position:absolute; top:34px;left:38px;color:#9be9e5;font-size:10px;font-weight:800;letter-spacing:.15em; }
.globe { position:absolute; inset:0; display:grid; place-items:center; font-size:210px; color:rgba(255,255,255,.13); }
.destination { position:absolute; background:#fff; color:var(--navy); padding:9px 14px; border-radius:30px; font-size:11px; font-weight:800; box-shadow:0 12px 25px rgba(0,0,0,.14); }
.d1{top:26%;right:10%}.d2{top:45%;left:7%}.d3{bottom:20%;right:8%}.d4{bottom:33%;left:16%}.d5{top:62%;right:30%}.d6{top:15%;left:25%}
.floating-card { position:absolute; background:#fff; border:1px solid #e6eeee; box-shadow:var(--shadow); border-radius:12px; padding:15px 19px; display:flex; flex-direction:column; min-width:140px; }
.floating-card strong { font-family:"Manrope"; color:var(--teal); font-size:25px; }
.floating-card span { color:var(--muted); font-size:10px; font-weight:700; }
.fc-one { top:28%;left:0 }.fc-two { bottom:12%;right:0 }
.section { padding:100px 0; }
.intro-section { background:#fff; }
.intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:end; }
.intro-grid h2 { max-width:570px; }
.lead { font-size:18px; color:#53666f; }
.text-link { color:var(--teal); font-weight:800; font-size:13px; display:inline-block; margin-top:12px; }
.services-section { background:var(--cream); }
.section-heading { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:35px; }
.section-heading h2 { margin-bottom:0; }
.carousel-controls { display:flex; gap:8px; }
.carousel-controls button { width:44px;height:44px;border-radius:50%;border:1px solid #cfe1e0;background:#fff;color:var(--navy);font-weight:800;cursor:pointer; }
.carousel-controls button:hover { background:var(--teal);color:#fff;border-color:var(--teal); }
.service-carousel,.testimonial-carousel { overflow:hidden; }
.service-track,.testimonial-track { display:flex; gap:20px; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.service-card { flex:0 0 calc((100% - 40px)/3); min-height:290px; background:#fff; border:1px solid #e4ecec; border-radius:16px; padding:28px; position:relative; overflow:hidden; }
.service-card:hover { box-shadow:var(--shadow); transform:translateY(-4px); transition:.2s; }
.service-icon { width:48px;height:48px;border-radius:13px;background:#e8f8f7;display:grid;place-items:center;font-size:22px;margin-bottom:28px; }
.service-number { position:absolute; top:22px;right:25px; color:#d7e4e4;font-family:"Manrope";font-size:13px;font-weight:800; }
.service-card p { font-size:13px; }
.service-card a,.blog-body a { color:var(--teal); font-size:12px; font-weight:800; }
.carousel-dots { display:flex; gap:7px; justify-content:center; margin-top:25px; }
.carousel-dots button { width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#bdd4d3;cursor:pointer; }
.carousel-dots button.active { width:24px;border-radius:10px;background:var(--teal); }
.destination-section { background:#fff; }
.destination-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:30px; }
.destination-panel { min-height:160px; border:1px solid var(--line); border-radius:13px; padding:25px; display:flex; flex-direction:column; justify-content:flex-end; background:linear-gradient(145deg,#fff,#f6fbfa); }
.destination-panel span { color:var(--aqua);font-size:11px;font-weight:800;margin-bottom:auto; }
.destination-panel strong { font-family:"Manrope";font-size:22px;color:var(--navy); }
.destination-panel small { color:var(--muted);font-size:11px;margin-top:5px; }
.testimonials-section { background:var(--navy); }
.testimonials-section h2,.testimonials-section .section-heading .text-link { color:#fff; }
.testimonial-card { flex:0 0 calc((100% - 40px)/3); background:#fff; border-radius:16px; padding:32px; min-height:290px; }
.quote-mark { font-family:Georgia,serif;font-size:60px;line-height:.7;color:var(--teal); }
.testimonial-card p,.testimonial-large p { font-size:16px;color:#465963; }
.testimonial-person { display:flex;align-items:center;gap:12px;margin-top:28px; }
.avatar { width:40px;height:40px;border-radius:50%;background:#dff7f5;color:var(--teal);display:grid;place-items:center;font-weight:800; }
.testimonial-person div:last-child { display:flex;flex-direction:column; }
.testimonial-person strong { font-size:12px;color:var(--navy); }
.testimonial-person span { font-size:11px;color:var(--muted); }
.faq-section { background:#f8faf9; }
.faq-grid { display:grid;grid-template-columns:.75fr 1.25fr;gap:90px; }
.accordion-item { border-top:1px solid var(--line); }
.accordion-item:last-child { border-bottom:1px solid var(--line); }
.accordion-trigger { width:100%;padding:20px 0;background:none;border:0;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--navy);font-weight:800;cursor:pointer; }
.accordion-trigger span { color:var(--teal);font-size:22px;line-height:1;transition:.2s; }
.accordion-content { max-height:0;overflow:hidden;transition:max-height .3s ease; }
.accordion-content p { margin:0 0 20px;font-size:13px; }
.accordion-item.open .accordion-content { max-height:180px; }
.accordion-item.open .accordion-trigger span { transform:rotate(45deg); }
.blog-preview { background:#fff; }
.blog-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
.blog-card { border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff; }
.blog-image { height:180px;background:linear-gradient(135deg,var(--navy),var(--teal));position:relative;padding:18px;display:flex;justify-content:space-between;color:#fff; }
.blog-image span { font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800; }
.blog-image b { font-family:"Manrope";font-size:42px;color:rgba(255,255,255,.25);align-self:flex-end; }
.blog-body { padding:24px; }
.blog-body small { font-size:10px;color:var(--teal);font-weight:800; }
.blog-body h3 { font-size:19px;margin:10px 0; }
.blog-body p { font-size:12px;min-height:60px; }
.cta-section { background:var(--navy); color:#fff; padding:70px 0; }
.cta-inner { display:flex;justify-content:space-between;align-items:center;gap:30px; }
.cta-inner h2 { color:#fff;margin:0;max-width:720px; }
.light-button { background:#fff;color:var(--navy); }
.light-button:hover { background:var(--aqua); }
.footer { background:#061e32;color:#a9c0c7;padding:65px 0 20px; }
.footer .brand-text strong { color:#fff; }
.footer .brand-text small { color:var(--aqua); }
.footer p,.footer a { font-size:12px;color:#9fb5bc; }
.footer a:hover { color:#fff; }
.footer-grid { display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:45px; }
.footer h4 { color:#fff;font-size:13px;margin-bottom:15px; }
.footer-grid > div > a:not(.footer-brand),.footer-grid > div > p { display:block;margin:7px 0; }
.footer-brand { margin-bottom:15px; }
.brand-mark.small { width:44px;height:44px; }
.brand-mark.small span:first-child { font-size:21px; }
.footer-button { color:#7de4de !important;font-weight:800;margin-top:15px !important; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;font-size:10px;color:#728d96; }
.page-hero { padding:85px 0 75px;background:linear-gradient(120deg,#eefafa,#f7fbfa); }
.page-hero h1 { max-width:850px;font-size:clamp(42px,5vw,65px);margin-bottom:18px; }
.page-hero p { max-width:700px;font-size:17px; }
.about-grid { display:grid;grid-template-columns:1fr 1fr;gap:90px; }
.values-section { background:var(--cream); }
.values-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px; }
.value-card { background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;min-height:220px; }
.value-card span { color:var(--teal);font-weight:800;font-size:11px; }
.full-services { display:grid;grid-template-columns:repeat(2,1fr);gap:20px; }
.full-service-card { border:1px solid var(--line);border-radius:16px;padding:32px;position:relative;min-height:250px; }
.full-service-card:nth-child(1),.full-service-card:nth-child(4) { background:#f2fbfa; }
.full-service-card h2 { font-size:28px;margin-bottom:12px; }
.testimonials-page { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
.testimonial-large { border:1px solid var(--line);padding:32px;border-radius:16px;min-height:300px; }
.narrow { max-width:850px; }
.note-section { background:#fff7e6;padding-top:45px;padding-bottom:45px; }
.blog-grid-large { grid-template-columns:repeat(3,1fr); }
.article { max-width:820px; }
.article h2 { font-size:28px;margin-top:38px; }
.appointment-grid { display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start; }
.info-line { display:flex;gap:15px;margin-top:26px; }
.info-line > span { color:var(--teal);font-weight:800; }
.info-line strong { font-family:"Manrope";color:var(--navy);font-size:14px; }
.info-line p { margin:3px 0;font-size:12px; }
.appointment-form { background:#f8faf9;border:1px solid var(--line);padding:34px;border-radius:16px;box-shadow:var(--shadow); }
.appointment-form label { display:block;color:var(--navy);font-size:12px;font-weight:800;margin-bottom:17px; }
.appointment-form input,.appointment-form select { width:100%;margin-top:7px;border:1px solid #d5e2e2;border-radius:7px;background:#fff;padding:13px 14px;outline:none;color:var(--ink); }
.appointment-form input:focus,.appointment-form select:focus { border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,168,168,.08); }
.submit-button { width:100%;border:0;cursor:pointer;margin-top:8px; }
.form-note { display:block;color:#7a898f;margin-top:12px;font-size:10px; }
.flash-wrap { margin-top:15px; }
.flash { padding:13px 17px;border-radius:7px;font-size:12px;display:flex;justify-content:space-between;gap:15px; }
.flash.success { background:#e8f8f3;color:#176b52; }
.flash.error { background:#fff0ed;color:#9c392c; }
.flash button { border:0;background:none;cursor:pointer;font-size:18px; }
@media(max-width:950px){
  .contact-block{display:none}.nav-inner{justify-content:flex-start}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:10px 20px 20px;box-shadow:0 15px 25px rgba(0,0,0,.1);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links a{padding:12px 0}.nav-links a.active:not(.nav-cta)::after{left:0;right:auto;width:35px;bottom:4px}.nav-cta{margin:5px 0 0;padding:13px 15px !important}.hero-grid,.about-grid,.appointment-grid,.faq-grid{grid-template-columns:1fr;gap:45px}.hero-grid{padding:65px 0}.hero-visual{min-height:400px}.intro-grid{grid-template-columns:1fr;gap:15px}.service-card,.testimonial-card{flex-basis:calc((100% - 20px)/2)}.destination-grid,.blog-grid,.testimonials-page,.values-grid{grid-template-columns:repeat(2,1fr)}.full-services{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,1180px)}.top-strip-inner{font-size:9px}.top-strip-inner span:last-child{display:none}.header-main{min-height:82px}.brand-mark{width:48px;height:48px}.brand-text strong{font-size:16px}.brand-text small{font-size:7px}.hero{min-height:auto}.hero-grid{min-height:auto}.hero-copy h1{font-size:45px}.hero-visual{min-height:350px}.main-visual{width:320px}.floating-card{min-width:120px;padding:11px}.fc-one{left:-3px}.fc-two{right:-3px}.section{padding:70px 0}.section-heading{align-items:start;flex-direction:column}.service-card,.testimonial-card{flex-basis:100%}.destination-grid,.blog-grid,.testimonials-page,.values-grid,.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:6px}.page-hero{padding:65px 0}.page-hero h1{font-size:43px}.appointment-form{padding:22px}
}

.site-logo {
    width: 180px;
    height: 70px;
    object-fit: contain;
    display: block;
}
