:root{
  --primary:#0f766e;--secondary:#f59e0b;--accent:#e7f7f3;
  --ink:#11211f;--muted:#637571;--line:#dfe9e6;--paper:#ffffff;--soft:#f5f9f8;--dark:#062b28;
  --font-body:"DM Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-display:"Manrope",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --shadow-sm:0 8px 30px rgba(12,46,42,.08);--shadow:0 24px 70px rgba(12,46,42,.14);
  --radius:22px;--radius-lg:34px;--container:1180px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(calc(100% - 36px),var(--container));margin-inline:auto}.narrow{max-width:830px}.skip-link{position:fixed;z-index:9999;left:14px;top:-100px;background:#fff;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow)}.skip-link:focus{top:14px}.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:86px;color:#fff;transition:background .25s,height .25s,box-shadow .25s}.site-header.scrolled,.page-services .site-header,.page-packages .site-header,.page-gallery .site-header,.page-contact .site-header,.page-page .site-header,.page-package .site-header{height:74px;background:rgba(5,39,36,.96);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(0,0,0,.14)}.header-inner{height:100%;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;min-width:220px}.brand-mark{width:44px;height:44px;flex:0 0 44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--secondary),#ffd47b);color:#4c2f00;font-family:var(--font-display);font-weight:900;font-size:1.32rem;box-shadow:0 12px 25px rgba(245,158,11,.22)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-family:var(--font-display);font-size:1.04rem;letter-spacing:-.03em}.brand small{margin-top:5px;font-size:.66rem;opacity:.7;white-space:nowrap}.main-nav{margin-left:auto;display:flex;align-items:center;gap:6px}.main-nav a{position:relative;padding:10px 12px;font-weight:700;font-size:.91rem;color:rgba(255,255,255,.78);transition:.2s}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:9px;background:var(--secondary)}.nav-toggle{display:none;background:transparent;border:0;color:#fff;padding:8px}.nav-toggle svg{width:25px;height:25px}.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:14px;padding:12px 18px;border:1px solid transparent;font-weight:800;font-size:.92rem;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn svg,.text-link svg,.service-card a svg{width:18px;height:18px}.btn-sm{min-height:42px;padding:9px 14px}.header-cta{background:#fff;color:var(--dark);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--primary),#0d5f58);color:#fff;box-shadow:0 13px 28px color-mix(in srgb,var(--primary) 26%,transparent)}.btn-primary:hover{box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 34%,transparent)}.btn-ghost{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(7px)}.btn-outline{border-color:var(--line);background:#fff;color:var(--ink)}.btn-light{background:#fff;color:var(--dark);box-shadow:0 14px 30px rgba(0,0,0,.12)}.btn-block{width:100%}.hero{position:relative;min-height:760px;color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0;background-size:cover;background-position:center}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(transparent,rgba(5,31,28,.3))}.hero-orb{position:absolute;border-radius:999px;filter:blur(4px);opacity:.5}.orb-one{width:300px;height:300px;background:rgba(245,158,11,.18);right:8%;top:20%}.orb-two{width:220px;height:220px;background:rgba(22,196,166,.18);left:-80px;bottom:70px}.hero-inner{position:relative;z-index:2;min-height:760px;padding-top:130px;padding-bottom:60px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:70px;align-items:center}.hero-copy{max-width:720px}.eyebrow{display:flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:900;color:var(--primary);margin-bottom:14px}.eyebrow>span{width:30px;height:2px;background:var(--secondary);border-radius:9px}.eyebrow.light{color:#d7efeb}.eyebrow.center{justify-content:center}.hero h1,.inner-hero h1,.detail-hero h1{font-family:var(--font-display);letter-spacing:-.055em;line-height:1.03;margin:0}.hero h1{font-size:clamp(3.1rem,6vw,5.7rem);max-width:840px}.hero-copy>p{font-size:1.13rem;line-height:1.75;color:rgba(255,255,255,.77);max-width:650px;margin:24px 0 30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-trust{display:flex;align-items:center;gap:16px;margin-top:32px}.avatars{display:flex}.avatars span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--dark);font-size:.67rem;font-weight:900;border:2px solid rgba(255,255,255,.8);margin-left:-8px}.avatars span:first-child{margin-left:0}.avatars span:nth-child(2){background:#dff5ef}.avatars span:nth-child(3){background:#fde8b4}.avatars span:last-child{background:var(--secondary)}.hero-trust>div:last-child{display:flex;flex-direction:column}.hero-trust strong{font-size:.85rem}.hero-trust small{font-size:.74rem;color:rgba(255,255,255,.63)}.hero-card{align-self:center;background:rgba(255,255,255,.95);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.7);border-radius:26px;padding:24px;color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.28)}.hero-card-top{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.status-dot{display:inline-flex;align-items:center;gap:7px;color:#14855e}.status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:#20b276;box-shadow:0 0 0 5px rgba(32,178,118,.12)}.hero-card h2{font-family:var(--font-display);font-size:1.55rem;line-height:1.22;letter-spacing:-.04em;margin:14px 0 18px}.mini-booking{display:grid;gap:12px}.mini-booking label,.booking-form label{font-size:.78rem;font-weight:800;color:#344944}.mini-booking input,.mini-booking select,.booking-form input,.booking-form select,.booking-form textarea{width:100%;margin-top:6px;border:1px solid #dbe7e4;border-radius:12px;background:#fff;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}.mini-booking input,.mini-booking select,.booking-form input,.booking-form select{height:47px;padding:0 13px}.booking-form textarea{padding:13px;resize:vertical}.mini-booking input:focus,.mini-booking select:focus,.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}.form-row{display:grid;grid-template-columns:1.4fr .6fr;gap:10px}.mini-booking>small{text-align:center;color:#879894;font-size:.7rem}.trust-strip{position:relative;z-index:3;background:var(--dark);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:26px}.stats-grid>div{text-align:center;border-right:1px solid rgba(255,255,255,.12)}.stats-grid>div:last-child{border-right:0}.stats-grid strong{display:block;font-family:var(--font-display);font-size:1.45rem}.stats-grid span{color:rgba(255,255,255,.58);font-size:.77rem}.section{padding:104px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.section-head>div{max-width:670px}.section-head>p{max-width:390px;color:var(--muted);margin:0}.section h2,.center-head h2,.feature-copy h2,.faq-copy h2,.contact-copy h2{font-family:var(--font-display);font-size:clamp(2.1rem,4vw,3.45rem);line-height:1.12;letter-spacing:-.05em;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{position:relative;min-height:320px;border:1px solid var(--line);border-radius:22px;padding:26px;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:before{content:"";position:absolute;width:140px;height:140px;border-radius:50%;right:-70px;top:-70px;background:var(--accent);transition:transform .3s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}.service-card:hover:before{transform:scale(1.35)}.icon-box{position:relative;z-index:1;width:54px;height:54px;border-radius:16px;background:var(--accent);color:var(--primary);display:grid;place-items:center}.icon-box svg{width:26px;height:26px}.service-no{position:absolute;right:21px;top:20px;font-family:var(--font-display);font-weight:800;color:#b6c5c1;font-size:.74rem}.service-card h3{font-family:var(--font-display);font-size:1.24rem;letter-spacing:-.03em;margin:26px 0 10px}.service-card p{color:var(--muted);font-size:.91rem;line-height:1.7;margin:0 0 20px}.service-card a{position:absolute;left:26px;bottom:24px;display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-weight:800;font-size:.82rem}.feature-section{background:var(--soft)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center}.feature-image{position:relative}.feature-image:before{content:"";position:absolute;inset:-20px 30% 30px -20px;border-radius:30px;background:var(--accent)}.feature-image img{position:relative;width:100%;height:600px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}.floating-review{position:absolute;left:-28px;bottom:34px;width:260px;background:#fff;border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column}.stars{color:var(--secondary);letter-spacing:.08em;font-size:.8rem}.floating-review strong{font-size:.9rem;margin:5px 0}.floating-review small{color:var(--muted);font-size:.72rem}.feature-copy>p,.faq-copy>p,.contact-copy>p{color:var(--muted);font-size:1rem;line-height:1.85;margin:22px 0}.check-list{display:grid;gap:17px;margin:30px 0}.check-list>div{display:flex;align-items:flex-start;gap:13px}.check-list>div>svg{width:24px;height:24px;padding:5px;border-radius:50%;background:var(--accent);color:var(--primary);flex:0 0 24px;margin-top:2px}.check-list span{display:flex;flex-direction:column}.check-list strong{font-size:.92rem}.check-list small{color:var(--muted);font-size:.8rem;margin-top:2px}.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:900;color:var(--primary);font-size:.88rem}.packages-section{background:#fff}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.package-card{border:1px solid var(--line);border-radius:24px;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}.package-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-sm)}.package-image{display:block;position:relative;height:258px;overflow:hidden}.package-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.28))}.package-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.package-card:hover .package-image img{transform:scale(1.04)}.badge{position:absolute;z-index:2;left:16px;top:16px;background:#fff;color:var(--dark);border-radius:999px;padding:7px 11px;font-size:.68rem;font-weight:900;box-shadow:0 8px 25px rgba(0,0,0,.15)}.package-body{padding:20px 21px 21px}.package-meta{display:flex;flex-wrap:wrap;gap:13px;color:var(--muted);font-size:.72rem;font-weight:700}.package-meta span{display:inline-flex;align-items:center;gap:5px}.package-meta svg{width:15px;height:15px}.package-body h3{font-family:var(--font-display);font-size:1.32rem;letter-spacing:-.035em;margin:10px 0 8px}.package-body p{color:var(--muted);font-size:.87rem;line-height:1.65;min-height:68px;margin:0}.package-footer{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}.package-footer>div{display:flex;flex-direction:column}.package-footer small{color:var(--muted);font-size:.69rem}.package-footer strong{font-family:var(--font-display);font-size:1.1rem}.round-link{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--primary);transition:.2s}.round-link:hover{background:var(--primary);color:#fff}.round-link svg{width:18px;height:18px}.gallery-section{background:var(--soft)}.gallery-mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:260px 260px;gap:15px}.gallery-item{position:relative;margin:0;border-radius:20px;overflow:hidden;min-height:240px;background:#d8e3e0}.gallery-mosaic .item-1{grid-row:1/3}.gallery-mosaic .item-4{grid-column:2/3}.gallery-mosaic .item-5{grid-column:3/4}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.72));opacity:.85}.gallery-item:hover img{transform:scale(1.05)}.gallery-item figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff;display:flex;flex-direction:column}.gallery-item figcaption span{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.7)}.gallery-item figcaption strong{font-family:var(--font-display);font-size:1rem}.testimonials-section{background:#fff}.center-head{text-align:center;max-width:730px;margin:0 auto 38px}.center-head>p{color:var(--muted);max-width:590px;margin:15px auto 0}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.testimonial-card{position:relative;border:1px solid var(--line);border-radius:22px;padding:25px;background:#fff;min-height:300px}.quote-icon{position:absolute;right:22px;top:21px;color:var(--accent)}.quote-icon svg{width:46px;height:46px;stroke-width:1.4}.testimonial-card blockquote{margin:18px 0 28px;font-family:var(--font-display);font-size:1.02rem;line-height:1.72;letter-spacing:-.015em}.guest{display:flex;align-items:center;gap:11px;position:absolute;left:25px;bottom:23px}.guest>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--primary);font-weight:900}.guest>div{display:flex;flex-direction:column}.guest strong{font-size:.83rem}.guest small{color:var(--muted);font-size:.72rem}.faq-section{background:var(--soft)}.faq-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:80px;align-items:start}.faq-copy{position:sticky;top:120px}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;cursor:pointer}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--primary);transition:transform .2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details>div{padding:0 45px 17px 0}.accordion p{margin:0;color:var(--muted);font-size:.9rem}.cta-section{padding:0 0 104px;background:var(--soft)}.cta-card{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:50px;padding:48px 52px;border-radius:30px;background:linear-gradient(135deg,var(--primary),#06473f);color:#fff}.cta-card:before,.cta-card:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.06)}.cta-card:before{width:300px;height:300px;right:-130px;top:-160px}.cta-card:after{width:180px;height:180px;left:43%;bottom:-130px}.cta-card>div{position:relative;z-index:1}.cta-card h2{font-family:var(--font-display);font-size:clamp(2rem,3.5vw,3rem);line-height:1.12;letter-spacing:-.05em;margin:0;max-width:680px}.cta-card p{color:rgba(255,255,255,.7);margin:15px 0 0;max-width:620px}.cta-actions{display:flex;flex-direction:column;align-items:stretch;min-width:250px}.cta-phone{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:15px}.cta-phone>svg{width:22px}.cta-phone span{display:flex;flex-direction:column}.cta-phone small{font-size:.66rem;color:rgba(255,255,255,.55)}.cta-phone strong{font-size:.83rem}.inner-hero{min-height:430px;padding:158px 0 80px;color:#fff;background:radial-gradient(circle at 80% 20%,rgba(245,158,11,.18),transparent 27%),linear-gradient(135deg,#073c37,#062723)}.inner-hero.compact{min-height:390px}.inner-hero h1{font-size:clamp(3rem,6vw,5.3rem);max-width:900px}.inner-hero p{max-width:680px;font-size:1.05rem;color:rgba(255,255,255,.7);margin:20px 0 0}.service-grid.large{grid-template-columns:repeat(3,1fr)}.process-section{background:var(--soft);padding-top:90px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-grid>div{padding:26px;border:1px solid var(--line);background:#fff;border-radius:20px}.process-grid>div>span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--accent);color:var(--primary);font-weight:900}.process-grid h3{font-family:var(--font-display);margin:18px 0 8px}.process-grid p{color:var(--muted);font-size:.9rem;margin:0}.all-packages{grid-template-columns:repeat(3,1fr)}.detail-hero{position:relative;min-height:590px;padding:160px 0 90px;color:#fff;display:flex;align-items:end;overflow:hidden}.detail-image{position:absolute;inset:0;background-size:cover;background-position:center}.detail-hero .container{position:relative;z-index:1}.back-link{display:inline-block;color:rgba(255,255,255,.72);font-size:.82rem;margin-bottom:28px}.detail-hero h1{font-size:clamp(3rem,6vw,5.3rem);max-width:900px}.detail-hero p{font-size:1.08rem;color:rgba(255,255,255,.75);max-width:700px}.detail-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.detail-meta span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);border-radius:999px;font-size:.78rem;backdrop-filter:blur(8px)}.detail-meta svg{width:16px;height:16px}.detail-grid{display:grid;grid-template-columns:1fr 360px;gap:70px;align-items:start}.prose h2,.prose h3{font-family:var(--font-display);letter-spacing:-.04em}.prose h2{font-size:2.3rem;line-height:1.15;margin:0 0 20px}.prose h3{font-size:1.35rem;margin:34px 0 10px}.prose p{color:var(--muted);line-height:1.9}.prose ul,.prose ol{color:var(--muted)}.prose a{color:var(--primary);text-decoration:underline}.included-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:28px}.included-grid>div{display:flex;align-items:center;gap:10px;padding:13px;border-radius:13px;background:var(--soft);font-size:.82rem;font-weight:700}.included-grid svg{width:19px;color:var(--primary)}.booking-panel{position:sticky;top:105px;border:1px solid var(--line);border-radius:22px;padding:25px;background:#fff;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.panel-label{font-size:.74rem;color:var(--muted)}.panel-price{font-family:var(--font-display);font-size:2rem;line-height:1.2;margin:4px 0}.booking-panel>small{color:var(--muted);font-size:.76rem;margin-bottom:20px}.booking-panel .btn+.btn{margin-top:10px}.gallery-full{columns:3 290px;column-gap:15px}.gallery-full .gallery-item{break-inside:avoid;margin-bottom:15px;height:340px}.gallery-full .gallery-item:nth-child(3n+2){height:440px}.contact-section{background:var(--soft)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.contact-copy{padding-top:15px}.contact-list{display:grid;gap:11px;margin:28px 0}.contact-list>a,.contact-list>div{display:flex;align-items:center;gap:13px;padding:12px 0}.contact-list>*>span:first-child{width:44px;height:44px;border-radius:14px;background:#fff;color:var(--primary);display:grid;place-items:center;border:1px solid var(--line)}.contact-list svg{width:20px;height:20px}.contact-list>*>div{display:flex;flex-direction:column}.contact-list small{color:var(--muted);font-size:.7rem}.contact-list strong{font-size:.88rem}.social-row{display:flex;flex-wrap:wrap;gap:9px}.social-row a{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--primary);transition:.2s}.social-row a:hover{background:var(--primary);color:#fff}.social-row svg{width:19px;height:19px}.booking-form{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow-sm)}.form-heading span{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--primary);font-weight:900}.form-heading h2{font-family:var(--font-display);font-size:1.7rem;letter-spacing:-.04em;margin:4px 0 20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid .full{grid-column:1/-1}.booking-form label>span{color:#d44}.privacy-note{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:.7rem;margin-top:12px}.privacy-note svg{width:14px;height:14px}.page-hero{background-size:cover;background-position:center;min-height:500px;display:flex;align-items:flex-end}.page-prose{font-size:1.01rem}.not-found{min-height:70vh;display:grid;place-items:center;text-align:center;padding-top:100px}.not-found h1{font-family:var(--font-display);font-size:3rem}.site-footer{background:#041f1d;color:#fff;padding-top:76px}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr .8fr 1fr;gap:50px;padding-bottom:50px}.light-brand{color:#fff}.footer-brand p{max-width:330px;color:rgba(255,255,255,.54);font-size:.86rem;margin:20px 0}.light-social a{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#fff}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:10px}.footer-grid h3{font-family:var(--font-display);font-size:.88rem;margin:4px 0 10px}.footer-grid>div:not(.footer-brand) a,.footer-grid>div:not(.footer-brand) span{color:rgba(255,255,255,.55);font-size:.8rem}.footer-grid>div:not(.footer-brand) a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.09);padding:18px 0 25px;display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.42);font-size:.72rem}.whatsapp-float{position:fixed;z-index:90;right:20px;bottom:20px;background:#1fae66;color:#fff;border-radius:999px;padding:12px 17px;display:flex;align-items:center;gap:8px;font-weight:900;font-size:.8rem;box-shadow:0 15px 35px rgba(22,140,82,.32);transition:.2s}.whatsapp-float:hover{transform:translateY(-3px)}.whatsapp-float svg{width:20px;height:20px}.flash-stack{position:fixed;z-index:200;right:18px;top:95px;width:min(390px,calc(100% - 36px));display:grid;gap:10px}.flash{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;background:#fff;border-left:4px solid var(--primary);border-radius:13px;padding:14px 15px;box-shadow:var(--shadow-sm);font-size:.84rem}.flash.error{border-left-color:#dc4c4c}.flash button{background:transparent;border:0;font-size:1.2rem;color:var(--muted);line-height:1}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}
@media(max-width:1080px){.header-cta{display:none}.brand{min-width:auto}.hero-inner{grid-template-columns:1.08fr .72fr;gap:35px}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{gap:45px}.package-image{height:230px}.faq-grid{gap:45px}.footer-grid{grid-template-columns:1.3fr .7fr .8fr}.footer-grid>div:last-child{grid-column:2/4}.contact-grid{gap:40px}}
@media(max-width:860px){.site-header{height:74px;background:rgba(5,39,36,.94);backdrop-filter:blur(18px)}.nav-toggle{display:grid;place-items:center;margin-left:auto}.main-nav{position:fixed;left:14px;right:14px;top:82px;background:#fff;color:var(--ink);border-radius:19px;padding:12px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch;gap:3px}.main-nav.open{display:flex}.main-nav a{color:var(--ink);padding:12px 14px;border-radius:10px}.main-nav a:hover,.main-nav a.active{color:var(--primary);background:var(--soft)}.main-nav a.active:after{display:none}.hero,.hero-inner{min-height:auto}.hero-inner{padding-top:120px;padding-bottom:70px;grid-template-columns:1fr}.hero h1{font-size:clamp(3rem,10vw,5.1rem)}.hero-card{max-width:620px}.stats-grid{grid-template-columns:repeat(2,1fr);row-gap:22px}.stats-grid>div:nth-child(2){border-right:0}.section{padding:82px 0}.section-head{align-items:start}.feature-grid{grid-template-columns:1fr}.feature-image{max-width:680px}.feature-image img{height:500px}.package-grid,.all-packages{grid-template-columns:repeat(2,1fr)}.gallery-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px 230px}.gallery-mosaic .item-1{grid-row:1/2;grid-column:1/3}.gallery-mosaic .item-4,.gallery-mosaic .item-5{grid-column:auto}.gallery-mosaic .item-5{grid-column:1/3}.testimonial-grid{grid-template-columns:1fr}.testimonial-card{min-height:250px}.faq-grid{grid-template-columns:1fr}.faq-copy{position:static}.cta-card{padding:40px;align-items:flex-start;flex-direction:column}.cta-actions{width:100%}.service-grid.large{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.booking-panel{position:static}.contact-grid{grid-template-columns:1fr}.contact-copy{max-width:680px}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.gallery-full{columns:2 280px}}
@media(max-width:620px){body{font-size:15px}.container{width:min(calc(100% - 24px),var(--container))}.brand small{display:none}.brand-mark{width:40px;height:40px;flex-basis:40px}.hero-inner{padding-top:105px;padding-bottom:46px}.hero h1{font-size:2.85rem}.hero-copy>p{font-size:1rem;margin:18px 0 24px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-card{padding:18px;border-radius:21px}.hero-card h2{font-size:1.35rem}.form-row{grid-template-columns:1fr}.stats-grid{padding-block:22px}.stats-grid strong{font-size:1.25rem}.stats-grid span{font-size:.68rem}.section{padding:68px 0}.section-head{display:block}.section-head>p{margin-top:13px}.section h2,.center-head h2,.feature-copy h2,.faq-copy h2,.contact-copy h2{font-size:2.2rem}.desktop-link{display:none}.service-grid,.service-grid.large{grid-template-columns:1fr}.service-card{min-height:285px}.feature-image:before{inset:-12px 25% 20px -10px}.feature-image img{height:420px;border-radius:22px}.floating-review{left:12px;right:12px;bottom:14px;width:auto}.package-grid,.all-packages{grid-template-columns:1fr}.package-image{height:245px}.gallery-mosaic{display:grid;grid-template-columns:1fr;grid-template-rows:none}.gallery-mosaic .gallery-item{grid-column:auto;grid-row:auto;height:300px}.testimonial-card{min-height:280px}.faq-grid{gap:35px}.cta-section{padding-bottom:68px}.cta-card{padding:32px 23px;border-radius:23px}.cta-card h2{font-size:2.15rem}.inner-hero{min-height:390px;padding:132px 0 60px}.inner-hero h1,.detail-hero h1{font-size:2.8rem}.inner-hero p{font-size:.96rem}.detail-hero{min-height:560px;padding:135px 0 70px}.detail-meta{gap:8px}.detail-grid{gap:40px}.included-grid{grid-template-columns:1fr}.prose h2{font-size:2rem}.gallery-full{columns:1}.gallery-full .gallery-item,.gallery-full .gallery-item:nth-child(3n+2){height:330px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.booking-form{padding:20px;border-radius:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;gap:10px}.whatsapp-float{right:12px;bottom:12px;padding:13px}.whatsapp-float span{display:none}.flash-stack{top:84px;right:12px;width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.package-image img,.gallery-item img{transition:none}.btn:hover,.service-card:hover,.package-card:hover{transform:none}}

/* Professional 2026 enhancement layer */
:root{--shadow-soft:0 18px 50px rgba(6,32,29,.11);--shadow-hover:0 24px 70px rgba(6,32,29,.17);--radius-xl:28px;--radius-lg:22px}
html{scroll-behavior:smooth}body{overflow-x:hidden}.site-header,.site-footer,.hero,.section{isolation:isolate}.site-header{backdrop-filter:saturate(155%) blur(18px);-webkit-backdrop-filter:saturate(155%) blur(18px)}
.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:14px;display:block;filter:drop-shadow(0 8px 16px rgba(0,0,0,.12))}.light-brand .brand-logo{background:#fff;padding:5px}.brand-copy{min-width:0}.brand-copy strong,.brand-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;display:block}
.language-control{position:relative;flex:0 0 auto}.language-button{height:42px;min-width:78px;border:1px solid rgba(14,70,63,.15);background:rgba(255,255,255,.82);border-radius:14px;padding:0 12px;display:flex;align-items:center;gap:7px;font:700 12px/1 Manrope,sans-serif;color:#153c38;cursor:pointer;box-shadow:0 8px 25px rgba(16,55,50,.07);transition:.25s ease}.language-button:hover,.language-button[aria-expanded=true]{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 13px 30px rgba(16,55,50,.13)}.language-button span{font-size:17px}.language-button i{font-style:normal;opacity:.55}.language-menu{position:absolute;right:0;top:calc(100% + 12px);width:min(290px,calc(100vw - 32px));padding:16px;background:rgba(255,255,255,.98);border:1px solid rgba(8,65,58,.1);border-radius:18px;box-shadow:0 24px 70px rgba(6,32,29,.19);opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transition:.22s ease;z-index:80}.language-menu.open{opacity:1;visibility:visible;transform:none}.language-menu:before{content:"";position:absolute;right:28px;top:-6px;width:12px;height:12px;background:#fff;border-left:1px solid rgba(8,65,58,.1);border-top:1px solid rgba(8,65,58,.1);transform:rotate(45deg)}.language-menu label{display:block;font:800 13px Manrope,sans-serif;margin-bottom:9px;color:#143b37}.language-menu select{width:100%;height:46px;border:1px solid #d9e6e3;border-radius:13px;padding:0 12px;background:#f8fbfa;font:600 14px DM Sans,sans-serif;color:#123a36;outline:none}.language-menu select:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}.language-menu small{display:block;margin-top:9px;color:#71817e;font-size:11px}
.hero-media{will-change:transform;transform:scale(1.035);transition:transform .05s linear}.hero-copy h1{letter-spacing:-.045em;text-wrap:balance}.hero-card,.service-card,.package-card,.testimonial-card,.booking-panel,.booking-form,.panel{box-shadow:var(--shadow-soft)}.service-card,.package-card,.gallery-item,.testimonial-card,.booking-panel{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}.service-card:hover,.package-card:hover,.gallery-item:hover,.testimonial-card:hover,.booking-panel:hover{transform:translateY(-8px);box-shadow:var(--shadow-hover)}.package-card img,.gallery-item img,.about-media img{transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .5s ease}.package-card:hover img,.gallery-item:hover img,.about-media:hover img{transform:scale(1.055);filter:saturate(1.08)}
.btn{position:relative;overflow:hidden;transform:translateZ(0)}.btn:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.24),transparent 80%);transform:translateX(-130%);transition:transform .65s ease}.btn:hover:before{transform:translateX(130%)}.whatsapp-float{animation:waFloat 3.8s ease-in-out infinite;box-shadow:0 16px 38px rgba(23,175,92,.3)}@keyframes waFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.reveal{transform:translateY(26px) scale(.99);filter:blur(2px)}.reveal.visible{filter:none}.hero-orb{animation:orbDrift 11s ease-in-out infinite alternate}@keyframes orbDrift{from{transform:translate3d(-8px,-5px,0) scale(.96)}to{transform:translate3d(15px,12px,0) scale(1.08)}}
.goog-te-banner-frame.skiptranslate,.goog-te-gadget-icon{display:none!important}body{top:0!important}.goog-text-highlight{background:transparent!important;box-shadow:none!important}
@media(max-width:1120px){.header-inner{gap:12px}.brand-copy small{display:none}.main-nav{gap:3px}.main-nav a{padding-inline:10px}.header-cta{padding-inline:15px}.language-button{min-width:68px}}
@media(max-width:900px){.language-control{margin-left:auto}.header-cta{display:none}.brand-logo{width:43px;height:43px}.language-menu{right:-56px}.language-menu:before{right:82px}.hero-media{transform:scale(1.02)!important}.hero-card{border-radius:22px}.whatsapp-float span{display:none}.whatsapp-float{width:58px;height:58px;border-radius:50%;padding:0;justify-content:center}.whatsapp-float svg{margin:0}}
@media(max-width:560px){.header-inner{padding-inline:16px}.brand-copy strong{max-width:122px;font-size:15px}.brand-logo{width:39px;height:39px;border-radius:11px}.language-button{height:38px;min-width:62px;padding:0 9px}.language-button span{display:none}.language-menu{position:fixed;left:16px;right:16px;top:78px;width:auto}.language-menu:before{display:none}.hero-copy h1{font-size:clamp(2.35rem,12vw,3.6rem)}.hero-actions{display:grid}.hero-actions .btn{width:100%}.section{padding-block:70px}.footer-grid{gap:34px}.footer-bottom{align-items:flex-start;gap:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{filter:none;transform:none;opacity:1}}

/* V3 polished motion, media gallery and layout hardening */
:root{
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --motion-fast:220ms;
  --motion-base:420ms;
}
html{scroll-padding-top:86px}
body{min-width:320px;text-rendering:optimizeLegibility}
body.navigation-open{overflow:hidden}
.container,.header-inner,.hero-inner,.footer-grid,.contact-grid,.detail-grid{min-width:0}
.site-header{transition:height var(--motion-base) var(--ease-premium),background-color var(--motion-base) ease,box-shadow var(--motion-base) ease}
.hero-media{will-change:auto!important;transform:scale(1.015)!important;transition:none!important}
.btn,.language-button,.main-nav a{transition:transform var(--motion-fast) var(--ease-premium),box-shadow var(--motion-fast) ease,background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.985)}
.btn:before{display:none}
.service-card,.package-card,.gallery-item,.testimonial-card,.booking-panel{transition:transform 360ms var(--ease-premium),box-shadow 360ms ease,border-color 300ms ease}
.service-card:hover,.package-card:hover,.gallery-item:hover,.testimonial-card:hover,.booking-panel:hover{transform:translateY(-3px);box-shadow:0 21px 55px rgba(6,32,29,.14)}
.package-card img,.gallery-item img,.gallery-item video,.about-media img{transition:transform 620ms var(--ease-premium),filter 420ms ease}
.package-card:hover img,.gallery-item:hover img,.gallery-item:hover video,.about-media:hover img{transform:scale(1.025);filter:saturate(1.035)}
.reveal{opacity:0;transform:translate3d(0,16px,0);filter:none;transition:opacity 620ms var(--ease-premium),transform 620ms var(--ease-premium)}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:70ms}.delay-2{transition-delay:130ms}.delay-3{transition-delay:190ms}
.hero-orb{animation:orbDriftSoft 14s ease-in-out infinite alternate}@keyframes orbDriftSoft{from{transform:translate3d(-3px,-2px,0)}to{transform:translate3d(8px,6px,0)}}
.whatsapp-float{animation:waFloatSoft 5.5s ease-in-out infinite;transition:transform 260ms var(--ease-premium),box-shadow 260ms ease}@keyframes waFloatSoft{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.whatsapp-float:hover{transform:translateY(-3px) scale(1.015);box-shadow:0 20px 45px rgba(23,175,92,.34)}

/* Photo and video share the exact same responsive gallery component */
.gallery-item{break-inside:avoid;isolation:isolate;background:#0a2623}
.gallery-media,.gallery-item>img,.gallery-item>video{display:block;width:100%;height:100%;object-fit:cover}
.gallery-item.has-video:after{content:"Video";position:absolute;z-index:3;right:14px;top:14px;padding:6px 9px;border-radius:999px;background:rgba(4,28,26,.72);backdrop-filter:blur(8px);color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;pointer-events:none}
.gallery-item video[controls]{background:#071b1a}
.gallery-full .gallery-item{display:inline-block;width:100%;vertical-align:top}
.gallery-full .gallery-item video{min-height:100%;border:0}

/* Prevent translated text or long names from overlapping */
.brand{min-width:0}.brand-copy{min-width:0;max-width:235px}.main-nav{min-width:0}.main-nav a{white-space:nowrap}
.hero-copy,.feature-copy,.contact-copy,.footer-grid>div,.package-body,.service-card{min-width:0}
.hero h1,.inner-hero h1,.detail-hero h1,.section h2,.cta-card h2{overflow-wrap:anywhere}
.booking-form input,.booking-form select,.booking-form textarea,.mini-booking input,.mini-booking select{min-width:0;max-width:100%}

@media(max-width:1080px){
  .brand-copy{max-width:180px}.main-nav a{font-size:.84rem;padding-inline:9px}
}
@media(max-width:900px){
  .header-inner{padding-inline:0}.main-nav{max-height:calc(100dvh - 102px);overflow-y:auto;overscroll-behavior:contain;transform-origin:top;animation:mobileNavIn 260ms var(--ease-premium) both}
  @keyframes mobileNavIn{from{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}
  .main-nav a{white-space:normal}.hero-media{transform:scale(1.008)!important}
}
@media(max-width:620px){
  .container{width:min(calc(100% - 24px),var(--container))}.header-inner{gap:8px}
  .brand-copy{max-width:136px}.language-control{flex:0 0 auto}.nav-toggle{flex:0 0 auto}
  .gallery-mosaic .gallery-item{height:280px}.gallery-full .gallery-item,.gallery-full .gallery-item:nth-child(3n+2){height:auto;min-height:300px}
  .gallery-full .gallery-item>img,.gallery-full .gallery-item>video{height:330px}
  .gallery-item.has-video:after{right:10px;top:10px}
  .cta-actions,.cta-actions .btn{width:100%}.cta-phone{max-width:100%}
  .footer-grid a,.footer-grid span{overflow-wrap:anywhere}
}
@media(max-width:390px){
  .brand-copy strong{max-width:100px}.language-button{min-width:54px}.container{width:min(calc(100% - 20px),var(--container))}
  .hero h1{font-size:2.35rem}.section h2,.center-head h2,.feature-copy h2,.faq-copy h2,.contact-copy h2{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){
  .whatsapp-float,.hero-orb{animation:none!important}.reveal{opacity:1;transform:none}.gallery-item:hover img,.gallery-item:hover video,.package-card:hover img{transform:none}
}

/* Adaptive anti-lag module: activated only on constrained devices */
.performance-lite .hero-orb,.performance-lite .whatsapp-float{animation:none!important}
.performance-lite .reveal{transition-duration:260ms}
.performance-lite .service-card,.performance-lite .package-card,.performance-lite .gallery-item,.performance-lite .testimonial-card{transition-duration:180ms}
.performance-lite .gallery-item video[data-autoplay-video]{display:block}
.performance-lite .gallery-item:hover img,.performance-lite .gallery-item:hover video,.performance-lite .package-card:hover img{transform:none;filter:none}


/* V3 media interaction safety */
.gallery-full .gallery-item.has-video figcaption{pointer-events:none;padding-bottom:58px}
.gallery-full .gallery-item.has-video video{position:relative;z-index:1}
.gallery-full .gallery-item.has-video:after{top:12px;right:12px}
.gallery-video::-webkit-media-controls-panel{background-image:linear-gradient(transparent,rgba(0,0,0,.62))}
@media(max-width:620px){.gallery-full .gallery-item.has-video figcaption{padding-bottom:62px}.gallery-full .gallery-item.has-video video{height:auto;min-height:260px;max-height:72dvh}}
