/* JM ULTRA — bespoke luxury homepage */
@font-face{font-family:"JMPrata";src:url("../fonts/Prata-Regular.ttf") format("truetype");font-display:swap;font-weight:400}
@font-face{font-family:"JMManrope";src:url("../fonts/Manrope-Variable.ttf") format("truetype");font-display:swap;font-weight:200 800}
:root{
  --u-ink:#161513;--u-ink-2:#24211e;--u-cream:#f3eee7;--u-paper:#fbf8f3;
  --u-sand:#dfd1bf;--u-bronze:#9a7651;--u-muted:#746d64;--u-line:rgba(22,21,19,.12);
}
body.jm-ultra-home{margin:0;background:var(--u-cream)!important;color:var(--u-ink)!important;font-family:"JMManrope",sans-serif!important;overflow-x:hidden}
body.jm-ultra-home .site-header,body.jm-ultra-home .site-footer,body.jm-ultra-home .jm-premium-footer,body.jm-ultra-home .jm-whatsapp-float{display:none!important}
body.jm-ultra-home *{box-sizing:border-box}
body.jm-ultra-home a{color:inherit}
body.jm-ultra-home p{font-family:"JMManrope",sans-serif!important}
body.jm-ultra-home h1,body.jm-ultra-home h2,body.jm-ultra-home h3{font-family:"JMPrata",serif!important;font-weight:400!important;letter-spacing:-.045em!important}
.jm-u-header{position:sticky;top:0;z-index:999;background:rgba(243,238,231,.88);border-bottom:1px solid var(--u-line);backdrop-filter:blur(18px) saturate(140%)}
.jm-u-nav{width:min(1380px,calc(100% - 56px));height:82px;margin:auto;display:grid;grid-template-columns:1fr auto auto;gap:38px;align-items:center}
.jm-u-brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;width:max-content}
.jm-u-monogram{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--u-ink);border-radius:50%;font-family:"JMPrata";font-size:16px}
.jm-u-brandcopy{display:flex;flex-direction:column;line-height:1}
.jm-u-brandcopy strong{font-family:"JMPrata";font-size:18px;font-weight:400}
.jm-u-brandcopy small{margin-top:6px;color:var(--u-muted);font-size:8px;font-weight:750;letter-spacing:.18em}
.jm-u-desktopnav{display:flex;gap:30px}
.jm-u-desktopnav a{position:relative;text-decoration:none;font-size:12px;font-weight:650}
.jm-u-desktopnav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--u-bronze);transform:scaleX(0);transform-origin:right;transition:.25s}
.jm-u-desktopnav a:hover:after{transform:scaleX(1);transform-origin:left}
.jm-u-navcta,.jm-u-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:.25s}
.jm-u-navcta{padding:12px 19px;border-radius:999px;background:var(--u-ink);color:white!important;font-size:11px;font-weight:700}
.jm-u-mobilemenu{display:none}
.jm-u-main{display:block}
.jm-u-hero{width:min(1380px,calc(100% - 56px));margin:0 auto;min-height:calc(100svh - 82px);display:grid;grid-template-columns:minmax(0,.93fr) minmax(440px,.8fr);gap:clamp(60px,8vw,128px);align-items:center;padding:72px 0 96px}
.jm-u-eyebrow{margin:0 0 22px!important;color:var(--u-bronze)!important;font-size:9px!important;font-weight:800!important;letter-spacing:.24em!important;line-height:1.4!important}
.jm-u-hero h1{max-width:760px;margin:0;color:var(--u-ink)!important;font-size:clamp(62px,7.1vw,112px)!important;line-height:.91!important}
.jm-u-hero h1 em{display:block;color:var(--u-bronze);font-style:italic;font-weight:400}
.jm-u-lead{max-width:590px;margin:34px 0 0!important;color:#5f5952!important;font-size:clamp(18px,1.45vw,21px)!important;line-height:1.75!important}
.jm-u-actions{display:flex;align-items:center;gap:28px;margin-top:36px}
.jm-u-btn{gap:14px;min-height:52px;padding:0 24px;border:1px solid var(--u-ink);border-radius:999px;font-size:12px;font-weight:750}
.jm-u-btn-dark{background:var(--u-ink);color:white!important}
.jm-u-btn-dark:hover{background:var(--u-bronze);border-color:var(--u-bronze)}
.jm-u-textlink{display:inline-flex;gap:10px;align-items:center;text-decoration:none;border-bottom:1px solid rgba(22,21,19,.25);padding-bottom:5px;font-size:12px;font-weight:700}
.jm-u-textlink span{transition:transform .2s}.jm-u-textlink:hover span{transform:translateX(4px)}
.jm-u-hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:58px;padding-top:22px;border-top:1px solid var(--u-line)}
.jm-u-hero-proof div{display:flex;flex-direction:column;gap:5px}
.jm-u-hero-proof strong{font-size:10px;letter-spacing:.03em}
.jm-u-hero-proof span{color:var(--u-muted);font-size:10px}
.jm-u-hero-visual{position:relative;align-self:stretch;display:flex;align-items:center}
.jm-u-portrait-frame{position:relative;width:100%;max-width:560px;margin-left:auto}
.jm-u-portrait{display:block;width:100%;height:auto;aspect-ratio:4/5.25;object-fit:cover;object-position:center top;border-radius:180px 180px 10px 10px;filter:saturate(.9) contrast(1.03);box-shadow:0 38px 90px rgba(50,41,32,.16)}
.jm-u-photo-caption{position:absolute;right:-30px;bottom:34px;width:230px;padding:18px 20px;background:rgba(251,248,243,.93);border:1px solid rgba(22,21,19,.1);backdrop-filter:blur(14px)}
.jm-u-photo-caption span{display:block;font-family:"JMPrata";font-size:19px}
.jm-u-photo-caption small{display:block;margin-top:6px;color:var(--u-muted);font-size:9px;letter-spacing:.05em}
.jm-u-vertical{position:absolute;right:-26px;top:50%;transform:translate(100%,-50%) rotate(90deg);white-space:nowrap;color:#8b8278;font-size:8px;font-weight:700;letter-spacing:.28em}
.jm-u-marquee{overflow:hidden;border-top:1px solid var(--u-line);border-bottom:1px solid var(--u-line);background:#ece4da}
.jm-u-marquee>div{width:max-content;min-width:100%;display:flex;justify-content:center;align-items:center;gap:24px;padding:18px 30px}
.jm-u-marquee span{font-size:9px;font-weight:750;letter-spacing:.18em}.jm-u-marquee i{color:var(--u-bronze);font-style:normal}
.jm-u-intro{width:min(1260px,calc(100% - 56px));margin:auto;display:grid;grid-template-columns:70px minmax(0,1.25fr) minmax(300px,.65fr);gap:clamp(32px,5vw,74px);padding:150px 0 160px;align-items:start}
.jm-u-section-number{font-family:"JMPrata";font-size:16px;color:var(--u-bronze)}
.jm-u-intro h2{max-width:760px;margin:0;color:var(--u-ink)!important;font-size:clamp(48px,5vw,76px)!important;line-height:1.03!important}
.jm-u-intro-copy{padding-top:42px}
.jm-u-intro-copy p{margin:0 0 19px!important;color:#625b53!important;font-size:15px!important;line-height:1.85!important}
.jm-u-intro-copy .jm-u-textlink{margin-top:13px}
.jm-u-treatments{background:var(--u-ink);color:white;padding:130px max(28px,calc((100vw - 1320px)/2)) 150px}
.jm-u-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.52fr);gap:80px;align-items:end;margin-bottom:66px}
.jm-u-section-head h2{max-width:800px;margin:0;color:inherit!important;font-size:clamp(50px,5.6vw,82px)!important;line-height:.99!important}
.jm-u-section-head>p{margin:0!important;color:rgba(255,255,255,.58)!important;font-size:14px!important;line-height:1.8!important}
.jm-u-treatments .jm-u-eyebrow{color:#c5a37d!important}
.jm-u-treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.jm-u-treatment-card{position:relative;overflow:hidden;min-height:560px;padding:26px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.14);transition:transform .35s ease}
.jm-u-treatment-card:hover{transform:translateY(-7px)}
.jm-u-card-dark{background:#22201d}.jm-u-card-light{background:#d9c8b4;color:var(--u-ink);border-color:transparent}
.jm-u-card-photo{color:white}.jm-u-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.75)}
.jm-u-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,14,13,.1),rgba(15,14,13,.72))}
.jm-u-card-index,.jm-u-card-copy{position:relative;z-index:2}.jm-u-card-index{align-self:flex-end;font-family:"JMPrata";font-size:16px}
.jm-u-card-label{font-size:8px;font-weight:800;letter-spacing:.2em;opacity:.65}
.jm-u-card-copy h3{margin:14px 0 12px;color:inherit!important;font-size:clamp(38px,3.2vw,54px)!important;line-height:1!important}
.jm-u-card-copy p{max-width:330px;margin:0 0 26px!important;color:inherit!important;opacity:.68;font-size:13px!important;line-height:1.7!important}
.jm-u-card-link{font-size:10px;font-weight:750;letter-spacing:.04em}
.jm-u-doctor{width:min(1320px,calc(100% - 56px));margin:auto;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1fr);gap:clamp(60px,8vw,120px);align-items:center;padding:160px 0}
.jm-u-doctor-photo{position:relative}
.jm-u-doctor-img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:4px;filter:saturate(.9)}
.jm-u-photo-note{position:absolute;left:-22px;bottom:34px;padding:13px 17px;background:var(--u-paper);border:1px solid var(--u-line);font-size:8px;font-weight:750;letter-spacing:.16em}
.jm-u-doctor-copy h2{max-width:680px;margin:0;color:var(--u-ink)!important;font-size:clamp(50px,5.4vw,80px)!important;line-height:1.01!important}
.jm-u-lead-sm{max-width:620px;margin:28px 0 0!important;color:#625b53!important;font-size:16px!important;line-height:1.85!important}
.jm-u-quote{max-width:620px;margin:36px 0;padding:24px 0;border-top:1px solid var(--u-line);border-bottom:1px solid var(--u-line);font-family:"JMPrata";font-size:20px;line-height:1.55}
.jm-u-btn-outline{background:transparent;color:var(--u-ink)!important}
.jm-u-btn-outline:hover{background:var(--u-ink);color:white!important}
.jm-u-process{background:#e4d8c9;padding:135px max(28px,calc((100vw - 1260px)/2))}
.jm-u-process-intro{display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:start;margin-bottom:70px}
.jm-u-process-intro h2{max-width:820px;margin:0;color:var(--u-ink)!important;font-size:clamp(48px,5vw,74px)!important;line-height:1.02!important}
.jm-u-process-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(22,21,19,.22)}
.jm-u-process-steps article{min-height:270px;padding:28px 32px 30px 0;border-right:1px solid rgba(22,21,19,.22)}
.jm-u-process-steps article+article{padding-left:32px}.jm-u-process-steps article:last-child{border-right:0}
.jm-u-process-steps span{color:var(--u-bronze);font-size:10px;font-weight:800;letter-spacing:.12em}
.jm-u-process-steps h3{margin:64px 0 12px;color:var(--u-ink)!important;font-size:34px!important}
.jm-u-process-steps p{max-width:320px;margin:0!important;color:#625b53!important;font-size:13px!important;line-height:1.75!important}
.jm-u-clinic{width:min(1320px,calc(100% - 56px));margin:auto;padding:150px 0}
.jm-u-clinic-head{color:var(--u-ink)}
.jm-u-clinic-head>p{color:var(--u-muted)!important}
.jm-u-gallery{display:grid;grid-template-columns:1.4fr .8fr;grid-template-rows:1fr 1fr;gap:14px;height:760px}
.jm-u-gallery>div{overflow:hidden}.jm-u-gallery-large{grid-row:1/3}
.jm-u-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease;filter:saturate(.87)}
.jm-u-gallery>div:hover img{transform:scale(1.025)}
.jm-u-reviews{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(50px,8vw,120px);padding:130px max(28px,calc((100vw - 1320px)/2));background:var(--u-paper);align-items:start}
.jm-u-reviews-copy{position:sticky;top:120px}
.jm-u-reviews h2{margin:0;color:var(--u-ink)!important;font-size:clamp(48px,5vw,72px)!important;line-height:1.01!important}
.jm-u-reviews-copy>p:last-child{margin-top:28px!important;color:var(--u-muted)!important;font-size:14px!important;line-height:1.8!important}
.jm-u-reviews-widget .ti-widget{margin:0!important}
.jm-u-final{position:relative;min-height:760px;display:grid;place-items:center;overflow:hidden}
.jm-u-final-image,.jm-u-final-image img,.jm-u-final-overlay{position:absolute;inset:0;width:100%;height:100%}
.jm-u-final-image img{object-fit:cover;filter:saturate(.7)}
.jm-u-final-overlay{background:linear-gradient(90deg,rgba(15,14,13,.9),rgba(15,14,13,.48) 60%,rgba(15,14,13,.26))}
.jm-u-final-content{position:relative;z-index:2;width:min(1260px,calc(100% - 56px));color:white}
.jm-u-final-content h2{max-width:830px;margin:0;color:white!important;font-size:clamp(56px,6.4vw,96px)!important;line-height:.95!important}
.jm-u-final-content>p:not(.jm-u-eyebrow){max-width:560px;margin:28px 0 34px!important;color:rgba(255,255,255,.68)!important;font-size:16px!important;line-height:1.8!important}
.jm-u-btn-light{background:white;border-color:white;color:var(--u-ink)!important}
.jm-u-btn-light:hover{background:#d8c5af;border-color:#d8c5af}
.jm-u-footer{padding:90px max(28px,calc((100vw - 1320px)/2)) 34px;background:#11110f;color:white}
.jm-u-footer-brand{display:flex;align-items:center;gap:22px;padding-bottom:62px;border-bottom:1px solid rgba(255,255,255,.12)}
.jm-u-footer-monogram{display:grid;place-items:center;width:66px;height:66px;border:1px solid rgba(255,255,255,.6);border-radius:50%;font-family:"JMPrata";font-size:22px}
.jm-u-footer-brand h2{margin:0;color:white!important;font-size:42px!important;line-height:1!important}
.jm-u-footer-brand p{margin:8px 0 0!important;color:rgba(255,255,255,.48)!important;font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase}
.jm-u-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding:60px 0}
.jm-u-footer-grid>div{display:flex;flex-direction:column;gap:10px}.jm-u-footer-label{margin-bottom:8px;color:#c7a57e;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.jm-u-footer p,.jm-u-footer a{margin:0;color:rgba(255,255,255,.65)!important;text-decoration:none;font-size:12px;line-height:1.7}
.jm-u-footer a:hover{color:white!important}
.jm-u-footer-bottom{display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.34);font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.jm-u-whatsapp{position:fixed;right:20px;bottom:20px;z-index:1100;display:flex;align-items:center;gap:8px;padding:11px 15px 11px 11px;border-radius:999px;background:#181715;color:#fff!important;box-shadow:0 14px 44px rgba(0,0,0,.22);text-decoration:none;font-size:11px;font-weight:700}
.jm-u-whatsapp svg{width:23px;height:23px;fill:currentColor}

@media(max-width:980px){
  .jm-u-nav{grid-template-columns:1fr auto;width:calc(100% - 36px);height:72px}.jm-u-desktopnav,.jm-u-navcta{display:none}.jm-u-mobilemenu{display:block;position:relative}
  .jm-u-mobilemenu summary{list-style:none;width:42px;height:42px;border:1px solid var(--u-line);border-radius:50%;display:grid;place-content:center;gap:5px;cursor:pointer}.jm-u-mobilemenu summary::-webkit-details-marker{display:none}.jm-u-mobilemenu summary span{display:block;width:16px;height:1px;background:var(--u-ink)}
  .jm-u-mobilepanel{position:fixed;left:0;right:0;top:72px;padding:28px 24px 36px;background:var(--u-paper);border-top:1px solid var(--u-line);box-shadow:0 22px 50px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:18px}
  .jm-u-mobilepanel>a{text-decoration:none;font-family:"JMPrata";font-size:27px}.jm-u-mobilepanel .jm-u-mobilecta{margin-top:10px;padding:14px 18px;border-radius:999px;background:var(--u-ink);color:white!important;text-align:center;font-family:"JMManrope";font-size:12px}
  .jm-u-hero{min-height:auto;grid-template-columns:1fr;gap:48px;width:calc(100% - 40px);padding:70px 0 82px}.jm-u-hero-visual{max-width:620px;width:100%;margin:auto}.jm-u-portrait-frame{max-width:540px;margin:auto}.jm-u-vertical{display:none}.jm-u-photo-caption{right:-10px}
  .jm-u-intro{grid-template-columns:40px 1fr;gap:26px;width:calc(100% - 40px);padding:110px 0}.jm-u-intro-copy{grid-column:2;padding-top:0}
  .jm-u-section-head{grid-template-columns:1fr;gap:24px}.jm-u-treatment-grid{grid-template-columns:1fr}.jm-u-treatment-card{min-height:480px}
  .jm-u-doctor{grid-template-columns:1fr;width:calc(100% - 40px);padding:110px 0}.jm-u-doctor-photo{max-width:680px}
  .jm-u-process-intro{grid-template-columns:1fr}.jm-u-process-steps{grid-template-columns:1fr}.jm-u-process-steps article{min-height:auto;padding:28px 0 34px;border-right:0;border-bottom:1px solid rgba(22,21,19,.22)}.jm-u-process-steps article+article{padding-left:0}.jm-u-process-steps h3{margin-top:30px}
  .jm-u-gallery{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:480px 280px}.jm-u-gallery-large{grid-column:1/3;grid-row:auto}.jm-u-clinic{width:calc(100% - 40px);padding:110px 0}
  .jm-u-reviews{grid-template-columns:1fr}.jm-u-reviews-copy{position:static}
}
@media(max-width:640px){
  .jm-u-brandcopy strong{font-size:16px}.jm-u-brandcopy small{font-size:7px}.jm-u-monogram{width:38px;height:38px}
  .jm-u-hero{padding-top:50px}.jm-u-hero h1{font-size:clamp(50px,15vw,70px)!important}.jm-u-lead{font-size:16px!important}.jm-u-actions{align-items:stretch;flex-direction:column;gap:18px}.jm-u-btn{width:100%}.jm-u-textlink{width:max-content}.jm-u-hero-proof{grid-template-columns:1fr;gap:16px}.jm-u-hero-proof div{padding-bottom:12px;border-bottom:1px solid var(--u-line)}
  .jm-u-portrait{border-radius:110px 110px 6px 6px}.jm-u-photo-caption{position:static;width:100%;margin-top:12px;background:transparent;padding:10px 0;border:0;border-bottom:1px solid var(--u-line)}
  .jm-u-marquee>div{justify-content:flex-start}
  .jm-u-intro{display:block}.jm-u-section-number{margin-bottom:40px}.jm-u-intro h2{font-size:clamp(42px,12vw,55px)!important}.jm-u-intro-copy{margin-top:28px}
  .jm-u-treatments{padding:90px 20px 100px}.jm-u-section-head h2,.jm-u-doctor-copy h2,.jm-u-process-intro h2,.jm-u-reviews h2{font-size:clamp(42px,12vw,56px)!important}.jm-u-treatment-card{min-height:440px}
  .jm-u-doctor{padding:95px 0;gap:50px}.jm-u-photo-note{left:10px;bottom:10px}
  .jm-u-process{padding:90px 20px}
  .jm-u-clinic{padding:95px 0}.jm-u-gallery{display:block;height:auto}.jm-u-gallery>div{height:270px;margin-bottom:12px}.jm-u-gallery .jm-u-gallery-large{height:390px}
  .jm-u-reviews{padding:90px 20px}
  .jm-u-final{min-height:680px}.jm-u-final-content{width:calc(100% - 40px)}.jm-u-final-content h2{font-size:clamp(48px,14vw,66px)!important}
  .jm-u-footer{padding:72px 20px 28px}.jm-u-footer-brand h2{font-size:34px!important}.jm-u-footer-grid{grid-template-columns:1fr;gap:34px}.jm-u-footer-bottom{gap:14px;flex-direction:column}.jm-u-whatsapp span{display:none}.jm-u-whatsapp{padding:12px}
}
