@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--ink:#164e5b;--ink2:#123d48;--muted:#65797d;--cream:#f5f8f6;--paper:#fff;--line:#dce8e5;--teal:#1b9a8a;--teal2:#0f7e72;--wa:#25d366;--gold:#e7c98a}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;background:var(--paper);line-height:1.65}.header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid #e7efed}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;color:var(--teal)}.brand-mark svg{width:42px;height:42px}.brand strong,.brand em{display:block;font-style:normal;line-height:1}.brand strong{font:600 21px/1 "Playfair Display",serif;letter-spacing:.14em}.brand em{font-size:10px;letter-spacing:.38em;color:var(--teal);margin-top:4px}.header nav{display:flex;gap:28px;align-items:center}.header nav a{color:var(--ink);text-decoration:none;font-size:13px;font-weight:500}.header nav a:hover{color:var(--teal2)}.nav-cta{padding:10px 18px;background:var(--ink);color:white!important;border-radius:999px}.menu{display:none;border:0;background:none;font-size:25px;color:var(--ink)}.hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,39,47,.78),rgba(5,39,47,.18) 68%),linear-gradient(0deg,rgba(5,39,47,.55),transparent 55%)}.hero-content{position:relative;color:white;max-width:850px;padding:8vw 7vw 8vw}.hero-brand{display:inline-flex;align-items:center;gap:8px;letter-spacing:.18em;font-size:12px;font-weight:700;margin-bottom:17px}.mini-mark{color:#8ce2d3}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--muted);margin:0 0 15px}.hero .eyebrow{color:#dcefeb}.hero h1{font:600 clamp(43px,6vw,76px)/1.02 "Playfair Display",serif;max-width:800px;margin:0 0 22px}.hero p:not(.eyebrow){max-width:620px;font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:14px 22px;font:700 13px "DM Sans",sans-serif;text-decoration:none;cursor:pointer}.btn span{font-size:17px}.primary{background:var(--teal);color:white;box-shadow:0 9px 24px rgba(27,154,138,.2)}.primary:hover{background:var(--teal2)}.whatsapp-btn{background:var(--wa);color:white;box-shadow:0 9px 24px rgba(37,211,102,.22)}.whatsapp-btn svg{width:19px;height:19px}.whatsapp-btn.large{margin-top:10px;padding:14px 22px}.trust-row{display:flex;gap:24px;flex-wrap:wrap;margin-top:32px;font-size:12px;color:#e7f6f2}.section{padding:100px 7vw}.section-head{max-width:760px;margin:0 auto 50px;text-align:center}.section h2{font:600 clamp(34px,4vw,52px)/1.1 "Playfair Display",serif;margin:0 0 14px}.section-head>p:last-child{color:var(--muted);margin:0}.services-section{background:#f7fbfa}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{position:relative;background:white;padding:30px;border:1px solid var(--line);border-radius:22px;min-height:250px;transition:transform .25s,box-shadow .25s,border-color .25s}.cards article:hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(19,73,82,.1);border-color:#b8d9d3}.service-icon{width:55px;height:55px;border-radius:18px;background:#e3f4f0;color:var(--teal2);display:grid;place-items:center;font:600 27px "Playfair Display",serif;margin-bottom:18px}.cards .num{position:absolute;right:24px;top:25px;font-size:10px;letter-spacing:.15em;color:#9bb3b0}.cards h3{font:600 21px/1.25 "Playfair Display",serif;margin:10px 0 10px}.cards p{color:var(--muted);margin:0;font-size:14px}.split{background:var(--cream);display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}.photo img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover;border-radius:0 70px 0 0}.copy h2{font:600 clamp(35px,4vw,55px)/1.1 "Playfair Display",serif;margin:0 0 20px}.copy p{color:var(--muted);max-width:540px}.signature{font:600 20px/1.4 "Playfair Display",serif;color:var(--ink2);margin-top:28px}.signature span{color:var(--teal);font-size:25px;margin-left:7px}.zones{background:linear-gradient(180deg,#eef8f6,#f8fbfa)}.zone-list{max-width:1050px;margin:auto;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.zone-list span{background:white;border:1px solid var(--line);border-radius:999px;padding:9px 15px;font-size:13px;color:var(--ink2);box-shadow:0 3px 10px rgba(15,78,89,.04)}.zone-list span:last-child{background:var(--teal);color:white;border-color:var(--teal)}.text-link{display:block;width:max-content;margin:35px auto 0;color:var(--ink2);font-weight:700;text-decoration:none;border-bottom:1px solid var(--teal)}.gallery-section{background:white}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery figure{margin:0;position:relative;overflow:hidden;background:#eee;border-radius:20px}.gallery img{width:100%;aspect-ratio:1.25;object-fit:cover;display:block;transition:transform .5s}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:35px 18px 17px;color:white;background:linear-gradient(0deg,rgba(7,44,53,.78),transparent);display:flex;flex-direction:column}.gallery figcaption span{font:600 19px "Playfair Display",serif}.gallery figcaption small{font-size:11px;color:#dceceb;margin-top:2px}.why{background:#f6faf9}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.why-grid>div{padding:34px 24px;text-align:center;border-right:1px solid var(--line)}.why-grid>div:last-child{border-right:0}.why-grid span{font-size:28px;color:var(--teal)}.why-grid h3{font:600 19px "Playfair Display",serif;margin:12px 0 7px}.why-grid p{color:var(--muted);font-size:13px;margin:0}.contact{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.contact-intro h2{font:600 clamp(38px,5vw,58px)/1.08 "Playfair Display",serif;margin:0 0 20px}.contact-intro>p:not(.eyebrow){color:var(--muted);max-width:480px}.contact-data{line-height:2;margin:28px 0}.contact-data a,footer a{color:inherit}.contact form{background:white;padding:36px;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 35px rgba(15,78,89,.06)}form h3{font:600 28px "Playfair Display",serif;margin:0 0 25px}label{display:block;font-size:12px;font-weight:700;margin:13px 0}input,select,textarea{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px;margin-top:7px;font:14px "DM Sans",sans-serif;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid #bfe8e1;border-color:var(--teal)}textarea{resize:vertical}form .btn{width:100%;margin-top:8px}form small{display:block;color:var(--muted);margin-top:12px;font-size:11px}footer{background:var(--ink2);color:#e9f5f2;padding:70px 7vw 30px;display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:50px;position:relative}.footer-brand{color:white}.footer-brand .brand-mark{color:#6bd2c2}footer p{font-size:13px;color:#b9d0cd;max-width:380px}footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.14em;margin:0 0 12px;color:#fff}.legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:22px;display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#b9d0cd}.copyright{grid-column:1/-1;margin:0}.floating-wa{position:fixed;right:20px;bottom:20px;width:60px;height:60px;border-radius:50%;background:var(--wa);color:#fff;display:grid;place-items:center;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.2),0 0 0 4px rgba(255,255,255,.9);z-index:30;transition:transform .2s}.floating-wa:hover{transform:scale(1.06)}.floating-wa svg{width:31px;height:31px}@media(max-width:900px){.header nav{display:none}.menu{display:block}.header:has(.menu.open) nav{display:flex;position:absolute;top:82px;left:0;right:0;background:#fff;padding:18px 7vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.hero-content{padding:20vw 7vw 16vw}.hero h1{font-size:45px}.section{padding:75px 6vw}.cards,.gallery{grid-template-columns:1fr 1fr}.split,.contact{grid-template-columns:1fr;gap:45px}.gallery img{aspect-ratio:1.35}.why-grid{grid-template-columns:1fr 1fr}.why-grid>div:nth-child(2){border-right:0}.why-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}footer{grid-template-columns:1fr;padding:55px 6vw 25px}.legal{grid-column:1}.copyright{grid-column:1}}@media(max-width:560px){.header{height:72px}.brand-mark{width:36px;height:36px}.brand-mark svg{width:36px;height:36px}.brand strong{font-size:18px}.hero{min-height:calc(100vh - 72px)}.hero-content{padding:26vw 6vw 16vw}.hero h1{font-size:40px}.hero p:not(.eyebrow){font-size:15px}.trust-row{gap:10px;flex-direction:column}.cards,.gallery{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}.why-grid>div{border-right:0!important;border-bottom:1px solid var(--line)}.why-grid>div:last-child{border-bottom:0}.photo img{border-radius:0 45px 0 0}}

.lang-switch{display:flex;align-items:center;gap:5px;margin-left:8px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#fff}
.lang-switch a,.lang-mobile a{font-size:11px;font-weight:800;letter-spacing:.08em;text-decoration:none;color:var(--muted);padding:6px 7px;border-radius:999px}
.lang-switch a.active,.lang-mobile a.active{background:var(--ink);color:#fff}
.lang-mobile{display:none}
@media(max-width:900px){.lang-switch{display:none}.lang-mobile{display:flex;position:absolute;right:64px;top:20px;gap:2px}.header{position:relative}.menu{z-index:3}}
@media(max-width:560px){
  .header{padding:0 5vw}.brand{gap:8px}.brand strong{font-size:16px}.brand em{font-size:8px}
  .lang-mobile{right:54px;top:18px}.lang-mobile a{font-size:10px;padding:5px 6px}
  .hero h1{font-size:34px;line-height:1.05}.section{padding:58px 5vw}
  .cards article{padding:22px}.gallery figure{min-width:0}.floating-wa{right:14px;bottom:14px;width:56px;height:56px}
}
