/* OW Team Directory: front end.
   One shared style system. Every Elementor Style control writes to these
   variables or classes, and every layout reads the same ones. No layout adds
   decoration of its own. */
.owtd-vars{
	--owtd-cols:3;--owtd-gap:24px;
	--owtd-card-bg:#ffffff;--owtd-card-pad:24px;--owtd-card-radius:16px;
	--owtd-align:center;--owtd-justify:center;
	--owtd-photo-w:120px;--owtd-photo-radius:50%;
	--owtd-accent:#1f1d2b;--owtd-icon-fg:#ffffff;--owtd-icon-size:36px;--owtd-icon-gap:8px;
	--owtd-name-c:inherit;--owtd-title-c:#6b6880;--owtd-bio-c:inherit;
	--owtd-btn-bg:var(--owtd-accent);--owtd-btn-fg:#ffffff;
	--owtd-qr-size:132px;
	--owtd-ov-tint:rgba(15,10,40,.65);--owtd-ov-fg:#ffffff;--owtd-ov-h:340px;
	--owtd-slides:3;
}
.owtd-dir{position:relative}
.owtd-pop-host{position:static!important;margin:0!important;padding:0!important;width:auto!important}
.owtd-pop[hidden]{display:none}
.owtd-dir *,.owtd-pop *{box-sizing:border-box}
.owtd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* department tabs */
.owtd-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:var(--owtd-justify);margin:0 0 24px}
.owtd-tab{appearance:none;cursor:pointer;font:inherit;font-size:14px;font-weight:600;line-height:1.2;padding:9px 16px;border-radius:999px;border:1px solid rgba(0,0,0,.14);background:transparent;color:inherit;transition:background .15s,color .15s,border-color .15s}
.owtd-tab:hover{border-color:var(--owtd-accent)}
.owtd-tab.is-active{background:var(--owtd-accent);border-color:var(--owtd-accent);color:#fff}
.owtd-dir.is-loading .owtd-items{opacity:.4;transition:opacity .2s;pointer-events:none}

/* grid */
.owtd-grid{display:grid;grid-template-columns:repeat(var(--owtd-cols),minmax(0,1fr));gap:var(--owtd-gap)}
.owtd-L-row .owtd-grid{grid-template-columns:1fr}
.owtd-single .owtd-grid{grid-template-columns:minmax(0,1fr)}

/* card: shared by every layout */
.owtd-card{position:relative;display:flex;flex-direction:column;align-items:var(--owtd-justify);text-align:var(--owtd-align);background:var(--owtd-card-bg);padding:var(--owtd-card-pad);border-radius:var(--owtd-card-radius);overflow:hidden;min-width:0}
.owtd-card.has-dept-bg{background:var(--owtd-card-bg-dept,var(--owtd-card-bg))}
.owtd-body{display:flex;flex-direction:column;align-items:var(--owtd-justify);gap:6px;width:100%}
.owtd-photo{width:var(--owtd-photo-w);max-width:100%;aspect-ratio:1;border-radius:var(--owtd-photo-radius);overflow:hidden;flex:none;margin:0 0 14px;background:var(--owtd-ph-bg,#ececf2)}
.owtd-photo img{display:block;width:100%;height:100%;object-fit:cover;margin:0;max-width:none;border-radius:0}
.owtd-photo.is-logo img{object-fit:contain;padding:14%}
.owtd-photo.is-ph{display:grid;place-items:center;color:var(--owtd-ph-fg,#fff);font-weight:700;font-size:calc(var(--owtd-photo-w) * .32)}
.owtd-photo.is-ph .owtd-svg{width:46%;height:46%}
.owtd-vars .owtd-name{margin:0;padding:0;font-size:19px;line-height:1.25;font-weight:700;color:var(--owtd-name-c)}
.owtd-vars .owtd-title{font-size:14px;line-height:1.4;color:var(--owtd-title-c)}
.owtd-company{font-size:13.5px;opacity:.8}
.owtd-depts{display:flex;flex-wrap:wrap;gap:6px;justify-content:var(--owtd-justify);margin-top:4px}
.owtd-depts span{font-size:12px;font-weight:600;line-height:1.2;padding:4px 10px;border-radius:999px;color:var(--owtd-accent);background:color-mix(in srgb,var(--owtd-accent) 10%,transparent)}
.owtd-vars .owtd-bio{margin:6px 0 0;font-size:14.5px;line-height:1.55;color:var(--owtd-bio-c)}

/* contact icons */
.owtd-icons{display:flex;flex-wrap:wrap;gap:var(--owtd-icon-gap);justify-content:var(--owtd-justify);margin:12px 0 2px}
.owtd-icon{display:inline-flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none!important;color:inherit;font-size:11px;line-height:1.2}
.owtd-icon-i{width:var(--owtd-icon-size);height:var(--owtd-icon-size);border-radius:50%;display:grid;place-items:center;background:var(--owtd-accent);color:var(--owtd-icon-fg);transition:transform .15s,filter .15s}
.owtd-icon-i .owtd-svg{width:46%;height:46%}
.owtd-icon:hover .owtd-icon-i,.owtd-icon:focus-visible .owtd-icon-i{transform:translateY(-2px);filter:brightness(1.12)}
.owtd-has-labels .owtd-icon{width:calc(var(--owtd-icon-size) + 12px)}
.owtd-icon-l{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* QR */
.owtd-qr{width:var(--owtd-qr-size);max-width:100%;margin:10px 0 2px}
.owtd-qr svg{display:block;width:100%;height:auto}

/* save button: same element in every layout */
.owtd-btn{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;padding:12px 22px;border-radius:999px;background:var(--owtd-btn-bg);color:var(--owtd-btn-fg);border:0 solid transparent;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none!important;cursor:pointer;transition:background .15s,color .15s,border-color .15s,filter .15s}
.owtd-btn:hover{filter:brightness(1.1)}
.owtd-btn .owtd-svg{width:18px;height:18px;flex:none}
.owtd-card>.owtd-body:not(:last-child){margin-bottom:18px}
.owtd-card>.owtd-btn{align-self:var(--owtd-justify);margin-top:auto}

/* card-wide click target for the popup (sits under links and buttons) */
.owtd-open{position:absolute;inset:0;z-index:1;border:0;background:transparent;cursor:pointer;padding:0;margin:0;border-radius:inherit}
.owtd-open:focus-visible{outline:2px solid var(--owtd-accent);outline-offset:-2px}
.owtd-card .owtd-icon,.owtd-card a{position:relative;z-index:2}

/* layout: photo top (photo runs edge to edge) */
.owtd-L-photo .owtd-card{padding-top:0}
.owtd-L-photo .owtd-photo{width:calc(100% + 2 * var(--owtd-card-pad));max-width:none;margin:0 calc(-1 * var(--owtd-card-pad)) 18px;border-radius:0;aspect-ratio:1}

/* layout: list row */
.owtd-L-row .owtd-card{display:grid;grid-template-columns:var(--owtd-photo-w) minmax(0,1fr) minmax(0,1.3fr);gap:28px;align-items:center;text-align:left}
.owtd-L-row .owtd-photo{margin:0}
.owtd-L-row .owtd-col{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.owtd-L-row .owtd-icons,.owtd-L-row .owtd-depts{justify-content:flex-start}
.owtd-L-row .owtd-btn{margin-top:12px}
.owtd-L-row .owtd-col-b>.owtd-bio:first-child{margin-top:0}

/* layout: image overlay */
.owtd-L-overlay .owtd-card{min-height:var(--owtd-ov-h);justify-content:flex-end;align-items:flex-start;text-align:left;color:var(--owtd-ov-fg)}
.owtd-L-overlay .owtd-photo{position:absolute;inset:0;width:100%;max-width:none;height:100%;aspect-ratio:auto;border-radius:0;margin:0;font-size:120px}
.owtd-L-overlay .owtd-photo.is-ph span,.owtd-L-overlay .owtd-photo.is-ph .owtd-svg{opacity:.35;transform:translateY(-18%)}
.owtd-L-overlay .owtd-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,var(--owtd-ov-tint));pointer-events:none}
.owtd-ov{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;pointer-events:none}
.owtd-ov a,.owtd-ov .owtd-btn{pointer-events:auto}
.owtd-L-overlay .owtd-name,.owtd-L-overlay .owtd-title{color:var(--owtd-ov-fg)}
.owtd-L-overlay .owtd-icons{justify-content:flex-start}
.owtd-L-overlay .owtd-btn{margin-top:14px}

/* layout: carousel (classic cards on a scroll-snap track) */
.owtd-carousel{position:relative}
.owtd-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--owtd-slides) - 1) * var(--owtd-gap)) / var(--owtd-slides));gap:var(--owtd-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 8px;outline:0}
.owtd-track::-webkit-scrollbar{display:none}
.owtd-track>.owtd-card{scroll-snap-align:start}
.owtd-car-nav{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:18px}
.owtd-car-btn{width:42px;height:42px;border-radius:50%;border:1px solid rgba(0,0,0,.14);background:transparent;color:var(--owtd-accent);display:grid;place-items:center;cursor:pointer;padding:0}
.owtd-car-btn:disabled{opacity:.35;cursor:default}
.owtd-car-btn .owtd-svg{width:18px;height:18px}
.owtd-dots{display:flex;gap:6px}
.owtd-dots button{width:8px;height:8px;border-radius:999px;border:0;padding:0;background:rgba(0,0,0,.18);cursor:pointer;transition:width .2s,background .2s}
.owtd-dots button.is-on{width:22px;background:var(--owtd-accent)}

/* layout: directory table */
.owtd-table-wrap{overflow-x:auto}
.owtd-table{width:100%;border-collapse:collapse;font-size:15px;margin:0}
.owtd-table th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.7;padding:10px 12px;border:0;border-bottom:2px solid rgba(0,0,0,.1);background:none}
.owtd-table td{padding:12px;border:0;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:middle;background:none}
.owtd-table .owtd-card{display:table-row;padding:0;border-radius:0;background:none;text-align:left}
.owtd-who{display:flex;align-items:center;gap:12px}
.owtd-table .owtd-photo{width:44px;margin:0;font-size:15px}
.owtd-table .owtd-name{font-size:15.5px}
.owtd-table .owtd-title{font-size:13px}
.owtd-table a{color:var(--owtd-accent);text-decoration:none;white-space:nowrap}
.owtd-link{all:unset;cursor:pointer;font:inherit;color:inherit}
.owtd-link:hover,.owtd-link:focus-visible{color:var(--owtd-accent);text-decoration:underline}
.owtd-table-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;border:1px solid rgba(0,0,0,.14);font-size:13px;font-weight:600;color:inherit!important}
.owtd-table-btn .owtd-svg{width:16px;height:16px}

/* load more */
.owtd-more{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:28px}
.owtd-more[hidden]{display:none}
.owtd-more-btn{appearance:none;cursor:pointer;font:inherit;font-weight:600;font-size:15px;padding:11px 26px;border-radius:999px;border:2px solid var(--owtd-accent);background:transparent;color:var(--owtd-accent);transition:background .15s,color .15s}
.owtd-more-btn:hover{background:var(--owtd-accent);color:#fff}
.owtd-more-btn[aria-busy="true"]{opacity:.6;cursor:progress}
.owtd-count{font-size:13px;opacity:.7}
.owtd-empty{text-align:center;opacity:.7;padding:24px 0}

/* popup */
.owtd-pop{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:16px;background:rgba(10,8,25,.6);opacity:0;transition:opacity .2s}
.owtd-pop.is-open{opacity:1}
.owtd-pop-card{position:relative;width:min(720px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);background:var(--owtd-pop-bg,#fff);color:var(--owtd-pop-fg,#1d1b2c);border-radius:var(--owtd-pop-radius,18px);overflow:hidden;display:flex;box-shadow:0 30px 80px -20px rgba(0,0,0,.45);transform:translateY(12px);transition:transform .2s}
.owtd-pop.is-open .owtd-pop-card{transform:none}
.owtd-pop-scroll{overflow-y:auto;width:100%;display:grid;grid-template-columns:230px minmax(0,1fr);overscroll-behavior:contain}
.owtd-pop-side{padding:30px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;background:color-mix(in srgb,var(--owtd-accent) 6%,transparent)}
.owtd-pop-side .owtd-photo{width:150px;margin-bottom:14px}
.owtd-pop-side .owtd-qr{width:140px;margin:6px 0 0}
.owtd-pop-scan{margin:6px 0 0;font-size:12px;opacity:.7}
.owtd-pop-main{padding:30px 30px 26px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left}
.owtd-pop .owtd-name{font-size:26px;line-height:1.2;margin:0;padding-right:36px;font-weight:700}
.owtd-pop .owtd-title{font-size:15px;opacity:.75}
.owtd-pop .owtd-depts{justify-content:flex-start}
.owtd-pop-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:15px;width:100%}
.owtd-pop-list li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:center;margin:0}
.owtd-pop-list .owtd-svg{width:18px;height:18px;color:var(--owtd-accent)}
.owtd-pop-list a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.owtd-pop-list a:hover{color:var(--owtd-accent)}
.owtd-pop .owtd-icons{justify-content:flex-start}
.owtd-pop .owtd-bio{margin:10px 0 4px}
.owtd-pop .owtd-btn{margin-top:14px}
.owtd-pop-x{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:#1d1b2c;display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 6px rgba(0,0,0,.15);padding:0}
.owtd-pop-x .owtd-svg{width:18px;height:18px}
.owtd-pop-loading{padding:60px;text-align:center;width:100%}
html.owtd-lock{overflow:hidden}

/* responsive defaults (Elementor's responsive controls override --owtd-cols / --owtd-slides) */
@media (max-width:1024px){.owtd-vars{--owtd-cols:2;--owtd-slides:2}}
@media (max-width:767px){
	.owtd-vars{--owtd-cols:1;--owtd-slides:1.15}
	.owtd-L-row .owtd-card{grid-template-columns:var(--owtd-photo-w) minmax(0,1fr);gap:18px}
	.owtd-L-row .owtd-col-b{grid-column:1/-1}
	.owtd-pop-scroll{grid-template-columns:1fr}
	.owtd-pop-main{padding:22px 22px 24px}
	.owtd-table thead{display:none}
	.owtd-table,.owtd-table tbody{display:block}
	.owtd-table .owtd-card{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.08)}
	.owtd-table td{display:block;border:0;padding:0}
	.owtd-table .owtd-td-dept,.owtd-table .owtd-td-phone,.owtd-table .owtd-td-email{grid-column:1;padding-left:56px;font-size:14px}
	.owtd-table .owtd-td-act{grid-row:1;grid-column:2}
}
@media (max-width:480px){.owtd-L-row .owtd-card{grid-template-columns:1fr;justify-items:center;text-align:center}.owtd-L-row .owtd-col{align-items:center}.owtd-L-row .owtd-icons,.owtd-L-row .owtd-depts{justify-content:center}}
@media (prefers-reduced-motion:reduce){.owtd-dir *,.owtd-pop,.owtd-pop-card{transition:none!important;scroll-behavior:auto!important}}
.owtd-card.has-dept-bg .owtd-photo.is-ph{background:rgba(255,255,255,.55)}

/* Contact protection: placeholder shown until the number/email is filled in. */
.owtd-p-ph{opacity:.65}
