:root{--red:#e33f50;--blue:#1761be;--ink:#182e49;--muted:#657489;--border:#dbe3ec;--paper:#fff;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:6px}figure,p{margin:0}img{display:block;max-width:100%}button:disabled{cursor:default;opacity:.7}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 88px));margin-inline:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:15px;background:white}.skip-link:focus{top:20px}
.site-header{position:sticky;top:0;z-index:20;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:18px max(44px,calc((100vw - 1320px)/2));background:#fffffff2;border-bottom:1px solid #e9edf2;backdrop-filter:blur(12px)}.brand{display:inline-flex;flex-direction:column;flex-shrink:0;line-height:1}.brand>span{font-size:29px;letter-spacing:-1.6px}.brand b{color:var(--red);font-weight:750}.brand strong{color:var(--blue);font-weight:750}.brand small{font-size:11px;letter-spacing:6px;margin-top:7px;color:var(--blue)}.navigation{display:flex;align-items:center;gap:30px;font-size:12px}.navigation a{position:relative;padding:10px 0;color:var(--muted)}.navigation a:hover,.navigation a[aria-current]{color:var(--blue)}.navigation a[aria-current]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--red)}.header-tag{font-weight:700;font-size:12px;color:var(--blue)}
.section{position:relative;isolation:isolate;overflow:hidden;overflow:clip;scroll-margin-top:0}.section .container{position:relative;z-index:2}@keyframes ribbon-float{from{transform:translate3d(0,-7px,0) rotate(-1deg)}to{transform:translate3d(10px,9px,0) rotate(1.5deg)}}
.hero{min-height:calc(100svh - 92px);display:flex;flex-direction:column;justify-content:center;padding-top:60px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;padding-bottom:60px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;line-height:1.8;text-transform:uppercase;color:var(--muted);margin-bottom:28px;display:flex;align-items:center;gap:10px}.eyebrow>span{width:22px;height:2px;background:var(--red)}h1{font-size:clamp(66px,7.5vw,108px);line-height:.98;font-weight:750;letter-spacing:-6px;margin:0 0 28px;color:var(--blue)}h1>span{color:var(--red)}h1 small{display:block;font-size:.48em;letter-spacing:10px;text-transform:uppercase;font-weight:400;line-height:1.65}.hero-hashtag{font-size:clamp(20px,2.4vw,30px);font-weight:700;letter-spacing:-.8px;color:var(--blue)}.hero-hashtag>span{color:var(--red)}.intro{font-size:16px;color:var(--muted);line-height:1.85;margin:20px 0 32px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border-radius:6px;padding:15px 20px;font-size:12px;font-weight:650;min-height:48px}.primary{background:var(--blue);color:white}.primary:hover{background:#104c99}.outline{border:1px solid #b9c9df;background:white;color:var(--blue)}.outline:hover{background:#f0f5fc}.text-link{font-size:12px;font-weight:600;line-height:1.7}.text-link>span{margin-left:10px;color:var(--blue)}.hero-foot{display:flex;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid var(--border);font-size:9px;letter-spacing:1.5px;color:var(--muted)}.hero-foot>a{font-size:11px;letter-spacing:0}.hero-foot>a span{margin-left:16px;color:var(--red)}
.photo-slot{position:relative;background:#edf2f7;overflow:hidden;isolation:isolate}.photo-slot>img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 50%)}.photo-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;text-align:center;background:linear-gradient(145deg,#f4f7fb,#e4ebf3)}.photo-placeholder:before,.photo-placeholder:after{content:"";position:absolute;border:1px solid #d1ddec;border-radius:50%;width:320px;height:320px;pointer-events:none}.photo-placeholder:after{width:230px;height:230px}.photo-placeholder>span{position:relative;z-index:1}.photo-mark{font-size:96px;letter-spacing:-9px;line-height:1.3;font-weight:300;color:#a6bbd3;margin-bottom:20px}.photo-label{font-size:14px;font-weight:600;color:#526984}.photo-hint{font-size:11px;color:#657489;margin-top:8px}.portrait{aspect-ratio:4/5;max-height:550px;border-radius:140px 140px 12px 12px;border:8px solid white;outline:1px solid #e0e7ef}.portrait .photo-placeholder{padding-bottom:90px}.portrait-caption{position:absolute;bottom:18px;left:18px;right:18px;z-index:2;padding:17px 20px;background:#fffffff0;border-radius:5px;font-size:12px;line-height:1.7}.portrait-caption span,.portrait-caption strong{display:block}.portrait-caption span{color:var(--muted)}.portrait-caption strong{font-weight:650;color:var(--blue)}
.about{padding:140px 0}.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:100px}.about-photo{aspect-ratio:4/4.5;border-radius:8px 80px 8px 8px}.frame-mark{font-size:85px;font-weight:200;color:#a6bbd3;line-height:1.2;margin-bottom:25px}.section-copy h2,.gallery-heading h2{font-size:clamp(30px,3.6vw,47px);line-height:1.17;letter-spacing:-1.8px;margin:0 0 27px;font-weight:650}h2 em{font-style:normal;color:var(--blue)}.section-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);line-height:1.9;margin-bottom:20px}.section-copy>.text-link{display:inline-block;margin-top:12px}
.territory{padding:110px 0 35px;min-height:640px;background:#f7f9fc;border-block:1px solid #e8eef5}.territory-copy{text-align:center}.territory-copy .eyebrow{justify-content:center}.territory h2{font-size:clamp(60px,9vw,120px);font-weight:750;line-height:1.04;letter-spacing:-5px;color:var(--blue);margin:30px 0}.territory h2>span{color:var(--red)}.territory-copy>p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.75}.territory-copy>.button{margin-top:30px}.territory-bottom{margin-top:65px;display:flex;justify-content:center;gap:65px;font-size:9px;letter-spacing:2px;color:var(--muted)}
.moments{padding:110px 0 0}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px}.gallery-heading h2{margin:0}.gallery-heading>p{font-size:14px;line-height:1.8;color:var(--muted);padding-bottom:5px}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px}.gallery-item:nth-child(2){padding-top:45px}.gallery-photo{aspect-ratio:4/5;border-radius:6px}.gallery-item:nth-child(2) .photo-placeholder{background:linear-gradient(145deg,#faf3f3,#f1e6e7)}.gallery-item:nth-child(3) .photo-placeholder{background:linear-gradient(145deg,#f4f5f0,#e9eee3)}.photo-number{font-size:65px;font-weight:250;letter-spacing:-4px;color:#a4b6cd;margin-bottom:35px}.gallery-item figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:18px;font-size:12px}.gallery-item figcaption>span:last-child{color:var(--blue)}.closing{text-align:center;margin-top:100px;padding:60px 0;border-block:1px solid var(--border)}.closing>p{font-size:12px;letter-spacing:1px;margin-bottom:15px;color:var(--muted)}.closing>a{font-size:clamp(22px,4vw,46px);font-weight:700;letter-spacing:-1.5px;color:var(--blue)}.closing>a>span:first-child{color:var(--red)}.back-arrow{display:inline-flex;font-size:20px;margin-left:20px}
.footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:35px}.footer .brand>span{font-size:22px}.footer .brand small{font-size:8px;letter-spacing:4.8px}.footer>p{font-size:11px;color:var(--muted)}
@media(min-width:1600px){.hero-grid{padding-block:60px 90px}.hero{max-height:1000px}}
@media(max-width:1050px){.container{width:calc(100% - 64px)}.site-header{padding-inline:32px}.header-tag{display:none}.hero-grid{gap:40px}h1{font-size:78px;letter-spacing:-4px}.about-grid{gap:50px}.gallery{gap:18px}.territory h2{font-size:95px}}
@media(max-width:760px){:root{scroll-padding-top:116px}.container{width:calc(100% - 40px)}.site-header{padding:15px 20px 10px;gap:12px;flex-wrap:wrap;justify-content:center}.brand>span{font-size:25px}.brand small{font-size:9px;letter-spacing:5.5px}.navigation{width:100%;justify-content:center;gap:30px;font-size:11px}.navigation a{padding:7px 0}.hero{padding-top:48px}.hero-grid{grid-template-columns:1fr;gap:40px;padding-bottom:38px}.hero-copy{text-align:center}.hero-copy .eyebrow{justify-content:center;font-size:9px;letter-spacing:1.3px;margin-bottom:24px}h1{font-size:clamp(64px,14vw,88px);letter-spacing:-4px}h1 small{letter-spacing:8px}.hero-hashtag{font-size:24px}.intro{font-size:14px}.actions{justify-content:center;gap:20px}.portrait{width:min(360px,90%);margin:auto;max-height:none}.hero-foot{font-size:8px;letter-spacing:.5px}.hero-foot>span:last-child{display:none}.about{padding:80px 0}.about-grid{grid-template-columns:1fr;gap:35px}.about-photo{aspect-ratio:5/4;max-height:420px}.section-copy h2,.gallery-heading h2{font-size:35px;letter-spacing:-1.2px}.section-copy>p:not(.eyebrow){font-size:14px}.territory{padding:75px 0 30px;min-height:550px}.territory h2{font-size:clamp(48px,11.8vw,80px);letter-spacing:-2.8px}.territory-copy>p:not(.eyebrow){font-size:16px}.territory-bottom{gap:25px;font-size:8px;letter-spacing:1.5px}.moments{padding-top:75px}.gallery-heading{display:block}.gallery-heading>p{margin-top:22px}.gallery{grid-template-columns:1fr;gap:35px}.gallery-item:nth-child(2){padding-top:0}.gallery-photo{aspect-ratio:5/4}.closing{margin-top:65px;padding:40px 0}.closing>a{font-size:clamp(20px,5.4vw,35px);letter-spacing:-.8px}.back-arrow{margin-left:8px}.footer{flex-wrap:wrap;gap:22px}.footer>p{font-size:10px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
@media print{.site-header{position:static}.section{break-inside:avoid}.photo-slot{print-color-adjust:exact}}

/* Redes, capas de trazos y navegación táctil. */
.header-whatsapp{display:inline-flex;align-items:center;gap:9px;color:#087c50;background:#eaf8ef;border:1px solid #c9ead6;border-radius:30px;padding:11px 16px;font-size:11px;font-weight:650;white-space:nowrap}.header-whatsapp svg{width:20px;height:20px}.whatsapp-button{background:#087f52;color:white;gap:13px;box-shadow:0 7px 20px #087f5217}.whatsapp-button svg{width:23px;height:23px}.whatsapp-button:hover{background:#066741;transform:translateY(-2px)}.secondary-actions{margin-top:20px}.secondary-actions .primary{color:var(--blue);background:#edf3fc}.button,.social-card,.whatsapp-card{transition:transform .2s,background-color .2s,border-color .2s}.connect{padding:90px 0 100px;background:#f6f8fc}.connect .container{max-width:1100px}.connect-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:35px}.connect h2{font-size:clamp(30px,3.5vw,46px);letter-spacing:-1.5px;line-height:1.16;margin:0}.connect-heading>p{font-size:14px;line-height:1.8;color:var(--muted)}.whatsapp-card{position:relative;display:flex;align-items:center;gap:28px;background:#e7f6ee;border:1px solid #c4e5d3;border-radius:20px;padding:32px;color:#075e3d;overflow:hidden}.whatsapp-card:hover{transform:translateY(-3px);background:#ddf2e7}.whatsapp-orbit{display:grid;place-items:center;flex-shrink:0;width:82px;height:82px;border-radius:50%;background:#087f52;color:white;outline:1px solid #9ad4b5;outline-offset:8px}.whatsapp-orbit svg{width:42px;height:42px}.whatsapp-copy{display:flex;flex-direction:column;gap:9px}.whatsapp-copy small{font-size:9px;letter-spacing:1.6px}.whatsapp-copy strong{font-size:clamp(19px,2.2vw,27px);font-weight:650;letter-spacing:-.7px}.whatsapp-copy>span{font-size:12px}.social-arrow{margin-left:auto;font-size:24px;flex-shrink:0}.social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.social-card{display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--border);border-radius:14px;padding:22px 18px;min-width:0}.social-card:hover{transform:translateY(-4px);border-color:#9aafcc}.social-card>span:nth-child(2){min-width:0}.social-card strong,.social-card small{display:block}.social-card strong{font-size:14px;margin-bottom:6px}.social-card small{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.social-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;background:#edf3fc;color:#1761be}.social-icon svg{width:23px;height:23px}.social-instagram .social-icon{background:#fbedf4;color:#b43176}.social-tiktok .social-icon,.social-x .social-icon{background:#eef1f5;color:#15223d}.social-card .social-arrow{font-size:19px;color:var(--muted)}
.photo-scene{position:relative;isolation:isolate;min-width:0}.photo-scene>.photo-slot{z-index:1;width:100%}.photo-scene>.portrait{max-height:none}.connect .ribbon-extra{opacity:.45}.hero-grid,.about-grid{gap:90px}.gallery{gap:35px}.gallery-item{position:relative;min-width:0}.gallery-item figcaption{position:relative;z-index:2;background:white;padding-bottom:10px}.mobile-tabs{display:none}
@media(min-width:761px) and (max-width:1100px){.header-whatsapp>span{display:none}.header-whatsapp{padding:11px}.navigation{gap:20px}.hero-grid,.about-grid{gap:50px}.social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 :root{scroll-padding-top:126px}.site-header{justify-content:space-between;padding:12px 20px 8px;gap:10px}.site-header .navigation{order:3;gap:0;justify-content:space-between;overflow-x:auto;scrollbar-width:none}.navigation a{padding:9px 5px;font-size:11px;white-space:nowrap;min-height:34px}.header-whatsapp{font-size:10px;padding:9px 12px}.header-whatsapp svg{width:17px;height:17px}.hero{padding-top:42px}.hero-grid,.about-grid{gap:48px}.hero-copy .actions{width:100%}.whatsapp-button{min-height:52px;max-width:100%;font-size:12px}.secondary-actions{margin-top:15px;gap:17px}.secondary-actions .button{font-size:11px;padding:12px 16px}.secondary-actions .text-link{font-size:11px}.hero-grid>.photo-scene{width:min(360px,88%);margin-inline:auto}.photo-scene>.portrait{width:100%;border-radius:120px 120px 12px 12px}.about-grid>.photo-scene{width:92%;margin-inline:auto}.gallery{gap:42px;padding-inline:10px}.gallery-photo{aspect-ratio:4/4.4}.gallery-item:nth-child(2){padding:0 0 0 16px}.gallery-item:nth-child(3){padding-right:16px}.connect{padding:65px 0 55px}.connect-heading{display:block}.connect-heading>p{margin-top:20px;font-size:13px}.connect h2{font-size:32px;letter-spacing:-1px}.whatsapp-card{gap:20px;border-radius:16px;padding:25px 20px;align-items:flex-start}.whatsapp-orbit{width:44px;height:44px;outline-offset:5px;margin-top:5px}.whatsapp-orbit svg{width:26px;height:26px}.whatsapp-copy{gap:10px}.whatsapp-copy small{font-size:8px;letter-spacing:1px;line-height:1.7}.whatsapp-copy strong{font-size:21px;line-height:1.2}.whatsapp-copy>span{font-size:11px;line-height:1.6}.whatsapp-card>.social-arrow{position:absolute;right:13px;bottom:10px;font-size:19px}.social-grid{grid-template-columns:1fr;gap:11px;margin-top:18px}.social-card{padding:17px 18px;min-height:80px}.social-card small{font-size:12px}.social-card strong{font-size:15px}.social-icon{width:43px;height:43px}.footer{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}body{padding-bottom:0}.mobile-tabs{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;background:#fffffff5;border-top:1px solid #dce5f0;box-shadow:0 -6px 25px #15223d09;backdrop-filter:blur(16px);padding:8px max(8px,env(safe-area-inset-left,0px)) calc(8px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0}.mobile-tabs a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:54px;border-radius:12px;color:#67768d;font-size:10px;font-weight:600;position:relative}.mobile-tabs svg{width:21px;height:21px}.mobile-tabs a[aria-current]{background:#edf3fd;color:var(--blue)}.mobile-tabs a[aria-current]:before{content:"";position:absolute;top:3px;width:14px;height:2px;border-radius:5px;background:var(--red)}.mobile-tabs a:hover{background:#f0f5fc}.footer a,.footer button{scroll-margin-bottom:100px}
}
@media(max-width:360px){.container{width:calc(100% - 32px)}.header-whatsapp{padding:8px 10px}.navigation a{font-size:10px}.mobile-tabs a{font-size:9px}.whatsapp-card{padding:24px 16px;gap:16px}.whatsapp-copy strong{font-size:19px}.secondary-actions{gap:12px}}
@media(prefers-reduced-motion:reduce){.button,.social-card,.whatsapp-card{transition:none}.button:hover,.social-card:hover,.whatsapp-card:hover{transform:none}}
@media print{.mobile-tabs{display:none}.connect{break-inside:auto}}

/* Composiciones continuas inspiradas en el movimiento de la referencia. */
.ribbon{position:absolute;z-index:0;pointer-events:none;transform-origin:center;contain:layout style}.flow-art{display:block;width:100%;height:auto;overflow:visible}.flow-path{stroke-linecap:round;stroke-linejoin:round;stroke-width:15;stroke-dasharray:260 740;animation:flow-travel 14s linear infinite;vector-effect:non-scaling-stroke}.flow-blue{stroke:#1761be;stroke-dashoffset:0}.flow-red{stroke:#e33f50;stroke-width:20;stroke-dasharray:190 810;animation-duration:17s;animation-delay:-5s}.flow-accent{stroke:#89b9e6;stroke-width:7;stroke-dasharray:65 935;animation-duration:12s;animation-delay:-3s}.flow-reverse .flow-path{animation-direction:reverse}.flow-edge{width:620px;opacity:.8}.flow-edge-left{left:-440px;top:18%;transform:rotate(65deg)}.flow-edge-right{right:-430px;bottom:10%;transform:rotate(-115deg)}.hero .flow-edge-left{top:30%}.territory .flow-edge{width:700px}.territory .flow-edge-left{left:-470px;top:5%}.territory .flow-edge-right{right:-470px;bottom:4%}.connect .flow-edge{opacity:.35}.photo-scene{position:relative;isolation:isolate}.flow-photo{width:145%;height:auto;left:-22%;top:8%;transform:rotate(-28deg);z-index:0}.photo-scene>.photo-slot{z-index:1}.photo-scene:after{content:"";position:absolute;inset:15px -13px -15px 13px;border:1px solid #b6cce355;border-radius:inherit;z-index:-1;pointer-events:none}.hero .photo-scene:after{border-radius:140px 140px 15px 15px}.about .photo-scene:after{border-radius:8px 80px 8px 8px}.gallery-scene .flow-photo{width:155%;left:-27%;top:18%;transform:rotate(152deg)}.gallery-item:nth-child(2) .flow-photo{transform:rotate(-32deg)}
@keyframes flow-travel{to{stroke-dashoffset:-1000}}
.motion-observed .ribbon:not(.is-in-view) .flow-path,body[data-motion-paused=true] .flow-path,body[data-page-hidden=true] .flow-path{animation-play-state:paused}

/* La carga no bloquea interacción ni depende de un contador ficticio. */
.page-loader{display:none;position:fixed;inset:0;z-index:100;background:#f9fbfe;place-items:center;overflow:hidden;pointer-events:none}.is-loading .page-loader{display:grid;animation:loader-safety 3.2s step-end forwards}.loader-brand{position:relative;z-index:2;text-align:center;color:var(--blue)}.loader-brand>span{font-size:clamp(42px,7vw,76px);font-weight:720;letter-spacing:-3px}.loader-brand b{color:var(--red);font-weight:720}.loader-brand small{display:block;font-size:clamp(13px,2vw,20px);letter-spacing:12px;padding-left:12px;margin-top:12px}.loader-brand i{display:block;width:40px;height:3px;background:var(--blue);margin:36px auto 0;border-radius:5px;animation:loader-breathe 1s ease-in-out infinite alternate}.loader-flow{position:absolute;width:min(800px,95vw);pointer-events:none}.loader-flow-one{left:-25%;top:-15%;transform:rotate(35deg)}.loader-flow-two{right:-25%;bottom:-15%;transform:rotate(205deg)}.loader-flow .flow-path{animation-duration:3s}.loader-flow .flow-red{animation-delay:-1s}.loader-flow .flow-accent{animation-delay:-2s}.is-ready .page-loader{display:grid;visibility:hidden;opacity:0;transition:opacity .45s,visibility .45s}.is-ready .loader-flow .flow-path{animation:none}@keyframes loader-breathe{to{transform:scaleX(1.7);opacity:.4}}@keyframes loader-safety{to{visibility:hidden;opacity:0}}

/* Cabecera compacta y redes persistentes en escritorio. */
.site-header{width:calc(100% - 40px);max-width:1370px;margin:16px auto 0;top:12px;min-height:80px;border:1px solid #e1e8f2;border-radius:22px;padding:16px 26px;box-shadow:0 8px 30px #172e4905;transition:box-shadow .3s,background-color .3s}.site-header.is-scrolled{background:#fffffff5;box-shadow:0 8px 30px #172e4910}.navigation{background:#f3f6fa;border:1px solid #eaf0f6;border-radius:30px;padding:5px;gap:2px}.navigation a{padding:11px 17px;border-radius:22px;font-size:11px;transition:background-color .2s,color .2s}.navigation a[aria-current]{background:white;box-shadow:0 2px 6px #182e490a}.navigation a[aria-current]:after{display:none}.menu-toggle{display:none}.social-rail{position:fixed;z-index:25;right:15px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 9px 10px;background:#fffffff2;backdrop-filter:blur(12px);border:1px solid #dce5f1;border-radius:30px;box-shadow:0 6px 25px #17345810}.rail-heading{font-size:7px;letter-spacing:1px;color:var(--muted);margin:5px 0 6px}.rail-link{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--blue);background:#edf3fb;transition:transform .2s,background .2s}.rail-link svg{width:20px;height:20px}.rail-whatsapp{background:#087f52;color:white}.rail-instagram{background:#faedf5;color:#ac327b}.rail-tiktok,.rail-x{background:#f0f2f6;color:#192c46}.rail-link:hover{transform:translateX(-3px)}.rail-tooltip{position:absolute;right:calc(100% + 13px);padding:10px 13px;background:#172e49;color:white;white-space:nowrap;border-radius:8px;font-size:11px;opacity:0;visibility:hidden;transition:opacity .15s;pointer-events:none}.rail-link:hover .rail-tooltip,.rail-link:focus-visible .rail-tooltip{opacity:1;visibility:visible}
@media(min-width:761px){.container{width:min(1180px,calc(100% - 160px))}.hero-grid,.about-grid{gap:70px}.hero{padding-top:65px}.header-whatsapp{padding:11px 14px}.site-header{width:calc(100% - 140px);margin-left:40px;margin-right:100px}.navigation a{padding:11px 13px}}
@media(min-width:1500px){.site-header{margin-inline:auto}.social-rail{right:24px}}
@media(min-width:761px) and (max-width:1100px){.site-header{padding:15px 18px;width:calc(100% - 120px);margin-left:24px;margin-right:96px}.navigation a{padding:10px 9px;font-size:10px}.brand>span{font-size:25px}.header-whatsapp>span{display:none}.container{width:calc(100% - 130px)}h1{font-size:clamp(53px,7.5vw,78px)}.hero-grid{gap:35px}.social-rail{right:10px;padding:12px 7px}.rail-link{width:36px;height:36px}}
@media(max-width:760px){:root{scroll-padding-top:92px}.social-rail{display:none}.site-header{top:8px;width:calc(100% - 24px);margin:8px 12px 0;border-radius:18px;min-height:70px;padding:12px 15px;gap:10px;justify-content:flex-start}.site-header .brand{margin-right:auto}.site-header .brand>span{font-size:25px}.site-header .brand small{font-size:8px;letter-spacing:5.5px}.site-header .header-whatsapp{order:1;border-radius:13px;padding:10px;font-size:10px}.header-whatsapp>span{display:none}.header-whatsapp svg{width:21px;height:21px}.menu-ready .menu-toggle{order:2;display:flex;width:42px;height:42px;padding:12px 10px;flex-direction:column;justify-content:center;gap:6px;background:#edf3fb;border:1px solid #dce6f2;border-radius:12px}.menu-toggle span{display:block;height:2px;width:20px;border-radius:2px;background:var(--blue);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-header .navigation{order:3;padding:7px;gap:3px;width:100%;border-radius:14px}.menu-ready .site-header .navigation{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:1px solid #dce5f1;box-shadow:0 12px 35px #182e4914;overflow:visible}.menu-ready .site-header[data-menu-open=true] .navigation{display:flex;flex-direction:column;align-items:stretch}.menu-ready .navigation a{padding:14px 18px;font-size:14px;border-radius:9px;min-height:47px}.menu-ready .navigation a[aria-current]{background:#edf3fb;box-shadow:none}.container{width:calc(100% - 40px)}.hero{padding-top:45px;min-height:auto}.hero-grid{gap:45px}.flow-path{stroke-width:10;stroke-dasharray:330 670}.flow-red{stroke-width:13;stroke-dasharray:240 760}.flow-accent{stroke-width:5;stroke-dasharray:100 900}.flow-edge{width:340px;opacity:.6}.flow-edge-left{left:-280px;top:20%}.flow-edge-right{right:-270px;bottom:8%}.territory .flow-edge{width:360px}.territory .flow-edge-left{left:-290px;top:10%}.territory .flow-edge-right{right:-285px}.flow-photo{width:150%;left:-25%;top:10%;transform:rotate(-26deg)}.gallery-scene .flow-photo{width:140%;left:-20%;top:15%}.hero-grid>.photo-scene{width:86%}.photo-scene:after{inset:10px -8px -10px 8px}.loader-flow{width:125vw}.loader-flow-one{left:-65%;top:-8%;transform:rotate(40deg)}.loader-flow-two{right:-65%;bottom:-7%;transform:rotate(220deg)}.loader-brand>span{font-size:48px;letter-spacing:-2px}.loader-brand small{font-size:13px;letter-spacing:9px;padding-left:9px}.mobile-tabs{left:10px;right:10px;bottom:8px;border:1px solid #dce5f0;border-radius:22px;padding:7px 5px calc(7px + env(safe-area-inset-bottom,0px));box-shadow:0 6px 35px #18395b1a}.mobile-tabs a{min-height:51px;border-radius:15px}.footer{padding-bottom:calc(115px + env(safe-area-inset-bottom,0px))}.connect .flow-edge{opacity:.3}}
@media(prefers-reduced-motion:reduce){.flow-path,.loader-brand i{animation:none!important;stroke-dashoffset:0}.site-header,.menu-toggle span,.navigation a,.rail-link,.rail-tooltip{transition:none}.is-ready .page-loader{transition:none}}
@media print{.page-loader,.social-rail,.menu-toggle,.ribbon{display:none!important}.site-header{position:static}.menu-ready .site-header .navigation{display:flex;position:static}.footer{padding-bottom:20px}}
@media(min-width:761px) and (max-width:1100px){.site-header{gap:12px}.navigation a{padding-inline:7px}}

/* Fotografías reales, conexiones visibles y álbum por páginas. */
.photo-slot>img{transition:opacity .35s ease}.hero-social{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:27px}.hero-social>span{font-size:11px;color:var(--muted);margin-right:8px}.hero-social a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #dce5ef;background:#f0f5fc;color:var(--blue)}.hero-social a:hover{background:#e1ebfa}.hero-social svg{width:18px;height:18px}.section-copy>.button{margin-top:8px}.navigation a,.mobile-tabs a{min-height:44px}.navigation a[aria-current]{color:#104d9d;font-weight:750;border:1px solid #c6d8ed}.navigation a{border:1px solid transparent}.mobile-tabs a[aria-current]{outline:1px solid #c6d8ed}.album{padding:95px 0 45px;background:#fff}.album-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;scroll-margin-top:125px}.album h2{font-size:clamp(35px,4vw,52px);line-height:1.13;letter-spacing:-1.8px;margin:0 0 20px}.album-heading p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.8;max-width:540px}.album-heading>button{flex-shrink:0;cursor:pointer}.album-meta{display:flex;justify-content:space-between;gap:20px;margin:35px 0 14px;font-size:11px;color:var(--muted)}#album-status{font-size:12px;color:var(--muted);min-height:24px;line-height:1.8;margin-bottom:15px}.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;min-height:400px}.album-photo{position:relative;display:block;border:0;padding:0;background:#edf2f8;border-radius:13px;overflow:hidden;aspect-ratio:4/5;isolation:isolate;animation:photo-arrival .5s both;animation-delay:var(--arrival,0ms);text-align:left;color:white}.album-photo img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s,transform .45s}.album-photo.has-image img{opacity:1}.album-photo:hover img{transform:scale(1.035)}.album-photo-label{position:absolute;inset:auto 0 0;padding:40px 14px 16px;font-size:11px;line-height:1.6;background:linear-gradient(transparent,#10243be8);z-index:1}.album-photo-mark{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#ffffffe8;color:var(--ink);font-size:17px}.album-photo.image-error:before{content:'Una historia por descubrir';position:absolute;inset:35% 15px auto;color:var(--muted);text-align:center;font-size:14px}.album-grid[aria-busy=true]{opacity:.6;pointer-events:none}.album-pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin:30px 0 15px}.album-pagination button{font:inherit;font-size:12px;cursor:pointer}.album-pagination>span{font-size:12px;color:var(--muted)}.album-pagination button:disabled{opacity:.4;cursor:default}.album-connect{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;padding:40px 0 15px;border-top:1px solid var(--border);margin-top:45px}.album-connect>span{font-size:14px;color:var(--muted)}@keyframes photo-arrival{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.lightbox{border:1px solid #48617d;border-radius:18px;width:min(1120px,94vw);max-width:94vw;height:min(880px,92dvh);max-height:92dvh;padding:20px;background:#101f31;color:white;overflow:hidden}.lightbox[open]{display:flex;flex-direction:column}.lightbox::backdrop{background:#071220df;backdrop-filter:blur(6px)}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}.lightbox-top{font-size:12px;color:#d1deed}.lightbox button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;border:1px solid #59718c;background:#20364c;color:white;font-size:21px}.lightbox button:disabled{opacity:.3}.lightbox-stage{display:flex;align-items:center;gap:15px;min-height:0;flex:1;padding:15px 0}.lightbox-media{position:relative;flex:1;height:100%;min-width:0;display:flex;align-items:center;justify-content:center}.lightbox-media img{width:100%;height:100%;object-fit:contain}.lightbox-media p{position:absolute;padding:20px;font-size:14px;line-height:1.7;text-align:center}.lightbox-bottom{font-size:12px;line-height:1.7;padding-top:10px}.lightbox-bottom a{color:#a6ceff;white-space:nowrap;padding:8px}.lightbox-open{overflow:hidden}.lightbox-open .flow-path{animation-play-state:paused}
.history{max-width:1080px;padding-top:65px}.history-heading{padding:50px 0 65px;max-width:870px}.history-heading h1{font-size:clamp(40px,6vw,74px);letter-spacing:-2.8px;line-height:1.08;color:var(--ink)}.history-heading h1 em{font-style:normal;color:var(--blue)}.history-heading>p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--muted);max-width:710px;margin-bottom:25px}.history h2{font-size:clamp(28px,3.5vw,42px);letter-spacing:-1.2px;line-height:1.2;margin:0 0 25px}.history-origin{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:55px 0;border-top:1px solid var(--border)}.history section p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted);margin-bottom:18px}.family-photos,.history-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px}.history figure img{width:100%;height:310px;object-fit:cover;border-radius:12px}.family-photos figure:nth-child(2){padding-top:35px}.history figure figcaption{font-size:11px;line-height:1.7;margin:13px 0;color:var(--muted)}.history-timeline{list-style:none;padding:0;margin:40px 0 70px;border-left:1px solid #c9d9eb}.history-timeline li{position:relative;display:grid;grid-template-columns:140px 1fr;gap:30px;padding:0 0 35px 30px}.history-timeline li:before{content:'';position:absolute;width:9px;height:9px;background:var(--red);border:4px solid white;border-radius:50%;left:-9px;top:0;box-shadow:0 0 0 1px #e3eaf3}.history-timeline li>span{font-size:12px;font-weight:700;color:var(--blue)}.history-timeline h3{font-size:22px;letter-spacing:-.5px;margin:0 0 12px}.history-community{padding-bottom:35px}.history-photos{margin-top:30px}.history-photos img{height:360px!important}.history-page .footer{padding-top:45px}.history-page .flow-path{animation:none}
/* Composiciones ancladas al marco y transiciones entre secciones. */
.flow-photo{width:132%;left:-16%;top:7%;transform:rotate(-18deg)}.gallery-scene .flow-photo{width:136%;left:-18%;top:12%;transform:rotate(156deg)}.photo-scene{scroll-margin-top:125px}.section{scroll-margin-top:12px}.about{overflow:visible}.about .flow-edge{overflow:hidden;max-width:180px}.about .flow-edge-left{left:0;transform:none}.about .flow-edge-right{right:0;transform:rotate(180deg)}.about .flow-edge svg{width:600px;transform:translateX(-410px)}.hero .flow-edge,.territory .flow-edge,.moments .flow-edge{opacity:.65}.flow-photo .flow-path{stroke-dasharray:300 700}.flow-photo .flow-red{stroke-dasharray:220 780}
@media(max-width:1050px){.album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.history-origin{gap:25px}.history-timeline li{grid-template-columns:110px 1fr;gap:20px}.family-photos{gap:12px}}
@media(max-width:760px){.hero-social{justify-content:center;gap:9px;margin-top:25px}.hero-social>span{width:100%;margin:0 0 3px}.hero-social a{width:42px;height:42px}.album{padding-top:65px}.album-heading{display:block;scroll-margin-top:100px}.album-heading>button{margin-top:22px;min-height:46px}.album h2{font-size:37px}.album-meta{display:block;margin-top:25px;line-height:1.9}.album-meta>span{display:block}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:360px}.album-photo{border-radius:10px;aspect-ratio:3/4}.album-photo-label{font-size:10px;line-height:1.5;padding:30px 10px 12px}.album-photo-mark{width:27px;height:27px;top:8px;right:8px}.album-pagination{gap:12px;justify-content:space-between}.album-pagination .button{padding:12px 13px;font-size:11px}.album-pagination>span{font-size:10px}.album-connect{gap:18px;text-align:center}.album-connect>span{width:100%}.lightbox{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(15px + env(safe-area-inset-bottom,0px))}.lightbox-stage{position:relative;gap:0}.lightbox-stage>button{position:absolute;z-index:2;bottom:15px;background:#20364ce8}.lightbox-stage>#lightbox-prev{left:10px}.lightbox-stage>#lightbox-next{right:10px}.lightbox-media{padding-bottom:65px}.lightbox-bottom{align-items:flex-start;font-size:11px}.lightbox-bottom a{padding:0;font-size:11px}.history{padding-top:40px}.history-heading{padding:35px 0 45px}.history-heading h1{font-size:43px;letter-spacing:-1.7px}.history-heading>p:not(.eyebrow){font-size:15px}.history-origin{grid-template-columns:1fr;padding:40px 0;gap:25px}.family-photos{gap:15px}.history figure img{height:230px}.history-timeline li{grid-template-columns:1fr;gap:12px;padding-left:23px}.history-timeline h3{font-size:21px}.history-photos{grid-template-columns:1fr}.history-photos img{height:320px!important}.history-page .footer{padding-bottom:40px}.flow-photo{width:138%;left:-19%;top:7%}.gallery-scene .flow-photo{width:137%;left:-18%;top:10%}.about .flow-edge{max-width:55px;opacity:.4}.about .flow-edge svg{width:340px;transform:translateX(-280px)}}
@media(prefers-reduced-motion:reduce){.album-photo{animation:none}.album-photo img,.photo-slot>img{transition:none}.album-photo:hover img{transform:none}}
