/* ==========================================================================
   Sorridents Aclimação — versão B (réplica do layout pegasus-clinic.com)
   Medidas em rem seguem o original: html{font-size: clamp(9px, .8333vw, 1rem)}
   → 1rem = 12px em 1440px de largura. Mobile (≤767px): 1rem ≈ 14px.
   ========================================================================== */
:root{
  --ltr-space-default:.08em;
  --line-height-default:2;
  --line-height-hdr:1.6;
  --font-primary:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-en:"Montserrat",var(--font-primary);
  --clr-primary-default:#312783;   /* navy Sorridents */
  --clr-primary-light:#8FD1F3;
  --clr-secondary-default:#009FE3;  /* cyan Sorridents */
  --clr-bg-01:#F5FAFE;
  --clr-mono-02:#dfdfe0;
  --clr-mono-06:#1E1A55;
  --clr-text-primary:#312783;
  --clr-text-placeholder:#0A85C2;  /* cyan escurecido p/ texto pequeno */
  --clr-text-light:#CDE9F7;
  --clr-deco:#E1F2FB;
  --clr-wht:#fff;
  --clr-wa:#009640;  /* verde Sorridents (CTAs) */
  --clr-green:#009640;--clr-cyan:#009FE3;--clr-red:#E30613;--clr-navy:#312783;--clr-yellow:#F5C808;
  --transit-default:all .4s ease-out;
}
*,*::before,*::after{box-sizing:border-box}
html,body,div,span,h1,h2,h3,h4,p,a,img,ul,li,figure,table,th,td,section,header,footer,nav,main,article{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}
ul{list-style:none}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:var(--transit-default)}
html{font-size:clamp(9px,.8333333333vw,1rem);height:100%;overflow-y:scroll;overflow-x:hidden;scroll-padding-top:80px;scroll-behavior:smooth}
body{font-family:var(--font-primary);line-height:var(--line-height-default);font-weight:400;letter-spacing:var(--ltr-space-default);color:var(--clr-text-primary);height:100%;padding-top:6.25rem;word-break:break-word;
  /* textura "névoa" do original (pc_bg.png) reproduzida em CSS */
  background-color:#eef6fc;
  background-image:
    radial-gradient(60% 45% at 18% 12%, rgba(255,255,255,.95) 0%, rgba(255,255,255,0) 70%),
    radial-gradient(50% 40% at 82% 18%, rgba(205,233,247,.95) 0%, rgba(205,233,247,0) 70%),
    radial-gradient(70% 55% at 50% 70%, rgba(255,255,255,.85) 0%, rgba(255,255,255,0) 70%),
    radial-gradient(45% 40% at 88% 78%, rgba(190,226,245,.85) 0%, rgba(190,226,245,0) 70%),
    linear-gradient(180deg,#f4f9fd 0%,#e7f2fa 50%,#f3f8fc 100%);
  background-attachment:fixed;background-size:cover;background-position:top left}
.font-en{font-family:var(--font-en);font-weight:300}
.bold{font-weight:700;background:linear-gradient(transparent 50%,rgba(0,159,227,.18) 50%);color:var(--clr-primary-default)}
.img-trim{display:flex;justify-content:center;align-items:center;overflow:hidden}
.trim-widescreen{aspect-ratio:3/2}
.img-cover{width:100%;height:100%;object-fit:cover}
.pos-rel{position:relative}.pos-ab{position:absolute}
.txt-ctr{text-align:center}
.flex{display:flex}.flex-j-between{justify-content:space-between}.flex-j-ctr{justify-content:center}.flex-a-ctr{align-items:center}.flex-c-wrap{flex-wrap:wrap}
.flex-col2>*{width:calc(50% - .5 * var(--gap,2.5rem))}.flex-col2{flex-wrap:wrap}
.flex-col3>*{width:calc((100% - 2 * var(--gap,2.5rem)) / 3)}.flex-col3{flex-wrap:wrap}
.gap8{gap:.5rem;--gap:.5rem}.gap24{gap:1.5rem;--gap:1.5rem}.gap40{gap:2.5rem;--gap:2.5rem}.gap60{gap:3.75rem;--gap:3.75rem}
.mgn-btm8{margin-bottom:.5rem}.mgn-btm16{margin-bottom:1rem}.mgn-btm24{margin-bottom:1.5rem}.mgn-btm40{margin-bottom:2.5rem}.mgn-btm48{margin-bottom:3rem}.mgn-btm80{margin-bottom:5rem}
.fz12{font-size:max(10px,.75rem)}.fz13{font-size:max(11px,.8125rem)}.fz14{font-size:max(12px,.875rem)}.fz16{font-size:max(14px,1rem)}.fz18{font-size:max(16px,1.125rem)}.fz30{font-size:1.875rem}.fz32{font-size:2rem}
.section_pdg{padding-block:10rem}.section_pdg-sm{padding-block:5rem}
.inner{width:90%;max-width:90rem;margin-inline:auto}.inner-sm{max-width:66.25rem}.inner-lg{max-width:100rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- botões ---------- */
.btn a{position:relative;z-index:1;display:flex;align-items:center;padding:.875rem 2rem .875rem 3.75rem;border-radius:99px;width:fit-content;min-width:min(17.5rem,100%);color:var(--clr-wht);background-color:var(--clr-green)}
.btn a::before{content:"";position:absolute;top:0;left:1.875rem;bottom:0;margin:auto;width:.5rem;height:.5rem;border-top:2px solid;border-right:2px solid;rotate:45deg;transition:var(--transit-default)}
.btn a:hover{background-color:var(--clr-navy)}
.btn-sm a{display:flex;align-items:center;justify-content:center;padding:.5rem 1rem;min-width:14.0625rem;border:1px solid var(--clr-text-placeholder);background-color:transparent;color:var(--clr-text-placeholder);font-size:max(11px,.8125rem)}
.btn-sm a::before{display:none}
.btn-sm a::after{content:"";display:inline-block;width:.375rem;height:.375rem;background-color:var(--clr-text-placeholder);clip-path:polygon(0 0,0% 100%,100% 50%);margin-left:.5rem}
.btn-sm a:hover{background-color:var(--clr-text-placeholder);color:var(--clr-wht)}
.btn-sm a:hover::after{background-color:var(--clr-wht)}
.btn-wa a{background-color:var(--clr-wa)}
.btn-wa a:hover{background-color:#007a34}

/* ---------- animações de entrada (page-animation-2 do original) ---------- */
.page-animation-2 .load_active,
.page-animation-2 .scroll_active{transform:translateY(1.875rem);opacity:0;transition:transform 1s ease-out,opacity 1s ease-out}
.page-animation-2 .load_active.loaded,
.page-animation-2 .scroll_active.active{transform:translateY(0);opacity:1}
@keyframes slide_fadeZoom{0%{transform:translateX(2.5rem)}100%{transform:translateX(0)}}
@keyframes fadeIn{100%{opacity:1;transform:translate(0)}}
@keyframes translate-y{0%,100%{transform:translateY(0)}50%{transform:translateY(-.75rem)}}
@keyframes translate-x{0%,100%{transform:translateX(0)}50%{transform:translateX(.35rem)}}
@keyframes rotate-z{to{transform:rotate(360deg)}}

/* ---------- header ---------- */
.header{position:fixed;top:0;left:0;right:0;height:100px;z-index:9999;transition:var(--transit-default)}
body.home .header:not(.header-sm){background-color:transparent}
.header--inner{height:100%;padding-left:3rem;padding-right:1.5rem;gap:1rem}
.header--logo{font-size:1rem;line-height:1}
.header--logo img{width:auto!important;height:2.75rem}
.gnav{display:flex;align-items:center;flex:1;justify-content:flex-end;gap:1.5rem;height:100%}
.gnav--menu,.gnav--menu li,.gnav--link{height:100%}
.gnav--menu{display:flex;justify-content:center}
.gnav--menu li{position:relative}
.gnav--link{display:flex;align-items:center;padding:0 1.5rem;font-size:max(12px,.9375rem);letter-spacing:.06em}
.gnav--menu>li>a span{display:flex;align-items:center;gap:.25rem}
.gnav--menu>li:hover>.gnav--link,.gnav--menu>li.current>.gnav--link{color:var(--clr-text-placeholder)}
.gnav--menu li.menu-item-has-children>.gnav--link span::after{content:"";width:.4rem;height:.4rem;border-right:1px solid;border-bottom:1px solid;rotate:45deg;margin-left:.4rem;translate:0 -.15rem}
.head_sub_nav--wrap{position:absolute;top:100%;left:0;min-width:16rem;padding:1rem 0;background:rgba(255,255,255,.96);border-radius:.75rem;box-shadow:0 12px 30px -12px rgba(49,39,131,.35);opacity:0;visibility:hidden;translate:0 .5rem;transition:var(--transit-default)}
.gnav--menu li.menu-item-has-children:hover .head_sub_nav--wrap{opacity:1;visibility:visible;translate:0 0}
.head_sub_nav li{height:auto}
.head_sub_nav .gnav--link{height:auto;padding:.5rem 1.5rem;font-size:max(11px,.85rem);white-space:nowrap}
.gnav--cta{text-align:center}
.gnav--tel a{display:inline-flex!important;flex-direction:column;margin-inline:auto;height:100%;justify-content:center;line-height:1.35}
.gnav--tel .tel{font-size:max(18px,1.25rem);font-weight:500;letter-spacing:.06em}
.gnav--tel .num{font-size:max(22px,1.5rem)}
.gnav--tel .hours{font-size:max(12px,.875rem)}
.header--search{position:relative;width:9.25rem;height:2.5rem;border-radius:99px;background:var(--clr-cyan);display:flex;align-items:center;padding:0 1.5rem;color:var(--clr-wht);font-size:max(11px,.8125rem);letter-spacing:.06em}
.header--search svg{position:absolute;right:1rem;width:1rem;height:1rem;fill:var(--clr-wht)}
.header-sm{top:1.25rem;height:80px;margin-inline:2.5rem;border-radius:99px;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);box-shadow:0 10px 30px -14px rgba(49,39,131,.35)}
.header-sm .header--inner{padding-left:2.5rem}
.fix_btn--wrap,.gnav_btn,.sp-bottom-nav,.fixed_contact--cta{display:none}

/* ---------- menu lateral fixo ---------- */
.fix_side_menu{position:fixed;top:50%;right:2.5rem;z-index:999;width:100px;border-radius:1.25rem;border:1px solid #fff;background:rgba(255,255,255,.5);backdrop-filter:blur(2px);padding:2.5rem 1.5rem;transform:translateY(-50%)}
.fix_side_menu--list{display:flex;flex-direction:column;align-items:center;font-size:11px;line-height:1.4;text-align:center}
.fix_side_menu--list li:not(:last-child){margin-bottom:1rem}
.fix_side_menu--list li:nth-child(3){margin-top:1.125rem}
.fix_side_menu--list li:nth-child(4){margin-top:3rem;margin-bottom:.5rem}
.fix_side_menu--list li:nth-child(5){margin-bottom:.5rem}
.fix_side_menu--list li a{display:block;text-align:center}
.fix_side_menu--list li a:hover{opacity:.4}
.fix_side_menu--list li .icon{display:flex;justify-content:center;margin:0 auto 5px;width:2.5rem;height:2.5rem}
.fix_side_menu--list li .icon svg{width:100%;height:100%}
.fix_side_menu--list li:nth-child(1) a:hover{opacity:1;color:var(--clr-wa)}
.fix_side_menu .social a{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:linear-gradient(97deg,#C1C0E8 -36.01%,#7B77BF 61.43%)}
.fix_side_menu .social a:hover{opacity:1}
.fix_side_menu .social.insta a:hover{background:linear-gradient(135deg,#427eff 0%,#f13f79 70%) no-repeat}
.fix_side_menu .social.gmaps a:hover{background:#4285F4}
.fix_side_menu .social svg{width:18px;height:18px;fill:#fff}

/* ---------- hero ---------- */
.hero{position:relative;padding-top:2rem}
.hero_deco{position:absolute;fill:var(--clr-primary-light);animation:translate-y 5s linear infinite;z-index:2}
.hero_deco.star1{fill:var(--clr-red);top:12%;left:33%;width:4.0625rem;height:4rem;transition-delay:.4s!important}
.hero_deco.star2{fill:var(--clr-cyan);top:50%;right:32%;width:1.9375rem;height:1.875rem;transition-delay:.5s!important}
.hero--en{position:absolute;right:12.5vw;bottom:7.5rem;width:19rem;transition-delay:1s!important}
.hero--en .icon{width:4.5rem;margin-inline:auto}
.hero--en .icon svg{width:100%;height:auto;fill:none;stroke:var(--clr-primary-default);stroke-width:1.2}
.hero--en .font-en{padding-block:.625rem;padding-left:1.5rem;border-left:1px solid;letter-spacing:.13rem;line-height:1.65;font-size:max(11px,.9rem)}
.hero--cont{position:absolute;left:10.4166666667vw;bottom:4.5rem;transition-delay:.8s!important;z-index:3}
.hero--catch{margin-bottom:.5rem;font-size:4.6rem;line-height:1.1;letter-spacing:.32em;font-weight:300;color:var(--clr-primary-default);white-space:nowrap}
.hero--catch .c1{color:var(--clr-navy)}.hero--catch .c2{color:var(--clr-red)}.hero--catch .c3{color:var(--clr-cyan)}.hero--catch .c4{color:var(--clr-green)}
.hero--lead{margin-bottom:1.5rem;font-size:.875rem;letter-spacing:.24em;line-height:1.9;max-width:36rem}
.google_review--wrap{width:22.375rem;background:rgba(255,255,255,.6);backdrop-filter:blur(2px);border-radius:.625rem}
.google_review--wrap.fix{position:fixed;left:2%;bottom:2.5rem;z-index:999}
.google_review--wrap.fix .google_review{opacity:0;transform:translateY(100px);animation:fadeIn 1s forwards}
.google_review .slick-track{display:flex}
.google_review .review_item{height:auto!important;min-height:100%!important;padding:1.5rem;font-size:.625rem;color:var(--clr-primary-light);line-height:1.5}
.google_review .review_item--img{width:2.5rem;height:2.5rem;flex:none}
.google_review .review_item .review_item--txt{flex:1;margin-left:1rem}
.google_review .review_item--txt .star{display:block;color:#E8A33D;letter-spacing:1px;font-size:.7rem;margin-bottom:.25rem}
.google_review .review_item--txt .author{display:block;color:var(--clr-primary-default);font-size:.65rem;margin-top:.3rem}
.hero_slides,.hero_slide,.hero_slide .slick-list,.hero_slide .slick-track,.hero_slide .slick-slider,.hero_slide .slick-slide{width:100%;height:100%!important}
.hero_slides{position:relative;padding:1.125rem}
.hero_slides::before{content:"";position:absolute;top:0;left:0;right:0;margin:auto;width:36.375rem;height:100%;border:1px solid var(--clr-primary-light);border-radius:50%}
.hero_slide{width:47.5rem!important;height:46.25rem!important;margin-inline:auto;overflow:hidden}
.hero_slide-pc,.hero_slide-sp{clip-path:ellipse(36% 50% at 50% 50%)}
.hero_slide .slick-list{position:relative;overflow:hidden}
.hero_slide li{position:relative;overflow:hidden}
.hero_slide li img{width:100%;height:100%;object-fit:cover;object-position:center 62%}
.hero_slide .slide-animation img{animation:slide_fadeZoom 10s 0s forwards}
.hero_slides .scroll_down{position:absolute;right:5.625rem;bottom:3.75rem;z-index:999;width:7.5625rem;height:7.5rem;display:flex;align-items:center;justify-content:center}
.hero_slides .scroll_down .ring{position:absolute;inset:0;animation:rotate-z 10s linear infinite}
.hero_slides .scroll_down .ring text{font-family:var(--font-en);font-size:11.5px;letter-spacing:.2em;fill:var(--clr-primary-default)}
.hero_slides .scroll_down--arrow{display:flex;align-items:center;justify-content:center;width:4.375rem;height:4.375rem;border-radius:50%;background-color:rgba(255,255,255,.6);transform:rotate(90deg)}
.hero_slides .scroll_down--arrow svg{width:1.25rem;height:1.25rem;animation:translate-x 5s linear infinite;fill:none;stroke:var(--clr-primary-default);stroke-width:1.5}
.hero--line{margin-top:3.125rem}
.hero--line .icon{display:flex;width:2rem;height:2rem}
.hero--line .icon svg,.line_deco .icon svg,.home_reason--deco svg{width:100%;height:100%;fill:var(--clr-primary-default)}
.hero--line hr{flex:1;margin-left:1.5rem;border:0;border-top:1px solid var(--clr-primary-default)}

/* ---------- destaques (home_news) ---------- */
.home_news .posts-news--ttl{display:block;width:15rem;flex:none;white-space:nowrap;font-size:1.875rem;letter-spacing:.3em}
.home_news .home_news--posts{flex:1}
.home_news .home_news--posts .post{width:50%;padding:1.5rem 2.5rem;gap:2.5rem;border-top:0}
.home_news .home_news--posts .post:not(:last-child){border-right:1px solid var(--clr-text-placeholder)}
.posts-news .post--img{width:8.75rem;flex:none}
.posts-news .post--img img{object-position:center 60%}
.posts-news .post--txtarea{flex:1}
.posts-news .post--date{font-size:max(11px,.8125rem);margin-right:1.5rem}
.posts-news .post--ttl{font-size:1rem;font-weight:400;line-height:1.6}
.post{position:relative}
.post--link::before{content:"";position:absolute;inset:0;z-index:1;transition:var(--transit-default)}
.posts-news .post:hover .post--link::before,.posts-blog .post:hover .post--link::before{background-color:rgba(148,178,214,.15)}
.post--img{background-color:var(--clr-wht);border-radius:.5rem;overflow:hidden}
.cat_list{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.125rem}
.cat_list a,.cat_list span{display:inline-block;font-size:max(11px,.8125rem);background-color:var(--clr-red);color:var(--clr-wht);padding-inline:1em;border-radius:.25rem;line-height:1.7}

/* ---------- mensagem ---------- */
.home_message--ttl .lg{display:block;margin-bottom:2.5rem;font-size:4.25rem;letter-spacing:2.5rem;line-height:1;font-weight:400}
.home_message--ttl .sm{display:inline-block;padding-block:.625rem;padding-left:1.5rem;border-left:1px solid;font-size:.8125rem;line-height:1.5;letter-spacing:.1em}
.home_message--txtarea{width:43%}
.home_message--catch{margin-bottom:2.5rem;font-size:3rem;letter-spacing:.72rem;font-weight:400;line-height:1.3}
.home_message--txtarea p{letter-spacing:.2rem;line-height:3;font-size:max(12px,.9rem)}
.home_message--txtarea p span{display:inline-block;padding:0 1rem;border-radius:.5rem;background-color:rgba(0,159,227,.12)}

/* ---------- elipse animada ---------- */
.animetion_sec{height:100vh;overflow:hidden}
.animetion_sec--mask{margin:auto;height:100%;clip-path:ellipse(14% 30% at 50% 40%);transition:transform 1s ease-out,opacity 1s ease-out}
.animetion_sec--mask img{width:100%;height:100%;object-fit:cover;object-position:center 58%;transition:filter 1s ease-out}

/* ---------- rolagem horizontal: equipe + compromisso ---------- */
.home_horizotal_scroll{position:relative;height:100vh;overflow:hidden;background-color:var(--clr-bg-01)}
.home_horizotal_scroll--wrap{display:flex;width:150vw}
.home_horizotal_scroll--img{position:absolute;inset:0;width:100vw;background-image:linear-gradient(90deg,rgba(214,221,242,0) 0%,rgba(214,221,242,.6) 30%,rgba(255,255,255,0) 60%);background-repeat:no-repeat}
.home_horizotal_scroll--img img{position:absolute;left:0;bottom:0;height:88vh;width:auto;max-width:48vw;object-fit:cover;object-position:center 60%;mask-image:linear-gradient(90deg,#000 70%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,#000 70%,transparent 100%)}
.home_horizotal_box,.home_doctor,.home_voice{width:50vw;height:100vh;flex:none}
.home_doctor,.home_voice{padding-top:10rem}
.home_doctor{padding-left:5rem}
.home_doctor--txtarea,.home_voice--txtarea{width:100%}
.home_doctor--txtarea{max-width:40.625rem;margin-left:0;margin-right:auto}
.home_doctor .postion{display:flex;align-items:center;justify-content:center;border:1px solid var(--clr-red);color:var(--clr-red);width:6.9375rem;height:6.9375rem;font-size:1.25rem;letter-spacing:.1875rem;border-radius:.25rem;margin-right:2.5rem;text-align:center;line-height:1.3}
.home_doctor .name{font-size:2.5rem;letter-spacing:.375rem;font-weight:400;line-height:1.2}
.home_doctor .name .font-en{display:block;font-size:1.5rem;letter-spacing:.1875rem}
.home_doctor .sns_list{margin-left:auto;line-height:1}
.home_doctor .sns_list li{margin-left:1rem}
.home_doctor .sns_list li a{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:linear-gradient(97deg,var(--clr-cyan) -36.01%,var(--clr-navy) 61.43%)}
.home_doctor .sns_list li svg{fill:var(--clr-wht);width:1.125rem;height:1.125rem}
.home_doctor .catch{margin-top:2rem;margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.2rem;font-weight:400;line-height:1.7}
.home_doctor .btn-sm a{width:334px}
.home_doctor .check_list li{position:relative;padding-left:2.5rem;font-size:max(12px,.9rem);line-height:1.8}
.home_doctor .check_list li:not(:last-child){margin-bottom:.625rem}
.home_doctor .check_list li::before{content:"";position:absolute;top:.1rem;left:0;width:2.0625rem;height:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 33 32'%3E%3Ccircle cx='16' cy='16' r='14' fill='none' stroke='%237B77BF'/%3E%3Cpath d='M10 16.5l4 4 9-9' fill='none' stroke='%23312783' stroke-width='1.5'/%3E%3C/svg%3E");background-size:cover}
.home_doctor--deco{margin-left:0;margin-right:auto;width:40.625rem;margin-top:4rem;font-size:12.5rem;letter-spacing:.5rem;line-height:1;color:rgba(233,236,246,.8);text-align:right}
.home_voice .inner{width:100%;padding-right:8.125rem}
.home_voice--ttl{margin-bottom:3.5rem;font-size:2rem;letter-spacing:.5rem;text-align:center;font-weight:400;line-height:1.5}
.home_voice--ttl .font-en{display:block;margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.375rem}
.home_voice--ttl .font-en::after{content:"";display:block;width:2.5rem;margin-top:1rem;margin-inline:auto;border-bottom:1px solid}
.home_voice--list li{padding:2.5rem 2rem;border-radius:.625rem;background-color:#fff;color:var(--clr-text-placeholder);line-height:1.66;font-size:max(11px,.85rem)}
.home_voice--list li .bold{background:none;font-size:max(13px,1.125rem)}

/* ---------- motivos (pinned) ---------- */
.home_reason_wrap{z-index:2;background-color:var(--clr-bg-01);position:relative}
.home_reason{padding-top:5.625rem;height:98vh}
.home_reason>.inner{position:relative;height:100%;padding-block:3.375rem;border-top:1px solid;border-bottom:1px solid}
.home_reason--deco{display:inline-block;background-color:var(--clr-bg-01);width:3rem;height:2rem}
.home_reason--deco.deco1{top:-.875rem;left:0;padding-right:1.5rem;width:4.5rem}
.home_reason--deco.deco2{right:0;bottom:-.9375rem;padding-left:1.5rem;width:4.5rem}
.home_reason--txtarea,.home_reason--scroll{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;width:50%}
.home_reason--txtarea{border-right:1px solid}
.home_reason--txtarea .txt_deco{position:absolute;left:0;bottom:0;padding:0;width:100%;text-align:center;line-height:1;font-size:10rem;letter-spacing:1rem;color:#fff}
.home_reason--ttl{margin-bottom:1rem;font-size:2rem;font-weight:400;line-height:1.5}
.home_reason--ttl>.font-en{position:relative;display:block;padding-bottom:1rem;margin-bottom:1rem;font-size:1.25rem;letter-spacing:.375rem}
.home_reason--ttl>.font-en::before{content:"";position:absolute;left:0;bottom:0;width:2.5rem;border-bottom:1px solid}
.home_reason--ttl .lg{letter-spacing:.32rem}
.home_reason--ttl .lg .font-en{letter-spacing:.5rem}
.home_reason--txtarea p{border-left:1px solid;padding-block:.625rem;padding-left:1.5rem;font-size:max(12px,.9rem);line-height:1.9}
.home_reason_pager{position:absolute;top:0;right:0;bottom:0;height:4.375rem;margin:auto}
.home_reason_pager .page{display:block;margin-block:.5rem;width:.75rem;height:.75rem;background-color:#D5D5E5;border-radius:50%;transition:var(--transit-default)}
.home_reason_pager .page.js-active{background-color:var(--clr-red)}
.home_reason--sec{position:absolute;opacity:0;width:26.25rem;padding-block:2.5rem;transition:var(--transit-default)}
.home_reason--sec.js-active{opacity:1}
.home_reason--sec .num{position:absolute;left:0;bottom:0;font-size:26.25rem;line-height:.75;color:#fff;letter-spacing:.375rem;word-break:keep-all}
.home_reason--sec .home_reason--img{position:relative;z-index:1;margin-bottom:2rem;aspect-ratio:420/340;overflow:hidden;border-radius:50% 50% 0 0 / 40% 40% 0 0}
.home_reason--sec .home_reason--img img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.home_reason--sec .home_reason--catch{position:relative;z-index:1;margin-bottom:1.5rem;text-align:center;font-size:1.25rem;letter-spacing:.2rem;line-height:1.7;font-weight:500}
.home_reason--sec p{position:relative;z-index:1;line-height:1.8;font-size:.9375rem}
.home_reason--sec .line_deco{position:relative;z-index:1;margin-top:1.5rem}
.line_deco .icon{display:flex;width:1.5rem;height:1rem}
.home_reason--sec .line_deco hr{flex:1;margin-left:1.5rem;border:0;border-top:1px solid var(--clr-primary-default)}
.home_reason--sec:nth-of-type(1) .line_deco .icon svg{fill:var(--clr-red)}.home_reason--sec:nth-of-type(2) .line_deco .icon svg{fill:var(--clr-green)}.home_reason--sec:nth-of-type(3) .line_deco .icon svg{fill:var(--clr-cyan)}

/* ---------- indicados (recommend) ---------- */
.home_recommend{background-color:var(--clr-bg-01)}
.home_recommend_info{margin-bottom:5rem}
.home_recommend_info--imgarea{height:30rem;margin-bottom:5.3125rem;border-radius:6.25rem;overflow:hidden;background-position:center 58%;background-size:cover}
.home_recommend_info--txtarea{font-size:.9375rem}
.home_recommend_info--txtarea .font-en{position:relative;display:inline-block;margin-right:3rem;padding-bottom:.5rem;font-size:1.25rem;letter-spacing:.375rem}
.home_recommend_info--txtarea .font-en::after{content:"";position:absolute;left:0;bottom:0;width:2.5rem;border-bottom:1px solid}
.home_recommend_info--ttl{margin-right:1.625rem;font-size:2rem;letter-spacing:.32rem;line-height:1.7;font-weight:400}
.home_recommend_info--lead{border-left:1px solid;padding-block:.625rem;padding-left:1.5rem;line-height:1.9;margin-right:19rem}
.home_recommend_info--links{position:relative;margin:-6.25rem 0 0 auto;color:var(--clr-text-placeholder);width:16rem}
.home_recommend_info--links p{margin-bottom:1rem;padding:1rem 1.5rem;border-radius:.625rem;background-color:rgba(255,255,255,.8);font-size:.875rem;line-height:1.8;animation:translate-y 5s linear infinite}
.home_recommend_info--links .links_list li:not(:last-child){margin-bottom:.625rem}
.home_recommend_info--links .links_list li a{display:flex;align-items:center;justify-content:center;border:1px solid;padding:.5rem;border-radius:6.1875rem;text-align:center;font-size:.875rem;color:var(--clr-text-placeholder)}
.home_recommend_info--links .links_list li a::after{content:"";display:inline-block;width:.375rem;height:.375rem;background-color:var(--clr-text-placeholder);clip-path:polygon(0 0,0% 100%,100% 50%);margin-left:.5rem}
.home_recommend_info--links .links_list li a:hover{background-color:var(--clr-text-placeholder);color:#fff}
.home_recommend_info--links .links_list li a:hover::after{background-color:#fff}
.home_recommend--sec>.inner{padding-block:5rem;border-top:1px solid var(--clr-text-placeholder)}
.home_recommend--sec:last-of-type>.inner{border-bottom:1px solid var(--clr-text-placeholder)}
.home_recommend--sec .home_recommend--txtarea{flex:1;padding-right:3rem}
.home_recommend--sec .home_recommend--txtarea .ttl{display:flex;align-items:center;margin-bottom:2.5rem;font-weight:400}
.home_recommend--sec .home_recommend--txtarea .ttl .num{white-space:nowrap;flex:none;margin-right:3rem;padding-left:.625rem;padding-bottom:.5rem;border-bottom:2px solid var(--clr-red);color:var(--clr-red);font-size:1.25rem;letter-spacing:.375rem}
.home_recommend--sec .home_recommend--txtarea .ttl .txt{font-size:2rem;letter-spacing:.32rem}
.home_recommend--sec .home_recommend--txtarea .recommend_tag span{display:inline-block;margin-right:.5rem;border-radius:99px;padding:.25rem 1.5rem .125rem;background-color:var(--clr-navy);color:var(--clr-wht);font-size:.875rem}
.recommend_tag span:nth-child(2){background-color:var(--clr-red)}.recommend_tag span:nth-child(3){background-color:var(--clr-green)}
.home_recommend--sec .home_recommend--txtarea .recommend_read{margin-block:2.5rem;border-left:1px solid;padding-block:.625rem;padding-left:1.5rem;line-height:1.9}
.home_recommend--sec .home_recommend--txtarea .recommend_links{display:flex;gap:.625rem}
.home_recommend--sec .home_recommend--imgarea{width:47.5rem;height:22.75rem;border-radius:999px;overflow:hidden;flex:none}
.home_recommend--sec .home_recommend--imgarea a{display:block;height:100%}
.home_recommend--sec .home_recommend--imgarea img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.home_recommend--sec .home_recommend--imgarea a:hover{opacity:.7}

/* ---------- menu por necessidade ---------- */
.home_menu{background-color:var(--clr-bg-01);padding-bottom:0;border-top:1px solid var(--clr-text-placeholder);border-bottom:1px solid var(--clr-text-placeholder)}
.home_menu .home_menu--deco2{padding-block:3.5rem;font-size:6rem;color:var(--clr-deco);line-height:1;letter-spacing:.2em}
.home_menu--wrap{position:relative;border:1px solid var(--clr-text-placeholder);border-radius:12.5rem 0 12.5rem 0;padding-bottom:8.75rem}
.home_menu--wrap::before,.home_menu--wrap::after{content:"";position:absolute}
.home_menu--wrap::before{top:-5rem;right:-1px;height:5rem;border-right:1px solid var(--clr-text-placeholder)}
.home_menu--wrap::after{left:-12.5vw;bottom:-1px;width:12.5vw;border-bottom:1px solid var(--clr-text-placeholder)}
.home_menu--wrap .home_menu--deco1{position:absolute;top:7.1875rem;right:0;font-size:6rem;line-height:1;letter-spacing:.5rem;writing-mode:vertical-rl;color:var(--clr-deco)}
.home_menu--ttl{margin-bottom:1rem;text-align:center;font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5}
.home_menu--ttl .font-en{display:block;margin-bottom:1rem;font-size:1.25rem;letter-spacing:.375rem}
.home_menu--ttl .font-en::after{content:"";display:block;margin-top:1rem;margin-inline:auto;width:2.5rem;border-bottom:1px solid}
.home_menu .btn-sm{width:14.0625rem;margin-inline:1rem}
.menu_parts_list{display:grid;grid-template-columns:repeat(5,1fr);gap:2.5rem}
.menu_parts_list li a{display:block;text-align:center}
.menu_parts_list .parts_icon{display:flex;align-items:center;justify-content:center;width:8.25rem;height:8.25rem;margin:0 auto .75rem;border-radius:50%;background:#fff;transition:var(--transit-default)}
.menu_parts_list li:nth-child(4n+1) .parts_icon svg{stroke:var(--clr-navy)}.menu_parts_list li:nth-child(4n+2) .parts_icon svg{stroke:var(--clr-red)}.menu_parts_list li:nth-child(4n+3) .parts_icon svg{stroke:var(--clr-green)}.menu_parts_list li:nth-child(4n+4) .parts_icon svg{stroke:var(--clr-cyan)}
.menu_parts_list .parts_icon svg{width:4.5rem;height:4.5rem;fill:none;stroke:var(--clr-primary-default);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.menu_parts_list li a:hover .parts_icon{box-shadow:0 12px 30px -14px rgba(49,39,131,.5);transform:translateY(-3px)}
.menu_parts_list .parts_name{font-size:max(11px,.85rem);font-weight:400;letter-spacing:.05em;line-height:1.5}

/* ---------- avaliações (home_case) ---------- */
.home_case{background-color:var(--clr-bg-01)}
.home_case--ttl{display:flex;font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5}
.home_case--ttl .font-en{display:block;margin-right:2.5rem;font-size:1.25rem;letter-spacing:.375rem;white-space:nowrap}
.home_case--ttl .font-en::after{content:"";display:block;width:2.5rem;margin-top:.5rem;border-bottom:1px solid}
.home_case--insta{align-items:center;gap:1.5rem}
.home_case--insta .comment{position:relative;display:flex;align-items:center;gap:.5rem;padding:.5rem 1.5rem;border-radius:99px;background:#fff;font-size:max(11px,.85rem);color:var(--clr-text-placeholder)}
.home_case--insta .comment::after{content:"";position:absolute;right:-.6rem;top:50%;translate:0 -50%;border:.4rem solid transparent;border-left-color:#fff}
.home_case--insta .comment .icon{display:inline-flex;width:1.0625rem;height:1.0625rem}
.home_case--insta .btn-sm a{width:258px}
.posts-case .testimonial-card{background:#fff;border-radius:1rem;padding:2.5rem 2rem;height:100%}
.posts-case .testimonial-stars{color:#E8A33D;letter-spacing:.15em;font-size:1rem;margin-bottom:1rem}
.posts-case .testimonial-text{font-size:max(12px,.95rem);line-height:1.9;margin-bottom:1.5rem;color:var(--clr-text-primary)}
.posts-case .testimonial-footer{display:flex;align-items:center;gap:.75rem;border-top:1px solid var(--clr-mono-02);padding-top:1rem}
.posts-case .testimonial-avatar{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:50%;background:linear-gradient(97deg,var(--clr-cyan) -36.01%,var(--clr-navy) 61.43%);color:#fff;font-size:.9rem;font-weight:500}
.posts-case .testimonial-meta{display:flex;flex-direction:column;line-height:1.4}
.posts-case .testimonial-author{font-weight:500;font-size:max(12px,.95rem)}
.posts-case .testimonial-role{font-size:max(10px,.75rem);color:var(--clr-text-placeholder)}
.google_badge{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:.5rem;background:#fff;border-radius:1rem;padding:2.5rem 2rem;height:100%;border:1px solid var(--clr-text-light)}
.google_badge .g{width:2.5rem;height:2.5rem}
.google_badge .score{font-family:var(--font-en);font-size:3.5rem;line-height:1;color:var(--clr-navy);font-weight:500}
.google_badge .stars{color:#E8A33D;letter-spacing:.15em}
.google_badge .total{font-size:max(11px,.85rem);color:var(--clr-text-placeholder)}

/* ---------- blog ---------- */
.home_blog{background-color:var(--clr-bg-01)}
.home_blog--info{width:26%}
.home_blog--ttl{margin-bottom:5rem;font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5}
.home_blog--ttl .font-en{display:block;margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.375rem}
.home_blog--ttl .font-en::after{content:"";display:block;margin-top:1rem;width:2.5rem;border-bottom:1px solid}
.home_blog .sub_ttl{margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.375rem;color:var(--clr-text-placeholder)}
.home_blog--cats li{margin-bottom:.5rem;font-size:max(12px,.9rem)}
.home_blog--cats a{display:flex;align-items:center}
.home_blog--cats a::before{content:"";display:inline-block;width:2rem;margin-right:1rem;border-bottom:2px solid}
.home_blog--btn a{display:inline-flex;align-items:center;font-size:1.125rem;letter-spacing:.2em}
.home_blog--btn a svg{width:1rem;height:.75rem;margin-left:1.5rem;fill:none;stroke:currentColor;stroke-width:1.5}
.home_blog .posts-blog{max-width:57.5rem;width:70%}
.home_blog--posts .post{display:grid;grid-template-columns:11.25rem minmax(0,1fr);gap:2.5rem;align-items:center;padding:1.5rem 0;border-top:1px solid var(--clr-text-placeholder)}
.home_blog--posts .post:last-child{border-bottom:1px solid var(--clr-text-placeholder)}
.home_blog--posts .post--img{width:11.25rem;height:8.75rem;border-radius:.5rem;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.home_blog--posts .post--img svg{width:3.5rem;height:3.5rem;fill:none;stroke:var(--clr-text-placeholder);stroke-width:1.2}
.posts-blog .post--date{font-size:max(11px,.8125rem);margin-right:1.5rem}
.posts-blog .post--ttl{font-size:1.125rem;font-weight:400;line-height:1.6}

/* ---------- links relacionados ---------- */
.foot_related{background-color:var(--clr-bg-01)}
.foot_related--links li{width:33.3333%;border:1px solid var(--clr-text-placeholder);margin-left:-1px}
.foot_related--links li a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:20rem;text-align:center}
.foot_related--links li a::before{content:"";position:absolute;inset:1rem;border:1px solid var(--clr-text-placeholder);transition:var(--transit-default)}
.foot_related--links li a:hover::before{inset:.5rem}
.foot_related--links .font-en{opacity:.5;font-size:1rem;letter-spacing:.3em;margin-bottom:1rem}
.foot_related--links .font-en::after{content:"";display:block;width:2rem;margin:.5rem auto 0;border-bottom:1px solid}
.foot_related--links .ttl{font-size:1.75rem;letter-spacing:.32rem;font-weight:300}

/* ---------- CTA rodapé ---------- */
.foot_cta{position:relative;color:#fff;background-color:#312783;background-image:radial-gradient(60% 60% at 30% 30%,rgba(255,255,255,.14) 0%,rgba(255,255,255,0) 70%),radial-gradient(55% 55% at 78% 72%,rgba(0,159,227,.75) 0%,rgba(0,159,227,0) 70%),linear-gradient(160deg,#3d33a0 0%,#312783 55%,#1e1a55 100%);background-attachment:fixed;background-size:cover}
.foot_cta a{color:#fff}
.foot_cta--ttl{margin-bottom:1rem;text-align:center;font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5}
.foot_cta--ttl .icon{display:block;width:3.5rem;margin:0 auto 1rem}
.foot_cta--ttl .icon svg{width:100%;height:auto;fill:none;stroke:#fff;stroke-width:1.2}
.foot_cta--ttl .font-en{display:block;margin-top:1rem;margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.375rem}
.foot_cta--ttl .font-en::after{content:"";display:block;width:2.5rem;margin-top:1rem;margin-inline:auto;border-bottom:1px solid}
.foot_cta .tel{font-size:1.5rem;letter-spacing:.1875rem}
.foot_cta .tel .num{font-size:2.5rem;letter-spacing:.375rem}
.foot_cta--links li{width:50%;border-top:1px solid;border-bottom:1px solid}
.foot_cta--links li:nth-child(1){border-right:1px solid}
.foot_cta--links li a{display:flex;flex-direction:column;align-items:center;justify-content:center;height:26.25rem}
.foot_cta--links li a:hover{background-color:rgba(255,255,255,.2)}
.foot_cta--links li a .icon svg{width:1.9375rem;height:1.9375rem;fill:#fff;opacity:0;transition:var(--transit-default)}
.foot_cta--links li a:hover .icon svg{opacity:1}
.foot_cta--links li .font-en{display:block;margin-bottom:1.5rem;font-size:1.25rem;letter-spacing:.375rem}
.foot_cta--links li .font-en::after{content:"";display:block;width:2.5rem;margin-top:.5rem;margin-inline:auto;border-bottom:1px solid}
.foot_cta--links li .ttl{font-weight:300;font-size:2rem;letter-spacing:.32rem}
.foot_cta--links li .ttl span{position:relative;display:inline-block;padding-bottom:.5rem}
.foot_cta--links li .ttl span::after{content:"";position:absolute;left:0;bottom:0;width:0;border-bottom:1px solid;transition:var(--transit-default)}
.foot_cta--links li a:hover .ttl span::after{width:100%}

/* ---------- informações + mapa ---------- */
.foot_calendar{background-color:var(--clr-bg-01)}
.foot_calendar--ttl{margin-bottom:2rem;font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5}
.foot_calendar--ttl .font-en{display:block;margin-bottom:1rem;font-size:1.25rem;letter-spacing:.375rem}
.foot_calendar--ttl .font-en::after{content:"";display:block;margin-top:1rem;width:2.5rem;border-bottom:1px solid}
.foot_calendar--tel a{display:flex;align-items:center}
.foot_calendar--tel svg{width:1.5rem;height:1.5rem;margin-right:1.5rem;fill:none;stroke:currentColor;stroke-width:1.3}
.foot_calendar--tel .fz32{line-height:1;letter-spacing:.2em}
.foot_calendar--info .fz18{line-height:1.8}
.foot_calendar--info .fz18 a{display:inline-block;margin-left:1rem;padding:0 .75rem;border-radius:99px;background:var(--clr-green);color:#fff;font-size:max(10px,.75rem)}
.foot_calendar--info table{border-collapse:collapse}
.foot_calendar--info table th,.foot_calendar--info table td{padding-block:.25rem;vertical-align:top;text-align:left;font-size:max(12px,.875rem);line-height:1.8}
.foot_calendar--info table th{padding-right:1.5rem;font-weight:400}
.foot_calendar--info table th span{display:flex;align-items:center;justify-content:center;width:7rem;padding:.15rem 0;background:var(--clr-navy);color:#fff;border-radius:.25rem;font-size:max(10px,.75rem)}
.foot_calendar--info table td{padding-block:.375rem}
.foot_calendar--content{height:50.625rem;border-radius:1rem;overflow:hidden;background:#fff}
.foot_calendar--content iframe{width:100%;height:100%;border:0;display:block}

/* ---------- rodapé ---------- */
.footer{background-color:var(--clr-mono-06);color:var(--clr-text-light);padding-block:5rem 2rem}
.footer--logo img{filter:brightness(0) invert(1);height:2.75rem;width:auto}
.footer_top--nav{margin-top:3rem;gap:4rem}
.footer_top--menu{flex:1;display:flex;gap:4rem}
.footer_top--menu .menu_list{flex:1}
.footer_top--menu .menu_list--ttl{margin-bottom:2.5rem;padding-bottom:.75rem;border-bottom:1px solid rgba(213,213,229,.4);font-size:max(13px,1rem);letter-spacing:.15em;font-weight:400}
.footer_top--menu .menu_list li{font-size:max(11px,.85rem);line-height:2.2}
.footer_top--menu .menu_list li a:hover{color:#fff}
.footer--address{color:#fff;font-size:max(11px,.85rem);width:21.375rem}
.footer--address table th,.footer--address table td{padding-block:.125rem;vertical-align:top;text-align:left;font-weight:400}
.footer--address table th{padding-right:1rem;white-space:nowrap;color:var(--clr-text-light)}
.footer--address .social{display:flex;gap:.75rem;margin-top:1.5rem}
.footer--address .social a{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid rgba(255,255,255,.4)}
.footer--address .social svg{width:1rem;height:1rem;fill:#fff}
.footer--copy{margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(213,213,229,.25);font-size:max(10px,.75rem);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.footer--copy a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}

/* ---------- páginas internas ---------- */
.page-hero{padding:6rem 0 4rem}
.page-hero .ttl-01{font-size:3.5rem;font-weight:400;letter-spacing:.1em;line-height:1.3;color:var(--clr-primary-default)}
.page-hero .ttl-01 .font-en{display:block;font-size:1.25rem;letter-spacing:.375rem;margin-bottom:1.5rem}
.page-hero .ttl-01 .font-en::after{content:"";display:block;width:2.5rem;margin-top:1rem;border-bottom:1px solid}
.page-hero .lead{max-width:56rem;margin-top:2rem;border-left:1px solid;padding-left:1.5rem;line-height:2}
.breadcrumb{display:flex;gap:.5rem;font-size:max(10px,.75rem);color:var(--clr-text-placeholder);margin-bottom:2rem}
.breadcrumb a:hover{color:var(--clr-primary-default)}
.sec-ttl{font-size:2rem;letter-spacing:.32rem;font-weight:400;line-height:1.5;margin-bottom:2.5rem}
.sec-ttl .font-en{display:block;margin-bottom:1rem;font-size:1.25rem;letter-spacing:.375rem}
.sec-ttl .font-en::after{content:"";display:block;margin-top:1rem;width:2.5rem;border-bottom:1px solid}
.sec-ttl.txt-ctr .font-en::after{margin-inline:auto}
.prose{max-width:60rem;line-height:2;font-size:max(13px,1rem)}
.prose p{margin-bottom:1.5rem}
.prose h2{font-size:1.5rem;letter-spacing:.2rem;font-weight:400;margin:2.5rem 0 1rem;padding-left:1.5rem;border-left:1px solid}
.check_list li{position:relative;padding-left:2.5rem;font-size:max(12px,.95rem);line-height:1.8}
.check_list li:not(:last-child){margin-bottom:.625rem}
.check_list li::before{content:"";position:absolute;top:.1rem;left:0;width:2.0625rem;height:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 33 32'%3E%3Ccircle cx='16' cy='16' r='14' fill='none' stroke='%237B77BF'/%3E%3Cpath d='M10 16.5l4 4 9-9' fill='none' stroke='%23312783' stroke-width='1.5'/%3E%3C/svg%3E");background-size:cover}
.split{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;align-items:start}
.card-white{background:#fff;border-radius:1rem;padding:2.5rem}
.card-white h3{font-size:1.25rem;letter-spacing:.2rem;font-weight:400;margin-bottom:1.5rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem}
.steps li{position:relative;background:#fff;border-radius:1rem;padding:3rem 2rem 2rem}
.steps li:nth-child(1) .num{color:var(--clr-navy)}.steps li:nth-child(2) .num{color:var(--clr-red)}.steps li:nth-child(3) .num{color:var(--clr-green)}.steps li:nth-child(4) .num{color:var(--clr-cyan)}
.steps .num{display:block;font-family:var(--font-en);font-size:3rem;line-height:1;color:var(--clr-text-light);font-weight:500;margin-bottom:1rem}
.steps h3{font-size:1.125rem;letter-spacing:.1em;font-weight:500;margin-bottom:.75rem}
.steps p{font-size:max(12px,.875rem);line-height:1.8;color:var(--clr-text-placeholder)}
.faq{display:grid;gap:1rem;max-width:66rem}
.faq details{background:#fff;border-radius:.75rem;padding:0 1.5rem}
.faq summary{list-style:none;cursor:pointer;padding:1.25rem 2.5rem 1.25rem 0;position:relative;font-size:max(13px,1rem);font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:50%;translate:0 -50%;font-size:1.5rem;font-weight:300;color:var(--clr-text-placeholder)}
.faq details[open] summary::after{content:"−"}
.faq details p{padding-bottom:1.25rem;line-height:1.9;font-size:max(12px,.9rem);color:var(--clr-text-placeholder)}
.srv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}
.srv-grid li a{display:block;background:#fff;border-radius:1rem;padding:2rem;height:100%;border:1px solid transparent}
.srv-grid li a:hover{border-color:var(--clr-text-placeholder)}
.srv-grid .num{display:block;font-family:var(--font-en);font-size:1.25rem;letter-spacing:.375rem;margin-bottom:1rem;color:var(--clr-text-placeholder)}
.srv-grid h3{font-size:1.25rem;letter-spacing:.15rem;font-weight:400;margin-bottom:.75rem}
.srv-grid p{font-size:max(12px,.875rem);line-height:1.8;color:var(--clr-text-placeholder)}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}
.blog-card{background:#fff;border-radius:1rem;overflow:hidden;display:flex;flex-direction:column}
.blog-card-image{aspect-ratio:16/9;overflow:hidden;background:var(--clr-deco)}
.blog-card-image img{width:100%;height:100%;object-fit:cover}
.blog-card-body{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;flex:1}
.blog-card-body h3{font-size:1.125rem;font-weight:500;line-height:1.5}
.blog-meta{font-size:max(10px,.75rem);color:var(--clr-text-placeholder)}
.blog-excerpt{font-size:max(12px,.875rem);line-height:1.8;color:var(--clr-text-placeholder);flex:1}
.blog-read-more{font-size:max(11px,.85rem);letter-spacing:.1em}
.blog-empty{background:#fff;border-radius:1rem;padding:4rem 2rem;text-align:center;color:var(--clr-text-placeholder);grid-column:1/-1}
.wa-float{display:none}

/* ==========================================================================
   Mobile (≤767px) — espelha o breakpoint 47.9375em do original
   ========================================================================== */
@media screen and (max-width:47.9375em){
  html{font-size:min(3.6231884058vw,.9375rem);scroll-padding-top:4rem}
  body{padding-top:0;-webkit-text-size-adjust:none;background-attachment:scroll}
  .sp-none{display:none!important}
  .flex-sp-block{flex-direction:column}
  .flex-col2>*,.flex-col3>*{width:100%}
  .gap-sp16{gap:1rem}
  .section_pdg{padding-block:5.3333333333rem}.section_pdg-sm{padding-block:2.6666666667rem}
  .inner{width:86%}
  .btn a{min-width:100%}
  /* header mobile */
  .header{height:4.2666666667rem;background-color:transparent}
  .header--inner{padding-inline:1.5rem;gap:1.0666666667rem}
  .header--logo img{max-height:2.5rem}
  .header-sm{top:0;margin-inline:0;border-radius:0;height:4.2666666667rem}
  .gnav{position:fixed;inset:0;z-index:9998;flex-direction:column;justify-content:center;align-items:flex-start;gap:2rem;padding:5rem 2rem;background:rgba(49,39,131,.96);opacity:0;visibility:hidden;transition:var(--transit-default)}
  .gnav.active{opacity:1;visibility:visible}
  .gnav--menu{flex-direction:column;height:auto;width:100%}
  .gnav--menu li{display:block;width:100%;height:auto}
  .gnav--link{display:flex;align-items:center;padding:.5rem 0;color:var(--clr-wht);height:auto;font-size:1.1rem}
  .gnav--link::before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;background-color:var(--clr-wht);border-radius:50%}
  .head_sub_nav--wrap{position:static;opacity:1;visibility:visible;translate:0;background:none;box-shadow:none;padding:0 0 0 1.5rem;display:none}
  .head_sub_nav--wrap.open{display:block}
  .head_sub_nav .gnav--link{font-size:.95rem;padding:.35rem 0}
  .header--search{display:none}
  .gnav--cta{width:100%}
  .gnav--tel a{color:var(--clr-wht);align-items:flex-start}
  .gnav--tel .num{font-size:1.6rem}
  .fix_btn--wrap{display:flex;align-items:center;gap:.5rem}
  .fix_tel_btn a{display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--clr-text-placeholder)}
  .fix_tel_btn svg{width:1.3rem;height:1.3rem;fill:none;stroke:#fff;stroke-width:1.5}
  /* bottom nav */
  .sp-bottom-nav{display:block;position:fixed;left:0;right:0;bottom:0;z-index:10001}
  .sp-bottom-nav--list{display:flex;border-radius:10px 10px 0 0;background:#fff;box-shadow:0 -6px 20px -10px rgba(49,39,131,.4)}
  .sp-bottom-nav--item{flex:1;text-align:center}
  .sp-bottom-nav--item a{display:flex;align-items:center;justify-content:center;height:3.6rem;font-size:13px;line-height:1.3;color:var(--clr-text-primary)}
  .sp-bottom-nav--item.current{background-color:var(--clr-text-light);border-radius:10px 0 0 0}
  .gnav_btn{display:flex;align-items:center;justify-content:center;flex-direction:column;width:4.2rem;height:3.6rem;background:#fff;cursor:pointer;font-size:10px;letter-spacing:.1em}
  .gnav_btn svg{width:1.4rem;height:1.4rem;fill:var(--clr-primary-default)}
  .gnav_btn .txt_close{display:none}.gnav_btn.active .txt_menu{display:none}.gnav_btn.active .txt_close{display:block}
  .fixed_contact--cta{display:block;position:fixed;left:0;right:0;bottom:3.6rem;z-index:10000;background:#fff;border-radius:1.3333333333rem 1.3333333333rem 0 0;padding:1rem 1rem 1rem;box-shadow:0 -6px 20px -10px rgba(49,39,131,.4)}
  .fixed_contact--cta .cta-note{font-size:.9rem;margin-bottom:.5rem}
  .sp-btm-cta li{flex:1}
  .sp-btm-cta a{display:flex;align-items:center;justify-content:center;height:3rem;border-radius:99px;color:#fff;font-size:1rem}
  .sp-btm-cta-line{background:var(--clr-green)}
  .sp-btm-cta-web{background:var(--clr-primary-default)}
  .open_btn-cta{position:absolute;right:1rem;top:-1.4rem;width:2.4rem;height:2.4rem;border-radius:50%;background:#fff;box-shadow:0 4px 12px -4px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center}
  .open_btn-cta::before{content:"";width:.5rem;height:.5rem;border-right:1.5px solid var(--clr-primary-default);border-bottom:1.5px solid var(--clr-primary-default);rotate:45deg;translate:0 -.15rem;transition:var(--transit-default)}
  .fixed_contact--cta.closed .fixed_contact--cta-wrap{display:none}
  .fixed_contact--cta.closed{padding-bottom:.4rem}
  .fixed_contact--cta.closed .open_btn-cta::before{rotate:-135deg;translate:0 .15rem}
  main{padding-bottom:9rem}
  /* side menu → some */
  .fix_side_menu{display:none}
  /* hero */
  .hero{padding-top:6.8rem}
  .hero_deco.star1{top:50%;left:5%;width:2.4666666667rem;height:2.4666666667rem}
  .hero_deco.star2{top:57%;left:12%;width:1.1333333333rem;height:1.1333333333rem}
  .hero--en{display:none}
  .hero--cont{position:static;width:86%;margin-top:-5.0666666667rem;margin-left:auto;margin-right:auto}
  .hero--catch{font-size:2.15rem;letter-spacing:.18em;white-space:nowrap}
  .hero--lead{margin-bottom:0;letter-spacing:.1em;font-size:1rem}
  .google_review--wrap{display:none}
  .hero_slides{padding:.4rem}
  .hero_slides::before{width:22.5333333333rem;height:auto;aspect-ratio:338/468}
  .hero_slide{width:21.3333333333rem!important;height:auto!important;aspect-ratio:320/446}
  .hero_slide-pc,.hero_slide-sp{clip-path:ellipse(48% 48% at 50% 50%)}
  .hero_slides .scroll_down{top:0;left:0;right:auto;bottom:auto}
  .hero--line{margin-top:1.6rem}
  .hero--line .icon{width:1.6rem;height:1.6rem}
  .hero--line hr{margin-left:.5333333333rem}
  /* destaques */
  .home_news .posts-news--ttl{width:auto;margin-bottom:1rem}
  .home_news .home_news--posts{margin-left:0}
  .home_news .home_news--posts .post{width:100%;padding:1.0666666667rem 0;gap:1.0666666667rem}
  .home_news .home_news--posts .post:not(:last-child){border-right:none;border-bottom:1px solid var(--clr-text-placeholder)}
  .posts-news .post--img{width:4rem}
  /* mensagem */
  .home_message--ttl{margin-bottom:2.1333333333rem}
  .home_message--ttl .lg{margin-bottom:1.0666666667rem;font-size:3.0666666667rem;letter-spacing:.8rem}
  .home_message--ttl .sm{padding-block:.2666666667rem;padding-left:1.0666666667rem;font-size:.9333333333rem}
  .home_message--txtarea{width:100%}
  .home_message--catch{margin-bottom:1.0666666667rem;font-size:2.1333333333rem}
  .home_message--txtarea p{line-height:2.5}
  .animetion_sec{height:100vh}
  .animetion_sec--mask{height:100%;clip-path:ellipse(34% 28% at 50% 50%)}
  /* horizontal → bloco */
  .home_horizotal_scroll{height:auto}
  .home_horizotal_scroll--wrap{display:block;width:100%}
  .home_horizotal_scroll--img{position:relative;height:18.6666666667rem}
  .home_horizotal_scroll--img img{position:static;height:100%;max-width:none;width:100%;object-position:center 15%;mask-image:none;-webkit-mask-image:none}
  .home_horizotal_box,.home_doctor,.home_voice{width:100%;height:auto}
  .home_doctor,.home_voice{padding-top:3.3333333333rem;padding-inline:7%}
  .home_doctor{padding-left:7%}
  .home_doctor .postion{width:4rem;height:4rem;font-size:.8rem;margin-right:1rem}
  .home_doctor .name{font-size:1.6rem}
  .home_doctor .name .font-en{font-size:1.0666666667rem}
  .home_doctor .btn-sm a{width:100%}
  .home_doctor--deco{width:100%;margin-top:-.6666666667rem;font-size:23vw;text-align:center}
  .home_voice .inner{width:100%;padding-right:0}
  .home_voice--ttl{margin-bottom:1.6rem}
  /* motivos */
  .home_reason{height:auto;padding-top:2rem}
  .home_reason>.inner{border-top:none;border-bottom:none;padding-block:0;flex-direction:column}
  .home_reason--deco{display:none}
  .home_reason--txtarea,.home_reason--scroll{width:100%}
  .home_reason--txtarea{border-right:none;margin-bottom:2.1333333333rem;align-items:flex-start}
  .home_reason--txtarea .txt_deco{display:none}
  .home_reason_pager{display:none}
  .home_reason--sec{position:relative;opacity:1;width:100%;padding-block:0;margin-bottom:1.6rem}
  .home_reason--sec .num{bottom:2.6666666667rem;width:100%;text-align:center;font-size:70vw}
  /* indicados */
  .home_recommend_info--imgarea{height:16rem;margin-bottom:1.6rem;border-radius:1.6rem}
  .home_recommend_info--txtarea .font-en{margin-bottom:1.6rem;margin-right:0;padding-bottom:1.0666666667rem}
  .home_recommend_info--ttl{margin-bottom:1.0666666667rem;font-size:1.6rem;line-height:1.65}
  .home_recommend_info--lead{margin-bottom:1.0666666667rem;margin-right:0}
  .home_recommend_info--links{margin-top:0;margin-left:0;width:100%}
  .home_recommend--sec>.inner{padding-block:2.6666666667rem;flex-direction:column}
  .home_recommend--sec .home_recommend--txtarea{padding-right:0}
  .home_recommend--sec .home_recommend--txtarea .ttl{margin-bottom:2.1333333333rem}
  .home_recommend--sec .home_recommend--txtarea .ttl .num{margin-right:1.0666666667rem;font-size:1.6rem}
  .home_recommend--sec .home_recommend--txtarea .ttl .txt{font-size:1.6rem}
  .home_recommend--sec .home_recommend--txtarea .recommend_tag span{padding:.2666666667rem 1.0666666667rem .1333333333rem;margin-right:.2666666667rem;margin-bottom:.2666666667rem;font-size:.8666666667rem}
  .home_recommend--sec .home_recommend--txtarea .recommend_read{margin-block:1.6rem;padding-block:0;padding-left:1.0666666667rem}
  .home_recommend--sec .home_recommend--txtarea .recommend_links{flex-direction:column}
  .home_recommend--sec .home_recommend--txtarea .recommend_links .btn{flex:1}
  .home_recommend--sec .home_recommend--txtarea .recommend_links .btn-sm a{min-width:100%}
  .home_recommend--sec .home_recommend--imgarea{width:100%;height:12rem;border-radius:1.6rem;margin-top:1.6rem}
  /* menu */
  .home_menu .home_menu--deco2{display:none}
  .home_menu--wrap{width:90%;border:none;border-radius:0;padding-bottom:2.6666666667rem}
  .home_menu--wrap::before,.home_menu--wrap::after,.home_menu--wrap .home_menu--deco1{display:none}
  .home_menu .btn-sm{width:100%;margin-inline:0}
  .home_menu .btn-sm:last-child{margin-top:1.0666666667rem}
  .menu_parts_list{grid-template-columns:repeat(3,1fr);gap:1rem}
  .menu_parts_list .parts_icon{width:100%;height:auto;aspect-ratio:1/1;margin-bottom:.5333333333rem}
  .menu_parts_list .parts_icon svg{width:50%;height:50%}
  .menu_parts_list .parts_name{font-size:.7333333333rem}
  /* avaliações */
  .home_case--ttl{display:block;margin-bottom:1.6rem;text-align:center}
  .home_case--ttl .font-en{margin-right:0;margin-bottom:1.6rem}
  .home_case--ttl .font-en::after{margin-top:1.0666666667rem;margin-inline:auto}
  .home_case--insta{justify-content:center;margin-bottom:2rem}
  .home_case--insta .comment::after{display:none}
  .posts-case>*{margin-bottom:1.5rem}
  /* blog */
  .home_blog--info{width:100%}
  .home_blog--ttl{margin-bottom:2.6666666667rem;font-size:1.6rem}
  .home_blog .sub_ttl,.home_blog--cats{display:none}
  .home_blog .posts-blog{width:100%;margin-bottom:2.1333333333rem}
  .home_blog--posts .post{grid-template-columns:5.3333333333rem minmax(0,1fr);gap:1rem}
  .home_blog--posts .post--img{width:5.3333333333rem;height:4rem}
  /* relacionados */
  .foot_related--links li{width:100%;margin-left:0}
  .foot_related--links li:nth-child(2){margin:-1px 0}
  .foot_related--links li a{height:auto;padding:3.7333333333rem 0}
  .foot_related--links li a::before{inset:.5333333333rem}
  .foot_related--links .ttl{font-size:1.3333333333rem;letter-spacing:.3333333333rem}
  /* CTA */
  .foot_cta{background-attachment:scroll}
  .foot_cta--ttl{font-size:1.6rem}
  .foot_cta--links{flex-direction:column;align-items:center}
  .foot_cta--links li{width:90%;border:1px solid}
  .foot_cta--links li:nth-child(1){margin-bottom:1.0666666667rem}
  .foot_cta--links li a{height:12rem;padding-bottom:.5333333333rem}
  .foot_cta--links li a .icon svg{width:1.0666666667rem;height:1.0666666667rem;opacity:1}
  .foot_cta--links li .font-en{font-size:1.0666666667rem;letter-spacing:.1666666667rem}
  .foot_cta--links li .ttl{font-size:1.3333333333rem}
  /* info */
  .foot_calendar--tel{margin-bottom:1.0666666667rem}
  .foot_calendar--tel svg{margin-right:.5333333333rem}
  .foot_calendar--info{margin-top:1.5rem}
  .foot_calendar--info .fz18 a{margin-left:.5333333333rem}
  .foot_calendar--content{height:22rem}
  /* rodapé */
  .footer--logo{width:60%}
  .footer_top--nav{flex-direction:column-reverse;gap:2rem}
  .footer_top--menu{flex-direction:column;gap:1.5rem}
  .footer_top--menu .menu_list--ttl{margin-bottom:1rem}
  .footer--address{width:100%}
  .footer--address table th{word-break:keep-all}
  .footer--copy{flex-direction:column;text-align:center}
  /* internas */
  .page-hero{padding:3rem 0 2rem}
  .page-hero .ttl-01{font-size:2rem}
  .split{grid-template-columns:1fr;gap:2rem}
  .steps{grid-template-columns:1fr;gap:1rem}
  .srv-grid,.blog-grid{grid-template-columns:1fr;gap:1rem}
}
@media screen and (min-width:48em) and (max-width:67.5em){
  .header--inner{padding-left:1.5rem}
  .gnav--link{padding:0 .8rem;font-size:11px}
  .header--search,.gnav--tel .hours{display:none}
  .header-sm{margin-inline:.5rem}
  .fix_side_menu{right:.75rem}
  .hero--cont{left:5vw}
  .hero--en{right:4vw}
  .menu_parts_list{grid-template-columns:repeat(4,1fr)}
}
@media (prefers-reduced-motion:reduce){
  .hero_deco,.scroll_down .ring,.scroll_down--arrow svg,.home_recommend_info--links p{animation:none}
}

/* ---------- cores da logo (pedido do Victor 24/09) ---------- */
.foot_calendar--info table tr:nth-child(2) th span{background:var(--clr-red)}
.foot_calendar--info table tr:nth-child(3) th span{background:var(--clr-green)}
.header::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--clr-red) 0 25%,var(--clr-navy) 25% 50%,var(--clr-green) 50% 75%,var(--clr-cyan) 75%)}
.header-sm::before{display:none}
.home_voice--list li .bold{color:var(--clr-navy)}
.home_voice--list li:nth-child(2) .bold{color:var(--clr-red)}.home_voice--list li:nth-child(3) .bold{color:var(--clr-green)}.home_voice--list li:nth-child(4) .bold{color:var(--clr-cyan)}
.foot_related--links li:nth-child(1) a::before{border-color:var(--clr-red)}.foot_related--links li:nth-child(2) a::before{border-color:var(--clr-green)}.foot_related--links li:nth-child(3) a::before{border-color:var(--clr-cyan)}
.home_menu--wrap{border-color:var(--clr-navy)}

/* ---------- contraste (Victor 24/09: letras sumindo no fundo) ---------- */
.home_reason--txtarea .txt_deco{color:rgba(49,39,131,.22)}
.home_doctor--deco{color:rgba(49,39,131,.2)}
.home_menu .home_menu--deco2,.home_menu--wrap .home_menu--deco1{color:rgba(49,39,131,.22)}
.home_reason--sec .num{color:rgba(49,39,131,.1)}
.google_review .review_item{color:var(--clr-text-primary);font-size:.7rem}
.google_review .review_item--txt .author{color:var(--clr-text-placeholder)}
.google_review .review_item--txt .star,.google_badge .stars,.posts-case .testimonial-stars{color:#C77F0A}
.google_review--wrap{background:rgba(255,255,255,.85)}
.home_voice--list li .bold,.home_voice--list li:nth-child(4) .bold{color:var(--clr-navy)}
.home_voice--list li:nth-child(2) .bold{color:var(--clr-red)}
.home_voice--list li:nth-child(3) .bold{color:var(--clr-green)}
.header--search{background:var(--clr-navy)}
.hero--catch{font-weight:600;letter-spacing:.28em}
.hero--catch .c3{color:#0A85C2}
.hero--catch .c4{color:#00833A}
.hero--en .font-en,.hero--lead{font-weight:400}
.font-en{font-weight:400}
.foot_related--links .font-en{opacity:.85}

.header--search{width:auto;padding:0 2.6rem 0 1.25rem;white-space:nowrap}
.home_reason--txtarea .txt_deco{font-size:7.5rem;letter-spacing:.4rem;white-space:nowrap}
.fix_side_menu--list{font-size:10px;letter-spacing:0}
@media screen and (max-width:47.9375em){.hero--cont{margin-top:-2rem}}

/* Correções mobile (28/09/2026): fundo do topo ao rolar, botões da barra fixa em 1 linha, menu inferior legível */
@media screen and (max-width:47.9375em){
  .header.header-sm{background:rgba(255,255,255,.94);backdrop-filter:blur(6px);box-shadow:0 6px 18px -12px rgba(49,39,131,.35)}
  .sp-btm-cta a{white-space:nowrap;letter-spacing:.02em;font-size:.95rem;padding-inline:.5rem;line-height:1.2}
  .sp-bottom-nav--item a{font-size:12px;letter-spacing:0;padding-inline:2px}
}

/* ============================================================
   Fotos reais da unidade (29/09/2026)
   ============================================================ */
.unit-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;margin-top:3rem}
.unit-gallery figure{margin:0;aspect-ratio:3/4;border-radius:1.5rem;overflow:hidden;background:var(--clr-deco)}
.unit-gallery figure:nth-child(4n+2),.unit-gallery figure:nth-child(4n+4){transform:translateY(2.5rem)}
.unit-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s ease-out}
.unit-gallery figure:hover img{transform:scale(1.04)}
.facade-photo{margin:2rem 0 0}
.facade-photo img{display:block;width:100%;max-width:420px;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:center 58%;border-radius:1.5rem}
.facade-photo figcaption{margin-top:.8rem;font-size:.95rem;line-height:1.6}
@media (max-width:767px){
  .unit-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:2rem}
  .unit-gallery figure{border-radius:1rem}
  .unit-gallery figure:nth-child(4n+2),.unit-gallery figure:nth-child(4n+4){transform:translateY(1.5rem)}
}

/* ============================================================
   Hero com foto em tela cheia (29/09/2026, pedido do Victor)
   - sem o oval: o slider (fade + zoom lento) vira o fundo do hero
   - degradê claro à esquerda/embaixo para o texto navy ler bem
   - selo "Scroll" acima do bloco da direita
   ============================================================ */
.hero{height:100vh;height:100svh;min-height:44rem;padding-top:0;overflow:hidden}
.hero_slides{position:absolute;inset:0;padding:0;z-index:0}
.hero_slides::before{display:none}
.hero_slides::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(245,250,254,.94) 0%,rgba(245,250,254,.82) 27%,rgba(245,250,254,.25) 47%,rgba(245,250,254,0) 62%),
    linear-gradient(0deg,rgba(245,250,254,.95) 0%,rgba(245,250,254,0) 32%),
    linear-gradient(180deg,rgba(245,250,254,.7) 0%,rgba(245,250,254,0) 18%)}
.hero_slide{width:100%!important;height:100%!important;margin:0}
.hero_slide-pc,.hero_slide-sp{clip-path:none;height:100%}
.hero_slide li img{object-position:center 50%}
.hero_slide-pc li img{object-position:center center}
.hero_deco{z-index:3}
.hero--cont{bottom:7rem}
.hero--en{z-index:3;bottom:7rem;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:1.25rem;padding:1.5rem 1.75rem 1.25rem}
.hero--line{position:absolute;left:0;right:0;bottom:2rem;margin-top:0;z-index:3}
/* selo "Scroll" saiu de dentro do slider: fica no hero, entre o texto e o card da direita */
.hero > .scroll_down{position:absolute;z-index:4;right:calc(12.5vw + 25rem);bottom:7.5rem;width:7.5625rem;height:7.5rem;display:flex;align-items:center;justify-content:center}
.hero > .scroll_down .ring{position:absolute;inset:0;animation:rotate-z 10s linear infinite}
.hero > .scroll_down .ring text{font-family:var(--font-en);font-size:10.5px;letter-spacing:0;font-weight:500;fill:var(--clr-primary-default)}
.hero > .scroll_down .scroll_down--arrow{display:flex;align-items:center;justify-content:center;width:4.375rem;height:4.375rem;border-radius:50%;background-color:rgba(255,255,255,.85);transform:rotate(90deg)}
.hero > .scroll_down .scroll_down--arrow svg{width:1.25rem;height:1.25rem;animation:translate-x 5s linear infinite;fill:none;stroke:var(--clr-primary-default);stroke-width:1.5}
.hero > .scroll_down::before{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:-1}
@media screen and (min-width:48em) and (max-width:67.5em){
  .hero > .scroll_down{right:calc(4vw + 25rem)}
}
@media screen and (max-width:47.9375em){
  .hero{height:auto;min-height:0;padding-top:4.3rem}
  .hero_slides{position:relative;inset:auto;height:62svh;min-height:24rem}
  .hero_slides::after{background:linear-gradient(0deg,rgba(245,250,254,1) 0%,rgba(245,250,254,.85) 22%,rgba(245,250,254,0) 50%)}
  .hero_slide{height:100%!important;aspect-ratio:auto}
  .hero_slide-pc,.hero_slide-sp{clip-path:none}
  .hero--cont{position:relative;z-index:3;margin-top:-7rem}
  .hero--line{position:static;margin-top:1.6rem}
  .hero > .scroll_down{top:5.3rem;bottom:auto;right:1rem;transform:scale(.72);transform-origin:right top}
}

/* HD 29/09: lista de slides do celular não carrega no desktop; picture da elipse ocupa a máscara */
@media screen and (min-width:48em){.pc-none{display:none!important}}
.animetion_sec--mask picture{display:block;width:100%;height:100%}
.home_recommend--sec .home_recommend--imgarea img{object-position:center center}

/* 29/09: "Equipe" gigante era cortado embaixo (passava da altura da tela pinada) — tamanho limitado pela altura */
@media screen and (min-width:48em){
  .home_doctor{position:relative}
  .home_doctor--txtarea{position:relative;z-index:1}
  .home_doctor--deco{margin-top:clamp(.75rem,3vh,3rem);font-size:min(12.5rem,13vh);line-height:1.2}
}

/* ============================================================
   Fundos com as cores da logo (29/09/2026, pedido do Victor)
   Cores FORTES intercaladas com seções claras:
   Motivos = verde · Tratamentos = navy · Avaliações = azul (cyan)
   CTA final já era navy. Vermelho/amarelo ficam nos detalhes.
   Seções claras: tons suaves (--bg-*).
   ============================================================ */
:root{
  --bg-cyan:#E7F5FC; --bg-navy:#EEEDF8; --bg-green:#E8F5EE; --bg-yellow:#FEF8E1;
  --logo-navy:#312783; --logo-cyan:#009FE3; --logo-green:#009640;
}
.home_horizotal_scroll{background-color:var(--bg-cyan)}
.home_recommend{background-color:var(--bg-green)}
.home_blog{background-color:var(--bg-yellow)}
.foot_calendar{background-color:var(--bg-cyan)}

/* ---- Motivos: VERDE ---- */
.home_reason_wrap,.home_reason--deco{background-color:var(--logo-green)}
.home_reason_wrap,.home_reason_wrap h2,.home_reason_wrap h3,.home_reason_wrap p{color:#fff}
.home_reason>.inner,.home_reason--txtarea,.home_reason--txtarea p,.home_reason--ttl>.font-en::before{border-color:rgba(255,255,255,.55)}
.home_reason--txtarea .txt_deco{color:rgba(255,255,255,.16)}
.home_reason--sec .num{color:rgba(255,255,255,.12)}
.home_reason--sec .line_deco hr{border-top-color:rgba(255,255,255,.6)}
.home_reason--sec .line_deco .icon svg,.home_reason--deco svg,.home_reason_wrap .home_reason--deco svg{fill:#fff!important}
.home_reason_pager .page{background-color:rgba(255,255,255,.45)}
.home_reason_pager .page.js-active{background-color:var(--clr-yellow)}
.home_reason_wrap .bold{background:linear-gradient(transparent 55%,rgba(245,200,8,.45) 55%);color:#fff}

/* ---- Tratamentos: NAVY ---- */
.home_menu{background-color:var(--logo-navy);border-color:transparent}
.home_menu--wrap,.home_menu--wrap::before,.home_menu--wrap::after{border-color:rgba(255,255,255,.4)!important}
.home_menu,.home_menu--ttl,.home_menu p,.menu_parts_list .parts_name{color:#fff}
.home_menu .home_menu--deco2,.home_menu--wrap .home_menu--deco1{color:rgba(255,255,255,.14)}
.home_menu .btn-sm a{border-color:#fff;color:#fff;background:transparent}
.home_menu .btn-sm a::after{background-color:#fff}
.home_menu .btn-sm a:hover{background-color:#fff;color:var(--logo-navy)}
.home_menu .btn-sm a:hover::after{background-color:var(--logo-navy)}
.menu_parts_list li a:hover .parts_icon{box-shadow:0 12px 30px -10px rgba(0,0,0,.45)}

/* ---- Avaliações: AZUL (cyan da logo) ---- */
.home_case{background-color:var(--logo-cyan)}
.home_case--ttl,.home_case--ttl .font-en{color:#fff}
.home_case--ttl .font-en::after{border-color:#fff}
.home_case .btn-sm a{border-color:#fff;color:var(--logo-navy);background:#fff;font-weight:500}
.home_case .btn-sm a::after{background-color:var(--logo-navy)}
.home_case .btn-sm a:hover{background-color:var(--logo-navy);border-color:var(--logo-navy);color:#fff}
.home_case .btn-sm a:hover::after{background-color:#fff}
/* elementos flutuantes não pegam a cor da seção por trás */
.fix_side_menu{background:rgba(255,255,255,.9)}
.google_review--wrap{background:rgba(255,255,255,.92)}
.home_case .google_badge{background:#fff;border-radius:1rem}
/* telas baixas: tamanho final do "Equipe" é ajustado pelo js/main.js (fitDoctorDeco) */
@media screen and (min-width:48em) and (max-height:820px){
  .home_doctor .postion{width:5.25rem;height:5.25rem;font-size:.85rem;letter-spacing:.08rem;margin-right:1.5rem;flex-shrink:0}
  .home_doctor .name{font-size:2.1rem}
  .home_doctor .catch{margin-top:1.1rem;margin-bottom:.9rem;font-size:1.1rem}
  .home_doctor .check_list.mgn-btm48{margin-bottom:1.25rem}
  .home_doctor .check_list li:not(:last-child){margin-bottom:.35rem}
  .home_doctor .btn-sm.mgn-btm16{margin-bottom:.6rem}
  .home_doctor--deco{margin-top:.5rem}
}

/* ---- Páginas internas (29/09): mesmas cores da logo, por classe na <section> ----
   sec-verde / sec-navy / sec-azul = cor forte com título branco (cards seguem brancos)
   sec-tom-* = tom claro da cor                                                        */
.sec-tom-cyan{background-color:var(--bg-cyan)}
.sec-tom-amarelo{background-color:var(--bg-yellow)}
.sec-tom-verde{background-color:var(--bg-green)}
.sec-verde{background-color:var(--logo-green)}
.sec-navy{background-color:var(--logo-navy)}
.sec-azul{background-color:var(--logo-cyan)}
.sec-verde,.sec-navy,.sec-azul{color:#fff}
.sec-verde .sec-ttl,.sec-navy .sec-ttl,.sec-azul .sec-ttl{color:#fff}
.sec-verde .sec-ttl .font-en::after,.sec-navy .sec-ttl .font-en::after,.sec-azul .sec-ttl .font-en::after{border-color:#fff}
.sec-verde .steps li,.sec-navy .steps li,.sec-azul .steps li,
.sec-verde .srv-grid li a,.sec-navy .srv-grid li a,.sec-azul .srv-grid li a{color:var(--clr-text-primary)}
.sec-azul .srv-grid li a:hover,.sec-verde .srv-grid li a:hover{border-color:var(--logo-navy);box-shadow:0 14px 30px -16px rgba(0,0,0,.45)}
.sec-navy .unit-gallery figure{box-shadow:0 18px 40px -20px rgba(0,0,0,.6)}

/* ============================================================
   Performance (29/09/2026, PageSpeed)
   - CLS 0,22: antes do slick iniciar as 3 fotos do hero ficavam
     empilhadas (regra antiga .hero_slides{height:100%!important}
     virava "auto") e o texto do hero pulava ao iniciar.
   ============================================================ */
.hero_slide-pc:not(.slick-initialized) li:not(:first-child),
.hero_slide-sp:not(.slick-initialized) li:not(:first-child){display:none}
.hero_slide-pc:not(.slick-initialized) li,.hero_slide-sp:not(.slick-initialized) li{height:100%}
@media screen and (max-width:47.9375em){
  .hero_slides{height:62svh!important;min-height:24rem;overflow:hidden}
}
@media screen and (min-width:48em){
  .hero_slides{height:100%!important;overflow:hidden}
}

/* ============================================================
   Bugs do celular (29/09/2026, varredura)
   ============================================================ */
@media screen and (max-width:47.9375em){
  /* 1. Menu: o painel fixo (.gnav) ficava preso dentro do header porque
        backdrop-filter cria um novo "containing block" para position:fixed */
  .header,.header.header-sm{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .header.header-sm{background:rgba(255,255,255,.97)}
  /* 2. Rodapé: a última linha ficava atrás da faixa fixa + barra de navegação */
  .footer{padding-bottom:calc(200px + env(safe-area-inset-bottom))}
  /* 3. "Equipe" gigante quebrava em "Equi / pe" */
  .home_doctor--deco{font-size:19vw;letter-spacing:.05em;white-space:nowrap;overflow:hidden}
  /* 5. textos pequenos demais */
  .menu_parts_list .parts_name{font-size:12px}
  .posts-case .testimonial-role{font-size:11px}
  .gnav_btn{font-size:11px}
}
/* 4. Logo do rodapé: o filtro deixava o símbolo colorido como um quadrado branco */
.footer--logo img{filter:none;background:#fff;border-radius:.6rem;padding:.55rem .8rem;height:3.4rem;box-sizing:content-box}
@media screen and (max-width:47.9375em){
  /* menu aberto: fundo sólido (antes 96% deixava a página aparecer) e sem a faixa "Agendar" por cima */
  .gnav{background:var(--logo-navy,#312783)}
  body:has(.gnav.active) .fixed_contact--cta{display:none}
}
@media screen and (max-width:47.9375em){
  .gnav--menu li.sub-open>.gnav--link span::after{rotate:-135deg;translate:0 .15rem}
  .gnav{overflow-y:auto;justify-content:flex-start;padding-top:6rem;padding-bottom:6rem}
}
.nowrap{white-space:nowrap}
@media screen and (max-width:47.9375em){
  /* caminho (breadcrumb) das páginas internas ficava por baixo do cabeçalho fixo */
  .page-hero{padding-top:4.75rem}
  /* telefone grande da faixa "Agende" quebrava em "99797- / 1875" */
  .foot_cta .num,.foot_cta a[href^="tel"]{white-space:nowrap}
  .foot_cta a[href^="tel"] .num{font-size:min(2.4rem,8.2vw)}
}
@media screen and (max-width:47.9375em){
  /* "Agendar pelo WhatsApp" encostava na borda do quadro em telas de 360px */
  .foot_cta--links li .ttl{font-size:min(1.6rem,5.4vw);letter-spacing:.14em;padding-inline:.75rem;text-align:center}
}

/* ===== Post do blog (template blog-generator, 02/10/2026) ===== */
.post-page-hero{padding-bottom:2rem}
.post-page-hero .post-ttl{font:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;font-size:clamp(1.75rem,3.4vw,2.75rem);letter-spacing:.04em}
.blog-meta{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem}
.post-content{max-width:52rem;line-height:1.95;font-size:max(14px,1rem)}
.post-content > .blog-meta{margin-bottom:2.5rem}
.post-content h2{margin:2.6em 0 .8em;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:500;letter-spacing:.04em;line-height:1.5;color:var(--clr-primary-default);padding-left:1rem;border-left:3px solid var(--clr-secondary-default)}
.post-content h3{margin:1.9em 0 .6em;font-size:1.15rem;font-weight:600;color:var(--clr-primary-default)}
.post-content h4{margin:1.6em 0 .5em;font-size:1rem;font-weight:600}
.post-content p{margin-bottom:1.2em;color:var(--clr-mono-06)}
.post-content ul,.post-content ol{margin:0 0 1.4em;padding-left:1.3em}
.post-content ul{list-style:disc}.post-content ol{list-style:decimal}
.post-content li{margin-bottom:.5em;color:var(--clr-mono-06)}
.post-content li::marker{color:var(--clr-secondary-default)}
.post-content a{color:var(--clr-text-placeholder);text-decoration:underline;text-underline-offset:3px}
.post-content strong{font-weight:600;color:var(--clr-primary-default)}
.post-content figure{margin:2rem 0}
.post-content img{border-radius:1rem;width:100%;height:auto}
.post-content figcaption{margin-top:.6rem;font-size:max(11px,.8rem);color:var(--clr-text-placeholder);text-align:center}
.post-content blockquote{margin:1.8em 0;padding:1.25rem 1.5rem;background:var(--clr-bg-01);border-left:3px solid var(--clr-secondary-default);border-radius:0 .75rem .75rem 0}
.post-content table{width:100%;border-collapse:collapse;margin:1.8em 0;font-size:max(12px,.9rem);display:block;overflow-x:auto}
.post-content th,.post-content td{border:1px solid var(--clr-mono-02);padding:.7rem .9rem;text-align:left}
.post-content th{background:var(--clr-bg-01);color:var(--clr-primary-default);font-weight:600}
.post-content details{background:var(--clr-bg-01);border-radius:.75rem;padding:0 1.25rem;margin-bottom:.75rem}
.post-content summary{list-style:none;cursor:pointer;padding:1rem 2rem 1rem 0;position:relative;font-weight:500;color:var(--clr-primary-default)}
.post-content summary::-webkit-details-marker{display:none}
.post-content summary::after{content:"+";position:absolute;right:0;top:50%;translate:0 -50%;font-size:1.4rem;font-weight:300;color:var(--clr-text-placeholder)}
.post-content details[open] summary::after{content:"−"}
.post-content details > :not(summary){padding-bottom:1rem}
.post-cta{margin-top:3.5rem;padding:2.5rem 2rem;background:var(--clr-bg-01);border-radius:1rem;text-align:center}
.post-cta h3{margin:0 0 .6rem;border:0;padding:0}
.post-cta p{margin-bottom:1.5rem}
.post-cta--btn{display:inline-block;padding:1rem 2.25rem;border-radius:999px;background:var(--clr-wa);color:#fff!important;text-decoration:none!important;font-weight:600;letter-spacing:.05em;transition:opacity .3s}
.post-cta--btn:hover{opacity:.85}
.blog-card-image{display:block}
.blog-card-body h3 a:hover{color:var(--clr-secondary-default)}
