/* ============================================================
   NOTARIA PEÑAFLOR — Rediseño Visual Premium
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,700;1,500&family=DM+Sans:wght@300;400;500;600&display=swap');

:root {
    --gold: #b98e44;
    --gold-light: #d4aa6a;
    --gold-dark: #8a6a2e;
    --navy: #152833;
    --navy-deep: #0a1820;
    --navy-mid: #1e3747;
    --white: #ffffff;
    --off-white: #f6f3ef;
    --text-muted: #7a8a95;
    --topbar-h: 44px;
    --nav-h: 80px;
    --ease: cubic-bezier(0.4,0,0.2,1);
    --shadow-gold: 0 8px 32px rgba(185,142,68,0.30);
    --shadow-navy: 0 12px 40px rgba(10,24,32,0.35);
}

/* ─── SCROLLBAR ────────────────────────────── */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:#1e3747}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:6px}
::selection{background:rgba(185,142,68,.22);color:var(--navy)}

/* ─── FRANJA POLÍTICA INSTITUCIONAL ────────── */
#notaria-policy {
    background: linear-gradient(90deg, var(--navy-deep) 0%, var(--navy-mid) 100%);
    border-top: 3px solid var(--gold);
    border-bottom: 1px solid rgba(185,142,68,.2);
    padding: 18px 0;
}
#notaria-policy .policy-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    align-items: center;
    gap: 18px;
}
#notaria-policy .policy-icon {
    flex-shrink: 0;
    width: 48px; height: 48px;
    background: rgba(185,142,68,.15);
    border: 1.5px solid rgba(185,142,68,.4);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
#notaria-policy .policy-icon i {
    color: var(--gold);
    font-size: 22px;
}
#notaria-policy p {
    margin: 0;
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    color: rgba(255,255,255,.82);
    line-height: 1.6;
    font-style: italic;
}
#notaria-policy p strong {
    color: var(--gold);
    font-style: normal;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: .06em;
    text-transform: uppercase;
    display: block;
    margin-bottom: 2px;
}
@media(max-width:767px){
    #notaria-policy .policy-inner{gap:12px;padding:0 16px}
    #notaria-policy p{font-size:13.5px}
    #notaria-policy .policy-icon{width:38px;height:38px}
    #notaria-policy .policy-icon i{font-size:18px}
}


/* Teléfono siempre visible, sin truncar */
#notaria-topbar .tb-item a[href^="tel"] {
    white-space: nowrap;
    overflow: visible;
    letter-spacing: .02em;
    font-weight: 500;
    color: rgba(255,255,255,.9) !important;
}
/* Teléfono en navbar — texto blanco visible sobre fondo oscuro */
header .widget-text a,
header a.widget-text,
header .widget-text {
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    letter-spacing: .02em;
}
header .widget-text.text-black-hover { color: #ffffff !important; }
header .widget-text.text-black-hover:hover { color: var(--gold) !important; }
/* Ícono del teléfono */
header .w-40px.bg-base-color {
    background: var(--gold) !important;
    color: var(--navy) !important;
    flex-shrink: 0;
}
header .w-40px.bg-base-color i { color: var(--navy) !important; }


#notaria-topbar {
    position:fixed;top:0;left:0;width:100%;z-index:9999;
    background:linear-gradient(90deg, var(--navy-deep) 0%, var(--navy-mid) 100%);
    border-bottom:1px solid rgba(185,142,68,.35);
    height:var(--topbar-h);
    display:flex;align-items:center;
    font-family:'DM Sans',sans-serif;font-size:13px;font-weight:400;
    color:rgba(255,255,255,.75);
    padding:0 24px;gap:28px;
    box-shadow:0 2px 16px rgba(0,0,0,.4);
}
#notaria-topbar .tb-item{display:flex;align-items:center;gap:7px}
#notaria-topbar .tb-item i{color:var(--gold);font-size:15px}
#notaria-topbar .tb-item a{color:rgba(255,255,255,.75);text-decoration:none;transition:color .25s}
#notaria-topbar .tb-item a:hover{color:var(--gold)}
#notaria-topbar .tb-divider{width:1px;height:18px;background:rgba(255,255,255,.15)}
#notaria-topbar .tb-right{margin-left:auto;display:flex;align-items:center;gap:14px}
#notaria-topbar .tb-badge {
    background:var(--gold);color:var(--navy);
    padding:3px 12px;border-radius:20px;font-weight:600;font-size:12px;
    letter-spacing:.03em;
}
@media(max-width:768px){
    #notaria-topbar{padding:0 14px;gap:12px;font-size:11.5px}
    #notaria-topbar .tb-hide-sm{display:none}
}

/* ─── OFFSET BODY FOR TOPBAR ───────────────── */
body{padding-top:calc(var(--topbar-h) + var(--nav-h)) !important}

/* ─── NAVBAR PREMIUM ───────────────────────── */
header{top:var(--topbar-h) !important;position:fixed;width:100%;z-index:999}
header .navbar {
    background:rgba(10,24,32,.88) !important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(185,142,68,.2) !important;
    transition:all .35s var(--ease);
    min-height:var(--nav-h);
}
header.sticky .navbar, header .navbar:not(.disable-fixed){
    background:rgba(10,24,32,.97) !important;
    box-shadow:var(--shadow-navy);
}
/* Logo sizing — SVG rectangular wide 520x80 */
header .navbar-brand { padding: 2px 0 !important; }
header .navbar-brand img {
    height: 58px !important;
    width: auto !important;
    max-width: 380px !important;
    object-fit: contain;
    object-position: left center;
    transition: opacity .3s var(--ease), transform .3s var(--ease);
}
header .navbar-brand:hover img { opacity: .85; transform: scale(1.01); }
header .navbar-brand .default-logo { filter: none !important; }
header .navbar-brand .alt-logo   { filter: none !important; }
header .navbar-brand .mobile-logo {
    height: 46px !important;
    max-width: 260px !important;
}
/* Footer logo */
footer .footer-logo img {
    height: 50px !important;
    width: auto !important;
    max-width: 320px !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Navbar layout limpio — menú al centro, teléfono visible a la derecha */
header .navbar-collapse.justify-content-center {
    justify-content: center !important;
    flex: 1 1 auto;
}
header .navbar .navbar-nav {
    gap: 0;
    flex-wrap: nowrap;
}
/* Teléfono/botón derecho — no se comprime */
header .navbar > .container,
header .navbar > .container-fluid {
    flex-wrap: nowrap !important;
    gap: 8px;
}
header .header-icon {
    flex-shrink: 0 !important;
    white-space: nowrap;
}
header .header-button {
    flex-shrink: 0 !important;
}


.navbar .navbar-nav .nav-link {
    color:rgba(255,255,255,.88) !important;
    font-family:'DM Sans',sans-serif;
    font-size:13px !important;
    font-weight:500;
    letter-spacing:.01em;
    padding:6px 10px !important;
    position:relative;
    transition:color .3s var(--ease);
}
.navbar .navbar-nav .nav-link::after {
    content:'';position:absolute;bottom:0;left:14px;right:14px;
    height:2px;background:var(--gold);border-radius:2px;
    transform:scaleX(0);transform-origin:center;
    transition:transform .3s var(--ease);
}
.navbar .navbar-nav .nav-link:hover{color:var(--gold) !important}
.navbar .navbar-nav .nav-link:hover::after{transform:scaleX(1)}

/* Phone in header */
.header-icon .w-40px{
    background:var(--gold) !important;
    box-shadow:0 0 0 3px rgba(185,142,68,.25);
    transition:all .3s var(--ease);
}
.header-icon .w-40px:hover{transform:scale(1.1);box-shadow:var(--shadow-gold)}

/* Link Aranceles PDF destacado */
.navbar .navbar-nav .nav-link[href*="Aranceles"] {
    color: var(--gold) !important;
    font-weight: 600 !important;
    border: 1px solid rgba(185,142,68,.35) !important;
    border-radius: 20px !important;
    padding: 5px 14px !important;
    margin-left: 4px;
    transition: all .3s var(--ease) !important;
}
.navbar .navbar-nav .nav-link[href*="Aranceles"]:hover {
    background: var(--gold) !important;
    color: var(--navy) !important;
    border-color: var(--gold) !important;
}
.navbar .navbar-nav .nav-link[href*="Aranceles"]::after { display: none !important; }
.footer-navbar .nav-link[href*="Aranceles"] {
    color: var(--gold) !important;
    font-weight: 500;
}
.footer-navbar .nav-link[href*="Aranceles"]:hover { color: var(--gold-light) !important; }


/* Botón Envía Mensaje */
.header-button .btn {
    border:1.5px solid var(--gold) !important;
    color:var(--gold) !important;
    font-family:'DM Sans',sans-serif;font-size:13px !important;
    border-radius:30px !important;
    padding:8px 20px !important;
    background:transparent !important;
    transition:all .3s var(--ease) !important;
}
.header-button .btn:hover{
    background:var(--gold) !important;
    color:var(--navy) !important;
    transform:translateY(-2px);
    box-shadow:var(--shadow-gold);
}

/* ─── HERO BANNER MEJORADO ─────────────────── */
section.p-0.bg-dark-gray{position:relative}
/* Overlay más dramático */
.swiper-slide.cover-background{position:relative}
.swiper-slide.cover-background::before {
    content:'';position:absolute;inset:0;z-index:1;
    background:linear-gradient(105deg,rgba(10,24,32,.85) 0%,rgba(10,24,32,.5) 55%,transparent 100%);
}
.swiper-slide.cover-background .container{position:relative;z-index:2}

/* Texto hero reducido */
.swiper-slide .alt-font.fs-30 {
    font-family:'Playfair Display',serif !important;
    font-size:clamp(1.4rem,3vw,2.6rem) !important;
    line-height:1.2 !important;
    text-shadow:0 3px 16px rgba(0,0,0,.4);
    color:var(--white) !important;
    font-weight:600;
}
.swiper-slide .fs-19{
    font-size:13px !important;
    color:rgba(255,255,255,.8) !important;
    letter-spacing:.05em;
    text-transform:uppercase;
    font-family:'DM Sans',sans-serif !important;
}

/* Hero CTA buttons */
.swiper-slide .btn-extra-large {
    background:var(--gold) !important;
    border-color:var(--gold) !important;
    color:var(--navy) !important;
    font-weight:700 !important;
    border-radius:6px !important;
    padding:16px 44px !important;
    font-size:16px !important;
    letter-spacing:.04em;
    box-shadow:var(--shadow-gold);
    transition:all .3s var(--ease) !important;
}
.swiper-slide .btn-extra-large:hover{
    background:var(--gold-light) !important;
    transform:translateY(-4px) !important;
    box-shadow:0 16px 40px rgba(185,142,68,.4) !important;
}
.swiper-slide .btn-extra-large .bg-dark-gray{
    background:var(--navy) !important;
    border-radius:4px;
}

/* Swiper pagination gold */
.swiper-number .swiper-pagination-bullet-active{
    color:var(--gold) !important;font-weight:700;
}

/* ─── SECCIÓN "NOSOTROS" ───────────────────── */
section:not(.p-0):not(.bg-very-light-gray):not(.bg-blue-whale):not(.pt-10px) {
    padding-top:80px !important;padding-bottom:80px !important;
}
section .alt-font.fs-30,
section h3.alt-font{
    font-family:'Playfair Display',serif !important;
    font-size:clamp(1.8rem,3vw,2.6rem) !important;
    line-height:1.2;
}
section h3.alt-font .text-decoration-line-bottom-medium{
    text-decoration-color:var(--gold) !important;
}
section .border-radius-6px{
    border-radius:12px !important;
    box-shadow:0 20px 60px rgba(10,24,32,.18);
    transition:transform .5s var(--ease),box-shadow .5s var(--ease);
}
section .border-radius-6px:hover{
    transform:translateY(-8px) scale(1.01);
    box-shadow:0 30px 70px rgba(10,24,32,.28);
}
.list-style-02 li i{color:var(--gold) !important}
.list-style-02 li{transition:transform .25s var(--ease);padding:4px 0}
.list-style-02 li:hover{transform:translateX(6px)}

/* Botones "Lea más" */
.btn.btn-dark-gray.btn-box-shadow{
    background:var(--navy) !important;
    border-radius:6px !important;
    font-weight:600 !important;
    transition:all .3s var(--ease) !important;
}
.btn.btn-dark-gray.btn-box-shadow:hover{
    background:var(--navy-mid) !important;
    transform:translateY(-3px);
    box-shadow:var(--shadow-navy);
}
.btn.btn-dark-gray .bg-blue-licorice{background:var(--gold) !important}

/* ─── MARQUEE "SERVICIOS" BAR ──────────────── */
section.pt-50px.pb-50px.bg-very-light-gray {
    background:linear-gradient(135deg,#ede9e3 0%,var(--off-white) 100%) !important;
    border-top:2px solid rgba(185,142,68,.2);
    border-bottom:2px solid rgba(185,142,68,.2);
    padding:28px 0 !important;
}
section.pt-50px h5.alt-font{
    font-family:'Playfair Display',serif !important;
    font-size:clamp(1.4rem,2.5vw,1.8rem) !important;
    letter-spacing:-.02em;
}
section.pt-50px h5 span[data-fancy-text]{
    color:var(--gold) !important;
    font-style:italic;
}

/* ─── SECCIÓN AZUL (ÁREAS) ─────────────────── */
section.overflow-hidden.bg-blue-whale {
    background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 60%,#1a3245 100%) !important;
    position:relative;overflow:hidden;
    padding:80px 0 !important;
}
section.overflow-hidden.bg-blue-whale::before{
    content:'';position:absolute;top:-40%;right:-10%;
    width:600px;height:600px;border-radius:50%;
    background:radial-gradient(circle,rgba(185,142,68,.12) 0%,transparent 70%);
    pointer-events:none;
}
section.overflow-hidden.bg-blue-whale::after{
    content:'';position:absolute;bottom:-30%;left:-5%;
    width:400px;height:400px;border-radius:50%;
    background:radial-gradient(circle,rgba(185,142,68,.07) 0%,transparent 70%);
    pointer-events:none;
}
section.overflow-hidden.bg-blue-whale .fs-20{
    color:var(--gold) !important;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:13px !important;
}
section.overflow-hidden.bg-blue-whale h3{
    font-family:'Playfair Display',serif !important;
    color:var(--white) !important;
    font-size:clamp(1.8rem,3vw,2.6rem) !important;
    line-height:1.2;
}

/* Slider nav buttons */
.slider-navigation-style-04{
    background:var(--gold) !important;
    border-radius:50% !important;
    width:52px !important;height:52px !important;
    display:flex;align-items:center;justify-content:center;
    transition:all .3s var(--ease) !important;
    box-shadow:var(--shadow-gold);
}
.slider-navigation-style-04:hover{
    background:var(--gold-light) !important;
    transform:scale(1.08) !important;
}

/* Interactive banners */
.interactive-banner-style-08 figure{
    border-radius:14px !important;overflow:hidden;
    box-shadow:0 12px 40px rgba(0,0,0,.25);
    transition:box-shadow .4s var(--ease);
}
.interactive-banner-style-08 figure:hover{box-shadow:0 24px 60px rgba(0,0,0,.45)}
.interactive-banner-style-08 figure img{transition:transform .6s var(--ease) !important}
.interactive-banner-style-08 figure:hover img{transform:scale(1.08) !important}
.interactive-banner-style-08 h6{
    font-family:'Playfair Display',serif !important;
    font-size:1.15rem !important;font-weight:600 !important;
}
/* Botón circular en banners */
.circle-box.bg-white{
    background:var(--gold) !important;
    transition:all .3s var(--ease) !important;
    box-shadow:0 4px 16px rgba(185,142,68,.4);
}
.circle-box.bg-white i{color:var(--navy) !important}
.interactive-banner-style-08:hover .circle-box.bg-white{
    background:var(--white) !important;transform:scale(1.15) !important;
}
.interactive-banner-style-08:hover .circle-box.bg-white i{color:var(--gold) !important}

/* ─── SERVICIOS: ROTATE BOXES ──────────────── */
.rotate-box-style-02 .front-side{
    border-radius:14px !important;
    border-top:3px solid var(--gold) !important;
    transition:all .4s var(--ease) !important;
    box-shadow:0 8px 30px rgba(10,24,32,.12) !important;
}
.rotate-box-style-02:hover .front-side{box-shadow:0 16px 50px rgba(10,24,32,.22) !important}
.rotate-box-style-02 .front-side .fs-19{
    font-family:'Playfair Display',serif !important;
    font-size:1.15rem !important;color:var(--navy) !important;
}
.rotate-box-style-02 .back-side{
    border-radius:14px !important;
    background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy-mid) 100%) !important;
    box-shadow:0 16px 50px rgba(10,24,32,.35) !important;
}
.rotate-box-style-02 .back-side::after{
    content:'';position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--gold),var(--gold-light));
    border-radius:14px 14px 0 0;
}
.rotate-box-style-02 .back-side p{
    font-size:14.5px !important;line-height:1.7 !important;color:rgba(255,255,255,.85) !important;
}
.bg-charcoal-blue{background:transparent !important}

/* Progress bars doradas */
.progress-bar.bg-base-color{background:var(--gold) !important}

/* ─── Marquee TICKER reducido ───────────────── */
.swiper-slide .bi.text-base-color{color:var(--gold) !important;font-size:1.1rem}
.swiper-slide .text-dark-gray.fs-20{
    font-family:'DM Sans',sans-serif !important;font-weight:500;
    color:var(--navy) !important;font-size:13px !important;
    letter-spacing:.01em;
}

/* ─── PAGE TITLE ───────────────────────────── */
.page-title-separate-breadcrumbs{min-height:340px;position:relative}
.page-title-separate-breadcrumbs .opacity-full-dark{
    background:linear-gradient(to top,rgba(10,24,32,.9) 0%,rgba(10,24,32,.5) 60%,rgba(10,24,32,.2) 100%) !important;
}
.page-title-large h1{
    font-family:'Playfair Display',serif !important;
    font-size:clamp(2.2rem,5vw,4rem) !important;
    line-height:1.1;
    text-shadow:0 4px 24px rgba(0,0,0,.4);
    font-style:italic;
}

/* ─── BREADCRUMBS ──────────────────────────── */
.breadcrumb-style-01 ul li a{color:var(--gold);transition:color .25s}
.breadcrumb-style-01 ul li a:hover{color:var(--gold-dark)}

/* ─── DROPDOWN MENUS ───────────────────────── */
.navbar .dropdown-menu{
    border:1px solid rgba(185,142,68,.2) !important;
    border-radius:12px !important;
    box-shadow:0 20px 60px rgba(10,24,32,.25) !important;
    backdrop-filter:blur(16px);
    animation:dropIn .2s var(--ease);
}
@keyframes dropIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.navbar .dropdown.dropdown-with-icon-style02 .dropdown-menu li a:hover{
    background:var(--gold) !important;color:var(--white) !important;
}

/* ─── CONTACT FORM ─────────────────────────── */
.contact-form-style-03{
    background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy-mid) 100%) !important;
    border:1px solid rgba(185,142,68,.2) !important;
    border-radius:20px !important;
    box-shadow:var(--shadow-navy) !important;
}
.contact-form-style-03 h1{
    font-family:'Playfair Display',serif !important;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.contact-form-style-03 .form-control{
    border-bottom-color:rgba(185,142,68,.35) !important;
    font-family:'DM Sans',sans-serif !important;
}
.contact-form-style-03 .form-control:focus{border-bottom-color:var(--gold) !important}
.contact-form-style-03 .btn-white{
    background:linear-gradient(135deg,var(--gold) 0%,var(--gold-light) 100%) !important;
    color:var(--navy) !important;border-radius:10px !important;
    font-weight:700 !important;border:none !important;
    box-shadow:var(--shadow-gold) !important;
    transition:all .3s var(--ease) !important;
}
.contact-form-style-03 .btn-white:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 16px 40px rgba(185,142,68,.4) !important;
}

/* ─── MAPA ─────────────────────────────────── */
section.pt-10px iframe{
    width:100%;border-radius:16px !important;
    box-shadow:0 12px 40px rgba(10,24,32,.18);
    filter:saturate(0.85) contrast(1.05);
    transition:filter .4s var(--ease);
    height:380px !important;
}
section.pt-10px iframe:hover{filter:saturate(1) contrast(1)}

/* ─── FEATURE BOXES CONTACTO ───────────────── */
.icon-with-text-style-01 .fw-600.alt-font{
    font-family:'Playfair Display',serif !important;
    color:var(--navy) !important;
}
.icon-with-text-style-01{
    padding:20px;border-radius:12px;
    border-left:3px solid var(--gold);
    background:var(--off-white);
    transition:all .3s var(--ease);
    margin-bottom:20px !important;
}
.icon-with-text-style-01:hover{
    background:var(--white);
    box-shadow:0 8px 30px rgba(10,24,32,.1);
    transform:translateX(6px);
}

/* ─── FOOTER PREMIUM ───────────────────────── */
footer.footer-dark{
    background:linear-gradient(180deg,#0d1f2a 0%,var(--navy-deep) 100%) !important;
    border-top:3px solid var(--gold) !important;
}
footer.footer-dark .footer-top{
    background:rgba(185,142,68,.04);
    border-bottom:1px solid rgba(185,142,68,.12);
}
footer.footer-dark .footer-top h5{
    font-family:'Playfair Display',serif !important;
    color:var(--white) !important;font-size:1.4rem !important;
}
footer .btn.btn-white{
    background:var(--gold) !important;border-color:var(--gold) !important;
    color:var(--navy) !important;font-weight:700 !important;
    border-radius:8px !important;
    transition:all .3s var(--ease) !important;
    box-shadow:var(--shadow-gold);
}
footer .btn.btn-white:hover{
    background:var(--gold-light) !important;
    transform:translateY(-3px) !important;
    box-shadow:0 16px 40px rgba(185,142,68,.45) !important;
}
footer.footer-dark a,footer.footer-dark p{color:#8fa5b5;transition:color .25s}
footer.footer-dark a:hover{color:var(--gold) !important}
.footer-dark .bi{color:var(--gold)}
footer.footer-dark .fs-22.alt-font{
    font-family:'Playfair Display',serif !important;
    font-style:italic;color:rgba(255,255,255,.75) !important;
    font-size:1.2rem !important;
}
footer .footer-logo img{
    max-height:42px;filter:brightness(0) invert(1);opacity:.85;
    transition:opacity .3s;
}
footer .footer-logo:hover img{opacity:1}
.footer-navbar .nav-link{color:#8fa5b5 !important;transition:color .25s}
.footer-navbar .nav-link:hover{color:var(--gold) !important}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding-top:20px}
.footer-bottom p{color:rgba(255,255,255,.3);font-size:13px}

/* Copyright */
.footer-bottom .col-lg-5 p::before{
    content:'\00a9 2025 1\00aa Notar\00eda de Pe\00f1aflor \2014 Paulina Miranda Hiriart. Todos los derechos reservados.';
}
.footer-bottom .col-lg-5 p{font-size:0}
.footer-bottom .col-lg-5 p::before{font-size:13px;color:rgba(255,255,255,.3)}

/* ─── WHATSAPP BUTTON ──────────────────────── */
#wa-btn {
    position:fixed;bottom:28px;right:28px;z-index:9998;
    width:60px;height:60px;border-radius:50%;
    background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 6px 24px rgba(37,211,102,.45);
    cursor:pointer;text-decoration:none;
    transition:all .35s var(--ease);
    animation:waPulse 2.5s infinite;
}
#wa-btn:hover{transform:scale(1.12);box-shadow:0 12px 40px rgba(37,211,102,.6);animation:none}
#wa-btn svg{width:32px;height:32px;fill:#fff}
#wa-btn .wa-tooltip{
    position:absolute;right:70px;
    background:var(--navy);color:#fff;
    font-family:'DM Sans',sans-serif;font-size:13px;font-weight:500;
    padding:7px 14px;border-radius:8px;white-space:nowrap;
    opacity:0;transform:translateX(8px);
    transition:all .3s var(--ease);pointer-events:none;
    box-shadow:var(--shadow-navy);
}
#wa-btn .wa-tooltip::after{
    content:'';position:absolute;top:50%;right:-6px;
    transform:translateY(-50%);
    border:6px solid transparent;border-left-color:var(--navy);
    border-right:none;
}
#wa-btn:hover .wa-tooltip{opacity:1;transform:translateX(0)}
@keyframes waPulse{
    0%,100%{box-shadow:0 6px 24px rgba(37,211,102,.45)}
    50%{box-shadow:0 6px 24px rgba(37,211,102,.45),0 0 0 12px rgba(37,211,102,.12)}
}

/* ─── SCROLL PROGRESS ──────────────────────── */
.scroll-progress .scroll-point{background:var(--gold)}
.scroll-progress .scroll-text{font-family:'DM Sans',sans-serif;letter-spacing:3px;font-size:11px}

/* ─── ANIMACIONES DE ENTRADA ───────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.notaria-fade-up{animation:fadeUp .7s var(--ease) both}
.notaria-fade-in{animation:fadeIn .6s var(--ease) both}

/* ─── RESPONSIVE ───────────────────────────── */
@media(max-width:991px){
    body{padding-top:calc(var(--topbar-h) + 70px) !important}
    header{top:var(--topbar-h) !important}
    .navbar .navbar-nav .nav-link{color:var(--navy) !important;border-bottom:1px solid rgba(21,40,51,.08);padding:12px 0 !important}
    .navbar .navbar-nav .nav-link::after{display:none}
    .interactive-banner-style-08 figure{border-radius:10px !important}
    #wa-btn{bottom:20px;right:20px;width:54px;height:54px}
    .icon-with-text-style-01{padding:14px}
}
@media(max-width:767px){
    body{padding-top:calc(var(--topbar-h) + 60px) !important}
    section.p-0 .swiper.full-screen{min-height:500px !important}
    .page-title-large h1{font-size:2rem !important}
    section.pt-10px iframe{height:260px !important}
    .contact-form-style-03{padding:40px 24px !important}
}
