/* Reading, navigation and contact components. Business copy stays in WordPress. */
.reading-progress{position:absolute;inset:auto 0 -1px;height:2px;pointer-events:none;overflow:hidden}
.reading-progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--teal));transform:scaleX(var(--reading-progress,0));transform-origin:left}
.nav-links a.nav-section-current{color:#fff;text-decoration:underline;text-decoration-color:var(--teal);text-underline-offset:8px}
.site-footer a:not(.logo):not(.custom-logo-link){display:inline-flex;align-items:center;min-height:32px}
.site-footer{padding-bottom:110px}
.service-card:target{scroll-margin-top:12px}
.page-title-panel{max-width:none;position:relative;isolation:isolate;overflow:hidden;margin-bottom:52px;padding:42px 46px;border:1px solid #dfd7ee;border-radius:20px;background:linear-gradient(110deg,#f0ebfa,#f6f5f9 65%,#eaf5f0)}
.page-title-panel::after{content:"";position:absolute;z-index:-1;right:-80px;top:-120px;width:360px;height:360px;border:1px solid #6342e81a;border-radius:50%;box-shadow:0 0 0 38px #6342e806,0 0 0 76px #6342e804;pointer-events:none}
.page-title-panel h1{font-size:clamp(38px,4.4vw,60px);max-width:900px;margin-bottom:0;text-wrap:balance}
.page-title-panel .eyebrow{font-size:11px}
.page-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start}
.page-layout-contact{display:block;max-width:850px;margin-inline:auto}
.page-layout>.page-content{width:100%;min-width:0;max-width:760px;margin:0;line-height:1.85}
.page-layout-contact>.page-content{max-width:850px}
.page-layout>.page-content>h2{scroll-margin-top:12px;padding-top:16px;border-top:1px solid #e1dce9;line-height:1.25;font-size:29px}
.page-layout>.page-content>h2:first-child{margin-top:0}
.page-layout>.page-content>p:first-child{font-size:18px;line-height:1.8;color:#484253}
.page-layout>.page-content>ul{list-style:none;padding:0}
.page-layout>.page-content>ul>li{position:relative;padding:14px 18px 14px 38px;background:#f0eef5;border:1px solid #e6e1ed;border-radius:8px;margin-bottom:10px}
.page-layout>.page-content>ul>li::before{content:"";position:absolute;left:18px;top:26px;width:5px;height:5px;border-radius:50%;background:var(--violet)}
.page-content p>a:only-child{display:inline-flex;align-items:center;gap:12px;padding:9px 0;min-height:44px;font-weight:600;font-size:14px;text-decoration:none}
.page-content p>a:only-child:hover{text-decoration:underline}
.page-aside{position:sticky;top:110px;align-self:start;max-height:calc(100dvh - 220px);overflow:auto;scrollbar-width:thin;padding:2px 4px 4px}
.page-guide{border:1px solid #ded6eb;border-radius:12px;background:#fff;margin-bottom:25px;overflow:hidden}
.page-guide summary{padding:18px 18px 14px;gap:10px;font-size:13px;font-weight:650;color:var(--ink)}
.page-guide summary>span{color:var(--ink);font-size:13px;transform:none!important}
.page-guide summary>.nx-icon{width:17px;height:17px;color:var(--violet)}
.page-guide summary>.nx-icon:last-child{margin-left:auto;transition:transform .2s}
.page-guide[open] summary>.nx-icon:last-child{transform:rotate(180deg)}
.page-guide ol{padding:0 10px 12px;margin:0;list-style:none;counter-reset:section}
.page-guide li{counter-increment:section}
.page-guide a{display:flex;align-items:baseline;gap:10px;padding:11px 10px;border-radius:7px;font-size:12px;line-height:1.6;color:var(--muted);text-decoration:none;min-height:44px}
.page-guide a::before{content:counter(section,decimal-leading-zero);font-size:10px;color:#7a6f8e;flex:none;font-variant-numeric:tabular-nums}
.page-guide a:hover,.page-guide a[aria-current="location"]{background:#eee8fb;color:var(--violet-dark)}
.page-guide a:focus-visible{outline-offset:-2px}
.related-navigation h2{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px;color:var(--muted)}
.related-navigation a{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;text-decoration:none;min-height:44px}
.related-navigation a>.nx-icon{width:16px;height:16px;color:var(--violet)}
.related-navigation a>.nx-icon:last-child{margin-left:auto;width:14px;height:14px}
.related-navigation a:hover{color:var(--violet)}
/* Normal links: no popup, click interception or automatic opening of WhatsApp. */
.quick-contact{position:fixed;z-index:40;right:max(20px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:flex;gap:8px;padding:7px;border:1px solid #e5deef;border-radius:18px;background:#fff;box-shadow:0 10px 35px #17102924;max-width:calc(100vw - 24px)}
.quick-contact>a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 16px;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .2s,box-shadow .2s}
.quick-contact-whatsapp{background:#e6f5ed;color:#155d3b;border-color:#cbe8d9!important}
.quick-contact-whatsapp:hover{background:#d7efdf}
.quick-contact-inquiry{background:var(--violet);color:#fff}
.quick-contact-inquiry:hover{background:var(--violet-dark);box-shadow:0 4px 12px #6342e826}
.quick-contact .nx-icon{width:22px;height:22px}
.quick-contact a:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
body:has(.contact-form:focus-within) .quick-contact{display:none}
.admin-bar .site-header{top:32px}.admin-bar .page-aside{top:142px}

@media(max-width:960px){html.nav-ready .site-header{position:sticky;top:0}.nav-ready #primary-navigation{max-height:calc(100svh - 95px);overflow-y:auto;overscroll-behavior:contain}.page-title-panel{padding:34px;margin-bottom:36px}.page-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}.page-aside{top:100px;max-height:calc(100dvh - 210px)}.page-guide summary{pointer-events:auto;cursor:pointer}.page-layout>.page-content>h2{font-size:26px}.nav-ready .admin-bar .site-header{top:32px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}.admin-bar .page-aside{top:146px}}
@media(max-width:700px){.page-main{padding-top:24px}.page-title-panel{padding:28px 24px;border-radius:14px;margin-bottom:28px}.page-title-panel h1{font-size:clamp(33px,7.9vw,46px);text-wrap:initial}.page-title-panel .eyebrow{font-size:9px;line-height:1.8}.page-layout{display:flex;flex-direction:column;gap:24px}.page-aside{position:static;max-height:none;overflow:visible;align-self:stretch;padding:0}.page-guide{margin-bottom:0}.page-guide summary{min-height:54px;padding:15px 17px}.page-guide ol{display:grid;grid-template-columns:1fr}.related-navigation{display:none}.page-aside:has(.page-guide[hidden]){display:none}.page-layout>.page-content>p:first-child{font-size:17px}.page-layout>.page-content>h2{font-size:26px}.page-layout>.page-content>ul>li{padding-left:34px;font-size:15px}.site-footer a:not(.logo):not(.custom-logo-link){min-height:44px}.quick-contact{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));padding:6px;border-radius:16px;gap:6px;justify-content:center}.quick-contact>a{flex:1;padding:11px 9px;gap:8px;font-size:12px;min-height:46px}.quick-contact .nx-icon{width:20px;height:20px}.site-footer{padding-bottom:105px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
@media(prefers-reduced-motion:reduce){.quick-contact a,.page-guide summary>.nx-icon{transition:none}}
@media print{.quick-contact,.page-aside,.reading-progress{display:none!important}.site-header{position:static}.page-layout{display:block}.site-footer{padding-bottom:20px}}

/* Brand silhouettes remain filled; interface symbols use consistent rounded strokes. */
.nx-icon-brand{fill:currentColor;stroke:none}
.service-symbol .nx-icon{width:28px;height:28px}
.quick-contact .nx-icon-brand{width:23px;height:23px}

/* Nexa99 signature: quiet oversized numerals, with a stationary hero card. */
.brand-watermark{position:absolute;pointer-events:none;user-select:none;font-family:Arial,sans-serif;font-weight:900;line-height:.78;letter-spacing:-.12em;padding-right:.12em}
.hero-brand-number{right:2%;top:18px;font-size:clamp(260px,35vw,510px);color:transparent;-webkit-text-stroke:1px #b19aff25;transform:rotate(-8deg);z-index:0}
.about-section,.site-footer{position:relative;isolation:isolate;overflow:hidden}
.about-grid,.footer-grid,.footer-base{position:relative;z-index:1}
.about-brand-number{right:1%;bottom:-28px;font-size:clamp(240px,30vw,420px);color:#b6a1ff09;-webkit-text-stroke:1px #b6a1ff19;z-index:0}
.footer-brand-number{right:3%;bottom:-25px;font-size:270px;color:#ad94ff08;-webkit-text-stroke:1px #ad94ff12}
.workflow{transform:none!important;transition:box-shadow .4s}
.workflow .brand-core{font-family:Arial,sans-serif;font-size:30px;font-weight:900;letter-spacing:-4px;padding-right:4px;line-height:1}
@media(max-width:700px){.hero-brand-number{top:18px;right:-15px;font-size:260px;opacity:.65}.about-brand-number{font-size:240px;bottom:0}.footer-brand-number{font-size:200px}}

/* Compact mobile dock: two labeled actions without a full-width toolbar. */
@media(max-width:700px){
 .quick-contact{left:auto;right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));padding:4px;gap:4px;border-radius:999px;box-shadow:0 5px 22px #1710291f}
 .quick-contact>a{flex:0 1 auto;min-width:0;min-height:48px;padding:10px 14px;gap:7px;border-radius:999px;font-size:12px;touch-action:manipulation}
 .quick-contact .inquiry-label-prefix{display:none}
 .quick-contact .inquiry-label-noun{display:inline-block;text-transform:capitalize}
 .quick-contact .nx-icon{width:20px;height:20px}
 .quick-contact .nx-icon-brand{width:22px;height:22px}
 .quick-contact>a:active{filter:brightness(.94)}
}

/* Mobile quick contact: WhatsApp first, inquiry directly below. */
@media(max-width:700px){
 .quick-contact{flex-direction:column;align-items:stretch;border-radius:20px}
 .quick-contact>a{flex:none;justify-content:flex-start;border-radius:16px}
 .site-footer{padding-bottom:155px}
 html{scroll-padding-bottom:155px}
}
