:root{--navy:#082b3d;--navy-2:#0d3b50;--teal:#168c91;--teal-dark:#0d6f74;--sand:#d9ad67;--cream:#f7f3ec;--white:#fff;--ink:#18313b;--muted:#61727a;--line:#dce5e6;--shadow:0 18px 50px rgba(8,43,61,.12);--radius:1.35rem}
html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;color:var(--ink);background:var(--white);font-family:"DM Sans",sans-serif;line-height:1.7}h1,h2,h3{font-family:"Playfair Display",serif;line-height:1.12;color:var(--navy)}h1{font-size:clamp(2.8rem,6vw,5.8rem)}h2{font-size:clamp(2.15rem,4vw,3.65rem)}h3{font-size:1.35rem}a{color:var(--teal-dark);text-underline-offset:.22em}img{max-width:100%}.skip-link{position:fixed;z-index:2000;top:.5rem;left:.5rem;padding:.75rem 1rem;background:var(--white);transform:translateY(-160%)}.skip-link:focus{transform:none}.btn{border-radius:999px;padding:.76rem 1.35rem;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{border-color:var(--teal);background:var(--teal)}.btn-primary:hover,.btn-primary:focus{border-color:var(--teal-dark);background:var(--teal-dark);box-shadow:0 10px 24px rgba(22,140,145,.25)}.btn-accent{border-color:var(--sand);background:var(--sand);color:var(--navy)}.btn-accent:hover{background:#e5bd7d;color:var(--navy)}.btn-link-light{color:var(--white);text-decoration:underline}.btn:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid #e4b963;outline-offset:3px}.site-header{position:sticky;z-index:1000;top:0;background:rgba(255,255,255,.95);box-shadow:0 4px 25px rgba(8,43,61,.08);backdrop-filter:blur(12px)}.navbar{min-height:78px}.brand{display:inline-flex;gap:.65rem;align-items:center;color:var(--navy);text-decoration:none}.brand__mark{display:grid;width:43px;height:43px;place-items:center;border-radius:50% 50% 50% 15%;background:linear-gradient(140deg,var(--teal),var(--navy));color:var(--white);font-family:"Playfair Display",serif;font-size:1.45rem}.brand strong,.brand small{display:block;line-height:1.15}.brand strong{font-family:"Playfair Display",serif;font-size:1.35rem}.brand small{text-transform:uppercase;letter-spacing:.13em;font-size:.58rem;color:var(--muted)}.nav-link{margin-inline:.15rem;color:var(--navy);font-weight:600}.nav-link:hover{color:var(--teal)}.navbar-toggler{border:0}.hero{position:relative;display:grid;min-height:calc(100vh - 78px);place-items:center;overflow:hidden;background:var(--navy)}.hero__image,.hero__overlay{position:absolute;width:100%;height:100%;inset:0}.hero__image{object-fit:cover}.hero__overlay{background:linear-gradient(90deg,rgba(3,27,40,.91) 0%,rgba(3,27,40,.69) 52%,rgba(3,27,40,.18) 100%)}.hero__content{position:relative;padding-block:7rem;color:var(--white)}.hero h1{max-width:850px;margin:.6rem 0 1.2rem;color:var(--white)}.hero h1 span{color:#efc77f}.hero__lead{max-width:680px;font-size:clamp(1.08rem,2vw,1.35rem);color:#eef5f5}.hero__actions,.cta__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.hero__trust{display:flex;flex-wrap:wrap;gap:1.75rem;margin-top:3.2rem;font-size:.83rem;text-transform:uppercase;letter-spacing:.1em}.hero__trust span::before{content:"";display:inline-block;width:7px;height:7px;margin-right:.55rem;border-radius:50%;background:var(--sand)}.eyebrow{margin-bottom:.65rem;color:var(--teal-dark);font-size:.77rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em}.eyebrow--light{color:#efc77f}.section{padding-block:clamp(5rem,8vw,8rem)}.section--soft{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.section-heading>div{max-width:720px}.section-heading h2{margin:0}.section-heading>p{max-width:480px;margin:0;color:var(--muted)}.section-heading--center{justify-content:center;text-align:center}.about__grid,.why__grid,.contact__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2.5rem,7vw,7rem);align-items:center}.about__visual{position:relative;min-height:500px;border-radius:var(--radius);background:linear-gradient(145deg,rgba(8,43,61,.15),rgba(22,140,145,.1)),url("../images/experiences/weddings.jpg") center/cover;box-shadow:var(--shadow)}.about__visual::before{content:"";position:absolute;inset:1rem;border:1px solid rgba(255,255,255,.72);border-radius:calc(var(--radius) - .5rem)}.about__card{position:absolute;right:-1.5rem;bottom:2rem;width:min(270px,85%);padding:1.25rem 1.5rem;border-radius:1rem;background:var(--white);box-shadow:var(--shadow)}.about__card span,.about__card strong{display:block}.about__card span{font-size:.75rem;color:var(--teal-dark);text-transform:uppercase;letter-spacing:.12em}.about__card strong{font-family:"Playfair Display",serif;font-size:1.25rem;color:var(--navy)}.lead-copy{font-size:1.2rem;color:var(--navy)}.text-link{display:inline-block;margin-top:.75rem;font-weight:700;text-decoration:none}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.service-card{min-height:280px;padding:2rem;border:1px solid rgba(8,43,61,.08);border-radius:var(--radius);background:var(--white);box-shadow:0 12px 35px rgba(8,43,61,.06);transition:transform .25s ease,box-shadow .25s ease}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-card__icon{display:grid;width:52px;height:52px;margin-bottom:2.8rem;place-items:center;border-radius:1rem;background:#e3f3f1;color:var(--teal-dark);font-size:1.35rem}.service-card p,.value-card p{color:var(--muted)}.destinations-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:390px;gap:1.25rem}.destination-card{position:relative;grid-column:span 4;overflow:hidden;border-radius:var(--radius);background:var(--navy);box-shadow:var(--shadow)}.destination-card:first-child,.destination-card:nth-child(2){grid-column:span 6}.destination-card img,.destination-card__shade{position:absolute;width:100%;height:100%;inset:0}.destination-card img{object-fit:cover;transition:transform .6s ease}.destination-card:hover img{transform:scale(1.045)}.destination-card__shade{background:linear-gradient(0deg,rgba(3,26,38,.92),rgba(3,26,38,.06) 75%)}.destination-card__content{position:absolute;right:0;bottom:0;left:0;padding:1.75rem;color:var(--white)}.destination-card__content>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:#efc77f}.destination-card h3{margin:.25rem 0;color:var(--white);font-size:1.75rem}.destination-card p{margin-bottom:.7rem;font-size:.92rem}.destination-card a{color:var(--white);font-weight:700;text-decoration:none}.why{overflow:hidden;background:linear-gradient(125deg,var(--navy),#075c64);color:#dfecee}.why h2{color:var(--white)}.why__list{margin:0;padding:0;list-style:none}.why__list li{display:flex;align-items:center;gap:1.25rem;padding:1.05rem 0;border-bottom:1px solid rgba(255,255,255,.16)}.why__list span{color:#efc77f;font-size:.75rem;letter-spacing:.12em}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.value-card{position:relative;padding:2.5rem;border-top:4px solid var(--sand);border-radius:0 0 var(--radius) var(--radius);background:var(--cream)}.value-card>span{position:absolute;right:1.5rem;top:1rem;color:rgba(8,43,61,.12);font-family:"Playfair Display",serif;font-size:3.5rem}.cta{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center;margin-bottom:clamp(5rem,8vw,8rem);padding:clamp(2.5rem,5vw,4.5rem);border-radius:2rem;background:linear-gradient(130deg,#075661,var(--navy));box-shadow:var(--shadow);color:#e6f1f2}.cta h2{color:var(--white)}.cta__actions{justify-content:flex-end}.contact{background:var(--cream)}.contact__grid{align-items:stretch;gap:1.5rem}.contact-card,.quote-card{padding:clamp(1.6rem,4vw,3rem);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.contact-card{background:var(--navy);color:#e3edef}.contact-card h3{color:var(--white)}.contact-card dl{margin:2rem 0 0}.contact-card dl div{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.13)}.contact-card dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:#efc77f}.contact-card dd{margin:0}.contact-card a{color:var(--white)}.contact-card small{display:block;color:#a8bdc4}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.form-field{display:flex;flex-direction:column;gap:.35rem}.form-field--full{grid-column:1/-1}.form-field label{font-size:.83rem;font-weight:700}.form-field input,.form-field textarea{width:100%;padding:.75rem .85rem;border:1px solid #c9d6d8;border-radius:.65rem;background:#fbfdfd}.form-field input:focus,.form-field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(22,140,145,.12)}.form-note{margin:.8rem 0 0;color:var(--muted);font-size:.78rem}.site-footer{padding-top:4.5rem;background:#051f2c;color:#b9c9cd}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1.2fr 1fr;gap:2rem}.brand--footer{margin-bottom:1rem;color:var(--white)}.brand--footer small{color:#b9c9cd}.site-footer h2{color:var(--white);font-family:"DM Sans",sans-serif;font-size:.82rem;text-transform:uppercase;letter-spacing:.13em}.site-footer a,.site-footer span{display:block;margin:.35rem 0;color:#b9c9cd;text-decoration:none}.site-footer a:hover{color:var(--white)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-block:1.3rem;border-top:1px solid rgba(255,255,255,.12);font-size:.8rem}.legal-page{min-height:60vh}.container--narrow{max-width:850px}.legal-page h1{font-size:clamp(2.5rem,5vw,4.5rem)}
@media(max-width:991.98px){.navbar-collapse{padding:1rem 0 1.5rem}.nav-item{width:100%}.nav-link{padding:.65rem 0}.services-grid{grid-template-columns:repeat(2,1fr)}.destination-card,.destination-card:first-child,.destination-card:nth-child(2){grid-column:span 6}.cta{grid-template-columns:1fr}.cta__actions{justify-content:flex-start}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.hero{min-height:760px}.hero__overlay{background:linear-gradient(90deg,rgba(3,27,40,.89),rgba(3,27,40,.55))}.section-heading{display:block}.section-heading>p{margin-top:1rem}.about__grid,.why__grid,.contact__grid{grid-template-columns:1fr}.about__visual{min-height:380px}.about__card{right:1rem}.services-grid,.values-grid{grid-template-columns:1fr}.destinations-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem}.destination-card,.destination-card:first-child,.destination-card:nth-child(2){min-width:85%;height:430px;scroll-snap-align:center}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.form-grid{grid-template-columns:1fr}.form-field--full{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
body{font-family:Inter,"Segoe UI",Arial,sans-serif}h1,h2,h3,.brand__mark,.brand strong,.about__card strong,.value-card>span{font-family:Georgia,"Times New Roman",serif}.site-footer h2{font-family:Inter,"Segoe UI",Arial,sans-serif}.about__visual{background-image:linear-gradient(145deg,rgba(8,43,61,.15),rgba(22,140,145,.1)),url("../images/experiences/weddings.png")}

/* Identidad visual: el logotipo real sustituye automáticamente la alternativa de texto cuando existe. */
.brand__visual{display:grid;flex:0 0 auto;width:76px;height:52px;place-items:center}.brand__logo{display:block;width:100%;height:100%;object-fit:contain}.brand__text{min-width:0}.brand--footer .brand__visual{width:90px;height:60px}
.agency-photo{position:relative;min-width:0;min-height:500px;overflow:visible;border-radius:var(--radius);box-shadow:var(--shadow)}.agency-photo>img,.agency-photo__placeholder{width:100%;height:500px;border-radius:var(--radius)}.agency-photo>img{display:block;object-fit:cover}.agency-photo__placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;border:1px solid rgba(255,255,255,.55);background:linear-gradient(145deg,var(--navy),#11747a);color:var(--white);text-align:center}.agency-photo__placeholder::before{content:"";position:absolute;inset:1rem;border:1px solid rgba(255,255,255,.3);border-radius:calc(var(--radius) - .45rem)}.agency-photo__placeholder strong{position:relative;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,3vw,2rem)}.agency-photo__placeholder small{position:relative;color:#cfe2e3}.agency-photo__pin{position:relative;display:grid;width:54px;height:54px;margin-bottom:1rem;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:var(--sand)}
.contact__details{display:grid;gap:1.5rem}.contact-card h4{margin-top:1.75rem;color:var(--white);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.social-links{display:flex;flex-wrap:wrap;gap:.65rem}.social-link{display:grid;width:48px;height:48px;margin:0;place-items:center;border:1px solid currentColor;border-radius:50%;color:var(--teal-dark);text-decoration:none;transition:color .2s ease,background-color .2s ease,transform .2s ease}.social-link svg{width:23px;height:23px;fill:currentColor}.social-link:hover,.social-link:focus-visible{color:var(--white);background:var(--teal);transform:translateY(-2px)}.contact-card .social-link{color:var(--white);border-color:rgba(255,255,255,.35)}.contact-card .social-link:hover,.contact-card .social-link:focus-visible{border-color:var(--sand);background:var(--sand);color:var(--navy)}
.location-card{display:grid;grid-template-columns:auto 1fr auto;gap:1.15rem;align-items:center;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:0 12px 35px rgba(8,43,61,.06)}.location-card__icon{display:grid;width:52px;height:52px;place-items:center;border-radius:1rem;background:#e3f3f1;color:var(--teal-dark)}.location-card__icon svg{width:26px;height:26px;fill:currentColor}.location-card .eyebrow{margin:0}.location-card h3{margin:.15rem 0;font-size:1.25rem}.location-card p{margin:0}.site-footer .social-link{display:grid;margin:0;color:var(--white)}.site-footer .social-link:hover,.site-footer .social-link:focus-visible{color:var(--navy);background:var(--sand)}
@media(max-width:767.98px){.brand__visual{width:68px;height:46px}.brand__text strong{font-size:1.2rem}.agency-photo,.agency-photo>img,.agency-photo__placeholder{min-height:360px;height:360px}.agency-photo{margin-bottom:1rem}.location-card{grid-template-columns:auto 1fr}.location-card .btn{grid-column:1/-1;width:100%}.social-link{width:50px;height:50px}}
@media(max-width:374.98px){.brand__text small{letter-spacing:.08em}.location-card{grid-template-columns:1fr}.location-card__icon{width:48px;height:48px}}

/* La tarjeta informativa acompaña a la fotografía sin cubrir la fachada. */
.agency-photo{display:grid;gap:1rem;min-height:0;box-shadow:none}.agency-photo>img{box-shadow:var(--shadow)}.about__card{position:static;display:flex;width:100%;max-width:none;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.35rem;border:1px solid var(--line);box-shadow:0 10px 28px rgba(8,43,61,.08)}.about__card span,.about__card strong{margin:0}.footer-grid{grid-template-columns:1.2fr .7fr 1.2fr}
@media(max-width:991.98px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767.98px){.about__card{align-items:flex-start;flex-direction:column;gap:.2rem}.agency-photo{margin-bottom:1rem}.footer-grid{grid-template-columns:1fr}}

/* Ajustes móviles consolidados: presentación limpia entre 320 px y 768 px. */
@media(max-width:820px){
html,body{max-width:100%;overflow-x:hidden}.section{padding-block:4.25rem}.about__grid,.contact__grid{grid-template-columns:minmax(0,1fr);gap:2rem;align-items:stretch}.agency-photo{width:100%;gap:.9rem;margin:0;overflow:visible}.agency-photo>img,.agency-photo__placeholder{width:100%;height:auto;min-height:0;aspect-ratio:1/1;border-radius:1.1rem;object-fit:cover}.agency-photo__placeholder{min-height:320px}.about__card{position:static;right:auto;bottom:auto;display:flex;width:100%;max-width:100%;min-width:0;align-items:flex-start;flex-direction:column;gap:.15rem;margin:0;padding:1rem 1.2rem;border-radius:1rem}.about__card strong{font-size:1.1rem}.about__grid>div:last-child{min-width:0}.lead-copy{font-size:1.08rem}.contact__details,.contact-card,.quote-card,.location-card{min-width:0}.contact__grid{gap:1.25rem}.contact-card,.quote-card{padding:1.5rem}.contact-card dd,.contact-card a,.site-footer a{overflow-wrap:anywhere}.form-grid{grid-template-columns:minmax(0,1fr);gap:.9rem}.form-field,.form-field--full,.form-field input,.form-field textarea{min-width:0}.location-card{grid-template-columns:auto minmax(0,1fr)}.location-card .btn{grid-column:1/-1;width:100%}.social-links{gap:.75rem}.social-link{width:50px;height:50px}.section-heading{display:block;margin-bottom:2.25rem}.section-heading>p{margin-top:1rem}.footer-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
.container{--bs-gutter-x:1.5rem}.navbar{min-height:70px}.brand{gap:.45rem;min-width:0}.brand__visual{width:58px;height:42px}.brand__text strong{font-size:1.08rem}.brand__text small{font-size:.52rem;letter-spacing:.08em}.navbar-toggler{flex:0 0 auto;padding:.45rem}.navbar-collapse{max-height:calc(100vh - 70px);overflow-y:auto}.nav-link{padding:.7rem .15rem}.navbar-nav .btn{width:100%;margin-top:.35rem}.hero{min-height:680px}.hero__content{padding-block:4.5rem}.hero h1{font-size:clamp(2.35rem,12vw,3rem)}.hero__lead{font-size:1rem}.hero__actions,.cta__actions{display:grid;grid-template-columns:1fr;width:100%}.hero__actions .btn,.cta__actions .btn,.quote-card>.btn,.quote-card button[type="submit"]{width:100%;white-space:normal}.hero__trust{gap:.7rem 1rem;margin-top:2.2rem;font-size:.7rem}.section{padding-block:3.75rem}.section h2{font-size:clamp(1.9rem,10vw,2.45rem)}.about__grid{gap:1.75rem}.agency-photo__placeholder{min-height:280px;padding:1.25rem}.about__card{padding:.9rem 1rem}.contact-card,.quote-card{padding:1.25rem}.contact-card dl{margin-top:1.25rem}.contact-card dl div{padding:.85rem 0}.location-card{gap:.85rem;padding:1.2rem}.location-card h3{font-size:1.12rem}.form-grid{margin:1.25rem 0}.form-field input,.form-field textarea{font-size:16px}.cta{gap:1.5rem;margin-inline:.75rem;padding:2rem 1.25rem;border-radius:1.25rem}.footer-bottom{line-height:1.6}
}
@media(max-width:350px){
.brand__visual{width:50px;height:38px}.brand__text small{display:none}.hero h1{font-size:2.2rem}.contact-card,.quote-card,.location-card{padding:1rem}.location-card{grid-template-columns:1fr}.location-card__icon{width:46px;height:46px}.social-link{width:48px;height:48px}
}

/* Correcciones definitivas de navegación, Hero, presentación y llamado a la acción móvil. */
.hero{background-image:url("../images/destinations/ixtapa.png");background-position:center;background-size:cover}.agency-media{display:grid;min-width:0;gap:1rem}.agency-photo{position:static;overflow:hidden;border-radius:var(--radius)}.about__note{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.35rem;border:1px solid var(--line);border-radius:1rem;background:var(--white);box-shadow:0 10px 28px rgba(8,43,61,.08)}.about__note span,.about__note strong{display:block;min-width:0}.about__note span{color:var(--teal-dark);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.about__note strong{color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:1.1rem;text-align:right}.navbar-toggler{display:grid;width:48px;height:48px;padding:0;place-items:center;border:1px solid var(--line);border-radius:.75rem}.navbar-toggler-icon{position:relative;display:block;width:26px;height:18px;border-top:2px solid var(--navy);border-bottom:2px solid var(--navy);background-image:none!important}.navbar-toggler-icon::before{content:"";position:absolute;top:50%;left:0;width:100%;height:2px;background:var(--navy);transform:translateY(-50%)}.navbar-toggler[aria-expanded="true"]{background:#e3f3f1}
@media(min-width:992px){.navbar-toggler{display:none}}
@media(max-width:820px){.agency-media{width:100%;gap:.9rem}.agency-photo{width:100%}.about__note{position:static;right:auto;bottom:auto;max-width:100%;align-items:flex-start;flex-direction:column;gap:.2rem;margin:0}.about__note strong{text-align:left}.container.cta{width:calc(100% - 1.5rem);max-width:calc(100% - 1.5rem);margin-right:auto;margin-left:auto;overflow:hidden}.cta>div,.cta__actions,.cta__actions .btn{min-width:0;max-width:100%}.navbar-collapse{width:100%;border-top:1px solid var(--line);margin-top:.65rem}.navbar-nav{width:100%}}
@media(max-width:430px){.container.cta{width:calc(100% - 1.5rem);max-width:calc(100% - 1.5rem);margin-right:auto;margin-left:auto;padding:2rem 1.25rem}.cta h2{font-size:clamp(1.85rem,10vw,2.35rem);overflow-wrap:anywhere}.cta__actions{display:grid;width:100%;grid-template-columns:minmax(0,1fr)}.cta__actions .btn{width:100%;white-space:normal}.agency-photo>img,.agency-photo__placeholder{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}.about__note{padding:.95rem 1rem}.navbar>.container{flex-wrap:wrap}}

/* Menú lateral móvil; en escritorio conserva la navegación horizontal. */
.nav-offcanvas{width:min(86vw,360px);border-left:0;background:var(--white);box-shadow:-18px 0 45px rgba(8,43,61,.16)}.nav-offcanvas .offcanvas-header{padding:1.35rem 1.5rem;border-bottom:1px solid var(--line)}.nav-offcanvas .offcanvas-title{margin:0;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:1.55rem}.nav-offcanvas .btn-close{width:44px;height:44px;margin:-.5rem -.5rem -.5rem auto;border-radius:50%}.nav-offcanvas .offcanvas-body{padding:1.25rem 1.5rem}.nav-offcanvas .navbar-nav{gap:.15rem}.nav-offcanvas .nav-link{display:flex;min-height:48px;align-items:center;padding:.7rem .25rem;border-bottom:1px solid rgba(8,43,61,.08);font-size:1rem}.nav-offcanvas .navbar-nav .btn{display:flex;min-height:48px;align-items:center;justify-content:center;margin-top:1rem}.offcanvas-backdrop.show{opacity:.42}
@media(min-width:992px){.nav-offcanvas{position:static;z-index:auto;display:block;visibility:visible!important;width:auto;height:auto;flex-grow:1;border:0;background:transparent;box-shadow:none;transform:none!important;transition:none}.nav-offcanvas .offcanvas-header{display:none}.nav-offcanvas .offcanvas-body{display:flex;overflow:visible;padding:0}.nav-offcanvas .navbar-nav{width:auto;flex-direction:row}.nav-offcanvas .nav-link{display:block;min-height:0;padding:.5rem;border-bottom:0}.nav-offcanvas .navbar-nav .btn{display:inline-block;min-height:0;margin-top:0}.offcanvas-backdrop{display:none!important}}
@media(max-width:430px){.nav-offcanvas{width:min(88vw,340px)}.nav-offcanvas .offcanvas-header,.nav-offcanvas .offcanvas-body{padding-right:1.25rem;padding-left:1.25rem}}

/* Bootstrap 5.1: garantiza que el offcanvas móvil ocupe el viewport y muestre todo su cuerpo. */
@media(max-width:991.98px){
.nav-offcanvas.offcanvas{position:fixed;top:0;right:0;bottom:auto;left:auto;display:flex!important;width:min(88vw,380px);max-width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;flex-direction:column;overflow:hidden;visibility:hidden;background-color:var(--white)}
.nav-offcanvas.offcanvas.show{visibility:visible}.nav-offcanvas .offcanvas-header{display:flex;flex:0 0 auto;width:100%;min-height:74px;align-items:center;background-color:var(--white)}
.nav-offcanvas .offcanvas-body{display:flex!important;width:100%;min-height:0;flex:1 1 auto;flex-direction:column;overflow-x:hidden;overflow-y:auto;background-color:var(--white);color:var(--navy);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.nav-offcanvas .navbar-nav{display:flex!important;width:100%;height:auto;max-height:none;flex:0 0 auto;flex-direction:column!important;align-items:stretch!important;opacity:1;visibility:visible}
.nav-offcanvas .nav-item{display:block!important;width:100%;height:auto;opacity:1;visibility:visible}.nav-offcanvas .nav-link{display:flex!important;width:100%;color:var(--navy)!important;opacity:1;visibility:visible}.nav-offcanvas .nav-link:hover,.nav-offcanvas .nav-link:focus-visible{color:var(--teal-dark)!important;background:#edf7f6}.nav-offcanvas .navbar-nav .btn{width:100%;max-width:100%;color:var(--white)}
}
