/* Shared approved brand actions, including presentation components. */
:root{--release-action:#004223;--release-hover:#155b36}html[data-theme=dark]{--release-action:#26783c;--release-hover:#308346}
.pr .hp-button,.pr-tabs button[aria-pressed=true],.pr-motion button[aria-pressed=true]{background:var(--release-action);color:#fff;border-color:var(--release-action);border-radius:12px}.pr .hp-button:hover{background:var(--release-hover);color:#fff}
.pr a.hp-button{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;min-height:48px;text-decoration:none}.pr :is(button,a):focus-visible,.release-top:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.release-intro{padding-bottom:42px}.release-visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center;padding-top:30px}.release-visual img{width:100%;height:auto;max-height:470px;object-fit:contain;background:var(--photo-bg);border-radius:20px}.release-visual h2{font-size:clamp(32px,3.5vw,52px)}.release-visual a{font-size:18px}.release-diagram{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:20px;overflow:hidden}.release-diagram>div{background:var(--pale);padding:35px 25px;min-height:160px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}.release-diagram span{color:var(--green);font-size:14px}.release-diagram strong{font-size:clamp(19px,2vw,27px);font-weight:500;overflow-wrap:anywhere}.release-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:40px}.release-steps article{border-top:1px solid var(--border);padding-top:22px}.release-steps span{color:var(--green);display:block;margin-bottom:28px;font-size:14px}.release-steps p{font-size:18px}.release-top{position:fixed;left:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:35;width:48px;height:48px;border-radius:12px;border:1px solid var(--border);background:var(--page-bg);color:var(--ink);box-shadow:0 4px 20px #00000010;display:grid;place-items:center;cursor:pointer}.release-top[hidden]{display:none}.release-top:hover{background:var(--pale)}.pr-motion button{border-radius:12px;color:var(--muted);background:transparent}.pr-new main{overflow-wrap:break-word}.pr-new .pr-cta{flex-wrap:wrap}.pr-new img{max-width:100%}
@media(max-width:760px){.release-visual{grid-template-columns:1fr;gap:28px;padding-top:15px}.release-steps{grid-template-columns:1fr;gap:24px}.release-steps span{margin-bottom:14px}.release-diagram>div{padding:24px 16px;min-height:135px}.release-top{left:14px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:46px;height:46px}.pr-new .pr{padding-left:22px;padding-right:22px}.pr-new .pr-cta .hp-button{width:100%}.pr-new footer{padding-bottom:70px}.release-intro{padding-top:44px!important;padding-bottom:25px!important}.pr-new .pr h1{font-size:clamp(34px,9vw,46px)}.pr-new .pr p{font-size:17px}.release-visual img{max-height:320px}.pr-motion{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.release-top{transition:none}}
@media print{.release-top,.pr-motion{display:none!important}}

.release-reading{display:block;padding:20px 0;border-bottom:1px solid var(--border);font-size:20px;line-height:1.4;text-decoration:none}/* Flat controls. Opaque surfaces keep underlying content out of navigation. */
.hp .approved-mega,.hp .nekon-language nav,.nekon-dialog{background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;box-shadow:0 18px 48px #14201816!important}
html[data-theme=dark] .hp .approved-mega,html[data-theme=dark] .hp .nekon-language nav,html[data-theme=dark] .nekon-dialog{background:#181c19!important}
.hp .ai-catalog-nav button,.hp .ai-journal-filters button,.hp .pr-tabs button{border:0!important;box-shadow:none!important;background:transparent;color:var(--muted);border-radius:10px;padding:12px 20px;min-height:44px;transform:none!important}
.hp .ai-catalog-nav button[aria-pressed=true],.hp .ai-journal-filters button[aria-pressed=true],.hp .pr-tabs button[aria-pressed=true]{background:var(--release-action)!important;color:#fff!important;border:0!important;box-shadow:none!important}
.hp .ai-catalog-nav button:hover:not([aria-pressed=true]){background:var(--pale)}
.hp :is(input,textarea,select):focus,.hp :is(input,textarea,select):focus-visible,.nekon-dialog :is(input,textarea):focus,.nekon-dialog :is(input,textarea):focus-visible{outline:none!important;box-shadow:none!important;border-color:var(--muted)!important}
.hp :is(input,textarea,select),.nekon-dialog input{border:1px solid transparent!important;background:var(--pale)!important;border-radius:10px!important;transition:background .2s,border-color .2s}
.hp :is(input,textarea,select):focus,.nekon-dialog input:focus{border-color:var(--muted)!important}
.hp :is(.approved-search-link,.theme-switch){border:0!important;box-shadow:none!important;background:transparent!important;border-radius:8px}
.hp :is(button,a,summary):focus:not(:focus-visible),.nekon-dialog :is(button,a):focus:not(:focus-visible){outline:none!important}
.hp :is(button,a,summary):focus-visible,.nekon-dialog :is(button,a):focus-visible{outline:2px solid var(--muted);outline-offset:3px}
/* Product cutouts share the page surface; no individual grey cards. */
.release-visual img,.pr-card img,.pr-figure{background:transparent!important;border-radius:0!important}
.hp .ai-media:has(img[src*="journal-studio"]){padding:0!important;background:transparent!important;overflow:hidden}
.hp .ai-media img[src*="journal-studio"]{padding:0!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;display:block}
.hp .ai-article-categories{gap:10px;flex-wrap:wrap}
.hp .ai-article-categories a{border:0!important;background:transparent!important;border-radius:10px!important;padding:12px 20px!important;box-shadow:none!important;text-decoration:none}
.hp .ai-article-categories a[aria-current=page]{background:var(--release-action)!important;color:white!important}
.hp .ai-article-categories a:not([aria-current=page]):hover{background:var(--pale)!important}
/* Keep every navigation item reachable in short windows and landscape phones. */
.hp .approved-mega{max-height:calc(100dvh - 92px);overflow-y:auto;overscroll-behavior:contain}
/* Long article headings must fit their grid cell rather than be clipped. */
.hp .ai-articles article{grid-template-columns:minmax(0,40%) minmax(0,1fr)}
.hp .ai-articles article>div,.hp .ai-articles article>a{min-width:0}
.hp .ai-articles :is(h3,p,a){overflow-wrap:anywhere}
@media(max-width:600px){.hp .ai-articles article{grid-template-columns:minmax(0,1fr)}.hp .ai-articles article>a{height:auto;aspect-ratio:3/2;min-height:0}.hp .ai-articles .ai-article-feature>a{height:auto}}
.pr-social{gap:12px 28px;align-items:center}.social-brand-link{display:inline-flex!important;align-items:center;gap:10px;min-height:44px;line-height:1.2;text-decoration:none!important;white-space:nowrap}.social-brand-link svg,.social-brand-link img{flex:0 0 auto;object-fit:contain;background:transparent!important;border:0!important;filter:none!important}.social-brand-link .social-external{font-size:14px;opacity:.65;margin-left:2px}.social-brand-link:hover>span:first-of-type{text-decoration:underline;text-underline-offset:5px}.social-brand-link:focus-visible{outline:2px solid var(--muted);outline-offset:4px;border-radius:4px}
@media(max-width:600px){.pr-social{gap:8px 20px}.social-brand-link{font-size:14px;gap:8px}.social-brand-link svg{width:22px;height:22px}}

/* Keep responsive project numbering; original footer lives in approved.css. */
.hp .pr-social{padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:0 16px;margin:12px 0 0}
.hp .pr-social .social-brand-link{font-size:15px!important;line-height:1.3!important;gap:9px!important;padding:6px 0!important;margin:0!important;min-height:48px!important;border:0!important;color:var(--ink);justify-content:flex-start}
.hp .pr-social .social-brand-link svg{width:22px;height:22px}
.hp .pr-social .social-brand-link img{width:26px;height:26px;filter:none!important}
.hp .pr-social [data-social-id=facebook] svg{color:#1877f2}
.hp .pr-social [data-social-id=telegram] svg{color:#229ed9}
.hp .pr-social [data-social-id=whatsapp] svg{color:var(--green)}
.hp .pr-social .social-external{display:none}
.hp .ai-contact-card address>.pr-social{padding-top:10px}
@media(max-width:1100px){
.hp .ai-location{min-height:0;padding:28px 0!important}
.hp .ai-location>.hp-wrap{display:flex;flex-direction:column;gap:24px}
.hp .ai-location .ai-contact-card{order:0;max-width:none}
.hp .ai-location iframe{order:1;position:static;inset:auto;z-index:auto;display:block;width:100%;height:clamp(320px,46vw,460px);min-height:320px;flex:none;border:1px solid var(--border);border-radius:18px}
}
/* Long localized headings must use the contact card scale, not the page hero scale. */
.hp .ai-contact-card{width:100%;max-width:600px;min-width:0}
.hp .ai-contact-card .ai-heading :is(h1,h2){font-size:clamp(28px,3.1vw,44px);line-height:1.12;white-space:normal;overflow-wrap:normal;text-wrap:balance}
.hp .ai-contact-card .ai-heading :is(h1,h2)>span{display:block}
.hp .ai-contact-card address{min-width:0}
.hp .ai-contact-card .hp-button{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
@media(max-width:760px){.hp .ai-contact-card{padding:24px}.hp .ai-contact-card .ai-heading :is(h1,h2){font-size:clamp(27px,7vw,36px)}.hp .ai-contact-card address>div>a:first-child,.hp .ai-contact-card address p{font-size:20px;overflow-wrap:anywhere}}
.team-portrait-rail,.nh-team,.team-studio-scroll{cursor:auto;touch-action:pan-x pan-y pinch-zoom;scroll-snap-type:none;scroll-behavior:auto}
.team-portrait-rail[data-drag-scroll=true],.nh-team[data-drag-scroll=true],.team-studio-scroll[data-drag-scroll=true],.team-portrait-rail[data-drag-scroll=true] .team-portrait-image{cursor:grab}
.team-portrait-rail img,.nh-team img{user-select:none;-webkit-user-drag:none}
.team-portrait-rail.is-dragging,.nh-team.is-dragging,.team-studio-scroll.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto!important;user-select:none}
.team-portrait-rail.is-dragging *{cursor:grabbing!important}
.team-portrait-rail:focus-visible,.nh-team:focus-visible,.team-studio-scroll:focus-visible{outline:2px solid var(--green);outline-offset:-2px}
.release-top{width:48px;height:48px;opacity:0;transform:translateY(6px);pointer-events:none;color:#26783c;border-color:rgba(38,120,60,.22);transition:opacity 180ms ease,transform 180ms ease,background-color 150ms ease,color 150ms ease;box-shadow:0 3px 14px #0000000a}
.release-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.release-top svg{width:20px;height:20px}
html[data-theme=dark] .release-top{color:#a2d48a;border-color:rgba(162,212,138,.28)}
@media(hover:hover){.release-top:hover{background:#26783c;color:#fff;border-color:#26783c}}
.release-top:active{transform:translateY(1px);background:#205f32;color:#fff}
.release-top:focus-visible{outline:2px solid var(--green);outline-offset:4px}
@media(max-width:760px){.release-top{width:48px;height:48px;left:max(14px,env(safe-area-inset-left,0px))}}
@media(prefers-reduced-motion:reduce){.release-top{transition:none;transform:none}}
/* Original outlined signature, tighter spacing, full contact/social content. */
.hp .approved-footer{padding-top:40px;padding-bottom:90px;background:#f5f7f4}
html[data-theme=dark] .hp .approved-footer{background:#162019}
.hp .approved-footer>.hp-wrap{position:relative}
.hp .approved-footer-columns{padding:0 0 24px;gap:32px;grid-template-columns:1.2fr .85fr .85fr 1.15fr}
.hp .approved-footer h2{font-size:28px;line-height:1.1}
.hp .approved-footer-columns>div>p{font-size:15px;line-height:1.5;margin-top:16px;max-width:280px}
.hp .approved-footer h3{font-size:16px;margin-bottom:12px}
.hp .approved-footer-columns nav:not(.pr-social)>a{font-size:15px;padding:10px 0;min-height:40px}
.hp .approved-footer address>a{font-size:15px;line-height:1.4;margin:0 0 12px}
.hp .approved-footer address .pr-social{display:flex;flex-wrap:wrap;gap:0 16px;margin:12px 0 0;align-items:center}
.hp .approved-footer address .pr-social>a{font-size:13px;line-height:1.2;gap:7px;padding:5px 0;margin:0;min-height:38px;border:0;justify-content:flex-start}
.hp .approved-footer address .social-brand-link svg{width:22px;height:22px}
.hp .approved-footer address .social-brand-link img{width:26px;height:26px;filter:none!important;opacity:1}
.hp .approved-footer address a[href*="facebook.com"] svg{color:#1877f2}
.hp .approved-footer address a[href*="instagram.com"] svg{color:var(--ink)}
.hp .approved-footer address .social-external{font-size:11px}
.hp .approved-footer-wordmark{padding:28px 0;border-top:0}
.hp .approved-footer-base{font-size:12px;gap:12px 24px;padding-bottom:0}
@media(max-width:1100px){.hp .approved-footer-columns{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:760px){.hp .approved-footer{padding-top:28px;padding-bottom:88px}.hp .approved-footer-columns{gap:22px 24px;padding-bottom:22px}.hp .approved-footer h2{font-size:25px}.hp .approved-footer-columns>div>p{font-size:14px;max-width:450px;margin-top:12px}.hp .approved-footer-wordmark{padding:24px 0}.hp .approved-footer-base{gap:4px 18px}.hp .approved-footer address .pr-social{gap:0 14px}.hp .approved-footer address .pr-social>a{min-height:44px}}
.hp .ai-number{white-space:nowrap;overflow-wrap:normal;word-break:normal;min-width:2ch;font-variant-numeric:tabular-nums;line-height:1;font-size:clamp(32px,4vw,64px)}
.hp .pr-social .social-brand-link svg,.hp .approved-footer address .social-brand-link svg{width:26px;height:26px}
.hp .pr-social .social-brand-link img,.hp .approved-footer address .social-brand-link img{width:30px;height:30px}
.hp .social-brand-link:not(.pr-social .social-brand-link){font-size:15px;min-height:48px}
.hp .ai-project-list>li{grid-template-columns:minmax(2.2ch,80px) minmax(0,1fr) minmax(140px,28%);gap:24px}
@media(max-width:760px){.hp .ai-project-list>li{grid-template-columns:52px minmax(0,1fr);gap:16px}.hp .ai-project-list>li>.ai-media{grid-column:2;width:100%;max-width:240px}.hp .ai-number{font-size:36px}}
/* Short-screen header: keep the brand legible when localized actions are longer. */
@media(max-width:380px){.hp .hp-header-inner{width:calc(100% - 24px);gap:4px}.hp .hp-header-inner>a:first-child{flex:0 0 54px}.hp .hp-header-inner>a:first-child .hp-logo{width:54px;max-width:none}.hp .approved-header-cta{font-size:13px;padding:10px 12px;white-space:nowrap}}
