
:root{--navy:#07111d;--navy2:#0d1c2b;--ivory:#f5f0e7;--silver:#d9dde2;--champ:#d5c19a;--muted:#8f9ba7;--line:#ffffff1b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--ivory);font-family:Arial,sans-serif}.hidden{display:none!important}button,input,select{font:inherit}button{cursor:pointer}.bar{height:66px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:#07111df2;border-bottom:1px solid var(--line);position:relative;z-index:20}.transparent{position:absolute;left:0;right:0;background:linear-gradient(#07111dd9,transparent);border:0}.brand{display:flex;gap:10px;align-items:center}.brand>b,.footMark{font:31px Georgia,serif;letter-spacing:-.16em}.brand span{font:12px Georgia,serif;letter-spacing:.14em}.brand small{display:block;font:7px Arial;letter-spacing:.17em;color:#aeb8c1;margin-top:3px}.icon{border:1px solid #ffffff35;background:#ffffff0c;color:white;border-radius:50%;width:40px;height:40px}.eyebrow{font-size:9px;letter-spacing:.22em;font-weight:700;color:var(--champ)}h1,h2,h3{font-family:Georgia,serif;font-weight:400}i{color:var(--champ)}input,select{width:100%;min-height:48px;border:1px solid #ffffff25;background:#ffffff09;color:inherit;padding:0 13px;border-radius:2px}button{min-height:46px;border:0;background:var(--ivory);color:var(--navy);padding:0 18px;font-weight:700}.landing{min-height:100svh;background:radial-gradient(circle at 75% 20%,#69575b,#132538 42%,#07111d 75%)}.gate{padding:15vh 22px 50px;max-width:620px}.gate h1{font-size:52px;line-height:.95;margin:12px 0}.gate>p{color:#b8c1c9}.gate form{display:grid;gap:8px;margin:30px 0}.demo{font-size:11px;letter-spacing:.1em;border-bottom:1px solid #ffffff55}.lock{min-height:100svh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 70% 15%,#6d5862,#14273a 43%,#07111d 76%)}.lock>div{max-width:420px;width:100%;text-align:center}.lock h1{font-size:44px}.lock form{display:grid;gap:8px}.cover{height:76svh;min-height:500px;position:relative;background:linear-gradient(145deg,#23384d 0 45%,#7b6570 45% 70%,#b79b9a)}.cover:before{content:"";position:absolute;width:72vw;height:72vw;border:1px solid #ffffff1d;border-radius:50%;right:-25vw;top:13%}.coverShade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,#07111df0 98%)}.coverCopy{position:absolute;left:20px;right:20px;bottom:42px}.cover h1{font-size:49px;line-height:.95;margin:10px 0}.cover p{color:#d6dce1}.cover small{letter-spacing:.16em}.galleryNav{position:sticky;z-index:10;top:0;display:flex;gap:4px;overflow:auto;background:#081522f5;backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:10px}.galleryNav button{white-space:nowrap;background:transparent;color:#aeb8c1;border:1px solid transparent;font-size:11px;padding:0 12px}.galleryNav .active{color:white;border-color:#ffffff25}.intro{padding:55px 20px 28px}.intro h2{font-size:37px;line-height:1;margin:8px 0}.intro>p:last-child{color:#9ca8b2;max-width:550px}.photoGrid{columns:2;column-gap:5px;padding:0 5px 60px}.photo{break-inside:avoid;margin-bottom:5px;position:relative;min-height:190px;background:linear-gradient(145deg,#344b60,#796c70);overflow:hidden}.photo:nth-child(3n){min-height:270px;background:linear-gradient(145deg,#624c58,#b5949d)}.photo:nth-child(4n){min-height:220px;background:linear-gradient(145deg,#21384d,#8c7c71)}.photo img{display:block;width:100%;height:auto}.photo .ph{min-height:inherit;display:grid;place-items:center;color:#ffffff48;font:10px Arial;letter-spacing:.18em}.photo .fav{position:absolute;right:8px;top:8px;width:35px;height:35px;min-height:0;padding:0;border-radius:50%;background:#07111d99;color:white}.photo .fav.on{background:var(--ivory);color:#8c5366}.viewer{position:fixed;z-index:50;inset:0;background:#03070bea;display:flex;flex-direction:column;justify-content:center}.viewer>#closeV{position:absolute;right:14px;top:14px;border:0;background:#ffffff15;color:white;border-radius:50%;width:42px;height:42px;padding:0;font-size:25px}.bigPhoto{height:70vh;margin:55px 10px 8px;background:linear-gradient(145deg,#30465b,#856d77);background-size:contain;background-position:center;background-repeat:no-repeat}.viewerActions{display:flex;justify-content:center;gap:6px}.viewerActions button{background:#ffffff12;color:white;border:1px solid #ffffff20;font-size:11px}.modal{position:fixed;z-index:60;inset:0;background:#02060bc9;display:grid;place-items:center;padding:20px}.modalCard{position:relative;width:100%;max-width:390px;background:#0e1c2a;padding:28px;border:1px solid #ffffff20}.modalCard h2{font-size:30px}.modalCard>button:not(.x){width:100%;margin-top:8px}.x{position:absolute;right:8px;top:8px;background:transparent;color:white;font-size:24px}.err{color:#e3a8a8;font-size:12px}.chat{position:fixed;z-index:55;right:10px;left:10px;bottom:10px;height:min(620px,78svh);background:#f5f0e7;color:#15202a;box-shadow:0 25px 80px #000a;display:flex;flex-direction:column;border-radius:18px;overflow:hidden}.chatHead{padding:15px 17px;background:#0d1c2b;color:white;display:flex;justify-content:space-between}.chatHead small{display:block;color:#9eabb6;margin-top:2px}.chatHead button{background:transparent;color:white;padding:0;font-size:22px}.messages{flex:1;overflow:auto;padding:16px}.bubble{max-width:82%;padding:10px 12px;border-radius:14px;margin:6px 0;background:white}.bubble.estudio{margin-left:auto;background:#172b3e;color:white}.bubble small{display:block;opacity:.55;margin-top:5px;font-size:8px}.chat form,#reply{display:flex;padding:10px;gap:6px;border-top:1px solid #ddd}.chat form input,#reply input{color:#17212b;background:white;border-color:#ddd}.chat form button,#reply button{background:#102235;color:white}.chat form input{flex:1}footer{text-align:center;padding:50px 20px 90px;border-top:1px solid var(--line);color:#98a4af}footer p{color:white;font:11px Georgia;letter-spacing:.12em}
.admin{background:#eef0f2;color:#17212b}.adminLogin{min-height:100svh;background:radial-gradient(circle at 70% 20%,#5d4f57,#15283b 45%,#07111d);color:white;display:grid;place-items:center;padding:25px}.adminLogin>div{width:100%;max-width:360px;text-align:center}.adminLogin h1{font-size:38px}.adminLogin input{margin:15px 0}.adminTop{padding:25px 18px 10px;display:flex;align-items:end;justify-content:space-between;gap:10px}.adminTop h1{font-size:34px;margin:3px 0}.adminTop button,.drawer button{background:#102235;color:white}.adminStats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 18px 18px}.adminStats div{background:white;padding:16px}.adminStats b{font:25px Georgia;display:block}.adminStats span{font-size:10px;color:#77818a}.galleryList{padding:0 18px 50px}.gCard{background:white;margin-bottom:10px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px}.gCard h3{font-size:20px;margin:2px 0}.gCard p{font-size:11px;color:#78838c}.gCard button{background:#102235;color:white}.drawer{position:fixed;z-index:70;inset:0;background:#f5f1e9;color:#17212b;padding:20px;overflow:auto}.drawerHead{display:flex;justify-content:space-between;align-items:center}.drawerHead h2{font-size:30px}.drawerHead button{width:42px;padding:0;font-size:22px}.drawer label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin:13px 0}.drawer input,.drawer select{color:#17212b;background:white;border-color:#cdd2d6;margin-top:5px}.drawer>button{width:100%;margin-top:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.manageActions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.manageActions a,.manageActions button{display:grid;place-items:center;text-align:center;min-height:45px;background:#102235;color:white;font-size:10px}.photoAdmin{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0}.pAdmin{aspect-ratio:1;background:#d8dce0;position:relative;background-size:cover;background-position:center}.pAdmin button{position:absolute;right:3px;top:3px;width:30px;height:30px;min-height:0;padding:0;background:#7d2730;color:white}.activity{background:white;max-height:240px;overflow:auto;padding:10px;margin:10px 0}.act{border-bottom:1px solid #eee;padding:9px;font-size:11px}.act b{display:block}
@media(min-width:800px){.photoGrid{columns:4;padding:0 4vw 80px;column-gap:7px}.intro{padding-left:7vw}.coverCopy{left:7vw}.chat{left:auto;width:390px}.drawer{left:auto;width:480px;box-shadow:-20px 0 70px #0004}.drawer.wide{width:620px}.galleryList,.adminStats,.adminTop{max-width:1100px;margin:auto}.gate{padding-left:8vw}.gate h1{font-size:72px}}

.homeBack,.galleryHome{display:flex;align-items:center;gap:7px;color:var(--ivory);text-decoration:none;font-size:11px;letter-spacing:.08em;white-space:nowrap}
.bar .homeBack{margin-right:14px}
.galleryHome{position:absolute;left:15px;top:16px;z-index:4;padding:9px 12px;border:1px solid #ffffff2d;background:#07111d78;backdrop-filter:blur(10px);border-radius:30px}
.demoTop{justify-content:center}.demoTop .galleryHome{top:13px}.demoAccess{position:absolute;right:16px;color:var(--ivory);text-decoration:none;font-size:10px;letter-spacing:.1em;border:1px solid #ffffff35;padding:10px 12px;border-radius:30px}
.galleryNav a{display:grid;place-items:center;min-height:46px;white-space:nowrap;color:#aeb8c1;text-decoration:none;border:1px solid transparent;font-size:11px;padding:0 12px}.galleryNav a.active{color:white;border-color:#ffffff25}
.demoCover{background:linear-gradient(135deg,#15293b 0 36%,#6c5862 36% 66%,#b49b8f 66%)}.demoCover:after{content:"MUESTRA";position:absolute;right:6vw;top:26%;font:10px Arial;letter-spacing:.5em;color:#ffffff55;writing-mode:vertical-rl}
.demoGrid .photo{cursor:default}.demoGrid .photo .ph span{padding:8px 10px;border:1px solid #ffffff2d;background:#07111d3d}.demoGrid .demo1{background:linear-gradient(150deg,#263e52,#b28f91)}.demoGrid .demo2{background:linear-gradient(150deg,#a68b80,#3d5365)}.demoGrid .demo3{background:linear-gradient(150deg,#624f59,#d0b7a0)}.demoGrid .demo4{background:linear-gradient(150deg,#1b354a,#806b70)}.demoGrid .demo5{background:linear-gradient(150deg,#a58e82,#253e52)}.demoGrid .demo6{background:linear-gradient(150deg,#4e4350,#c2a98e)}.demoGrid .demo7{background:linear-gradient(150deg,#203a4d,#90747a)}.demoGrid .demo8{background:linear-gradient(150deg,#c0a690,#4c5e6d)}
.demoCTA{margin:20px 5px 60px;padding:55px 22px;text-align:center;border:1px solid #ffffff18;background:linear-gradient(145deg,#0c1b29,#15283a)}.demoCTA h2{font-size:36px;margin:8px 0}.demoCTA p{color:#9ca8b2}.demoCTA a{display:inline-grid;place-items:center;margin-top:16px;min-height:48px;padding:0 24px;background:var(--ivory);color:var(--navy);text-decoration:none;font-size:11px;font-weight:700}
@media(max-width:520px){.brand span{font-size:10px}.homeBack span,.galleryHome span{display:none}.bar .homeBack{margin-right:8px}.demoAccess{font-size:9px;padding:9px}.cover.demoCover{height:70svh}}

/* V9 · Demo de galería alineada al ecosistema */
.demoGrid .photo .ph{color:#f5f0e7}.demoGrid .photo .demoMark{width:42px;height:42px;border:1px solid #ffffff35;border-radius:50%;display:grid;place-items:center;padding:0;background:#07111d4f;color:#f5f0e7;font:15px Georgia,serif;letter-spacing:-.08em;box-shadow:0 8px 28px #0002}.demoGrid .photo:after{content:"DANIEL COLIN";position:absolute;left:10px;bottom:9px;color:#ffffff8c;font:7px Arial;letter-spacing:.18em}.demoCTA a{background:#f5f0e7!important;color:#07111d!important;border:1px solid #d5c19a}.galleryNav a{color:#aeb8c1!important}.galleryNav a.active{color:#f5f0e7!important}
