:root {
  --ink:#121110;
  --ink-2:#211d1a;
  --cocoa:#3a231f;
  --cocoa-light:#65443d;
  --ivory:#f5f1ea;
  --paper:#fffdf9;
  --sand:#e7ded0;
  --gold:#d2b170;
  --gold-2:#ead7aa;
  --muted:#756e67;
  --line:rgba(18,17,16,.13);
  --white:#fff;
  --green:#25d366;
  --shadow:0 24px 70px rgba(25,18,12,.12);
  --radius:22px;
  --container:min(1180px, calc(100% - 40px));
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:98px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit}
.container{width:var(--container);margin-inline:auto}
.section{padding:112px 0;position:relative}
.section-dark{background:var(--ink);color:var(--ivory)}
.skip-link{position:fixed;top:10px;left:10px;z-index:9999;padding:10px 14px;background:#fff;color:#000;transform:translateY(-150%);transition:.2s}
.skip-link:focus{transform:none}
.topbar{height:34px;background:var(--cocoa);color:#f3eadd;font-size:.73rem;letter-spacing:.06em}
.topbar__inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.topbar a{font-weight:700}
.header{position:sticky;top:0;z-index:100;background:rgba(255,253,249,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(18,17,16,.07);transition:box-shadow .25s,background .25s}
.header.is-scrolled{box-shadow:0 12px 36px rgba(18,17,16,.08);background:rgba(255,253,249,.97)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{width:190px;display:flex;align-items:center}
.brand img{width:100%;height:auto}
.nav{display:flex;align-items:center;gap:25px;font-size:.87rem;font-weight:600}
.nav>a:not(.btn){position:relative;padding:8px 0}
.nav>a:not(.btn)::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:.25s}
.nav>a:not(.btn):hover::after{width:100%}
.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0;transition:.25s}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:13px 22px;border:1px solid transparent;border-radius:999px;font-size:.86rem;font-weight:800;letter-spacing:.02em;transition:transform .25s,box-shadow .25s,background .25s,color .25s,border-color .25s;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:19px;height:19px;fill:currentColor}
.btn--dark{background:var(--ink);color:var(--ivory);box-shadow:0 10px 30px rgba(18,17,16,.18)}
.btn--dark:hover{background:var(--cocoa)}
.btn--gold{background:var(--gold);color:#17130e;box-shadow:0 12px 32px rgba(210,177,112,.24)}
.btn--gold:hover{background:var(--gold-2)}
.btn--ghost{border-color:rgba(255,255,255,.32);color:#fff;background:transparent}
.btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.nav__cta{min-height:44px;padding:10px 17px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800;color:var(--gold)}
.eyebrow i{display:block;width:34px;height:1px;background:currentColor}
.eyebrow--dark{color:#8f6e37}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.02}
h1{font-size:clamp(3.1rem,6.7vw,6.8rem);margin:22px 0 28px}
h2{font-size:clamp(2.5rem,4.7vw,5rem);margin:18px 0 22px}
h1 em,h2 em,h3 em{font-style:italic;color:var(--gold)}
.hero{min-height:790px;display:flex;align-items:center;overflow:hidden;padding:70px 0 90px}
.hero__grid{display:grid;grid-template-columns:1.05fr .82fr;align-items:center;gap:74px;position:relative;z-index:2}
.hero__copy>p{font-size:1.08rem;max-width:660px;color:rgba(245,241,234,.72);margin-bottom:32px}
.hero__actions{display:flex;flex-wrap:wrap;gap:13px}
.hero__meta{display:flex;gap:48px;margin-top:52px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);max-width:560px}
.hero__meta div{display:flex;flex-direction:column}
.hero__meta strong{font-family:var(--serif);font-size:1.15rem;font-weight:400;color:#fff}
.hero__meta span{font-size:.72rem;color:rgba(245,241,234,.5);letter-spacing:.05em}
.hero__visual{position:relative}
.hero__frame{position:relative;height:650px;border-radius:220px 220px 24px 24px;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 35px 100px rgba(0,0,0,.42);background:#81777f}
.hero__frame>img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero__frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(18,17,16,.75));pointer-events:none}
.hero__card{position:absolute;left:24px;right:24px;bottom:22px;z-index:2;padding:20px 22px;border:1px solid rgba(255,255,255,.16);background:rgba(18,17,16,.72);backdrop-filter:blur(14px);border-radius:16px;display:grid;gap:3px}
.hero__card span{font-size:.65rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}
.hero__card strong{font-family:var(--serif);font-weight:400;font-size:1.23rem}
.hero__card a{font-size:.78rem;color:rgba(255,255,255,.72);margin-top:4px}
.hero__seal{position:absolute;right:-44px;top:94px;width:104px;height:104px;border-radius:50%;background:var(--gold);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 45px rgba(0,0,0,.3);transform:rotate(7deg)}
.hero__seal span{font-family:var(--serif);font-size:2.5rem;line-height:.9}
.hero__seal small{text-transform:uppercase;letter-spacing:.18em;font-size:.54rem;margin-left:4px}
.hero__glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.hero__glow--one{width:520px;height:520px;background:radial-gradient(circle,rgba(90,58,48,.45),transparent 68%);left:-120px;top:-180px}
.hero__glow--two{width:420px;height:420px;background:radial-gradient(circle,rgba(210,177,112,.12),transparent 68%);right:-60px;bottom:-180px}
.marquee{overflow:hidden;background:var(--gold);color:#1c1711;height:54px;display:flex;align-items:center;border-block:1px solid rgba(0,0,0,.08)}
.marquee__track{display:flex;align-items:center;gap:22px;width:max-content;animation:marquee 26s linear infinite;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;white-space:nowrap}
.marquee b{font-size:.55rem;opacity:.5}
@keyframes marquee{to{transform:translateX(-50%)}}
.intro{padding-bottom:88px}
.intro__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:end}
.intro__copy{font-size:1.08rem;color:var(--muted);padding-bottom:9px}
.text-link{display:inline-flex;align-items:center;gap:14px;margin-top:16px;font-weight:800;font-size:.86rem;border-bottom:1px solid var(--ink);padding-bottom:5px}
.text-link span{font-size:1.1rem}
.text-link--light{border-color:rgba(255,255,255,.65);color:#fff}
.stats{margin-top:68px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:30px 20px;text-align:center;border-right:1px solid var(--line)}
.stat:last-child{border-right:0}
.stat strong{font-family:var(--serif);font-size:2.9rem;font-weight:400;line-height:1;color:var(--cocoa)}
.stat strong::after{content:"+";font-size:1.1rem;color:var(--gold);vertical-align:top;margin-left:2px}
.stat span{display:block;color:var(--muted);font-size:.75rem;margin-top:9px}
.services{background:var(--ivory)}
.section-heading{max-width:780px}
.section-heading--center{text-align:center;margin:0 auto 46px}
.section-heading--center .eyebrow{justify-content:center}
.section-heading>p{color:var(--muted);font-size:1.02rem}
.section-heading--light{color:#fff}
.section-heading--light h2{max-width:760px}
.tabs{display:flex;justify-content:center;gap:8px;margin-bottom:28px;flex-wrap:wrap}
.tab{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:12px 22px;font-weight:800;cursor:pointer;transition:.22s}
.tab:hover,.tab.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.tab-panel{animation:panelIn .4s ease}
@keyframes panelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-card{min-height:310px;background:var(--paper);border:1px solid rgba(18,17,16,.08);border-radius:var(--radius);padding:25px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(210,177,112,.6)}
.service-card__number{font-family:var(--serif);font-size:.75rem;letter-spacing:.12em;color:#9c7a43}
.service-card h3{font-family:var(--serif);font-size:1.8rem;font-weight:400;line-height:1.1;margin:22px 0 12px}
.service-card p{font-size:.88rem;color:var(--muted);margin:0}
.service-card__bottom{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 14px;border-top:1px solid var(--line);padding-top:18px;margin-top:24px}
.service-card__bottom strong{font-size:1.2rem;color:var(--cocoa)}
.service-card__bottom span{font-size:.68rem;color:var(--muted);grid-column:1/2}
.service-card__bottom a{grid-column:2/3;grid-row:1/3;font-size:.77rem;font-weight:800;border-bottom:1px solid var(--ink);align-self:center}
.service-card--image{padding:0;min-height:310px;color:#fff}
.service-card--image img{width:100%;height:100%;object-fit:cover}
.service-card__overlay{position:absolute;inset:auto 0 0;padding:28px;background:linear-gradient(transparent,rgba(15,13,12,.88));display:flex;flex-direction:column}
.service-card__overlay span{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}
.service-card__overlay strong{font-family:var(--serif);font-size:1.45rem;font-weight:400}
.service-card--retouch ul{list-style:none;padding:0;margin:16px 0 0}
.service-card--retouch li{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;font-size:.85rem}
.service-grid--simple .service-card{min-height:280px}
.academy-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.academy-mini-grid article{background:var(--paper);border-radius:var(--radius);border:1px solid var(--line);padding:25px;min-height:235px;display:flex;flex-direction:column}
.academy-mini-grid span{font-size:.68rem;color:#9a7740;letter-spacing:.13em}
.academy-mini-grid h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;line-height:1.15;margin:17px 0 10px}
.academy-mini-grid p{font-size:.82rem;color:var(--muted);flex:1}
.academy-mini-grid strong{font-size:1.1rem}
.center-action{text-align:center;margin-top:28px}
.gallery-section{overflow:hidden}
.gallery-section::before{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(210,177,112,.14);border-radius:50%;right:-180px;top:60px}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:14px;margin-top:46px}
.gallery__item{border:0;padding:0;border-radius:18px;overflow:hidden;position:relative;cursor:zoom-in;background:#2a2522}
.gallery__item--tall{grid-row:span 2}
.gallery__item--wide{grid-column:span 2}
.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gallery__item:hover img{transform:scale(1.055)}
.gallery__item::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.7));opacity:.7;transition:.25s}
.gallery__item span{position:absolute;z-index:2;left:18px;bottom:14px;font-size:.75rem;font-weight:700;color:#fff}
.gallery__cta{margin-top:38px;display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid rgba(255,255,255,.14)}
.gallery__cta p{font-family:var(--serif);font-size:1.55rem;margin:0}
.academy{background:#f8f4ed}
.academy__intro{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:58px}
.academy__intro>p{font-size:1.03rem;color:var(--muted)}
.program-feature{background:var(--ink);color:#fff;display:grid;grid-template-columns:.82fr 1.18fr;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:20px}
.program-feature__image{min-height:650px;position:relative;overflow:hidden}
.program-feature__image img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.program-feature__badge{position:absolute;left:22px;top:22px;background:var(--gold);color:var(--ink);padding:9px 14px;border-radius:999px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.program-feature__content{padding:60px}
.program-feature__overline{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}
.program-feature h3{font-family:var(--serif);font-size:3.7rem;line-height:1;font-weight:400;margin:16px 0 20px}
.program-feature__content>p{color:rgba(255,255,255,.68);max-width:620px}
.program-list{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.program-list span{border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:8px 12px;font-size:.73rem;color:rgba(255,255,255,.8)}
.check-list{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check-list li{font-size:.82rem;color:rgba(255,255,255,.76);position:relative;padding-left:20px}
.check-list li::before{content:"✓";position:absolute;left:0;color:var(--gold)}
.program-feature__price{display:flex;flex-direction:column;margin:28px 0 22px}
.program-feature__price small{font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.5)}
.program-feature__price strong{font-family:var(--serif);font-size:2.6rem;font-weight:400;color:var(--gold)}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.program-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:390px;display:flex;flex-direction:column;transition:.25s}
.program-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.program-card__tag{font-size:.63rem;text-transform:uppercase;letter-spacing:.13em;color:#8d6c36}
.program-card h3{font-family:var(--serif);font-size:1.9rem;font-weight:400;margin:17px 0 11px}
.program-card p{font-size:.85rem;color:var(--muted)}
.program-card ul{padding-left:18px;font-size:.78rem;color:#5f5954;margin-bottom:22px}
.program-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:17px;border-top:1px solid var(--line)}
.program-card__footer strong{font-family:var(--serif);font-size:1.45rem;font-weight:400}
.program-card__footer a{font-size:.74rem;font-weight:800}
.program-card--cta{background:var(--cocoa);color:#fff}
.program-card--cta p{color:rgba(255,255,255,.67);font-size:.95rem}
.program-card--cta .btn{margin-top:auto;align-self:flex-start}
.about{overflow:hidden}
.about::after{content:"E";position:absolute;right:-30px;bottom:-170px;font-family:var(--serif);font-size:32rem;line-height:1;color:rgba(255,255,255,.025)}
.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:78px;align-items:center;position:relative;z-index:2}
.about__visual{position:relative}
.about__visual>img{width:100%;height:700px;object-fit:cover;object-position:center 44%;border-radius:200px 200px 22px 22px}
.about__quote{position:absolute;left:-30px;right:35px;bottom:25px;padding:22px 25px;background:rgba(18,17,16,.82);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.15);border-radius:16px;font-family:var(--serif);font-size:1.25rem;line-height:1.35}
.about__content>p{color:rgba(255,255,255,.66);font-size:1.04rem}
.benefits{margin:34px 0;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.13)}
.benefits>div{display:grid;grid-template-columns:50px 1fr;gap:0 14px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.13)}
.benefits span{font-family:var(--serif);color:var(--gold);grid-row:1/3}
.benefits h3{font-family:var(--serif);font-weight:400;font-size:1.25rem;margin:0}
.benefits p{font-size:.78rem;color:rgba(255,255,255,.55);margin:3px 0 0}
.process{background:var(--paper)}
.process__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.process article{padding:34px;border:1px solid var(--line);border-radius:var(--radius);min-height:250px;background:linear-gradient(135deg,#fff,#faf6ef)}
.process article span{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--gold);font-family:var(--serif)}
.process h3{font-family:var(--serif);font-size:1.6rem;font-weight:400;margin:28px 0 9px}
.process p{font-size:.85rem;color:var(--muted)}
.faq{background:var(--ivory)}
.faq__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}
.faq__intro{position:sticky;top:130px;align-self:start}
.faq__intro>p{color:var(--muted)}
.accordion{border-top:1px solid var(--line)}
.accordion__item{border-bottom:1px solid var(--line)}
.accordion__item button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;background:none;border:0;text-align:left;font-family:var(--serif);font-size:1.22rem;cursor:pointer}
.accordion__item button i{width:22px;height:22px;position:relative;flex:0 0 auto}
.accordion__item button i::before,.accordion__item button i::after{content:"";position:absolute;background:var(--ink);left:50%;top:50%;transform:translate(-50%,-50%);transition:.25s}
.accordion__item button i::before{width:15px;height:1px}
.accordion__item button i::after{width:1px;height:15px}
.accordion__item.is-open button i::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.accordion__content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s}
.accordion__content>p{overflow:hidden;margin:0;color:var(--muted);font-size:.88rem;padding-right:40px}
.accordion__item.is-open .accordion__content{grid-template-rows:1fr}
.accordion__item.is-open .accordion__content>p{padding-bottom:23px}
.contact{background:var(--cocoa);color:#fff}
.contact__grid{display:grid;grid-template-columns:.95fr 1.05fr;border-radius:28px;overflow:hidden;background:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.22)}
.contact__card{padding:58px}
.contact__card>p{color:rgba(255,255,255,.64)}
.contact__details{margin:28px 0 34px;border-top:1px solid rgba(255,255,255,.12)}
.contact__details>a,.contact__details>div{display:flex;justify-content:space-between;gap:25px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.contact__details span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold)}
.contact__details strong{font-family:var(--serif);font-weight:400;text-align:right}
.contact__actions{display:flex;gap:12px;flex-wrap:wrap}
.contact__map{min-height:680px}
.contact__map iframe{width:100%;height:100%;border:0;filter:grayscale(1) contrast(.92)}
.footer{background:#0b0a09;color:rgba(255,255,255,.65);padding:62px 0 24px}
.footer__main{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.footer__brand{width:240px;opacity:.92}
.footer__brand img{width:100%;height:auto}
.footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.footer__links>div{display:flex;flex-direction:column;gap:9px;font-size:.8rem}
.footer__links strong{color:#fff;font-size:.73rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:7px}
.footer__links a:hover{color:var(--gold)}
.footer__bottom{display:flex;justify-content:space-between;gap:25px;margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:.69rem}
.footer__bottom a{color:#fff}
.heart{color:#e53935;font-size:1rem;display:inline-block;animation:heartbeat 1.7s infinite}
@keyframes heartbeat{0%,40%,80%,100%{transform:scale(1)}20%,60%{transform:scale(1.18)}}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:10px;background:var(--green);color:#fff;border-radius:999px;padding:13px 18px;box-shadow:0 16px 40px rgba(0,0,0,.25);font-weight:800;font-size:.78rem;transition:.25s}
.whatsapp-float:hover{transform:translateY(-3px) scale(1.02)}
.whatsapp-float svg{width:24px;height:24px;fill:#fff}
.whatsapp-float::before{content:"";position:absolute;inset:-5px;border:1px solid rgba(37,211,102,.55);border-radius:999px;animation:pulse 2s infinite}
@keyframes pulse{0%{transform:scale(.95);opacity:.8}75%,100%{transform:scale(1.14);opacity:0}}
.lightbox{position:fixed;inset:0;z-index:999;background:rgba(7,6,5,.92);display:grid;place-items:center;padding:40px}
.lightbox[hidden]{display:none}
.lightbox img{max-height:88vh;max-width:min(90vw,900px);border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.5)}
.lightbox__close{position:absolute;right:25px;top:20px;border:0;background:none;color:#fff;font-size:2.5rem;cursor:pointer}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s ease}
.reveal.is-visible{opacity:1;transform:none}
.reveal--delay{transition-delay:.12s}.reveal--delay-2{transition-delay:.22s}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
@media(max-width:1080px){
  .nav{gap:16px;font-size:.8rem}.brand{width:165px}
  .hero__grid{gap:40px}.hero__frame{height:590px}.hero__seal{right:-18px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .academy-mini-grid{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:repeat(3,1fr)}
  .program-feature__content{padding:45px}.program-feature h3{font-size:3rem}
  .program-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  :root{--container:min(760px, calc(100% - 32px))}
  .section{padding:86px 0}.topbar{display:none}.nav-wrap{height:72px}.brand{width:168px}
  .menu-toggle{display:block;position:relative;z-index:102}
  .menu-toggle.is-active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.is-active span:nth-child(2){opacity:0}.menu-toggle.is-active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
  .nav{position:fixed;inset:0;background:var(--paper);z-index:101;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;font-family:var(--serif);font-size:1.55rem;transform:translateX(100%);transition:transform .35s}
  .nav.is-open{transform:none}.nav__cta{font-family:var(--sans);font-size:.85rem;margin-top:10px}
  .hero{padding:65px 0 80px;min-height:auto}.hero__grid{grid-template-columns:1fr;gap:55px}.hero__copy{text-align:center}.hero__copy>p{margin-inline:auto}.hero__actions,.hero__meta{justify-content:center}.hero__meta{margin-inline:auto}.hero__visual{max-width:540px;margin-inline:auto;width:100%}.hero__frame{height:690px}
  .intro__grid,.academy__intro,.about__grid,.faq__grid,.contact__grid{grid-template-columns:1fr;gap:45px}
  .stats{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:260px}.gallery__item--wide{grid-column:span 1}
  .program-feature{grid-template-columns:1fr}.program-feature__image{min-height:600px}.program-feature__content{padding:45px}
  .about__visual{max-width:620px;margin:auto}.about__visual>img{height:760px}.about__quote{left:20px}
  .faq__intro{position:static}.contact__map{min-height:480px}
  .footer__main{grid-template-columns:1fr;gap:42px}.footer__links{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  :root{--container:calc(100% - 26px);--radius:18px}
  html{scroll-padding-top:76px}.section{padding:72px 0}
  h1{font-size:3.25rem}h2{font-size:2.65rem}
  .hero{padding-top:45px}.hero__copy>p{font-size:.96rem}.hero__actions{flex-direction:column}.hero__actions .btn{width:100%}.hero__meta{gap:20px;justify-content:space-between;text-align:left}.hero__meta strong{font-size:1rem}.hero__frame{height:570px;border-radius:160px 160px 20px 20px}.hero__seal{width:82px;height:82px;right:-6px;top:60px}.hero__seal span{font-size:2rem}.hero__card{left:14px;right:14px;bottom:14px;padding:17px}
  .marquee{height:48px}.intro__grid{gap:20px}.stats{margin-top:44px}.stat{padding:24px 8px}.stat strong{font-size:2.2rem}.stat span{font-size:.64rem}
  .service-grid,.academy-mini-grid,.program-grid,.process__grid{grid-template-columns:1fr}.service-card{min-height:275px}.service-card--image{min-height:390px}
  .gallery{grid-template-columns:1fr;grid-auto-rows:360px}.gallery__item--tall{grid-row:span 1}.gallery__cta{align-items:flex-start;flex-direction:column;gap:18px}.gallery__cta .btn{width:100%}
  .program-feature__image{min-height:490px}.program-feature__content{padding:31px 24px}.program-feature h3{font-size:2.55rem}.check-list{grid-template-columns:1fr}.program-card{min-height:360px}
  .about__visual>img{height:610px;border-radius:150px 150px 20px 20px}.about__quote{left:12px;right:12px;font-size:1.06rem}.benefits>div{grid-template-columns:42px 1fr}
  .contact__card{padding:35px 24px}.contact__details>a,.contact__details>div{flex-direction:column;gap:5px}.contact__details strong{text-align:left}.contact__actions{flex-direction:column}.contact__actions .btn{width:100%}.contact__map{min-height:380px}
  .footer__links{grid-template-columns:1fr;gap:28px}.footer__bottom{flex-direction:column;text-align:center}.footer__brand{width:210px}.whatsapp-float{right:14px;bottom:14px;width:56px;height:56px;padding:0;justify-content:center}.whatsapp-float span{display:none}.whatsapp-float svg{width:28px;height:28px}
  .lightbox{padding:18px}.lightbox__close{right:15px;top:8px}
}


/* ===== Euglimar Studio · interacción y dinamismo v2 ===== */
.scroll-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:9999;pointer-events:none;background:transparent}
.scroll-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-2),#fff1c9);transform:scaleX(0);transform-origin:left center;box-shadow:0 0 14px rgba(210,177,112,.65)}

.btn{position:relative;overflow:hidden;isolation:isolate}
.btn::after{content:"";position:absolute;top:-70%;left:-35%;width:28%;height:240%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:rotate(18deg) translateX(-240%);transition:transform .65s ease;z-index:-1}
.btn:hover::after{transform:rotate(18deg) translateX(620%)}

.tab{position:relative;overflow:hidden}
.tab::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(210,177,112,.18),transparent);transform:translateX(-110%);transition:transform .45s ease}
.tab:hover::before,.tab.is-active::before{transform:translateX(110%)}
.tab.is-active{box-shadow:0 10px 26px rgba(18,17,16,.14);transform:translateY(-2px)}

.service-grid--visuals{align-items:stretch}
.service-card{--rx:0deg;--ry:0deg;--lift:0px;transform:perspective(1000px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(var(--lift));transform-style:preserve-3d;will-change:transform}
.service-card:hover{--lift:-8px}
.service-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,transparent 20%,rgba(210,177,112,.85),transparent 78%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s;pointer-events:none;z-index:4}
.service-card:hover::before{opacity:1}
.service-card--visual{padding:0;min-height:465px;background:var(--paper)}
.service-card__media{position:relative;height:205px;overflow:hidden;background:#d8d0c7}
.service-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(18,17,16,.52));opacity:.38;transition:opacity .4s}
.service-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.75,.25,1),filter .45s ease}
.service-card--visual:hover .service-card__media img{transform:scale(1.09) rotate(.7deg);filter:saturate(1.08) contrast(1.03)}
.service-card--visual:hover .service-card__media::after{opacity:.62}
.service-card__pill{position:absolute;left:16px;bottom:14px;z-index:2;padding:7px 11px;border-radius:999px;background:rgba(18,17,16,.72);backdrop-filter:blur(10px);color:#fff;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.2);transform:translateY(4px);transition:transform .35s,background .35s}
.service-card--visual:hover .service-card__pill{transform:none;background:rgba(58,35,31,.9)}
.service-card__content{padding:22px 24px 24px;display:flex;flex:1;flex-direction:column;justify-content:space-between;position:relative;z-index:2;transform:translateZ(22px)}
.service-card--visual h3{margin:14px 0 9px;font-size:1.65rem}
.service-card--visual .service-card__bottom{margin-top:20px}
.service-card__bottom a{display:inline-flex;align-items:center;gap:6px;transition:color .25s,border-color .25s}
.service-card__bottom a i{font-style:normal;transition:transform .25s}
.service-card:hover .service-card__bottom a{color:#8f6e37;border-color:#8f6e37}
.service-card:hover .service-card__bottom a i{transform:translateX(4px)}
.service-card--choice{padding:0;min-height:465px;color:#fff;background:#1d1816}
.service-card--choice>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .75s cubic-bezier(.2,.75,.25,1),filter .5s}
.service-card--choice::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,17,16,.08) 15%,rgba(18,17,16,.91) 76%);z-index:1}
.service-card--choice:hover>img{transform:scale(1.06);filter:saturate(1.05)}
.service-card--choice__overlay{position:absolute;inset:auto 0 0;z-index:2;padding:28px;transform:translateZ(28px)}
.service-card--choice__overlay h3{font-size:2rem;margin:14px 0 10px;color:#fff}
.service-card--choice__overlay p{color:rgba(255,255,255,.72);margin-bottom:20px}
.service-card--choice__overlay .btn{min-height:46px;padding:10px 18px}

.gallery{grid-auto-flow:dense;perspective:1200px}
.gallery__item{--gx:0deg;--gy:0deg;transform:perspective(900px) rotateX(var(--gx)) rotateY(var(--gy));transition:transform .35s cubic-bezier(.2,.75,.25,1),box-shadow .35s,border-color .35s;border:1px solid rgba(255,255,255,.06)}
.gallery__item:hover{box-shadow:0 28px 58px rgba(0,0,0,.36);border-color:rgba(210,177,112,.55);z-index:3}
.gallery__item img{transition:transform .75s cubic-bezier(.2,.75,.25,1),filter .45s}
.gallery__item:hover img{transform:scale(1.09);filter:saturate(1.12) contrast(1.04)}
.gallery__item::after{background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.78));opacity:.62;transition:opacity .35s}
.gallery__item:hover::after{opacity:.88}
.gallery__item span{left:18px;bottom:17px;transform:translateY(5px);transition:transform .35s,color .35s}
.gallery__item:hover span{transform:none;color:var(--gold-2)}
.gallery__item>i{position:absolute;right:15px;top:14px;z-index:3;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(18,17,16,.58);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.22);color:#fff;font-style:normal;font-size:1.2rem;opacity:0;transform:scale(.7) rotate(-12deg);transition:opacity .3s,transform .35s,background .3s}
.gallery__item:hover>i{opacity:1;transform:scale(1) rotate(0);background:rgba(210,177,112,.92);color:#17130e}
.gallery__item--brand{cursor:pointer;animation:brandPulse 4.8s ease-in-out infinite}
.gallery__item--brand img{object-position:center}
.gallery__item--brand::after{background:linear-gradient(135deg,rgba(18,17,16,.12),rgba(18,17,16,.82))}
@keyframes brandPulse{0%,100%{box-shadow:0 0 0 rgba(210,177,112,0)}50%{box-shadow:0 0 34px rgba(210,177,112,.13)}}

.academy-mini-grid article,.program-card,.process__grid article{--rx:0deg;--ry:0deg;transform:perspective(950px) rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;will-change:transform}
.academy-mini-grid article{position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.academy-mini-grid article::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:linear-gradient(90deg,var(--gold),var(--cocoa));transform:scaleX(0);transform-origin:left;transition:transform .35s}
.academy-mini-grid article:hover{box-shadow:var(--shadow);border-color:rgba(210,177,112,.6)}
.academy-mini-grid article:hover::after{transform:scaleX(1)}
.program-card{overflow:hidden;position:relative}
.program-card::before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(210,177,112,.2),transparent 70%);right:-40px;top:-40px;transform:scale(.3);opacity:0;transition:transform .45s,opacity .45s}
.program-card:hover::before{transform:scale(1.2);opacity:1}
.process__grid article{transition:transform .3s,box-shadow .3s,border-color .3s}
.process__grid article:hover{box-shadow:var(--shadow);border-color:rgba(210,177,112,.55)}

.hero__frame>img{transform:translate3d(0,var(--hero-shift,0px),0) scale(1.025);transition:transform .12s linear}
.hero__seal{animation:sealFloat 4.2s ease-in-out infinite}
@keyframes sealFloat{0%,100%{transform:rotate(7deg) translateY(0)}50%{transform:rotate(3deg) translateY(-9px)}}

@media (hover:hover) and (pointer:fine){
  .service-card,.gallery__item,.academy-mini-grid article,.program-card,.process__grid article{transition:transform .18s ease-out,box-shadow .35s,border-color .35s}
}
@media(max-width:1080px){
  .gallery{grid-auto-flow:dense}
  .gallery__item--brand{grid-column:span 1}
}
@media(max-width:900px){
  .service-card--visual,.service-card--choice{min-height:450px}
  .service-card__media{height:210px}
  .gallery__item--brand{grid-column:span 1}
}
@media(max-width:640px){
  .service-card--visual,.service-card--choice{min-height:440px}
  .service-card__media{height:220px}
  .service-card__content{padding:20px}
  .service-card--choice__overlay{padding:24px 22px}
  .gallery__item>i{opacity:1;transform:scale(.86);width:34px;height:34px}
  .gallery__item--brand{animation:none}
}
@media (prefers-reduced-motion:reduce){
  .hero__seal,.gallery__item--brand{animation:none!important}
  .hero__frame>img{transform:none!important}
}

/* Correcciones de transformación y composición responsive */
.service-card:hover{transform:perspective(1000px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-8px)}
.program-card:hover{transform:perspective(950px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-6px)}
.academy-mini-grid article:hover,.process__grid article:hover{transform:perspective(950px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-5px)}
@media(max-width:1080px){.gallery__item--brand{grid-column:span 2}}
@media(max-width:900px){.gallery__item--brand{grid-column:span 2}}
@media(max-width:640px){.gallery__item--brand{grid-column:span 1}}


/* ===== Ajustes finales v3: galería, academia y formulario ===== */
.gallery__item--brand{
  grid-column:span 2;
  background:#171513;
  cursor:pointer;
}
.gallery__item--brand img{
  object-fit:cover;
  object-position:50% 50%;
  transform:none;
}
.gallery__item--brand:hover img{transform:scale(1.025);filter:saturate(1.04) contrast(1.02)}
.gallery__item--brand::after{
  background:linear-gradient(180deg,transparent 48%,rgba(10,9,8,.76) 100%);
  opacity:.55;
}
.gallery__item--brand:hover::after{opacity:.72}

.academy__intro{
  grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);
  gap:46px;
  align-items:center;
}
.academy__intro-title h2{max-width:680px;margin-bottom:0}
.academy__intro-note{
  padding:30px 32px;
  border:1px solid rgba(143,110,55,.2);
  border-radius:22px;
  background:rgba(255,253,249,.68);
  box-shadow:0 22px 55px rgba(40,30,20,.07);
  position:relative;
  overflow:hidden;
}
.academy__intro-note::before{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-75px;
  top:-75px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(210,177,112,.3),transparent 70%);
}
.academy__intro-note>p{font-size:1rem;color:var(--muted);margin-bottom:23px;position:relative}
.academy__intro-points{display:grid;gap:0;border-top:1px solid var(--line);position:relative}
.academy__intro-points span{display:flex;align-items:center;gap:13px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.79rem;font-weight:700}
.academy__intro-points b{font-family:var(--serif);font-weight:400;color:#9a7740;font-size:1rem}

.booking{
  margin-top:30px;
  padding:48px;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:54px;
  align-items:start;
  border-radius:28px;
  color:var(--ink);
  background:var(--ivory);
  box-shadow:0 30px 80px rgba(0,0,0,.18);
  position:relative;
  overflow:hidden;
}
.booking::after{
  content:"E";
  position:absolute;
  left:-35px;
  bottom:-125px;
  font-family:var(--serif);
  font-size:19rem;
  line-height:1;
  color:rgba(58,35,31,.035);
  pointer-events:none;
}
.booking__intro{position:relative;z-index:1}
.booking__intro h2{font-size:clamp(2.35rem,3.8vw,4.2rem);margin:16px 0 20px}
.booking__intro>p{color:var(--muted);max-width:480px}
.booking__mini{display:grid;gap:10px;margin-top:30px}
.booking__mini span{display:flex;align-items:center;gap:12px;font-size:.78rem;font-weight:800}
.booking__mini b{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--cocoa);color:var(--gold-2);font-family:var(--serif);font-weight:400}
.booking-form{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:17px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.78);
  box-shadow:0 18px 48px rgba(44,31,20,.08);
}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-field--full{grid-column:1/-1}
.form-field label{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#674d2c}
.form-field input,.form-field select,.form-field textarea{
  width:100%;
  border:1px solid rgba(18,17,16,.16);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  padding:13px 14px;
  outline:none;
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
.form-field input,.form-field select{min-height:50px}
.form-field textarea{resize:vertical;min-height:112px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  border-color:#a47d3e;
  box-shadow:0 0 0 4px rgba(210,177,112,.17);
  transform:translateY(-1px);
}
.form-field input:user-invalid,.form-field select:user-invalid{border-color:#b13a36}
.booking-form__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:4px}
.booking-form__footer p{font-size:.7rem;color:var(--muted);margin:0;max-width:220px}
.booking-form__footer .btn{flex-shrink:0}

@media(max-width:1080px){
  .gallery__item--brand{grid-column:1/-1}
  .academy__intro{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:30px}
  .booking{padding:40px;gap:36px}
  .booking-form{padding:25px}
  .booking-form__footer{align-items:flex-start;flex-direction:column}
  .booking-form__footer .btn{width:100%}
}
@media(max-width:900px){
  .academy__intro{grid-template-columns:1fr;gap:28px;align-items:start}
  .academy__intro-note{max-width:none}
  .booking{grid-template-columns:1fr;padding:38px;gap:34px}
  .booking__intro>p{max-width:680px}
}
@media(max-width:640px){
  .gallery{grid-auto-rows:auto}
  .gallery__item{height:360px}
  .gallery__item--brand{grid-column:span 1;height:auto;aspect-ratio:1200/630;min-height:205px}
  .gallery__item--brand img{object-position:center}
  .academy__intro-note{padding:25px 22px}
  .booking{width:calc(100% - 26px);padding:27px 20px;border-radius:22px}
  .booking-form{grid-template-columns:1fr;padding:21px 17px;gap:15px}
  .form-field--full{grid-column:auto}
  .booking-form__footer{grid-column:auto}
  .booking__intro h2{font-size:2.55rem}
}

/* ===== Ajustes v4: academia compacta y hover cromático en servicios ===== */
@media (min-width:901px){
  .academy.section{
    padding-top:68px;
  }
  .academy__intro{
    min-height:360px;
    grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
    padding:38px 40px;
    border:1px solid rgba(143,110,55,.16);
    border-radius:30px;
    background:
      radial-gradient(circle at 7% 4%,rgba(210,177,112,.18),transparent 27%),
      linear-gradient(135deg,#fffdf9 0%,#f3ebdf 100%);
    box-shadow:0 26px 70px rgba(43,31,21,.08);
    overflow:hidden;
    position:relative;
  }
  .academy__intro::after{
    content:"ACADEMY";
    position:absolute;
    left:37px;
    bottom:-38px;
    font-family:var(--serif);
    font-size:7.2rem;
    line-height:1;
    letter-spacing:.08em;
    color:rgba(58,35,31,.035);
    pointer-events:none;
  }
  .academy__intro-title{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:8px 14px 8px 0;
    position:relative;
    z-index:1;
  }
  .academy__intro-title h2{
    max-width:660px;
    font-size:clamp(3.45rem,4.25vw,4.85rem);
    line-height:.98;
    margin:18px 0 0;
  }
  .academy__intro-note{
    min-height:100%;
    padding:34px 35px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border:1px solid rgba(255,255,255,.09);
    border-radius:24px;
    background:
      radial-gradient(circle at 100% 0,rgba(210,177,112,.22),transparent 34%),
      linear-gradient(145deg,#171513,#2d211d);
    color:#fff;
    box-shadow:0 22px 50px rgba(18,17,16,.16);
  }
  .academy__intro-note::before{
    width:190px;
    height:190px;
    right:-90px;
    top:-95px;
    background:radial-gradient(circle,rgba(210,177,112,.22),transparent 68%);
  }
  .academy__intro-note>p{
    color:rgba(255,255,255,.76);
    font-size:1.02rem;
    line-height:1.65;
    margin-bottom:25px;
  }
  .academy__intro-points{
    border-top-color:rgba(255,255,255,.14);
  }
  .academy__intro-points span{
    min-height:50px;
    padding:12px 0;
    border-bottom-color:rgba(255,255,255,.14);
    color:#fff;
    font-size:.81rem;
  }
  .academy__intro-points b{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    border-radius:50%;
    background:var(--gold);
    color:#17130e;
    font-size:.9rem;
  }
}

/* Colores de hover diferentes por servicio */
.service-grid .service-card:nth-child(1){--service-hover:#f7e5dc;--service-accent:#a65f47}
.service-grid .service-card:nth-child(2){--service-hover:#eee3d7;--service-accent:#8b674e}
.service-grid .service-card:nth-child(3){--service-hover:#f5e7c9;--service-accent:#a78032}
.service-grid .service-card:nth-child(4){--service-hover:#f4dfe7;--service-accent:#a86178}
.service-grid .service-card:nth-child(5){--service-hover:#e6e0e8;--service-accent:#67566d}
.service-grid .service-card:nth-child(6){--service-hover:#e2ece4;--service-accent:#56705b}

.service-card__content{
  transition:background-color .38s ease,color .3s ease;
}
.service-card__number{
  width:34px;
  height:34px;
  display:inline-grid;
  place-items:center;
  align-self:flex-start;
  border-radius:50%;
  background:rgba(210,177,112,.16);
  transition:background-color .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;
}
.service-card:hover .service-card__number{
  background:var(--service-accent,var(--cocoa));
  color:#fff;
  transform:rotate(-7deg) scale(1.08);
  box-shadow:0 8px 20px color-mix(in srgb,var(--service-accent,var(--cocoa)) 28%,transparent);
}
.service-card--visual:hover .service-card__content{
  background:var(--service-hover,#f3eadf);
}
.service-grid--simple .service-card{
  transition:transform .3s ease,box-shadow .35s ease,border-color .3s ease,background-color .38s ease,color .3s ease;
}
.service-grid--simple .service-card:hover{
  background:var(--service-hover,#f3eadf);
  border-color:color-mix(in srgb,var(--service-accent,var(--gold)) 55%,transparent);
}
.service-grid--simple .service-card::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-85px;
  top:-85px;
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--service-accent,var(--gold)) 24%,transparent),transparent 68%);
  opacity:0;
  transform:scale(.55);
  transition:opacity .35s ease,transform .45s ease;
  pointer-events:none;
}
.service-grid--simple .service-card:hover::after{
  opacity:1;
  transform:scale(1.15);
}
.service-grid--simple .service-card:hover h3,
.service-grid--simple .service-card:hover .service-card__bottom strong{
  color:color-mix(in srgb,var(--service-accent,var(--cocoa)) 84%,#111);
}
.service-grid--simple .service-card:hover .service-card__bottom{
  border-top-color:color-mix(in srgb,var(--service-accent,var(--gold)) 35%,transparent);
}

/* Hover también visible en la pestaña Academia del menú de servicios */
.academy-mini-grid article:nth-child(1){--academy-hover:#f7e5dc;--academy-accent:#a65f47}
.academy-mini-grid article:nth-child(2){--academy-hover:#eee3d7;--academy-accent:#8b674e}
.academy-mini-grid article:nth-child(3){--academy-hover:#f5e7c9;--academy-accent:#a78032}
.academy-mini-grid article:nth-child(4){--academy-hover:#e6e0e8;--academy-accent:#67566d}
.academy-mini-grid article{
  transition:transform .3s ease,box-shadow .35s ease,border-color .3s ease,background-color .38s ease,color .3s ease;
}
.academy-mini-grid article:hover{
  background:var(--academy-hover,#f3eadf);
  border-color:color-mix(in srgb,var(--academy-accent,var(--gold)) 55%,transparent);
}
.academy-mini-grid article:hover span{
  color:var(--academy-accent,#8f6e37);
}

@media(max-width:1080px) and (min-width:901px){
  .academy__intro{
    grid-template-columns:minmax(0,1fr) minmax(340px,.88fr);
    padding:34px;
  }
  .academy__intro-title h2{font-size:3.65rem}
}
@media(max-width:900px){
  .academy__intro{
    margin-bottom:35px;
  }
  .academy__intro-note{
    background:linear-gradient(145deg,#171513,#2d211d);
    color:#fff;
    border-color:rgba(255,255,255,.09);
  }
  .academy__intro-note>p{color:rgba(255,255,255,.76)}
  .academy__intro-points{border-top-color:rgba(255,255,255,.14)}
  .academy__intro-points span{border-bottom-color:rgba(255,255,255,.14);color:#fff}
  .academy__intro-points b{color:var(--gold-2)}
}
@media (hover:none),(pointer:coarse){
  .service-card:hover .service-card__number{transform:none;box-shadow:none}
}
