:root{
  --mint:#6fd0bf;
  --mint-dark:#2f9686;
  --mint-soft:#eef9f6;
  --mint-soft-2:#fbfffe;
  --white:#ffffff;
  --offwhite:#ffffff;
  --line:#e6efec;
  --dark:#173f42;
  --dark-2:#34585c;
  --shadow:0 22px 60px rgba(23,63,66,.08);
  --shadow-soft:0 12px 32px rgba(23,63,66,.06);
  --radius:30px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Nunito",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--dark);background:var(--white);line-height:1.55;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,p{margin-top:0}
.skip-link{position:absolute;left:-999px;top:0;background:var(--dark);color:#fff;padding:.75rem 1rem;z-index:9999}
.skip-link:focus{left:1rem;top:1rem}
.site-header{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem clamp(1rem,4vw,3rem);background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(111,208,191,.24)}
.brand img{width:118px;height:auto}
.nav{display:flex;align-items:center;gap:1.2rem;font-weight:800;font-size:.95rem}
.nav a{text-decoration:none;opacity:.9;padding:.25rem 0}
.nav a:hover{opacity:1;color:var(--mint-dark)}
.nav a:focus-visible{outline:2px solid var(--mint);outline-offset:4px;border-radius:8px}
.nav-cta{padding:.7rem 1rem;background:var(--mint);color:var(--dark);border-radius:999px;opacity:1!important;box-shadow:0 12px 28px rgba(47,160,141,.18)}
.hero{display:grid;grid-template-columns:1fr 1.02fr;gap:clamp(2rem,5vw,5rem);align-items:center;min-height:calc(100vh - 82px);padding:clamp(2rem,5vw,5.5rem) clamp(1rem,5vw,5.5rem);position:relative}
.hero:before{content:"";position:absolute;width:42vw;height:42vw;max-width:540px;max-height:540px;border-radius:999px;background:radial-gradient(circle, rgba(111,208,191,.18) 0%, rgba(111,208,191,0) 72%);top:5%;right:-12%;z-index:-1}
.hero:after{content:"";position:absolute;left:-4%;bottom:4%;width:220px;height:220px;border-radius:34px;background:rgba(111,208,191,.08);transform:rotate(12deg);z-index:-1}
.eyebrow{margin:0 0 .75rem;color:var(--mint-dark);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
h1{font-size:clamp(3rem,8vw,6.4rem);line-height:.94;letter-spacing:-.055em;margin-bottom:1.2rem}
h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;letter-spacing:-.04em;margin-bottom:1rem}
h3{font-size:1.35rem;line-height:1.1;letter-spacing:-.02em;margin-bottom:.7rem}
.hero-text{font-size:clamp(1.2rem,2.2vw,1.65rem);font-weight:900;color:var(--dark-2);margin-bottom:.65rem}
.hero-sub{font-size:1.06rem;max-width:620px;color:rgba(23,63,66,.77)}
.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.7rem}
.hero-meta{margin-top:1rem}
.location-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1rem;border-radius:999px;background:var(--mint-soft);text-decoration:none;font-weight:900;font-size:.92rem;color:var(--dark-2);border:1px solid rgba(111,208,191,.4)}
.location-chip:hover{background:#e8f7f2}
.hero-points{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.2rem 0 0;padding:0;list-style:none}
.hero-points li{padding:.55rem .85rem;border-radius:999px;background:#f5fbf9;font-size:.92rem;font-weight:800;color:var(--dark-2);border:1px solid rgba(111,208,191,.22)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.9rem 1.25rem;border-radius:999px;font-weight:900;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--mint);color:var(--dark);box-shadow:0 14px 30px rgba(47,160,141,.20)}
.btn-secondary{border:1px solid rgba(23,63,66,.12);background:var(--white)}
.btn-small{width:100%;background:var(--dark);color:var(--white);margin-top:auto}
.btn-instagram{background:linear-gradient(135deg,#ffda69,#ff6b8b,#9146ff);color:white}
.hero-visual{position:relative;display:grid;gap:1rem;align-items:start}
.hero-logo-card{max-width:320px;padding:1.2rem 1.2rem 1.05rem;border-radius:28px;background:linear-gradient(180deg,#ffffff 0%, #f7fffc 100%);border:1px solid rgba(111,208,191,.38);box-shadow:var(--shadow-soft);position:absolute;left:-2rem;top:-1rem;z-index:3}
.hero-logo-card img{width:200px;height:auto;margin-bottom:.75rem}
.hero-logo-card p{margin:0;color:rgba(23,63,66,.76);font-size:.95rem;font-weight:800;line-height:1.4}
.hero-media{border-radius:34px;overflow:hidden;min-height:600px;box-shadow:var(--shadow);border:1px solid rgba(111,208,191,.18);margin-left:4rem;background:var(--white)}
.hero-media img{width:100%;height:100%;min-height:600px;object-fit:cover;object-position:center center}
.section{padding:clamp(3.5rem,7vw,7rem) clamp(1rem,5vw,5.5rem)}
.section-heading{max-width:930px;margin-bottom:2rem}
.section-heading.center{text-align:center;margin-inline:auto}
.section-heading.center p:not(.eyebrow){max-width:700px;margin-inline:auto;color:rgba(23,63,66,.72)}
.concept{display:grid;grid-template-columns:.9fr 1fr;gap:2rem;align-items:start;background:var(--white)}
.concept>p{font-size:clamp(1.12rem,1.95vw,1.45rem);color:rgba(23,63,66,.8)}
.offers{background:linear-gradient(180deg,#ffffff 0%, #fbfffe 100%)}
.cards,.formula-grid,.why-grid{display:grid;gap:1rem}
.cards{grid-template-columns:repeat(4,1fr)}
.card,.formula-card,.quote-card,.location-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.65rem;box-shadow:var(--shadow-soft)}
.card-icon{display:inline-grid;place-items:center;width:92px;height:92px;background:var(--mint-soft);border-radius:24px;margin-bottom:1.15rem;color:var(--mint-dark)}
.card-icon svg{width:38px;height:38px}
.formulas{background:linear-gradient(180deg,#ffffff 0%, #f8fcfb 100%)}
.formula-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}
.formula-card{display:flex;flex-direction:column;min-height:100%}
.formula-card.featured{border:2px solid var(--mint);transform:translateY(-8px);background:linear-gradient(180deg,#ffffff 0%, #f7fffc 100%)}
.formula-label{display:inline-flex;width:max-content;padding:.35rem .75rem;border-radius:999px;background:rgba(111,208,191,.18);color:var(--mint-dark);font-weight:900;margin-bottom:1rem}
.formula-note{margin:-.2rem 0 1rem;color:rgba(23,63,66,.70);font-weight:800;font-size:.96rem}.formula-card ul{margin:0 0 1.5rem;padding-left:1.1rem}
.gallery-section{background:linear-gradient(180deg,#ffffff 0%, #fcfffe 100%)}
.gallery{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:1rem}
.gallery-item{margin:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-soft);background:var(--white)}
.gallery-item img{width:100%;height:100%;object-fit:cover}
.gallery-item.tall{grid-row:span 2}
.gallery-item.wide{grid-column:span 2}
.instagram{background:linear-gradient(180deg,#ffffff 0%, #f8fcfb 100%)}
.instagram-card{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:.95fr 1.05fr;overflow:hidden;border-radius:34px;border:1px solid rgba(111,208,191,.36);background:linear-gradient(180deg,#ffffff 0%, #fbfffe 100%);box-shadow:var(--shadow)}
.instagram-copy{padding:clamp(2rem,5vw,4.5rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.instagram-copy .strong{font-weight:900}
.handle{color:var(--mint-dark);font-weight:900;font-size:1.1rem}
.instagram-media img{width:100%;height:100%;min-height:430px;object-fit:cover}
.location-section{background:var(--white)}
.location-card{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:1.15fr auto;gap:2rem;align-items:center}
.testimonial{background:linear-gradient(180deg,#ffffff 0%, #f8fbfa 100%)}
.quote-card{max-width:920px;margin:0 auto;text-align:center}
blockquote{margin:0;font-size:clamp(1.4rem,3vw,2.25rem);line-height:1.15;font-weight:900;letter-spacing:-.03em}
.quote-author{margin:1rem 0 0;color:rgba(23,63,66,.7)}
.final-cta{text-align:center;background:linear-gradient(135deg,#24494d 0%, #173f42 100%);color:var(--white)}
.final-cta p{max-width:760px;margin-left:auto;margin-right:auto;color:rgba(255,255,255,.82)}
.final-cta .btn-primary{color:var(--dark)}
.micro{font-size:.88rem;color:rgba(23,63,66,.66);margin-top:1rem}
.final-cta .micro{color:rgba(255,255,255,.72)}
.footer{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;padding:2rem clamp(1rem,5vw,5.5rem);background:#ffffff;border-top:1px solid rgba(111,208,191,.24)}
.footer img{width:110px}
.footer p{margin:.1rem 0}
.footer a{text-decoration:none;font-weight:800}
.footer a:hover{color:var(--mint-dark)}
.floating-whatsapp{position:fixed;right:18px;bottom:18px;z-index:50;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1.05rem;border-radius:999px;background:#25D366;color:#062d18;font-weight:900;text-decoration:none;box-shadow:0 16px 42px rgba(0,0,0,.18)}
@media(max-width:1120px){
  .hero-logo-card{position:relative;left:auto;top:auto;max-width:280px}
  .hero-media{margin-left:0}
  .location-card{grid-template-columns:1fr}
}
@media(max-width:1040px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .formula-grid{grid-template-columns:1fr}
  .formula-card.featured{transform:none}
  .gallery{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:840px){
  .hero{grid-template-columns:1fr;padding-top:1.25rem;gap:1.45rem;min-height:auto}
  .hero-visual{order:-1;display:block}
  .hero-logo-card{position:relative;left:auto;top:auto;width:100%;max-width:none;margin:0 auto 1.1rem;padding:1.45rem 1.2rem;text-align:center;border-radius:30px}
  .hero-logo-card img{width:min(245px,70vw);margin:0 auto .9rem}
  .hero-logo-card p{font-size:1rem;line-height:1.42;max-width:420px;margin:0 auto}
  .hero-media{margin-left:0;width:100%;min-height:0;border-radius:30px;border:1px solid rgba(111,208,191,.18)}
  .hero-media img{min-height:0;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center center}
  .hero-copy{padding-top:.4rem}
  .concept{grid-template-columns:1fr}
}
@media(max-width:780px){
  .site-header{position:relative;align-items:flex-start}
  .brand img{width:92px}
  .nav{font-size:.82rem;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}
  .nav a:not(.nav-cta){display:none}
  .hero-media,.hero-media img{min-height:360px}
  h1{font-size:clamp(2.75rem,13.2vw,4.35rem);line-height:.98;margin-bottom:1rem}
  .cards{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr;grid-auto-rows:280px}
  .gallery-item.tall,.gallery-item.wide{grid-column:auto;grid-row:auto}
  .instagram-card{grid-template-columns:1fr}
  .instagram-media{order:-1}
  .instagram-media img{min-height:320px}
  .footer{grid-template-columns:1fr;text-align:center}
  .footer img{margin-inline:auto}
  .floating-whatsapp{right:14px;bottom:14px;font-size:.9rem;min-height:48px;padding:0 .95rem}
}
@media(max-width:420px){
  .section{padding-left:1rem;padding-right:1rem}
  .hero-actions .btn{width:100%}
  .hero-points li{width:100%;text-align:center}
  .hero-logo-card img{width:160px}
  .floating-whatsapp{font-size:.88rem;min-height:48px}
  .location-chip{font-size:.86rem}
}
