/* Shared dedicated-page layout and accessible navigation dropdown. */
.nav-dropdown { position: relative; }
.nav-auth-controls { display:flex;align-items:center;gap:8px; }
.auth-register-link { color:var(--accent-dim); }
.auth-nav-loading { display:grid;place-items:center;width:34px;height:34px;color:var(--text-muted); }
.auth-mobile-button { width:100%;text-align:left;border:0;background:transparent;font-family:inherit; }
.dropdown-toggle { display: inline-flex; align-items: center; gap: 5px; }
.dropdown-toggle svg { transition: transform .22s ease; }
.nav-dropdown.open .dropdown-toggle svg { transform: rotate(180deg); }
.dropdown-menu { position:absolute; top:calc(100% + 12px); left:50%; width:min(280px,calc(100vw - 28px)); padding:10px; border:1px solid var(--border-color); border-radius:14px; background:color-mix(in srgb,var(--bg-card) 96%,transparent); box-shadow:var(--shadow-lg); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); opacity:0; visibility:hidden; transform:translate(-50%,-8px) scale(.98); transition:opacity .2s ease,transform .2s ease,visibility .2s ease; z-index:1100; }
.nav-dropdown.open .dropdown-menu { opacity:1; visibility:visible; transform:translate(-50%,0) scale(1); }
.dropdown-menu a { display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:9px; color:var(--text-secondary); font-size:.84rem; }
.dropdown-menu a:hover,.dropdown-menu a:focus-visible { color:var(--text-primary); background:var(--bg-elevated); }
.nav-dropdown.current > .dropdown-toggle { color:var(--accent); }
.page-main { padding-top:var(--header-height); min-height:75vh; }
.brand-mark { width:32px;height:32px;display:block;flex:0 0 32px;border-radius:9px; }
.nav-logo,.footer-logo { gap:10px; }
.hero-content { container-type:inline-size; }
.hero-name { font-size:clamp(2.35rem,9cqi,4rem); line-height:.95; letter-spacing:-.055em; }
.hero-name span { white-space:nowrap; max-width:100%; }
.hero-title { border:0!important;background:transparent!important;padding:0!important;border-radius:0!important; }
.page-hero { padding:clamp(72px,10vw,130px) 0 clamp(52px,8vw,90px); overflow:hidden; }
.page-hero-inner { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:clamp(32px,7vw,90px); align-items:center; }
.page-kicker { color:var(--accent); text-transform:uppercase; letter-spacing:.18em; font-size:.74rem; font-weight:800; }
.page-title { margin:12px 0 18px; font-size:clamp(2.35rem,6vw,5.4rem); line-height:.96; font-weight:900; letter-spacing:-.055em; }
.page-lead { max-width:680px; color:var(--text-secondary); font-size:clamp(.96rem,1.4vw,1.1rem); line-height:1.75; }
.page-visual { aspect-ratio:4/3; border-radius:24px; overflow:hidden; border:1px solid var(--border-color); background:var(--bg-card); box-shadow:var(--shadow-lg); position:relative; }
.page-visual img { width:100%; height:100%; object-fit:cover; }
.page-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(135deg,transparent 45%,var(--accent-glow)); pointer-events:none; }
.page-section { padding:clamp(58px,8vw,100px) 0; }
.page-section,body[data-page="home"] main > section:not(.hero),body[data-page="home"] > section:not(.hero) { content-visibility:auto; contain-intrinsic-size:800px; }
.page-section.alt { background:color-mix(in srgb,var(--bg-secondary) 70%,transparent); }
.editorial-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
.editorial-block { padding:26px 0;border-top:1px solid var(--border-light); }
.editorial-block .number { color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.12em; }
.editorial-block h3 { margin:14px 0 9px;font-size:1.15rem; }
.editorial-block p { color:var(--text-muted);font-size:.88rem; }
.focus-list { display:flex;flex-wrap:wrap;gap:10px;margin-top:24px; }
.focus-list span { padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.82rem; }
.page-projects-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.page-projects-grid .project-card:first-child { grid-column:1/-1; }
.page-projects-grid .project-card:first-child .project-image { aspect-ratio:21/9; }
.gallery-notice { margin-bottom:24px;padding:15px 18px;border-left:3px solid #f59e0b;background:rgba(245,158,11,.08);color:var(--text-secondary);font-size:.86rem; }
.cv-status { display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;padding:7px 11px;border:1px solid rgba(245,158,11,.35);border-radius:999px;background:rgba(245,158,11,.08);color:#f59e0b;font-size:.78rem;font-weight:700; }
.page-explore { border-top:1px solid var(--border-color); }
.explore-links { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px; }
.explore-link { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-card); }
.explore-link:hover { border-color:var(--accent);transform:translateY(-3px);box-shadow:var(--shadow-md); }
.explore-link span { display:flex;flex-direction:column;gap:5px;min-width:0; }
.explore-link strong { font-size:1rem; }
.explore-link small { color:var(--text-muted);line-height:1.45; }
.explore-link svg { flex:0 0 auto;color:var(--accent); }
.story-split { display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(34px,8vw,110px);align-items:start; }
.story-index { position:sticky;top:calc(var(--header-height) + 28px);color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase; }
.story-copy h2 { font-size:clamp(1.8rem,4vw,3.6rem);line-height:1.04;letter-spacing:-.045em;margin-bottom:22px; }
.story-copy p { color:var(--text-secondary);font-size:clamp(.95rem,1.3vw,1.08rem);line-height:1.8;margin-bottom:16px;max-width:740px; }
.detail-list { margin-top:30px;border-top:1px solid var(--border-light); }
.detail-row { display:grid;grid-template-columns:150px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--border-color); }
.detail-row dt { color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700; }
.detail-row dd { color:var(--text-primary);font-size:.92rem; }
.process-line { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px;border-top:1px solid var(--border-light); }
.process-step { padding:24px 20px 8px 0;border-right:1px solid var(--border-color); }
.process-step:last-child { border-right:0;padding-left:20px; }
.process-step:not(:first-child) { padding-left:20px; }
.process-step b { display:block;color:var(--accent);font-size:.72rem;margin-bottom:12px; }
.process-step strong { display:block;font-size:.94rem;margin-bottom:7px; }
.process-step p { color:var(--text-muted);font-size:.8rem;line-height:1.55; }
.platform-strip { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border-color);border:1px solid var(--border-color);margin-top:30px; }
.platform-strip a { background:var(--bg-primary);padding:25px;display:flex;justify-content:space-between;align-items:center;gap:15px; }
.platform-strip a:hover { background:var(--bg-elevated); }
.platform-strip strong { display:block;margin-bottom:4px; }
.platform-strip small { color:var(--text-muted); }
.plain-note { padding:20px 0;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);color:var(--text-secondary);line-height:1.7; }
.creator-avatar { display:block;width:86px;height:86px;object-fit:cover;border-radius:50%;margin:22px auto 0;border:3px solid var(--accent);box-shadow:0 0 0 8px var(--accent-glow-soft); }
.creator-page-visual img { object-position:center; }
.platform-buttons .btn img,.contact-actions .btn img,.showreel-content .btn img,.contact-detail-icon img { display:block;object-fit:contain; }
.hero-socials img,.footer-socials img,.whatsapp-float img,.social-card-icon img { display:block;object-fit:contain; }
html[data-theme="dark"] .hero-socials img[src*="tiktok/ffffff"],html[data-theme="dark"] .footer-socials img[src*="tiktok/ffffff"] { filter:none; }
html[data-theme="light"] .hero-socials img[src*="tiktok/ffffff"],html[data-theme="light"] .footer-socials img[src*="tiktok/ffffff"] { filter:invert(1); }
.platform-strip a::before { content:"";width:24px;height:24px;flex:0 0 24px;background-repeat:no-repeat;background-position:center;background-size:contain; }
.platform-strip a[href*="tiktok"]::before { background-image:url("https://cdn.simpleicons.org/tiktok/111111"); }
.platform-strip a[href*="instagram"]::before { background-image:url("https://cdn.simpleicons.org/instagram/E4405F"); }
.platform-strip a[href*="youtube"]::before { background-image:url("https://cdn.simpleicons.org/youtube/FF0000"); }
.project-details-trigger { border:0;font-family:inherit;cursor:pointer;background:transparent; }
.live-preview-label { position:absolute;z-index:2;top:12px;left:12px;display:inline-flex;align-items:center;gap:7px;padding:6px 9px;background:rgba(5,9,8,.82);color:#fff;border:1px solid rgba(255,255,255,.14);font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase; }
.live-preview-label span { width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent); }
.creator-connect { border-top:1px solid var(--border-color);background:var(--bg-secondary); }
.creator-connect-inner { display:grid;grid-template-columns:auto minmax(240px,1fr) minmax(360px,1.2fr);gap:30px;align-items:center; }
.creator-connect-photo { width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--accent); }
.creator-connect-copy h2 { font-size:clamp(1.35rem,2.3vw,2rem);margin:2px 0 7px; }
.creator-connect-copy p { color:var(--text-muted);font-size:.82rem;line-height:1.55;max-width:520px; }
.creator-connect-links { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--border-color); }
.creator-connect-links a { min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px 8px;border-right:1px solid var(--border-color);font-size:.7rem;color:var(--text-secondary); }
.creator-connect-links a:last-child { border-right:0; }
.creator-connect-links a:hover { background:var(--bg-elevated);color:var(--text-primary); }
.creator-connect-links img { display:block;object-fit:contain; }
html[data-theme="light"] .creator-connect-links img[src*="tiktok/ffffff"] { filter:invert(1); }
.video-platform-logo { position:absolute!important;right:14px!important;top:14px!important;width:36px!important;height:36px!important;object-fit:contain!important;padding:8px!important;border-radius:50%!important;background:rgba(6,10,9,.82)!important;z-index:3!important; }
.video-platform-badge { gap:6px; }
.video-platform-badge img { width:13px;height:13px;object-fit:contain; }
.hero-workspace-image { position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;border:1px solid var(--border-light);margin:0;background:var(--bg-elevated); }
.hero-workspace-image img { width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.06); }
.hero-workspace-image::after { content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(4,8,7,.74));pointer-events:none; }
.hero-workspace-image figcaption { position:absolute;z-index:1;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;color:#fff;text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.14em; }

/* Reliable local social icons. The remote Simple Icons images were failing in production, so keep the visual assets inside the repository. */
.hero-socials img[src*="cdn.simpleicons.org"],
.footer-socials img[src*="cdn.simpleicons.org"],
.social-card-icon img[src*="cdn.simpleicons.org"],
.contact-detail-icon img[src*="cdn.simpleicons.org"],
.platform-buttons .btn img[src*="cdn.simpleicons.org"],
.contact-actions .btn img[src*="cdn.simpleicons.org"],
.whatsapp-float img[src*="cdn.simpleicons.org"],
.creator-connect-links img[src*="cdn.simpleicons.org"] { background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important; }
.hero-socials img[src*="tiktok"],.footer-socials img[src*="tiktok"],.social-card-icon img[src*="tiktok"],.creator-connect-links img[src*="tiktok"] { content:url("../assets/icons/tiktok.svg")!important; }
.hero-socials img[src*="instagram"],.footer-socials img[src*="instagram"],.social-card-icon img[src*="instagram"],.creator-connect-links img[src*="instagram"] { content:url("../assets/icons/instagram.svg")!important; }
.hero-socials img[src*="youtube"],.footer-socials img[src*="youtube"],.social-card-icon img[src*="youtube"],.creator-connect-links img[src*="youtube"] { content:url("../assets/icons/youtube.svg")!important; }
.hero-socials img[src*="whatsapp"],.contact-detail-icon img[src*="whatsapp"],.contact-actions .btn img[src*="whatsapp"],.whatsapp-float img[src*="whatsapp"],.creator-connect-links img[src*="whatsapp"] { content:url("../assets/icons/whatsapp.svg")!important; }
.hero-socials img[src*="gmail"],.footer-socials img[src*="gmail"],.contact-detail-icon img[src*="gmail"],.contact-actions .btn img[src*="gmail"] { content:url("../assets/icons/gmail.svg")!important; }
.hero-socials img[src*="tiktok"],.footer-socials img[src*="tiktok"],.social-card-icon img[src*="tiktok"],.creator-connect-links img[src*="tiktok"] { filter:invert(1)!important; }
.platform-strip a[href*="tiktok"]::before { background-image:url("../assets/icons/tiktok.svg"); }
.platform-strip a[href*="instagram"]::before { background-image:url("../assets/icons/instagram.svg"); }
.platform-strip a[href*="youtube"]::before { background-image:url("../assets/icons/youtube.svg"); }

@media(max-width:1024px){
.nav-auth-controls.nav-login-link{display:none!important}.nav-actions{margin-left:auto;min-width:0;flex:0 0 auto}.nav-toggle{flex:0 0 auto}.nav-logo{min-width:0;max-width:calc(100vw - 88px)}.nav-logo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-dropdown{width:100%}.dropdown-toggle{width:100%;justify-content:space-between}.dropdown-menu{position:static;width:100%;max-height:0;overflow:hidden;padding:0 8px;border:0;box-shadow:none;opacity:1;visibility:visible;transform:none;background:var(--bg-elevated);border-radius:10px;transition:max-height .28s ease,padding .28s ease,margin .28s ease}.nav-dropdown.open .dropdown-menu{max-height:430px;padding:8px;margin:5px 0;transform:none}.page-hero-inner{grid-template-columns:1fr}.page-visual{max-width:620px}
}
@media(max-width:1024px){
html,body{max-width:100%;overflow-x:clip!important}.navbar{background:var(--bg-primary)!important}html[data-theme="light"] .navbar,html[data-theme="light"] .navbar.scrolled{background:#f4f7f2!important}.hero{min-height:auto!important;padding:calc(var(--header-height) + 46px) 0 56px!important;overflow:hidden}.hero-container{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:40px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}.hero-content{width:100%!important;max-width:760px!important;margin:0 auto!important;text-align:left!important}.hero-greeting{margin-bottom:8px}.hero-name{width:100%;max-width:100%;font-size:clamp(2.5rem,8.2vw,4.7rem)!important;line-height:.94!important;letter-spacing:-.055em!important;overflow:visible!important}.hero-name span{display:block;width:fit-content;max-width:100%;white-space:nowrap;background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;color:var(--text-primary)!important}.hero-title{display:flex!important;width:fit-content!important;max-width:100%!important;margin:22px 0 18px!important;justify-content:flex-start!important;text-align:left!important}.hero-description{max-width:680px!important;margin:0 0 26px!important;text-align:left!important}.hero-buttons,.hero-socials{justify-content:flex-start!important}.hero-visual{display:block!important;width:100%!important;max-width:760px!important;min-height:0!important;margin:0 auto!important;overflow:hidden!important}.hero-workspace-image{aspect-ratio:16/9;max-height:430px}.code-panel,.design-panel,.timeline-panel,.profile-replace-card,.visual-halo{display:none!important}.hero-stats{position:static!important;inset:auto!important;float:none!important;clear:both!important;width:100%!important;max-width:760px!important;margin:28px auto 0!important}.hero-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.stat-card{min-width:0}.contact-actions{display:flex!important;flex-direction:row!important;align-items:stretch!important}.contact-actions .btn{flex:0 1 auto!important;min-height:50px!important;height:auto!important;padding:13px 20px!important}.footer-socials a,.hero-socials a{flex:0 0 40px!important;width:40px!important;height:40px!important;min-width:40px!important}.fade-in,.fade-in-left,.fade-in-right{opacity:1!important;transform:none!important;transition:none!important}.navbar,.visual-panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.creator-connect-inner{grid-template-columns:auto 1fr}.creator-connect-links{grid-column:1/-1}
}
@media(max-width:720px){
.editorial-grid,.page-projects-grid{grid-template-columns:1fr}.page-projects-grid .project-card:first-child{grid-column:auto}.page-projects-grid .project-card:first-child .project-image{aspect-ratio:16/10}.page-title{overflow-wrap:anywhere}.hero-name{font-size:clamp(1.86rem,9.2vw,3rem)!important;letter-spacing:-.055em}.hero-title{width:100%!important;border-radius:12px!important;font-size:.78rem!important;line-height:1.45!important;padding:9px 11px!important}.hero-buttons{display:grid!important;grid-template-columns:1fr!important;width:100%}.hero-buttons .btn{width:100%}.hero-workspace-image{aspect-ratio:3/2;max-height:320px}.hero-stats-grid{grid-template-columns:1fr!important}.stat-card{flex-direction:row!important;align-items:center!important;padding:14px 4px!important}.explore-links{grid-template-columns:1fr}.story-split{grid-template-columns:1fr;gap:20px}.story-index{position:static}.detail-row{grid-template-columns:1fr;gap:6px}.process-line,.platform-strip{grid-template-columns:1fr}.process-step,.process-step:not(:first-child),.process-step:last-child{padding:18px 0;border-right:0;border-bottom:1px solid var(--border-color)}.contact-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:10px!important}.contact-actions .btn{width:100%!important;min-height:50px!important;height:50px!important;flex:none!important;padding:0 16px!important}.creator-connect-inner{grid-template-columns:1fr;text-align:left}.creator-connect-photo{width:76px;height:76px}.creator-connect-links{grid-column:auto;grid-template-columns:repeat(2,1fr)}.creator-connect-links a{flex-direction:row;justify-content:flex-start;padding:13px;border-bottom:1px solid var(--border-color)}.creator-connect-links a:nth-child(even){border-right:0}
}
@media(max-width:430px){.hero-name{font-size:clamp(1.72rem,8.8vw,2.45rem)!important}.hero-description{font-size:.9rem!important;line-height:1.7!important}.hero-socials{flex-wrap:wrap}.hero-socials a,.footer-socials a{flex-basis:38px!important;width:38px!important;height:38px!important;min-width:38px!important}.hero-stats,.hero-stats-grid,.stat-card{width:100%!important;max-width:100%!important}.hero-stats{display:none!important}.hero-workspace-image{aspect-ratio:16/10}}
@media(max-width:380px){.page-title{font-size:clamp(2rem,12vw,2.8rem)}.page-hero{padding-top:54px}.hero-name{font-size:clamp(1.58rem,8.5vw,2.15rem)!important}}

@media (min-width:1025px){
.fade-in,.fade-in-left,.fade-in-right{animation:bobmanuelDesktopReveal .65s ease-out .08s both}
.hero-content,.hero-visual,.hero-container,section,.container{content-visibility:visible!important}
}
@keyframes bobmanuelDesktopReveal{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.fade-in,.fade-in-left,.fade-in-right{animation:none!important;opacity:1!important;transform:none!important}}