/* WordPress-specific additions on top of the approved design (site.css). */

/* Sticky offsets when the admin bar is visible */
.admin-bar .pro-notice-bar{top:32px;}
.admin-bar header.site{top:calc(32px + 34px);}
@media (max-width:782px){
  .admin-bar .pro-notice-bar{top:46px;}
  .admin-bar header.site{top:calc(46px + 34px);}
}
@media (max-width:600px){
  .admin-bar .pro-notice-bar, .admin-bar header.site{position:relative;top:0;}
}

/* Links that replace the mockup's click handlers */
a.brand{display:flex;}
a.product-row, a.news-feature, a.news-row, a.job-list-card, a.home-news-card{text-decoration:none;color:inherit;}
a.product-row{display:grid;}
a.home-news-card{display:block;}
.lang-switch a{display:inline-block;color:var(--ink-soft);padding:7px 13px;font-size:.82rem;text-decoration:none;}
.lang-switch a.active{background:var(--blue-900);color:#fff;}

/* Product detail page (was a modal in the mockup) */
.product-detail{max-width:1060px;}
.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media (max-width:820px){.product-detail-grid{grid-template-columns:1fr;gap:24px;}}
.product-detail .product-media img{border-radius:var(--radius-m);width:100%;aspect-ratio:4/3;object-fit:cover;}
.product-detail .detail-body{margin-top:40px;max-width:820px;}

/* Rich text from the editor */
.entry-content{color:var(--ink-soft);font-size:1rem;line-height:1.7;}
.entry-content h2{font-family:var(--serif);color:var(--ink);font-size:1.25rem;font-weight:700;margin:32px 0 12px;}
.entry-content h3{font-family:var(--serif);color:var(--ink);font-size:1.1rem;font-weight:600;margin:28px 0 12px;}
.entry-content ul, .entry-content ol{padding-left:20px;}
.entry-content li{margin-bottom:8px;}
.entry-content img{border-radius:var(--radius-s);height:auto;}
.entry-content figure{margin:24px 0;}
.entry-content figcaption{font-size:.8rem;color:var(--ink-soft);margin-top:8px;text-align:center;}
.entry-content blockquote{border-left:3px solid var(--blue-900);background:var(--paper-2);padding:16px 20px;margin:24px 0;font-style:italic;}
.entry-content a{color:var(--blue-700);}
.job-card .entry-content{margin-top:8px;}
.about-extra{margin-top:24px;}

/* Job apply buttons */
.job-apply .btn{margin:0 10px 10px 0;}

/* Pagination */
.navigation.pagination{margin:32px 0 64px;}
.nav-links{display:flex;gap:8px;flex-wrap:wrap;}
.nav-links .page-numbers{padding:8px 14px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink-soft);font-size:.9rem;}
.nav-links .page-numbers.current{background:var(--blue-900);color:#fff;border-color:var(--blue-900);}
.news-masthead + .news-empty, .wrap > .news-empty:last-child{margin-bottom:64px;}

/* Quick contact panel (replaces AI chat) */
.chat-panel.quick-contact{height:auto;}
.quick-contact-body{display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--paper);}
.quick-contact-body .btn{justify-content:center;}
.quick-contact-body .detail-link{text-align:center;text-decoration:none;}

/* Form honeypot safety */
.form-card form{position:relative;}
.modal-legal .ml-row .k{white-space:nowrap;}

/* Mobile menu: header uses backdrop-filter, so position the drawer under it */
@media (max-width:960px){
  nav.main{position:absolute;inset:auto;top:100%;left:0;right:0;height:calc(100vh - 96px);transform:none;visibility:hidden;opacity:0;transition:opacity .2s ease, visibility .2s ease;box-shadow:0 18px 30px -20px rgba(0,0,0,.25);}
  nav.main.open{visibility:visible;opacity:1;}
  .header-row{position:relative;}
  .lang-switch{margin-left:auto;}
  .nav-toggle{order:3;}
}
body.nav-open .social-rail, body.nav-open .chat-fab{display:none;}

/* Larger logo */
.brand img{height:62px;}
.footer-col .fc-logo{height:50px;}
@media (max-width:640px){.brand img{height:46px;}}
/* Open positions */
.staff-card.staff-open{border-style:dashed;}
.staff-card.staff-open .avatar{background:var(--paper-2);color:var(--ink-soft);border:1px dashed var(--line);font-size:1.4rem;}

/* Staff cards: uniform name/role sizes, names on one line */
.staff-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));}
.staff-card{padding:22px 16px;}
.staff-card .s-name{font-size:1rem;line-height:1.35;white-space:nowrap;}
.staff-card .s-role{font-size:.85rem;line-height:1.4;}
@media (max-width:520px){.staff-grid{grid-template-columns:1fr;}}
.staff-card.staff-open .s-name{white-space:normal;}
