:root{--cream:#fff8d9;--paper:#fffcef;--ink:#278b89;--deep:#55c7c0;--tiffany:#55c7c0;--sky:#d8efed;--gold:#c79b58;--rose:#d99b9b;--muted:#5d7773;--line:#e8e1be;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.6}a{color:inherit}img{max-width:100%}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:99}.top-note{background:var(--deep);color:#eaf8f5;text-align:center;padding:.5rem 1rem;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.site-header{position:relative;z-index:20;background:rgba(247,243,234,.96);border-bottom:1px solid rgba(13,83,101,.12)}.nav-shell{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:86px;padding:0 28px}.brand,.footer-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand strong,.footer-brand strong{font-family:var(--serif);font-size:1.22rem}.brand small{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.logo-placeholder{display:grid;place-items:center;width:54px;height:54px;border:1px dashed var(--tiffany);border-radius:50%;color:var(--deep);font-size:.54rem;letter-spacing:.09em;background:#fff}.site-header nav{display:flex;align-items:center;gap:25px}.site-header nav a{text-decoration:none;font-size:.86rem;font-weight:500}.nav-cta{border:1px solid var(--deep);padding:10px 17px;border-radius:99px}.menu-toggle{display:none;background:none;border:0;font:inherit;color:var(--ink)}.hero{max-width:1400px;margin:auto;min-height:660px;display:grid;grid-template-columns:.94fr 1.06fr;align-items:center;padding:54px 5vw 72px;gap:7vw;overflow:hidden}.hero-copy{max-width:600px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:600;color:#3d8d8b;margin:0 0 17px}.hero h1,.section h2,.final-cta h2{font-family:var(--serif);font-weight:500;line-height:1.06;margin:0}.hero h1{font-size:clamp(3rem,5.5vw,5.6rem);letter-spacing:-.03em}.hero h1 em{color:#278b89;font-weight:500}.lead{font-size:1.08rem;color:var(--muted);max-width:540px;margin:28px 0}.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;border-radius:99px;text-decoration:none;font-weight:600;font-size:.88rem;transition:.2s ease}.button:hover{transform:translateY(-2px)}.primary{background:var(--deep);color:#fff}.secondary{border:1px solid #9bb6b3;background:rgba(255,255,255,.45)}.hero-photo{min-height:555px;border-radius:240px 240px 30px 30px;box-shadow:20px 25px 0 var(--sky);position:relative}.photo-placeholder{background:linear-gradient(145deg,#d9ebe7,#f2e4d7);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#52716f;text-align:center;gap:7px}.photo-placeholder:before{content:"";width:34px;height:34px;border-radius:50%;background:var(--tiffany);opacity:.45}.photo-placeholder span,.map-placeholder span{font-size:.63rem;letter-spacing:.2em;font-weight:600}.photo-placeholder small{opacity:.75}.pillars{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:0 auto 70px;background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 30px rgba(18,59,75,.06)}.pillars article{display:flex;gap:18px;padding:29px 31px;border-right:1px solid var(--line)}.pillars article:last-child{border:0}.pillars span{font-family:var(--serif);font-size:1.8rem;color:var(--tiffany)}.pillars h2{font-family:var(--serif);font-size:1.25rem;margin:0 0 4px}.pillars p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.5}.section{padding:100px max(6vw,24px)}.section-heading{max-width:1240px;margin:0 auto 45px;display:flex;align-items:end;justify-content:space-between;gap:40px}.section-heading h2,.story h2,.location h2{font-size:clamp(2.3rem,4vw,3.7rem)}.section-heading>p{max-width:500px;color:var(--muted);margin:0}.product-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{display:block;background:var(--paper);padding:12px 12px 19px;text-decoration:none;border:1px solid transparent;transition:.2s}.product-card:hover{border-color:var(--tiffany);transform:translateY(-4px)}.card-photo{height:180px;margin-bottom:17px}.product-card.featured{grid-row:span 2}.product-card.featured .card-photo{height:423px}.product-card h3{font-family:var(--serif);font-size:1.13rem;line-height:1.25;margin:0 5px 8px}.product-card p{color:var(--muted);font-size:.82rem;margin:0 5px 8px}.card-link{font-size:.73rem;color:#2b8382;margin:0 5px;text-transform:uppercase;letter-spacing:.06em}.products-note{text-align:center;margin:36px 0 0;color:var(--muted)}.products-note a{color:var(--deep);font-weight:600}.services{background:var(--deep);color:#eef8f5;text-align:center}.section-heading.light{text-align:left}.section-heading.light .eyebrow{color:var(--tiffany)}.section-heading.light>p{color:#c9dcdb}.service-grid{max-width:1240px;margin:0 auto 38px;display:grid;grid-template-columns:repeat(4,1fr);text-align:left;border-top:1px solid rgba(255,255,255,.2)}.service-grid article{padding:36px 26px;border-right:1px solid rgba(255,255,255,.2)}.service-grid article:last-child{border:0}.service-grid span{font-size:1.6rem;color:var(--tiffany)}.service-grid h3{font-family:var(--serif);font-size:1.35rem;line-height:1.25}.service-grid p{color:#c9dcdb;font-size:.88rem}.cream{background:var(--cream);color:var(--deep)}.story{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9vw}.story-photo{min-height:540px;border-radius:12px 190px 12px 12px;box-shadow:-18px 18px 0 rgba(85,199,192,.26)}.story-copy p{color:var(--muted)}.story-copy .signature{font-family:var(--serif);color:var(--deep);font-size:1.25rem;font-style:italic;margin-top:30px}.location{background:#e4f1ef;display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:center}.location-copy{max-width:520px;margin-left:auto}.location-copy>p{color:var(--muted)}address{font-style:normal;margin:30px 0;font-size:.96rem}.text-link{font-weight:600;text-decoration:none;font-size:.88rem}.map-placeholder{min-height:430px;background:linear-gradient(45deg,#cadbd5 25%,transparent 25%) 0 0/30px 30px,linear-gradient(-45deg,#d8e6e0 25%,transparent 25%) 0 0/30px 30px,#edf3ef;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--deep);border:8px solid var(--paper);box-shadow:0 15px 30px rgba(13,83,101,.1)}.instagram-handle{color:#298987;font-weight:600;text-decoration:none}.instagram-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.instagram-grid>div{aspect-ratio:1}.reviews{background:var(--paper)}.review-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-grid blockquote{margin:0;padding:30px;background:var(--cream);border-top:3px solid var(--tiffany)}.review-grid blockquote span{color:var(--gold);letter-spacing:.2em}.review-grid p{font-family:var(--serif);font-size:1.08rem}.review-grid cite{color:var(--muted);font-size:.8rem}.final-cta{text-align:center;padding:90px 24px;background:var(--tiffany);color:#0a4655}.final-cta .eyebrow{color:#0a4655}.final-cta h2{font-size:clamp(2.5rem,4vw,4rem);margin-bottom:28px}footer{background:#082f3c;color:#d9e7e6;padding:55px max(6vw,24px) 30px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}footer>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:7px}footer a{text-decoration:none;color:#d9e7e6}footer p{margin:0;color:#a9c1c0}.footer-brand .logo-placeholder{background:transparent;color:#d9e7e6}.footer-brand p{margin:2px 0}footer>small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:25px;color:#89a7a7}.whatsapp-float{position:fixed;right:22px;bottom:22px;background:#25d366;color:#073d2a;padding:13px 18px;border-radius:99px;text-decoration:none;font-weight:700;box-shadow:0 8px 25px rgba(0,0,0,.2);z-index:15}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:none}
@media(max-width:960px){.menu-toggle{display:block;border:1px solid var(--line);padding:8px 13px;border-radius:99px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:22px 28px;flex-direction:column;align-items:stretch;box-shadow:0 15px 25px rgba(0,0,0,.08)}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;gap:50px}.hero-photo{min-height:450px;max-width:650px;width:100%}.pillars{margin-left:24px;margin-right:24px}.product-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article:nth-child(2){border-right:0}.story,.location{grid-template-columns:1fr}.story-copy{order:-1}.location-copy{margin:0}.instagram-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.top-note{font-size:.62rem}.nav-shell{min-height:72px;padding:0 18px}.brand small{display:none}.hero{padding:48px 22px 65px}.hero h1{font-size:3rem}.hero-photo{min-height:360px;border-radius:150px 150px 20px 20px;box-shadow:10px 15px 0 var(--sky)}.button-row .button{width:100%}.pillars{grid-template-columns:1fr}.pillars article{border-right:0;border-bottom:1px solid var(--line)}.section{padding:72px 22px}.section-heading{display:block}.section-heading>p,.instagram-handle{display:block;margin-top:15px}.product-grid{gap:10px}.product-card{padding:8px 8px 15px}.card-photo,.product-card.featured .card-photo{height:180px}.product-card.featured{grid-row:auto}.product-card h3{font-size:.95rem}.product-card p{display:none}.service-grid,.review-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.story-photo{min-height:400px}.map-placeholder{min-height:330px}.instagram-grid{gap:7px}footer{grid-template-columns:1fr}.whatsapp-float{font-size:.8rem;right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

.map-frame{min-height:430px;border:8px solid var(--paper);box-shadow:0 15px 30px rgba(13,83,101,.1);overflow:hidden;background:var(--paper)}
.map-frame iframe{display:block;width:100%;height:430px;border:0}
@media(max-width:640px){.map-frame{min-height:330px}.map-frame iframe{height:330px}}

.instagram-post{position:relative;display:block;aspect-ratio:2/3;overflow:hidden;background:var(--sky);text-decoration:none;border-radius:4px;box-shadow:0 8px 24px rgba(18,59,75,.08)}
.instagram-post img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.instagram-post span{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:99px;background:rgba(255,252,239,.94);color:var(--ink);font-size:.72rem;font-weight:700;text-align:center;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}
.instagram-post:hover img,.instagram-post:focus-visible img{transform:scale(1.025)}
.instagram-post:hover span,.instagram-post:focus-visible span{opacity:1;transform:none}
@media(max-width:640px){.instagram-post span{opacity:1;transform:none;font-size:.64rem;padding:7px 9px;left:8px;right:8px;bottom:8px}}

.google-rating{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3;text-align:right}
.google-rating strong{font-family:var(--serif);font-size:1.45rem;color:var(--ink)}
.google-rating strong span{color:var(--gold);font-family:var(--sans);font-size:1rem;letter-spacing:.08em}
.google-rating small{color:var(--muted);font-size:.78rem;margin-top:4px}
@media(max-width:640px){.google-rating{align-items:flex-start;text-align:left}}

.story-photo{margin:0;overflow:hidden;background:var(--sky)}
.story-photo img{display:block;width:100%;height:100%;min-height:540px;object-fit:cover;object-position:center}
@media(max-width:640px){.story-photo img{min-height:400px}}

/* Leitura e acessibilidade: textos menores usam um verde-azulado mais escuro. */
:root{--ink:#155f64}
body{color:var(--ink)}
.hero h1,.section h2,.story h2,.location h2,.final-cta h2{color:#278b89}
.eyebrow{color:#236f70}
.hero h1 em{color:#278b89}
.instagram-handle,.card-link{color:#155f64}
a:focus-visible,button:focus-visible{outline:3px solid #155f64;outline-offset:4px}

/* As artes verticais do Instagram ficam grandes o suficiente para leitura. */
.instagram-grid{max-width:900px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.reviews-link{max-width:1240px;margin:26px auto 0;text-align:right}
@media(max-width:640px){.instagram-grid{grid-template-columns:1fr;max-width:520px}.reviews-link{text-align:left}}
@media(max-width:380px){.product-grid{grid-template-columns:1fr}.card-photo,.product-card.featured .card-photo{height:310px}}

/* Paleta ajustada: amarelo suave + turquesa + texto no tom de “iluminar” */
.site-header{background:rgba(255,248,217,.97);border-bottom-color:rgba(39,139,137,.18)}
.top-note,.services,footer{background:var(--deep);color:#0a4655}
.top-note{color:#0a4655}
.logo-placeholder{background:var(--paper)}
.primary{background:var(--deep);color:#0a4655}
.section-heading.light .eyebrow,.service-grid span{color:#0a4655}
.section-heading.light>p,.service-grid p{color:#175f67}
.service-grid{border-top-color:rgba(10,70,85,.2)}
.service-grid article{border-right-color:rgba(10,70,85,.2)}
.location{background:#fff3be}
.reviews{background:var(--paper)}
.final-cta{background:var(--deep);color:#278b89}
.final-cta .eyebrow{color:#278b89}
footer a{color:#0a4655}
footer p{color:#176773}
.footer-brand .logo-placeholder{background:var(--paper);color:#278b89}
footer>small{border-top-color:rgba(10,70,85,.18);color:#176773}

/* Foto real da fachada */
.hero-photo{overflow:hidden;margin:0;background:var(--sky)}
.hero-photo img{display:block;width:100%;height:555px;object-fit:cover;object-position:center center}
.product-photo{overflow:hidden;background:var(--cream)}
.product-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .35s ease}
.product-card:hover .product-photo img{transform:scale(1.025)}
.product-card{background:rgba(216,239,237,.62);border-color:rgba(85,199,192,.22);box-shadow:0 10px 28px rgba(39,139,137,.07);backdrop-filter:blur(10px)}
.product-card:hover{background:rgba(216,239,237,.82);border-color:rgba(39,139,137,.5);box-shadow:0 16px 32px rgba(39,139,137,.12)}
.product-card .photo-placeholder{background:linear-gradient(145deg,rgba(191,228,232,.72),rgba(255,255,255,.46))}
.product-photo{background:rgba(191,228,232,.42)}
.nav-shell{min-height:126px}
.brand{gap:16px}
.brand-logo{display:block;width:220px;height:112px;object-fit:contain;flex:0 0 auto}
.brand strong{font-size:1.42rem}
.brand small{max-width:310px;font-size:.7rem;line-height:1.35;letter-spacing:.09em;margin-top:3px}
.footer-brand{gap:18px}
.footer-logo{width:245px;height:136px;filter:drop-shadow(0 4px 10px rgba(10,70,85,.12))}
.footer-brand strong{font-size:1.45rem}
@media(max-width:960px){.hero-photo img{height:450px}}
@media(max-width:640px){.hero-photo img{height:360px}.nav-shell{min-height:88px}.brand{gap:9px}.brand-logo{width:170px;height:88px}.brand strong{font-size:1.08rem}.brand small{display:none}.footer-logo{width:215px;height:120px}}
