﻿:root{--green:#173f30;--green-2:#1f4b38;--ink:#20372d;--muted:#6f7d76;--line:#e1e8e3;--soft:#f3f7f4;--cream:#fbfaf7;--accent:#b18a70;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f6f3;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.page-shell{width:min(1180px,calc(100% - 44px));margin:auto;padding:24px 0 52px}.topbar{height:54px;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green)}.brand-mark{width:40px;height:40px;border-radius:13px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:800;font-size:18px}.brand strong{display:block;font-size:18px;line-height:1}.brand small{display:block;margin-top:4px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#829089}.brand-note{font-size:12px;color:#829089}
.public-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:480px;border-radius:32px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 24px 70px rgba(23,63,48,.08)}.hero-intro{padding:54px 58px;display:flex;flex-direction:column;justify-content:center}.profile-photo{width:116px;height:116px;border-radius:50%;overflow:hidden;background:#eaf2ed;border:7px solid #f7faf8;box-shadow:0 10px 28px rgba(23,63,48,.10);display:grid;place-items:center;color:var(--green);font-size:34px;font-weight:800;margin-bottom:28px}.profile-photo img{width:100%;height:100%;object-fit:cover;display:block}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:800;color:var(--accent);margin:0 0 10px}.hero-intro h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.055em;color:var(--green);margin:0}.credential{display:block;margin-top:11px;color:#74827b;font-size:13px}.hero-bio{max-width:670px;color:#5e6e66;font-size:16px;line-height:1.75;margin:25px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.chips span{padding:8px 12px;border-radius:999px;background:#eff5f1;color:#4e6258;font-size:11px}.hero-panel{background:var(--green);color:#fff;padding:54px 48px;display:flex;flex-direction:column;justify-content:center}.hero-panel .eyebrow{color:#c9aa92}.hero-panel h2{font-family:Georgia,serif;font-weight:500;font-size:36px;line-height:1.08;margin:0 0 13px;color:#fff}.hero-panel>p{margin:0;color:#d6e0db;line-height:1.7;font-size:14px}.hero-actions{display:grid;gap:10px;margin-top:28px}.button{border:0;border-radius:14px;min-height:50px;padding:14px 18px;font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;text-align:center}.button.primary{background:#fff;color:var(--green)}.button.light{background:#2b5b47;color:#fff;border:1px solid rgba(255,255,255,.14)}.hero-note{display:flex;gap:10px;align-items:flex-start;margin-top:23px;padding-top:19px;border-top:1px solid rgba(255,255,255,.14);color:#c7d5ce;font-size:11px;line-height:1.5}.hero-note b{width:20px;height:20px;border-radius:50%;background:#e9f1ed;color:var(--green);display:grid;place-items:center;flex:none}
.content-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin-top:18px}.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:31px 34px;box-shadow:0 14px 40px rgba(23,63,48,.045)}.card.soft{background:var(--cream)}.card h2{font-family:Georgia,serif;font-weight:500;color:var(--green);font-size:30px;letter-spacing:-.03em;margin:0 0 17px}.card-copy{margin:0;color:#65736c;line-height:1.75;font-size:14px}.detail-list{display:grid}.detail-item{display:flex;justify-content:space-between;gap:24px;padding:15px 0;border-top:1px solid #edf1ee;font-size:13px}.detail-item:first-child{border-top:0;padding-top:0}.detail-item span{color:#7a8580}.detail-item strong{text-align:right;color:#40574c;font-weight:700}.section-link{margin-top:20px;color:var(--green);font-size:12px;font-weight:800}.booking-strip{margin-top:18px;border-radius:24px;background:#e9f1ec;border:1px solid #d8e5dd;padding:23px 27px;display:flex;align-items:center;justify-content:space-between;gap:18px}.booking-strip strong{display:block;color:var(--green);font-size:15px}.booking-strip span{display:block;color:#6e7c75;font-size:12px;margin-top:4px}.booking-strip .button{background:var(--green);color:#fff;min-width:170px}footer{text-align:center;color:#8a948f;font-size:11px;padding:27px 0 0}footer strong{color:#607168}
.error-card{max-width:520px;margin:12vh auto;background:#fff;border:1px solid var(--line);border-radius:26px;padding:42px;text-align:center;box-shadow:0 15px 45px rgba(31,75,56,.07)}.error-card .mark{width:42px;height:42px;margin:auto;background:var(--green);color:#fff;border-radius:13px;display:grid;place-items:center;font-weight:800}.error-card h1{font-family:Georgia,serif;font-weight:500}.error-card p{color:#6d7974;line-height:1.6}.error-card a{color:var(--green);font-weight:800}.loading{text-align:center;padding:20vh 20px;color:#65746d}
.modal-backdrop{position:fixed;inset:0;background:rgba(16,36,28,.52);display:grid;place-items:center;padding:16px;z-index:20}.modal{width:min(100%,560px);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;padding:28px;position:relative;box-shadow:0 25px 70px rgba(0,0,0,.18)}.modal .close{position:absolute;right:16px;top:14px;border:0;background:#f0f4f1;border-radius:50%;width:34px;height:34px;font-size:20px;cursor:pointer}.modal h2{font-family:Georgia,serif;font-weight:500;margin:0 0 8px;color:var(--green)}.muted{color:#718079;font-size:13px;line-height:1.55}.modal form{display:grid;gap:12px;margin-top:20px}.modal label{display:grid;gap:6px;color:#44584f;font-size:12px;font-weight:700}.modal label span{font-weight:400;color:#87918c}.modal input,.modal select,.modal textarea{width:100%;border:1px solid #d9e2dd;border-radius:11px;padding:11px 12px;font:inherit;font-size:13px;background:#fff;color:#253b32}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.full{width:100%}.form-status{font-size:12px;color:#a64d45}.success{text-align:center;padding:24px 10px}.success>div{width:48px;height:48px;margin:auto;border-radius:50%;background:#edf5f0;color:var(--green);display:grid;place-items:center;font-size:24px}.success h3{font-family:Georgia,serif;font-weight:500;font-size:25px}.success p{color:#697770;line-height:1.6;font-size:13px}
@media(max-width:900px){.public-hero{grid-template-columns:1fr}.hero-intro{padding:42px 38px}.hero-panel{padding:34px 38px}.content-grid{grid-template-columns:1fr}.booking-strip{align-items:flex-start;flex-direction:column}.booking-strip .button{width:100%}}
@media(max-width:620px){.page-shell{width:calc(100% - 24px);padding:12px 0 88px}.topbar{margin-bottom:12px}.brand-note{display:none}.public-hero{border-radius:24px;min-height:0}.hero-intro{padding:30px 22px 25px;text-align:left}.profile-photo{width:86px;height:86px;font-size:25px;border-width:5px;margin:0 0 20px}.hero-intro h1{font-size:clamp(39px,12vw,52px);line-height:.99}.credential{font-size:11px}.hero-bio{font-size:14px;line-height:1.65;margin-top:18px}.chips{margin-top:17px;gap:6px}.chips span{padding:7px 9px;font-size:10px}.hero-panel{padding:25px 22px 26px}.hero-panel h2{font-size:29px}.hero-panel>p{font-size:13px}.hero-actions{margin-top:19px}.button{min-height:48px}.content-grid{gap:11px;margin-top:11px}.card{border-radius:20px;padding:23px 20px}.card h2{font-size:26px}.detail-item{padding:12px 0}.detail-item strong{max-width:60%}.booking-strip{margin-top:11px;border-radius:19px;padding:19px}.booking-strip strong{font-size:14px}.booking-strip .button{min-width:0}.modal{padding:24px 18px;border-radius:20px}.two{grid-template-columns:1fr}}
@media(min-width:901px){.public-hero{position:relative}.hero-panel{min-height:480px}.booking-strip{display:none}}

/* =========================================================
   ALENTO Ã¢â‚¬â€ PERFIL PÃƒÅ¡BLICO Ã¢â‚¬â€ LAYOUT FINAL
   ========================================================= */
.alento-public-page{width:100%;min-height:100vh;background:#f4f0e8;color:#17352f;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box}
.alento-public-page *,.alento-public-page *::before,.alento-public-page *::after{box-sizing:border-box}
.alento-public-topbar{width:min(1440px,calc(100% - 72px));margin:0 auto;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:24px 0}
.alento-public-brand{display:flex;align-items:center;gap:12px}
.alento-public-brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid #b49a61;border-radius:50%;color:#17352f;font-family:Georgia,"Times New Roman",serif;font-size:20px;line-height:1}
.alento-public-brand-name{color:#17352f;font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1}
.alento-public-brand-subtitle{margin-top:4px;color:#8c7952;font-size:8px;font-weight:700;letter-spacing:.22em;line-height:1}
.alento-public-top-title{color:#777168;font-size:12px;font-weight:600;letter-spacing:.08em}
.alento-public-card{width:min(1440px,calc(100% - 72px));min-height:690px;margin:0 auto 72px;display:grid!important;grid-template-columns:minmax(0,1.68fr) minmax(360px,.72fr)!important;overflow:hidden;border:1px solid rgba(38,63,56,.08);border-radius:26px;background:#f8f5ee;box-shadow:0 22px 60px rgba(32,50,45,.10)}
.alento-public-main{min-width:0;padding:72px 72px 68px;display:flex;align-items:center}
.alento-public-profile-grid{width:100%;min-width:0;display:grid!important;grid-template-columns:minmax(310px,.92fr) minmax(0,1.08fr)!important;align-items:center;gap:58px}
.alento-public-photo-column{min-width:0;display:flex;align-items:center;justify-content:center}
.alento-public-photo-frame{position:relative;width:min(100%,430px);aspect-ratio:4/5;isolation:isolate}
.alento-public-photo-outline{position:absolute;inset:10px -8px -8px 10px;z-index:0;border:1.5px solid #b49a61;border-radius:48% 52% 39% 61%/36% 42% 58% 64%;transform:rotate(-2deg)}
.alento-public-photo-shape{position:absolute;inset:0 8px 10px 0;z-index:0;background:#dfe4d7;border-radius:43% 57% 57% 43%/34% 40% 60% 66%;transform:rotate(1.5deg)}
.alento-public-photo-image,.alento-public-photo-placeholder{position:absolute;inset:14px 20px 22px 14px;z-index:1;width:auto;height:auto;max-width:none;max-height:none;object-fit:cover;object-position:center;overflow:hidden;border-radius:39% 61% 53% 47%/30% 36% 64% 70%;background:#d8ddd4;display:block}
.alento-public-photo-placeholder{display:grid;place-items:center;color:#17352f;font-family:Georgia,"Times New Roman",serif;font-size:76px}
.alento-public-copy{min-width:0;max-width:600px}
.alento-public-eyebrow,.alento-public-panel-eyebrow{color:#a18850;font-size:10px;font-weight:800;letter-spacing:.24em;line-height:1.3}
.alento-public-copy h1{margin:12px 0 6px;color:#17352f;font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,4vw,66px);font-weight:400;letter-spacing:-.035em;line-height:.98}
.alento-public-credential{color:#716d65;font-size:13px;line-height:1.5}
.alento-public-gold-line{width:54px;height:2px;margin:22px 0 25px;background:#b49a61}
.alento-public-bio{max-width:570px;margin:0;color:#575b56;font-size:15px;line-height:1.8}
.alento-public-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.alento-public-chips span{padding:8px 13px;border:1px solid rgba(23,53,47,.13);border-radius:999px;color:#355149;background:rgba(255,255,255,.48);font-size:11px;line-height:1}
.alento-public-quote{margin:28px 0 0;padding:0 0 0 18px;border-left:2px solid #b49a61;color:#53655f;font-family:Georgia,"Times New Roman",serif;font-size:16px;font-style:italic;line-height:1.65}
.alento-public-action-panel{min-width:0;display:flex;align-items:center;background:#173f36;color:#f8f4ea}
.alento-public-panel-content{width:100%;padding:72px 58px}
.alento-public-action-panel .alento-public-panel-eyebrow{color:#d2b978}
.alento-public-action-panel h2{margin:16px 0 18px;color:#f8f4ea;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,3vw,49px);font-weight:400;letter-spacing:-.025em;line-height:1.08}
.alento-public-action-panel p{max-width:420px;margin:0;color:rgba(248,244,234,.76);font-size:14px;line-height:1.75}
.alento-public-actions{display:flex;flex-direction:column;gap:10px;margin-top:30px}
.alento-public-booking,.alento-public-whatsapp{width:100%;min-height:50px;display:flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .15s ease,opacity .15s ease}
.alento-public-booking:hover,.alento-public-whatsapp:hover{transform:translateY(-1px)}
.alento-public-booking{border:0;background:#f4ecda;color:#173f36}
.alento-public-whatsapp{border:1px solid rgba(244,236,218,.30);background:transparent;color:#f4ecda}
.alento-public-note{margin-top:26px!important;padding-top:24px;border-top:1px solid rgba(244,236,218,.18);color:rgba(248,244,234,.62)!important;font-size:11px!important;line-height:1.65!important}
.alento-public-signature{margin-top:44px;color:#d2b978;font-family:"Segoe Script","Brush Script MT",cursive;font-size:22px;line-height:1.2;transform:rotate(-3deg)}
@media(max-width:1100px){.alento-public-topbar,.alento-public-card{width:min(100% - 36px,1440px)}.alento-public-main{padding:50px 42px}.alento-public-profile-grid{gap:36px}.alento-public-panel-content{padding:50px 38px}}
@media(max-width:860px){.alento-public-topbar{min-height:76px;padding:18px 0}.alento-public-top-title{display:none}.alento-public-card{grid-template-columns:1fr!important;margin-bottom:36px}.alento-public-profile-grid{grid-template-columns:1fr!important}.alento-public-photo-frame{width:min(82vw,390px)}.alento-public-copy{max-width:none}.alento-public-main{padding:42px 28px 48px}.alento-public-action-panel{min-height:auto}.alento-public-panel-content{padding:44px 28px 50px}}
@media(max-width:520px){.alento-public-topbar,.alento-public-card{width:calc(100% - 24px)}.alento-public-topbar{padding:16px 0}.alento-public-brand-name{font-size:21px}.alento-public-main{padding:30px 20px 38px}.alento-public-copy h1{font-size:42px}.alento-public-panel-content{padding:38px 22px 42px}}

/* =========================================================
   LOGO OFICIAL ALENTO â€” PERFIL PÃšBLICO
   Substitui visualmente o bloco antigo sem alterar o JS.
   ========================================================= */

.alento-public-brand {
  display: flex !important;
  align-items: center !important;
  min-width: 0 !important;
}

.alento-public-brand > * {
  display: none !important;
}

.alento-public-brand::before {
  content: "";
  display: block;
  width: 204px;
  height: 58px;
  flex: 0 0 204px;
  background-image: url("./logo-alento-publico.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
}

@media (max-width: 520px) {
  .alento-public-brand::before {
    width: 178px;
    height: 52px;
    flex-basis: 178px;
  }
}

/* ALENTO_PUBLIC_DETAILS_V1 */

.alento-public-details{
  margin-top:42px;
  max-width:720px;
}

.alento-public-detail-section{
  margin-top:34px;
  padding-top:30px;
  border-top:1px solid rgba(23,53,47,.12);
}

.alento-public-detail-section:first-child{
  margin-top:0;
}

.alento-public-detail-eyebrow{
  margin-bottom:9px;
  color:#9d8757;
  font-size:10px;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1.4;
}

.alento-public-detail-section h2{
  margin:0 0 12px;
  color:#17352f;
  font-family:Georgia,"Times New Roman",serif;
  font-size:26px;
  font-weight:400;
  letter-spacing:-.02em;
  line-height:1.15;
}

.alento-public-detail-section p{
  margin:0;
  color:#575b56;
  font-size:14px;
  line-height:1.85;
  white-space:pre-line;
}

.alento-public-faq p{
  white-space:pre-line;
}

@media(max-width:860px){
  .alento-public-details{
    margin-top:34px;
  }

  .alento-public-detail-section{
    margin-top:28px;
    padding-top:26px;
  }

  .alento-public-detail-section h2{
    font-size:24px;
  }
}


/* ============================================================
   ALENTO_PUBLIC_MOBILE_PHOTO_V3
   CorreÃ§Ã£o da foto do Perfil PÃºblico em celulares
   ============================================================ */

@media (max-width: 860px) {

  .alento-public-profile-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    align-items: start !important;
  }

  .alento-public-photo-column {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: center !important;
    overflow: visible !important;
  }

  .alento-public-photo-frame {
    width: min(62vw, 270px) !important;
    max-width: 270px !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    margin: 0 auto !important;
  }

  .alento-public-photo-image,
  .alento-public-photo-placeholder {
    max-width: 100% !important;
    max-height: 100% !important;
  }

  .alento-public-copy {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .alento-public-copy h1 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

@media (max-width: 520px) {

  .alento-public-main {
    padding: 26px 18px 38px !important;
  }

  .alento-public-profile-grid {
    gap: 24px !important;
  }

  .alento-public-photo-frame {
    width: min(58vw, 225px) !important;
    max-width: 225px !important;
    aspect-ratio: 4 / 5 !important;
    margin: 0 auto !important;
  }

  .alento-public-copy h1 {
    font-size: clamp(30px, 9vw, 38px) !important;
    line-height: 1.05 !important;
    margin-top: 4px !important;
  }
}

@media (max-width: 380px) {

  .alento-public-photo-frame {
    width: min(54vw, 195px) !important;
    max-width: 195px !important;
  }

  .alento-public-copy h1 {
    font-size: 30px !important;
  }
}


/* ALENTO_SHARE_CARD_V1 */
.alento-share-card {
  margin: 28px auto 40px;
  max-width: 760px;
  padding: 22px;
  border: 1px solid rgba(31, 75, 56, .12);
  border-radius: 24px;
  background: linear-gradient(145deg, #f7f4ec, #ffffff);
  box-shadow: 0 16px 40px rgba(31, 75, 56, .08);
}

.alento-share-card-brand {
  margin-bottom: 16px;
  color: #1f4b38;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
}

.alento-share-card-main {
  display: flex;
  align-items: center;
  gap: 18px;
}

.alento-share-card-photo {
  width: 92px;
  height: 92px;
  flex: 0 0 92px;
  border-radius: 22px;
  object-fit: cover;
  background: #dfe8e1;
}

.alento-share-card-placeholder {
  background: linear-gradient(135deg, #dfe8e1, #eef3ee);
}

.alento-share-card-info {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.alento-share-card-info strong {
  color: #1f4b38;
  font-size: 24px;
  line-height: 1.1;
}

.alento-share-card-info span {
  color: #365846;
  font-size: 14px;
  font-weight: 700;
}

.alento-share-card-info small {
  color: #65736a;
  font-size: 13px;
}

.alento-share-card-button {
  width: 100%;
  margin-top: 18px;
  border: 0;
  border-radius: 14px;
  padding: 13px 18px;
  background: #1f4b38;
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

@media (max-width: 560px) {
  .alento-share-card-main {
    align-items: flex-start;
  }

  .alento-share-card-photo {
    width: 72px;
    height: 72px;
    flex-basis: 72px;
    border-radius: 18px;
  }

  .alento-share-card-info strong {
    font-size: 20px;
  }
}
