.inner-page{background:#fff}
.inner-page .site-header{background:var(--navy);border-bottom:1px solid #ffffff32}
.detail-hero{padding:180px 0 75px;background:var(--navy);color:#fff}
.detail-hero.compact{padding-bottom:95px}
.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:55px;color:#d5e0e8;font-size:.85rem}
.breadcrumb a{border-bottom:1px solid #ffffff88}
.detail-hero h1{max-width:1000px;margin:18px 0 25px;font:normal clamp(3.2rem,7vw,7.2rem)/1.02 var(--display);letter-spacing:-.045em}
.detail-hero h1 em{color:var(--gold);font-weight:400}
.detail-lead{max-width:780px;color:#d4dfe8;font-size:clamp(1.1rem,1.6vw,1.35rem);line-height:1.65}
.detail-meta{display:flex;flex-wrap:wrap;gap:12px 42px;margin:40px 0 0;padding:25px 0 0;border-top:1px solid #ffffff55;color:#e7edf2}
.detail-meta div{min-width:160px}
.detail-meta dt{color:var(--gold);font-size:.7rem;letter-spacing:.18em;font-weight:900}
.detail-meta dd{margin:7px 0 0;font-size:1rem}
.detail-body{padding:90px 0 120px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:clamp(50px,7vw,110px)}
.detail-photo{margin:0;background:var(--paper)}
.detail-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.detail-photo--poster img{height:auto;max-height:760px;aspect-ratio:auto;object-fit:contain;background:var(--paper)}
.detail-photo figcaption{padding:14px 18px;color:var(--muted);font-size:.82rem}
.detail-copy{max-width:760px;padding-top:50px}
.detail-copy h2{font:normal clamp(2.6rem,4vw,4.7rem)/1.1 var(--display);letter-spacing:-.04em;margin:10px 0 25px}
.detail-copy p{color:#40566a;font-size:1.12rem;line-height:1.75}
.detail-side{padding-top:25px}
.detail-side-card{position:sticky;top:130px;padding:35px;background:var(--paper);border-top:3px solid var(--gold)}
.detail-side-card h2{font:normal 2rem/1.15 var(--display);margin:0 0 18px}
.detail-side-card p{color:var(--muted)}
.detail-side-card a{display:inline-flex;gap:16px;margin-top:10px;padding-bottom:7px;border-bottom:1px solid var(--blue);color:var(--blue);font-weight:800}
.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:75px}
.detail-gallery:has(figure:only-child){grid-template-columns:minmax(0,1fr)}
.detail-gallery:has(figure:only-child) img{height:auto;max-height:600px;aspect-ratio:16/9}
.detail-gallery img{width:100%;height:340px;object-fit:cover}
.detail-gallery .detail-gallery-poster{height:auto;max-height:650px;object-fit:contain;background:var(--paper)}
.detail-gallery:has(figure:only-child) .detail-gallery-poster{height:auto;max-height:650px;aspect-ratio:auto;object-fit:contain}
.detail-gallery figure{margin:0}
.detail-gallery figcaption{margin-top:10px;color:var(--muted);font-size:.84rem}
.more-detail{padding:80px 0;background:var(--paper)}
.more-detail h2{font:normal clamp(2.2rem,4vw,4rem)/1.1 var(--display);margin:0 0 28px}
.more-detail a{display:inline-block;padding-bottom:8px;border-bottom:1px solid var(--blue);color:var(--blue);font-weight:800}
.more-detail a span{margin-left:20px}
.speaker-list{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-block:90px 130px}
.speaker-card{display:grid;grid-template-columns:40% 1fr;min-height:360px;background:var(--paper);overflow:hidden;transition:box-shadow .3s ease,transform .3s ease}
.speaker-card:hover{box-shadow:0 22px 48px #071e3820;transform:translateY(-4px)}
.speaker-image{position:relative;min-width:0;min-height:360px;margin:0;overflow:hidden;background:var(--navy)}
.speaker-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.speaker-image--wide img{object-position:19% center}
.speaker-image--poster img{object-position:75% 50%;transform:translateX(-35%) scale(2.05);transform-origin:75% 50%}
.speaker-card:hover .speaker-image--wide img{transform:scale(1.06)}
.speaker-card:hover .speaker-image--poster img{transform:translateX(-35%) scale(2.13)}
.speaker-image figcaption{position:absolute;inset:auto 0 0;padding:18px 15px 12px;background:linear-gradient(transparent,#071e38bf);color:#fff;font-size:.64rem;font-weight:800;letter-spacing:.08em}
.speaker-card > div{display:flex;flex-direction:column;align-items:flex-start;padding:34px}
.speaker-card small{color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.16em}
.speaker-card h2{font:normal clamp(1.8rem,2.5vw,2.8rem)/1.1 var(--display);margin:20px 0}
.speaker-card p{color:var(--muted);margin:0 0 20px}
.speaker-card a{margin-top:auto;padding-bottom:6px;border-bottom:1px solid var(--blue);color:var(--blue);font-weight:800}
.speaker-card--opening{grid-column:1/-1;grid-template-columns:50% 1fr;background:var(--navy);color:#fff;border-top:4px solid var(--gold)}
.speaker-card--opening > div{justify-content:center;padding:45px}
.speaker-card--opening small{color:var(--gold)}
.speaker-card--opening h2{font-size:clamp(2.5rem,3vw,4rem)}
.speaker-card--opening p{max-width:500px;color:#d4dfe8}
.speaker-card--opening a{color:#fff;border-color:var(--gold)}
@media(prefers-reduced-motion:reduce){.speaker-card,.speaker-image img{transition:none}.speaker-card:hover{transform:none}.speaker-card:hover .speaker-image--wide img{transform:none}.speaker-card:hover .speaker-image--poster img{transform:translateX(-35%) scale(2.05)}}
.directory-section{padding-block:80px 130px}
.directory-intro{max-width:850px;margin-bottom:35px}
.directory-intro h2{font:normal clamp(2rem,3.2vw,3.3rem)/1.12 var(--display);margin:0 0 16px;color:var(--navy)}
.directory-intro p{margin:0;color:var(--muted);font-size:1.04rem;line-height:1.7}
.directory-empty{max-width:830px;padding:45px;border-top:3px solid var(--gold);background:var(--paper)}
.directory-empty h2{font:normal clamp(2.2rem,4vw,3.8rem)/1.15 var(--display);margin:0 0 20px}
.directory-empty p{color:var(--muted);font-size:1.08rem}
.directory-controls{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:35px}
.directory-controls input,.directory-controls select{min-height:48px;padding:12px 14px;border:1px solid var(--line);background:white;color:var(--ink);font:inherit}
.directory-controls input{flex:1 1 240px}
.directory-controls select{flex:1 1 170px}
.directory-controls :focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.directory-section #directory-count{color:var(--muted);font-size:.9rem;margin:0 0 18px}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.member-card{min-width:0;border:1px solid var(--line);background:white;cursor:pointer;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.member-card:hover,.member-card:focus-within{transform:translateY(-5px);border-color:#c2a36f;box-shadow:0 20px 44px #09294b17}
.member-card.no-photo{display:flex;min-height:170px}
.member-card.has-logo{display:flex;min-height:170px;align-items:center}
.member-card.has-portrait{display:flex;min-height:170px;align-items:center}
.member-card.has-portrait .member-photo{flex:0 0 128px;width:128px;height:128px;aspect-ratio:auto;margin-left:18px;background:#fff}
.member-card.has-portrait .member-photo img{object-position:left center}
.member-card.has-portrait .member-copy{min-width:0;padding:24px 20px}
.member-card.has-portrait .member-copy h2{font-size:1.48rem;overflow-wrap:anywhere}
.member-inline-logo{width:130px;height:52px;margin-top:14px;overflow:hidden}
.member-inline-logo svg{width:100%;height:100%}
.member-photo{display:grid;place-items:center;aspect-ratio:4/3;background:var(--paper);color:var(--blue);font:normal 4rem var(--display);overflow:hidden}
.member-card.no-photo .member-photo{flex:0 0 70px;width:70px;height:70px;aspect-ratio:auto;margin:25px 0 0 24px;border-radius:50%;font:normal 1.7rem var(--display)}
.member-card.has-logo .member-photo{flex:0 0 128px;width:128px;height:128px;aspect-ratio:auto;margin:0 0 0 18px;background:#fff}
.member-card.has-logo .member-photo svg{display:block;width:100%;height:auto;max-height:100%;overflow:hidden}
.member-card.has-logo .member-photo img{width:100%;height:100%;object-fit:contain;padding:10px}
.member-photo img{width:100%;height:100%;object-fit:cover}
.member-copy{padding:26px}
.member-card.no-photo .member-copy{padding:25px 22px}
.member-card.has-logo .member-copy{min-width:0;padding:24px 20px}
.member-copy h2{font:normal 2rem/1.15 var(--display);margin:0 0 12px}
.member-card.no-photo .member-copy h2{font-size:1.55rem}
.member-card.has-logo .member-copy h2{font-size:1.48rem;overflow-wrap:anywhere}
.member-copy p{margin:8px 0;color:var(--muted)}
.member-company-label{display:block;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.13em}
.member-copy .member-company{color:var(--blue);font-weight:800}
.member-logo{display:block;max-width:150px;max-height:58px;object-fit:contain;margin-top:20px}
.member-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}
.member-links a{color:var(--blue);font-weight:800;border-bottom:1px solid var(--blue)}
.member-open{display:inline-flex;align-items:center;gap:20px;margin-top:18px;padding:7px 0 5px;border:0;border-bottom:1px solid var(--blue);background:none;color:var(--blue);font:700 .9rem var(--sans);cursor:pointer}
.member-open span{transition:transform .25s ease}
.member-card:hover .member-open span,.member-open:focus-visible span{transform:translate(3px,-3px)}
.member-open:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.member-dialog-open{overflow:hidden}
.member-dialog{width:min(920px,calc(100vw - 38px));max-width:none;max-height:min(760px,calc(100dvh - 38px));padding:0;border:1px solid #d5dde4;background:#fff;color:var(--navy);box-shadow:0 30px 90px #061c37a3;overflow:auto}
.member-dialog::backdrop{background:#061b35b9;backdrop-filter:blur(7px)}
.member-dialog-layout{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);min-height:540px}
.member-dialog-visual{position:relative;min-height:540px;background:linear-gradient(145deg,#12395e,#071f3d 75%);overflow:hidden}
.member-dialog-visual::after{content:"";position:absolute;inset:auto -20% -42% 0;height:75%;border-radius:50%;border:1px solid #d8ae684d;box-shadow:0 0 0 48px #d8ae6810,0 0 0 100px #d8ae6809;pointer-events:none}
.member-dialog-visual>img{display:block;width:100%;height:100%;max-height:760px;object-fit:cover}
.member-dialog-visual>img[src*="ponente-feliciano"]{object-position:18% center}
.member-dialog-placeholder{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;width:100%;min-height:540px;padding:40px;color:#fff}
.member-dialog-initials{font:normal clamp(5rem,10vw,9rem)/1 var(--display);letter-spacing:-.08em;color:#e0b875}
.member-dialog-photo-label{margin-top:auto;color:#d9b878;font-size:.78rem;font-weight:900;letter-spacing:.18em}
.member-dialog-photo-pending{margin-top:8px;color:#dce7ef;font-size:.95rem}
.member-dialog-body{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:76px clamp(30px,5vw,64px) 48px}
.member-dialog-close{position:absolute;top:22px;right:27px;display:inline-flex;align-items:center;gap:10px;padding:4px;border:0;background:none;color:var(--blue);font:700 .86rem var(--sans);cursor:pointer}
.member-dialog-close span{font-size:1.7rem;font-weight:400;line-height:1}
.member-dialog-close:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.member-dialog-body .overline{margin:0;color:var(--blue)}
.member-dialog-body h2{margin:20px 0 14px;font:normal clamp(2.6rem,4.2vw,4.5rem)/1.05 var(--display);letter-spacing:-.045em;overflow-wrap:anywhere}
.member-dialog-company{margin:0 0 24px;color:var(--blue);font-size:1.13rem;font-weight:800}
.member-dialog-logo{display:grid;place-items:center;width:min(250px,100%);min-height:100px;margin:6px 0 30px;padding:12px;border:1px solid var(--line);background:#fff;isolation:isolate}
.member-dialog-logo svg,.member-dialog-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100px;overflow:hidden;mix-blend-mode:multiply}
.member-dialog-about{width:100%;margin-top:auto;padding-top:27px;border-top:1px solid var(--line)}
.member-dialog-about h3{margin:0 0 10px;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.member-dialog-about p{margin:0;color:#40566a;font-size:1.04rem;line-height:1.65}
@media(prefers-reduced-motion:no-preference){.member-dialog[open]{animation:member-dialog-enter .42s cubic-bezier(.2,.8,.2,1) both}.member-dialog[open]::backdrop{animation:member-backdrop-enter .35s ease both}.member-dialog[open] .member-dialog-visual>*{animation:member-visual-enter .65s cubic-bezier(.2,.8,.2,1) both}@keyframes member-dialog-enter{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes member-backdrop-enter{from{opacity:0}to{opacity:1}}@keyframes member-visual-enter{from{opacity:0;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}}
[hidden]{display:none!important}
@media(max-width:1050px){.speaker-list{grid-template-columns:1fr}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.detail-hero{padding-top:145px}.detail-grid{grid-template-columns:1fr}.detail-side{padding:0}.detail-side-card{position:static}.detail-gallery img{height:220px}.speaker-card{min-height:280px}.directory-grid{grid-template-columns:1fr}}
@media(max-width:700px){.member-dialog-layout{grid-template-columns:1fr}.member-dialog-visual{min-height:210px;max-height:260px}.member-dialog-visual>img{height:260px}.member-dialog-placeholder{min-height:210px;padding:22px 30px}.member-dialog-initials{font-size:5.5rem}.member-dialog-photo-label{margin-top:0}.member-dialog-body{min-height:390px;padding:62px 30px 36px}.member-dialog-body h2{font-size:clamp(2.4rem,9vw,3.7rem)}.member-dialog-logo{min-height:70px;margin-bottom:20px}.member-dialog-logo svg,.member-dialog-logo img{max-height:70px}}
@media(max-width:500px){.detail-hero h1{font-size:clamp(3rem,12vw,4.5rem)}.detail-gallery{grid-template-columns:1fr}.detail-gallery img{height:auto;aspect-ratio:4/3}.speaker-card{display:block}.speaker-image{height:250px;min-height:250px}.speaker-card .speaker-image img{height:100%}.speaker-card>div{padding:26px}.speaker-card--opening>div{padding:38px 26px}.directory-empty{padding:30px}.member-card.no-photo .member-photo{flex-basis:58px;width:58px;height:58px;margin:22px 0 0 18px;font-size:1.4rem}.member-card.no-photo .member-copy{padding:21px 18px}.member-card.no-photo .member-copy h2{font-size:1.35rem}.member-card.has-logo .member-photo{flex-basis:90px;width:90px;height:90px;margin-left:10px}.member-card.has-logo .member-copy{padding:20px 13px}.member-card.has-logo .member-copy h2{font-size:1.3rem}}
.detail-gallery--portraits img{height:min(55vw,620px);aspect-ratio:3/4;object-fit:contain;background:var(--paper)}
@media(max-width:500px){
  .detail-gallery--portraits img{height:auto;aspect-ratio:3/4}
  .speaker-image{height:clamp(235px,65vw,310px);min-height:0}
  .speaker-card .speaker-image img{display:block;width:100%;height:100%;object-fit:cover}
  .speaker-image--wide img{object-position:19% center}
  .speaker-image--poster img,.speaker-card:hover .speaker-image--poster img{object-position:75% 47%;transform:none}
  .speaker-image--poster figcaption{display:none}
  .speaker-card:hover .speaker-image--wide img{transform:none}
}

.allies-section{position:relative;overflow:hidden;padding:105px 0 120px;color:#fff;background:linear-gradient(150deg,#071e38 0%,#0e3157 55%,#071e38 100%)}
.allies-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 48%,#2d5e8b55,transparent 48%),radial-gradient(circle at 93% 4%,#d7aa6130,transparent 25%);background-size:140% 140%}
.allies-heading{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:55px}
.allies-heading h2{margin:16px 0 18px;font:normal clamp(3.5rem,6vw,6.5rem)/1.03 var(--display);letter-spacing:-.045em}
.allies-heading h2 em{color:var(--gold);font-weight:400}
.allies-heading p:not(.overline){max-width:650px;margin:0;color:#d4e0e9;font-size:1.08rem;line-height:1.65}
.allies-motion-toggle{align-self:flex-end;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:11px 15px;border:1px solid #ffffff76;background:#ffffff0d;color:#fff;font-weight:700;cursor:pointer;transition:background .25s,border-color .25s}
.allies-motion-toggle:hover{background:#ffffff1b;border-color:var(--gold)}
.allies-motion-toggle span{color:var(--gold);font-size:1.1rem}
.allies-motion-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.allies-stage{position:relative;z-index:1}
.allies-stage::before{content:"";position:absolute;z-index:-1;inset:12% 12%;pointer-events:none;background:radial-gradient(ellipse at center,#dfb66b56 0%,#3e719755 35%,transparent 70%);filter:blur(28px)}
.allies-honeycomb{--cell-size:clamp(118px,12.5vw,180px);display:flex;flex-direction:column;align-items:center;padding:8px 0 15px;isolation:isolate;transform:translateX(calc(var(--cell-size)*-.25))}
.honey-row{position:relative;left:var(--row-offset,0px);display:flex;justify-content:center;gap:7px;width:max-content;animation:honey-drift 12s ease-in-out infinite alternate;will-change:transform}
.honey-row:nth-child(even){animation-name:honey-drift-reverse;animation-duration:15s}
.honey-row+.honey-row{margin-top:calc(var(--cell-size)*-.18)}
.honey-tile{position:relative;z-index:1;display:block;flex:none;width:var(--cell-size);height:calc(var(--cell-size)*1.14);padding:2px;margin:0;border:0;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:linear-gradient(145deg,#e8c77c,#7da4c4 55%,#e8c77c);filter:drop-shadow(0 8px 13px #071e3850);transition:transform .35s ease,background .35s ease,filter .35s ease;transform-origin:center}
.honey-tile:hover{z-index:3;transform:translateY(-9px) scale(1.09);background:var(--gold);filter:drop-shadow(0 0 18px #efc77ba0)}
.honey-face{display:grid;place-items:center;width:100%;height:100%;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:#fff;isolation:isolate}
.honey-face svg{display:block;width:auto;height:auto;max-width:84%;max-height:64%;overflow:hidden;mix-blend-mode:multiply}
.honey-face img{display:block;width:84%;height:64%;object-fit:contain;mix-blend-mode:multiply}
.honey-face--dark{background:#010242}
.honey-face--dark img{mix-blend-mode:normal}
.allies-fallback img{width:100%;height:auto;background:#fff}
.allies-section.is-paused .honey-row{animation-play-state:paused}
@keyframes honey-drift{from{transform:translateX(-4px)}to{transform:translateX(4px)}}
@keyframes honey-drift-reverse{from{transform:translateX(4px)}to{transform:translateX(-4px)}}
@keyframes allies-ambient{from{background-position:0% 0%}to{background-position:100% 70%}}
@keyframes allies-glow{from{transform:translateX(-11%) scale(.9);opacity:.48}to{transform:translateX(11%) scale(1.08);opacity:.8}}
@media(prefers-reduced-motion:no-preference){.allies-section::before{animation:allies-ambient 18s ease-in-out infinite alternate}.allies-stage::before{animation:allies-glow 12s ease-in-out infinite alternate}.allies-honeycomb.is-visible .honey-tile{animation:honey-arrive .8s backwards;animation-delay:calc(var(--tile-index)*32ms)}@keyframes honey-arrive{from{opacity:0;transform:translateY(52px) scale(.75);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}}
@media(max-width:900px){.allies-honeycomb{--cell-size:clamp(105px,17.5vw,160px)}}
@media(max-width:600px){.allies-section{padding:80px 0 90px}.allies-heading{display:block;margin-bottom:40px}.allies-heading h2{font-size:clamp(3rem,11vw,4.4rem)}.allies-heading p:not(.overline){font-size:.98rem}.allies-motion-toggle{margin-top:25px}.allies-honeycomb{--cell-size:min(24vw,112px)}.honey-row{gap:7px;animation-duration:16s}.honey-row:nth-child(even){animation-duration:19s}}
@media(prefers-reduced-motion:reduce){.honey-row,.allies-honeycomb.is-visible .honey-tile,.allies-section::before,.allies-stage::before{animation:none!important}.allies-motion-toggle{display:none}}
