/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5wDD-hdM8Efs.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5wDD-jNM8Efs.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5wDD-h9M8Efs.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3smX5slCNuHLi8bLeY9MK7whWMhyjYrGFEsdtdc62E6zd5wDD-htM8Efs.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-italic-500-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_s06KnnOiss4.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_s06KnDOiss4.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_s06KnvOiss4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3umX5slCNuHLi8bLeY9MK7whWMhyjypVO7abI26QOD_s06KnrOiss4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-normal-400-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/dm-sans-variable-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/dmsans/v17/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/dm-sans-variable-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ─────────────────────────── */


body{margin:0;background:#F6F2EC;color:#43362E;font-family:'DM Sans',sans-serif}
*{box-sizing:border-box}h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:500;margin:0;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}ul{list-style:none;margin:0;padding:0}
html{scroll-behavior:smooth}
.wrap{max-width:1240px;margin:0 auto;padding-inline:40px}
.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#7A5E37;margin:0 0 20px}
header{position:sticky;top:0;z-index:5;background:rgba(246,242,236,.9);backdrop-filter:blur(10px);border-bottom:1px solid #E4DACD}
.nav.wrap{max-width:none;width:100%;padding-inline:clamp(22px,1.9vw,32px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:clamp(18px,2vw,36px);height:88px}
.brand{display:block;flex:0 0 210px;width:210px;height:86px;overflow:hidden}
.brand img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;mix-blend-mode:multiply}
.nav nav{display:flex;align-items:center;gap:clamp(22px,3vw,42px);font-size:13px}
.nav nav a{position:relative;padding:6px 0}.nav nav a:not(.nav-booking){font-size:13px;letter-spacing:.15em;text-transform:uppercase}
.nav nav a:after{content:'';position:absolute;left:0;bottom:0;height:1px;width:0;background:#7A5E37;transition:width .4s}
.nav nav a:hover:after{width:100%}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center;padding-block:90px 110px}
.hero h1{font-size:clamp(48px,7vw,92px);line-height:1;margin-bottom:28px}.hero h1 i{color:#7A5E37}
.hero p.lead{font-size:18px;line-height:1.7;max-width:480px;color:#5E4F45;margin:0 0 40px}
.stage{position:relative;aspect-ratio:4/5;background:#D9CCBC;border-radius:220px 220px 16px 16px;display:grid;place-items:center;overflow:hidden}
.stage .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.stage .badge{position:absolute;left:26px;bottom:26px;width:104px;border-radius:50%;z-index:2;animation:float 7s ease-in-out infinite}@keyframes zoom{to{transform:scale(1.07)}}.fit{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}.ic{width:56px;height:56px;display:block;margin-bottom:18px}
.stage:before{content:'';position:absolute;inset:18px;border:1px solid rgba(246,242,236,.65);border-radius:204px 204px 8px 8px;z-index:1}
.stage small{position:absolute;bottom:26px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#5E4F45}
.ring{position:absolute;width:76%;aspect-ratio:1;border:1px dashed #A8885A;border-radius:50%;animation:spin 40s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{50%{transform:translateY(-14px)}}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.rv{animation:rise .7s cubic-bezier(.16,1,.3,1) both}
.hero-art.rv{animation-delay:.08s}
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center;padding-block:110px}
.about h2,.exp h2,.cta h2,.sh h2{font-size:clamp(38px,5vw,64px);line-height:1.08}
.about p{font-size:17px;line-height:1.8;color:#5E4F45;max-width:520px}
.ph{background:#E3D8CA;display:grid;place-items:center;position:relative;overflow:hidden;transition:background .5s}
.ph b{font-weight:400;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#6B5A4E}
.exp{background-color:#43362E;background-image:url("../images/galeria-esmalte-dourado.jpg");background-size:cover;background-position:center;background-blend-mode:multiply;color:#F6F2EC;padding:120px 0;margin-top:60px}
.exp .eyebrow{color:#CDB58A}.exp h2{max-width:760px}.exp h2 i{color:#CDB58A}
.pill{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:70px}
.pill div{padding:36px 30px;border:1px solid rgba(246,242,236,.2);border-radius:8px;transition:transform .5s,border-color .5s}
.pill h3{font-size:30px;margin-bottom:10px}.pill p{margin:0;line-height:1.7;color:#D9CCBC;font-size:15px}
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;gap:16px;padding:110px 0 30px}
.gal .ph{border-radius:8px}.gal .ph:hover{transform:scale(.98)}
.note{font-size:13px;color:#6B5A4E;padding-bottom:100px}
.cta{background:#E2C7A6 url("../images/sobre-cafe.jpg") left center/cover no-repeat;padding:130px 0}.cta .in{max-width:1240px;margin:0 auto;padding:0 40px;display:flex;justify-content:flex-end}.cta .box{width:50%}
.cta p{max-width:480px;margin:22px 0 36px;line-height:1.7;color:#43362E}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-block:110px}
.contact h2{font-size:48px;margin-bottom:28px}.contact p{line-height:1.7;margin:0 0 6px}
.hrs li{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #E4DACD;font-size:15px}
.hrs .on{color:#7A5E37;font-weight:500}
.row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
footer{background:#EAE1D5;padding:70px 0 30px;text-align:center}
footer img{height:66px}footer nav{display:flex;gap:28px;justify-content:center;margin:28px 0;font-size:14px;flex-wrap:wrap}
footer .q{font-family:'Cormorant Garamond',serif;font-size:26px;font-style:italic;color:#7A5E37}
footer small{display:block;margin-top:28px;color:#6B5A4E}
@media(max-width:820px){.cta{background-size:auto 240px;background-position:left top;padding:270px 0 80px}.cta .box{width:100%}.cta .in{padding:0 22px}.nav nav{display:none}.hero,.about,.cat,.contact{grid-template-columns:1fr;gap:36px}.pill{grid-template-columns:1fr}.gal{grid-template-columns:repeat(2,1fr)}.cat:nth-child(even) .ph{order:0}.wrap{padding-inline:22px}.hero{padding-block:50px}.about,.contact{padding-block:72px}}

.skip-link{position:fixed;top:12px;left:12px;z-index:20;padding:12px 16px;background:#43362E;color:#F6F2EC;border-radius:6px;transform:translateY(-160%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #43362E;outline-offset:4px}
.exp a:focus-visible{outline-color:#F6F2EC}
.menu-toggle{display:none}
.nav nav .nav-booking{padding:16px clamp(22px,2vw,30px);white-space:nowrap;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.nav nav .nav-booking:after{display:none}
.gallery-title{font-size:clamp(34px,4.5vw,52px);line-height:1.08;padding-top:92px}
section[id]{scroll-margin-top:100px}
.gal{padding-top:28px}
@media(max-width:820px){
  .nav{height:72px;position:relative}
  .brand{width:150px;height:62px;flex-basis:150px}
  .nav .brand img{height:100%}
  .menu-toggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid #B9A794;border-radius:999px;background:transparent;color:#43362E;font:500 14px 'DM Sans',sans-serif;cursor:pointer}
  .menu-icon{display:grid;gap:4px;width:16px}
  .menu-icon span{display:block;height:1.5px;background:currentColor;transition:transform .2s,opacity .2s}
  .menu-toggle[aria-expanded="true"] .menu-icon span:first-child{transform:translateY(5.5px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] .menu-icon span:last-child{transform:translateY(-5.5px) rotate(-45deg)}
  .nav nav{position:absolute;top:100%;left:-22px;right:-22px;z-index:8;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 18px;background:#F6F2EC;border-bottom:1px solid #E4DACD;box-shadow:0 14px 24px rgba(67,54,46,.12)}
  .nav nav.is-open{display:flex}
  .nav nav a:not(.nav-booking){display:flex;align-items:center;min-height:44px;padding:8px 0;border-bottom:1px solid #E4DACD}
  .nav nav .nav-booking{display:flex;justify-content:center;align-items:center;min-height:44px;margin-top:12px}
  .nav nav a:after{display:none}
  .gallery-title{padding-top:64px}
  section[id]{scroll-margin-top:84px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}
@media(min-width:821px) and (max-width:1100px){
  .brand{width:170px;height:72px;flex-basis:170px}
  .nav nav{gap:clamp(14px,2vw,22px)}
  .nav nav a:not(.nav-booking){font-size:11px;letter-spacing:.1em}
  .nav nav .nav-booking{padding:13px 16px;font-size:11px;letter-spacing:.08em}
}

/* Header logo: transparent PNG, blends with the page */
.brand{flex:0 0 auto;width:auto;height:auto;overflow:visible}
.nav .brand img{width:auto;height:58px;object-fit:contain;mix-blend-mode:normal}

/* Hero art: arch photo + rotating seal + opening hours */
.hero-art{position:relative}
.seal{position:absolute;top:13%;right:-20px;width:150px;aspect-ratio:1;border-radius:50%;background:#F6F2EC;box-shadow:0 10px 30px rgba(67,54,46,.12);display:grid;place-items:center;z-index:3}
.seal-ring{position:absolute;inset:0;width:100%;height:100%;animation:spin 36s linear infinite}
.seal-ring text{font:500 12.5px 'DM Sans',sans-serif;letter-spacing:.32em;fill:#7A5E37}
.seal img{width:58%;border-radius:50%}
.hours{position:absolute;left:-30px;bottom:12%;z-index:3;padding:22px 28px;background:#F6F2EC;border:1px solid #E4DACD;box-shadow:0 10px 30px rgba(67,54,46,.10)}
.hours span{display:block;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#7A5E37;margin-bottom:8px}
.hours strong{display:block;font:400 24px 'Cormorant Garamond',serif;color:#43362E}

@media(max-width:820px){
  .nav .brand img{height:46px}
  .seal{width:110px;right:8px;top:8%}
  .seal-ring text{font-size:13px}
  .hours{left:12px;bottom:18px;padding:16px 20px}
  .hours strong{font-size:20px}
}
@media(min-width:821px) and (max-width:1100px){
  .nav .brand img{height:50px}
  .seal{width:124px;right:-12px}
}
.hero .eyebrow{letter-spacing:.32em;color:#7A5E37;margin-bottom:28px}

/* Footer logo: same transparent logo as the header */
footer img{height:72px;width:auto;display:block;margin:0 auto}

/* Contact: small labels above address, phone and hours */
.contact .info-item{margin-bottom:22px}
.contact .info-item .eyebrow{color:#7A5E37;margin:0 0 6px}

/* Safety: nothing decorative may push the page sideways */
html,body{overflow-x:clip}
.hero{overflow-x:clip;overflow-y:visible}


/* ================================================================
   Refino: botões, serviços + "Monte seu ritual", estados e detalhes
   ================================================================ */

/* Browser surfaces in the salon palette */
::selection{background:#E2C7A6;color:#2F251F}
html{accent-color:#7A5E37;scrollbar-color:#B9A794 #F6F2EC}
.hrs li span:last-child{font-variant-numeric:tabular-nums}

/* Buttons: one system, clear hover / press / focus / unavailable */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;border:1px solid transparent;border-radius:999px;font:500 15px/1.1 'DM Sans',sans-serif;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,box-shadow .18s ease-out,transform .12s ease-out}
.btn .ico{width:18px;height:18px;flex:none}
.b1{background:#43362E;color:#F6F2EC;box-shadow:0 1px 2px rgba(47,37,31,.18),0 8px 18px -10px rgba(47,37,31,.55)}
.b1:hover{background:#2F251F;box-shadow:0 1px 2px rgba(47,37,31,.2),0 12px 24px -12px rgba(47,37,31,.6)}
.b2{background:transparent;border-color:#B9A794;color:#43362E}
.b2:hover{background:#EDE5DA;border-color:#7A5E37}
.b3{min-height:44px;padding:0 18px;background:transparent;color:#5E4F45;text-decoration:underline;text-decoration-color:#B9A794;text-underline-offset:4px}
.b3:hover{color:#43362E;text-decoration-color:#43362E}
.btn:active{transform:translateY(1px) scale(.985)}
.b1:active{box-shadow:0 1px 2px rgba(47,37,31,.2)}
.btn:focus-visible{outline:2px solid #43362E;outline-offset:3px}
.btn[aria-disabled="true"]{background:#E4DACD;border-color:#E4DACD;color:#6B5A4E;box-shadow:none;cursor:not-allowed}
.btn[aria-disabled="true"]:hover{background:#E4DACD}
.btn[aria-disabled="true"]:active{transform:none}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.row .btn{flex:0 0 auto}

/* Header booking button */
.nav nav .nav-booking{min-height:46px;padding:0 22px;letter-spacing:.08em}
.nav-cta-mobile{display:none}
@media(max-width:1100px){.wide-only{display:none}}
@media(max-width:820px){
  .nav-cta-mobile{display:inline-flex;min-height:44px;padding:0 16px;font-size:14px;margin-left:auto}
  .nav{gap:10px}
  .nav nav .nav-booking{display:none}
}

/* Text links (address, phone) look like links */
.text-link{text-decoration:underline;text-decoration-color:#B9A794;text-decoration-thickness:1px;text-underline-offset:4px;transition:color .18s,text-decoration-color .18s}
.text-link:hover{color:#7A5E37;text-decoration-color:#7A5E37}
footer nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
footer nav a:hover{color:#7A5E37}

/* Calm, non-interactive cards stay still */
.pill div{transition:none}

/* CTA band heading wraps evenly */
.cta h2{text-wrap:balance;max-width:16ch}

/* ---------- Serviços + Monte seu ritual (uma lista só) ---------- */
.services{padding-block:110px 90px;border-top:1px solid #E4DACD}
.svc-head{display:grid;grid-template-columns:1fr 1fr;gap:24px 80px;align-items:end;margin-bottom:48px}
.svc-head h2{font-size:clamp(38px,5vw,64px);line-height:1.05}
.svc-head p{margin:0;max-width:440px;font-size:17px;line-height:1.7;color:#5E4F45}
.svc-cat{display:grid;grid-template-columns:minmax(220px,.75fr) 1.6fr;gap:48px;align-items:center;padding-block:32px;border-top:1px solid #E4DACD}
.svc-cat:last-child{border-bottom:1px solid #E4DACD}
.svc-media{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#E3D8CA}
.svc-media img{display:block;width:100%;height:100%;object-fit:cover}
.svc-body h3{font-size:clamp(30px,3.2vw,40px);line-height:1.1;margin-bottom:6px}
.svc-body p{margin:0 0 18px;color:#5E4F45;line-height:1.6}
.img-note{margin:18px 0 0;font-size:13px;color:#6B5A4E}

/* Service chips: toggle buttons */
.rt-chips{display:flex;flex-wrap:wrap;gap:10px}
.rt-chip{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px 0 16px;border:1px solid #CDBDA8;border-radius:999px;background:#F6F2EC;color:#43362E;font:400 15px 'DM Sans',sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,transform .12s ease-out}
.rt-chip:before{content:"";flex:none;width:12px;height:12px;color:#7A5E37;background:linear-gradient(currentColor,currentColor) center/100% 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 100% no-repeat}
.rt-chip:hover{background:#EDE5DA;border-color:#7A5E37}
.rt-chip:active{transform:scale(.97)}
.rt-chip:focus-visible{outline:2px solid #43362E;outline-offset:3px}
.rt-chip[aria-pressed="true"]{background:#43362E;border-color:#43362E;color:#F6F2EC}
.rt-chip[aria-pressed="true"]:before{width:11px;height:6px;background:none;border-left:1.75px solid #CDB58A;border-bottom:1.75px solid #CDB58A;transform:translateY(-2px) rotate(-45deg)}
.rt-chip[aria-pressed="true"]:hover{background:#2F251F}

/* Ritual bar: sits at the end of the list; sticks to the bottom once something is chosen */
.rt-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:16px 16px 16px 26px;background:#EAE1D5;border:1px solid #E4DACD;border-radius:16px;z-index:4}
.rt-bar.is-active{position:sticky;bottom:16px;background:#F6F2EC;border-color:#CDB58A;box-shadow:0 18px 40px -18px rgba(47,37,31,.45);animation:bar-in .28s cubic-bezier(.16,1,.3,1)}
.rt-bar.is-warning .rt-list{color:#8A3B2A}
@keyframes bar-in{from{transform:translateY(24px)}to{transform:none}}
.rt-summary{display:grid;gap:4px;min-width:0}
.rt-count{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#7A5E37}
.rt-list{font:500 20px/1.3 'Cormorant Garamond',serif;color:#43362E}
.rt-actions{display:flex;align-items:center;gap:6px;flex:none}
.rt-send{white-space:nowrap}

@media(max-width:820px){
  .services{padding-block:72px 64px}
  .svc-head{grid-template-columns:1fr;margin-bottom:28px}
  .svc-cat{grid-template-columns:1fr;gap:18px;padding-block:28px}
  .svc-media{aspect-ratio:16/9}
  .rt-chip{font-size:14px}
  .rt-bar{flex-direction:column;align-items:stretch;gap:12px;padding:14px}
  .rt-bar.is-active{bottom:10px}
  .rt-list{font-size:18px}
  .rt-actions{justify-content:space-between}
  .rt-send{flex:1}
}
@media(prefers-reduced-motion:reduce){
  .seal-ring{animation:none}
}
[hidden]{display:none!important}
.contact{grid-template-columns:1.15fr .85fr}
@media(max-width:820px){.contact{grid-template-columns:1fr}}
@media(max-width:820px){.nav nav{left:0;right:0;padding:8px 22px 18px}}
@media(max-width:820px){.about .ph{aspect-ratio:4/3!important}}

/* ---------- Escolha seu dia ---------- */
.agenda{padding-block:110px}
.ag-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px 80px;align-items:start}
.ag-intro h2{font-size:clamp(38px,5vw,64px);line-height:1.05;margin-bottom:20px}
.ag-intro p{margin:0;max-width:400px;font-size:17px;line-height:1.7;color:#5E4F45}
.ag-status{display:inline-flex;align-items:center;gap:10px;margin-top:28px!important;padding:10px 16px;border:1px solid #E4DACD;border-radius:999px;font-size:14px!important;line-height:1.3!important;color:#43362E!important}
.ag-dot{width:8px;height:8px;border-radius:50%;background:#B9A794;flex:none}
.ag-status.is-open .ag-dot{background:#5E7A4E;box-shadow:0 0 0 4px rgba(94,122,78,.16)}

.ag-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:96px;padding:10px 4px;border:1px solid #CDBDA8;border-radius:14px;background:#F6F2EC;color:#43362E;font-family:'DM Sans',sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,transform .12s ease-out}
.day-wd{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#6B5A4E}
.day-num{font:500 30px/1.1 'Cormorant Garamond',serif;font-variant-numeric:lining-nums;min-height:1.1em}
.day-tag{font-size:11px;color:#7A5E37;min-height:1.3em}
.day:hover:not(:disabled){background:#EDE5DA;border-color:#7A5E37}
.day:active:not(:disabled){transform:scale(.97)}
.day:focus-visible,.period:focus-visible{outline:2px solid #43362E;outline-offset:3px}
.day[aria-pressed="true"]{background:#43362E;border-color:#43362E;color:#F6F2EC}
.day[aria-pressed="true"] .day-wd,.day[aria-pressed="true"] .day-tag{color:#E2C7A6}
.day:disabled{background:transparent;border-style:dashed;border-color:#DDD2C4;color:#857869;cursor:not-allowed}
.day:disabled .day-wd,.day:disabled .day-tag{color:#857869}
.day.is-today:not(:disabled):not([aria-pressed="true"]){border-color:#7A5E37}

.ag-periods{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.period{min-height:52px;border:1px solid #CDBDA8;border-radius:14px;background:#F6F2EC;color:#43362E;font:500 15px 'DM Sans',sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,transform .12s ease-out}
.period:hover:not(:disabled){background:#EDE5DA;border-color:#7A5E37}
.period:active:not(:disabled){transform:scale(.98)}
.period[aria-pressed="true"]{background:#43362E;border-color:#43362E;color:#F6F2EC}
.period:disabled{background:transparent;border-style:dashed;border-color:#DDD2C4;color:#857869;cursor:not-allowed}

.ag-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:16px 16px 16px 26px;background:#EAE1D5;border:1px solid #E4DACD;border-radius:16px;transition:background-color .2s,border-color .2s}
.ag-bar.is-active{background:#F6F2EC;border-color:#CDB58A;box-shadow:0 18px 40px -22px rgba(47,37,31,.4)}
.ag-bar.is-warning .ag-pick{color:#8A3B2A}
.ag-summary{display:grid;gap:4px;min-width:0}
.ag-pick{font:500 20px/1.3 'Cormorant Garamond',serif;color:#43362E}
.ag-services{font-size:13px;line-height:1.4;color:#6B5A4E}
.ag-send{white-space:nowrap;flex:none}

@media(max-width:820px){
  .agenda{padding-block:72px}
  .ag-grid{grid-template-columns:1fr;gap:28px}
  .ag-days{gap:5px}
  .day{min-height:78px;border-radius:12px;padding:8px 2px}
  .day-wd{font-size:11px;letter-spacing:.06em}
  .day-num{font-size:24px}
  .day-tag{font-size:10px}
  .ag-bar{flex-direction:column;align-items:stretch;gap:12px;padding:14px}
  .ag-send{width:100%}
}
/* Feriados: bolinha amarela clara e etiqueta no dia */
.ag-status.is-holiday .ag-dot{background:#F2D16B;box-shadow:0 0 0 4px rgba(242,209,107,.28)}
.day.is-holiday:not([aria-pressed="true"]) .day-tag{display:inline-flex;align-items:center;gap:4px;color:#7A5E37}
.day.is-holiday .day-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:#F2D16B;flex:none}
.ag-status{border-radius:18px;max-width:420px}
/* Escolha seu dia: duas semanas, uma por vez */
.ag-week{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ag-month{font:500 24px/1.2 'Cormorant Garamond',serif;color:#43362E}
.ag-nav{display:flex;gap:8px}
.ag-prev,.ag-next{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid #CDBDA8;border-radius:50%;background:#F6F2EC;color:#43362E;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .18s ease-out,border-color .18s ease-out,transform .12s ease-out}
.ag-prev svg,.ag-next svg{width:20px;height:20px}
.ag-prev:hover:not(:disabled),.ag-next:hover:not(:disabled){background:#EDE5DA;border-color:#7A5E37}
.ag-prev:active:not(:disabled),.ag-next:active:not(:disabled){transform:scale(.94)}
.ag-prev:focus-visible,.ag-next:focus-visible{outline:2px solid #43362E;outline-offset:3px}
.ag-prev:disabled,.ag-next:disabled{border-style:dashed;border-color:#DDD2C4;color:#B9A794;background:transparent;cursor:not-allowed}
.ag-other{margin:16px 0 0;font-size:14px;color:#5E4F45}
.ag-other .text-link{color:#43362E}
